@instructure/platform-block-content-editor 1.0.0 → 1.1.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 (192) hide show
  1. package/README.md +187 -0
  2. package/dist/contexts/AIActionContext.d.ts +38 -0
  3. package/dist/contexts/AIActionContext.d.ts.map +1 -0
  4. package/dist/contexts/BlockEditorApiContext.d.ts +78 -0
  5. package/dist/contexts/BlockEditorApiContext.d.ts.map +1 -1
  6. package/dist/contexts/RichTextEditorContext.d.ts +28 -0
  7. package/dist/contexts/RichTextEditorContext.d.ts.map +1 -0
  8. package/dist/editor/BlockContentEditor.d.ts +40 -0
  9. package/dist/editor/BlockContentEditor.d.ts.map +1 -0
  10. package/dist/editor/ai/BlockAIMenu.d.ts +17 -0
  11. package/dist/editor/ai/BlockAIMenu.d.ts.map +1 -0
  12. package/dist/editor/ai/BlockAIMenuContent.d.ts +17 -0
  13. package/dist/editor/ai/BlockAIMenuContent.d.ts.map +1 -0
  14. package/dist/editor/ai/PreviewBlockModal.d.ts +29 -0
  15. package/dist/editor/ai/PreviewBlockModal.d.ts.map +1 -0
  16. package/dist/editor/ai/aiMenuStyles.d.ts +23 -0
  17. package/dist/editor/ai/aiMenuStyles.d.ts.map +1 -0
  18. package/dist/editor/ai/aiTranslations.d.ts +79 -0
  19. package/dist/editor/ai/aiTranslations.d.ts.map +1 -0
  20. package/dist/editor/ai/aiTypes.d.ts +13 -0
  21. package/dist/editor/ai/aiTypes.d.ts.map +1 -0
  22. package/dist/editor/ai/constants.d.ts +8 -0
  23. package/dist/editor/ai/constants.d.ts.map +1 -0
  24. package/dist/editor/ai/index.d.ts +7 -0
  25. package/dist/editor/ai/index.d.ts.map +1 -0
  26. package/dist/editor/ai/useBlockAIPopover.d.ts +30 -0
  27. package/dist/editor/ai/useBlockAIPopover.d.ts.map +1 -0
  28. package/dist/editor/ai/useGenerateAltText.d.ts +11 -0
  29. package/dist/editor/ai/useGenerateAltText.d.ts.map +1 -0
  30. package/dist/editor/canvas/DesignerArea.d.ts +38 -0
  31. package/dist/editor/canvas/DesignerArea.d.ts.map +1 -0
  32. package/dist/editor/canvas/DesignerCanvas.d.ts +35 -0
  33. package/dist/editor/canvas/DesignerCanvas.d.ts.map +1 -0
  34. package/dist/editor/canvas/DropGridOverlay.d.ts +24 -0
  35. package/dist/editor/canvas/DropGridOverlay.d.ts.map +1 -0
  36. package/dist/editor/canvas/GridDndContext.d.ts +11 -0
  37. package/dist/editor/canvas/GridDndContext.d.ts.map +1 -0
  38. package/dist/editor/canvas/GridDndProvider.d.ts +17 -0
  39. package/dist/editor/canvas/GridDndProvider.d.ts.map +1 -0
  40. package/dist/editor/canvas/GridItemChild.d.ts +44 -0
  41. package/dist/editor/canvas/GridItemChild.d.ts.map +1 -0
  42. package/dist/editor/canvas/GridItemContainer.d.ts +49 -0
  43. package/dist/editor/canvas/GridItemContainer.d.ts.map +1 -0
  44. package/dist/editor/canvas/GridViewer.d.ts +114 -0
  45. package/dist/editor/canvas/GridViewer.d.ts.map +1 -0
  46. package/dist/editor/canvas/TwoColumnDesigner.d.ts +34 -0
  47. package/dist/editor/canvas/TwoColumnDesigner.d.ts.map +1 -0
  48. package/dist/editor/canvas/canvasStyles.d.ts +36 -0
  49. package/dist/editor/canvas/canvasStyles.d.ts.map +1 -0
  50. package/dist/editor/canvas/canvasTranslations.d.ts +64 -0
  51. package/dist/editor/canvas/canvasTranslations.d.ts.map +1 -0
  52. package/dist/editor/canvas/index.d.ts +5 -0
  53. package/dist/editor/canvas/index.d.ts.map +1 -0
  54. package/dist/editor/document/constants.d.ts +23 -0
  55. package/dist/editor/document/constants.d.ts.map +1 -0
  56. package/dist/editor/document/designerItemAction.d.ts +16 -0
  57. package/dist/editor/document/designerItemAction.d.ts.map +1 -0
  58. package/dist/editor/document/utils.d.ts +172 -0
  59. package/dist/editor/document/utils.d.ts.map +1 -0
  60. package/dist/editor/document/utils.test.d.ts +2 -0
  61. package/dist/editor/document/utils.test.d.ts.map +1 -0
  62. package/dist/editor/history/types.d.ts +25 -0
  63. package/dist/editor/history/types.d.ts.map +1 -0
  64. package/dist/editor/history/undoRedoManager.d.ts +3 -0
  65. package/dist/editor/history/undoRedoManager.d.ts.map +1 -0
  66. package/dist/editor/history/undoRedoManager.test.d.ts +2 -0
  67. package/dist/editor/history/undoRedoManager.test.d.ts.map +1 -0
  68. package/dist/editor/history/useUndoRedo.d.ts +11 -0
  69. package/dist/editor/history/useUndoRedo.d.ts.map +1 -0
  70. package/dist/editor/history/useUndoRedo.test.d.ts +2 -0
  71. package/dist/editor/history/useUndoRedo.test.d.ts.map +1 -0
  72. package/dist/editor/index.d.ts +16 -0
  73. package/dist/editor/index.d.ts.map +1 -0
  74. package/dist/editor/preview/PreviewArea.d.ts +31 -0
  75. package/dist/editor/preview/PreviewArea.d.ts.map +1 -0
  76. package/dist/editor/preview/constants.d.ts +9 -0
  77. package/dist/editor/preview/constants.d.ts.map +1 -0
  78. package/dist/editor/preview/index.d.ts +4 -0
  79. package/dist/editor/preview/index.d.ts.map +1 -0
  80. package/dist/editor/preview/previewStyles.d.ts +20 -0
  81. package/dist/editor/preview/previewStyles.d.ts.map +1 -0
  82. package/dist/editor/preview/previewTranslations.d.ts +18 -0
  83. package/dist/editor/preview/previewTranslations.d.ts.map +1 -0
  84. package/dist/editor/sidebar/DesignerNav.d.ts +28 -0
  85. package/dist/editor/sidebar/DesignerNav.d.ts.map +1 -0
  86. package/dist/editor/sidebar/form/ComponentEditorForm.d.ts +12 -0
  87. package/dist/editor/sidebar/form/ComponentEditorForm.d.ts.map +1 -0
  88. package/dist/editor/sidebar/form/FormFieldWrapper.d.ts +13 -0
  89. package/dist/editor/sidebar/form/FormFieldWrapper.d.ts.map +1 -0
  90. package/dist/editor/sidebar/form/fieldRendererUtils.d.ts +24 -0
  91. package/dist/editor/sidebar/form/fieldRendererUtils.d.ts.map +1 -0
  92. package/dist/editor/sidebar/form/fieldRenderers.d.ts +6 -0
  93. package/dist/editor/sidebar/form/fieldRenderers.d.ts.map +1 -0
  94. package/dist/editor/sidebar/form/formTranslations.d.ts +92 -0
  95. package/dist/editor/sidebar/form/formTranslations.d.ts.map +1 -0
  96. package/dist/editor/sidebar/form/formUtils.d.ts +7 -0
  97. package/dist/editor/sidebar/form/formUtils.d.ts.map +1 -0
  98. package/dist/editor/sidebar/form/index.d.ts +7 -0
  99. package/dist/editor/sidebar/form/index.d.ts.map +1 -0
  100. package/dist/editor/sidebar/form/knowledgeCheckEditor.d.ts +10 -0
  101. package/dist/editor/sidebar/form/knowledgeCheckEditor.d.ts.map +1 -0
  102. package/dist/editor/sidebar/form/renderers/AltTextFieldRenderer.d.ts +4 -0
  103. package/dist/editor/sidebar/form/renderers/AltTextFieldRenderer.d.ts.map +1 -0
  104. package/dist/editor/sidebar/form/renderers/AnswerArrayFieldRenderer.d.ts +4 -0
  105. package/dist/editor/sidebar/form/renderers/AnswerArrayFieldRenderer.d.ts.map +1 -0
  106. package/dist/editor/sidebar/form/renderers/ObjectArrayFieldRenderer.d.ts +4 -0
  107. package/dist/editor/sidebar/form/renderers/ObjectArrayFieldRenderer.d.ts.map +1 -0
  108. package/dist/editor/sidebar/form/uploaders/FileUploader.d.ts +24 -0
  109. package/dist/editor/sidebar/form/uploaders/FileUploader.d.ts.map +1 -0
  110. package/dist/editor/sidebar/form/uploaders/ImageUploader.d.ts +8 -0
  111. package/dist/editor/sidebar/form/uploaders/ImageUploader.d.ts.map +1 -0
  112. package/dist/editor/sidebar/form/uploaders/VideoUploader.d.ts +8 -0
  113. package/dist/editor/sidebar/form/uploaders/VideoUploader.d.ts.map +1 -0
  114. package/dist/editor/sidebar/panel/DesignerSideBar.d.ts +18 -0
  115. package/dist/editor/sidebar/panel/DesignerSideBar.d.ts.map +1 -0
  116. package/dist/editor/sidebar/panel/MobileToolOverlay.d.ts +13 -0
  117. package/dist/editor/sidebar/panel/MobileToolOverlay.d.ts.map +1 -0
  118. package/dist/editor/sidebar/panel/MobileToolbar.d.ts +10 -0
  119. package/dist/editor/sidebar/panel/MobileToolbar.d.ts.map +1 -0
  120. package/dist/editor/sidebar/panel/ToolBody.d.ts +11 -0
  121. package/dist/editor/sidebar/panel/ToolBody.d.ts.map +1 -0
  122. package/dist/editor/sidebar/panel/ToolContentContainer.d.ts +27 -0
  123. package/dist/editor/sidebar/panel/ToolContentContainer.d.ts.map +1 -0
  124. package/dist/editor/sidebar/panel/ToolHeader.d.ts +24 -0
  125. package/dist/editor/sidebar/panel/ToolHeader.d.ts.map +1 -0
  126. package/dist/editor/sidebar/panel/ToolHeaderActionsContext.d.ts +8 -0
  127. package/dist/editor/sidebar/panel/ToolHeaderActionsContext.d.ts.map +1 -0
  128. package/dist/editor/sidebar/panel/ToolIconButtons.d.ts +19 -0
  129. package/dist/editor/sidebar/panel/ToolIconButtons.d.ts.map +1 -0
  130. package/dist/editor/sidebar/panel/ToolWrapper.d.ts +16 -0
  131. package/dist/editor/sidebar/panel/ToolWrapper.d.ts.map +1 -0
  132. package/dist/editor/sidebar/panel/constants.d.ts +23 -0
  133. package/dist/editor/sidebar/panel/constants.d.ts.map +1 -0
  134. package/dist/editor/sidebar/panel/index.d.ts +5 -0
  135. package/dist/editor/sidebar/panel/index.d.ts.map +1 -0
  136. package/dist/editor/sidebar/panel/panelStyles.d.ts +29 -0
  137. package/dist/editor/sidebar/panel/panelStyles.d.ts.map +1 -0
  138. package/dist/editor/sidebar/panel/types.d.ts +80 -0
  139. package/dist/editor/sidebar/panel/types.d.ts.map +1 -0
  140. package/dist/editor/sidebar/panel/useFocusReturn.d.ts +8 -0
  141. package/dist/editor/sidebar/panel/useFocusReturn.d.ts.map +1 -0
  142. package/dist/editor/sidebar/sidebarTranslations.d.ts +53 -0
  143. package/dist/editor/sidebar/sidebarTranslations.d.ts.map +1 -0
  144. package/dist/editor/sidebar/tray/BlockTray.d.ts +30 -0
  145. package/dist/editor/sidebar/tray/BlockTray.d.ts.map +1 -0
  146. package/dist/editor/sidebar/tray/ComponentsTray.d.ts +4 -0
  147. package/dist/editor/sidebar/tray/ComponentsTray.d.ts.map +1 -0
  148. package/dist/editor/sidebar/tray/InteractiveTray.d.ts +4 -0
  149. package/dist/editor/sidebar/tray/InteractiveTray.d.ts.map +1 -0
  150. package/dist/editor/sidebar/tray/LayoutTray.d.ts +4 -0
  151. package/dist/editor/sidebar/tray/LayoutTray.d.ts.map +1 -0
  152. package/dist/editor/sidebar/tray/SharedTrayComponents.d.ts +64 -0
  153. package/dist/editor/sidebar/tray/SharedTrayComponents.d.ts.map +1 -0
  154. package/dist/editor/sidebar/tray/TemplatesPanel.d.ts +4 -0
  155. package/dist/editor/sidebar/tray/TemplatesPanel.d.ts.map +1 -0
  156. package/dist/editor/sidebar/tray/TrayDragLayer.d.ts +14 -0
  157. package/dist/editor/sidebar/tray/TrayDragLayer.d.ts.map +1 -0
  158. package/dist/editor/sidebar/tray/blockDefinitions.d.ts +11 -0
  159. package/dist/editor/sidebar/tray/blockDefinitions.d.ts.map +1 -0
  160. package/dist/editor/sidebar/tray/index.d.ts +9 -0
  161. package/dist/editor/sidebar/tray/index.d.ts.map +1 -0
  162. package/dist/editor/sidebar/tray/trayStyles.d.ts +20 -0
  163. package/dist/editor/sidebar/tray/trayStyles.d.ts.map +1 -0
  164. package/dist/editor/sidebar/useDesignerSelectionFocus.d.ts +51 -0
  165. package/dist/editor/sidebar/useDesignerSelectionFocus.d.ts.map +1 -0
  166. package/dist/editor/state/applyTemplatePatch.d.ts +46 -0
  167. package/dist/editor/state/applyTemplatePatch.d.ts.map +1 -0
  168. package/dist/editor/state/applyTemplatePatch.test.d.ts +2 -0
  169. package/dist/editor/state/applyTemplatePatch.test.d.ts.map +1 -0
  170. package/dist/editor/state/useBlockEditorState.d.ts +57 -0
  171. package/dist/editor/state/useBlockEditorState.d.ts.map +1 -0
  172. package/dist/editor/state/useBlockEditorState.test.d.ts +2 -0
  173. package/dist/editor/state/useBlockEditorState.test.d.ts.map +1 -0
  174. package/dist/editor/validation/templateDataValidator.d.ts +48 -0
  175. package/dist/editor/validation/templateDataValidator.d.ts.map +1 -0
  176. package/dist/editor/validation/templateDataValidator.test.d.ts +2 -0
  177. package/dist/editor/validation/templateDataValidator.test.d.ts.map +1 -0
  178. package/dist/index.d.ts +4 -1
  179. package/dist/index.d.ts.map +1 -1
  180. package/dist/index.js +14282 -1869
  181. package/dist/registry/blockRegistry.d.ts +8 -0
  182. package/dist/registry/blockRegistry.d.ts.map +1 -1
  183. package/dist/registry/defineBlock.d.ts +5 -0
  184. package/dist/registry/defineBlock.d.ts.map +1 -1
  185. package/dist/schema/index.d.ts +1 -1
  186. package/dist/schema/index.d.ts.map +1 -1
  187. package/dist/schema/zodExtensions.d.ts +2 -0
  188. package/dist/schema/zodExtensions.d.ts.map +1 -1
  189. package/dist/utils/useMediaQuery.d.ts +7 -0
  190. package/dist/utils/useMediaQuery.d.ts.map +1 -0
  191. package/locales/en.json +126 -1
  192. package/package.json +34 -1
@@ -1,4 +1,5 @@
1
1
  import { ComponentType, ReactNode } from 'react';
2
+ import { DesignerItemAction } from '../editor/document/designerItemAction';
2
3
  import { RegisteredComponentSchema } from '../schema/registeredSchema';
3
4
  /**
4
5
  * Everything a renderer needs to resolve one block.
@@ -32,6 +33,13 @@ export interface BlockRegistryEntry<TProps = unknown> {
32
33
  wrapsChildrenInGridCells?: boolean;
33
34
  /** Lightweight stand-in for drag operations, where mounting the real block is too costly. */
34
35
  renderDragPreview?: (props: Partial<TProps>) => ReactNode;
36
+ /**
37
+ * Item-toolbar actions to hide for this block in the designer — e.g. a data-driven widget
38
+ * shows only Move and Delete. Set by the host per block at factory-call time (see
39
+ * `create<Name>Block`); unset leaves every action visible. Composes with, rather than
40
+ * replaces, the chrome's edit/delete permission checks.
41
+ */
42
+ hiddenActions?: DesignerItemAction[];
35
43
  }
36
44
  /**
37
45
  * A host-composed map of wire name → entry.
@@ -1 +1 @@
1
- {"version":3,"file":"blockRegistry.d.ts","sourceRoot":"","sources":["../../src/registry/blockRegistry.ts"],"names":[],"mappings":"AAkBA,OAAO,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AACrD,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,4BAA4B,CAAA;AAE3E;;;;;;;GAOG;AACH,MAAM,WAAW,kBAAkB,CAAC,MAAM,GAAG,OAAO;IAClD,SAAS,EAAE,aAAa,CAAC,MAAM,CAAC,CAAA;IAChC,MAAM,EAAE,yBAAyB,CAAC,MAAM,CAAC,CAAA;IACzC,YAAY,EAAE,OAAO,CAAC,MAAM,CAAC,CAAA;IAC7B,gEAAgE;IAChE,KAAK,EAAE,MAAM,CAAA;IACb;;;;OAIG;IACH,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB;;;;;;;;OAQG;IACH,wBAAwB,CAAC,EAAE,OAAO,CAAA;IAClC,6FAA6F;IAC7F,iBAAiB,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,CAAC,MAAM,CAAC,KAAK,SAAS,CAAA;CAC1D;AAED;;;;;;;;;GASG;AAEH,MAAM,MAAM,aAAa,GAAG,MAAM,CAAC,MAAM,EAAE,kBAAkB,CAAC,GAAG,CAAC,CAAC,CAAA;AAEnE;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,cAAc,CAAC,CAAC,SAAS,aAAa,EAAE,QAAQ,EAAE,CAAC,GAAG,CAAC,CAEtE;AAED,6DAA6D;AAC7D,MAAM,MAAM,OAAO,CAAC,CAAC,IAAI,CAAC,SAAS,kBAAkB,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,CAAA"}
1
+ {"version":3,"file":"blockRegistry.d.ts","sourceRoot":"","sources":["../../src/registry/blockRegistry.ts"],"names":[],"mappings":"AAkBA,OAAO,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAIrD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,uCAAuC,CAAA;AAC/E,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,4BAA4B,CAAA;AAE3E;;;;;;;GAOG;AACH,MAAM,WAAW,kBAAkB,CAAC,MAAM,GAAG,OAAO;IAClD,SAAS,EAAE,aAAa,CAAC,MAAM,CAAC,CAAA;IAChC,MAAM,EAAE,yBAAyB,CAAC,MAAM,CAAC,CAAA;IACzC,YAAY,EAAE,OAAO,CAAC,MAAM,CAAC,CAAA;IAC7B,gEAAgE;IAChE,KAAK,EAAE,MAAM,CAAA;IACb;;;;OAIG;IACH,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB;;;;;;;;OAQG;IACH,wBAAwB,CAAC,EAAE,OAAO,CAAA;IAClC,6FAA6F;IAC7F,iBAAiB,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,CAAC,MAAM,CAAC,KAAK,SAAS,CAAA;IACzD;;;;;OAKG;IACH,aAAa,CAAC,EAAE,kBAAkB,EAAE,CAAA;CACrC;AAED;;;;;;;;;GASG;AAEH,MAAM,MAAM,aAAa,GAAG,MAAM,CAAC,MAAM,EAAE,kBAAkB,CAAC,GAAG,CAAC,CAAC,CAAA;AAEnE;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,cAAc,CAAC,CAAC,SAAS,aAAa,EAAE,QAAQ,EAAE,CAAC,GAAG,CAAC,CAEtE;AAED,6DAA6D;AAC7D,MAAM,MAAM,OAAO,CAAC,CAAC,IAAI,CAAC,SAAS,kBAAkB,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,CAAA"}
@@ -1,5 +1,6 @@
1
1
  import { ComponentType, ReactNode } from 'react';
2
2
  import { AllStringValues } from '../contexts/BlockTranslationsContext';
3
+ import { DesignerItemAction } from '../editor/document/designerItemAction';
3
4
  import { RegisteredComponentSchema } from '../schema/registeredSchema';
4
5
  import { BlockName } from './blockCatalogue';
5
6
  import { BlockRegistryEntry } from './blockRegistry';
@@ -29,11 +30,15 @@ export interface BlockFactoryOptions<TTranslations> {
29
30
  label: string;
30
31
  /** Already translated. `<Name>English` holds the source strings. */
31
32
  translations: TTranslations;
33
+ /** Designer item-toolbar actions to hide for this block — see `BlockRegistryEntry.hiddenActions`. */
34
+ hiddenActions?: DesignerItemAction[];
32
35
  }
33
36
  /** What the host supplies for a block with no strings of its own. */
34
37
  export interface UntranslatedBlockFactoryOptions {
35
38
  /** Already translated. Shown wherever an authoring UI lists this block. */
36
39
  label: string;
40
+ /** Designer item-toolbar actions to hide for this block — see `BlockRegistryEntry.hiddenActions`. */
41
+ hiddenActions?: DesignerItemAction[];
37
42
  }
38
43
  /**
39
44
  * Builds a block's `create<Name>Block` factory.
@@ -1 +1 @@
1
- {"version":3,"file":"defineBlock.d.ts","sourceRoot":"","sources":["../../src/registry/defineBlock.tsx"],"names":[],"mappings":"AAkBA,OAAO,EAAE,KAAK,aAAa,EAAiB,KAAK,SAAS,EAAE,MAAM,OAAO,CAAA;AACzE,OAAO,EACL,KAAK,eAAe,EAErB,MAAM,sCAAsC,CAAA;AAC7C,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,4BAA4B,CAAA;AAC3E,OAAO,EAAmB,KAAK,SAAS,EAAgB,MAAM,kBAAkB,CAAA;AAChF,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAA;AAYzD,gEAAgE;AAChE,MAAM,WAAW,eAAe,CAAC,MAAM;IACrC;;;;;;;;OAQG;IACH,QAAQ,EAAE,SAAS,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC,CAAA;IACnC,SAAS,EAAE,aAAa,CAAC,MAAM,CAAC,CAAA;IAChC,MAAM,EAAE,yBAAyB,CAAC,MAAM,CAAC,CAAA;IACzC,YAAY,EAAE,OAAO,CAAC,MAAM,CAAC,CAAA;IAC7B,6EAA6E;IAC7E,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB,iBAAiB,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,CAAC,MAAM,CAAC,KAAK,SAAS,CAAA;IACzD,wBAAwB,CAAC,EAAE,OAAO,CAAA;CACnC;AAED,4DAA4D;AAC5D,MAAM,WAAW,mBAAmB,CAAC,aAAa;IAChD,2EAA2E;IAC3E,KAAK,EAAE,MAAM,CAAA;IACb,oEAAoE;IACpE,YAAY,EAAE,aAAa,CAAA;CAC5B;AAED,qEAAqE;AACrE,MAAM,WAAW,+BAA+B;IAC9C,2EAA2E;IAC3E,KAAK,EAAE,MAAM,CAAA;CACd;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,WAAW,CAAC,MAAM,EAAE,QAAQ,SAAS,eAAe,CAAC,QAAQ,CAAC,EAC5E,UAAU,EAAE,eAAe,CAAC,MAAM,CAAC,GAAG;IAAE,OAAO,EAAE,QAAQ,CAAA;CAAE,GAC1D,CAAC,OAAO,EAAE,mBAAmB,CAAC,QAAQ,CAAC,KAAK,kBAAkB,CAAC,MAAM,CAAC,CAAA;AACzE,wBAAgB,WAAW,CAAC,MAAM,EAChC,UAAU,EAAE,eAAe,CAAC,MAAM,CAAC,GAAG;IAAE,OAAO,CAAC,EAAE,KAAK,CAAA;CAAE,GACxD,CAAC,OAAO,EAAE,+BAA+B,KAAK,kBAAkB,CAAC,MAAM,CAAC,CAAA"}
1
+ {"version":3,"file":"defineBlock.d.ts","sourceRoot":"","sources":["../../src/registry/defineBlock.tsx"],"names":[],"mappings":"AAkBA,OAAO,EAAE,KAAK,aAAa,EAAiB,KAAK,SAAS,EAAE,MAAM,OAAO,CAAA;AACzE,OAAO,EACL,KAAK,eAAe,EAErB,MAAM,sCAAsC,CAAA;AAE7C,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,uCAAuC,CAAA;AAC/E,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,4BAA4B,CAAA;AAC3E,OAAO,EAAmB,KAAK,SAAS,EAAgB,MAAM,kBAAkB,CAAA;AAChF,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAA;AAYzD,gEAAgE;AAChE,MAAM,WAAW,eAAe,CAAC,MAAM;IACrC;;;;;;;;OAQG;IACH,QAAQ,EAAE,SAAS,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC,CAAA;IACnC,SAAS,EAAE,aAAa,CAAC,MAAM,CAAC,CAAA;IAChC,MAAM,EAAE,yBAAyB,CAAC,MAAM,CAAC,CAAA;IACzC,YAAY,EAAE,OAAO,CAAC,MAAM,CAAC,CAAA;IAC7B,6EAA6E;IAC7E,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB,iBAAiB,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,CAAC,MAAM,CAAC,KAAK,SAAS,CAAA;IACzD,wBAAwB,CAAC,EAAE,OAAO,CAAA;CACnC;AAED,4DAA4D;AAC5D,MAAM,WAAW,mBAAmB,CAAC,aAAa;IAChD,2EAA2E;IAC3E,KAAK,EAAE,MAAM,CAAA;IACb,oEAAoE;IACpE,YAAY,EAAE,aAAa,CAAA;IAC3B,qGAAqG;IACrG,aAAa,CAAC,EAAE,kBAAkB,EAAE,CAAA;CACrC;AAED,qEAAqE;AACrE,MAAM,WAAW,+BAA+B;IAC9C,2EAA2E;IAC3E,KAAK,EAAE,MAAM,CAAA;IACb,qGAAqG;IACrG,aAAa,CAAC,EAAE,kBAAkB,EAAE,CAAA;CACrC;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,WAAW,CAAC,MAAM,EAAE,QAAQ,SAAS,eAAe,CAAC,QAAQ,CAAC,EAC5E,UAAU,EAAE,eAAe,CAAC,MAAM,CAAC,GAAG;IAAE,OAAO,EAAE,QAAQ,CAAA;CAAE,GAC1D,CAAC,OAAO,EAAE,mBAAmB,CAAC,QAAQ,CAAC,KAAK,kBAAkB,CAAC,MAAM,CAAC,CAAA;AACzE,wBAAgB,WAAW,CAAC,MAAM,EAChC,UAAU,EAAE,eAAe,CAAC,MAAM,CAAC,GAAG;IAAE,OAAO,CAAC,EAAE,KAAK,CAAA;CAAE,GACxD,CAAC,OAAO,EAAE,+BAA+B,KAAK,kBAAkB,CAAC,MAAM,CAAC,CAAA"}
@@ -1,5 +1,5 @@
1
1
  export { parseDescription, type ZodFormMetadata, type ZodRangeConfig, type ZodHiddenWhenConfig, type ZodDisabledWhenConfig, } from './zodExtensions';
2
2
  export { validateComponentSchema, type ValidationError, type ValidationIssue, type ValidationResult, } from './schemaValidator';
3
3
  export { registerComponentSchema, type RegisteredComponentSchema, } from './registeredSchema';
4
- export { FormFieldType, type FormFieldMetadata, unwrapZodType, deriveFieldType, extractValidationRules, extractFieldMetadata, extractFormMetadata, } from './zodUtils';
4
+ export { FormFieldType, type FormFieldMetadata, extractFieldMetadata, extractFormMetadata, } from './zodUtils';
5
5
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/schema/index.ts"],"names":[],"mappings":"AAmBA,OAAO,iBAAiB,CAAA;AAExB,OAAO,EACL,gBAAgB,EAChB,KAAK,eAAe,EACpB,KAAK,cAAc,EACnB,KAAK,mBAAmB,EACxB,KAAK,qBAAqB,GAC3B,MAAM,iBAAiB,CAAA;AAGxB,OAAO,EACL,uBAAuB,EACvB,KAAK,eAAe,EACpB,KAAK,eAAe,EACpB,KAAK,gBAAgB,GACtB,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EACL,uBAAuB,EACvB,KAAK,yBAAyB,GAC/B,MAAM,oBAAoB,CAAA;AAG3B,OAAO,EACL,aAAa,EACb,KAAK,iBAAiB,EACtB,aAAa,EACb,eAAe,EACf,sBAAsB,EACtB,oBAAoB,EACpB,mBAAmB,GACpB,MAAM,YAAY,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/schema/index.ts"],"names":[],"mappings":"AAmBA,OAAO,iBAAiB,CAAA;AAExB,OAAO,EACL,gBAAgB,EAChB,KAAK,eAAe,EACpB,KAAK,cAAc,EACnB,KAAK,mBAAmB,EACxB,KAAK,qBAAqB,GAC3B,MAAM,iBAAiB,CAAA;AAGxB,OAAO,EACL,uBAAuB,EACvB,KAAK,eAAe,EACpB,KAAK,eAAe,EACpB,KAAK,gBAAgB,GACtB,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EACL,uBAAuB,EACvB,KAAK,yBAAyB,GAC/B,MAAM,oBAAoB,CAAA;AAK3B,OAAO,EACL,aAAa,EACb,KAAK,iBAAiB,EACtB,oBAAoB,EACpB,mBAAmB,GACpB,MAAM,YAAY,CAAA"}
@@ -49,6 +49,7 @@ export interface ZodFormMetadata {
49
49
  manageLayer?: string;
50
50
  answers?: boolean;
51
51
  altText?: boolean;
52
+ attachmentIdField?: boolean;
52
53
  }
53
54
  /**
54
55
  * Parse metadata from a Zod schema description
@@ -90,6 +91,7 @@ declare module 'zod' {
90
91
  * @example z.string().zodRichText().zodLabel('Content')
91
92
  */
92
93
  zodRichText(richtext?: boolean): this;
94
+ zodAttachmentIdField(attachmentIdField?: boolean): this;
93
95
  /**
94
96
  * Mark number field as a range slider input
95
97
  * @example z.number().zodRange({ min: 0, max: 100, step: 25, formatValue: '%' }).zodLabel('Size')
@@ -1 +1 @@
1
- {"version":3,"file":"zodExtensions.d.ts","sourceRoot":"","sources":["../../src/schema/zodExtensions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"zodExtensions.d.ts","sourceRoot":"","sources":["../../src/schema/zodExtensions.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Tracks whether a media query currently matches, subscribing to changes. Guards `window`/
3
+ * `matchMedia` so it is safe under SSR and jsdom (where neither is implemented) — there it
4
+ * reports `false`, i.e. the default (wider) layout.
5
+ */
6
+ export declare function useMediaQuery(query: string): boolean;
7
+ //# sourceMappingURL=useMediaQuery.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useMediaQuery.d.ts","sourceRoot":"","sources":["../../src/utils/useMediaQuery.ts"],"names":[],"mappings":"AA4BA;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAapD"}
package/locales/en.json CHANGED
@@ -60,5 +60,130 @@
60
60
  "knowledgeCheckAnswerIncorrectLabel": "Incorrect",
61
61
  "widgetBlockPlaceholder": "Add widget...",
62
62
  "widgetBlockLoading": "Loading widget...",
63
- "widgetBlockError": "Failed to load widget"
63
+ "widgetBlockError": "Failed to load widget",
64
+ "item": "item",
65
+ "pickedUp": "Picked up %{label}. Use arrow keys to move, Space to drop, Escape to cancel.",
66
+ "notOverDropArea": "%{label} is not over a drop area.",
67
+ "leftColumn": "left column",
68
+ "rightColumn": "right column",
69
+ "isOverColumn": "%{label} is over %{columnName}.",
70
+ "isOver": "%{label} is over %{overLabel}.",
71
+ "wasDropped": "%{label} was dropped.",
72
+ "wasDroppedIntoColumn": "%{label} was dropped into %{columnName}.",
73
+ "dragCancelled": "Dragging was cancelled. %{label} was returned to its original position.",
74
+ "dragInstructions": "To pick up this component, press Space or Enter. Use arrow keys to move it up, down, or between columns. Press Space or Enter to drop, or Escape to cancel.",
75
+ "componentActions": "Component actions",
76
+ "dragToReorder": "Drag to reorder",
77
+ "dragAndDrop": "Drag and Drop",
78
+ "duplicateComponent": "Duplicate %{component}",
79
+ "duplicate": "Duplicate",
80
+ "deleteComponent": "Delete %{component}",
81
+ "delete": "Delete",
82
+ "deleteConfirmation": "Are you sure you want to delete this?",
83
+ "cancel": "Cancel",
84
+ "editComponent": "Edit %{component} component",
85
+ "componentGroup": "%{component} component",
86
+ "leftColumnLabel": "Left column",
87
+ "rightColumnLabel": "Right column",
88
+ "dropBlocksHere": "Drop blocks here",
89
+ "templatesComingSoon": "Coming soon: ready-made templates from your organization.",
90
+ "previous": "Previous",
91
+ "next": "Next",
92
+ "itemSubtitle": "%{itemName} %{number}",
93
+ "defaultItemName": "Item",
94
+ "dragToReorderItem": "Drag to reorder %{item}",
95
+ "editItem": "Edit %{item}",
96
+ "removeItem": "Remove %{item}",
97
+ "manageLabel": "Manage %{pluralLabel}",
98
+ "countLabel": "%{count} %{pluralLabel}",
99
+ "noItemsYet": "No items yet",
100
+ "addItem": "Add %{componentType}",
101
+ "answerTrue": "True",
102
+ "answerFalse": "False",
103
+ "optionLabel": "Option %{option}",
104
+ "removeOption": "Remove option %{option}",
105
+ "addOption": "Add option",
106
+ "arrayItemLabel": "Item %{index}",
107
+ "remove": "Remove",
108
+ "addPrimitiveItem": "Add item",
109
+ "dragAndDropOrBrowse": "Drag and drop or click to browse",
110
+ "chooseFile": "Choose file",
111
+ "loadingPreview": "Loading preview...",
112
+ "uploadFailed": "Upload failed",
113
+ "uploadImage": "Upload image",
114
+ "imageAcceptedTypes": "Accepted file types: PNG, JPG, GIF, WebP",
115
+ "imageMaxSize": "Max file size: 5MB",
116
+ "replaceImage": "Replace image",
117
+ "uploadingImage": "Uploading image...",
118
+ "imageSizeError": "File size must be less than 5MB",
119
+ "uploadVideo": "Upload video",
120
+ "videoAcceptedTypes": "Accepted file types: MP4, WebM, MOV, AVI",
121
+ "videoMaxSize": "Max file size: 500MB",
122
+ "replaceVideo": "Replace video",
123
+ "uploadingVideo": "Uploading video...",
124
+ "videoSizeError": "File size must be less than 500MB",
125
+ "videoSource": "Video source",
126
+ "sourceFile": "File",
127
+ "sourceLink": "Link",
128
+ "videoLink": "Video link",
129
+ "videoLinkPlaceholder": "https://...",
130
+ "loading": "Loading...",
131
+ "collapse": "Collapse",
132
+ "expand": "Expand",
133
+ "minimize": "Minimize",
134
+ "expandPanel": "Expand panel",
135
+ "minimizePanel": "Minimize panel",
136
+ "back": "Back",
137
+ "closePanel": "Close %{panelName}",
138
+ "resizeToolPanel": "Resize tool panel",
139
+ "basicBlocksTool": "Basic blocks",
140
+ "interactiveBlocksTool": "Interactive blocks",
141
+ "layoutBlocksTool": "Layout blocks",
142
+ "templatesTool": "Templates",
143
+ "basicBlocksIntro": "Format content with these basic blocks.",
144
+ "layoutBlocksIntro": "Organize your content into columns.",
145
+ "interactiveBlocksIntro": "Engage learners with interactive non-scored activities.",
146
+ "addBlock": "Add %{name}",
147
+ "skipToSelectedComponent": "Skip to selected component",
148
+ "desktop": "Desktop",
149
+ "mobile": "Mobile",
150
+ "viewportLabel": "Preview viewport",
151
+ "aiAssistFor": "AI assist for %{componentType}",
152
+ "aiActions": "AI Actions",
153
+ "backToMenu": "Back to menu",
154
+ "regenerateWithPrompt": "Regenerate with prompt",
155
+ "changeTone": "Change tone",
156
+ "changeLength": "Change length",
157
+ "changeReadingLevel": "Change reading level",
158
+ "toneMoreFormal": "More formal",
159
+ "toneMoreFun": "More fun",
160
+ "toneMoreCasual": "More casual",
161
+ "toneMoreTechnical": "More technical",
162
+ "lengthShorter": "Shorter",
163
+ "lengthLonger": "Longer",
164
+ "readingBeginning": "Beginning reader (0L - 760L)",
165
+ "readingNovice": "Novice reader (635L - 1160L)",
166
+ "readingIntermediate": "Intermediate reader (925L - 1295L)",
167
+ "readingAdvanced": "Advanced reader (1040L - 1440L)",
168
+ "promptPlaceholder": "What would you like to change?",
169
+ "previewFirst": "Preview first",
170
+ "send": "Send",
171
+ "thinking": "Thinking…",
172
+ "stop": "Stop",
173
+ "generationFailed": "Failed to generate. Please try again.",
174
+ "previewBlock": "Preview block",
175
+ "compareLabel": "Compare versions",
176
+ "both": "Both",
177
+ "before": "Before",
178
+ "after": "After",
179
+ "previewCancel": "Cancel",
180
+ "acceptAndReplace": "Accept and replace",
181
+ "refinementPlaceholder": "What changes would you like to make?",
182
+ "regenerate": "Regenerate",
183
+ "regenerating": "Regenerating...",
184
+ "generateAltText": "Generate alt text",
185
+ "generating": "Generating...",
186
+ "failedToLoadImage": "Failed to load image",
187
+ "failedToGenerate": "Failed to generate alt text",
188
+ "noDescription": "No description was returned"
64
189
  }
package/package.json CHANGED
@@ -1,6 +1,7 @@
1
1
  {
2
2
  "name": "@instructure/platform-block-content-editor",
3
- "version": "1.0.0",
3
+ "version": "1.1.0",
4
+ "description": "Host-agnostic block content editor for Canvas activities — the blocks, the read-path viewer, and the write-path editor, all on native InstUI.",
4
5
  "type": "module",
5
6
  "main": "./dist/index.js",
6
7
  "module": "./dist/index.js",
@@ -25,39 +26,70 @@
25
26
  "@instructure/ui-alerts": "^11.0.0",
26
27
  "@instructure/ui-buttons": "^11.0.0",
27
28
  "@instructure/ui-checkbox": "^11.0.0",
29
+ "@instructure/ui-file-drop": "^11.0.0",
28
30
  "@instructure/ui-flex": "^11.0.0",
31
+ "@instructure/ui-form-field": "^11.0.0",
29
32
  "@instructure/ui-heading": "^11.0.0",
30
33
  "@instructure/ui-icons": "^11.0.0",
31
34
  "@instructure/ui-img": "^11.0.0",
35
+ "@instructure/ui-modal": "^11.0.0",
36
+ "@instructure/ui-number-input": "^11.0.0",
37
+ "@instructure/ui-popover": "^11.0.0",
32
38
  "@instructure/ui-progress": "^11.0.0",
33
39
  "@instructure/ui-radio-input": "^11.0.0",
40
+ "@instructure/ui-range-input": "^11.0.0",
41
+ "@instructure/ui-simple-select": "^11.0.0",
42
+ "@instructure/ui-source-code-editor": "^11.0.0",
34
43
  "@instructure/ui-spinner": "^11.0.0",
35
44
  "@instructure/ui-text": "^11.0.0",
45
+ "@instructure/ui-text-area": "^11.0.0",
46
+ "@instructure/ui-text-input": "^11.0.0",
36
47
  "@instructure/ui-toggle-details": "^11.0.0",
48
+ "@instructure/ui-tooltip": "^11.0.0",
37
49
  "@instructure/ui-view": "^11.0.0",
38
50
  "react": "^18.0.0 || ^19.0.0",
39
51
  "react-dom": "^18.0.0 || ^19.0.0",
40
52
  "zod": "^3.23.8"
41
53
  },
42
54
  "dependencies": {
55
+ "@dnd-kit/core": "^6.3.1",
56
+ "@dnd-kit/modifiers": "^9.0.0",
57
+ "@dnd-kit/sortable": "^10.0.0",
58
+ "@dnd-kit/utilities": "^3.2.2",
59
+ "@hookform/resolvers": "^5.2.2",
60
+ "lodash": "^4.17.21",
61
+ "react-hook-form": "^7.68.0",
62
+ "uuid": "^11.1.1",
43
63
  "@instructure/platform-sanitize": "^0.7.0"
44
64
  },
45
65
  "devDependencies": {
46
66
  "@instructure/emotion": "11.7.4",
67
+ "@types/lodash": "^4.17.24",
47
68
  "@instructure/ui-a11y-content": "11.7.4",
48
69
  "@instructure/ui-alerts": "11.7.4",
49
70
  "@instructure/ui-buttons": "11.7.4",
50
71
  "@instructure/ui-checkbox": "11.7.4",
72
+ "@instructure/ui-file-drop": "11.7.4",
51
73
  "@instructure/ui-flex": "11.7.4",
74
+ "@instructure/ui-form-field": "11.7.4",
52
75
  "@instructure/ui-heading": "11.7.4",
53
76
  "@instructure/ui-icons": "11.7.4",
54
77
  "@instructure/ui-img": "11.7.4",
78
+ "@instructure/ui-modal": "11.7.4",
79
+ "@instructure/ui-number-input": "11.7.4",
80
+ "@instructure/ui-popover": "11.7.4",
55
81
  "@instructure/ui-progress": "11.7.4",
56
82
  "@instructure/ui-radio-input": "11.7.4",
83
+ "@instructure/ui-range-input": "11.7.4",
84
+ "@instructure/ui-simple-select": "11.7.4",
85
+ "@instructure/ui-source-code-editor": "11.7.4",
57
86
  "@instructure/ui-spinner": "11.7.4",
58
87
  "@instructure/ui-text": "11.7.4",
88
+ "@instructure/ui-text-area": "11.7.4",
89
+ "@instructure/ui-text-input": "11.7.4",
59
90
  "@instructure/ui-themes": "11.7.4",
60
91
  "@instructure/ui-toggle-details": "11.7.4",
92
+ "@instructure/ui-tooltip": "11.7.4",
61
93
  "@instructure/ui-view": "11.7.4",
62
94
  "@storybook/react": "^10.0.8",
63
95
  "@testing-library/jest-dom": "^6.9.1",
@@ -83,6 +115,7 @@
83
115
  "lint": "oxlint -c ../../oxlint.json && ast-grep scan . --report-style=short",
84
116
  "lint:fix": "oxlint -c ../../oxlint.json --fix && biome format --write .",
85
117
  "type-check": "tsc -p tsconfig.check.json",
118
+ "check:consumer": "pnpm build && tsc -p consumer/tsconfig.json",
86
119
  "pack:tarball": "pnpm build && pnpm pack"
87
120
  }
88
121
  }