@01.software/sdk 0.29.0 → 0.30.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.
- package/README.md +273 -73
- package/dist/analytics/react.cjs +4 -1
- package/dist/analytics/react.cjs.map +1 -1
- package/dist/analytics/react.js +4 -1
- package/dist/analytics/react.js.map +1 -1
- package/dist/analytics.cjs +4 -1
- package/dist/analytics.cjs.map +1 -1
- package/dist/analytics.js +4 -1
- package/dist/analytics.js.map +1 -1
- package/dist/client.cjs +1476 -0
- package/dist/client.cjs.map +1 -0
- package/dist/client.d.cts +28 -0
- package/dist/client.d.ts +28 -0
- package/dist/client.js +1453 -0
- package/dist/client.js.map +1 -0
- package/dist/collection-client-B9d9kr1d.d.ts +218 -0
- package/dist/collection-client-QPbwimkU.d.cts +218 -0
- package/dist/{const-DAjQYNuM.d.ts → const-B75IFDRi.d.ts} +2 -4
- package/dist/{const-Dsixdi6z.d.cts → const-VZuk2tWc.d.cts} +2 -4
- package/dist/index-B2WbhEgT.d.cts +106 -0
- package/dist/index-B2WbhEgT.d.ts +106 -0
- package/dist/index.cjs +784 -1530
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +11 -115
- package/dist/index.d.ts +11 -115
- package/dist/index.js +784 -1548
- package/dist/index.js.map +1 -1
- package/dist/metadata.cjs +91 -0
- package/dist/metadata.cjs.map +1 -0
- package/dist/metadata.d.cts +58 -0
- package/dist/metadata.d.ts +58 -0
- package/dist/metadata.js +68 -0
- package/dist/metadata.js.map +1 -0
- package/dist/{payload-types-Ci-ZA7aM.d.cts → payload-types-DPjO_IbQ.d.cts} +9 -3
- package/dist/{payload-types-Ci-ZA7aM.d.ts → payload-types-DPjO_IbQ.d.ts} +9 -3
- package/dist/query.cjs +1791 -0
- package/dist/query.cjs.map +1 -0
- package/dist/query.d.cts +244 -0
- package/dist/query.d.ts +244 -0
- package/dist/query.js +1786 -0
- package/dist/query.js.map +1 -0
- package/dist/realtime.cjs +4 -1
- package/dist/realtime.cjs.map +1 -1
- package/dist/realtime.d.cts +2 -2
- package/dist/realtime.d.ts +2 -2
- package/dist/realtime.js +4 -1
- package/dist/realtime.js.map +1 -1
- package/dist/{server-BINWywT8.d.cts → server-CrsPyqEc.d.cts} +14 -31
- package/dist/{server-BINWywT8.d.ts → server-CrsPyqEc.d.ts} +14 -31
- package/dist/server.cjs +299 -840
- package/dist/server.cjs.map +1 -1
- package/dist/server.d.cts +112 -7
- package/dist/server.d.ts +112 -7
- package/dist/server.js +299 -858
- package/dist/server.js.map +1 -1
- package/dist/{types-BWq_WlbB.d.ts → types-1fBLrYU7.d.ts} +1 -1
- package/dist/{types-zKjATmDK.d.cts → types-BwT0eeaz.d.cts} +1 -1
- package/dist/{server-Cv0Q4dPQ.d.ts → types-Dlb2mwpX.d.cts} +228 -741
- package/dist/{server-C0C8dtms.d.cts → types-DuSKPiY5.d.ts} +228 -741
- package/dist/ui/canvas/server.cjs +7 -6
- package/dist/ui/canvas/server.cjs.map +1 -1
- package/dist/ui/canvas/server.d.cts +1 -3
- package/dist/ui/canvas/server.d.ts +1 -3
- package/dist/ui/canvas/server.js +7 -6
- package/dist/ui/canvas/server.js.map +1 -1
- package/dist/ui/canvas.cjs +11 -10
- package/dist/ui/canvas.cjs.map +1 -1
- package/dist/ui/canvas.d.cts +29 -6
- package/dist/ui/canvas.d.ts +29 -6
- package/dist/ui/canvas.js +11 -10
- package/dist/ui/canvas.js.map +1 -1
- package/dist/ui/form.d.cts +1 -1
- package/dist/ui/form.d.ts +1 -1
- package/dist/ui/video.d.cts +1 -1
- package/dist/ui/video.d.ts +1 -1
- package/dist/webhook.d.cts +3 -3
- package/dist/webhook.d.ts +3 -3
- package/package.json +84 -15
package/dist/ui/canvas.d.cts
CHANGED
|
@@ -1,9 +1,32 @@
|
|
|
1
|
-
import { C as CanvasData, N as NodeTypeDef, E as EdgeTypeDef, a as CanvasNode, b as NodeTypeFieldDef, D as DynamicNodeSlotProps, c as CanvasEdge, F as FrameNodeSlotProps, d as EdgeSlotProps, e as NodeWrapperSlotProps, f as CanvasViewport, g as CanvasBounds,
|
|
2
|
-
export { B as BUILT_IN_EDGE_TYPES, i as BUILT_IN_NODE_TYPES, j as CanvasNodeData, k as CanvasNodePosition, l as DynamicNodeData, m as FrameNodeData, P as PrefetchCanvasOptions,
|
|
1
|
+
import { S as SDKClient, C as CanvasData, N as NodeTypeDef, E as EdgeTypeDef, a as CanvasNode, b as NodeTypeFieldDef, D as DynamicNodeSlotProps, c as CanvasEdge, F as FrameNodeSlotProps, d as EdgeSlotProps, e as NodeWrapperSlotProps, f as CanvasViewport, g as CanvasBounds, h as FrameData } from '../server-CrsPyqEc.cjs';
|
|
2
|
+
export { B as BUILT_IN_EDGE_TYPES, i as BUILT_IN_NODE_TYPES, j as CanvasNodeData, k as CanvasNodePosition, l as DynamicNodeData, m as FrameNodeData, P as PrefetchCanvasOptions, n as getFrameData, o as getFrames, p as getNodeBounds, q as isDynamicNode, r as isFrameNode, s as prefetchCanvas } from '../server-CrsPyqEc.cjs';
|
|
3
|
+
import { QueryClient } from '@tanstack/react-query';
|
|
3
4
|
import { Edge } from '@xyflow/react';
|
|
4
5
|
import React from 'react';
|
|
5
6
|
import { I as ImageData } from '../image-BDz2-AaO.cjs';
|
|
6
|
-
|
|
7
|
+
|
|
8
|
+
interface UseCanvasOptions {
|
|
9
|
+
/** SDK client instance (Client or ServerClient) */
|
|
10
|
+
client: SDKClient;
|
|
11
|
+
/** Optional explicit React Query client. Defaults to the nearest provider. */
|
|
12
|
+
queryClient?: QueryClient;
|
|
13
|
+
/** Canvas slug (URL-friendly identifier) */
|
|
14
|
+
slug?: string;
|
|
15
|
+
/** Canvas document ID (UUID) */
|
|
16
|
+
id?: string;
|
|
17
|
+
/** Enable/disable data fetching (default: true) */
|
|
18
|
+
enabled?: boolean;
|
|
19
|
+
}
|
|
20
|
+
interface UseCanvasResult {
|
|
21
|
+
data: CanvasData | undefined;
|
|
22
|
+
nodeTypeDefs: NodeTypeDef[];
|
|
23
|
+
edgeTypeDefs: EdgeTypeDef[];
|
|
24
|
+
canvas: Record<string, unknown> | undefined;
|
|
25
|
+
isLoading: boolean;
|
|
26
|
+
error: Error | null;
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
declare function useCanvas(options: UseCanvasOptions): UseCanvasResult;
|
|
7
30
|
|
|
8
31
|
interface UseCanvasDataOptions {
|
|
9
32
|
/** Canvas data from Canvas document's `canvas` field */
|
|
@@ -192,7 +215,7 @@ interface CanvasFrameProps extends Omit<CanvasRendererProps, 'data' | 'nodeTypeD
|
|
|
192
215
|
error?: (err: Error) => React.ReactNode;
|
|
193
216
|
/**
|
|
194
217
|
* Called when frame data is ready — escape hatch for raw data access.
|
|
195
|
-
|
|
218
|
+
* Use `prefetchCanvas({ client, queryClient, slug })` for SSR.
|
|
196
219
|
*/
|
|
197
220
|
onDataReady?: (frameData: FrameData, canvas: Record<string, unknown>) => void;
|
|
198
221
|
}
|
|
@@ -202,7 +225,7 @@ interface CanvasFrameProps extends Omit<CanvasRendererProps, 'data' | 'nodeTypeD
|
|
|
202
225
|
* Fetches the canvas via `useCanvas`, extracts the frame with `getFrameData`,
|
|
203
226
|
* and passes the result to `CanvasRenderer` with correct bounds wired.
|
|
204
227
|
*
|
|
205
|
-
* For SSR / prefetching use
|
|
228
|
+
* For SSR / prefetching use `prefetchCanvas({ client, queryClient, slug })`.
|
|
206
229
|
*
|
|
207
230
|
* @example
|
|
208
231
|
* ```tsx
|
|
@@ -219,4 +242,4 @@ interface CanvasFrameProps extends Omit<CanvasRendererProps, 'data' | 'nodeTypeD
|
|
|
219
242
|
*/
|
|
220
243
|
declare function CanvasFrame({ client, slug, id, frameId, loading, error: renderError, onDataReady, ...rendererProps }: CanvasFrameProps): React.JSX.Element | null;
|
|
221
244
|
|
|
222
|
-
export { CanvasBounds, CanvasData, CanvasEdge, CanvasFrame, type CanvasFrameProps, CanvasNode, CanvasRenderer, type CanvasRendererProps, CanvasViewport, type CodeComponentProps, DynamicNodeSlotProps, EdgeSlotProps, EdgeTypeDef, FrameData, FrameNodeSlotProps, NodeTypeDef, NodeTypeFieldDef, NodeWrapperSlotProps, SDKClient, type UseCanvasDataOptions, type UseCanvasDataResult, clearTemplateCache, compileTemplate, getBooleanField, getImageField, getNumberField, getTextField, renderFieldValue, sanitizeCSS, useCanvasData, useQuickJS };
|
|
245
|
+
export { CanvasBounds, CanvasData, CanvasEdge, CanvasFrame, type CanvasFrameProps, CanvasNode, CanvasRenderer, type CanvasRendererProps, CanvasViewport, type CodeComponentProps, DynamicNodeSlotProps, EdgeSlotProps, EdgeTypeDef, FrameData, FrameNodeSlotProps, NodeTypeDef, NodeTypeFieldDef, NodeWrapperSlotProps, SDKClient, type UseCanvasDataOptions, type UseCanvasDataResult, type UseCanvasOptions, type UseCanvasResult, clearTemplateCache, compileTemplate, getBooleanField, getImageField, getNumberField, getTextField, renderFieldValue, sanitizeCSS, useCanvas, useCanvasData, useQuickJS };
|
package/dist/ui/canvas.d.ts
CHANGED
|
@@ -1,9 +1,32 @@
|
|
|
1
|
-
import { C as CanvasData, N as NodeTypeDef, E as EdgeTypeDef, a as CanvasNode, b as NodeTypeFieldDef, D as DynamicNodeSlotProps, c as CanvasEdge, F as FrameNodeSlotProps, d as EdgeSlotProps, e as NodeWrapperSlotProps, f as CanvasViewport, g as CanvasBounds,
|
|
2
|
-
export { B as BUILT_IN_EDGE_TYPES, i as BUILT_IN_NODE_TYPES, j as CanvasNodeData, k as CanvasNodePosition, l as DynamicNodeData, m as FrameNodeData, P as PrefetchCanvasOptions,
|
|
1
|
+
import { S as SDKClient, C as CanvasData, N as NodeTypeDef, E as EdgeTypeDef, a as CanvasNode, b as NodeTypeFieldDef, D as DynamicNodeSlotProps, c as CanvasEdge, F as FrameNodeSlotProps, d as EdgeSlotProps, e as NodeWrapperSlotProps, f as CanvasViewport, g as CanvasBounds, h as FrameData } from '../server-CrsPyqEc.js';
|
|
2
|
+
export { B as BUILT_IN_EDGE_TYPES, i as BUILT_IN_NODE_TYPES, j as CanvasNodeData, k as CanvasNodePosition, l as DynamicNodeData, m as FrameNodeData, P as PrefetchCanvasOptions, n as getFrameData, o as getFrames, p as getNodeBounds, q as isDynamicNode, r as isFrameNode, s as prefetchCanvas } from '../server-CrsPyqEc.js';
|
|
3
|
+
import { QueryClient } from '@tanstack/react-query';
|
|
3
4
|
import { Edge } from '@xyflow/react';
|
|
4
5
|
import React from 'react';
|
|
5
6
|
import { I as ImageData } from '../image-BDz2-AaO.js';
|
|
6
|
-
|
|
7
|
+
|
|
8
|
+
interface UseCanvasOptions {
|
|
9
|
+
/** SDK client instance (Client or ServerClient) */
|
|
10
|
+
client: SDKClient;
|
|
11
|
+
/** Optional explicit React Query client. Defaults to the nearest provider. */
|
|
12
|
+
queryClient?: QueryClient;
|
|
13
|
+
/** Canvas slug (URL-friendly identifier) */
|
|
14
|
+
slug?: string;
|
|
15
|
+
/** Canvas document ID (UUID) */
|
|
16
|
+
id?: string;
|
|
17
|
+
/** Enable/disable data fetching (default: true) */
|
|
18
|
+
enabled?: boolean;
|
|
19
|
+
}
|
|
20
|
+
interface UseCanvasResult {
|
|
21
|
+
data: CanvasData | undefined;
|
|
22
|
+
nodeTypeDefs: NodeTypeDef[];
|
|
23
|
+
edgeTypeDefs: EdgeTypeDef[];
|
|
24
|
+
canvas: Record<string, unknown> | undefined;
|
|
25
|
+
isLoading: boolean;
|
|
26
|
+
error: Error | null;
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
declare function useCanvas(options: UseCanvasOptions): UseCanvasResult;
|
|
7
30
|
|
|
8
31
|
interface UseCanvasDataOptions {
|
|
9
32
|
/** Canvas data from Canvas document's `canvas` field */
|
|
@@ -192,7 +215,7 @@ interface CanvasFrameProps extends Omit<CanvasRendererProps, 'data' | 'nodeTypeD
|
|
|
192
215
|
error?: (err: Error) => React.ReactNode;
|
|
193
216
|
/**
|
|
194
217
|
* Called when frame data is ready — escape hatch for raw data access.
|
|
195
|
-
|
|
218
|
+
* Use `prefetchCanvas({ client, queryClient, slug })` for SSR.
|
|
196
219
|
*/
|
|
197
220
|
onDataReady?: (frameData: FrameData, canvas: Record<string, unknown>) => void;
|
|
198
221
|
}
|
|
@@ -202,7 +225,7 @@ interface CanvasFrameProps extends Omit<CanvasRendererProps, 'data' | 'nodeTypeD
|
|
|
202
225
|
* Fetches the canvas via `useCanvas`, extracts the frame with `getFrameData`,
|
|
203
226
|
* and passes the result to `CanvasRenderer` with correct bounds wired.
|
|
204
227
|
*
|
|
205
|
-
* For SSR / prefetching use
|
|
228
|
+
* For SSR / prefetching use `prefetchCanvas({ client, queryClient, slug })`.
|
|
206
229
|
*
|
|
207
230
|
* @example
|
|
208
231
|
* ```tsx
|
|
@@ -219,4 +242,4 @@ interface CanvasFrameProps extends Omit<CanvasRendererProps, 'data' | 'nodeTypeD
|
|
|
219
242
|
*/
|
|
220
243
|
declare function CanvasFrame({ client, slug, id, frameId, loading, error: renderError, onDataReady, ...rendererProps }: CanvasFrameProps): React.JSX.Element | null;
|
|
221
244
|
|
|
222
|
-
export { CanvasBounds, CanvasData, CanvasEdge, CanvasFrame, type CanvasFrameProps, CanvasNode, CanvasRenderer, type CanvasRendererProps, CanvasViewport, type CodeComponentProps, DynamicNodeSlotProps, EdgeSlotProps, EdgeTypeDef, FrameData, FrameNodeSlotProps, NodeTypeDef, NodeTypeFieldDef, NodeWrapperSlotProps, SDKClient, type UseCanvasDataOptions, type UseCanvasDataResult, clearTemplateCache, compileTemplate, getBooleanField, getImageField, getNumberField, getTextField, renderFieldValue, sanitizeCSS, useCanvasData, useQuickJS };
|
|
245
|
+
export { CanvasBounds, CanvasData, CanvasEdge, CanvasFrame, type CanvasFrameProps, CanvasNode, CanvasRenderer, type CanvasRendererProps, CanvasViewport, type CodeComponentProps, DynamicNodeSlotProps, EdgeSlotProps, EdgeTypeDef, FrameData, FrameNodeSlotProps, NodeTypeDef, NodeTypeFieldDef, NodeWrapperSlotProps, SDKClient, type UseCanvasDataOptions, type UseCanvasDataResult, type UseCanvasOptions, type UseCanvasResult, clearTemplateCache, compileTemplate, getBooleanField, getImageField, getNumberField, getTextField, renderFieldValue, sanitizeCSS, useCanvas, useCanvasData, useQuickJS };
|
package/dist/ui/canvas.js
CHANGED
|
@@ -129,28 +129,28 @@ function toEdgeTypeDef(doc) {
|
|
|
129
129
|
};
|
|
130
130
|
}
|
|
131
131
|
function useCanvas(options) {
|
|
132
|
-
const { client, slug, id, enabled = true } = options;
|
|
132
|
+
const { client, queryClient, slug, id, enabled = true } = options;
|
|
133
133
|
const hasIdentifier = !!(slug || id);
|
|
134
134
|
const canvasQuery = useQuery(
|
|
135
135
|
{
|
|
136
136
|
...canvasQueryOptions(client, slug, id),
|
|
137
137
|
enabled: enabled && hasIdentifier
|
|
138
138
|
},
|
|
139
|
-
|
|
139
|
+
queryClient
|
|
140
140
|
);
|
|
141
141
|
const nodeTypesQuery = useQuery(
|
|
142
142
|
{
|
|
143
143
|
...nodeTypesQueryOptions(client),
|
|
144
144
|
enabled
|
|
145
145
|
},
|
|
146
|
-
|
|
146
|
+
queryClient
|
|
147
147
|
);
|
|
148
148
|
const edgeTypesQuery = useQuery(
|
|
149
149
|
{
|
|
150
150
|
...edgeTypesQueryOptions(client),
|
|
151
151
|
enabled
|
|
152
152
|
},
|
|
153
|
-
|
|
153
|
+
queryClient
|
|
154
154
|
);
|
|
155
155
|
const nodeTypeDefs = useMemo(() => {
|
|
156
156
|
const apiDefs = (nodeTypesQuery.data ?? []).map(toNodeTypeDef);
|
|
@@ -178,14 +178,14 @@ function useCanvas(options) {
|
|
|
178
178
|
|
|
179
179
|
// src/ui/Canvas/prefetchCanvas.ts
|
|
180
180
|
async function prefetchCanvas(options) {
|
|
181
|
-
const { client, slug, id } = options;
|
|
181
|
+
const { client, queryClient, slug, id } = options;
|
|
182
182
|
if (!slug && !id) {
|
|
183
183
|
throw new Error("prefetchCanvas requires either slug or id");
|
|
184
184
|
}
|
|
185
185
|
await Promise.all([
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
186
|
+
queryClient.prefetchQuery(canvasQueryOptions(client, slug, id)),
|
|
187
|
+
queryClient.prefetchQuery(nodeTypesQueryOptions(client)),
|
|
188
|
+
queryClient.prefetchQuery(edgeTypesQueryOptions(client))
|
|
189
189
|
]);
|
|
190
190
|
}
|
|
191
191
|
|
|
@@ -244,9 +244,10 @@ function useQuickJS() {
|
|
|
244
244
|
|
|
245
245
|
// src/ui/Canvas/utils.ts
|
|
246
246
|
function getNodeSize(node) {
|
|
247
|
+
const style = node.style;
|
|
247
248
|
return {
|
|
248
|
-
width:
|
|
249
|
-
height:
|
|
249
|
+
width: style?.width ?? node.measured?.width ?? node.width ?? 200,
|
|
250
|
+
height: style?.height ?? node.measured?.height ?? node.height ?? 200
|
|
250
251
|
};
|
|
251
252
|
}
|
|
252
253
|
function getAbsolutePosition(node, nodeMap) {
|