atom.io 0.6.7 → 0.6.9

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 (129) hide show
  1. package/dist/index.d.mts +241 -263
  2. package/dist/index.d.ts +241 -263
  3. package/dist/index.js +28 -1911
  4. package/dist/index.js.map +1 -1
  5. package/dist/index.mjs +5 -1871
  6. package/dist/index.mjs.map +1 -1
  7. package/introspection/dist/index.d.mts +121 -176
  8. package/introspection/dist/index.d.ts +121 -176
  9. package/introspection/dist/index.js +6 -346
  10. package/introspection/dist/index.js.map +1 -1
  11. package/introspection/dist/index.mjs +5 -324
  12. package/introspection/dist/index.mjs.map +1 -1
  13. package/json/dist/index.d.mts +37 -8
  14. package/json/dist/index.d.ts +37 -8
  15. package/json/dist/index.js +31 -48
  16. package/json/dist/index.js.map +1 -1
  17. package/json/dist/index.mjs +6 -14
  18. package/json/dist/index.mjs.map +1 -1
  19. package/package.json +30 -14
  20. package/react/dist/index.js +34 -83
  21. package/react/dist/index.js.map +1 -1
  22. package/react/dist/index.mjs +7 -43
  23. package/react/dist/index.mjs.map +1 -1
  24. package/react-devtools/dist/index.css +1 -42
  25. package/react-devtools/dist/index.css.map +1 -1
  26. package/react-devtools/dist/index.d.mts +128 -193
  27. package/react-devtools/dist/index.d.ts +128 -193
  28. package/react-devtools/dist/index.js +56 -4154
  29. package/react-devtools/dist/index.js.map +1 -1
  30. package/react-devtools/dist/index.mjs +19 -4117
  31. package/react-devtools/dist/index.mjs.map +1 -1
  32. package/realtime/dist/index.d.mts +7 -11
  33. package/realtime/dist/index.d.ts +7 -11
  34. package/realtime/dist/index.js +26 -185
  35. package/realtime/dist/index.js.map +1 -1
  36. package/realtime/dist/index.mjs +4 -149
  37. package/realtime/dist/index.mjs.map +1 -1
  38. package/realtime-react/dist/index.d.mts +12 -16
  39. package/realtime-react/dist/index.d.ts +12 -16
  40. package/realtime-react/dist/index.js +41 -214
  41. package/realtime-react/dist/index.js.map +1 -1
  42. package/realtime-react/dist/index.mjs +9 -169
  43. package/realtime-react/dist/index.mjs.map +1 -1
  44. package/src/atom.ts +7 -6
  45. package/src/index.ts +12 -9
  46. package/src/logger.ts +5 -5
  47. package/src/selector.ts +16 -14
  48. package/src/silo.ts +36 -39
  49. package/src/subscribe.ts +25 -20
  50. package/src/timeline.ts +9 -4
  51. package/src/transaction.ts +3 -4
  52. package/src/internal/atom-internal.ts +0 -54
  53. package/src/internal/families-internal.ts +0 -141
  54. package/src/internal/get.ts +0 -129
  55. package/src/internal/index.ts +0 -15
  56. package/src/internal/is-default.ts +0 -35
  57. package/src/internal/operation.ts +0 -139
  58. package/src/internal/selector/create-read-write-selector.ts +0 -66
  59. package/src/internal/selector/create-readonly-selector.ts +0 -46
  60. package/src/internal/selector/index.ts +0 -4
  61. package/src/internal/selector/lookup-selector-sources.ts +0 -16
  62. package/src/internal/selector/register-selector.ts +0 -57
  63. package/src/internal/selector/trace-selector-atoms.ts +0 -43
  64. package/src/internal/selector/update-selector-atoms.ts +0 -33
  65. package/src/internal/selector-internal.ts +0 -58
  66. package/src/internal/set.ts +0 -99
  67. package/src/internal/store.ts +0 -151
  68. package/src/internal/subject.ts +0 -24
  69. package/src/internal/subscribe-internal.ts +0 -88
  70. package/src/internal/time-travel-internal.ts +0 -91
  71. package/src/internal/timeline/add-atom-to-timeline.ts +0 -168
  72. package/src/internal/timeline/index.ts +0 -1
  73. package/src/internal/timeline-internal.ts +0 -107
  74. package/src/internal/transaction/abort-transaction.ts +0 -12
  75. package/src/internal/transaction/apply-transaction.ts +0 -57
  76. package/src/internal/transaction/build-transaction.ts +0 -33
  77. package/src/internal/transaction/index.ts +0 -25
  78. package/src/internal/transaction/redo-transaction.ts +0 -23
  79. package/src/internal/transaction/undo-transaction.ts +0 -23
  80. package/src/internal/transaction-internal.ts +0 -61
  81. package/src/introspection/attach-atom-index.ts +0 -73
  82. package/src/introspection/attach-introspection-states.ts +0 -42
  83. package/src/introspection/attach-selector-index.ts +0 -77
  84. package/src/introspection/attach-timeline-family.ts +0 -59
  85. package/src/introspection/attach-timeline-index.ts +0 -36
  86. package/src/introspection/attach-transaction-index.ts +0 -38
  87. package/src/introspection/attach-transaction-logs.ts +0 -40
  88. package/src/introspection/index.ts +0 -20
  89. package/src/json/index.ts +0 -1
  90. package/src/json/select-json.ts +0 -18
  91. package/src/react/index.ts +0 -2
  92. package/src/react/store-context.tsx +0 -13
  93. package/src/react/store-hooks.ts +0 -47
  94. package/src/react-devtools/AtomIODevtools.tsx +0 -107
  95. package/src/react-devtools/Button.tsx +0 -24
  96. package/src/react-devtools/StateEditor.tsx +0 -70
  97. package/src/react-devtools/StateIndex.tsx +0 -153
  98. package/src/react-devtools/TimelineIndex.tsx +0 -92
  99. package/src/react-devtools/TransactionIndex.tsx +0 -70
  100. package/src/react-devtools/Updates.tsx +0 -145
  101. package/src/react-devtools/devtools.scss +0 -311
  102. package/src/react-devtools/index.ts +0 -72
  103. package/src/react-explorer/AtomIOExplorer.tsx +0 -218
  104. package/src/react-explorer/explorer-effects.ts +0 -20
  105. package/src/react-explorer/explorer-states.ts +0 -217
  106. package/src/react-explorer/index.ts +0 -23
  107. package/src/react-explorer/space-states.ts +0 -72
  108. package/src/react-explorer/view-states.ts +0 -41
  109. package/src/realtime/README.md +0 -33
  110. package/src/realtime/hook-composition/expose-family.ts +0 -101
  111. package/src/realtime/hook-composition/expose-single.ts +0 -38
  112. package/src/realtime/hook-composition/expose-timeline.ts +0 -60
  113. package/src/realtime/hook-composition/index.ts +0 -12
  114. package/src/realtime/hook-composition/receive-state.ts +0 -29
  115. package/src/realtime/hook-composition/receive-transaction.ts +0 -18
  116. package/src/realtime/index.ts +0 -1
  117. package/src/realtime-react/index.ts +0 -3
  118. package/src/realtime-react/realtime-context.tsx +0 -30
  119. package/src/realtime-react/realtime-hooks.ts +0 -39
  120. package/src/realtime-react/realtime-state.ts +0 -10
  121. package/src/realtime-react/use-pull-family-member.ts +0 -26
  122. package/src/realtime-react/use-pull-family.ts +0 -24
  123. package/src/realtime-react/use-pull.ts +0 -22
  124. package/src/realtime-react/use-push.ts +0 -25
  125. package/src/realtime-react/use-server-action.ts +0 -33
  126. package/src/realtime-testing/index.ts +0 -1
  127. package/src/realtime-testing/setup-realtime-test.tsx +0 -159
  128. package/src/web-effects/index.ts +0 -1
  129. package/src/web-effects/storage.ts +0 -30
@@ -1,327 +1,8 @@
1
- var __defProp = Object.defineProperty;
2
- var __defProps = Object.defineProperties;
3
- var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
4
- var __getOwnPropSymbols = Object.getOwnPropertySymbols;
5
- var __hasOwnProp = Object.prototype.hasOwnProperty;
6
- var __propIsEnum = Object.prototype.propertyIsEnumerable;
7
- var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
8
- var __spreadValues = (a, b) => {
9
- for (var prop in b || (b = {}))
10
- if (__hasOwnProp.call(b, prop))
11
- __defNormalProp(a, prop, b[prop]);
12
- if (__getOwnPropSymbols)
13
- for (var prop of __getOwnPropSymbols(b)) {
14
- if (__propIsEnum.call(b, prop))
15
- __defNormalProp(a, prop, b[prop]);
16
- }
17
- return a;
18
- };
19
- var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
1
+ import { __INTERNAL__ } from 'atom.io';
2
+ import { Subject } from 'atom.io/internal';
20
3
 
21
- // ../src/introspection/attach-introspection-states.ts
22
- import { __INTERNAL__ as __INTERNAL__7 } from "atom.io";
4
+ var E=Object.defineProperty,g=Object.defineProperties;var M=Object.getOwnPropertyDescriptors;var S=Object.getOwnPropertySymbols;var h=Object.prototype.hasOwnProperty,F=Object.prototype.propertyIsEnumerable;var u=(e,o,t)=>o in e?E(e,o,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[o]=t,a=(e,o)=>{for(var t in o||(o={}))h.call(o,t)&&u(e,t,o[t]);if(S)for(var t of S(o))F.call(o,t)&&u(e,t,o[t]);return e},m=(e,o)=>g(e,M(o));var x=(e=__INTERNAL__.IMPLICIT.STORE)=>{let o=__INTERNAL__.atom__INTERNAL({key:"\u{1F441}\u200D\u{1F5E8} Atom Token Index (Internal)",default:()=>[...e.atoms].filter(([t])=>!t.includes("\u{1F441}\u200D\u{1F5E8}")).reduce((t,[n])=>(t[n]={key:n,type:"atom"},t),{}),effects:[({setSelf:t})=>{e.subject.atomCreation.subscribe("introspection",n=>{e.operation.open||n.key.includes("\u{1F441}\u200D\u{1F5E8}")||t(i=>{let{key:r,family:c}=n;if(c){let{key:l,subKey:d}=c,T=i[l];if(T===void 0||"familyMembers"in T){let s=T||{key:l,familyMembers:{}};return m(a({},i),{[l]:m(a({},s),{familyMembers:m(a({},s.familyMembers),{[d]:n})})})}}return m(a({},i),{[r]:n})});});}]},void 0,e);return __INTERNAL__.selector__INTERNAL({key:"\u{1F441}\u200D\u{1F5E8} Atom Token Index",get:({get:t})=>t(o)},void 0,e)};var R=(e=__INTERNAL__.IMPLICIT.STORE)=>{let o=__INTERNAL__.atom__INTERNAL({key:"\u{1F441}\u200D\u{1F5E8} Selector Token Index (Internal)",default:()=>Object.assign([...e.readonlySelectors].filter(([t])=>!t.includes("\u{1F441}\u200D\u{1F5E8}")).reduce((t,[n])=>(t[n]={key:n,type:"readonly_selector"},t),{}),[...e.selectors].reduce((t,[n])=>(t[n]={key:n,type:"selector"},t),{})),effects:[({setSelf:t})=>{e.subject.selectorCreation.subscribe("introspection",n=>{e.operation.open||n.key.includes("\u{1F441}\u200D\u{1F5E8}")||t(i=>{let{key:r,family:c}=n;if(c){let{key:l,subKey:d}=c,T=i[l];if(T===void 0||"familyMembers"in T){let s=T||{key:l,familyMembers:{}};return m(a({},i),{[l]:m(a({},s),{familyMembers:m(a({},s.familyMembers),{[d]:n})})})}}return m(a({},i),{[r]:n})});});}]},void 0,e);return __INTERNAL__.selector__INTERNAL({key:"\u{1F441}\u200D\u{1F5E8} Selector Token Index",get:({get:t})=>t(o)})};var N=(e=__INTERNAL__.IMPLICIT.STORE)=>{let o=__INTERNAL__.atomFamily__INTERNAL({key:"\u{1F441}\u200D\u{1F5E8} Timeline Update Log (Internal)",default:n=>{var i;return (i=e.timelines.get(n))!=null?i:{type:"timeline",key:"",at:0,timeTraveling:null,history:[],selectorTime:null,transactionKey:null,install:()=>{},subject:new Subject}},effects:n=>[({setSelf:i})=>{let r=e.timelines.get(n);r==null||r.subject.subscribe("introspection",c=>{if(e.operation.open===!0){let l=e.subject.operationStatus.subscribe("introspection",d=>{d.open===!1&&(l(),i(a({},r)));});}else i(a({},r));});}]},e);return __INTERNAL__.selectorFamily__INTERNAL({key:"\u{1F441}\u200D\u{1F5E8} Timeline Update Log",get:n=>({get:i})=>i(o(n))},e)};var L=(e=__INTERNAL__.IMPLICIT.STORE)=>{let o=__INTERNAL__.atom__INTERNAL({key:"\u{1F441}\u200D\u{1F5E8} Timeline Token Index (Internal)",default:()=>[...e.timelines].map(([n])=>({key:n,type:"timeline"})),effects:[({setSelf:n})=>{e.subject.timelineCreation.subscribe("introspection",i=>{n(r=>[...r,i]);});}]},void 0,e);return __INTERNAL__.selector__INTERNAL({key:"\u{1F441}\u200D\u{1F5E8} Timeline Token Index",get:({get:n})=>n(o)},void 0,e)};var A=(e=__INTERNAL__.IMPLICIT.STORE)=>{let o=__INTERNAL__.atom__INTERNAL({key:"\u{1F441}\u200D\u{1F5E8} Transaction Token Index (Internal)",default:()=>[...e.transactions].map(([n])=>({key:n,type:"transaction"})),effects:[({setSelf:n})=>{e.subject.transactionCreation.subscribe("introspection",i=>{n(r=>[...r,i]);});}]},void 0,e);return __INTERNAL__.selector__INTERNAL({key:"\u{1F441}\u200D\u{1F5E8} Transaction Token Index",get:({get:n})=>n(o)},void 0,e)};var b=(e=__INTERNAL__.IMPLICIT.STORE)=>{let o=__INTERNAL__.atomFamily__INTERNAL({key:"\u{1F441}\u200D\u{1F5E8} Transaction Update Log (Internal)",default:()=>[],effects:n=>[({setSelf:i})=>{let r=e.transactions.get(n);r==null||r.subject.subscribe("introspection",c=>{c.key===n&&i(l=>[...l,c]);});}]},e);return __INTERNAL__.selectorFamily__INTERNAL({key:"\u{1F441}\u200D\u{1F5E8} Transaction Update Log",get:n=>({get:i})=>i(o(n))},e)};var ie=(e=__INTERNAL__.IMPLICIT.STORE)=>({atomIndex:x(e),selectorIndex:R(e),transactionIndex:A(e),findTransactionLogState:b(e),timelineIndex:L(e),findTimelineState:N(e)});
23
5
 
24
- // ../src/introspection/attach-atom-index.ts
25
- import { __INTERNAL__ } from "atom.io";
26
- var attachAtomIndex = (store = __INTERNAL__.IMPLICIT.STORE) => {
27
- const atomTokenIndexState__INTERNAL = __INTERNAL__.atom__INTERNAL(
28
- {
29
- key: `\u{1F441}\u200D\u{1F5E8} Atom Token Index (Internal)`,
30
- default: () => [...store.atoms].filter(([key]) => !key.includes(`\u{1F441}\u200D\u{1F5E8}`)).reduce((acc, [key]) => {
31
- acc[key] = { key, type: `atom` };
32
- return acc;
33
- }, {}),
34
- effects: [
35
- ({ setSelf }) => {
36
- store.subject.atomCreation.subscribe((atomToken) => {
37
- if (store.operation.open) {
38
- return;
39
- }
40
- if (atomToken.key.includes(`\u{1F441}\u200D\u{1F5E8}`)) {
41
- return;
42
- }
43
- setSelf((state) => {
44
- const { key, family } = atomToken;
45
- if (family) {
46
- const { key: familyKey, subKey } = family;
47
- const current = state[familyKey];
48
- if (current === void 0 || `familyMembers` in current) {
49
- const familyKeyState = current || {
50
- key: familyKey,
51
- familyMembers: {}
52
- };
53
- return __spreadProps(__spreadValues({}, state), {
54
- [familyKey]: __spreadProps(__spreadValues({}, familyKeyState), {
55
- familyMembers: __spreadProps(__spreadValues({}, familyKeyState.familyMembers), {
56
- [subKey]: atomToken
57
- })
58
- })
59
- });
60
- }
61
- }
62
- return __spreadProps(__spreadValues({}, state), {
63
- [key]: atomToken
64
- });
65
- });
66
- });
67
- }
68
- ]
69
- },
70
- void 0,
71
- store
72
- );
73
- return __INTERNAL__.selector__INTERNAL(
74
- {
75
- key: `\u{1F441}\u200D\u{1F5E8} Atom Token Index`,
76
- get: ({ get }) => get(atomTokenIndexState__INTERNAL)
77
- },
78
- void 0,
79
- store
80
- );
81
- };
82
-
83
- // ../src/introspection/attach-selector-index.ts
84
- import { __INTERNAL__ as __INTERNAL__2 } from "atom.io";
85
- var attachSelectorIndex = (store = __INTERNAL__2.IMPLICIT.STORE) => {
86
- const readonlySelectorTokenIndexState__INTERNAL = __INTERNAL__2.atom__INTERNAL(
87
- {
88
- key: `\u{1F441}\u200D\u{1F5E8} Selector Token Index (Internal)`,
89
- default: () => Object.assign(
90
- [...store.readonlySelectors].filter(([key]) => !key.includes(`\u{1F441}\u200D\u{1F5E8}`)).reduce((acc, [key]) => {
91
- acc[key] = { key, type: `readonly_selector` };
92
- return acc;
93
- }, {}),
94
- [...store.selectors].reduce((acc, [key]) => {
95
- acc[key] = { key, type: `selector` };
96
- return acc;
97
- }, {})
98
- ),
99
- effects: [
100
- ({ setSelf }) => {
101
- store.subject.selectorCreation.subscribe((selectorToken) => {
102
- if (store.operation.open) {
103
- return;
104
- }
105
- if (selectorToken.key.includes(`\u{1F441}\u200D\u{1F5E8}`)) {
106
- return;
107
- }
108
- setSelf((state) => {
109
- const { key, family } = selectorToken;
110
- if (family) {
111
- const { key: familyKey, subKey } = family;
112
- const current = state[familyKey];
113
- if (current === void 0 || `familyMembers` in current) {
114
- const familyKeyState = current || {
115
- key: familyKey,
116
- familyMembers: {}
117
- };
118
- return __spreadProps(__spreadValues({}, state), {
119
- [familyKey]: __spreadProps(__spreadValues({}, familyKeyState), {
120
- familyMembers: __spreadProps(__spreadValues({}, familyKeyState.familyMembers), {
121
- [subKey]: selectorToken
122
- })
123
- })
124
- });
125
- }
126
- }
127
- return __spreadProps(__spreadValues({}, state), {
128
- [key]: selectorToken
129
- });
130
- });
131
- });
132
- }
133
- ]
134
- },
135
- void 0,
136
- store
137
- );
138
- return __INTERNAL__2.selector__INTERNAL({
139
- key: `\u{1F441}\u200D\u{1F5E8} Selector Token Index`,
140
- get: ({ get }) => get(readonlySelectorTokenIndexState__INTERNAL)
141
- });
142
- };
143
-
144
- // ../src/introspection/attach-timeline-family.ts
145
- import { __INTERNAL__ as __INTERNAL__3 } from "atom.io";
146
-
147
- // ../src/internal/subject.ts
148
- var Subject = class {
149
- constructor() {
150
- this.subscribers = [];
151
- }
152
- subscribe(subscriber) {
153
- this.subscribers.push(subscriber);
154
- const unsubscribe = () => this.unsubscribe(subscriber);
155
- return { unsubscribe };
156
- }
157
- unsubscribe(subscriber) {
158
- const subscriberIndex = this.subscribers.indexOf(subscriber);
159
- if (subscriberIndex !== -1) {
160
- this.subscribers.splice(subscriberIndex, 1);
161
- }
162
- }
163
- next(value) {
164
- for (const subscriber of this.subscribers) {
165
- subscriber(value);
166
- }
167
- }
168
- };
169
-
170
- // ../src/introspection/attach-timeline-family.ts
171
- var attachTimelineFamily = (store = __INTERNAL__3.IMPLICIT.STORE) => {
172
- const findTimelineLogState__INTERNAL = __INTERNAL__3.atomFamily__INTERNAL(
173
- {
174
- key: `\u{1F441}\u200D\u{1F5E8} Timeline Update Log (Internal)`,
175
- default: (key) => {
176
- var _a;
177
- return (_a = store.timelines.get(key)) != null ? _a : {
178
- key: ``,
179
- at: 0,
180
- timeTraveling: false,
181
- history: [],
182
- selectorTime: null,
183
- transactionKey: null,
184
- install: () => {
185
- },
186
- subject: new Subject()
187
- };
188
- },
189
- effects: (key) => [
190
- ({ setSelf }) => {
191
- const tl = store.timelines.get(key);
192
- tl == null ? void 0 : tl.subject.subscribe((_) => {
193
- if (store.operation.open === true) {
194
- const subscription = store.subject.operationStatus.subscribe(
195
- (operationStatus) => {
196
- if (operationStatus.open === false) {
197
- subscription.unsubscribe();
198
- setSelf(__spreadValues({}, tl));
199
- }
200
- }
201
- );
202
- } else {
203
- setSelf(__spreadValues({}, tl));
204
- }
205
- });
206
- }
207
- ]
208
- },
209
- store
210
- );
211
- const findTimelineLogState = __INTERNAL__3.selectorFamily__INTERNAL(
212
- {
213
- key: `\u{1F441}\u200D\u{1F5E8} Timeline Update Log`,
214
- get: (key) => ({ get }) => get(findTimelineLogState__INTERNAL(key))
215
- },
216
- store
217
- );
218
- return findTimelineLogState;
219
- };
220
-
221
- // ../src/introspection/attach-timeline-index.ts
222
- import { __INTERNAL__ as __INTERNAL__4 } from "atom.io";
223
- var attachTimelineIndex = (store = __INTERNAL__4.IMPLICIT.STORE) => {
224
- const timelineTokenIndexState__INTERNAL = __INTERNAL__4.atom__INTERNAL(
225
- {
226
- key: `\u{1F441}\u200D\u{1F5E8} Timeline Token Index (Internal)`,
227
- default: () => [...store.timelines].map(([key]) => {
228
- return { key, type: `timeline` };
229
- }),
230
- effects: [
231
- ({ setSelf }) => {
232
- store.subject.timelineCreation.subscribe((timelineToken) => {
233
- setSelf((state) => [...state, timelineToken]);
234
- });
235
- }
236
- ]
237
- },
238
- void 0,
239
- store
240
- );
241
- const timelineTokenIndex = __INTERNAL__4.selector__INTERNAL(
242
- {
243
- key: `\u{1F441}\u200D\u{1F5E8} Timeline Token Index`,
244
- get: ({ get }) => get(timelineTokenIndexState__INTERNAL)
245
- },
246
- void 0,
247
- store
248
- );
249
- return timelineTokenIndex;
250
- };
251
-
252
- // ../src/introspection/attach-transaction-index.ts
253
- import { __INTERNAL__ as __INTERNAL__5 } from "atom.io";
254
- var attachTransactionIndex = (store = __INTERNAL__5.IMPLICIT.STORE) => {
255
- const transactionTokenIndexState__INTERNAL = __INTERNAL__5.atom__INTERNAL(
256
- {
257
- key: `\u{1F441}\u200D\u{1F5E8} Transaction Token Index (Internal)`,
258
- default: () => [...store.transactions].map(([key]) => {
259
- return { key, type: `transaction` };
260
- }),
261
- effects: [
262
- ({ setSelf }) => {
263
- store.subject.transactionCreation.subscribe((transactionToken) => {
264
- setSelf((state) => [...state, transactionToken]);
265
- });
266
- }
267
- ]
268
- },
269
- void 0,
270
- store
271
- );
272
- const transactionTokenIndex = __INTERNAL__5.selector__INTERNAL(
273
- {
274
- key: `\u{1F441}\u200D\u{1F5E8} Transaction Token Index`,
275
- get: ({ get }) => get(transactionTokenIndexState__INTERNAL)
276
- },
277
- void 0,
278
- store
279
- );
280
- return transactionTokenIndex;
281
- };
282
-
283
- // ../src/introspection/attach-transaction-logs.ts
284
- import { __INTERNAL__ as __INTERNAL__6 } from "atom.io";
285
- var attachTransactionLogs = (store = __INTERNAL__6.IMPLICIT.STORE) => {
286
- const findTransactionUpdateLog = __INTERNAL__6.atomFamily__INTERNAL(
287
- {
288
- key: `\u{1F441}\u200D\u{1F5E8} Transaction Update Log (Internal)`,
289
- default: () => [],
290
- effects: (key) => [
291
- ({ setSelf }) => {
292
- const tx = store.transactions.get(key);
293
- tx == null ? void 0 : tx.subject.subscribe((transactionUpdate) => {
294
- if (transactionUpdate.key === key) {
295
- setSelf((state) => [...state, transactionUpdate]);
296
- }
297
- });
298
- }
299
- ]
300
- },
301
- store
302
- );
303
- const findTransactionUpdateLogState = __INTERNAL__6.selectorFamily__INTERNAL(
304
- {
305
- key: `\u{1F441}\u200D\u{1F5E8} Transaction Update Log`,
306
- get: (key) => ({ get }) => get(findTransactionUpdateLog(key))
307
- },
308
- store
309
- );
310
- return findTransactionUpdateLogState;
311
- };
312
-
313
- // ../src/introspection/attach-introspection-states.ts
314
- var attachIntrospectionStates = (store = __INTERNAL__7.IMPLICIT.STORE) => {
315
- return {
316
- atomIndex: attachAtomIndex(store),
317
- selectorIndex: attachSelectorIndex(store),
318
- transactionIndex: attachTransactionIndex(store),
319
- findTransactionLogState: attachTransactionLogs(store),
320
- timelineIndex: attachTimelineIndex(store),
321
- findTimelineState: attachTimelineFamily(store)
322
- };
323
- };
324
- export {
325
- attachIntrospectionStates
326
- };
6
+ export { ie as attachIntrospectionStates };
7
+ //# sourceMappingURL=out.js.map
327
8
  //# sourceMappingURL=index.mjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/introspection/attach-introspection-states.ts","../../src/introspection/attach-atom-index.ts","../../src/introspection/attach-selector-index.ts","../../src/introspection/attach-timeline-family.ts","../../src/internal/subject.ts","../../src/introspection/attach-timeline-index.ts","../../src/introspection/attach-transaction-index.ts","../../src/introspection/attach-transaction-logs.ts"],"sourcesContent":["import { __INTERNAL__ } from \"atom.io\"\nimport type {\n\tReadonlySelectorFamily,\n\tReadonlySelectorToken,\n\tTimelineToken,\n\tTimelineUpdate,\n\tTransactionToken,\n\tTransactionUpdate,\n} from \"atom.io\"\n\nimport type { ƒn } from \"~/packages/anvl/src/function\"\n\nimport { attachAtomIndex, type AtomTokenIndex } from \"./attach-atom-index\"\nimport {\n\tattachSelectorIndex,\n\ttype SelectorTokenIndex,\n} from \"./attach-selector-index\"\nimport { attachTimelineFamily } from \"./attach-timeline-family\"\nimport { attachTimelineIndex } from \"./attach-timeline-index\"\nimport { attachTransactionIndex } from \"./attach-transaction-index\"\nimport { attachTransactionLogs } from \"./attach-transaction-logs\"\nimport type { Timeline } from \"../internal\"\n\nexport const attachIntrospectionStates = (\n\tstore: __INTERNAL__.Store = __INTERNAL__.IMPLICIT.STORE,\n): {\n\tatomIndex: ReadonlySelectorToken<AtomTokenIndex>\n\tselectorIndex: ReadonlySelectorToken<SelectorTokenIndex>\n\ttransactionIndex: ReadonlySelectorToken<TransactionToken<ƒn>[]>\n\tfindTransactionLogState: ReadonlySelectorFamily<TransactionUpdate<ƒn>[]>\n\ttimelineIndex: ReadonlySelectorToken<TimelineToken[]>\n\tfindTimelineState: ReadonlySelectorFamily<Timeline>\n} => {\n\treturn {\n\t\tatomIndex: attachAtomIndex(store),\n\t\tselectorIndex: attachSelectorIndex(store),\n\t\ttransactionIndex: attachTransactionIndex(store),\n\t\tfindTransactionLogState: attachTransactionLogs(store),\n\t\ttimelineIndex: attachTimelineIndex(store),\n\t\tfindTimelineState: attachTimelineFamily(store),\n\t}\n}\n","import type { AtomToken, ReadonlySelectorToken } from \"atom.io\"\nimport { __INTERNAL__ } from \"atom.io\"\n\nimport type { StateTokenIndex } from \".\"\n\nexport type AtomTokenIndex = StateTokenIndex<AtomToken<unknown>>\n\nexport const attachAtomIndex = (\n\tstore: __INTERNAL__.Store = __INTERNAL__.IMPLICIT.STORE,\n): ReadonlySelectorToken<AtomTokenIndex> => {\n\tconst atomTokenIndexState__INTERNAL =\n\t\t__INTERNAL__.atom__INTERNAL<AtomTokenIndex>(\n\t\t\t{\n\t\t\t\tkey: `👁‍🗨 Atom Token Index (Internal)`,\n\t\t\t\tdefault: () =>\n\t\t\t\t\t[...store.atoms]\n\t\t\t\t\t\t.filter(([key]) => !key.includes(`👁‍🗨`))\n\t\t\t\t\t\t.reduce<AtomTokenIndex>((acc, [key]) => {\n\t\t\t\t\t\t\tacc[key] = { key, type: `atom` }\n\t\t\t\t\t\t\treturn acc\n\t\t\t\t\t\t}, {}),\n\t\t\t\teffects: [\n\t\t\t\t\t({ setSelf }) => {\n\t\t\t\t\t\tstore.subject.atomCreation.subscribe((atomToken) => {\n\t\t\t\t\t\t\tif (store.operation.open) {\n\t\t\t\t\t\t\t\treturn\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tif (atomToken.key.includes(`👁‍🗨`)) {\n\t\t\t\t\t\t\t\treturn\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tsetSelf((state) => {\n\t\t\t\t\t\t\t\tconst { key, family } = atomToken\n\t\t\t\t\t\t\t\tif (family) {\n\t\t\t\t\t\t\t\t\tconst { key: familyKey, subKey } = family\n\t\t\t\t\t\t\t\t\tconst current = state[familyKey]\n\t\t\t\t\t\t\t\t\tif (current === undefined || `familyMembers` in current) {\n\t\t\t\t\t\t\t\t\t\tconst familyKeyState = current || {\n\t\t\t\t\t\t\t\t\t\t\tkey: familyKey,\n\t\t\t\t\t\t\t\t\t\t\tfamilyMembers: {},\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\t\t\t\t\t...state,\n\t\t\t\t\t\t\t\t\t\t\t[familyKey]: {\n\t\t\t\t\t\t\t\t\t\t\t\t...familyKeyState,\n\t\t\t\t\t\t\t\t\t\t\t\tfamilyMembers: {\n\t\t\t\t\t\t\t\t\t\t\t\t\t...familyKeyState.familyMembers,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[subKey]: atomToken,\n\t\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\t\t\t...state,\n\t\t\t\t\t\t\t\t\t[key]: atomToken,\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t})\n\t\t\t\t\t\t})\n\t\t\t\t\t},\n\t\t\t\t],\n\t\t\t},\n\t\t\tundefined,\n\t\t\tstore,\n\t\t)\n\treturn __INTERNAL__.selector__INTERNAL(\n\t\t{\n\t\t\tkey: `👁‍🗨 Atom Token Index`,\n\t\t\tget: ({ get }) => get(atomTokenIndexState__INTERNAL),\n\t\t},\n\t\tundefined,\n\t\tstore,\n\t)\n}\n","import { __INTERNAL__ } from \"atom.io\"\nimport type { ReadonlySelectorToken, SelectorToken } from \"atom.io\"\n\nimport type { StateTokenIndex } from \".\"\n\nexport type SelectorTokenIndex = StateTokenIndex<\n\tReadonlySelectorToken<unknown> | SelectorToken<unknown>\n>\n\nexport const attachSelectorIndex = (\n\tstore: __INTERNAL__.Store = __INTERNAL__.IMPLICIT.STORE,\n): ReadonlySelectorToken<SelectorTokenIndex> => {\n\tconst readonlySelectorTokenIndexState__INTERNAL =\n\t\t__INTERNAL__.atom__INTERNAL<SelectorTokenIndex>(\n\t\t\t{\n\t\t\t\tkey: `👁‍🗨 Selector Token Index (Internal)`,\n\t\t\t\tdefault: () =>\n\t\t\t\t\tObject.assign(\n\t\t\t\t\t\t[...store.readonlySelectors]\n\t\t\t\t\t\t\t.filter(([key]) => !key.includes(`👁‍🗨`))\n\t\t\t\t\t\t\t.reduce<SelectorTokenIndex>((acc, [key]) => {\n\t\t\t\t\t\t\t\tacc[key] = { key, type: `readonly_selector` }\n\t\t\t\t\t\t\t\treturn acc\n\t\t\t\t\t\t\t}, {}),\n\t\t\t\t\t\t[...store.selectors].reduce<SelectorTokenIndex>((acc, [key]) => {\n\t\t\t\t\t\t\tacc[key] = { key, type: `selector` }\n\t\t\t\t\t\t\treturn acc\n\t\t\t\t\t\t}, {}),\n\t\t\t\t\t),\n\t\t\t\teffects: [\n\t\t\t\t\t({ setSelf }) => {\n\t\t\t\t\t\tstore.subject.selectorCreation.subscribe((selectorToken) => {\n\t\t\t\t\t\t\tif (store.operation.open) {\n\t\t\t\t\t\t\t\treturn\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tif (selectorToken.key.includes(`👁‍🗨`)) {\n\t\t\t\t\t\t\t\treturn\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tsetSelf((state) => {\n\t\t\t\t\t\t\t\tconst { key, family } = selectorToken\n\t\t\t\t\t\t\t\tif (family) {\n\t\t\t\t\t\t\t\t\tconst { key: familyKey, subKey } = family\n\t\t\t\t\t\t\t\t\tconst current = state[familyKey]\n\t\t\t\t\t\t\t\t\tif (current === undefined || `familyMembers` in current) {\n\t\t\t\t\t\t\t\t\t\tconst familyKeyState = current || {\n\t\t\t\t\t\t\t\t\t\t\tkey: familyKey,\n\t\t\t\t\t\t\t\t\t\t\tfamilyMembers: {},\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\t\t\t\t\t...state,\n\t\t\t\t\t\t\t\t\t\t\t[familyKey]: {\n\t\t\t\t\t\t\t\t\t\t\t\t...familyKeyState,\n\t\t\t\t\t\t\t\t\t\t\t\tfamilyMembers: {\n\t\t\t\t\t\t\t\t\t\t\t\t\t...familyKeyState.familyMembers,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[subKey]: selectorToken,\n\t\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\t\t\t...state,\n\t\t\t\t\t\t\t\t\t[key]: selectorToken,\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t})\n\t\t\t\t\t\t})\n\t\t\t\t\t},\n\t\t\t\t],\n\t\t\t},\n\t\t\tundefined,\n\t\t\tstore,\n\t\t)\n\treturn __INTERNAL__.selector__INTERNAL({\n\t\tkey: `👁‍🗨 Selector Token Index`,\n\t\tget: ({ get }) => get(readonlySelectorTokenIndexState__INTERNAL),\n\t})\n}\n","import type { ReadonlySelectorFamily, Store } from \"atom.io\"\nimport { __INTERNAL__, timeline } from \"atom.io\"\n\nimport { withdraw, type Timeline, Subject } from \"../internal\"\n\nexport const attachTimelineFamily = (\n\tstore: Store = __INTERNAL__.IMPLICIT.STORE,\n): ReadonlySelectorFamily<Timeline> => {\n\tconst findTimelineLogState__INTERNAL = __INTERNAL__.atomFamily__INTERNAL<\n\t\tTimeline,\n\t\tstring\n\t>(\n\t\t{\n\t\t\tkey: `👁‍🗨 Timeline Update Log (Internal)`,\n\t\t\tdefault: (key) =>\n\t\t\t\tstore.timelines.get(key) ?? {\n\t\t\t\t\tkey: ``,\n\t\t\t\t\tat: 0,\n\t\t\t\t\ttimeTraveling: false,\n\t\t\t\t\thistory: [],\n\t\t\t\t\tselectorTime: null,\n\t\t\t\t\ttransactionKey: null,\n\t\t\t\t\tinstall: () => {},\n\t\t\t\t\tsubject: new Subject(),\n\t\t\t\t},\n\t\t\teffects: (key) => [\n\t\t\t\t({ setSelf }) => {\n\t\t\t\t\tconst tl = store.timelines.get(key)\n\t\t\t\t\ttl?.subject.subscribe((_) => {\n\t\t\t\t\t\tif (store.operation.open === true) {\n\t\t\t\t\t\t\tconst subscription = store.subject.operationStatus.subscribe(\n\t\t\t\t\t\t\t\t(operationStatus) => {\n\t\t\t\t\t\t\t\t\tif (operationStatus.open === false) {\n\t\t\t\t\t\t\t\t\t\tsubscription.unsubscribe()\n\t\t\t\t\t\t\t\t\t\tsetSelf({ ...tl })\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t)\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tsetSelf({ ...tl })\n\t\t\t\t\t\t}\n\t\t\t\t\t})\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\tstore,\n\t)\n\tconst findTimelineLogState = __INTERNAL__.selectorFamily__INTERNAL<\n\t\tTimeline,\n\t\tstring\n\t>(\n\t\t{\n\t\t\tkey: `👁‍🗨 Timeline Update Log`,\n\t\t\tget: (key) => ({ get }) => get(findTimelineLogState__INTERNAL(key)),\n\t\t},\n\t\tstore,\n\t)\n\treturn findTimelineLogState\n}\n","type Subscriber<T> = (value: T) => void\n\nexport class Subject<T> {\n\tpublic subscribers: Subscriber<T>[] = []\n\n\tpublic subscribe(subscriber: Subscriber<T>): { unsubscribe: () => void } {\n\t\tthis.subscribers.push(subscriber)\n\t\tconst unsubscribe = () => this.unsubscribe(subscriber)\n\t\treturn { unsubscribe }\n\t}\n\n\tprivate unsubscribe(subscriber: Subscriber<T>) {\n\t\tconst subscriberIndex = this.subscribers.indexOf(subscriber)\n\t\tif (subscriberIndex !== -1) {\n\t\t\tthis.subscribers.splice(subscriberIndex, 1)\n\t\t}\n\t}\n\n\tpublic next(value: T): void {\n\t\tfor (const subscriber of this.subscribers) {\n\t\t\tsubscriber(value)\n\t\t}\n\t}\n}\n","import type { ReadonlySelectorToken, Store, TimelineToken } from \"atom.io\"\nimport { __INTERNAL__ } from \"atom.io\"\n\nexport const attachTimelineIndex = (\n\tstore: Store = __INTERNAL__.IMPLICIT.STORE,\n): ReadonlySelectorToken<TimelineToken[]> => {\n\tconst timelineTokenIndexState__INTERNAL = __INTERNAL__.atom__INTERNAL<\n\t\tTimelineToken[]\n\t>(\n\t\t{\n\t\t\tkey: `👁‍🗨 Timeline Token Index (Internal)`,\n\t\t\tdefault: () =>\n\t\t\t\t[...store.timelines].map(([key]) => {\n\t\t\t\t\treturn { key, type: `timeline` }\n\t\t\t\t}),\n\t\t\teffects: [\n\t\t\t\t({ setSelf }) => {\n\t\t\t\t\tstore.subject.timelineCreation.subscribe((timelineToken) => {\n\t\t\t\t\t\tsetSelf((state) => [...state, timelineToken])\n\t\t\t\t\t})\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\tundefined,\n\t\tstore,\n\t)\n\tconst timelineTokenIndex = __INTERNAL__.selector__INTERNAL(\n\t\t{\n\t\t\tkey: `👁‍🗨 Timeline Token Index`,\n\t\t\tget: ({ get }) => get(timelineTokenIndexState__INTERNAL),\n\t\t},\n\t\tundefined,\n\t\tstore,\n\t)\n\treturn timelineTokenIndex\n}\n","import type { ReadonlySelectorToken, TransactionToken } from \"atom.io\"\nimport { __INTERNAL__ } from \"atom.io\"\n\nimport type { ƒn } from \"~/packages/anvl/src/function\"\n\nexport const attachTransactionIndex = (\n\tstore: __INTERNAL__.Store = __INTERNAL__.IMPLICIT.STORE,\n): ReadonlySelectorToken<TransactionToken<ƒn>[]> => {\n\tconst transactionTokenIndexState__INTERNAL = __INTERNAL__.atom__INTERNAL<\n\t\tTransactionToken<ƒn>[]\n\t>(\n\t\t{\n\t\t\tkey: `👁‍🗨 Transaction Token Index (Internal)`,\n\t\t\tdefault: () =>\n\t\t\t\t[...store.transactions].map(([key]) => {\n\t\t\t\t\treturn { key, type: `transaction` }\n\t\t\t\t}),\n\t\t\teffects: [\n\t\t\t\t({ setSelf }) => {\n\t\t\t\t\tstore.subject.transactionCreation.subscribe((transactionToken) => {\n\t\t\t\t\t\tsetSelf((state) => [...state, transactionToken])\n\t\t\t\t\t})\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\tundefined,\n\t\tstore,\n\t)\n\tconst transactionTokenIndex = __INTERNAL__.selector__INTERNAL(\n\t\t{\n\t\t\tkey: `👁‍🗨 Transaction Token Index`,\n\t\t\tget: ({ get }) => get(transactionTokenIndexState__INTERNAL),\n\t\t},\n\t\tundefined,\n\t\tstore,\n\t)\n\treturn transactionTokenIndex\n}\n","import type { ReadonlySelectorFamily, TransactionUpdate } from \"atom.io\"\nimport { __INTERNAL__ } from \"atom.io\"\n\nimport type { ƒn } from \"~/packages/anvl/src/function\"\n\nexport const attachTransactionLogs = (\n\tstore: __INTERNAL__.Store = __INTERNAL__.IMPLICIT.STORE,\n): ReadonlySelectorFamily<TransactionUpdate<ƒn>[]> => {\n\tconst findTransactionUpdateLog = __INTERNAL__.atomFamily__INTERNAL<\n\t\tTransactionUpdate<ƒn>[],\n\t\tstring\n\t>(\n\t\t{\n\t\t\tkey: `👁‍🗨 Transaction Update Log (Internal)`,\n\t\t\tdefault: () => [],\n\t\t\teffects: (key) => [\n\t\t\t\t({ setSelf }) => {\n\t\t\t\t\tconst tx = store.transactions.get(key)\n\t\t\t\t\ttx?.subject.subscribe((transactionUpdate) => {\n\t\t\t\t\t\tif (transactionUpdate.key === key) {\n\t\t\t\t\t\t\tsetSelf((state) => [...state, transactionUpdate])\n\t\t\t\t\t\t}\n\t\t\t\t\t})\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\tstore,\n\t)\n\tconst findTransactionUpdateLogState = __INTERNAL__.selectorFamily__INTERNAL<\n\t\tTransactionUpdate<ƒn>[],\n\t\tstring\n\t>(\n\t\t{\n\t\t\tkey: `👁‍🗨 Transaction Update Log`,\n\t\t\tget: (key) => ({ get }) => get(findTransactionUpdateLog(key)),\n\t\t},\n\t\tstore,\n\t)\n\treturn findTransactionUpdateLogState\n}\n"],"mappings":"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","names":["__INTERNAL__","__INTERNAL__","__INTERNAL__","__INTERNAL__","__INTERNAL__","__INTERNAL__","__INTERNAL__","__INTERNAL__","__INTERNAL__"]}
1
+ {"version":3,"sources":["../src/attach-introspection-states.ts","../src/attach-atom-index.ts","../src/attach-selector-index.ts","../src/attach-timeline-family.ts","../src/attach-timeline-index.ts","../src/attach-transaction-index.ts","../src/attach-transaction-logs.ts"],"names":["__INTERNAL__","attachAtomIndex","store","atomTokenIndexState__INTERNAL","key","acc","setSelf","atomToken","state","family","familyKey","subKey","current","familyKeyState","__spreadProps","__spreadValues","get","attachSelectorIndex","readonlySelectorTokenIndexState__INTERNAL","selectorToken","Subject","attachTimelineFamily","findTimelineLogState__INTERNAL","_a","tl","_","unsubscribe","operationStatus","attachTimelineIndex","timelineTokenIndexState__INTERNAL","timelineToken","attachTransactionIndex","transactionTokenIndexState__INTERNAL","transactionToken","attachTransactionLogs","findTransactionUpdateLog","tx","transactionUpdate","attachIntrospectionStates"],"mappings":"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","sourcesContent":["import { __INTERNAL__ } from \"atom.io\"\nimport type {\n\tReadonlySelectorFamily,\n\tReadonlySelectorToken,\n\tTimelineToken,\n\tTransactionToken,\n\tTransactionUpdate,\n\tƒn,\n} from \"atom.io\"\nimport type { Timeline } from \"atom.io/internal\"\n\nimport { type AtomTokenIndex, attachAtomIndex } from \"./attach-atom-index\"\nimport type { SelectorTokenIndex } from \"./attach-selector-index\"\nimport { attachSelectorIndex } from \"./attach-selector-index\"\nimport { attachTimelineFamily } from \"./attach-timeline-family\"\nimport { attachTimelineIndex } from \"./attach-timeline-index\"\nimport { attachTransactionIndex } from \"./attach-transaction-index\"\nimport { attachTransactionLogs } from \"./attach-transaction-logs\"\n\nexport const attachIntrospectionStates = (\n\tstore: __INTERNAL__.Store = __INTERNAL__.IMPLICIT.STORE,\n): {\n\tatomIndex: ReadonlySelectorToken<AtomTokenIndex>\n\tselectorIndex: ReadonlySelectorToken<SelectorTokenIndex>\n\ttransactionIndex: ReadonlySelectorToken<TransactionToken<ƒn>[]>\n\tfindTransactionLogState: ReadonlySelectorFamily<TransactionUpdate<ƒn>[]>\n\ttimelineIndex: ReadonlySelectorToken<TimelineToken[]>\n\tfindTimelineState: ReadonlySelectorFamily<Timeline>\n} => {\n\treturn {\n\t\tatomIndex: attachAtomIndex(store),\n\t\tselectorIndex: attachSelectorIndex(store),\n\t\ttransactionIndex: attachTransactionIndex(store),\n\t\tfindTransactionLogState: attachTransactionLogs(store),\n\t\ttimelineIndex: attachTimelineIndex(store),\n\t\tfindTimelineState: attachTimelineFamily(store),\n\t}\n}\n","import type { AtomToken, ReadonlySelectorToken } from \"atom.io\"\nimport { __INTERNAL__ } from \"atom.io\"\n\nimport type { StateTokenIndex } from \".\"\n\nexport type AtomTokenIndex = StateTokenIndex<AtomToken<unknown>>\n\nexport const attachAtomIndex = (\n\tstore: __INTERNAL__.Store = __INTERNAL__.IMPLICIT.STORE,\n): ReadonlySelectorToken<AtomTokenIndex> => {\n\tconst atomTokenIndexState__INTERNAL =\n\t\t__INTERNAL__.atom__INTERNAL<AtomTokenIndex>(\n\t\t\t{\n\t\t\t\tkey: `👁‍🗨 Atom Token Index (Internal)`,\n\t\t\t\tdefault: () =>\n\t\t\t\t\t[...store.atoms]\n\t\t\t\t\t\t.filter(([key]) => !key.includes(`👁‍🗨`))\n\t\t\t\t\t\t.reduce<AtomTokenIndex>((acc, [key]) => {\n\t\t\t\t\t\t\tacc[key] = { key, type: `atom` }\n\t\t\t\t\t\t\treturn acc\n\t\t\t\t\t\t}, {}),\n\t\t\t\teffects: [\n\t\t\t\t\t({ setSelf }) => {\n\t\t\t\t\t\tstore.subject.atomCreation.subscribe(\n\t\t\t\t\t\t\t`introspection`,\n\t\t\t\t\t\t\t(atomToken) => {\n\t\t\t\t\t\t\t\tif (store.operation.open) {\n\t\t\t\t\t\t\t\t\treturn\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tif (atomToken.key.includes(`👁‍🗨`)) {\n\t\t\t\t\t\t\t\t\treturn\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tsetSelf((state) => {\n\t\t\t\t\t\t\t\t\tconst { key, family } = atomToken\n\t\t\t\t\t\t\t\t\tif (family) {\n\t\t\t\t\t\t\t\t\t\tconst { key: familyKey, subKey } = family\n\t\t\t\t\t\t\t\t\t\tconst current = state[familyKey]\n\t\t\t\t\t\t\t\t\t\tif (current === undefined || `familyMembers` in current) {\n\t\t\t\t\t\t\t\t\t\t\tconst familyKeyState = current || {\n\t\t\t\t\t\t\t\t\t\t\t\tkey: familyKey,\n\t\t\t\t\t\t\t\t\t\t\t\tfamilyMembers: {},\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\t\t\t\t\t\t...state,\n\t\t\t\t\t\t\t\t\t\t\t\t[familyKey]: {\n\t\t\t\t\t\t\t\t\t\t\t\t\t...familyKeyState,\n\t\t\t\t\t\t\t\t\t\t\t\t\tfamilyMembers: {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t...familyKeyState.familyMembers,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[subKey]: atomToken,\n\t\t\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\t\t\t\t...state,\n\t\t\t\t\t\t\t\t\t\t[key]: atomToken,\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t})\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t)\n\t\t\t\t\t},\n\t\t\t\t],\n\t\t\t},\n\t\t\tundefined,\n\t\t\tstore,\n\t\t)\n\treturn __INTERNAL__.selector__INTERNAL(\n\t\t{\n\t\t\tkey: `👁‍🗨 Atom Token Index`,\n\t\t\tget: ({ get }) => get(atomTokenIndexState__INTERNAL),\n\t\t},\n\t\tundefined,\n\t\tstore,\n\t)\n}\n","import { __INTERNAL__ } from \"atom.io\"\nimport type { ReadonlySelectorToken, SelectorToken } from \"atom.io\"\n\nimport type { StateTokenIndex } from \".\"\n\nexport type SelectorTokenIndex = StateTokenIndex<\n\tReadonlySelectorToken<unknown> | SelectorToken<unknown>\n>\n\nexport const attachSelectorIndex = (\n\tstore: __INTERNAL__.Store = __INTERNAL__.IMPLICIT.STORE,\n): ReadonlySelectorToken<SelectorTokenIndex> => {\n\tconst readonlySelectorTokenIndexState__INTERNAL =\n\t\t__INTERNAL__.atom__INTERNAL<SelectorTokenIndex>(\n\t\t\t{\n\t\t\t\tkey: `👁‍🗨 Selector Token Index (Internal)`,\n\t\t\t\tdefault: () =>\n\t\t\t\t\tObject.assign(\n\t\t\t\t\t\t[...store.readonlySelectors]\n\t\t\t\t\t\t\t.filter(([key]) => !key.includes(`👁‍🗨`))\n\t\t\t\t\t\t\t.reduce<SelectorTokenIndex>((acc, [key]) => {\n\t\t\t\t\t\t\t\tacc[key] = { key, type: `readonly_selector` }\n\t\t\t\t\t\t\t\treturn acc\n\t\t\t\t\t\t\t}, {}),\n\t\t\t\t\t\t[...store.selectors].reduce<SelectorTokenIndex>((acc, [key]) => {\n\t\t\t\t\t\t\tacc[key] = { key, type: `selector` }\n\t\t\t\t\t\t\treturn acc\n\t\t\t\t\t\t}, {}),\n\t\t\t\t\t),\n\t\t\t\teffects: [\n\t\t\t\t\t({ setSelf }) => {\n\t\t\t\t\t\tstore.subject.selectorCreation.subscribe(\n\t\t\t\t\t\t\t`introspection`,\n\t\t\t\t\t\t\t(selectorToken) => {\n\t\t\t\t\t\t\t\tif (store.operation.open) {\n\t\t\t\t\t\t\t\t\treturn\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tif (selectorToken.key.includes(`👁‍🗨`)) {\n\t\t\t\t\t\t\t\t\treturn\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tsetSelf((state) => {\n\t\t\t\t\t\t\t\t\tconst { key, family } = selectorToken\n\t\t\t\t\t\t\t\t\tif (family) {\n\t\t\t\t\t\t\t\t\t\tconst { key: familyKey, subKey } = family\n\t\t\t\t\t\t\t\t\t\tconst current = state[familyKey]\n\t\t\t\t\t\t\t\t\t\tif (current === undefined || `familyMembers` in current) {\n\t\t\t\t\t\t\t\t\t\t\tconst familyKeyState = current || {\n\t\t\t\t\t\t\t\t\t\t\t\tkey: familyKey,\n\t\t\t\t\t\t\t\t\t\t\t\tfamilyMembers: {},\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\t\t\t\t\t\t...state,\n\t\t\t\t\t\t\t\t\t\t\t\t[familyKey]: {\n\t\t\t\t\t\t\t\t\t\t\t\t\t...familyKeyState,\n\t\t\t\t\t\t\t\t\t\t\t\t\tfamilyMembers: {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t...familyKeyState.familyMembers,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[subKey]: selectorToken,\n\t\t\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\t\t\t\t...state,\n\t\t\t\t\t\t\t\t\t\t[key]: selectorToken,\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t})\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t)\n\t\t\t\t\t},\n\t\t\t\t],\n\t\t\t},\n\t\t\tundefined,\n\t\t\tstore,\n\t\t)\n\treturn __INTERNAL__.selector__INTERNAL({\n\t\tkey: `👁‍🗨 Selector Token Index`,\n\t\tget: ({ get }) => get(readonlySelectorTokenIndexState__INTERNAL),\n\t})\n}\n","import type { ReadonlySelectorFamily, Store } from \"atom.io\"\nimport { __INTERNAL__ } from \"atom.io\"\nimport type { Timeline } from \"atom.io/internal\"\nimport { Subject } from \"atom.io/internal\"\n\nexport const attachTimelineFamily = (\n\tstore: Store = __INTERNAL__.IMPLICIT.STORE,\n): ReadonlySelectorFamily<Timeline> => {\n\tconst findTimelineLogState__INTERNAL = __INTERNAL__.atomFamily__INTERNAL<\n\t\tTimeline,\n\t\tstring\n\t>(\n\t\t{\n\t\t\tkey: `👁‍🗨 Timeline Update Log (Internal)`,\n\t\t\tdefault: (key) =>\n\t\t\t\tstore.timelines.get(key) ?? {\n\t\t\t\t\ttype: `timeline`,\n\t\t\t\t\tkey: ``,\n\t\t\t\t\tat: 0,\n\t\t\t\t\ttimeTraveling: null,\n\t\t\t\t\thistory: [],\n\t\t\t\t\tselectorTime: null,\n\t\t\t\t\ttransactionKey: null,\n\t\t\t\t\tinstall: () => {},\n\t\t\t\t\tsubject: new Subject(),\n\t\t\t\t},\n\t\t\teffects: (key) => [\n\t\t\t\t({ setSelf }) => {\n\t\t\t\t\tconst tl = store.timelines.get(key)\n\t\t\t\t\ttl?.subject.subscribe(`introspection`, (_) => {\n\t\t\t\t\t\tif (store.operation.open === true) {\n\t\t\t\t\t\t\tconst unsubscribe = store.subject.operationStatus.subscribe(\n\t\t\t\t\t\t\t\t`introspection`,\n\t\t\t\t\t\t\t\t(operationStatus) => {\n\t\t\t\t\t\t\t\t\tif (operationStatus.open === false) {\n\t\t\t\t\t\t\t\t\t\tunsubscribe()\n\t\t\t\t\t\t\t\t\t\tsetSelf({ ...tl })\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t)\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tsetSelf({ ...tl })\n\t\t\t\t\t\t}\n\t\t\t\t\t})\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\tstore,\n\t)\n\tconst findTimelineLogState = __INTERNAL__.selectorFamily__INTERNAL<\n\t\tTimeline,\n\t\tstring\n\t>(\n\t\t{\n\t\t\tkey: `👁‍🗨 Timeline Update Log`,\n\t\t\tget: (key) => ({ get }) => get(findTimelineLogState__INTERNAL(key)),\n\t\t},\n\t\tstore,\n\t)\n\treturn findTimelineLogState\n}\n","import type { ReadonlySelectorToken, Store, TimelineToken } from \"atom.io\"\nimport { __INTERNAL__ } from \"atom.io\"\n\nexport const attachTimelineIndex = (\n\tstore: Store = __INTERNAL__.IMPLICIT.STORE,\n): ReadonlySelectorToken<TimelineToken[]> => {\n\tconst timelineTokenIndexState__INTERNAL = __INTERNAL__.atom__INTERNAL<\n\t\tTimelineToken[]\n\t>(\n\t\t{\n\t\t\tkey: `👁‍🗨 Timeline Token Index (Internal)`,\n\t\t\tdefault: () =>\n\t\t\t\t[...store.timelines].map(([key]) => {\n\t\t\t\t\treturn { key, type: `timeline` }\n\t\t\t\t}),\n\t\t\teffects: [\n\t\t\t\t({ setSelf }) => {\n\t\t\t\t\tstore.subject.timelineCreation.subscribe(\n\t\t\t\t\t\t`introspection`,\n\t\t\t\t\t\t(timelineToken) => {\n\t\t\t\t\t\t\tsetSelf((state) => [...state, timelineToken])\n\t\t\t\t\t\t},\n\t\t\t\t\t)\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\tundefined,\n\t\tstore,\n\t)\n\tconst timelineTokenIndex = __INTERNAL__.selector__INTERNAL(\n\t\t{\n\t\t\tkey: `👁‍🗨 Timeline Token Index`,\n\t\t\tget: ({ get }) => get(timelineTokenIndexState__INTERNAL),\n\t\t},\n\t\tundefined,\n\t\tstore,\n\t)\n\treturn timelineTokenIndex\n}\n","import type { ReadonlySelectorToken, TransactionToken, ƒn } from \"atom.io\"\nimport { __INTERNAL__ } from \"atom.io\"\n\nexport const attachTransactionIndex = (\n\tstore: __INTERNAL__.Store = __INTERNAL__.IMPLICIT.STORE,\n): ReadonlySelectorToken<TransactionToken<ƒn>[]> => {\n\tconst transactionTokenIndexState__INTERNAL = __INTERNAL__.atom__INTERNAL<\n\t\tTransactionToken<ƒn>[]\n\t>(\n\t\t{\n\t\t\tkey: `👁‍🗨 Transaction Token Index (Internal)`,\n\t\t\tdefault: () =>\n\t\t\t\t[...store.transactions].map(([key]) => {\n\t\t\t\t\treturn { key, type: `transaction` }\n\t\t\t\t}),\n\t\t\teffects: [\n\t\t\t\t({ setSelf }) => {\n\t\t\t\t\tstore.subject.transactionCreation.subscribe(\n\t\t\t\t\t\t`introspection`,\n\t\t\t\t\t\t(transactionToken) => {\n\t\t\t\t\t\t\tsetSelf((state) => [...state, transactionToken])\n\t\t\t\t\t\t},\n\t\t\t\t\t)\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\tundefined,\n\t\tstore,\n\t)\n\tconst transactionTokenIndex = __INTERNAL__.selector__INTERNAL(\n\t\t{\n\t\t\tkey: `👁‍🗨 Transaction Token Index`,\n\t\t\tget: ({ get }) => get(transactionTokenIndexState__INTERNAL),\n\t\t},\n\t\tundefined,\n\t\tstore,\n\t)\n\treturn transactionTokenIndex\n}\n","import type { ReadonlySelectorFamily, TransactionUpdate, ƒn } from \"atom.io\"\nimport { __INTERNAL__ } from \"atom.io\"\n\nexport const attachTransactionLogs = (\n\tstore: __INTERNAL__.Store = __INTERNAL__.IMPLICIT.STORE,\n): ReadonlySelectorFamily<TransactionUpdate<ƒn>[]> => {\n\tconst findTransactionUpdateLog = __INTERNAL__.atomFamily__INTERNAL<\n\t\tTransactionUpdate<ƒn>[],\n\t\tstring\n\t>(\n\t\t{\n\t\t\tkey: `👁‍🗨 Transaction Update Log (Internal)`,\n\t\t\tdefault: () => [],\n\t\t\teffects: (key) => [\n\t\t\t\t({ setSelf }) => {\n\t\t\t\t\tconst tx = store.transactions.get(key)\n\t\t\t\t\ttx?.subject.subscribe(`introspection`, (transactionUpdate) => {\n\t\t\t\t\t\tif (transactionUpdate.key === key) {\n\t\t\t\t\t\t\tsetSelf((state) => [...state, transactionUpdate])\n\t\t\t\t\t\t}\n\t\t\t\t\t})\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\tstore,\n\t)\n\tconst findTransactionUpdateLogState = __INTERNAL__.selectorFamily__INTERNAL<\n\t\tTransactionUpdate<ƒn>[],\n\t\tstring\n\t>(\n\t\t{\n\t\t\tkey: `👁‍🗨 Transaction Update Log`,\n\t\t\tget: (key) => ({ get }) => get(findTransactionUpdateLog(key)),\n\t\t},\n\t\tstore,\n\t)\n\treturn findTransactionUpdateLogState\n}\n"]}
@@ -1,18 +1,47 @@
1
1
  import * as AtomIO from 'atom.io';
2
2
 
3
- type JsonInterface<T, J extends Json = Json> = {
3
+ type JsonInterface<T, J extends Serializable = Serializable> = {
4
4
  toJson: (t: T) => J;
5
5
  fromJson: (json: J) => T;
6
6
  };
7
+ declare const stringSetJsonInterface: JsonInterface<Set<string>, Array<string>>;
7
8
 
8
- type Primitive = boolean | number | string | null;
9
- type Serializable = Primitive | Readonly<{
9
+ type primitive = boolean | number | string | null;
10
+
11
+ type Serializable = primitive | Readonly<{
10
12
  [key: string]: Serializable;
11
13
  }> | ReadonlyArray<Serializable>;
12
- type JsonObj<Key extends string = string, Value extends Serializable = Serializable> = Record<Key, Value>;
13
- type JsonArr<Element extends Serializable = Serializable> = ReadonlyArray<Element>;
14
- type Json = JsonArr | JsonObj | Primitive;
14
+ type Object$1<Key extends string = string, Value extends Serializable = Serializable> = Record<Key, Value>;
15
+ type Array<Element extends Serializable = Serializable> = ReadonlyArray<Element>;
16
+
17
+ type json_Array<Element extends Serializable = Serializable> = Array<Element>;
18
+ type json_Serializable = Serializable;
19
+ declare namespace json {
20
+ export {
21
+ json_Array as Array,
22
+ Object$1 as Object,
23
+ json_Serializable as Serializable,
24
+ };
25
+ }
26
+
27
+ declare const parseJson: <S extends Stringified<Serializable>>(str: string | S) => S extends Stringified<infer J extends Serializable> ? J : Serializable;
28
+ type Stringified<J extends Serializable> = string & {
29
+ __json: J;
30
+ };
31
+ declare const stringifyJson: <J extends Serializable>(json: J) => Stringified<J>;
32
+ type Empty = Record<string, never>;
33
+ declare const JSON_TYPE_NAMES: readonly ["array", "boolean", "null", "number", "object", "string"];
34
+ type JsonTypeName = typeof JSON_TYPE_NAMES[number];
35
+ interface JsonTypes extends Record<JsonTypeName, Serializable> {
36
+ array: Array;
37
+ boolean: boolean;
38
+ null: null;
39
+ number: number;
40
+ object: Object$1;
41
+ string: string;
42
+ }
43
+ declare const JSON_DEFAULTS: JsonTypes;
15
44
 
16
- declare const selectJson: <T, J extends Json>(atom: AtomIO.AtomToken<T>, transform: JsonInterface<T, J>, store?: AtomIO.Store) => AtomIO.SelectorToken<J>;
45
+ declare const selectJson: <T, J extends AtomIO.Json.Serializable>(atom: AtomIO.AtomToken<T>, transform: JsonInterface<T, J>, store?: AtomIO.Store) => AtomIO.SelectorToken<J>;
17
46
 
18
- export { selectJson };
47
+ export { Empty, JSON_DEFAULTS, JSON_TYPE_NAMES, json as Json, JsonInterface, JsonTypeName, JsonTypes, Stringified, parseJson, selectJson, stringSetJsonInterface, stringifyJson };
@@ -1,18 +1,47 @@
1
1
  import * as AtomIO from 'atom.io';
2
2
 
3
- type JsonInterface<T, J extends Json = Json> = {
3
+ type JsonInterface<T, J extends Serializable = Serializable> = {
4
4
  toJson: (t: T) => J;
5
5
  fromJson: (json: J) => T;
6
6
  };
7
+ declare const stringSetJsonInterface: JsonInterface<Set<string>, Array<string>>;
7
8
 
8
- type Primitive = boolean | number | string | null;
9
- type Serializable = Primitive | Readonly<{
9
+ type primitive = boolean | number | string | null;
10
+
11
+ type Serializable = primitive | Readonly<{
10
12
  [key: string]: Serializable;
11
13
  }> | ReadonlyArray<Serializable>;
12
- type JsonObj<Key extends string = string, Value extends Serializable = Serializable> = Record<Key, Value>;
13
- type JsonArr<Element extends Serializable = Serializable> = ReadonlyArray<Element>;
14
- type Json = JsonArr | JsonObj | Primitive;
14
+ type Object$1<Key extends string = string, Value extends Serializable = Serializable> = Record<Key, Value>;
15
+ type Array<Element extends Serializable = Serializable> = ReadonlyArray<Element>;
16
+
17
+ type json_Array<Element extends Serializable = Serializable> = Array<Element>;
18
+ type json_Serializable = Serializable;
19
+ declare namespace json {
20
+ export {
21
+ json_Array as Array,
22
+ Object$1 as Object,
23
+ json_Serializable as Serializable,
24
+ };
25
+ }
26
+
27
+ declare const parseJson: <S extends Stringified<Serializable>>(str: string | S) => S extends Stringified<infer J extends Serializable> ? J : Serializable;
28
+ type Stringified<J extends Serializable> = string & {
29
+ __json: J;
30
+ };
31
+ declare const stringifyJson: <J extends Serializable>(json: J) => Stringified<J>;
32
+ type Empty = Record<string, never>;
33
+ declare const JSON_TYPE_NAMES: readonly ["array", "boolean", "null", "number", "object", "string"];
34
+ type JsonTypeName = typeof JSON_TYPE_NAMES[number];
35
+ interface JsonTypes extends Record<JsonTypeName, Serializable> {
36
+ array: Array;
37
+ boolean: boolean;
38
+ null: null;
39
+ number: number;
40
+ object: Object$1;
41
+ string: string;
42
+ }
43
+ declare const JSON_DEFAULTS: JsonTypes;
15
44
 
16
- declare const selectJson: <T, J extends Json>(atom: AtomIO.AtomToken<T>, transform: JsonInterface<T, J>, store?: AtomIO.Store) => AtomIO.SelectorToken<J>;
45
+ declare const selectJson: <T, J extends AtomIO.Json.Serializable>(atom: AtomIO.AtomToken<T>, transform: JsonInterface<T, J>, store?: AtomIO.Store) => AtomIO.SelectorToken<J>;
17
46
 
18
- export { selectJson };
47
+ export { Empty, JSON_DEFAULTS, JSON_TYPE_NAMES, json as Json, JsonInterface, JsonTypeName, JsonTypes, Stringified, parseJson, selectJson, stringSetJsonInterface, stringifyJson };
@@ -1,51 +1,34 @@
1
- var __create = Object.create;
2
- var __defProp = Object.defineProperty;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __getProtoOf = Object.getPrototypeOf;
6
- var __hasOwnProp = Object.prototype.hasOwnProperty;
7
- var __export = (target, all) => {
8
- for (var name in all)
9
- __defProp(target, name, { get: all[name], enumerable: true });
10
- };
11
- var __copyProps = (to, from, except, desc) => {
12
- if (from && typeof from === "object" || typeof from === "function") {
13
- for (let key of __getOwnPropNames(from))
14
- if (!__hasOwnProp.call(to, key) && key !== except)
15
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
16
- }
17
- return to;
18
- };
19
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
20
- // If the importer is in node compatibility mode or this is not an ESM
21
- // file that has been converted to a CommonJS file using a Babel-
22
- // compatible transform (i.e. "__esModule" has not been set), then set
23
- // "default" to the CommonJS "module.exports" for node compatibility.
24
- isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
25
- mod
26
- ));
27
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
1
+ 'use strict';
28
2
 
29
- // ../src/json/index.ts
30
- var json_exports = {};
31
- __export(json_exports, {
32
- selectJson: () => selectJson
33
- });
34
- module.exports = __toCommonJS(json_exports);
3
+ var n = require('atom.io');
35
4
 
36
- // ../src/json/select-json.ts
37
- var AtomIO = __toESM(require("atom.io"));
38
- var selectJson = (atom, transform, store = AtomIO.__INTERNAL__.IMPLICIT.STORE) => AtomIO.__INTERNAL__.selector__INTERNAL(
39
- {
40
- key: `${atom.key}JSON`,
41
- get: ({ get }) => transform.toJson(get(atom)),
42
- set: ({ set }, newValue) => set(atom, transform.fromJson(newValue))
43
- },
44
- void 0,
45
- store
46
- );
47
- // Annotate the CommonJS export names for ESM import in node:
48
- 0 && (module.exports = {
49
- selectJson
50
- });
5
+ function _interopNamespace(e) {
6
+ if (e && e.__esModule) return e;
7
+ var n = Object.create(null);
8
+ if (e) {
9
+ Object.keys(e).forEach(function (k) {
10
+ if (k !== 'default') {
11
+ var d = Object.getOwnPropertyDescriptor(e, k);
12
+ Object.defineProperty(n, k, d.get ? d : {
13
+ enumerable: true,
14
+ get: function () { return e[k]; }
15
+ });
16
+ }
17
+ });
18
+ }
19
+ n.default = e;
20
+ return Object.freeze(n);
21
+ }
22
+
23
+ var n__namespace = /*#__PURE__*/_interopNamespace(n);
24
+
25
+ var J={toJson:e=>Array.from(e),fromJson:e=>new Set(e)};var a=e=>JSON.parse(e),l=e=>JSON.stringify(e),p=["array","boolean","null","number","object","string"],S={array:[],boolean:!1,null:null,number:0,object:{},string:""};var y=(e,t,r=n__namespace.__INTERNAL__.IMPLICIT.STORE)=>n__namespace.__INTERNAL__.selector__INTERNAL({key:`${e.key}JSON`,get:({get:o})=>t.toJson(o(e)),set:({set:o},s)=>o(e,t.fromJson(s))},void 0,r);
26
+
27
+ exports.JSON_DEFAULTS = S;
28
+ exports.JSON_TYPE_NAMES = p;
29
+ exports.parseJson = a;
30
+ exports.selectJson = y;
31
+ exports.stringSetJsonInterface = J;
32
+ exports.stringifyJson = l;
33
+ //# sourceMappingURL=out.js.map
51
34
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/json/index.ts","../../src/json/select-json.ts"],"sourcesContent":["export * from \"./select-json\"\n","import * as AtomIO from \"atom.io\"\n\nimport type { Json, JsonInterface } from \"~/packages/anvl/src/json\"\n\nexport const selectJson = <T, J extends Json>(\n\tatom: AtomIO.AtomToken<T>,\n\ttransform: JsonInterface<T, J>,\n\tstore: AtomIO.Store = AtomIO.__INTERNAL__.IMPLICIT.STORE,\n): AtomIO.SelectorToken<J> =>\n\tAtomIO.__INTERNAL__.selector__INTERNAL(\n\t\t{\n\t\t\tkey: `${atom.key}JSON`,\n\t\t\tget: ({ get }) => transform.toJson(get(atom)),\n\t\t\tset: ({ set }, newValue) => set(atom, transform.fromJson(newValue)),\n\t\t},\n\t\tundefined,\n\t\tstore,\n\t)\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACAA,aAAwB;AAIjB,IAAM,aAAa,CACzB,MACA,WACA,QAA6B,oBAAa,SAAS,UAE5C,oBAAa;AAAA,EACnB;AAAA,IACC,KAAK,GAAG,KAAK,GAAG;AAAA,IAChB,KAAK,CAAC,EAAE,IAAI,MAAM,UAAU,OAAO,IAAI,IAAI,CAAC;AAAA,IAC5C,KAAK,CAAC,EAAE,IAAI,GAAG,aAAa,IAAI,MAAM,UAAU,SAAS,QAAQ,CAAC;AAAA,EACnE;AAAA,EACA;AAAA,EACA;AACD;","names":[]}
1
+ {"version":3,"sources":["../../../anvl/src/json/json-interface.ts","../../../anvl/src/json/index.ts","../src/select-json.ts"],"names":["stringSetJsonInterface","stringSet","json","parseJson","str","stringifyJson","JSON_TYPE_NAMES","JSON_DEFAULTS","AtomIO","selectJson","atom","transform","store","get","set","newValue"],"mappings":"AAOO,IAAMA,EAGT,CACH,OAASC,GAAc,MAAM,KAAKA,CAAS,EAC3C,SAAWC,GAAS,IAAI,IAAIA,CAAI,CACjC,ECTO,IAAMC,EACZC,GAC4D,KAAK,MAAMA,CAAG,EAI9DC,EACZH,GACoB,KAAK,UAAUA,CAAI,EAI3BI,EAAkB,CAC9B,QACA,UACA,OACA,SACA,SACA,QACD,EAaaC,EAA2B,CACvC,MAAO,CAAC,EACR,QAAS,GACT,KAAM,KACN,OAAQ,EACR,OAAQ,CAAC,EACT,OAAQ,EACT,EC3CA,UAAYC,MAAY,UAIjB,IAAMC,EAAa,CACzBC,EACAC,EACAC,EAA6B,eAAa,SAAS,QAE5C,eAAa,mBACnB,CACC,IAAK,GAAGF,EAAK,GAAG,OAChB,IAAK,CAAC,CAAE,IAAAG,CAAI,IAAMF,EAAU,OAAOE,EAAIH,CAAI,CAAC,EAC5C,IAAK,CAAC,CAAE,IAAAI,CAAI,EAAGC,IAAaD,EAAIJ,EAAMC,EAAU,SAASI,CAAQ,CAAC,CACnE,EACA,OACAH,CACD","sourcesContent":["import type { Json } from \".\"\n\nexport type JsonInterface<T, J extends Json.Serializable = Json.Serializable> = {\n\ttoJson: (t: T) => J\n\tfromJson: (json: J) => T\n}\n\nexport const stringSetJsonInterface: JsonInterface<\n\tSet<string>,\n\tJson.Array<string>\n> = {\n\ttoJson: (stringSet) => Array.from(stringSet),\n\tfromJson: (json) => new Set(json),\n}\n","export * from \"./json-interface\"\nimport type * as Json from \"./json\"\nexport { Json }\n\nexport const parseJson = <S extends Stringified<Json.Serializable>>(\n\tstr: S | string,\n): S extends Stringified<infer J> ? J : Json.Serializable => JSON.parse(str)\n\nexport type Stringified<J extends Json.Serializable> = string & { __json: J }\n\nexport const stringifyJson = <J extends Json.Serializable>(\n\tjson: J,\n): Stringified<J> => JSON.stringify(json) as Stringified<J>\n\nexport type Empty = Record<string, never>\n\nexport const JSON_TYPE_NAMES = [\n\t`array`,\n\t`boolean`,\n\t`null`,\n\t`number`,\n\t`object`,\n\t`string`,\n] as const\n\nexport type JsonTypeName = typeof JSON_TYPE_NAMES[number]\n\nexport interface JsonTypes extends Record<JsonTypeName, Json.Serializable> {\n\tarray: Json.Array\n\tboolean: boolean\n\tnull: null\n\tnumber: number\n\tobject: Json.Object\n\tstring: string\n}\n\nexport const JSON_DEFAULTS: JsonTypes = {\n\tarray: [],\n\tboolean: false,\n\tnull: null,\n\tnumber: 0,\n\tobject: {},\n\tstring: ``,\n}\n","import * as AtomIO from \"atom.io\"\n\nimport type { Json, JsonInterface } from \".\"\n\nexport const selectJson = <T, J extends Json.Serializable>(\n\tatom: AtomIO.AtomToken<T>,\n\ttransform: JsonInterface<T, J>,\n\tstore: AtomIO.Store = AtomIO.__INTERNAL__.IMPLICIT.STORE,\n): AtomIO.SelectorToken<J> =>\n\tAtomIO.__INTERNAL__.selector__INTERNAL(\n\t\t{\n\t\t\tkey: `${atom.key}JSON`,\n\t\t\tget: ({ get }) => transform.toJson(get(atom)),\n\t\t\tset: ({ set }, newValue) => set(atom, transform.fromJson(newValue)),\n\t\t},\n\t\tundefined,\n\t\tstore,\n\t)\n"]}