entropia-template-ui 0.2.4 → 0.2.5

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 (88) hide show
  1. package/dist/App.d.ts +2 -0
  2. package/dist/App.d.ts.map +1 -0
  3. package/dist/areas.d.ts +55 -0
  4. package/dist/areas.d.ts.map +1 -0
  5. package/dist/components/AboutPanel.d.ts +4 -0
  6. package/dist/components/AboutPanel.d.ts.map +1 -0
  7. package/dist/components/BrandLogo.d.ts +6 -0
  8. package/dist/components/BrandLogo.d.ts.map +1 -0
  9. package/dist/components/CodeEditor.d.ts +2 -0
  10. package/dist/components/CodeEditor.d.ts.map +1 -0
  11. package/dist/components/CodePreview.d.ts +6 -0
  12. package/dist/components/CodePreview.d.ts.map +1 -0
  13. package/dist/components/ContextMenu.d.ts +10 -0
  14. package/dist/components/ContextMenu.d.ts.map +1 -0
  15. package/dist/components/DocsPanel.d.ts +2 -0
  16. package/dist/components/DocsPanel.d.ts.map +1 -0
  17. package/dist/components/FileExplorer.d.ts +4 -0
  18. package/dist/components/FileExplorer.d.ts.map +1 -0
  19. package/dist/components/FileManager.d.ts +2 -0
  20. package/dist/components/FileManager.d.ts.map +1 -0
  21. package/dist/components/FilePicker.d.ts +5 -0
  22. package/dist/components/FilePicker.d.ts.map +1 -0
  23. package/dist/components/FloatingWindow.d.ts +10 -0
  24. package/dist/components/FloatingWindow.d.ts.map +1 -0
  25. package/dist/components/GraphCanvas.d.ts +2 -0
  26. package/dist/components/GraphCanvas.d.ts.map +1 -0
  27. package/dist/components/HandwritingPad.d.ts +2 -0
  28. package/dist/components/HandwritingPad.d.ts.map +1 -0
  29. package/dist/components/ImportFolderPanel.d.ts +4 -0
  30. package/dist/components/ImportFolderPanel.d.ts.map +1 -0
  31. package/dist/components/LossPanel.d.ts +2 -0
  32. package/dist/components/LossPanel.d.ts.map +1 -0
  33. package/dist/components/MenuBar.d.ts +13 -0
  34. package/dist/components/MenuBar.d.ts.map +1 -0
  35. package/dist/components/NodeCard.d.ts +4 -0
  36. package/dist/components/NodeCard.d.ts.map +1 -0
  37. package/dist/components/NodeLibrary.d.ts +2 -0
  38. package/dist/components/NodeLibrary.d.ts.map +1 -0
  39. package/dist/components/Panel.d.ts +39 -0
  40. package/dist/components/Panel.d.ts.map +1 -0
  41. package/dist/components/PluginPanel.d.ts +2 -0
  42. package/dist/components/PluginPanel.d.ts.map +1 -0
  43. package/dist/components/PopupMenu.d.ts +19 -0
  44. package/dist/components/PopupMenu.d.ts.map +1 -0
  45. package/dist/components/PreferencesPanel.d.ts +4 -0
  46. package/dist/components/PreferencesPanel.d.ts.map +1 -0
  47. package/dist/components/ProjectPanel.d.ts +2 -0
  48. package/dist/components/ProjectPanel.d.ts.map +1 -0
  49. package/dist/components/SideInspector.d.ts +7 -0
  50. package/dist/components/SideInspector.d.ts.map +1 -0
  51. package/dist/components/Splitter.d.ts +7 -0
  52. package/dist/components/Splitter.d.ts.map +1 -0
  53. package/dist/components/StatusPanel.d.ts +6 -0
  54. package/dist/components/StatusPanel.d.ts.map +1 -0
  55. package/dist/components/Titlebar.d.ts +6 -0
  56. package/dist/components/Titlebar.d.ts.map +1 -0
  57. package/dist/components/ToastStack.d.ts +2 -0
  58. package/dist/components/ToastStack.d.ts.map +1 -0
  59. package/dist/components/Toolbar.d.ts +2 -0
  60. package/dist/components/Toolbar.d.ts.map +1 -0
  61. package/dist/components/WelcomePanel.d.ts +4 -0
  62. package/dist/components/WelcomePanel.d.ts.map +1 -0
  63. package/dist/components/WorkspaceTabs.d.ts +15 -0
  64. package/dist/components/WorkspaceTabs.d.ts.map +1 -0
  65. package/dist/docs/Markdown.d.ts +2 -0
  66. package/dist/docs/Markdown.d.ts.map +1 -0
  67. package/dist/index.d.ts +51 -0
  68. package/dist/index.d.ts.map +1 -0
  69. package/dist/index.js +3817 -0
  70. package/dist/nodes/nodeDefinitions.d.ts +30 -0
  71. package/dist/nodes/nodeDefinitions.d.ts.map +1 -0
  72. package/dist/store/graphStore.d.ts +167 -0
  73. package/dist/store/graphStore.d.ts.map +1 -0
  74. package/dist/{assets/index-BkpZ6AP9.css → style.css} +1 -1
  75. package/dist/subgraphActions.d.ts +4 -0
  76. package/dist/subgraphActions.d.ts.map +1 -0
  77. package/dist/theme.d.ts +11 -0
  78. package/dist/theme.d.ts.map +1 -0
  79. package/dist/version.d.ts +2 -0
  80. package/dist/version.d.ts.map +1 -0
  81. package/package.json +3 -2
  82. package/dist/assets/index-CPQMMXDH.js +0 -70
  83. package/dist/brand/apple-touch-icon.png +0 -0
  84. package/dist/brand/favicon.png +0 -0
  85. package/dist/brand/hero.jpg +0 -0
  86. package/dist/brand/logo.ico +0 -0
  87. package/dist/brand/logo.png +0 -0
  88. package/dist/index.html +0 -16
package/dist/App.d.ts ADDED
@@ -0,0 +1,2 @@
1
+ export default function App(): import("react").JSX.Element;
2
+ //# sourceMappingURL=App.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"App.d.ts","sourceRoot":"","sources":["../src/App.tsx"],"names":[],"mappings":"AA0CA,MAAM,CAAC,OAAO,UAAU,GAAG,gCA2M1B"}
@@ -0,0 +1,55 @@
1
+ /** Blender-style area tree.
2
+
3
+ The window layout is a binary tree of splits. Each leaf is an "area" (a panel
4
+ showing one editor type). Splits are either a row (children side-by-side,
5
+ separated by a vertical divider) or a column (children stacked, separated by a
6
+ horizontal divider). This lets every panel be split both horizontally and
7
+ vertically, and merged away, exactly like Blender's editor areas.
8
+ */
9
+ import type { PanelType } from "./components/Panel";
10
+ export type AreaNode = {
11
+ kind: "leaf";
12
+ id: string;
13
+ type: PanelType;
14
+ } | {
15
+ kind: "split";
16
+ id: string;
17
+ direction: "row" | "column";
18
+ first: AreaNode;
19
+ second: AreaNode;
20
+ ratio: number;
21
+ };
22
+ export declare const leaf: (type: PanelType) => AreaNode;
23
+ export declare const split: (direction: "row" | "column", first: AreaNode, second: AreaNode, ratio?: number) => AreaNode;
24
+ /** Default layout: [nodes/files stacked] | [canvas | (New File over inspector)] over [status | loss]. */
25
+ export declare function defaultLayout(): AreaNode;
26
+ /** A named workspace preset (categorized for the "+" menu). */
27
+ export interface WorkspacePreset {
28
+ id: string;
29
+ label: string;
30
+ category: string;
31
+ description: string;
32
+ build: () => AreaNode;
33
+ }
34
+ export declare const WORKSPACE_PRESETS: WorkspacePreset[];
35
+ /** A runtime workspace instance (its own editable layout + optional default graph). */
36
+ export interface WorkspaceInstance {
37
+ id: string;
38
+ name: string;
39
+ root: AreaNode;
40
+ graph?: string;
41
+ }
42
+ /** Replace a leaf with a split that keeps the leaf + a new sibling of the same type. */
43
+ export declare function splitLeaf(node: AreaNode, id: string, direction: "row" | "column"): AreaNode;
44
+ /** Remove the divider around a node (replace its parent split with its sibling). */
45
+ export declare function closeLeaf(node: AreaNode, id: string): AreaNode;
46
+ /** Join: keep the dragged leaf `id`, remove its sibling (Blender drag-outward). */
47
+ export declare function mergeLeaf(node: AreaNode, id: string): AreaNode;
48
+ /** Return the id of `id`'s sibling (the other child of its parent split), if any. */
49
+ export declare function siblingNodeId(node: AreaNode, id: string): string | null;
50
+ /** Adjust a split's ratio (delta is a fraction of the split's own extent). */
51
+ export declare function resizeSplit(node: AreaNode, id: string, delta: number): AreaNode;
52
+ /** Change the editor type of a leaf. */
53
+ export declare function setLeafType(node: AreaNode, id: string, type: PanelType): AreaNode;
54
+ export declare function countLeaves(node: AreaNode): number;
55
+ //# sourceMappingURL=areas.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"areas.d.ts","sourceRoot":"","sources":["../src/areas.ts"],"names":[],"mappings":"AAAA;;;;;;;EAOE;AACF,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAEpD,MAAM,MAAM,QAAQ,GAChB;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,EAAE,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,SAAS,CAAA;CAAE,GAC7C;IACE,IAAI,EAAE,OAAO,CAAC;IACd,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,KAAK,GAAG,QAAQ,CAAC;IAC5B,KAAK,EAAE,QAAQ,CAAC;IAChB,MAAM,EAAE,QAAQ,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAKN,eAAO,MAAM,IAAI,GAAI,MAAM,SAAS,KAAG,QAIrC,CAAC;AAEH,eAAO,MAAM,KAAK,GAChB,WAAW,KAAK,GAAG,QAAQ,EAC3B,OAAO,QAAQ,EACf,QAAQ,QAAQ,EAChB,cAAW,KACV,QAA2E,CAAC;AAE/E,yGAAyG;AACzG,wBAAgB,aAAa,IAAI,QAAQ,CAaxC;AA8ED,+DAA+D;AAC/D,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,QAAQ,CAAC;CACvB;AAED,eAAO,MAAM,iBAAiB,EAAE,eAAe,EAqC9C,CAAC;AAEF,uFAAuF;AACvF,MAAM,WAAW,iBAAiB;IAChC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,QAAQ,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAID,wFAAwF;AACxF,wBAAgB,SAAS,CACvB,IAAI,EAAE,QAAQ,EACd,EAAE,EAAE,MAAM,EACV,SAAS,EAAE,KAAK,GAAG,QAAQ,GAC1B,QAAQ,CASV;AAED,oFAAoF;AACpF,wBAAgB,SAAS,CAAC,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,GAAG,QAAQ,CAY9D;AAED,mFAAmF;AACnF,wBAAgB,SAAS,CAAC,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,GAAG,QAAQ,CAW9D;AAED,qFAAqF;AACrF,wBAAgB,aAAa,CAAC,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CASvE;AAED,8EAA8E;AAC9E,wBAAgB,WAAW,CAAC,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,QAAQ,CAY/E;AAED,wCAAwC;AACxC,wBAAgB,WAAW,CACzB,IAAI,EAAE,QAAQ,EACd,EAAE,EAAE,MAAM,EACV,IAAI,EAAE,SAAS,GACd,QAAQ,CASV;AAED,wBAAgB,WAAW,CAAC,IAAI,EAAE,QAAQ,GAAG,MAAM,CAGlD"}
@@ -0,0 +1,4 @@
1
+ export declare function AboutPanel({ onClose }: {
2
+ onClose: () => void;
3
+ }): import("react").JSX.Element;
4
+ //# sourceMappingURL=AboutPanel.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AboutPanel.d.ts","sourceRoot":"","sources":["../../src/components/AboutPanel.tsx"],"names":[],"mappings":"AAKA,wBAAgB,UAAU,CAAC,EAAE,OAAO,EAAE,EAAE;IAAE,OAAO,EAAE,MAAM,IAAI,CAAA;CAAE,+BA8B9D"}
@@ -0,0 +1,6 @@
1
+ export declare function BrandLogo({ className, alt, title, }: {
2
+ className?: string;
3
+ alt?: string;
4
+ title?: string;
5
+ }): import("react").JSX.Element;
6
+ //# sourceMappingURL=BrandLogo.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BrandLogo.d.ts","sourceRoot":"","sources":["../../src/components/BrandLogo.tsx"],"names":[],"mappings":"AAUA,wBAAgB,SAAS,CAAC,EACxB,SAAS,EACT,GAA0B,EAC1B,KAAK,GACN,EAAE;IACD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,+BAWA"}
@@ -0,0 +1,2 @@
1
+ export declare function CodeEditor(): import("react").JSX.Element;
2
+ //# sourceMappingURL=CodeEditor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CodeEditor.d.ts","sourceRoot":"","sources":["../../src/components/CodeEditor.tsx"],"names":[],"mappings":"AAKA,wBAAgB,UAAU,gCA4IzB"}
@@ -0,0 +1,6 @@
1
+ export declare function CodePreview({ path, name, onClose, }: {
2
+ path: string;
3
+ name: string;
4
+ onClose: () => void;
5
+ }): import("react").JSX.Element;
6
+ //# sourceMappingURL=CodePreview.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CodePreview.d.ts","sourceRoot":"","sources":["../../src/components/CodePreview.tsx"],"names":[],"mappings":"AAIA,wBAAgB,WAAW,CAAC,EAC1B,IAAI,EACJ,IAAI,EACJ,OAAO,GACR,EAAE;IACD,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB,+BA2CA"}
@@ -0,0 +1,10 @@
1
+ export interface ContextMenuState {
2
+ x: number;
3
+ y: number;
4
+ visible: boolean;
5
+ }
6
+ export declare function ContextMenu({ state, onClose }: {
7
+ state: ContextMenuState;
8
+ onClose: () => void;
9
+ }): import("react").JSX.Element | null;
10
+ //# sourceMappingURL=ContextMenu.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ContextMenu.d.ts","sourceRoot":"","sources":["../../src/components/ContextMenu.tsx"],"names":[],"mappings":"AAMA,MAAM,WAAW,gBAAgB;IAC/B,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,wBAAgB,WAAW,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;IAAE,KAAK,EAAE,gBAAgB,CAAC;IAAC,OAAO,EAAE,MAAM,IAAI,CAAA;CAAE,sCAsC/F"}
@@ -0,0 +1,2 @@
1
+ export declare function DocsPanel(): import("react").JSX.Element;
2
+ //# sourceMappingURL=DocsPanel.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DocsPanel.d.ts","sourceRoot":"","sources":["../../src/components/DocsPanel.tsx"],"names":[],"mappings":"AAsDA,wBAAgB,SAAS,gCA8HxB"}
@@ -0,0 +1,4 @@
1
+ export declare function FileExplorer({ onClose }: {
2
+ onClose: () => void;
3
+ }): import("react").JSX.Element;
4
+ //# sourceMappingURL=FileExplorer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FileExplorer.d.ts","sourceRoot":"","sources":["../../src/components/FileExplorer.tsx"],"names":[],"mappings":"AA2BA,wBAAgB,YAAY,CAAC,EAAE,OAAO,EAAE,EAAE;IAAE,OAAO,EAAE,MAAM,IAAI,CAAA;CAAE,+BA0HhE"}
@@ -0,0 +1,2 @@
1
+ export declare function FileManager(): import("react").JSX.Element;
2
+ //# sourceMappingURL=FileManager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FileManager.d.ts","sourceRoot":"","sources":["../../src/components/FileManager.tsx"],"names":[],"mappings":"AAKA,wBAAgB,WAAW,gCAyG1B"}
@@ -0,0 +1,5 @@
1
+ export declare function openFilePicker(mode: "import" | "export" | "save", options?: {
2
+ defaultName?: string;
3
+ }): Promise<string | null>;
4
+ export declare function FilePickerHost(): import("react").JSX.Element | null;
5
+ //# sourceMappingURL=FilePicker.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FilePicker.d.ts","sourceRoot":"","sources":["../../src/components/FilePicker.tsx"],"names":[],"mappings":"AAkBA,wBAAgB,cAAc,CAC5B,IAAI,EAAE,QAAQ,GAAG,QAAQ,GAAG,MAAM,EAClC,OAAO,CAAC,EAAE;IAAE,WAAW,CAAC,EAAE,MAAM,CAAA;CAAE,GACjC,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAQxB;AAgCD,wBAAgB,cAAc,uCAuK7B"}
@@ -0,0 +1,10 @@
1
+ export declare function FloatingWindow({ title, onClose, x, y, width, zIndex, children, }: {
2
+ title: string;
3
+ onClose: () => void;
4
+ x?: number;
5
+ y?: number;
6
+ width?: number;
7
+ zIndex?: number;
8
+ children: React.ReactNode;
9
+ }): import("react").JSX.Element;
10
+ //# sourceMappingURL=FloatingWindow.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FloatingWindow.d.ts","sourceRoot":"","sources":["../../src/components/FloatingWindow.tsx"],"names":[],"mappings":"AAGA,wBAAgB,cAAc,CAAC,EAC7B,KAAK,EACL,OAAO,EACP,CAAO,EACP,CAAM,EACN,KAAW,EACX,MAAa,EACb,QAAQ,GACT,EAAE;IACD,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,CAAC,CAAC,EAAE,MAAM,CAAC;IACX,CAAC,CAAC,EAAE,MAAM,CAAC;IACX,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B,+BA+BA"}
@@ -0,0 +1,2 @@
1
+ export declare function GraphCanvas(): import("react").JSX.Element;
2
+ //# sourceMappingURL=GraphCanvas.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GraphCanvas.d.ts","sourceRoot":"","sources":["../../src/components/GraphCanvas.tsx"],"names":[],"mappings":"AAgHA,wBAAgB,WAAW,gCAmC1B"}
@@ -0,0 +1,2 @@
1
+ export declare function HandwritingPad(): import("react").JSX.Element;
2
+ //# sourceMappingURL=HandwritingPad.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"HandwritingPad.d.ts","sourceRoot":"","sources":["../../src/components/HandwritingPad.tsx"],"names":[],"mappings":"AAKA,wBAAgB,cAAc,gCAwG7B"}
@@ -0,0 +1,4 @@
1
+ export declare function ImportFolderPanel({ onClose }: {
2
+ onClose: () => void;
3
+ }): import("react").JSX.Element;
4
+ //# sourceMappingURL=ImportFolderPanel.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ImportFolderPanel.d.ts","sourceRoot":"","sources":["../../src/components/ImportFolderPanel.tsx"],"names":[],"mappings":"AAMA,wBAAgB,iBAAiB,CAAC,EAAE,OAAO,EAAE,EAAE;IAAE,OAAO,EAAE,MAAM,IAAI,CAAA;CAAE,+BAyDrE"}
@@ -0,0 +1,2 @@
1
+ export declare function LossPanel(): import("react").JSX.Element;
2
+ //# sourceMappingURL=LossPanel.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LossPanel.d.ts","sourceRoot":"","sources":["../../src/components/LossPanel.tsx"],"names":[],"mappings":"AAIA,wBAAgB,SAAS,gCAgFxB"}
@@ -0,0 +1,13 @@
1
+ import type { WorkspaceInstance } from "../areas";
2
+ export declare function MenuBar({ workspaces, activeWorkspaceId, onSwitchWorkspace, onAddWorkspace, onRemoveWorkspace, onRenameWorkspace, onDuplicateWorkspace, onMoveWorkspace, onReorderWorkspace, }: {
3
+ workspaces: WorkspaceInstance[];
4
+ activeWorkspaceId: string;
5
+ onSwitchWorkspace: (id: string) => void;
6
+ onAddWorkspace: (presetId: string) => void;
7
+ onRemoveWorkspace: (id: string) => void;
8
+ onRenameWorkspace: (id: string, name: string) => void;
9
+ onDuplicateWorkspace: (id: string) => void;
10
+ onMoveWorkspace: (id: string, delta: number) => void;
11
+ onReorderWorkspace: (id: string, targetId: string) => void;
12
+ }): import("react").JSX.Element;
13
+ //# sourceMappingURL=MenuBar.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MenuBar.d.ts","sourceRoot":"","sources":["../../src/components/MenuBar.tsx"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAelD,wBAAgB,OAAO,CAAC,EACtB,UAAU,EACV,iBAAiB,EACjB,iBAAiB,EACjB,cAAc,EACd,iBAAiB,EACjB,iBAAiB,EACjB,oBAAoB,EACpB,eAAe,EACf,kBAAkB,GACnB,EAAE;IACD,UAAU,EAAE,iBAAiB,EAAE,CAAC;IAChC,iBAAiB,EAAE,MAAM,CAAC;IAC1B,iBAAiB,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;IACxC,cAAc,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IAC3C,iBAAiB,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;IACxC,iBAAiB,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACtD,oBAAoB,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;IAC3C,eAAe,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACrD,kBAAkB,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;CAC5D,+BA6RA"}
@@ -0,0 +1,4 @@
1
+ /** Custom React Flow node card: title, ports, state, result (UI_STANDARD.md). */
2
+ import { type NodeProps } from "@xyflow/react";
3
+ export declare function NodeCard({ id, data, selected }: NodeProps): import("react").JSX.Element;
4
+ //# sourceMappingURL=NodeCard.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NodeCard.d.ts","sourceRoot":"","sources":["../../src/components/NodeCard.tsx"],"names":[],"mappings":"AAAA,iFAAiF;AACjF,OAAO,EAAoB,KAAK,SAAS,EAAE,MAAM,eAAe,CAAC;AAIjE,wBAAgB,QAAQ,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,SAAS,+BAkDzD"}
@@ -0,0 +1,2 @@
1
+ export declare function NodeLibrary(): import("react").JSX.Element;
2
+ //# sourceMappingURL=NodeLibrary.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NodeLibrary.d.ts","sourceRoot":"","sources":["../../src/components/NodeLibrary.tsx"],"names":[],"mappings":"AAIA,wBAAgB,WAAW,gCA+D1B"}
@@ -0,0 +1,39 @@
1
+ export type PanelType = "nodes" | "files" | "project" | "canvas" | "inspector" | "status" | "loss" | "docs" | "plugins" | "code" | "pad" | "shader" | "timeline";
2
+ export interface PanelSpec {
3
+ id: string;
4
+ type: PanelType;
5
+ /** Fixed size in px; 0 means "flexible" (fills remaining space). */
6
+ size: number;
7
+ }
8
+ export type DragMode = "split-row" | "split-column" | "merge";
9
+ export interface DragPreview {
10
+ mode: DragMode;
11
+ /** Position relative to the panel being dragged (clips the preview line). */
12
+ x: number;
13
+ y: number;
14
+ }
15
+ export declare const PANEL_TYPES: {
16
+ value: PanelType;
17
+ label: string;
18
+ category: string;
19
+ }[];
20
+ export declare function setPanelTypeVisibility(types: PanelType[]): void;
21
+ export declare function panelLabel(type: PanelType): string;
22
+ type PanelRenderer = () => React.ReactNode;
23
+ export declare function registerPanelContent(type: string, render: PanelRenderer): void;
24
+ export declare function renderPanelContent(type: PanelType): React.ReactNode;
25
+ export declare function PanelSlot({ id, type, onType, onSplitRow, onSplitColumn, onMerge, onClose, canMerge, mergeTarget, preview, onPreview, }: {
26
+ id: string;
27
+ type: PanelType;
28
+ onType: (t: PanelType) => void;
29
+ onSplitRow: () => void;
30
+ onSplitColumn: () => void;
31
+ onMerge: () => void;
32
+ onClose: () => void;
33
+ canMerge: boolean;
34
+ mergeTarget: boolean;
35
+ preview: DragPreview | null;
36
+ onPreview: (p: DragPreview | null) => void;
37
+ }): import("react").JSX.Element;
38
+ export {};
39
+ //# sourceMappingURL=Panel.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Panel.d.ts","sourceRoot":"","sources":["../../src/components/Panel.tsx"],"names":[],"mappings":"AAwBA,MAAM,MAAM,SAAS,GACjB,OAAO,GACP,OAAO,GACP,SAAS,GACT,QAAQ,GACR,WAAW,GACX,QAAQ,GACR,MAAM,GACN,MAAM,GACN,SAAS,GACT,MAAM,GACN,KAAK,GACL,QAAQ,GACR,UAAU,CAAC;AAEf,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,SAAS,CAAC;IAChB,oEAAoE;IACpE,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,MAAM,QAAQ,GAAG,WAAW,GAAG,cAAc,GAAG,OAAO,CAAC;AAE9D,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,QAAQ,CAAC;IACf,6EAA6E;IAC7E,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;CACX;AAED,eAAO,MAAM,WAAW,EAAE;IAAE,KAAK,EAAE,SAAS,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,EAc9E,CAAC;AASF,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,SAAS,EAAE,GAAG,IAAI,CAE/D;AAED,wBAAgB,UAAU,CAAC,IAAI,EAAE,SAAS,GAAG,MAAM,CAElD;AAMD,KAAK,aAAa,GAAG,MAAM,KAAK,CAAC,SAAS,CAAC;AAkB3C,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,aAAa,GAAG,IAAI,CAE9E;AAED,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,SAAS,GAAG,KAAK,CAAC,SAAS,CAGnE;AA2HD,wBAAgB,SAAS,CAAC,EACxB,EAAE,EACF,IAAI,EACJ,MAAM,EACN,UAAU,EACV,aAAa,EACb,OAAO,EACP,OAAO,EACP,QAAQ,EACR,WAAW,EACX,OAAO,EACP,SAAS,GACV,EAAE;IACD,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,SAAS,CAAC;IAChB,MAAM,EAAE,CAAC,CAAC,EAAE,SAAS,KAAK,IAAI,CAAC;IAC/B,UAAU,EAAE,MAAM,IAAI,CAAC;IACvB,aAAa,EAAE,MAAM,IAAI,CAAC;IAC1B,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,QAAQ,EAAE,OAAO,CAAC;IAClB,WAAW,EAAE,OAAO,CAAC;IACrB,OAAO,EAAE,WAAW,GAAG,IAAI,CAAC;IAC5B,SAAS,EAAE,CAAC,CAAC,EAAE,WAAW,GAAG,IAAI,KAAK,IAAI,CAAC;CAC5C,+BAmCA"}
@@ -0,0 +1,2 @@
1
+ export declare function PluginPanel(): import("react").JSX.Element;
2
+ //# sourceMappingURL=PluginPanel.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PluginPanel.d.ts","sourceRoot":"","sources":["../../src/components/PluginPanel.tsx"],"names":[],"mappings":"AAiBA,wBAAgB,WAAW,gCAkI1B"}
@@ -0,0 +1,19 @@
1
+ export interface MenuEntry {
2
+ id: string;
3
+ label: string;
4
+ description?: string;
5
+ category?: string;
6
+ danger?: boolean;
7
+ disabled?: boolean;
8
+ separator?: boolean;
9
+ onSelect?: () => void;
10
+ }
11
+ export declare function PopupMenu({ entries, x, y, onClose, searchable, maxWidth, }: {
12
+ entries: MenuEntry[];
13
+ x: number;
14
+ y: number;
15
+ onClose: () => void;
16
+ searchable?: boolean;
17
+ maxWidth?: number;
18
+ }): import("react").ReactPortal;
19
+ //# sourceMappingURL=PopupMenu.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PopupMenu.d.ts","sourceRoot":"","sources":["../../src/components/PopupMenu.tsx"],"names":[],"mappings":"AAWA,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;CACvB;AAED,wBAAgB,SAAS,CAAC,EACxB,OAAO,EACP,CAAC,EACD,CAAC,EACD,OAAO,EACP,UAAkB,EAClB,QAAc,GACf,EAAE;IACD,OAAO,EAAE,SAAS,EAAE,CAAC;IACrB,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,+BAkGA"}
@@ -0,0 +1,4 @@
1
+ export declare function PreferencesPanel({ onClose }: {
2
+ onClose: () => void;
3
+ }): import("react").JSX.Element;
4
+ //# sourceMappingURL=PreferencesPanel.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PreferencesPanel.d.ts","sourceRoot":"","sources":["../../src/components/PreferencesPanel.tsx"],"names":[],"mappings":"AAiBA,wBAAgB,gBAAgB,CAAC,EAAE,OAAO,EAAE,EAAE;IAAE,OAAO,EAAE,MAAM,IAAI,CAAA;CAAE,+BA0HpE"}
@@ -0,0 +1,2 @@
1
+ export declare function ProjectPanel(): import("react").JSX.Element;
2
+ //# sourceMappingURL=ProjectPanel.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ProjectPanel.d.ts","sourceRoot":"","sources":["../../src/components/ProjectPanel.tsx"],"names":[],"mappings":"AAoBA,wBAAgB,YAAY,gCAkO3B"}
@@ -0,0 +1,7 @@
1
+ /** Right side inspector: a left tag strip + tabbed content (Summary / Params /
2
+ * Inputs / Outputs / Preview). */
3
+ import { type CSSProperties } from "react";
4
+ export declare function SideInspector({ style }: {
5
+ style?: CSSProperties;
6
+ }): import("react").JSX.Element;
7
+ //# sourceMappingURL=SideInspector.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SideInspector.d.ts","sourceRoot":"","sources":["../../src/components/SideInspector.tsx"],"names":[],"mappings":"AAAA;kCACkC;AAClC,OAAO,EAAY,KAAK,aAAa,EAAE,MAAM,OAAO,CAAC;AAerD,wBAAgB,aAAa,CAAC,EAAE,KAAK,EAAE,EAAE;IAAE,KAAK,CAAC,EAAE,aAAa,CAAA;CAAE,+BAoDjE"}
@@ -0,0 +1,7 @@
1
+ export declare function VSplitter({ onDrag }: {
2
+ onDrag: (dx: number, total: number) => void;
3
+ }): import("react").JSX.Element;
4
+ export declare function HSplitter({ onDrag }: {
5
+ onDrag: (dy: number, total: number) => void;
6
+ }): import("react").JSX.Element;
7
+ //# sourceMappingURL=Splitter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Splitter.d.ts","sourceRoot":"","sources":["../../src/components/Splitter.tsx"],"names":[],"mappings":"AA4BA,wBAAgB,SAAS,CAAC,EAAE,MAAM,EAAE,EAAE;IAAE,MAAM,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;CAAE,+BAOpF;AAED,wBAAgB,SAAS,CAAC,EAAE,MAAM,EAAE,EAAE;IAAE,MAAM,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;CAAE,+BAOpF"}
@@ -0,0 +1,6 @@
1
+ /** Bottom status panel: logs + queue (UI_STANDARD.md). */
2
+ import { type CSSProperties } from "react";
3
+ export declare function StatusPanel({ style }: {
4
+ style?: CSSProperties;
5
+ }): import("react").JSX.Element;
6
+ //# sourceMappingURL=StatusPanel.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"StatusPanel.d.ts","sourceRoot":"","sources":["../../src/components/StatusPanel.tsx"],"names":[],"mappings":"AAAA,0DAA0D;AAC1D,OAAO,EAAY,KAAK,aAAa,EAAE,MAAM,OAAO,CAAC;AAGrD,wBAAgB,WAAW,CAAC,EAAE,KAAK,EAAE,EAAE;IAAE,KAAK,CAAC,EAAE,aAAa,CAAA;CAAE,+BA8C/D"}
@@ -0,0 +1,6 @@
1
+ export declare function Titlebar({ title, appName, version }: {
2
+ title?: string;
3
+ appName?: string;
4
+ version?: string;
5
+ }): import("react").JSX.Element;
6
+ //# sourceMappingURL=Titlebar.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Titlebar.d.ts","sourceRoot":"","sources":["../../src/components/Titlebar.tsx"],"names":[],"mappings":"AAQA,wBAAgB,QAAQ,CAAC,EAAE,KAAK,EAAE,OAAgB,EAAE,OAAO,EAAE,EAAE;IAAE,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,+BAepH"}
@@ -0,0 +1,2 @@
1
+ export declare function ToastStack(): import("react").JSX.Element;
2
+ //# sourceMappingURL=ToastStack.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ToastStack.d.ts","sourceRoot":"","sources":["../../src/components/ToastStack.tsx"],"names":[],"mappings":"AAGA,wBAAgB,UAAU,gCAgBzB"}
@@ -0,0 +1,2 @@
1
+ export declare function Toolbar(): import("react").JSX.Element;
2
+ //# sourceMappingURL=Toolbar.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Toolbar.d.ts","sourceRoot":"","sources":["../../src/components/Toolbar.tsx"],"names":[],"mappings":"AAIA,wBAAgB,OAAO,gCAgEtB"}
@@ -0,0 +1,4 @@
1
+ export declare function WelcomePanel({ onClose }: {
2
+ onClose: () => void;
3
+ }): import("react").JSX.Element;
4
+ //# sourceMappingURL=WelcomePanel.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"WelcomePanel.d.ts","sourceRoot":"","sources":["../../src/components/WelcomePanel.tsx"],"names":[],"mappings":"AAOA,wBAAgB,YAAY,CAAC,EAAE,OAAO,EAAE,EAAE;IAAE,OAAO,EAAE,MAAM,IAAI,CAAA;CAAE,+BA4HhE"}
@@ -0,0 +1,15 @@
1
+ import { type WorkspaceInstance, type WorkspacePreset } from "../areas";
2
+ export declare function WorkspaceTabs({ workspaces, activeId, onSwitch, onAdd, onRemove, onRename, onDuplicate, onMove, onReorder, presets, }: {
3
+ workspaces: WorkspaceInstance[];
4
+ activeId: string;
5
+ onSwitch: (id: string) => void;
6
+ onAdd: (presetId: string) => void;
7
+ onRemove: (id: string) => void;
8
+ onRename: (id: string, name: string) => void;
9
+ onDuplicate: (id: string) => void;
10
+ onMove: (id: string, delta: number) => void;
11
+ onReorder: (id: string, targetId: string) => void;
12
+ /** Optional preset list for the "+" menu (default: built-in presets). */
13
+ presets?: WorkspacePreset[];
14
+ }): import("react").JSX.Element;
15
+ //# sourceMappingURL=WorkspaceTabs.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"WorkspaceTabs.d.ts","sourceRoot":"","sources":["../../src/components/WorkspaceTabs.tsx"],"names":[],"mappings":"AAGA,OAAO,EAEL,KAAK,iBAAiB,EACtB,KAAK,eAAe,EACrB,MAAM,UAAU,CAAC;AAQlB,wBAAgB,aAAa,CAAC,EAC5B,UAAU,EACV,QAAQ,EACR,QAAQ,EACR,KAAK,EACL,QAAQ,EACR,QAAQ,EACR,WAAW,EACX,MAAM,EACN,SAAS,EACT,OAAO,GACR,EAAE;IACD,UAAU,EAAE,iBAAiB,EAAE,CAAC;IAChC,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;IAC/B,KAAK,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,QAAQ,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;IAC/B,QAAQ,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAC7C,WAAW,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,MAAM,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAC5C,SAAS,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IAClD,yEAAyE;IACzE,OAAO,CAAC,EAAE,eAAe,EAAE,CAAC;CAC7B,+BAuHA"}
@@ -0,0 +1,2 @@
1
+ export declare function renderMarkdown(md: string): React.ReactNode[];
2
+ //# sourceMappingURL=Markdown.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Markdown.d.ts","sourceRoot":"","sources":["../../src/docs/Markdown.tsx"],"names":[],"mappings":"AAyCA,wBAAgB,cAAc,CAAC,EAAE,EAAE,MAAM,GAAG,KAAK,CAAC,SAAS,EAAE,CAgI5D"}
@@ -0,0 +1,51 @@
1
+ /**
2
+ * Entropia Template UI — public entry point.
3
+ *
4
+ * This module re-exports the reusable node-graph editor building blocks so the
5
+ * template can be consumed as a library:
6
+ *
7
+ * import { App, GraphCanvas, useGraphStore } from "entropia-template-ui";
8
+ * import "entropia-template-ui/style.css";
9
+ * import "@xyflow/react/dist/style.css";
10
+ *
11
+ * The application shell (`App`) is the full editor; individual panels and the
12
+ * zustand store are also exported for custom embedding.
13
+ */
14
+ import "./styles.css";
15
+ export { default as App } from "./App";
16
+ export { GraphCanvas } from "./components/GraphCanvas";
17
+ export { NodeCard } from "./components/NodeCard";
18
+ export { NodeLibrary } from "./components/NodeLibrary";
19
+ export { SideInspector } from "./components/SideInspector";
20
+ export { MenuBar } from "./components/MenuBar";
21
+ export { Titlebar } from "./components/Titlebar";
22
+ export { StatusPanel } from "./components/StatusPanel";
23
+ export { Toolbar } from "./components/Toolbar";
24
+ export { ToastStack } from "./components/ToastStack";
25
+ export { WorkspaceTabs } from "./components/WorkspaceTabs";
26
+ export { FloatingWindow } from "./components/FloatingWindow";
27
+ export { PopupMenu } from "./components/PopupMenu";
28
+ export { ContextMenu } from "./components/ContextMenu";
29
+ export { PanelSlot, registerPanelContent, renderPanelContent, panelLabel, PANEL_TYPES, setPanelTypeVisibility, } from "./components/Panel";
30
+ export { HSplitter, VSplitter } from "./components/Splitter";
31
+ export { WelcomePanel } from "./components/WelcomePanel";
32
+ export { AboutPanel } from "./components/AboutPanel";
33
+ export { PreferencesPanel } from "./components/PreferencesPanel";
34
+ export { PluginPanel } from "./components/PluginPanel";
35
+ export { ProjectPanel } from "./components/ProjectPanel";
36
+ export { ImportFolderPanel } from "./components/ImportFolderPanel";
37
+ export { FileManager } from "./components/FileManager";
38
+ export { FileExplorer } from "./components/FileExplorer";
39
+ export { CodeEditor } from "./components/CodeEditor";
40
+ export { CodePreview } from "./components/CodePreview";
41
+ export { LossPanel } from "./components/LossPanel";
42
+ export { HandwritingPad } from "./components/HandwritingPad";
43
+ export { DocsPanel } from "./components/DocsPanel";
44
+ export { BrandLogo } from "./components/BrandLogo";
45
+ export { FilePickerHost, openFilePicker } from "./components/FilePicker";
46
+ export { useGraphStore } from "./store/graphStore";
47
+ export * from "./areas";
48
+ export { loadTheme, applyTheme, applyBackground } from "./theme";
49
+ export type { ThemeMode } from "./theme";
50
+ export { APP_VERSION } from "./version";
51
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AACH,OAAO,cAAc,CAAC;AAGtB,OAAO,EAAE,OAAO,IAAI,GAAG,EAAE,MAAM,OAAO,CAAC;AAGvC,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAG3D,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAC/C,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EACL,SAAS,EACT,oBAAoB,EACpB,kBAAkB,EAClB,UAAU,EACV,WAAW,EACX,sBAAsB,GACvB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAG7D,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AACjE,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AACnE,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACnD,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAGnD,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAGzE,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,cAAc,SAAS,CAAC;AACxB,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AACjE,YAAY,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AACzC,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC"}