* docs: created the new TypeScript Beginner Guide
* docs: updated title
* docs: removed redundant sub-title
* docs: aligned indents
* docs: updated middleware titles
* docs: styled Conclusion section
* docs: added curried version of the "create" function
* docs: renamed the guide file
* docs: changed the title to have the same title format with "Advanced TypeScript Guide"
* docs: removed separating the curried form of the 'create' function
* docs: switched to create<T>()(...) and updated examples to make them more consistent
* docs: removed redundant TS store type extractor and unified middlewares
* docs: fixed format
* docs: fixed typo in the middleware list
* docs: updated doc according to the latest review. Also unified quotes
* docs: minor PR review fixes
* docs: removed Hooks section
* docs: added API documentation links to the corresponding sections
* Apply suggestions from code review
* fix format
---------
Co-authored-by: Daishi Kato <dai-shi@users.noreply.github.com>
Co-authored-by: daishi <daishi@axlight.com>
* feat: filter out specific actions from being sent to Redux DevTools
* fix format issues
* refactor: rename actionBlacklist to actionsDenylist
* refactor: use redux devtools' type signature
* fix linter issue
* fix format issues
* refactor: update documentation
* refactor: format file
* Update src/middleware/devtools.ts
* fix: format issue
---------
Co-authored-by: Daishi Kato <dai-shi@users.noreply.github.com>
* Remove codesandbox refs
Updated section title and modified demo links.
* Remove codesandbox refs
* Remove codesandbox refs
* Remove codesandbox refs
* Reorganize demo links in testing documentation
Moved demo links to a new section for better organization.
* Update demo links format in immer-middleware.md
* feat: update format
* Enhance Maps and Sets usage documentation in Zustand
Expanded the documentation on using Maps and Sets in Zustand, including guidelines for reading and updating these data structures. Added examples for creating new instances and explained the importance of reference changes for state updates.
* feat: update format
Zustand already provides a `useStore` hook, and reusing the same name for a custom hook could lead to confusion if someone accidentally imports the wrong one. To avoid this, I’ve renamed the custom hook to `useBear`. The name is short, memorable, and aligns with Zustand’s playful style.
* Add zustand-expo-devtools to third-party middleware list
Wrote a dev plugin that allows for full connection between zustand state and redux devtools!
* ordered alphabetically
* docs: prefer useState in createContext example
Both useState and useRef are correct in practice: useState will only render once since we never set the state after initializion, and useRef is safe to use since the component never needs to rerender when the ref value changes.
However, lint rules will flag useRef as a mistake, because we are passing a ref value to a child component, which in general can cause stale components since changing refs doesn't trigger re-renders.
* formatting
* explicit null check
* Update nextjs.md with nullable `storeRef`
* Update other example in nextjs.md
* Apply suggestions from code review
---------
Co-authored-by: Daishi Kato <dai-shi@users.noreply.github.com>
* Update testing.md
in vite,
mergeConfig accepts only config in object form. If you have a config in callback form, you should call it before passing into mergeConfig.
You can use the defineConfig helper to merge a config in callback form with another config:
https://vite.dev/guide/api-javascript.html#mergeconfig
* Fix formatting
---------
Co-authored-by: Danilo Britto <dbritto.dev@gmail.com>