@r-a-i-t-h/viz-host 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,607 @@
1
+ /**
2
+ * Host-side projection: walk live XState machine logic (official types) into
3
+ * the shared Viz* model. This is the only module that should import XState
4
+ * structural types (`StateNodeDefinition`, transition shapes, etc.).
5
+ */
6
+ import { analyzeContextDeps } from './contextDeps.js';
7
+ import { computeContextKeyAges } from './contextAges.js';
8
+ import { normalizeStateNodeId } from '@r-a-i-t-h/viz-protocol';
9
+ import { collectNextEvents } from './nextEvents.js';
10
+ const AFTER_EVENT = /^xstate\.after\./;
11
+ const DONE_ACTOR_EVENT = /^xstate\.done\.actor\./;
12
+ const ERROR_ACTOR_EVENT = /^xstate\.error\.actor\./;
13
+ function asMachineActorRef(actorRef) {
14
+ if (actorRef && typeof actorRef === 'object' && 'sessionId' in actorRef) {
15
+ return actorRef;
16
+ }
17
+ return null;
18
+ }
19
+ /** Resolve machine logic from an `@xstate.actor` inspection event. */
20
+ export function machineLogicFromEvent(event) {
21
+ if (event.type !== '@xstate.actor')
22
+ return null;
23
+ const actorRef = asMachineActorRef(event.actorRef);
24
+ const logic = actorRef?.logic;
25
+ if (!actorRef || !logic || typeof logic.definition === 'undefined') {
26
+ return null;
27
+ }
28
+ const parentSessionId = actorRef._parent?.sessionId;
29
+ const input = actorRef.options?.input;
30
+ return {
31
+ sessionId: actorRef.sessionId,
32
+ logic,
33
+ parentSessionId: typeof parentSessionId === 'string' ? parentSessionId : undefined,
34
+ input,
35
+ };
36
+ }
37
+ export function projectMachine(logic, sessionId, options) {
38
+ const rootDef = logic.definition;
39
+ const liveRoot = logic.root;
40
+ return {
41
+ sessionId,
42
+ label: rootDef.id || logic.id || sessionId,
43
+ parentSessionId: options?.parentSessionId,
44
+ input: options?.input,
45
+ root: projectNode(rootDef, '', liveRoot),
46
+ analysis: {
47
+ contextDeps: analyzeContextDeps(logic),
48
+ },
49
+ };
50
+ }
51
+ export function projectFrame(sessionId, snapshot, options) {
52
+ const value = snapshot.value;
53
+ const status = normalizeStatus(snapshot.status);
54
+ const paths = value === undefined || value === null
55
+ ? []
56
+ : activePaths(value);
57
+ const childSessionById = childSessionIndex(snapshot.children);
58
+ let context = portableizeContext(snapshot.context, childSessionById);
59
+ if (options?.sanitizeContext && context != null) {
60
+ context = options.sanitizeContext(context);
61
+ }
62
+ const contextKeyAges = computeContextKeyAges(context, options?.previousContext, options?.previousAges);
63
+ const nextEvents = options?.machine
64
+ ? collectNextEvents(options.machine.root, paths)
65
+ : undefined;
66
+ return {
67
+ sessionId,
68
+ activePaths: paths,
69
+ context,
70
+ value,
71
+ status,
72
+ output: snapshot.output,
73
+ eventType: options?.eventType,
74
+ contextKeyAges,
75
+ nextEvents,
76
+ };
77
+ }
78
+ /** Map child actor id → sessionId from a live snapshot.children bag. */
79
+ function childSessionIndex(children) {
80
+ const map = new Map();
81
+ if (!children)
82
+ return map;
83
+ for (const [id, ref] of Object.entries(children)) {
84
+ if (ref && typeof ref === 'object' && 'sessionId' in ref) {
85
+ const sessionId = ref.sessionId;
86
+ if (typeof sessionId === 'string')
87
+ map.set(id, sessionId);
88
+ }
89
+ }
90
+ return map;
91
+ }
92
+ /**
93
+ * Replace live ActorRefs with {@link VizActorRefMarker} so sessionId survives
94
+ * JSON / postMessage. Uses live sessionId when present; falls back to
95
+ * snapshot.children lookup via `id` / toJSON shape.
96
+ */
97
+ export function portableizeContext(context, childSessionById = new Map()) {
98
+ return walkPortable(context, childSessionById, new WeakSet());
99
+ }
100
+ function walkPortable(value, childSessionById, seen) {
101
+ const marker = asActorRefMarker(value, childSessionById);
102
+ if (marker)
103
+ return marker;
104
+ if (value == null || typeof value !== 'object')
105
+ return value;
106
+ if (seen.has(value))
107
+ return '[Circular]';
108
+ seen.add(value);
109
+ if (Array.isArray(value)) {
110
+ return value.map((item) => walkPortable(item, childSessionById, seen));
111
+ }
112
+ const out = {};
113
+ for (const [key, child] of Object.entries(value)) {
114
+ out[key] = walkPortable(child, childSessionById, seen);
115
+ }
116
+ return out;
117
+ }
118
+ function asActorRefMarker(value, childSessionById) {
119
+ if (!value || typeof value !== 'object')
120
+ return null;
121
+ const obj = value;
122
+ if (typeof obj.sessionId === 'string' &&
123
+ (typeof obj.send === 'function' ||
124
+ typeof obj.getSnapshot === 'function' ||
125
+ obj.xstate$$type === 1)) {
126
+ const id = typeof obj.id === 'string'
127
+ ? obj.id
128
+ : typeof obj.sessionId === 'string'
129
+ ? obj.sessionId
130
+ : '?';
131
+ return { __viz: 'actorRef', sessionId: obj.sessionId, id };
132
+ }
133
+ // Already-serialized ActorRef shape from toJSON / prior stringify.
134
+ if (obj.xstate$$type === 1 && typeof obj.id === 'string') {
135
+ const sessionId = childSessionById.get(obj.id);
136
+ if (sessionId) {
137
+ return { __viz: 'actorRef', sessionId, id: obj.id };
138
+ }
139
+ }
140
+ return null;
141
+ }
142
+ /**
143
+ * Flatten a StateValue into dot-delimited active state paths.
144
+ * Host-only; popup receives the result on VizFrame.activePaths.
145
+ */
146
+ export function activePaths(value, prefix = '') {
147
+ if (typeof value === 'string') {
148
+ return [prefix ? `${prefix}.${value}` : value];
149
+ }
150
+ const paths = [];
151
+ for (const [key, child] of Object.entries(value)) {
152
+ const path = prefix ? `${prefix}.${key}` : key;
153
+ paths.push(path);
154
+ if (child !== undefined) {
155
+ paths.push(...activePaths(child, path));
156
+ }
157
+ }
158
+ return paths;
159
+ }
160
+ function normalizeStatus(status) {
161
+ if (status === 'active' ||
162
+ status === 'done' ||
163
+ status === 'error' ||
164
+ status === 'stopped') {
165
+ return status;
166
+ }
167
+ return 'active';
168
+ }
169
+ function projectNode(
170
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
171
+ def, path, live) {
172
+ const kind = def.type;
173
+ const layout = kind === 'parallel'
174
+ ? 'parallel'
175
+ : Object.keys(def.states ?? {}).length > 0
176
+ ? 'sequential'
177
+ : 'none';
178
+ const children = Object.values(def.states ?? {}).map((child) => {
179
+ const childPath = path ? `${path}.${child.key}` : child.key;
180
+ const liveChild = live?.states?.[child.key];
181
+ return projectNode(child, childPath, liveChild);
182
+ });
183
+ const entrySymbols = projectActions(def.entry);
184
+ const exitSymbols = projectActions(def.exit);
185
+ const afterTransitions = collectAfterTransitions(def);
186
+ const alwaysTransitions = collectAlwaysTransitions(live);
187
+ const invokes = collectInvokes(def, live);
188
+ const events = collectEvents(def);
189
+ const history = kind === 'history'
190
+ ? def.history === 'deep'
191
+ ? 'deep'
192
+ : 'shallow'
193
+ : def.history === 'shallow' || def.history === 'deep'
194
+ ? def.history
195
+ : undefined;
196
+ const historyHighlightIds = historyRestoreTargets(def, live);
197
+ const badges = buildBadges(entrySymbols, exitSymbols, afterTransitions, alwaysTransitions, invokes, history, historyHighlightIds);
198
+ const details = {
199
+ path,
200
+ tags: [...(def.tags ?? [])].map(String),
201
+ entry: entrySymbols,
202
+ exit: exitSymbols,
203
+ after: afterTransitions,
204
+ always: alwaysTransitions,
205
+ invokes,
206
+ history,
207
+ };
208
+ return {
209
+ id: normalizeStateNodeId(def.id),
210
+ key: def.key,
211
+ kind,
212
+ layout,
213
+ children,
214
+ initialChildIds: resolveInitialChildIds(def),
215
+ badges,
216
+ events,
217
+ details,
218
+ };
219
+ }
220
+ function buildBadges(entry, exit, after, always, invokes, history, historyHighlightIds) {
221
+ const badges = [];
222
+ if (entry.length > 0) {
223
+ badges.push({
224
+ kind: 'entry',
225
+ label: 'entry',
226
+ lines: entry.map(symbolLine),
227
+ highlightIds: [],
228
+ });
229
+ }
230
+ if (history) {
231
+ badges.push({
232
+ kind: 'history',
233
+ label: history === 'deep' ? 'deep' : 'hist',
234
+ lines: [
235
+ `${history} history`,
236
+ historyHighlightIds.length > 0
237
+ ? `restore → ${historyHighlightIds.map(shortId).join(', ')}`
238
+ : 'restore → (last configuration)',
239
+ ],
240
+ highlightIds: historyHighlightIds,
241
+ });
242
+ }
243
+ if (always.length > 0) {
244
+ badges.push({
245
+ kind: 'always',
246
+ label: 'always',
247
+ lines: always.map((t) => t.line),
248
+ highlightIds: uniqueIds(always.flatMap((t) => t.targetIds)),
249
+ });
250
+ }
251
+ if (after.length > 0) {
252
+ badges.push({
253
+ kind: 'after',
254
+ label: 'after',
255
+ lines: after.map((t) => t.line),
256
+ highlightIds: uniqueIds(after.flatMap((t) => t.targetIds)),
257
+ });
258
+ }
259
+ if (invokes.length > 0) {
260
+ const highlightIds = uniqueIds(invokes.flatMap((inv) => inv.highlightIds));
261
+ const hasDone = invokes.some((inv) => inv.onDone.length > 0);
262
+ badges.push({
263
+ kind: 'invoke',
264
+ label: hasDone ? 'onDone' : 'invoke',
265
+ lines: invokes.flatMap(invokeBadgeLines),
266
+ highlightIds,
267
+ });
268
+ }
269
+ if (exit.length > 0) {
270
+ badges.push({
271
+ kind: 'exit',
272
+ label: 'exit',
273
+ lines: exit.map(symbolLine),
274
+ highlightIds: [],
275
+ });
276
+ }
277
+ return badges;
278
+ }
279
+ /**
280
+ * Static restore targets for history hover: explicit `target` when configured,
281
+ * otherwise the owning compound parent (runtime restores last config there).
282
+ */
283
+ function historyRestoreTargets(
284
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
285
+ def, live) {
286
+ const fromDef = extractTargetIds(def.target ?? live?.target);
287
+ if (fromDef.length > 0)
288
+ return fromDef;
289
+ const parentId = live?.parent?.id;
290
+ if (typeof parentId === 'string') {
291
+ return [normalizeStateNodeId(parentId)];
292
+ }
293
+ return [];
294
+ }
295
+ function shortId(id) {
296
+ const parts = id.split('.');
297
+ return parts[parts.length - 1] || id;
298
+ }
299
+ function invokeBadgeLines(inv) {
300
+ const lines = [`src ${inv.src}`];
301
+ if (inv.id)
302
+ lines.push(`id ${inv.id}`);
303
+ if (inv.inputSummary)
304
+ lines.push(inv.inputSummary);
305
+ for (const t of inv.onDone)
306
+ lines.push(t.line);
307
+ for (const t of inv.onError)
308
+ lines.push(t.line);
309
+ return lines;
310
+ }
311
+ function collectEvents(
312
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
313
+ def) {
314
+ const events = [];
315
+ for (const [eventType, transitions] of Object.entries(def.on ?? {})) {
316
+ if (AFTER_EVENT.test(eventType))
317
+ continue;
318
+ if (DONE_ACTOR_EVENT.test(eventType))
319
+ continue;
320
+ if (ERROR_ACTOR_EVENT.test(eventType))
321
+ continue;
322
+ const list = asTransitionList(transitions).map((t) => projectTransition(t, eventType));
323
+ const highlightIds = uniqueIds(list.flatMap((t) => t.targetIds));
324
+ const detailLines = list.map((t) => t.line);
325
+ const hoverLines = list
326
+ .filter((t) => t.guard != null || t.actions.length > 0)
327
+ .map((t) => t.line);
328
+ events.push({
329
+ type: eventType,
330
+ transitions: list,
331
+ highlightIds,
332
+ hoverLines,
333
+ detailLines,
334
+ pattern: eventPattern(eventType),
335
+ });
336
+ }
337
+ return events;
338
+ }
339
+ function collectAlwaysTransitions(live) {
340
+ if (!live?.always || live.always.length === 0)
341
+ return [];
342
+ return live.always.map((t) => projectTransition(t, undefined, false, true));
343
+ }
344
+ function collectInvokes(
345
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
346
+ def, live) {
347
+ const list = live?.invoke ?? def.invoke ?? [];
348
+ if (!Array.isArray(list) || list.length === 0)
349
+ return [];
350
+ return list.map((raw, index) => {
351
+ const inv = (raw && typeof raw === 'object' ? raw : {});
352
+ const id = typeof inv.id === 'string' && inv.id.length > 0
353
+ ? inv.id
354
+ : `${index}`;
355
+ const src = formatInvokeSrc(inv.src);
356
+ const doneKey = `xstate.done.actor.${id}`;
357
+ const errorKey = `xstate.error.actor.${id}`;
358
+ const onDone = asTransitionList(def.on?.[doneKey]).map((t) => projectTransition(t, 'done'));
359
+ const onError = asTransitionList(def.on?.[errorKey]).map((t) => projectTransition(t, 'error'));
360
+ const highlightIds = uniqueIds([
361
+ ...onDone.flatMap((t) => t.targetIds),
362
+ ...onError.flatMap((t) => t.targetIds),
363
+ ]);
364
+ return {
365
+ id,
366
+ src,
367
+ inputSummary: typeof inv.input === 'function'
368
+ ? 'input (fn)'
369
+ : inv.input != null
370
+ ? `input ${summarizeValue(inv.input)}`
371
+ : undefined,
372
+ onDone,
373
+ onError,
374
+ highlightIds,
375
+ };
376
+ });
377
+ }
378
+ function formatInvokeSrc(src) {
379
+ if (typeof src === 'string')
380
+ return src;
381
+ if (src && typeof src === 'object' && 'id' in src) {
382
+ const id = src.id;
383
+ if (typeof id === 'string')
384
+ return id;
385
+ }
386
+ return '(actor)';
387
+ }
388
+ function summarizeValue(value) {
389
+ if (value == null)
390
+ return String(value);
391
+ if (typeof value === 'string')
392
+ return JSON.stringify(value);
393
+ if (typeof value === 'number' || typeof value === 'boolean') {
394
+ return String(value);
395
+ }
396
+ try {
397
+ const text = JSON.stringify(value);
398
+ return text.length > 40 ? `${text.slice(0, 37)}…` : text;
399
+ }
400
+ catch {
401
+ return '[object]';
402
+ }
403
+ }
404
+ function collectAfterTransitions(
405
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
406
+ def) {
407
+ const fromOn = [];
408
+ for (const [key, value] of Object.entries(def.on ?? {})) {
409
+ if (!AFTER_EVENT.test(key))
410
+ continue;
411
+ fromOn.push(...asTransitionList(value));
412
+ }
413
+ if (fromOn.length > 0) {
414
+ return fromOn.map((t) => projectTransition(t, undefined, true));
415
+ }
416
+ return (def.transitions ?? [])
417
+ .filter(isDelayedTransition)
418
+ .map((t) => projectTransition(t, undefined, true));
419
+ }
420
+ function projectTransition(transition, eventType, asAfter = false, asAlways = false) {
421
+ if (!transition || typeof transition !== 'object') {
422
+ const line = asAlways
423
+ ? 'always → ?'
424
+ : eventType
425
+ ? `${eventType} → ?`
426
+ : '→ ?';
427
+ return { targetIds: [], actions: [], line };
428
+ }
429
+ const t = transition;
430
+ const targetIds = extractTargetIds(t.target);
431
+ const guard = projectGuard(t.guard);
432
+ const actions = projectActions(t.actions);
433
+ const reenter = t.reenter === true ? true : undefined;
434
+ const delayLabel = asAfter
435
+ ? formatDelay(t.delay, t.eventType)
436
+ : undefined;
437
+ const targetLabel = formatTargetLabel(t.target);
438
+ const parts = [];
439
+ if (asAfter) {
440
+ parts.push(`after ${delayLabel ?? '?'} → ${targetLabel}`);
441
+ }
442
+ else if (asAlways) {
443
+ parts.push(`always → ${targetLabel}`);
444
+ }
445
+ else {
446
+ parts.push(`${eventType ?? '?'} → ${targetLabel}`);
447
+ }
448
+ if (guard)
449
+ parts.push(`if ${guard.name}`);
450
+ if (actions.length > 0) {
451
+ parts.push(`do ${actions.map((a) => a.name).join(', ')}`);
452
+ }
453
+ if (reenter)
454
+ parts.push('reenter');
455
+ return {
456
+ targetIds,
457
+ guard: guard ?? undefined,
458
+ actions,
459
+ reenter,
460
+ delayLabel,
461
+ line: parts.join(' · '),
462
+ };
463
+ }
464
+ function projectActions(actions) {
465
+ if (!Array.isArray(actions))
466
+ return [];
467
+ return actions
468
+ .filter((action) => !isInjectedAfterAction(action))
469
+ .map(projectAction)
470
+ .filter((s) => s != null);
471
+ }
472
+ function projectAction(action) {
473
+ if (typeof action === 'string') {
474
+ return { kind: 'action', name: action };
475
+ }
476
+ if (!action || typeof action !== 'object')
477
+ return null;
478
+ const type = action.type;
479
+ if (typeof type === 'string' && type.length > 0) {
480
+ return { kind: 'action', name: type };
481
+ }
482
+ return { kind: 'action', name: 'action' };
483
+ }
484
+ function projectGuard(guard) {
485
+ if (guard == null)
486
+ return null;
487
+ if (typeof guard === 'string')
488
+ return { kind: 'guard', name: guard };
489
+ if (typeof guard === 'object' && guard && 'type' in guard) {
490
+ const type = guard.type;
491
+ if (typeof type === 'string')
492
+ return { kind: 'guard', name: type };
493
+ }
494
+ return null;
495
+ }
496
+ function resolveInitialChildIds(
497
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
498
+ def) {
499
+ const ids = [];
500
+ const target = def.initial?.target;
501
+ if (!target)
502
+ return ids;
503
+ for (const item of target) {
504
+ for (const id of extractTargetIds(item)) {
505
+ ids.push(id);
506
+ const bare = id.split('.').pop();
507
+ if (bare)
508
+ ids.push(bare);
509
+ }
510
+ if (item && typeof item === 'object' && 'key' in item) {
511
+ const key = item.key;
512
+ if (typeof key === 'string')
513
+ ids.push(key);
514
+ }
515
+ }
516
+ return uniqueIds(ids);
517
+ }
518
+ function extractTargetIds(target) {
519
+ if (target == null)
520
+ return [];
521
+ const list = Array.isArray(target) ? target : [target];
522
+ const ids = [];
523
+ for (const item of list) {
524
+ const id = targetId(item);
525
+ if (id)
526
+ ids.push(id);
527
+ }
528
+ return uniqueIds(ids);
529
+ }
530
+ function targetId(target) {
531
+ if (typeof target === 'string')
532
+ return normalizeStateNodeId(target);
533
+ if (target && typeof target === 'object' && 'id' in target) {
534
+ const id = target.id;
535
+ return typeof id === 'string' ? normalizeStateNodeId(id) : null;
536
+ }
537
+ return null;
538
+ }
539
+ function formatTargetLabel(target) {
540
+ if (target == null)
541
+ return '(internal)';
542
+ const list = Array.isArray(target) ? target : [target];
543
+ if (list.length === 0)
544
+ return '(internal)';
545
+ return list.map(shortTarget).join(', ');
546
+ }
547
+ function shortTarget(target) {
548
+ if (typeof target === 'string') {
549
+ const bare = target.replace(/^#/, '');
550
+ const parts = bare.split('.');
551
+ return parts[parts.length - 1] || bare;
552
+ }
553
+ if (target && typeof target === 'object' && 'id' in target) {
554
+ return shortTarget(target.id);
555
+ }
556
+ if (target && typeof target === 'object' && 'key' in target) {
557
+ const key = target.key;
558
+ if (typeof key === 'string')
559
+ return key;
560
+ }
561
+ return '?';
562
+ }
563
+ function formatDelay(delay, eventType) {
564
+ if (typeof delay === 'number')
565
+ return `${delay}ms`;
566
+ if (typeof delay === 'string')
567
+ return delay;
568
+ if (typeof eventType === 'string') {
569
+ const match = /^xstate\.after\.([^.]+)\./.exec(eventType);
570
+ if (match) {
571
+ const d = match[1];
572
+ return /^\d+$/.test(d) ? `${d}ms` : d;
573
+ }
574
+ }
575
+ return '?';
576
+ }
577
+ function eventPattern(eventType) {
578
+ if (eventType === '*')
579
+ return 'wildcard';
580
+ if (eventType.endsWith('.*'))
581
+ return 'partial';
582
+ return 'exact';
583
+ }
584
+ function symbolLine(symbol) {
585
+ return symbol.detail ? `${symbol.name} (${symbol.detail})` : symbol.name;
586
+ }
587
+ function isInjectedAfterAction(action) {
588
+ if (!action || typeof action !== 'object')
589
+ return false;
590
+ const type = action.type;
591
+ return type === 'xstate.raise' || type === 'xstate.cancel';
592
+ }
593
+ function isDelayedTransition(transition) {
594
+ if (!transition || typeof transition !== 'object')
595
+ return false;
596
+ const delay = transition.delay;
597
+ return delay !== undefined && delay !== null;
598
+ }
599
+ function asTransitionList(value) {
600
+ if (value == null)
601
+ return [];
602
+ return Array.isArray(value) ? value : [value];
603
+ }
604
+ function uniqueIds(ids) {
605
+ return [...new Set(ids)];
606
+ }
607
+ //# sourceMappingURL=project.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"project.js","sourceRoot":"","sources":["../src/project.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAQH,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AAezD,OAAO,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAC/D,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAEpD,MAAM,WAAW,GAAG,kBAAkB,CAAC;AACvC,MAAM,gBAAgB,GAAG,wBAAwB,CAAC;AAClD,MAAM,iBAAiB,GAAG,yBAAyB,CAAC;AAgCpD,SAAS,iBAAiB,CAAC,QAAiB;IAC1C,IAAI,QAAQ,IAAI,OAAO,QAAQ,KAAK,QAAQ,IAAI,WAAW,IAAI,QAAQ,EAAE,CAAC;QACxE,OAAO,QAA2B,CAAC;IACrC,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,sEAAsE;AACtE,MAAM,UAAU,qBAAqB,CACnC,KAAsB;IAEtB,IAAI,KAAK,CAAC,IAAI,KAAK,eAAe;QAAE,OAAO,IAAI,CAAC;IAChD,MAAM,QAAQ,GAAG,iBAAiB,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IACnD,MAAM,KAAK,GAAG,QAAQ,EAAE,KAAK,CAAC;IAC9B,IAAI,CAAC,QAAQ,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,CAAC,UAAU,KAAK,WAAW,EAAE,CAAC;QACnE,OAAO,IAAI,CAAC;IACd,CAAC;IACD,MAAM,eAAe,GAAG,QAAQ,CAAC,OAAO,EAAE,SAAS,CAAC;IACpD,MAAM,KAAK,GAAG,QAAQ,CAAC,OAAO,EAAE,KAAK,CAAC;IACtC,OAAO;QACL,SAAS,EAAE,QAAQ,CAAC,SAAS;QAC7B,KAAK;QACL,eAAe,EACb,OAAO,eAAe,KAAK,QAAQ,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,SAAS;QACnE,KAAK;KACN,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,cAAc,CAC5B,KAAsB,EACtB,SAAiB,EACjB,OAGC;IAED,MAAM,OAAO,GAAG,KAAK,CAAC,UAKrB,CAAC;IACF,MAAM,QAAQ,GAAI,KAAkC,CAAC,IAAI,CAAC;IAC1D,OAAO;QACL,SAAS;QACT,KAAK,EAAE,OAAO,CAAC,EAAE,IAAI,KAAK,CAAC,EAAE,IAAI,SAAS;QAC1C,eAAe,EAAE,OAAO,EAAE,eAAe;QACzC,KAAK,EAAE,OAAO,EAAE,KAAK;QACrB,IAAI,EAAE,WAAW,CAAC,OAAO,EAAE,EAAE,EAAE,QAAQ,CAAC;QACxC,QAAQ,EAAE;YACR,WAAW,EAAE,kBAAkB,CAAC,KAAK,CAAC;SACvC;KACF,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,YAAY,CAC1B,SAAiB,EACjB,QAMC,EACD,OAUC;IAED,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC;IAC7B,MAAM,MAAM,GAAG,eAAe,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IAChD,MAAM,KAAK,GACT,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI;QACnC,CAAC,CAAC,EAAE;QACJ,CAAC,CAAC,WAAW,CAAC,KAAmB,CAAC,CAAC;IACvC,MAAM,gBAAgB,GAAG,iBAAiB,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAC9D,IAAI,OAAO,GAAG,kBAAkB,CAAC,QAAQ,CAAC,OAAO,EAAE,gBAAgB,CAAC,CAAC;IACrE,IAAI,OAAO,EAAE,eAAe,IAAI,OAAO,IAAI,IAAI,EAAE,CAAC;QAChD,OAAO,GAAG,OAAO,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;IAC7C,CAAC;IACD,MAAM,cAAc,GAAG,qBAAqB,CAC1C,OAAO,EACP,OAAO,EAAE,eAAe,EACxB,OAAO,EAAE,YAAY,CACtB,CAAC;IACF,MAAM,UAAU,GAA+B,OAAO,EAAE,OAAO;QAC7D,CAAC,CAAC,iBAAiB,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC;QAChD,CAAC,CAAC,SAAS,CAAC;IACd,OAAO;QACL,SAAS;QACT,WAAW,EAAE,KAAK;QAClB,OAAO;QACP,KAAK;QACL,MAAM;QACN,MAAM,EAAE,QAAQ,CAAC,MAAM;QACvB,SAAS,EAAE,OAAO,EAAE,SAAS;QAC7B,cAAc;QACd,UAAU;KACX,CAAC;AACJ,CAAC;AAED,wEAAwE;AACxE,SAAS,iBAAiB,CACxB,QAA6C;IAE7C,MAAM,GAAG,GAAG,IAAI,GAAG,EAAkB,CAAC;IACtC,IAAI,CAAC,QAAQ;QAAE,OAAO,GAAG,CAAC;IAC1B,KAAK,MAAM,CAAC,EAAE,EAAE,GAAG,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;QACjD,IAAI,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,WAAW,IAAI,GAAG,EAAE,CAAC;YACzD,MAAM,SAAS,GAAI,GAA8B,CAAC,SAAS,CAAC;YAC5D,IAAI,OAAO,SAAS,KAAK,QAAQ;gBAAE,GAAG,CAAC,GAAG,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC;QAC5D,CAAC;IACH,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,kBAAkB,CAChC,OAAgB,EAChB,mBAAwC,IAAI,GAAG,EAAE;IAEjD,OAAO,YAAY,CAAC,OAAO,EAAE,gBAAgB,EAAE,IAAI,OAAO,EAAE,CAAC,CAAC;AAChE,CAAC;AAED,SAAS,YAAY,CACnB,KAAc,EACd,gBAAqC,EACrC,IAAqB;IAErB,MAAM,MAAM,GAAG,gBAAgB,CAAC,KAAK,EAAE,gBAAgB,CAAC,CAAC;IACzD,IAAI,MAAM;QAAE,OAAO,MAAM,CAAC;IAC1B,IAAI,KAAK,IAAI,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAC7D,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC;QAAE,OAAO,YAAY,CAAC;IACzC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IAChB,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,YAAY,CAAC,IAAI,EAAE,gBAAgB,EAAE,IAAI,CAAC,CAAC,CAAC;IACzE,CAAC;IACD,MAAM,GAAG,GAA4B,EAAE,CAAC;IACxC,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAgC,CAAC,EAAE,CAAC;QAC5E,GAAG,CAAC,GAAG,CAAC,GAAG,YAAY,CAAC,KAAK,EAAE,gBAAgB,EAAE,IAAI,CAAC,CAAC;IACzD,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,SAAS,gBAAgB,CACvB,KAAc,EACd,gBAAqC;IAErC,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC;IACrD,MAAM,GAAG,GAAG,KAAgC,CAAC;IAE7C,IACE,OAAO,GAAG,CAAC,SAAS,KAAK,QAAQ;QACjC,CAAC,OAAO,GAAG,CAAC,IAAI,KAAK,UAAU;YAC7B,OAAO,GAAG,CAAC,WAAW,KAAK,UAAU;YACrC,GAAG,CAAC,YAAY,KAAK,CAAC,CAAC,EACzB,CAAC;QACD,MAAM,EAAE,GACN,OAAO,GAAG,CAAC,EAAE,KAAK,QAAQ;YACxB,CAAC,CAAC,GAAG,CAAC,EAAE;YACR,CAAC,CAAC,OAAO,GAAG,CAAC,SAAS,KAAK,QAAQ;gBACjC,CAAC,CAAC,GAAG,CAAC,SAAS;gBACf,CAAC,CAAC,GAAG,CAAC;QACZ,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,GAAG,CAAC,SAAS,EAAE,EAAE,EAAE,CAAC;IAC7D,CAAC;IAED,mEAAmE;IACnE,IAAI,GAAG,CAAC,YAAY,KAAK,CAAC,IAAI,OAAO,GAAG,CAAC,EAAE,KAAK,QAAQ,EAAE,CAAC;QACzD,MAAM,SAAS,GAAG,gBAAgB,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAC/C,IAAI,SAAS,EAAE,CAAC;YACd,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,EAAE,EAAE,GAAG,CAAC,EAAE,EAAE,CAAC;QACtD,CAAC;IACH,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,WAAW,CAAC,KAAiB,EAAE,MAAM,GAAG,EAAE;IACxD,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,MAAM,IAAI,KAAK,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;IACjD,CAAC;IAED,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACjD,MAAM,IAAI,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,MAAM,IAAI,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC;QAC/C,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACjB,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACxB,KAAK,CAAC,IAAI,CAAC,GAAG,WAAW,CAAC,KAAmB,EAAE,IAAI,CAAC,CAAC,CAAC;QACxD,CAAC;IACH,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,eAAe,CAAC,MAAe;IACtC,IACE,MAAM,KAAK,QAAQ;QACnB,MAAM,KAAK,MAAM;QACjB,MAAM,KAAK,OAAO;QAClB,MAAM,KAAK,SAAS,EACpB,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,SAAS,WAAW;AAClB,8DAA8D;AAC9D,GAAmC,EACnC,IAAY,EACZ,IAAoB;IAEpB,MAAM,IAAI,GAAG,GAAG,CAAC,IAAmB,CAAC;IACrC,MAAM,MAAM,GACV,IAAI,KAAK,UAAU;QACjB,CAAC,CAAC,UAAU;QACZ,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,MAAM,GAAG,CAAC;YACxC,CAAC,CAAC,YAAY;YACd,CAAC,CAAC,MAAM,CAAC;IAEf,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;QAC7D,MAAM,SAAS,GAAG,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,IAAI,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC;QAC5D,MAAM,SAAS,GAAG,IAAI,EAAE,MAAM,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC5C,OAAO,WAAW,CAAC,KAAK,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;IAClD,CAAC,CAAC,CAAC;IAEH,MAAM,YAAY,GAAG,cAAc,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IAC/C,MAAM,WAAW,GAAG,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAC7C,MAAM,gBAAgB,GAAG,uBAAuB,CAAC,GAAG,CAAC,CAAC;IACtD,MAAM,iBAAiB,GAAG,wBAAwB,CAAC,IAAI,CAAC,CAAC;IACzD,MAAM,OAAO,GAAG,cAAc,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IAC1C,MAAM,MAAM,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC;IAClC,MAAM,OAAO,GACX,IAAI,KAAK,SAAS;QAChB,CAAC,CAAC,GAAG,CAAC,OAAO,KAAK,MAAM;YACtB,CAAC,CAAC,MAAM;YACR,CAAC,CAAC,SAAS;QACb,CAAC,CAAC,GAAG,CAAC,OAAO,KAAK,SAAS,IAAI,GAAG,CAAC,OAAO,KAAK,MAAM;YACnD,CAAC,CAAC,GAAG,CAAC,OAAO;YACb,CAAC,CAAC,SAAS,CAAC;IAClB,MAAM,mBAAmB,GAAG,qBAAqB,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IAC7D,MAAM,MAAM,GAAG,WAAW,CACxB,YAAY,EACZ,WAAW,EACX,gBAAgB,EAChB,iBAAiB,EACjB,OAAO,EACP,OAAO,EACP,mBAAmB,CACpB,CAAC;IAEF,MAAM,OAAO,GAAmB;QAC9B,IAAI;QACJ,IAAI,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC;QACvC,KAAK,EAAE,YAAY;QACnB,IAAI,EAAE,WAAW;QACjB,KAAK,EAAE,gBAAgB;QACvB,MAAM,EAAE,iBAAiB;QACzB,OAAO;QACP,OAAO;KACR,CAAC;IAEF,OAAO;QACL,EAAE,EAAE,oBAAoB,CAAC,GAAG,CAAC,EAAE,CAAC;QAChC,GAAG,EAAE,GAAG,CAAC,GAAG;QACZ,IAAI;QACJ,MAAM;QACN,QAAQ;QACR,eAAe,EAAE,sBAAsB,CAAC,GAAG,CAAC;QAC5C,MAAM;QACN,MAAM;QACN,OAAO;KACR,CAAC;AACJ,CAAC;AAED,SAAS,WAAW,CAClB,KAAkB,EAClB,IAAiB,EACjB,KAAsB,EACtB,MAAuB,EACvB,OAAoB,EACpB,OAAuC,EACvC,mBAA6B;IAE7B,MAAM,MAAM,GAAe,EAAE,CAAC;IAC9B,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACrB,MAAM,CAAC,IAAI,CAAC;YACV,IAAI,EAAE,OAAO;YACb,KAAK,EAAE,OAAO;YACd,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC;YAC5B,YAAY,EAAE,EAAE;SACjB,CAAC,CAAC;IACL,CAAC;IACD,IAAI,OAAO,EAAE,CAAC;QACZ,MAAM,CAAC,IAAI,CAAC;YACV,IAAI,EAAE,SAAS;YACf,KAAK,EAAE,OAAO,KAAK,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM;YAC3C,KAAK,EAAE;gBACL,GAAG,OAAO,UAAU;gBACpB,mBAAmB,CAAC,MAAM,GAAG,CAAC;oBAC5B,CAAC,CAAC,aAAa,mBAAmB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;oBAC5D,CAAC,CAAC,gCAAgC;aACrC;YACD,YAAY,EAAE,mBAAmB;SAClC,CAAC,CAAC;IACL,CAAC;IACD,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACtB,MAAM,CAAC,IAAI,CAAC;YACV,IAAI,EAAE,QAAQ;YACd,KAAK,EAAE,QAAQ;YACf,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;YAChC,YAAY,EAAE,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;SAC5D,CAAC,CAAC;IACL,CAAC;IACD,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACrB,MAAM,CAAC,IAAI,CAAC;YACV,IAAI,EAAE,OAAO;YACb,KAAK,EAAE,OAAO;YACd,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;YAC/B,YAAY,EAAE,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;SAC3D,CAAC,CAAC;IACL,CAAC;IACD,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACvB,MAAM,YAAY,GAAG,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC;QAC3E,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAC7D,MAAM,CAAC,IAAI,CAAC;YACV,IAAI,EAAE,QAAQ;YACd,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ;YACpC,KAAK,EAAE,OAAO,CAAC,OAAO,CAAC,gBAAgB,CAAC;YACxC,YAAY;SACb,CAAC,CAAC;IACL,CAAC;IACD,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACpB,MAAM,CAAC,IAAI,CAAC;YACV,IAAI,EAAE,MAAM;YACZ,KAAK,EAAE,MAAM;YACb,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC;YAC3B,YAAY,EAAE,EAAE;SACjB,CAAC,CAAC;IACL,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;GAGG;AACH,SAAS,qBAAqB;AAC5B,8DAA8D;AAC9D,GAAmC,EACnC,IAAoB;IAEpB,MAAM,OAAO,GAAG,gBAAgB,CAC7B,GAA4B,CAAC,MAAM,IAAI,IAAI,EAAE,MAAM,CACrD,CAAC;IACF,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO,OAAO,CAAC;IACvC,MAAM,QAAQ,GAAG,IAAI,EAAE,MAAM,EAAE,EAAE,CAAC;IAClC,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE,CAAC;QACjC,OAAO,CAAC,oBAAoB,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC1C,CAAC;IACD,OAAO,EAAE,CAAC;AACZ,CAAC;AAED,SAAS,OAAO,CAAC,EAAU;IACzB,MAAM,KAAK,GAAG,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC5B,OAAO,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;AACvC,CAAC;AAED,SAAS,gBAAgB,CAAC,GAAc;IACtC,MAAM,KAAK,GAAa,CAAC,OAAO,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC;IAC3C,IAAI,GAAG,CAAC,EAAE;QAAE,KAAK,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC;IACvC,IAAI,GAAG,CAAC,YAAY;QAAE,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;IACnD,KAAK,MAAM,CAAC,IAAI,GAAG,CAAC,MAAM;QAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IAC/C,KAAK,MAAM,CAAC,IAAI,GAAG,CAAC,OAAO;QAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IAChD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,aAAa;AACpB,8DAA8D;AAC9D,GAAmC;IAEnC,MAAM,MAAM,GAAe,EAAE,CAAC;IAC9B,KAAK,MAAM,CAAC,SAAS,EAAE,WAAW,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;QACpE,IAAI,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC;YAAE,SAAS;QAC1C,IAAI,gBAAgB,CAAC,IAAI,CAAC,SAAS,CAAC;YAAE,SAAS;QAC/C,IAAI,iBAAiB,CAAC,IAAI,CAAC,SAAS,CAAC;YAAE,SAAS;QAChD,MAAM,IAAI,GAAG,gBAAgB,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CACnD,iBAAiB,CAAC,CAAC,EAAE,SAAS,CAAC,CAChC,CAAC;QACF,MAAM,YAAY,GAAG,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;QACjE,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QAC5C,MAAM,UAAU,GAAG,IAAI;aACpB,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,IAAI,IAAI,IAAI,CAAC,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC;aACtD,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACtB,MAAM,CAAC,IAAI,CAAC;YACV,IAAI,EAAE,SAAS;YACf,WAAW,EAAE,IAAI;YACjB,YAAY;YACZ,UAAU;YACV,WAAW;YACX,OAAO,EAAE,YAAY,CAAC,SAAS,CAAC;SACjC,CAAC,CAAC;IACL,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,wBAAwB,CAAC,IAAoB;IACpD,IAAI,CAAC,IAAI,EAAE,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IACzD,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC;AAC9E,CAAC;AAED,SAAS,cAAc;AACrB,8DAA8D;AAC9D,GAAmC,EACnC,IAAoB;IAEpB,MAAM,IAAI,GAAG,IAAI,EAAE,MAAM,IAAI,GAAG,CAAC,MAAM,IAAI,EAAE,CAAC;IAC9C,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IAEzD,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE;QAC7B,MAAM,GAAG,GAAG,CAAC,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAIrD,CAAC;QACF,MAAM,EAAE,GACN,OAAO,GAAG,CAAC,EAAE,KAAK,QAAQ,IAAI,GAAG,CAAC,EAAE,CAAC,MAAM,GAAG,CAAC;YAC7C,CAAC,CAAC,GAAG,CAAC,EAAE;YACR,CAAC,CAAC,GAAG,KAAK,EAAE,CAAC;QACjB,MAAM,GAAG,GAAG,eAAe,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACrC,MAAM,OAAO,GAAG,qBAAqB,EAAE,EAAE,CAAC;QAC1C,MAAM,QAAQ,GAAG,sBAAsB,EAAE,EAAE,CAAC;QAC5C,MAAM,MAAM,GAAG,gBAAgB,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAC3D,iBAAiB,CAAC,CAAC,EAAE,MAAM,CAAC,CAC7B,CAAC;QACF,MAAM,OAAO,GAAG,gBAAgB,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAC7D,iBAAiB,CAAC,CAAC,EAAE,OAAO,CAAC,CAC9B,CAAC;QACF,MAAM,YAAY,GAAG,SAAS,CAAC;YAC7B,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;YACrC,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;SACvC,CAAC,CAAC;QACH,OAAO;YACL,EAAE;YACF,GAAG;YACH,YAAY,EACV,OAAO,GAAG,CAAC,KAAK,KAAK,UAAU;gBAC7B,CAAC,CAAC,YAAY;gBACd,CAAC,CAAC,GAAG,CAAC,KAAK,IAAI,IAAI;oBACjB,CAAC,CAAC,SAAS,cAAc,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE;oBACtC,CAAC,CAAC,SAAS;YACjB,MAAM;YACN,OAAO;YACP,YAAY;SACb,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,eAAe,CAAC,GAAY;IACnC,IAAI,OAAO,GAAG,KAAK,QAAQ;QAAE,OAAO,GAAG,CAAC;IACxC,IAAI,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,IAAI,IAAI,GAAG,EAAE,CAAC;QAClD,MAAM,EAAE,GAAI,GAAuB,CAAC,EAAE,CAAC;QACvC,IAAI,OAAO,EAAE,KAAK,QAAQ;YAAE,OAAO,EAAE,CAAC;IACxC,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,cAAc,CAAC,KAAc;IACpC,IAAI,KAAK,IAAI,IAAI;QAAE,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC;IACxC,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;IAC5D,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,OAAO,KAAK,KAAK,SAAS,EAAE,CAAC;QAC5D,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC;IACvB,CAAC;IACD,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QACnC,OAAO,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;IAC3D,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,UAAU,CAAC;IACpB,CAAC;AACH,CAAC;AAED,SAAS,uBAAuB;AAC9B,8DAA8D;AAC9D,GAAmC;IAEnC,MAAM,MAAM,GAAc,EAAE,CAAC;IAC7B,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;QACxD,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC;YAAE,SAAS;QACrC,MAAM,CAAC,IAAI,CAAC,GAAG,gBAAgB,CAAC,KAAK,CAAC,CAAC,CAAC;IAC1C,CAAC;IACD,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACtB,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,CAAC,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC;IAClE,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,WAAW,IAAI,EAAE,CAAC;SAC3B,MAAM,CAAC,mBAAmB,CAAC;SAC3B,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,CAAC,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC;AACvD,CAAC;AAED,SAAS,iBAAiB,CACxB,UAAmB,EACnB,SAAkB,EAClB,OAAO,GAAG,KAAK,EACf,QAAQ,GAAG,KAAK;IAEhB,IAAI,CAAC,UAAU,IAAI,OAAO,UAAU,KAAK,QAAQ,EAAE,CAAC;QAClD,MAAM,IAAI,GAAG,QAAQ;YACnB,CAAC,CAAC,YAAY;YACd,CAAC,CAAC,SAAS;gBACT,CAAC,CAAC,GAAG,SAAS,MAAM;gBACpB,CAAC,CAAC,KAAK,CAAC;QACZ,OAAO,EAAE,SAAS,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC;IAC9C,CAAC;IACD,MAAM,CAAC,GAAG,UAOT,CAAC;IAEF,MAAM,SAAS,GAAG,gBAAgB,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;IAC7C,MAAM,KAAK,GAAG,YAAY,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;IACpC,MAAM,OAAO,GAAG,cAAc,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;IAC1C,MAAM,OAAO,GAAG,CAAC,CAAC,OAAO,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;IACtD,MAAM,UAAU,GAAG,OAAO;QACxB,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,SAAS,CAAC;QACnC,CAAC,CAAC,SAAS,CAAC;IAEd,MAAM,WAAW,GAAG,iBAAiB,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;IAChD,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,IAAI,OAAO,EAAE,CAAC;QACZ,KAAK,CAAC,IAAI,CAAC,SAAS,UAAU,IAAI,GAAG,MAAM,WAAW,EAAE,CAAC,CAAC;IAC5D,CAAC;SAAM,IAAI,QAAQ,EAAE,CAAC;QACpB,KAAK,CAAC,IAAI,CAAC,YAAY,WAAW,EAAE,CAAC,CAAC;IACxC,CAAC;SAAM,CAAC;QACN,KAAK,CAAC,IAAI,CAAC,GAAG,SAAS,IAAI,GAAG,MAAM,WAAW,EAAE,CAAC,CAAC;IACrD,CAAC;IACD,IAAI,KAAK;QAAE,KAAK,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;IAC1C,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACvB,KAAK,CAAC,IAAI,CAAC,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC5D,CAAC;IACD,IAAI,OAAO;QAAE,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAEnC,OAAO;QACL,SAAS;QACT,KAAK,EAAE,KAAK,IAAI,SAAS;QACzB,OAAO;QACP,OAAO;QACP,UAAU;QACV,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC;KACxB,CAAC;AACJ,CAAC;AAED,SAAS,cAAc,CAAC,OAAgB;IACtC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC;QAAE,OAAO,EAAE,CAAC;IACvC,OAAO,OAAO;SACX,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAAC;SAClD,GAAG,CAAC,aAAa,CAAC;SAClB,MAAM,CAAC,CAAC,CAAC,EAAkB,EAAE,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC;AAC9C,CAAC;AAED,SAAS,aAAa,CAAC,MAAe;IACpC,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;QAC/B,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;IAC1C,CAAC;IACD,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC;IACvD,MAAM,IAAI,GAAI,MAA6B,CAAC,IAAI,CAAC;IACjD,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAChD,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IACxC,CAAC;IACD,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;AAC5C,CAAC;AAED,SAAS,YAAY,CAAC,KAAc;IAClC,IAAI,KAAK,IAAI,IAAI;QAAE,OAAO,IAAI,CAAC;IAC/B,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;IACrE,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,IAAI,MAAM,IAAI,KAAK,EAAE,CAAC;QAC1D,MAAM,IAAI,GAAI,KAA2B,CAAC,IAAI,CAAC;QAC/C,IAAI,OAAO,IAAI,KAAK,QAAQ;YAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IACrE,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,sBAAsB;AAC7B,8DAA8D;AAC9D,GAAmC;IAEnC,MAAM,GAAG,GAAa,EAAE,CAAC;IACzB,MAAM,MAAM,GAAG,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC;IACnC,IAAI,CAAC,MAAM;QAAE,OAAO,GAAG,CAAC;IAExB,KAAK,MAAM,IAAI,IAAI,MAAM,EAAE,CAAC;QAC1B,KAAK,MAAM,EAAE,IAAI,gBAAgB,CAAC,IAAI,CAAC,EAAE,CAAC;YACxC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACb,MAAM,IAAI,GAAG,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC;YACjC,IAAI,IAAI;gBAAE,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC3B,CAAC;QACD,IAAI,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,KAAK,IAAI,IAAI,EAAE,CAAC;YACtD,MAAM,GAAG,GAAI,IAAyB,CAAC,GAAG,CAAC;YAC3C,IAAI,OAAO,GAAG,KAAK,QAAQ;gBAAE,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC7C,CAAC;IACH,CAAC;IACD,OAAO,SAAS,CAAC,GAAG,CAAC,CAAC;AACxB,CAAC;AAED,SAAS,gBAAgB,CAAC,MAAe;IACvC,IAAI,MAAM,IAAI,IAAI;QAAE,OAAO,EAAE,CAAC;IAC9B,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;IACvD,MAAM,GAAG,GAAa,EAAE,CAAC;IACzB,KAAK,MAAM,IAAI,IAAI,IAAI,EAAE,CAAC;QACxB,MAAM,EAAE,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;QAC1B,IAAI,EAAE;YAAE,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACvB,CAAC;IACD,OAAO,SAAS,CAAC,GAAG,CAAC,CAAC;AACxB,CAAC;AAED,SAAS,QAAQ,CAAC,MAAe;IAC/B,IAAI,OAAO,MAAM,KAAK,QAAQ;QAAE,OAAO,oBAAoB,CAAC,MAAM,CAAC,CAAC;IACpE,IAAI,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,IAAI,IAAI,MAAM,EAAE,CAAC;QAC3D,MAAM,EAAE,GAAI,MAA0B,CAAC,EAAE,CAAC;QAC1C,OAAO,OAAO,EAAE,KAAK,QAAQ,CAAC,CAAC,CAAC,oBAAoB,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAClE,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,iBAAiB,CAAC,MAAe;IACxC,IAAI,MAAM,IAAI,IAAI;QAAE,OAAO,YAAY,CAAC;IACxC,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;IACvD,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,YAAY,CAAC;IAC3C,OAAO,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1C,CAAC;AAED,SAAS,WAAW,CAAC,MAAe;IAClC,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;QAC/B,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QACtC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC9B,OAAO,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC;IACzC,CAAC;IACD,IAAI,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,IAAI,IAAI,MAAM,EAAE,CAAC;QAC3D,OAAO,WAAW,CAAE,MAA0B,CAAC,EAAE,CAAC,CAAC;IACrD,CAAC;IACD,IAAI,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,KAAK,IAAI,MAAM,EAAE,CAAC;QAC5D,MAAM,GAAG,GAAI,MAA2B,CAAC,GAAG,CAAC;QAC7C,IAAI,OAAO,GAAG,KAAK,QAAQ;YAAE,OAAO,GAAG,CAAC;IAC1C,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,SAAS,WAAW,CAAC,KAAc,EAAE,SAAkB;IACrD,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,GAAG,KAAK,IAAI,CAAC;IACnD,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAC5C,IAAI,OAAO,SAAS,KAAK,QAAQ,EAAE,CAAC;QAClC,MAAM,KAAK,GAAG,2BAA2B,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC1D,IAAI,KAAK,EAAE,CAAC;YACV,MAAM,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;YACnB,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;QACxC,CAAC;IACH,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,SAAS,YAAY,CACnB,SAAiB;IAEjB,IAAI,SAAS,KAAK,GAAG;QAAE,OAAO,UAAU,CAAC;IACzC,IAAI,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC;QAAE,OAAO,SAAS,CAAC;IAC/C,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,SAAS,UAAU,CAAC,MAAiB;IACnC,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,IAAI,KAAK,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC;AAC3E,CAAC;AAED,SAAS,qBAAqB,CAAC,MAAe;IAC5C,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IACxD,MAAM,IAAI,GAAI,MAA6B,CAAC,IAAI,CAAC;IACjD,OAAO,IAAI,KAAK,cAAc,IAAI,IAAI,KAAK,eAAe,CAAC;AAC7D,CAAC;AAED,SAAS,mBAAmB,CAAC,UAAmB;IAC9C,IAAI,CAAC,UAAU,IAAI,OAAO,UAAU,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAChE,MAAM,KAAK,GAAI,UAAkC,CAAC,KAAK,CAAC;IACxD,OAAO,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,CAAC;AAC/C,CAAC;AAED,SAAS,gBAAgB,CAAC,KAAc;IACtC,IAAI,KAAK,IAAI,IAAI;QAAE,OAAO,EAAE,CAAC;IAC7B,OAAO,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;AAChD,CAAC;AAED,SAAS,SAAS,CAAC,GAAa;IAC9B,OAAO,CAAC,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;AAC3B,CAAC"}
package/package.json ADDED
@@ -0,0 +1,38 @@
1
+ {
2
+ "name": "@r-a-i-t-h/viz-host",
3
+ "version": "0.1.0",
4
+ "description": "XState v5 inspect host: project machines and open the visualizer popup",
5
+ "type": "module",
6
+ "license": "MIT",
7
+ "repository": {
8
+ "type": "git",
9
+ "url": "git+https://github.com/r-a-i-t-h/viz.git",
10
+ "directory": "packages/host"
11
+ },
12
+ "publishConfig": {
13
+ "access": "public"
14
+ },
15
+ "main": "./dist/index.js",
16
+ "types": "./dist/index.d.ts",
17
+ "exports": {
18
+ ".": {
19
+ "types": "./dist/index.d.ts",
20
+ "import": "./dist/index.js"
21
+ }
22
+ },
23
+ "files": ["dist", "LICENSE"],
24
+ "scripts": {
25
+ "build": "tsc -p tsconfig.json",
26
+ "clean": "rm -rf dist"
27
+ },
28
+ "dependencies": {
29
+ "@r-a-i-t-h/viz-protocol": "^0.1.0"
30
+ },
31
+ "peerDependencies": {
32
+ "xstate": "^5.0.0"
33
+ },
34
+ "devDependencies": {
35
+ "typescript": "~6.0.2",
36
+ "xstate": "^5.32.5"
37
+ }
38
+ }