@bian-womp/spark-graph 0.3.89 → 0.3.91

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (167) hide show
  1. package/lib/cjs/index.cjs +9 -5
  2. package/lib/cjs/index.cjs.map +1 -1
  3. package/lib/cjs/src/runtime/GraphRuntime.d.ts.map +1 -1
  4. package/lib/cjs/src/runtime/components/HandleResolver.d.ts.map +1 -1
  5. package/lib/cjs/src/runtime/components/NodeExecutor.d.ts.map +1 -1
  6. package/lib/esm/index.js +9 -5
  7. package/lib/esm/index.js.map +1 -1
  8. package/lib/esm/src/runtime/GraphRuntime.d.ts.map +1 -1
  9. package/lib/esm/src/runtime/components/HandleResolver.d.ts.map +1 -1
  10. package/lib/esm/src/runtime/components/NodeExecutor.d.ts.map +1 -1
  11. package/package.json +2 -2
  12. package/lib/src/builder/GraphBuilder.d.ts +0 -43
  13. package/lib/src/builder/GraphBuilder.d.ts.map +0 -1
  14. package/lib/src/builder/GraphBuilder.js +0 -279
  15. package/lib/src/builder/GraphBuilder.js.map +0 -1
  16. package/lib/src/builder/Registry.d.ts +0 -87
  17. package/lib/src/builder/Registry.d.ts.map +0 -1
  18. package/lib/src/builder/Registry.js +0 -390
  19. package/lib/src/builder/Registry.js.map +0 -1
  20. package/lib/src/core/categories.d.ts +0 -22
  21. package/lib/src/core/categories.d.ts.map +0 -1
  22. package/lib/src/core/categories.js +0 -2
  23. package/lib/src/core/categories.js.map +0 -1
  24. package/lib/src/core/order.d.ts +0 -7
  25. package/lib/src/core/order.d.ts.map +0 -1
  26. package/lib/src/core/order.js +0 -66
  27. package/lib/src/core/order.js.map +0 -1
  28. package/lib/src/core/type-utils.d.ts +0 -29
  29. package/lib/src/core/type-utils.d.ts.map +0 -1
  30. package/lib/src/core/type-utils.js +0 -92
  31. package/lib/src/core/type-utils.js.map +0 -1
  32. package/lib/src/core/types.d.ts +0 -95
  33. package/lib/src/core/types.d.ts.map +0 -1
  34. package/lib/src/core/types.js +0 -2
  35. package/lib/src/core/types.js.map +0 -1
  36. package/lib/src/examples/arrays.d.ts +0 -5
  37. package/lib/src/examples/arrays.d.ts.map +0 -1
  38. package/lib/src/examples/arrays.js +0 -49
  39. package/lib/src/examples/arrays.js.map +0 -1
  40. package/lib/src/examples/async.d.ts +0 -5
  41. package/lib/src/examples/async.d.ts.map +0 -1
  42. package/lib/src/examples/async.js +0 -91
  43. package/lib/src/examples/async.js.map +0 -1
  44. package/lib/src/examples/progress.d.ts +0 -5
  45. package/lib/src/examples/progress.d.ts.map +0 -1
  46. package/lib/src/examples/progress.js +0 -51
  47. package/lib/src/examples/progress.js.map +0 -1
  48. package/lib/src/examples/run.d.ts +0 -2
  49. package/lib/src/examples/run.d.ts.map +0 -1
  50. package/lib/src/examples/run.js +0 -32
  51. package/lib/src/examples/run.js.map +0 -1
  52. package/lib/src/examples/runMode.d.ts +0 -2
  53. package/lib/src/examples/runMode.d.ts.map +0 -1
  54. package/lib/src/examples/runMode.js +0 -223
  55. package/lib/src/examples/runMode.js.map +0 -1
  56. package/lib/src/examples/shared.d.ts +0 -5
  57. package/lib/src/examples/shared.d.ts.map +0 -1
  58. package/lib/src/examples/shared.js +0 -47
  59. package/lib/src/examples/shared.js.map +0 -1
  60. package/lib/src/examples/simple.d.ts +0 -5
  61. package/lib/src/examples/simple.d.ts.map +0 -1
  62. package/lib/src/examples/simple.js +0 -79
  63. package/lib/src/examples/simple.js.map +0 -1
  64. package/lib/src/examples/snapshot.d.ts +0 -4
  65. package/lib/src/examples/snapshot.d.ts.map +0 -1
  66. package/lib/src/examples/snapshot.js +0 -58
  67. package/lib/src/examples/snapshot.js.map +0 -1
  68. package/lib/src/examples/validation.d.ts +0 -5
  69. package/lib/src/examples/validation.d.ts.map +0 -1
  70. package/lib/src/examples/validation.js +0 -105
  71. package/lib/src/examples/validation.js.map +0 -1
  72. package/lib/src/index.d.ts +0 -27
  73. package/lib/src/index.d.ts.map +0 -1
  74. package/lib/src/index.js +0 -19
  75. package/lib/src/index.js.map +0 -1
  76. package/lib/src/misc/base.d.ts +0 -51
  77. package/lib/src/misc/base.d.ts.map +0 -1
  78. package/lib/src/misc/base.js +0 -1091
  79. package/lib/src/misc/base.js.map +0 -1
  80. package/lib/src/misc/utils/LevelLogger.d.ts +0 -150
  81. package/lib/src/misc/utils/LevelLogger.d.ts.map +0 -1
  82. package/lib/src/misc/utils/LevelLogger.js +0 -420
  83. package/lib/src/misc/utils/LevelLogger.js.map +0 -1
  84. package/lib/src/misc/utils/LevelLogger.test.d.ts +0 -2
  85. package/lib/src/misc/utils/LevelLogger.test.d.ts.map +0 -1
  86. package/lib/src/misc/utils/LevelLogger.test.js +0 -283
  87. package/lib/src/misc/utils/LevelLogger.test.js.map +0 -1
  88. package/lib/src/misc/utils/json.d.ts +0 -34
  89. package/lib/src/misc/utils/json.d.ts.map +0 -1
  90. package/lib/src/misc/utils/json.js +0 -471
  91. package/lib/src/misc/utils/json.js.map +0 -1
  92. package/lib/src/misc/utils/merge.d.ts +0 -51
  93. package/lib/src/misc/utils/merge.d.ts.map +0 -1
  94. package/lib/src/misc/utils/merge.js +0 -591
  95. package/lib/src/misc/utils/merge.js.map +0 -1
  96. package/lib/src/misc/utils/test-logger-output.d.ts +0 -7
  97. package/lib/src/misc/utils/test-logger-output.d.ts.map +0 -1
  98. package/lib/src/misc/utils/test-logger-output.js +0 -48
  99. package/lib/src/misc/utils/test-logger-output.js.map +0 -1
  100. package/lib/src/plugins/composite.d.ts +0 -22
  101. package/lib/src/plugins/composite.d.ts.map +0 -1
  102. package/lib/src/plugins/composite.js +0 -59
  103. package/lib/src/plugins/composite.js.map +0 -1
  104. package/lib/src/plugins/compute.d.ts +0 -5
  105. package/lib/src/plugins/compute.d.ts.map +0 -1
  106. package/lib/src/plugins/compute.js +0 -39
  107. package/lib/src/plugins/compute.js.map +0 -1
  108. package/lib/src/runtime/Engine.d.ts +0 -26
  109. package/lib/src/runtime/Engine.d.ts.map +0 -1
  110. package/lib/src/runtime/Engine.js +0 -2
  111. package/lib/src/runtime/Engine.js.map +0 -1
  112. package/lib/src/runtime/GraphLifecycleApi.d.ts +0 -46
  113. package/lib/src/runtime/GraphLifecycleApi.d.ts.map +0 -1
  114. package/lib/src/runtime/GraphLifecycleApi.js +0 -2
  115. package/lib/src/runtime/GraphLifecycleApi.js.map +0 -1
  116. package/lib/src/runtime/GraphRuntime.d.ts +0 -111
  117. package/lib/src/runtime/GraphRuntime.d.ts.map +0 -1
  118. package/lib/src/runtime/GraphRuntime.js +0 -791
  119. package/lib/src/runtime/GraphRuntime.js.map +0 -1
  120. package/lib/src/runtime/LocalEngine.d.ts +0 -41
  121. package/lib/src/runtime/LocalEngine.d.ts.map +0 -1
  122. package/lib/src/runtime/LocalEngine.js +0 -89
  123. package/lib/src/runtime/LocalEngine.js.map +0 -1
  124. package/lib/src/runtime/components/EdgePropagator.d.ts +0 -93
  125. package/lib/src/runtime/components/EdgePropagator.d.ts.map +0 -1
  126. package/lib/src/runtime/components/EdgePropagator.js +0 -378
  127. package/lib/src/runtime/components/EdgePropagator.js.map +0 -1
  128. package/lib/src/runtime/components/EventEmitter.d.ts +0 -12
  129. package/lib/src/runtime/components/EventEmitter.d.ts.map +0 -1
  130. package/lib/src/runtime/components/EventEmitter.js +0 -33
  131. package/lib/src/runtime/components/EventEmitter.js.map +0 -1
  132. package/lib/src/runtime/components/Graph.d.ts +0 -208
  133. package/lib/src/runtime/components/Graph.d.ts.map +0 -1
  134. package/lib/src/runtime/components/Graph.js +0 -452
  135. package/lib/src/runtime/components/Graph.js.map +0 -1
  136. package/lib/src/runtime/components/HandleResolver.d.ts +0 -36
  137. package/lib/src/runtime/components/HandleResolver.d.ts.map +0 -1
  138. package/lib/src/runtime/components/HandleResolver.js +0 -229
  139. package/lib/src/runtime/components/HandleResolver.js.map +0 -1
  140. package/lib/src/runtime/components/NodeExecutor.d.ts +0 -116
  141. package/lib/src/runtime/components/NodeExecutor.d.ts.map +0 -1
  142. package/lib/src/runtime/components/NodeExecutor.js +0 -648
  143. package/lib/src/runtime/components/NodeExecutor.js.map +0 -1
  144. package/lib/src/runtime/components/RunContextManager.d.ts +0 -90
  145. package/lib/src/runtime/components/RunContextManager.d.ts.map +0 -1
  146. package/lib/src/runtime/components/RunContextManager.js +0 -329
  147. package/lib/src/runtime/components/RunContextManager.js.map +0 -1
  148. package/lib/src/runtime/components/RuntimeValidatorManager.d.ts +0 -31
  149. package/lib/src/runtime/components/RuntimeValidatorManager.d.ts.map +0 -1
  150. package/lib/src/runtime/components/RuntimeValidatorManager.js +0 -56
  151. package/lib/src/runtime/components/RuntimeValidatorManager.js.map +0 -1
  152. package/lib/src/runtime/components/graph-utils.d.ts +0 -33
  153. package/lib/src/runtime/components/graph-utils.d.ts.map +0 -1
  154. package/lib/src/runtime/components/graph-utils.js +0 -300
  155. package/lib/src/runtime/components/graph-utils.js.map +0 -1
  156. package/lib/src/runtime/components/interfaces.d.ts +0 -59
  157. package/lib/src/runtime/components/interfaces.d.ts.map +0 -1
  158. package/lib/src/runtime/components/interfaces.js +0 -2
  159. package/lib/src/runtime/components/interfaces.js.map +0 -1
  160. package/lib/src/runtime/components/types.d.ts +0 -57
  161. package/lib/src/runtime/components/types.d.ts.map +0 -1
  162. package/lib/src/runtime/components/types.js +0 -2
  163. package/lib/src/runtime/components/types.js.map +0 -1
  164. package/lib/src/runtime/utils.d.ts +0 -21
  165. package/lib/src/runtime/utils.d.ts.map +0 -1
  166. package/lib/src/runtime/utils.js +0 -41
  167. package/lib/src/runtime/utils.js.map +0 -1
@@ -1,283 +0,0 @@
1
- import { test } from "node:test";
2
- import assert from "node:assert";
3
- import { LevelLogger } from "./LevelLogger";
4
- test("LevelLogger - logFormat json-deep parses fully JSON strings in context", () => {
5
- const logger = new LevelLogger("info");
6
- const logs = [];
7
- // Mock console.info to capture logs
8
- const originalInfo = console.info;
9
- console.info = (...args) => {
10
- logs.push(args.join(" "));
11
- };
12
- try {
13
- // Test with logFormat json-deep - should parse JSON strings in context
14
- logger.info("Test message", {
15
- data: '{"key": "value", "nested": {"foo": "bar"}}',
16
- array: "[1, 2, 3]",
17
- logFormat: "json-deep",
18
- });
19
- assert.strictEqual(logs.length, 1);
20
- const logOutput = logs[0];
21
- // Check that JSON strings are formatted (should have newlines and indentation)
22
- assert(logOutput.includes('"key": "value"'), "Should contain formatted JSON");
23
- assert(logOutput.includes('"nested"'), "Should contain nested object");
24
- assert(logOutput.includes('"foo": "bar"'), "Should contain nested property");
25
- assert(logOutput.includes("1,"), "Should contain formatted array");
26
- assert(logOutput.includes("2,"), "Should contain formatted array");
27
- assert(logOutput.includes("3"), "Should contain formatted array");
28
- }
29
- finally {
30
- console.info = originalInfo;
31
- }
32
- });
33
- test("LevelLogger - logFormat json-deep does not parse partial JSON in context", () => {
34
- const logger = new LevelLogger("info");
35
- const logs = [];
36
- const originalInfo = console.info;
37
- console.info = (...args) => {
38
- logs.push(args.join(" "));
39
- };
40
- try {
41
- // Test with partial JSON - should not parse
42
- logger.info("Test message", {
43
- partial: 'Some text {"key": "value"} more text',
44
- logFormat: "json-deep",
45
- });
46
- assert.strictEqual(logs.length, 1);
47
- const logOutput = logs[0];
48
- // Should not format partial JSON - it should remain as a stringified string
49
- // When formatJson is true, the context separator is \n, so the context part will have newlines
50
- // But the VALUE itself should not be formatted as a JSON object (no newlines/indentation within the value)
51
- // Partial JSON should be stringified as a string, not parsed into an object
52
- assert(logOutput.includes("Some text") &&
53
- logOutput.includes("key") &&
54
- logOutput.includes("value") &&
55
- // Should not have formatted JSON object pattern - if parsed, it would have newlines/indentation
56
- // Check that "key" doesn't appear on a new line with indentation (formatted JSON pattern)
57
- !logOutput.match(/partial=.*\{[\s\n]+\s*"key"/), "Should not parse partial JSON");
58
- }
59
- finally {
60
- console.info = originalInfo;
61
- }
62
- });
63
- test("LevelLogger - logFormat plain (default) does not parse JSON", () => {
64
- const logger = new LevelLogger("info");
65
- const logs = [];
66
- const originalInfo = console.info;
67
- console.info = (...args) => {
68
- logs.push(args.join(" "));
69
- };
70
- try {
71
- // Test with default logFormat (plain) - should not parse
72
- logger.info("Test message", {
73
- data: '{"key": "value"}',
74
- });
75
- assert.strictEqual(logs.length, 1);
76
- const logOutput = logs[0];
77
- // Should not format JSON when option is not enabled
78
- // Extract the context part (after "Test message")
79
- const contextPart = logOutput.split("Test message")[1] || "";
80
- assert(logOutput.includes("key") &&
81
- logOutput.includes("value") &&
82
- // Should not have formatted JSON - formatted JSON would have newlines in the context part
83
- !contextPart.includes("\n"), // Formatted JSON would have newlines
84
- "Should not parse JSON when option is disabled");
85
- }
86
- finally {
87
- console.info = originalInfo;
88
- }
89
- });
90
- test("LevelLogger - logFormat json formats JSON but does not parse strings", () => {
91
- const logger = new LevelLogger("info");
92
- const logs = [];
93
- const originalInfo = console.info;
94
- console.info = (...args) => {
95
- logs.push(args.join(" "));
96
- };
97
- try {
98
- logger.info("Test", {
99
- object: { key: "value" },
100
- jsonString: '{"parsed": true}',
101
- logFormat: "json",
102
- });
103
- assert.strictEqual(logs.length, 1);
104
- const logOutput = logs[0];
105
- // Should format object (with newlines)
106
- const contextPart = logOutput.split("Test")[1] || "";
107
- assert(contextPart.includes("\n"), "Should format JSON with newlines");
108
- assert(logOutput.includes("key"), "Should contain key");
109
- assert(logOutput.includes("value"), "Should contain value");
110
- // JSON string should NOT be parsed (should remain as string)
111
- assert(logOutput.includes('{"parsed": true}') || logOutput.includes('"{\\"parsed\\": true}"'), "Should not parse JSON string when logFormat is json");
112
- }
113
- finally {
114
- console.info = originalInfo;
115
- }
116
- });
117
- test("LevelLogger - message is never parsed, always output as-is", () => {
118
- const logger = new LevelLogger("info");
119
- const logs = [];
120
- const originalInfo = console.info;
121
- console.info = (...args) => {
122
- logs.push(args.join(" "));
123
- };
124
- try {
125
- // Test that messages are never parsed, even if they look like JSON
126
- logger.info('{"message": "test", "value": 123}');
127
- assert.strictEqual(logs.length, 1);
128
- const logOutput = logs[0];
129
- // Message should be output exactly as provided, without parsing
130
- assert.strictEqual(logOutput, '{"message": "test", "value": 123}', "Message should not be parsed, output as-is");
131
- }
132
- finally {
133
- console.info = originalInfo;
134
- }
135
- });
136
- test("LevelLogger - message with partial JSON is output as-is", () => {
137
- const logger = new LevelLogger("info");
138
- const logs = [];
139
- const originalInfo = console.info;
140
- console.info = (...args) => {
141
- logs.push(args.join(" "));
142
- };
143
- try {
144
- // Test that partial JSON messages are output as-is
145
- logger.info('Some text {"key": "value"} more text');
146
- assert.strictEqual(logs.length, 1);
147
- const logOutput = logs[0];
148
- // Should output message exactly as provided
149
- assert.strictEqual(logOutput, 'Some text {"key": "value"} more text', "Message should be output as-is");
150
- }
151
- finally {
152
- console.info = originalInfo;
153
- }
154
- });
155
- test("LevelLogger - logFormat json-deep handles arrays in context", () => {
156
- const logger = new LevelLogger("info");
157
- const logs = [];
158
- const originalInfo = console.info;
159
- console.info = (...args) => {
160
- logs.push(args.join(" "));
161
- };
162
- try {
163
- logger.info("Test", {
164
- items: '["apple", "banana", "cherry"]',
165
- logFormat: "json-deep",
166
- });
167
- assert.strictEqual(logs.length, 1);
168
- const logOutput = logs[0];
169
- // Should format the array
170
- assert(logOutput.includes('"apple"'), "Should contain formatted array item");
171
- assert(logOutput.includes('"banana"'), "Should contain formatted array item");
172
- assert(logOutput.includes('"cherry"'), "Should contain formatted array item");
173
- }
174
- finally {
175
- console.info = originalInfo;
176
- }
177
- });
178
- test("LevelLogger - logFormat json-deep handles non-string context values", () => {
179
- const logger = new LevelLogger("info");
180
- const logs = [];
181
- const originalInfo = console.info;
182
- console.info = (...args) => {
183
- logs.push(args.join(" "));
184
- };
185
- try {
186
- logger.info("Test", {
187
- number: 42,
188
- boolean: true,
189
- object: { key: "value" },
190
- jsonString: '{"parsed": true}',
191
- logFormat: "json-deep",
192
- });
193
- assert.strictEqual(logs.length, 1);
194
- const logOutput = logs[0];
195
- // Non-string values should be stringified normally
196
- assert(logOutput.includes("42"), "Should include number");
197
- assert(logOutput.includes("true"), "Should include boolean");
198
- // JSON string should be formatted
199
- assert(logOutput.includes('"parsed": true'), "Should format JSON string");
200
- }
201
- finally {
202
- console.info = originalInfo;
203
- }
204
- });
205
- test("LevelLogger - global dynamic rule from JSON string overrides default level", () => {
206
- const logger = new LevelLogger("warn", "[FlowManager]");
207
- const logs = [];
208
- const originalInfo = console.info;
209
- const originalWarn = console.warn;
210
- console.info = (...args) => {
211
- logs.push(args.join(" "));
212
- };
213
- console.warn = (...args) => {
214
- logs.push(args.join(" "));
215
- };
216
- try {
217
- LevelLogger.setDynamicLevelRules(JSON.stringify([
218
- {
219
- setLevel: "debug",
220
- when: { prefix: { startsWith: ["[FlowManager]"] }, message: { startsWith: ["sync"] } },
221
- },
222
- ]));
223
- logger.debug("sync start");
224
- assert.strictEqual(logs.length, 1, "Debug should log because dynamic rule sets debug");
225
- }
226
- finally {
227
- LevelLogger.setDynamicLevelRules("");
228
- console.info = originalInfo;
229
- console.warn = originalWarn;
230
- }
231
- });
232
- test("LevelLogger - instance rule takes precedence over global rule", () => {
233
- const logger = new LevelLogger("info", "[SceneTransport]");
234
- const logs = [];
235
- const originalInfo = console.info;
236
- console.info = (...args) => {
237
- logs.push(args.join(" "));
238
- };
239
- try {
240
- LevelLogger.setDynamicLevelRules([
241
- {
242
- setLevel: "debug",
243
- when: { prefix: { startsWith: ["[SceneTransport]"] }, message: { contains: ["patch"] } },
244
- },
245
- ]);
246
- logger.setInstanceDynamicLevelRules([
247
- {
248
- setLevel: "warn",
249
- when: { prefix: { startsWith: ["[SceneTransport]"] }, message: { contains: ["patch"] } },
250
- },
251
- ]);
252
- logger.info("patch created");
253
- assert.strictEqual(logs.length, 0, "Info should be suppressed because instance warn overrides global debug");
254
- }
255
- finally {
256
- LevelLogger.setDynamicLevelRules("");
257
- logger.setInstanceDynamicLevelRules("");
258
- console.info = originalInfo;
259
- }
260
- });
261
- test("LevelLogger - per-call overrideLevel has highest priority", () => {
262
- const logger = new LevelLogger("warn", "[NodeExecutor]");
263
- const logs = [];
264
- const originalInfo = console.info;
265
- console.info = (...args) => {
266
- logs.push(args.join(" "));
267
- };
268
- try {
269
- LevelLogger.setDynamicLevelRules([
270
- {
271
- setLevel: "error",
272
- when: { prefix: { startsWith: ["[NodeExecutor]"] }, message: { contains: ["run"] } },
273
- },
274
- ]);
275
- logger.info("run task", undefined, "debug");
276
- assert.strictEqual(logs.length, 1, "Override level should force info log through");
277
- }
278
- finally {
279
- LevelLogger.setDynamicLevelRules("");
280
- console.info = originalInfo;
281
- }
282
- });
283
- //# sourceMappingURL=LevelLogger.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"LevelLogger.test.js","sourceRoot":"","sources":["../../../../src/misc/utils/LevelLogger.test.ts"],"names":[],"mappings":"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"}
@@ -1,34 +0,0 @@
1
- import type { JsonPath, PathSegment } from "@bian-womp/spark-protocol";
2
- export declare function parseJsonPath(path: JsonPath): PathSegment[];
3
- export declare function getValueAtPath(obj: unknown, pathSegments: PathSegment[]): {
4
- value: unknown;
5
- parent: unknown;
6
- key: string | number;
7
- } | null;
8
- export declare function setValueAtPath(obj: unknown, pathSegments: PathSegment[], newValue: unknown): boolean;
9
- /**
10
- * Sets a value at a path, creating intermediate objects as needed.
11
- * Mutates the root object in place.
12
- * @param root - The root object to modify (must be an object, will be initialized if needed)
13
- * @param pathSegments - The path segments to traverse
14
- * @param value - The value to set, or null to delete the path
15
- * @throws Error if path cannot be created (e.g., array indices not supported, invalid parent types)
16
- */
17
- export declare function setValueAtPathWithCreation(root: Record<string, unknown>, pathSegments: PathSegment[], value: unknown): boolean;
18
- export declare function findMatchingPaths(obj: unknown, pathSegments: PathSegment[], currentPath?: PathSegment[]): Array<{
19
- path: PathSegment[];
20
- value: unknown;
21
- }>;
22
- export declare function stringifyJson(obj: any, oneLiner?: {
23
- indent: number;
24
- paths?: string[];
25
- maxDepth?: number;
26
- criteria?: (info: {
27
- path: string;
28
- key: string;
29
- value: any;
30
- depth: number;
31
- }) => boolean;
32
- }): any;
33
- export declare function stringifySceneAndOps(obj: any): any;
34
- //# sourceMappingURL=json.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"json.d.ts","sourceRoot":"","sources":["../../../../src/misc/utils/json.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAEvE,wBAAgB,aAAa,CAAC,IAAI,EAAE,QAAQ,GAAG,WAAW,EAAE,CAY3D;AAED,wBAAgB,cAAc,CAC5B,GAAG,EAAE,OAAO,EACZ,YAAY,EAAE,WAAW,EAAE,GAC1B;IAAE,KAAK,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,OAAO,CAAC;IAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;CAAE,GAAG,IAAI,CAyFlE;AAED,wBAAgB,cAAc,CAAC,GAAG,EAAE,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,EAAE,QAAQ,EAAE,OAAO,GAAG,OAAO,CAUpG;AAED;;;;;;;GAOG;AACH,wBAAgB,0BAA0B,CACxC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,YAAY,EAAE,WAAW,EAAE,EAC3B,KAAK,EAAE,OAAO,GACb,OAAO,CAmDT;AAED,wBAAgB,iBAAiB,CAC/B,GAAG,EAAE,OAAO,EACZ,YAAY,EAAE,WAAW,EAAE,EAC3B,WAAW,GAAE,WAAW,EAAO,GAC9B,KAAK,CAAC;IAAE,IAAI,EAAE,WAAW,EAAE,CAAC;IAAC,KAAK,EAAE,OAAO,CAAA;CAAE,CAAC,CAgDhD;AAED,wBAAgB,aAAa,CAC3B,GAAG,EAAE,GAAG,EACR,QAAQ,CAAC,EAAE;IACT,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,GAAG,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,KAAK,OAAO,CAAC;CACxF,OAkFF;AA0ID,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,GAAG,OAmB5C"}