@gtsx/studio 0.0.1

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 (91) hide show
  1. package/LICENSE +21 -0
  2. package/dist/case-grid-layout.d.ts +6 -0
  3. package/dist/case-grid-layout.d.ts.map +1 -0
  4. package/dist/chunks/client-entry-6rzfPqgF.js +3973 -0
  5. package/dist/client-entry.d.ts +5 -0
  6. package/dist/client-entry.d.ts.map +1 -0
  7. package/dist/client.d.ts +200 -0
  8. package/dist/client.d.ts.map +1 -0
  9. package/dist/client.js +3 -0
  10. package/dist/components/BufferedPreviewIframe.g.d.ts +30 -0
  11. package/dist/components/BufferedPreviewIframe.g.d.ts.map +1 -0
  12. package/dist/components/ComponentBoundsHitTarget.g.d.ts +24 -0
  13. package/dist/components/ComponentBoundsHitTarget.g.d.ts.map +1 -0
  14. package/dist/components/ComponentCard.g.d.ts +29 -0
  15. package/dist/components/ComponentCard.g.d.ts.map +1 -0
  16. package/dist/components/FileGroupLink.g.d.ts +54 -0
  17. package/dist/components/FileGroupLink.g.d.ts.map +1 -0
  18. package/dist/components/LazyPreviewFrame.g.d.ts +58 -0
  19. package/dist/components/LazyPreviewFrame.g.d.ts.map +1 -0
  20. package/dist/components/PreviewCaseSheet.g.d.ts +51 -0
  21. package/dist/components/PreviewCaseSheet.g.d.ts.map +1 -0
  22. package/dist/components/PreviewError.g.d.ts +27 -0
  23. package/dist/components/PreviewError.g.d.ts.map +1 -0
  24. package/dist/components/PreviewMessage.g.d.ts +29 -0
  25. package/dist/components/PreviewMessage.g.d.ts.map +1 -0
  26. package/dist/components/SelectedBoundaryOutline.g.d.ts +21 -0
  27. package/dist/components/SelectedBoundaryOutline.g.d.ts.map +1 -0
  28. package/dist/components/SidebarComponentPreview.g.d.ts +70 -0
  29. package/dist/components/SidebarComponentPreview.g.d.ts.map +1 -0
  30. package/dist/components/StudioComponentCardSlot.d.ts +26 -0
  31. package/dist/components/StudioComponentCardSlot.d.ts.map +1 -0
  32. package/dist/components/StudioEmptyState.g.d.ts +19 -0
  33. package/dist/components/StudioEmptyState.g.d.ts.map +1 -0
  34. package/dist/components/StudioPreviewIframe.d.ts +14 -0
  35. package/dist/components/StudioPreviewIframe.d.ts.map +1 -0
  36. package/dist/components/StudioShell.d.ts +10 -0
  37. package/dist/components/StudioShell.d.ts.map +1 -0
  38. package/dist/components/StudioWorkspaceView.g.d.ts +119 -0
  39. package/dist/components/StudioWorkspaceView.g.d.ts.map +1 -0
  40. package/dist/components/ViewportPresetTabs.g.d.ts +24 -0
  41. package/dist/components/ViewportPresetTabs.g.d.ts.map +1 -0
  42. package/dist/index.d.ts +26 -0
  43. package/dist/index.d.ts.map +1 -0
  44. package/dist/index.js +3 -0
  45. package/dist/manifest-server.d.ts +8 -0
  46. package/dist/manifest-server.d.ts.map +1 -0
  47. package/dist/manifest-server.js +20 -0
  48. package/dist/manifest.d.ts +52 -0
  49. package/dist/manifest.d.ts.map +1 -0
  50. package/dist/manifest.js +58 -0
  51. package/dist/preview-cache-indexeddb.d.ts +6 -0
  52. package/dist/preview-cache-indexeddb.d.ts.map +1 -0
  53. package/dist/preview-frame-layout.d.ts +23 -0
  54. package/dist/preview-frame-layout.d.ts.map +1 -0
  55. package/dist/preview-frame-slot.d.ts +6 -0
  56. package/dist/preview-frame-slot.d.ts.map +1 -0
  57. package/dist/preview-geometry-cache-store.d.ts +37 -0
  58. package/dist/preview-geometry-cache-store.d.ts.map +1 -0
  59. package/dist/preview-iframe-pool.d.ts +86 -0
  60. package/dist/preview-iframe-pool.d.ts.map +1 -0
  61. package/dist/preview-lazy-loading.d.ts +30 -0
  62. package/dist/preview-lazy-loading.d.ts.map +1 -0
  63. package/dist/preview-render-queue.d.ts +54 -0
  64. package/dist/preview-render-queue.d.ts.map +1 -0
  65. package/dist/preview-render-session-store.d.ts +17 -0
  66. package/dist/preview-render-session-store.d.ts.map +1 -0
  67. package/dist/studio-canvas-geometry.d.ts +19 -0
  68. package/dist/studio-canvas-geometry.d.ts.map +1 -0
  69. package/dist/studio-canvas-transform-event.d.ts +4 -0
  70. package/dist/studio-canvas-transform-event.d.ts.map +1 -0
  71. package/dist/studio-component-preview-frame-states.d.ts +6 -0
  72. package/dist/studio-component-preview-frame-states.d.ts.map +1 -0
  73. package/dist/studio-preview-message-flush.d.ts +14 -0
  74. package/dist/studio-preview-message-flush.d.ts.map +1 -0
  75. package/dist/studio-preview-render-completion-source.d.ts +12 -0
  76. package/dist/studio-preview-render-completion-source.d.ts.map +1 -0
  77. package/dist/studio-preview-render-observation.d.ts +43 -0
  78. package/dist/studio-preview-render-observation.d.ts.map +1 -0
  79. package/dist/studio-preview-render-plan.d.ts +40 -0
  80. package/dist/studio-preview-render-plan.d.ts.map +1 -0
  81. package/dist/studio-preview-render-request-clock.d.ts +24 -0
  82. package/dist/studio-preview-render-request-clock.d.ts.map +1 -0
  83. package/dist/studio-preview-render-request-policy.d.ts +19 -0
  84. package/dist/studio-preview-render-request-policy.d.ts.map +1 -0
  85. package/dist/use-studio-canvas-controller.d.ts +40 -0
  86. package/dist/use-studio-canvas-controller.d.ts.map +1 -0
  87. package/dist/use-studio-canvas-layout.d.ts +28 -0
  88. package/dist/use-studio-canvas-layout.d.ts.map +1 -0
  89. package/dist/use-studio-preview-render-scheduler.d.ts +32 -0
  90. package/dist/use-studio-preview-render-scheduler.d.ts.map +1 -0
  91. package/package.json +70 -0
@@ -0,0 +1,70 @@
1
+ import type { StudioPreviewFrameState } from "../client";
2
+ import type { StudioManifest, StudioManifestComponent } from "../manifest";
3
+ type SidebarComponentPreviewProps = {
4
+ component: StudioManifestComponent;
5
+ frameState?: StudioPreviewFrameState;
6
+ manifest: StudioManifest;
7
+ };
8
+ declare function SidebarComponentPreview(props: SidebarComponentPreviewProps): import("react/jsx-runtime").JSX.Element;
9
+ declare namespace SidebarComponentPreview {
10
+ var cases: {
11
+ tabletLoaded: {
12
+ props: {
13
+ component: {
14
+ coordinate: string;
15
+ filePath: string;
16
+ exportName: string;
17
+ componentName: string;
18
+ mode: "scope";
19
+ cases: {
20
+ kind: "scope";
21
+ name: string;
22
+ }[];
23
+ providers: {};
24
+ diagnostics: never[];
25
+ };
26
+ manifest: {
27
+ version: 1;
28
+ routes: {
29
+ preview: string;
30
+ studio: string;
31
+ manifest: string;
32
+ };
33
+ preview: {
34
+ urlTemplate: string;
35
+ allUrlTemplate: string;
36
+ };
37
+ files: never[];
38
+ diagnostics: never[];
39
+ };
40
+ frameState: {
41
+ expectedSessionId: string;
42
+ ready: true;
43
+ tree: {
44
+ id: string;
45
+ coordinate: string;
46
+ rect: {
47
+ x: number;
48
+ y: number;
49
+ width: number;
50
+ height: number;
51
+ };
52
+ children: never[];
53
+ }[];
54
+ };
55
+ };
56
+ scope: {
57
+ boundaryRect: {
58
+ x: number;
59
+ y: number;
60
+ width: number;
61
+ height: number;
62
+ };
63
+ setContainerElement(): void;
64
+ shouldLoad: true;
65
+ };
66
+ };
67
+ };
68
+ }
69
+ export default SidebarComponentPreview;
70
+ //# sourceMappingURL=SidebarComponentPreview.g.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SidebarComponentPreview.g.d.ts","sourceRoot":"","sources":["../../src/components/SidebarComponentPreview.g.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,WAAW,CAAA;AACxD,OAAO,KAAK,EAAE,cAAc,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAA;AAE1E,KAAK,4BAA4B,GAAG;IAClC,SAAS,EAAE,uBAAuB,CAAA;IAClC,UAAU,CAAC,EAAE,uBAAuB,CAAA;IACpC,QAAQ,EAAE,cAAc,CAAA;CACzB,CAAA;AAwDD,iBAAwB,uBAAuB,CAAC,KAAK,EAAE,4BAA4B,2CA2ClF;kBA3CuB,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;eAAvB,uBAAuB"}
@@ -0,0 +1,26 @@
1
+ import React from "react";
2
+ import { type StudioPreviewFrameState, type StudioPreviewCacheEntry, type StudioViewportPreset } from "../client";
3
+ import type { StudioManifest, StudioManifestComponent } from "../manifest";
4
+ import { type StudioPreviewGeometryCacheStore } from "../preview-geometry-cache-store";
5
+ import type { StudioPreviewIframeMountState } from "../preview-iframe-pool";
6
+ type StudioComponentCardSlotProps = {
7
+ casePreviewScale?: number;
8
+ columnIndex: number;
9
+ component: StudioManifestComponent;
10
+ debugPreviewPool?: boolean;
11
+ debugPreviewQueue?: boolean;
12
+ fallbackFrameStates?: Record<string, StudioPreviewFrameState>;
13
+ fallbackPreviewCache?: Record<string, StudioPreviewCacheEntry>;
14
+ manifest: StudioManifest;
15
+ onPreviewFrameMount?: (sessionId: string, frame: HTMLIFrameElement | null, state?: StudioPreviewIframeMountState) => void;
16
+ onPreviewGeometryChange?: () => void;
17
+ onSelect: (component: StudioManifestComponent, caseFrameStates: Record<string, StudioPreviewFrameState | undefined>, columnIndex: number, source: "keyboard" | "pointer") => void;
18
+ previewGeometryStore?: StudioPreviewGeometryCacheStore;
19
+ selected: boolean;
20
+ selectedCaseName: string;
21
+ viewportPreset: StudioViewportPreset;
22
+ };
23
+ declare function StudioComponentCardSlotView(props: StudioComponentCardSlotProps): import("react/jsx-runtime").JSX.Element;
24
+ declare const StudioComponentCardSlot: React.MemoExoticComponent<typeof StudioComponentCardSlotView>;
25
+ export default StudioComponentCardSlot;
26
+ //# sourceMappingURL=StudioComponentCardSlot.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"StudioComponentCardSlot.d.ts","sourceRoot":"","sources":["../../src/components/StudioComponentCardSlot.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAA;AAGzB,OAAO,EACL,KAAK,uBAAuB,EAC5B,KAAK,uBAAuB,EAC5B,KAAK,oBAAoB,EAC1B,MAAM,WAAW,CAAA;AAClB,OAAO,KAAK,EAAE,cAAc,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAA;AAC1E,OAAO,EAEL,KAAK,+BAA+B,EACrC,MAAM,iCAAiC,CAAA;AACxC,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,wBAAwB,CAAA;AAO3E,KAAK,4BAA4B,GAAG;IAClC,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,WAAW,EAAE,MAAM,CAAA;IACnB,SAAS,EAAE,uBAAuB,CAAA;IAClC,gBAAgB,CAAC,EAAE,OAAO,CAAA;IAC1B,iBAAiB,CAAC,EAAE,OAAO,CAAA;IAC3B,mBAAmB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,uBAAuB,CAAC,CAAA;IAC7D,oBAAoB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,uBAAuB,CAAC,CAAA;IAC9D,QAAQ,EAAE,cAAc,CAAA;IACxB,mBAAmB,CAAC,EAAE,CACpB,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,iBAAiB,GAAG,IAAI,EAC/B,KAAK,CAAC,EAAE,6BAA6B,KAClC,IAAI,CAAA;IACT,uBAAuB,CAAC,EAAE,MAAM,IAAI,CAAA;IACpC,QAAQ,EAAE,CACR,SAAS,EAAE,uBAAuB,EAClC,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,uBAAuB,GAAG,SAAS,CAAC,EACpE,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,UAAU,GAAG,SAAS,KAC3B,IAAI,CAAA;IACT,oBAAoB,CAAC,EAAE,+BAA+B,CAAA;IACtD,QAAQ,EAAE,OAAO,CAAA;IACjB,gBAAgB,EAAE,MAAM,CAAA;IACxB,cAAc,EAAE,oBAAoB,CAAA;CACrC,CAAA;AAID,iBAAS,2BAA2B,CAAC,KAAK,EAAE,4BAA4B,2CAgFvE;AAED,QAAA,MAAM,uBAAuB,+DAAgF,CAAA;AAE7G,eAAe,uBAAuB,CAAA"}
@@ -0,0 +1,19 @@
1
+ type StudioEmptyStateProps = {
2
+ title: string;
3
+ detail: string;
4
+ actionLabel?: string;
5
+ };
6
+ declare function StudioEmptyState(props: StudioEmptyStateProps): import("react/jsx-runtime").JSX.Element;
7
+ declare namespace StudioEmptyState {
8
+ var cases: {
9
+ empty: {
10
+ props: {
11
+ title: string;
12
+ detail: string;
13
+ actionLabel: string;
14
+ };
15
+ };
16
+ };
17
+ }
18
+ export default StudioEmptyState;
19
+ //# sourceMappingURL=StudioEmptyState.g.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"StudioEmptyState.g.d.ts","sourceRoot":"","sources":["../../src/components/StudioEmptyState.g.tsx"],"names":[],"mappings":"AAEA,KAAK,qBAAqB,GAAG;IAC3B,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,EAAE,MAAM,CAAA;IACd,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB,CAAA;AAED,iBAAwB,gBAAgB,CAAC,KAAK,EAAE,qBAAqB,2CAoCpE;kBApCuB,gBAAgB;;;;;;;;;;;eAAhB,gBAAgB"}
@@ -0,0 +1,14 @@
1
+ import type { StudioPreviewIframeBorrowOrigin, StudioPreviewIframeMountState } from "../preview-iframe-pool";
2
+ import type { StudioPreviewFrameSlot } from "../preview-frame-slot";
3
+ type StudioPreviewIframeProps = {
4
+ onBorrowOriginChange?: (origin: StudioPreviewIframeBorrowOrigin | null) => void;
5
+ onPreviewFrameMount?: (sessionId: string, frame: HTMLIFrameElement | null, state?: StudioPreviewIframeMountState) => void;
6
+ size: {
7
+ width: number | string;
8
+ height: number;
9
+ };
10
+ slot: StudioPreviewFrameSlot;
11
+ };
12
+ export default function StudioPreviewIframe(props: StudioPreviewIframeProps): import("react/jsx-runtime").JSX.Element;
13
+ export {};
14
+ //# sourceMappingURL=StudioPreviewIframe.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"StudioPreviewIframe.d.ts","sourceRoot":"","sources":["../../src/components/StudioPreviewIframe.tsx"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,+BAA+B,EAAE,6BAA6B,EAAE,MAAM,wBAAwB,CAAA;AAC5G,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAA;AAEnE,KAAK,wBAAwB,GAAG;IAC9B,oBAAoB,CAAC,EAAE,CAAC,MAAM,EAAE,+BAA+B,GAAG,IAAI,KAAK,IAAI,CAAA;IAC/E,mBAAmB,CAAC,EAAE,CACpB,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,iBAAiB,GAAG,IAAI,EAC/B,KAAK,CAAC,EAAE,6BAA6B,KAClC,IAAI,CAAA;IACT,IAAI,EAAE;QAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAA;IAChD,IAAI,EAAE,sBAAsB,CAAA;CAC7B,CAAA;AAED,MAAM,CAAC,OAAO,UAAU,mBAAmB,CAAC,KAAK,EAAE,wBAAwB,2CAU1E"}
@@ -0,0 +1,10 @@
1
+ import type { StudioManifest } from "../manifest";
2
+ import { type StudioPreviewRenderQueueOptions } from "../preview-render-queue";
3
+ export type StudioShellProps = {
4
+ manifest: StudioManifest;
5
+ previewRenderQueue?: StudioPreviewRenderQueueOptions;
6
+ selection?: string;
7
+ urlSearch?: string;
8
+ };
9
+ export default function StudioShell(props: StudioShellProps): import("react/jsx-runtime").JSX.Element;
10
+ //# sourceMappingURL=StudioShell.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"StudioShell.d.ts","sourceRoot":"","sources":["../../src/components/StudioShell.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,cAAc,EAA2B,MAAM,aAAa,CAAA;AA+B1E,OAAO,EAA6C,KAAK,+BAA+B,EAAE,MAAM,yBAAyB,CAAA;AAMzH,MAAM,MAAM,gBAAgB,GAAG;IAC7B,QAAQ,EAAE,cAAc,CAAA;IACxB,kBAAkB,CAAC,EAAE,+BAA+B,CAAA;IACpD,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,CAAA;AA0SD,MAAM,CAAC,OAAO,UAAU,WAAW,CAAC,KAAK,EAAE,gBAAgB,2CAiC1D"}
@@ -0,0 +1,119 @@
1
+ import type { StudioManifest, StudioManifestComponent } from "../manifest";
2
+ import { type StudioPreviewCacheEntry, type StudioCanvasTransform, type StudioComponentSelectionOptions, type StudioPreviewFrameState, type StudioViewportPreset, type StudioWorkspaceState } from "../client";
3
+ import type { StudioPreviewRenderQueueOptions } from "../preview-render-queue";
4
+ import { type StudioPreviewRenderSessionStore } from "../preview-render-session-store";
5
+ import type { StudioPreviewIframeMountState } from "../preview-iframe-pool";
6
+ import type { StudioPreviewGeometryCacheStore } from "../preview-geometry-cache-store";
7
+ export type StudioWorkspaceViewProps = {
8
+ canvas?: StudioCanvasTransform;
9
+ debugPreviewPool?: boolean;
10
+ debugPreviewQueue?: boolean;
11
+ manifest: StudioManifest;
12
+ workspace: StudioWorkspaceState;
13
+ selection?: string;
14
+ previewCache?: Record<string, StudioPreviewCacheEntry>;
15
+ previewCacheReady?: boolean;
16
+ previewGeometryStore?: StudioPreviewGeometryCacheStore;
17
+ previewRenderQueue?: StudioPreviewRenderQueueOptions;
18
+ frameStates?: Record<string, StudioPreviewFrameState>;
19
+ onChangeSelection?: (selection: string) => void;
20
+ onChangeCase?: (component: StudioManifestComponent, caseName: string, options?: {
21
+ keepDrilldown?: boolean;
22
+ }) => void;
23
+ onChangeCanvasViewportPreset?: (preset: StudioViewportPreset) => void;
24
+ onChangeCanvas?: (canvas: StudioCanvasTransform) => void;
25
+ onChangeViewportPreset?: (component: StudioManifestComponent, preset: StudioViewportPreset) => void;
26
+ onPreviewFrameMount?: (sessionId: string, frame: HTMLIFrameElement | null, state?: StudioPreviewIframeMountState) => void;
27
+ onSelectComponent?: (component: StudioManifestComponent, caseFrameStates: Record<string, StudioPreviewFrameState | undefined>, options?: StudioComponentSelectionOptions) => void;
28
+ urlWarning?: string;
29
+ };
30
+ declare function Studio(props: StudioWorkspaceViewProps): import("react/jsx-runtime").JSX.Element;
31
+ declare namespace Studio {
32
+ var cases: {
33
+ multiExportFile: {
34
+ props: {
35
+ manifest: {
36
+ version: 1;
37
+ routes: {
38
+ preview: string;
39
+ studio: string;
40
+ manifest: string;
41
+ };
42
+ preview: {
43
+ urlTemplate: string;
44
+ allUrlTemplate: string;
45
+ };
46
+ files: {
47
+ path: string;
48
+ groupId: string;
49
+ components: {
50
+ coordinate: string;
51
+ filePath: string;
52
+ exportName: string;
53
+ componentName: string;
54
+ mode: "pure";
55
+ cases: {
56
+ kind: "pure";
57
+ name: string;
58
+ }[];
59
+ providers: {};
60
+ diagnostics: never[];
61
+ }[];
62
+ diagnostics: never[];
63
+ }[];
64
+ diagnostics: never[];
65
+ };
66
+ workspace: {
67
+ canvasViewportPreset: "tablet";
68
+ columns: {
69
+ components: {
70
+ coordinate: string;
71
+ filePath: string;
72
+ exportName: string;
73
+ componentName: string;
74
+ mode: "pure";
75
+ cases: {
76
+ kind: "pure";
77
+ name: string;
78
+ }[];
79
+ providers: {};
80
+ diagnostics: never[];
81
+ }[];
82
+ }[];
83
+ selectedCaseByCoordinate: {};
84
+ selectedCoordinatePath: never[];
85
+ selectedRuntimeInstanceByCoordinate: {};
86
+ selectedViewportPresetByCoordinate: {};
87
+ };
88
+ };
89
+ scope: {
90
+ canvas: {
91
+ x: number;
92
+ y: number;
93
+ scale: number;
94
+ };
95
+ canvasViewportPreset: "tablet";
96
+ casePreviewScale: number;
97
+ columnLayoutByIndex: {};
98
+ onCanvasPointerCancel(): void;
99
+ onCanvasPointerDown(): void;
100
+ onCanvasPointerMove(): void;
101
+ onCanvasPointerUp(): void;
102
+ onPreviewGeometryChange(): void;
103
+ onSelectCard(): void;
104
+ onViewportPresetChange(): void;
105
+ previewRenderSessionStore: StudioPreviewRenderSessionStore;
106
+ selected: {
107
+ id: string;
108
+ components: never[];
109
+ };
110
+ setCanvasSurfaceElement(): void;
111
+ setCanvasViewportElement(): void;
112
+ setCardElement(): void;
113
+ setColumnElement(): void;
114
+ };
115
+ };
116
+ };
117
+ }
118
+ export default Studio;
119
+ //# sourceMappingURL=StudioWorkspaceView.g.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"StudioWorkspaceView.g.d.ts","sourceRoot":"","sources":["../../src/components/StudioWorkspaceView.g.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,cAAc,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAA;AAC1E,OAAO,EAML,KAAK,uBAAuB,EAG5B,KAAK,qBAAqB,EAC1B,KAAK,+BAA+B,EACpC,KAAK,uBAAuB,EAC5B,KAAK,oBAAoB,EACzB,KAAK,oBAAoB,EAC1B,MAAM,WAAW,CAAA;AAClB,OAAO,KAAK,EAAE,+BAA+B,EAAE,MAAM,yBAAyB,CAAA;AAC9E,OAAO,EAGL,KAAK,+BAA+B,EACrC,MAAM,iCAAiC,CAAA;AACxC,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,wBAAwB,CAAA;AAiB3E,OAAO,KAAK,EAAE,+BAA+B,EAAE,MAAM,iCAAiC,CAAA;AAEtF,MAAM,MAAM,wBAAwB,GAAG;IACrC,MAAM,CAAC,EAAE,qBAAqB,CAAA;IAC9B,gBAAgB,CAAC,EAAE,OAAO,CAAA;IAC1B,iBAAiB,CAAC,EAAE,OAAO,CAAA;IAC3B,QAAQ,EAAE,cAAc,CAAA;IACxB,SAAS,EAAE,oBAAoB,CAAA;IAC/B,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,uBAAuB,CAAC,CAAA;IACtD,iBAAiB,CAAC,EAAE,OAAO,CAAA;IAC3B,oBAAoB,CAAC,EAAE,+BAA+B,CAAA;IACtD,kBAAkB,CAAC,EAAE,+BAA+B,CAAA;IACpD,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,uBAAuB,CAAC,CAAA;IACrD,iBAAiB,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAA;IAC/C,YAAY,CAAC,EAAE,CAAC,SAAS,EAAE,uBAAuB,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,aAAa,CAAC,EAAE,OAAO,CAAA;KAAE,KAAK,IAAI,CAAA;IACpH,4BAA4B,CAAC,EAAE,CAAC,MAAM,EAAE,oBAAoB,KAAK,IAAI,CAAA;IACrE,cAAc,CAAC,EAAE,CAAC,MAAM,EAAE,qBAAqB,KAAK,IAAI,CAAA;IACxD,sBAAsB,CAAC,EAAE,CAAC,SAAS,EAAE,uBAAuB,EAAE,MAAM,EAAE,oBAAoB,KAAK,IAAI,CAAA;IACnG,mBAAmB,CAAC,EAAE,CACpB,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,iBAAiB,GAAG,IAAI,EAC/B,KAAK,CAAC,EAAE,6BAA6B,KAClC,IAAI,CAAA;IACT,iBAAiB,CAAC,EAAE,CAClB,SAAS,EAAE,uBAAuB,EAClC,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,uBAAuB,GAAG,SAAS,CAAC,EACpE,OAAO,CAAC,EAAE,+BAA+B,KACtC,IAAI,CAAA;IACT,UAAU,CAAC,EAAE,MAAM,CAAA;CACpB,CAAA;AA0RD,iBAAwB,MAAM,CAAC,KAAK,EAAE,wBAAwB,2CA+J7D;kBA/JuB,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;eAAN,MAAM"}
@@ -0,0 +1,24 @@
1
+ type ViewportPreset = "phone" | "tablet" | "desktop";
2
+ type ViewportPresetTabsProps = {
3
+ floating?: boolean;
4
+ selectedPreset: ViewportPreset;
5
+ onChange?: (preset: ViewportPreset) => void;
6
+ };
7
+ declare function ViewportPresetTabs(props: ViewportPresetTabsProps): import("react/jsx-runtime").JSX.Element;
8
+ declare namespace ViewportPresetTabs {
9
+ var cases: {
10
+ tabletSelected: {
11
+ props: {
12
+ selectedPreset: "tablet";
13
+ };
14
+ };
15
+ floatingPhoneSelected: {
16
+ props: {
17
+ floating: true;
18
+ selectedPreset: "phone";
19
+ };
20
+ };
21
+ };
22
+ }
23
+ export default ViewportPresetTabs;
24
+ //# sourceMappingURL=ViewportPresetTabs.g.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ViewportPresetTabs.g.d.ts","sourceRoot":"","sources":["../../src/components/ViewportPresetTabs.g.tsx"],"names":[],"mappings":"AAEA,KAAK,cAAc,GAAG,OAAO,GAAG,QAAQ,GAAG,SAAS,CAAA;AAEpD,KAAK,uBAAuB,GAAG;IAC7B,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,cAAc,EAAE,cAAc,CAAA;IAC9B,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,cAAc,KAAK,IAAI,CAAA;CAC5C,CAAA;AAID,iBAAwB,kBAAkB,CAAC,KAAK,EAAE,uBAAuB,2CAyExE;kBAzEuB,kBAAkB;;;;;;;;;;;;;;;eAAlB,kBAAkB"}
@@ -0,0 +1,26 @@
1
+ export { createStudioManifest, createStudioManifestFromGTSXConfig, studioUrlSearchFromSearchParams } from "./manifest";
2
+ export type { CreateStudioManifestOptions, StudioRouteSearchParams, StudioManifest, StudioManifestComponent, StudioManifestFile, StudioManifestCacheConfig, StudioManifestPreviewConfig, StudioManifestRouteConfig, } from "./manifest";
3
+ export { applyStudioCanvasWheel, applyStudioCardSelectionAction, applyStudioPreviewMessage, applyStudioPreviewMessageToFrameStates, changeStudioCanvasViewportPreset, changeStudioComponentCase, changeStudioViewportPreset, clipPreviewBoundaryRectToViewport, computeStudioCaseGridLayout, computeStudioColumnLayout, componentCardLayoutWidth, createStudioPreviewUrl, createStudioPreviewPoolUrl, createStudioCanvasTransformFromUrl, createStudioRuntimeValuesRequest, createStudioWorkspaceState, createStudioWorkspaceStateFromUrl, createStudioWorkspaceUrlSearchParams, currentStudioPreviewTargets, defaultStudioCanvasTransform, mergeStudioPreviewFrameState, isGPreviewProtocolMessage, isStudioPreviewPoolDisabled, isStudioPreviewPoolDebugEnabled, isStudioPreviewQueueDebugEnabled, previewSessionId, replaceStudioCanvasUrlState, resolveStudioSelection, revealStudioCanvasRect, rootStudioManifestComponents, selectedStudioCaseName, selectStudioComponent, selectStudioRuntimeInstance, studioPreviewCacheKey, studioPreviewRenderTargetFromUrl, studioPreviewFrameSize, } from "./client";
4
+ export type { StudioCanvasTransform, StudioCanvasScreenRect, StudioCanvasWheelInput, StudioCardSelectionAction, StudioCardSelectionSource, StudioCaseGridItemLayout, StudioCaseGridLayout, StudioColumnLayout, StudioColumnLayoutMeasurement, StudioPreviewCacheEntry, StudioPreviewFrameState, StudioPreviewTarget, StudioRuntimeInstance, StudioRuntimeValuesRequest, StudioViewportPreset, StudioWorkspaceColumn, StudioWorkspaceState, StudioWorkspaceUrlState, } from "./client";
5
+ export { StudioShell, StudioWorkspaceView } from "./client-entry";
6
+ export type { StudioShellProps, StudioWorkspaceViewProps } from "./client-entry";
7
+ export { defaultStudioPreviewRenderQueueActiveRenderTimeoutMilliseconds, defaultStudioPreviewRenderQueueMaximumConcurrentRenderTasks, defaultStudioPreviewRenderQueueMaximumConcurrentRenderTasksDuringCanvasMovement, defaultStudioPreviewRenderQueueMinimumVisibleRenderTasksDuringCanvasMovement, defaultStudioPreviewRenderQueueMaximumRenderTaskCount, defaultStudioPreviewRenderQueueBufferRenderDelayMilliseconds, defaultStudioPreviewRenderQueueRenderDebounceMilliseconds, defaultStudioPreviewRenderQueueRenderThrottleMilliseconds, queuedStudioPreviewSessionIds, studioPreviewRenderQueueOptionsFromParams, visibleQueuedStudioPreviewSessionIds, } from "./preview-render-queue";
8
+ export type { StudioCanvasMovement, StudioPreviewRenderQueueInput, StudioPreviewRenderQueueOptions, StudioPreviewRenderQueueRunOptions, } from "./preview-render-queue";
9
+ export { createStudioPreviewRenderSessionStore } from "./preview-render-session-store";
10
+ export type { StudioPreviewRenderSessionStore } from "./preview-render-session-store";
11
+ export { allVisibleStudioPreviewRenderPlanSessionIds, createStudioPreviewRenderPlan, studioPreviewRenderPlanHasIncompleteVisibleRenderTasks, } from "./studio-preview-render-plan";
12
+ export type { StudioPreviewRenderPlan, StudioPreviewRenderPlanInput } from "./studio-preview-render-plan";
13
+ export { createStudioPreviewRenderCompletionSource, createStudioPreviewRenderCompletionSourceFromFrameStates, createStudioPreviewRenderCompletionSourceFromGeometryStore, } from "./studio-preview-render-completion-source";
14
+ export type { StudioPreviewRenderCompletionSource } from "./studio-preview-render-completion-source";
15
+ export { mergeStudioPreviewRenderRequestPolicies, mergeStudioPreviewRenderSchedulerRunOptions, movingCanvasBufferedPreviewRenderRequestPolicy, normalBufferedPreviewRenderRequestPolicy, normalVisiblePreviewRenderRequestPolicy, studioPreviewRenderQueueOptionsForRequestPolicy, studioPreviewRenderQueueOptionsForRun, studioPreviewRenderRequestPolicyFromSchedulerRunOptions, studioPreviewRenderSchedulerRunOptionsFromRequestPolicy, } from "./studio-preview-render-request-policy";
16
+ export type { StudioPreviewRenderRequestPolicy, StudioPreviewRenderSchedulerRunOptions, } from "./studio-preview-render-request-policy";
17
+ export { createStudioPreviewRenderRequestClock } from "./studio-preview-render-request-clock";
18
+ export type { StudioPreviewRenderRequestClock, StudioPreviewRenderRequestClockScheduler, } from "./studio-preview-render-request-clock";
19
+ export { createStudioPreviewRenderObservation } from "./studio-preview-render-observation";
20
+ export type { StudioPreviewFullRenderObservationSnapshot, StudioPreviewRenderObservation, StudioPreviewRenderObservationSnapshot, StudioPreviewRenderQueueDebugObservationInput, StudioPreviewScrollResponseObservationSnapshot, StudioPreviewTimingObservationInput, } from "./studio-preview-render-observation";
21
+ export { createStudioPreviewMessageFlush } from "./studio-preview-message-flush";
22
+ export type { StudioPreviewMessageFlush, StudioPreviewMessageFlushItem } from "./studio-preview-message-flush";
23
+ export { createStudioPreviewGeometryCacheStore, studioPreviewGeometryCacheKeys, studioPreviewGeometrySubscriptionKeys, } from "./preview-geometry-cache-store";
24
+ export type { StudioPreviewGeometryCacheMessage, StudioPreviewGeometryCacheStore } from "./preview-geometry-cache-store";
25
+ export { studioPreviewVisibilityItems } from "./studio-canvas-geometry";
26
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js ADDED
@@ -0,0 +1,3 @@
1
+ import { createStudioManifest as e, createStudioManifestFromGTSXConfig as t, studioUrlSearchFromSearchParams as n } from "./manifest.js";
2
+ import { $ as r, A as i, B as a, C as o, D as s, E as c, F as l, G as u, H as d, I as f, J as p, K as m, L as h, M as g, N as _, O as v, P as y, Q as b, R as x, S, T as C, U as w, V as T, W as E, X as D, Y as O, Z as k, _ as A, _t as j, a as M, at as N, b as P, c as F, ct as I, d as L, dt as R, et as z, f as B, ft as V, g as H, gt as U, h as W, ht as G, i as K, it as q, j as J, k as Y, l as X, lt as Z, m as Q, mt as $, n as ee, nt as te, o as ne, ot as re, p as ie, pt as ae, q as oe, r as se, rt as ce, s as le, st as ue, t as de, tt as fe, u as pe, ut as me, v as he, vt as ge, w as _e, x as ve, y as ye, z as be } from "./chunks/client-entry-6rzfPqgF.js";
3
+ export { de as StudioShell, ee as StudioWorkspaceView, se as allVisibleStudioPreviewRenderPlanSessionIds, h as applyStudioCanvasWheel, x as applyStudioCardSelectionAction, be as applyStudioPreviewMessage, a as applyStudioPreviewMessageToFrameStates, T as changeStudioCanvasViewportPreset, d as changeStudioComponentCase, w as changeStudioViewportPreset, E as clipPreviewBoundaryRectToViewport, u as componentCardLayoutWidth, m as computeStudioCaseGridLayout, oe as computeStudioColumnLayout, p as createStudioCanvasTransformFromUrl, e as createStudioManifest, t as createStudioManifestFromGTSXConfig, y as createStudioPreviewGeometryCacheStore, S as createStudioPreviewMessageFlush, O as createStudioPreviewPoolUrl, ne as createStudioPreviewRenderCompletionSource, le as createStudioPreviewRenderCompletionSourceFromFrameStates, F as createStudioPreviewRenderCompletionSourceFromGeometryStore, ye as createStudioPreviewRenderObservation, K as createStudioPreviewRenderPlan, X as createStudioPreviewRenderRequestClock, ve as createStudioPreviewRenderSessionStore, D as createStudioPreviewUrl, k as createStudioRuntimeValuesRequest, b as createStudioWorkspaceState, r as createStudioWorkspaceStateFromUrl, z as createStudioWorkspaceUrlSearchParams, fe as currentStudioPreviewTargets, te as defaultStudioCanvasTransform, o as defaultStudioPreviewRenderQueueActiveRenderTimeoutMilliseconds, _e as defaultStudioPreviewRenderQueueBufferRenderDelayMilliseconds, C as defaultStudioPreviewRenderQueueMaximumConcurrentRenderTasks, c as defaultStudioPreviewRenderQueueMaximumConcurrentRenderTasksDuringCanvasMovement, s as defaultStudioPreviewRenderQueueMaximumRenderTaskCount, v as defaultStudioPreviewRenderQueueMinimumVisibleRenderTasksDuringCanvasMovement, Y as defaultStudioPreviewRenderQueueRenderDebounceMilliseconds, i as defaultStudioPreviewRenderQueueRenderThrottleMilliseconds, ce as isGPreviewProtocolMessage, q as isStudioPreviewPoolDebugEnabled, N as isStudioPreviewPoolDisabled, re as isStudioPreviewQueueDebugEnabled, ue as mergeStudioPreviewFrameState, pe as mergeStudioPreviewRenderRequestPolicies, L as mergeStudioPreviewRenderSchedulerRunOptions, B as movingCanvasBufferedPreviewRenderRequestPolicy, ie as normalBufferedPreviewRenderRequestPolicy, Q as normalVisiblePreviewRenderRequestPolicy, I as previewSessionId, J as queuedStudioPreviewSessionIds, Z as replaceStudioCanvasUrlState, me as resolveStudioSelection, R as revealStudioCanvasRect, V as rootStudioManifestComponents, ae as selectStudioComponent, $ as selectStudioRuntimeInstance, G as selectedStudioCaseName, U as studioPreviewCacheKey, j as studioPreviewFrameSize, l as studioPreviewGeometryCacheKeys, f as studioPreviewGeometrySubscriptionKeys, M as studioPreviewRenderPlanHasIncompleteVisibleRenderTasks, W as studioPreviewRenderQueueOptionsForRequestPolicy, H as studioPreviewRenderQueueOptionsForRun, g as studioPreviewRenderQueueOptionsFromParams, A as studioPreviewRenderRequestPolicyFromSchedulerRunOptions, he as studioPreviewRenderSchedulerRunOptionsFromRequestPolicy, ge as studioPreviewRenderTargetFromUrl, P as studioPreviewVisibilityItems, n as studioUrlSearchFromSearchParams, _ as visibleQueuedStudioPreviewSessionIds };
@@ -0,0 +1,8 @@
1
+ import type { GTSXConfig } from "@gtsx/core";
2
+ import { type StudioManifest } from "./manifest";
3
+ export type CreateStudioManifestProviderOptions = {
4
+ config?: GTSXConfig;
5
+ cwd?: string;
6
+ };
7
+ export declare function createStudioManifestProvider(options?: CreateStudioManifestProviderOptions): () => StudioManifest;
8
+ //# sourceMappingURL=manifest-server.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"manifest-server.d.ts","sourceRoot":"","sources":["../src/manifest-server.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;AAG5C,OAAO,EAAsC,KAAK,cAAc,EAAE,MAAM,YAAY,CAAA;AAEpF,MAAM,MAAM,mCAAmC,GAAG;IAChD,MAAM,CAAC,EAAE,UAAU,CAAA;IACnB,GAAG,CAAC,EAAE,MAAM,CAAA;CACb,CAAA;AAED,wBAAgB,4BAA4B,CAAC,OAAO,GAAE,mCAAwC,GAAG,MAAM,cAAc,CAiBpH"}
@@ -0,0 +1,20 @@
1
+ import { createStudioManifestFromGTSXConfig as e } from "./manifest.js";
2
+ import { loadGTSXConfig as t, resolveGTSXConfig as n } from "@gtsx/core/config";
3
+ import { createCachedGTSXProjectIndexBuilder as r } from "@gtsx/core/project-index";
4
+ //#region src/manifest-server.ts
5
+ function i(t = {}) {
6
+ let i = t.cwd ?? ".", o = t.config ?? a(i), s = n(o), c = r({ ttlMs: s.studio.manifestCacheTtlMs });
7
+ return () => e(c({
8
+ cwd: i,
9
+ projectRoot: s.project.root,
10
+ tsconfigPath: s.project.tsconfig
11
+ }), o);
12
+ }
13
+ function a(e) {
14
+ let n = t(e);
15
+ if (n.config) return n.config;
16
+ let r = n.diagnostics.map((e) => e.message).join("\n");
17
+ throw Error(r || "Missing gtsx.config.ts.");
18
+ }
19
+ //#endregion
20
+ export { i as createStudioManifestProvider };
@@ -0,0 +1,52 @@
1
+ import type { GTSXConfig, GTSXDiagnostic } from "@gtsx/core";
2
+ import type { GTSXProjectIndex, GTSXProjectIndexComponent } from "@gtsx/core/project-index";
3
+ export type StudioManifestRouteConfig = {
4
+ preview: string;
5
+ studio: string;
6
+ manifest: string;
7
+ };
8
+ export type StudioManifestPreviewConfig = {
9
+ urlTemplate: string;
10
+ allUrlTemplate?: string;
11
+ };
12
+ export type StudioManifestComponent = {
13
+ coordinate: string;
14
+ filePath: string;
15
+ sourceHash?: string;
16
+ exportName: string;
17
+ componentName: string;
18
+ mode: GTSXProjectIndexComponent["mode"];
19
+ cases: GTSXProjectIndexComponent["cases"];
20
+ providers: GTSXProjectIndexComponent["providers"];
21
+ dependencies?: GTSXProjectIndexComponent["dependencies"];
22
+ diagnostics: GTSXDiagnostic[];
23
+ };
24
+ export type StudioManifestFile = {
25
+ path: string;
26
+ sourceHash?: string;
27
+ groupId: string;
28
+ components: StudioManifestComponent[];
29
+ diagnostics: GTSXDiagnostic[];
30
+ };
31
+ export type StudioManifest = {
32
+ version: 1;
33
+ cache?: StudioManifestCacheConfig;
34
+ routes: StudioManifestRouteConfig;
35
+ preview: StudioManifestPreviewConfig;
36
+ files: StudioManifestFile[];
37
+ diagnostics: GTSXDiagnostic[];
38
+ };
39
+ export type CreateStudioManifestOptions = {
40
+ routes?: Partial<StudioManifestRouteConfig>;
41
+ preview?: Partial<StudioManifestPreviewConfig>;
42
+ cache?: Partial<StudioManifestCacheConfig>;
43
+ diagnostics?: GTSXDiagnostic[];
44
+ };
45
+ export type StudioManifestCacheConfig = {
46
+ namespace?: string;
47
+ };
48
+ export declare function createStudioManifest(projectIndex: GTSXProjectIndex, options?: CreateStudioManifestOptions): StudioManifest;
49
+ export declare function createStudioManifestFromGTSXConfig(projectIndex: GTSXProjectIndex, config: GTSXConfig): StudioManifest;
50
+ export type StudioRouteSearchParams = Record<string, string | string[] | undefined> | URLSearchParams | undefined;
51
+ export declare function studioUrlSearchFromSearchParams(searchParams: StudioRouteSearchParams): string;
52
+ //# sourceMappingURL=manifest.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"manifest.d.ts","sourceRoot":"","sources":["../src/manifest.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AAC5D,OAAO,KAAK,EAAE,gBAAgB,EAAE,yBAAyB,EAAE,MAAM,0BAA0B,CAAA;AAE3F,MAAM,MAAM,yBAAyB,GAAG;IACtC,OAAO,EAAE,MAAM,CAAA;IACf,MAAM,EAAE,MAAM,CAAA;IACd,QAAQ,EAAE,MAAM,CAAA;CACjB,CAAA;AAED,MAAM,MAAM,2BAA2B,GAAG;IACxC,WAAW,EAAE,MAAM,CAAA;IACnB,cAAc,CAAC,EAAE,MAAM,CAAA;CACxB,CAAA;AAED,MAAM,MAAM,uBAAuB,GAAG;IACpC,UAAU,EAAE,MAAM,CAAA;IAClB,QAAQ,EAAE,MAAM,CAAA;IAChB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,UAAU,EAAE,MAAM,CAAA;IAClB,aAAa,EAAE,MAAM,CAAA;IACrB,IAAI,EAAE,yBAAyB,CAAC,MAAM,CAAC,CAAA;IACvC,KAAK,EAAE,yBAAyB,CAAC,OAAO,CAAC,CAAA;IACzC,SAAS,EAAE,yBAAyB,CAAC,WAAW,CAAC,CAAA;IACjD,YAAY,CAAC,EAAE,yBAAyB,CAAC,cAAc,CAAC,CAAA;IACxD,WAAW,EAAE,cAAc,EAAE,CAAA;CAC9B,CAAA;AAED,MAAM,MAAM,kBAAkB,GAAG;IAC/B,IAAI,EAAE,MAAM,CAAA;IACZ,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,OAAO,EAAE,MAAM,CAAA;IACf,UAAU,EAAE,uBAAuB,EAAE,CAAA;IACrC,WAAW,EAAE,cAAc,EAAE,CAAA;CAC9B,CAAA;AAED,MAAM,MAAM,cAAc,GAAG;IAC3B,OAAO,EAAE,CAAC,CAAA;IACV,KAAK,CAAC,EAAE,yBAAyB,CAAA;IACjC,MAAM,EAAE,yBAAyB,CAAA;IACjC,OAAO,EAAE,2BAA2B,CAAA;IACpC,KAAK,EAAE,kBAAkB,EAAE,CAAA;IAC3B,WAAW,EAAE,cAAc,EAAE,CAAA;CAC9B,CAAA;AAED,MAAM,MAAM,2BAA2B,GAAG;IACxC,MAAM,CAAC,EAAE,OAAO,CAAC,yBAAyB,CAAC,CAAA;IAC3C,OAAO,CAAC,EAAE,OAAO,CAAC,2BAA2B,CAAC,CAAA;IAC9C,KAAK,CAAC,EAAE,OAAO,CAAC,yBAAyB,CAAC,CAAA;IAC1C,WAAW,CAAC,EAAE,cAAc,EAAE,CAAA;CAC/B,CAAA;AAED,MAAM,MAAM,yBAAyB,GAAG;IACtC,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,CAAA;AAkBD,wBAAgB,oBAAoB,CAAC,YAAY,EAAE,gBAAgB,EAAE,OAAO,GAAE,2BAAgC,GAAG,cAAc,CAkB9H;AAED,wBAAgB,kCAAkC,CAAC,YAAY,EAAE,gBAAgB,EAAE,MAAM,EAAE,UAAU,GAAG,cAAc,CAQrH;AAED,MAAM,MAAM,uBAAuB,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS,CAAC,GAAG,eAAe,GAAG,SAAS,CAAA;AAEjH,wBAAgB,+BAA+B,CAAC,YAAY,EAAE,uBAAuB,GAAG,MAAM,CAY7F"}
@@ -0,0 +1,58 @@
1
+ import { resolveGTSXConfig as e } from "@gtsx/core/config-model";
2
+ //#region src/manifest.ts
3
+ var t = {
4
+ preview: "/gtsx",
5
+ studio: "/gtsx/studio",
6
+ manifest: "/gtsx/studio/manifest"
7
+ }, n = {
8
+ urlTemplate: "/gtsx?entry={entry}&case={case}{gcase}",
9
+ allUrlTemplate: "/gtsx?entry={entry}{gcase}"
10
+ };
11
+ function r(e, r = {}) {
12
+ return {
13
+ version: 1,
14
+ ...r.cache ? { cache: r.cache } : {},
15
+ routes: {
16
+ ...t,
17
+ ...r.routes
18
+ },
19
+ preview: {
20
+ ...n,
21
+ ...r.preview
22
+ },
23
+ files: e.files.map((e) => {
24
+ let t = e;
25
+ return {
26
+ path: t.path,
27
+ sourceHash: t.sourceHash,
28
+ groupId: `file:${t.path}`,
29
+ components: t.components,
30
+ diagnostics: t.diagnostics
31
+ };
32
+ }),
33
+ diagnostics: [...e.diagnostics, ...r.diagnostics ?? []]
34
+ };
35
+ }
36
+ function i(t, n) {
37
+ let i = e(n);
38
+ return r(t, {
39
+ ...i.project.namespace ? { cache: { namespace: i.project.namespace } } : {},
40
+ preview: o(i.routes),
41
+ routes: i.routes
42
+ });
43
+ }
44
+ function a(e) {
45
+ if (e instanceof URLSearchParams) return e.toString();
46
+ let t = new URLSearchParams();
47
+ for (let [n, r] of Object.entries(e ?? {})) if (Array.isArray(r)) for (let e of r) t.append(n, e);
48
+ else r !== void 0 && t.set(n, r);
49
+ return t.toString();
50
+ }
51
+ function o(e) {
52
+ return {
53
+ urlTemplate: `${e.preview}?entry={entry}&case={case}{gcase}`,
54
+ allUrlTemplate: `${e.preview}?entry={entry}{gcase}`
55
+ };
56
+ }
57
+ //#endregion
58
+ export { r as createStudioManifest, i as createStudioManifestFromGTSXConfig, a as studioUrlSearchFromSearchParams };
@@ -0,0 +1,6 @@
1
+ import type { StudioManifest } from "./manifest";
2
+ import type { StudioPreviewCacheEntry } from "./client";
3
+ export declare function studioPreviewIndexedDBNamespace(manifest: StudioManifest): string;
4
+ export declare function readStudioPreviewIndexedDBCache(namespace: string, cacheKeys: readonly string[]): Promise<Record<string, StudioPreviewCacheEntry>>;
5
+ export declare function writeStudioPreviewIndexedDBCache(namespace: string, entries: Record<string, StudioPreviewCacheEntry | undefined>): Promise<void>;
6
+ //# sourceMappingURL=preview-cache-indexeddb.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"preview-cache-indexeddb.d.ts","sourceRoot":"","sources":["../src/preview-cache-indexeddb.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AAChD,OAAO,KAAK,EAAE,uBAAuB,EAA2B,MAAM,UAAU,CAAA;AAwBhF,wBAAgB,+BAA+B,CAAC,QAAQ,EAAE,cAAc,GAAG,MAAM,CAkBhF;AAED,wBAAsB,+BAA+B,CACnD,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,SAAS,MAAM,EAAE,GAC3B,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,uBAAuB,CAAC,CAAC,CAuBlD;AAED,wBAAsB,gCAAgC,CACpD,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,uBAAuB,GAAG,SAAS,CAAC,GAC3D,OAAO,CAAC,IAAI,CAAC,CA2Bf"}
@@ -0,0 +1,23 @@
1
+ import type { GBoundaryRect } from "@gtsx/core";
2
+ type PreviewFrameSize = {
3
+ height?: number;
4
+ width: number | string;
5
+ };
6
+ type PreviewFrameBleed = {
7
+ bottom: number;
8
+ left: number;
9
+ right: number;
10
+ top: number;
11
+ };
12
+ export declare function previewFrameLayoutHeight(displaySize: {
13
+ height: number;
14
+ }, rect: GBoundaryRect | undefined): number;
15
+ export declare function previewFrameLayoutWidth(displaySize: PreviewFrameSize, rect: GBoundaryRect | undefined): number | string;
16
+ export declare function previewFrameViewportOffset(rect: GBoundaryRect | undefined, bleed: PreviewFrameBleed): {
17
+ x: number;
18
+ y: number;
19
+ };
20
+ export declare function normalizeBoundaryRect(rect: GBoundaryRect | undefined, bleed: PreviewFrameBleed): GBoundaryRect | undefined;
21
+ export declare function previewFrameVisualBleed(displaySize: Partial<PreviewFrameSize>, rect: GBoundaryRect | undefined): PreviewFrameBleed;
22
+ export {};
23
+ //# sourceMappingURL=preview-frame-layout.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"preview-frame-layout.d.ts","sourceRoot":"","sources":["../src/preview-frame-layout.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;AAE/C,KAAK,gBAAgB,GAAG;IACtB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,KAAK,EAAE,MAAM,GAAG,MAAM,CAAA;CACvB,CAAA;AAED,KAAK,iBAAiB,GAAG;IACvB,MAAM,EAAE,MAAM,CAAA;IACd,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,MAAM,CAAA;IACb,GAAG,EAAE,MAAM,CAAA;CACZ,CAAA;AAID,wBAAgB,wBAAwB,CAAC,WAAW,EAAE;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,EAAE,IAAI,EAAE,aAAa,GAAG,SAAS,GAAG,MAAM,CAIjH;AAED,wBAAgB,uBAAuB,CAAC,WAAW,EAAE,gBAAgB,EAAE,IAAI,EAAE,aAAa,GAAG,SAAS,GAAG,MAAM,GAAG,MAAM,CAIvH;AAED,wBAAgB,0BAA0B,CAAC,IAAI,EAAE,aAAa,GAAG,SAAS,EAAE,KAAK,EAAE,iBAAiB,GAAG;IAAE,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAA;CAAE,CAK9H;AAED,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,aAAa,GAAG,SAAS,EAAE,KAAK,EAAE,iBAAiB,GAAG,aAAa,GAAG,SAAS,CAQ1H;AAED,wBAAgB,uBAAuB,CAAC,WAAW,EAAE,OAAO,CAAC,gBAAgB,CAAC,EAAE,IAAI,EAAE,aAAa,GAAG,SAAS,GAAG,iBAAiB,CAUlI"}
@@ -0,0 +1,6 @@
1
+ export type StudioPreviewFrameSlot = {
2
+ previewUrl: string;
3
+ sessionId: string;
4
+ title: string;
5
+ };
6
+ //# sourceMappingURL=preview-frame-slot.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"preview-frame-slot.d.ts","sourceRoot":"","sources":["../src/preview-frame-slot.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,sBAAsB,GAAG;IACnC,UAAU,EAAE,MAAM,CAAA;IAClB,SAAS,EAAE,MAAM,CAAA;IACjB,KAAK,EAAE,MAAM,CAAA;CACd,CAAA"}
@@ -0,0 +1,37 @@
1
+ import type { GPreviewProtocolMessage } from "@gtsx/core";
2
+ import type { StudioManifest, StudioManifestComponent } from "./manifest";
3
+ import { type StudioPreviewCacheEntry, type StudioPreviewFrameState, type StudioPreviewTarget, type StudioViewportPreset } from "./client";
4
+ export type StudioPreviewGeometryCacheMessage = {
5
+ message: GPreviewProtocolMessage;
6
+ target: Pick<StudioPreviewTarget, "cacheKey">;
7
+ };
8
+ export type StudioPreviewGeometryCacheUpdate = {
9
+ changed: boolean;
10
+ entriesToWrite: Record<string, StudioPreviewCacheEntry | undefined>;
11
+ snapshot: Record<string, StudioPreviewCacheEntry>;
12
+ };
13
+ export type StudioPreviewGeometryCacheStore = {
14
+ cacheKeys: readonly string[];
15
+ getFrameState: (sessionId: string) => StudioPreviewFrameState | undefined;
16
+ getLayoutFrameState: (sessionId: string, cacheKey: string) => StudioPreviewFrameState | undefined;
17
+ getMergedFrameState: (sessionId: string, cacheKey: string) => StudioPreviewFrameState | undefined;
18
+ getSnapshot: () => Record<string, StudioPreviewCacheEntry>;
19
+ getVersionForKeys: (keys: readonly string[]) => string;
20
+ hydrate: () => Promise<Record<string, StudioPreviewCacheEntry>>;
21
+ markSessionRenderStarted: (sessionId: string) => boolean;
22
+ namespace: string;
23
+ putMessages: (messages: readonly StudioPreviewGeometryCacheMessage[], activeSessionIds?: ReadonlySet<string>) => StudioPreviewGeometryCacheUpdate;
24
+ reset: (cache?: Record<string, StudioPreviewCacheEntry>) => void;
25
+ subscribe: (keys: readonly string[], listener: () => void) => () => void;
26
+ writeEntries: (entries: Record<string, StudioPreviewCacheEntry | undefined>) => Promise<void>;
27
+ };
28
+ export declare function studioPreviewGeometryCacheKeys(manifest: StudioManifest): string[];
29
+ export declare function createStudioPreviewGeometryCacheStore(input: {
30
+ cacheKeys: readonly string[];
31
+ namespace: string;
32
+ }): StudioPreviewGeometryCacheStore;
33
+ export declare function studioPreviewGeometrySubscriptionKeys(input: {
34
+ component: StudioManifestComponent;
35
+ viewportPreset: StudioViewportPreset;
36
+ }): string[];
37
+ //# sourceMappingURL=preview-geometry-cache-store.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"preview-geometry-cache-store.d.ts","sourceRoot":"","sources":["../src/preview-geometry-cache-store.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,YAAY,CAAA;AAEzD,OAAO,KAAK,EAAE,cAAc,EAAE,uBAAuB,EAAE,MAAM,YAAY,CAAA;AACzE,OAAO,EAKL,KAAK,uBAAuB,EAC5B,KAAK,uBAAuB,EAC5B,KAAK,mBAAmB,EACxB,KAAK,oBAAoB,EAC1B,MAAM,UAAU,CAAA;AAGjB,MAAM,MAAM,iCAAiC,GAAG;IAC9C,OAAO,EAAE,uBAAuB,CAAA;IAChC,MAAM,EAAE,IAAI,CAAC,mBAAmB,EAAE,UAAU,CAAC,CAAA;CAC9C,CAAA;AAED,MAAM,MAAM,gCAAgC,GAAG;IAC7C,OAAO,EAAE,OAAO,CAAA;IAChB,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,uBAAuB,GAAG,SAAS,CAAC,CAAA;IACnE,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,uBAAuB,CAAC,CAAA;CAClD,CAAA;AAED,MAAM,MAAM,+BAA+B,GAAG;IAC5C,SAAS,EAAE,SAAS,MAAM,EAAE,CAAA;IAC5B,aAAa,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,uBAAuB,GAAG,SAAS,CAAA;IACzE,mBAAmB,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,KAAK,uBAAuB,GAAG,SAAS,CAAA;IACjG,mBAAmB,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,KAAK,uBAAuB,GAAG,SAAS,CAAA;IACjG,WAAW,EAAE,MAAM,MAAM,CAAC,MAAM,EAAE,uBAAuB,CAAC,CAAA;IAC1D,iBAAiB,EAAE,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,KAAK,MAAM,CAAA;IACtD,OAAO,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,uBAAuB,CAAC,CAAC,CAAA;IAC/D,wBAAwB,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,OAAO,CAAA;IACxD,SAAS,EAAE,MAAM,CAAA;IACjB,WAAW,EAAE,CACX,QAAQ,EAAE,SAAS,iCAAiC,EAAE,EACtD,gBAAgB,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,KACnC,gCAAgC,CAAA;IACrC,KAAK,EAAE,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,uBAAuB,CAAC,KAAK,IAAI,CAAA;IAChE,SAAS,EAAE,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,EAAE,QAAQ,EAAE,MAAM,IAAI,KAAK,MAAM,IAAI,CAAA;IACxE,YAAY,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,uBAAuB,GAAG,SAAS,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;CAC9F,CAAA;AAID,wBAAgB,8BAA8B,CAAC,QAAQ,EAAE,cAAc,GAAG,MAAM,EAAE,CAYjF;AAED,wBAAgB,qCAAqC,CAAC,KAAK,EAAE;IAC3D,SAAS,EAAE,SAAS,MAAM,EAAE,CAAA;IAC5B,SAAS,EAAE,MAAM,CAAA;CAClB,GAAG,+BAA+B,CAsHlC;AAED,wBAAgB,qCAAqC,CAAC,KAAK,EAAE;IAC3D,SAAS,EAAE,uBAAuB,CAAA;IAClC,cAAc,EAAE,oBAAoB,CAAA;CACrC,GAAG,MAAM,EAAE,CAMX"}