@cyclone-ui/state 0.0.27 → 0.0.28
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +16 -0
- package/README.md +38 -1
- package/package.json +3 -3
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,22 @@
|
|
|
2
2
|
|
|
3
3
|
# Changelog for Cyclone UI - State
|
|
4
4
|
|
|
5
|
+
## [0.0.28](https://github.com/storm-software/cyclone-ui/releases/tag/state%400.0.28) (10/23/2026)
|
|
6
|
+
|
|
7
|
+
### Documentation
|
|
8
|
+
|
|
9
|
+
- **monorepo:** Added `sourcebook` skills and partially generated docs for design system ([0dbff145](https://github.com/storm-software/cyclone-ui/commit/0dbff145))
|
|
10
|
+
|
|
11
|
+
### Updated Dependencies
|
|
12
|
+
|
|
13
|
+
- Updated **helpers** to **v0.3.27**
|
|
14
|
+
|
|
15
|
+
## [0.0.27](https://github.com/storm-software/cyclone-ui/releases/tag/state%400.0.27) (10/23/2026)
|
|
16
|
+
|
|
17
|
+
### Updated Dependencies
|
|
18
|
+
|
|
19
|
+
- Updated **helpers** to **v0.3.26**
|
|
20
|
+
|
|
5
21
|
## [0.0.26](https://github.com/storm-software/cyclone-ui/releases/tag/state%400.0.26) (10/22/2026)
|
|
6
22
|
|
|
7
23
|
### Bug Fixes
|
package/README.md
CHANGED
|
@@ -47,7 +47,9 @@ A state management package containing various Jotai atoms used by Storm Software
|
|
|
47
47
|
<!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE -->
|
|
48
48
|
## Table of Contents
|
|
49
49
|
|
|
50
|
+
- [Quick Features](#quick-features)
|
|
50
51
|
- [Installing](#installing)
|
|
52
|
+
- [Usage](#usage)
|
|
51
53
|
- [Reduced Package Size](#reduced-package-size)
|
|
52
54
|
- [Development](#development)
|
|
53
55
|
- [Building](#building)
|
|
@@ -65,6 +67,15 @@ A state management package containing various Jotai atoms used by Storm Software
|
|
|
65
67
|
|
|
66
68
|
<!-- END doctoc -->
|
|
67
69
|
|
|
70
|
+
## Quick Features
|
|
71
|
+
|
|
72
|
+
- A theme provider and hooks that store the light or dark mode
|
|
73
|
+
- Toast messages through `useMessageActions` and `MessageViewport`
|
|
74
|
+
- Form and field providers with validation, debouncing, and input masks
|
|
75
|
+
- Jotai atom helpers, such as `atomWithDebounce`, `atomWithBroadcast`, and
|
|
76
|
+
`atomWithWebStorage`
|
|
77
|
+
- Molecule utilities for scoped atom state
|
|
78
|
+
|
|
68
79
|
## Installing
|
|
69
80
|
|
|
70
81
|
Using [pnpm](http://pnpm.io):
|
|
@@ -91,9 +102,32 @@ yarn add -D @cyclone-ui/state
|
|
|
91
102
|
|
|
92
103
|
</details>
|
|
93
104
|
|
|
105
|
+
## Usage
|
|
106
|
+
|
|
107
|
+
The package needs the `jotai`, `react`, `react-dom`, and `react-native` peer
|
|
108
|
+
dependencies. Wrap your app in the theme provider, then read or change the mode
|
|
109
|
+
with hooks:
|
|
110
|
+
|
|
111
|
+
```tsx
|
|
112
|
+
import { ThemeProvider, useThemeActions } from "@cyclone-ui/state/theme";
|
|
113
|
+
import config from "./tamagui.config";
|
|
114
|
+
|
|
115
|
+
export const Root = ({ children }: { children: React.ReactNode }) => (
|
|
116
|
+
<ThemeProvider config={config}>{children}</ThemeProvider>
|
|
117
|
+
);
|
|
118
|
+
|
|
119
|
+
export const ModeButton = () => {
|
|
120
|
+
const { toggleMode } = useThemeActions();
|
|
121
|
+
return <button onClick={() => toggleMode()}>Toggle theme</button>;
|
|
122
|
+
};
|
|
123
|
+
```
|
|
124
|
+
|
|
125
|
+
See the [package documentation](../../docs/packages/state.md) for messages,
|
|
126
|
+
forms, and atom helpers.
|
|
127
|
+
|
|
94
128
|
## Reduced Package Size
|
|
95
129
|
|
|
96
|
-
This project uses [
|
|
130
|
+
This project uses [tsdown](https://tsdown.dev/) to package the source code
|
|
97
131
|
due to its ability to remove unused code and ship smaller javascript files
|
|
98
132
|
thanks to code splitting. This helps to greatly reduce the size of the package
|
|
99
133
|
and to make it easier to use in other projects.
|
|
@@ -103,6 +137,9 @@ and to make it easier to use in other projects.
|
|
|
103
137
|
This project is built using [Nx](https://nx.dev). As a result, many of the usual
|
|
104
138
|
commands are available to assist in development.
|
|
105
139
|
|
|
140
|
+
To set up a checkout, clone the repository and run `pnpm install` in the
|
|
141
|
+
repository root.
|
|
142
|
+
|
|
106
143
|
### Building
|
|
107
144
|
|
|
108
145
|
Run `nx build state` to build the library.
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cyclone-ui/state",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.28",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "A state management package used to handle state in Storm Software applications.",
|
|
6
6
|
"repository": {
|
|
@@ -132,7 +132,7 @@
|
|
|
132
132
|
"optics-ts": "^2.4.1",
|
|
133
133
|
"react-native-safe-area-context": "^4.14.1",
|
|
134
134
|
"valibot": "^0.42.1",
|
|
135
|
-
"@cyclone-ui/helpers": "0.3.
|
|
135
|
+
"@cyclone-ui/helpers": "^0.3.27"
|
|
136
136
|
},
|
|
137
137
|
"devDependencies": {
|
|
138
138
|
"@powerlines/plugin-tsdown": "^0.1.615",
|
|
@@ -143,5 +143,5 @@
|
|
|
143
143
|
},
|
|
144
144
|
"publishConfig": { "access": "public" },
|
|
145
145
|
"module": "./dist/index.mjs",
|
|
146
|
-
"gitHead": "
|
|
146
|
+
"gitHead": "21d5be9e8232a27e8735270d0109d301f7942a54"
|
|
147
147
|
}
|