synstate 2.0.0 → 2.0.1

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.
Files changed (2) hide show
  1. package/README.md +7 -7
  2. package/package.json +33 -19
package/README.md CHANGED
@@ -1,15 +1,15 @@
1
1
  # SynState
2
2
 
3
3
  <p align="center">
4
- <img src="./assets/synstate-logo.png" alt="SynState Logo" width="400" />
4
+ <img src="https://github.com/noshiro-pf/mono/raw/main/libs/synstate/assets/synstate-logo.png" alt="SynState Logo" width="400" />
5
5
  </p>
6
6
 
7
7
  <p align="center">
8
8
 
9
9
  [![npm version](https://img.shields.io/npm/v/synstate.svg)](https://www.npmjs.com/package/synstate)
10
10
  [![npm downloads](https://img.shields.io/npm/dm/synstate.svg)](https://www.npmjs.com/package/synstate)
11
- [![License](https://img.shields.io/npm/l/synstate.svg)](./LICENSE)
12
- [![codecov](https://codecov.io/gh/noshiro-pf/synstate/graph/badge.svg)](https://codecov.io/gh/noshiro-pf/synstate)
11
+ [![License](https://img.shields.io/npm/l/synstate.svg)](https://github.com/noshiro-pf/mono/blob/main/libs/synstate/LICENSE)
12
+ [![codecov](https://codecov.io/gh/noshiro-pf/mono/graph/badge.svg)](https://codecov.io/gh/noshiro-pf/mono)
13
13
 
14
14
  </p>
15
15
 
@@ -17,7 +17,7 @@
17
17
 
18
18
  "SynState" is named after "Synchronized + State." It represents a sound synchronized state through a **glitch-free**[^1] Observable implementation.
19
19
 
20
- [^1]: See ["How SynState solved the glitch?"](./documents/how-synstate-solved-the-glitch.md).
20
+ [^1]: See ["How SynState solved the glitch?"](https://noshiro-pf.github.io/synstate/internals/how-synstate-solved-the-glitch/).
21
21
 
22
22
  ## Features
23
23
 
@@ -207,7 +207,7 @@ A state management library that scales from simple global state to complex async
207
207
 
208
208
  RxJS is the most well-known Observable library, and it excels at modeling asynchronous event processing. However, RxJS has a fundamental issue known as **glitch**[^1] — a phenomenon where derived values can temporarily enter inconsistent intermediate states during synchronous propagation. For a state management library, where consistency of derived state is critical, this is unacceptable. SynState was built from scratch with a glitch-free Observable implementation to solve this problem.
209
209
 
210
- For a detailed explanation, see ["How SynState solved the glitch?"](./documents/how-synstate-solved-the-glitch.md).
210
+ For a detailed explanation, see ["How SynState solved the glitch?"](https://noshiro-pf.github.io/synstate/internals/how-synstate-solved-the-glitch/).
211
211
 
212
212
  ### Key Differences from RxJS
213
213
 
@@ -663,8 +663,8 @@ SynState maintains full type information.
663
663
 
664
664
  ## License
665
665
 
666
- This project is licensed under the [Apache License 2.0](./LICENSE).
666
+ This project is licensed under the [Apache License 2.0](https://github.com/noshiro-pf/mono/blob/main/libs/synstate/LICENSE).
667
667
 
668
668
  ## Repository
669
669
 
670
- <https://github.com/noshiro-pf/synstate>
670
+ <https://github.com/noshiro-pf/mono/tree/main/libs/synstate>
package/package.json CHANGED
@@ -1,10 +1,11 @@
1
1
  {
2
2
  "name": "synstate",
3
- "version": "2.0.0",
3
+ "version": "2.0.1",
4
4
  "description": "Type-safe State Management Library for TypeScript/JavaScript",
5
5
  "repository": {
6
6
  "type": "git",
7
- "url": "git+https://github.com/noshiro-pf/synstate.git"
7
+ "url": "git+https://github.com/noshiro-pf/mono.git",
8
+ "directory": "libs/synstate"
8
9
  },
9
10
  "license": "Apache-2.0",
10
11
  "author": "noshiro-pf <noshiro.pf@gmail.com>",
@@ -28,38 +29,51 @@
28
29
  "LICENSE"
29
30
  ],
30
31
  "dependencies": {
31
- "ts-data-forge": "^14.2.0",
32
- "ts-type-forge": "^9.2.0"
32
+ "ts-data-forge": "^14.2.1",
33
+ "ts-type-forge": "^9.2.1"
33
34
  },
34
35
  "devDependencies": {
35
36
  "@reduxjs/toolkit": "2.12.0",
36
- "@types/argparse": "2.0.17",
37
+ "@rollup/plugin-replace": "6.0.3",
38
+ "@rollup/plugin-strip": "3.0.4",
37
39
  "@types/react": "19.2.18",
38
40
  "argparse": "3.0.0",
39
41
  "jotai": "2.20.2",
40
42
  "mobx": "7.0.0",
43
+ "prettier": "3.9.6",
44
+ "prettier-plugin-organize-imports": "4.3.0",
45
+ "prettier-plugin-packagejson": "3.0.2",
41
46
  "react": "19.2.8",
47
+ "rollup": "4.62.4",
48
+ "rollup-plugin-esbuild": "6.2.1",
42
49
  "rxjs": "7.8.2",
43
50
  "valtio": "2.3.2",
44
- "zustand": "5.0.14"
51
+ "zustand": "5.0.14",
52
+ "eslint-config-typed": "5.8.5",
53
+ "eslint-plugin-ts-data-forge": "0.4.4",
54
+ "eslint-plugin-ts-fortress": "1.0.1",
55
+ "eslint-plugin-ts-type-forge": "0.6.3",
56
+ "synstate-react-hooks": "2.0.1",
57
+ "synstate-react-hooks-compat": "2.0.1",
58
+ "ts-repo-utils": "10.2.0"
45
59
  },
46
60
  "scripts": {
47
- "benchmark": "tsx ./scripts/cmd/run-benchmark.mts",
48
- "benchmark:cascaded-diamond": "tsx ./scripts/cmd/run-benchmark-cascaded-diamond.mts",
49
- "benchmark:deep-chain": "tsx ./scripts/cmd/run-benchmark-deep-chain.mts",
50
- "build": "tsx ./scripts/cmd/build.mts",
51
- "build:min": "tsx ./scripts/cmd/build.mts --skip-check",
52
- "check:ext": "tsx ./scripts/cmd/check-ext.mts",
53
- "check-all": "tsx ./scripts/cmd/check-all.mts",
61
+ "benchmark": "tsx --tsconfig ../../tools/configs/tsconfig.tsx.json ./scripts/cmd/run-benchmark.mts",
62
+ "benchmark:cascaded-diamond": "tsx --tsconfig ../../tools/configs/tsconfig.tsx.json ./scripts/cmd/run-benchmark-cascaded-diamond.mts",
63
+ "benchmark:deep-chain": "tsx --tsconfig ../../tools/configs/tsconfig.tsx.json ./scripts/cmd/run-benchmark-deep-chain.mts",
64
+ "build": "tsx --tsconfig ../../tools/configs/tsconfig.tsx.json ./scripts/cmd/build.mts",
65
+ "build:min": "tsx --tsconfig ../../tools/configs/tsconfig.tsx.json ./scripts/cmd/build.mts --skip-check",
66
+ "check:ext": "tsx --tsconfig ../../tools/configs/tsconfig.tsx.json ./scripts/cmd/check-ext.mts",
67
+ "check-all": "tsx --tsconfig ../../tools/configs/tsconfig.tsx.json ./scripts/cmd/check-all.mts",
54
68
  "doc": "run-s doc:embed doc:embed:jsdoc doc:gen-sample-diffs fmt",
55
- "doc:embed": "tsx ./scripts/cmd/embed-examples.mts",
56
- "doc:embed:jsdoc": "tsx ./scripts/cmd/embed-examples-in-jsdoc.mts",
57
- "doc:gen-sample-diffs": "tsx ./scripts/cmd/generate-sample-diffs.mts",
58
- "fmt": "format-uncommitted --cwd .",
59
- "fmt:diff": "format-diff-from origin/main --cwd .",
69
+ "doc:embed": "tsx --tsconfig ../../tools/configs/tsconfig.tsx.json ./scripts/cmd/embed-examples.mts",
70
+ "doc:embed:jsdoc": "tsx --tsconfig ../../tools/configs/tsconfig.tsx.json ./scripts/cmd/embed-examples-in-jsdoc.mts",
71
+ "doc:gen-sample-diffs": "tsx --tsconfig ../../tools/configs/tsconfig.tsx.json ./scripts/cmd/generate-sample-diffs.mts",
72
+ "fmt": "tsx --tsconfig ../../tools/configs/tsconfig.tsx.json ../../libs/ts-repo-utils/src/cmd/format-uncommitted.mts --cwd .",
73
+ "fmt:diff": "tsx --tsconfig ../../tools/configs/tsconfig.tsx.json ../../libs/ts-repo-utils/src/cmd/format-diff-from.mts origin/main --cwd .",
60
74
  "fmt:full": "pnpm run z:prettier .",
61
75
  "gi": "run-s gi:src fmt",
62
- "gi:src": "gen-index-ts ./src --index-ext .mts --export-ext .mjs --target-ext .mts --target-ext .tsx --exclude entry-point.mts --exclude \"core/utils/**\"",
76
+ "gi:src": "tsx --tsconfig ../../tools/configs/tsconfig.tsx.json ../../libs/ts-repo-utils/src/cmd/gen-index-ts.mts ./src --index-ext .mts --export-ext .mjs --target-ext .mts --target-ext .tsx --exclude entry-point.mts --exclude \"core/utils/**\"",
63
77
  "lint": "eslint .",
64
78
  "lint:fix": "eslint . --fix",
65
79
  "test": "pnpm run z:vitest:node run",