@legendapp/state 3.0.0-alpha.1 → 3.0.0-alpha.11

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 (322) hide show
  1. package/as/arrayAsRecord.d.mts +5 -0
  2. package/as/arrayAsRecord.d.ts +5 -0
  3. package/as/arrayAsRecord.js +28 -0
  4. package/as/arrayAsRecord.mjs +26 -0
  5. package/as/arrayAsSet.d.mts +5 -0
  6. package/as/arrayAsSet.d.ts +5 -0
  7. package/as/arrayAsSet.js +13 -0
  8. package/as/arrayAsSet.mjs +11 -0
  9. package/as/arrayAsString.d.mts +5 -0
  10. package/as/arrayAsString.d.ts +5 -0
  11. package/as/arrayAsString.js +13 -0
  12. package/as/arrayAsString.mjs +11 -0
  13. package/as/numberAsString.d.mts +5 -0
  14. package/as/numberAsString.d.ts +5 -0
  15. package/as/numberAsString.js +13 -0
  16. package/as/numberAsString.mjs +11 -0
  17. package/as/recordAsArray.d.mts +5 -0
  18. package/as/recordAsArray.d.ts +5 -0
  19. package/as/recordAsArray.js +25 -0
  20. package/as/recordAsArray.mjs +23 -0
  21. package/as/recordAsString.d.mts +5 -0
  22. package/as/recordAsString.d.ts +5 -0
  23. package/as/recordAsString.js +13 -0
  24. package/as/recordAsString.mjs +11 -0
  25. package/as/setAsArray.d.mts +5 -0
  26. package/as/setAsArray.d.ts +5 -0
  27. package/as/setAsArray.js +13 -0
  28. package/as/setAsArray.mjs +11 -0
  29. package/as/setAsString.d.mts +5 -0
  30. package/as/setAsString.d.ts +5 -0
  31. package/as/setAsString.js +13 -0
  32. package/as/setAsString.mjs +11 -0
  33. package/as/stringAsArray.d.mts +5 -0
  34. package/as/stringAsArray.d.ts +5 -0
  35. package/as/stringAsArray.js +13 -0
  36. package/as/stringAsArray.mjs +11 -0
  37. package/as/stringAsNumber.d.mts +5 -0
  38. package/as/stringAsNumber.d.ts +5 -0
  39. package/as/stringAsNumber.js +16 -0
  40. package/as/stringAsNumber.mjs +14 -0
  41. package/as/stringAsRecord.d.mts +5 -0
  42. package/as/stringAsRecord.d.ts +5 -0
  43. package/as/stringAsRecord.js +15 -0
  44. package/as/stringAsRecord.mjs +13 -0
  45. package/as/stringAsSet.d.mts +5 -0
  46. package/as/stringAsSet.d.ts +5 -0
  47. package/as/stringAsSet.js +13 -0
  48. package/as/stringAsSet.mjs +11 -0
  49. package/babel.d.mts +21 -0
  50. package/babel.d.ts +21 -2
  51. package/babel.js +55 -53
  52. package/babel.mjs +63 -0
  53. package/config/enable$GetSet.d.mts +10 -0
  54. package/config/enable$GetSet.d.ts +4 -2
  55. package/config/enable$GetSet.js +13 -14
  56. package/config/enable$GetSet.mjs +13 -14
  57. package/config/enableReactComponents.d.mts +9 -0
  58. package/config/enableReactComponents.d.ts +4 -2
  59. package/config/enableReactComponents.js +13 -10
  60. package/config/enableReactComponents.mjs +13 -10
  61. package/config/enableReactNativeComponents.d.mts +22 -0
  62. package/config/enableReactNativeComponents.d.ts +6 -4
  63. package/config/enableReactNativeComponents.js +43 -47
  64. package/config/enableReactNativeComponents.mjs +43 -47
  65. package/config/enableReactTracking.d.mts +7 -0
  66. package/config/enableReactTracking.d.ts +3 -2
  67. package/config/enableReactTracking.js +33 -38
  68. package/config/enableReactTracking.mjs +33 -38
  69. package/config/enableReactUse.d.mts +10 -0
  70. package/config/enableReactUse.d.ts +4 -1
  71. package/config/enableReactUse.js +15 -14
  72. package/config/enableReactUse.mjs +15 -14
  73. package/config/enable_PeekAssign.d.mts +10 -0
  74. package/config/enable_PeekAssign.d.ts +4 -2
  75. package/config/enable_PeekAssign.js +13 -14
  76. package/config/enable_PeekAssign.mjs +13 -14
  77. package/helpers/pageHash.d.mts +9 -0
  78. package/helpers/pageHash.d.ts +2 -0
  79. package/helpers/pageHash.js +25 -30
  80. package/helpers/pageHash.mjs +25 -30
  81. package/helpers/pageHashParams.d.mts +9 -0
  82. package/helpers/pageHashParams.d.ts +2 -0
  83. package/helpers/pageHashParams.js +34 -37
  84. package/helpers/pageHashParams.mjs +34 -37
  85. package/helpers/time.d.mts +6 -0
  86. package/helpers/time.d.ts +6 -3
  87. package/helpers/time.js +17 -17
  88. package/helpers/time.mjs +17 -17
  89. package/helpers/trackHistory.d.mts +6 -0
  90. package/helpers/trackHistory.d.ts +4 -2
  91. package/helpers/trackHistory.js +13 -16
  92. package/helpers/trackHistory.mjs +13 -16
  93. package/helpers/undoRedo.d.mts +37 -0
  94. package/helpers/undoRedo.d.ts +5 -3
  95. package/helpers/undoRedo.js +59 -94
  96. package/helpers/undoRedo.mjs +59 -94
  97. package/index.d.mts +405 -0
  98. package/index.d.ts +372 -28
  99. package/index.js +2024 -2161
  100. package/index.mjs +2024 -2161
  101. package/package.json +254 -195
  102. package/persist-plugins/async-storage.d.mts +18 -0
  103. package/persist-plugins/async-storage.d.ts +6 -3
  104. package/persist-plugins/async-storage.js +79 -86
  105. package/persist-plugins/async-storage.mjs +79 -86
  106. package/persist-plugins/indexeddb.d.mts +29 -0
  107. package/persist-plugins/indexeddb.d.ts +6 -3
  108. package/persist-plugins/indexeddb.js +331 -352
  109. package/persist-plugins/indexeddb.mjs +331 -352
  110. package/persist-plugins/local-storage.d.mts +23 -0
  111. package/persist-plugins/local-storage.d.ts +8 -5
  112. package/persist-plugins/local-storage.js +74 -76
  113. package/persist-plugins/local-storage.mjs +74 -76
  114. package/persist-plugins/mmkv.d.mts +18 -0
  115. package/persist-plugins/mmkv.d.ts +6 -3
  116. package/persist-plugins/mmkv.js +82 -86
  117. package/persist-plugins/mmkv.mjs +82 -86
  118. package/react-hooks/createObservableHook.d.mts +5 -0
  119. package/react-hooks/createObservableHook.d.ts +4 -1
  120. package/react-hooks/createObservableHook.js +29 -30
  121. package/react-hooks/createObservableHook.mjs +25 -30
  122. package/react-hooks/useHover.d.mts +5 -0
  123. package/react-hooks/useHover.d.ts +5 -3
  124. package/react-hooks/useHover.js +29 -29
  125. package/react-hooks/useHover.mjs +29 -29
  126. package/react-hooks/useMeasure.d.mts +9 -0
  127. package/react-hooks/useMeasure.d.ts +5 -2
  128. package/react-hooks/useMeasure.js +30 -32
  129. package/react-hooks/useMeasure.mjs +30 -32
  130. package/react-hooks/useObservableNextRouter.d.mts +35 -0
  131. package/react-hooks/useObservableNextRouter.d.ts +9 -7
  132. package/react-hooks/useObservableNextRouter.js +64 -77
  133. package/react-hooks/useObservableNextRouter.mjs +60 -77
  134. package/react.d.mts +157 -0
  135. package/react.d.ts +157 -21
  136. package/react.js +471 -751
  137. package/react.mjs +470 -754
  138. package/sync-plugins/crud.d.mts +53 -0
  139. package/sync-plugins/crud.d.ts +12 -11
  140. package/sync-plugins/crud.js +243 -271
  141. package/sync-plugins/crud.mjs +243 -271
  142. package/sync-plugins/fetch.d.mts +21 -0
  143. package/sync-plugins/fetch.d.ts +7 -4
  144. package/sync-plugins/fetch.js +50 -37
  145. package/sync-plugins/fetch.mjs +50 -37
  146. package/sync-plugins/keel.d.mts +108 -0
  147. package/sync-plugins/keel.d.ts +17 -15
  148. package/sync-plugins/keel.js +228 -462
  149. package/sync-plugins/keel.mjs +226 -464
  150. package/sync-plugins/supabase.d.mts +39 -0
  151. package/sync-plugins/supabase.d.ts +16 -14
  152. package/sync-plugins/supabase.js +127 -128
  153. package/sync-plugins/supabase.mjs +127 -128
  154. package/sync-plugins/tanstack-query.d.mts +14 -0
  155. package/sync-plugins/tanstack-query.d.ts +7 -4
  156. package/sync-plugins/tanstack-query.js +51 -57
  157. package/sync-plugins/tanstack-query.mjs +51 -57
  158. package/sync-plugins/tanstack-react-query.d.mts +8 -0
  159. package/sync-plugins/tanstack-react-query.d.ts +6 -1
  160. package/sync-plugins/tanstack-react-query.js +2 -2
  161. package/sync-plugins/tanstack-react-query.mjs +2 -2
  162. package/sync.d.mts +351 -0
  163. package/sync.d.ts +349 -9
  164. package/sync.js +909 -970
  165. package/sync.mjs +910 -971
  166. package/trace.d.mts +9 -0
  167. package/trace.d.ts +9 -4
  168. package/trace.js +72 -62
  169. package/trace.mjs +72 -62
  170. package/babel.js.map +0 -1
  171. package/config/enable$GetSet.js.map +0 -1
  172. package/config/enable$GetSet.mjs.map +0 -1
  173. package/config/enableReactComponents.js.map +0 -1
  174. package/config/enableReactComponents.mjs.map +0 -1
  175. package/config/enableReactNativeComponents.js.map +0 -1
  176. package/config/enableReactNativeComponents.mjs.map +0 -1
  177. package/config/enableReactTracking.js.map +0 -1
  178. package/config/enableReactTracking.mjs.map +0 -1
  179. package/config/enableReactUse.js.map +0 -1
  180. package/config/enableReactUse.mjs.map +0 -1
  181. package/config/enable_PeekAssign.js.map +0 -1
  182. package/config/enable_PeekAssign.mjs.map +0 -1
  183. package/helpers/pageHash.js.map +0 -1
  184. package/helpers/pageHash.mjs.map +0 -1
  185. package/helpers/pageHashParams.js.map +0 -1
  186. package/helpers/pageHashParams.mjs.map +0 -1
  187. package/helpers/time.js.map +0 -1
  188. package/helpers/time.mjs.map +0 -1
  189. package/helpers/trackHistory.js.map +0 -1
  190. package/helpers/trackHistory.mjs.map +0 -1
  191. package/helpers/undoRedo.js.map +0 -1
  192. package/helpers/undoRedo.mjs.map +0 -1
  193. package/history.d.ts +0 -1
  194. package/history.js +0 -24
  195. package/history.js.map +0 -1
  196. package/history.mjs +0 -22
  197. package/history.mjs.map +0 -1
  198. package/index.js.map +0 -1
  199. package/index.mjs.map +0 -1
  200. package/persist-plugins/async-storage.js.map +0 -1
  201. package/persist-plugins/async-storage.mjs.map +0 -1
  202. package/persist-plugins/indexeddb.js.map +0 -1
  203. package/persist-plugins/indexeddb.mjs.map +0 -1
  204. package/persist-plugins/local-storage.js.map +0 -1
  205. package/persist-plugins/local-storage.mjs.map +0 -1
  206. package/persist-plugins/mmkv.js.map +0 -1
  207. package/persist-plugins/mmkv.mjs.map +0 -1
  208. package/react-hooks/createObservableHook.js.map +0 -1
  209. package/react-hooks/createObservableHook.mjs.map +0 -1
  210. package/react-hooks/useHover.js.map +0 -1
  211. package/react-hooks/useHover.mjs.map +0 -1
  212. package/react-hooks/useMeasure.js.map +0 -1
  213. package/react-hooks/useMeasure.mjs.map +0 -1
  214. package/react-hooks/useObservableNextRouter.js.map +0 -1
  215. package/react-hooks/useObservableNextRouter.mjs.map +0 -1
  216. package/react.js.map +0 -1
  217. package/react.mjs.map +0 -1
  218. package/src/ObservableObject.ts +0 -1350
  219. package/src/ObservablePrimitive.ts +0 -62
  220. package/src/babel/index.ts +0 -83
  221. package/src/batching.ts +0 -357
  222. package/src/computed.ts +0 -18
  223. package/src/config/enable$GetSet.ts +0 -30
  224. package/src/config/enableReactComponents.ts +0 -26
  225. package/src/config/enableReactNativeComponents.ts +0 -102
  226. package/src/config/enableReactTracking.ts +0 -62
  227. package/src/config/enableReactUse.ts +0 -32
  228. package/src/config/enable_PeekAssign.ts +0 -31
  229. package/src/config.ts +0 -47
  230. package/src/createObservable.ts +0 -47
  231. package/src/event.ts +0 -26
  232. package/src/globals.ts +0 -235
  233. package/src/helpers/pageHash.ts +0 -41
  234. package/src/helpers/pageHashParams.ts +0 -55
  235. package/src/helpers/time.ts +0 -30
  236. package/src/helpers/trackHistory.ts +0 -29
  237. package/src/helpers/undoRedo.ts +0 -111
  238. package/src/helpers.ts +0 -231
  239. package/src/is.ts +0 -63
  240. package/src/linked.ts +0 -17
  241. package/src/observable.ts +0 -32
  242. package/src/observableInterfaces.ts +0 -151
  243. package/src/observableTypes.ts +0 -232
  244. package/src/observe.ts +0 -89
  245. package/src/old-plugins/firebase.ts +0 -1053
  246. package/src/onChange.ts +0 -146
  247. package/src/persist/configureObservablePersistence.ts +0 -7
  248. package/src/persist/fieldTransformer.ts +0 -149
  249. package/src/persist/observablePersistRemoteFunctionsAdapter.ts +0 -39
  250. package/src/persist/persistObservable.ts +0 -1034
  251. package/src/persist-plugins/async-storage.ts +0 -99
  252. package/src/persist-plugins/indexeddb.ts +0 -439
  253. package/src/persist-plugins/local-storage.ts +0 -86
  254. package/src/persist-plugins/mmkv.ts +0 -91
  255. package/src/proxy.ts +0 -28
  256. package/src/react/Computed.tsx +0 -8
  257. package/src/react/For.tsx +0 -116
  258. package/src/react/Memo.tsx +0 -4
  259. package/src/react/Reactive.tsx +0 -53
  260. package/src/react/Show.tsx +0 -33
  261. package/src/react/Switch.tsx +0 -43
  262. package/src/react/react-globals.ts +0 -3
  263. package/src/react/reactInterfaces.ts +0 -32
  264. package/src/react/reactive-observer.tsx +0 -210
  265. package/src/react/useComputed.ts +0 -36
  266. package/src/react/useEffectOnce.ts +0 -41
  267. package/src/react/useIsMounted.ts +0 -16
  268. package/src/react/useMount.ts +0 -15
  269. package/src/react/useObservable.ts +0 -24
  270. package/src/react/useObservableReducer.ts +0 -52
  271. package/src/react/useObservableState.ts +0 -30
  272. package/src/react/useObserve.ts +0 -54
  273. package/src/react/useObserveEffect.ts +0 -40
  274. package/src/react/usePauseProvider.tsx +0 -16
  275. package/src/react/useSelector.ts +0 -167
  276. package/src/react/useUnmount.ts +0 -8
  277. package/src/react/useWhen.ts +0 -9
  278. package/src/react-hooks/createObservableHook.ts +0 -53
  279. package/src/react-hooks/useHover.ts +0 -40
  280. package/src/react-hooks/useMeasure.ts +0 -48
  281. package/src/react-hooks/useObservableNextRouter.ts +0 -137
  282. package/src/retry.ts +0 -71
  283. package/src/setupTracking.ts +0 -26
  284. package/src/sync/activateSyncedNode.ts +0 -128
  285. package/src/sync/configureObservableSync.ts +0 -7
  286. package/src/sync/persistTypes.ts +0 -216
  287. package/src/sync/syncHelpers.ts +0 -180
  288. package/src/sync/syncObservable.ts +0 -1056
  289. package/src/sync/syncObservableAdapter.ts +0 -31
  290. package/src/sync/syncTypes.ts +0 -189
  291. package/src/sync/synced.ts +0 -21
  292. package/src/sync-plugins/crud.ts +0 -412
  293. package/src/sync-plugins/fetch.ts +0 -80
  294. package/src/sync-plugins/keel.ts +0 -495
  295. package/src/sync-plugins/supabase.ts +0 -249
  296. package/src/sync-plugins/tanstack-query.ts +0 -113
  297. package/src/sync-plugins/tanstack-react-query.ts +0 -12
  298. package/src/trace/traceHelpers.ts +0 -11
  299. package/src/trace/useTraceListeners.ts +0 -34
  300. package/src/trace/useTraceUpdates.ts +0 -24
  301. package/src/trace/useVerifyNotTracking.ts +0 -33
  302. package/src/trace/useVerifyOneRender.ts +0 -10
  303. package/src/trackSelector.ts +0 -52
  304. package/src/tracking.ts +0 -43
  305. package/src/types/babel.d.ts +0 -12
  306. package/src/when.ts +0 -75
  307. package/sync-plugins/crud.js.map +0 -1
  308. package/sync-plugins/crud.mjs.map +0 -1
  309. package/sync-plugins/fetch.js.map +0 -1
  310. package/sync-plugins/fetch.mjs.map +0 -1
  311. package/sync-plugins/keel.js.map +0 -1
  312. package/sync-plugins/keel.mjs.map +0 -1
  313. package/sync-plugins/supabase.js.map +0 -1
  314. package/sync-plugins/supabase.mjs.map +0 -1
  315. package/sync-plugins/tanstack-query.js.map +0 -1
  316. package/sync-plugins/tanstack-query.mjs.map +0 -1
  317. package/sync-plugins/tanstack-react-query.js.map +0 -1
  318. package/sync-plugins/tanstack-react-query.mjs.map +0 -1
  319. package/sync.js.map +0 -1
  320. package/sync.mjs.map +0 -1
  321. package/trace.js.map +0 -1
  322. package/trace.mjs.map +0 -1
@@ -0,0 +1,5 @@
1
+ import { ObservableParam, Linked } from '@legendapp/state';
2
+
3
+ declare function arrayAsRecord<T, TKey extends keyof T>(arr$: ObservableParam<T[]>, keyField?: TKey): Linked<Record<string, T>>;
4
+
5
+ export { arrayAsRecord };
@@ -0,0 +1,5 @@
1
+ import { ObservableParam, Linked } from '@legendapp/state';
2
+
3
+ declare function arrayAsRecord<T, TKey extends keyof T>(arr$: ObservableParam<T[]>, keyField?: TKey): Linked<Record<string, T>>;
4
+
5
+ export { arrayAsRecord };
@@ -0,0 +1,28 @@
1
+ 'use strict';
2
+
3
+ var state = require('@legendapp/state');
4
+
5
+ // src/as/arrayAsRecord.ts
6
+ function arrayAsRecord(arr$, keyField = "id") {
7
+ return state.linked({
8
+ get: () => {
9
+ const record = {};
10
+ const value = arr$.get();
11
+ for (let i = 0; i < value.length; i++) {
12
+ const v = value[i];
13
+ const child = v[keyField];
14
+ record[child[keyField]] = child;
15
+ }
16
+ return record;
17
+ },
18
+ set: ({ value }) => {
19
+ if (value) {
20
+ arr$.set(Object.values(value));
21
+ } else {
22
+ arr$.set(value);
23
+ }
24
+ }
25
+ });
26
+ }
27
+
28
+ exports.arrayAsRecord = arrayAsRecord;
@@ -0,0 +1,26 @@
1
+ import { linked } from '@legendapp/state';
2
+
3
+ // src/as/arrayAsRecord.ts
4
+ function arrayAsRecord(arr$, keyField = "id") {
5
+ return linked({
6
+ get: () => {
7
+ const record = {};
8
+ const value = arr$.get();
9
+ for (let i = 0; i < value.length; i++) {
10
+ const v = value[i];
11
+ const child = v[keyField];
12
+ record[child[keyField]] = child;
13
+ }
14
+ return record;
15
+ },
16
+ set: ({ value }) => {
17
+ if (value) {
18
+ arr$.set(Object.values(value));
19
+ } else {
20
+ arr$.set(value);
21
+ }
22
+ }
23
+ });
24
+ }
25
+
26
+ export { arrayAsRecord };
@@ -0,0 +1,5 @@
1
+ import { ObservableParam, Linked } from '@legendapp/state';
2
+
3
+ declare function arrayAsSet<T>(arr$: ObservableParam<T[]>): Linked<Set<T>>;
4
+
5
+ export { arrayAsSet };
@@ -0,0 +1,5 @@
1
+ import { ObservableParam, Linked } from '@legendapp/state';
2
+
3
+ declare function arrayAsSet<T>(arr$: ObservableParam<T[]>): Linked<Set<T>>;
4
+
5
+ export { arrayAsSet };
@@ -0,0 +1,13 @@
1
+ 'use strict';
2
+
3
+ var state = require('@legendapp/state');
4
+
5
+ // src/as/arrayAsSet.ts
6
+ function arrayAsSet(arr$) {
7
+ return state.linked({
8
+ get: () => new Set(arr$.get()),
9
+ set: ({ value }) => arr$.set(Array.from(value))
10
+ });
11
+ }
12
+
13
+ exports.arrayAsSet = arrayAsSet;
@@ -0,0 +1,11 @@
1
+ import { linked } from '@legendapp/state';
2
+
3
+ // src/as/arrayAsSet.ts
4
+ function arrayAsSet(arr$) {
5
+ return linked({
6
+ get: () => new Set(arr$.get()),
7
+ set: ({ value }) => arr$.set(Array.from(value))
8
+ });
9
+ }
10
+
11
+ export { arrayAsSet };
@@ -0,0 +1,5 @@
1
+ import { ObservableParam, Linked } from '@legendapp/state';
2
+
3
+ declare function arrayAsString<T extends any[]>(arr$: ObservableParam<T>): Linked<string>;
4
+
5
+ export { arrayAsString };
@@ -0,0 +1,5 @@
1
+ import { ObservableParam, Linked } from '@legendapp/state';
2
+
3
+ declare function arrayAsString<T extends any[]>(arr$: ObservableParam<T>): Linked<string>;
4
+
5
+ export { arrayAsString };
@@ -0,0 +1,13 @@
1
+ 'use strict';
2
+
3
+ var state = require('@legendapp/state');
4
+
5
+ // src/as/arrayAsString.ts
6
+ function arrayAsString(arr$) {
7
+ return state.linked({
8
+ get: () => JSON.stringify(arr$ == null ? void 0 : arr$.get()),
9
+ set: ({ value }) => arr$.set(JSON.parse(value || "[]"))
10
+ });
11
+ }
12
+
13
+ exports.arrayAsString = arrayAsString;
@@ -0,0 +1,11 @@
1
+ import { linked } from '@legendapp/state';
2
+
3
+ // src/as/arrayAsString.ts
4
+ function arrayAsString(arr$) {
5
+ return linked({
6
+ get: () => JSON.stringify(arr$ == null ? void 0 : arr$.get()),
7
+ set: ({ value }) => arr$.set(JSON.parse(value || "[]"))
8
+ });
9
+ }
10
+
11
+ export { arrayAsString };
@@ -0,0 +1,5 @@
1
+ import { ObservableParam, Linked } from '@legendapp/state';
2
+
3
+ declare function numberAsString(num$: ObservableParam<number>): Linked<string>;
4
+
5
+ export { numberAsString };
@@ -0,0 +1,5 @@
1
+ import { ObservableParam, Linked } from '@legendapp/state';
2
+
3
+ declare function numberAsString(num$: ObservableParam<number>): Linked<string>;
4
+
5
+ export { numberAsString };
@@ -0,0 +1,13 @@
1
+ 'use strict';
2
+
3
+ var state = require('@legendapp/state');
4
+
5
+ // src/as/numberAsString.ts
6
+ function numberAsString(num$) {
7
+ return state.linked({
8
+ get: () => num$.get() + "",
9
+ set: ({ value }) => num$ == null ? void 0 : num$.set(+value)
10
+ });
11
+ }
12
+
13
+ exports.numberAsString = numberAsString;
@@ -0,0 +1,11 @@
1
+ import { linked } from '@legendapp/state';
2
+
3
+ // src/as/numberAsString.ts
4
+ function numberAsString(num$) {
5
+ return linked({
6
+ get: () => num$.get() + "",
7
+ set: ({ value }) => num$ == null ? void 0 : num$.set(+value)
8
+ });
9
+ }
10
+
11
+ export { numberAsString };
@@ -0,0 +1,5 @@
1
+ import { ObservableParam, Linked } from '@legendapp/state';
2
+
3
+ declare function recordAsArray<T, TKey extends keyof T>(record$: ObservableParam<Record<string | number, T>>, keyField?: TKey): Linked<T[]>;
4
+
5
+ export { recordAsArray };
@@ -0,0 +1,5 @@
1
+ import { ObservableParam, Linked } from '@legendapp/state';
2
+
3
+ declare function recordAsArray<T, TKey extends keyof T>(record$: ObservableParam<Record<string | number, T>>, keyField?: TKey): Linked<T[]>;
4
+
5
+ export { recordAsArray };
@@ -0,0 +1,25 @@
1
+ 'use strict';
2
+
3
+ var state = require('@legendapp/state');
4
+
5
+ // src/as/recordAsArray.ts
6
+ function recordAsArray(record$, keyField = "id") {
7
+ return state.linked({
8
+ get: () => Object.values(record$),
9
+ set: ({ value }) => {
10
+ if (value) {
11
+ const record = {};
12
+ for (let i = 0; i < value.length; i++) {
13
+ const v = value[i];
14
+ const child = v[keyField];
15
+ record[child[keyField]] = child;
16
+ }
17
+ record$.set(record);
18
+ } else {
19
+ record$.set(value);
20
+ }
21
+ }
22
+ });
23
+ }
24
+
25
+ exports.recordAsArray = recordAsArray;
@@ -0,0 +1,23 @@
1
+ import { linked } from '@legendapp/state';
2
+
3
+ // src/as/recordAsArray.ts
4
+ function recordAsArray(record$, keyField = "id") {
5
+ return linked({
6
+ get: () => Object.values(record$),
7
+ set: ({ value }) => {
8
+ if (value) {
9
+ const record = {};
10
+ for (let i = 0; i < value.length; i++) {
11
+ const v = value[i];
12
+ const child = v[keyField];
13
+ record[child[keyField]] = child;
14
+ }
15
+ record$.set(record);
16
+ } else {
17
+ record$.set(value);
18
+ }
19
+ }
20
+ });
21
+ }
22
+
23
+ export { recordAsArray };
@@ -0,0 +1,5 @@
1
+ import { ObservableParam, Linked } from '@legendapp/state';
2
+
3
+ declare function recordAsString(record$: ObservableParam<Record<any, any>>): Linked<string>;
4
+
5
+ export { recordAsString };
@@ -0,0 +1,5 @@
1
+ import { ObservableParam, Linked } from '@legendapp/state';
2
+
3
+ declare function recordAsString(record$: ObservableParam<Record<any, any>>): Linked<string>;
4
+
5
+ export { recordAsString };
@@ -0,0 +1,13 @@
1
+ 'use strict';
2
+
3
+ var state = require('@legendapp/state');
4
+
5
+ // src/as/recordAsString.ts
6
+ function recordAsString(record$) {
7
+ return state.linked({
8
+ get: () => JSON.stringify(record$.get()),
9
+ set: ({ value }) => record$ == null ? void 0 : record$.set(JSON.parse(value || "{}"))
10
+ });
11
+ }
12
+
13
+ exports.recordAsString = recordAsString;
@@ -0,0 +1,11 @@
1
+ import { linked } from '@legendapp/state';
2
+
3
+ // src/as/recordAsString.ts
4
+ function recordAsString(record$) {
5
+ return linked({
6
+ get: () => JSON.stringify(record$.get()),
7
+ set: ({ value }) => record$ == null ? void 0 : record$.set(JSON.parse(value || "{}"))
8
+ });
9
+ }
10
+
11
+ export { recordAsString };
@@ -0,0 +1,5 @@
1
+ import { ObservableParam, Linked } from '@legendapp/state';
2
+
3
+ declare function setAsArray<T>(set$: ObservableParam<Set<T>>): Linked<T[]>;
4
+
5
+ export { setAsArray };
@@ -0,0 +1,5 @@
1
+ import { ObservableParam, Linked } from '@legendapp/state';
2
+
3
+ declare function setAsArray<T>(set$: ObservableParam<Set<T>>): Linked<T[]>;
4
+
5
+ export { setAsArray };
@@ -0,0 +1,13 @@
1
+ 'use strict';
2
+
3
+ var state = require('@legendapp/state');
4
+
5
+ // src/as/setAsArray.ts
6
+ function setAsArray(set$) {
7
+ return state.linked({
8
+ get: () => Array.from(set$ == null ? void 0 : set$.get()),
9
+ set: ({ value }) => set$.set(new Set(value))
10
+ });
11
+ }
12
+
13
+ exports.setAsArray = setAsArray;
@@ -0,0 +1,11 @@
1
+ import { linked } from '@legendapp/state';
2
+
3
+ // src/as/setAsArray.ts
4
+ function setAsArray(set$) {
5
+ return linked({
6
+ get: () => Array.from(set$ == null ? void 0 : set$.get()),
7
+ set: ({ value }) => set$.set(new Set(value))
8
+ });
9
+ }
10
+
11
+ export { setAsArray };
@@ -0,0 +1,5 @@
1
+ import { ObservableParam, Linked } from '@legendapp/state';
2
+
3
+ declare function setAsString(set$: ObservableParam<Set<any>>): Linked<string>;
4
+
5
+ export { setAsString };
@@ -0,0 +1,5 @@
1
+ import { ObservableParam, Linked } from '@legendapp/state';
2
+
3
+ declare function setAsString(set$: ObservableParam<Set<any>>): Linked<string>;
4
+
5
+ export { setAsString };
@@ -0,0 +1,13 @@
1
+ 'use strict';
2
+
3
+ var state = require('@legendapp/state');
4
+
5
+ // src/as/setAsString.ts
6
+ function setAsString(set$) {
7
+ return state.linked({
8
+ get: () => JSON.stringify(Array.from(set$ == null ? void 0 : set$.get())),
9
+ set: ({ value }) => set$.set(new Set(JSON.parse(value || "[]")))
10
+ });
11
+ }
12
+
13
+ exports.setAsString = setAsString;
@@ -0,0 +1,11 @@
1
+ import { linked } from '@legendapp/state';
2
+
3
+ // src/as/setAsString.ts
4
+ function setAsString(set$) {
5
+ return linked({
6
+ get: () => JSON.stringify(Array.from(set$ == null ? void 0 : set$.get())),
7
+ set: ({ value }) => set$.set(new Set(JSON.parse(value || "[]")))
8
+ });
9
+ }
10
+
11
+ export { setAsString };
@@ -0,0 +1,5 @@
1
+ import { ObservableParam, Linked } from '@legendapp/state';
2
+
3
+ declare function stringAsArray<T>(str$: ObservableParam<string>): Linked<T[]>;
4
+
5
+ export { stringAsArray };
@@ -0,0 +1,5 @@
1
+ import { ObservableParam, Linked } from '@legendapp/state';
2
+
3
+ declare function stringAsArray<T>(str$: ObservableParam<string>): Linked<T[]>;
4
+
5
+ export { stringAsArray };
@@ -0,0 +1,13 @@
1
+ 'use strict';
2
+
3
+ var state = require('@legendapp/state');
4
+
5
+ // src/as/stringAsArray.ts
6
+ function stringAsArray(str$) {
7
+ return state.linked({
8
+ get: () => JSON.parse((str$ == null ? void 0 : str$.get()) || "[]"),
9
+ set: ({ value }) => str$ == null ? void 0 : str$.set(JSON.stringify(value))
10
+ });
11
+ }
12
+
13
+ exports.stringAsArray = stringAsArray;
@@ -0,0 +1,11 @@
1
+ import { linked } from '@legendapp/state';
2
+
3
+ // src/as/stringAsArray.ts
4
+ function stringAsArray(str$) {
5
+ return linked({
6
+ get: () => JSON.parse((str$ == null ? void 0 : str$.get()) || "[]"),
7
+ set: ({ value }) => str$ == null ? void 0 : str$.set(JSON.stringify(value))
8
+ });
9
+ }
10
+
11
+ export { stringAsArray };
@@ -0,0 +1,5 @@
1
+ import { ObservableParam, Linked } from '@legendapp/state';
2
+
3
+ declare function stringAsNumber(num$: ObservableParam<string>): Linked<number>;
4
+
5
+ export { stringAsNumber };
@@ -0,0 +1,5 @@
1
+ import { ObservableParam, Linked } from '@legendapp/state';
2
+
3
+ declare function stringAsNumber(num$: ObservableParam<string>): Linked<number>;
4
+
5
+ export { stringAsNumber };
@@ -0,0 +1,16 @@
1
+ 'use strict';
2
+
3
+ var state = require('@legendapp/state');
4
+
5
+ // src/as/stringAsNumber.ts
6
+ function stringAsNumber(num$) {
7
+ return state.linked({
8
+ get: () => {
9
+ const num = +num$.get();
10
+ return state.isNumber(num) ? +num : 0;
11
+ },
12
+ set: ({ value }) => num$ == null ? void 0 : num$.set(value + "")
13
+ });
14
+ }
15
+
16
+ exports.stringAsNumber = stringAsNumber;
@@ -0,0 +1,14 @@
1
+ import { linked, isNumber } from '@legendapp/state';
2
+
3
+ // src/as/stringAsNumber.ts
4
+ function stringAsNumber(num$) {
5
+ return linked({
6
+ get: () => {
7
+ const num = +num$.get();
8
+ return isNumber(num) ? +num : 0;
9
+ },
10
+ set: ({ value }) => num$ == null ? void 0 : num$.set(value + "")
11
+ });
12
+ }
13
+
14
+ export { stringAsNumber };
@@ -0,0 +1,5 @@
1
+ import { ObservableParam, Linked } from '@legendapp/state';
2
+
3
+ declare function stringAsRecord<T extends Record<string, any>>(str$: ObservableParam<string>): Linked<T>;
4
+
5
+ export { stringAsRecord };
@@ -0,0 +1,5 @@
1
+ import { ObservableParam, Linked } from '@legendapp/state';
2
+
3
+ declare function stringAsRecord<T extends Record<string, any>>(str$: ObservableParam<string>): Linked<T>;
4
+
5
+ export { stringAsRecord };
@@ -0,0 +1,15 @@
1
+ 'use strict';
2
+
3
+ var state = require('@legendapp/state');
4
+
5
+ // src/as/stringAsRecord.ts
6
+ function stringAsRecord(str$) {
7
+ return state.linked({
8
+ get: () => {
9
+ return JSON.parse((str$ == null ? void 0 : str$.get()) || "{}");
10
+ },
11
+ set: ({ value }) => str$ == null ? void 0 : str$.set(JSON.stringify(value))
12
+ });
13
+ }
14
+
15
+ exports.stringAsRecord = stringAsRecord;
@@ -0,0 +1,13 @@
1
+ import { linked } from '@legendapp/state';
2
+
3
+ // src/as/stringAsRecord.ts
4
+ function stringAsRecord(str$) {
5
+ return linked({
6
+ get: () => {
7
+ return JSON.parse((str$ == null ? void 0 : str$.get()) || "{}");
8
+ },
9
+ set: ({ value }) => str$ == null ? void 0 : str$.set(JSON.stringify(value))
10
+ });
11
+ }
12
+
13
+ export { stringAsRecord };
@@ -0,0 +1,5 @@
1
+ import { ObservableParam, Linked } from '@legendapp/state';
2
+
3
+ declare function stringAsSet<T>(str$: ObservableParam<string>): Linked<Set<T>>;
4
+
5
+ export { stringAsSet };
@@ -0,0 +1,5 @@
1
+ import { ObservableParam, Linked } from '@legendapp/state';
2
+
3
+ declare function stringAsSet<T>(str$: ObservableParam<string>): Linked<Set<T>>;
4
+
5
+ export { stringAsSet };
@@ -0,0 +1,13 @@
1
+ 'use strict';
2
+
3
+ var state = require('@legendapp/state');
4
+
5
+ // src/as/stringAsSet.ts
6
+ function stringAsSet(str$) {
7
+ return state.linked({
8
+ get: () => new Set(JSON.parse((str$ == null ? void 0 : str$.get()) || "[]")),
9
+ set: ({ value }) => str$ == null ? void 0 : str$.set(JSON.stringify(Array.from(value)))
10
+ });
11
+ }
12
+
13
+ exports.stringAsSet = stringAsSet;
@@ -0,0 +1,11 @@
1
+ import { linked } from '@legendapp/state';
2
+
3
+ // src/as/stringAsSet.ts
4
+ function stringAsSet(str$) {
5
+ return linked({
6
+ get: () => new Set(JSON.parse((str$ == null ? void 0 : str$.get()) || "[]")),
7
+ set: ({ value }) => str$ == null ? void 0 : str$.set(JSON.stringify(Array.from(value)))
8
+ });
9
+ }
10
+
11
+ export { stringAsSet };
package/babel.d.mts ADDED
@@ -0,0 +1,21 @@
1
+ declare function export_default(): {
2
+ visitor: {
3
+ ImportDeclaration: {
4
+ enter(path: {
5
+ node: any;
6
+ replaceWith: (param: any) => any;
7
+ skip: () => void;
8
+ }): void;
9
+ };
10
+ JSXElement: {
11
+ enter(path: {
12
+ node: any;
13
+ replaceWith: (param: any) => any;
14
+ skip: () => void;
15
+ traverse: (path: any) => any;
16
+ }): void;
17
+ };
18
+ };
19
+ };
20
+
21
+ export { export_default as default };
package/babel.d.ts CHANGED
@@ -1,2 +1,21 @@
1
- import babel from './src/babel';
2
- export default babel;
1
+ declare function export_default(): {
2
+ visitor: {
3
+ ImportDeclaration: {
4
+ enter(path: {
5
+ node: any;
6
+ replaceWith: (param: any) => any;
7
+ skip: () => void;
8
+ }): void;
9
+ };
10
+ JSXElement: {
11
+ enter(path: {
12
+ node: any;
13
+ replaceWith: (param: any) => any;
14
+ skip: () => void;
15
+ traverse: (path: any) => any;
16
+ }): void;
17
+ };
18
+ };
19
+ };
20
+
21
+ export { export_default as default };