atom.io 0.6.5 → 0.6.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +32 -78
- package/dist/index.d.mts +4 -35
- package/dist/index.d.ts +4 -35
- package/dist/index.js +45 -198
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +42 -195
- package/dist/index.mjs.map +1 -1
- package/introspection/dist/index.js +312 -0
- package/introspection/dist/index.js.map +1 -0
- package/introspection/dist/index.mjs +289 -0
- package/introspection/dist/index.mjs.map +1 -0
- package/introspection/package.json +15 -0
- package/package.json +16 -6
- package/react-devtools/dist/index.css +22 -5
- package/react-devtools/dist/index.css.map +1 -1
- package/react-devtools/dist/index.d.mts +347 -8
- package/react-devtools/dist/index.d.ts +347 -8
- package/react-devtools/dist/index.js +2722 -674
- package/react-devtools/dist/index.js.map +1 -1
- package/react-devtools/dist/index.mjs +2669 -630
- package/react-devtools/dist/index.mjs.map +1 -1
- package/src/internal/index.ts +0 -1
- package/src/internal/operation.ts +1 -0
- package/src/internal/store.ts +3 -2
- package/src/internal/time-travel-internal.ts +2 -0
- package/src/internal/timeline/add-atom-to-timeline.ts +11 -12
- package/src/internal/timeline-internal.ts +5 -1
- package/src/introspection/attach-atom-index.ts +73 -0
- package/src/introspection/attach-introspection-states.ts +42 -0
- package/src/introspection/attach-selector-index.ts +77 -0
- package/src/introspection/attach-timeline-family.ts +49 -0
- package/src/introspection/attach-timeline-index.ts +36 -0
- package/src/introspection/attach-transaction-index.ts +38 -0
- package/src/introspection/attach-transaction-logs.ts +40 -0
- package/src/introspection/index.ts +20 -0
- package/src/react-devtools/AtomIODevtools.tsx +97 -96
- package/src/react-devtools/Button.tsx +24 -0
- package/src/react-devtools/StateEditor.tsx +14 -16
- package/src/react-devtools/StateIndex.tsx +153 -0
- package/src/react-devtools/TimelineIndex.tsx +92 -0
- package/src/react-devtools/TransactionIndex.tsx +70 -0
- package/src/react-devtools/Updates.tsx +145 -0
- package/src/react-devtools/devtools.scss +196 -15
- package/src/react-devtools/index.ts +71 -0
- package/src/react-explorer/AtomIOExplorer.tsx +0 -1
- package/src/react-explorer/explorer-states.ts +1 -1
- package/src/react-explorer/space-states.ts +3 -1
- package/src/react-explorer/view-states.ts +0 -2
- package/realtime-testing/dist/index.d.mts +0 -49
- package/realtime-testing/dist/index.d.ts +0 -49
- package/realtime-testing/dist/index.js +0 -165
- package/realtime-testing/dist/index.js.map +0 -1
- package/realtime-testing/dist/index.mjs +0 -129
- package/realtime-testing/dist/index.mjs.map +0 -1
- package/src/internal/meta/attach-meta.ts +0 -17
- package/src/internal/meta/index.ts +0 -4
- package/src/internal/meta/meta-state.ts +0 -135
- package/src/internal/meta/meta-timelines.ts +0 -1
- package/src/internal/meta/meta-transactions.ts +0 -1
- package/src/react-devtools/TokenList.tsx +0 -61
|
@@ -23,20 +23,20 @@ var __spreadValues = (a2, b2) => {
|
|
|
23
23
|
var __spreadProps = (a2, b2) => __defProps(a2, __getOwnPropDescs(b2));
|
|
24
24
|
var __restKey = (key) => typeof key === "symbol" ? key : key + "";
|
|
25
25
|
var __objRest = (source, exclude) => {
|
|
26
|
-
var
|
|
26
|
+
var target2 = {};
|
|
27
27
|
for (var prop in source)
|
|
28
28
|
if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)
|
|
29
|
-
|
|
29
|
+
target2[prop] = source[prop];
|
|
30
30
|
if (source != null && __getOwnPropSymbols)
|
|
31
31
|
for (var prop of __getOwnPropSymbols(source)) {
|
|
32
32
|
if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))
|
|
33
|
-
|
|
33
|
+
target2[prop] = source[prop];
|
|
34
34
|
}
|
|
35
|
-
return
|
|
35
|
+
return target2;
|
|
36
36
|
};
|
|
37
|
-
var __export = (
|
|
37
|
+
var __export = (target2, all) => {
|
|
38
38
|
for (var name in all)
|
|
39
|
-
__defProp(
|
|
39
|
+
__defProp(target2, name, { get: all[name], enumerable: true });
|
|
40
40
|
};
|
|
41
41
|
var __copyProps = (to, from, except, desc) => {
|
|
42
42
|
if (from && typeof from === "object" || typeof from === "function") {
|
|
@@ -46,12 +46,12 @@ var __copyProps = (to, from, except, desc) => {
|
|
|
46
46
|
}
|
|
47
47
|
return to;
|
|
48
48
|
};
|
|
49
|
-
var __toESM = (mod, isNodeMode,
|
|
49
|
+
var __toESM = (mod, isNodeMode, target2) => (target2 = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
50
50
|
// If the importer is in node compatibility mode or this is not an ESM
|
|
51
51
|
// file that has been converted to a CommonJS file using a Babel-
|
|
52
52
|
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
53
53
|
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
54
|
-
isNodeMode || !mod || !mod.__esModule ? __defProp(
|
|
54
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target2, "default", { value: mod, enumerable: true }) : target2,
|
|
55
55
|
mod
|
|
56
56
|
));
|
|
57
57
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
@@ -60,20 +60,22 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
|
|
|
60
60
|
var react_devtools_exports = {};
|
|
61
61
|
__export(react_devtools_exports, {
|
|
62
62
|
AtomIODevtools: () => AtomIODevtools,
|
|
63
|
-
|
|
63
|
+
atomIndex: () => atomIndex,
|
|
64
|
+
devtoolsAreOpenState: () => devtoolsAreOpenState,
|
|
65
|
+
devtoolsViewOptionsState: () => devtoolsViewOptionsState,
|
|
66
|
+
devtoolsViewSelectionState: () => devtoolsViewSelectionState,
|
|
67
|
+
findTimelineState: () => findTimelineState,
|
|
68
|
+
findTransactionLogState: () => findTransactionLogState,
|
|
69
|
+
findViewIsOpenState: () => findViewIsOpenState,
|
|
70
|
+
jsonTreeRefinery: () => jsonTreeRefinery,
|
|
71
|
+
prettyJson: () => prettyJson,
|
|
72
|
+
primitiveRefinery: () => primitiveRefinery,
|
|
73
|
+
selectorIndex: () => selectorIndex,
|
|
74
|
+
timelineIndex: () => timelineIndex,
|
|
75
|
+
transactionIndex: () => transactionIndex
|
|
64
76
|
});
|
|
65
77
|
module.exports = __toCommonJS(react_devtools_exports);
|
|
66
78
|
|
|
67
|
-
// ../src/react-devtools/AtomIODevtools.tsx
|
|
68
|
-
var import_atom2 = require("atom.io");
|
|
69
|
-
var import_react7 = require("atom.io/react");
|
|
70
|
-
var import_framer_motion = require("framer-motion");
|
|
71
|
-
var import_react8 = require("react");
|
|
72
|
-
|
|
73
|
-
// ../src/react-devtools/TokenList.tsx
|
|
74
|
-
var import_atom = require("atom.io");
|
|
75
|
-
var import_react6 = require("react");
|
|
76
|
-
|
|
77
79
|
// ../../anvl/src/object/index.ts
|
|
78
80
|
var import_function4 = require("fp-ts/function");
|
|
79
81
|
|
|
@@ -92,11 +94,24 @@ var entriesToRecord = (entries) => Object.fromEntries(entries);
|
|
|
92
94
|
// ../../anvl/src/object/mapObject.ts
|
|
93
95
|
var import_function = require("fp-ts/function");
|
|
94
96
|
|
|
97
|
+
// ../../anvl/src/array/venn.ts
|
|
98
|
+
var includesAll = (items) => (array) => {
|
|
99
|
+
for (const item of items) {
|
|
100
|
+
if (!array.includes(item))
|
|
101
|
+
return false;
|
|
102
|
+
}
|
|
103
|
+
return true;
|
|
104
|
+
};
|
|
105
|
+
var comprises = (items) => (array) => includesAll(items)(array) && includesAll(array)(items);
|
|
106
|
+
|
|
95
107
|
// ../../anvl/src/array/index.ts
|
|
96
108
|
var isArray = (isType) => (input) => Array.isArray(input) && input.every((item) => isType(item));
|
|
97
109
|
var map = (f) => (a2) => a2.map(f);
|
|
98
110
|
var every = (f = Boolean) => (a2) => a2.every(f);
|
|
99
111
|
var allTrue = every((x) => x === true);
|
|
112
|
+
var addTo = (a2) => (x) => a2.includes(x) ? a2 : [...a2, x];
|
|
113
|
+
var isEmptyArray = (input) => Array.isArray(input) && input.length === 0;
|
|
114
|
+
var isOneOf = (...args) => (input) => args.includes(input);
|
|
100
115
|
|
|
101
116
|
// ../../anvl/src/object/mapObject.ts
|
|
102
117
|
var mapObject = (obj, fn) => (0, import_function.pipe)(
|
|
@@ -116,12 +131,11 @@ var pass = (...params) => (fn) => fn(...params);
|
|
|
116
131
|
var raiseError = (message) => {
|
|
117
132
|
throw new Error(message);
|
|
118
133
|
};
|
|
119
|
-
var
|
|
134
|
+
var fallback = (fn, fallbackValue) => {
|
|
120
135
|
try {
|
|
121
|
-
fn();
|
|
122
|
-
return true;
|
|
136
|
+
return fn();
|
|
123
137
|
} catch (_) {
|
|
124
|
-
return
|
|
138
|
+
return fallbackValue;
|
|
125
139
|
}
|
|
126
140
|
};
|
|
127
141
|
|
|
@@ -133,6 +147,7 @@ var ifNullish = (alt) => (input) => input != null ? input : alt;
|
|
|
133
147
|
// ../../anvl/src/object/refinement.ts
|
|
134
148
|
var isNonNullObject = (input) => typeof input === `object` && input !== null;
|
|
135
149
|
var isPlainObject = (input) => isNonNullObject(input) && Object.getPrototypeOf(input) === Object.prototype;
|
|
150
|
+
var isEmptyObject = (input) => isPlainObject(input) && Object.keys(input).length === 0;
|
|
136
151
|
var isRecord = (isKey, isValue) => (input) => isPlainObject(input) && Object.entries(input).every(([k, v]) => isKey(k) && isValue(v));
|
|
137
152
|
var hasProperties = (isValue, options = { allowExtraProperties: false }) => {
|
|
138
153
|
const name = `{${recordToEntries(
|
|
@@ -163,190 +178,1567 @@ var doesExtend = (
|
|
|
163
178
|
/* alias for hasExactProperties with allowExtraProperties */
|
|
164
179
|
(isValue) => hasProperties(isValue, { allowExtraProperties: true })
|
|
165
180
|
);
|
|
181
|
+
var hasExactProperties = (
|
|
182
|
+
/* alias for hasProperties without allowExtraProperties */
|
|
183
|
+
(isValue) => hasProperties(isValue, { allowExtraProperties: false })
|
|
184
|
+
);
|
|
185
|
+
|
|
186
|
+
// ../../anvl/src/object/sprawl.ts
|
|
187
|
+
var sprawl = (tree, inspector) => {
|
|
188
|
+
const walk = (path, node) => {
|
|
189
|
+
const inspect = (path2, node2) => {
|
|
190
|
+
const result2 = inspector(path2, node2);
|
|
191
|
+
if (result2)
|
|
192
|
+
return result2;
|
|
193
|
+
return null;
|
|
194
|
+
};
|
|
195
|
+
const result = inspect(path, node);
|
|
196
|
+
if ((result == null ? void 0 : result.jobComplete) || (result == null ? void 0 : result.pathComplete)) {
|
|
197
|
+
return result;
|
|
198
|
+
}
|
|
199
|
+
const childEntries = Array.isArray(node) ? node.map((v, i) => [i, v]) : isPlainObject(node) ? Object.entries(node) : [];
|
|
200
|
+
for (const [k, v] of childEntries) {
|
|
201
|
+
const subResult = walk([...path, k], v);
|
|
202
|
+
if (subResult == null ? void 0 : subResult.jobComplete) {
|
|
203
|
+
return subResult;
|
|
204
|
+
}
|
|
205
|
+
}
|
|
206
|
+
return {};
|
|
207
|
+
};
|
|
208
|
+
walk([], tree);
|
|
209
|
+
};
|
|
166
210
|
|
|
167
211
|
// ../../anvl/src/object/index.ts
|
|
212
|
+
var treeShake = (shouldDiscard = isUndefined) => (obj) => {
|
|
213
|
+
const newObj = {};
|
|
214
|
+
const entries = Object.entries(obj);
|
|
215
|
+
entries.forEach(
|
|
216
|
+
([key, val]) => !shouldDiscard(val, key) ? newObj[key] = val : null
|
|
217
|
+
);
|
|
218
|
+
return newObj;
|
|
219
|
+
};
|
|
168
220
|
var delve = (obj, path) => {
|
|
169
221
|
const found = path.reduce((acc, key) => acc == null ? void 0 : acc[key], obj);
|
|
170
222
|
return found === void 0 ? new Error(`Not found`) : { found };
|
|
171
223
|
};
|
|
172
224
|
|
|
173
|
-
// ../../anvl/src/
|
|
174
|
-
var
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
225
|
+
// ../../anvl/src/refinement/refinery.ts
|
|
226
|
+
var Refinery = class {
|
|
227
|
+
constructor(supported) {
|
|
228
|
+
this.supported = supported;
|
|
229
|
+
}
|
|
230
|
+
refine(input) {
|
|
231
|
+
for (const [key, refiner] of Object.entries(this.supported)) {
|
|
232
|
+
try {
|
|
233
|
+
if (
|
|
234
|
+
// @ts-expect-error that's the point
|
|
235
|
+
refiner(input) === true && refiner !== Boolean
|
|
236
|
+
) {
|
|
237
|
+
return { type: key, data: input };
|
|
238
|
+
}
|
|
239
|
+
} catch (e) {
|
|
240
|
+
try {
|
|
241
|
+
if (input instanceof refiner) {
|
|
242
|
+
return { type: key, data: input };
|
|
243
|
+
}
|
|
244
|
+
} catch (e2) {
|
|
245
|
+
}
|
|
246
|
+
}
|
|
247
|
+
}
|
|
248
|
+
return null;
|
|
189
249
|
}
|
|
190
250
|
};
|
|
191
|
-
var
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
object: {},
|
|
209
|
-
string: ``
|
|
251
|
+
var jsonRefinery = new Refinery({
|
|
252
|
+
number: (input) => typeof input === `number`,
|
|
253
|
+
string: (input) => typeof input === `string`,
|
|
254
|
+
boolean: (input) => typeof input === `boolean`,
|
|
255
|
+
object: isPlainObject,
|
|
256
|
+
array: (input) => Array.isArray(input),
|
|
257
|
+
null: (input) => input === null
|
|
258
|
+
});
|
|
259
|
+
var discoverType = (input) => {
|
|
260
|
+
if (input === void 0) {
|
|
261
|
+
return `undefined`;
|
|
262
|
+
}
|
|
263
|
+
const refined = jsonRefinery.refine(input);
|
|
264
|
+
if (refined) {
|
|
265
|
+
return refined.type;
|
|
266
|
+
}
|
|
267
|
+
return Object.getPrototypeOf(input).constructor.name;
|
|
210
268
|
};
|
|
211
269
|
|
|
212
|
-
// ../../
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
270
|
+
// ../../anvl/src/tree/differ.ts
|
|
271
|
+
function diffNumber(a2, b2) {
|
|
272
|
+
const sign = a2 < b2 ? `+` : `-`;
|
|
273
|
+
return {
|
|
274
|
+
summary: `${sign}${Math.abs(a2 - b2)} (${a2} \u2192 ${b2})`
|
|
275
|
+
};
|
|
276
|
+
}
|
|
277
|
+
function diffString(a2, b2) {
|
|
278
|
+
const sign = a2.length < b2.length ? `+` : `-`;
|
|
279
|
+
return {
|
|
280
|
+
summary: `${sign}${Math.abs(a2.length - b2.length)} ("${a2}" \u2192 "${b2}")`
|
|
281
|
+
};
|
|
282
|
+
}
|
|
283
|
+
function diffBoolean(a2, b2) {
|
|
284
|
+
return {
|
|
285
|
+
summary: `${a2} \u2192 ${b2}`
|
|
286
|
+
};
|
|
287
|
+
}
|
|
288
|
+
function diffObject(a2, b2, recurse) {
|
|
289
|
+
let summary = ``;
|
|
290
|
+
const added = [];
|
|
291
|
+
const removed = [];
|
|
292
|
+
const changed = [];
|
|
293
|
+
sprawl(a2, (path, nodeA) => {
|
|
294
|
+
let key;
|
|
295
|
+
for (key of path) {
|
|
296
|
+
const nodeB = b2[key];
|
|
297
|
+
if (nodeB === void 0) {
|
|
298
|
+
removed.push([key, JSON.stringify(nodeA)]);
|
|
299
|
+
} else {
|
|
300
|
+
const delta = recurse(nodeA, nodeB);
|
|
301
|
+
if (delta.summary !== `No Change`) {
|
|
302
|
+
changed.push([key, delta]);
|
|
303
|
+
}
|
|
304
|
+
}
|
|
224
305
|
}
|
|
225
|
-
})
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
306
|
+
});
|
|
307
|
+
sprawl(b2, (path, nodeB) => {
|
|
308
|
+
let key;
|
|
309
|
+
for (key of path) {
|
|
310
|
+
const nodeA = a2[key];
|
|
311
|
+
if (nodeA === void 0) {
|
|
312
|
+
added.push([key, JSON.stringify(nodeB)]);
|
|
313
|
+
}
|
|
314
|
+
}
|
|
315
|
+
});
|
|
316
|
+
summary = `\uFF5E${changed.length} \uFF0B${added.length} \uFF0D${removed.length}`;
|
|
317
|
+
return {
|
|
318
|
+
summary,
|
|
319
|
+
added,
|
|
320
|
+
removed,
|
|
321
|
+
changed
|
|
322
|
+
};
|
|
323
|
+
}
|
|
324
|
+
function diffArray(a2, b2, recurse) {
|
|
325
|
+
return diffObject(a2, b2, recurse);
|
|
326
|
+
}
|
|
327
|
+
var Differ = class {
|
|
328
|
+
constructor(leafRefinery, treeRefinery, diffFunctions) {
|
|
329
|
+
this.leafRefinery = leafRefinery;
|
|
330
|
+
this.treeRefinery = treeRefinery;
|
|
331
|
+
this.leafDiffers = {};
|
|
332
|
+
this.treeDiffers = {};
|
|
333
|
+
for (const key of Object.keys(leafRefinery.supported)) {
|
|
334
|
+
const diffFunction = diffFunctions[key];
|
|
335
|
+
this.leafDiffers[key] = diffFunction;
|
|
336
|
+
}
|
|
337
|
+
for (const key of Object.keys(treeRefinery.supported)) {
|
|
338
|
+
const diffFunction = diffFunctions[key];
|
|
339
|
+
this.treeDiffers[key] = diffFunction;
|
|
340
|
+
}
|
|
341
|
+
}
|
|
342
|
+
diff(a2, b2) {
|
|
343
|
+
var _a2, _b;
|
|
344
|
+
if (a2 === b2) {
|
|
345
|
+
return { summary: `No Change` };
|
|
346
|
+
}
|
|
347
|
+
try {
|
|
348
|
+
if (JSON.stringify(a2) === JSON.stringify(b2)) {
|
|
349
|
+
return { summary: `No Change` };
|
|
350
|
+
}
|
|
351
|
+
} catch (thrown) {
|
|
352
|
+
console.error(`Error stringifying`, a2, b2);
|
|
353
|
+
}
|
|
354
|
+
const aRefined = (_a2 = this.leafRefinery.refine(a2)) != null ? _a2 : this.treeRefinery.refine(a2);
|
|
355
|
+
const bRefined = (_b = this.leafRefinery.refine(b2)) != null ? _b : this.treeRefinery.refine(b2);
|
|
356
|
+
if (aRefined !== null && bRefined !== null) {
|
|
357
|
+
if (aRefined.type === bRefined.type) {
|
|
358
|
+
if (aRefined.type in this.leafDiffers) {
|
|
359
|
+
const delta = this.leafDiffers[aRefined.type](
|
|
360
|
+
aRefined.data,
|
|
361
|
+
bRefined.data
|
|
362
|
+
);
|
|
363
|
+
return delta;
|
|
233
364
|
}
|
|
234
|
-
|
|
235
|
-
|
|
365
|
+
if (aRefined.type in this.treeDiffers) {
|
|
366
|
+
const delta = this.treeDiffers[aRefined.type](
|
|
367
|
+
aRefined.data,
|
|
368
|
+
bRefined.data,
|
|
369
|
+
(x, y) => this.diff(x, y)
|
|
370
|
+
);
|
|
371
|
+
return delta;
|
|
372
|
+
}
|
|
373
|
+
}
|
|
236
374
|
}
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
width: inputWidth
|
|
250
|
-
}, props.style)
|
|
251
|
-
}),
|
|
252
|
-
void 0,
|
|
253
|
-
false,
|
|
254
|
-
{
|
|
255
|
-
fileName: "../../hamr/src/react-elastic-input/ElasticInput.tsx",
|
|
256
|
-
lineNumber: 45,
|
|
257
|
-
columnNumber: 4
|
|
258
|
-
},
|
|
259
|
-
this
|
|
260
|
-
),
|
|
261
|
-
/* @__PURE__ */ (0, import_jsx_dev_runtime.jsxDEV)(
|
|
262
|
-
"span",
|
|
263
|
-
{
|
|
264
|
-
ref: spanRef,
|
|
265
|
-
style: {
|
|
266
|
-
padding: (_b = props.style) == null ? void 0 : _b.padding,
|
|
267
|
-
position: `absolute`,
|
|
268
|
-
visibility: `hidden`,
|
|
269
|
-
// color: `red`,
|
|
270
|
-
whiteSpace: `pre`,
|
|
271
|
-
fontFamily: ((_c = props.style) == null ? void 0 : _c.fontFamily) || `inherit`,
|
|
272
|
-
fontSize: ((_d = props.style) == null ? void 0 : _d.fontSize) || `inherit`
|
|
273
|
-
},
|
|
274
|
-
children: props.value
|
|
275
|
-
},
|
|
276
|
-
void 0,
|
|
277
|
-
false,
|
|
278
|
-
{
|
|
279
|
-
fileName: "../../hamr/src/react-elastic-input/ElasticInput.tsx",
|
|
280
|
-
lineNumber: 58,
|
|
281
|
-
columnNumber: 4
|
|
282
|
-
},
|
|
283
|
-
this
|
|
284
|
-
)
|
|
285
|
-
] }, void 0, true, {
|
|
286
|
-
fileName: "../../hamr/src/react-elastic-input/ElasticInput.tsx",
|
|
287
|
-
lineNumber: 44,
|
|
288
|
-
columnNumber: 3
|
|
289
|
-
}, this);
|
|
290
|
-
});
|
|
375
|
+
const typeA = discoverType(a2);
|
|
376
|
+
const typeB = discoverType(b2);
|
|
377
|
+
if (typeA === typeB) {
|
|
378
|
+
return {
|
|
379
|
+
summary: `${typeA} \u2192 ${typeB}`
|
|
380
|
+
};
|
|
381
|
+
}
|
|
382
|
+
return {
|
|
383
|
+
summary: `Type change: ${typeA} \u2192 ${typeB}`
|
|
384
|
+
};
|
|
385
|
+
}
|
|
386
|
+
};
|
|
291
387
|
|
|
292
|
-
// ../../
|
|
293
|
-
var
|
|
294
|
-
var import_react2 = require("react");
|
|
388
|
+
// ../../anvl/src/string/capitalize.ts
|
|
389
|
+
var capitalize = (str) => str[0].toUpperCase() + str.slice(1);
|
|
295
390
|
|
|
296
|
-
//
|
|
297
|
-
var
|
|
391
|
+
// ../src/internal/atom-internal.ts
|
|
392
|
+
var import_hamt_plus5 = __toESM(require("hamt_plus"));
|
|
298
393
|
|
|
299
|
-
//
|
|
300
|
-
var
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
const
|
|
305
|
-
return
|
|
394
|
+
// ../src/internal/get.ts
|
|
395
|
+
var import_hamt_plus = __toESM(require("hamt_plus"));
|
|
396
|
+
var computeSelectorState = (selector) => selector.get();
|
|
397
|
+
function lookup(key, store) {
|
|
398
|
+
const core = target(store);
|
|
399
|
+
const type = import_hamt_plus.default.has(key, core.atoms) ? `atom` : import_hamt_plus.default.has(key, core.selectors) ? `selector` : `readonly_selector`;
|
|
400
|
+
return { key, type };
|
|
306
401
|
}
|
|
307
|
-
|
|
308
|
-
var
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
402
|
+
function withdraw(token, store) {
|
|
403
|
+
var _a2, _b, _c, _d, _e;
|
|
404
|
+
const core = target(store);
|
|
405
|
+
return (_e = (_d = (_c = (_b = (_a2 = import_hamt_plus.default.get(token.key, core.atoms)) != null ? _a2 : import_hamt_plus.default.get(token.key, core.selectors)) != null ? _b : import_hamt_plus.default.get(token.key, core.readonlySelectors)) != null ? _c : import_hamt_plus.default.get(token.key, core.transactions)) != null ? _d : import_hamt_plus.default.get(token.key, core.timelines)) != null ? _e : null;
|
|
406
|
+
}
|
|
407
|
+
function deposit(state) {
|
|
408
|
+
return __spreadValues({
|
|
409
|
+
key: state.key,
|
|
410
|
+
type: state.type
|
|
411
|
+
}, `family` in state && { family: state.family });
|
|
412
|
+
}
|
|
413
|
+
var getState__INTERNAL = (state, store = IMPLICIT.STORE) => {
|
|
414
|
+
var _a2, _b, _c;
|
|
415
|
+
if (isValueCached(state.key, store)) {
|
|
416
|
+
(_a2 = store.config.logger) == null ? void 0 : _a2.info(`>> read "${state.key}"`);
|
|
417
|
+
return readCachedValue(state.key, store);
|
|
418
|
+
}
|
|
419
|
+
if (state.type !== `atom`) {
|
|
420
|
+
(_b = store.config.logger) == null ? void 0 : _b.info(`-> calc "${state.key}"`);
|
|
421
|
+
return computeSelectorState(state);
|
|
422
|
+
}
|
|
423
|
+
(_c = store.config.logger) == null ? void 0 : _c.error(
|
|
424
|
+
`Attempted to get atom "${state.key}", which was never initialized in store "${store.config.name}".`
|
|
425
|
+
);
|
|
426
|
+
return state.default;
|
|
314
427
|
};
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
return
|
|
428
|
+
|
|
429
|
+
// ../src/internal/is-default.ts
|
|
430
|
+
var isAtomDefault = (key, store = IMPLICIT.STORE) => {
|
|
431
|
+
const core = target(store);
|
|
432
|
+
return core.atomsThatAreDefault.has(key);
|
|
320
433
|
};
|
|
321
|
-
var
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
decimalPlaces: 100,
|
|
325
|
-
nullable: true
|
|
434
|
+
var markAtomAsDefault = (key, store = IMPLICIT.STORE) => {
|
|
435
|
+
const core = target(store);
|
|
436
|
+
core.atomsThatAreDefault = new Set(core.atomsThatAreDefault).add(key);
|
|
326
437
|
};
|
|
327
|
-
var
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
const { max, min, decimalPlaces } = __spreadValues(__spreadValues({}, DEFAULT_NUMBER_CONSTRAINTS), constraints);
|
|
332
|
-
const constrained = (0, import_function7.pipe)(
|
|
333
|
-
input != null ? input : 0,
|
|
334
|
-
clampInto(min, max),
|
|
335
|
-
(n) => decimalPlaces ? round(n, decimalPlaces) : n
|
|
336
|
-
);
|
|
337
|
-
return constrained;
|
|
438
|
+
var markAtomAsNotDefault = (key, store = IMPLICIT.STORE) => {
|
|
439
|
+
const core = target(store);
|
|
440
|
+
core.atomsThatAreDefault = new Set(target(store).atomsThatAreDefault);
|
|
441
|
+
core.atomsThatAreDefault.delete(key);
|
|
338
442
|
};
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
443
|
+
|
|
444
|
+
// ../src/internal/operation.ts
|
|
445
|
+
var import_hamt_plus3 = __toESM(require("hamt_plus"));
|
|
446
|
+
|
|
447
|
+
// ../src/internal/store.ts
|
|
448
|
+
var import_hamt_plus2 = __toESM(require("hamt_plus"));
|
|
449
|
+
|
|
450
|
+
// ../../anvl/src/join/core-relation-data.ts
|
|
451
|
+
var import_string = require("fp-ts/string");
|
|
452
|
+
|
|
453
|
+
// ../../anvl/src/refinement/index.ts
|
|
454
|
+
var canExist = (_) => true;
|
|
455
|
+
var cannotExist = (_) => false;
|
|
456
|
+
var isLiteral = (value) => (input) => input === value;
|
|
457
|
+
var isWithin = (args) => (input) => args.includes(input);
|
|
458
|
+
var couldBe = (isTypeA, logging = false, refinements = [isTypeA]) => {
|
|
459
|
+
const name = `(${refinements.map((r) => r.name || `anon`).join(` | `)})`;
|
|
460
|
+
const _ = {
|
|
461
|
+
[name]: (input) => refinements.some(
|
|
462
|
+
(refinement) => {
|
|
463
|
+
var _a2;
|
|
464
|
+
return logging && console.log(
|
|
465
|
+
refinements.map((r) => r.name || `anon`).join(` | `),
|
|
466
|
+
`>`,
|
|
467
|
+
(_a2 = refinement.name) != null ? _a2 : `anon`,
|
|
468
|
+
`:`,
|
|
469
|
+
refinement(input)
|
|
470
|
+
), refinement(input);
|
|
471
|
+
}
|
|
472
|
+
)
|
|
473
|
+
};
|
|
474
|
+
const checkTypes = Object.assign(_[name], {
|
|
475
|
+
or: (isTypeB) => couldBe(isTypeB, logging, [...refinements, isTypeB])
|
|
476
|
+
});
|
|
477
|
+
return checkTypes;
|
|
344
478
|
};
|
|
345
|
-
var
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
479
|
+
var isUnion = couldBe(cannotExist);
|
|
480
|
+
var mustBe = (isTypeA, logging = false, refinements = [isTypeA]) => {
|
|
481
|
+
const name = `(${refinements.map((r) => r.name || `anon`).join(` & `)})`;
|
|
482
|
+
const _ = {
|
|
483
|
+
[name]: (input) => refinements.every(
|
|
484
|
+
(refinement) => (logging && console.log(
|
|
485
|
+
refinements.map((r) => r.name || `anon`).join(` & `),
|
|
486
|
+
`>`,
|
|
487
|
+
refinement.name || `anon`,
|
|
488
|
+
`:`,
|
|
489
|
+
refinement(input)
|
|
490
|
+
), refinement(input))
|
|
491
|
+
)
|
|
492
|
+
};
|
|
493
|
+
const checkTypes = Object.assign(_[name], {
|
|
494
|
+
and: (isTypeB) => mustBe(isTypeB, logging, [...refinements, isTypeB])
|
|
495
|
+
});
|
|
496
|
+
return checkTypes;
|
|
497
|
+
};
|
|
498
|
+
var isIntersection = mustBe(canExist);
|
|
499
|
+
|
|
500
|
+
// ../../anvl/src/join/core-relation-data.ts
|
|
501
|
+
var RELATION_TYPES = [`1:1`, `1:n`, `n:n`];
|
|
502
|
+
var isRelationType = (x) => RELATION_TYPES.includes(x);
|
|
503
|
+
var EMPTY_RELATION_DATA = {
|
|
504
|
+
contents: {},
|
|
505
|
+
relations: {},
|
|
506
|
+
relationType: `n:n`,
|
|
507
|
+
a: `from`,
|
|
508
|
+
b: `to`
|
|
509
|
+
};
|
|
510
|
+
var isRelationData = ({
|
|
511
|
+
from: a2 = `from`,
|
|
512
|
+
to: b2 = `to`,
|
|
513
|
+
isContent
|
|
514
|
+
} = {}) => (input) => {
|
|
515
|
+
return hasExactProperties({
|
|
516
|
+
contents: isContent ? isRecord(import_string.isString, isContent) : hasExactProperties({}),
|
|
517
|
+
relations: isRecord(import_string.isString, isArray(import_string.isString)),
|
|
518
|
+
relationType: isRelationType,
|
|
519
|
+
a: isLiteral(a2),
|
|
520
|
+
b: isLiteral(b2)
|
|
521
|
+
})(input);
|
|
522
|
+
};
|
|
523
|
+
|
|
524
|
+
// ../../anvl/src/join/get-related-ids.ts
|
|
525
|
+
var getRelatedIds = (relationMap, id) => {
|
|
526
|
+
var _a2;
|
|
527
|
+
return (_a2 = relationMap.relations[id]) != null ? _a2 : [];
|
|
528
|
+
};
|
|
529
|
+
var getRelatedId = (relationMap, id) => {
|
|
530
|
+
const relations = getRelatedIds(relationMap, id);
|
|
531
|
+
if (relations.length > 1) {
|
|
532
|
+
console.warn(
|
|
533
|
+
`entry with id ${id} was not expected to have multiple relations`
|
|
534
|
+
);
|
|
535
|
+
}
|
|
536
|
+
return relations[0];
|
|
537
|
+
};
|
|
538
|
+
|
|
539
|
+
// ../../anvl/src/join/make-json-interface.ts
|
|
540
|
+
var makeJsonInterface = (join, ...params) => {
|
|
541
|
+
const isContent = params[0];
|
|
542
|
+
const { a: a2, b: b2 } = join;
|
|
543
|
+
const options = {
|
|
544
|
+
from: a2,
|
|
545
|
+
to: b2,
|
|
546
|
+
isContent
|
|
547
|
+
};
|
|
548
|
+
return {
|
|
549
|
+
toJson: (join2) => join2.toJSON(),
|
|
550
|
+
fromJson: (json) => Join.fromJSON(json, options)
|
|
551
|
+
};
|
|
552
|
+
};
|
|
553
|
+
|
|
554
|
+
// ../../anvl/src/join/relation-contents.ts
|
|
555
|
+
var import_function6 = require("fp-ts/function");
|
|
556
|
+
|
|
557
|
+
// ../../anvl/src/join/relation-record.ts
|
|
558
|
+
var getRelationEntries = (relationMap, idA) => getRelatedIds(relationMap, idA).map((idB) => [
|
|
559
|
+
idB,
|
|
560
|
+
getContent(relationMap, idA, idB)
|
|
561
|
+
]);
|
|
562
|
+
var getRelationRecord = (relationMap, id) => Object.fromEntries(getRelationEntries(relationMap, id));
|
|
563
|
+
|
|
564
|
+
// ../../anvl/src/join/remove-relation.ts
|
|
565
|
+
var import_function5 = require("fp-ts/function");
|
|
566
|
+
var import_string2 = require("fp-ts/string");
|
|
567
|
+
|
|
568
|
+
// ../../anvl/src/string/split.ts
|
|
569
|
+
var split = (separator) => (str) => str.split(separator);
|
|
570
|
+
|
|
571
|
+
// ../../anvl/src/join/remove-relation.ts
|
|
572
|
+
var removeSpecific = (current, idA, idB) => {
|
|
573
|
+
const isIdForRemoval = isOneOf(idA, idB);
|
|
574
|
+
return __spreadProps(__spreadValues({}, current), {
|
|
575
|
+
relations: (0, import_function5.pipe)(
|
|
576
|
+
current.relations,
|
|
577
|
+
recordToEntries,
|
|
578
|
+
map(([id, relations]) => [
|
|
579
|
+
id,
|
|
580
|
+
isIdForRemoval(id) ? relations.filter((relation) => !isIdForRemoval(relation)) : relations
|
|
581
|
+
]),
|
|
582
|
+
entriesToRecord,
|
|
583
|
+
treeShake(isEmptyArray)
|
|
584
|
+
),
|
|
585
|
+
contents: (0, import_function5.pipe)(
|
|
586
|
+
current.contents,
|
|
587
|
+
treeShake(
|
|
588
|
+
(_, key) => (0, import_string2.isString)(key) && (0, import_function5.pipe)(key, split(`/`), comprises([idA, idB]))
|
|
589
|
+
)
|
|
590
|
+
)
|
|
591
|
+
});
|
|
592
|
+
};
|
|
593
|
+
var removeAll = (current, idToRemove) => {
|
|
594
|
+
const next = __spreadProps(__spreadValues({}, current), {
|
|
595
|
+
relations: (0, import_function5.pipe)(
|
|
596
|
+
current.relations,
|
|
597
|
+
recordToEntries,
|
|
598
|
+
map(([id, relations]) => [
|
|
599
|
+
id,
|
|
600
|
+
relations.filter((relation) => relation !== idToRemove)
|
|
601
|
+
]),
|
|
602
|
+
entriesToRecord,
|
|
603
|
+
treeShake((val, key) => key === idToRemove || isEmptyArray(val))
|
|
604
|
+
),
|
|
605
|
+
contents: (0, import_function5.pipe)(
|
|
606
|
+
current.contents,
|
|
607
|
+
treeShake(
|
|
608
|
+
(_, key) => (0, import_string2.isString)(key) && key.split(`/`).includes(idToRemove)
|
|
609
|
+
)
|
|
610
|
+
)
|
|
611
|
+
});
|
|
612
|
+
return next;
|
|
613
|
+
};
|
|
614
|
+
var removeRelation = (current, relation) => {
|
|
615
|
+
const idA = relation[current.a];
|
|
616
|
+
const idB = relation[current.b];
|
|
617
|
+
return idB ? removeSpecific(current, idA, idB) : removeAll(current, idA);
|
|
618
|
+
};
|
|
619
|
+
|
|
620
|
+
// ../../anvl/src/join/set-relation.ts
|
|
621
|
+
var setManyToMany = (map2, idA, idB, ...rest) => {
|
|
622
|
+
var _a2, _b;
|
|
623
|
+
const next = __spreadProps(__spreadValues({}, map2), {
|
|
624
|
+
relations: __spreadProps(__spreadValues({}, map2.relations), {
|
|
625
|
+
[idA]: addTo((_a2 = map2.relations[idA]) != null ? _a2 : [])(idB),
|
|
626
|
+
[idB]: addTo((_b = map2.relations[idB]) != null ? _b : [])(idA)
|
|
627
|
+
})
|
|
628
|
+
});
|
|
629
|
+
const content = rest[0];
|
|
630
|
+
return content ? setContent(next, idA, idB, content) : next;
|
|
631
|
+
};
|
|
632
|
+
var removeEmpties = treeShake(isEmptyArray);
|
|
633
|
+
var set1ToMany = (current, leaderId, followerId, ...rest) => {
|
|
634
|
+
var _a2;
|
|
635
|
+
const relations = __spreadValues({}, current.relations);
|
|
636
|
+
const prevLeaderId = getRelatedId(current, followerId);
|
|
637
|
+
const next = __spreadProps(__spreadValues({}, current), {
|
|
638
|
+
relations: removeEmpties(__spreadProps(__spreadValues(__spreadValues({}, relations), prevLeaderId && prevLeaderId !== leaderId && {
|
|
639
|
+
[prevLeaderId]: relations[prevLeaderId].filter(
|
|
640
|
+
(id) => id !== followerId
|
|
641
|
+
)
|
|
642
|
+
}), {
|
|
643
|
+
[followerId]: [leaderId],
|
|
644
|
+
[leaderId]: addTo((_a2 = relations[leaderId]) != null ? _a2 : [])(followerId)
|
|
645
|
+
}))
|
|
646
|
+
});
|
|
647
|
+
const content = rest[0];
|
|
648
|
+
return content ? setContent(next, leaderId, followerId, content) : next;
|
|
649
|
+
};
|
|
650
|
+
var set1To1 = (current, wifeId, husbandId, ...rest) => {
|
|
651
|
+
const prevWifeId = getRelatedId(current, husbandId);
|
|
652
|
+
const prevHusbandId = getRelatedId(current, wifeId);
|
|
653
|
+
const next = __spreadProps(__spreadValues({}, current), {
|
|
654
|
+
relations: removeEmpties(__spreadProps(__spreadValues(__spreadValues(__spreadValues({}, current.relations), prevWifeId && { [prevWifeId]: [] }), prevHusbandId && { [prevHusbandId]: [] }), {
|
|
655
|
+
[wifeId]: [husbandId],
|
|
656
|
+
[husbandId]: [wifeId]
|
|
657
|
+
}))
|
|
658
|
+
});
|
|
659
|
+
const content = rest[0];
|
|
660
|
+
return content ? setContent(next, wifeId, husbandId, content) : next;
|
|
661
|
+
};
|
|
662
|
+
var setRelationWithContent = (current, relation, ...rest) => {
|
|
663
|
+
const { [current.a]: idA, [current.b]: idB } = relation;
|
|
664
|
+
switch (current.relationType) {
|
|
665
|
+
case `1:1`:
|
|
666
|
+
return set1To1(current, idA, idB, ...rest);
|
|
667
|
+
case `1:n`:
|
|
668
|
+
return set1ToMany(current, idA, idB, ...rest);
|
|
669
|
+
case `n:n`:
|
|
670
|
+
return setManyToMany(current, idA, idB, ...rest);
|
|
671
|
+
}
|
|
672
|
+
};
|
|
673
|
+
|
|
674
|
+
// ../../anvl/src/join/relation-contents.ts
|
|
675
|
+
var makeContentId = (idA, idB) => [idA, idB].sort().join(`/`);
|
|
676
|
+
var getContent = (relationMap, idA, idB) => relationMap.contents[makeContentId(idA, idB)];
|
|
677
|
+
var setContent = (map2, idA, idB, content) => __spreadProps(__spreadValues({}, map2), {
|
|
678
|
+
contents: __spreadProps(__spreadValues({}, map2.contents), {
|
|
679
|
+
[makeContentId(idA, idB)]: content
|
|
680
|
+
})
|
|
681
|
+
});
|
|
682
|
+
var getRelations = (relationMap, id) => getRelationEntries(relationMap, id).map(
|
|
683
|
+
([id2, content]) => __spreadValues({
|
|
684
|
+
id: id2
|
|
685
|
+
}, content)
|
|
686
|
+
);
|
|
687
|
+
var setRelations = (current, subject, relations) => {
|
|
688
|
+
const idA = subject[current.a];
|
|
689
|
+
const idB = subject[current.b];
|
|
690
|
+
return (0, import_function6.pipe)(
|
|
691
|
+
current,
|
|
692
|
+
(relationData) => {
|
|
693
|
+
const relatedIds = getRelatedIds(current, idA);
|
|
694
|
+
const removedIds = relatedIds.filter(
|
|
695
|
+
(id) => !relations.some((r) => r.id === id)
|
|
696
|
+
);
|
|
697
|
+
let step = relationData;
|
|
698
|
+
for (const id of removedIds) {
|
|
699
|
+
const remove = {
|
|
700
|
+
[current.a]: idA != null ? idA : id,
|
|
701
|
+
[current.b]: idB != null ? idB : id
|
|
702
|
+
};
|
|
703
|
+
step = removeRelation(step, remove);
|
|
704
|
+
}
|
|
705
|
+
return step;
|
|
706
|
+
},
|
|
707
|
+
(relationData) => {
|
|
708
|
+
let step = relationData;
|
|
709
|
+
for (const _a2 of relations) {
|
|
710
|
+
const _b = _a2, { id } = _b, rest = __objRest(_b, ["id"]);
|
|
711
|
+
const content = isEmptyObject(rest) ? void 0 : rest;
|
|
712
|
+
step = setRelationWithContent(
|
|
713
|
+
step,
|
|
714
|
+
{ [current.a]: idA != null ? idA : id, [current.b]: idB != null ? idB : id },
|
|
715
|
+
// @ts-expect-error hacky
|
|
716
|
+
content
|
|
717
|
+
);
|
|
718
|
+
}
|
|
719
|
+
return step;
|
|
720
|
+
},
|
|
721
|
+
(relationData) => {
|
|
722
|
+
const newlyOrderedIds = relations.map((r) => r.id);
|
|
723
|
+
return __spreadProps(__spreadValues({}, relationData), {
|
|
724
|
+
relations: __spreadProps(__spreadValues({}, relationData.relations), {
|
|
725
|
+
[idA != null ? idA : idB]: newlyOrderedIds
|
|
726
|
+
})
|
|
727
|
+
});
|
|
728
|
+
}
|
|
729
|
+
);
|
|
730
|
+
};
|
|
731
|
+
|
|
732
|
+
// ../../anvl/src/join/index.ts
|
|
733
|
+
var Join = class _Join {
|
|
734
|
+
constructor(json) {
|
|
735
|
+
this.a = `from`;
|
|
736
|
+
this.b = `to`;
|
|
737
|
+
this.makeJsonInterface = (...params) => {
|
|
738
|
+
return makeJsonInterface(this, ...params);
|
|
739
|
+
};
|
|
740
|
+
Object.assign(this, __spreadProps(__spreadValues(__spreadValues({}, EMPTY_RELATION_DATA), json), {
|
|
741
|
+
makeJsonInterface: this.makeJsonInterface
|
|
742
|
+
}));
|
|
743
|
+
}
|
|
744
|
+
toJSON() {
|
|
745
|
+
return {
|
|
746
|
+
relationType: this.relationType,
|
|
747
|
+
relations: this.relations,
|
|
748
|
+
contents: this.contents,
|
|
749
|
+
a: this.a,
|
|
750
|
+
b: this.b
|
|
751
|
+
};
|
|
752
|
+
}
|
|
753
|
+
static fromJSON(json, options) {
|
|
754
|
+
const isValid = isRelationData(options)(json);
|
|
755
|
+
if (isValid) {
|
|
756
|
+
return new _Join(json);
|
|
757
|
+
}
|
|
758
|
+
throw new Error(
|
|
759
|
+
`Saved JSON for this Join is invalid: ${JSON.stringify(json)}`
|
|
760
|
+
);
|
|
761
|
+
}
|
|
762
|
+
from(newA) {
|
|
763
|
+
return new _Join(__spreadProps(__spreadValues({}, this), { a: newA }));
|
|
764
|
+
}
|
|
765
|
+
to(newB) {
|
|
766
|
+
return new _Join(__spreadProps(__spreadValues({}, this), { b: newB }));
|
|
767
|
+
}
|
|
768
|
+
getRelatedId(id) {
|
|
769
|
+
return getRelatedId(this, id);
|
|
770
|
+
}
|
|
771
|
+
getRelatedIds(id) {
|
|
772
|
+
return getRelatedIds(this, id);
|
|
773
|
+
}
|
|
774
|
+
getContent(idA, idB) {
|
|
775
|
+
return getContent(this, idA, idB);
|
|
776
|
+
}
|
|
777
|
+
getRelationEntries(id) {
|
|
778
|
+
return getRelationEntries(this, id);
|
|
779
|
+
}
|
|
780
|
+
getRelationRecord(id) {
|
|
781
|
+
return getRelationRecord(this, id);
|
|
782
|
+
}
|
|
783
|
+
getRelation(id) {
|
|
784
|
+
return getRelations(this, id)[0];
|
|
785
|
+
}
|
|
786
|
+
getRelations(id) {
|
|
787
|
+
return getRelations(this, id);
|
|
788
|
+
}
|
|
789
|
+
setRelations(subject, relations) {
|
|
790
|
+
return new _Join(setRelations(this, subject, relations));
|
|
791
|
+
}
|
|
792
|
+
set(relation, ...rest) {
|
|
793
|
+
return new _Join(setRelationWithContent(this, relation, ...rest));
|
|
794
|
+
}
|
|
795
|
+
remove(relation) {
|
|
796
|
+
return new _Join(
|
|
797
|
+
removeRelation(this, relation)
|
|
798
|
+
);
|
|
799
|
+
}
|
|
800
|
+
};
|
|
801
|
+
|
|
802
|
+
// ../src/internal/store.ts
|
|
803
|
+
var createStore = (name, store = null) => {
|
|
804
|
+
var _a2;
|
|
805
|
+
const copiedStore = __spreadProps(__spreadValues({}, store != null ? store : (() => ({
|
|
806
|
+
atomsThatAreDefault: /* @__PURE__ */ new Set(),
|
|
807
|
+
selectorAtoms: new Join({ relationType: `n:n` }).from(`selectorKey`).to(`atomKey`),
|
|
808
|
+
selectorGraph: new Join({ relationType: `n:n` }),
|
|
809
|
+
valueMap: import_hamt_plus2.default.make()
|
|
810
|
+
}))()), {
|
|
811
|
+
atoms: import_hamt_plus2.default.make(),
|
|
812
|
+
readonlySelectors: import_hamt_plus2.default.make(),
|
|
813
|
+
selectors: import_hamt_plus2.default.make(),
|
|
814
|
+
transactions: import_hamt_plus2.default.make(),
|
|
815
|
+
timelines: import_hamt_plus2.default.make(),
|
|
816
|
+
timelineAtoms: new Join({ relationType: `1:n` }).from(`timelineKey`).to(`atomKey`),
|
|
817
|
+
subject: {
|
|
818
|
+
atomCreation: new Subject(),
|
|
819
|
+
selectorCreation: new Subject(),
|
|
820
|
+
transactionCreation: new Subject(),
|
|
821
|
+
timelineCreation: new Subject(),
|
|
822
|
+
operationStatus: new Subject()
|
|
823
|
+
},
|
|
824
|
+
operation: __spreadValues({
|
|
825
|
+
open: false
|
|
826
|
+
}, store == null ? void 0 : store.operation),
|
|
827
|
+
transactionStatus: __spreadValues({
|
|
828
|
+
phase: `idle`
|
|
829
|
+
}, store == null ? void 0 : store.transactionStatus),
|
|
830
|
+
config: __spreadProps(__spreadValues({
|
|
831
|
+
logger: __spreadValues(__spreadProps(__spreadValues({}, console), {
|
|
832
|
+
info: doNothing
|
|
833
|
+
}), (_a2 = store == null ? void 0 : store.config) == null ? void 0 : _a2.logger),
|
|
834
|
+
logger__INTERNAL: console
|
|
835
|
+
}, store == null ? void 0 : store.config), {
|
|
836
|
+
name
|
|
837
|
+
})
|
|
838
|
+
});
|
|
839
|
+
store == null ? void 0 : store.atoms.forEach((atom2) => {
|
|
840
|
+
const copiedAtom = __spreadProps(__spreadValues({}, atom2), { subject: new Subject() });
|
|
841
|
+
copiedStore.atoms = import_hamt_plus2.default.set(atom2.key, copiedAtom, copiedStore.atoms);
|
|
842
|
+
});
|
|
843
|
+
store == null ? void 0 : store.readonlySelectors.forEach((selector) => {
|
|
844
|
+
selector.install(copiedStore);
|
|
845
|
+
});
|
|
846
|
+
store == null ? void 0 : store.selectors.forEach((selector) => {
|
|
847
|
+
selector.install(copiedStore);
|
|
848
|
+
});
|
|
849
|
+
store == null ? void 0 : store.transactions.forEach((tx) => {
|
|
850
|
+
tx.install(copiedStore);
|
|
851
|
+
});
|
|
852
|
+
store == null ? void 0 : store.timelines.forEach((timeline) => {
|
|
853
|
+
timeline.install(copiedStore);
|
|
854
|
+
});
|
|
855
|
+
return copiedStore;
|
|
856
|
+
};
|
|
857
|
+
var IMPLICIT = {
|
|
858
|
+
STORE_INTERNAL: void 0,
|
|
859
|
+
get STORE() {
|
|
860
|
+
var _a2;
|
|
861
|
+
return (_a2 = this.STORE_INTERNAL) != null ? _a2 : this.STORE_INTERNAL = createStore(`DEFAULT`);
|
|
862
|
+
}
|
|
863
|
+
};
|
|
864
|
+
|
|
865
|
+
// ../src/internal/operation.ts
|
|
866
|
+
var openOperation = (token, store) => {
|
|
867
|
+
var _a2, _b;
|
|
868
|
+
const core = target(store);
|
|
869
|
+
if (core.operation.open) {
|
|
870
|
+
(_a2 = store.config.logger) == null ? void 0 : _a2.error(
|
|
871
|
+
`\u274C failed to setState to "${token.key}" during a setState for "${core.operation.token.key}"`
|
|
872
|
+
);
|
|
873
|
+
throw Symbol(`violation`);
|
|
874
|
+
}
|
|
875
|
+
core.operation = {
|
|
876
|
+
open: true,
|
|
877
|
+
done: /* @__PURE__ */ new Set(),
|
|
878
|
+
prev: store.valueMap,
|
|
879
|
+
time: Date.now(),
|
|
880
|
+
token
|
|
881
|
+
};
|
|
882
|
+
(_b = store.config.logger) == null ? void 0 : _b.info(
|
|
883
|
+
`\u2B55 operation start from "${token.key}" in store "${store.config.name}"`
|
|
884
|
+
);
|
|
885
|
+
};
|
|
886
|
+
var closeOperation = (store) => {
|
|
887
|
+
var _a2;
|
|
888
|
+
const core = target(store);
|
|
889
|
+
core.operation = { open: false };
|
|
890
|
+
(_a2 = store.config.logger) == null ? void 0 : _a2.info(`\u{1F534} operation done`);
|
|
891
|
+
store.subject.operationStatus.next(core.operation);
|
|
892
|
+
};
|
|
893
|
+
var isDone = (key, store = IMPLICIT.STORE) => {
|
|
894
|
+
var _a2;
|
|
895
|
+
const core = target(store);
|
|
896
|
+
if (!core.operation.open) {
|
|
897
|
+
(_a2 = store.config.logger) == null ? void 0 : _a2.warn(
|
|
898
|
+
`isDone called outside of an operation. This is probably a bug.`
|
|
899
|
+
);
|
|
900
|
+
return true;
|
|
901
|
+
}
|
|
902
|
+
return core.operation.done.has(key);
|
|
903
|
+
};
|
|
904
|
+
var markDone = (key, store = IMPLICIT.STORE) => {
|
|
905
|
+
var _a2;
|
|
906
|
+
const core = target(store);
|
|
907
|
+
if (!core.operation.open) {
|
|
908
|
+
(_a2 = store.config.logger) == null ? void 0 : _a2.warn(
|
|
909
|
+
`markDone called outside of an operation. This is probably a bug.`
|
|
910
|
+
);
|
|
911
|
+
return;
|
|
912
|
+
}
|
|
913
|
+
core.operation.done.add(key);
|
|
914
|
+
};
|
|
915
|
+
var recallState = (state, store = IMPLICIT.STORE) => {
|
|
916
|
+
var _a2;
|
|
917
|
+
const core = target(store);
|
|
918
|
+
if (!core.operation.open) {
|
|
919
|
+
(_a2 = store.config.logger) == null ? void 0 : _a2.warn(
|
|
920
|
+
`recall called outside of an operation. This is probably a bug.`
|
|
921
|
+
);
|
|
922
|
+
return import_hamt_plus3.default.get(state.key, core.valueMap);
|
|
923
|
+
}
|
|
924
|
+
return import_hamt_plus3.default.get(state.key, core.operation.prev);
|
|
925
|
+
};
|
|
926
|
+
var cacheValue = (key, value, store = IMPLICIT.STORE) => {
|
|
927
|
+
const core = target(store);
|
|
928
|
+
core.valueMap = import_hamt_plus3.default.set(key, value, core.valueMap);
|
|
929
|
+
};
|
|
930
|
+
var evictCachedValue = (key, store = IMPLICIT.STORE) => {
|
|
931
|
+
const core = target(store);
|
|
932
|
+
core.valueMap = import_hamt_plus3.default.remove(key, core.valueMap);
|
|
933
|
+
};
|
|
934
|
+
var readCachedValue = (key, store = IMPLICIT.STORE) => import_hamt_plus3.default.get(key, target(store).valueMap);
|
|
935
|
+
var isValueCached = (key, store = IMPLICIT.STORE) => import_hamt_plus3.default.has(key, target(store).valueMap);
|
|
936
|
+
var hasKeyBeenUsed = (key, store = IMPLICIT.STORE) => {
|
|
937
|
+
const core = target(store);
|
|
938
|
+
return import_hamt_plus3.default.has(key, core.atoms) || import_hamt_plus3.default.has(key, core.selectors) || import_hamt_plus3.default.has(key, core.readonlySelectors);
|
|
939
|
+
};
|
|
940
|
+
|
|
941
|
+
// ../src/internal/transaction-internal.ts
|
|
942
|
+
var import_hamt_plus4 = __toESM(require("hamt_plus"));
|
|
943
|
+
var target = (store = IMPLICIT.STORE) => store.transactionStatus.phase === `building` ? store.transactionStatus.core : store;
|
|
944
|
+
|
|
945
|
+
// ../src/internal/atom-internal.ts
|
|
946
|
+
function atom__INTERNAL(options, family, store = IMPLICIT.STORE) {
|
|
947
|
+
var _a2, _b, _c;
|
|
948
|
+
const core = target(store);
|
|
949
|
+
if (hasKeyBeenUsed(options.key, store)) {
|
|
950
|
+
(_b = (_a2 = store.config.logger) == null ? void 0 : _a2.error) == null ? void 0 : _b.call(
|
|
951
|
+
_a2,
|
|
952
|
+
`Key "${options.key}" already exists in the store.`
|
|
953
|
+
);
|
|
954
|
+
return deposit(core.atoms.get(options.key));
|
|
955
|
+
}
|
|
956
|
+
const subject = new Subject();
|
|
957
|
+
const newAtom = __spreadValues(__spreadProps(__spreadValues({}, options), {
|
|
958
|
+
subject,
|
|
959
|
+
type: `atom`
|
|
960
|
+
}), family && { family });
|
|
961
|
+
const initialValue = options.default instanceof Function ? options.default() : options.default;
|
|
962
|
+
core.atoms = import_hamt_plus5.default.set(newAtom.key, newAtom, core.atoms);
|
|
963
|
+
markAtomAsDefault(options.key, store);
|
|
964
|
+
cacheValue(options.key, initialValue, store);
|
|
965
|
+
const token = deposit(newAtom);
|
|
966
|
+
(_c = options.effects) == null ? void 0 : _c.forEach(
|
|
967
|
+
(effect) => effect({
|
|
968
|
+
setSelf: (next) => setState(token, next, store),
|
|
969
|
+
onSet: (handle) => subscribe(token, handle, store)
|
|
970
|
+
})
|
|
971
|
+
);
|
|
972
|
+
store.subject.atomCreation.next(token);
|
|
973
|
+
return token;
|
|
974
|
+
}
|
|
975
|
+
|
|
976
|
+
// ../../anvl/src/json/index.ts
|
|
977
|
+
var import_function9 = require("fp-ts/function");
|
|
978
|
+
|
|
979
|
+
// ../../anvl/src/json/refine.ts
|
|
980
|
+
var import_boolean = require("fp-ts/boolean");
|
|
981
|
+
var import_number = require("fp-ts/number");
|
|
982
|
+
var import_string3 = require("fp-ts/string");
|
|
983
|
+
var JSON_PROTOTYPES = [
|
|
984
|
+
`Array`,
|
|
985
|
+
`Boolean`,
|
|
986
|
+
`Number`,
|
|
987
|
+
`Object`,
|
|
988
|
+
`String`
|
|
989
|
+
];
|
|
990
|
+
var refineJsonType = (data) => data === null ? { type: `null`, data: null } : (0, import_boolean.isBoolean)(data) ? { type: `boolean`, data } : (0, import_number.isNumber)(data) ? { type: `number`, data } : (0, import_string3.isString)(data) ? { type: `string`, data } : Array.isArray(data) ? { type: `array`, data } : isPlainObject(data) ? { type: `object`, data } : raiseError(
|
|
991
|
+
data === void 0 ? `undefined passed to refineJsonType. This is not valid JSON.` : `${stringifyJson(data)} with prototype "${Object.getPrototypeOf(data).constructor.name}" passed to refineJsonType. This is not valid JSON.`
|
|
992
|
+
);
|
|
993
|
+
var isJson = (input) => {
|
|
994
|
+
var _a2;
|
|
995
|
+
if (input === null)
|
|
996
|
+
return true;
|
|
997
|
+
if (input === void 0)
|
|
998
|
+
return false;
|
|
999
|
+
const prototype = (_a2 = Object.getPrototypeOf(input)) == null ? void 0 : _a2.constructor.name;
|
|
1000
|
+
const isJson2 = JSON_PROTOTYPES.includes(prototype);
|
|
1001
|
+
return isJson2;
|
|
1002
|
+
};
|
|
1003
|
+
|
|
1004
|
+
// ../../anvl/src/json/index.ts
|
|
1005
|
+
var stringifyJson = (json) => JSON.stringify(json);
|
|
1006
|
+
var JSON_TYPE_NAMES = [
|
|
1007
|
+
`array`,
|
|
1008
|
+
`boolean`,
|
|
1009
|
+
`null`,
|
|
1010
|
+
`number`,
|
|
1011
|
+
`object`,
|
|
1012
|
+
`string`
|
|
1013
|
+
];
|
|
1014
|
+
var JSON_DEFAULTS = {
|
|
1015
|
+
array: [],
|
|
1016
|
+
boolean: false,
|
|
1017
|
+
null: null,
|
|
1018
|
+
number: 0,
|
|
1019
|
+
object: {},
|
|
1020
|
+
string: ``
|
|
1021
|
+
};
|
|
1022
|
+
|
|
1023
|
+
// ../src/internal/families-internal.ts
|
|
1024
|
+
function atomFamily__INTERNAL(options, store = IMPLICIT.STORE) {
|
|
1025
|
+
const subject = new Subject();
|
|
1026
|
+
return Object.assign(
|
|
1027
|
+
(key) => {
|
|
1028
|
+
var _a2;
|
|
1029
|
+
const subKey = stringifyJson(key);
|
|
1030
|
+
const family = { key: options.key, subKey };
|
|
1031
|
+
const fullKey = `${options.key}(${subKey})`;
|
|
1032
|
+
const existing = withdraw({ key: fullKey, type: `atom` }, store);
|
|
1033
|
+
const token = existing ? deposit(existing) : atom__INTERNAL(
|
|
1034
|
+
{
|
|
1035
|
+
key: fullKey,
|
|
1036
|
+
default: options.default instanceof Function ? options.default(key) : options.default,
|
|
1037
|
+
effects: (_a2 = options.effects) == null ? void 0 : _a2.call(options, key)
|
|
1038
|
+
},
|
|
1039
|
+
family,
|
|
1040
|
+
store
|
|
1041
|
+
);
|
|
1042
|
+
subject.next(token);
|
|
1043
|
+
return token;
|
|
1044
|
+
},
|
|
1045
|
+
{
|
|
1046
|
+
key: options.key,
|
|
1047
|
+
type: `atom_family`,
|
|
1048
|
+
subject
|
|
1049
|
+
}
|
|
1050
|
+
);
|
|
1051
|
+
}
|
|
1052
|
+
|
|
1053
|
+
// ../src/internal/selector/lookup-selector-sources.ts
|
|
1054
|
+
var lookupSelectorSources = (key, store) => target(store).selectorGraph.getRelations(key).filter(({ source }) => source !== key).map(({ source }) => lookup(source, store));
|
|
1055
|
+
|
|
1056
|
+
// ../src/internal/selector/trace-selector-atoms.ts
|
|
1057
|
+
var traceSelectorAtoms = (selectorKey, dependency, store) => {
|
|
1058
|
+
const roots = [];
|
|
1059
|
+
const sources = lookupSelectorSources(dependency.key, store);
|
|
1060
|
+
let depth = 0;
|
|
1061
|
+
while (sources.length > 0) {
|
|
1062
|
+
const source = sources.shift();
|
|
1063
|
+
++depth;
|
|
1064
|
+
if (depth > 999) {
|
|
1065
|
+
throw new Error(
|
|
1066
|
+
`Maximum selector dependency depth exceeded in selector "${selectorKey}".`
|
|
1067
|
+
);
|
|
1068
|
+
}
|
|
1069
|
+
if (source.type !== `atom`) {
|
|
1070
|
+
sources.push(...lookupSelectorSources(source.key, store));
|
|
1071
|
+
} else {
|
|
1072
|
+
roots.push(source);
|
|
1073
|
+
}
|
|
1074
|
+
}
|
|
1075
|
+
return roots;
|
|
1076
|
+
};
|
|
1077
|
+
var traceAllSelectorAtoms = (selectorKey, store) => {
|
|
1078
|
+
const sources = lookupSelectorSources(selectorKey, store);
|
|
1079
|
+
return sources.flatMap(
|
|
1080
|
+
(source) => source.type === `atom` ? source : traceSelectorAtoms(selectorKey, source, store)
|
|
1081
|
+
);
|
|
1082
|
+
};
|
|
1083
|
+
|
|
1084
|
+
// ../src/internal/set.ts
|
|
1085
|
+
var import_hamt_plus6 = __toESM(require("hamt_plus"));
|
|
1086
|
+
var evictDownStream = (state, store = IMPLICIT.STORE) => {
|
|
1087
|
+
var _a2, _b;
|
|
1088
|
+
const core = target(store);
|
|
1089
|
+
const downstream = core.selectorAtoms.getRelations(state.key);
|
|
1090
|
+
const downstreamKeys = downstream.map(({ id }) => id);
|
|
1091
|
+
(_a2 = store.config.logger) == null ? void 0 : _a2.info(
|
|
1092
|
+
` || ${downstreamKeys.length} downstream:`,
|
|
1093
|
+
downstreamKeys
|
|
1094
|
+
);
|
|
1095
|
+
if (core.operation.open) {
|
|
1096
|
+
(_b = store.config.logger) == null ? void 0 : _b.info(` ||`, [...core.operation.done], `already done`);
|
|
1097
|
+
}
|
|
1098
|
+
downstream.forEach(({ id: stateKey }) => {
|
|
1099
|
+
var _a3, _b2, _c, _d;
|
|
1100
|
+
if (isDone(stateKey, store)) {
|
|
1101
|
+
(_a3 = store.config.logger) == null ? void 0 : _a3.info(` || ${stateKey} already done`);
|
|
1102
|
+
return;
|
|
1103
|
+
}
|
|
1104
|
+
const state2 = (_b2 = import_hamt_plus6.default.get(stateKey, core.selectors)) != null ? _b2 : import_hamt_plus6.default.get(stateKey, core.readonlySelectors);
|
|
1105
|
+
if (!state2) {
|
|
1106
|
+
(_c = store.config.logger) == null ? void 0 : _c.info(
|
|
1107
|
+
` || ${stateKey} is an atom, and can't be downstream`
|
|
1108
|
+
);
|
|
1109
|
+
return;
|
|
1110
|
+
}
|
|
1111
|
+
evictCachedValue(stateKey, store);
|
|
1112
|
+
(_d = store.config.logger) == null ? void 0 : _d.info(` xx evicted "${stateKey}"`);
|
|
1113
|
+
markDone(stateKey, store);
|
|
1114
|
+
});
|
|
1115
|
+
};
|
|
1116
|
+
var setAtomState = (atom2, next, store = IMPLICIT.STORE) => {
|
|
1117
|
+
var _a2, _b;
|
|
1118
|
+
const oldValue = getState__INTERNAL(atom2, store);
|
|
1119
|
+
const newValue = become(next)(oldValue);
|
|
1120
|
+
(_a2 = store.config.logger) == null ? void 0 : _a2.info(`<< setting atom "${atom2.key}" to`, newValue);
|
|
1121
|
+
cacheValue(atom2.key, newValue, store);
|
|
1122
|
+
if (isAtomDefault(atom2.key, store)) {
|
|
1123
|
+
markAtomAsNotDefault(atom2.key, store);
|
|
1124
|
+
}
|
|
1125
|
+
markDone(atom2.key, store);
|
|
1126
|
+
(_b = store.config.logger) == null ? void 0 : _b.info(
|
|
1127
|
+
` || evicting caches downstream from "${atom2.key}"`
|
|
1128
|
+
);
|
|
1129
|
+
evictDownStream(atom2, store);
|
|
1130
|
+
const update = { oldValue, newValue };
|
|
1131
|
+
if (store.transactionStatus.phase !== `building`) {
|
|
1132
|
+
emitUpdate(atom2, update, store);
|
|
1133
|
+
} else {
|
|
1134
|
+
stowUpdate(atom2, update, store);
|
|
1135
|
+
}
|
|
1136
|
+
};
|
|
1137
|
+
var setSelectorState = (selector, next, store = IMPLICIT.STORE) => {
|
|
1138
|
+
var _a2, _b;
|
|
1139
|
+
const oldValue = getState__INTERNAL(selector, store);
|
|
1140
|
+
const newValue = become(next)(oldValue);
|
|
1141
|
+
(_a2 = store.config.logger) == null ? void 0 : _a2.info(`<< setting selector "${selector.key}" to`, newValue);
|
|
1142
|
+
(_b = store.config.logger) == null ? void 0 : _b.info(` || propagating change made to "${selector.key}"`);
|
|
1143
|
+
selector.set(newValue);
|
|
1144
|
+
};
|
|
1145
|
+
var setState__INTERNAL = (state, value, store = IMPLICIT.STORE) => {
|
|
1146
|
+
if (`set` in state) {
|
|
1147
|
+
setSelectorState(state, value, store);
|
|
1148
|
+
} else {
|
|
1149
|
+
setAtomState(state, value, store);
|
|
1150
|
+
}
|
|
1151
|
+
};
|
|
1152
|
+
|
|
1153
|
+
// ../src/internal/subject.ts
|
|
1154
|
+
var Subject = class {
|
|
1155
|
+
constructor() {
|
|
1156
|
+
this.subscribers = [];
|
|
1157
|
+
}
|
|
1158
|
+
subscribe(subscriber) {
|
|
1159
|
+
this.subscribers.push(subscriber);
|
|
1160
|
+
const unsubscribe = () => this.unsubscribe(subscriber);
|
|
1161
|
+
return { unsubscribe };
|
|
1162
|
+
}
|
|
1163
|
+
unsubscribe(subscriber) {
|
|
1164
|
+
const subscriberIndex = this.subscribers.indexOf(subscriber);
|
|
1165
|
+
if (subscriberIndex !== -1) {
|
|
1166
|
+
this.subscribers.splice(subscriberIndex, 1);
|
|
1167
|
+
}
|
|
1168
|
+
}
|
|
1169
|
+
next(value) {
|
|
1170
|
+
for (const subscriber of this.subscribers) {
|
|
1171
|
+
subscriber(value);
|
|
1172
|
+
}
|
|
1173
|
+
}
|
|
1174
|
+
};
|
|
1175
|
+
|
|
1176
|
+
// ../src/internal/subscribe-internal.ts
|
|
1177
|
+
var stowUpdate = (state, update, store) => {
|
|
1178
|
+
var _a2;
|
|
1179
|
+
const { key } = state;
|
|
1180
|
+
const { logger } = store.config;
|
|
1181
|
+
if (store.transactionStatus.phase !== `building`) {
|
|
1182
|
+
(_a2 = store.config.logger) == null ? void 0 : _a2.warn(
|
|
1183
|
+
`stowUpdate called outside of a transaction. This is probably a bug.`
|
|
1184
|
+
);
|
|
1185
|
+
return;
|
|
1186
|
+
}
|
|
1187
|
+
store.transactionStatus.atomUpdates.push(__spreadValues({ key }, update));
|
|
1188
|
+
logger == null ? void 0 : logger.info(`\u{1F4DD} ${key} stowed (`, update.oldValue, `->`, update.newValue, `)`);
|
|
1189
|
+
};
|
|
1190
|
+
var emitUpdate = (state, update, store) => {
|
|
1191
|
+
const { key } = state;
|
|
1192
|
+
const { logger } = store.config;
|
|
1193
|
+
logger == null ? void 0 : logger.info(
|
|
1194
|
+
`\u{1F4E2} ${state.type} "${key}" went (`,
|
|
1195
|
+
update.oldValue,
|
|
1196
|
+
`->`,
|
|
1197
|
+
update.newValue,
|
|
1198
|
+
`)`
|
|
1199
|
+
);
|
|
1200
|
+
state.subject.next(update);
|
|
1201
|
+
};
|
|
1202
|
+
var subscribeToRootAtoms = (state, store) => {
|
|
1203
|
+
const dependencySubscriptions = `default` in state ? null : traceAllSelectorAtoms(state.key, store).map((atomToken) => {
|
|
1204
|
+
const atom2 = withdraw(atomToken, store);
|
|
1205
|
+
if (atom2 === null) {
|
|
1206
|
+
throw new Error(
|
|
1207
|
+
`Atom "${atomToken.key}", a dependency of selector "${state.key}", not found in store "${store.config.name}".`
|
|
1208
|
+
);
|
|
1209
|
+
}
|
|
1210
|
+
return atom2.subject.subscribe((atomChange) => {
|
|
1211
|
+
var _a2, _b;
|
|
1212
|
+
(_a2 = store.config.logger) == null ? void 0 : _a2.info(
|
|
1213
|
+
`\u{1F4E2} selector "${state.key}" saw root "${atomToken.key}" go (`,
|
|
1214
|
+
atomChange.oldValue,
|
|
1215
|
+
`->`,
|
|
1216
|
+
atomChange.newValue,
|
|
1217
|
+
`)`
|
|
1218
|
+
);
|
|
1219
|
+
const oldValue = recallState(state, store);
|
|
1220
|
+
const newValue = getState__INTERNAL(state, store);
|
|
1221
|
+
(_b = store.config.logger) == null ? void 0 : _b.info(` <- ${state.key} became`, newValue);
|
|
1222
|
+
state.subject.next({ newValue, oldValue });
|
|
1223
|
+
});
|
|
1224
|
+
});
|
|
1225
|
+
return dependencySubscriptions;
|
|
1226
|
+
};
|
|
1227
|
+
|
|
1228
|
+
// ../src/atom.ts
|
|
1229
|
+
function atom(options) {
|
|
1230
|
+
return atom__INTERNAL(options);
|
|
1231
|
+
}
|
|
1232
|
+
function atomFamily(options) {
|
|
1233
|
+
return atomFamily__INTERNAL(options);
|
|
1234
|
+
}
|
|
1235
|
+
|
|
1236
|
+
// ../src/subscribe.ts
|
|
1237
|
+
var subscribe = (token, handleUpdate, store = IMPLICIT.STORE) => {
|
|
1238
|
+
var _a2;
|
|
1239
|
+
const state = withdraw(token, store);
|
|
1240
|
+
if (state === null) {
|
|
1241
|
+
throw new Error(
|
|
1242
|
+
`State "${token.key}" not found in this store. Did you forget to initialize with the "atom" or "selector" function?`
|
|
1243
|
+
);
|
|
1244
|
+
}
|
|
1245
|
+
const subscription = state.subject.subscribe(handleUpdate);
|
|
1246
|
+
(_a2 = store.config.logger) == null ? void 0 : _a2.info(`\u{1F440} subscribe to "${state.key}"`);
|
|
1247
|
+
const dependencySubscriptions = state.type !== `atom` ? subscribeToRootAtoms(state, store) : null;
|
|
1248
|
+
const unsubscribe = dependencySubscriptions === null ? () => {
|
|
1249
|
+
var _a3;
|
|
1250
|
+
(_a3 = store.config.logger) == null ? void 0 : _a3.info(`\u{1F648} unsubscribe from "${state.key}"`);
|
|
1251
|
+
subscription.unsubscribe();
|
|
1252
|
+
} : () => {
|
|
1253
|
+
var _a3;
|
|
1254
|
+
(_a3 = store.config.logger) == null ? void 0 : _a3.info(
|
|
1255
|
+
`\u{1F648} unsubscribe from "${state.key}" and its dependencies`
|
|
1256
|
+
);
|
|
1257
|
+
subscription.unsubscribe();
|
|
1258
|
+
for (const dependencySubscription of dependencySubscriptions) {
|
|
1259
|
+
dependencySubscription.unsubscribe();
|
|
1260
|
+
}
|
|
1261
|
+
};
|
|
1262
|
+
return unsubscribe;
|
|
1263
|
+
};
|
|
1264
|
+
|
|
1265
|
+
// ../src/index.ts
|
|
1266
|
+
var setState = (token, value, store = IMPLICIT.STORE) => {
|
|
1267
|
+
try {
|
|
1268
|
+
openOperation(token, store);
|
|
1269
|
+
} catch (thrown) {
|
|
1270
|
+
if (!(typeof thrown === `symbol`)) {
|
|
1271
|
+
throw thrown;
|
|
1272
|
+
}
|
|
1273
|
+
return;
|
|
1274
|
+
}
|
|
1275
|
+
const state = withdraw(token, store);
|
|
1276
|
+
if (state === null) {
|
|
1277
|
+
throw new Error(
|
|
1278
|
+
`${capitalize(token.type)} "${token.key}" not found in store "${store.config.name}".`
|
|
1279
|
+
);
|
|
1280
|
+
}
|
|
1281
|
+
setState__INTERNAL(state, value, store);
|
|
1282
|
+
closeOperation(store);
|
|
1283
|
+
};
|
|
1284
|
+
|
|
1285
|
+
// ../src/introspection/attach-introspection-states.ts
|
|
1286
|
+
var import_atom7 = require("atom.io");
|
|
1287
|
+
|
|
1288
|
+
// ../src/introspection/attach-atom-index.ts
|
|
1289
|
+
var import_atom = require("atom.io");
|
|
1290
|
+
var attachAtomIndex = (store = import_atom.__INTERNAL__.IMPLICIT.STORE) => {
|
|
1291
|
+
const atomTokenIndexState__INTERNAL = import_atom.__INTERNAL__.atom__INTERNAL(
|
|
1292
|
+
{
|
|
1293
|
+
key: `\u{1F441}\u200D\u{1F5E8} Atom Token Index (Internal)`,
|
|
1294
|
+
default: () => [...store.atoms].filter(([key]) => !key.includes(`\u{1F441}\u200D\u{1F5E8}`)).reduce((acc, [key]) => {
|
|
1295
|
+
acc[key] = { key, type: `atom` };
|
|
1296
|
+
return acc;
|
|
1297
|
+
}, {}),
|
|
1298
|
+
effects: [
|
|
1299
|
+
({ setSelf }) => {
|
|
1300
|
+
store.subject.atomCreation.subscribe((atomToken) => {
|
|
1301
|
+
if (store.operation.open) {
|
|
1302
|
+
return;
|
|
1303
|
+
}
|
|
1304
|
+
if (atomToken.key.includes(`\u{1F441}\u200D\u{1F5E8}`)) {
|
|
1305
|
+
return;
|
|
1306
|
+
}
|
|
1307
|
+
setSelf((state) => {
|
|
1308
|
+
const { key, family } = atomToken;
|
|
1309
|
+
if (family) {
|
|
1310
|
+
const { key: familyKey, subKey } = family;
|
|
1311
|
+
const current = state[familyKey];
|
|
1312
|
+
if (current === void 0 || `familyMembers` in current) {
|
|
1313
|
+
const familyKeyState = current || {
|
|
1314
|
+
key: familyKey,
|
|
1315
|
+
familyMembers: {}
|
|
1316
|
+
};
|
|
1317
|
+
return __spreadProps(__spreadValues({}, state), {
|
|
1318
|
+
[familyKey]: __spreadProps(__spreadValues({}, familyKeyState), {
|
|
1319
|
+
familyMembers: __spreadProps(__spreadValues({}, familyKeyState.familyMembers), {
|
|
1320
|
+
[subKey]: atomToken
|
|
1321
|
+
})
|
|
1322
|
+
})
|
|
1323
|
+
});
|
|
1324
|
+
}
|
|
1325
|
+
}
|
|
1326
|
+
return __spreadProps(__spreadValues({}, state), {
|
|
1327
|
+
[key]: atomToken
|
|
1328
|
+
});
|
|
1329
|
+
});
|
|
1330
|
+
});
|
|
1331
|
+
}
|
|
1332
|
+
]
|
|
1333
|
+
},
|
|
1334
|
+
void 0,
|
|
1335
|
+
store
|
|
1336
|
+
);
|
|
1337
|
+
return import_atom.__INTERNAL__.selector__INTERNAL(
|
|
1338
|
+
{
|
|
1339
|
+
key: `\u{1F441}\u200D\u{1F5E8} Atom Token Index`,
|
|
1340
|
+
get: ({ get }) => get(atomTokenIndexState__INTERNAL)
|
|
1341
|
+
},
|
|
1342
|
+
void 0,
|
|
1343
|
+
store
|
|
1344
|
+
);
|
|
1345
|
+
};
|
|
1346
|
+
|
|
1347
|
+
// ../src/introspection/attach-selector-index.ts
|
|
1348
|
+
var import_atom2 = require("atom.io");
|
|
1349
|
+
var attachSelectorIndex = (store = import_atom2.__INTERNAL__.IMPLICIT.STORE) => {
|
|
1350
|
+
const readonlySelectorTokenIndexState__INTERNAL = import_atom2.__INTERNAL__.atom__INTERNAL(
|
|
1351
|
+
{
|
|
1352
|
+
key: `\u{1F441}\u200D\u{1F5E8} Selector Token Index (Internal)`,
|
|
1353
|
+
default: () => Object.assign(
|
|
1354
|
+
[...store.readonlySelectors].filter(([key]) => !key.includes(`\u{1F441}\u200D\u{1F5E8}`)).reduce((acc, [key]) => {
|
|
1355
|
+
acc[key] = { key, type: `readonly_selector` };
|
|
1356
|
+
return acc;
|
|
1357
|
+
}, {}),
|
|
1358
|
+
[...store.selectors].reduce((acc, [key]) => {
|
|
1359
|
+
acc[key] = { key, type: `selector` };
|
|
1360
|
+
return acc;
|
|
1361
|
+
}, {})
|
|
1362
|
+
),
|
|
1363
|
+
effects: [
|
|
1364
|
+
({ setSelf }) => {
|
|
1365
|
+
store.subject.selectorCreation.subscribe((selectorToken) => {
|
|
1366
|
+
if (store.operation.open) {
|
|
1367
|
+
return;
|
|
1368
|
+
}
|
|
1369
|
+
if (selectorToken.key.includes(`\u{1F441}\u200D\u{1F5E8}`)) {
|
|
1370
|
+
return;
|
|
1371
|
+
}
|
|
1372
|
+
setSelf((state) => {
|
|
1373
|
+
const { key, family } = selectorToken;
|
|
1374
|
+
if (family) {
|
|
1375
|
+
const { key: familyKey, subKey } = family;
|
|
1376
|
+
const current = state[familyKey];
|
|
1377
|
+
if (current === void 0 || `familyMembers` in current) {
|
|
1378
|
+
const familyKeyState = current || {
|
|
1379
|
+
key: familyKey,
|
|
1380
|
+
familyMembers: {}
|
|
1381
|
+
};
|
|
1382
|
+
return __spreadProps(__spreadValues({}, state), {
|
|
1383
|
+
[familyKey]: __spreadProps(__spreadValues({}, familyKeyState), {
|
|
1384
|
+
familyMembers: __spreadProps(__spreadValues({}, familyKeyState.familyMembers), {
|
|
1385
|
+
[subKey]: selectorToken
|
|
1386
|
+
})
|
|
1387
|
+
})
|
|
1388
|
+
});
|
|
1389
|
+
}
|
|
1390
|
+
}
|
|
1391
|
+
return __spreadProps(__spreadValues({}, state), {
|
|
1392
|
+
[key]: selectorToken
|
|
1393
|
+
});
|
|
1394
|
+
});
|
|
1395
|
+
});
|
|
1396
|
+
}
|
|
1397
|
+
]
|
|
1398
|
+
},
|
|
1399
|
+
void 0,
|
|
1400
|
+
store
|
|
1401
|
+
);
|
|
1402
|
+
return import_atom2.__INTERNAL__.selector__INTERNAL({
|
|
1403
|
+
key: `\u{1F441}\u200D\u{1F5E8} Selector Token Index`,
|
|
1404
|
+
get: ({ get }) => get(readonlySelectorTokenIndexState__INTERNAL)
|
|
1405
|
+
});
|
|
1406
|
+
};
|
|
1407
|
+
|
|
1408
|
+
// ../src/introspection/attach-timeline-family.ts
|
|
1409
|
+
var import_atom3 = require("atom.io");
|
|
1410
|
+
var attachTimelineFamily = (store = import_atom3.__INTERNAL__.IMPLICIT.STORE) => {
|
|
1411
|
+
const findTimelineLogState__INTERNAL = import_atom3.__INTERNAL__.atomFamily__INTERNAL(
|
|
1412
|
+
{
|
|
1413
|
+
key: `\u{1F441}\u200D\u{1F5E8} Timeline Update Log (Internal)`,
|
|
1414
|
+
default: (key) => store.timelines.get(key),
|
|
1415
|
+
effects: (key) => [
|
|
1416
|
+
({ setSelf }) => {
|
|
1417
|
+
const tl = store.timelines.get(key);
|
|
1418
|
+
tl.subject.subscribe((_) => {
|
|
1419
|
+
if (store.operation.open === true) {
|
|
1420
|
+
const subscription = store.subject.operationStatus.subscribe(
|
|
1421
|
+
(operationStatus) => {
|
|
1422
|
+
if (operationStatus.open === false) {
|
|
1423
|
+
subscription.unsubscribe();
|
|
1424
|
+
setSelf(__spreadValues({}, tl));
|
|
1425
|
+
}
|
|
1426
|
+
}
|
|
1427
|
+
);
|
|
1428
|
+
} else {
|
|
1429
|
+
setSelf(__spreadValues({}, tl));
|
|
1430
|
+
}
|
|
1431
|
+
});
|
|
1432
|
+
}
|
|
1433
|
+
]
|
|
1434
|
+
},
|
|
1435
|
+
store
|
|
1436
|
+
);
|
|
1437
|
+
const findTimelineLogState = import_atom3.__INTERNAL__.selectorFamily__INTERNAL(
|
|
1438
|
+
{
|
|
1439
|
+
key: `\u{1F441}\u200D\u{1F5E8} Timeline Update Log`,
|
|
1440
|
+
get: (key) => ({ get }) => get(findTimelineLogState__INTERNAL(key))
|
|
1441
|
+
},
|
|
1442
|
+
store
|
|
1443
|
+
);
|
|
1444
|
+
return findTimelineLogState;
|
|
1445
|
+
};
|
|
1446
|
+
|
|
1447
|
+
// ../src/introspection/attach-timeline-index.ts
|
|
1448
|
+
var import_atom4 = require("atom.io");
|
|
1449
|
+
var attachTimelineIndex = (store = import_atom4.__INTERNAL__.IMPLICIT.STORE) => {
|
|
1450
|
+
const timelineTokenIndexState__INTERNAL = import_atom4.__INTERNAL__.atom__INTERNAL(
|
|
1451
|
+
{
|
|
1452
|
+
key: `\u{1F441}\u200D\u{1F5E8} Timeline Token Index (Internal)`,
|
|
1453
|
+
default: () => [...store.timelines].map(([key]) => {
|
|
1454
|
+
return { key, type: `timeline` };
|
|
1455
|
+
}),
|
|
1456
|
+
effects: [
|
|
1457
|
+
({ setSelf }) => {
|
|
1458
|
+
store.subject.timelineCreation.subscribe((timelineToken) => {
|
|
1459
|
+
setSelf((state) => [...state, timelineToken]);
|
|
1460
|
+
});
|
|
1461
|
+
}
|
|
1462
|
+
]
|
|
1463
|
+
},
|
|
1464
|
+
void 0,
|
|
1465
|
+
store
|
|
1466
|
+
);
|
|
1467
|
+
const timelineTokenIndex = import_atom4.__INTERNAL__.selector__INTERNAL(
|
|
1468
|
+
{
|
|
1469
|
+
key: `\u{1F441}\u200D\u{1F5E8} Timeline Token Index`,
|
|
1470
|
+
get: ({ get }) => get(timelineTokenIndexState__INTERNAL)
|
|
1471
|
+
},
|
|
1472
|
+
void 0,
|
|
1473
|
+
store
|
|
1474
|
+
);
|
|
1475
|
+
return timelineTokenIndex;
|
|
1476
|
+
};
|
|
1477
|
+
|
|
1478
|
+
// ../src/introspection/attach-transaction-index.ts
|
|
1479
|
+
var import_atom5 = require("atom.io");
|
|
1480
|
+
var attachTransactionIndex = (store = import_atom5.__INTERNAL__.IMPLICIT.STORE) => {
|
|
1481
|
+
const transactionTokenIndexState__INTERNAL = import_atom5.__INTERNAL__.atom__INTERNAL(
|
|
1482
|
+
{
|
|
1483
|
+
key: `\u{1F441}\u200D\u{1F5E8} Transaction Token Index (Internal)`,
|
|
1484
|
+
default: () => [...store.transactions].map(([key]) => {
|
|
1485
|
+
return { key, type: `transaction` };
|
|
1486
|
+
}),
|
|
1487
|
+
effects: [
|
|
1488
|
+
({ setSelf }) => {
|
|
1489
|
+
store.subject.transactionCreation.subscribe((transactionToken) => {
|
|
1490
|
+
setSelf((state) => [...state, transactionToken]);
|
|
1491
|
+
});
|
|
1492
|
+
}
|
|
1493
|
+
]
|
|
1494
|
+
},
|
|
1495
|
+
void 0,
|
|
1496
|
+
store
|
|
1497
|
+
);
|
|
1498
|
+
const transactionTokenIndex = import_atom5.__INTERNAL__.selector__INTERNAL(
|
|
1499
|
+
{
|
|
1500
|
+
key: `\u{1F441}\u200D\u{1F5E8} Transaction Token Index`,
|
|
1501
|
+
get: ({ get }) => get(transactionTokenIndexState__INTERNAL)
|
|
1502
|
+
},
|
|
1503
|
+
void 0,
|
|
1504
|
+
store
|
|
1505
|
+
);
|
|
1506
|
+
return transactionTokenIndex;
|
|
1507
|
+
};
|
|
1508
|
+
|
|
1509
|
+
// ../src/introspection/attach-transaction-logs.ts
|
|
1510
|
+
var import_atom6 = require("atom.io");
|
|
1511
|
+
var attachTransactionLogs = (store = import_atom6.__INTERNAL__.IMPLICIT.STORE) => {
|
|
1512
|
+
const findTransactionUpdateLog = import_atom6.__INTERNAL__.atomFamily__INTERNAL(
|
|
1513
|
+
{
|
|
1514
|
+
key: `\u{1F441}\u200D\u{1F5E8} Transaction Update Log (Internal)`,
|
|
1515
|
+
default: () => [],
|
|
1516
|
+
effects: (key) => [
|
|
1517
|
+
({ setSelf }) => {
|
|
1518
|
+
const tx = store.transactions.get(key);
|
|
1519
|
+
tx.subject.subscribe((transactionUpdate) => {
|
|
1520
|
+
if (transactionUpdate.key === key) {
|
|
1521
|
+
setSelf((state) => [...state, transactionUpdate]);
|
|
1522
|
+
}
|
|
1523
|
+
});
|
|
1524
|
+
}
|
|
1525
|
+
]
|
|
1526
|
+
},
|
|
1527
|
+
store
|
|
1528
|
+
);
|
|
1529
|
+
const findTransactionUpdateLogState = import_atom6.__INTERNAL__.selectorFamily__INTERNAL(
|
|
1530
|
+
{
|
|
1531
|
+
key: `\u{1F441}\u200D\u{1F5E8} Transaction Update Log`,
|
|
1532
|
+
get: (key) => ({ get }) => get(findTransactionUpdateLog(key))
|
|
1533
|
+
},
|
|
1534
|
+
store
|
|
1535
|
+
);
|
|
1536
|
+
return findTransactionUpdateLogState;
|
|
1537
|
+
};
|
|
1538
|
+
|
|
1539
|
+
// ../src/introspection/attach-introspection-states.ts
|
|
1540
|
+
var attachIntrospectionStates = (store = import_atom7.__INTERNAL__.IMPLICIT.STORE) => {
|
|
1541
|
+
return {
|
|
1542
|
+
atomIndex: attachAtomIndex(store),
|
|
1543
|
+
selectorIndex: attachSelectorIndex(store),
|
|
1544
|
+
transactionIndex: attachTransactionIndex(store),
|
|
1545
|
+
findTransactionLogState: attachTransactionLogs(store),
|
|
1546
|
+
timelineIndex: attachTimelineIndex(store),
|
|
1547
|
+
findTimelineState: attachTimelineFamily(store)
|
|
1548
|
+
};
|
|
1549
|
+
};
|
|
1550
|
+
|
|
1551
|
+
// ../src/web-effects/storage.ts
|
|
1552
|
+
var persistAtom = (storage) => ({ stringify, parse }) => (key) => ({ setSelf, onSet }) => {
|
|
1553
|
+
const savedValue = storage.getItem(key);
|
|
1554
|
+
if (savedValue != null)
|
|
1555
|
+
setSelf(parse(savedValue));
|
|
1556
|
+
onSet(({ newValue }) => {
|
|
1557
|
+
if (newValue == null) {
|
|
1558
|
+
storage.removeItem(key);
|
|
1559
|
+
return;
|
|
1560
|
+
}
|
|
1561
|
+
storage.setItem(key, stringify(newValue));
|
|
1562
|
+
});
|
|
1563
|
+
};
|
|
1564
|
+
var lazyLocalStorageEffect = persistAtom(localStorage)(JSON);
|
|
1565
|
+
|
|
1566
|
+
// ../src/react-devtools/AtomIODevtools.tsx
|
|
1567
|
+
var import_react11 = require("atom.io/react");
|
|
1568
|
+
var import_framer_motion = require("framer-motion");
|
|
1569
|
+
var import_react12 = require("react");
|
|
1570
|
+
|
|
1571
|
+
// ../src/react-devtools/StateIndex.tsx
|
|
1572
|
+
var import_atom8 = require("atom.io");
|
|
1573
|
+
var import_react7 = require("atom.io/react");
|
|
1574
|
+
|
|
1575
|
+
// ../src/react-devtools/Button.tsx
|
|
1576
|
+
var import_jsx_dev_runtime = require("react/jsx-dev-runtime");
|
|
1577
|
+
var OpenClose = ({ isOpen, setIsOpen, disabled }) => {
|
|
1578
|
+
return /* @__PURE__ */ (0, import_jsx_dev_runtime.jsxDEV)(
|
|
1579
|
+
"button",
|
|
1580
|
+
{
|
|
1581
|
+
type: "button",
|
|
1582
|
+
className: `carat ${isOpen ? `open` : `closed`}`,
|
|
1583
|
+
onClick: () => setIsOpen((isOpen2) => !isOpen2),
|
|
1584
|
+
disabled,
|
|
1585
|
+
children: "\u25B6"
|
|
1586
|
+
},
|
|
1587
|
+
void 0,
|
|
1588
|
+
false,
|
|
1589
|
+
{
|
|
1590
|
+
fileName: "../src/react-devtools/Button.tsx",
|
|
1591
|
+
lineNumber: 11,
|
|
1592
|
+
columnNumber: 3
|
|
1593
|
+
},
|
|
1594
|
+
this
|
|
1595
|
+
);
|
|
1596
|
+
};
|
|
1597
|
+
var button = {
|
|
1598
|
+
OpenClose
|
|
1599
|
+
};
|
|
1600
|
+
|
|
1601
|
+
// ../src/react-devtools/StateEditor.tsx
|
|
1602
|
+
var import_react6 = require("atom.io/react");
|
|
1603
|
+
|
|
1604
|
+
// ../../hamr/src/react-elastic-input/ElasticInput.tsx
|
|
1605
|
+
var import_react = require("react");
|
|
1606
|
+
var import_jsx_dev_runtime2 = require("react/jsx-dev-runtime");
|
|
1607
|
+
var ElasticInput = (0, import_react.forwardRef)(function ElasticInputFC(props, ref) {
|
|
1608
|
+
var _a2, _b, _c, _d;
|
|
1609
|
+
const inputRef = (0, import_react.useRef)(null);
|
|
1610
|
+
const spanRef = (0, import_react.useRef)(null);
|
|
1611
|
+
const [inputWidth, setInputWidth] = (0, import_react.useState)(`auto`);
|
|
1612
|
+
(0, import_react.useImperativeHandle)(ref, () => ({
|
|
1613
|
+
focus: () => {
|
|
1614
|
+
var _a3;
|
|
1615
|
+
(_a3 = inputRef.current) == null ? void 0 : _a3.focus();
|
|
1616
|
+
}
|
|
1617
|
+
}));
|
|
1618
|
+
const extraWidth = props.type === `number` ? 15 : 0;
|
|
1619
|
+
(0, import_react.useLayoutEffect)(() => {
|
|
1620
|
+
if (spanRef.current) {
|
|
1621
|
+
setInputWidth(`${spanRef.current.offsetWidth + extraWidth}px`);
|
|
1622
|
+
const interval = setInterval(() => {
|
|
1623
|
+
if (spanRef.current) {
|
|
1624
|
+
setInputWidth(`${spanRef.current.offsetWidth + extraWidth}px`);
|
|
1625
|
+
}
|
|
1626
|
+
}, 1e3);
|
|
1627
|
+
return () => clearInterval(interval);
|
|
1628
|
+
}
|
|
1629
|
+
}, [(_a2 = inputRef.current) == null ? void 0 : _a2.value, props.value]);
|
|
1630
|
+
return /* @__PURE__ */ (0, import_jsx_dev_runtime2.jsxDEV)("div", { style: { display: `inline-block`, position: `relative` }, children: [
|
|
1631
|
+
/* @__PURE__ */ (0, import_jsx_dev_runtime2.jsxDEV)(
|
|
1632
|
+
"input",
|
|
1633
|
+
__spreadProps(__spreadValues({}, props), {
|
|
1634
|
+
ref: inputRef,
|
|
1635
|
+
style: __spreadValues({
|
|
1636
|
+
padding: 0,
|
|
1637
|
+
borderRadius: 0,
|
|
1638
|
+
border: `none`,
|
|
1639
|
+
fontFamily: `inherit`,
|
|
1640
|
+
fontSize: `inherit`,
|
|
1641
|
+
width: inputWidth
|
|
1642
|
+
}, props.style)
|
|
1643
|
+
}),
|
|
1644
|
+
void 0,
|
|
1645
|
+
false,
|
|
1646
|
+
{
|
|
1647
|
+
fileName: "../../hamr/src/react-elastic-input/ElasticInput.tsx",
|
|
1648
|
+
lineNumber: 45,
|
|
1649
|
+
columnNumber: 4
|
|
1650
|
+
},
|
|
1651
|
+
this
|
|
1652
|
+
),
|
|
1653
|
+
/* @__PURE__ */ (0, import_jsx_dev_runtime2.jsxDEV)(
|
|
1654
|
+
"span",
|
|
1655
|
+
{
|
|
1656
|
+
ref: spanRef,
|
|
1657
|
+
style: {
|
|
1658
|
+
padding: (_b = props.style) == null ? void 0 : _b.padding,
|
|
1659
|
+
position: `absolute`,
|
|
1660
|
+
visibility: `hidden`,
|
|
1661
|
+
// color: `red`,
|
|
1662
|
+
whiteSpace: `pre`,
|
|
1663
|
+
fontFamily: ((_c = props.style) == null ? void 0 : _c.fontFamily) || `inherit`,
|
|
1664
|
+
fontSize: ((_d = props.style) == null ? void 0 : _d.fontSize) || `inherit`
|
|
1665
|
+
},
|
|
1666
|
+
children: props.value
|
|
1667
|
+
},
|
|
1668
|
+
void 0,
|
|
1669
|
+
false,
|
|
1670
|
+
{
|
|
1671
|
+
fileName: "../../hamr/src/react-elastic-input/ElasticInput.tsx",
|
|
1672
|
+
lineNumber: 58,
|
|
1673
|
+
columnNumber: 4
|
|
1674
|
+
},
|
|
1675
|
+
this
|
|
1676
|
+
)
|
|
1677
|
+
] }, void 0, true, {
|
|
1678
|
+
fileName: "../../hamr/src/react-elastic-input/ElasticInput.tsx",
|
|
1679
|
+
lineNumber: 44,
|
|
1680
|
+
columnNumber: 3
|
|
1681
|
+
}, this);
|
|
1682
|
+
});
|
|
1683
|
+
|
|
1684
|
+
// ../../hamr/src/react-elastic-input/NumberInput.tsx
|
|
1685
|
+
var import_function11 = require("fp-ts/function");
|
|
1686
|
+
var import_react2 = require("react");
|
|
1687
|
+
|
|
1688
|
+
// ../../anvl/src/number/clamp.ts
|
|
1689
|
+
var clampInto = (min, max) => (value) => value < min ? min : value > max ? max : value;
|
|
1690
|
+
|
|
1691
|
+
// ../../hamr/src/react-elastic-input/NumberInput.tsx
|
|
1692
|
+
var import_jsx_dev_runtime3 = require("react/jsx-dev-runtime");
|
|
1693
|
+
function round(value, decimalPlaces) {
|
|
1694
|
+
if (decimalPlaces === void 0)
|
|
1695
|
+
return value;
|
|
1696
|
+
const factor = Math.pow(10, decimalPlaces);
|
|
1697
|
+
return Math.round(value * factor) / factor;
|
|
1698
|
+
}
|
|
1699
|
+
var VALID_NON_NUMBERS = [``, `-`, `.`, `-.`];
|
|
1700
|
+
var isValidNonNumber = (input) => VALID_NON_NUMBERS.includes(input);
|
|
1701
|
+
var VALID_NON_NUMBER_INTERPRETATIONS = {
|
|
1702
|
+
"": null,
|
|
1703
|
+
"-": 0,
|
|
1704
|
+
".": 0,
|
|
1705
|
+
"-.": 0
|
|
1706
|
+
};
|
|
1707
|
+
var isDecimalInProgress = (input) => input === `0` || !isNaN(Number(input)) && input.includes(`.`);
|
|
1708
|
+
var textToValue = (input, allowDecimal) => {
|
|
1709
|
+
if (isValidNonNumber(input))
|
|
1710
|
+
return VALID_NON_NUMBER_INTERPRETATIONS[input];
|
|
1711
|
+
return allowDecimal ? parseFloat(input) : Math.round(parseFloat(input));
|
|
1712
|
+
};
|
|
1713
|
+
var DEFAULT_NUMBER_CONSTRAINTS = {
|
|
1714
|
+
max: Infinity,
|
|
1715
|
+
min: -Infinity,
|
|
1716
|
+
decimalPlaces: 100,
|
|
1717
|
+
nullable: true
|
|
1718
|
+
};
|
|
1719
|
+
var initRefinery = (constraints) => (input) => {
|
|
1720
|
+
if (input === null && constraints.nullable === true) {
|
|
1721
|
+
return null;
|
|
1722
|
+
}
|
|
1723
|
+
const { max, min, decimalPlaces } = __spreadValues(__spreadValues({}, DEFAULT_NUMBER_CONSTRAINTS), constraints);
|
|
1724
|
+
const constrained = (0, import_function11.pipe)(
|
|
1725
|
+
input != null ? input : 0,
|
|
1726
|
+
clampInto(min, max),
|
|
1727
|
+
(n) => decimalPlaces ? round(n, decimalPlaces) : n
|
|
1728
|
+
);
|
|
1729
|
+
return constrained;
|
|
1730
|
+
};
|
|
1731
|
+
var valueToText = (numericValue) => {
|
|
1732
|
+
if (numericValue === null || numericValue === void 0) {
|
|
1733
|
+
return ``;
|
|
1734
|
+
}
|
|
1735
|
+
return numericValue.toString();
|
|
1736
|
+
};
|
|
1737
|
+
var NumberInput = ({
|
|
1738
|
+
autoSize = false,
|
|
1739
|
+
customCss,
|
|
1740
|
+
decimalPlaces,
|
|
1741
|
+
disabled = false,
|
|
350
1742
|
label,
|
|
351
1743
|
max,
|
|
352
1744
|
min,
|
|
@@ -393,13 +1785,13 @@ var NumberInput = ({
|
|
|
393
1785
|
}
|
|
394
1786
|
};
|
|
395
1787
|
const displayValue = temporaryEntry != null ? temporaryEntry : valueToText(value ? refine(value) : value);
|
|
396
|
-
return /* @__PURE__ */ (0,
|
|
397
|
-
label && /* @__PURE__ */ (0,
|
|
1788
|
+
return /* @__PURE__ */ (0, import_jsx_dev_runtime3.jsxDEV)("span", { css: customCss, children: [
|
|
1789
|
+
label && /* @__PURE__ */ (0, import_jsx_dev_runtime3.jsxDEV)("label", { htmlFor: id, children: label }, void 0, false, {
|
|
398
1790
|
fileName: "../../hamr/src/react-elastic-input/NumberInput.tsx",
|
|
399
1791
|
lineNumber: 166,
|
|
400
1792
|
columnNumber: 14
|
|
401
1793
|
}, this),
|
|
402
|
-
autoSize ? /* @__PURE__ */ (0,
|
|
1794
|
+
autoSize ? /* @__PURE__ */ (0, import_jsx_dev_runtime3.jsxDEV)(
|
|
403
1795
|
ElasticInput,
|
|
404
1796
|
{
|
|
405
1797
|
type: "text",
|
|
@@ -421,7 +1813,7 @@ var NumberInput = ({
|
|
|
421
1813
|
columnNumber: 5
|
|
422
1814
|
},
|
|
423
1815
|
this
|
|
424
|
-
) : /* @__PURE__ */ (0,
|
|
1816
|
+
) : /* @__PURE__ */ (0, import_jsx_dev_runtime3.jsxDEV)(
|
|
425
1817
|
"input",
|
|
426
1818
|
{
|
|
427
1819
|
type: "text",
|
|
@@ -452,7 +1844,7 @@ var NumberInput = ({
|
|
|
452
1844
|
};
|
|
453
1845
|
|
|
454
1846
|
// ../../hamr/src/react-elastic-input/TextInput.tsx
|
|
455
|
-
var
|
|
1847
|
+
var import_jsx_dev_runtime4 = require("react/jsx-dev-runtime");
|
|
456
1848
|
var TextInput = ({
|
|
457
1849
|
value,
|
|
458
1850
|
set,
|
|
@@ -461,13 +1853,13 @@ var TextInput = ({
|
|
|
461
1853
|
customCss,
|
|
462
1854
|
autoSize = false
|
|
463
1855
|
}) => {
|
|
464
|
-
return /* @__PURE__ */ (0,
|
|
465
|
-
/* @__PURE__ */ (0,
|
|
1856
|
+
return /* @__PURE__ */ (0, import_jsx_dev_runtime4.jsxDEV)("span", { css: customCss, children: [
|
|
1857
|
+
/* @__PURE__ */ (0, import_jsx_dev_runtime4.jsxDEV)("label", { children: label }, void 0, false, {
|
|
466
1858
|
fileName: "../../hamr/src/react-elastic-input/TextInput.tsx",
|
|
467
|
-
lineNumber:
|
|
1859
|
+
lineNumber: 26,
|
|
468
1860
|
columnNumber: 4
|
|
469
1861
|
}, this),
|
|
470
|
-
autoSize ? /* @__PURE__ */ (0,
|
|
1862
|
+
autoSize ? /* @__PURE__ */ (0, import_jsx_dev_runtime4.jsxDEV)(
|
|
471
1863
|
ElasticInput,
|
|
472
1864
|
{
|
|
473
1865
|
type: "text",
|
|
@@ -480,11 +1872,11 @@ var TextInput = ({
|
|
|
480
1872
|
false,
|
|
481
1873
|
{
|
|
482
1874
|
fileName: "../../hamr/src/react-elastic-input/TextInput.tsx",
|
|
483
|
-
lineNumber:
|
|
1875
|
+
lineNumber: 28,
|
|
484
1876
|
columnNumber: 5
|
|
485
1877
|
},
|
|
486
1878
|
this
|
|
487
|
-
) : /* @__PURE__ */ (0,
|
|
1879
|
+
) : /* @__PURE__ */ (0, import_jsx_dev_runtime4.jsxDEV)(
|
|
488
1880
|
"input",
|
|
489
1881
|
{
|
|
490
1882
|
type: "text",
|
|
@@ -497,14 +1889,14 @@ var TextInput = ({
|
|
|
497
1889
|
false,
|
|
498
1890
|
{
|
|
499
1891
|
fileName: "../../hamr/src/react-elastic-input/TextInput.tsx",
|
|
500
|
-
lineNumber:
|
|
1892
|
+
lineNumber: 36,
|
|
501
1893
|
columnNumber: 5
|
|
502
1894
|
},
|
|
503
1895
|
this
|
|
504
1896
|
)
|
|
505
1897
|
] }, void 0, true, {
|
|
506
1898
|
fileName: "../../hamr/src/react-elastic-input/TextInput.tsx",
|
|
507
|
-
lineNumber:
|
|
1899
|
+
lineNumber: 25,
|
|
508
1900
|
columnNumber: 3
|
|
509
1901
|
}, this);
|
|
510
1902
|
};
|
|
@@ -518,8 +1910,32 @@ var makeElementSetters = (data, set) => data.map(
|
|
|
518
1910
|
})
|
|
519
1911
|
);
|
|
520
1912
|
|
|
1913
|
+
// ../../hamr/src/react-json-editor/editors-by-type/non-json.tsx
|
|
1914
|
+
var import_jsx_dev_runtime5 = require("react/jsx-dev-runtime");
|
|
1915
|
+
var NonJsonEditor = ({ data }) => {
|
|
1916
|
+
return data === void 0 ? /* @__PURE__ */ (0, import_jsx_dev_runtime5.jsxDEV)(ElasticInput, { disabled: true, value: "undefined" }, void 0, false, {
|
|
1917
|
+
fileName: "../../hamr/src/react-json-editor/editors-by-type/non-json.tsx",
|
|
1918
|
+
lineNumber: 6,
|
|
1919
|
+
columnNumber: 3
|
|
1920
|
+
}, this) : /* @__PURE__ */ (0, import_jsx_dev_runtime5.jsxDEV)(
|
|
1921
|
+
ElasticInput,
|
|
1922
|
+
{
|
|
1923
|
+
disabled: true,
|
|
1924
|
+
value: Object.getPrototypeOf(data).constructor.name + ` ` + JSON.stringify(data)
|
|
1925
|
+
},
|
|
1926
|
+
void 0,
|
|
1927
|
+
false,
|
|
1928
|
+
{
|
|
1929
|
+
fileName: "../../hamr/src/react-json-editor/editors-by-type/non-json.tsx",
|
|
1930
|
+
lineNumber: 8,
|
|
1931
|
+
columnNumber: 3
|
|
1932
|
+
},
|
|
1933
|
+
this
|
|
1934
|
+
);
|
|
1935
|
+
};
|
|
1936
|
+
|
|
521
1937
|
// ../../hamr/src/react-json-editor/json-editor-internal.tsx
|
|
522
|
-
var
|
|
1938
|
+
var import_jsx_dev_runtime6 = require("react/jsx-dev-runtime");
|
|
523
1939
|
var JsonEditor_INTERNAL = ({
|
|
524
1940
|
data,
|
|
525
1941
|
set,
|
|
@@ -536,18 +1952,19 @@ var JsonEditor_INTERNAL = ({
|
|
|
536
1952
|
Header: HeaderDisplay,
|
|
537
1953
|
Components
|
|
538
1954
|
}) => {
|
|
539
|
-
const
|
|
540
|
-
const
|
|
1955
|
+
const dataIsJson = isJson(data);
|
|
1956
|
+
const refined = dataIsJson ? refineJsonType(data) : { type: `non-json`, data };
|
|
1957
|
+
const SubEditor = dataIsJson ? SubEditors[refined.type] : NonJsonEditor;
|
|
541
1958
|
const disabled = isReadonly(path);
|
|
542
|
-
return isHidden(path) ? null : /* @__PURE__ */ (0,
|
|
543
|
-
remove && /* @__PURE__ */ (0,
|
|
1959
|
+
return isHidden(path) ? null : /* @__PURE__ */ (0, import_jsx_dev_runtime6.jsxDEV)(Components.ErrorBoundary, { children: /* @__PURE__ */ (0, import_jsx_dev_runtime6.jsxDEV)(Components.EditorWrapper, { className, customCss, children: [
|
|
1960
|
+
remove && /* @__PURE__ */ (0, import_jsx_dev_runtime6.jsxDEV)(
|
|
544
1961
|
Components.Button,
|
|
545
1962
|
{
|
|
546
1963
|
onClick: disabled ? doNothing : remove,
|
|
547
1964
|
disabled,
|
|
548
|
-
children: /* @__PURE__ */ (0,
|
|
1965
|
+
children: /* @__PURE__ */ (0, import_jsx_dev_runtime6.jsxDEV)(Components.DeleteIcon, {}, void 0, false, {
|
|
549
1966
|
fileName: "../../hamr/src/react-json-editor/json-editor-internal.tsx",
|
|
550
|
-
lineNumber:
|
|
1967
|
+
lineNumber: 63,
|
|
551
1968
|
columnNumber: 7
|
|
552
1969
|
}, this)
|
|
553
1970
|
},
|
|
@@ -555,17 +1972,17 @@ var JsonEditor_INTERNAL = ({
|
|
|
555
1972
|
false,
|
|
556
1973
|
{
|
|
557
1974
|
fileName: "../../hamr/src/react-json-editor/json-editor-internal.tsx",
|
|
558
|
-
lineNumber:
|
|
1975
|
+
lineNumber: 59,
|
|
559
1976
|
columnNumber: 6
|
|
560
1977
|
},
|
|
561
1978
|
this
|
|
562
1979
|
),
|
|
563
|
-
HeaderDisplay && /* @__PURE__ */ (0,
|
|
1980
|
+
HeaderDisplay && /* @__PURE__ */ (0, import_jsx_dev_runtime6.jsxDEV)(HeaderDisplay, { data, schema }, void 0, false, {
|
|
564
1981
|
fileName: "../../hamr/src/react-json-editor/json-editor-internal.tsx",
|
|
565
|
-
lineNumber:
|
|
1982
|
+
lineNumber: 66,
|
|
566
1983
|
columnNumber: 23
|
|
567
1984
|
}, this),
|
|
568
|
-
rename && /* @__PURE__ */ (0,
|
|
1985
|
+
rename && /* @__PURE__ */ (0, import_jsx_dev_runtime6.jsxDEV)(Components.KeyWrapper, { children: /* @__PURE__ */ (0, import_jsx_dev_runtime6.jsxDEV)(
|
|
569
1986
|
ElasticInput,
|
|
570
1987
|
{
|
|
571
1988
|
value: name,
|
|
@@ -576,19 +1993,19 @@ var JsonEditor_INTERNAL = ({
|
|
|
576
1993
|
false,
|
|
577
1994
|
{
|
|
578
1995
|
fileName: "../../hamr/src/react-json-editor/json-editor-internal.tsx",
|
|
579
|
-
lineNumber:
|
|
1996
|
+
lineNumber: 69,
|
|
580
1997
|
columnNumber: 7
|
|
581
1998
|
},
|
|
582
1999
|
this
|
|
583
2000
|
) }, void 0, false, {
|
|
584
2001
|
fileName: "../../hamr/src/react-json-editor/json-editor-internal.tsx",
|
|
585
|
-
lineNumber:
|
|
2002
|
+
lineNumber: 68,
|
|
586
2003
|
columnNumber: 6
|
|
587
2004
|
}, this),
|
|
588
|
-
/* @__PURE__ */ (0,
|
|
2005
|
+
/* @__PURE__ */ (0, import_jsx_dev_runtime6.jsxDEV)(
|
|
589
2006
|
SubEditor,
|
|
590
2007
|
{
|
|
591
|
-
data:
|
|
2008
|
+
data: refined.data,
|
|
592
2009
|
set,
|
|
593
2010
|
schema,
|
|
594
2011
|
remove,
|
|
@@ -602,20 +2019,20 @@ var JsonEditor_INTERNAL = ({
|
|
|
602
2019
|
false,
|
|
603
2020
|
{
|
|
604
2021
|
fileName: "../../hamr/src/react-json-editor/json-editor-internal.tsx",
|
|
605
|
-
lineNumber:
|
|
2022
|
+
lineNumber: 76,
|
|
606
2023
|
columnNumber: 5
|
|
607
2024
|
},
|
|
608
2025
|
this
|
|
609
2026
|
),
|
|
610
|
-
recast && /* @__PURE__ */ (0,
|
|
2027
|
+
recast && dataIsJson ? /* @__PURE__ */ (0, import_jsx_dev_runtime6.jsxDEV)(
|
|
611
2028
|
"select",
|
|
612
2029
|
{
|
|
613
2030
|
onChange: disabled ? doNothing : (e) => recast(e.target.value),
|
|
614
|
-
value:
|
|
2031
|
+
value: refined.type,
|
|
615
2032
|
disabled,
|
|
616
|
-
children: Object.keys(SubEditors).map((type) => /* @__PURE__ */ (0,
|
|
2033
|
+
children: Object.keys(SubEditors).map((type) => /* @__PURE__ */ (0, import_jsx_dev_runtime6.jsxDEV)("option", { value: type, children: type }, type, false, {
|
|
617
2034
|
fileName: "../../hamr/src/react-json-editor/json-editor-internal.tsx",
|
|
618
|
-
lineNumber:
|
|
2035
|
+
lineNumber: 98,
|
|
619
2036
|
columnNumber: 8
|
|
620
2037
|
}, this))
|
|
621
2038
|
},
|
|
@@ -623,24 +2040,24 @@ var JsonEditor_INTERNAL = ({
|
|
|
623
2040
|
false,
|
|
624
2041
|
{
|
|
625
2042
|
fileName: "../../hamr/src/react-json-editor/json-editor-internal.tsx",
|
|
626
|
-
lineNumber:
|
|
2043
|
+
lineNumber: 88,
|
|
627
2044
|
columnNumber: 6
|
|
628
2045
|
},
|
|
629
2046
|
this
|
|
630
|
-
)
|
|
2047
|
+
) : null
|
|
631
2048
|
] }, void 0, true, {
|
|
632
2049
|
fileName: "../../hamr/src/react-json-editor/json-editor-internal.tsx",
|
|
633
|
-
lineNumber:
|
|
2050
|
+
lineNumber: 57,
|
|
634
2051
|
columnNumber: 4
|
|
635
2052
|
}, this) }, void 0, false, {
|
|
636
2053
|
fileName: "../../hamr/src/react-json-editor/json-editor-internal.tsx",
|
|
637
|
-
lineNumber:
|
|
2054
|
+
lineNumber: 56,
|
|
638
2055
|
columnNumber: 3
|
|
639
2056
|
}, this);
|
|
640
2057
|
};
|
|
641
2058
|
|
|
642
2059
|
// ../../hamr/src/react-json-editor/editors-by-type/array-editor.tsx
|
|
643
|
-
var
|
|
2060
|
+
var import_jsx_dev_runtime7 = require("react/jsx-dev-runtime");
|
|
644
2061
|
var ArrayEditor = ({
|
|
645
2062
|
path = [],
|
|
646
2063
|
isReadonly = () => false,
|
|
@@ -650,9 +2067,9 @@ var ArrayEditor = ({
|
|
|
650
2067
|
Components
|
|
651
2068
|
}) => {
|
|
652
2069
|
const setElement = makeElementSetters(data, set);
|
|
653
|
-
return /* @__PURE__ */ (0,
|
|
2070
|
+
return /* @__PURE__ */ (0, import_jsx_dev_runtime7.jsxDEV)(import_jsx_dev_runtime7.Fragment, { children: data.map((element, index) => {
|
|
654
2071
|
const newPath = [...path, index];
|
|
655
|
-
return /* @__PURE__ */ (0,
|
|
2072
|
+
return /* @__PURE__ */ (0, import_jsx_dev_runtime7.jsxDEV)(
|
|
656
2073
|
JsonEditor_INTERNAL,
|
|
657
2074
|
{
|
|
658
2075
|
path: newPath,
|
|
@@ -684,10 +2101,10 @@ var import_react3 = require("react");
|
|
|
684
2101
|
// ../../anvl/src/json-schema/json-schema.ts
|
|
685
2102
|
var import_boolean2 = require("fp-ts/boolean");
|
|
686
2103
|
var import_number3 = require("fp-ts/number");
|
|
687
|
-
var
|
|
2104
|
+
var import_string6 = require("fp-ts/string");
|
|
688
2105
|
|
|
689
2106
|
// ../../anvl/src/json-schema/integer.ts
|
|
690
|
-
var
|
|
2107
|
+
var import_function14 = require("fp-ts/function");
|
|
691
2108
|
var isInteger = (input) => Number.isInteger(input);
|
|
692
2109
|
var parseInteger = (input) => {
|
|
693
2110
|
if (isInteger(input))
|
|
@@ -713,7 +2130,7 @@ var IntegerParseError = class extends Error {
|
|
|
713
2130
|
}
|
|
714
2131
|
};
|
|
715
2132
|
var Int = Object.assign((input) => parseInteger(input), {
|
|
716
|
-
from: (input) => (0,
|
|
2133
|
+
from: (input) => (0, import_function14.pipe)(
|
|
717
2134
|
input,
|
|
718
2135
|
String,
|
|
719
2136
|
parseFloat,
|
|
@@ -749,10 +2166,10 @@ var b = asNumber([new Fraction(1, 2)]);
|
|
|
749
2166
|
var c = asNumber({ a: new Fraction(1, 2) });
|
|
750
2167
|
|
|
751
2168
|
// ../../anvl/src/json-schema/refs.ts
|
|
752
|
-
var
|
|
2169
|
+
var import_string4 = require("fp-ts/string");
|
|
753
2170
|
function isJsonSchemaRef(input) {
|
|
754
2171
|
return doesExtend({
|
|
755
|
-
$ref:
|
|
2172
|
+
$ref: import_string4.isString
|
|
756
2173
|
})(input);
|
|
757
2174
|
}
|
|
758
2175
|
var colorPalette = {
|
|
@@ -774,97 +2191,50 @@ var colorPalette = {
|
|
|
774
2191
|
type: `array`,
|
|
775
2192
|
items: {
|
|
776
2193
|
$ref: `#/$defs/color`
|
|
777
|
-
}
|
|
778
|
-
};
|
|
779
|
-
var retrieveRef = ({
|
|
780
|
-
refNode: { $ref },
|
|
781
|
-
refMap = {},
|
|
782
|
-
root
|
|
783
|
-
}) => {
|
|
784
|
-
if (typeof root === `boolean`) {
|
|
785
|
-
throw new TypeError(`The root is a boolean and cannot be indexed`);
|
|
786
|
-
}
|
|
787
|
-
if ($ref in refMap)
|
|
788
|
-
return { node: refMap[$ref], refMap };
|
|
789
|
-
const [_, ...refPath] = $ref.split(`/`);
|
|
790
|
-
const discovery = delve(root, refPath);
|
|
791
|
-
if (discovery instanceof Error)
|
|
792
|
-
throw discovery;
|
|
793
|
-
let node = discovery.found;
|
|
794
|
-
while (isJsonSchemaRef(node)) {
|
|
795
|
-
const result = retrieveRef({ refNode: node, refMap, root });
|
|
796
|
-
node = result.node;
|
|
797
|
-
refMap = result.refMap;
|
|
798
|
-
}
|
|
799
|
-
if (isJsonSchema(node)) {
|
|
800
|
-
return { node, refMap: __spreadProps(__spreadValues({}, refMap), { [$ref]: node }) };
|
|
801
|
-
}
|
|
802
|
-
throw new TypeError(`The refNode is not a JsonSchema`);
|
|
803
|
-
};
|
|
804
|
-
|
|
805
|
-
// ../../anvl/src/json-schema/string-formats.ts
|
|
806
|
-
var import_string3 = require("fp-ts/string");
|
|
807
|
-
var JSON_SCHEMA_STRING_FORMATS = [
|
|
808
|
-
`date-time`,
|
|
809
|
-
`date`,
|
|
810
|
-
`email`,
|
|
811
|
-
`hostname`,
|
|
812
|
-
`ipv4`,
|
|
813
|
-
`ipv6`,
|
|
814
|
-
`regex`,
|
|
815
|
-
`time`,
|
|
816
|
-
`uri-reference`,
|
|
817
|
-
`uri-template`,
|
|
818
|
-
`uri`,
|
|
819
|
-
`uuid`
|
|
820
|
-
];
|
|
821
|
-
|
|
822
|
-
// ../../anvl/src/refinement/index.ts
|
|
823
|
-
var canExist = (_) => true;
|
|
824
|
-
var cannotExist = (_) => false;
|
|
825
|
-
var isLiteral = (value) => (input) => input === value;
|
|
826
|
-
var isWithin = (args) => (input) => args.includes(input);
|
|
827
|
-
var couldBe = (isTypeA, logging = false, refinements = [isTypeA]) => {
|
|
828
|
-
const name = `(${refinements.map((r) => r.name || `anon`).join(` | `)})`;
|
|
829
|
-
const _ = {
|
|
830
|
-
[name]: (input) => refinements.some(
|
|
831
|
-
(refinement) => {
|
|
832
|
-
var _a2;
|
|
833
|
-
return logging && console.log(
|
|
834
|
-
refinements.map((r) => r.name || `anon`).join(` | `),
|
|
835
|
-
`>`,
|
|
836
|
-
(_a2 = refinement.name) != null ? _a2 : `anon`,
|
|
837
|
-
`:`,
|
|
838
|
-
refinement(input)
|
|
839
|
-
), refinement(input);
|
|
840
|
-
}
|
|
841
|
-
)
|
|
842
|
-
};
|
|
843
|
-
const checkTypes = Object.assign(_[name], {
|
|
844
|
-
or: (isTypeB) => couldBe(isTypeB, logging, [...refinements, isTypeB])
|
|
845
|
-
});
|
|
846
|
-
return checkTypes;
|
|
847
|
-
};
|
|
848
|
-
var isUnion = couldBe(cannotExist);
|
|
849
|
-
var mustBe = (isTypeA, logging = false, refinements = [isTypeA]) => {
|
|
850
|
-
const name = `(${refinements.map((r) => r.name || `anon`).join(` & `)})`;
|
|
851
|
-
const _ = {
|
|
852
|
-
[name]: (input) => refinements.every(
|
|
853
|
-
(refinement) => (logging && console.log(
|
|
854
|
-
refinements.map((r) => r.name || `anon`).join(` & `),
|
|
855
|
-
`>`,
|
|
856
|
-
refinement.name || `anon`,
|
|
857
|
-
`:`,
|
|
858
|
-
refinement(input)
|
|
859
|
-
), refinement(input))
|
|
860
|
-
)
|
|
861
|
-
};
|
|
862
|
-
const checkTypes = Object.assign(_[name], {
|
|
863
|
-
and: (isTypeB) => mustBe(isTypeB, logging, [...refinements, isTypeB])
|
|
864
|
-
});
|
|
865
|
-
return checkTypes;
|
|
2194
|
+
}
|
|
866
2195
|
};
|
|
867
|
-
var
|
|
2196
|
+
var retrieveRef = ({
|
|
2197
|
+
refNode: { $ref },
|
|
2198
|
+
refMap = {},
|
|
2199
|
+
root
|
|
2200
|
+
}) => {
|
|
2201
|
+
if (typeof root === `boolean`) {
|
|
2202
|
+
throw new TypeError(`The root is a boolean and cannot be indexed`);
|
|
2203
|
+
}
|
|
2204
|
+
if ($ref in refMap)
|
|
2205
|
+
return { node: refMap[$ref], refMap };
|
|
2206
|
+
const [_, ...refPath] = $ref.split(`/`);
|
|
2207
|
+
const discovery = delve(root, refPath);
|
|
2208
|
+
if (discovery instanceof Error)
|
|
2209
|
+
throw discovery;
|
|
2210
|
+
let node = discovery.found;
|
|
2211
|
+
while (isJsonSchemaRef(node)) {
|
|
2212
|
+
const result = retrieveRef({ refNode: node, refMap, root });
|
|
2213
|
+
node = result.node;
|
|
2214
|
+
refMap = result.refMap;
|
|
2215
|
+
}
|
|
2216
|
+
if (isJsonSchema(node)) {
|
|
2217
|
+
return { node, refMap: __spreadProps(__spreadValues({}, refMap), { [$ref]: node }) };
|
|
2218
|
+
}
|
|
2219
|
+
throw new TypeError(`The refNode is not a JsonSchema`);
|
|
2220
|
+
};
|
|
2221
|
+
|
|
2222
|
+
// ../../anvl/src/json-schema/string-formats.ts
|
|
2223
|
+
var import_string5 = require("fp-ts/string");
|
|
2224
|
+
var JSON_SCHEMA_STRING_FORMATS = [
|
|
2225
|
+
`date-time`,
|
|
2226
|
+
`date`,
|
|
2227
|
+
`email`,
|
|
2228
|
+
`hostname`,
|
|
2229
|
+
`ipv4`,
|
|
2230
|
+
`ipv6`,
|
|
2231
|
+
`regex`,
|
|
2232
|
+
`time`,
|
|
2233
|
+
`uri-reference`,
|
|
2234
|
+
`uri-template`,
|
|
2235
|
+
`uri`,
|
|
2236
|
+
`uuid`
|
|
2237
|
+
];
|
|
868
2238
|
|
|
869
2239
|
// ../../anvl/src/json-schema/json-schema.ts
|
|
870
2240
|
var JSON_SCHEMA_TYPE_NAMES = [...JSON_TYPE_NAMES, `integer`];
|
|
@@ -890,10 +2260,10 @@ var JSON_SCHEMA_REFINERY = {
|
|
|
890
2260
|
};
|
|
891
2261
|
var stringSchemaStructure = {
|
|
892
2262
|
type: isLiteral(`string`),
|
|
893
|
-
enum: ifDefined(isArray(
|
|
2263
|
+
enum: ifDefined(isArray(import_string6.isString)),
|
|
894
2264
|
minLength: ifDefined(isInteger),
|
|
895
2265
|
maxLength: ifDefined(isInteger),
|
|
896
|
-
pattern: ifDefined(
|
|
2266
|
+
pattern: ifDefined(import_string6.isString),
|
|
897
2267
|
format: ifDefined(isWithin(JSON_SCHEMA_STRING_FORMATS))
|
|
898
2268
|
};
|
|
899
2269
|
function isStringSchema(input) {
|
|
@@ -938,13 +2308,13 @@ function isNullSchema(input) {
|
|
|
938
2308
|
}
|
|
939
2309
|
var objectSchemaStructure = {
|
|
940
2310
|
type: isLiteral(`object`),
|
|
941
|
-
properties: ifDefined(isRecord(
|
|
942
|
-
required: ifDefined(isArray(
|
|
2311
|
+
properties: ifDefined(isRecord(import_string6.isString, isJsonSchema)),
|
|
2312
|
+
required: ifDefined(isArray(import_string6.isString)),
|
|
943
2313
|
additionalProperties: ifDefined(isJsonSchema),
|
|
944
2314
|
propertyNames: ifDefined(isStringSchema),
|
|
945
2315
|
minProperties: ifDefined(isInteger),
|
|
946
2316
|
maxProperties: ifDefined(isInteger),
|
|
947
|
-
dependentSchemas: ifDefined(isRecord(
|
|
2317
|
+
dependentSchemas: ifDefined(isRecord(import_string6.isString, isJsonSchema))
|
|
948
2318
|
};
|
|
949
2319
|
function isObjectSchema(input) {
|
|
950
2320
|
return doesExtend(objectSchemaStructure)(input);
|
|
@@ -986,7 +2356,7 @@ function isNegationSchema(input) {
|
|
|
986
2356
|
var mixedSchemaStructure = __spreadProps(__spreadValues(__spreadValues(__spreadValues(__spreadValues(__spreadValues(__spreadValues(__spreadValues({}, arraySchemaStructure), booleanSchemaStructure), integerSchemaStructure), nullSchemaStructure), numberSchemaStructure), objectSchemaStructure), stringSchemaStructure), {
|
|
987
2357
|
type: isArray(isWithin(JSON_SCHEMA_TYPE_NAMES)),
|
|
988
2358
|
enum: ifDefined(
|
|
989
|
-
isArray(isUnion.or(isInteger).or(import_boolean2.isBoolean).or(import_number3.isNumber).or(
|
|
2359
|
+
isArray(isUnion.or(isInteger).or(import_boolean2.isBoolean).or(import_number3.isNumber).or(import_string6.isString))
|
|
990
2360
|
)
|
|
991
2361
|
});
|
|
992
2362
|
function isMixedSchema(input) {
|
|
@@ -994,8 +2364,8 @@ function isMixedSchema(input) {
|
|
|
994
2364
|
}
|
|
995
2365
|
var isJsonSchemaCore = isUnion.or(isArraySchema).or(isBooleanSchema).or(isConditionalSchema).or(isExclusiveSchema).or(isIntegerSchema).or(isIntersectionSchema).or(isMixedSchema).or(isNegationSchema).or(isNullSchema).or(isNumberSchema).or(isObjectSchema).or(isStringSchema).or(isUnionSchema);
|
|
996
2366
|
var isJsonSchemaRoot = doesExtend({
|
|
997
|
-
$id: ifDefined(
|
|
998
|
-
$schema: ifDefined(
|
|
2367
|
+
$id: ifDefined(import_string6.isString),
|
|
2368
|
+
$schema: ifDefined(import_string6.isString)
|
|
999
2369
|
});
|
|
1000
2370
|
var isJsonSchemaObject = isIntersection.and(isJsonSchemaCore).and(isJsonSchemaRoot);
|
|
1001
2371
|
function isJsonSchema(input) {
|
|
@@ -1232,27 +2602,27 @@ var makePropertySorter = (data, set, sortFn) => () => {
|
|
|
1232
2602
|
};
|
|
1233
2603
|
|
|
1234
2604
|
// ../../hamr/src/react-json-editor/editors-by-type/object-editor.tsx
|
|
1235
|
-
var
|
|
2605
|
+
var import_jsx_dev_runtime8 = require("react/jsx-dev-runtime");
|
|
1236
2606
|
var PropertyAdder = ({
|
|
1237
2607
|
addProperty,
|
|
1238
2608
|
disabled,
|
|
1239
2609
|
propertyKey,
|
|
1240
2610
|
Components
|
|
1241
|
-
}) => /* @__PURE__ */ (0,
|
|
1242
|
-
/* @__PURE__ */ (0,
|
|
2611
|
+
}) => /* @__PURE__ */ (0, import_jsx_dev_runtime8.jsxDEV)(Components.MissingPropertyWrapper, { children: [
|
|
2612
|
+
/* @__PURE__ */ (0, import_jsx_dev_runtime8.jsxDEV)(ElasticInput, { disabled: true, defaultValue: propertyKey }, void 0, false, {
|
|
1243
2613
|
fileName: "../../hamr/src/react-json-editor/editors-by-type/object-editor.tsx",
|
|
1244
2614
|
lineNumber: 38,
|
|
1245
2615
|
columnNumber: 3
|
|
1246
2616
|
}, this),
|
|
1247
2617
|
` `,
|
|
1248
|
-
/* @__PURE__ */ (0,
|
|
2618
|
+
/* @__PURE__ */ (0, import_jsx_dev_runtime8.jsxDEV)(ElasticInput, { disabled: true, defaultValue: "is missing" }, void 0, false, {
|
|
1249
2619
|
fileName: "../../hamr/src/react-json-editor/editors-by-type/object-editor.tsx",
|
|
1250
|
-
lineNumber:
|
|
2620
|
+
lineNumber: 40,
|
|
1251
2621
|
columnNumber: 3
|
|
1252
2622
|
}, this),
|
|
1253
|
-
/* @__PURE__ */ (0,
|
|
2623
|
+
/* @__PURE__ */ (0, import_jsx_dev_runtime8.jsxDEV)(Components.Button, { onClick: () => addProperty(), disabled, children: "+" }, void 0, false, {
|
|
1254
2624
|
fileName: "../../hamr/src/react-json-editor/editors-by-type/object-editor.tsx",
|
|
1255
|
-
lineNumber:
|
|
2625
|
+
lineNumber: 41,
|
|
1256
2626
|
columnNumber: 3
|
|
1257
2627
|
}, this)
|
|
1258
2628
|
] }, void 0, true, {
|
|
@@ -1294,20 +2664,20 @@ var ObjectEditor = ({
|
|
|
1294
2664
|
[[], []]
|
|
1295
2665
|
);
|
|
1296
2666
|
const missingKeys = schemaKeys === true ? [] : schemaKeys.filter((key) => !dataKeys.includes(key));
|
|
1297
|
-
return /* @__PURE__ */ (0,
|
|
1298
|
-
/* @__PURE__ */ (0,
|
|
2667
|
+
return /* @__PURE__ */ (0, import_jsx_dev_runtime8.jsxDEV)(import_jsx_dev_runtime8.Fragment, { children: [
|
|
2668
|
+
/* @__PURE__ */ (0, import_jsx_dev_runtime8.jsxDEV)(Components.Button, { onClick: () => sortProperties(), disabled, children: "Sort" }, void 0, false, {
|
|
1299
2669
|
fileName: "../../hamr/src/react-json-editor/editors-by-type/object-editor.tsx",
|
|
1300
|
-
lineNumber:
|
|
2670
|
+
lineNumber: 95,
|
|
1301
2671
|
columnNumber: 4
|
|
1302
2672
|
}, this),
|
|
1303
|
-
/* @__PURE__ */ (0,
|
|
1304
|
-
/* @__PURE__ */ (0,
|
|
2673
|
+
/* @__PURE__ */ (0, import_jsx_dev_runtime8.jsxDEV)(Components.ObjectWrapper, { children: [
|
|
2674
|
+
/* @__PURE__ */ (0, import_jsx_dev_runtime8.jsxDEV)("div", { className: "json_editor_properties", children: [...missingKeys, ...officialKeys, ...unofficialKeys].map((key) => {
|
|
1305
2675
|
const originalKey = stableKeyMap.current[key];
|
|
1306
2676
|
const newPath = [...path, key];
|
|
1307
2677
|
const originalPath = [...path, originalKey];
|
|
1308
2678
|
const isOfficial = schemaKeys === true || schemaKeys.includes(key);
|
|
1309
2679
|
const isMissing = missingKeys.includes(key);
|
|
1310
|
-
return isMissing ? /* @__PURE__ */ (0,
|
|
2680
|
+
return isMissing ? /* @__PURE__ */ (0, import_jsx_dev_runtime8.jsxDEV)(
|
|
1311
2681
|
PropertyAdder,
|
|
1312
2682
|
{
|
|
1313
2683
|
propertyKey: key,
|
|
@@ -1319,11 +2689,11 @@ var ObjectEditor = ({
|
|
|
1319
2689
|
false,
|
|
1320
2690
|
{
|
|
1321
2691
|
fileName: "../../hamr/src/react-json-editor/editors-by-type/object-editor.tsx",
|
|
1322
|
-
lineNumber:
|
|
2692
|
+
lineNumber: 108,
|
|
1323
2693
|
columnNumber: 8
|
|
1324
2694
|
},
|
|
1325
2695
|
this
|
|
1326
|
-
) : /* @__PURE__ */ (0,
|
|
2696
|
+
) : /* @__PURE__ */ (0, import_jsx_dev_runtime8.jsxDEV)(
|
|
1327
2697
|
JsonEditor_INTERNAL,
|
|
1328
2698
|
{
|
|
1329
2699
|
schema,
|
|
@@ -1343,17 +2713,17 @@ var ObjectEditor = ({
|
|
|
1343
2713
|
false,
|
|
1344
2714
|
{
|
|
1345
2715
|
fileName: "../../hamr/src/react-json-editor/editors-by-type/object-editor.tsx",
|
|
1346
|
-
lineNumber:
|
|
2716
|
+
lineNumber: 116,
|
|
1347
2717
|
columnNumber: 8
|
|
1348
2718
|
},
|
|
1349
2719
|
this
|
|
1350
2720
|
);
|
|
1351
2721
|
}) }, void 0, false, {
|
|
1352
2722
|
fileName: "../../hamr/src/react-json-editor/editors-by-type/object-editor.tsx",
|
|
1353
|
-
lineNumber:
|
|
2723
|
+
lineNumber: 99,
|
|
1354
2724
|
columnNumber: 5
|
|
1355
2725
|
}, this),
|
|
1356
|
-
/* @__PURE__ */ (0,
|
|
2726
|
+
/* @__PURE__ */ (0, import_jsx_dev_runtime8.jsxDEV)(
|
|
1357
2727
|
Components.Button,
|
|
1358
2728
|
{
|
|
1359
2729
|
onClick: disabled ? doNothing : () => makePropertyAdder(`new_property`, `string`)(),
|
|
@@ -1364,29 +2734,30 @@ var ObjectEditor = ({
|
|
|
1364
2734
|
false,
|
|
1365
2735
|
{
|
|
1366
2736
|
fileName: "../../hamr/src/react-json-editor/editors-by-type/object-editor.tsx",
|
|
1367
|
-
lineNumber:
|
|
2737
|
+
lineNumber: 136,
|
|
1368
2738
|
columnNumber: 5
|
|
1369
2739
|
},
|
|
1370
2740
|
this
|
|
1371
2741
|
)
|
|
1372
2742
|
] }, void 0, true, {
|
|
1373
2743
|
fileName: "../../hamr/src/react-json-editor/editors-by-type/object-editor.tsx",
|
|
1374
|
-
lineNumber:
|
|
2744
|
+
lineNumber: 98,
|
|
1375
2745
|
columnNumber: 4
|
|
1376
2746
|
}, this)
|
|
1377
2747
|
] }, void 0, true, {
|
|
1378
2748
|
fileName: "../../hamr/src/react-json-editor/editors-by-type/object-editor.tsx",
|
|
1379
|
-
lineNumber:
|
|
2749
|
+
lineNumber: 94,
|
|
1380
2750
|
columnNumber: 3
|
|
1381
2751
|
}, this);
|
|
1382
2752
|
};
|
|
1383
2753
|
|
|
1384
2754
|
// ../../hamr/src/react-json-editor/editors-by-type/primitive-editors.tsx
|
|
1385
|
-
var
|
|
2755
|
+
var import_jsx_dev_runtime9 = require("react/jsx-dev-runtime");
|
|
1386
2756
|
var BooleanEditor = ({
|
|
1387
2757
|
data,
|
|
1388
|
-
set
|
|
1389
|
-
|
|
2758
|
+
set,
|
|
2759
|
+
Components
|
|
2760
|
+
}) => /* @__PURE__ */ (0, import_jsx_dev_runtime9.jsxDEV)(Components.BooleanWrapper, { children: /* @__PURE__ */ (0, import_jsx_dev_runtime9.jsxDEV)(
|
|
1390
2761
|
"input",
|
|
1391
2762
|
{
|
|
1392
2763
|
type: "checkbox",
|
|
@@ -1397,22 +2768,33 @@ var BooleanEditor = ({
|
|
|
1397
2768
|
false,
|
|
1398
2769
|
{
|
|
1399
2770
|
fileName: "../../hamr/src/react-json-editor/editors-by-type/primitive-editors.tsx",
|
|
1400
|
-
lineNumber:
|
|
1401
|
-
columnNumber:
|
|
2771
|
+
lineNumber: 12,
|
|
2772
|
+
columnNumber: 3
|
|
1402
2773
|
},
|
|
1403
2774
|
this
|
|
1404
|
-
)
|
|
1405
|
-
|
|
2775
|
+
) }, void 0, false, {
|
|
2776
|
+
fileName: "../../hamr/src/react-json-editor/editors-by-type/primitive-editors.tsx",
|
|
2777
|
+
lineNumber: 11,
|
|
2778
|
+
columnNumber: 2
|
|
2779
|
+
}, this);
|
|
2780
|
+
var NullEditor = ({
|
|
2781
|
+
Components
|
|
2782
|
+
}) => /* @__PURE__ */ (0, import_jsx_dev_runtime9.jsxDEV)(Components.NullWrapper, { children: /* @__PURE__ */ (0, import_jsx_dev_runtime9.jsxDEV)(import_jsx_dev_runtime9.Fragment, {}, void 0, false, {
|
|
2783
|
+
fileName: "../../hamr/src/react-json-editor/editors-by-type/primitive-editors.tsx",
|
|
2784
|
+
lineNumber: 24,
|
|
2785
|
+
columnNumber: 3
|
|
2786
|
+
}, this) }, void 0, false, {
|
|
1406
2787
|
fileName: "../../hamr/src/react-json-editor/editors-by-type/primitive-editors.tsx",
|
|
1407
|
-
lineNumber:
|
|
2788
|
+
lineNumber: 23,
|
|
1408
2789
|
columnNumber: 2
|
|
1409
2790
|
}, this);
|
|
1410
2791
|
var NumberEditor = ({
|
|
1411
2792
|
path = [],
|
|
1412
2793
|
isReadonly = () => false,
|
|
1413
2794
|
data,
|
|
1414
|
-
set
|
|
1415
|
-
|
|
2795
|
+
set,
|
|
2796
|
+
Components
|
|
2797
|
+
}) => /* @__PURE__ */ (0, import_jsx_dev_runtime9.jsxDEV)(Components.NumberWrapper, { children: /* @__PURE__ */ (0, import_jsx_dev_runtime9.jsxDEV)(
|
|
1416
2798
|
NumberInput,
|
|
1417
2799
|
{
|
|
1418
2800
|
value: data,
|
|
@@ -1423,11 +2805,15 @@ var NumberEditor = ({
|
|
|
1423
2805
|
false,
|
|
1424
2806
|
{
|
|
1425
2807
|
fileName: "../../hamr/src/react-json-editor/editors-by-type/primitive-editors.tsx",
|
|
1426
|
-
lineNumber:
|
|
1427
|
-
columnNumber:
|
|
2808
|
+
lineNumber: 36,
|
|
2809
|
+
columnNumber: 3
|
|
1428
2810
|
},
|
|
1429
2811
|
this
|
|
1430
|
-
)
|
|
2812
|
+
) }, void 0, false, {
|
|
2813
|
+
fileName: "../../hamr/src/react-json-editor/editors-by-type/primitive-editors.tsx",
|
|
2814
|
+
lineNumber: 35,
|
|
2815
|
+
columnNumber: 2
|
|
2816
|
+
}, this);
|
|
1431
2817
|
var StringEditor = ({
|
|
1432
2818
|
path = [],
|
|
1433
2819
|
isReadonly = () => false,
|
|
@@ -1435,7 +2821,7 @@ var StringEditor = ({
|
|
|
1435
2821
|
set,
|
|
1436
2822
|
Components
|
|
1437
2823
|
}) => {
|
|
1438
|
-
return /* @__PURE__ */ (0,
|
|
2824
|
+
return /* @__PURE__ */ (0, import_jsx_dev_runtime9.jsxDEV)(Components.StringWrapper, { children: /* @__PURE__ */ (0, import_jsx_dev_runtime9.jsxDEV)(
|
|
1439
2825
|
TextInput,
|
|
1440
2826
|
{
|
|
1441
2827
|
value: data,
|
|
@@ -1446,13 +2832,13 @@ var StringEditor = ({
|
|
|
1446
2832
|
false,
|
|
1447
2833
|
{
|
|
1448
2834
|
fileName: "../../hamr/src/react-json-editor/editors-by-type/primitive-editors.tsx",
|
|
1449
|
-
lineNumber:
|
|
2835
|
+
lineNumber: 53,
|
|
1450
2836
|
columnNumber: 4
|
|
1451
2837
|
},
|
|
1452
2838
|
this
|
|
1453
2839
|
) }, void 0, false, {
|
|
1454
2840
|
fileName: "../../hamr/src/react-json-editor/editors-by-type/primitive-editors.tsx",
|
|
1455
|
-
lineNumber:
|
|
2841
|
+
lineNumber: 52,
|
|
1456
2842
|
columnNumber: 3
|
|
1457
2843
|
}, this);
|
|
1458
2844
|
};
|
|
@@ -1462,12 +2848,12 @@ var import_react4 = require("react");
|
|
|
1462
2848
|
var import_recoil = require("recoil");
|
|
1463
2849
|
|
|
1464
2850
|
// ../../hamr/src/react-error-boundary/DefaultFallback.tsx
|
|
1465
|
-
var
|
|
2851
|
+
var import_jsx_dev_runtime10 = require("react/jsx-dev-runtime");
|
|
1466
2852
|
var DefaultFallback = ({ error, errorInfo }) => {
|
|
1467
2853
|
var _a2, _b;
|
|
1468
2854
|
const component = errorInfo == null ? void 0 : errorInfo.componentStack.split(` `).filter(Boolean)[2];
|
|
1469
2855
|
const message = (_b = (_a2 = error == null ? void 0 : error.toString()) != null ? _a2 : errorInfo == null ? void 0 : errorInfo.componentStack) != null ? _b : `Unknown error`;
|
|
1470
|
-
return /* @__PURE__ */ (0,
|
|
2856
|
+
return /* @__PURE__ */ (0, import_jsx_dev_runtime10.jsxDEV)(
|
|
1471
2857
|
"div",
|
|
1472
2858
|
{
|
|
1473
2859
|
"data-testid": "error-boundary",
|
|
@@ -1479,7 +2865,7 @@ var DefaultFallback = ({ error, errorInfo }) => {
|
|
|
1479
2865
|
// backgroundRepeat: `no-repeat`,
|
|
1480
2866
|
backgroundSize: `overlay`
|
|
1481
2867
|
},
|
|
1482
|
-
children: /* @__PURE__ */ (0,
|
|
2868
|
+
children: /* @__PURE__ */ (0, import_jsx_dev_runtime10.jsxDEV)(
|
|
1483
2869
|
"div",
|
|
1484
2870
|
{
|
|
1485
2871
|
style: {
|
|
@@ -1488,7 +2874,7 @@ var DefaultFallback = ({ error, errorInfo }) => {
|
|
|
1488
2874
|
padding: `50px`,
|
|
1489
2875
|
border: `1px solid dashed`
|
|
1490
2876
|
},
|
|
1491
|
-
children: /* @__PURE__ */ (0,
|
|
2877
|
+
children: /* @__PURE__ */ (0, import_jsx_dev_runtime10.jsxDEV)(
|
|
1492
2878
|
"span",
|
|
1493
2879
|
{
|
|
1494
2880
|
style: {
|
|
@@ -1499,7 +2885,7 @@ var DefaultFallback = ({ error, errorInfo }) => {
|
|
|
1499
2885
|
},
|
|
1500
2886
|
children: [
|
|
1501
2887
|
`\u26A0\uFE0F `,
|
|
1502
|
-
/* @__PURE__ */ (0,
|
|
2888
|
+
/* @__PURE__ */ (0, import_jsx_dev_runtime10.jsxDEV)("span", { style: { color: `#fc0`, fontWeight: 700 }, children: component }, void 0, false, {
|
|
1503
2889
|
fileName: "../../hamr/src/react-error-boundary/DefaultFallback.tsx",
|
|
1504
2890
|
lineNumber: 42,
|
|
1505
2891
|
columnNumber: 6
|
|
@@ -1540,7 +2926,7 @@ var DefaultFallback = ({ error, errorInfo }) => {
|
|
|
1540
2926
|
};
|
|
1541
2927
|
|
|
1542
2928
|
// ../../hamr/src/react-error-boundary/ErrorBoundary.tsx
|
|
1543
|
-
var
|
|
2929
|
+
var import_jsx_dev_runtime11 = require("react/jsx-dev-runtime");
|
|
1544
2930
|
var ErrorBoundary = class extends import_react4.Component {
|
|
1545
2931
|
constructor(props) {
|
|
1546
2932
|
super(props);
|
|
@@ -1557,7 +2943,7 @@ var ErrorBoundary = class extends import_react4.Component {
|
|
|
1557
2943
|
render() {
|
|
1558
2944
|
const { error, errorInfo } = this.state;
|
|
1559
2945
|
const { children, Fallback = DefaultFallback } = this.props;
|
|
1560
|
-
return errorInfo ? /* @__PURE__ */ (0,
|
|
2946
|
+
return errorInfo ? /* @__PURE__ */ (0, import_jsx_dev_runtime11.jsxDEV)(Fallback, { error, errorInfo }, void 0, false, {
|
|
1561
2947
|
fileName: "../../hamr/src/react-error-boundary/ErrorBoundary.tsx",
|
|
1562
2948
|
lineNumber: 43,
|
|
1563
2949
|
columnNumber: 4
|
|
@@ -1570,14 +2956,14 @@ var findErrorBoundaryState = (0, import_recoil.atomFamily)({
|
|
|
1570
2956
|
});
|
|
1571
2957
|
|
|
1572
2958
|
// ../../hamr/src/react-json-editor/default-components.tsx
|
|
1573
|
-
var
|
|
2959
|
+
var import_jsx_dev_runtime12 = require("react/jsx-dev-runtime");
|
|
1574
2960
|
var DEFAULT_JSON_EDITOR_COMPONENTS = {
|
|
1575
|
-
ErrorBoundary: ({ children }) => /* @__PURE__ */ (0,
|
|
2961
|
+
ErrorBoundary: ({ children }) => /* @__PURE__ */ (0, import_jsx_dev_runtime12.jsxDEV)(ErrorBoundary, { children }, void 0, false, {
|
|
1576
2962
|
fileName: "../../hamr/src/react-json-editor/default-components.tsx",
|
|
1577
2963
|
lineNumber: 47,
|
|
1578
2964
|
columnNumber: 35
|
|
1579
2965
|
}, this),
|
|
1580
|
-
Button: ({ onClick, children, disabled }) => /* @__PURE__ */ (0,
|
|
2966
|
+
Button: ({ onClick, children, disabled }) => /* @__PURE__ */ (0, import_jsx_dev_runtime12.jsxDEV)(
|
|
1581
2967
|
"button",
|
|
1582
2968
|
{
|
|
1583
2969
|
type: "button",
|
|
@@ -1595,7 +2981,7 @@ var DEFAULT_JSON_EDITOR_COMPONENTS = {
|
|
|
1595
2981
|
},
|
|
1596
2982
|
this
|
|
1597
2983
|
),
|
|
1598
|
-
EditorWrapper: ({ children, customCss, className }) => /* @__PURE__ */ (0,
|
|
2984
|
+
EditorWrapper: ({ children, customCss, className }) => /* @__PURE__ */ (0, import_jsx_dev_runtime12.jsxDEV)("div", { className: `json_editor ` + className, css: customCss, children }, void 0, false, {
|
|
1599
2985
|
fileName: "../../hamr/src/react-json-editor/default-components.tsx",
|
|
1600
2986
|
lineNumber: 59,
|
|
1601
2987
|
columnNumber: 3
|
|
@@ -1608,28 +2994,28 @@ var DEFAULT_JSON_EDITOR_COMPONENTS = {
|
|
|
1608
2994
|
ValueEditor,
|
|
1609
2995
|
Wrapper
|
|
1610
2996
|
}) => {
|
|
1611
|
-
return /* @__PURE__ */ (0,
|
|
1612
|
-
DeleteButton && /* @__PURE__ */ (0,
|
|
2997
|
+
return /* @__PURE__ */ (0, import_jsx_dev_runtime12.jsxDEV)(Wrapper, { children: [
|
|
2998
|
+
DeleteButton && /* @__PURE__ */ (0, import_jsx_dev_runtime12.jsxDEV)(DeleteButton, {}, void 0, false, {
|
|
1613
2999
|
fileName: "../../hamr/src/react-json-editor/default-components.tsx",
|
|
1614
3000
|
lineNumber: 73,
|
|
1615
3001
|
columnNumber: 22
|
|
1616
3002
|
}, this),
|
|
1617
|
-
Header && /* @__PURE__ */ (0,
|
|
3003
|
+
Header && /* @__PURE__ */ (0, import_jsx_dev_runtime12.jsxDEV)(Header, {}, void 0, false, {
|
|
1618
3004
|
fileName: "../../hamr/src/react-json-editor/default-components.tsx",
|
|
1619
3005
|
lineNumber: 74,
|
|
1620
3006
|
columnNumber: 16
|
|
1621
3007
|
}, this),
|
|
1622
|
-
KeyInput && /* @__PURE__ */ (0,
|
|
3008
|
+
KeyInput && /* @__PURE__ */ (0, import_jsx_dev_runtime12.jsxDEV)(KeyInput, {}, void 0, false, {
|
|
1623
3009
|
fileName: "../../hamr/src/react-json-editor/default-components.tsx",
|
|
1624
3010
|
lineNumber: 75,
|
|
1625
3011
|
columnNumber: 18
|
|
1626
3012
|
}, this),
|
|
1627
|
-
TypeSelect && /* @__PURE__ */ (0,
|
|
3013
|
+
TypeSelect && /* @__PURE__ */ (0, import_jsx_dev_runtime12.jsxDEV)(TypeSelect, {}, void 0, false, {
|
|
1628
3014
|
fileName: "../../hamr/src/react-json-editor/default-components.tsx",
|
|
1629
3015
|
lineNumber: 76,
|
|
1630
3016
|
columnNumber: 20
|
|
1631
3017
|
}, this),
|
|
1632
|
-
/* @__PURE__ */ (0,
|
|
3018
|
+
/* @__PURE__ */ (0, import_jsx_dev_runtime12.jsxDEV)(ValueEditor, {}, void 0, false, {
|
|
1633
3019
|
fileName: "../../hamr/src/react-json-editor/default-components.tsx",
|
|
1634
3020
|
lineNumber: 77,
|
|
1635
3021
|
columnNumber: 5
|
|
@@ -1640,67 +3026,67 @@ var DEFAULT_JSON_EDITOR_COMPONENTS = {
|
|
|
1640
3026
|
columnNumber: 4
|
|
1641
3027
|
}, this);
|
|
1642
3028
|
},
|
|
1643
|
-
ArrayWrapper: ({ children }) => /* @__PURE__ */ (0,
|
|
3029
|
+
ArrayWrapper: ({ children }) => /* @__PURE__ */ (0, import_jsx_dev_runtime12.jsxDEV)("div", { className: "json_editor_array", children }, void 0, false, {
|
|
1644
3030
|
fileName: "../../hamr/src/react-json-editor/default-components.tsx",
|
|
1645
3031
|
lineNumber: 82,
|
|
1646
3032
|
columnNumber: 3
|
|
1647
3033
|
}, this),
|
|
1648
|
-
ObjectWrapper: ({ children }) => /* @__PURE__ */ (0,
|
|
3034
|
+
ObjectWrapper: ({ children }) => /* @__PURE__ */ (0, import_jsx_dev_runtime12.jsxDEV)("div", { className: "json_editor_object", children }, void 0, false, {
|
|
1649
3035
|
fileName: "../../hamr/src/react-json-editor/default-components.tsx",
|
|
1650
3036
|
lineNumber: 85,
|
|
1651
3037
|
columnNumber: 3
|
|
1652
3038
|
}, this),
|
|
1653
|
-
StringWrapper: ({ children }) => /* @__PURE__ */ (0,
|
|
3039
|
+
StringWrapper: ({ children }) => /* @__PURE__ */ (0, import_jsx_dev_runtime12.jsxDEV)("span", { className: "json_editor_string", children }, void 0, false, {
|
|
1654
3040
|
fileName: "../../hamr/src/react-json-editor/default-components.tsx",
|
|
1655
3041
|
lineNumber: 88,
|
|
1656
3042
|
columnNumber: 3
|
|
1657
3043
|
}, this),
|
|
1658
|
-
NumberWrapper: ({ children }) => /* @__PURE__ */ (0,
|
|
3044
|
+
NumberWrapper: ({ children }) => /* @__PURE__ */ (0, import_jsx_dev_runtime12.jsxDEV)("span", { className: "json_editor_number", children }, void 0, false, {
|
|
1659
3045
|
fileName: "../../hamr/src/react-json-editor/default-components.tsx",
|
|
1660
3046
|
lineNumber: 91,
|
|
1661
3047
|
columnNumber: 3
|
|
1662
3048
|
}, this),
|
|
1663
|
-
BooleanWrapper: ({ children }) => /* @__PURE__ */ (0,
|
|
3049
|
+
BooleanWrapper: ({ children }) => /* @__PURE__ */ (0, import_jsx_dev_runtime12.jsxDEV)("span", { className: "json_editor_boolean", children }, void 0, false, {
|
|
1664
3050
|
fileName: "../../hamr/src/react-json-editor/default-components.tsx",
|
|
1665
3051
|
lineNumber: 94,
|
|
1666
3052
|
columnNumber: 3
|
|
1667
3053
|
}, this),
|
|
1668
|
-
NullWrapper: ({ children }) => /* @__PURE__ */ (0,
|
|
3054
|
+
NullWrapper: ({ children }) => /* @__PURE__ */ (0, import_jsx_dev_runtime12.jsxDEV)("span", { className: "json_editor_null", children }, void 0, false, {
|
|
1669
3055
|
fileName: "../../hamr/src/react-json-editor/default-components.tsx",
|
|
1670
3056
|
lineNumber: 97,
|
|
1671
3057
|
columnNumber: 3
|
|
1672
3058
|
}, this),
|
|
1673
|
-
MissingPropertyWrapper: ({ children }) => /* @__PURE__ */ (0,
|
|
3059
|
+
MissingPropertyWrapper: ({ children }) => /* @__PURE__ */ (0, import_jsx_dev_runtime12.jsxDEV)("div", { className: "json_editor_property json_editor_missing", children }, void 0, false, {
|
|
1674
3060
|
fileName: "../../hamr/src/react-json-editor/default-components.tsx",
|
|
1675
3061
|
lineNumber: 100,
|
|
1676
3062
|
columnNumber: 3
|
|
1677
3063
|
}, this),
|
|
1678
|
-
MiscastPropertyWrapper: ({ children }) => /* @__PURE__ */ (0,
|
|
3064
|
+
MiscastPropertyWrapper: ({ children }) => /* @__PURE__ */ (0, import_jsx_dev_runtime12.jsxDEV)("div", { className: "json_editor_property json_editor_miscast", children }, void 0, false, {
|
|
1679
3065
|
fileName: "../../hamr/src/react-json-editor/default-components.tsx",
|
|
1680
3066
|
lineNumber: 103,
|
|
1681
3067
|
columnNumber: 3
|
|
1682
3068
|
}, this),
|
|
1683
|
-
IllegalPropertyWrapper: ({ children }) => /* @__PURE__ */ (0,
|
|
3069
|
+
IllegalPropertyWrapper: ({ children }) => /* @__PURE__ */ (0, import_jsx_dev_runtime12.jsxDEV)("span", { className: "json_editor_property json_editor_illegal", children }, void 0, false, {
|
|
1684
3070
|
fileName: "../../hamr/src/react-json-editor/default-components.tsx",
|
|
1685
3071
|
lineNumber: 106,
|
|
1686
3072
|
columnNumber: 3
|
|
1687
3073
|
}, this),
|
|
1688
|
-
OfficialPropertyWrapper: ({ children }) => /* @__PURE__ */ (0,
|
|
3074
|
+
OfficialPropertyWrapper: ({ children }) => /* @__PURE__ */ (0, import_jsx_dev_runtime12.jsxDEV)("span", { className: "json_editor_property json_editor_official", children }, void 0, false, {
|
|
1689
3075
|
fileName: "../../hamr/src/react-json-editor/default-components.tsx",
|
|
1690
3076
|
lineNumber: 109,
|
|
1691
3077
|
columnNumber: 3
|
|
1692
3078
|
}, this),
|
|
1693
|
-
UnofficialPropertyWrapper: ({ children }) => /* @__PURE__ */ (0,
|
|
3079
|
+
UnofficialPropertyWrapper: ({ children }) => /* @__PURE__ */ (0, import_jsx_dev_runtime12.jsxDEV)("span", { className: "json_editor_property json_editor_unofficial", children }, void 0, false, {
|
|
1694
3080
|
fileName: "../../hamr/src/react-json-editor/default-components.tsx",
|
|
1695
3081
|
lineNumber: 112,
|
|
1696
3082
|
columnNumber: 3
|
|
1697
3083
|
}, this),
|
|
1698
|
-
DeleteIcon: () => /* @__PURE__ */ (0,
|
|
3084
|
+
DeleteIcon: () => /* @__PURE__ */ (0, import_jsx_dev_runtime12.jsxDEV)("span", { className: "json_editor_icon json_editor_delete", children: "x" }, void 0, false, {
|
|
1699
3085
|
fileName: "../../hamr/src/react-json-editor/default-components.tsx",
|
|
1700
3086
|
lineNumber: 117,
|
|
1701
3087
|
columnNumber: 3
|
|
1702
3088
|
}, this),
|
|
1703
|
-
KeyWrapper: ({ children }) => /* @__PURE__ */ (0,
|
|
3089
|
+
KeyWrapper: ({ children }) => /* @__PURE__ */ (0, import_jsx_dev_runtime12.jsxDEV)("span", { className: "json_editor_key", children }, void 0, false, {
|
|
1704
3090
|
fileName: "../../hamr/src/react-json-editor/default-components.tsx",
|
|
1705
3091
|
lineNumber: 120,
|
|
1706
3092
|
columnNumber: 3
|
|
@@ -1710,7 +3096,7 @@ var DEFAULT_JSON_EDITOR_COMPONENTS = {
|
|
|
1710
3096
|
// ../../hamr/src/react-json-editor/developer-interface.tsx
|
|
1711
3097
|
var import_ajv = __toESM(require("ajv"));
|
|
1712
3098
|
var import_react5 = require("react");
|
|
1713
|
-
var
|
|
3099
|
+
var import_jsx_dev_runtime13 = require("react/jsx-dev-runtime");
|
|
1714
3100
|
var JsonEditor = ({
|
|
1715
3101
|
data,
|
|
1716
3102
|
set,
|
|
@@ -1732,7 +3118,7 @@ var JsonEditor = ({
|
|
|
1732
3118
|
return ajv.compile(schema);
|
|
1733
3119
|
}, [schema]);
|
|
1734
3120
|
const validationResults = validate(data);
|
|
1735
|
-
return /* @__PURE__ */ (0,
|
|
3121
|
+
return /* @__PURE__ */ (0, import_jsx_dev_runtime13.jsxDEV)(
|
|
1736
3122
|
JsonEditor_INTERNAL,
|
|
1737
3123
|
{
|
|
1738
3124
|
data,
|
|
@@ -1771,17 +3157,17 @@ var SubEditors = {
|
|
|
1771
3157
|
};
|
|
1772
3158
|
|
|
1773
3159
|
// ../src/react-devtools/StateEditor.tsx
|
|
1774
|
-
var
|
|
1775
|
-
var StateEditor = ({
|
|
1776
|
-
const [data, set] =
|
|
1777
|
-
return
|
|
3160
|
+
var import_jsx_dev_runtime14 = require("react/jsx-dev-runtime");
|
|
3161
|
+
var StateEditor = ({ token }) => {
|
|
3162
|
+
const [data, set] = (0, import_react6.useIO)(token);
|
|
3163
|
+
return isJson(data) ? /* @__PURE__ */ (0, import_jsx_dev_runtime14.jsxDEV)(JsonEditor, { data, set, schema: true }, void 0, false, {
|
|
1778
3164
|
fileName: "../src/react-devtools/StateEditor.tsx",
|
|
1779
3165
|
lineNumber: 15,
|
|
1780
3166
|
columnNumber: 3
|
|
1781
|
-
}, this) : /* @__PURE__ */ (0,
|
|
3167
|
+
}, this) : /* @__PURE__ */ (0, import_jsx_dev_runtime14.jsxDEV)("div", { className: "json_editor", children: /* @__PURE__ */ (0, import_jsx_dev_runtime14.jsxDEV)(
|
|
1782
3168
|
ElasticInput,
|
|
1783
3169
|
{
|
|
1784
|
-
value: data instanceof Set ? `Set { ${JSON.stringify([...data]).slice(1, -1)} }` : data instanceof Map ? `Map ` + JSON.stringify([...data]) : Object.getPrototypeOf(data).constructor.name + ` ` + JSON.stringify(data),
|
|
3170
|
+
value: data instanceof Set ? `Set { ${JSON.stringify([...data]).slice(1, -1)} }` : data instanceof Map ? `Map ` + JSON.stringify([...data]) : Object.getPrototypeOf(data).constructor.name + ` ` + fallback(() => JSON.stringify(data), `?`),
|
|
1785
3171
|
disabled: true
|
|
1786
3172
|
},
|
|
1787
3173
|
void 0,
|
|
@@ -1790,319 +3176,981 @@ var StateEditor = ({ storeHooks, token }) => {
|
|
|
1790
3176
|
fileName: "../src/react-devtools/StateEditor.tsx",
|
|
1791
3177
|
lineNumber: 18,
|
|
1792
3178
|
columnNumber: 4
|
|
1793
|
-
},
|
|
1794
|
-
this
|
|
1795
|
-
) }, void 0, false, {
|
|
1796
|
-
fileName: "../src/react-devtools/StateEditor.tsx",
|
|
1797
|
-
lineNumber: 17,
|
|
3179
|
+
},
|
|
3180
|
+
this
|
|
3181
|
+
) }, void 0, false, {
|
|
3182
|
+
fileName: "../src/react-devtools/StateEditor.tsx",
|
|
3183
|
+
lineNumber: 17,
|
|
3184
|
+
columnNumber: 3
|
|
3185
|
+
}, this);
|
|
3186
|
+
};
|
|
3187
|
+
var ReadonlySelectorViewer = ({ token }) => {
|
|
3188
|
+
const data = (0, import_react6.useO)(token);
|
|
3189
|
+
return isJson(data) ? /* @__PURE__ */ (0, import_jsx_dev_runtime14.jsxDEV)(
|
|
3190
|
+
JsonEditor,
|
|
3191
|
+
{
|
|
3192
|
+
data,
|
|
3193
|
+
set: () => null,
|
|
3194
|
+
schema: true,
|
|
3195
|
+
isReadonly: () => true
|
|
3196
|
+
},
|
|
3197
|
+
void 0,
|
|
3198
|
+
false,
|
|
3199
|
+
{
|
|
3200
|
+
fileName: "../src/react-devtools/StateEditor.tsx",
|
|
3201
|
+
lineNumber: 39,
|
|
3202
|
+
columnNumber: 3
|
|
3203
|
+
},
|
|
3204
|
+
this
|
|
3205
|
+
) : /* @__PURE__ */ (0, import_jsx_dev_runtime14.jsxDEV)("div", { className: "json_editor", children: /* @__PURE__ */ (0, import_jsx_dev_runtime14.jsxDEV)(
|
|
3206
|
+
ElasticInput,
|
|
3207
|
+
{
|
|
3208
|
+
value: data instanceof Set ? `Set ` + JSON.stringify([...data]) : data instanceof Map ? `Map ` + JSON.stringify([...data]) : Object.getPrototypeOf(data).constructor.name + ` ` + JSON.stringify(data),
|
|
3209
|
+
disabled: true
|
|
3210
|
+
},
|
|
3211
|
+
void 0,
|
|
3212
|
+
false,
|
|
3213
|
+
{
|
|
3214
|
+
fileName: "../src/react-devtools/StateEditor.tsx",
|
|
3215
|
+
lineNumber: 47,
|
|
3216
|
+
columnNumber: 4
|
|
3217
|
+
},
|
|
3218
|
+
this
|
|
3219
|
+
) }, void 0, false, {
|
|
3220
|
+
fileName: "../src/react-devtools/StateEditor.tsx",
|
|
3221
|
+
lineNumber: 46,
|
|
3222
|
+
columnNumber: 3
|
|
3223
|
+
}, this);
|
|
3224
|
+
};
|
|
3225
|
+
var StoreEditor = ({ token }) => {
|
|
3226
|
+
if (token.type === `readonly_selector`) {
|
|
3227
|
+
return /* @__PURE__ */ (0, import_jsx_dev_runtime14.jsxDEV)(ReadonlySelectorViewer, { token }, void 0, false, {
|
|
3228
|
+
fileName: "../src/react-devtools/StateEditor.tsx",
|
|
3229
|
+
lineNumber: 67,
|
|
3230
|
+
columnNumber: 10
|
|
3231
|
+
}, this);
|
|
3232
|
+
}
|
|
3233
|
+
return /* @__PURE__ */ (0, import_jsx_dev_runtime14.jsxDEV)(StateEditor, { token }, void 0, false, {
|
|
3234
|
+
fileName: "../src/react-devtools/StateEditor.tsx",
|
|
3235
|
+
lineNumber: 69,
|
|
3236
|
+
columnNumber: 9
|
|
3237
|
+
}, this);
|
|
3238
|
+
};
|
|
3239
|
+
|
|
3240
|
+
// ../src/react-devtools/StateIndex.tsx
|
|
3241
|
+
var import_jsx_dev_runtime15 = require("react/jsx-dev-runtime");
|
|
3242
|
+
var findStateTypeState = (0, import_atom8.selectorFamily)({
|
|
3243
|
+
key: `\u{1F441}\u200D\u{1F5E8} State Type`,
|
|
3244
|
+
get: (token) => ({ get }) => {
|
|
3245
|
+
let state;
|
|
3246
|
+
try {
|
|
3247
|
+
state = get(token);
|
|
3248
|
+
} catch (error) {
|
|
3249
|
+
return `error`;
|
|
3250
|
+
}
|
|
3251
|
+
if (state === void 0)
|
|
3252
|
+
return `undefined`;
|
|
3253
|
+
if (isJson(state))
|
|
3254
|
+
return refineJsonType(state).type;
|
|
3255
|
+
return Object.getPrototypeOf(state).constructor.name;
|
|
3256
|
+
}
|
|
3257
|
+
});
|
|
3258
|
+
var StateIndexLeafNode = ({ node, isOpenState, typeState }) => {
|
|
3259
|
+
var _a2, _b;
|
|
3260
|
+
const [isOpen, setIsOpen] = (0, import_react7.useIO)(isOpenState);
|
|
3261
|
+
const state = (0, import_react7.useO)(node);
|
|
3262
|
+
const stateType = (0, import_react7.useO)(typeState);
|
|
3263
|
+
const isPrimitive = Boolean(primitiveRefinery.refine(state));
|
|
3264
|
+
return /* @__PURE__ */ (0, import_jsx_dev_runtime15.jsxDEV)(import_jsx_dev_runtime15.Fragment, { children: [
|
|
3265
|
+
/* @__PURE__ */ (0, import_jsx_dev_runtime15.jsxDEV)("header", { children: [
|
|
3266
|
+
/* @__PURE__ */ (0, import_jsx_dev_runtime15.jsxDEV)(
|
|
3267
|
+
button.OpenClose,
|
|
3268
|
+
{
|
|
3269
|
+
isOpen: isOpen && !isPrimitive,
|
|
3270
|
+
setIsOpen,
|
|
3271
|
+
disabled: isPrimitive
|
|
3272
|
+
},
|
|
3273
|
+
void 0,
|
|
3274
|
+
false,
|
|
3275
|
+
{
|
|
3276
|
+
fileName: "../src/react-devtools/StateIndex.tsx",
|
|
3277
|
+
lineNumber: 45,
|
|
3278
|
+
columnNumber: 5
|
|
3279
|
+
},
|
|
3280
|
+
this
|
|
3281
|
+
),
|
|
3282
|
+
/* @__PURE__ */ (0, import_jsx_dev_runtime15.jsxDEV)(
|
|
3283
|
+
"label",
|
|
3284
|
+
{
|
|
3285
|
+
onClick: () => console.log(node, (0, import_atom8.getState)(node)),
|
|
3286
|
+
onKeyUp: () => console.log(node, (0, import_atom8.getState)(node)),
|
|
3287
|
+
children: [
|
|
3288
|
+
/* @__PURE__ */ (0, import_jsx_dev_runtime15.jsxDEV)("h2", { children: (_b = (_a2 = node.family) == null ? void 0 : _a2.subKey) != null ? _b : node.key }, void 0, false, {
|
|
3289
|
+
fileName: "../src/react-devtools/StateIndex.tsx",
|
|
3290
|
+
lineNumber: 54,
|
|
3291
|
+
columnNumber: 6
|
|
3292
|
+
}, this),
|
|
3293
|
+
/* @__PURE__ */ (0, import_jsx_dev_runtime15.jsxDEV)("span", { className: "type detail", children: [
|
|
3294
|
+
"(",
|
|
3295
|
+
stateType,
|
|
3296
|
+
")"
|
|
3297
|
+
] }, void 0, true, {
|
|
3298
|
+
fileName: "../src/react-devtools/StateIndex.tsx",
|
|
3299
|
+
lineNumber: 55,
|
|
3300
|
+
columnNumber: 6
|
|
3301
|
+
}, this)
|
|
3302
|
+
]
|
|
3303
|
+
},
|
|
3304
|
+
void 0,
|
|
3305
|
+
true,
|
|
3306
|
+
{
|
|
3307
|
+
fileName: "../src/react-devtools/StateIndex.tsx",
|
|
3308
|
+
lineNumber: 50,
|
|
3309
|
+
columnNumber: 5
|
|
3310
|
+
},
|
|
3311
|
+
this
|
|
3312
|
+
),
|
|
3313
|
+
isPrimitive ? /* @__PURE__ */ (0, import_jsx_dev_runtime15.jsxDEV)(StoreEditor, { token: node }, void 0, false, {
|
|
3314
|
+
fileName: "../src/react-devtools/StateIndex.tsx",
|
|
3315
|
+
lineNumber: 57,
|
|
3316
|
+
columnNumber: 20
|
|
3317
|
+
}, this) : null
|
|
3318
|
+
] }, void 0, true, {
|
|
3319
|
+
fileName: "../src/react-devtools/StateIndex.tsx",
|
|
3320
|
+
lineNumber: 44,
|
|
3321
|
+
columnNumber: 4
|
|
3322
|
+
}, this),
|
|
3323
|
+
isOpen && !isPrimitive ? /* @__PURE__ */ (0, import_jsx_dev_runtime15.jsxDEV)("main", { children: /* @__PURE__ */ (0, import_jsx_dev_runtime15.jsxDEV)(StoreEditor, { token: node }, void 0, false, {
|
|
3324
|
+
fileName: "../src/react-devtools/StateIndex.tsx",
|
|
3325
|
+
lineNumber: 61,
|
|
3326
|
+
columnNumber: 6
|
|
3327
|
+
}, this) }, void 0, false, {
|
|
3328
|
+
fileName: "../src/react-devtools/StateIndex.tsx",
|
|
3329
|
+
lineNumber: 60,
|
|
3330
|
+
columnNumber: 5
|
|
3331
|
+
}, this) : null
|
|
3332
|
+
] }, void 0, true, {
|
|
3333
|
+
fileName: "../src/react-devtools/StateIndex.tsx",
|
|
3334
|
+
lineNumber: 43,
|
|
3335
|
+
columnNumber: 3
|
|
3336
|
+
}, this);
|
|
3337
|
+
};
|
|
3338
|
+
var StateIndexTreeNode = ({ node, isOpenState }) => {
|
|
3339
|
+
const [isOpen, setIsOpen] = (0, import_react7.useIO)(isOpenState);
|
|
3340
|
+
Object.entries(node.familyMembers).forEach(([key, childNode]) => {
|
|
3341
|
+
findViewIsOpenState(key);
|
|
3342
|
+
findStateTypeState(childNode);
|
|
3343
|
+
});
|
|
3344
|
+
return /* @__PURE__ */ (0, import_jsx_dev_runtime15.jsxDEV)(import_jsx_dev_runtime15.Fragment, { children: [
|
|
3345
|
+
/* @__PURE__ */ (0, import_jsx_dev_runtime15.jsxDEV)("header", { children: [
|
|
3346
|
+
/* @__PURE__ */ (0, import_jsx_dev_runtime15.jsxDEV)(button.OpenClose, { isOpen, setIsOpen }, void 0, false, {
|
|
3347
|
+
fileName: "../src/react-devtools/StateIndex.tsx",
|
|
3348
|
+
lineNumber: 81,
|
|
3349
|
+
columnNumber: 5
|
|
3350
|
+
}, this),
|
|
3351
|
+
/* @__PURE__ */ (0, import_jsx_dev_runtime15.jsxDEV)("label", { children: [
|
|
3352
|
+
/* @__PURE__ */ (0, import_jsx_dev_runtime15.jsxDEV)("h2", { children: node.key }, void 0, false, {
|
|
3353
|
+
fileName: "../src/react-devtools/StateIndex.tsx",
|
|
3354
|
+
lineNumber: 83,
|
|
3355
|
+
columnNumber: 6
|
|
3356
|
+
}, this),
|
|
3357
|
+
/* @__PURE__ */ (0, import_jsx_dev_runtime15.jsxDEV)("span", { className: "type detail", children: " (family)" }, void 0, false, {
|
|
3358
|
+
fileName: "../src/react-devtools/StateIndex.tsx",
|
|
3359
|
+
lineNumber: 84,
|
|
3360
|
+
columnNumber: 6
|
|
3361
|
+
}, this)
|
|
3362
|
+
] }, void 0, true, {
|
|
3363
|
+
fileName: "../src/react-devtools/StateIndex.tsx",
|
|
3364
|
+
lineNumber: 82,
|
|
3365
|
+
columnNumber: 5
|
|
3366
|
+
}, this)
|
|
3367
|
+
] }, void 0, true, {
|
|
3368
|
+
fileName: "../src/react-devtools/StateIndex.tsx",
|
|
3369
|
+
lineNumber: 80,
|
|
3370
|
+
columnNumber: 4
|
|
3371
|
+
}, this),
|
|
3372
|
+
isOpen ? Object.entries(node.familyMembers).map(([key, childNode]) => /* @__PURE__ */ (0, import_jsx_dev_runtime15.jsxDEV)(
|
|
3373
|
+
StateIndexNode,
|
|
3374
|
+
{
|
|
3375
|
+
node: childNode,
|
|
3376
|
+
isOpenState: findViewIsOpenState(childNode.key),
|
|
3377
|
+
typeState: findStateTypeState(childNode)
|
|
3378
|
+
},
|
|
3379
|
+
key,
|
|
3380
|
+
false,
|
|
3381
|
+
{
|
|
3382
|
+
fileName: "../src/react-devtools/StateIndex.tsx",
|
|
3383
|
+
lineNumber: 89,
|
|
3384
|
+
columnNumber: 7
|
|
3385
|
+
},
|
|
3386
|
+
this
|
|
3387
|
+
)) : null
|
|
3388
|
+
] }, void 0, true, {
|
|
3389
|
+
fileName: "../src/react-devtools/StateIndex.tsx",
|
|
3390
|
+
lineNumber: 79,
|
|
3391
|
+
columnNumber: 3
|
|
3392
|
+
}, this);
|
|
3393
|
+
};
|
|
3394
|
+
var StateIndexNode = ({ node, isOpenState, typeState }) => {
|
|
3395
|
+
if (node.key.startsWith(`\u{1F441}\u200D\u{1F5E8}`)) {
|
|
3396
|
+
return null;
|
|
3397
|
+
}
|
|
3398
|
+
return /* @__PURE__ */ (0, import_jsx_dev_runtime15.jsxDEV)("section", { className: "node state", children: `type` in node ? /* @__PURE__ */ (0, import_jsx_dev_runtime15.jsxDEV)(
|
|
3399
|
+
StateIndexLeafNode,
|
|
3400
|
+
{
|
|
3401
|
+
node,
|
|
3402
|
+
isOpenState,
|
|
3403
|
+
typeState
|
|
3404
|
+
},
|
|
3405
|
+
void 0,
|
|
3406
|
+
false,
|
|
3407
|
+
{
|
|
3408
|
+
fileName: "../src/react-devtools/StateIndex.tsx",
|
|
3409
|
+
lineNumber: 114,
|
|
3410
|
+
columnNumber: 5
|
|
3411
|
+
},
|
|
3412
|
+
this
|
|
3413
|
+
) : /* @__PURE__ */ (0, import_jsx_dev_runtime15.jsxDEV)(StateIndexTreeNode, { node, isOpenState }, void 0, false, {
|
|
3414
|
+
fileName: "../src/react-devtools/StateIndex.tsx",
|
|
3415
|
+
lineNumber: 120,
|
|
3416
|
+
columnNumber: 5
|
|
3417
|
+
}, this) }, void 0, false, {
|
|
3418
|
+
fileName: "../src/react-devtools/StateIndex.tsx",
|
|
3419
|
+
lineNumber: 112,
|
|
3420
|
+
columnNumber: 3
|
|
3421
|
+
}, this);
|
|
3422
|
+
};
|
|
3423
|
+
var StateIndex = ({ tokenIndex }) => {
|
|
3424
|
+
const tokenIds = (0, import_react7.useO)(tokenIndex);
|
|
3425
|
+
return /* @__PURE__ */ (0, import_jsx_dev_runtime15.jsxDEV)("article", { className: "index state_index", children: Object.entries(tokenIds).filter(([key]) => !key.startsWith(`\u{1F441}\u200D\u{1F5E8}`)).sort().map(([key, node]) => {
|
|
3426
|
+
return /* @__PURE__ */ (0, import_jsx_dev_runtime15.jsxDEV)(
|
|
3427
|
+
StateIndexNode,
|
|
3428
|
+
{
|
|
3429
|
+
node,
|
|
3430
|
+
isOpenState: findViewIsOpenState(node.key),
|
|
3431
|
+
typeState: findStateTypeState(node)
|
|
3432
|
+
},
|
|
3433
|
+
key,
|
|
3434
|
+
false,
|
|
3435
|
+
{
|
|
3436
|
+
fileName: "../src/react-devtools/StateIndex.tsx",
|
|
3437
|
+
lineNumber: 143,
|
|
3438
|
+
columnNumber: 7
|
|
3439
|
+
},
|
|
3440
|
+
this
|
|
3441
|
+
);
|
|
3442
|
+
}) }, void 0, false, {
|
|
3443
|
+
fileName: "../src/react-devtools/StateIndex.tsx",
|
|
3444
|
+
lineNumber: 137,
|
|
3445
|
+
columnNumber: 3
|
|
3446
|
+
}, this);
|
|
3447
|
+
};
|
|
3448
|
+
|
|
3449
|
+
// ../src/react-devtools/TimelineIndex.tsx
|
|
3450
|
+
var import_atom9 = require("atom.io");
|
|
3451
|
+
var import_react8 = require("atom.io/react");
|
|
3452
|
+
var import_react9 = require("react");
|
|
3453
|
+
|
|
3454
|
+
// ../src/react-devtools/Updates.tsx
|
|
3455
|
+
var import_jsx_dev_runtime16 = require("react/jsx-dev-runtime");
|
|
3456
|
+
var AtomUpdateFC = ({ atomUpdate }) => {
|
|
3457
|
+
return /* @__PURE__ */ (0, import_jsx_dev_runtime16.jsxDEV)(
|
|
3458
|
+
"article",
|
|
3459
|
+
{
|
|
3460
|
+
className: "node atom_update",
|
|
3461
|
+
onClick: () => console.log(atomUpdate),
|
|
3462
|
+
onKeyUp: () => console.log(atomUpdate),
|
|
3463
|
+
children: [
|
|
3464
|
+
/* @__PURE__ */ (0, import_jsx_dev_runtime16.jsxDEV)("span", { className: "detail", children: [
|
|
3465
|
+
atomUpdate.key,
|
|
3466
|
+
": "
|
|
3467
|
+
] }, void 0, true, {
|
|
3468
|
+
fileName: "../src/react-devtools/Updates.tsx",
|
|
3469
|
+
lineNumber: 20,
|
|
3470
|
+
columnNumber: 4
|
|
3471
|
+
}, this),
|
|
3472
|
+
/* @__PURE__ */ (0, import_jsx_dev_runtime16.jsxDEV)("span", { children: /* @__PURE__ */ (0, import_jsx_dev_runtime16.jsxDEV)("span", { className: "summary", children: prettyJson.diff(atomUpdate.oldValue, atomUpdate.newValue).summary }, void 0, false, {
|
|
3473
|
+
fileName: "../src/react-devtools/Updates.tsx",
|
|
3474
|
+
lineNumber: 22,
|
|
3475
|
+
columnNumber: 5
|
|
3476
|
+
}, this) }, void 0, false, {
|
|
3477
|
+
fileName: "../src/react-devtools/Updates.tsx",
|
|
3478
|
+
lineNumber: 21,
|
|
3479
|
+
columnNumber: 4
|
|
3480
|
+
}, this)
|
|
3481
|
+
]
|
|
3482
|
+
},
|
|
3483
|
+
atomUpdate.key,
|
|
3484
|
+
true,
|
|
3485
|
+
{
|
|
3486
|
+
fileName: "../src/react-devtools/Updates.tsx",
|
|
3487
|
+
lineNumber: 14,
|
|
3488
|
+
columnNumber: 3
|
|
3489
|
+
},
|
|
3490
|
+
this
|
|
3491
|
+
);
|
|
3492
|
+
};
|
|
3493
|
+
var TransactionUpdateFC = ({ serialNumber, transactionUpdate }) => {
|
|
3494
|
+
return /* @__PURE__ */ (0, import_jsx_dev_runtime16.jsxDEV)("article", { className: "node transaction_update", children: [
|
|
3495
|
+
/* @__PURE__ */ (0, import_jsx_dev_runtime16.jsxDEV)("header", { children: /* @__PURE__ */ (0, import_jsx_dev_runtime16.jsxDEV)("h4", { children: serialNumber }, void 0, false, {
|
|
3496
|
+
fileName: "../src/react-devtools/Updates.tsx",
|
|
3497
|
+
lineNumber: 37,
|
|
3498
|
+
columnNumber: 5
|
|
3499
|
+
}, this) }, void 0, false, {
|
|
3500
|
+
fileName: "../src/react-devtools/Updates.tsx",
|
|
3501
|
+
lineNumber: 36,
|
|
3502
|
+
columnNumber: 4
|
|
3503
|
+
}, this),
|
|
3504
|
+
/* @__PURE__ */ (0, import_jsx_dev_runtime16.jsxDEV)("main", { children: [
|
|
3505
|
+
/* @__PURE__ */ (0, import_jsx_dev_runtime16.jsxDEV)("section", { className: "transaction_params", children: [
|
|
3506
|
+
/* @__PURE__ */ (0, import_jsx_dev_runtime16.jsxDEV)("span", { className: "detail", children: "params: " }, void 0, false, {
|
|
3507
|
+
fileName: "../src/react-devtools/Updates.tsx",
|
|
3508
|
+
lineNumber: 41,
|
|
3509
|
+
columnNumber: 6
|
|
3510
|
+
}, this),
|
|
3511
|
+
transactionUpdate.params.map((param, index) => {
|
|
3512
|
+
return /* @__PURE__ */ (0, import_jsx_dev_runtime16.jsxDEV)(
|
|
3513
|
+
"article",
|
|
3514
|
+
{
|
|
3515
|
+
className: "node transaction_param",
|
|
3516
|
+
onClick: () => console.log(transactionUpdate),
|
|
3517
|
+
onKeyUp: () => console.log(transactionUpdate),
|
|
3518
|
+
children: [
|
|
3519
|
+
/* @__PURE__ */ (0, import_jsx_dev_runtime16.jsxDEV)("span", { className: "detail", children: [
|
|
3520
|
+
discoverType(param),
|
|
3521
|
+
": "
|
|
3522
|
+
] }, void 0, true, {
|
|
3523
|
+
fileName: "../src/react-devtools/Updates.tsx",
|
|
3524
|
+
lineNumber: 50,
|
|
3525
|
+
columnNumber: 9
|
|
3526
|
+
}, this),
|
|
3527
|
+
/* @__PURE__ */ (0, import_jsx_dev_runtime16.jsxDEV)("span", { className: "summary", children: typeof param === `object` && `type` in param && `target` in param ? /* @__PURE__ */ (0, import_jsx_dev_runtime16.jsxDEV)(import_jsx_dev_runtime16.Fragment, { children: JSON.stringify(param.type) }, void 0, false, {
|
|
3528
|
+
fileName: "../src/react-devtools/Updates.tsx",
|
|
3529
|
+
lineNumber: 55,
|
|
3530
|
+
columnNumber: 11
|
|
3531
|
+
}, this) : /* @__PURE__ */ (0, import_jsx_dev_runtime16.jsxDEV)(import_jsx_dev_runtime16.Fragment, { children: JSON.stringify(param) }, void 0, false, {
|
|
3532
|
+
fileName: "../src/react-devtools/Updates.tsx",
|
|
3533
|
+
lineNumber: 57,
|
|
3534
|
+
columnNumber: 11
|
|
3535
|
+
}, this) }, void 0, false, {
|
|
3536
|
+
fileName: "../src/react-devtools/Updates.tsx",
|
|
3537
|
+
lineNumber: 51,
|
|
3538
|
+
columnNumber: 9
|
|
3539
|
+
}, this)
|
|
3540
|
+
]
|
|
3541
|
+
},
|
|
3542
|
+
`param` + index,
|
|
3543
|
+
true,
|
|
3544
|
+
{
|
|
3545
|
+
fileName: "../src/react-devtools/Updates.tsx",
|
|
3546
|
+
lineNumber: 44,
|
|
3547
|
+
columnNumber: 8
|
|
3548
|
+
},
|
|
3549
|
+
this
|
|
3550
|
+
);
|
|
3551
|
+
})
|
|
3552
|
+
] }, void 0, true, {
|
|
3553
|
+
fileName: "../src/react-devtools/Updates.tsx",
|
|
3554
|
+
lineNumber: 40,
|
|
3555
|
+
columnNumber: 5
|
|
3556
|
+
}, this),
|
|
3557
|
+
/* @__PURE__ */ (0, import_jsx_dev_runtime16.jsxDEV)("section", { className: "node transaction_output", children: [
|
|
3558
|
+
/* @__PURE__ */ (0, import_jsx_dev_runtime16.jsxDEV)("span", { className: "detail", children: "output: " }, void 0, false, {
|
|
3559
|
+
fileName: "../src/react-devtools/Updates.tsx",
|
|
3560
|
+
lineNumber: 65,
|
|
3561
|
+
columnNumber: 6
|
|
3562
|
+
}, this),
|
|
3563
|
+
/* @__PURE__ */ (0, import_jsx_dev_runtime16.jsxDEV)("span", { className: "detail", children: discoverType(transactionUpdate.output) }, void 0, false, {
|
|
3564
|
+
fileName: "../src/react-devtools/Updates.tsx",
|
|
3565
|
+
lineNumber: 66,
|
|
3566
|
+
columnNumber: 6
|
|
3567
|
+
}, this),
|
|
3568
|
+
transactionUpdate.output ? /* @__PURE__ */ (0, import_jsx_dev_runtime16.jsxDEV)("span", { className: "summary", children: [
|
|
3569
|
+
": ",
|
|
3570
|
+
JSON.stringify(transactionUpdate.output)
|
|
3571
|
+
] }, void 0, true, {
|
|
3572
|
+
fileName: "../src/react-devtools/Updates.tsx",
|
|
3573
|
+
lineNumber: 70,
|
|
3574
|
+
columnNumber: 7
|
|
3575
|
+
}, this) : null
|
|
3576
|
+
] }, void 0, true, {
|
|
3577
|
+
fileName: "../src/react-devtools/Updates.tsx",
|
|
3578
|
+
lineNumber: 64,
|
|
3579
|
+
columnNumber: 5
|
|
3580
|
+
}, this),
|
|
3581
|
+
/* @__PURE__ */ (0, import_jsx_dev_runtime16.jsxDEV)("section", { className: "transaction_impact", children: [
|
|
3582
|
+
/* @__PURE__ */ (0, import_jsx_dev_runtime16.jsxDEV)("span", { className: "detail", children: "impact: " }, void 0, false, {
|
|
3583
|
+
fileName: "../src/react-devtools/Updates.tsx",
|
|
3584
|
+
lineNumber: 76,
|
|
3585
|
+
columnNumber: 6
|
|
3586
|
+
}, this),
|
|
3587
|
+
transactionUpdate.atomUpdates.filter((token) => !token.key.startsWith(`\u{1F441}\u200D\u{1F5E8}`)).map((atomUpdate, index) => {
|
|
3588
|
+
return /* @__PURE__ */ (0, import_jsx_dev_runtime16.jsxDEV)(
|
|
3589
|
+
article.AtomUpdate,
|
|
3590
|
+
{
|
|
3591
|
+
serialNumber: index,
|
|
3592
|
+
atomUpdate
|
|
3593
|
+
},
|
|
3594
|
+
`${transactionUpdate.key}:${index}:${atomUpdate.key}`,
|
|
3595
|
+
false,
|
|
3596
|
+
{
|
|
3597
|
+
fileName: "../src/react-devtools/Updates.tsx",
|
|
3598
|
+
lineNumber: 81,
|
|
3599
|
+
columnNumber: 9
|
|
3600
|
+
},
|
|
3601
|
+
this
|
|
3602
|
+
);
|
|
3603
|
+
})
|
|
3604
|
+
] }, void 0, true, {
|
|
3605
|
+
fileName: "../src/react-devtools/Updates.tsx",
|
|
3606
|
+
lineNumber: 75,
|
|
3607
|
+
columnNumber: 5
|
|
3608
|
+
}, this)
|
|
3609
|
+
] }, void 0, true, {
|
|
3610
|
+
fileName: "../src/react-devtools/Updates.tsx",
|
|
3611
|
+
lineNumber: 39,
|
|
3612
|
+
columnNumber: 4
|
|
3613
|
+
}, this)
|
|
3614
|
+
] }, void 0, true, {
|
|
3615
|
+
fileName: "../src/react-devtools/Updates.tsx",
|
|
3616
|
+
lineNumber: 35,
|
|
1798
3617
|
columnNumber: 3
|
|
1799
3618
|
}, this);
|
|
1800
3619
|
};
|
|
1801
|
-
var
|
|
1802
|
-
|
|
1803
|
-
|
|
1804
|
-
|
|
1805
|
-
|
|
1806
|
-
|
|
1807
|
-
|
|
1808
|
-
|
|
1809
|
-
|
|
1810
|
-
},
|
|
1811
|
-
|
|
1812
|
-
|
|
1813
|
-
|
|
1814
|
-
|
|
1815
|
-
|
|
1816
|
-
|
|
1817
|
-
},
|
|
1818
|
-
this
|
|
1819
|
-
) : /* @__PURE__ */ (0, import_jsx_dev_runtime12.jsxDEV)("div", { className: "json_editor", children: /* @__PURE__ */ (0, import_jsx_dev_runtime12.jsxDEV)(
|
|
1820
|
-
ElasticInput,
|
|
1821
|
-
{
|
|
1822
|
-
value: data instanceof Set ? `Set ` + JSON.stringify([...data]) : data instanceof Map ? `Map ` + JSON.stringify([...data]) : Object.getPrototypeOf(data).constructor.name + ` ` + JSON.stringify(data),
|
|
1823
|
-
disabled: true
|
|
1824
|
-
},
|
|
1825
|
-
void 0,
|
|
1826
|
-
false,
|
|
1827
|
-
{
|
|
1828
|
-
fileName: "../src/react-devtools/StateEditor.tsx",
|
|
1829
|
-
lineNumber: 48,
|
|
3620
|
+
var TimelineUpdateFC = ({ timelineUpdate }) => {
|
|
3621
|
+
return /* @__PURE__ */ (0, import_jsx_dev_runtime16.jsxDEV)("article", { className: "node timeline_update", children: [
|
|
3622
|
+
/* @__PURE__ */ (0, import_jsx_dev_runtime16.jsxDEV)("header", { children: /* @__PURE__ */ (0, import_jsx_dev_runtime16.jsxDEV)("h4", { children: [
|
|
3623
|
+
timelineUpdate.timestamp,
|
|
3624
|
+
": ",
|
|
3625
|
+
timelineUpdate.type,
|
|
3626
|
+
" (",
|
|
3627
|
+
timelineUpdate.key,
|
|
3628
|
+
")"
|
|
3629
|
+
] }, void 0, true, {
|
|
3630
|
+
fileName: "../src/react-devtools/Updates.tsx",
|
|
3631
|
+
lineNumber: 100,
|
|
3632
|
+
columnNumber: 5
|
|
3633
|
+
}, this) }, void 0, false, {
|
|
3634
|
+
fileName: "../src/react-devtools/Updates.tsx",
|
|
3635
|
+
lineNumber: 99,
|
|
1830
3636
|
columnNumber: 4
|
|
1831
|
-
},
|
|
1832
|
-
|
|
1833
|
-
|
|
1834
|
-
|
|
1835
|
-
|
|
3637
|
+
}, this),
|
|
3638
|
+
/* @__PURE__ */ (0, import_jsx_dev_runtime16.jsxDEV)("main", { children: timelineUpdate.type === `transaction_update` ? timelineUpdate.atomUpdates.filter((token) => !token.key.startsWith(`\u{1F441}\u200D\u{1F5E8}`)).map((atomUpdate, index) => {
|
|
3639
|
+
return /* @__PURE__ */ (0, import_jsx_dev_runtime16.jsxDEV)(
|
|
3640
|
+
article.AtomUpdate,
|
|
3641
|
+
{
|
|
3642
|
+
serialNumber: index,
|
|
3643
|
+
atomUpdate
|
|
3644
|
+
},
|
|
3645
|
+
`${timelineUpdate.key}:${index}:${atomUpdate.key}`,
|
|
3646
|
+
false,
|
|
3647
|
+
{
|
|
3648
|
+
fileName: "../src/react-devtools/Updates.tsx",
|
|
3649
|
+
lineNumber: 111,
|
|
3650
|
+
columnNumber: 9
|
|
3651
|
+
},
|
|
3652
|
+
this
|
|
3653
|
+
);
|
|
3654
|
+
}) : timelineUpdate.type === `selector_update` ? timelineUpdate.atomUpdates.filter((token) => !token.key.startsWith(`\u{1F441}\u200D\u{1F5E8}`)).map((atomUpdate, index) => {
|
|
3655
|
+
return /* @__PURE__ */ (0, import_jsx_dev_runtime16.jsxDEV)(
|
|
3656
|
+
article.AtomUpdate,
|
|
3657
|
+
{
|
|
3658
|
+
serialNumber: index,
|
|
3659
|
+
atomUpdate
|
|
3660
|
+
},
|
|
3661
|
+
`${timelineUpdate.key}:${index}:${atomUpdate.key}`,
|
|
3662
|
+
false,
|
|
3663
|
+
{
|
|
3664
|
+
fileName: "../src/react-devtools/Updates.tsx",
|
|
3665
|
+
lineNumber: 123,
|
|
3666
|
+
columnNumber: 9
|
|
3667
|
+
},
|
|
3668
|
+
this
|
|
3669
|
+
);
|
|
3670
|
+
}) : timelineUpdate.type === `atom_update` ? /* @__PURE__ */ (0, import_jsx_dev_runtime16.jsxDEV)(
|
|
3671
|
+
article.AtomUpdate,
|
|
3672
|
+
{
|
|
3673
|
+
serialNumber: timelineUpdate.timestamp,
|
|
3674
|
+
atomUpdate: timelineUpdate
|
|
3675
|
+
},
|
|
3676
|
+
void 0,
|
|
3677
|
+
false,
|
|
3678
|
+
{
|
|
3679
|
+
fileName: "../src/react-devtools/Updates.tsx",
|
|
3680
|
+
lineNumber: 131,
|
|
3681
|
+
columnNumber: 6
|
|
3682
|
+
},
|
|
3683
|
+
this
|
|
3684
|
+
) : null }, void 0, false, {
|
|
3685
|
+
fileName: "../src/react-devtools/Updates.tsx",
|
|
3686
|
+
lineNumber: 105,
|
|
3687
|
+
columnNumber: 4
|
|
3688
|
+
}, this)
|
|
3689
|
+
] }, void 0, true, {
|
|
3690
|
+
fileName: "../src/react-devtools/Updates.tsx",
|
|
3691
|
+
lineNumber: 98,
|
|
1836
3692
|
columnNumber: 3
|
|
1837
3693
|
}, this);
|
|
1838
3694
|
};
|
|
1839
|
-
var
|
|
1840
|
-
|
|
1841
|
-
|
|
1842
|
-
|
|
1843
|
-
|
|
1844
|
-
|
|
1845
|
-
|
|
1846
|
-
|
|
1847
|
-
|
|
1848
|
-
|
|
1849
|
-
|
|
3695
|
+
var article = {
|
|
3696
|
+
AtomUpdate: AtomUpdateFC,
|
|
3697
|
+
TransactionUpdate: TransactionUpdateFC,
|
|
3698
|
+
TimelineUpdate: TimelineUpdateFC
|
|
3699
|
+
};
|
|
3700
|
+
|
|
3701
|
+
// ../src/react-devtools/TimelineIndex.tsx
|
|
3702
|
+
var import_jsx_dev_runtime17 = require("react/jsx-dev-runtime");
|
|
3703
|
+
var YouAreHere = () => {
|
|
3704
|
+
return /* @__PURE__ */ (0, import_jsx_dev_runtime17.jsxDEV)("span", { className: "you_are_here", children: "you are here" }, void 0, false, {
|
|
3705
|
+
fileName: "../src/react-devtools/TimelineIndex.tsx",
|
|
3706
|
+
lineNumber: 17,
|
|
1850
3707
|
columnNumber: 9
|
|
1851
3708
|
}, this);
|
|
1852
3709
|
};
|
|
1853
|
-
|
|
1854
|
-
|
|
1855
|
-
|
|
1856
|
-
|
|
1857
|
-
|
|
1858
|
-
|
|
1859
|
-
|
|
1860
|
-
|
|
1861
|
-
|
|
1862
|
-
fileName: "../src/react-devtools/TokenList.tsx",
|
|
1863
|
-
lineNumber: 39,
|
|
1864
|
-
columnNumber: 13
|
|
1865
|
-
}, this),
|
|
1866
|
-
/* @__PURE__ */ (0, import_jsx_dev_runtime13.jsxDEV)(StoreEditor, { storeHooks, token }, void 0, false, {
|
|
1867
|
-
fileName: "../src/react-devtools/TokenList.tsx",
|
|
1868
|
-
lineNumber: 42,
|
|
1869
|
-
columnNumber: 13
|
|
1870
|
-
}, this)
|
|
1871
|
-
] }, void 0, true, {
|
|
1872
|
-
fileName: "../src/react-devtools/TokenList.tsx",
|
|
1873
|
-
lineNumber: 38,
|
|
1874
|
-
columnNumber: 12
|
|
1875
|
-
}, this)) : recordToEntries(token.familyMembers).map(([key2, token2]) => /* @__PURE__ */ (0, import_jsx_dev_runtime13.jsxDEV)(import_jsx_dev_runtime13.Fragment, { children: [
|
|
1876
|
-
/* @__PURE__ */ (0, import_jsx_dev_runtime13.jsxDEV)("label", { children: key2 }, void 0, false, {
|
|
1877
|
-
fileName: "../src/react-devtools/TokenList.tsx",
|
|
1878
|
-
lineNumber: 47,
|
|
1879
|
-
columnNumber: 13
|
|
3710
|
+
var TimelineLog = ({ token, isOpenState, timelineState }) => {
|
|
3711
|
+
const timeline = (0, import_react8.useO)(timelineState);
|
|
3712
|
+
const [isOpen, setIsOpen] = (0, import_react8.useIO)(isOpenState);
|
|
3713
|
+
return /* @__PURE__ */ (0, import_jsx_dev_runtime17.jsxDEV)("section", { className: "node timeline_log", children: [
|
|
3714
|
+
/* @__PURE__ */ (0, import_jsx_dev_runtime17.jsxDEV)("header", { children: [
|
|
3715
|
+
/* @__PURE__ */ (0, import_jsx_dev_runtime17.jsxDEV)(button.OpenClose, { isOpen, setIsOpen }, void 0, false, {
|
|
3716
|
+
fileName: "../src/react-devtools/TimelineIndex.tsx",
|
|
3717
|
+
lineNumber: 31,
|
|
3718
|
+
columnNumber: 5
|
|
1880
3719
|
}, this),
|
|
1881
|
-
/* @__PURE__ */ (0,
|
|
1882
|
-
|
|
1883
|
-
|
|
1884
|
-
|
|
1885
|
-
|
|
1886
|
-
|
|
1887
|
-
|
|
3720
|
+
/* @__PURE__ */ (0, import_jsx_dev_runtime17.jsxDEV)("label", { children: [
|
|
3721
|
+
/* @__PURE__ */ (0, import_jsx_dev_runtime17.jsxDEV)("h2", { children: token.key }, void 0, false, {
|
|
3722
|
+
fileName: "../src/react-devtools/TimelineIndex.tsx",
|
|
3723
|
+
lineNumber: 33,
|
|
3724
|
+
columnNumber: 6
|
|
3725
|
+
}, this),
|
|
3726
|
+
/* @__PURE__ */ (0, import_jsx_dev_runtime17.jsxDEV)("span", { className: "detail length", children: [
|
|
3727
|
+
"(",
|
|
3728
|
+
timeline.at,
|
|
3729
|
+
"/",
|
|
3730
|
+
timeline.history.length,
|
|
3731
|
+
")"
|
|
3732
|
+
] }, void 0, true, {
|
|
3733
|
+
fileName: "../src/react-devtools/TimelineIndex.tsx",
|
|
3734
|
+
lineNumber: 34,
|
|
3735
|
+
columnNumber: 6
|
|
3736
|
+
}, this),
|
|
3737
|
+
/* @__PURE__ */ (0, import_jsx_dev_runtime17.jsxDEV)("span", { className: "gap" }, void 0, false, {
|
|
3738
|
+
fileName: "../src/react-devtools/TimelineIndex.tsx",
|
|
3739
|
+
lineNumber: 37,
|
|
3740
|
+
columnNumber: 6
|
|
3741
|
+
}, this),
|
|
3742
|
+
/* @__PURE__ */ (0, import_jsx_dev_runtime17.jsxDEV)("nav", { children: [
|
|
3743
|
+
/* @__PURE__ */ (0, import_jsx_dev_runtime17.jsxDEV)(
|
|
3744
|
+
"button",
|
|
3745
|
+
{
|
|
3746
|
+
type: "button",
|
|
3747
|
+
onClick: () => (0, import_atom9.undo)(token),
|
|
3748
|
+
disabled: timeline.at === 0,
|
|
3749
|
+
children: "undo"
|
|
3750
|
+
},
|
|
3751
|
+
void 0,
|
|
3752
|
+
false,
|
|
3753
|
+
{
|
|
3754
|
+
fileName: "../src/react-devtools/TimelineIndex.tsx",
|
|
3755
|
+
lineNumber: 39,
|
|
3756
|
+
columnNumber: 7
|
|
3757
|
+
},
|
|
3758
|
+
this
|
|
3759
|
+
),
|
|
3760
|
+
/* @__PURE__ */ (0, import_jsx_dev_runtime17.jsxDEV)(
|
|
3761
|
+
"button",
|
|
3762
|
+
{
|
|
3763
|
+
type: "button",
|
|
3764
|
+
onClick: () => (0, import_atom9.redo)(token),
|
|
3765
|
+
disabled: timeline.at === timeline.history.length,
|
|
3766
|
+
children: "redo"
|
|
3767
|
+
},
|
|
3768
|
+
void 0,
|
|
3769
|
+
false,
|
|
3770
|
+
{
|
|
3771
|
+
fileName: "../src/react-devtools/TimelineIndex.tsx",
|
|
3772
|
+
lineNumber: 46,
|
|
3773
|
+
columnNumber: 7
|
|
3774
|
+
},
|
|
3775
|
+
this
|
|
3776
|
+
)
|
|
3777
|
+
] }, void 0, true, {
|
|
3778
|
+
fileName: "../src/react-devtools/TimelineIndex.tsx",
|
|
3779
|
+
lineNumber: 38,
|
|
3780
|
+
columnNumber: 6
|
|
1888
3781
|
}, this)
|
|
1889
|
-
] },
|
|
1890
|
-
fileName: "../src/react-devtools/
|
|
1891
|
-
lineNumber:
|
|
1892
|
-
columnNumber:
|
|
3782
|
+
] }, void 0, true, {
|
|
3783
|
+
fileName: "../src/react-devtools/TimelineIndex.tsx",
|
|
3784
|
+
lineNumber: 32,
|
|
3785
|
+
columnNumber: 5
|
|
1893
3786
|
}, this)
|
|
1894
3787
|
] }, void 0, true, {
|
|
1895
|
-
fileName: "../src/react-devtools/
|
|
1896
|
-
lineNumber:
|
|
1897
|
-
columnNumber:
|
|
3788
|
+
fileName: "../src/react-devtools/TimelineIndex.tsx",
|
|
3789
|
+
lineNumber: 30,
|
|
3790
|
+
columnNumber: 4
|
|
3791
|
+
}, this),
|
|
3792
|
+
isOpen ? /* @__PURE__ */ (0, import_jsx_dev_runtime17.jsxDEV)("main", { children: timeline.history.map((update, index) => /* @__PURE__ */ (0, import_jsx_dev_runtime17.jsxDEV)(import_react9.Fragment, { children: [
|
|
3793
|
+
index === timeline.at ? /* @__PURE__ */ (0, import_jsx_dev_runtime17.jsxDEV)(YouAreHere, {}, void 0, false, {
|
|
3794
|
+
fileName: "../src/react-devtools/TimelineIndex.tsx",
|
|
3795
|
+
lineNumber: 60,
|
|
3796
|
+
columnNumber: 33
|
|
3797
|
+
}, this) : null,
|
|
3798
|
+
/* @__PURE__ */ (0, import_jsx_dev_runtime17.jsxDEV)(article.TimelineUpdate, { timelineUpdate: update }, void 0, false, {
|
|
3799
|
+
fileName: "../src/react-devtools/TimelineIndex.tsx",
|
|
3800
|
+
lineNumber: 61,
|
|
3801
|
+
columnNumber: 8
|
|
3802
|
+
}, this),
|
|
3803
|
+
index === timeline.history.length - 1 && timeline.at === timeline.history.length ? /* @__PURE__ */ (0, import_jsx_dev_runtime17.jsxDEV)(YouAreHere, {}, void 0, false, {
|
|
3804
|
+
fileName: "../src/react-devtools/TimelineIndex.tsx",
|
|
3805
|
+
lineNumber: 64,
|
|
3806
|
+
columnNumber: 9
|
|
3807
|
+
}, this) : null
|
|
3808
|
+
] }, update.key + index + timeline.at, true, {
|
|
3809
|
+
fileName: "../src/react-devtools/TimelineIndex.tsx",
|
|
3810
|
+
lineNumber: 59,
|
|
3811
|
+
columnNumber: 7
|
|
1898
3812
|
}, this)) }, void 0, false, {
|
|
1899
|
-
fileName: "../src/react-devtools/
|
|
1900
|
-
lineNumber:
|
|
1901
|
-
columnNumber:
|
|
1902
|
-
}, this)
|
|
1903
|
-
|
|
1904
|
-
|
|
1905
|
-
|
|
1906
|
-
|
|
3813
|
+
fileName: "../src/react-devtools/TimelineIndex.tsx",
|
|
3814
|
+
lineNumber: 57,
|
|
3815
|
+
columnNumber: 5
|
|
3816
|
+
}, this) : null
|
|
3817
|
+
] }, void 0, true, {
|
|
3818
|
+
fileName: "../src/react-devtools/TimelineIndex.tsx",
|
|
3819
|
+
lineNumber: 29,
|
|
3820
|
+
columnNumber: 3
|
|
3821
|
+
}, this);
|
|
3822
|
+
};
|
|
3823
|
+
var TimelineIndex = () => {
|
|
3824
|
+
const tokenIds = (0, import_react8.useO)(timelineIndex);
|
|
3825
|
+
return /* @__PURE__ */ (0, import_jsx_dev_runtime17.jsxDEV)("article", { className: "index timeline_index", children: tokenIds.filter((token) => !token.key.startsWith(`\u{1F441}\u200D\u{1F5E8}`)).map((token) => {
|
|
3826
|
+
return /* @__PURE__ */ (0, import_jsx_dev_runtime17.jsxDEV)(
|
|
3827
|
+
TimelineLog,
|
|
3828
|
+
{
|
|
3829
|
+
token,
|
|
3830
|
+
isOpenState: findViewIsOpenState(token.key),
|
|
3831
|
+
timelineState: findTimelineState(token.key)
|
|
3832
|
+
},
|
|
3833
|
+
token.key,
|
|
3834
|
+
false,
|
|
3835
|
+
{
|
|
3836
|
+
fileName: "../src/react-devtools/TimelineIndex.tsx",
|
|
3837
|
+
lineNumber: 82,
|
|
3838
|
+
columnNumber: 7
|
|
3839
|
+
},
|
|
3840
|
+
this
|
|
3841
|
+
);
|
|
1907
3842
|
}) }, void 0, false, {
|
|
1908
|
-
fileName: "../src/react-devtools/
|
|
1909
|
-
lineNumber:
|
|
3843
|
+
fileName: "../src/react-devtools/TimelineIndex.tsx",
|
|
3844
|
+
lineNumber: 77,
|
|
1910
3845
|
columnNumber: 3
|
|
1911
3846
|
}, this);
|
|
1912
3847
|
};
|
|
1913
3848
|
|
|
1914
|
-
// ../src/
|
|
1915
|
-
var
|
|
1916
|
-
|
|
1917
|
-
|
|
1918
|
-
|
|
1919
|
-
|
|
1920
|
-
|
|
1921
|
-
|
|
1922
|
-
|
|
1923
|
-
|
|
1924
|
-
|
|
1925
|
-
|
|
3849
|
+
// ../src/react-devtools/TransactionIndex.tsx
|
|
3850
|
+
var import_react10 = require("atom.io/react");
|
|
3851
|
+
var import_jsx_dev_runtime18 = require("react/jsx-dev-runtime");
|
|
3852
|
+
var TransactionLog = ({ token, isOpenState, logState }) => {
|
|
3853
|
+
const log = (0, import_react10.useO)(logState);
|
|
3854
|
+
const [isOpen, setIsOpen] = (0, import_react10.useIO)(isOpenState);
|
|
3855
|
+
return /* @__PURE__ */ (0, import_jsx_dev_runtime18.jsxDEV)("section", { className: "node transaction_log", children: [
|
|
3856
|
+
/* @__PURE__ */ (0, import_jsx_dev_runtime18.jsxDEV)("header", { children: [
|
|
3857
|
+
/* @__PURE__ */ (0, import_jsx_dev_runtime18.jsxDEV)(button.OpenClose, { isOpen, setIsOpen }, void 0, false, {
|
|
3858
|
+
fileName: "../src/react-devtools/TransactionIndex.tsx",
|
|
3859
|
+
lineNumber: 31,
|
|
3860
|
+
columnNumber: 5
|
|
3861
|
+
}, this),
|
|
3862
|
+
/* @__PURE__ */ (0, import_jsx_dev_runtime18.jsxDEV)("label", { children: [
|
|
3863
|
+
/* @__PURE__ */ (0, import_jsx_dev_runtime18.jsxDEV)("h2", { children: token.key }, void 0, false, {
|
|
3864
|
+
fileName: "../src/react-devtools/TransactionIndex.tsx",
|
|
3865
|
+
lineNumber: 33,
|
|
3866
|
+
columnNumber: 6
|
|
3867
|
+
}, this),
|
|
3868
|
+
/* @__PURE__ */ (0, import_jsx_dev_runtime18.jsxDEV)("span", { className: "detail length", children: [
|
|
3869
|
+
"(",
|
|
3870
|
+
log.length,
|
|
3871
|
+
")"
|
|
3872
|
+
] }, void 0, true, {
|
|
3873
|
+
fileName: "../src/react-devtools/TransactionIndex.tsx",
|
|
3874
|
+
lineNumber: 34,
|
|
3875
|
+
columnNumber: 6
|
|
3876
|
+
}, this)
|
|
3877
|
+
] }, void 0, true, {
|
|
3878
|
+
fileName: "../src/react-devtools/TransactionIndex.tsx",
|
|
3879
|
+
lineNumber: 32,
|
|
3880
|
+
columnNumber: 5
|
|
3881
|
+
}, this)
|
|
3882
|
+
] }, void 0, true, {
|
|
3883
|
+
fileName: "../src/react-devtools/TransactionIndex.tsx",
|
|
3884
|
+
lineNumber: 30,
|
|
3885
|
+
columnNumber: 4
|
|
3886
|
+
}, this),
|
|
3887
|
+
isOpen ? /* @__PURE__ */ (0, import_jsx_dev_runtime18.jsxDEV)("main", { children: log.map((update, index) => /* @__PURE__ */ (0, import_jsx_dev_runtime18.jsxDEV)(
|
|
3888
|
+
article.TransactionUpdate,
|
|
3889
|
+
{
|
|
3890
|
+
serialNumber: index,
|
|
3891
|
+
transactionUpdate: update
|
|
3892
|
+
},
|
|
3893
|
+
update.key + index,
|
|
3894
|
+
false,
|
|
3895
|
+
{
|
|
3896
|
+
fileName: "../src/react-devtools/TransactionIndex.tsx",
|
|
3897
|
+
lineNumber: 40,
|
|
3898
|
+
columnNumber: 7
|
|
3899
|
+
},
|
|
3900
|
+
this
|
|
3901
|
+
)) }, void 0, false, {
|
|
3902
|
+
fileName: "../src/react-devtools/TransactionIndex.tsx",
|
|
3903
|
+
lineNumber: 38,
|
|
3904
|
+
columnNumber: 5
|
|
3905
|
+
}, this) : null
|
|
3906
|
+
] }, void 0, true, {
|
|
3907
|
+
fileName: "../src/react-devtools/TransactionIndex.tsx",
|
|
3908
|
+
lineNumber: 29,
|
|
3909
|
+
columnNumber: 3
|
|
3910
|
+
}, this);
|
|
3911
|
+
};
|
|
3912
|
+
var TransactionIndex = () => {
|
|
3913
|
+
const tokenIds = (0, import_react10.useO)(transactionIndex);
|
|
3914
|
+
return /* @__PURE__ */ (0, import_jsx_dev_runtime18.jsxDEV)("article", { className: "index transaction_index", children: tokenIds.filter((token) => !token.key.startsWith(`\u{1F441}\u200D\u{1F5E8}`)).map((token) => {
|
|
3915
|
+
return /* @__PURE__ */ (0, import_jsx_dev_runtime18.jsxDEV)(
|
|
3916
|
+
TransactionLog,
|
|
3917
|
+
{
|
|
3918
|
+
token,
|
|
3919
|
+
isOpenState: findViewIsOpenState(token.key),
|
|
3920
|
+
logState: findTransactionLogState(token.key)
|
|
3921
|
+
},
|
|
3922
|
+
token.key,
|
|
3923
|
+
false,
|
|
3924
|
+
{
|
|
3925
|
+
fileName: "../src/react-devtools/TransactionIndex.tsx",
|
|
3926
|
+
lineNumber: 60,
|
|
3927
|
+
columnNumber: 7
|
|
3928
|
+
},
|
|
3929
|
+
this
|
|
3930
|
+
);
|
|
3931
|
+
}) }, void 0, false, {
|
|
3932
|
+
fileName: "../src/react-devtools/TransactionIndex.tsx",
|
|
3933
|
+
lineNumber: 55,
|
|
3934
|
+
columnNumber: 3
|
|
3935
|
+
}, this);
|
|
1926
3936
|
};
|
|
1927
|
-
var lazyLocalStorageEffect = persistAtom(localStorage)(JSON);
|
|
1928
3937
|
|
|
1929
3938
|
// ../src/react-devtools/AtomIODevtools.tsx
|
|
1930
|
-
var
|
|
1931
|
-
var
|
|
1932
|
-
|
|
1933
|
-
|
|
1934
|
-
|
|
1935
|
-
|
|
1936
|
-
|
|
1937
|
-
|
|
1938
|
-
|
|
1939
|
-
|
|
1940
|
-
|
|
1941
|
-
|
|
1942
|
-
|
|
1943
|
-
|
|
1944
|
-
|
|
1945
|
-
|
|
1946
|
-
|
|
1947
|
-
|
|
1948
|
-
|
|
1949
|
-
|
|
1950
|
-
|
|
1951
|
-
|
|
1952
|
-
|
|
1953
|
-
|
|
1954
|
-
|
|
1955
|
-
|
|
1956
|
-
|
|
1957
|
-
|
|
1958
|
-
|
|
1959
|
-
|
|
1960
|
-
|
|
1961
|
-
|
|
1962
|
-
|
|
3939
|
+
var import_jsx_dev_runtime19 = require("react/jsx-dev-runtime");
|
|
3940
|
+
var AtomIODevtools = () => {
|
|
3941
|
+
const constraintsRef = (0, import_react12.useRef)(null);
|
|
3942
|
+
const [devtoolsAreOpen, setDevtoolsAreOpen] = (0, import_react11.useIO)(devtoolsAreOpenState);
|
|
3943
|
+
const [devtoolsView, setDevtoolsView] = (0, import_react11.useIO)(devtoolsViewSelectionState);
|
|
3944
|
+
const devtoolsViewOptions = (0, import_react11.useO)(devtoolsViewOptionsState);
|
|
3945
|
+
const mouseHasMoved = (0, import_react12.useRef)(false);
|
|
3946
|
+
return /* @__PURE__ */ (0, import_jsx_dev_runtime19.jsxDEV)(import_jsx_dev_runtime19.Fragment, { children: [
|
|
3947
|
+
/* @__PURE__ */ (0, import_jsx_dev_runtime19.jsxDEV)(
|
|
3948
|
+
import_framer_motion.motion.span,
|
|
3949
|
+
{
|
|
3950
|
+
ref: constraintsRef,
|
|
3951
|
+
className: "atom_io_devtools_zone",
|
|
3952
|
+
style: {
|
|
3953
|
+
position: `fixed`,
|
|
3954
|
+
top: 0,
|
|
3955
|
+
left: 0,
|
|
3956
|
+
right: 0,
|
|
3957
|
+
bottom: 0,
|
|
3958
|
+
pointerEvents: `none`
|
|
3959
|
+
}
|
|
3960
|
+
},
|
|
3961
|
+
void 0,
|
|
3962
|
+
false,
|
|
3963
|
+
{
|
|
3964
|
+
fileName: "../src/react-devtools/AtomIODevtools.tsx",
|
|
3965
|
+
lineNumber: 30,
|
|
3966
|
+
columnNumber: 4
|
|
3967
|
+
},
|
|
3968
|
+
this
|
|
3969
|
+
),
|
|
3970
|
+
/* @__PURE__ */ (0, import_jsx_dev_runtime19.jsxDEV)(
|
|
3971
|
+
import_framer_motion.motion.main,
|
|
3972
|
+
{
|
|
3973
|
+
drag: true,
|
|
3974
|
+
dragConstraints: constraintsRef,
|
|
3975
|
+
className: "atom_io_devtools",
|
|
3976
|
+
transition: import_framer_motion.spring,
|
|
3977
|
+
style: devtoolsAreOpen ? {} : {
|
|
3978
|
+
backgroundColor: `#0000`,
|
|
3979
|
+
borderColor: `#0000`,
|
|
3980
|
+
maxHeight: 28,
|
|
3981
|
+
maxWidth: 33
|
|
1963
3982
|
},
|
|
1964
|
-
|
|
1965
|
-
|
|
1966
|
-
|
|
1967
|
-
|
|
1968
|
-
{
|
|
1969
|
-
drag: true,
|
|
1970
|
-
dragConstraints: constraintsRef,
|
|
1971
|
-
className: "atom_io_devtools",
|
|
1972
|
-
transition: import_framer_motion.spring,
|
|
1973
|
-
style: devtoolsAreOpen ? {} : {
|
|
1974
|
-
backgroundColor: `#0000`,
|
|
1975
|
-
borderColor: `#0000`,
|
|
1976
|
-
maxHeight: 28,
|
|
1977
|
-
maxWidth: 33
|
|
1978
|
-
},
|
|
1979
|
-
children: [
|
|
1980
|
-
devtoolsAreOpen ? /* @__PURE__ */ (0, import_jsx_dev_runtime14.jsxDEV)(import_jsx_dev_runtime14.Fragment, { children: [
|
|
1981
|
-
/* @__PURE__ */ (0, import_jsx_dev_runtime14.jsxDEV)(import_framer_motion.motion.header, { children: /* @__PURE__ */ (0, import_jsx_dev_runtime14.jsxDEV)("h1", { children: "atom.io" }, void 0, false, {
|
|
3983
|
+
children: [
|
|
3984
|
+
devtoolsAreOpen ? /* @__PURE__ */ (0, import_jsx_dev_runtime19.jsxDEV)(import_jsx_dev_runtime19.Fragment, { children: [
|
|
3985
|
+
/* @__PURE__ */ (0, import_jsx_dev_runtime19.jsxDEV)(import_framer_motion.motion.header, { children: [
|
|
3986
|
+
/* @__PURE__ */ (0, import_jsx_dev_runtime19.jsxDEV)("h1", { children: "atom.io" }, void 0, false, {
|
|
1982
3987
|
fileName: "../src/react-devtools/AtomIODevtools.tsx",
|
|
1983
|
-
lineNumber:
|
|
1984
|
-
columnNumber: 9
|
|
1985
|
-
}, this) }, void 0, false, {
|
|
1986
|
-
fileName: "../src/react-devtools/AtomIODevtools.tsx",
|
|
1987
|
-
lineNumber: 63,
|
|
3988
|
+
lineNumber: 61,
|
|
1988
3989
|
columnNumber: 8
|
|
1989
3990
|
}, this),
|
|
1990
|
-
/* @__PURE__ */ (0,
|
|
1991
|
-
|
|
1992
|
-
|
|
1993
|
-
|
|
1994
|
-
|
|
1995
|
-
|
|
1996
|
-
|
|
1997
|
-
|
|
1998
|
-
|
|
1999
|
-
|
|
2000
|
-
|
|
2001
|
-
|
|
2002
|
-
},
|
|
2003
|
-
void 0,
|
|
2004
|
-
false,
|
|
2005
|
-
{
|
|
2006
|
-
fileName: "../src/react-devtools/AtomIODevtools.tsx",
|
|
2007
|
-
lineNumber: 70,
|
|
2008
|
-
columnNumber: 11
|
|
2009
|
-
},
|
|
2010
|
-
this
|
|
2011
|
-
)
|
|
2012
|
-
] }, void 0, true, {
|
|
2013
|
-
fileName: "../src/react-devtools/AtomIODevtools.tsx",
|
|
2014
|
-
lineNumber: 68,
|
|
2015
|
-
columnNumber: 10
|
|
2016
|
-
}, this),
|
|
2017
|
-
/* @__PURE__ */ (0, import_jsx_dev_runtime14.jsxDEV)("section", { children: [
|
|
2018
|
-
/* @__PURE__ */ (0, import_jsx_dev_runtime14.jsxDEV)("h2", { children: "selectors" }, void 0, false, {
|
|
2019
|
-
fileName: "../src/react-devtools/AtomIODevtools.tsx",
|
|
2020
|
-
lineNumber: 76,
|
|
2021
|
-
columnNumber: 11
|
|
2022
|
-
}, this),
|
|
2023
|
-
/* @__PURE__ */ (0, import_jsx_dev_runtime14.jsxDEV)(
|
|
2024
|
-
TokenList,
|
|
2025
|
-
{
|
|
2026
|
-
storeHooks,
|
|
2027
|
-
tokenIndex: selectorTokenIndexState
|
|
2028
|
-
},
|
|
2029
|
-
void 0,
|
|
2030
|
-
false,
|
|
2031
|
-
{
|
|
2032
|
-
fileName: "../src/react-devtools/AtomIODevtools.tsx",
|
|
2033
|
-
lineNumber: 77,
|
|
2034
|
-
columnNumber: 11
|
|
2035
|
-
},
|
|
2036
|
-
this
|
|
2037
|
-
)
|
|
2038
|
-
] }, void 0, true, {
|
|
3991
|
+
/* @__PURE__ */ (0, import_jsx_dev_runtime19.jsxDEV)("nav", { children: devtoolsViewOptions.map((viewOption) => /* @__PURE__ */ (0, import_jsx_dev_runtime19.jsxDEV)(
|
|
3992
|
+
"button",
|
|
3993
|
+
{
|
|
3994
|
+
type: "button",
|
|
3995
|
+
className: viewOption === devtoolsView ? `active` : ``,
|
|
3996
|
+
onClick: () => setDevtoolsView(viewOption),
|
|
3997
|
+
disabled: viewOption === devtoolsView,
|
|
3998
|
+
children: viewOption
|
|
3999
|
+
},
|
|
4000
|
+
viewOption,
|
|
4001
|
+
false,
|
|
4002
|
+
{
|
|
2039
4003
|
fileName: "../src/react-devtools/AtomIODevtools.tsx",
|
|
2040
|
-
lineNumber:
|
|
4004
|
+
lineNumber: 64,
|
|
2041
4005
|
columnNumber: 10
|
|
2042
|
-
},
|
|
2043
|
-
|
|
2044
|
-
|
|
2045
|
-
lineNumber: 67,
|
|
2046
|
-
columnNumber: 9
|
|
2047
|
-
}, this) }, void 0, false, {
|
|
4006
|
+
},
|
|
4007
|
+
this
|
|
4008
|
+
)) }, void 0, false, {
|
|
2048
4009
|
fileName: "../src/react-devtools/AtomIODevtools.tsx",
|
|
2049
|
-
lineNumber:
|
|
4010
|
+
lineNumber: 62,
|
|
2050
4011
|
columnNumber: 8
|
|
2051
4012
|
}, this)
|
|
2052
4013
|
] }, void 0, true, {
|
|
2053
4014
|
fileName: "../src/react-devtools/AtomIODevtools.tsx",
|
|
2054
|
-
lineNumber:
|
|
4015
|
+
lineNumber: 60,
|
|
2055
4016
|
columnNumber: 7
|
|
2056
|
-
}, this)
|
|
2057
|
-
/* @__PURE__ */ (0,
|
|
2058
|
-
"
|
|
2059
|
-
|
|
2060
|
-
|
|
2061
|
-
|
|
2062
|
-
|
|
2063
|
-
|
|
2064
|
-
|
|
2065
|
-
|
|
2066
|
-
|
|
2067
|
-
|
|
2068
|
-
|
|
2069
|
-
|
|
2070
|
-
|
|
2071
|
-
|
|
2072
|
-
|
|
2073
|
-
|
|
2074
|
-
|
|
2075
|
-
|
|
4017
|
+
}, this),
|
|
4018
|
+
/* @__PURE__ */ (0, import_jsx_dev_runtime19.jsxDEV)(import_framer_motion.motion.main, { children: /* @__PURE__ */ (0, import_jsx_dev_runtime19.jsxDEV)(import_framer_motion.LayoutGroup, { children: devtoolsView === `atoms` ? /* @__PURE__ */ (0, import_jsx_dev_runtime19.jsxDEV)(StateIndex, { tokenIndex: atomIndex }, void 0, false, {
|
|
4019
|
+
fileName: "../src/react-devtools/AtomIODevtools.tsx",
|
|
4020
|
+
lineNumber: 79,
|
|
4021
|
+
columnNumber: 10
|
|
4022
|
+
}, this) : devtoolsView === `selectors` ? /* @__PURE__ */ (0, import_jsx_dev_runtime19.jsxDEV)(StateIndex, { tokenIndex: selectorIndex }, void 0, false, {
|
|
4023
|
+
fileName: "../src/react-devtools/AtomIODevtools.tsx",
|
|
4024
|
+
lineNumber: 81,
|
|
4025
|
+
columnNumber: 10
|
|
4026
|
+
}, this) : devtoolsView === `transactions` ? /* @__PURE__ */ (0, import_jsx_dev_runtime19.jsxDEV)(TransactionIndex, {}, void 0, false, {
|
|
4027
|
+
fileName: "../src/react-devtools/AtomIODevtools.tsx",
|
|
4028
|
+
lineNumber: 83,
|
|
4029
|
+
columnNumber: 10
|
|
4030
|
+
}, this) : devtoolsView === `timelines` ? /* @__PURE__ */ (0, import_jsx_dev_runtime19.jsxDEV)(TimelineIndex, {}, void 0, false, {
|
|
4031
|
+
fileName: "../src/react-devtools/AtomIODevtools.tsx",
|
|
4032
|
+
lineNumber: 85,
|
|
4033
|
+
columnNumber: 10
|
|
4034
|
+
}, this) : null }, void 0, false, {
|
|
4035
|
+
fileName: "../src/react-devtools/AtomIODevtools.tsx",
|
|
4036
|
+
lineNumber: 77,
|
|
4037
|
+
columnNumber: 8
|
|
4038
|
+
}, this) }, void 0, false, {
|
|
4039
|
+
fileName: "../src/react-devtools/AtomIODevtools.tsx",
|
|
4040
|
+
lineNumber: 76,
|
|
4041
|
+
columnNumber: 7
|
|
4042
|
+
}, this)
|
|
4043
|
+
] }, void 0, true, {
|
|
4044
|
+
fileName: "../src/react-devtools/AtomIODevtools.tsx",
|
|
4045
|
+
lineNumber: 59,
|
|
4046
|
+
columnNumber: 6
|
|
4047
|
+
}, this) : null,
|
|
4048
|
+
/* @__PURE__ */ (0, import_jsx_dev_runtime19.jsxDEV)("footer", { children: /* @__PURE__ */ (0, import_jsx_dev_runtime19.jsxDEV)(
|
|
4049
|
+
"button",
|
|
4050
|
+
{
|
|
4051
|
+
type: "button",
|
|
4052
|
+
onMouseDown: () => mouseHasMoved.current = false,
|
|
4053
|
+
onMouseMove: () => mouseHasMoved.current = true,
|
|
4054
|
+
onMouseUp: () => {
|
|
4055
|
+
if (!mouseHasMoved.current) {
|
|
4056
|
+
setDevtoolsAreOpen((open) => !open);
|
|
4057
|
+
}
|
|
2076
4058
|
},
|
|
2077
|
-
|
|
2078
|
-
|
|
4059
|
+
children: "\u{1F441}\u200D\u{1F5E8}"
|
|
4060
|
+
},
|
|
4061
|
+
void 0,
|
|
4062
|
+
false,
|
|
4063
|
+
{
|
|
2079
4064
|
fileName: "../src/react-devtools/AtomIODevtools.tsx",
|
|
2080
|
-
lineNumber:
|
|
4065
|
+
lineNumber: 92,
|
|
2081
4066
|
columnNumber: 6
|
|
2082
|
-
},
|
|
2083
|
-
|
|
2084
|
-
|
|
2085
|
-
|
|
2086
|
-
|
|
2087
|
-
|
|
2088
|
-
|
|
2089
|
-
|
|
2090
|
-
|
|
2091
|
-
|
|
2092
|
-
|
|
2093
|
-
|
|
2094
|
-
|
|
2095
|
-
|
|
2096
|
-
|
|
2097
|
-
|
|
2098
|
-
|
|
2099
|
-
|
|
2100
|
-
|
|
4067
|
+
},
|
|
4068
|
+
this
|
|
4069
|
+
) }, void 0, false, {
|
|
4070
|
+
fileName: "../src/react-devtools/AtomIODevtools.tsx",
|
|
4071
|
+
lineNumber: 91,
|
|
4072
|
+
columnNumber: 5
|
|
4073
|
+
}, this)
|
|
4074
|
+
]
|
|
4075
|
+
},
|
|
4076
|
+
void 0,
|
|
4077
|
+
true,
|
|
4078
|
+
{
|
|
4079
|
+
fileName: "../src/react-devtools/AtomIODevtools.tsx",
|
|
4080
|
+
lineNumber: 42,
|
|
4081
|
+
columnNumber: 4
|
|
4082
|
+
},
|
|
4083
|
+
this
|
|
4084
|
+
)
|
|
4085
|
+
] }, void 0, true, {
|
|
4086
|
+
fileName: "../src/react-devtools/AtomIODevtools.tsx",
|
|
4087
|
+
lineNumber: 29,
|
|
4088
|
+
columnNumber: 3
|
|
4089
|
+
}, this);
|
|
2101
4090
|
};
|
|
2102
|
-
|
|
4091
|
+
|
|
4092
|
+
// ../src/react-devtools/index.ts
|
|
4093
|
+
var {
|
|
4094
|
+
atomIndex,
|
|
4095
|
+
selectorIndex,
|
|
4096
|
+
transactionIndex,
|
|
4097
|
+
findTransactionLogState,
|
|
4098
|
+
timelineIndex,
|
|
4099
|
+
findTimelineState
|
|
4100
|
+
} = attachIntrospectionStates();
|
|
4101
|
+
var devtoolsAreOpenState = atom({
|
|
4102
|
+
key: `\u{1F441}\u200D\u{1F5E8} Devtools Are Open`,
|
|
4103
|
+
default: true,
|
|
4104
|
+
effects: [lazyLocalStorageEffect(`\u{1F441}\u200D\u{1F5E8} Devtools Are Open`)]
|
|
4105
|
+
});
|
|
4106
|
+
var devtoolsViewSelectionState = atom({
|
|
4107
|
+
key: `\u{1F441}\u200D\u{1F5E8} Devtools View Selection`,
|
|
4108
|
+
default: `atoms`,
|
|
4109
|
+
effects: [lazyLocalStorageEffect(`\u{1F441}\u200D\u{1F5E8} Devtools View`)]
|
|
4110
|
+
});
|
|
4111
|
+
var devtoolsViewOptionsState = atom({
|
|
4112
|
+
key: `\u{1F441}\u200D\u{1F5E8} Devtools View Options`,
|
|
4113
|
+
default: [`atoms`, `selectors`, `transactions`, `timelines`],
|
|
4114
|
+
effects: [lazyLocalStorageEffect(`\u{1F441}\u200D\u{1F5E8} Devtools View Options`)]
|
|
4115
|
+
});
|
|
4116
|
+
var findViewIsOpenState = atomFamily({
|
|
4117
|
+
key: `\u{1F441}\u200D\u{1F5E8} Devtools View Is Open`,
|
|
4118
|
+
default: false,
|
|
4119
|
+
effects: (key) => [lazyLocalStorageEffect(key + `:view-is-open`)]
|
|
4120
|
+
});
|
|
4121
|
+
var primitiveRefinery = new Refinery({
|
|
4122
|
+
number: (input) => typeof input === `number`,
|
|
4123
|
+
string: (input) => typeof input === `string`,
|
|
4124
|
+
boolean: (input) => typeof input === `boolean`,
|
|
4125
|
+
null: (input) => input === null
|
|
4126
|
+
});
|
|
4127
|
+
var jsonTreeRefinery = new Refinery({
|
|
4128
|
+
object: isPlainObject,
|
|
4129
|
+
array: (input) => Array.isArray(input)
|
|
4130
|
+
});
|
|
4131
|
+
var prettyJson = new Differ(primitiveRefinery, jsonTreeRefinery, {
|
|
4132
|
+
number: diffNumber,
|
|
4133
|
+
string: diffString,
|
|
4134
|
+
boolean: diffBoolean,
|
|
4135
|
+
null: () => ({ summary: `No Change` }),
|
|
4136
|
+
object: diffObject,
|
|
4137
|
+
array: diffArray
|
|
4138
|
+
});
|
|
2103
4139
|
// Annotate the CommonJS export names for ESM import in node:
|
|
2104
4140
|
0 && (module.exports = {
|
|
2105
4141
|
AtomIODevtools,
|
|
2106
|
-
|
|
4142
|
+
atomIndex,
|
|
4143
|
+
devtoolsAreOpenState,
|
|
4144
|
+
devtoolsViewOptionsState,
|
|
4145
|
+
devtoolsViewSelectionState,
|
|
4146
|
+
findTimelineState,
|
|
4147
|
+
findTransactionLogState,
|
|
4148
|
+
findViewIsOpenState,
|
|
4149
|
+
jsonTreeRefinery,
|
|
4150
|
+
prettyJson,
|
|
4151
|
+
primitiveRefinery,
|
|
4152
|
+
selectorIndex,
|
|
4153
|
+
timelineIndex,
|
|
4154
|
+
transactionIndex
|
|
2107
4155
|
});
|
|
2108
4156
|
//# sourceMappingURL=index.js.map
|