@brett_lamy/docstream 1.4.0 → 1.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (47) hide show
  1. package/README.md +54 -0
  2. package/dist/demo/DemoViewer.d.ts +14 -0
  3. package/dist/demo/DemoViewer.d.ts.map +1 -1
  4. package/dist/demo/DemoViewer.js +50 -9
  5. package/dist/demo/DemoViewer.js.map +1 -1
  6. package/dist/demo/clipboard.d.ts +70 -0
  7. package/dist/demo/clipboard.d.ts.map +1 -0
  8. package/dist/demo/clipboard.js +187 -0
  9. package/dist/demo/clipboard.js.map +1 -0
  10. package/dist/demo/context.d.ts +6 -0
  11. package/dist/demo/context.d.ts.map +1 -1
  12. package/dist/demo/context.js +6 -0
  13. package/dist/demo/context.js.map +1 -1
  14. package/dist/demo/copy-demo.d.ts +23 -0
  15. package/dist/demo/copy-demo.d.ts.map +1 -0
  16. package/dist/demo/copy-demo.js +81 -0
  17. package/dist/demo/copy-demo.js.map +1 -0
  18. package/dist/demo/index.d.ts +8 -2
  19. package/dist/demo/index.d.ts.map +1 -1
  20. package/dist/demo/index.js +5 -2
  21. package/dist/demo/index.js.map +1 -1
  22. package/dist/demo/vfs.d.ts +51 -0
  23. package/dist/demo/vfs.d.ts.map +1 -0
  24. package/dist/demo/vfs.js +156 -0
  25. package/dist/demo/vfs.js.map +1 -0
  26. package/dist/docs/DocsRenderer.d.ts +8 -2
  27. package/dist/docs/DocsRenderer.d.ts.map +1 -1
  28. package/dist/docs/DocsRenderer.js +8 -6
  29. package/dist/docs/DocsRenderer.js.map +1 -1
  30. package/dist/index.d.ts +2 -2
  31. package/dist/index.d.ts.map +1 -1
  32. package/dist/index.js +1 -1
  33. package/dist/index.js.map +1 -1
  34. package/dist/streamdown.d.ts +1 -1
  35. package/dist/streamdown.d.ts.map +1 -1
  36. package/dist/streamdown.js +2 -2
  37. package/dist/streamdown.js.map +1 -1
  38. package/package.json +4 -1
  39. package/src/demo/DemoViewer.tsx +56 -11
  40. package/src/demo/clipboard.ts +228 -0
  41. package/src/demo/context.ts +7 -0
  42. package/src/demo/copy-demo.tsx +102 -0
  43. package/src/demo/index.ts +29 -2
  44. package/src/demo/vfs.ts +197 -0
  45. package/src/docs/DocsRenderer.tsx +13 -4
  46. package/src/index.ts +19 -0
  47. package/src/streamdown.tsx +2 -0
package/README.md CHANGED
@@ -416,6 +416,50 @@ or inline it); each inline demo boots its own container (the fullscreen overlay
416
416
  boots a second one). `preloadDemos(resolver, srcs)` settles resolver demos before
417
417
  the first render (server rendering, static export).
418
418
 
419
+ #### Copy a demo, paste it elsewhere (clipboard + demo VFS)
420
+
421
+ Every demo viewer has a **Copy demo** button. It writes one clipboard item with
422
+ three representations, through react-aria's `useClipboard`:
423
+
424
+ | Type | Content |
425
+ | --- | --- |
426
+ | `text/plain`, `text/markdown` | renderable docstream Markdown: the block with its files inline (resolver files for `src`-only demos, `meta.json` folded into the tag) |
427
+ | `application/x-docstream+json` (`DOCSTREAM_CLIPBOARD_TYPE`) | `{ kind: "docstream", version: 1, markdown, files: { [src]: DemoFile[] }, meta: { [src]: DemoMeta } }` — the exact Markdown (a `src`-only block stays `src`-only) plus every demo's files and meta |
428
+
429
+ Pasting into a docstream editor (`@brett_lamy/docstream-editor` 1.5+) recreates
430
+ the demo with its files; pasting anywhere else gets the Markdown. Where the
431
+ browser's copy command is unavailable the button copies the Markdown only
432
+ (editors still parse its inline-file demos).
433
+
434
+ Pasted demo files live in a **demo VFS** — an in-memory `{ [src]: { files, meta } }`
435
+ store. Give it to a renderer (`demoVFS`) or an editor, or share one between
436
+ several:
437
+
438
+ ```tsx
439
+ import { MarkdownContent, useDemoVFS, useDemoVFSFiles } from "@brett_lamy/docstream"
440
+
441
+ const vfs = useDemoVFS() // stable per component; createDemoVFS() outside React
442
+ const files = useDemoVFSFiles(vfs) // { [src]: DemoFile[] }, re-renders on change — persist it
443
+ <MarkdownContent markdown={page} demoResolver={demoResolver} demoRuntime={demoRuntime} demoVFS={vfs} />
444
+ ```
445
+
446
+ A demo block resolves in this order: the host `demoResolver` when it knows `src`
447
+ → the block's inline files, else the VFS files for `src`, run by the
448
+ `demoRuntime` (almost-node from `/playground` when installed) → the Code view
449
+ with the "needs runtime" note. `vfs.resolver({ resolver, runtime })` is the same
450
+ layering as a `DemoResolver` (`files` / `meta` from the host when it knows
451
+ `src`, else from the VFS; `load` runs VFS files through the runtime).
452
+ `vfs.subscribe(change => …)`, `get/set/delete/list/files()` manage it directly.
453
+
454
+ Building blocks (`@brett_lamy/docstream/demo`): `createDocstreamClipboard(doc, { lookup, serialize })`
455
+ / `createDocstreamClipboardFromMarkdown`, `docstreamClipboardItems` (react-aria
456
+ `DragItem`s), `writeDocstreamClipboard(dataTransfer, clip)`,
457
+ `readDocstreamClipboard(dataTransfer)`, `readDocstreamClipboardItems(dropItems)`,
458
+ `parseDocstreamClipboard(json)`, `docstreamPayloadFromMarkdown`,
459
+ `useDocstreamCopy` / `CopyDemoButton`, and `prefetchDemoSources(resolver, srcs)` +
460
+ `peekDemoSource(resolver, src)` to read a resolver's files synchronously (a copy
461
+ event can't wait).
462
+
419
463
  Tell docstream where demos live with a `DemoResolver`. With Vite, three
420
464
  `import.meta.glob` maps are enough:
421
465
 
@@ -661,6 +705,16 @@ The TypeScript sources are published too, behind a `source` export condition, fo
661
705
  monorepos that want to compile docstream from source (e.g. Vite
662
706
  `resolve.conditions: ["source", ...]` or TypeScript `customConditions`).
663
707
 
708
+ ## Migrating to 1.5
709
+
710
+ No breaking changes. New: **Copy demo** (clipboard with the demo's files and an
711
+ `application/x-docstream+json` payload), the demo VFS (`demoVFS` on the
712
+ renderers, `createDemoVFS` / `useDemoVFS`), and the clipboard helpers above.
713
+ `react-aria` is now a dependency (for `useClipboard`); hosts on
714
+ `react-aria-components` share it. The single-file demo card gains the Copy demo
715
+ button; the multi-file viewer's "Copy demo as Markdown" is now "Copy demo" (the
716
+ same Markdown as `text/plain`, plus the payload).
717
+
664
718
  ## Migrating to 1.4
665
719
 
666
720
  No API changes. Exports now resolve to `dist/*.js` + `dist/*.d.ts` instead of
@@ -1,5 +1,7 @@
1
1
  import { type CSSProperties } from "react";
2
2
  import type { DemoLayout, DemoNode, DemoViewport } from "../gitbook/ast.js";
3
+ import { type DemoSourceSnapshot } from "./clipboard.js";
4
+ import { type DemoVFS } from "./vfs.js";
3
5
  import type { DemoFile, DemoResolver, DemoVariant, InlineDemoRuntime } from "./types.js";
4
6
  export interface DemoViewerProps {
5
7
  /** `<page>/<example>` id handed to the resolver. */
@@ -27,6 +29,11 @@ export interface DemoViewerProps {
27
29
  runtime?: InlineDemoRuntime;
28
30
  /** Extra npm dependencies for the runtime, merged over `demoDependencies` from context. */
29
31
  dependencies?: Record<string, string>;
32
+ /**
33
+ * Demo files held in memory by `src` (pasted demos). Used, like inline files, when the block
34
+ * has none of its own and no resolver knows `src`. Defaults to the VFS in context (`demoVFS`).
35
+ */
36
+ vfs?: DemoVFS;
30
37
  /** Class on the viewer's outer element. (The preview canvas's class is `canvasClassName`.) */
31
38
  className?: string;
32
39
  /** Status shown in the header (`meta.status`). */
@@ -46,6 +53,13 @@ export interface DemoViewerProps {
46
53
  * remembered too, so inline-file fallbacks apply immediately.
47
54
  */
48
55
  export declare function preloadDemos(resolver: DemoResolver, srcs: string[]): Promise<void>;
56
+ /**
57
+ * Fetch demos' meta and files (not their components) into the viewer's cache, so
58
+ * `peekDemoSource` can answer synchronously — e.g. when a copy event needs a demo's files.
59
+ */
60
+ export declare function prefetchDemoSources(resolver: DemoResolver, srcs: string[]): Promise<void>;
61
+ /** A demo's files (and meta) if the resolver has already delivered them (viewer, `preloadDemos`, `prefetchDemoSources`). */
62
+ export declare function peekDemoSource(resolver: DemoResolver, src: string): DemoSourceSnapshot | undefined;
49
63
  export declare const NO_RUNTIME_NOTE = "Live preview needs the playground runtime. The code is shown instead.";
50
64
  export declare function DemoViewer(props: DemoViewerProps): import("react").JSX.Element;
51
65
  /** Renders a parsed `{% demo %}` block with the resolver and runtime from context. */
@@ -1 +1 @@
1
- {"version":3,"file":"DemoViewer.d.ts","sourceRoot":"","sources":["../../src/demo/DemoViewer.tsx"],"names":[],"mappings":"AAcA,OAAO,EAQL,KAAK,aAAa,EAKnB,MAAM,OAAO,CAAA;AAId,OAAO,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAUxE,OAAO,KAAK,EAAiB,QAAQ,EAAY,YAAY,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAA;AAE9G,MAAM,WAAW,eAAe;IAC9B,oDAAoD;IACpD,GAAG,EAAE,MAAM,CAAA;IACX,qEAAqE;IACrE,QAAQ,CAAC,EAAE,YAAY,CAAA;IACvB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,6DAA6D;IAC7D,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IACxB,MAAM,CAAC,EAAE,UAAU,CAAA;IACnB,QAAQ,CAAC,EAAE,WAAW,EAAE,CAAA;IACxB,kDAAkD;IAClD,QAAQ,CAAC,EAAE,YAAY,CAAA;IACvB;;;OAGG;IACH,KAAK,CAAC,EAAE,QAAQ,EAAE,CAAA;IAClB,uDAAuD;IACvD,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,4EAA4E;IAC5E,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,4FAA4F;IAC5F,OAAO,CAAC,EAAE,iBAAiB,CAAA;IAC3B,2FAA2F;IAC3F,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IACrC,8FAA8F;IAC9F,SAAS,CAAC,EAAE,MAAM,CAAA;IAMlB,kDAAkD;IAClD,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,mEAAmE;IACnE,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,4DAA4D;IAC5D,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,yGAAyG;IACzG,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,GAAG,MAAM,CAAA;IAClD,0DAA0D;IAC1D,aAAa,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;CAChC;AAaD;;;;GAIG;AACH,wBAAsB,YAAY,CAAC,QAAQ,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAgBxF;AA2HD,eAAO,MAAM,eAAe,0EAA0E,CAAA;AA4VtG,wBAAgB,UAAU,CAAC,KAAK,EAAE,eAAe,+BA8KhD;AAyGD,sFAAsF;AACtF,wBAAgB,SAAS,CAAC,EAAE,IAAI,EAAE,EAAE;IAAE,IAAI,EAAE,QAAQ,CAAA;CAAE,+BAoBrD;AAED,MAAM,WAAW,mBAAmB;IAClC,GAAG,EAAE,MAAM,CAAA;IACX,QAAQ,CAAC,EAAE,YAAY,CAAA;IACvB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,KAAK,CAAC,EAAE,aAAa,CAAA;CACtB;AAED,oFAAoF;AACpF,wBAAgB,cAAc,CAAC,EAAE,GAAG,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,EAAE,mBAAmB,+BAYzG"}
1
+ {"version":3,"file":"DemoViewer.d.ts","sourceRoot":"","sources":["../../src/demo/DemoViewer.tsx"],"names":[],"mappings":"AAcA,OAAO,EAQL,KAAK,aAAa,EAKnB,MAAM,OAAO,CAAA;AAId,OAAO,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAOxE,OAAO,EAA4B,KAAK,kBAAkB,EAA2B,MAAM,aAAa,CAAA;AAGxG,OAAO,EAAsC,KAAK,OAAO,EAAE,MAAM,OAAO,CAAA;AAExE,OAAO,KAAK,EAAiB,QAAQ,EAAY,YAAY,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAA;AAE9G,MAAM,WAAW,eAAe;IAC9B,oDAAoD;IACpD,GAAG,EAAE,MAAM,CAAA;IACX,qEAAqE;IACrE,QAAQ,CAAC,EAAE,YAAY,CAAA;IACvB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,6DAA6D;IAC7D,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IACxB,MAAM,CAAC,EAAE,UAAU,CAAA;IACnB,QAAQ,CAAC,EAAE,WAAW,EAAE,CAAA;IACxB,kDAAkD;IAClD,QAAQ,CAAC,EAAE,YAAY,CAAA;IACvB;;;OAGG;IACH,KAAK,CAAC,EAAE,QAAQ,EAAE,CAAA;IAClB,uDAAuD;IACvD,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,4EAA4E;IAC5E,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,4FAA4F;IAC5F,OAAO,CAAC,EAAE,iBAAiB,CAAA;IAC3B,2FAA2F;IAC3F,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IACrC;;;OAGG;IACH,GAAG,CAAC,EAAE,OAAO,CAAA;IACb,8FAA8F;IAC9F,SAAS,CAAC,EAAE,MAAM,CAAA;IAMlB,kDAAkD;IAClD,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,mEAAmE;IACnE,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,4DAA4D;IAC5D,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,yGAAyG;IACzG,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,GAAG,MAAM,CAAA;IAClD,0DAA0D;IAC1D,aAAa,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;CAChC;AAaD;;;;GAIG;AACH,wBAAsB,YAAY,CAAC,QAAQ,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAgBxF;AAED;;;GAGG;AACH,wBAAsB,mBAAmB,CAAC,QAAQ,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAW/F;AAED,4HAA4H;AAC5H,wBAAgB,cAAc,CAAC,QAAQ,EAAE,YAAY,EAAE,GAAG,EAAE,MAAM,GAAG,kBAAkB,GAAG,SAAS,CAMlG;AA4HD,eAAO,MAAM,eAAe,0EAA0E,CAAA;AA4VtG,wBAAgB,UAAU,CAAC,KAAK,EAAE,eAAe,+BAyLhD;AAyGD,sFAAsF;AACtF,wBAAgB,SAAS,CAAC,EAAE,IAAI,EAAE,EAAE;IAAE,IAAI,EAAE,QAAQ,CAAA;CAAE,+BAoBrD;AAED,MAAM,WAAW,mBAAmB;IAClC,GAAG,EAAE,MAAM,CAAA;IACX,QAAQ,CAAC,EAAE,YAAY,CAAA;IACvB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,KAAK,CAAC,EAAE,aAAa,CAAA;CACtB;AAED,oFAAoF;AACpF,wBAAgB,cAAc,CAAC,EAAE,GAAG,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,EAAE,mBAAmB,+BAYzG"}
@@ -22,8 +22,10 @@ import { HighlightedCode } from "../docs/HighlightedCode.js";
22
22
  import { CopyButton } from "../docs/copy.js";
23
23
  import { PillTabs, Segmented, rovingKeyDown } from "../docs/controls.js";
24
24
  import { useDemoResolver, useDemoRuntime } from "./context.js";
25
+ import { createDocstreamClipboard } from "./clipboard.js";
26
+ import { CopyDemoButton } from "./copy-demo.js";
25
27
  import { languageForPath } from "./glob.js";
26
- import { inlineDemoMarkdown } from "./markdown.js";
28
+ import { useDemoVFSContext, useDemoVFSEntry } from "./vfs.js";
27
29
  import { cssToSurface, surfaceStyle, surfaceToCss } from "./surface.js";
28
30
  const settled = new WeakMap();
29
31
  function cacheFor(resolver) {
@@ -53,6 +55,33 @@ export async function preloadDemos(resolver, srcs) {
53
55
  settle(`load:${src}`, () => resolver.load(src)),
54
56
  ]));
55
57
  }
58
+ /**
59
+ * Fetch demos' meta and files (not their components) into the viewer's cache, so
60
+ * `peekDemoSource` can answer synchronously — e.g. when a copy event needs a demo's files.
61
+ */
62
+ export async function prefetchDemoSources(resolver, srcs) {
63
+ const cache = cacheFor(resolver);
64
+ const settle = async (key, run) => {
65
+ if (cache.get(key)?.status === "ready")
66
+ return;
67
+ try {
68
+ cache.set(key, { status: "ready", value: await run() });
69
+ }
70
+ catch (cause) {
71
+ cache.set(key, { status: "error", error: cause instanceof Error ? cause : new Error(String(cause)) });
72
+ }
73
+ };
74
+ await Promise.all(srcs.flatMap((src) => [settle(`meta:${src}`, () => resolver.meta(src)), settle(`files:${src}`, () => resolver.files(src))]));
75
+ }
76
+ /** A demo's files (and meta) if the resolver has already delivered them (viewer, `preloadDemos`, `prefetchDemoSources`). */
77
+ export function peekDemoSource(resolver, src) {
78
+ const cache = settled.get(resolver);
79
+ const files = cache?.get(`files:${src}`);
80
+ if (files?.status !== "ready" || !files.value.length)
81
+ return undefined;
82
+ const meta = cache?.get(`meta:${src}`);
83
+ return { files: files.value, ...(meta?.status === "ready" && meta.value ? { meta: meta.value } : {}) };
84
+ }
56
85
  /** Resolves `run()` once `active`, remembering settled values so remounts don't flash. */
57
86
  function useResolved(resolver, key, active, run) {
58
87
  const cached = resolver ? cacheFor(resolver).get(key) : undefined;
@@ -93,10 +122,11 @@ const useFiles = (resolver, src, active) => useResolved(resolver, `files:${src}`
93
122
  const useComponent = (resolver, src, active) => useResolved(resolver, `load:${src}`, active, () => resolver.load(src));
94
123
  /** True once the element has come within `margin` of the viewport (stays true). */
95
124
  function useNearViewport(margin = "400px 0px") {
96
- const ref = useRef(null);
125
+ // A callback ref, so an element that appears later (a VFS demo arriving) is observed too.
126
+ const [el, setEl] = useState(null);
127
+ const ref = useMemo(() => (node) => setEl(node), []);
97
128
  const [near, setNear] = useState(false);
98
129
  useEffect(() => {
99
- const el = ref.current;
100
130
  if (!el || near)
101
131
  return;
102
132
  if (typeof IntersectionObserver === "undefined") {
@@ -109,7 +139,7 @@ function useNearViewport(margin = "400px 0px") {
109
139
  }, { rootMargin: margin });
110
140
  observer.observe(el);
111
141
  return () => observer.disconnect();
112
- }, [near, margin]);
142
+ }, [el, near, margin]);
113
143
  return [ref, near];
114
144
  }
115
145
  /* ---------- pieces ---------- */
@@ -314,7 +344,12 @@ export function DemoViewer(props) {
314
344
  const runtimeOptions = useDemoRuntime({ runtime: props.runtime, dependencies: props.dependencies });
315
345
  const { src } = props;
316
346
  const [ref, near] = useNearViewport();
317
- const inlineFiles = useMemo(() => orderInline(props.files, props.entry), [props.files, props.entry]);
347
+ const vfs = useDemoVFSContext(props.vfs);
348
+ // Pasted demos: files held by the VFS stand in for inline files the block doesn't carry.
349
+ const vfsEntry = useDemoVFSEntry(vfs, props.files?.length ? "" : src);
350
+ const ownFiles = props.files?.length ? props.files : vfsEntry?.files;
351
+ const ownEntry = props.files?.length ? props.entry : props.entry ?? vfsEntry?.meta?.entry;
352
+ const inlineFiles = useMemo(() => orderInline(ownFiles, ownEntry), [ownFiles, ownEntry]);
318
353
  // A resolver is consulted unless the block brings its own files and the resolver
319
354
  // says (via `list()`) that it does not know this src.
320
355
  const tryResolver = !!resolver && !(inlineFiles && (!src || (resolver.list ? !resolver.list().includes(src) : false)));
@@ -324,7 +359,7 @@ export function DemoViewer(props) {
324
359
  const component = useComponent(hookResolver, src, near);
325
360
  const resolverFailed = meta.status === "error" || resolvedFiles.status === "error" || component.status === "error";
326
361
  const mode = tryResolver && !(inlineFiles && resolverFailed) ? "resolver" : inlineFiles ? "inline" : "none";
327
- const metaValue = mode === "resolver" && meta.status === "ready" ? meta.value : undefined;
362
+ const metaValue = mode === "resolver" ? (meta.status === "ready" ? meta.value : undefined) : mode === "inline" && !props.files?.length ? vfsEntry?.meta : undefined;
328
363
  const files = mode === "inline" ? { status: "ready", value: inlineFiles } : resolvedFiles;
329
364
  const title = props.title ?? metaValue?.title ?? (src.split("/").pop() || "Demo");
330
365
  const description = props.description ?? metaValue?.description;
@@ -379,12 +414,18 @@ export function DemoViewer(props) {
379
414
  ...(props.surface ? { surface: typeof props.surface === "string" ? props.surface : surfaceToCss(props.surface) } : {}),
380
415
  ...(props.variantsWidth !== undefined && props.variantsWidth !== "" ? { variantsWidth: String(props.variantsWidth) } : {}),
381
416
  };
382
- const copyDemo = () => inlineDemoMarkdown(node, fileList ?? [], metaValue);
417
+ // "Copy demo": the exact block (src-only stays src-only; inline files stay inline) plus its files.
418
+ const copyDemo = () => {
419
+ if (!fileList?.length)
420
+ return null;
421
+ const exact = props.files?.length ? { ...node, ...(props.entry ? { entry: props.entry } : {}), files: props.files.map((f) => ({ ...f })) } : node;
422
+ return createDocstreamClipboard({ type: "doc", children: [exact] }, { lookup: () => ({ files: fileList, ...(metaValue ? { meta: metaValue } : {}) }) });
423
+ };
383
424
  const dialog = (_jsx(FullscreenDialog, { open: fullscreen, onClose: () => setFullscreen(false), title: title, src: src, variants: variants, variant: variant, onVariant: setVariant, preview: preview, bleed: bleed, look: look, variantsWidth: variantsWidth, href: href }));
384
425
  const wrapper = (kind) => ["docs-demo", `docs-demo-${kind}`, props.className].filter(Boolean).join(" ");
385
426
  if (layout === "single") {
386
427
  const file = fileList?.[0];
387
- return (_jsxs("section", { ref: ref, className: wrapper("single"), "data-docstream-demo": "", "data-demo-src": src, "data-demo-mode": mode, "aria-labelledby": `${baseId}-title`, children: [_jsxs("div", { className: "docs-react-demo", children: [_jsxs("header", { className: "docs-react-demo-header docs-demo-single-head", children: [_jsxs("span", { className: "docs-demo-heading", children: [_jsx("span", { id: `${baseId}-title`, className: "docs-demo-title", children: title }), description ? _jsx("span", { className: "docs-demo-desc", children: _jsx(InlineMarkdown, { text: description }) }) : null] }), _jsx("span", { className: "docs-demo-spacer" }), _jsx(StatusBadge, { status: status }), _jsx(VariantSwitch, { variants: variants, value: variant, onChange: setVariant, title: title, width: variantsWidth }), runnable ? _jsx(FullscreenButton, { onOpen: () => setFullscreen(true), title: title }) : null] }), runnable ? (_jsx("div", { className: "docs-react-demo-preview docs-demo-single-preview",
428
+ return (_jsxs("section", { ref: ref, className: wrapper("single"), "data-docstream-demo": "", "data-demo-src": src, "data-demo-mode": mode, "aria-labelledby": `${baseId}-title`, children: [_jsxs("div", { className: "docs-react-demo", children: [_jsxs("header", { className: "docs-react-demo-header docs-demo-single-head", children: [_jsxs("span", { className: "docs-demo-heading", children: [_jsx("span", { id: `${baseId}-title`, className: "docs-demo-title", children: title }), description ? _jsx("span", { className: "docs-demo-desc", children: _jsx(InlineMarkdown, { text: description }) }) : null] }), _jsx("span", { className: "docs-demo-spacer" }), _jsx(StatusBadge, { status: status }), _jsx(VariantSwitch, { variants: variants, value: variant, onChange: setVariant, title: title, width: variantsWidth }), fileList?.length ? _jsx(CopyDemoButton, { clipboard: copyDemo, className: "docs-demo-icon-btn" }) : null, runnable ? _jsx(FullscreenButton, { onOpen: () => setFullscreen(true), title: title }) : null] }), runnable ? (_jsx("div", { className: "docs-react-demo-preview docs-demo-single-preview",
388
429
  // A hint, not a cap: in-page components may grow past it (no height: size to content;
389
430
  // hosts may set a floor with --docs-demo-preview-min-height). An iframe needs a real height.
390
431
  style: preview.kind === "runtime"
@@ -406,7 +447,7 @@ function MultiFileViewer({ rootRef, className, baseId, mode, src, title, descrip
406
447
  setCodeSeen(true);
407
448
  }, [tab]);
408
449
  const activeViewport = width === null ? "desktop" : VIEWPORTS.find((v) => v.width === width)?.id;
409
- return (_jsxs("section", { ref: rootRef, className: className, "data-docstream-demo": "", "data-demo-src": src, "data-demo-mode": mode, "aria-labelledby": `${baseId}-title`, children: [_jsxs("div", { className: "docs-demo-head", children: [_jsxs("div", { className: "docs-demo-heading", children: [_jsx("div", { id: `${baseId}-title`, className: "docs-demo-title", children: title }), description ? _jsx("p", { className: "docs-demo-desc", children: _jsx(InlineMarkdown, { text: description }) }) : null] }), _jsxs("div", { className: "docs-demo-tools", children: [_jsx(PillTabs, { options: [{ id: "preview", label: "Preview" }, { id: "code", label: "Code" }], value: tab, onChange: setTab, label: `${title} view`, tabId: (id) => `${baseId}-tab-${id}`, panelId: (id) => `${baseId}-panel-${id}` }), _jsx(StatusBadge, { status: status }), _jsx(VariantSwitch, { variants: variants, value: variant, onChange: onVariant, title: title, width: variantsWidth }), tab === "preview" && runnable ? (_jsx("div", { className: "docs-demo-viewports", role: "group", "aria-label": "Preview width", children: VIEWPORTS.map(({ id, label, width: w, Icon }) => (_jsx("button", { type: "button", className: "docs-demo-vp", "aria-pressed": activeViewport === id, "aria-label": w ? `${label} (${w}px)` : label, title: w ? `${label} · ${w}px` : label, onClick: () => setWidth(w), children: _jsx(Icon, { width: 15, height: 15, "aria-hidden": "true" }) }, id))) })) : null, copyDemo ? _jsx(CopyButton, { text: copyDemo, label: "Copy demo as Markdown", className: "docs-demo-icon-btn" }) : null, runnable ? _jsx(FullscreenButton, { onOpen: onFullscreen, title: title }) : null, _jsx(NewTabLink, { href: href, title: title })] })] }), _jsxs("div", { className: "docs-demo-body", children: [_jsx("div", { id: `${baseId}-panel-preview`, role: "tabpanel", "aria-labelledby": `${baseId}-tab-preview`, hidden: tab !== "preview", children: runnable ? (_jsx(PreviewStage, { width: width, onResize: setWidth, height: height, children: near ? _jsx(DemoCanvas, { src: src, preview: preview, variant: variant, bleed: bleed, look: look }) : _jsx(Spinner, {}) })) : (_jsx(DemoCanvas, { src: src, preview: preview, variant: variant })) }), _jsxs("div", { id: `${baseId}-panel-code`, role: "tabpanel", "aria-labelledby": `${baseId}-tab-code`, hidden: tab !== "code", children: [!runnable && tab === "code" ? _jsx(DemoCanvas, { src: src, preview: preview, variant: variant }) : null, codeSeen || tab === "code" ? (files.status === "ready" ? (_jsx(CodeView, { src: src, files: files.value, height: height, id: baseId })) : files.status === "error" ? (_jsx(DemoError, { message: `${src}: ${files.error.message}` })) : (_jsx("div", { className: "docs-demo-code", style: { height }, children: _jsx(Spinner, { label: "Loading files" }) }))) : null] })] }), dialog] }));
450
+ return (_jsxs("section", { ref: rootRef, className: className, "data-docstream-demo": "", "data-demo-src": src, "data-demo-mode": mode, "aria-labelledby": `${baseId}-title`, children: [_jsxs("div", { className: "docs-demo-head", children: [_jsxs("div", { className: "docs-demo-heading", children: [_jsx("div", { id: `${baseId}-title`, className: "docs-demo-title", children: title }), description ? _jsx("p", { className: "docs-demo-desc", children: _jsx(InlineMarkdown, { text: description }) }) : null] }), _jsxs("div", { className: "docs-demo-tools", children: [_jsx(PillTabs, { options: [{ id: "preview", label: "Preview" }, { id: "code", label: "Code" }], value: tab, onChange: setTab, label: `${title} view`, tabId: (id) => `${baseId}-tab-${id}`, panelId: (id) => `${baseId}-panel-${id}` }), _jsx(StatusBadge, { status: status }), _jsx(VariantSwitch, { variants: variants, value: variant, onChange: onVariant, title: title, width: variantsWidth }), tab === "preview" && runnable ? (_jsx("div", { className: "docs-demo-viewports", role: "group", "aria-label": "Preview width", children: VIEWPORTS.map(({ id, label, width: w, Icon }) => (_jsx("button", { type: "button", className: "docs-demo-vp", "aria-pressed": activeViewport === id, "aria-label": w ? `${label} (${w}px)` : label, title: w ? `${label} · ${w}px` : label, onClick: () => setWidth(w), children: _jsx(Icon, { width: 15, height: 15, "aria-hidden": "true" }) }, id))) })) : null, copyDemo ? _jsx(CopyDemoButton, { clipboard: copyDemo, className: "docs-demo-icon-btn" }) : null, runnable ? _jsx(FullscreenButton, { onOpen: onFullscreen, title: title }) : null, _jsx(NewTabLink, { href: href, title: title })] })] }), _jsxs("div", { className: "docs-demo-body", children: [_jsx("div", { id: `${baseId}-panel-preview`, role: "tabpanel", "aria-labelledby": `${baseId}-tab-preview`, hidden: tab !== "preview", children: runnable ? (_jsx(PreviewStage, { width: width, onResize: setWidth, height: height, children: near ? _jsx(DemoCanvas, { src: src, preview: preview, variant: variant, bleed: bleed, look: look }) : _jsx(Spinner, {}) })) : (_jsx(DemoCanvas, { src: src, preview: preview, variant: variant })) }), _jsxs("div", { id: `${baseId}-panel-code`, role: "tabpanel", "aria-labelledby": `${baseId}-tab-code`, hidden: tab !== "code", children: [!runnable && tab === "code" ? _jsx(DemoCanvas, { src: src, preview: preview, variant: variant }) : null, codeSeen || tab === "code" ? (files.status === "ready" ? (_jsx(CodeView, { src: src, files: files.value, height: height, id: baseId })) : files.status === "error" ? (_jsx(DemoError, { message: `${src}: ${files.error.message}` })) : (_jsx("div", { className: "docs-demo-code", style: { height }, children: _jsx(Spinner, { label: "Loading files" }) }))) : null] })] }), dialog] }));
410
451
  }
411
452
  /** Renders a parsed `{% demo %}` block with the resolver and runtime from context. */
412
453
  export function DemoBlock({ node }) {
@@ -1 +1 @@
1
- {"version":3,"file":"DemoViewer.js","sourceRoot":"","sources":["../../src/demo/DemoViewer.tsx"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;8FAa8F;AAC9F,OAAO,EACL,SAAS,EACT,aAAa,EACb,SAAS,EACT,KAAK,EACL,OAAO,EACP,MAAM,EACN,QAAQ,GAMT,MAAM,OAAO,CAAA;AACd,OAAO,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAA;AACxD,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,cAAc,CAAA;AAGzG,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAC/C,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAA;AACzD,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAA;AACzD,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AACzC,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAA;AACrE,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,WAAW,CAAA;AAC3D,OAAO,EAAE,eAAe,EAAE,MAAM,QAAQ,CAAA;AACxC,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAA;AAC/C,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,WAAW,CAAA;AAoDpE,MAAM,OAAO,GAAG,IAAI,OAAO,EAA8C,CAAA;AACzE,SAAS,QAAQ,CAAC,QAAsB;IACtC,IAAI,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;IACjC,IAAI,CAAC,KAAK;QAAE,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,KAAK,GAAG,IAAI,GAAG,EAAE,CAAC,CAAC,CAAA;IACtD,OAAO,KAAK,CAAA;AACd,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,QAAsB,EAAE,IAAc;IACvE,MAAM,KAAK,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAA;IAChC,MAAM,MAAM,GAAG,KAAK,EAAE,GAAW,EAAE,GAA2B,EAAE,EAAE;QAChE,IAAI,CAAC;YACH,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,GAAG,EAAE,EAAE,CAAC,CAAA;QACzD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAA;QACvG,CAAC;IACH,CAAC,CAAA;IACD,MAAM,OAAO,CAAC,GAAG,CACf,IAAI,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC;QACpB,MAAM,CAAC,QAAQ,GAAG,EAAE,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC/C,MAAM,CAAC,SAAS,GAAG,EAAE,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACjD,MAAM,CAAC,QAAQ,GAAG,EAAE,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;KAChD,CAAC,CACH,CAAA;AACH,CAAC;AAED,0FAA0F;AAC1F,SAAS,WAAW,CAAI,QAAkC,EAAE,GAAW,EAAE,MAAe,EAAE,GAAqB;IAC7G,MAAM,MAAM,GAAG,QAAQ,CAAC,CAAC,CAAE,QAAQ,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,GAAG,CAA2B,CAAC,CAAC,CAAC,SAAS,CAAA;IAC5F,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAY,MAAM,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAA;IAC9E,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,QAAQ;YAAE,OAAM;QACrB,MAAM,GAAG,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,GAAG,CAA0B,CAAA;QAChE,IAAI,GAAG,IAAI,GAAG,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;YACpC,QAAQ,CAAC,GAAG,CAAC,CAAA;YACb,OAAM;QACR,CAAC;QACD,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,QAAQ,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAA;YAC/B,OAAM;QACR,CAAC;QACD,IAAI,IAAI,GAAG,IAAI,CAAA;QACf,GAAG,EAAE,CAAC,IAAI,CACR,CAAC,KAAK,EAAE,EAAE;YACR,MAAM,IAAI,GAAc,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,CAAA;YAClD,QAAQ,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;YACjC,IAAI,IAAI;gBAAE,QAAQ,CAAC,IAAI,CAAC,CAAA;QAC1B,CAAC,EACD,CAAC,KAAc,EAAE,EAAE;YACjB,MAAM,KAAK,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAA;YACvE,IAAI,IAAI;gBAAE,QAAQ,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAA;QAChD,CAAC,CACF,CAAA;QACD,OAAO,GAAG,EAAE;YACV,IAAI,GAAG,KAAK,CAAA;QACd,CAAC,CAAA;QACD,yCAAyC;QACzC,uDAAuD;IACzD,CAAC,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC,CAAA;IAC3B,OAAO,KAAK,CAAA;AACd,CAAC;AAED,MAAM,OAAO,GAAG,CAAC,QAAkC,EAAE,GAAW,EAAE,EAAE,CAClE,WAAW,CAAuB,QAAQ,EAAE,QAAQ,GAAG,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,QAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAA;AAC7F,MAAM,QAAQ,GAAG,CAAC,QAAkC,EAAE,GAAW,EAAE,MAAe,EAAE,EAAE,CACpF,WAAW,CAAa,QAAQ,EAAE,SAAS,GAAG,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,QAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAA;AACvF,MAAM,YAAY,GAAG,CAAC,QAAkC,EAAE,GAAW,EAAE,MAAe,EAAE,EAAE,CACxF,WAAW,CAAgB,QAAQ,EAAE,QAAQ,GAAG,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,QAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAA;AAExF,mFAAmF;AACnF,SAAS,eAAe,CAAoB,MAAM,GAAG,WAAW;IAC9D,MAAM,GAAG,GAAG,MAAM,CAAW,IAAI,CAAC,CAAA;IAClC,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAA;IACvC,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,EAAE,GAAG,GAAG,CAAC,OAAO,CAAA;QACtB,IAAI,CAAC,EAAE,IAAI,IAAI;YAAE,OAAM;QACvB,IAAI,OAAO,oBAAoB,KAAK,WAAW,EAAE,CAAC;YAChD,OAAO,CAAC,IAAI,CAAC,CAAA;YACb,OAAM;QACR,CAAC;QACD,MAAM,QAAQ,GAAG,IAAI,oBAAoB,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,EAAE;YACpD,IAAI,KAAK,EAAE,cAAc;gBAAE,OAAO,CAAC,IAAI,CAAC,CAAA;QAC1C,CAAC,EAAE,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC,CAAA;QAC1B,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;QACpB,OAAO,GAAG,EAAE,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAA;IACpC,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAA;IAClB,OAAO,CAAC,GAAG,EAAE,IAAI,CAAU,CAAA;AAC7B,CAAC;AAED,kCAAkC;AAElC,MAAM,iBAAkB,SAAQ,SAAyE;IAC9F,KAAK,GAA4B,EAAE,KAAK,EAAE,IAAI,EAAE,CAAA;IACzD,MAAM,CAAC,wBAAwB,CAAC,KAAc;QAC5C,OAAO,EAAE,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAA;IAC7E,CAAC;IACQ,kBAAkB,CAAC,IAAqB;QAC/C,IAAI,IAAI,CAAC,GAAG,KAAK,IAAI,CAAC,KAAK,CAAC,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK;YAAE,IAAI,CAAC,QAAQ,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAA;IACrF,CAAC;IACQ,MAAM;QACb,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,KAAC,SAAS,IAAC,OAAO,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,sBAAsB,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,GAAI,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAA;IAC3I,CAAC;CACF;AAED,SAAS,SAAS,CAAC,EAAE,OAAO,EAAuB;IACjD,OAAO,cAAK,SAAS,EAAC,iBAAiB,EAAC,IAAI,EAAC,OAAO,YAAE,OAAO,GAAO,CAAA;AACtE,CAAC;AAED,SAAS,OAAO,CAAC,EAAE,KAAK,GAAG,cAAc,EAAsB;IAC7D,OAAO,CACL,cAAK,SAAS,EAAC,mBAAmB,EAAC,IAAI,EAAC,QAAQ,gBAAa,KAAK,YAChE,eAAM,SAAS,EAAC,mBAAmB,iBAAa,MAAM,GAAG,GACrD,CACP,CAAA;AACH,CAAC;AAED,0EAA0E;AAC1E,SAAS,cAAc,CAAC,EAAE,IAAI,EAAoB;IAChD,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAA;IACtD,OAAO,CACL,4BACG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;YAClB,IAAI,CAAC,CAAC,IAAI,KAAK,MAAM;gBAAE,OAAO,IAAI,CAAA;YAClC,IAAI,EAAE,GAAc,CAAC,CAAC,IAAI,CAAA;YAC1B,IAAI,CAAC,CAAC,IAAI;gBAAE,EAAE,GAAG,yBAAO,EAAE,GAAQ,CAAA;YAClC,IAAI,CAAC,CAAC,IAAI;gBAAE,EAAE,GAAG,2BAAS,EAAE,GAAU,CAAA;YACtC,IAAI,CAAC,CAAC,MAAM;gBAAE,EAAE,GAAG,uBAAK,EAAE,GAAM,CAAA;YAChC,IAAI,CAAC,CAAC,IAAI;gBAAE,EAAE,GAAG,YAAG,IAAI,EAAE,CAAC,CAAC,IAAI,YAAG,EAAE,GAAK,CAAA;YAC1C,OAAO,yBAAe,EAAE,IAAN,CAAC,CAAa,CAAA;QAClC,CAAC,CAAC,GACD,CACJ,CAAA;AACH,CAAC;AAED,SAAS,SAAS,CAAC,KAAkC,EAAE,QAAgB;IACrE,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,EAAE;QAAE,OAAO,QAAQ,CAAA;IACxD,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,GAAG,KAAK,IAAI,CAAA;IAClD,OAAO,iBAAiB,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,KAAK,CAAA;AAC3E,CAAC;AASD,MAAM,CAAC,MAAM,eAAe,GAAG,uEAAuE,CAAA;AAStG,SAAS,UAAU,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAMvD;IACC,IAAI,OAAO,CAAC,IAAI,KAAK,aAAa,IAAI,OAAO,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;QACnE,OAAO,CACL,cAAK,SAAS,EAAC,gBAAgB,EAAC,IAAI,EAAC,MAAM,kBAAe,OAAO,YAC9D,OAAO,CAAC,IAAI,KAAK,WAAW,CAAC,CAAC,CAAC,4EAA4E,CAAC,CAAC,CAAC,eAAe,GAC1H,CACP,CAAA;IACH,CAAC;IACD,IAAI,OAAO,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QAC/B,OAAO,CACL,cACE,SAAS,EAAE,CAAC,kEAAkE,EAAE,IAAI,EAAE,SAAS,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAChI,KAAK,EAAE,YAAY,CAAC,IAAI,EAAE,OAAO,CAAC,kBACpB,OAAO,YAErB,KAAC,iBAAiB,IAAC,GAAG,EAAE,GAAG,IAAI,MAAM,YAAG,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,GAAqB,GAChF,CACP,CAAA;IACH,CAAC;IACD,MAAM,EAAE,SAAS,EAAE,GAAG,OAAO,CAAA;IAC7B,OAAO,CACL,cACE,SAAS,EAAE,CAAC,kBAAkB,EAAE,KAAK,CAAC,CAAC,CAAC,wBAAwB,CAAC,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,SAAS,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EACvH,KAAK,EAAE,YAAY,CAAC,IAAI,EAAE,OAAO,CAAC,kBACpB,OAAO,YAEpB,SAAS,CAAC,MAAM,KAAK,OAAO,CAAC,CAAC,CAAC,CAC9B,KAAC,iBAAiB,IAAC,GAAG,EAAE,GAAG,YACxB,aAAa,CAAC,SAAS,CAAC,KAAK,EAAE,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,GACvD,CACrB,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,KAAK,OAAO,CAAC,CAAC,CAAC,CACjC,KAAC,SAAS,IAAC,OAAO,EAAE,GAAG,GAAG,oBAAoB,SAAS,CAAC,KAAK,CAAC,OAAO,EAAE,GAAI,CAC5E,CAAC,CAAC,CAAC,CACF,KAAC,OAAO,KAAG,CACZ,GACG,CACP,CAAA;AACH,CAAC;AAED,MAAM,SAAS,GAAsF;IACnG,EAAE,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE;IAC/D,EAAE,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE;IAC3D,EAAE,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,UAAU,EAAE;CAC9D,CAAA;AACD,MAAM,SAAS,GAAG,GAAG,CAAA;AAErB,kFAAkF;AAClF,SAAS,YAAY,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAKxD;IACC,MAAM,OAAO,GAAG,gBAAgB,EAAE,CAAA;IAClC,MAAM,KAAK,GAAG,MAAM,CAAwB,IAAI,CAAC,CAAA;IACjD,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAA;IAC/C,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAgB,IAAI,CAAC,CAAA;IAC7D,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,GAAG,QAAQ,CAAS,CAAC,CAAC,CAAA;IAEzC,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,EAAE,GAAG,KAAK,CAAC,OAAO,CAAA;QACxB,IAAI,CAAC,EAAE,IAAI,OAAO,cAAc,KAAK,WAAW;YAAE,OAAM;QACxD,MAAM,QAAQ,GAAG,IAAI,cAAc,CAAC,GAAG,EAAE;YACvC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,qBAAqB,EAAE,CAAC,KAAK,CAAC,CAAC,CAAA;YACzD,MAAM,CAAC,EAAE,CAAC,aAAa,EAAE,WAAW,IAAI,CAAC,CAAC,CAAA;QAC5C,CAAC,CAAC,CAAA;QACF,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;QACpB,IAAI,EAAE,CAAC,aAAa;YAAE,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,aAAa,CAAC,CAAA;QACxD,OAAO,GAAG,EAAE,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAA;IACpC,CAAC,EAAE,EAAE,CAAC,CAAA;IAEN,MAAM,KAAK,GAAG,CAAC,IAAY,EAAE,EAAE;QAC7B,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,EAAE,aAAa,EAAE,WAAW,IAAI,IAAI,CAAA;QAC/D,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC,CAAA;QACpE,OAAO,KAAK,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAA;IAC1C,CAAC,CAAA;IAED,MAAM,SAAS,GAAG,CAAC,KAAwC,EAAE,EAAE;QAC7D,MAAM,EAAE,GAAG,KAAK,CAAC,OAAO,CAAA;QACxB,IAAI,CAAC,EAAE,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;YAAE,OAAM;QACrC,KAAK,CAAC,cAAc,EAAE,CAAA;QACtB,MAAM,IAAI,GAAG,EAAE,CAAC,qBAAqB,EAAE,CAAC,IAAI,CAAA;QAC5C,WAAW,CAAC,IAAI,CAAC,CAAA;QACjB,MAAM,IAAI,GAAG,CAAC,EAAgB,EAAE,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,OAAO,GAAG,IAAI,CAAC,CAAC,CAAA;QACrE,MAAM,EAAE,GAAG,GAAG,EAAE;YACd,WAAW,CAAC,KAAK,CAAC,CAAA;YAClB,MAAM,CAAC,mBAAmB,CAAC,aAAa,EAAE,IAAI,CAAC,CAAA;YAC/C,MAAM,CAAC,mBAAmB,CAAC,WAAW,EAAE,EAAE,CAAC,CAAA;YAC3C,MAAM,CAAC,mBAAmB,CAAC,eAAe,EAAE,EAAE,CAAC,CAAA;QACjD,CAAC,CAAA;QACD,MAAM,CAAC,gBAAgB,CAAC,aAAa,EAAE,IAAI,CAAC,CAAA;QAC5C,MAAM,CAAC,gBAAgB,CAAC,WAAW,EAAE,EAAE,CAAC,CAAA;QACxC,MAAM,CAAC,gBAAgB,CAAC,eAAe,EAAE,EAAE,CAAC,CAAA;IAC9C,CAAC,CAAA;IAED,MAAM,SAAS,GAAG,CAAC,KAAyC,EAAE,EAAE;QAC9D,MAAM,OAAO,GAAG,KAAK,IAAI,QAAQ,IAAI,GAAG,CAAA;QACxC,MAAM,IAAI,GAAG,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAA;QACrC,IAAI,IAA+B,CAAA;QACnC,IAAI,KAAK,CAAC,GAAG,KAAK,WAAW;YAAE,IAAI,GAAG,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC,CAAA;aACtD,IAAI,KAAK,CAAC,GAAG,KAAK,YAAY;YAAE,IAAI,GAAG,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC,CAAA;aAC5D,IAAI,KAAK,CAAC,GAAG,KAAK,MAAM;YAAE,IAAI,GAAG,KAAK,CAAC,SAAS,CAAC,CAAA;aACjD,IAAI,KAAK,CAAC,GAAG,KAAK,KAAK;YAAE,IAAI,GAAG,IAAI,CAAA;QACzC,IAAI,IAAI,KAAK,SAAS;YAAE,OAAM;QAC9B,KAAK,CAAC,cAAc,EAAE,CAAA;QACtB,QAAQ,CAAC,IAAI,CAAC,CAAA;IAChB,CAAC,CAAA;IAED,OAAO,CACL,eAAK,SAAS,EAAC,iBAAiB,EAAC,KAAK,EAAE,EAAE,MAAM,EAAE,mBAAiB,QAAQ,IAAI,SAAS,aACtF,KAAC,MAAM,CAAC,GAAG,IACT,GAAG,EAAE,KAAK,EACV,SAAS,EAAC,iBAAiB,gBACf,KAAK,KAAK,IAAI,IAAI,SAAS,EACvC,OAAO,EAAE,KAAK,EACd,OAAO,EAAE,EAAE,KAAK,EAAE,KAAK,IAAI,MAAM,EAAE,EACnC,UAAU,EAAE,QAAQ,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,EAAE,YAElG,QAAQ,GACE,EACb,cACE,SAAS,EAAC,kBAAkB,EAC5B,IAAI,EAAC,WAAW,EAChB,QAAQ,EAAE,CAAC,sBACM,UAAU,gBAChB,gBAAgB,mBACZ,SAAS,mBACT,GAAG,IAAI,SAAS,mBAChB,QAAQ,IAAI,SAAS,oBACpB,QAAQ,CAAC,CAAC,CAAC,GAAG,QAAQ,cAAc,CAAC,CAAC,CAAC,SAAS,mBACjD,QAAQ,IAAI,SAAS,EACpC,aAAa,EAAE,SAAS,EACxB,SAAS,EAAE,SAAS,EACpB,aAAa,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,GACnC,EACF,eAAM,SAAS,EAAC,mBAAmB,iBAAa,MAAM,YAAE,QAAQ,CAAC,CAAC,CAAC,GAAG,QAAQ,IAAI,CAAC,CAAC,CAAC,EAAE,GAAQ,IAC3F,CACP,CAAA;AACH,CAAC;AASD,iGAAiG;AACjG,SAAS,QAAQ,CAAC,KAAiB;IACjC,MAAM,IAAI,GAAc,EAAE,CAAA;IAC1B,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAA;IAC9B,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;QAClC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;YAC1C,MAAM,GAAG,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;YAC3C,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;gBACnB,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;gBACb,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,CAAA;YACjE,CAAC;QACH,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAA;IACtG,CAAC;IACD,OAAO,IAAI,CAAA;AACb,CAAC;AAED,SAAS,QAAQ,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,EAAkE;IAC1G,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,IAAI,IAAI,EAAE,CAAC,CAAA;IAC1D,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC;YAAE,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,IAAI,IAAI,EAAE,CAAC,CAAA;IAC5E,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,CAAA;IACnB,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,CAAA;IAC7D,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAA;IACpD,MAAM,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;IACtC,MAAM,KAAK,GAAG,CAAC,IAAY,EAAE,EAAE,CAAC,GAAG,EAAE,SAAS,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAA;IACnE,MAAM,OAAO,GAAG,GAAG,EAAE,SAAS,CAAA;IAC9B,OAAO,CACL,eAAK,SAAS,EAAC,gBAAgB,EAAC,KAAK,EAAE,EAAE,MAAM,EAAE,aAC/C,eACE,SAAS,EAAC,iBAAiB,EAC3B,IAAI,EAAC,SAAS,sBACG,UAAU,gBAChB,OAAO,EAClB,SAAS,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,aAAa,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,UAAU,CAAC,aAEhF,cAAK,SAAS,EAAC,mBAAmB,iBAAa,MAAM,sBAAY,EAChE,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAChB,GAAG,CAAC,IAAI,KAAK,KAAK,CAAC,CAAC,CAAC,CACnB,eAA2B,SAAS,EAAC,eAAe,EAAC,KAAK,EAAE,EAAE,SAAS,EAAE,GAAG,CAAC,KAAK,EAAmB,iBAAc,MAAM,aACvH,KAAC,MAAM,IAAC,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,iBAAc,MAAM,GAAG,EACnD,GAAG,CAAC,IAAI,KAFD,KAAK,GAAG,CAAC,IAAI,EAAE,CAGnB,CACP,CAAC,CAAC,CAAC,CACF,kBAEE,EAAE,EAAE,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EACnB,IAAI,EAAC,QAAQ,EACb,IAAI,EAAC,KAAK,iBACE,EAAE,mBACC,GAAG,CAAC,IAAI,KAAK,MAAM,mBACnB,OAAO,EACtB,QAAQ,EAAE,GAAG,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EACtC,KAAK,EAAE,GAAG,CAAC,IAAI,EACf,SAAS,EAAC,gBAAgB,EAC1B,KAAK,EAAE,EAAE,SAAS,EAAE,GAAG,CAAC,KAAK,EAAmB,EAChD,OAAO,EAAE,GAAG,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,aAElC,KAAC,SAAS,IAAC,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,iBAAc,MAAM,GAAG,EACvD,yBAAO,GAAG,CAAC,IAAI,GAAQ,KAdlB,GAAG,CAAC,IAAI,CAeN,CACV,CACF,IACG,EACN,eAAK,SAAS,EAAC,kBAAkB,EAAC,IAAI,EAAC,UAAU,EAAC,EAAE,EAAE,OAAO,qBAAmB,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,aACjH,eAAK,SAAS,EAAC,oBAAoB,aACjC,eAAM,SAAS,EAAC,uBAAuB,YAAE,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,GAAG,GAAG,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,GAAQ,EAChG,IAAI,CAAC,CAAC,CAAC,KAAC,UAAU,IAAC,IAAI,EAAE,IAAI,CAAC,OAAO,EAAE,KAAK,EAAE,QAAQ,IAAI,CAAC,IAAI,EAAE,GAAI,CAAC,CAAC,CAAC,IAAI,IACzE,EACN,cAAK,SAAS,EAAC,uBAAuB,EAAC,QAAQ,EAAE,CAAC,gBAAc,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,IAAI,SAAS,CAAC,CAAC,CAAC,SAAS,YACrG,IAAI,CAAC,CAAC,CAAC,CACN,cAAK,SAAS,EAAC,oBAAoB,YACjC,KAAC,eAAe,IAAC,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,IAAI,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,EAAE,WAAW,SAAG,GAClI,CACP,CAAC,CAAC,CAAC,CACF,KAAC,OAAO,IAAC,KAAK,EAAC,eAAe,GAAG,CAClC,GACG,IACF,IACF,CACP,CAAA;AACH,CAAC;AAED,SAAS,gBAAgB,CAAC,EAAE,MAAM,EAAE,KAAK,EAAyC;IAChF,OAAO,CACL,iBAAQ,IAAI,EAAC,QAAQ,EAAC,SAAS,EAAC,oBAAoB,EAAC,OAAO,EAAE,MAAM,gBAAc,QAAQ,KAAK,aAAa,EAAE,KAAK,EAAC,YAAY,YAC9H,KAAC,SAAS,IAAC,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,iBAAc,MAAM,GAAG,GAChD,CACV,CAAA;AACH,CAAC;AAED,SAAS,UAAU,CAAC,EAAE,IAAI,EAAE,KAAK,EAA+C;IAC9E,IAAI,CAAC,IAAI;QAAE,OAAO,IAAI,CAAA;IACtB,OAAO,CACL,YAAG,SAAS,EAAC,oBAAoB,EAAC,IAAI,EAAE,IAAI,EAAE,MAAM,EAAC,QAAQ,EAAC,GAAG,EAAC,YAAY,gBAAa,QAAQ,KAAK,eAAe,EAAE,KAAK,EAAC,iBAAiB,YAC9I,KAAC,YAAY,IAAC,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,iBAAc,MAAM,GAAG,GACxD,CACL,CAAA;AACH,CAAC;AAED,SAAS,aAAa,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,EAM/D;IACC,IAAI,CAAC,QAAQ,EAAE,MAAM,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,IAAI,CAAA;IACzD,OAAO,CACL,KAAC,SAAS,IACR,OAAO,EAAE,QAAQ,EACjB,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,QAAQ,EAClB,KAAK,EAAE,GAAG,KAAK,UAAU,EACzB,SAAS,EAAE,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAC,6CAA6C,EACrG,KAAK,EAAE,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,SAAS,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,GAC5E,CACH,CAAA;AACH,CAAC;AAED,SAAS,WAAW,CAAC,EAAE,MAAM,EAAkC;IAC7D,OAAO,MAAM,CAAC,CAAC,CAAC,eAAM,SAAS,EAAC,kBAAkB,YAAE,MAAM,GAAQ,CAAC,CAAC,CAAC,IAAI,CAAA;AAC3E,CAAC;AAED,0FAA0F;AAC1F,SAAS,gBAAgB,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAa7H;IACC,MAAM,GAAG,GAAG,MAAM,CAA2B,IAAI,CAAC,CAAA;IAClD,MAAM,OAAO,GAAG,KAAK,EAAE,CAAA;IACvB,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,MAAM,GAAG,GAAG,CAAC,OAAO,CAAA;QAC1B,IAAI,CAAC,MAAM;YAAE,OAAM;QACnB,IAAI,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;YACzB,IAAI,OAAO,MAAM,CAAC,SAAS,KAAK,UAAU;gBAAE,MAAM,CAAC,SAAS,EAAE,CAAA;;gBACzD,MAAM,CAAC,YAAY,CAAC,MAAM,EAAE,EAAE,CAAC,CAAA;QACtC,CAAC;aAAM,IAAI,CAAC,IAAI,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;YAChC,MAAM,CAAC,KAAK,EAAE,CAAA;QAChB,CAAC;IACH,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAA;IACV,OAAO,CACL,iBAAQ,GAAG,EAAE,GAAG,EAAE,SAAS,EAAC,kBAAkB,qBAAkB,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,YACzG,IAAI,CAAC,CAAC,CAAC,CACN,eAAK,SAAS,EAAC,wBAAwB,aACrC,eAAK,SAAS,EAAC,sBAAsB,aACnC,eAAM,EAAE,EAAE,OAAO,EAAE,SAAS,EAAC,iBAAiB,YAAE,KAAK,GAAQ,EAC7D,eAAM,SAAS,EAAC,sBAAsB,YAAE,GAAG,GAAQ,EACnD,eAAM,SAAS,EAAC,kBAAkB,GAAG,EACrC,KAAC,aAAa,IAAC,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,aAAa,GAAI,EAC9G,KAAC,UAAU,IAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,GAAI,EACxC,iBAAQ,IAAI,EAAC,QAAQ,EAAC,SAAS,EAAC,oBAAoB,EAAC,OAAO,EAAE,OAAO,gBAAa,kBAAkB,EAAC,KAAK,EAAC,aAAa,EAAC,SAAS,kBAChI,KAAC,CAAC,IAAC,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,iBAAc,MAAM,GAAG,GACxC,IACL,EACN,cAAK,SAAS,EAAC,wBAAwB,YACrC,KAAC,UAAU,IAAC,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,GAAI,GAClF,IACF,CACP,CAAC,CAAC,CAAC,IAAI,GACD,CACV,CAAA;AACH,CAAC;AAMD,iCAAiC;AACjC,SAAS,WAAW,CAAC,KAA6B,EAAE,KAAyB;IAC3E,IAAI,CAAC,KAAK,EAAE,MAAM;QAAE,OAAO,SAAS,CAAA;IACpC,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;IACnE,OAAO,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,GAAG,KAAK,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAA;AAChG,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,KAAsB;IAC/C,MAAM,QAAQ,GAAG,eAAe,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAA;IAChD,MAAM,cAAc,GAAG,cAAc,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,YAAY,EAAE,KAAK,CAAC,YAAY,EAAE,CAAC,CAAA;IACnG,MAAM,EAAE,GAAG,EAAE,GAAG,KAAK,CAAA;IACrB,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,eAAe,EAAe,CAAA;IAClD,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,WAAW,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAA;IAEpG,iFAAiF;IACjF,sDAAsD;IACtD,MAAM,WAAW,GAAG,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,WAAW,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;IACtH,MAAM,YAAY,GAAG,WAAW,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAA;IACvD,MAAM,IAAI,GAAG,OAAO,CAAC,YAAY,EAAE,GAAG,CAAC,CAAA;IACvC,MAAM,aAAa,GAAG,QAAQ,CAAC,YAAY,EAAE,GAAG,EAAE,IAAI,CAAC,CAAA;IACvD,MAAM,SAAS,GAAG,YAAY,CAAC,YAAY,EAAE,GAAG,EAAE,IAAI,CAAC,CAAA;IACvD,MAAM,cAAc,GAAG,IAAI,CAAC,MAAM,KAAK,OAAO,IAAI,aAAa,CAAC,MAAM,KAAK,OAAO,IAAI,SAAS,CAAC,MAAM,KAAK,OAAO,CAAA;IAClH,MAAM,IAAI,GACR,WAAW,IAAI,CAAC,CAAC,WAAW,IAAI,cAAc,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAA;IAEhG,MAAM,SAAS,GAAG,IAAI,KAAK,UAAU,IAAI,IAAI,CAAC,MAAM,KAAK,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAA;IACzF,MAAM,KAAK,GAAuB,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,WAAY,EAAE,CAAC,CAAC,CAAC,aAAa,CAAA;IAC9G,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,IAAI,SAAS,EAAE,KAAK,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,IAAI,MAAM,CAAC,CAAA;IACjF,MAAM,WAAW,GAAG,KAAK,CAAC,WAAW,IAAI,SAAS,EAAE,WAAW,CAAA;IAC/D,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,EAAE,QAAQ,CAAA;IAC9E,MAAM,CAAC,aAAa,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAqB,SAAS,CAAC,CAAA;IAC3E,MAAM,OAAO,GAAG,QAAQ,EAAE,MAAM;QAC9B,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,aAAa,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACjF,CAAC,CAAC,SAAS,CAAA;IACb,MAAM,UAAU,GAAG,KAAK,CAAC,MAAM,IAAI,SAAS,EAAE,MAAM,IAAI,MAAM,CAAA;IAC9D,MAAM,QAAQ,GAAG,KAAK,CAAC,MAAM,KAAK,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAA;IAC9D,MAAM,MAAM,GACV,UAAU,KAAK,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;IACnG,MAAM,WAAW,GAAG,KAAK,CAAC,MAAM,IAAI,SAAS,EAAE,MAAM,CAAA;IACrD,8DAA8D;IAC9D,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,IAAI,SAAS,EAAE,KAAK,CAAA;IAC7C,MAAM,WAAW,GAAG,OAAO,KAAK,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,YAAY,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAA;IACnG,MAAM,IAAI,GAAe;QACvB,SAAS,EAAE,KAAK,CAAC,eAAe,IAAI,SAAS,EAAE,SAAS;QACxD,OAAO,EAAE,WAAW,IAAI,SAAS,EAAE,OAAO;KAC3C,CAAA;IACD,MAAM,aAAa,GAAG,KAAK,CAAC,aAAa,IAAI,SAAS,EAAE,aAAa,CAAA;IACrE,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,IAAI,SAAS,EAAE,MAAM,CAAA;IAChD,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAA;IACnD,MAAM,IAAI,GAAG,IAAI,KAAK,UAAU,CAAC,CAAC,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;IACvG,MAAM,MAAM,GAAG,KAAK,EAAE,CAAA;IAEtB,MAAM,EAAE,OAAO,EAAE,YAAY,EAAE,GAAG,cAAc,CAAA;IAChD,MAAM,OAAO,GAAkB,OAAO,CAAC,GAAG,EAAE;QAC1C,IAAI,IAAI,KAAK,QAAQ;YAAE,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,SAAS,EAAE,CAAA;QAC9D,IAAI,KAAK,CAAC,SAAS;YAAE,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,CAAA;QACjD,IAAI,CAAC,OAAO,IAAI,CAAC,WAAW;YAAE,OAAO,EAAE,IAAI,EAAE,aAAa,EAAE,CAAA;QAC5D,MAAM,KAAK,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;QACjC,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,CAAA;IACzH,CAAC,EAAE,CAAC,IAAI,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,OAAO,EAAE,WAAW,EAAE,GAAG,EAAE,KAAK,EAAE,YAAY,CAAC,CAAC,CAAA;IACtF,MAAM,QAAQ,GAAG,OAAO,CAAC,IAAI,KAAK,aAAa,CAAA;IAE/C,IAAI,IAAI,KAAK,MAAM,EAAE,CAAC;QACpB,OAAO,CACL,eAAK,SAAS,EAAC,iBAAiB,yBAAqB,EAAE,mBAAgB,GAAG,aACxE,KAAC,SAAS,IAAC,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,iBAAc,MAAM,GAAG,EACvD,yBAAO,KAAK,GAAQ,EACpB,oCAAY,GAAG,IAAQ,IACnB,CACP,CAAA;IACH,CAAC;IAED,MAAM,IAAI,GAAa;QACrB,IAAI,EAAE,MAAM;QACZ,GAAG;QACH,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC9C,GAAG,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAChE,GAAG,CAAC,KAAK,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACvE,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACjD,GAAG,CAAC,KAAK,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC/D,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACvD,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACjD,GAAG,CAAC,KAAK,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC5D,GAAG,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,KAAK,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACtE,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,KAAK,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,YAAY,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACtH,GAAG,CAAC,KAAK,CAAC,aAAa,KAAK,SAAS,IAAI,KAAK,CAAC,aAAa,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC3H,CAAA;IACD,MAAM,QAAQ,GAAG,GAAG,EAAE,CAAC,kBAAkB,CAAC,IAAI,EAAE,QAAQ,IAAI,EAAE,EAAE,SAAS,CAAC,CAAA;IAE1E,MAAM,MAAM,GAAG,CACb,KAAC,gBAAgB,IACf,IAAI,EAAE,UAAU,EAChB,OAAO,EAAE,GAAG,EAAE,CAAC,aAAa,CAAC,KAAK,CAAC,EACnC,KAAK,EAAE,KAAK,EACZ,GAAG,EAAE,GAAG,EACR,QAAQ,EAAE,QAAQ,EAClB,OAAO,EAAE,OAAO,EAChB,SAAS,EAAE,UAAU,EACrB,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,KAAK,EACZ,IAAI,EAAE,IAAI,EACV,aAAa,EAAE,aAAa,EAC5B,IAAI,EAAE,IAAI,GACV,CACH,CAAA;IACD,MAAM,OAAO,GAAG,CAAC,IAAY,EAAE,EAAE,CAAC,CAAC,WAAW,EAAE,aAAa,IAAI,EAAE,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IAE/G,IAAI,MAAM,KAAK,QAAQ,EAAE,CAAC;QACxB,MAAM,IAAI,GAAG,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAA;QAC1B,OAAO,CACL,mBAAS,GAAG,EAAE,GAAG,EAAE,SAAS,EAAE,OAAO,CAAC,QAAQ,CAAC,yBAAsB,EAAE,mBAAgB,GAAG,oBAAkB,IAAI,qBAAmB,GAAG,MAAM,QAAQ,aAClJ,eAAK,SAAS,EAAC,iBAAiB,aAC9B,kBAAQ,SAAS,EAAC,8CAA8C,aAC9D,gBAAM,SAAS,EAAC,mBAAmB,aACjC,eAAM,EAAE,EAAE,GAAG,MAAM,QAAQ,EAAE,SAAS,EAAC,iBAAiB,YAAE,KAAK,GAAQ,EACtE,WAAW,CAAC,CAAC,CAAC,eAAM,SAAS,EAAC,gBAAgB,YAAC,KAAC,cAAc,IAAC,IAAI,EAAE,WAAW,GAAI,GAAO,CAAC,CAAC,CAAC,IAAI,IAC9F,EACP,eAAM,SAAS,EAAC,kBAAkB,GAAG,EACrC,KAAC,WAAW,IAAC,MAAM,EAAE,MAAM,GAAI,EAC/B,KAAC,aAAa,IAAC,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,aAAa,GAAI,EAC9G,QAAQ,CAAC,CAAC,CAAC,KAAC,gBAAgB,IAAC,MAAM,EAAE,GAAG,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,KAAK,GAAI,CAAC,CAAC,CAAC,IAAI,IACjF,EACR,QAAQ,CAAC,CAAC,CAAC,CACV,cACE,SAAS,EAAC,kDAAkD;4BAC5D,sFAAsF;4BACtF,6FAA6F;4BAC7F,KAAK,EACH,OAAO,CAAC,IAAI,KAAK,SAAS;gCACxB,CAAC,CAAC,EAAE,MAAM,EAAE,SAAS,CAAC,WAAW,EAAE,OAAO,CAAC,EAAE;gCAC7C,CAAC,CAAC,WAAW,KAAK,SAAS,IAAI,WAAW,KAAK,EAAE;oCAC/C,CAAC,CAAC,SAAS;oCACX,CAAC,CAAC,EAAE,SAAS,EAAE,SAAS,CAAC,WAAW,EAAE,KAAK,CAAC,EAAE,YAGnD,IAAI,CAAC,CAAC,CAAC,KAAC,UAAU,IAAC,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,GAAI,CAAC,CAAC,CAAC,KAAC,OAAO,KAAG,GACxG,CACP,CAAC,CAAC,CAAC,CACF,KAAC,UAAU,IAAC,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,GAAI,CAC7D,EACA,IAAI,CAAC,CAAC,CAAC,CACN,KAAC,eAAe,IACd,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,EACtC,QAAQ,EAAE,IAAI,CAAC,QAAQ,IAAI,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,EAC7D,SAAS,EAAE,QAAQ,IAAI,CAAC,IAAI,EAAE,KAC1B,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,EAAE,EAAE,CAAC,GAC5C,CACH,CAAC,CAAC,CAAC,IAAI,IACJ,EACL,MAAM,IACC,CACX,CAAA;IACH,CAAC;IAED,OAAO,CACL,KAAC,eAAe,IACd,OAAO,EAAE,GAAG,EACZ,SAAS,EAAE,OAAO,CAAC,MAAM,IAAI,SAAS,CAAC,EACvC,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,IAAI,EACV,GAAG,EAAE,GAAG,EACR,KAAK,EAAE,KAAK,EACZ,WAAW,EAAE,WAAW,EACxB,QAAQ,EAAE,QAAQ,EAClB,OAAO,EAAE,OAAO,EAChB,SAAS,EAAE,UAAU,EACrB,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,IAAI,EACV,MAAM,EAAE,SAAS,CAAC,WAAW,EAAE,OAAO,CAAC,EACvC,QAAQ,EAAE,KAAK,CAAC,QAAQ,EACxB,KAAK,EAAE,KAAK,EACZ,IAAI,EAAE,IAAI,EACV,MAAM,EAAE,MAAM,EACd,aAAa,EAAE,aAAa,EAC5B,IAAI,EAAE,IAAI,EACV,YAAY,EAAE,GAAG,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,EACvC,QAAQ,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,EACjD,MAAM,EAAE,MAAM,GACd,CACH,CAAA;AACH,CAAC;AAED,SAAS,eAAe,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,aAAa,EAAE,IAAI,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,EAwBnO;IACC,MAAM,QAAQ,GAAG,OAAO,CAAC,IAAI,KAAK,aAAa,CAAA;IAC/C,qFAAqF;IACrF,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,GAAG,QAAQ,CAAU,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAA;IACtE,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAgB,GAAG,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,QAAQ,CAAC,EAAE,KAAK,IAAI,IAAI,CAAC,CAAA;IAChH,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAA;IAC/C,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,GAAG,KAAK,MAAM;YAAE,WAAW,CAAC,IAAI,CAAC,CAAA;IACvC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAA;IACT,MAAM,cAAc,GAAG,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,KAAK,CAAC,EAAE,EAAE,CAAA;IAEhG,OAAO,CACL,mBAAS,GAAG,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,yBAAsB,EAAE,mBAAgB,GAAG,oBAAkB,IAAI,qBAAmB,GAAG,MAAM,QAAQ,aAC9I,eAAK,SAAS,EAAC,gBAAgB,aAC7B,eAAK,SAAS,EAAC,mBAAmB,aAChC,cAAK,EAAE,EAAE,GAAG,MAAM,QAAQ,EAAE,SAAS,EAAC,iBAAiB,YAAE,KAAK,GAAO,EACpE,WAAW,CAAC,CAAC,CAAC,YAAG,SAAS,EAAC,gBAAgB,YAAC,KAAC,cAAc,IAAC,IAAI,EAAE,WAAW,GAAI,GAAI,CAAC,CAAC,CAAC,IAAI,IACzF,EACN,eAAK,SAAS,EAAC,iBAAiB,aAC9B,KAAC,QAAQ,IACP,OAAO,EAAE,CAAC,EAAE,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,CAAU,EACtF,KAAK,EAAE,GAAG,EACV,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,GAAG,KAAK,OAAO,EACtB,KAAK,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,GAAG,MAAM,QAAQ,EAAE,EAAE,EACpC,OAAO,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,GAAG,MAAM,UAAU,EAAE,EAAE,GACxC,EACF,KAAC,WAAW,IAAC,MAAM,EAAE,MAAM,GAAI,EAC/B,KAAC,aAAa,IAAC,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,aAAa,GAAI,EAC7G,GAAG,KAAK,SAAS,IAAI,QAAQ,CAAC,CAAC,CAAC,CAC/B,cAAK,SAAS,EAAC,qBAAqB,EAAC,IAAI,EAAC,OAAO,gBAAY,eAAe,YACzE,SAAS,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,CAChD,iBAEE,IAAI,EAAC,QAAQ,EACb,SAAS,EAAC,cAAc,kBACV,cAAc,KAAK,EAAE,gBACvB,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,EAC3C,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,EACtC,OAAO,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,YAE1B,KAAC,IAAI,IAAC,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,iBAAc,MAAM,GAAG,IAR7C,EAAE,CASA,CACV,CAAC,GACE,CACP,CAAC,CAAC,CAAC,IAAI,EACP,QAAQ,CAAC,CAAC,CAAC,KAAC,UAAU,IAAC,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAC,uBAAuB,EAAC,SAAS,EAAC,oBAAoB,GAAG,CAAC,CAAC,CAAC,IAAI,EAC7G,QAAQ,CAAC,CAAC,CAAC,KAAC,gBAAgB,IAAC,MAAM,EAAE,YAAY,EAAE,KAAK,EAAE,KAAK,GAAI,CAAC,CAAC,CAAC,IAAI,EAC3E,KAAC,UAAU,IAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,GAAI,IACpC,IACF,EACN,eAAK,SAAS,EAAC,gBAAgB,aAC7B,cAAK,EAAE,EAAE,GAAG,MAAM,gBAAgB,EAAE,IAAI,EAAC,UAAU,qBAAkB,GAAG,MAAM,cAAc,EAAE,MAAM,EAAE,GAAG,KAAK,SAAS,YACpH,QAAQ,CAAC,CAAC,CAAC,CACV,KAAC,YAAY,IAAC,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,YAC3D,IAAI,CAAC,CAAC,CAAC,KAAC,UAAU,IAAC,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,GAAI,CAAC,CAAC,CAAC,KAAC,OAAO,KAAG,GAC/F,CAChB,CAAC,CAAC,CAAC,CACF,KAAC,UAAU,IAAC,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,GAAI,CAC7D,GACG,EACN,eAAK,EAAE,EAAE,GAAG,MAAM,aAAa,EAAE,IAAI,EAAC,UAAU,qBAAkB,GAAG,MAAM,WAAW,EAAE,MAAM,EAAE,GAAG,KAAK,MAAM,aAC3G,CAAC,QAAQ,IAAI,GAAG,KAAK,MAAM,CAAC,CAAC,CAAC,KAAC,UAAU,IAAC,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,GAAI,CAAC,CAAC,CAAC,IAAI,EACjG,QAAQ,IAAI,GAAG,KAAK,MAAM,CAAC,CAAC,CAAC,CAC5B,KAAK,CAAC,MAAM,KAAK,OAAO,CAAC,CAAC,CAAC,CACzB,KAAC,QAAQ,IAAC,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAI,CACvE,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,KAAK,OAAO,CAAC,CAAC,CAAC,CAC7B,KAAC,SAAS,IAAC,OAAO,EAAE,GAAG,GAAG,KAAK,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,GAAI,CACzD,CAAC,CAAC,CAAC,CACF,cAAK,SAAS,EAAC,gBAAgB,EAAC,KAAK,EAAE,EAAE,MAAM,EAAE,YAAE,KAAC,OAAO,IAAC,KAAK,EAAC,eAAe,GAAG,GAAM,CAC3F,CACF,CAAC,CAAC,CAAC,IAAI,IACJ,IACF,EACL,MAAM,IACC,CACX,CAAA;AACH,CAAC;AAED,sFAAsF;AACtF,MAAM,UAAU,SAAS,CAAC,EAAE,IAAI,EAAsB;IACpD,OAAO,CACL,KAAC,UAAU,IACT,GAAG,EAAE,IAAI,CAAC,GAAG,EACb,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,WAAW,EAAE,IAAI,CAAC,WAAW,EAC7B,MAAM,EAAE,IAAI,CAAC,MAAM,EACnB,MAAM,EAAE,IAAI,CAAC,MAAM,EACnB,QAAQ,EAAE,IAAI,CAAC,QAAQ,EACvB,QAAQ,EAAE,IAAI,CAAC,QAAQ,EACvB,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,SAAS,EAAE,IAAI,CAAC,IAAI,EACpB,MAAM,EAAE,IAAI,CAAC,MAAM,EACnB,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,eAAe,EAAE,IAAI,CAAC,SAAS,EAC/B,OAAO,EAAE,IAAI,CAAC,OAAO,EACrB,aAAa,EAAE,IAAI,CAAC,aAAa,GACjC,CACH,CAAA;AACH,CAAC;AAUD,oFAAoF;AACpF,MAAM,UAAU,cAAc,CAAC,EAAE,GAAG,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,KAAK,EAAuB;IACxG,MAAM,QAAQ,GAAG,eAAe,CAAC,QAAQ,CAAC,CAAA;IAC1C,MAAM,IAAI,GAAG,OAAO,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAA;IACnC,MAAM,SAAS,GAAG,YAAY,CAAC,QAAQ,EAAE,GAAG,EAAE,IAAI,CAAC,CAAA;IACnD,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,KAAK,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAA;IAClE,MAAM,MAAM,GAAG,OAAO,IAAI,SAAS,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAA;IACtD,IAAI,CAAC,QAAQ;QAAE,OAAO,KAAC,SAAS,IAAC,OAAO,EAAE,wBAAwB,GAAG,EAAE,GAAI,CAAA;IAC3E,OAAO,CACL,cAAK,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,wBAAwB,SAAS,EAAE,CAAC,CAAC,CAAC,sBAAsB,EAAE,KAAK,EAAE,KAAK,mBAAiB,GAAG,YACxH,KAAC,UAAU,IAAC,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,SAAS,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,GAAI,GAC1H,CACP,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"DemoViewer.js","sourceRoot":"","sources":["../../src/demo/DemoViewer.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,70 @@
1
+ import type { DemoNode, DocumentNode } from "../gitbook/ast.js";
2
+ import type { DemoFile, DemoMeta } from "./types.js";
3
+ export declare const DOCSTREAM_CLIPBOARD_TYPE = "application/x-docstream+json";
4
+ export interface DocstreamClipboardPayload {
5
+ /** Always `"docstream"`. */
6
+ kind: "docstream";
7
+ version: 1;
8
+ /** The copied content as docstream Markdown, structure exactly as it was. */
9
+ markdown: string;
10
+ /** Every demo's files by `src` (inline files, or the resolver's for src-only demos). */
11
+ files: Record<string, DemoFile[]>;
12
+ /** `meta.json`-style defaults by `src` (the resolver's meta, else the tag's attributes). */
13
+ meta: Record<string, DemoMeta>;
14
+ }
15
+ /** A demo's files (and meta) as the copying side knows them. */
16
+ export interface DemoSourceSnapshot {
17
+ files: DemoFile[];
18
+ meta?: DemoMeta;
19
+ }
20
+ export interface DocstreamClipboard {
21
+ payload: DocstreamClipboardPayload;
22
+ /** The renderable Markdown (demos inlined) written as `text/plain` / `text/markdown`. */
23
+ text: string;
24
+ }
25
+ /** A react-aria `DragItem`: one representation per MIME type. */
26
+ export type DocstreamClipboardItem = Record<string, string>;
27
+ /** Every `{% demo %}` node in a document (inside tabs, hints, lists …), in document order. */
28
+ export declare function collectDemoNodes(doc: DocumentNode): DemoNode[];
29
+ /** A copy of `doc` with every demo node replaced by `map(node)`. */
30
+ export declare function mapDemoNodes(doc: DocumentNode, map: (node: DemoNode) => DemoNode): DocumentNode;
31
+ /** A demo tag's attributes as `meta.json`-style defaults. */
32
+ export declare function demoNodeMeta(node: DemoNode): DemoMeta;
33
+ export interface CreateDocstreamClipboardOptions {
34
+ /**
35
+ * Files (and meta) for demos that don't carry theirs inline — the host resolver's, read
36
+ * synchronously (see `peekDemoSource`), or a `DemoVFS`'s. Demos it can't answer for stay
37
+ * src-only in both representations.
38
+ */
39
+ lookup?: (node: DemoNode) => DemoSourceSnapshot | undefined;
40
+ /** Markdown serializer. Defaults to docstream's `serializeMarkdown`. */
41
+ serialize?: (doc: DocumentNode) => string;
42
+ }
43
+ /** The clipboard representations of a document (or a selection of one). */
44
+ export declare function createDocstreamClipboard(doc: DocumentNode, options?: CreateDocstreamClipboardOptions): DocstreamClipboard;
45
+ /** Parse the Markdown of a copied docstream selection (or a single demo). */
46
+ export declare function createDocstreamClipboardFromMarkdown(markdown: string, options?: CreateDocstreamClipboardOptions): DocstreamClipboard;
47
+ /** The clipboard as react-aria `DragItem`s (for `useClipboard`'s `getItems` / `useDrag`). */
48
+ export declare function docstreamClipboardItems(clip: DocstreamClipboard): DocstreamClipboardItem[];
49
+ /** Writes the representations straight onto a `DataTransfer` (a copy / cut / dragstart event's). */
50
+ export declare function writeDocstreamClipboard(data: Pick<DataTransfer, "setData">, clip: DocstreamClipboard): void;
51
+ /** Validates a `DOCSTREAM_CLIPBOARD_TYPE` string. */
52
+ export declare function parseDocstreamClipboard(json: string | null | undefined): DocstreamClipboardPayload | null;
53
+ /** True when a `DataTransfer` carries a docstream payload. */
54
+ export declare function hasDocstreamClipboard(data: Pick<DataTransfer, "types"> | null | undefined): boolean;
55
+ /** The docstream payload on a paste / drop `DataTransfer`, if any. */
56
+ export declare function readDocstreamClipboard(data: Pick<DataTransfer, "getData" | "types"> | null | undefined): DocstreamClipboardPayload | null;
57
+ /** Minimal react-aria `DropItem` shape (text items). */
58
+ export interface DocstreamDropItem {
59
+ kind: string;
60
+ types?: Set<string>;
61
+ getText?: (type: string) => Promise<string>;
62
+ }
63
+ /** The docstream payload among react-aria `DropItem`s (`useClipboard`'s `onPaste`, `useDrop`). */
64
+ export declare function readDocstreamClipboardItems(items: readonly DocstreamDropItem[]): Promise<DocstreamClipboardPayload | null>;
65
+ /**
66
+ * A payload for Markdown that arrived without one (only `text/plain` / `text/markdown`):
67
+ * inline-file demos give their files by `src`.
68
+ */
69
+ export declare function docstreamPayloadFromMarkdown(markdown: string): DocstreamClipboardPayload;
70
+ //# sourceMappingURL=clipboard.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"clipboard.d.ts","sourceRoot":"","sources":["../../src/demo/clipboard.ts"],"names":[],"mappings":"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"}