@superblocksteam/library 2.0.34 → 2.0.35-next.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (50) hide show
  1. package/README.md +1 -1
  2. package/dist/build-manifest-BNJahcH4.js +6 -0
  3. package/dist/build-manifest-BNJahcH4.js.map +1 -0
  4. package/dist/devtools-consolidated-BJ2tPWBk.js +212 -0
  5. package/dist/devtools-consolidated-BJ2tPWBk.js.map +1 -0
  6. package/dist/early-console-buffer-DWTLgla0.js +109 -0
  7. package/dist/early-console-buffer-DWTLgla0.js.map +1 -0
  8. package/dist/index.css +16 -34148
  9. package/dist/index.css.map +1 -0
  10. package/dist/index.d.ts +1388 -0
  11. package/dist/index.d.ts.map +1 -0
  12. package/dist/index.js +11414 -185
  13. package/dist/index.js.map +1 -1
  14. package/dist/logs-ivxzrJPP.js +31 -0
  15. package/dist/logs-ivxzrJPP.js.map +1 -0
  16. package/dist/root-store-OkumbU1B.js +4564 -0
  17. package/dist/root-store-OkumbU1B.js.map +1 -0
  18. package/dist/root-store-Z42RSY5l.js +4 -0
  19. package/dist/utils-BCrSLIhM.js +3 -0
  20. package/dist/utils-CCBWAYIM.js +45 -0
  21. package/dist/utils-CCBWAYIM.js.map +1 -0
  22. package/package.json +15 -28
  23. package/dist/allPaths-BiumKu08.js +0 -17
  24. package/dist/allPaths-BiumKu08.js.map +0 -1
  25. package/dist/allPaths-DVZye-qX.js +0 -17
  26. package/dist/allPaths-DVZye-qX.js.map +0 -1
  27. package/dist/allPathsLoader-BmHfoSD_.js +0 -22
  28. package/dist/allPathsLoader-BmHfoSD_.js.map +0 -1
  29. package/dist/allPathsLoader-DRmGASlD.js +0 -22
  30. package/dist/allPathsLoader-DRmGASlD.js.map +0 -1
  31. package/dist/devtools-consolidated-C22ZSOdp.js +0 -590
  32. package/dist/devtools-consolidated-C22ZSOdp.js.map +0 -1
  33. package/dist/icons-BPtVE6ue.js +0 -58
  34. package/dist/icons-BPtVE6ue.js.map +0 -1
  35. package/dist/index-BxzKdlqH.js +0 -1353
  36. package/dist/index-BxzKdlqH.js.map +0 -1
  37. package/dist/index-CdXfIz8N.js +0 -216319
  38. package/dist/index-CdXfIz8N.js.map +0 -1
  39. package/dist/index-DIJYif9G.js +0 -1341
  40. package/dist/index-DIJYif9G.js.map +0 -1
  41. package/dist/index-DIn-fanT.js +0 -1353
  42. package/dist/index-DIn-fanT.js.map +0 -1
  43. package/dist/index-LHtbj0-V.js +0 -1341
  44. package/dist/index-LHtbj0-V.js.map +0 -1
  45. package/dist/logs-BfdjooW0.js +0 -1475
  46. package/dist/logs-BfdjooW0.js.map +0 -1
  47. package/dist/splitPathsBySizeLoader-De1h8uYk.js +0 -34
  48. package/dist/splitPathsBySizeLoader-De1h8uYk.js.map +0 -1
  49. package/dist/splitPathsBySizeLoader-Df5pOIDq.js +0 -34
  50. package/dist/splitPathsBySizeLoader-Df5pOIDq.js.map +0 -1
@@ -0,0 +1,1388 @@
1
+ import * as _superblocksteam_library_shared_types7 from "@superblocksteam/library-shared/types";
2
+ import { AiContextMode, AiGenerationState, AppToEditorMessage, BindingIdentifier, Catalog, CreateChild, CreateChild as CreateChild$1, DeleteMeLibraryApi, EditOperationPayload, EditOperationType, EditorConfig as EditorConfig$1, Entity, EntityOutputProp, GeneratedTheme, IEventFlow, NotificationPosition, NotificationType, PayloadAction, PerSideBorder, PropertyInfo, RuntimeErrorData, SbElement, SbEvent as SbEvent$1, SbInstance, ScopeOptions, ScopedState, SourceLocation, StateVarPersistence, StepDef, Theme as Theme$1, TransactionInfo, TriggerStepType, UrlState, UserAccessibleTheme, ValueInputProp, WithBindingIdentifier, sbEntitySymbol } from "@superblocksteam/library-shared/types";
3
+ import * as react0 from "react";
4
+ import React$1, { CSSProperties, ReactNode } from "react";
5
+ import * as react_jsx_runtime0 from "react/jsx-runtime";
6
+ import * as _superblocksteam_library_shared0 from "@superblocksteam/library-shared";
7
+ import { ComputedProperty, Dim, Dim as Dim$1, DimModes, DimModes as DimModes$1, EditorConfig, EvaluateOrValueComputedArgs, INSTANCE_ID_ATTRIBUTE, NO_CONTENT_ATTRIBUTE, Property, SB } from "@superblocksteam/library-shared";
8
+ import { Link, Outlet, generatePath } from "react-router";
9
+ import * as _superblocksteam_library_shared_props1 from "@superblocksteam/library-shared/props";
10
+ import { Callback, ControlType, DataType, DataTypeString, HeaderType, PropertiesPanelDefinition, PropertiesPanelDisplay, PropertyForData, PropsPanelCategory, Relation, WidgetPropertyDefinition } from "@superblocksteam/library-shared/props";
11
+ import { OrchestratorViewMode, PlaceholderInfo, Profile, RouteDef } from "@superblocksteam/shared";
12
+ import { XYCoord } from "react-dnd";
13
+
14
+ //#region src/lib/user-facing/component-base/constants.d.ts
15
+ type ContainerLayout = "vertical" | "horizontal";
16
+ type ContainerVariant = "none" | "card";
17
+ //#endregion
18
+ //#region src/lib/user-facing/component-base/use-passthrough-props.d.ts
19
+ type ElementPassthroughProps = Record<string, any>;
20
+ //#endregion
21
+ //#region src/lib/internal-details/lib/types.d.ts
22
+ type ExecutionError = {
23
+ name?: string;
24
+ message: string;
25
+ formPath: string;
26
+ blockPath: string;
27
+ handled?: boolean;
28
+ };
29
+ type ExecutionEventRequest = {
30
+ summary: string;
31
+ metadata: {
32
+ placeHoldersInfo?: Record<string, PlaceholderInfo>;
33
+ };
34
+ };
35
+ type Resolutions = Record<string,
36
+ // name of the field: eg: "range", for the range field let's say the code is {{[1,2,3]}}
37
+ {
38
+ value: any;
39
+ bindings: any[];
40
+ }>;
41
+ type ExecutionEvent = {
42
+ name: string;
43
+ type: string;
44
+ timestamp: string;
45
+ start?: Record<string, unknown>;
46
+ end?: {
47
+ performance?: {
48
+ start: string | number;
49
+ finish: string | number;
50
+ total: string | number;
51
+ execution: string | number;
52
+ overhead: string | number;
53
+ };
54
+ error?: ExecutionError;
55
+ output?: {
56
+ result?: any;
57
+ request?: string;
58
+ requestV2?: ExecutionEventRequest;
59
+ stdout?: Array<string>;
60
+ stderr?: Array<string>;
61
+ };
62
+ resolved?: Resolutions;
63
+ };
64
+ parent: string;
65
+ };
66
+ interface StreamEvent {
67
+ result: {
68
+ event: ExecutionEvent;
69
+ execution: string;
70
+ };
71
+ }
72
+ type RouteChangePayload = Omit<UrlState, "host" | "hostname" | "href" | "pathname" | "port" | "protocol">;
73
+ type AiUpdatesPayload = {
74
+ parentToChild: {
75
+ type: "start-editing";
76
+ components?: SbElement[];
77
+ } | {
78
+ type: "finish-editing";
79
+ } | {
80
+ type: "update-editing-entities";
81
+ components: SbElement[];
82
+ } | {
83
+ type: "set-ai-context-mode";
84
+ mode: AiContextMode;
85
+ components?: SbElement[];
86
+ } | {
87
+ type: "set-tagging-enabled";
88
+ isTaggingEnabled: boolean;
89
+ };
90
+ childToParent: {
91
+ type: "add-component-to-context";
92
+ component: SbElement;
93
+ } | {
94
+ type: "toggle-component-in-context";
95
+ component: SbElement;
96
+ } | {
97
+ type: "set-ai-context-mode";
98
+ mode: AiContextMode;
99
+ } | {
100
+ type: "ai-generate";
101
+ prompt: string;
102
+ };
103
+ };
104
+ type FromParentToChildMessageTypesMap = {
105
+ "sb-init": {
106
+ peerId: string;
107
+ userId?: string;
108
+ appId: string;
109
+ sessionRecordingKey?: string;
110
+ aiState?: {
111
+ generationState: AiGenerationState;
112
+ editingComponents: SbElement[];
113
+ };
114
+ };
115
+ "sb-bootstrap-response": {
116
+ userId?: string;
117
+ appId: string;
118
+ token: string;
119
+ accessToken: string;
120
+ /** @deprecated Use agentUrls instead */
121
+ agentUrl?: string;
122
+ agentUrls: string[];
123
+ logContext: Record<string, unknown>;
124
+ featureFlags?: Record<string, unknown>;
125
+ sessionRecordingKey?: string;
126
+ };
127
+ "sb-editor-request-bootstrap": void;
128
+ "sb-update-active-agents": {
129
+ agentUrls: string[];
130
+ };
131
+ "sb-update-property-with-effects": {
132
+ sourceId: string;
133
+ callbackId: string;
134
+ updates: Record<string, PropertyInfo<unknown>>;
135
+ transaction: TransactionInfo;
136
+ };
137
+ "sb-edit-operation-acknowledge": EditOperationPayload<EditOperationType>;
138
+ "sb-retrieve-property-panel-props": {
139
+ sourceId: string;
140
+ };
141
+ "sb-global-sync": {
142
+ global: Record<string, unknown>;
143
+ };
144
+ "parent-action-batch": PayloadAction<unknown>[];
145
+ click: void;
146
+ "register-keypress": {
147
+ keys: string;
148
+ options?: any;
149
+ };
150
+ "canvas-scale-update": {
151
+ canvasScaleFactor: number;
152
+ };
153
+ "resolve-promise": unknown;
154
+ "reject-promise": unknown;
155
+ "flash-element": {
156
+ elementId: string;
157
+ };
158
+ "set-theme": {
159
+ theme: unknown;
160
+ updateRedux?: boolean;
161
+ storedTypographies?: unknown;
162
+ };
163
+ getDropTarget: {
164
+ parentId: string;
165
+ };
166
+ keypress: {
167
+ keys: string;
168
+ eventInfo: {
169
+ code: string;
170
+ key: string;
171
+ altKey: boolean;
172
+ ctrlKey: boolean;
173
+ shiftKey: boolean;
174
+ };
175
+ };
176
+ dragstart: Record<string, unknown> & {
177
+ type: string;
178
+ };
179
+ "sb-create-component": {
180
+ componentType: string;
181
+ parent: SourceLocation;
182
+ scopeName: string;
183
+ baseProperties?: Record<string, PropertyInfo>;
184
+ skipSecondaryComponentsCreation?: boolean;
185
+ otherComponentsUpdates?: Record<SbElement, Record<string, PropertyInfo>>;
186
+ };
187
+ "sb-toggle-live-preview": {
188
+ isLivePreview: boolean;
189
+ };
190
+ /**
191
+ * Request a route change in the child
192
+ */
193
+ "route-change": RouteChangePayload;
194
+ "ai-updates": AiUpdatesPayload["parentToChild"];
195
+ };
196
+ type FromParentToChildMessageTypes = keyof FromParentToChildMessageTypesMap;
197
+ type FromChildToParentMessageTypesMap = {
198
+ "sb-ready": void;
199
+ "iframe-action-batch": PayloadAction<unknown>[];
200
+ /**
201
+ * Navigate the parent window to a new URL
202
+ */
203
+ "navigate-to": {
204
+ url: string;
205
+ newWindow?: boolean;
206
+ };
207
+ "sb-iframe-track-changes": Record<string, unknown>;
208
+ "resolve-promise": unknown;
209
+ "reject-promise": unknown;
210
+ "sb-editor-request-bootstrap": void;
211
+ "reload-configs": void;
212
+ "sb-edit-operation-request": EditOperationPayload<EditOperationType>;
213
+ "client:selectWidgets": {
214
+ sourceIds: SbElement[];
215
+ };
216
+ getDropTargetResult: {
217
+ offset: XYCoord;
218
+ size: {
219
+ height: number;
220
+ width: number;
221
+ };
222
+ };
223
+ keypress: {
224
+ keys: string;
225
+ eventInfo: {
226
+ code: string;
227
+ key: string;
228
+ altKey: boolean;
229
+ ctrlKey: boolean;
230
+ shiftKey: boolean;
231
+ };
232
+ };
233
+ "register-click": {
234
+ type: string;
235
+ context: {
236
+ clientX: number;
237
+ clientY: number;
238
+ sourceId: string;
239
+ insertionIndexes?: {
240
+ sectionInsertionPosition?: number;
241
+ columnInsertionPosition?: number;
242
+ stackInsertionPosition?: number;
243
+ };
244
+ };
245
+ };
246
+ "api/started-execution": {
247
+ apiName: string;
248
+ };
249
+ "api/set-api-response": {
250
+ apiName: string;
251
+ response: unknown;
252
+ };
253
+ "api/stream-event": {
254
+ event: StreamEvent;
255
+ apiName: string;
256
+ };
257
+ "api/stream-message": {
258
+ message: any;
259
+ apiName: string;
260
+ };
261
+ "authenticate-api-request": {
262
+ apiId: string;
263
+ callbackId: string;
264
+ };
265
+ "set-apis-deployed-mode": {
266
+ apis: Array<DeleteMeLibraryApi & {
267
+ scopeId: string;
268
+ }>;
269
+ callbackId: string;
270
+ };
271
+ /**
272
+ * Notify the parent of a route change
273
+ */
274
+ "route-change": RouteChangePayload;
275
+ "ai-updates": AiUpdatesPayload["childToParent"];
276
+ undo: void;
277
+ redo: void;
278
+ "socket/error": {
279
+ message: string;
280
+ };
281
+ "runtime-error": RuntimeErrorData;
282
+ "clear-runtime-error": {
283
+ id: string;
284
+ };
285
+ "logout-integration": {
286
+ callbackId: string;
287
+ };
288
+ } & AppToEditorMessage<PropertiesPanelDefinition>;
289
+ type FromChildToParentMessageTypes = keyof FromChildToParentMessageTypesMap;
290
+ //#endregion
291
+ //#region src/lib/internal-details/lib/evaluator/names.d.ts
292
+ type Name = {
293
+ value: string;
294
+ isAnonymous: boolean;
295
+ };
296
+ //#endregion
297
+ //#region src/lib/user-facing/event-flow.d.ts
298
+ declare class EventFlow implements IEventFlow<StepDef, ScopedState, ValueInputProp> {
299
+ steps: StepDef[];
300
+ private constructor();
301
+ private addStep;
302
+ static start(): EventFlow;
303
+ static runJS(handler: (s: ScopedState | any, additionalProps?: Record<string, any>) => void): EventFlow;
304
+ runJS(handler: (s: ScopedState | any, additionalProps?: Record<string, any>) => void): this;
305
+ static navigateTo(url: ValueInputProp<string>, opts?: {
306
+ newWindow?: boolean;
307
+ replaceHistory?: boolean;
308
+ arguments?: string;
309
+ }): EventFlow;
310
+ navigateTo(url: ValueInputProp<string>, opts?: {
311
+ newWindow?: boolean;
312
+ replaceHistory?: boolean;
313
+ arguments?: string;
314
+ }): this;
315
+ static navigateToApp(appId: string): EventFlow;
316
+ navigateToApp(appId: string): this;
317
+ static navigateToRoute(route: string): EventFlow;
318
+ navigateToRoute(route: string): this;
319
+ static setQueryParams(params: Record<string, ValueInputProp<string>>, opts?: {
320
+ keep?: boolean;
321
+ }): EventFlow;
322
+ setQueryParams(params: Record<string, ValueInputProp<string>>, opts?: {
323
+ keep?: boolean;
324
+ }): this;
325
+ static controlSlideout(slideout: WithBindingIdentifier, opts: {
326
+ action: "open" | "close";
327
+ }): EventFlow;
328
+ controlSlideout(slideout: WithBindingIdentifier, opts: {
329
+ action: "open" | "close";
330
+ }): this;
331
+ static controlModal(modal: WithBindingIdentifier, opts: {
332
+ action: "open" | "close";
333
+ }): EventFlow;
334
+ controlModal(modal: WithBindingIdentifier, opts: {
335
+ action: "open" | "close";
336
+ }): this;
337
+ static controlTimer(stateTimer: WithBindingIdentifier, opts: {
338
+ action: "start" | "stop" | "toggle";
339
+ }): EventFlow;
340
+ controlTimer(stateTimer: WithBindingIdentifier, opts: {
341
+ action: "start" | "stop" | "toggle";
342
+ }): this;
343
+ static runApis(apis: any[], opts?: {
344
+ onSuccess?: EventFlow;
345
+ onError?: EventFlow;
346
+ }): EventFlow;
347
+ runApis(apis: any[], opts?: {
348
+ onSuccess?: EventFlow;
349
+ onError?: EventFlow;
350
+ }): this;
351
+ static cancelApis(apis: any[], onCancel?: EventFlow): EventFlow;
352
+ cancelApis(apis: any[], onCancel?: EventFlow): this;
353
+ static resetComponent(component: WithBindingIdentifier, opts?: {
354
+ property: string;
355
+ }): EventFlow;
356
+ resetComponent(component: WithBindingIdentifier, opts?: {
357
+ property: string;
358
+ }): this;
359
+ static resetStateVar(state: WithBindingIdentifier): EventFlow;
360
+ resetStateVar(state: WithBindingIdentifier): this;
361
+ static setStateVar(stateVarName: WithBindingIdentifier, opts: {
362
+ value: ValueInputProp;
363
+ }): EventFlow;
364
+ setStateVar(stateVar: WithBindingIdentifier, opts: {
365
+ value: ValueInputProp;
366
+ }): this;
367
+ callFunction(component: () => unknown): this;
368
+ static callFunction(component: () => unknown): EventFlow;
369
+ static setComponentProperty(component: WithBindingIdentifier, opts: {
370
+ property: string;
371
+ value: ValueInputProp;
372
+ }): EventFlow;
373
+ setComponentProperty(component: WithBindingIdentifier, opts: {
374
+ property: string;
375
+ value: ValueInputProp;
376
+ }): this;
377
+ static showAlert(message: ValueInputProp<string>, opts?: {
378
+ type?: NotificationType;
379
+ durationMs?: number;
380
+ position?: NotificationPosition;
381
+ }): EventFlow;
382
+ showAlert(_message: ValueInputProp<string>, _opts?: {
383
+ type?: NotificationType;
384
+ durationMs?: number;
385
+ position?: NotificationPosition;
386
+ }): this;
387
+ static setProfile(profileId: string, opts: {
388
+ action: "set" | "unset";
389
+ }): EventFlow;
390
+ setProfile(profileId: string, opts: {
391
+ action: "set" | "unset";
392
+ }): this;
393
+ static triggerEvent(eventName: string, opts?: {
394
+ data: Record<string, string>;
395
+ }): EventFlow;
396
+ triggerEvent(eventName: string, opts?: {
397
+ data: Record<string, string>;
398
+ }): this;
399
+ static sequence(eventFlows: EventFlow[]): EventFlow;
400
+ sequence(eventFlows: EventFlow[]): this;
401
+ build(): StepDef[];
402
+ }
403
+ //#endregion
404
+ //#region src/lib/user-facing/properties-panel/validators.d.ts
405
+ type ValidationResult<T = any> = {
406
+ valid: false;
407
+ message: string;
408
+ invalidValue: any;
409
+ } | {
410
+ valid: true;
411
+ result: T;
412
+ };
413
+ type ValidateFn<T> = (value: any, entity: Entity) => ValidationResult<T>;
414
+ //#endregion
415
+ //#region src/lib/internal-details/lib/evaluator/base-entity-manager.d.ts
416
+ type SingleInputProp<T = EntityOutputProp, ARGS extends any[] = any[]> = [T] extends [EntityOutputProp] ? T extends EventFlow ? EventFlow | Callback : ValueInputProp<T, ARGS> : never;
417
+ type NestedInputProp<T, ARGS extends any[] = any[]> = T extends object ? { [K in keyof T]: SingleInputProp<T[K], ARGS> | NestedInputProp<T[K], ARGS> } : never;
418
+ type InputProp<T = EntityOutputProp, ARGS extends any[] = any[]> = SingleInputProp<T, ARGS> | NestedInputProp<T, ARGS>;
419
+ type EntityFunction<ARGS extends any[] = any[], R = EntityOutputProp> = (this: Entity, state: ScopedState, ...ARGS: ARGS) => R;
420
+ //#endregion
421
+ //#region src/edit-mode/features/runtime-widgets-manager.d.ts
422
+ type ChildFunction = React$1.FunctionComponent;
423
+ type ChildElement = {
424
+ isSupportedElement: true;
425
+ isSbComponent: boolean;
426
+ value: SbInstance;
427
+ } | {
428
+ isSupportedElement: true;
429
+ isSbComponent: false;
430
+ value?: SbInstance;
431
+ } | {
432
+ isSupportedElement: false;
433
+ isSbComponent: false;
434
+ value: ChildFunction;
435
+ };
436
+ type RuntimeWidgetMeta = {
437
+ instanceId: SbInstance;
438
+ sourceId: SbElement;
439
+ isRoot: boolean;
440
+ isInsideRoot: boolean;
441
+ rootInstanceId?: SbInstance;
442
+ isSbComponent: boolean;
443
+ isOptimistic: boolean;
444
+ scopeId?: string;
445
+ type?: string;
446
+ name?: Name;
447
+ props?: Record<string, unknown>;
448
+ children?: ChildElement[];
449
+ parentInstanceId?: SbInstance;
450
+ directParentInstanceId?: SbInstance;
451
+ isUnmounted?: boolean;
452
+ };
453
+ //#endregion
454
+ //#region src/lib/internal-details/lib/features/component-registry.d.ts
455
+ type DefaultTagNames = {
456
+ container: string;
457
+ button: string;
458
+ text: string;
459
+ };
460
+ /**
461
+ * TODO: The component registry could be split into two a thin layer always on, and move some stuff to the EditStore.
462
+ * Some of the actions (rename, delete) and some of the data (isDroppable) are editor-only.
463
+ */
464
+ //#endregion
465
+ //#region src/lib/internal-details/sb-wrapper.d.ts
466
+ type InjectedProps = {
467
+ dropTargetRef?: React$1.Ref<HTMLElement>;
468
+ editorProps?: ElementPassthroughProps;
469
+ };
470
+ type ParentInfo = {
471
+ type?: string;
472
+ };
473
+ interface CreationContext {
474
+ generateUniqueName: (baseName: string) => string;
475
+ parentInfo: ParentInfo;
476
+ defaultTagNames: DefaultTagNames;
477
+ selfTagName: string;
478
+ }
479
+ type PropertyValues<Def extends PropertiesDefinition> = { [K in keyof GetAllPropsFromDefinition<Def>]?: PropertyInfo | PropertyValues<Def> };
480
+ type GetAllPropsFromDefinition<Def extends PropertiesDefinition> = { [SectionKey in keyof Def]: Def[SectionKey] extends {
481
+ props: infer Props;
482
+ } ? Props extends Record<string, any> ? Props : never : never }[keyof Def];
483
+ interface EditorTemplate<Def extends PropertiesDefinition> {
484
+ catalog?: Catalog;
485
+ /***
486
+ * Config for the newly created component when added to the canvas from the Editor.
487
+ * @returns a single CreateRequest or an array of CreateRequests.
488
+ *
489
+ * When returning Array<CreateRequests>:
490
+ * - The 1st CreateRequest's type must match the componentType passed to createComponent.
491
+ * - The last CreateRequest's will be the selected component after drag & drop.
492
+ *
493
+ * Example: [Modal, Button]
494
+ * A modal that when drag & dropped on the page will add a trigger button.
495
+ * The modal is closed by default, so the selected component after drop will be the trigger button.
496
+ */
497
+ create?: (context: CreationContext) => CreateRequest<Def> | Array<CreateRequest<Def>>;
498
+ }
499
+ interface CreateRequest<Def extends PropertiesDefinition> {
500
+ type: string;
501
+ /**
502
+ * Should it automatically generate a binding?
503
+ * e.g: <Input bind={Input1}>
504
+ *
505
+ * Default is false (no binding)
506
+ *
507
+ * `generateBinding` can also receive a string. e.g: "Input1".
508
+ * This is useful if you need to create children components that rely on the parent's binding (e.g: a button inside a modal to close the modal).
509
+ * To generate these unique names, you can use `context.generateUniqueName` and pass the component type (e.g: "Modal")
510
+ *
511
+ * A good rule of thumb:
512
+ * - Components that expose a user's input should have an automatically generated binding (e.g: Input, Checkbox, Table, etc)
513
+ * - Components that don't expose a user's input should not have an automatically generated binding (e.g: Button, Text, etc)
514
+ *
515
+ * Note:
516
+ * Apps builders can always manually set a binding on the editor or source code.
517
+ */
518
+ generateBinding?: boolean | string;
519
+ properties?: PropertyValues<Def>;
520
+ createAt?: "root" | "dropLocation";
521
+ children?: CreateChild$1[];
522
+ }
523
+ interface ChainableComponent<PD extends PropertiesDefinition, EP extends ExternalProps<PD>> extends React$1.FC<EP> {
524
+ addEditorTemplate: (config: EditorTemplate<PD>) => ChainableComponent<PD, EP>;
525
+ editorConfig: (config: EditorConfig$1) => ChainableComponent<PD, EP>;
526
+ isSb: symbol;
527
+ sbType: string;
528
+ displayName: string;
529
+ isCustomComponent: boolean;
530
+ isDroppable: boolean;
531
+ propertiesDefinition: PropertiesDefinition;
532
+ }
533
+ /**
534
+ * Register a component to be used with the framework.
535
+ *
536
+ * Returns a chainable component that can be used as a React component and also provides
537
+ * additional methods for editor integration.
538
+ *
539
+ * // TODO: All these params should be migrated to editor template or editorConfig
540
+ * @param type - The string identifier for the component type. This should be unique, is used internally to reference the component, and is also the tag name on source code.
541
+ * @param config - An object containing configuration options for the component:
542
+ * - customComponent (optional): If true, marks this as a custom user-defined component.
543
+ * - propertiesDefinition: The definition of the component's properties, used for property panel generation and validation.
544
+ * @param Component - The React functional component implementation. Receives internal props (including drop target props) as its argument.
545
+ *
546
+ * @returns A chainable component that can be used as a React component and also provides methods for editor integration (such as addEditorTemplate and editorConfig).
547
+ */
548
+ //#endregion
549
+ //#region src/lib/user-facing/component-base/sb-component.d.ts
550
+ type SbComponentProps<El = HTMLElement> = {
551
+ name?: string;
552
+ bind?: WithBindingIdentifier;
553
+ width?: Dim$1;
554
+ height?: Dim$1;
555
+ minWidth?: Dim$1;
556
+ minHeight?: Dim$1;
557
+ maxWidth?: Dim$1;
558
+ maxHeight?: Dim$1;
559
+ sourceId?: SbElement;
560
+ /**
561
+ * undefined means auto, true means always loading, false means never loading
562
+ */
563
+ loading?: boolean;
564
+ } & Omit<React.HTMLAttributes<El>, "height" | "width">;
565
+ //#endregion
566
+ //#region src/lib/user-facing/properties-panel/props-builder.d.ts
567
+ type SideEffectCallback = (params: {
568
+ sourceId: SbElement;
569
+ updates: Record<string, PropertyInfo<unknown>>;
570
+ widgetMeta: RuntimeWidgetMeta;
571
+ widgetState: Entity | ScopedState | undefined;
572
+ propertiesDefinition: PropertiesDefinition;
573
+ }) => Record<SbElement, {
574
+ meta?: Record<string, unknown>;
575
+ props?: Record<string, PropertyInfo<unknown>>;
576
+ }>;
577
+ type ManagedProp<T extends DataType = DataType> = PropertyForData<T> & {
578
+ validate?: ValidateFn<any>;
579
+ default?: SingleInputProp<T>;
580
+ defaultOnAdd?: SingleInputProp<T>;
581
+ onEditProperty?: SideEffectCallback;
582
+ onEvaluateProperty?: SideEffectCallback;
583
+ /**
584
+ * Controls binding nesting behavior:
585
+ * - true: Allows bindings to be nested at any depth within this property
586
+ * - false: Only allows bindings at the top level (unless the property is composite)
587
+ */
588
+ nestedBindings?: boolean;
589
+ /**
590
+ * Indicates this property should be evaluated per-context (e.g., per-row in tables)
591
+ * When true, the property value will be evaluated for each context with access to context variables
592
+ */
593
+ contextual?: boolean;
594
+ computedArgs?: EvaluateOrValueComputedArgs;
595
+ /**
596
+ * Custom type hint for documentation generation
597
+ * When set, this will override the auto-generated type in generated docs
598
+ */
599
+ typeHint?: string;
600
+ isMetaProp?: boolean;
601
+ isFunctionProp?: boolean;
602
+ hasActionPanel?: boolean;
603
+ };
604
+ /**
605
+ * Merges shared and variant properties for union types without creating intersections
606
+ * Variant properties override shared properties with the same key
607
+ */
608
+ type MergeUnionVariant<SHARED extends Record<string, Prop<any, any>>, VARIANT extends Record<string, Prop<any, any>>> = Omit<SHARED, keyof VARIANT> & VARIANT;
609
+ /**
610
+ * Converts a union type to an intersection type
611
+ * Used to merge multiple section props into a single props type
612
+ */
613
+ type UnionToIntersection<U> = (U extends any ? (x: U) => void : never) extends ((x: infer I extends U) => void) ? I : never;
614
+ /**
615
+ * Controls how default values affect property optionality
616
+ * - RequiredIfDefault: Properties with default values become required
617
+ * - AlwaysOptional: All properties become optional regardless of defaults
618
+ */
619
+ type DefaultValueBehavior = "RequiredIfDefault" | "AlwaysOptional";
620
+ /**
621
+ * Extracts the concrete type from a property definition
622
+ *
623
+ * For evaluated props: returns the actual value type
624
+ *
625
+ * For non-evaluated props: returns InputProp<ValueType>
626
+ */
627
+ /**
628
+ * Extracts the concrete type from a property definition
629
+ * Enhanced to handle contextual properties
630
+ */
631
+ type ExtractPropType<T, DefaultsBehavior extends DefaultValueBehavior, IsEvaluated extends boolean> = T extends Record<string, Prop<any, any, any>> ? ExtractProps<T, DefaultsBehavior, IsEvaluated> : T extends RecordProp<infer U> ? Record<string, ExtractProps<U, DefaultsBehavior, IsEvaluated>> : T extends CompositeProp<infer U> ? IsEvaluated extends true ? ExtractProps<U, DefaultsBehavior, IsEvaluated> : InputProp<ExtractProps<U, DefaultsBehavior, true>> : T extends UnionProp<infer SHARED, infer VARIANTS> ? VARIANTS extends readonly any[] ? { [I in keyof VARIANTS]: ExtractProps<MergeUnionVariant<SHARED, VARIANTS[I]>, DefaultsBehavior, IsEvaluated> }[number] : never : T extends Prop<infer V, infer _HasDefault, infer ContextualProps> ? IsEvaluated extends true ? ContextualProps extends undefined ? V extends EventFlow ? (...args: any[]) => Promise<void> : V : ContextualProps extends any[] ? (...args: ContextualProps) => V : InputProp<V> : InputProp<V> : never;
632
+ /**
633
+ * Extracts a flat props object from a properties definition
634
+ * Handles optionality based on DefaultValueBehavior
635
+ */
636
+ type ExtractProps<T, DefaultsBehavior extends DefaultValueBehavior, IsEvaluated extends boolean> = T extends Record<string, Section> ? ExtractProps<MergeSections<T>, DefaultsBehavior, IsEvaluated> : T extends Record<string, Prop<any, any, any>> ? DefaultsBehavior extends "AlwaysOptional" ? { [K in keyof T]?: ExtractPropType<T[K], DefaultsBehavior, IsEvaluated> } : { [K in keyof T as T[K] extends Prop<any, infer HasDefault, any> ? HasDefault extends true ? K : never : never]: ExtractPropType<T[K], DefaultsBehavior, IsEvaluated> } & { [K in keyof T as T[K] extends Prop<any, infer HasDefault, any> ? HasDefault extends false ? K : never : never]?: ExtractPropType<T[K], DefaultsBehavior, IsEvaluated> } : never;
637
+ /**
638
+ * Handles non Prop types, aka our default types and CSS props
639
+ */
640
+ type RawPropsToExternal<T = Record<string, unknown>> = { [K in keyof T as undefined extends T[K] ? never : K]: SingleInputProp<T[K]> } & { [K in keyof T as undefined extends T[K] ? K : never]?: SingleInputProp<Exclude<T[K], undefined>> };
641
+ type SectionPropertiesPanelConfig = {
642
+ showHeader?: boolean;
643
+ isDefaultOpen?: boolean;
644
+ headerType?: HeaderType;
645
+ subHeader?: string;
646
+ };
647
+ /**
648
+ * Merges all sections in a properties definition into a single props type
649
+ */
650
+ type MergeSections<T extends Record<string, Section>, Merged = UnionToIntersection<T[keyof T]>> = Merged extends Section<infer U> ? U : never;
651
+ /**
652
+ * Identical to InternalProps but without the base props
653
+ */
654
+ type EntityProps<Definition extends PropertiesDefinition, MergedSections = MergeSections<Definition>> = ExtractProps<MergedSections, "RequiredIfDefault", true>;
655
+ /**
656
+ * Internal props used by the component implementation
657
+ * - Properties with defaults are required
658
+ * - Properties are fully evaluated to their final types
659
+ */
660
+ type InternalProps<Definition extends PropertiesDefinition, FlattenedProps = EntityProps<Definition>, BaseProps = Omit<SbComponentProps, keyof FlattenedProps>> = FlattenedProps & BaseProps & InjectedProps;
661
+ type MakeOptional<T, K extends string> = Omit<T, K & keyof T> & Partial<Pick<T, K & keyof T>>;
662
+ type CleanProps<T> = { [K in keyof T as string extends K ? never : K]: T[K] };
663
+ type InternalPropsWithOptional<Definition extends PropertiesDefinition, OptionalProps extends string, InternalPropsWithDefinition = InternalProps<Definition>> = InternalPropsWithDefinition extends infer U ? U extends any ? MakeOptional<CleanProps<U>, OptionalProps> & {
664
+ [key: string]: any;
665
+ } : never : never;
666
+ /**
667
+ * External props exposed to component consumers
668
+ * - All properties are optional regardless of defaults
669
+ * - Properties accept InputProp values (bindings/functions)
670
+ */
671
+ type ExternalProps<Definition extends PropertiesDefinition, MergedSections = MergeSections<Definition>, FlattenedProps = ExtractProps<MergedSections, "AlwaysOptional", false>, BaseProps = Omit<SbComponentProps, keyof FlattenedProps>> = FlattenedProps & RawPropsToExternal<BaseProps>;
672
+ type PropertiesDefinition = Record<string, Section>;
673
+ type SectionDefinition<T extends Record<string, Prop<any, any>>> = {
674
+ props: T;
675
+ showHeader?: boolean;
676
+ isDefaultOpen?: boolean;
677
+ headerType?: HeaderType;
678
+ subHeader?: string;
679
+ };
680
+ declare class Section<T extends Record<string, Prop<any, any>> = Record<string, Prop<any, any>>> {
681
+ readonly category: PropsPanelCategory;
682
+ props: T;
683
+ propertiesPanelConfig: SectionPropertiesPanelConfig;
684
+ constructor(category: PropsPanelCategory);
685
+ static category(category: PropsPanelCategory): Section<Record<string, Prop<any, any, undefined>>>;
686
+ children<INP extends Record<string, Prop<any, any>> | CompositeProp<any> | UnionProp<any, any>, OUT extends (INP extends CompositeProp<infer CU> ? CU : INP extends UnionProp<infer SHARED, infer VARIANTS> ? VARIANTS extends readonly any[] ? { [I in keyof VARIANTS]: MergeUnionVariant<SHARED, VARIANTS[I]> }[number] : never : INP)>(props: INP): Section<T & OUT>;
687
+ add: <INP extends Record<string, Prop<any, any>> | CompositeProp<any> | UnionProp<any, any>, OUT extends (INP extends CompositeProp<infer CU> ? CU : INP extends UnionProp<infer SHARED, infer VARIANTS> ? VARIANTS extends readonly any[] ? { [I in keyof VARIANTS]: MergeUnionVariant<SHARED, VARIANTS[I]> }[number] : never : INP)>(props: INP) => Section<T & OUT>;
688
+ propertiesPanel(config: Omit<SectionDefinition<any>, "props">): this;
689
+ get name(): "Content" | "Routing" | "Interaction" | "Layout" | "Appearance" | "Permissions" | "Uncategorized" | "Event handlers" | "Custom styles";
690
+ }
691
+ declare class Prop<Type extends DataType, _HasDefault extends boolean = false, _ContextualArgs extends any[] | undefined | ((entity: Entity) => any[] | undefined) = undefined> {
692
+ protected prop: ManagedProp<Type>;
693
+ /**
694
+ * Relations are an array of arrays
695
+ * each sub-array is AND requirements, and each element is an OR requirement
696
+ */
697
+ protected relations: Relation[][];
698
+ protected constructor(typeString: DataTypeString, defaultValidator?: ValidateFn<Type | undefined>);
699
+ static unset(): Prop<undefined>;
700
+ static string<T extends string>(): Prop<T>;
701
+ static number<T extends number>(): Prop<T>;
702
+ static boolean<T extends boolean>(): Prop<T>;
703
+ static array<T = Array<any>>(): Prop<T[]>;
704
+ static any<T = any>(): Prop<T>;
705
+ static jsx<T extends ReactNode>(): Prop<T>;
706
+ static dimension<T extends Dim$1<DimModes$1>>(): Prop<T>;
707
+ static literal<T extends Readonly<string | number | boolean>>(value: T): Prop<T, true>;
708
+ static event(): Prop<EventFlow>;
709
+ static children(): Prop<any>;
710
+ static function<ARGS extends any[] = any[], RETURN = any>(implementation: EntityFunction<ARGS, RETURN>): FunctionProp<ARGS, RETURN>;
711
+ /**
712
+ * Creates an internal property that is not exposed in the entity's public interface,
713
+ * not tracked for reactivity/syncing, and not serialized. This is useful for
714
+ * storing implementation details like SuspensibleAPI instances that other
715
+ * properties can reference via `this._propertyName`.
716
+ */
717
+ static internal<T = any>(factory: () => T): Prop<T, true>;
718
+ /**
719
+ * Creates a composite property, which is a property that contains nested properties. For example,
720
+ * the following composite property:
721
+ *
722
+ * ```ts
723
+ * const prop = Prop.composite({
724
+ * name: Prop.string(),
725
+ * age: Prop.number(),
726
+ * });
727
+ * ```
728
+ *
729
+ * is equivalent to the following type:
730
+ *
731
+ * ```ts
732
+ * type Prop = {
733
+ * name: string;
734
+ * age: number;
735
+ * };
736
+ * ```
737
+ */
738
+ static composite<T extends CompositeInputs>(props: T): CompositeProp<T>;
739
+ /**
740
+ * Creates a record property, which is a record that maps string keys to the nestedproperties. For example,
741
+ * the following record property:
742
+ *
743
+ * ```ts
744
+ * const prop = Prop.record({
745
+ * name: Prop.string(),
746
+ * age: Prop.number(),
747
+ * });
748
+ * ```
749
+ *
750
+ * is equivalent to the following type:
751
+ *
752
+ * ```ts
753
+ * type Prop = Record<string, {
754
+ * name: string;
755
+ * age: number;
756
+ * }>;
757
+ * ```
758
+ */
759
+ static record<T extends CompositeInputs>(props: T): RecordProp<T>;
760
+ static union<SHARED extends Record<string, Prop<unknown, boolean>>, VARIANTS extends UnionVariant<SHARED>[] = UnionVariant<SHARED>[]>(props: {
761
+ shared: SHARED;
762
+ variants: VARIANTS;
763
+ }): UnionProp<SHARED, VARIANTS, VARIANTS extends readonly any[] ? { [I in keyof VARIANTS]: SHARED & VARIANTS[I] }[number] : never>;
764
+ readable(): this;
765
+ writable(): this;
766
+ readAndWrite(): this;
767
+ default(de: SingleInputProp<DataType>): Prop<Type, true>;
768
+ computed(computeFn: SingleInputProp<DataType>): Prop<Type, true>;
769
+ allowNestedBindings(): Prop<Type, true>;
770
+ contextual<TContext extends any[] | undefined = any[]>(computedArgs?: EvaluateOrValueComputedArgs): Prop<Type, _HasDefault, TContext>;
771
+ validate(validateFn: ((value: any) => ValidationResult<Type>) | ValidateFn<any>): this;
772
+ setName(name: string): this;
773
+ onEdit(callback: SideEffectCallback): this;
774
+ onEvaluate(callback: SideEffectCallback): this;
775
+ propertiesPanel<CT extends ControlType>(schema: Omit<Partial<PropertiesPanelDisplay<Type, CT>>, "isTriggerProperty">): this;
776
+ setDisplayProperty<K extends keyof PropertiesPanelDisplay<Type>>(property: K, value: PropertiesPanelDisplay<Type>[K]): this;
777
+ docs(docs: Exclude<PropertyForData<DataType>["docs"], undefined>): this;
778
+ /**
779
+ * Sets a custom type hint for documentation generation.
780
+ * This will override the auto-generated type in generated docs.
781
+ *
782
+ * @param typeHint The TypeScript type string to display in documentation
783
+ * @example .typeHint("CSSProperties")
784
+ * @example .typeHint("Record<string, { color: string; backgroundColor?: string }>")
785
+ */
786
+ typeHint(typeHint: string): this;
787
+ build(): ManagedProp<Type>;
788
+ toDefinition(entity?: Entity, scopedState?: ScopedState): WidgetPropertyDefinition<DataType> | undefined;
789
+ getRelations(): Relation[][];
790
+ dependsOn(relations: Relation[][]): this;
791
+ hasPropertiesPanelDisplay(): boolean;
792
+ get type(): DataTypeString;
793
+ get path(): string;
794
+ get onEditProperty(): SideEffectCallback | undefined;
795
+ get onEvaluateProperty(): SideEffectCallback | undefined;
796
+ }
797
+ type CompositeInputs = Record<string, Section> | Section | Record<string, Prop<unknown, boolean>>;
798
+ /**
799
+ * See {@link Prop.composite}
800
+ */
801
+ declare class CompositeProp<T extends CompositeInputs> extends Prop<unknown, boolean> {
802
+ typeString: "composite";
803
+ nestedProps: T;
804
+ constructor(props: T);
805
+ getProps(): T;
806
+ toDefinition(entity: Entity, scopedState: ScopedState): WidgetPropertyDefinition<DataType> | undefined;
807
+ propertiesPanelChildrenDisplayMode(): ({
808
+ type: "inline";
809
+ } | {
810
+ type: "popover";
811
+ title?: string;
812
+ panelIdPropertyName?: string;
813
+ titlePropertyName?: string;
814
+ addButton?: boolean;
815
+ }) | ((this: any, state: any, path: string) => ({
816
+ type: "inline";
817
+ } | {
818
+ type: "popover";
819
+ title?: string;
820
+ panelIdPropertyName?: string;
821
+ titlePropertyName?: string;
822
+ addButton?: boolean;
823
+ }) | undefined) | undefined;
824
+ typeHint(typeHint: string): this;
825
+ }
826
+ /**
827
+ * See {@link Prop.record}
828
+ */
829
+ declare class RecordProp<T extends CompositeInputs> extends Prop<unknown, boolean> {
830
+ typeString: "recordOf";
831
+ nestedProps: T;
832
+ constructor(props: T);
833
+ getProps(): T;
834
+ toDefinition(entity: Entity, scopedState: ScopedState): WidgetPropertyDefinition<DataType> | undefined;
835
+ typeHint(typeHint: string): this;
836
+ }
837
+ interface ActionPanel {
838
+ arguments?: Record<string, Prop<any>>;
839
+ }
840
+ declare class FunctionProp<ARGS extends any[] = any[], RETURN = any> extends Prop<EntityFunction<ARGS, RETURN>, true> {
841
+ typeString: "function";
842
+ private _actionPanel;
843
+ constructor(implementation: EntityFunction<ARGS, RETURN>);
844
+ actionPanel(panel?: ActionPanel): this;
845
+ getActionPanel(): ActionPanel | undefined;
846
+ hasActionPanel(): boolean;
847
+ }
848
+ type UnionVariant<SHARED extends Record<string, Prop<any>>> = { [K in keyof SHARED]: Prop<any> };
849
+ declare class UnionProp<SHARED extends Record<string, Prop<unknown, boolean>>, VARIANTS extends UnionVariant<SHARED>[] = UnionVariant<SHARED>[], _OUTPUT = (VARIANTS extends readonly any[] ? { [I in keyof VARIANTS]: SHARED & VARIANTS[I] }[number] : never)> extends Prop<any> {
850
+ typeString: "union";
851
+ shared: SHARED;
852
+ variants: VARIANTS;
853
+ constructor(shared: SHARED, variants: VARIANTS);
854
+ getProps(): SHARED & Record<string, Prop<any, false, undefined>>;
855
+ }
856
+ //#endregion
857
+ //#region src/lib/user-facing/components/container/props.d.ts
858
+ /**
859
+ * TODO:
860
+ * - make default and options dynamic for distribution and alignment
861
+ * - enable tooltip for radio group options
862
+ * - should not need default min/max width/height, probably just minHeight
863
+ * - the alignments props only show when explicitly set layout in code because of using Union
864
+ * - use default func once supported for composite props, apply it to padding, border, borderRadius, and backgroundColor. Otherwise, prop panel control will not show the correct value
865
+ */
866
+ declare const propertiesDefinition: {
867
+ contents: Section<Record<string, Prop<any, any, undefined>> & {
868
+ children: Prop<any, false, undefined>;
869
+ }>;
870
+ layout: Section<((Record<string, Prop<any, any, undefined>> & ((Omit<{
871
+ layout: Prop<ContainerLayout, true, undefined>;
872
+ }, "layout" | "verticalAlign" | "horizontalAlign"> & {
873
+ readonly verticalAlign: Prop<"top" | "center" | "bottom" | "space-between" | "space-around", true, undefined>;
874
+ readonly horizontalAlign: Prop<"center" | "stretch" | "left" | "right", true, undefined>;
875
+ readonly layout: Prop<"vertical", true, undefined>;
876
+ }) | (Omit<{
877
+ layout: Prop<ContainerLayout, true, undefined>;
878
+ }, "layout" | "verticalAlign" | "horizontalAlign"> & {
879
+ readonly verticalAlign: Prop<"top" | "center" | "bottom" | "stretch", true, undefined>;
880
+ readonly horizontalAlign: Prop<"center" | "space-between" | "space-around" | "left" | "right", true, undefined>;
881
+ readonly layout: Prop<"horizontal", true, undefined>;
882
+ }))) & {
883
+ shouldScrollContents: Prop<boolean, true, undefined>;
884
+ }) & {
885
+ isVisible: Prop<boolean, true, undefined>;
886
+ }>;
887
+ appearance: Section<Record<string, Prop<any, any, undefined>> & {
888
+ variant: Prop<ContainerVariant, true, undefined>;
889
+ backgroundColor: Prop<string, true, undefined>;
890
+ border: Prop<_superblocksteam_library_shared_types7.PerSideBorder, true, undefined>;
891
+ borderRadius: Prop<_superblocksteam_library_shared_types7.PerCornerBorderRadius, true, undefined>;
892
+ loading: Prop<boolean, true, undefined>;
893
+ }>;
894
+ };
895
+ //#endregion
896
+ //#region src/lib/user-facing/components/container/index.d.ts
897
+ type OptionalProps$1 = "backgroundColor" | "border" | "borderRadius" | "loading";
898
+ type ContainerProps<T> = Omit<InternalPropsWithOptional<typeof propertiesDefinition, OptionalProps$1>, "layout"> & {
899
+ layout: T;
900
+ };
901
+ type UnstyledContainerProps = {
902
+ layout: ContainerLayout;
903
+ style?: CSSProperties;
904
+ className?: string;
905
+ children?: ReactNode;
906
+ isVisible?: boolean;
907
+ spacing?: Dim$1<"px">;
908
+ columns?: number;
909
+ rowHeight?: Dim$1<"px">;
910
+ border?: PerSideBorder;
911
+ };
912
+ declare const UnstyledInternalContainer: (props: UnstyledContainerProps) => react_jsx_runtime0.JSX.Element;
913
+ /**
914
+ * TODO:
915
+ * - interaciton rect of children will show outside of container if overflow
916
+ * - move card style related defaultprops to props file and update dynamically when supported
917
+ * - the spacing prop is not same type between stack and grid, enable when we clean it up
918
+ * - consider border and padding for grid layout
919
+ * - border style are showing some control default value even actually undefined. styles are coming from container classes but ideally we should set them as default props?
920
+ * - move more props to inner layout component
921
+ */
922
+ declare const InternalContainer: <T extends ContainerLayout>(props: ContainerProps<T>) => react_jsx_runtime0.JSX.Element;
923
+ //#endregion
924
+ //#region src/lib/user-facing/components/page/index.d.ts
925
+ declare const Page: ChainableComponent<{
926
+ contents: Section<Record<string, Prop<any, any, undefined>> & {
927
+ children: Prop<any, false, undefined>;
928
+ }>;
929
+ layout: Section<Record<string, Prop<any, any, undefined>> & {
930
+ maxHeight?: Prop<_superblocksteam_library_shared0.Dim<_superblocksteam_library_shared0.DimModes>, false, undefined> | undefined;
931
+ minHeight?: Prop<_superblocksteam_library_shared0.Dim<_superblocksteam_library_shared0.DimModes>, false, undefined> | undefined;
932
+ maxWidth?: Prop<_superblocksteam_library_shared0.Dim<_superblocksteam_library_shared0.DimModes>, false, undefined> | undefined;
933
+ minWidth?: Prop<_superblocksteam_library_shared0.Dim<_superblocksteam_library_shared0.DimModes>, false, undefined> | undefined;
934
+ width: Prop<_superblocksteam_library_shared0.Dim<_superblocksteam_library_shared0.DimModes>, false, undefined>;
935
+ height: Prop<_superblocksteam_library_shared0.Dim<_superblocksteam_library_shared0.DimModes>, false, undefined>;
936
+ }>;
937
+ appearance: Section<Record<string, Prop<any, any, undefined>> & {
938
+ loading: Prop<boolean, true, undefined>;
939
+ }>;
940
+ events: Section<Record<string, Prop<any, any, undefined>> & {
941
+ onLoad: Prop<EventFlow, false, undefined>;
942
+ }>;
943
+ }, ExternalProps<{
944
+ contents: Section<Record<string, Prop<any, any, undefined>> & {
945
+ children: Prop<any, false, undefined>;
946
+ }>;
947
+ layout: Section<Record<string, Prop<any, any, undefined>> & {
948
+ maxHeight?: Prop<_superblocksteam_library_shared0.Dim<_superblocksteam_library_shared0.DimModes>, false, undefined> | undefined;
949
+ minHeight?: Prop<_superblocksteam_library_shared0.Dim<_superblocksteam_library_shared0.DimModes>, false, undefined> | undefined;
950
+ maxWidth?: Prop<_superblocksteam_library_shared0.Dim<_superblocksteam_library_shared0.DimModes>, false, undefined> | undefined;
951
+ minWidth?: Prop<_superblocksteam_library_shared0.Dim<_superblocksteam_library_shared0.DimModes>, false, undefined> | undefined;
952
+ width: Prop<_superblocksteam_library_shared0.Dim<_superblocksteam_library_shared0.DimModes>, false, undefined>;
953
+ height: Prop<_superblocksteam_library_shared0.Dim<_superblocksteam_library_shared0.DimModes>, false, undefined>;
954
+ }>;
955
+ appearance: Section<Record<string, Prop<any, any, undefined>> & {
956
+ loading: Prop<boolean, true, undefined>;
957
+ }>;
958
+ events: Section<Record<string, Prop<any, any, undefined>> & {
959
+ onLoad: Prop<EventFlow, false, undefined>;
960
+ }>;
961
+ }>>;
962
+ //#endregion
963
+ //#region src/lib/user-facing/components/app/index.d.ts
964
+ declare const App: ChainableComponent<{
965
+ contents: Section<Record<string, Prop<any, any, undefined>> & {
966
+ children: Prop<any, false, undefined>;
967
+ }>;
968
+ events: Section<Record<string, Prop<any, any, undefined>> & {
969
+ onLoad: Prop<EventFlow, false, undefined>;
970
+ }>;
971
+ }, ExternalProps<{
972
+ contents: Section<Record<string, Prop<any, any, undefined>> & {
973
+ children: Prop<any, false, undefined>;
974
+ }>;
975
+ events: Section<Record<string, Prop<any, any, undefined>> & {
976
+ onLoad: Prop<EventFlow, false, undefined>;
977
+ }>;
978
+ }>>;
979
+ //#endregion
980
+ //#region src/lib/user-facing/components/custom/register-custom-component.d.ts
981
+ declare const defaultSectionsTemplate: () => {
982
+ appearance: Section<Record<string, Prop<any, any, undefined>> & {
983
+ loading: Prop<boolean, true, undefined>;
984
+ className: Prop<string, false, undefined>;
985
+ }>;
986
+ layout: Section<Record<string, Prop<any, any, undefined>> & {
987
+ maxHeight?: Prop<_superblocksteam_library_shared0.Dim<_superblocksteam_library_shared0.DimModes>, false, undefined> | undefined;
988
+ minHeight?: Prop<_superblocksteam_library_shared0.Dim<_superblocksteam_library_shared0.DimModes>, false, undefined> | undefined;
989
+ maxWidth?: Prop<_superblocksteam_library_shared0.Dim<_superblocksteam_library_shared0.DimModes>, false, undefined> | undefined;
990
+ minWidth?: Prop<_superblocksteam_library_shared0.Dim<_superblocksteam_library_shared0.DimModes>, false, undefined> | undefined;
991
+ width: Prop<_superblocksteam_library_shared0.Dim<_superblocksteam_library_shared0.DimModes>, false, undefined>;
992
+ height: Prop<_superblocksteam_library_shared0.Dim<_superblocksteam_library_shared0.DimModes>, false, undefined>;
993
+ } & {
994
+ isVisible: Prop<boolean, true, undefined>;
995
+ }>;
996
+ };
997
+ type CustomComponentPropertiesDefinition = {
998
+ [key: string]: Prop<any>;
999
+ } | {
1000
+ [key: string]: Section<any>;
1001
+ };
1002
+ type StrictExtractProps<T, DefaultsBehavior extends "AlwaysOptional" | "RequiredIfDefault", IsEvaluated extends boolean> = { [K in keyof ExtractProps<T, DefaultsBehavior, IsEvaluated> as string extends K ? never : K]: ExtractProps<T, DefaultsBehavior, IsEvaluated>[K] };
1003
+ type WrappedEventProps<IP extends InternalProps<any>> = { [K in keyof IP]: IP[K] extends EventFlow | undefined ? () => Promise<void> : IP[K] };
1004
+ type SectionProps<PD extends Record<string, Prop<any>> | Record<string, Section<any>>> = PD extends Record<string, Prop<any>> ? Record<string, Section<any>> & ReturnType<typeof defaultSectionsTemplate> : PD;
1005
+ type CustomComponentProps<PD extends Record<string, Prop<any>> | Record<string, Section<any>>, SP extends SectionProps<PD> = SectionProps<PD>, IP extends InternalProps<SP> = InternalProps<SP>> = WrappedEventProps<IP>;
1006
+ type CustomComponentOutputProps<PD extends CustomComponentPropertiesDefinition> = StrictExtractProps<PD, "AlwaysOptional", false> & {
1007
+ bind?: WithBindingIdentifier;
1008
+ } & StrictExtractProps<ReturnType<typeof defaultSectionsTemplate>, "AlwaysOptional", false>;
1009
+ declare function registerComponent<PD extends CustomComponentPropertiesDefinition>(name: string, propertiesDefinition: PD, component: React$1.FC<CustomComponentProps<PD>>): ChainableComponent<any, CustomComponentOutputProps<PD>>;
1010
+ //#endregion
1011
+ //#region src/lib/user-facing/components/types.d.ts
1012
+ type UnknownOption = string | Record<string, unknown> | {
1013
+ label: string;
1014
+ value: string;
1015
+ };
1016
+ //#endregion
1017
+ //#region src/lib/user-facing/entities/variable/index.d.ts
1018
+ type Props$3<T = any> = {
1019
+ defaultValue: T;
1020
+ persistence?: StateVarPersistence;
1021
+ };
1022
+ declare const StateVar: (args: RawPropsToExternal<Props$3<any>>) => {
1023
+ [sbEntitySymbol]: true;
1024
+ type: "StateVar";
1025
+ defaultValue: any;
1026
+ value: any;
1027
+ persistence: _superblocksteam_library_shared_types7.ValueInputProp<StateVarPersistence, any[]> | undefined;
1028
+ } & _superblocksteam_library_shared_types7.AnonymousSbEntity;
1029
+ //#endregion
1030
+ //#region src/lib/user-facing/entities/timer/index.d.ts
1031
+ type Props$2 = {
1032
+ intervalMs?: number;
1033
+ startOnPageLoad?: boolean;
1034
+ onFire?: EventFlow;
1035
+ };
1036
+ declare const Timer: (args: RawPropsToExternal<Props$2>) => {
1037
+ [sbEntitySymbol]: true;
1038
+ type: "Timer";
1039
+ intervalMs: _superblocksteam_library_shared_types7.ValueInputProp<number, any[]> | undefined;
1040
+ startOnPageLoad: _superblocksteam_library_shared_types7.ValueInputProp<boolean, any[]> | undefined;
1041
+ onFire: _superblocksteam_library_shared_props1.Callback | EventFlow | undefined;
1042
+ } & _superblocksteam_library_shared_types7.AnonymousSbEntity;
1043
+ //#endregion
1044
+ //#region src/lib/user-facing/entities/api/index.d.ts
1045
+ type Props$1 = {
1046
+ onSuccess?: EventFlow;
1047
+ onError?: EventFlow;
1048
+ };
1049
+ declare const SbApi: (args: RawPropsToExternal<Props$1>) => {
1050
+ [sbEntitySymbol]: true;
1051
+ type: "SbApi";
1052
+ onSuccess: _superblocksteam_library_shared_props1.Callback | EventFlow | undefined;
1053
+ onError: _superblocksteam_library_shared_props1.Callback | EventFlow | undefined;
1054
+ } & _superblocksteam_library_shared_types7.AnonymousSbEntity;
1055
+ //#endregion
1056
+ //#region src/lib/user-facing/sb-provider.d.ts
1057
+ declare const SbProvider: ({
1058
+ name,
1059
+ settings,
1060
+ children
1061
+ }: {
1062
+ name: string;
1063
+ settings?: Record<string, any> & {
1064
+ theme?: Theme$1;
1065
+ themeOverrides?: Partial<GeneratedTheme>;
1066
+ };
1067
+ children?: React$1.ReactNode;
1068
+ }) => react_jsx_runtime0.JSX.Element;
1069
+ //#endregion
1070
+ //#region src/lib/user-facing/global-functions.d.ts
1071
+ declare function copyToClipboard(text: string, options?: {
1072
+ debug?: boolean;
1073
+ format?: string;
1074
+ }): void;
1075
+ declare function navigateTo(urlOrRoute: string, queryParams?: Record<string, any>, target?: string): boolean;
1076
+ declare function setQueryParams(queryParams?: Record<string, any>, preserveExistingQueryParams?: boolean): boolean;
1077
+ declare function download(data: any, fileName?: string, fileType?: string): void;
1078
+ declare function logoutIntegrations(): Promise<void>;
1079
+ //#endregion
1080
+ //#region src/lib/user-facing/properties-panel/mixins/loading.d.ts
1081
+ declare const loading: () => Prop<boolean, true, undefined>;
1082
+ //#endregion
1083
+ //#region src/lib/user-facing/properties-panel/mixins/layout-section.d.ts
1084
+ /**
1085
+ * Sets width default to `fill` if no default width config provided.
1086
+ * Sets height default to `fit` if no default height config provided.
1087
+ */
1088
+ declare const size: ({
1089
+ defaults,
1090
+ defaultsOnAdd,
1091
+ hasMinWidth,
1092
+ hasMaxWidth,
1093
+ hasMinHeight,
1094
+ hasMaxHeight,
1095
+ showMinWidth,
1096
+ showMinHeight,
1097
+ showMaxWidth,
1098
+ showMaxHeight,
1099
+ showWidth,
1100
+ showHeight
1101
+ }?: {
1102
+ defaults?: {
1103
+ minWidth?: Dim$1<DimModes$1>;
1104
+ maxWidth?: Dim$1<DimModes$1>;
1105
+ minHeight?: Dim$1<DimModes$1>;
1106
+ maxHeight?: Dim$1<DimModes$1>;
1107
+ width?: Dim$1<DimModes$1>;
1108
+ height?: Dim$1<DimModes$1>;
1109
+ };
1110
+ defaultsOnAdd?: {
1111
+ minWidth?: Dim$1<DimModes$1>;
1112
+ maxWidth?: Dim$1<DimModes$1>;
1113
+ minHeight?: Dim$1<DimModes$1>;
1114
+ maxHeight?: Dim$1<DimModes$1>;
1115
+ width?: Dim$1<DimModes$1>;
1116
+ height?: Dim$1<DimModes$1>;
1117
+ };
1118
+ hasMinWidth?: boolean;
1119
+ hasMaxWidth?: boolean;
1120
+ hasMinHeight?: boolean;
1121
+ hasMaxHeight?: boolean;
1122
+ showMinWidth?: (this: any, s: ScopedState) => boolean;
1123
+ showMinHeight?: (this: any, s: ScopedState) => boolean;
1124
+ showMaxWidth?: (this: any, s: ScopedState) => boolean;
1125
+ showMaxHeight?: (this: any, s: ScopedState) => boolean;
1126
+ showWidth?: (this: any, s: ScopedState) => boolean;
1127
+ showHeight?: (this: any, s: ScopedState) => boolean;
1128
+ }) => {
1129
+ maxHeight?: Prop<Dim$1<DimModes$1>, false, undefined> | undefined;
1130
+ minHeight?: Prop<Dim$1<DimModes$1>, false, undefined> | undefined;
1131
+ maxWidth?: Prop<Dim$1<DimModes$1>, false, undefined> | undefined;
1132
+ minWidth?: Prop<Dim$1<DimModes$1>, false, undefined> | undefined;
1133
+ width: Prop<Dim$1<DimModes$1>, false, undefined>;
1134
+ height: Prop<Dim$1<DimModes$1>, false, undefined>;
1135
+ };
1136
+ /** @deprecated Using it will override the defaults values defined in size() for width */
1137
+ declare const widthWithoutFit: () => {
1138
+ width: Prop<Dim$1<"px" | "columns" | "rows" | "fill" | "%">, false, undefined>;
1139
+ };
1140
+ declare const shouldScrollContents: (defaultValue?: boolean) => {
1141
+ shouldScrollContents: Prop<boolean, true, undefined>;
1142
+ };
1143
+ declare const visible: () => {
1144
+ isVisible: Prop<boolean, true, undefined>;
1145
+ };
1146
+ declare const margin: () => {
1147
+ margin: Prop<{
1148
+ top: Dim$1<"px">;
1149
+ bottom: Dim$1<"px">;
1150
+ left: Dim$1<"px">;
1151
+ right: Dim$1<"px">;
1152
+ } | undefined, true, undefined>;
1153
+ };
1154
+ declare const containerLayout: (sizeProps?: Record<string, Prop<any, any>>) => UnionProp<{
1155
+ layout: Prop<ContainerLayout, true, undefined>;
1156
+ }, [{
1157
+ readonly verticalAlign: Prop<"top" | "center" | "bottom" | "space-between" | "space-around", true, undefined>;
1158
+ readonly horizontalAlign: Prop<"center" | "stretch" | "left" | "right", true, undefined>;
1159
+ readonly layout: Prop<"vertical", true, undefined>;
1160
+ }, {
1161
+ readonly verticalAlign: Prop<"top" | "center" | "bottom" | "stretch", true, undefined>;
1162
+ readonly horizontalAlign: Prop<"center" | "space-between" | "space-around" | "left" | "right", true, undefined>;
1163
+ readonly layout: Prop<"horizontal", true, undefined>;
1164
+ }], ({
1165
+ layout: Prop<ContainerLayout, true, undefined>;
1166
+ } & {
1167
+ readonly verticalAlign: Prop<"top" | "center" | "bottom" | "space-between" | "space-around", true, undefined>;
1168
+ readonly horizontalAlign: Prop<"center" | "stretch" | "left" | "right", true, undefined>;
1169
+ readonly layout: Prop<"vertical", true, undefined>;
1170
+ }) | ({
1171
+ layout: Prop<ContainerLayout, true, undefined>;
1172
+ } & {
1173
+ readonly verticalAlign: Prop<"top" | "center" | "bottom" | "stretch", true, undefined>;
1174
+ readonly horizontalAlign: Prop<"center" | "space-between" | "space-around" | "left" | "right", true, undefined>;
1175
+ readonly layout: Prop<"horizontal", true, undefined>;
1176
+ })>;
1177
+ //#endregion
1178
+ //#region src/lib/user-facing/hooks/use-editor.d.ts
1179
+ type EditorFeatures = {
1180
+ /**
1181
+ * Whether drag and drop functionality is enabled
1182
+ */
1183
+ dragAndDrop: boolean;
1184
+ /**
1185
+ * Whether nudging elements with arrow keys is enabled
1186
+ */
1187
+ nudging: boolean;
1188
+ /**
1189
+ * The currently selected widget
1190
+ */
1191
+ selectWidget: SbInstance | null;
1192
+ };
1193
+ type FeatureState<T> = {
1194
+ value: T;
1195
+ set: (value: T) => void;
1196
+ };
1197
+ type RecordFeatureState<T> = { [K in keyof T]: FeatureState<T[K]> };
1198
+ type HookResult = {
1199
+ features: RecordFeatureState<EditorFeatures>;
1200
+ isEditing: boolean;
1201
+ };
1202
+ /**
1203
+ * Hook that provides access to editor-specific features.
1204
+ *
1205
+ * This hook allows you to control editor-only functionality on a per-widget basis.
1206
+ * Note: These features only work in editor mode and have no effect in deployed apps.
1207
+ *
1208
+ * @example
1209
+ * // Disable drag and drop for a widget
1210
+ * const { features } = useEditor();
1211
+ * features.dragAndDrop.set(false);
1212
+ *
1213
+ * // Disable nudging with arrow keys
1214
+ * features.nudging.set(false);
1215
+ */
1216
+ declare const useEditor: () => HookResult;
1217
+ //#endregion
1218
+ //#region src/lib/user-facing/hooks/use-popover-roots.d.ts
1219
+ declare const usePopoverRootElement: () => react0.MutableRefObject<HTMLElement | null>;
1220
+ //#endregion
1221
+ //#region src/lib/user-facing/state/types.d.ts
1222
+ type ScopeInstance<_Bindables extends Record<string, any>> = {
1223
+ entities: Record<string, WithBindingIdentifier>;
1224
+ initialEntities: Record<string, any>;
1225
+ scopeInfo: {
1226
+ scopeId: string;
1227
+ name: string;
1228
+ parentScopeId?: string;
1229
+ };
1230
+ };
1231
+ //#endregion
1232
+ //#region src/lib/internal-details/entities.d.ts
1233
+ declare function SbEvent({
1234
+ payload
1235
+ }: {
1236
+ payload: string;
1237
+ }): Omit<SbEvent$1, "name" | "id">;
1238
+ //#endregion
1239
+ //#region src/lib/internal-details/scope/scope.d.ts
1240
+ declare function registerScope<T>(Component: React$1.FC<T>, scopeDef: ScopeInstance<any>, options?: ScopeOptions): React$1.FC<React$1.JSX.IntrinsicAttributes & T>;
1241
+ //#endregion
1242
+ //#region src/lib/user-facing/components/page/register-page.d.ts
1243
+ declare function registerPage<T>(Component: React.FC<T>, scope: ScopeInstance<any>): react0.FC<react0.JSX.IntrinsicAttributes & T>;
1244
+ //#endregion
1245
+ //#region src/lib/user-facing/components/app/register-app.d.ts
1246
+ declare function registerApp<T, Bindables extends Record<string, any>>(Component: React$1.FC<T>, scope: ScopeInstance<Bindables>): React$1.FC<React$1.JSX.IntrinsicAttributes & T>;
1247
+ //#endregion
1248
+ //#region src/lib/user-facing/state/create-scope.d.ts
1249
+ type ScopeOptions$1 = {
1250
+ parentScopeId?: string;
1251
+ name: string;
1252
+ };
1253
+ declare function createScope<_Bindables extends Record<string, any>, SO extends ScopeOptions$1 = ScopeOptions$1>(getInitialEntities: ({
1254
+ entities
1255
+ }: {
1256
+ entities: Record<string, any>;
1257
+ }) => Record<string, any>,
1258
+ // TODO later, like variables, apis
1259
+ options: SO): ScopeInstance<_Bindables>;
1260
+ //#endregion
1261
+ //#region src/lib/internal-details/scope/types.d.ts
1262
+ declare const AppMode: {
1263
+ readonly EDIT: "EDIT";
1264
+ readonly PUBLISHED: "PUBLISHED";
1265
+ readonly PREVIEW: "PREVIEW";
1266
+ };
1267
+ type AppMode = (typeof AppMode)[keyof typeof AppMode];
1268
+ interface Global$1 {
1269
+ mode?: AppMode;
1270
+ user?: User;
1271
+ URL?: UrlState;
1272
+ groups?: Group[];
1273
+ deployedAt?: string;
1274
+ createdAt?: string;
1275
+ selectedProfileId?: string;
1276
+ profiles?: Profiles;
1277
+ routes?: {
1278
+ [id: string]: RouteDef;
1279
+ };
1280
+ currentRoute?: {
1281
+ routeDef: RouteDef;
1282
+ params: Record<string, string>;
1283
+ };
1284
+ app?: {
1285
+ id: string;
1286
+ name: string;
1287
+ };
1288
+ }
1289
+ type User = {
1290
+ name: string;
1291
+ email: string;
1292
+ id: string;
1293
+ groups: Group[];
1294
+ username: string;
1295
+ metadata: Record<string, unknown>;
1296
+ };
1297
+ type Group = {
1298
+ id: string;
1299
+ name: string;
1300
+ size: number;
1301
+ };
1302
+ type Profiles = {
1303
+ available: Profile[];
1304
+ selected?: Profile;
1305
+ default: Profile;
1306
+ };
1307
+ //#endregion
1308
+ //#region src/lib/internal-details/scope/global.d.ts
1309
+ type AppTheme = Theme$1;
1310
+ declare const Theme: UserAccessibleTheme;
1311
+ declare const Global: Global$1;
1312
+ declare const Embed: any;
1313
+ declare const Env: any;
1314
+ //#endregion
1315
+ //#region src/lib/user-facing/hooks/use-update-properties.d.ts
1316
+ declare function useUpdateProperties(): (props: Record<string, any>) => void;
1317
+ //#endregion
1318
+ //#region src/lib/user-facing/hooks/use-theme.d.ts
1319
+ declare const useTheme: () => {
1320
+ theme: _superblocksteam_library_shared_types7.UserAccessibleTheme;
1321
+ };
1322
+ //#endregion
1323
+ //#region src/lib/user-facing/state/computed.d.ts
1324
+ declare function computed<T = any>(fn: (...args: any[]) => T): ComputedProperty<T>;
1325
+ //#endregion
1326
+ //#region src/lib/user-facing/hooks/use-dialog-editing.d.ts
1327
+ /**
1328
+ * A hook to enable editing dialogs.
1329
+ *
1330
+ * Dialog: A window overlaid on either the primary window or another dialog window, rendering the content underneath inert.
1331
+ * E.g: Modal, Slideout, etc
1332
+ *
1333
+ * The hook expects an `isOpen` property on the component, but can be customized by passing a `isOpenPropertyName`.
1334
+ */
1335
+ /**
1336
+ * Hook that makes dialogs interact with the editor.
1337
+ * - enable/disable the dialog's interaction layer depending on the open state.
1338
+ * - select the dialog when it is open or any of the nested components are selected through the navigation side bar.
1339
+ *
1340
+ * Note: This hook only works in editor mode and has no effect in deployed apps.
1341
+ *
1342
+ * @example
1343
+ * useDialogEditing({
1344
+ * isOpen,
1345
+ * });
1346
+ */
1347
+ declare function useDialogEditing(props: {
1348
+ isOpen: boolean;
1349
+ isOpenPropertyName?: string;
1350
+ }): void;
1351
+ //#endregion
1352
+ //#region src/edit-mode/interaction-layer/interaction-layer.d.ts
1353
+ type RootType = "App" | "Page" | string;
1354
+ declare const InteractionLayer: ((props: {
1355
+ rootType: RootType;
1356
+ rootInstanceId: SbInstance;
1357
+ rootName?: string;
1358
+ }) => react_jsx_runtime0.JSX.Element | null) & {
1359
+ displayName: string;
1360
+ };
1361
+ //#endregion
1362
+ //#region src/lib/user-facing/component-base/droppable-container.d.ts
1363
+ declare function DroppableContainer({
1364
+ name,
1365
+ componentType,
1366
+ isOpen,
1367
+ children,
1368
+ layout,
1369
+ className,
1370
+ dropTargetRef
1371
+ }: {
1372
+ name: string;
1373
+ componentType: string;
1374
+ isOpen: boolean;
1375
+ children: React.ReactNode;
1376
+ layout: ContainerLayout;
1377
+ className: string;
1378
+ dropTargetRef?: React.Ref<HTMLElement>;
1379
+ }): react_jsx_runtime0.JSX.Element;
1380
+ //#endregion
1381
+ //#region src/lib/user-facing/constants.d.ts
1382
+ /**
1383
+ * The ID of the element used to target detached components (e.g: modals, slideouts) when they are opened in the app.
1384
+ */
1385
+ declare const PORTAL_ROOT_ID = "portal-root";
1386
+ //#endregion
1387
+ export { App, type AppTheme, type BindingIdentifier, type CreateChild, type CreationContext, type CustomComponentPropertiesDefinition, type CustomComponentProps, Dim, type DimModes, DroppableContainer, type EditorConfig, type EditorTemplate, type ElementPassthroughProps, Embed, Env, EventFlow, type FromChildToParentMessageTypes, type FromChildToParentMessageTypesMap, type FromParentToChildMessageTypes, type FromParentToChildMessageTypesMap, Global, INSTANCE_ID_ATTRIBUTE, InteractionLayer, InternalContainer, Link, SbProvider as MakeEditableWithSuperblocks, NO_CONTENT_ATTRIBUTE, Outlet, PORTAL_ROOT_ID, Page, Prop, Property, Section as PropertyPanelSection, PropsPanelCategory, SB, SbApi, SbEvent, SbProvider, StateVar, StateVarPersistence, Theme, Timer, TriggerStepType, type UnknownOption, UnstyledInternalContainer, computed, containerLayout as containerLayoutProps, copyToClipboard, createScope, download, generatePath, loading as loadingProp, logoutIntegrations, margin as marginProp, navigateTo, registerApp, registerComponent, registerPage, registerScope, setQueryParams, shouldScrollContents as shouldScrollContentsProps, size as sizeProp, useDialogEditing, useEditor, usePopoverRootElement, useTheme, useUpdateProperties, visible as visibleProp, widthWithoutFit as widthWithoutFitProp };
1388
+ //# sourceMappingURL=index.d.ts.map