@cratis/event-models 0.111.1 → 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
package/README.md CHANGED
@@ -38,6 +38,71 @@ export const Board = () => (
38
38
  - The board fills its parent, so give the parent a height.
39
39
  - `readOnly` draws the board without any editing gestures. Leave it off and pass `editor` to receive the board's edits as callbacks. The package never persists anything by itself.
40
40
 
41
+ ## Open the screen editor from the board
42
+
43
+ The board reports when someone selects a slice's screen preview. `@cratis/event-models/screen-editor` is the editor that opens over it, so a host outside Cratis Studio can let people design a screen without any Studio code. It is a separate entry, and a host that only draws the board installs none of what it needs.
44
+
45
+ Install what the editor draws with. These are optional peers, required only by this entry:
46
+
47
+ ```bash
48
+ npm install @cratis/scene.model @cratis/scene.engine @cratis/scene.react @cratis/scene.components @cratis/scene.primereact @cratis/scene.tailwind @cratis/scene.blueprint.default @cratis/scene.blueprint.components @primereact/core @primereact/headless primereact lucide-react react-icons chart.js quill
49
+ ```
50
+
51
+ The Scene packages must be 4.7.0 or newer: that release adds the chart, multi-state checkbox, file upload, data scroller, tree table and rich text editor controls and the JSON property type the editor draws a field for. `chart.js` (4.5.1 or newer) draws the chart control and `quill` (2.0.3 or newer) is the rich text control's engine. Both are optional peers of this entry, and a host that offers those controls in its palette installs them. Quill's stylesheet is part of `@cratis/event-models/screen-editor/styles`, so there is nothing more to import.
52
+
53
+ Import the editor's stylesheet beside the board's, and Scene's:
54
+
55
+ ```tsx
56
+ import '@cratis/components/tokens';
57
+ import '@cratis/components/styles';
58
+ import '@cratis/components/theme';
59
+ import '@cratis/event-models/styles';
60
+ import '@cratis/event-models/screen-editor/styles';
61
+ import '@cratis/scene/styles';
62
+ import 'primeicons/primeicons.css';
63
+ ```
64
+
65
+ Wrap the page in the two providers the components inside a screen need:
66
+
67
+ ```tsx
68
+ import { CratisComponentsProvider } from '@cratis/components';
69
+ import { ScreenEditorPrimeReactProvider } from '@cratis/event-models/screen-editor';
70
+
71
+ <CratisComponentsProvider value={{ locale: 'en-US' }}>
72
+ <ScreenEditorPrimeReactProvider license={yourPrimeUiLicenseKey} theme={yourPrimeReactTheme}>
73
+ {/* the board and the editor */}
74
+ </ScreenEditorPrimeReactProvider>
75
+ </CratisComponentsProvider>
76
+ ```
77
+
78
+ `ScreenEditorPrimeReactProvider` is PrimeReact's own `PrimeReactProvider` under a name this package exports, and it takes the same props (license, theme, locale, pass-through, defaults). It is not a second context: the published bundle imports `@primereact/core/config` from your install, so the provider and every PrimeReact component in the page share one context. Import `PrimeReactProvider` from `@primereact/core/config` yourself if you prefer; the result is identical. Either way, install a single `@primereact/core`.
79
+
80
+ - The editor needs no Studio Core, Arc, router or Studio provider. It does need a PrimeReact provider (`ScreenEditorPrimeReactProvider`), because the default palette offers PrimeReact components and those throw without one. If a component does fail, the editor closes with a message and the page it was opened over carries on.
81
+ - PrimeReact 11 checks a license key at runtime and shows an *Invalid PrimeUI License* badge without one. The key belongs to your application: pass it to the provider. The package never sees it.
82
+ - `ScreenEditorOverlay` takes an environment built with `createScreenEditorEnvironment`. That is where the host lends the queries a screen may bind, the state changes it may submit and the screens it can lead to, in the shapes described on the exported types. The editor hands the edited document back from `onClose`; the host decides where it is kept.
83
+ - Two controls need something from the host, and neither needs anything by default. The rich text control loads Quill through `richText`, which defaults to the loader from `@cratis/scene.primereact/quill`; pass your own loader to supply the engine yourself, or `false` to leave rich text out, and the control then says it is not available. The file upload control posts to the address its author configured, to your own origin, and only when someone presses upload; pass `fileUpload: { handler, allowedOrigins }` to own the upload yourself or to allow other origins. An author's address is never rewritten, nothing is requested while a screen is being edited, and an address on an origin you did not allow is refused before anything is sent.
84
+ - The same services reach the controls wherever the editor is drawn: `ScreenEditorOverlay` floats it over a page and `ScreenEditorWorkspace` sets it into one, as a screen template is authored, and both wrap what they draw in the same providers. The rich text control is editable in either, and an upload goes through your `fileUpload.handler` in either.
85
+ - A property that holds any JSON value (a chart's data, its options) is edited as text next to its other properties. The author's text is parsed, and `null`, `0`, `false`, arrays and objects are values of their own; text that does not parse is refused where it is typed and nothing is applied. Emptying the field, or choosing "Not set" on a choice, puts the property back to its default, and one undo brings it back. A value the stored document holds that is none of a choice's options (an older document) is listed under its own value, so it can be read and kept.
86
+ - A host with no chart in its palette and `richText: false` installs neither `chart.js` nor `quill`: the entry type-checks without skipping library declarations and builds without either.
87
+
88
+ ```tsx
89
+ <EventModelBoard document={model} editor={{ editing: { onPrototypeOpened: (sliceId, actorId, rect) => open(sliceId, actorId, rect) } }} />
90
+
91
+ {opening && (
92
+ <ScreenEditorOverlay
93
+ subject={{ documentText: saved[opening.key] }}
94
+ environment={environment}
95
+ strings={defaultScreenEditorStrings}
96
+ layoutLabels={defaultLayoutLabels}
97
+ icons={defaultPaletteIcons}
98
+ paletteSources={defaultPaletteSources}
99
+ sourceRect={opening.rect}
100
+ onClose={result => keep(opening.key, result)} />
101
+ )}
102
+ ```
103
+
104
+ `@cratis/components` 4.25 or later is required by this entry, and is now the minimum for the package. Consumers that only draw the board need to move to it too.
105
+
41
106
  ## Logo, view options and your own tools
42
107
 
43
108
  The board can draw the Cratis logo and a toolbar over itself. Both are off unless you ask for them:
@@ -0,0 +1,2 @@
1
+ import type { BoardEditing } from '../Board/BoardEditing';
2
+ export declare const suppliesBoardEditing: (editing: BoardEditing) => boolean;