atom.io 0.11.0 → 0.12.0

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 (172) hide show
  1. package/data/dist/index.cjs +614 -0
  2. package/data/dist/index.cjs.map +1 -0
  3. package/data/dist/index.d.cts +158 -0
  4. package/data/dist/index.d.ts +118 -1
  5. package/data/dist/index.js +551 -30
  6. package/data/dist/index.js.map +1 -1
  7. package/data/dist/metafile-cjs.json +1 -0
  8. package/data/dist/metafile-esm.json +1 -0
  9. package/data/package.json +4 -3
  10. package/data/src/index.ts +1 -0
  11. package/data/src/join.ts +450 -0
  12. package/data/src/struct-family.ts +34 -24
  13. package/data/src/struct.ts +6 -8
  14. package/dist/index.cjs +257 -0
  15. package/dist/index.cjs.map +1 -0
  16. package/dist/{index.d.mts → index.d.cts} +10 -11
  17. package/dist/index.d.ts +10 -11
  18. package/dist/index.js +63 -104
  19. package/dist/index.js.map +1 -1
  20. package/dist/metafile-cjs.json +1 -0
  21. package/dist/metafile-esm.json +1 -0
  22. package/internal/dist/{index.mjs → index.cjs} +692 -503
  23. package/internal/dist/index.cjs.map +1 -0
  24. package/internal/dist/{index.d.mts → index.d.cts} +114 -105
  25. package/internal/dist/index.d.ts +114 -105
  26. package/internal/dist/index.js +628 -563
  27. package/internal/dist/index.js.map +1 -1
  28. package/internal/dist/metafile-cjs.json +1 -0
  29. package/internal/dist/metafile-esm.json +1 -0
  30. package/internal/package.json +4 -3
  31. package/internal/src/atom/create-atom.ts +29 -16
  32. package/internal/src/atom/delete-atom.ts +25 -6
  33. package/internal/src/atom/is-default.ts +4 -17
  34. package/internal/src/caching.ts +28 -23
  35. package/internal/src/families/create-atom-family.ts +3 -2
  36. package/internal/src/families/create-readonly-selector-family.ts +1 -1
  37. package/internal/src/families/create-selector-family.ts +4 -4
  38. package/internal/src/index.ts +2 -1
  39. package/internal/src/mutable/create-mutable-atom-family.ts +2 -2
  40. package/internal/src/mutable/create-mutable-atom.ts +1 -2
  41. package/internal/src/mutable/get-json-family.ts +22 -0
  42. package/internal/src/mutable/get-json-token.ts +1 -0
  43. package/internal/src/mutable/index.ts +1 -0
  44. package/internal/src/mutable/tracker-family.ts +1 -2
  45. package/internal/src/mutable/tracker.ts +8 -6
  46. package/internal/src/mutable/transceiver.ts +2 -0
  47. package/internal/src/not-found-error.ts +27 -0
  48. package/internal/src/operation.ts +2 -3
  49. package/internal/src/{get-state-internal.ts → read-or-compute-value.ts} +13 -6
  50. package/internal/src/selector/create-selector.ts +6 -7
  51. package/internal/src/selector/delete-selector.ts +37 -0
  52. package/internal/src/selector/index.ts +2 -1
  53. package/internal/src/selector/register-selector.ts +7 -7
  54. package/internal/src/set-state/copy-mutable-in-transaction.ts +3 -2
  55. package/internal/src/set-state/emit-update.ts +1 -3
  56. package/internal/src/set-state/evict-downstream.ts +6 -8
  57. package/internal/src/set-state/index.ts +1 -1
  58. package/internal/src/set-state/{set-state-internal.ts → set-atom-or-selector.ts} +2 -3
  59. package/internal/src/set-state/set-atom.ts +5 -6
  60. package/internal/src/store/store.ts +1 -1
  61. package/internal/src/store/withdraw-new-family-member.ts +6 -6
  62. package/internal/src/subscribe/recall-state.ts +1 -2
  63. package/internal/src/subscribe/subscribe-to-root-atoms.ts +2 -2
  64. package/internal/src/timeline/add-atom-to-timeline.ts +5 -16
  65. package/internal/src/timeline/{timeline-internal.ts → create-timeline.ts} +4 -5
  66. package/internal/src/timeline/index.ts +2 -2
  67. package/internal/src/timeline/time-travel.ts +89 -0
  68. package/internal/src/transaction/{transaction-internal.ts → create-transaction.ts} +6 -5
  69. package/internal/src/transaction/index.ts +2 -3
  70. package/introspection/dist/{index.mjs → index.cjs} +54 -29
  71. package/introspection/dist/index.cjs.map +1 -0
  72. package/introspection/dist/{index.d.mts → index.d.cts} +2 -2
  73. package/introspection/dist/index.d.ts +2 -2
  74. package/introspection/dist/index.js +32 -49
  75. package/introspection/dist/index.js.map +1 -1
  76. package/introspection/dist/metafile-cjs.json +1 -0
  77. package/introspection/dist/metafile-esm.json +1 -0
  78. package/introspection/package.json +4 -3
  79. package/introspection/src/attach-introspection-states.ts +2 -2
  80. package/introspection/src/attach-selector-index.ts +8 -4
  81. package/json/dist/{index.mjs → index.cjs} +20 -7
  82. package/json/dist/{index.mjs.map → index.cjs.map} +1 -1
  83. package/json/dist/{index.d.mts → index.d.cts} +1 -1
  84. package/json/dist/index.d.ts +1 -1
  85. package/json/dist/index.js +6 -19
  86. package/json/dist/index.js.map +1 -1
  87. package/json/dist/metafile-cjs.json +1 -0
  88. package/json/dist/metafile-esm.json +1 -0
  89. package/json/package.json +4 -3
  90. package/package.json +48 -47
  91. package/react/dist/index.cjs +59 -0
  92. package/react/dist/index.cjs.map +1 -0
  93. package/react/dist/index.js +20 -42
  94. package/react/dist/index.js.map +1 -1
  95. package/react/dist/metafile-cjs.json +1 -0
  96. package/react/dist/metafile-esm.json +1 -0
  97. package/react/package.json +4 -3
  98. package/react/src/store-hooks.ts +8 -2
  99. package/react-devtools/dist/{index.mjs → index.cjs} +286 -240
  100. package/react-devtools/dist/index.cjs.map +1 -0
  101. package/react-devtools/dist/{index.d.mts → index.d.cts} +29 -17
  102. package/react-devtools/dist/index.d.ts +29 -17
  103. package/react-devtools/dist/index.js +251 -273
  104. package/react-devtools/dist/index.js.map +1 -1
  105. package/react-devtools/dist/metafile-cjs.json +1 -0
  106. package/react-devtools/dist/metafile-esm.json +1 -0
  107. package/react-devtools/package.json +4 -3
  108. package/react-devtools/src/StateEditor.tsx +8 -8
  109. package/realtime-client/dist/{index.mjs → index.cjs} +50 -21
  110. package/realtime-client/dist/index.js +20 -49
  111. package/realtime-client/dist/metafile-cjs.json +1 -0
  112. package/realtime-client/dist/metafile-esm.json +1 -0
  113. package/realtime-client/package.json +4 -3
  114. package/realtime-react/dist/index.cjs +99 -0
  115. package/realtime-react/dist/index.js +35 -66
  116. package/realtime-react/dist/metafile-cjs.json +1 -0
  117. package/realtime-react/dist/metafile-esm.json +1 -0
  118. package/realtime-react/package.json +4 -3
  119. package/realtime-server/dist/{index.mjs → index.cjs} +67 -40
  120. package/realtime-server/dist/index.js +39 -66
  121. package/realtime-server/dist/metafile-cjs.json +1 -0
  122. package/realtime-server/dist/metafile-esm.json +1 -0
  123. package/realtime-server/package.json +4 -3
  124. package/realtime-testing/dist/{index.mjs → index.cjs} +54 -23
  125. package/realtime-testing/dist/index.js +22 -53
  126. package/realtime-testing/dist/metafile-cjs.json +1 -0
  127. package/realtime-testing/dist/metafile-esm.json +1 -0
  128. package/realtime-testing/package.json +4 -3
  129. package/src/atom.ts +6 -8
  130. package/src/dispose.ts +18 -0
  131. package/src/get-state.ts +16 -0
  132. package/src/index.ts +3 -1
  133. package/src/logger.ts +1 -1
  134. package/src/selector.ts +3 -3
  135. package/src/set-state.ts +22 -0
  136. package/src/silo.ts +7 -8
  137. package/src/timeline.ts +6 -11
  138. package/src/transaction.ts +2 -2
  139. package/transceivers/set-rtx/dist/{index.mjs → index.cjs} +40 -36
  140. package/transceivers/set-rtx/dist/index.cjs.map +1 -0
  141. package/transceivers/set-rtx/dist/{index.d.mts → index.d.cts} +2 -1
  142. package/transceivers/set-rtx/dist/index.d.ts +2 -1
  143. package/transceivers/set-rtx/dist/index.js +37 -37
  144. package/transceivers/set-rtx/dist/index.js.map +1 -1
  145. package/transceivers/set-rtx/dist/metafile-cjs.json +1 -0
  146. package/transceivers/set-rtx/dist/metafile-esm.json +1 -0
  147. package/transceivers/set-rtx/package.json +4 -3
  148. package/transceivers/set-rtx/src/set-rtx.ts +29 -26
  149. package/data/dist/index.d.mts +0 -41
  150. package/data/dist/index.mjs +0 -82
  151. package/data/dist/index.mjs.map +0 -1
  152. package/dist/index.mjs +0 -215
  153. package/dist/index.mjs.map +0 -1
  154. package/internal/dist/index.mjs.map +0 -1
  155. package/internal/src/set-state/set-selector-state.ts +0 -8
  156. package/internal/src/timeline/time-travel-internal.ts +0 -109
  157. package/introspection/dist/index.mjs.map +0 -1
  158. package/react/dist/index.mjs +0 -29
  159. package/react/dist/index.mjs.map +0 -1
  160. package/react-devtools/dist/index.mjs.map +0 -1
  161. package/realtime-react/dist/index.mjs +0 -68
  162. package/src/get-set.ts +0 -48
  163. package/transceivers/set-rtx/dist/index.mjs.map +0 -1
  164. /package/react/dist/{index.d.mts → index.d.cts} +0 -0
  165. /package/realtime-client/dist/{index.mjs.map → index.cjs.map} +0 -0
  166. /package/realtime-client/dist/{index.d.mts → index.d.cts} +0 -0
  167. /package/realtime-react/dist/{index.mjs.map → index.cjs.map} +0 -0
  168. /package/realtime-react/dist/{index.d.mts → index.d.cts} +0 -0
  169. /package/realtime-server/dist/{index.mjs.map → index.cjs.map} +0 -0
  170. /package/realtime-server/dist/{index.d.mts → index.d.cts} +0 -0
  171. /package/realtime-testing/dist/{index.mjs.map → index.cjs.map} +0 -0
  172. /package/realtime-testing/dist/{index.d.mts → index.d.cts} +0 -0
@@ -6,7 +6,8 @@ import type {
6
6
  } from "atom.io"
7
7
  import { getState, setState } from "atom.io"
8
8
 
9
- import { IMPLICIT, type Store, type StoreCore, deposit } from "../store"
9
+ import { deposit } from "../store"
10
+ import type { Store, StoreCore } from "../store"
10
11
  import { Subject } from "../subject"
11
12
  import { abortTransaction } from "./abort-transaction"
12
13
  import { applyTransaction } from "./apply-transaction"
@@ -20,9 +21,9 @@ export type Transaction<ƒ extends ƒn> = {
20
21
  run: (...parameters: Parameters<ƒ>) => ReturnType<ƒ>
21
22
  }
22
23
 
23
- export function transaction__INTERNAL<ƒ extends ƒn>(
24
+ export function createTransaction<ƒ extends ƒn>(
24
25
  options: TransactionOptions<ƒ>,
25
- store: Store = IMPLICIT.STORE,
26
+ store: Store,
26
27
  ): TransactionToken<ƒ> {
27
28
  const newTransaction: Transaction<ƒ> = {
28
29
  key: options.key,
@@ -45,7 +46,7 @@ export function transaction__INTERNAL<ƒ extends ƒn>(
45
46
  throw thrown
46
47
  }
47
48
  },
48
- install: (store) => transaction__INTERNAL(options, store),
49
+ install: (store) => createTransaction(options, store),
49
50
  subject: new Subject(),
50
51
  }
51
52
  const core = target(store)
@@ -55,7 +56,7 @@ export function transaction__INTERNAL<ƒ extends ƒn>(
55
56
  return token
56
57
  }
57
58
 
58
- export const target = (store: Store = IMPLICIT.STORE): StoreCore =>
59
+ export const target = (store: Store): StoreCore =>
59
60
  store.transactionStatus.phase === `building`
60
61
  ? store.transactionStatus.core
61
62
  : store
@@ -2,16 +2,15 @@ import type { TransactionUpdate, ƒn } from "atom.io"
2
2
 
3
3
  import type { StoreCore } from ".."
4
4
 
5
- export * from "./transaction-internal"
6
-
7
5
  export * from "./abort-transaction"
8
6
  export * from "./apply-transaction"
9
7
  export * from "./build-transaction"
8
+ export * from "./create-transaction"
10
9
  export * from "./redo-transaction"
11
10
  export * from "./undo-transaction"
12
11
 
13
12
  export const TRANSACTION_PHASES = [`idle`, `building`, `applying`] as const
14
- export type TransactionPhase = typeof TRANSACTION_PHASES[number]
13
+ export type TransactionPhase = (typeof TRANSACTION_PHASES)[number]
15
14
 
16
15
  export type TransactionUpdateInProgress<ƒ extends ƒn> = TransactionUpdate<ƒ> & {
17
16
  phase: `applying` | `building`
@@ -1,5 +1,26 @@
1
- import * as __INTERNAL__ from 'atom.io/internal';
2
- import { createAtom, target, createSelector, IMPLICIT, createAtomFamily, Subject, createSelectorFamily } from 'atom.io/internal';
1
+ 'use strict';
2
+
3
+ var Internal = require('atom.io/internal');
4
+
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 Internal__namespace = /*#__PURE__*/_interopNamespace(Internal);
3
24
 
4
25
  var __defProp = Object.defineProperty;
5
26
  var __defProps = Object.defineProperties;
@@ -20,8 +41,8 @@ var __spreadValues = (a, b) => {
20
41
  return a;
21
42
  };
22
43
  var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
23
- var attachAtomIndex = (store = IMPLICIT.STORE) => {
24
- const atomTokenIndexState__INTERNAL = createAtom(
44
+ var attachAtomIndex = (store = Internal.IMPLICIT.STORE) => {
45
+ const atomTokenIndexState__INTERNAL = Internal.createAtom(
25
46
  {
26
47
  key: `\u{1F441}\u200D\u{1F5E8} Atom Token Index (Internal)`,
27
48
  default: () => {
@@ -60,7 +81,7 @@ var attachAtomIndex = (store = IMPLICIT.STORE) => {
60
81
  [key]: atomToken
61
82
  });
62
83
  });
63
- if (target(store).operation.open) {
84
+ if (Internal.target(store).operation.open) {
64
85
  const unsubscribe = store.subject.operationStatus.subscribe(
65
86
  `introspection: waiting to update atom index`,
66
87
  () => {
@@ -78,7 +99,7 @@ var attachAtomIndex = (store = IMPLICIT.STORE) => {
78
99
  void 0,
79
100
  store
80
101
  );
81
- return createSelector(
102
+ return Internal.createSelector(
82
103
  {
83
104
  key: `\u{1F441}\u200D\u{1F5E8} Atom Token Index`,
84
105
  get: ({ get }) => get(atomTokenIndexState__INTERNAL)
@@ -87,8 +108,8 @@ var attachAtomIndex = (store = IMPLICIT.STORE) => {
87
108
  store
88
109
  );
89
110
  };
90
- var attachSelectorIndex = (store = IMPLICIT.STORE) => {
91
- const readonlySelectorTokenIndexState__INTERNAL = createAtom(
111
+ var attachSelectorIndex = (store = Internal.IMPLICIT.STORE) => {
112
+ const readonlySelectorTokenIndexState__INTERNAL = Internal.createAtom(
92
113
  {
93
114
  key: `\u{1F441}\u200D\u{1F5E8} Selector Token Index (Internal)`,
94
115
  default: () => Object.assign(
@@ -132,7 +153,7 @@ var attachSelectorIndex = (store = IMPLICIT.STORE) => {
132
153
  [key]: selectorToken
133
154
  });
134
155
  });
135
- if (target(store).operation.open) {
156
+ if (Internal.target(store).operation.open) {
136
157
  const unsubscribe = store.subject.operationStatus.subscribe(
137
158
  `introspection: waiting to update selector index`,
138
159
  () => {
@@ -151,13 +172,17 @@ var attachSelectorIndex = (store = IMPLICIT.STORE) => {
151
172
  void 0,
152
173
  store
153
174
  );
154
- return createSelector({
155
- key: `\u{1F441}\u200D\u{1F5E8} Selector Token Index`,
156
- get: ({ get }) => get(readonlySelectorTokenIndexState__INTERNAL)
157
- });
175
+ return Internal.createSelector(
176
+ {
177
+ key: `\u{1F441}\u200D\u{1F5E8} Selector Token Index`,
178
+ get: ({ get }) => get(readonlySelectorTokenIndexState__INTERNAL)
179
+ },
180
+ void 0,
181
+ Internal.IMPLICIT.STORE
182
+ );
158
183
  };
159
- var attachTimelineFamily = (store = IMPLICIT.STORE) => {
160
- const findTimelineLogState__INTERNAL = createAtomFamily(
184
+ var attachTimelineFamily = (store = Internal.IMPLICIT.STORE) => {
185
+ const findTimelineLogState__INTERNAL = Internal.createAtomFamily(
161
186
  {
162
187
  key: `\u{1F441}\u200D\u{1F5E8} Timeline Update Log (Internal)`,
163
188
  default: (key) => {
@@ -172,7 +197,7 @@ var attachTimelineFamily = (store = IMPLICIT.STORE) => {
172
197
  transactionKey: null,
173
198
  install: () => {
174
199
  },
175
- subject: new Subject()
200
+ subject: new Internal.Subject()
176
201
  };
177
202
  },
178
203
  effects: (key) => [
@@ -198,7 +223,7 @@ var attachTimelineFamily = (store = IMPLICIT.STORE) => {
198
223
  },
199
224
  store
200
225
  );
201
- const findTimelineLogState = createSelectorFamily(
226
+ const findTimelineLogState = Internal.createSelectorFamily(
202
227
  {
203
228
  key: `\u{1F441}\u200D\u{1F5E8} Timeline Update Log`,
204
229
  get: (key) => ({ get }) => get(findTimelineLogState__INTERNAL(key))
@@ -207,8 +232,8 @@ var attachTimelineFamily = (store = IMPLICIT.STORE) => {
207
232
  );
208
233
  return findTimelineLogState;
209
234
  };
210
- var attachTimelineIndex = (store = IMPLICIT.STORE) => {
211
- const timelineTokenIndexState__INTERNAL = createAtom(
235
+ var attachTimelineIndex = (store = Internal.IMPLICIT.STORE) => {
236
+ const timelineTokenIndexState__INTERNAL = Internal.createAtom(
212
237
  {
213
238
  key: `\u{1F441}\u200D\u{1F5E8} Timeline Token Index (Internal)`,
214
239
  default: () => [...store.timelines].map(([key]) => {
@@ -228,7 +253,7 @@ var attachTimelineIndex = (store = IMPLICIT.STORE) => {
228
253
  void 0,
229
254
  store
230
255
  );
231
- const timelineTokenIndex = createSelector(
256
+ const timelineTokenIndex = Internal.createSelector(
232
257
  {
233
258
  key: `\u{1F441}\u200D\u{1F5E8} Timeline Token Index`,
234
259
  get: ({ get }) => get(timelineTokenIndexState__INTERNAL)
@@ -238,8 +263,8 @@ var attachTimelineIndex = (store = IMPLICIT.STORE) => {
238
263
  );
239
264
  return timelineTokenIndex;
240
265
  };
241
- var attachTransactionIndex = (store = IMPLICIT.STORE) => {
242
- const transactionTokenIndexState__INTERNAL = createAtom(
266
+ var attachTransactionIndex = (store = Internal.IMPLICIT.STORE) => {
267
+ const transactionTokenIndexState__INTERNAL = Internal.createAtom(
243
268
  {
244
269
  key: `\u{1F441}\u200D\u{1F5E8} Transaction Token Index (Internal)`,
245
270
  default: () => [...store.transactions].map(([key]) => {
@@ -259,7 +284,7 @@ var attachTransactionIndex = (store = IMPLICIT.STORE) => {
259
284
  void 0,
260
285
  store
261
286
  );
262
- const transactionTokenIndex = createSelector(
287
+ const transactionTokenIndex = Internal.createSelector(
263
288
  {
264
289
  key: `\u{1F441}\u200D\u{1F5E8} Transaction Token Index`,
265
290
  get: ({ get }) => get(transactionTokenIndexState__INTERNAL)
@@ -269,8 +294,8 @@ var attachTransactionIndex = (store = IMPLICIT.STORE) => {
269
294
  );
270
295
  return transactionTokenIndex;
271
296
  };
272
- var attachTransactionLogs = (store = IMPLICIT.STORE) => {
273
- const findTransactionUpdateLog = createAtomFamily(
297
+ var attachTransactionLogs = (store = Internal.IMPLICIT.STORE) => {
298
+ const findTransactionUpdateLog = Internal.createAtomFamily(
274
299
  {
275
300
  key: `\u{1F441}\u200D\u{1F5E8} Transaction Update Log (Internal)`,
276
301
  default: () => [],
@@ -287,7 +312,7 @@ var attachTransactionLogs = (store = IMPLICIT.STORE) => {
287
312
  },
288
313
  store
289
314
  );
290
- const findTransactionUpdateLogState = createSelectorFamily(
315
+ const findTransactionUpdateLogState = Internal.createSelectorFamily(
291
316
  {
292
317
  key: `\u{1F441}\u200D\u{1F5E8} Transaction Update Log`,
293
318
  get: (key) => ({ get }) => get(findTransactionUpdateLog(key))
@@ -298,7 +323,7 @@ var attachTransactionLogs = (store = IMPLICIT.STORE) => {
298
323
  };
299
324
 
300
325
  // src/attach-introspection-states.ts
301
- var attachIntrospectionStates = (store = __INTERNAL__.IMPLICIT.STORE) => {
326
+ var attachIntrospectionStates = (store = Internal__namespace.IMPLICIT.STORE) => {
302
327
  return {
303
328
  atomIndex: attachAtomIndex(store),
304
329
  selectorIndex: attachSelectorIndex(store),
@@ -309,6 +334,6 @@ var attachIntrospectionStates = (store = __INTERNAL__.IMPLICIT.STORE) => {
309
334
  };
310
335
  };
311
336
 
312
- export { attachIntrospectionStates };
337
+ exports.attachIntrospectionStates = attachIntrospectionStates;
313
338
  //# sourceMappingURL=out.js.map
314
- //# sourceMappingURL=index.mjs.map
339
+ //# sourceMappingURL=index.cjs.map
@@ -0,0 +1 @@
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":["IMPLICIT","createAtom","createSelector","target","createAtomFamily","createSelectorFamily"],"mappings":"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","sourcesContent":["import type {\n\tReadonlySelectorFamily,\n\tReadonlySelectorToken,\n\tTimelineToken,\n\tTransactionToken,\n\tTransactionUpdate,\n\tƒn,\n} from \"atom.io\"\nimport * as Internal from \"atom.io/internal\"\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 type { Store } from \"atom.io/internal\"\nimport { IMPLICIT, createAtom, createSelector, target } from \"atom.io/internal\"\n\nimport type { StateTokenIndex } from \".\"\n\nexport type AtomTokenIndex = StateTokenIndex<AtomToken<unknown>>\n\nexport const attachAtomIndex = (\n\tstore: Store = IMPLICIT.STORE,\n): ReadonlySelectorToken<AtomTokenIndex> => {\n\tconst atomTokenIndexState__INTERNAL = createAtom<AtomTokenIndex>(\n\t\t{\n\t\t\tkey: `👁‍🗨 Atom Token Index (Internal)`,\n\t\t\tdefault: () => {\n\t\t\t\tconst defaultAtomIndex = [...store.atoms]\n\t\t\t\t\t.filter(([key]) => !key.includes(`👁‍🗨`))\n\t\t\t\t\t.reduce<AtomTokenIndex>((acc, [key]) => {\n\t\t\t\t\t\tacc[key] = { key, type: `atom` }\n\t\t\t\t\t\treturn acc\n\t\t\t\t\t}, {})\n\t\t\t\treturn defaultAtomIndex\n\t\t\t},\n\t\t\teffects: [\n\t\t\t\t({ setSelf }) => {\n\t\t\t\t\tstore.subject.atomCreation.subscribe(`introspection`, (atomToken) => {\n\t\t\t\t\t\tif (atomToken.key.includes(`👁‍🗨`)) {\n\t\t\t\t\t\t\treturn\n\t\t\t\t\t\t}\n\t\t\t\t\t\tconst set = () =>\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\tif (target(store).operation.open) {\n\t\t\t\t\t\t\tconst unsubscribe = store.subject.operationStatus.subscribe(\n\t\t\t\t\t\t\t\t`introspection: waiting to update atom index`,\n\t\t\t\t\t\t\t\t() => {\n\t\t\t\t\t\t\t\t\tunsubscribe()\n\t\t\t\t\t\t\t\t\tset()\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\tset()\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\treturn createSelector(\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 type { ReadonlySelectorToken, SelectorToken } from \"atom.io\"\nimport type { Store } from \"atom.io/internal\"\nimport { IMPLICIT, createAtom, createSelector, target } from \"atom.io/internal\"\n\nimport type { StateTokenIndex } from \".\"\n\nexport type SelectorTokenIndex = StateTokenIndex<\n\tReadonlySelectorToken<unknown> | SelectorToken<unknown>\n>\n\nexport const attachSelectorIndex = (\n\tstore: Store = IMPLICIT.STORE,\n): ReadonlySelectorToken<SelectorTokenIndex> => {\n\tconst readonlySelectorTokenIndexState__INTERNAL =\n\t\tcreateAtom<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 (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\tconst set = () =>\n\t\t\t\t\t\t\t\t\tsetSelf((state) => {\n\t\t\t\t\t\t\t\t\t\tconst { key, family } = selectorToken\n\t\t\t\t\t\t\t\t\t\tif (family) {\n\t\t\t\t\t\t\t\t\t\t\tconst { key: familyKey, subKey } = family\n\t\t\t\t\t\t\t\t\t\t\tconst current = state[familyKey]\n\t\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\t\tconst familyKeyState = current || {\n\t\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\t\tfamilyMembers: {},\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\treturn {\n\t\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\t[familyKey]: {\n\t\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\t\tfamilyMembers: {\n\t\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\t[subKey]: selectorToken,\n\t\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\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\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[key]: selectorToken,\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\tif (target(store).operation.open) {\n\t\t\t\t\t\t\t\t\tconst unsubscribe = store.subject.operationStatus.subscribe(\n\t\t\t\t\t\t\t\t\t\t`introspection: waiting to update selector index`,\n\t\t\t\t\t\t\t\t\t\t() => {\n\t\t\t\t\t\t\t\t\t\t\tunsubscribe()\n\t\t\t\t\t\t\t\t\t\t\tset()\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} else {\n\t\t\t\t\t\t\t\t\tset()\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 createSelector(\n\t\t{\n\t\t\tkey: `👁‍🗨 Selector Token Index`,\n\t\t\tget: ({ get }) => get(readonlySelectorTokenIndexState__INTERNAL),\n\t\t},\n\t\tundefined,\n\t\tIMPLICIT.STORE,\n\t)\n}\n","import type { ReadonlySelectorFamily } from \"atom.io\"\nimport type { Store, Timeline } from \"atom.io/internal\"\nimport {\n\tIMPLICIT,\n\tSubject,\n\tcreateAtomFamily,\n\tcreateSelectorFamily,\n} from \"atom.io/internal\"\n\nexport const attachTimelineFamily = (\n\tstore: Store = IMPLICIT.STORE,\n): ReadonlySelectorFamily<Timeline> => {\n\tconst findTimelineLogState__INTERNAL = createAtomFamily<Timeline, string>(\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 = createSelectorFamily<Timeline, string>(\n\t\t{\n\t\t\tkey: `👁‍🗨 Timeline Update Log`,\n\t\t\tget:\n\t\t\t\t(key) =>\n\t\t\t\t({ get }) =>\n\t\t\t\t\tget(findTimelineLogState__INTERNAL(key)),\n\t\t},\n\t\tstore,\n\t)\n\treturn findTimelineLogState\n}\n","import type { ReadonlySelectorToken, TimelineToken } from \"atom.io\"\nimport type { Store } from \"atom.io/internal\"\nimport { IMPLICIT, createAtom, createSelector } from \"atom.io/internal\"\n\nexport const attachTimelineIndex = (\n\tstore: Store = IMPLICIT.STORE,\n): ReadonlySelectorToken<TimelineToken[]> => {\n\tconst timelineTokenIndexState__INTERNAL = createAtom<TimelineToken[]>(\n\t\t{\n\t\t\tkey: `👁‍🗨 Timeline Token Index (Internal)`,\n\t\t\tdefault: () =>\n\t\t\t\t[...store.timelines].map(([key]): TimelineToken => {\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 = createSelector(\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 type { Store } from \"atom.io/internal\"\nimport { IMPLICIT, createAtom, createSelector } from \"atom.io/internal\"\n\nexport const attachTransactionIndex = (\n\tstore: Store = IMPLICIT.STORE,\n): ReadonlySelectorToken<TransactionToken<ƒn>[]> => {\n\tconst transactionTokenIndexState__INTERNAL = createAtom<\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]): TransactionToken<ƒn> => {\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 = createSelector(\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 type { Store } from \"atom.io/internal\"\nimport {\n\tIMPLICIT,\n\tcreateAtomFamily,\n\tcreateSelectorFamily,\n} from \"atom.io/internal\"\n\nexport const attachTransactionLogs = (\n\tstore: Store = IMPLICIT.STORE,\n): ReadonlySelectorFamily<TransactionUpdate<ƒn>[]> => {\n\tconst findTransactionUpdateLog = createAtomFamily<\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 = createSelectorFamily<\n\t\tTransactionUpdate<ƒn>[],\n\t\tstring\n\t>(\n\t\t{\n\t\t\tkey: `👁‍🗨 Transaction Update Log`,\n\t\t\tget:\n\t\t\t\t(key) =>\n\t\t\t\t({ get }) =>\n\t\t\t\t\tget(findTransactionUpdateLog(key)),\n\t\t},\n\t\tstore,\n\t)\n\treturn findTransactionUpdateLogState\n}\n"]}
@@ -1,12 +1,12 @@
1
1
  import { AtomToken, ReadonlySelectorToken, SelectorToken, TransactionToken, ƒn, ReadonlySelectorFamily, TransactionUpdate, TimelineToken } from 'atom.io';
2
- import * as __INTERNAL__ from 'atom.io/internal';
2
+ import * as Internal from 'atom.io/internal';
3
3
  import { Timeline } from 'atom.io/internal';
4
4
 
5
5
  type AtomTokenIndex = StateTokenIndex<AtomToken<unknown>>;
6
6
 
7
7
  type SelectorTokenIndex = StateTokenIndex<ReadonlySelectorToken<unknown> | SelectorToken<unknown>>;
8
8
 
9
- declare const attachIntrospectionStates: (store?: __INTERNAL__.Store) => {
9
+ declare const attachIntrospectionStates: (store?: Internal.Store) => {
10
10
  atomIndex: ReadonlySelectorToken<AtomTokenIndex>;
11
11
  selectorIndex: ReadonlySelectorToken<SelectorTokenIndex>;
12
12
  transactionIndex: ReadonlySelectorToken<TransactionToken<ƒn>[]>;
@@ -1,12 +1,12 @@
1
1
  import { AtomToken, ReadonlySelectorToken, SelectorToken, TransactionToken, ƒn, ReadonlySelectorFamily, TransactionUpdate, TimelineToken } from 'atom.io';
2
- import * as __INTERNAL__ from 'atom.io/internal';
2
+ import * as Internal from 'atom.io/internal';
3
3
  import { Timeline } from 'atom.io/internal';
4
4
 
5
5
  type AtomTokenIndex = StateTokenIndex<AtomToken<unknown>>;
6
6
 
7
7
  type SelectorTokenIndex = StateTokenIndex<ReadonlySelectorToken<unknown> | SelectorToken<unknown>>;
8
8
 
9
- declare const attachIntrospectionStates: (store?: __INTERNAL__.Store) => {
9
+ declare const attachIntrospectionStates: (store?: Internal.Store) => {
10
10
  atomIndex: ReadonlySelectorToken<AtomTokenIndex>;
11
11
  selectorIndex: ReadonlySelectorToken<SelectorTokenIndex>;
12
12
  transactionIndex: ReadonlySelectorToken<TransactionToken<ƒn>[]>;
@@ -1,26 +1,5 @@
1
- 'use strict';
2
-
3
- var __INTERNAL__ = require('atom.io/internal');
4
-
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 __INTERNAL____namespace = /*#__PURE__*/_interopNamespace(__INTERNAL__);
1
+ import * as Internal from 'atom.io/internal';
2
+ import { createAtom, target, createSelector, IMPLICIT, createAtomFamily, Subject, createSelectorFamily } from 'atom.io/internal';
24
3
 
25
4
  var __defProp = Object.defineProperty;
26
5
  var __defProps = Object.defineProperties;
@@ -41,8 +20,8 @@ var __spreadValues = (a, b) => {
41
20
  return a;
42
21
  };
43
22
  var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
44
- var attachAtomIndex = (store = __INTERNAL__.IMPLICIT.STORE) => {
45
- const atomTokenIndexState__INTERNAL = __INTERNAL__.createAtom(
23
+ var attachAtomIndex = (store = IMPLICIT.STORE) => {
24
+ const atomTokenIndexState__INTERNAL = createAtom(
46
25
  {
47
26
  key: `\u{1F441}\u200D\u{1F5E8} Atom Token Index (Internal)`,
48
27
  default: () => {
@@ -81,7 +60,7 @@ var attachAtomIndex = (store = __INTERNAL__.IMPLICIT.STORE) => {
81
60
  [key]: atomToken
82
61
  });
83
62
  });
84
- if (__INTERNAL__.target(store).operation.open) {
63
+ if (target(store).operation.open) {
85
64
  const unsubscribe = store.subject.operationStatus.subscribe(
86
65
  `introspection: waiting to update atom index`,
87
66
  () => {
@@ -99,7 +78,7 @@ var attachAtomIndex = (store = __INTERNAL__.IMPLICIT.STORE) => {
99
78
  void 0,
100
79
  store
101
80
  );
102
- return __INTERNAL__.createSelector(
81
+ return createSelector(
103
82
  {
104
83
  key: `\u{1F441}\u200D\u{1F5E8} Atom Token Index`,
105
84
  get: ({ get }) => get(atomTokenIndexState__INTERNAL)
@@ -108,8 +87,8 @@ var attachAtomIndex = (store = __INTERNAL__.IMPLICIT.STORE) => {
108
87
  store
109
88
  );
110
89
  };
111
- var attachSelectorIndex = (store = __INTERNAL__.IMPLICIT.STORE) => {
112
- const readonlySelectorTokenIndexState__INTERNAL = __INTERNAL__.createAtom(
90
+ var attachSelectorIndex = (store = IMPLICIT.STORE) => {
91
+ const readonlySelectorTokenIndexState__INTERNAL = createAtom(
113
92
  {
114
93
  key: `\u{1F441}\u200D\u{1F5E8} Selector Token Index (Internal)`,
115
94
  default: () => Object.assign(
@@ -153,7 +132,7 @@ var attachSelectorIndex = (store = __INTERNAL__.IMPLICIT.STORE) => {
153
132
  [key]: selectorToken
154
133
  });
155
134
  });
156
- if (__INTERNAL__.target(store).operation.open) {
135
+ if (target(store).operation.open) {
157
136
  const unsubscribe = store.subject.operationStatus.subscribe(
158
137
  `introspection: waiting to update selector index`,
159
138
  () => {
@@ -172,13 +151,17 @@ var attachSelectorIndex = (store = __INTERNAL__.IMPLICIT.STORE) => {
172
151
  void 0,
173
152
  store
174
153
  );
175
- return __INTERNAL__.createSelector({
176
- key: `\u{1F441}\u200D\u{1F5E8} Selector Token Index`,
177
- get: ({ get }) => get(readonlySelectorTokenIndexState__INTERNAL)
178
- });
154
+ return createSelector(
155
+ {
156
+ key: `\u{1F441}\u200D\u{1F5E8} Selector Token Index`,
157
+ get: ({ get }) => get(readonlySelectorTokenIndexState__INTERNAL)
158
+ },
159
+ void 0,
160
+ IMPLICIT.STORE
161
+ );
179
162
  };
180
- var attachTimelineFamily = (store = __INTERNAL__.IMPLICIT.STORE) => {
181
- const findTimelineLogState__INTERNAL = __INTERNAL__.createAtomFamily(
163
+ var attachTimelineFamily = (store = IMPLICIT.STORE) => {
164
+ const findTimelineLogState__INTERNAL = createAtomFamily(
182
165
  {
183
166
  key: `\u{1F441}\u200D\u{1F5E8} Timeline Update Log (Internal)`,
184
167
  default: (key) => {
@@ -193,7 +176,7 @@ var attachTimelineFamily = (store = __INTERNAL__.IMPLICIT.STORE) => {
193
176
  transactionKey: null,
194
177
  install: () => {
195
178
  },
196
- subject: new __INTERNAL__.Subject()
179
+ subject: new Subject()
197
180
  };
198
181
  },
199
182
  effects: (key) => [
@@ -219,7 +202,7 @@ var attachTimelineFamily = (store = __INTERNAL__.IMPLICIT.STORE) => {
219
202
  },
220
203
  store
221
204
  );
222
- const findTimelineLogState = __INTERNAL__.createSelectorFamily(
205
+ const findTimelineLogState = createSelectorFamily(
223
206
  {
224
207
  key: `\u{1F441}\u200D\u{1F5E8} Timeline Update Log`,
225
208
  get: (key) => ({ get }) => get(findTimelineLogState__INTERNAL(key))
@@ -228,8 +211,8 @@ var attachTimelineFamily = (store = __INTERNAL__.IMPLICIT.STORE) => {
228
211
  );
229
212
  return findTimelineLogState;
230
213
  };
231
- var attachTimelineIndex = (store = __INTERNAL__.IMPLICIT.STORE) => {
232
- const timelineTokenIndexState__INTERNAL = __INTERNAL__.createAtom(
214
+ var attachTimelineIndex = (store = IMPLICIT.STORE) => {
215
+ const timelineTokenIndexState__INTERNAL = createAtom(
233
216
  {
234
217
  key: `\u{1F441}\u200D\u{1F5E8} Timeline Token Index (Internal)`,
235
218
  default: () => [...store.timelines].map(([key]) => {
@@ -249,7 +232,7 @@ var attachTimelineIndex = (store = __INTERNAL__.IMPLICIT.STORE) => {
249
232
  void 0,
250
233
  store
251
234
  );
252
- const timelineTokenIndex = __INTERNAL__.createSelector(
235
+ const timelineTokenIndex = createSelector(
253
236
  {
254
237
  key: `\u{1F441}\u200D\u{1F5E8} Timeline Token Index`,
255
238
  get: ({ get }) => get(timelineTokenIndexState__INTERNAL)
@@ -259,8 +242,8 @@ var attachTimelineIndex = (store = __INTERNAL__.IMPLICIT.STORE) => {
259
242
  );
260
243
  return timelineTokenIndex;
261
244
  };
262
- var attachTransactionIndex = (store = __INTERNAL__.IMPLICIT.STORE) => {
263
- const transactionTokenIndexState__INTERNAL = __INTERNAL__.createAtom(
245
+ var attachTransactionIndex = (store = IMPLICIT.STORE) => {
246
+ const transactionTokenIndexState__INTERNAL = createAtom(
264
247
  {
265
248
  key: `\u{1F441}\u200D\u{1F5E8} Transaction Token Index (Internal)`,
266
249
  default: () => [...store.transactions].map(([key]) => {
@@ -280,7 +263,7 @@ var attachTransactionIndex = (store = __INTERNAL__.IMPLICIT.STORE) => {
280
263
  void 0,
281
264
  store
282
265
  );
283
- const transactionTokenIndex = __INTERNAL__.createSelector(
266
+ const transactionTokenIndex = createSelector(
284
267
  {
285
268
  key: `\u{1F441}\u200D\u{1F5E8} Transaction Token Index`,
286
269
  get: ({ get }) => get(transactionTokenIndexState__INTERNAL)
@@ -290,8 +273,8 @@ var attachTransactionIndex = (store = __INTERNAL__.IMPLICIT.STORE) => {
290
273
  );
291
274
  return transactionTokenIndex;
292
275
  };
293
- var attachTransactionLogs = (store = __INTERNAL__.IMPLICIT.STORE) => {
294
- const findTransactionUpdateLog = __INTERNAL__.createAtomFamily(
276
+ var attachTransactionLogs = (store = IMPLICIT.STORE) => {
277
+ const findTransactionUpdateLog = createAtomFamily(
295
278
  {
296
279
  key: `\u{1F441}\u200D\u{1F5E8} Transaction Update Log (Internal)`,
297
280
  default: () => [],
@@ -308,7 +291,7 @@ var attachTransactionLogs = (store = __INTERNAL__.IMPLICIT.STORE) => {
308
291
  },
309
292
  store
310
293
  );
311
- const findTransactionUpdateLogState = __INTERNAL__.createSelectorFamily(
294
+ const findTransactionUpdateLogState = createSelectorFamily(
312
295
  {
313
296
  key: `\u{1F441}\u200D\u{1F5E8} Transaction Update Log`,
314
297
  get: (key) => ({ get }) => get(findTransactionUpdateLog(key))
@@ -319,7 +302,7 @@ var attachTransactionLogs = (store = __INTERNAL__.IMPLICIT.STORE) => {
319
302
  };
320
303
 
321
304
  // src/attach-introspection-states.ts
322
- var attachIntrospectionStates = (store = __INTERNAL____namespace.IMPLICIT.STORE) => {
305
+ var attachIntrospectionStates = (store = Internal.IMPLICIT.STORE) => {
323
306
  return {
324
307
  atomIndex: attachAtomIndex(store),
325
308
  selectorIndex: attachSelectorIndex(store),
@@ -330,6 +313,6 @@ var attachIntrospectionStates = (store = __INTERNAL____namespace.IMPLICIT.STORE)
330
313
  };
331
314
  };
332
315
 
333
- exports.attachIntrospectionStates = attachIntrospectionStates;
316
+ export { attachIntrospectionStates };
334
317
  //# sourceMappingURL=out.js.map
335
318
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
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":["IMPLICIT","createAtom","createSelector","target","createAtomFamily","createSelectorFamily"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAQA,YAAY,kBAAkB;;;ACN9B,SAAS,UAAU,YAAY,gBAAgB,cAAc;AAMtD,IAAM,kBAAkB,CAC9B,QAAe,SAAS,UACmB;AAC3C,QAAM,gCAAgC;AAAA,IACrC;AAAA,MACC,KAAK;AAAA,MACL,SAAS,MAAM;AACd,cAAM,mBAAmB,CAAC,GAAG,MAAM,KAAK,EACtC,OAAO,CAAC,CAAC,GAAG,MAAM,CAAC,IAAI,SAAS,0BAAO,CAAC,EACxC,OAAuB,CAAC,KAAK,CAAC,GAAG,MAAM;AACvC,cAAI,GAAG,IAAI,EAAE,KAAK,MAAM,OAAO;AAC/B,iBAAO;AAAA,QACR,GAAG,CAAC,CAAC;AACN,eAAO;AAAA,MACR;AAAA,MACA,SAAS;AAAA,QACR,CAAC,EAAE,QAAQ,MAAM;AAChB,gBAAM,QAAQ,aAAa,UAAU,iBAAiB,CAAC,cAAc;AACpE,gBAAI,UAAU,IAAI,SAAS,0BAAO,GAAG;AACpC;AAAA,YACD;AACA,kBAAM,MAAM,MACX,QAAQ,CAAC,UAAU;AAClB,oBAAM,EAAE,KAAK,OAAO,IAAI;AACxB,kBAAI,QAAQ;AACX,sBAAM,EAAE,KAAK,WAAW,OAAO,IAAI;AACnC,sBAAM,UAAU,MAAM,SAAS;AAC/B,oBAAI,YAAY,UAAa,mBAAmB,SAAS;AACxD,wBAAM,iBAAiB,WAAW;AAAA,oBACjC,KAAK;AAAA,oBACL,eAAe,CAAC;AAAA,kBACjB;AACA,yBAAO,iCACH,QADG;AAAA,oBAEN,CAAC,SAAS,GAAG,iCACT,iBADS;AAAA,sBAEZ,eAAe,iCACX,eAAe,gBADJ;AAAA,wBAEd,CAAC,MAAM,GAAG;AAAA,sBACX;AAAA,oBACD;AAAA,kBACD;AAAA,gBACD;AAAA,cACD;AACA,qBAAO,iCACH,QADG;AAAA,gBAEN,CAAC,GAAG,GAAG;AAAA,cACR;AAAA,YACD,CAAC;AACF,gBAAI,OAAO,KAAK,EAAE,UAAU,MAAM;AACjC,oBAAM,cAAc,MAAM,QAAQ,gBAAgB;AAAA,gBACjD;AAAA,gBACA,MAAM;AACL,8BAAY;AACZ,sBAAI;AAAA,gBACL;AAAA,cACD;AAAA,YACD,OAAO;AACN,kBAAI;AAAA,YACL;AAAA,UACD,CAAC;AAAA,QACF;AAAA,MACD;AAAA,IACD;AAAA,IACA;AAAA,IACA;AAAA,EACD;AACA,SAAO;AAAA,IACN;AAAA,MACC,KAAK;AAAA,MACL,KAAK,CAAC,EAAE,IAAI,MAAM,IAAI,6BAA6B;AAAA,IACpD;AAAA,IACA;AAAA,IACA;AAAA,EACD;AACD;;;ACjFA,SAAS,YAAAA,WAAU,cAAAC,aAAY,kBAAAC,iBAAgB,UAAAC,eAAc;AAQtD,IAAM,sBAAsB,CAClC,QAAeH,UAAS,UACuB;AAC/C,QAAM,4CACLC;AAAA,IACC;AAAA,MACC,KAAK;AAAA,MACL,SAAS,MACR,OAAO;AAAA,QACN,CAAC,GAAG,MAAM,iBAAiB,EACzB,OAAO,CAAC,CAAC,GAAG,MAAM,CAAC,IAAI,SAAS,0BAAO,CAAC,EACxC,OAA2B,CAAC,KAAK,CAAC,GAAG,MAAM;AAC3C,cAAI,GAAG,IAAI,EAAE,KAAK,MAAM,oBAAoB;AAC5C,iBAAO;AAAA,QACR,GAAG,CAAC,CAAC;AAAA,QACN,CAAC,GAAG,MAAM,SAAS,EAAE,OAA2B,CAAC,KAAK,CAAC,GAAG,MAAM;AAC/D,cAAI,GAAG,IAAI,EAAE,KAAK,MAAM,WAAW;AACnC,iBAAO;AAAA,QACR,GAAG,CAAC,CAAC;AAAA,MACN;AAAA,MACD,SAAS;AAAA,QACR,CAAC,EAAE,QAAQ,MAAM;AAChB,gBAAM,QAAQ,iBAAiB;AAAA,YAC9B;AAAA,YACA,CAAC,kBAAkB;AAClB,kBAAI,cAAc,IAAI,SAAS,0BAAO,GAAG;AACxC;AAAA,cACD;AACA,oBAAM,MAAM,MACX,QAAQ,CAAC,UAAU;AAClB,sBAAM,EAAE,KAAK,OAAO,IAAI;AACxB,oBAAI,QAAQ;AACX,wBAAM,EAAE,KAAK,WAAW,OAAO,IAAI;AACnC,wBAAM,UAAU,MAAM,SAAS;AAC/B,sBAAI,YAAY,UAAa,mBAAmB,SAAS;AACxD,0BAAM,iBAAiB,WAAW;AAAA,sBACjC,KAAK;AAAA,sBACL,eAAe,CAAC;AAAA,oBACjB;AACA,2BAAO,iCACH,QADG;AAAA,sBAEN,CAAC,SAAS,GAAG,iCACT,iBADS;AAAA,wBAEZ,eAAe,iCACX,eAAe,gBADJ;AAAA,0BAEd,CAAC,MAAM,GAAG;AAAA,wBACX;AAAA,sBACD;AAAA,oBACD;AAAA,kBACD;AAAA,gBACD;AACA,uBAAO,iCACH,QADG;AAAA,kBAEN,CAAC,GAAG,GAAG;AAAA,gBACR;AAAA,cACD,CAAC;AACF,kBAAIE,QAAO,KAAK,EAAE,UAAU,MAAM;AACjC,sBAAM,cAAc,MAAM,QAAQ,gBAAgB;AAAA,kBACjD;AAAA,kBACA,MAAM;AACL,gCAAY;AACZ,wBAAI;AAAA,kBACL;AAAA,gBACD;AAAA,cACD,OAAO;AACN,oBAAI;AAAA,cACL;AAAA,YACD;AAAA,UACD;AAAA,QACD;AAAA,MACD;AAAA,IACD;AAAA,IACA;AAAA,IACA;AAAA,EACD;AACD,SAAOD,gBAAe;AAAA,IACrB,KAAK;AAAA,IACL,KAAK,CAAC,EAAE,IAAI,MAAM,IAAI,yCAAyC;AAAA,EAChE,CAAC;AACF;;;ACvFA;AAAA,EACC,YAAAF;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACM;AAEA,IAAM,uBAAuB,CACnC,QAAeA,UAAS,UACc;AACtC,QAAM,iCAAiC;AAAA,IACtC;AAAA,MACC,KAAK;AAAA,MACL,SAAS,CAAC,QAAK;AAflB;AAgBI,2BAAM,UAAU,IAAI,GAAG,MAAvB,YAA4B;AAAA,UAC3B,MAAM;AAAA,UACN,KAAK;AAAA,UACL,IAAI;AAAA,UACJ,eAAe;AAAA,UACf,SAAS,CAAC;AAAA,UACV,cAAc;AAAA,UACd,gBAAgB;AAAA,UAChB,SAAS,MAAM;AAAA,UAAC;AAAA,UAChB,SAAS,IAAI,QAAQ;AAAA,QACtB;AAAA;AAAA,MACD,SAAS,CAAC,QAAQ;AAAA,QACjB,CAAC,EAAE,QAAQ,MAAM;AAChB,gBAAM,KAAK,MAAM,UAAU,IAAI,GAAG;AAClC,mCAAI,QAAQ,UAAU,iBAAiB,CAAC,MAAM;AAC7C,gBAAI,MAAM,UAAU,SAAS,MAAM;AAClC,oBAAM,cAAc,MAAM,QAAQ,gBAAgB;AAAA,gBACjD;AAAA,gBACA,CAAC,oBAAoB;AACpB,sBAAI,gBAAgB,SAAS,OAAO;AACnC,gCAAY;AACZ,4BAAQ,mBAAK,GAAI;AAAA,kBAClB;AAAA,gBACD;AAAA,cACD;AAAA,YACD,OAAO;AACN,sBAAQ,mBAAK,GAAI;AAAA,YAClB;AAAA,UACD;AAAA,QACD;AAAA,MACD;AAAA,IACD;AAAA,IACA;AAAA,EACD;AACA,QAAM,uBAAuB;AAAA,IAC5B;AAAA,MACC,KAAK;AAAA,MACL,KACC,CAAC,QACD,CAAC,EAAE,IAAI,MACN,IAAI,+BAA+B,GAAG,CAAC;AAAA,IAC1C;AAAA,IACA;AAAA,EACD;AACA,SAAO;AACR;;;AC3DA,SAAS,YAAAA,WAAU,cAAAC,aAAY,kBAAAC,uBAAsB;AAE9C,IAAM,sBAAsB,CAClC,QAAeF,UAAS,UACoB;AAC5C,QAAM,oCAAoCC;AAAA,IACzC;AAAA,MACC,KAAK;AAAA,MACL,SAAS,MACR,CAAC,GAAG,MAAM,SAAS,EAAE,IAAI,CAAC,CAAC,GAAG,MAAqB;AAClD,eAAO,EAAE,KAAK,MAAM,WAAW;AAAA,MAChC,CAAC;AAAA,MACF,SAAS;AAAA,QACR,CAAC,EAAE,QAAQ,MAAM;AAChB,gBAAM,QAAQ,iBAAiB;AAAA,YAC9B;AAAA,YACA,CAAC,kBAAkB;AAClB,sBAAQ,CAAC,UAAU,CAAC,GAAG,OAAO,aAAa,CAAC;AAAA,YAC7C;AAAA,UACD;AAAA,QACD;AAAA,MACD;AAAA,IACD;AAAA,IACA;AAAA,IACA;AAAA,EACD;AACA,QAAM,qBAAqBC;AAAA,IAC1B;AAAA,MACC,KAAK;AAAA,MACL,KAAK,CAAC,EAAE,IAAI,MAAM,IAAI,iCAAiC;AAAA,IACxD;AAAA,IACA;AAAA,IACA;AAAA,EACD;AACA,SAAO;AACR;;;ACnCA,SAAS,YAAAF,WAAU,cAAAC,aAAY,kBAAAC,uBAAsB;AAE9C,IAAM,yBAAyB,CACrC,QAAeF,UAAS,UAC2B;AACnD,QAAM,uCAAuCC;AAAA,IAG5C;AAAA,MACC,KAAK;AAAA,MACL,SAAS,MACR,CAAC,GAAG,MAAM,YAAY,EAAE,IAAI,CAAC,CAAC,GAAG,MAA4B;AAC5D,eAAO,EAAE,KAAK,MAAM,cAAc;AAAA,MACnC,CAAC;AAAA,MACF,SAAS;AAAA,QACR,CAAC,EAAE,QAAQ,MAAM;AAChB,gBAAM,QAAQ,oBAAoB;AAAA,YACjC;AAAA,YACA,CAAC,qBAAqB;AACrB,sBAAQ,CAAC,UAAU,CAAC,GAAG,OAAO,gBAAgB,CAAC;AAAA,YAChD;AAAA,UACD;AAAA,QACD;AAAA,MACD;AAAA,IACD;AAAA,IACA;AAAA,IACA;AAAA,EACD;AACA,QAAM,wBAAwBC;AAAA,IAC7B;AAAA,MACC,KAAK;AAAA,MACL,KAAK,CAAC,EAAE,IAAI,MAAM,IAAI,oCAAoC;AAAA,IAC3D;AAAA,IACA;AAAA,IACA;AAAA,EACD;AACA,SAAO;AACR;;;ACrCA;AAAA,EACC,YAAAF;AAAA,EACA,oBAAAI;AAAA,EACA,wBAAAC;AAAA,OACM;AAEA,IAAM,wBAAwB,CACpC,QAAeL,UAAS,UAC6B;AACrD,QAAM,2BAA2BI;AAAA,IAIhC;AAAA,MACC,KAAK;AAAA,MACL,SAAS,MAAM,CAAC;AAAA,MAChB,SAAS,CAAC,QAAQ;AAAA,QACjB,CAAC,EAAE,QAAQ,MAAM;AAChB,gBAAM,KAAK,MAAM,aAAa,IAAI,GAAG;AACrC,mCAAI,QAAQ,UAAU,iBAAiB,CAAC,sBAAsB;AAC7D,gBAAI,kBAAkB,QAAQ,KAAK;AAClC,sBAAQ,CAAC,UAAU,CAAC,GAAG,OAAO,iBAAiB,CAAC;AAAA,YACjD;AAAA,UACD;AAAA,QACD;AAAA,MACD;AAAA,IACD;AAAA,IACA;AAAA,EACD;AACA,QAAM,gCAAgCC;AAAA,IAIrC;AAAA,MACC,KAAK;AAAA,MACL,KACC,CAAC,QACD,CAAC,EAAE,IAAI,MACN,IAAI,yBAAyB,GAAG,CAAC;AAAA,IACpC;AAAA,IACA;AAAA,EACD;AACA,SAAO;AACR;;;AN1BO,IAAM,4BAA4B,CACxC,QAAyC,sBAAS,UAQ9C;AACJ,SAAO;AAAA,IACN,WAAW,gBAAgB,KAAK;AAAA,IAChC,eAAe,oBAAoB,KAAK;AAAA,IACxC,kBAAkB,uBAAuB,KAAK;AAAA,IAC9C,yBAAyB,sBAAsB,KAAK;AAAA,IACpD,eAAe,oBAAoB,KAAK;AAAA,IACxC,mBAAmB,qBAAqB,KAAK;AAAA,EAC9C;AACD","sourcesContent":["import type {\n\tReadonlySelectorFamily,\n\tReadonlySelectorToken,\n\tTimelineToken,\n\tTransactionToken,\n\tTransactionUpdate,\n\tƒn,\n} from \"atom.io\"\nimport * as __INTERNAL__ from \"atom.io/internal\"\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 type { Store } from \"atom.io/internal\"\nimport { IMPLICIT, createAtom, createSelector, target } from \"atom.io/internal\"\n\nimport type { StateTokenIndex } from \".\"\n\nexport type AtomTokenIndex = StateTokenIndex<AtomToken<unknown>>\n\nexport const attachAtomIndex = (\n\tstore: Store = IMPLICIT.STORE,\n): ReadonlySelectorToken<AtomTokenIndex> => {\n\tconst atomTokenIndexState__INTERNAL = createAtom<AtomTokenIndex>(\n\t\t{\n\t\t\tkey: `👁‍🗨 Atom Token Index (Internal)`,\n\t\t\tdefault: () => {\n\t\t\t\tconst defaultAtomIndex = [...store.atoms]\n\t\t\t\t\t.filter(([key]) => !key.includes(`👁‍🗨`))\n\t\t\t\t\t.reduce<AtomTokenIndex>((acc, [key]) => {\n\t\t\t\t\t\tacc[key] = { key, type: `atom` }\n\t\t\t\t\t\treturn acc\n\t\t\t\t\t}, {})\n\t\t\t\treturn defaultAtomIndex\n\t\t\t},\n\t\t\teffects: [\n\t\t\t\t({ setSelf }) => {\n\t\t\t\t\tstore.subject.atomCreation.subscribe(`introspection`, (atomToken) => {\n\t\t\t\t\t\tif (atomToken.key.includes(`👁‍🗨`)) {\n\t\t\t\t\t\t\treturn\n\t\t\t\t\t\t}\n\t\t\t\t\t\tconst set = () =>\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\tif (target(store).operation.open) {\n\t\t\t\t\t\t\tconst unsubscribe = store.subject.operationStatus.subscribe(\n\t\t\t\t\t\t\t\t`introspection: waiting to update atom index`,\n\t\t\t\t\t\t\t\t() => {\n\t\t\t\t\t\t\t\t\tunsubscribe()\n\t\t\t\t\t\t\t\t\tset()\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\tset()\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\treturn createSelector(\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 type { ReadonlySelectorToken, SelectorToken } from \"atom.io\"\nimport type { Store } from \"atom.io/internal\"\nimport { IMPLICIT, createAtom, createSelector, target } from \"atom.io/internal\"\n\nimport type { StateTokenIndex } from \".\"\n\nexport type SelectorTokenIndex = StateTokenIndex<\n\tReadonlySelectorToken<unknown> | SelectorToken<unknown>\n>\n\nexport const attachSelectorIndex = (\n\tstore: Store = IMPLICIT.STORE,\n): ReadonlySelectorToken<SelectorTokenIndex> => {\n\tconst readonlySelectorTokenIndexState__INTERNAL =\n\t\tcreateAtom<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 (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\tconst set = () =>\n\t\t\t\t\t\t\t\t\tsetSelf((state) => {\n\t\t\t\t\t\t\t\t\t\tconst { key, family } = selectorToken\n\t\t\t\t\t\t\t\t\t\tif (family) {\n\t\t\t\t\t\t\t\t\t\t\tconst { key: familyKey, subKey } = family\n\t\t\t\t\t\t\t\t\t\t\tconst current = state[familyKey]\n\t\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\t\tconst familyKeyState = current || {\n\t\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\t\tfamilyMembers: {},\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\treturn {\n\t\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\t[familyKey]: {\n\t\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\t\tfamilyMembers: {\n\t\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\t[subKey]: selectorToken,\n\t\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\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\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[key]: selectorToken,\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\tif (target(store).operation.open) {\n\t\t\t\t\t\t\t\t\tconst unsubscribe = store.subject.operationStatus.subscribe(\n\t\t\t\t\t\t\t\t\t\t`introspection: waiting to update selector index`,\n\t\t\t\t\t\t\t\t\t\t() => {\n\t\t\t\t\t\t\t\t\t\t\tunsubscribe()\n\t\t\t\t\t\t\t\t\t\t\tset()\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} else {\n\t\t\t\t\t\t\t\t\tset()\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 createSelector({\n\t\tkey: `👁‍🗨 Selector Token Index`,\n\t\tget: ({ get }) => get(readonlySelectorTokenIndexState__INTERNAL),\n\t})\n}\n","import type { ReadonlySelectorFamily } from \"atom.io\"\nimport type { Store, Timeline } from \"atom.io/internal\"\nimport {\n\tIMPLICIT,\n\tSubject,\n\tcreateAtomFamily,\n\tcreateSelectorFamily,\n} from \"atom.io/internal\"\n\nexport const attachTimelineFamily = (\n\tstore: Store = IMPLICIT.STORE,\n): ReadonlySelectorFamily<Timeline> => {\n\tconst findTimelineLogState__INTERNAL = createAtomFamily<Timeline, string>(\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 = createSelectorFamily<Timeline, string>(\n\t\t{\n\t\t\tkey: `👁‍🗨 Timeline Update Log`,\n\t\t\tget:\n\t\t\t\t(key) =>\n\t\t\t\t({ get }) =>\n\t\t\t\t\tget(findTimelineLogState__INTERNAL(key)),\n\t\t},\n\t\tstore,\n\t)\n\treturn findTimelineLogState\n}\n","import type { ReadonlySelectorToken, TimelineToken } from \"atom.io\"\nimport type { Store } from \"atom.io/internal\"\nimport { IMPLICIT, createAtom, createSelector } from \"atom.io/internal\"\n\nexport const attachTimelineIndex = (\n\tstore: Store = IMPLICIT.STORE,\n): ReadonlySelectorToken<TimelineToken[]> => {\n\tconst timelineTokenIndexState__INTERNAL = createAtom<TimelineToken[]>(\n\t\t{\n\t\t\tkey: `👁‍🗨 Timeline Token Index (Internal)`,\n\t\t\tdefault: () =>\n\t\t\t\t[...store.timelines].map(([key]): TimelineToken => {\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 = createSelector(\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 type { Store } from \"atom.io/internal\"\nimport { IMPLICIT, createAtom, createSelector } from \"atom.io/internal\"\n\nexport const attachTransactionIndex = (\n\tstore: Store = IMPLICIT.STORE,\n): ReadonlySelectorToken<TransactionToken<ƒn>[]> => {\n\tconst transactionTokenIndexState__INTERNAL = createAtom<\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]): TransactionToken<ƒn> => {\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 = createSelector(\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 type { Store } from \"atom.io/internal\"\nimport {\n\tIMPLICIT,\n\tcreateAtomFamily,\n\tcreateSelectorFamily,\n} from \"atom.io/internal\"\n\nexport const attachTransactionLogs = (\n\tstore: Store = IMPLICIT.STORE,\n): ReadonlySelectorFamily<TransactionUpdate<ƒn>[]> => {\n\tconst findTransactionUpdateLog = createAtomFamily<\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 = createSelectorFamily<\n\t\tTransactionUpdate<ƒn>[],\n\t\tstring\n\t>(\n\t\t{\n\t\t\tkey: `👁‍🗨 Transaction Update Log`,\n\t\t\tget:\n\t\t\t\t(key) =>\n\t\t\t\t({ get }) =>\n\t\t\t\t\tget(findTransactionUpdateLog(key)),\n\t\t},\n\t\tstore,\n\t)\n\treturn findTransactionUpdateLogState\n}\n"]}
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":["IMPLICIT","createAtom","createSelector","target","createAtomFamily","createSelectorFamily"],"mappings":"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","sourcesContent":["import type {\n\tReadonlySelectorFamily,\n\tReadonlySelectorToken,\n\tTimelineToken,\n\tTransactionToken,\n\tTransactionUpdate,\n\tƒn,\n} from \"atom.io\"\nimport * as Internal from \"atom.io/internal\"\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 type { Store } from \"atom.io/internal\"\nimport { IMPLICIT, createAtom, createSelector, target } from \"atom.io/internal\"\n\nimport type { StateTokenIndex } from \".\"\n\nexport type AtomTokenIndex = StateTokenIndex<AtomToken<unknown>>\n\nexport const attachAtomIndex = (\n\tstore: Store = IMPLICIT.STORE,\n): ReadonlySelectorToken<AtomTokenIndex> => {\n\tconst atomTokenIndexState__INTERNAL = createAtom<AtomTokenIndex>(\n\t\t{\n\t\t\tkey: `👁‍🗨 Atom Token Index (Internal)`,\n\t\t\tdefault: () => {\n\t\t\t\tconst defaultAtomIndex = [...store.atoms]\n\t\t\t\t\t.filter(([key]) => !key.includes(`👁‍🗨`))\n\t\t\t\t\t.reduce<AtomTokenIndex>((acc, [key]) => {\n\t\t\t\t\t\tacc[key] = { key, type: `atom` }\n\t\t\t\t\t\treturn acc\n\t\t\t\t\t}, {})\n\t\t\t\treturn defaultAtomIndex\n\t\t\t},\n\t\t\teffects: [\n\t\t\t\t({ setSelf }) => {\n\t\t\t\t\tstore.subject.atomCreation.subscribe(`introspection`, (atomToken) => {\n\t\t\t\t\t\tif (atomToken.key.includes(`👁‍🗨`)) {\n\t\t\t\t\t\t\treturn\n\t\t\t\t\t\t}\n\t\t\t\t\t\tconst set = () =>\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\tif (target(store).operation.open) {\n\t\t\t\t\t\t\tconst unsubscribe = store.subject.operationStatus.subscribe(\n\t\t\t\t\t\t\t\t`introspection: waiting to update atom index`,\n\t\t\t\t\t\t\t\t() => {\n\t\t\t\t\t\t\t\t\tunsubscribe()\n\t\t\t\t\t\t\t\t\tset()\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\tset()\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\treturn createSelector(\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 type { ReadonlySelectorToken, SelectorToken } from \"atom.io\"\nimport type { Store } from \"atom.io/internal\"\nimport { IMPLICIT, createAtom, createSelector, target } from \"atom.io/internal\"\n\nimport type { StateTokenIndex } from \".\"\n\nexport type SelectorTokenIndex = StateTokenIndex<\n\tReadonlySelectorToken<unknown> | SelectorToken<unknown>\n>\n\nexport const attachSelectorIndex = (\n\tstore: Store = IMPLICIT.STORE,\n): ReadonlySelectorToken<SelectorTokenIndex> => {\n\tconst readonlySelectorTokenIndexState__INTERNAL =\n\t\tcreateAtom<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 (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\tconst set = () =>\n\t\t\t\t\t\t\t\t\tsetSelf((state) => {\n\t\t\t\t\t\t\t\t\t\tconst { key, family } = selectorToken\n\t\t\t\t\t\t\t\t\t\tif (family) {\n\t\t\t\t\t\t\t\t\t\t\tconst { key: familyKey, subKey } = family\n\t\t\t\t\t\t\t\t\t\t\tconst current = state[familyKey]\n\t\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\t\tconst familyKeyState = current || {\n\t\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\t\tfamilyMembers: {},\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\treturn {\n\t\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\t[familyKey]: {\n\t\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\t\tfamilyMembers: {\n\t\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\t[subKey]: selectorToken,\n\t\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\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\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[key]: selectorToken,\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\tif (target(store).operation.open) {\n\t\t\t\t\t\t\t\t\tconst unsubscribe = store.subject.operationStatus.subscribe(\n\t\t\t\t\t\t\t\t\t\t`introspection: waiting to update selector index`,\n\t\t\t\t\t\t\t\t\t\t() => {\n\t\t\t\t\t\t\t\t\t\t\tunsubscribe()\n\t\t\t\t\t\t\t\t\t\t\tset()\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} else {\n\t\t\t\t\t\t\t\t\tset()\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 createSelector(\n\t\t{\n\t\t\tkey: `👁‍🗨 Selector Token Index`,\n\t\t\tget: ({ get }) => get(readonlySelectorTokenIndexState__INTERNAL),\n\t\t},\n\t\tundefined,\n\t\tIMPLICIT.STORE,\n\t)\n}\n","import type { ReadonlySelectorFamily } from \"atom.io\"\nimport type { Store, Timeline } from \"atom.io/internal\"\nimport {\n\tIMPLICIT,\n\tSubject,\n\tcreateAtomFamily,\n\tcreateSelectorFamily,\n} from \"atom.io/internal\"\n\nexport const attachTimelineFamily = (\n\tstore: Store = IMPLICIT.STORE,\n): ReadonlySelectorFamily<Timeline> => {\n\tconst findTimelineLogState__INTERNAL = createAtomFamily<Timeline, string>(\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 = createSelectorFamily<Timeline, string>(\n\t\t{\n\t\t\tkey: `👁‍🗨 Timeline Update Log`,\n\t\t\tget:\n\t\t\t\t(key) =>\n\t\t\t\t({ get }) =>\n\t\t\t\t\tget(findTimelineLogState__INTERNAL(key)),\n\t\t},\n\t\tstore,\n\t)\n\treturn findTimelineLogState\n}\n","import type { ReadonlySelectorToken, TimelineToken } from \"atom.io\"\nimport type { Store } from \"atom.io/internal\"\nimport { IMPLICIT, createAtom, createSelector } from \"atom.io/internal\"\n\nexport const attachTimelineIndex = (\n\tstore: Store = IMPLICIT.STORE,\n): ReadonlySelectorToken<TimelineToken[]> => {\n\tconst timelineTokenIndexState__INTERNAL = createAtom<TimelineToken[]>(\n\t\t{\n\t\t\tkey: `👁‍🗨 Timeline Token Index (Internal)`,\n\t\t\tdefault: () =>\n\t\t\t\t[...store.timelines].map(([key]): TimelineToken => {\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 = createSelector(\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 type { Store } from \"atom.io/internal\"\nimport { IMPLICIT, createAtom, createSelector } from \"atom.io/internal\"\n\nexport const attachTransactionIndex = (\n\tstore: Store = IMPLICIT.STORE,\n): ReadonlySelectorToken<TransactionToken<ƒn>[]> => {\n\tconst transactionTokenIndexState__INTERNAL = createAtom<\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]): TransactionToken<ƒn> => {\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 = createSelector(\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 type { Store } from \"atom.io/internal\"\nimport {\n\tIMPLICIT,\n\tcreateAtomFamily,\n\tcreateSelectorFamily,\n} from \"atom.io/internal\"\n\nexport const attachTransactionLogs = (\n\tstore: Store = IMPLICIT.STORE,\n): ReadonlySelectorFamily<TransactionUpdate<ƒn>[]> => {\n\tconst findTransactionUpdateLog = createAtomFamily<\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 = createSelectorFamily<\n\t\tTransactionUpdate<ƒn>[],\n\t\tstring\n\t>(\n\t\t{\n\t\t\tkey: `👁‍🗨 Transaction Update Log`,\n\t\t\tget:\n\t\t\t\t(key) =>\n\t\t\t\t({ get }) =>\n\t\t\t\t\tget(findTransactionUpdateLog(key)),\n\t\t},\n\t\tstore,\n\t)\n\treturn findTransactionUpdateLogState\n}\n"]}
@@ -0,0 +1 @@
1
+ {"inputs":{"src/attach-atom-index.ts":{"bytes":2213,"imports":[{"path":"atom.io/internal","kind":"import-statement","external":true},{"path":"<runtime>","kind":"import-statement","external":true}],"format":"esm"},"src/attach-selector-index.ts":{"bytes":2622,"imports":[{"path":"atom.io/internal","kind":"import-statement","external":true},{"path":"<runtime>","kind":"import-statement","external":true}],"format":"esm"},"src/attach-timeline-family.ts":{"bytes":1489,"imports":[{"path":"atom.io/internal","kind":"import-statement","external":true},{"path":"<runtime>","kind":"import-statement","external":true}],"format":"esm"},"src/attach-timeline-index.ts":{"bytes":1013,"imports":[{"path":"atom.io/internal","kind":"import-statement","external":true}],"format":"esm"},"src/attach-transaction-index.ts":{"bytes":1086,"imports":[{"path":"atom.io/internal","kind":"import-statement","external":true}],"format":"esm"},"src/attach-transaction-logs.ts":{"bytes":1110,"imports":[{"path":"atom.io/internal","kind":"import-statement","external":true}],"format":"esm"},"src/attach-introspection-states.ts":{"bytes":1462,"imports":[{"path":"atom.io/internal","kind":"import-statement","external":true},{"path":"src/attach-atom-index.ts","kind":"import-statement","original":"./attach-atom-index"},{"path":"src/attach-selector-index.ts","kind":"import-statement","original":"./attach-selector-index"},{"path":"src/attach-timeline-family.ts","kind":"import-statement","original":"./attach-timeline-family"},{"path":"src/attach-timeline-index.ts","kind":"import-statement","original":"./attach-timeline-index"},{"path":"src/attach-transaction-index.ts","kind":"import-statement","original":"./attach-transaction-index"},{"path":"src/attach-transaction-logs.ts","kind":"import-statement","original":"./attach-transaction-logs"}],"format":"esm"},"src/index.ts":{"bytes":488,"imports":[{"path":"src/attach-introspection-states.ts","kind":"import-statement","original":"./attach-introspection-states"}],"format":"esm"}},"outputs":{"dist/index.cjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":20231},"dist/index.cjs":{"imports":[{"path":"atom.io/internal","kind":"import-statement","external":true},{"path":"atom.io/internal","kind":"import-statement","external":true},{"path":"atom.io/internal","kind":"import-statement","external":true},{"path":"atom.io/internal","kind":"import-statement","external":true},{"path":"atom.io/internal","kind":"import-statement","external":true},{"path":"atom.io/internal","kind":"import-statement","external":true},{"path":"atom.io/internal","kind":"import-statement","external":true}],"exports":["attachIntrospectionStates"],"entryPoint":"src/index.ts","inputs":{"src/attach-introspection-states.ts":{"bytesInOutput":432},"src/attach-atom-index.ts":{"bytesInOutput":2373},"src/attach-selector-index.ts":{"bytesInOutput":2740},"src/attach-timeline-family.ts":{"bytesInOutput":1645},"src/attach-timeline-index.ts":{"bytesInOutput":961},"src/attach-transaction-index.ts":{"bytesInOutput":997},"src/attach-transaction-logs.ts":{"bytesInOutput":1011},"src/index.ts":{"bytesInOutput":0}},"bytes":11330}}}