@cratis/event-models 0.112.0 → 0.113.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 (179) hide show
  1. package/README.md +65 -0
  2. package/dist/Collections/suppliesBoardEditing.d.ts +2 -0
  3. package/dist/index.js +1347 -1347
  4. package/dist/index.js.map +1 -1
  5. package/dist/screen-editor/BlueprintPreview/blueprintPreviewCatalog.d.ts +57 -0
  6. package/dist/screen-editor/BlueprintPreview/initialPackageSelection.d.ts +18 -0
  7. package/dist/screen-editor/IconLibraries/Lucide/index.d.ts +4 -0
  8. package/dist/screen-editor/IconLibraries/Lucide/lucideAdapter.d.ts +2 -0
  9. package/dist/screen-editor/IconLibraries/Lucide/lucideCatalog.d.ts +2 -0
  10. package/dist/screen-editor/IconLibraries/Lucide/lucideManifest.d.ts +3 -0
  11. package/dist/screen-editor/IconLibraries/Lucide/lucidePackage.d.ts +2 -0
  12. package/dist/screen-editor/Icons/IconPickerCatalogState.d.ts +5 -0
  13. package/dist/screen-editor/Icons/IconPropertyField.d.ts +25 -0
  14. package/dist/screen-editor/Icons/IconPropertyFieldStrings.d.ts +8 -0
  15. package/dist/screen-editor/Icons/IconValueProblem.d.ts +7 -0
  16. package/dist/screen-editor/Icons/UseIconPickerCatalogResult.d.ts +7 -0
  17. package/dist/screen-editor/Icons/describeIconValueProblem.d.ts +3 -0
  18. package/dist/screen-editor/Icons/diagnoseIconValue.d.ts +5 -0
  19. package/dist/screen-editor/Icons/effectiveIconCatalogOf.d.ts +3 -0
  20. package/dist/screen-editor/Icons/iconCatalogSourcesOf.d.ts +3 -0
  21. package/dist/screen-editor/Icons/toIconPickerCatalog.d.ts +5 -0
  22. package/dist/screen-editor/Icons/useIconPickerCatalog.d.ts +4 -0
  23. package/dist/screen-editor/ScreenEditor/Actions/ActionModel.d.ts +7 -0
  24. package/dist/screen-editor/ScreenEditor/Actions/ActionPresentation.d.ts +5 -0
  25. package/dist/screen-editor/ScreenEditor/Actions/StateChangeSlice.d.ts +10 -0
  26. package/dist/screen-editor/ScreenEditor/Actions/actionBehavior.d.ts +8 -0
  27. package/dist/screen-editor/ScreenEditor/Actions/diagnoseAction.d.ts +14 -0
  28. package/dist/screen-editor/ScreenEditor/Binding/availableSourcesFor.d.ts +2 -0
  29. package/dist/screen-editor/ScreenEditor/Binding/bindingScopeTypes.d.ts +2 -0
  30. package/dist/screen-editor/ScreenEditor/Binding/previewState.d.ts +17 -0
  31. package/dist/screen-editor/ScreenEditor/Binding/queryBindingModel.d.ts +8 -0
  32. package/dist/screen-editor/ScreenEditor/Binding/settleBinding.d.ts +7 -0
  33. package/dist/screen-editor/ScreenEditor/Binding/toSceneCandidates.d.ts +22 -0
  34. package/dist/screen-editor/ScreenEditor/Collections/orderedItems.d.ts +11 -0
  35. package/dist/screen-editor/ScreenEditor/Defaults/defaultLayoutIcons.d.ts +2 -0
  36. package/dist/screen-editor/ScreenEditor/Defaults/defaultLayoutLabels.d.ts +2 -0
  37. package/dist/screen-editor/ScreenEditor/Defaults/defaultPaletteIcons.d.ts +2 -0
  38. package/dist/screen-editor/ScreenEditor/Defaults/defaultPaletteSources.d.ts +2 -0
  39. package/dist/screen-editor/ScreenEditor/Defaults/defaultScreenEditorStrings.d.ts +2 -0
  40. package/dist/screen-editor/ScreenEditor/Document/createExternalComponent.d.ts +2 -0
  41. package/dist/screen-editor/ScreenEditor/Document/createPanel.d.ts +6 -0
  42. package/dist/screen-editor/ScreenEditor/Document/frameworkElement.d.ts +21 -0
  43. package/dist/screen-editor/ScreenEditor/Document/readSceneDocument.d.ts +15 -0
  44. package/dist/screen-editor/ScreenEditor/Document/studioScreen.d.ts +10 -0
  45. package/dist/screen-editor/ScreenEditor/DropRegions/DropRegion.d.ts +12 -0
  46. package/dist/screen-editor/ScreenEditor/DropRegions/DropRegionKind.d.ts +4 -0
  47. package/dist/screen-editor/ScreenEditor/DropRegions/InsertionAxis.d.ts +5 -0
  48. package/dist/screen-editor/ScreenEditor/DropRegions/computeDropRegions.d.ts +6 -0
  49. package/dist/screen-editor/ScreenEditor/Exposure/exposureEdits.d.ts +10 -0
  50. package/dist/screen-editor/ScreenEditor/Host/DefaultPaletteHost.d.ts +6 -0
  51. package/dist/screen-editor/ScreenEditor/Host/ScreenEditorBoundary.d.ts +8 -0
  52. package/dist/screen-editor/ScreenEditor/Host/ScreenEditorControlProviders.d.ts +7 -0
  53. package/dist/screen-editor/ScreenEditor/Host/ScreenEditorController.d.ts +41 -0
  54. package/dist/screen-editor/ScreenEditor/Host/ScreenEditorFileUpload.d.ts +5 -0
  55. package/dist/screen-editor/ScreenEditor/Host/ScreenEditorHost.d.ts +36 -0
  56. package/dist/screen-editor/ScreenEditor/Host/ScreenEditorOverlay.d.ts +24 -0
  57. package/dist/screen-editor/ScreenEditor/Host/ScreenEditorPrimeReactProvider.d.ts +3 -0
  58. package/dist/screen-editor/ScreenEditor/Host/ScreenEditorWindow.d.ts +28 -0
  59. package/dist/screen-editor/ScreenEditor/Host/ScreenEditorWorkspace.d.ts +21 -0
  60. package/dist/screen-editor/ScreenEditor/Host/UnreadableScreen.d.ts +8 -0
  61. package/dist/screen-editor/ScreenEditor/Host/WindowTitleBar.d.ts +5 -0
  62. package/dist/screen-editor/ScreenEditor/Host/createScreenEditorEnvironment.d.ts +16 -0
  63. package/dist/screen-editor/ScreenEditor/Host/nextElementId.d.ts +1 -0
  64. package/dist/screen-editor/ScreenEditor/Host/openSubject.d.ts +14 -0
  65. package/dist/screen-editor/ScreenEditor/Host/useScreenEditor.d.ts +4 -0
  66. package/dist/screen-editor/ScreenEditor/Inspector/ActionEditor.d.ts +13 -0
  67. package/dist/screen-editor/ScreenEditor/Inspector/DiagnosticList.d.ts +6 -0
  68. package/dist/screen-editor/ScreenEditor/Inspector/ExposureSection.d.ts +11 -0
  69. package/dist/screen-editor/ScreenEditor/Inspector/IconProperties.d.ts +14 -0
  70. package/dist/screen-editor/ScreenEditor/Inspector/InspectorTab.d.ts +4 -0
  71. package/dist/screen-editor/ScreenEditor/Inspector/LayoutTypeSection.d.ts +10 -0
  72. package/dist/screen-editor/ScreenEditor/Inspector/OwnershipBadge.d.ts +6 -0
  73. package/dist/screen-editor/ScreenEditor/Inspector/PropertiesPanel.d.ts +17 -0
  74. package/dist/screen-editor/ScreenEditor/Inspector/QueryBindingEditor.d.ts +12 -0
  75. package/dist/screen-editor/ScreenEditor/Inspector/ScreenEditorStrings.d.ts +106 -0
  76. package/dist/screen-editor/ScreenEditor/Inspector/ScreenInspector.d.ts +13 -0
  77. package/dist/screen-editor/ScreenEditor/Inspector/StructureTree.d.ts +13 -0
  78. package/dist/screen-editor/ScreenEditor/Inspector/StructureTreeRow.d.ts +21 -0
  79. package/dist/screen-editor/ScreenEditor/Inspector/ViewportControls.d.ts +9 -0
  80. package/dist/screen-editor/ScreenEditor/Inspector/pointerDropZone.d.ts +2 -0
  81. package/dist/screen-editor/ScreenEditor/Layouts/LayoutCatalogEntry.d.ts +11 -0
  82. package/dist/screen-editor/ScreenEditor/Layouts/LayoutItem.d.ts +8 -0
  83. package/dist/screen-editor/ScreenEditor/Layouts/PanelConstruct.d.ts +7 -0
  84. package/dist/screen-editor/ScreenEditor/Layouts/layoutCatalog.d.ts +2 -0
  85. package/dist/screen-editor/ScreenEditor/Layouts/layoutChange.d.ts +13 -0
  86. package/dist/screen-editor/ScreenEditor/Layouts/toLayoutContainerDescriptors.d.ts +9 -0
  87. package/dist/screen-editor/ScreenEditor/Palette/PaletteEntry.d.ts +10 -0
  88. package/dist/screen-editor/ScreenEditor/Palette/buildPalette.d.ts +22 -0
  89. package/dist/screen-editor/ScreenEditor/Palette/insertedComponentName.d.ts +2 -0
  90. package/dist/screen-editor/ScreenEditor/Properties/allowedIconChoices.d.ts +3 -0
  91. package/dist/screen-editor/ScreenEditor/Properties/choiceKeys.d.ts +6 -0
  92. package/dist/screen-editor/ScreenEditor/Properties/iconDiagnostics.d.ts +7 -0
  93. package/dist/screen-editor/ScreenEditor/Properties/propertyEdits.d.ts +3 -0
  94. package/dist/screen-editor/ScreenEditor/Properties/toPropertyGroups.d.ts +9 -0
  95. package/dist/screen-editor/ScreenEditor/PropertyEditors/Json/JsonDraftKind.d.ts +6 -0
  96. package/dist/screen-editor/ScreenEditor/PropertyEditors/Json/JsonDraftOutcome.d.ts +13 -0
  97. package/dist/screen-editor/ScreenEditor/PropertyEditors/Json/JsonDraftState.d.ts +4 -0
  98. package/dist/screen-editor/ScreenEditor/PropertyEditors/Json/JsonProblem.d.ts +5 -0
  99. package/dist/screen-editor/ScreenEditor/PropertyEditors/Json/JsonProblemKind.d.ts +6 -0
  100. package/dist/screen-editor/ScreenEditor/PropertyEditors/Json/JsonProperties.d.ts +9 -0
  101. package/dist/screen-editor/ScreenEditor/PropertyEditors/Json/JsonPropertyField.d.ts +13 -0
  102. package/dist/screen-editor/ScreenEditor/PropertyEditors/Json/JsonPropertyFieldStrings.d.ts +9 -0
  103. package/dist/screen-editor/ScreenEditor/PropertyEditors/Json/JsonReading.d.ts +8 -0
  104. package/dist/screen-editor/ScreenEditor/PropertyEditors/Json/defaultJsonPropertyFieldStrings.d.ts +2 -0
  105. package/dist/screen-editor/ScreenEditor/PropertyEditors/Json/describeJsonProblem.d.ts +3 -0
  106. package/dist/screen-editor/ScreenEditor/PropertyEditors/Json/formatJson.d.ts +1 -0
  107. package/dist/screen-editor/ScreenEditor/PropertyEditors/Json/isJsonValueType.d.ts +4 -0
  108. package/dist/screen-editor/ScreenEditor/PropertyEditors/Json/jsonDraft.d.ts +11 -0
  109. package/dist/screen-editor/ScreenEditor/PropertyEditors/Json/numberLiteralsOf.d.ts +1 -0
  110. package/dist/screen-editor/ScreenEditor/PropertyEditors/Json/readJson.d.ts +2 -0
  111. package/dist/screen-editor/ScreenEditor/PropertyEditors/Json/sameJson.d.ts +1 -0
  112. package/dist/screen-editor/ScreenEditor/PropertyEditors/Json/useJsonDraft.d.ts +9 -0
  113. package/dist/screen-editor/ScreenEditor/PrototypeProjection/LegacyExtras.d.ts +11 -0
  114. package/dist/screen-editor/ScreenEditor/PrototypeProjection/applyLegacyState.d.ts +3 -0
  115. package/dist/screen-editor/ScreenEditor/PrototypeProjection/layoutContainerItems.d.ts +4 -0
  116. package/dist/screen-editor/ScreenEditor/PrototypeProjection/legacyPlacement.d.ts +5 -0
  117. package/dist/screen-editor/ScreenEditor/PrototypeProjection/projectToLegacyElements.d.ts +3 -0
  118. package/dist/screen-editor/ScreenEditor/PrototypeProjection/sceneComponentName.d.ts +3 -0
  119. package/dist/screen-editor/ScreenEditor/PrototypeProjection/withoutNulls.d.ts +1 -0
  120. package/dist/screen-editor/ScreenEditor/Runtime/screenEditorRuntime.d.ts +17 -0
  121. package/dist/screen-editor/ScreenEditor/Runtime/screenEditorRuntimeForProfile.d.ts +4 -0
  122. package/dist/screen-editor/ScreenEditor/Runtime/serverPrototypeTypes.d.ts +3 -0
  123. package/dist/screen-editor/ScreenEditor/Runtime/useLoadedIconCatalog.d.ts +2 -0
  124. package/dist/screen-editor/ScreenEditor/Runtime/withActionPresentation.d.ts +2 -0
  125. package/dist/screen-editor/ScreenEditor/Runtime/withPlacementProperties.d.ts +3 -0
  126. package/dist/screen-editor/ScreenEditor/Selection/panelLayoutItem.d.ts +3 -0
  127. package/dist/screen-editor/ScreenEditor/Selection/sceneStructureAdapter.d.ts +4 -0
  128. package/dist/screen-editor/ScreenEditor/Selection/sceneTree.d.ts +4 -0
  129. package/dist/screen-editor/ScreenEditor/Selection/surfaceArrangementOfRoot.d.ts +3 -0
  130. package/dist/screen-editor/ScreenEditor/Selection/surfaceLayoutOfRoot.d.ts +3 -0
  131. package/dist/screen-editor/ScreenEditor/Selection/toSceneEdits.d.ts +5 -0
  132. package/dist/screen-editor/ScreenEditor/Session/EditSession.d.ts +25 -0
  133. package/dist/screen-editor/ScreenEditor/Session/SessionCell.d.ts +8 -0
  134. package/dist/screen-editor/ScreenEditor/Structure/DropZone.d.ts +5 -0
  135. package/dist/screen-editor/ScreenEditor/Structure/MoveIntent.d.ts +6 -0
  136. package/dist/screen-editor/ScreenEditor/Structure/Ownership.d.ts +5 -0
  137. package/dist/screen-editor/ScreenEditor/Structure/OwnershipResolver.d.ts +2 -0
  138. package/dist/screen-editor/ScreenEditor/Structure/StructureEdit.d.ts +5 -0
  139. package/dist/screen-editor/ScreenEditor/Structure/StructureEditRejection.d.ts +9 -0
  140. package/dist/screen-editor/ScreenEditor/Structure/StructureLocation.d.ts +6 -0
  141. package/dist/screen-editor/ScreenEditor/Structure/StructureOperation.d.ts +9 -0
  142. package/dist/screen-editor/ScreenEditor/Structure/StructureRow.d.ts +8 -0
  143. package/dist/screen-editor/ScreenEditor/Structure/StructureTreeAdapter.d.ts +11 -0
  144. package/dist/screen-editor/ScreenEditor/Structure/findStructureNode.d.ts +4 -0
  145. package/dist/screen-editor/ScreenEditor/Structure/flattenStructure.d.ts +3 -0
  146. package/dist/screen-editor/ScreenEditor/Structure/isOperationPermitted.d.ts +3 -0
  147. package/dist/screen-editor/ScreenEditor/Structure/resolveMoveIntentEdit.d.ts +4 -0
  148. package/dist/screen-editor/ScreenEditor/Structure/resolveTreeDrop.d.ts +4 -0
  149. package/dist/screen-editor/ScreenEditor/Structure/validateStructureEdit.d.ts +4 -0
  150. package/dist/screen-editor/ScreenEditor/Surface/ScreenSurface.d.ts +11 -0
  151. package/dist/screen-editor/ScreenEditor/Surface/dragPayload.d.ts +7 -0
  152. package/dist/screen-editor/ScreenEditor/Surface/dropRegionRects.d.ts +14 -0
  153. package/dist/screen-editor/ScreenEditor/Surface/sameMeasurement.d.ts +5 -0
  154. package/dist/screen-editor/ScreenEditor/Templates/composeEditorScreen.d.ts +8 -0
  155. package/dist/screen-editor/ScreenEditor/Templates/templateProvenance.d.ts +6 -0
  156. package/dist/screen-editor/ScreenEditor/Viewport/ViewportPreset.d.ts +4 -0
  157. package/dist/screen-editor/ScreenEditor/Viewport/ViewportSize.d.ts +4 -0
  158. package/dist/screen-editor/ScreenEditor/Viewport/detectViewportPreset.d.ts +3 -0
  159. package/dist/screen-editor/ScreenEditor/Viewport/resolveViewportSizeClass.d.ts +3 -0
  160. package/dist/screen-editor/ScreenEditor/Viewport/toWindowSize.d.ts +3 -0
  161. package/dist/screen-editor/ScreenEditor/Viewport/viewportPresets.d.ts +4 -0
  162. package/dist/screen-editor/ScreenEditor/index.d.ts +31 -0
  163. package/dist/screen-editor/UiProfile/PackageInclusion.d.ts +9 -0
  164. package/dist/screen-editor/UiProfile/PersistedUiProfile.d.ts +19 -0
  165. package/dist/screen-editor/UiProfile/ResolvedPackageEntry.d.ts +19 -0
  166. package/dist/screen-editor/UiProfile/ResolvedUiProfile.d.ts +20 -0
  167. package/dist/screen-editor/UiProfile/UiProfileSettings.d.ts +29 -0
  168. package/dist/screen-editor/UiProfile/defaultUiProfileSettings.d.ts +13 -0
  169. package/dist/screen-editor/UiProfile/explicitPackageNames.d.ts +10 -0
  170. package/dist/screen-editor/UiProfile/formatMessage.d.ts +11 -0
  171. package/dist/screen-editor/UiProfile/resolveUiProfile.d.ts +18 -0
  172. package/dist/screen-editor/UiProfile/shellLayoutOf.d.ts +10 -0
  173. package/dist/screen-editor/UiProfile/toSceneUiProfile.d.ts +12 -0
  174. package/dist/screen-editor/UiProfileDesigner/filterCompatibleThemes.d.ts +12 -0
  175. package/dist/screen-editor/UiProfileDesigner/findComponentCollisions.d.ts +15 -0
  176. package/dist/screen-editor/catalog-CZx3FR-E.js +4 -0
  177. package/dist/screen-editor/index.js +3327 -0
  178. package/dist/screen-editor/screen-editor.css +2 -0
  179. package/package.json +99 -13
@@ -0,0 +1,28 @@
1
+ import type { ScreenEditorStrings } from '../Inspector/ScreenEditorStrings';
2
+ import type { ScreenEditorController } from './ScreenEditorController';
3
+ import type { ScreenEditorEnvironment } from './ScreenEditorHost';
4
+ export interface ScreenEditorWindowState {
5
+ size: {
6
+ width: number;
7
+ height: number;
8
+ };
9
+ setSize: (size: {
10
+ width: number;
11
+ height: number;
12
+ }) => void;
13
+ isInspectorOpen: boolean;
14
+ toggleInspector: () => void;
15
+ available: {
16
+ width: number;
17
+ height: number;
18
+ };
19
+ }
20
+ export interface ScreenEditorWindowProps {
21
+ controller: ScreenEditorController;
22
+ environment: ScreenEditorEnvironment;
23
+ strings: ScreenEditorStrings;
24
+ window: ScreenEditorWindowState;
25
+ deviceFrame?: boolean;
26
+ saveFailure?: string;
27
+ }
28
+ export declare const ScreenEditorWindow: ({ controller, environment, strings, window: state, deviceFrame, saveFailure }: ScreenEditorWindowProps) => import("react").JSX.Element;
@@ -0,0 +1,21 @@
1
+ import { type ReactNode } from 'react';
2
+ import type { ScreenEditorStrings } from '../Inspector/ScreenEditorStrings';
3
+ import { type PaletteIcons, type PaletteSource } from '../Palette/buildPalette';
4
+ import type { LayoutLabels } from '../Layouts/toLayoutContainerDescriptors';
5
+ import type { ScreenEditorEnvironment, ScreenEditorResult, ScreenEditorSubject } from './ScreenEditorHost';
6
+ export interface ScreenEditorWorkspaceProps {
7
+ subject: ScreenEditorSubject;
8
+ environment: ScreenEditorEnvironment;
9
+ strings: ScreenEditorStrings;
10
+ layoutLabels: LayoutLabels;
11
+ icons: PaletteIcons;
12
+ paletteSources: readonly PaletteSource[];
13
+ initialSize?: {
14
+ width: number;
15
+ height: number;
16
+ };
17
+ onChange?: (result: ScreenEditorResult) => void;
18
+ renderPaletteHost?: (palette: ReactNode) => ReactNode;
19
+ onDismiss?: () => void;
20
+ }
21
+ export declare const ScreenEditorWorkspace: (props: ScreenEditorWorkspaceProps) => import("react").JSX.Element;
@@ -0,0 +1,8 @@
1
+ import type { SceneDocumentProblem } from '../Document/readSceneDocument';
2
+ import type { ScreenEditorStrings } from '../Inspector/ScreenEditorStrings';
3
+ export interface UnreadableScreenProps {
4
+ problem: SceneDocumentProblem;
5
+ strings: ScreenEditorStrings;
6
+ onClose?: () => void;
7
+ }
8
+ export declare const UnreadableScreen: ({ problem, strings, onClose }: UnreadableScreenProps) => import("react").JSX.Element;
@@ -0,0 +1,5 @@
1
+ import type { ReactNode } from 'react';
2
+ export interface WindowTitleBarProps {
3
+ controls: ReactNode;
4
+ }
5
+ export declare const WindowTitleBar: ({ controls }: WindowTitleBarProps) => import("react").JSX.Element;
@@ -0,0 +1,16 @@
1
+ import type { ConfigurationDestination } from '@cratis/components/ConfigurationEditor';
2
+ import type { ScreenEditorRuntime } from '../Runtime/screenEditorRuntime';
3
+ import type { QuillLoader } from '@cratis/scene.primereact';
4
+ import type { StateChangeSlice } from '../Actions/StateChangeSlice';
5
+ import type { ScreenEditorFileUpload } from './ScreenEditorFileUpload';
6
+ import { type DiscoveredQueryCandidate } from '../Binding/toSceneCandidates';
7
+ import type { ScreenEditorEnvironment } from './ScreenEditorHost';
8
+ export interface ScreenEditorEnvironmentSource {
9
+ runtime: ScreenEditorRuntime;
10
+ queryCandidates?: readonly DiscoveredQueryCandidate[];
11
+ stateChangeSlices?: readonly StateChangeSlice[];
12
+ destinations?: readonly ConfigurationDestination[];
13
+ richText?: QuillLoader | false;
14
+ fileUpload?: ScreenEditorFileUpload;
15
+ }
16
+ export declare function createScreenEditorEnvironment(source: ScreenEditorEnvironmentSource): ScreenEditorEnvironment;
@@ -0,0 +1 @@
1
+ export declare const nextElementId: () => string;
@@ -0,0 +1,14 @@
1
+ import type { SceneDocument } from '@cratis/scene.model';
2
+ import { type SceneDocumentProblem } from '../Document/readSceneDocument';
3
+ import type { ScreenEditorSubject } from './ScreenEditorHost';
4
+ export interface OpenedSubject {
5
+ document: SceneDocument;
6
+ }
7
+ export type OpenResult = {
8
+ opened: true;
9
+ subject: OpenedSubject;
10
+ } | {
11
+ opened: false;
12
+ problem: SceneDocumentProblem;
13
+ };
14
+ export declare function openSubject(subject: ScreenEditorSubject): OpenResult;
@@ -0,0 +1,4 @@
1
+ import type { ScreenEditorController } from './ScreenEditorController';
2
+ import type { OpenedSubject } from './openSubject';
3
+ import type { ScreenEditorEnvironment } from './ScreenEditorHost';
4
+ export declare function useScreenEditor(opened: OpenedSubject, authoringTemplate: string | undefined, environment: ScreenEditorEnvironment): ScreenEditorController;
@@ -0,0 +1,13 @@
1
+ import type { ActionModel } from '../Actions/ActionModel';
2
+ import type { StateChangeSlice } from '../Actions/StateChangeSlice';
3
+ import type { ScreenEditorStrings } from './ScreenEditorStrings';
4
+ export interface ActionEditorProps {
5
+ action?: ActionModel;
6
+ slices: readonly StateChangeSlice[];
7
+ sources: readonly string[];
8
+ strings: ScreenEditorStrings;
9
+ disabled: boolean;
10
+ suggestSource: (inputName: string) => string | undefined;
11
+ onChange: (action: ActionModel | undefined) => void;
12
+ }
13
+ export declare const ActionEditor: ({ action, slices, sources, strings, disabled, suggestSource, onChange }: ActionEditorProps) => import("react").JSX.Element;
@@ -0,0 +1,6 @@
1
+ import type { SceneDiagnostic } from '@cratis/scene.model';
2
+ export interface DiagnosticListProps {
3
+ diagnostics: readonly SceneDiagnostic[];
4
+ label: string;
5
+ }
6
+ export declare const DiagnosticList: ({ diagnostics, label }: DiagnosticListProps) => import("react").JSX.Element | null;
@@ -0,0 +1,11 @@
1
+ import type { NodeInspection } from '@cratis/scene.model';
2
+ import type { ScreenEditorController } from '../Host/ScreenEditorController';
3
+ import type { ScreenEditorStrings } from './ScreenEditorStrings';
4
+ export interface ExposureSectionProps {
5
+ inspection: NodeInspection;
6
+ componentId: string;
7
+ controller: ScreenEditorController;
8
+ strings: ScreenEditorStrings;
9
+ authoringTemplate?: string;
10
+ }
11
+ export declare const ExposureSection: ({ inspection, componentId, controller, strings, authoringTemplate }: ExposureSectionProps) => import("react").JSX.Element | null;
@@ -0,0 +1,14 @@
1
+ import type { InspectedProperty, SceneDiagnostic } from '@cratis/scene.model';
2
+ import type { EffectiveIconCatalog } from '@cratis/scene.engine';
3
+ import type { IconAdapterRegistry } from '@cratis/scene.react';
4
+ import type { ScreenEditorController } from '../Host/ScreenEditorController';
5
+ import type { ScreenEditorStrings } from './ScreenEditorStrings';
6
+ export interface IconPropertiesProps {
7
+ properties: readonly InspectedProperty[];
8
+ controller: ScreenEditorController;
9
+ catalog: EffectiveIconCatalog;
10
+ adapters: IconAdapterRegistry;
11
+ diagnostics: readonly SceneDiagnostic[];
12
+ strings: ScreenEditorStrings;
13
+ }
14
+ export declare const IconProperties: ({ properties, controller, catalog, adapters, diagnostics, strings }: IconPropertiesProps) => import("react").JSX.Element | null;
@@ -0,0 +1,4 @@
1
+ export declare enum InspectorTab {
2
+ Properties = "properties",
3
+ Structure = "structure"
4
+ }
@@ -0,0 +1,10 @@
1
+ import type { NodeInspection } from '@cratis/scene.model';
2
+ import type { ScreenEditorController } from '../Host/ScreenEditorController';
3
+ import type { ScreenEditorStrings } from './ScreenEditorStrings';
4
+ export interface LayoutTypeSectionProps {
5
+ inspection: NodeInspection;
6
+ controller: ScreenEditorController;
7
+ strings: ScreenEditorStrings;
8
+ disabled: boolean;
9
+ }
10
+ export declare const LayoutTypeSection: ({ inspection, controller, strings, disabled }: LayoutTypeSectionProps) => import("react").JSX.Element | null;
@@ -0,0 +1,6 @@
1
+ import { Ownership } from '../Structure/Ownership';
2
+ export interface OwnershipBadgeProps {
3
+ ownership: Ownership;
4
+ label: string;
5
+ }
6
+ export declare const OwnershipBadge: ({ ownership, label }: OwnershipBadgeProps) => import("react").JSX.Element | null;
@@ -0,0 +1,17 @@
1
+ import { type ChangeLayoutTypeEdit, type NodeInspection } from '@cratis/scene.model';
2
+ import { type SceneOrderedItem } from '../Collections/orderedItems';
3
+ import type { ScreenEditorController } from '../Host/ScreenEditorController';
4
+ import type { ScreenEditorEnvironment } from '../Host/ScreenEditorHost';
5
+ import { isSimpleProperty } from '../Properties/toPropertyGroups';
6
+ import type { ScreenEditorStrings } from './ScreenEditorStrings';
7
+ import type { Ownership } from '../Structure/Ownership';
8
+ export interface PropertiesPanelProps {
9
+ controller: ScreenEditorController;
10
+ environment: ScreenEditorEnvironment;
11
+ strings: ScreenEditorStrings;
12
+ ownership: Ownership | undefined;
13
+ authoringTemplate?: string;
14
+ }
15
+ export declare const PropertiesPanel: ({ controller, environment, strings, ownership, authoringTemplate }: PropertiesPanelProps) => import("react").JSX.Element;
16
+ export type { NodeInspection, ChangeLayoutTypeEdit, SceneOrderedItem };
17
+ export { isSimpleProperty };
@@ -0,0 +1,12 @@
1
+ import type { InspectedProperty, QueryBinding, QueryCandidate } from '@cratis/scene.model';
2
+ import type { BindingTypeScope } from '@cratis/scene.engine';
3
+ import type { ScreenEditorStrings } from './ScreenEditorStrings';
4
+ export interface QueryBindingEditorProps {
5
+ property: InspectedProperty;
6
+ candidates: readonly QueryCandidate[];
7
+ scope: BindingTypeScope;
8
+ strings: ScreenEditorStrings;
9
+ disabled: boolean;
10
+ onChange: (binding: QueryBinding | undefined) => void;
11
+ }
12
+ export declare const QueryBindingEditor: ({ property, candidates, scope, strings, disabled, onChange }: QueryBindingEditorProps) => import("react").JSX.Element;
@@ -0,0 +1,106 @@
1
+ import type { IconPickerLabels } from '@cratis/components/IconPicker';
2
+ import type { IconPropertyFieldStrings } from '../../Icons/IconPropertyFieldStrings';
3
+ import type { JsonPropertyFieldStrings } from '../PropertyEditors/Json/JsonPropertyFieldStrings';
4
+ import type { Ownership } from '../Structure/Ownership';
5
+ import type { SceneDocumentProblem } from '../Document/readSceneDocument';
6
+ import type { StructureEditRejection } from '../Structure/StructureEditRejection';
7
+ export interface ScreenEditorStrings {
8
+ inspectorTitle: string;
9
+ windowLabel: string;
10
+ propertiesTab: string;
11
+ structureTab: string;
12
+ openInspector: string;
13
+ closeInspector: string;
14
+ desktopPreview: string;
15
+ mobilePreview: string;
16
+ sizeClass: (width: string, height: string) => string;
17
+ viewportSize: (width: number, height: number) => string;
18
+ noSelection: string;
19
+ nameLabel: string;
20
+ typeLabel: string;
21
+ ownershipLabel: string;
22
+ ownership: Record<Ownership, string>;
23
+ ownershipHint: Record<Ownership, string>;
24
+ unreadable: {
25
+ title: string;
26
+ warning: string;
27
+ close: string;
28
+ reasons: Record<SceneDocumentProblem, string>;
29
+ };
30
+ stopped: {
31
+ title: string;
32
+ message: string;
33
+ close: string;
34
+ };
35
+ undo: string;
36
+ redo: string;
37
+ palette: string;
38
+ layoutDrawer: string;
39
+ closeDrawer: string;
40
+ deleteElement: string;
41
+ saveRefused: string;
42
+ properties: {
43
+ diagnostics: string;
44
+ noProperties: string;
45
+ layoutType: string;
46
+ changeLayout: string;
47
+ confirmLayoutTitle: string;
48
+ confirmLayoutAccept: string;
49
+ confirmLayoutCancel: string;
50
+ exposure: string;
51
+ exposeProperty: string;
52
+ unexposeProperty: string;
53
+ exposedToScopes: string;
54
+ itemsLabel: string;
55
+ addItem: string;
56
+ icon: IconPropertyFieldStrings;
57
+ iconPickerLabels?: IconPickerLabels;
58
+ json?: JsonPropertyFieldStrings;
59
+ query: {
60
+ label: string;
61
+ choose: string;
62
+ none: string;
63
+ missing: string;
64
+ parameters: string;
65
+ columns: string;
66
+ sourceFor: (parameter: string) => string;
67
+ noSource: string;
68
+ showColumn: (field: string) => string;
69
+ preview: {
70
+ noQuery: string;
71
+ missingQuery: string;
72
+ loading: string;
73
+ empty: string;
74
+ error: string;
75
+ };
76
+ };
77
+ action: {
78
+ label: string;
79
+ none: string;
80
+ slice: string;
81
+ chooseSlice: string;
82
+ inputs: string;
83
+ presentation: string;
84
+ presentations: {
85
+ none: string;
86
+ modal: string;
87
+ drawer: string;
88
+ };
89
+ sourceFor: (input: string) => string;
90
+ problems: {
91
+ missingSlice: string;
92
+ unmappedInput: (input: string) => string;
93
+ unknownInput: (input: string) => string;
94
+ unknownSource: (input: string) => string;
95
+ };
96
+ };
97
+ };
98
+ structureLabel: string;
99
+ structureEmpty: string;
100
+ moveUp: string;
101
+ moveDown: string;
102
+ outdent: string;
103
+ indent: string;
104
+ moved: string;
105
+ rejection: Record<StructureEditRejection, string>;
106
+ }
@@ -0,0 +1,13 @@
1
+ import { type ReactNode } from 'react';
2
+ import type { ScreenEditorController } from '../Host/ScreenEditorController';
3
+ import type { ScreenEditorEnvironment } from '../Host/ScreenEditorHost';
4
+ import type { ScreenEditorStrings } from './ScreenEditorStrings';
5
+ export interface ScreenInspectorProps {
6
+ strings: ScreenEditorStrings;
7
+ controller: ScreenEditorController;
8
+ environment: ScreenEditorEnvironment;
9
+ authoringTemplate?: string;
10
+ structure: ReactNode;
11
+ onClose: () => void;
12
+ }
13
+ export declare const ScreenInspector: ({ strings, controller, environment, authoringTemplate, structure, onClose }: ScreenInspectorProps) => import("react").JSX.Element;
@@ -0,0 +1,13 @@
1
+ import type { StructureEdit } from '../Structure/StructureEdit';
2
+ import type { StructureEditRejection } from '../Structure/StructureEditRejection';
3
+ import type { StructureTreeAdapter } from '../Structure/StructureTreeAdapter';
4
+ import type { ScreenEditorStrings } from './ScreenEditorStrings';
5
+ export interface StructureTreeProps<T> {
6
+ roots: T[];
7
+ adapter: StructureTreeAdapter<T>;
8
+ strings: ScreenEditorStrings;
9
+ selectedId?: string;
10
+ onSelect: (id: string) => void;
11
+ onEdit: (edit: StructureEdit) => StructureEditRejection | undefined;
12
+ }
13
+ export declare function StructureTree<T>({ roots, adapter, strings, selectedId, onSelect, onEdit }: StructureTreeProps<T>): import("react").JSX.Element;
@@ -0,0 +1,21 @@
1
+ import type { DragEvent, KeyboardEvent } from 'react';
2
+ import { DropZone } from '../Structure/DropZone';
3
+ import type { StructureRow } from '../Structure/StructureRow';
4
+ import type { StructureTreeAdapter } from '../Structure/StructureTreeAdapter';
5
+ import type { ScreenEditorStrings } from './ScreenEditorStrings';
6
+ export interface StructureTreeRowProps<T> {
7
+ row: StructureRow<T>;
8
+ adapter: StructureTreeAdapter<T>;
9
+ strings: ScreenEditorStrings;
10
+ isSelected: boolean;
11
+ isFocusable: boolean;
12
+ dropZone?: DropZone;
13
+ onSelect: (id: string) => void;
14
+ onToggle: (id: string) => void;
15
+ onKeyDown: (event: KeyboardEvent<HTMLLIElement>, id: string) => void;
16
+ onDragStart: (id: string) => void;
17
+ onDragOver: (event: DragEvent<HTMLLIElement>, id: string) => void;
18
+ onDrop: (event: DragEvent<HTMLLIElement>, id: string) => void;
19
+ onDragEnd: () => void;
20
+ }
21
+ export declare function StructureTreeRow<T>({ row, adapter, strings, isSelected, isFocusable, dropZone, onSelect, onToggle, onKeyDown, onDragStart, onDragOver, onDrop, onDragEnd }: StructureTreeRowProps<T>): import("react").JSX.Element;
@@ -0,0 +1,9 @@
1
+ import type { ViewportSize } from '../Viewport/ViewportSize';
2
+ import type { ScreenEditorStrings } from './ScreenEditorStrings';
3
+ export interface ViewportControlsProps {
4
+ windowSize: ViewportSize;
5
+ available: ViewportSize;
6
+ strings: ScreenEditorStrings;
7
+ onResize: (size: ViewportSize) => void;
8
+ }
9
+ export declare const ViewportControls: ({ windowSize, available, strings, onResize }: ViewportControlsProps) => import("react").JSX.Element;
@@ -0,0 +1,2 @@
1
+ import { DropZone } from '../Structure/DropZone';
2
+ export declare function pointerDropZone(offsetY: number, rowHeight: number, acceptsChildren: boolean): DropZone;
@@ -0,0 +1,11 @@
1
+ import type { FlowContainerKind } from '@cratis/scene.model';
2
+ import type { LayoutArrangement } from '@cratis/scene/ScreenEditor';
3
+ import type { LayoutItem } from './LayoutItem';
4
+ import type { PanelConstruct } from './PanelConstruct';
5
+ export interface LayoutCatalogEntry {
6
+ item: LayoutItem;
7
+ type: string;
8
+ panel: PanelConstruct;
9
+ flowKind?: FlowContainerKind;
10
+ arrangement: LayoutArrangement;
11
+ }
@@ -0,0 +1,8 @@
1
+ export declare enum LayoutItem {
2
+ Stack = "stack",
3
+ Row = "row",
4
+ Grid = "grid",
5
+ Container = "container",
6
+ Wrap = "wrap",
7
+ Canvas = "canvas"
8
+ }
@@ -0,0 +1,7 @@
1
+ export declare enum PanelConstruct {
2
+ Panel = "Panel",
3
+ StackPanel = "StackPanel",
4
+ WrapPanel = "WrapPanel",
5
+ Grid = "Grid",
6
+ Canvas = "Canvas"
7
+ }
@@ -0,0 +1,2 @@
1
+ import type { LayoutCatalogEntry } from './LayoutCatalogEntry';
2
+ export declare const layoutCatalog: readonly LayoutCatalogEntry[];
@@ -0,0 +1,13 @@
1
+ import { type ChangeLayoutTypeEdit, type LayoutType, type SceneDiagnostic } from '@cratis/scene.model';
2
+ export type LayoutChangeStep = {
3
+ kind: 'applied';
4
+ } | {
5
+ kind: 'confirm';
6
+ lost: string;
7
+ edit: ChangeLayoutTypeEdit;
8
+ } | {
9
+ kind: 'refused';
10
+ diagnostics: SceneDiagnostic[];
11
+ };
12
+ export declare const changeLayoutType: (elementNodeId: string, to: `${LayoutType}`, acceptLoss?: boolean) => ChangeLayoutTypeEdit;
13
+ export declare function readLayoutChange(edit: ChangeLayoutTypeEdit, applied: boolean, diagnostics: readonly SceneDiagnostic[]): LayoutChangeStep;
@@ -0,0 +1,9 @@
1
+ import type { ComponentType } from 'react';
2
+ import type { LayoutContainerDescriptor } from '@cratis/scene/ScreenEditor';
3
+ import type { LayoutCatalogEntry } from './LayoutCatalogEntry';
4
+ import type { LayoutItem } from './LayoutItem';
5
+ export type LayoutLabels = Record<LayoutItem, string>;
6
+ export type LayoutIcons = Record<LayoutItem, ComponentType<{
7
+ className?: string;
8
+ }>>;
9
+ export declare function toLayoutContainerDescriptors(catalog: readonly LayoutCatalogEntry[], labels: LayoutLabels, icons?: LayoutIcons): LayoutContainerDescriptor[];
@@ -0,0 +1,10 @@
1
+ import type { LayoutItem } from '../Layouts/LayoutItem';
2
+ export type PalettePayload = {
3
+ kind: 'layout';
4
+ item: LayoutItem;
5
+ } | {
6
+ kind: 'component';
7
+ componentName: string;
8
+ package: string;
9
+ };
10
+ export declare const isPalettePayload: (value: unknown) => value is PalettePayload;
@@ -0,0 +1,22 @@
1
+ import type { ToolbarDrawerItem } from '@cratis/components/Toolbar';
2
+ import type { ReactNode } from 'react';
3
+ import type { LayoutLabels } from '../Layouts/toLayoutContainerDescriptors';
4
+ import type { LayoutItem } from '../Layouts/LayoutItem';
5
+ export interface PaletteDrawer {
6
+ id: string;
7
+ title: string;
8
+ items: ToolbarDrawerItem[];
9
+ }
10
+ export interface PaletteSource {
11
+ package: string;
12
+ components: readonly string[];
13
+ }
14
+ export interface PaletteIcons {
15
+ layout: (item: LayoutItem) => ReactNode;
16
+ component: (componentName: string) => ReactNode;
17
+ drawer: {
18
+ layout: ReactNode;
19
+ package: ReactNode;
20
+ };
21
+ }
22
+ export declare function buildPalette(layoutTitle: string, labels: LayoutLabels, icons: PaletteIcons, sources: readonly PaletteSource[]): PaletteDrawer[];
@@ -0,0 +1,2 @@
1
+ export declare const corePackageName = "core";
2
+ export declare function insertedComponentName(componentName: string, packageName: string): string;
@@ -0,0 +1,3 @@
1
+ import type { IconPickerAllowed } from '@cratis/components/IconPicker';
2
+ import { type PropertyChoice } from '@cratis/scene.model';
3
+ export declare function allowedIconChoices(choices: PropertyChoice[] | undefined): IconPickerAllowed | undefined;
@@ -0,0 +1,6 @@
1
+ import type { InspectedProperty } from '@cratis/scene.model';
2
+ export declare const choiceKey: (value: unknown) => string;
3
+ export declare const selectedChoiceKey: (value: unknown) => string;
4
+ export declare function choiceValueOf(property: InspectedProperty, key: unknown): {
5
+ value: unknown;
6
+ } | undefined;
@@ -0,0 +1,7 @@
1
+ import { type SceneDiagnostic } from '@cratis/scene.model';
2
+ export declare const isIconDiagnostic: (diagnostic: SceneDiagnostic) => boolean;
3
+ export declare function iconMessageOf(diagnostics: readonly SceneDiagnostic[], path: string, itemId?: string): string | undefined;
4
+ export declare const withoutIconDiagnostics: (diagnostics: readonly SceneDiagnostic[]) => SceneDiagnostic[];
5
+ export declare function iconMessagesOfItems(diagnostics: readonly SceneDiagnostic[], path: string): Record<string, {
6
+ icon: string;
7
+ }>;
@@ -0,0 +1,3 @@
1
+ import { type InspectedProperty, type SceneEdit } from '@cratis/scene.model';
2
+ export declare function editForValue(elementId: string, property: InspectedProperty, value: unknown): SceneEdit;
3
+ export declare function editForCollectionField(elementId: string, property: InspectedProperty, itemId: string, field: string, value: unknown): SceneEdit;
@@ -0,0 +1,9 @@
1
+ import { type InspectedProperty } from '@cratis/scene.model';
2
+ import type { PropertyDescriptor as ControlDescriptor, PropertyGroup } from '@cratis/components/ConfigurationEditor';
3
+ export declare const isSimpleProperty: (property: InspectedProperty) => boolean;
4
+ export declare const isDrawnByItsOwnEditor: (typeId: string, path: string) => boolean;
5
+ export declare function toControlDescriptor(property: InspectedProperty): ControlDescriptor;
6
+ export declare function toPropertyGroups(properties: readonly InspectedProperty[], typeId?: string): {
7
+ groups: PropertyGroup[];
8
+ values: Record<string, unknown>;
9
+ };
@@ -0,0 +1,6 @@
1
+ export declare enum JsonDraftKind {
2
+ Unchanged = "unchanged",
3
+ Unset = "unset",
4
+ Set = "set",
5
+ Invalid = "invalid"
6
+ }
@@ -0,0 +1,13 @@
1
+ import type { JsonDraftKind } from './JsonDraftKind';
2
+ import type { JsonProblem } from './JsonProblem';
3
+ export type JsonDraftOutcome = {
4
+ kind: JsonDraftKind.Unchanged;
5
+ } | {
6
+ kind: JsonDraftKind.Unset;
7
+ } | {
8
+ kind: JsonDraftKind.Set;
9
+ value: unknown;
10
+ } | {
11
+ kind: JsonDraftKind.Invalid;
12
+ problem: JsonProblem;
13
+ };
@@ -0,0 +1,4 @@
1
+ export interface JsonDraftState {
2
+ text: string;
3
+ base: unknown;
4
+ }
@@ -0,0 +1,5 @@
1
+ import type { JsonProblemKind } from './JsonProblemKind';
2
+ export interface JsonProblem {
3
+ kind: JsonProblemKind;
4
+ detail: string;
5
+ }
@@ -0,0 +1,6 @@
1
+ export declare enum JsonProblemKind {
2
+ Required = "required",
3
+ Syntax = "syntax",
4
+ UnsafeInteger = "unsafeInteger",
5
+ OutOfRange = "outOfRange"
6
+ }
@@ -0,0 +1,9 @@
1
+ import type { InspectedProperty } from '@cratis/scene.model';
2
+ import type { JsonPropertyFieldStrings } from './JsonPropertyFieldStrings';
3
+ export interface JsonPropertiesProps {
4
+ properties: readonly InspectedProperty[];
5
+ componentId: string;
6
+ setProperty: (property: InspectedProperty, value: unknown) => void;
7
+ strings?: JsonPropertyFieldStrings;
8
+ }
9
+ export declare const JsonProperties: ({ properties, componentId, setProperty, strings }: JsonPropertiesProps) => import("react").JSX.Element | null;
@@ -0,0 +1,13 @@
1
+ import type { JsonPropertyFieldStrings } from './JsonPropertyFieldStrings';
2
+ export interface JsonPropertyFieldProps {
3
+ label: string;
4
+ description?: string;
5
+ value: unknown;
6
+ onApply: (value: unknown) => void;
7
+ readOnly?: boolean;
8
+ reason?: string;
9
+ required?: boolean;
10
+ strings: JsonPropertyFieldStrings;
11
+ rows?: number;
12
+ }
13
+ export declare const JsonPropertyField: ({ label, description, value, onApply, readOnly, reason, required, strings, rows }: JsonPropertyFieldProps) => import("react").JSX.Element;
@@ -0,0 +1,9 @@
1
+ export interface JsonPropertyFieldStrings {
2
+ placeholder: string;
3
+ problems: {
4
+ required: string;
5
+ syntax: (detail: string) => string;
6
+ unsafeInteger: (literal: string) => string;
7
+ outOfRange: (literal: string) => string;
8
+ };
9
+ }
@@ -0,0 +1,8 @@
1
+ import type { JsonProblem } from './JsonProblem';
2
+ export type JsonReading = {
3
+ value: unknown;
4
+ problem?: undefined;
5
+ } | {
6
+ problem: JsonProblem;
7
+ value?: undefined;
8
+ };
@@ -0,0 +1,2 @@
1
+ import type { JsonPropertyFieldStrings } from './JsonPropertyFieldStrings';
2
+ export declare const defaultJsonPropertyFieldStrings: JsonPropertyFieldStrings;
@@ -0,0 +1,3 @@
1
+ import type { JsonProblem } from './JsonProblem';
2
+ import type { JsonPropertyFieldStrings } from './JsonPropertyFieldStrings';
3
+ export declare function describeJsonProblem(problem: JsonProblem, strings: JsonPropertyFieldStrings): string;
@@ -0,0 +1 @@
1
+ export declare const formatJson: (value: unknown) => string;