@blokkli/editor 1.4.0-alpha.0 → 2.0.0-alpha.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (447) hide show
  1. package/dist/module.d.mts +12 -125
  2. package/dist/module.json +4 -4
  3. package/dist/module.mjs +1853 -1135
  4. package/dist/modules/drupal/adapter/index.d.mts +6 -0
  5. package/dist/modules/drupal/adapter/index.mjs +762 -0
  6. package/dist/modules/drupal/graphql/base/fragment.paragraphsBlokkliEditState.graphql +44 -0
  7. package/dist/modules/drupal/graphql/base/fragment.paragraphsBlokkliMutatedField.graphql +11 -0
  8. package/dist/modules/drupal/graphql/base/fragment.paragraphsBlokkliMutationItem.graphql +9 -0
  9. package/dist/modules/drupal/graphql/base/fragment.paragraphsBlokkliMutationResult.graphql +7 -0
  10. package/dist/modules/drupal/graphql/base/fragment.paragraphsBlokkliViolation.graphql +7 -0
  11. package/dist/modules/drupal/graphql/base/query.pbConfig.graphql +96 -0
  12. package/dist/modules/drupal/graphql/base/query.pbEditState.graphql +15 -0
  13. package/dist/modules/drupal/graphql/features/conversions.graphql +44 -0
  14. package/dist/modules/drupal/graphql/features/import-existing.graphql +34 -0
  15. package/dist/{runtime/adapter/drupal/graphql → modules/drupal/graphql/features}/library.graphql +17 -0
  16. package/dist/modules/drupal/graphql/features/media-library.graphql +28 -0
  17. package/dist/modules/drupal/graphql/features/preview-grant.graphql +13 -0
  18. package/dist/modules/drupal/graphql/features/publish.graphql +15 -0
  19. package/dist/modules/drupal/graphql/features/publishNew.graphql +59 -0
  20. package/dist/modules/drupal/graphql/mutations/add.graphql +25 -0
  21. package/dist/modules/drupal/graphql/mutations/add_clipboard_text.graphql +25 -0
  22. package/dist/modules/drupal/graphql/mutations/add_entity_reference.graphql +31 -0
  23. package/dist/modules/drupal/graphql/mutations/add_entity_reference_multiple.graphql +25 -0
  24. package/dist/modules/drupal/graphql/mutations/add_file.graphql +27 -0
  25. package/dist/modules/drupal/graphql/mutations/add_image.graphql +27 -0
  26. package/dist/modules/drupal/graphql/mutations/add_video_remote.graphql +25 -0
  27. package/dist/modules/drupal/graphql/mutations/bulk_update_behavior_settings.graphql +15 -0
  28. package/dist/modules/drupal/graphql/mutations/duplicate.graphql +33 -0
  29. package/dist/modules/drupal/graphql/mutations/move.graphql +25 -0
  30. package/dist/modules/drupal/graphql/mutations/move_multiple.graphql +25 -0
  31. package/dist/modules/drupal/graphql/mutations/redo.graphql +14 -0
  32. package/dist/modules/drupal/graphql/mutations/remove.graphql +15 -0
  33. package/dist/modules/drupal/graphql/mutations/remove_multiple.graphql +15 -0
  34. package/dist/modules/drupal/graphql/mutations/replace_host_entity_media.graphql +20 -0
  35. package/dist/modules/drupal/graphql/mutations/replace_media.graphql +22 -0
  36. package/dist/modules/drupal/graphql/mutations/revertAllChanges.graphql +14 -0
  37. package/dist/modules/drupal/graphql/mutations/setHistoryIndex.graphql +15 -0
  38. package/dist/modules/drupal/graphql/mutations/setMutationStatus.graphql +16 -0
  39. package/dist/modules/drupal/graphql/mutations/takeOwnership.graphql +14 -0
  40. package/dist/modules/drupal/graphql/mutations/undo.graphql +14 -0
  41. package/dist/modules/drupal/graphql/mutations/update_behavior_setting.graphql +23 -0
  42. package/dist/modules/drupal/graphql/mutations/update_field_value.graphql +22 -0
  43. package/dist/modules/drupal/graphql/mutations/update_host_entity_field_value.graphql +20 -0
  44. package/dist/modules/drupal/index.d.mts +10 -0
  45. package/dist/modules/drupal/index.mjs +151 -0
  46. package/dist/runtime/adapter/index.d.ts +30 -4
  47. package/dist/runtime/blokkliPlugins/AddAction/index.vue +39 -54
  48. package/dist/runtime/blokkliPlugins/AddAction/index.vue.d.ts +26 -0
  49. package/dist/runtime/blokkliPlugins/ContextMenu/Menu/index.vue +38 -64
  50. package/dist/runtime/blokkliPlugins/ContextMenu/Menu/index.vue.d.ts +12 -0
  51. package/dist/runtime/blokkliPlugins/ContextMenu/index.vue +19 -30
  52. package/dist/runtime/blokkliPlugins/ContextMenu/index.vue.d.ts +37 -0
  53. package/dist/runtime/blokkliPlugins/DebugOverlay/index.vue +15 -23
  54. package/dist/runtime/blokkliPlugins/DebugOverlay/index.vue.d.ts +21 -0
  55. package/dist/runtime/blokkliPlugins/DroppableEdit/index.vue +27 -44
  56. package/dist/runtime/blokkliPlugins/DroppableEdit/index.vue.d.ts +41 -0
  57. package/dist/runtime/blokkliPlugins/ItemAction/index.vue +39 -85
  58. package/dist/runtime/blokkliPlugins/ItemAction/index.vue.d.ts +83 -0
  59. package/dist/runtime/blokkliPlugins/ItemDropdown/index.vue +22 -26
  60. package/dist/runtime/blokkliPlugins/ItemDropdown/index.vue.d.ts +17 -0
  61. package/dist/runtime/blokkliPlugins/MenuButton/index.vue +30 -38
  62. package/dist/runtime/blokkliPlugins/MenuButton/index.vue.d.ts +32 -0
  63. package/dist/runtime/blokkliPlugins/Sidebar/Detached/index.vue +146 -211
  64. package/dist/runtime/blokkliPlugins/Sidebar/Detached/index.vue.d.ts +91 -0
  65. package/dist/runtime/blokkliPlugins/Sidebar/index.vue +95 -139
  66. package/dist/runtime/blokkliPlugins/Sidebar/index.vue.d.ts +85 -0
  67. package/dist/runtime/blokkliPlugins/ToolbarButton/index.vue +38 -57
  68. package/dist/runtime/blokkliPlugins/ToolbarButton/index.vue.d.ts +48 -0
  69. package/dist/runtime/blokkliPlugins/TourItem/index.vue +20 -29
  70. package/dist/runtime/blokkliPlugins/TourItem/index.vue.d.ts +20 -0
  71. package/dist/runtime/blokkliPlugins/ViewOption/index.vue +45 -59
  72. package/dist/runtime/blokkliPlugins/ViewOption/index.vue.d.ts +39 -0
  73. package/dist/runtime/components/Blocks/Fragment/index.vue +13 -17
  74. package/dist/runtime/components/Blocks/Fragment/index.vue.d.ts +6 -0
  75. package/dist/runtime/components/Blocks/FromLibrary/index.vue +23 -30
  76. package/dist/runtime/components/Blocks/FromLibrary/index.vue.d.ts +6 -0
  77. package/dist/runtime/components/BlokkliEditable.vue +29 -49
  78. package/dist/runtime/components/BlokkliEditable.vue.d.ts +34 -0
  79. package/dist/runtime/components/BlokkliField.vue +100 -159
  80. package/dist/runtime/components/BlokkliField.vue.d.ts +133 -0
  81. package/dist/runtime/components/BlokkliItem.vue +43 -66
  82. package/dist/runtime/components/BlokkliItem.vue.d.ts +26 -0
  83. package/dist/runtime/components/BlokkliProvider.vue +50 -87
  84. package/dist/runtime/components/BlokkliProvider.vue.d.ts +51 -0
  85. package/dist/runtime/components/Edit/Actions/index.vue +116 -164
  86. package/dist/runtime/components/Edit/Actions/index.vue.d.ts +2 -0
  87. package/dist/runtime/components/Edit/AddListItem/index.vue +45 -66
  88. package/dist/runtime/components/Edit/AddListItem/index.vue.d.ts +28 -0
  89. package/dist/runtime/components/Edit/AnimationCanvas/index.vue +52 -88
  90. package/dist/runtime/components/Edit/AnimationCanvas/index.vue.d.ts +2 -0
  91. package/dist/runtime/components/Edit/AppMenu/index.vue +12 -15
  92. package/dist/runtime/components/Edit/AppMenu/index.vue.d.ts +2 -0
  93. package/dist/runtime/components/Edit/BlockProxy/index.vue +48 -84
  94. package/dist/runtime/components/Edit/BlockProxy/index.vue.d.ts +10 -0
  95. package/dist/runtime/components/Edit/BlokkliErrorBoundary.vue +16 -20
  96. package/dist/runtime/components/Edit/BlokkliErrorBoundary.vue.d.ts +23 -0
  97. package/dist/runtime/components/Edit/Dialog/index.vue +67 -103
  98. package/dist/runtime/components/Edit/Dialog/index.vue.d.ts +44 -0
  99. package/dist/runtime/components/Edit/DragInteractions/index.vue +219 -333
  100. package/dist/runtime/components/Edit/DragInteractions/index.vue.d.ts +2 -0
  101. package/dist/runtime/components/Edit/DraggableList.vue +82 -125
  102. package/dist/runtime/components/Edit/DraggableList.vue.d.ts +27 -0
  103. package/dist/runtime/components/Edit/EditIndicator.vue +34 -46
  104. package/dist/runtime/components/Edit/EditIndicator.vue.d.ts +11 -0
  105. package/dist/runtime/components/Edit/EditProvider.vue +144 -142
  106. package/dist/runtime/components/Edit/EditProvider.vue.d.ts +26 -0
  107. package/dist/runtime/components/Edit/Features/AddList/index.vue +90 -117
  108. package/dist/runtime/components/Edit/Features/AddList/index.vue.d.ts +2 -0
  109. package/dist/runtime/components/Edit/Features/Artboard/Overview/index.vue +43 -63
  110. package/dist/runtime/components/Edit/Features/Artboard/Overview/index.vue.d.ts +6 -0
  111. package/dist/runtime/components/Edit/Features/Artboard/Scrollbar/index.vue +18 -23
  112. package/dist/runtime/components/Edit/Features/Artboard/Scrollbar/index.vue.d.ts +7 -0
  113. package/dist/runtime/components/Edit/Features/Artboard/index.vue +175 -223
  114. package/dist/runtime/components/Edit/Features/Artboard/index.vue.d.ts +2 -0
  115. package/dist/runtime/components/Edit/Features/Assistant/Overlay/ResultMarkup/index.vue +7 -7
  116. package/dist/runtime/components/Edit/Features/Assistant/Overlay/ResultMarkup/index.vue.d.ts +6 -0
  117. package/dist/runtime/components/Edit/Features/Assistant/Overlay/index.vue +39 -52
  118. package/dist/runtime/components/Edit/Features/Assistant/Overlay/index.vue.d.ts +8 -0
  119. package/dist/runtime/components/Edit/Features/Assistant/index.vue +31 -40
  120. package/dist/runtime/components/Edit/Features/Assistant/index.vue.d.ts +2 -0
  121. package/dist/runtime/components/Edit/Features/BlockAddList/index.vue +225 -326
  122. package/dist/runtime/components/Edit/Features/BlockAddList/index.vue.d.ts +2 -0
  123. package/dist/runtime/components/Edit/Features/Clipboard/List/Item/File.vue +36 -44
  124. package/dist/runtime/components/Edit/Features/Clipboard/List/Item/File.vue.d.ts +3 -0
  125. package/dist/runtime/components/Edit/Features/Clipboard/List/Item/Video.vue +33 -35
  126. package/dist/runtime/components/Edit/Features/Clipboard/List/Item/Video.vue.d.ts +3 -0
  127. package/dist/runtime/components/Edit/Features/Clipboard/List/index.vue +13 -21
  128. package/dist/runtime/components/Edit/Features/Clipboard/List/index.vue.d.ts +10 -0
  129. package/dist/runtime/components/Edit/Features/Clipboard/index.vue +226 -297
  130. package/dist/runtime/components/Edit/Features/Clipboard/index.vue.d.ts +2 -0
  131. package/dist/runtime/components/Edit/Features/CommandPalette/Palette/Group/index.vue +24 -34
  132. package/dist/runtime/components/Edit/Features/CommandPalette/Palette/Group/index.vue.d.ts +22 -0
  133. package/dist/runtime/components/Edit/Features/CommandPalette/Palette/index.vue +146 -195
  134. package/dist/runtime/components/Edit/Features/CommandPalette/Palette/index.vue.d.ts +6 -0
  135. package/dist/runtime/components/Edit/Features/CommandPalette/index.vue +21 -26
  136. package/dist/runtime/components/Edit/Features/CommandPalette/index.vue.d.ts +2 -0
  137. package/dist/runtime/components/Edit/Features/Comments/AddForm/index.vue +9 -12
  138. package/dist/runtime/components/Edit/Features/Comments/AddForm/index.vue.d.ts +8 -0
  139. package/dist/runtime/components/Edit/Features/Comments/Comment/index.vue +20 -28
  140. package/dist/runtime/components/Edit/Features/Comments/Comment/index.vue.d.ts +23 -0
  141. package/dist/runtime/components/Edit/Features/Comments/Overlay/Item/index.vue +30 -42
  142. package/dist/runtime/components/Edit/Features/Comments/Overlay/Item/index.vue.d.ts +19 -0
  143. package/dist/runtime/components/Edit/Features/Comments/Overlay/index.vue +70 -100
  144. package/dist/runtime/components/Edit/Features/Comments/Overlay/index.vue.d.ts +18 -0
  145. package/dist/runtime/components/Edit/Features/Comments/index.vue +37 -48
  146. package/dist/runtime/components/Edit/Features/Comments/index.vue.d.ts +2 -0
  147. package/dist/runtime/components/Edit/Features/Conversions/index.vue +40 -56
  148. package/dist/runtime/components/Edit/Features/Conversions/index.vue.d.ts +2 -0
  149. package/dist/runtime/components/Edit/Features/Debug/Rects/index.vue +37 -50
  150. package/dist/runtime/components/Edit/Features/Debug/Rects/index.vue.d.ts +2 -0
  151. package/dist/runtime/components/Edit/Features/Debug/Viewport/index.vue +35 -44
  152. package/dist/runtime/components/Edit/Features/Debug/Viewport/index.vue.d.ts +2 -0
  153. package/dist/runtime/components/Edit/Features/Debug/index.vue +43 -57
  154. package/dist/runtime/components/Edit/Features/Debug/index.vue.d.ts +2 -0
  155. package/dist/runtime/components/Edit/Features/Delete/index.vue +31 -52
  156. package/dist/runtime/components/Edit/Features/Delete/index.vue.d.ts +2 -0
  157. package/dist/runtime/components/Edit/Features/Diff/DiffView/index.vue +68 -107
  158. package/dist/runtime/components/Edit/Features/Diff/DiffView/index.vue.d.ts +2 -0
  159. package/dist/runtime/components/Edit/Features/Diff/index.vue +17 -19
  160. package/dist/runtime/components/Edit/Features/Diff/index.vue.d.ts +2 -0
  161. package/dist/runtime/components/Edit/Features/DraggingOverlay/DragItems/index.vue +193 -337
  162. package/dist/runtime/components/Edit/Features/DraggingOverlay/DragItems/index.vue.d.ts +27 -0
  163. package/dist/runtime/components/Edit/Features/DraggingOverlay/DropTargets/fragment.glsl +1 -1
  164. package/dist/runtime/components/Edit/Features/DraggingOverlay/DropTargets/index.vue +391 -644
  165. package/dist/runtime/components/Edit/Features/DraggingOverlay/DropTargets/index.vue.d.ts +156 -0
  166. package/dist/runtime/components/Edit/Features/DraggingOverlay/index.vue +197 -323
  167. package/dist/runtime/components/Edit/Features/DraggingOverlay/index.vue.d.ts +2 -0
  168. package/dist/runtime/components/Edit/Features/Duplicate/index.vue +49 -71
  169. package/dist/runtime/components/Edit/Features/Duplicate/index.vue.d.ts +2 -0
  170. package/dist/runtime/components/Edit/Features/Edit/index.vue +41 -71
  171. package/dist/runtime/components/Edit/Features/Edit/index.vue.d.ts +2 -0
  172. package/dist/runtime/components/Edit/Features/EditForm/Frame/index.vue +35 -51
  173. package/dist/runtime/components/Edit/Features/EditForm/Frame/index.vue.d.ts +11 -0
  174. package/dist/runtime/components/Edit/Features/EditForm/index.vue +104 -140
  175. package/dist/runtime/components/Edit/Features/EditForm/index.vue.d.ts +2 -0
  176. package/dist/runtime/components/Edit/Features/EditableField/Overlay/Contenteditable/index.vue +18 -25
  177. package/dist/runtime/components/Edit/Features/EditableField/Overlay/Contenteditable/index.vue.d.ts +12 -0
  178. package/dist/runtime/components/Edit/Features/EditableField/Overlay/Frame/index.vue +34 -50
  179. package/dist/runtime/components/Edit/Features/EditableField/Overlay/Frame/index.vue.d.ts +16 -0
  180. package/dist/runtime/components/Edit/Features/EditableField/Overlay/Plaintext/index.vue +40 -51
  181. package/dist/runtime/components/Edit/Features/EditableField/Overlay/Plaintext/index.vue.d.ts +16 -0
  182. package/dist/runtime/components/Edit/Features/EditableField/Overlay/index.vue +145 -207
  183. package/dist/runtime/components/Edit/Features/EditableField/Overlay/index.vue.d.ts +15 -0
  184. package/dist/runtime/components/Edit/Features/EditableField/index.vue +90 -143
  185. package/dist/runtime/components/Edit/Features/EditableField/index.vue.d.ts +2 -0
  186. package/dist/runtime/components/Edit/Features/EditableMask/index.vue +28 -36
  187. package/dist/runtime/components/Edit/Features/EditableMask/index.vue.d.ts +2 -0
  188. package/dist/runtime/components/Edit/Features/EntityTitle/index.vue +49 -58
  189. package/dist/runtime/components/Edit/Features/EntityTitle/index.vue.d.ts +2 -0
  190. package/dist/runtime/components/Edit/Features/Exit/index.vue +16 -20
  191. package/dist/runtime/components/Edit/Features/Exit/index.vue.d.ts +2 -0
  192. package/dist/runtime/components/Edit/Features/FieldAreas/Overlay/index.vue +4 -15
  193. package/dist/runtime/components/Edit/Features/FieldAreas/Overlay/index.vue.d.ts +2 -0
  194. package/dist/runtime/components/Edit/Features/FieldAreas/index.vue +19 -21
  195. package/dist/runtime/components/Edit/Features/FieldAreas/index.vue.d.ts +2 -0
  196. package/dist/runtime/components/Edit/Features/Fragments/Dialog/Item/index.vue +29 -36
  197. package/dist/runtime/components/Edit/Features/Fragments/Dialog/Item/index.vue.d.ts +8 -0
  198. package/dist/runtime/components/Edit/Features/Fragments/Dialog/index.vue +82 -99
  199. package/dist/runtime/components/Edit/Features/Fragments/Dialog/index.vue.d.ts +12 -0
  200. package/dist/runtime/components/Edit/Features/Fragments/index.vue +41 -51
  201. package/dist/runtime/components/Edit/Features/Fragments/index.vue.d.ts +2 -0
  202. package/dist/runtime/components/Edit/Features/Grid/index.vue +17 -20
  203. package/dist/runtime/components/Edit/Features/Grid/index.vue.d.ts +2 -0
  204. package/dist/runtime/components/Edit/Features/Help/Shortcuts/index.vue +24 -35
  205. package/dist/runtime/components/Edit/Features/Help/Shortcuts/index.vue.d.ts +2 -0
  206. package/dist/runtime/components/Edit/Features/Help/index.vue +17 -21
  207. package/dist/runtime/components/Edit/Features/Help/index.vue.d.ts +2 -0
  208. package/dist/runtime/components/Edit/Features/History/List/index.vue +46 -67
  209. package/dist/runtime/components/Edit/Features/History/List/index.vue.d.ts +5 -0
  210. package/dist/runtime/components/Edit/Features/History/index.vue +54 -69
  211. package/dist/runtime/components/Edit/Features/History/index.vue.d.ts +2 -0
  212. package/dist/runtime/components/Edit/Features/ImportExisting/Dialog/index.vue +48 -66
  213. package/dist/runtime/components/Edit/Features/ImportExisting/Dialog/index.vue.d.ts +14 -0
  214. package/dist/runtime/components/Edit/Features/ImportExisting/index.vue +38 -54
  215. package/dist/runtime/components/Edit/Features/ImportExisting/index.vue.d.ts +2 -0
  216. package/dist/runtime/components/Edit/Features/Library/EditReusable/index.vue +88 -126
  217. package/dist/runtime/components/Edit/Features/Library/EditReusable/index.vue.d.ts +13 -0
  218. package/dist/runtime/components/Edit/Features/Library/LibraryDialog/Item/index.vue +33 -35
  219. package/dist/runtime/components/Edit/Features/Library/LibraryDialog/Item/index.vue.d.ts +9 -0
  220. package/dist/runtime/components/Edit/Features/Library/LibraryDialog/index.vue +119 -146
  221. package/dist/runtime/components/Edit/Features/Library/LibraryDialog/index.vue.d.ts +12 -0
  222. package/dist/runtime/components/Edit/Features/Library/ReusableDialog/index.vue +37 -47
  223. package/dist/runtime/components/Edit/Features/Library/ReusableDialog/index.vue.d.ts +12 -0
  224. package/dist/runtime/components/Edit/Features/Library/index.vue +85 -117
  225. package/dist/runtime/components/Edit/Features/Library/index.vue.d.ts +2 -0
  226. package/dist/runtime/components/Edit/Features/MediaLibrary/Library/Item.vue +13 -19
  227. package/dist/runtime/components/Edit/Features/MediaLibrary/Library/Item.vue.d.ts +19 -0
  228. package/dist/runtime/components/Edit/Features/MediaLibrary/Library/index.vue +76 -120
  229. package/dist/runtime/components/Edit/Features/MediaLibrary/Library/index.vue.d.ts +6 -0
  230. package/dist/runtime/components/Edit/Features/MediaLibrary/index.vue +107 -140
  231. package/dist/runtime/components/Edit/Features/MediaLibrary/index.vue.d.ts +2 -0
  232. package/dist/runtime/components/Edit/Features/MediaLibrary/types.d.ts +1 -1
  233. package/dist/runtime/components/Edit/Features/MultiSelect/Overlay/index.vue +128 -188
  234. package/dist/runtime/components/Edit/Features/MultiSelect/Overlay/index.vue.d.ts +12 -0
  235. package/dist/runtime/components/Edit/Features/MultiSelect/index.vue +42 -57
  236. package/dist/runtime/components/Edit/Features/MultiSelect/index.vue.d.ts +2 -0
  237. package/dist/runtime/components/Edit/Features/Options/Form/Checkbox/index.vue +27 -34
  238. package/dist/runtime/components/Edit/Features/Options/Form/Checkbox/index.vue.d.ts +14 -0
  239. package/dist/runtime/components/Edit/Features/Options/Form/Checkboxes/index.vue +55 -75
  240. package/dist/runtime/components/Edit/Features/Options/Form/Checkboxes/index.vue.d.ts +24 -0
  241. package/dist/runtime/components/Edit/Features/Options/Form/Color/index.vue +18 -21
  242. package/dist/runtime/components/Edit/Features/Options/Form/Color/index.vue.d.ts +12 -0
  243. package/dist/runtime/components/Edit/Features/Options/Form/DateTimeLocal/index.vue +36 -0
  244. package/dist/runtime/components/Edit/Features/Options/Form/DateTimeLocal/index.vue.d.ts +20 -0
  245. package/dist/runtime/components/Edit/Features/Options/Form/Group.vue +7 -9
  246. package/dist/runtime/components/Edit/Features/Options/Form/Group.vue.d.ts +29 -0
  247. package/dist/runtime/components/Edit/Features/Options/Form/Item.vue +87 -93
  248. package/dist/runtime/components/Edit/Features/Options/Form/Item.vue.d.ts +14 -0
  249. package/dist/runtime/components/Edit/Features/Options/Form/Number/index.vue +31 -45
  250. package/dist/runtime/components/Edit/Features/Options/Form/Number/index.vue.d.ts +21 -0
  251. package/dist/runtime/components/Edit/Features/Options/Form/Radios/index.vue +54 -78
  252. package/dist/runtime/components/Edit/Features/Options/Form/Radios/index.vue.d.ts +30 -0
  253. package/dist/runtime/components/Edit/Features/Options/Form/Range/index.vue +23 -33
  254. package/dist/runtime/components/Edit/Features/Options/Form/Range/index.vue.d.ts +18 -0
  255. package/dist/runtime/components/Edit/Features/Options/Form/Text/index.vue +17 -26
  256. package/dist/runtime/components/Edit/Features/Options/Form/Text/index.vue.d.ts +17 -0
  257. package/dist/runtime/components/Edit/Features/Options/Form/index.vue +183 -252
  258. package/dist/runtime/components/Edit/Features/Options/Form/index.vue.d.ts +9 -0
  259. package/dist/runtime/components/Edit/Features/Options/index.vue +38 -66
  260. package/dist/runtime/components/Edit/Features/Options/index.vue.d.ts +2 -0
  261. package/dist/runtime/components/Edit/Features/Ownership/index.vue +26 -33
  262. package/dist/runtime/components/Edit/Features/Ownership/index.vue.d.ts +2 -0
  263. package/dist/runtime/components/Edit/Features/Preview/index.vue +22 -27
  264. package/dist/runtime/components/Edit/Features/Preview/index.vue.d.ts +2 -0
  265. package/dist/runtime/components/Edit/Features/PreviewGrant/QrCode/index.vue +11 -15
  266. package/dist/runtime/components/Edit/Features/PreviewGrant/QrCode/index.vue.d.ts +5 -0
  267. package/dist/runtime/components/Edit/Features/PreviewGrant/index.vue +31 -36
  268. package/dist/runtime/components/Edit/Features/PreviewGrant/index.vue.d.ts +2 -0
  269. package/dist/runtime/components/Edit/Features/ProxyView/index.vue +18 -20
  270. package/dist/runtime/components/Edit/Features/ProxyView/index.vue.d.ts +2 -0
  271. package/dist/runtime/components/Edit/Features/Publish/Dialog/Item.vue +118 -0
  272. package/dist/runtime/components/Edit/Features/Publish/Dialog/Item.vue.d.ts +18 -0
  273. package/dist/runtime/components/Edit/Features/Publish/Dialog/index.vue +251 -0
  274. package/dist/runtime/components/Edit/Features/Publish/Dialog/index.vue.d.ts +19 -0
  275. package/dist/runtime/components/Edit/Features/Publish/Dialog/types.d.ts +7 -0
  276. package/dist/runtime/components/Edit/Features/Publish/index.vue +70 -74
  277. package/dist/runtime/components/Edit/Features/Publish/index.vue.d.ts +2 -0
  278. package/dist/runtime/components/Edit/Features/ResponsivePreview/Frame/index.vue +48 -54
  279. package/dist/runtime/components/Edit/Features/ResponsivePreview/Frame/index.vue.d.ts +27 -0
  280. package/dist/runtime/components/Edit/Features/ResponsivePreview/index.vue +77 -103
  281. package/dist/runtime/components/Edit/Features/ResponsivePreview/index.vue.d.ts +2 -0
  282. package/dist/runtime/components/Edit/Features/Revert/index.vue +27 -32
  283. package/dist/runtime/components/Edit/Features/Revert/index.vue.d.ts +2 -0
  284. package/dist/runtime/components/Edit/Features/Search/Overlay/Results/Content/index.vue +66 -87
  285. package/dist/runtime/components/Edit/Features/Search/Overlay/Results/Content/index.vue.d.ts +17 -0
  286. package/dist/runtime/components/Edit/Features/Search/Overlay/Results/Page/index.vue +89 -139
  287. package/dist/runtime/components/Edit/Features/Search/Overlay/Results/Page/index.vue.d.ts +18 -0
  288. package/dist/runtime/components/Edit/Features/Search/Overlay/index.vue +79 -108
  289. package/dist/runtime/components/Edit/Features/Search/Overlay/index.vue.d.ts +12 -0
  290. package/dist/runtime/components/Edit/Features/Search/index.vue +30 -37
  291. package/dist/runtime/components/Edit/Features/Search/index.vue.d.ts +2 -0
  292. package/dist/runtime/components/Edit/Features/Selection/Overlay/index.vue +67 -103
  293. package/dist/runtime/components/Edit/Features/Selection/Overlay/index.vue.d.ts +9 -0
  294. package/dist/runtime/components/Edit/Features/Selection/OverlayFallback/index.vue +28 -36
  295. package/dist/runtime/components/Edit/Features/Selection/OverlayFallback/index.vue.d.ts +5 -0
  296. package/dist/runtime/components/Edit/Features/Selection/index.vue +131 -217
  297. package/dist/runtime/components/Edit/Features/Selection/index.vue.d.ts +2 -0
  298. package/dist/runtime/components/Edit/Features/Settings/Dialog/FeatureSetting/index.vue +50 -81
  299. package/dist/runtime/components/Edit/Features/Settings/Dialog/FeatureSetting/index.vue.d.ts +9 -0
  300. package/dist/runtime/components/Edit/Features/Settings/Dialog/index.vue +73 -117
  301. package/dist/runtime/components/Edit/Features/Settings/Dialog/index.vue.d.ts +6 -0
  302. package/dist/runtime/components/Edit/Features/Settings/index.vue +41 -53
  303. package/dist/runtime/components/Edit/Features/Settings/index.vue.d.ts +2 -0
  304. package/dist/runtime/components/Edit/Features/Structure/List/Field/index.vue +65 -101
  305. package/dist/runtime/components/Edit/Features/Structure/List/Field/index.vue.d.ts +15 -0
  306. package/dist/runtime/components/Edit/Features/Structure/List/Item/index.vue +71 -99
  307. package/dist/runtime/components/Edit/Features/Structure/List/Item/index.vue.d.ts +12 -0
  308. package/dist/runtime/components/Edit/Features/Structure/List/index.vue +17 -26
  309. package/dist/runtime/components/Edit/Features/Structure/List/index.vue.d.ts +12 -0
  310. package/dist/runtime/components/Edit/Features/Structure/index.vue +31 -40
  311. package/dist/runtime/components/Edit/Features/Structure/index.vue.d.ts +2 -0
  312. package/dist/runtime/components/Edit/Features/Theme/Color/index.vue +32 -53
  313. package/dist/runtime/components/Edit/Features/Theme/Color/index.vue.d.ts +7 -0
  314. package/dist/runtime/components/Edit/Features/Theme/GeneratedCode/index.vue +7 -10
  315. package/dist/runtime/components/Edit/Features/Theme/GeneratedCode/index.vue.d.ts +2 -0
  316. package/dist/runtime/components/Edit/Features/Theme/index.vue +49 -63
  317. package/dist/runtime/components/Edit/Features/Theme/index.vue.d.ts +2 -0
  318. package/dist/runtime/components/Edit/Features/TouchActionBar/Bar/index.vue +9 -10
  319. package/dist/runtime/components/Edit/Features/TouchActionBar/Bar/index.vue.d.ts +12 -0
  320. package/dist/runtime/components/Edit/Features/TouchActionBar/index.vue +16 -19
  321. package/dist/runtime/components/Edit/Features/TouchActionBar/index.vue.d.ts +2 -0
  322. package/dist/runtime/components/Edit/Features/Tour/Overlay/index.vue +117 -172
  323. package/dist/runtime/components/Edit/Features/Tour/Overlay/index.vue.d.ts +6 -0
  324. package/dist/runtime/components/Edit/Features/Tour/Popup/index.vue +8 -10
  325. package/dist/runtime/components/Edit/Features/Tour/Popup/index.vue.d.ts +8 -0
  326. package/dist/runtime/components/Edit/Features/Tour/index.vue +21 -25
  327. package/dist/runtime/components/Edit/Features/Tour/index.vue.d.ts +2 -0
  328. package/dist/runtime/components/Edit/Features/Transform/index.vue +80 -120
  329. package/dist/runtime/components/Edit/Features/Transform/index.vue.d.ts +2 -0
  330. package/dist/runtime/components/Edit/Features/Translations/Banner/index.vue +20 -28
  331. package/dist/runtime/components/Edit/Features/Translations/Banner/index.vue.d.ts +6 -0
  332. package/dist/runtime/components/Edit/Features/Translations/index.vue +96 -139
  333. package/dist/runtime/components/Edit/Features/Translations/index.vue.d.ts +2 -0
  334. package/dist/runtime/components/Edit/Features/Validations/Overlay/Item.vue +21 -35
  335. package/dist/runtime/components/Edit/Features/Validations/Overlay/Item.vue.d.ts +6 -0
  336. package/dist/runtime/components/Edit/Features/Validations/Overlay/index.vue +30 -39
  337. package/dist/runtime/components/Edit/Features/Validations/Overlay/index.vue.d.ts +6 -0
  338. package/dist/runtime/components/Edit/Features/Validations/SidebarItem/index.vue +20 -28
  339. package/dist/runtime/components/Edit/Features/Validations/SidebarItem/index.vue.d.ts +9 -0
  340. package/dist/runtime/components/Edit/Features/Validations/index.vue +26 -32
  341. package/dist/runtime/components/Edit/Features/Validations/index.vue.d.ts +2 -0
  342. package/dist/runtime/components/Edit/Features/index.vue +33 -52
  343. package/dist/runtime/components/Edit/Features/index.vue.d.ts +6 -0
  344. package/dist/runtime/components/Edit/Form/Group/index.vue +23 -0
  345. package/dist/runtime/components/Edit/Form/Group/index.vue.d.ts +20 -0
  346. package/dist/runtime/components/Edit/Form/Item/index.vue +5 -0
  347. package/dist/runtime/components/Edit/Form/Item/index.vue.d.ts +14 -0
  348. package/dist/runtime/components/Edit/Form/Textarea/index.vue +27 -0
  349. package/dist/runtime/components/Edit/Form/Textarea/index.vue.d.ts +16 -0
  350. package/dist/runtime/components/Edit/Form/Toggle/index.vue +21 -0
  351. package/dist/runtime/components/Edit/Form/Toggle/index.vue.d.ts +14 -0
  352. package/dist/runtime/components/Edit/FormOverlay/Header/index.vue +11 -22
  353. package/dist/runtime/components/Edit/FormOverlay/Header/index.vue.d.ts +18 -0
  354. package/dist/runtime/components/Edit/FormOverlay/index.vue +15 -21
  355. package/dist/runtime/components/Edit/FormOverlay/index.vue.d.ts +25 -0
  356. package/dist/runtime/components/Edit/Highlight/index.vue +31 -70
  357. package/dist/runtime/components/Edit/Highlight/index.vue.d.ts +20 -0
  358. package/dist/runtime/components/Edit/Icon/index.vue +11 -14
  359. package/dist/runtime/components/Edit/Icon/index.vue.d.ts +7 -0
  360. package/dist/runtime/components/Edit/InfoBox/index.vue +5 -6
  361. package/dist/runtime/components/Edit/InfoBox/index.vue.d.ts +5 -0
  362. package/dist/runtime/components/Edit/ItemIcon/index.vue +13 -13
  363. package/dist/runtime/components/Edit/ItemIcon/index.vue.d.ts +6 -0
  364. package/dist/runtime/components/Edit/Loading/index.vue +8 -9
  365. package/dist/runtime/components/Edit/Loading/index.vue.d.ts +6 -0
  366. package/dist/runtime/components/Edit/Messages/Item/index.vue +30 -41
  367. package/dist/runtime/components/Edit/Messages/Item/index.vue.d.ts +11 -0
  368. package/dist/runtime/components/Edit/Messages/index.vue +13 -17
  369. package/dist/runtime/components/Edit/Messages/index.vue.d.ts +2 -0
  370. package/dist/runtime/components/Edit/Pagination/index.vue +19 -0
  371. package/dist/runtime/components/Edit/Pagination/index.vue.d.ts +12 -0
  372. package/dist/runtime/components/Edit/PreviewProvider.vue +123 -177
  373. package/dist/runtime/components/Edit/PreviewProvider.vue.d.ts +24 -0
  374. package/dist/runtime/components/Edit/RelativeTime/index.vue +19 -25
  375. package/dist/runtime/components/Edit/RelativeTime/index.vue.d.ts +15 -0
  376. package/dist/runtime/components/Edit/Resizable/index.vue +45 -55
  377. package/dist/runtime/components/Edit/Resizable/index.vue.d.ts +13 -0
  378. package/dist/runtime/components/Edit/ScaleToFit/index.vue +49 -36
  379. package/dist/runtime/components/Edit/ScaleToFit/index.vue.d.ts +15 -0
  380. package/dist/runtime/components/Edit/ScrollBoundary/index.vue +11 -27
  381. package/dist/runtime/components/Edit/ScrollBoundary/index.vue.d.ts +23 -0
  382. package/dist/runtime/components/Edit/ShortcutIndicator/index.vue +47 -59
  383. package/dist/runtime/components/Edit/ShortcutIndicator/index.vue.d.ts +20 -0
  384. package/dist/runtime/components/Edit/Sortli/index.vue +45 -59
  385. package/dist/runtime/components/Edit/Sortli/index.vue.d.ts +14 -0
  386. package/dist/runtime/components/Edit/SystemRequirements/index.vue +29 -43
  387. package/dist/runtime/components/Edit/SystemRequirements/index.vue.d.ts +2 -0
  388. package/dist/runtime/components/Edit/Toolbar/index.vue +26 -41
  389. package/dist/runtime/components/Edit/Toolbar/index.vue.d.ts +6 -0
  390. package/dist/runtime/components/Edit/ViewportBlockingRect/index.vue +29 -51
  391. package/dist/runtime/components/Edit/ViewportBlockingRect/index.vue.d.ts +20 -0
  392. package/dist/runtime/components/Edit/index.d.ts +6 -1
  393. package/dist/runtime/components/Edit/index.js +11 -1
  394. package/dist/runtime/composables/defineBlokkli.d.ts +3 -3
  395. package/dist/runtime/composables/defineBlokkli.js +40 -27
  396. package/dist/runtime/composables/defineBlokkliFeature.d.ts +1 -1
  397. package/dist/runtime/composables/defineBlokkliFeature.js +1 -1
  398. package/dist/runtime/composables/defineBlokkliFragment.d.ts +2 -2
  399. package/dist/runtime/composables/defineBlokkliFragment.js +16 -24
  400. package/dist/runtime/css/output.css +1 -1
  401. package/dist/runtime/helpers/definitionProvider.d.ts +18 -0
  402. package/dist/runtime/helpers/definitionProvider.js +96 -0
  403. package/dist/runtime/helpers/domProvider.d.ts +2 -1
  404. package/dist/runtime/helpers/domProvider.js +6 -3
  405. package/dist/runtime/helpers/editComponents/index.d.ts +2 -0
  406. package/dist/runtime/helpers/editComponents/index.js +10 -0
  407. package/dist/runtime/helpers/featuresProvider.d.ts +3 -2
  408. package/dist/runtime/helpers/featuresProvider.js +20 -11
  409. package/dist/runtime/helpers/frameEventBus.d.ts +1 -1
  410. package/dist/runtime/helpers/imports/index.d.ts +1 -0
  411. package/dist/runtime/helpers/imports/index.js +44 -0
  412. package/dist/runtime/helpers/index.d.ts +1 -0
  413. package/dist/runtime/helpers/index.js +11 -8
  414. package/dist/runtime/helpers/runtimeHelpers/index.d.ts +28 -2
  415. package/dist/runtime/helpers/runtimeHelpers/index.js +96 -10
  416. package/dist/runtime/helpers/stateProvider.d.ts +1 -1
  417. package/dist/runtime/helpers/storageProvider.js +1 -1
  418. package/dist/runtime/helpers/textProvider.d.ts +1 -1
  419. package/dist/runtime/helpers/textProvider.js +2 -2
  420. package/dist/runtime/helpers/themeProvider.js +5 -2
  421. package/dist/runtime/helpers/transform.d.ts +1 -1
  422. package/dist/runtime/helpers/typesProvider.d.ts +2 -2
  423. package/dist/runtime/helpers/uiProvider.js +4 -5
  424. package/dist/runtime/helpers/webgl/index.js +1 -1
  425. package/dist/runtime/icons/arrow-right-thin.svg +3 -0
  426. package/dist/runtime/public/_blokkli-assets/check.svg +6 -0
  427. package/dist/runtime/public/_blokkli-assets/loader.svg +1 -0
  428. package/dist/runtime/types/blokkOptions.d.ts +11 -2
  429. package/dist/runtime/types/index.d.ts +38 -15
  430. package/dist/shared/editor.gz_ac6uT.d.mts +431 -0
  431. package/dist/types.d.mts +1 -1
  432. package/package.json +26 -18
  433. package/dist/module.cjs +0 -5
  434. package/dist/module.d.ts +0 -129
  435. package/dist/runtime/adapter/drupal/graphql/base.graphql +0 -944
  436. package/dist/runtime/adapter/drupal/graphqlMiddleware.d.ts +0 -2
  437. package/dist/runtime/adapter/drupal/graphqlMiddleware.js +0 -680
  438. package/dist/runtime/helpers/options.d.ts +0 -2
  439. package/dist/runtime/helpers/options.js +0 -21
  440. package/dist/runtime/types/generatedModuleTypes.d.ts +0 -49
  441. package/dist/types.d.ts +0 -1
  442. /package/dist/{runtime/adapter/drupal/graphql → modules/drupal/graphql/features}/comments.graphql +0 -0
  443. /package/dist/{runtime/adapter/drupal/graphql → modules/drupal/graphql/features}/fragments.graphql +0 -0
  444. /package/dist/{runtime/adapter/drupal/graphql → modules/drupal/graphql/features}/search.graphql +0 -0
  445. /package/dist/{runtime/adapter/drupal/graphql → modules/drupal/graphql/features}/transform.graphql +0 -0
  446. /package/dist/runtime/{types/generatedModuleTypes.js → components/Edit/Features/Publish/Dialog/types.js} +0 -0
  447. /package/dist/runtime/public/{Inter.var.woff2 → _blokkli-assets/Inter.var.woff2} +0 -0
@@ -1,3 +1,4 @@
1
+ import type { BlokkliIcon } from '#blokkli-build/icons';
1
2
  type DefinitionOptionText = {
2
3
  type: 'text';
3
4
  default: string;
@@ -22,6 +23,14 @@ type DefinitionOptionRange = {
22
23
  step: number;
23
24
  group?: string;
24
25
  };
26
+ type DefinitionOptionDateTimeLocal = {
27
+ type: 'datetime-local';
28
+ label: string;
29
+ default?: string;
30
+ min?: string;
31
+ max?: string;
32
+ group?: string;
33
+ };
25
34
  type DefinitionOptionCheckbox = {
26
35
  type: 'checkbox';
27
36
  default: boolean;
@@ -66,7 +75,7 @@ type DefinitionOptionRadiosRadios = {
66
75
  options: Record<string, string>;
67
76
  };
68
77
  type DefinitionOptionRadiosIconsOption = {
69
- icon: `icon-blokkli-option-${string}`;
78
+ icon: BlokkliIcon;
70
79
  label: string;
71
80
  };
72
81
  type DefinitionOptionRadiosIcons = {
@@ -79,5 +88,5 @@ type DefinitionOptionRadios = {
79
88
  default: string;
80
89
  group?: string;
81
90
  } & (DefinitionOptionRadiosColors | DefinitionOptionRadiosGrid | DefinitionOptionRadiosRadios | DefinitionOptionRadiosIcons);
82
- export type BlockOptionDefinition = DefinitionOptionColor | DefinitionOptionCheckbox | DefinitionOptionCheckboxes | DefinitionOptionRadios | DefinitionOptionText | DefinitionOptionRange | DefinitionOptionNumber;
91
+ export type BlockOptionDefinition = DefinitionOptionColor | DefinitionOptionCheckbox | DefinitionOptionCheckboxes | DefinitionOptionRadios | DefinitionOptionText | DefinitionOptionRange | DefinitionOptionNumber | DefinitionOptionDateTimeLocal;
83
92
  export {};
@@ -11,20 +11,21 @@ import type { StateProvider } from '../helpers/stateProvider.js';
11
11
  import type { TextProvider } from '../helpers/textProvider.js';
12
12
  import type { eventBus } from './../helpers/eventBus.js';
13
13
  import type { BlockOptionDefinition } from './blokkOptions.js';
14
- import type { BlokkliAdapter, AdapterContext, MutationResponseLike } from './../adapter.js';
14
+ import type { BlokkliAdapter, AdapterContext, MutationResponseLike } from './../adapter/index.js';
15
15
  import type { BroadcastProvider } from '#blokkli/helpers/broadcastProvider';
16
16
  import type { FeaturesProvider } from '#blokkli/helpers/featuresProvider';
17
- import type { BlokkliIcon } from '#blokkli/icons';
17
+ import type { BlokkliIcon } from '#blokkli-build/icons';
18
18
  import type { SettingsGroup, Viewport } from '#blokkli/constants';
19
- import type { BlockBundleWithNested, FieldListItemTyped, GlobalOptionsKey, ValidChunkNames, ValidFieldListTypes, ValidGlobalConfigKeys } from '#blokkli/generated-types';
20
- import type { globalOptions } from '#blokkli/definitions';
19
+ import type { BlockBundleWithNested, FieldListItemTyped, GlobalOptionsKey, ValidChunkNames, ValidFieldListTypes, ValidGlobalConfigKeys, BundleProps } from '#blokkli-build/generated-types';
21
20
  import type { ThemeProvider } from '#blokkli/helpers/themeProvider';
21
+ import type { GlobalOptionsType } from '#blokkli-build/definitions';
22
22
  import type { CommandsProvider } from '#blokkli/helpers/commandsProvider';
23
23
  import type { TourProvider } from '#blokkli/helpers/tourProvider';
24
24
  import type { DropAreaProvider } from '#blokkli/helpers/dropAreaProvider';
25
25
  import type { RGB } from './theme.js';
26
26
  import type { DebugProvider } from '#blokkli/helpers/debugProvider';
27
27
  import type getVideoId from 'get-video-id';
28
+ import type { DefinitionProvider } from '../helpers/definitionProvider.js';
28
29
  export type MutateWithLoadingStateFunction = (promise: () => Promise<MutationResponseLike<any>> | undefined, errorMessage?: string, successMessage?: string) => Promise<boolean>;
29
30
  type GetType<T> = T extends {
30
31
  options: infer O;
@@ -43,10 +44,10 @@ export type BlockDefinitionOptionsInput = {
43
44
  type WithOptions<T extends BlockDefinitionOptionsInput> = {
44
45
  [K in keyof T]: GetType<T[K]>;
45
46
  };
46
- type GlobalOptionsType = typeof globalOptions;
47
47
  type GlobalOptionsKeyTypes<T extends ValidGlobalConfigKeys> = {
48
48
  [K in T[number]]: GetType<GlobalOptionsType[K]>;
49
49
  };
50
+ export type BundleKey = keyof BundleProps;
50
51
  export type DefineBlokkliContext<T extends BlockDefinitionOptionsInput = BlockDefinitionOptionsInput, G extends ValidGlobalConfigKeys | undefined = undefined> = {
51
52
  /**
52
53
  * The UUID of the item.
@@ -83,25 +84,29 @@ export type DefineBlokkliContext<T extends BlockDefinitionOptionsInput = BlockDe
83
84
  * options.
84
85
  */
85
86
  options: ComputedRef<(T extends BlockDefinitionOptionsInput ? WithOptions<T> : object) & (G extends ValidGlobalConfigKeys ? GlobalOptionsKeyTypes<G> : object)>;
87
+ /**
88
+ * The provider context.
89
+ */
90
+ provider: ComputedRef<BlokkliProviderEntityContext | null>;
86
91
  };
87
- type DetermineVisibleOptionsContext<T extends BlockDefinitionOptionsInput = BlockDefinitionOptionsInput, G extends GlobalOptionsKey[] | undefined = undefined> = {
92
+ type DetermineVisibleOptionsContext<T extends BlockDefinitionOptionsInput = BlockDefinitionOptionsInput, G extends GlobalOptionsKey[] | undefined = undefined, B extends BundleKey | string = string> = {
88
93
  options: (T extends BlockDefinitionOptionsInput ? WithOptions<T> : object) & (G extends ValidGlobalConfigKeys ? GlobalOptionsKeyTypes<G> : object);
89
94
  parentType: BlockBundleWithNested | undefined;
90
95
  fieldListType: ValidFieldListTypes;
91
- props: Record<string, any>;
96
+ props: B extends BundleKey ? BundleProps[B] : Record<string, any>;
92
97
  entity: AdapterContext;
93
98
  };
94
99
  type ExtractGlobalOptions<G extends GlobalOptionsKey[]> = G[number] extends GlobalOptionsKey ? G[number] : never;
95
100
  type CombineKeysAndGlobalOptions<T extends BlockDefinitionOptionsInput, G extends GlobalOptionsKey[] | undefined> = keyof T | ExtractGlobalOptions<NonNullable<G>>;
96
101
  export type BlokkliDefinitionAddBehaviour = 'no-form' | 'form' | `editable:${string}`;
97
- export type BlokkliDefinitionInputEditor<Options extends BlockDefinitionOptionsInput = BlockDefinitionOptionsInput, GlobalOptions extends GlobalOptionsKey[] | undefined = undefined> = {
102
+ export type BlokkliDefinitionInputEditor<Options extends BlockDefinitionOptionsInput = BlockDefinitionOptionsInput, GlobalOptions extends GlobalOptionsKey[] | undefined = undefined, Bundle extends BundleKey | string = string> = {
98
103
  /**
99
104
  * Determine which options should be visible in the editor based on the
100
105
  * given context.
101
106
  *
102
107
  * If a method is defined, it is called whenever any of the options change.
103
108
  */
104
- determineVisibleOptions?: (ctx: DetermineVisibleOptionsContext<Options, GlobalOptions>) => Array<CombineKeysAndGlobalOptions<Options, GlobalOptions>>;
109
+ determineVisibleOptions?: (ctx: DetermineVisibleOptionsContext<Options, GlobalOptions, Bundle>) => Array<CombineKeysAndGlobalOptions<Options, GlobalOptions>>;
105
110
  /**
106
111
  * Disable editing for blocks that don't have any editable fields.
107
112
  *
@@ -244,11 +249,11 @@ export type BlockDefinitionRenderForFieldListType = {
244
249
  fieldListType: ValidFieldListTypes;
245
250
  };
246
251
  export type BlockDefinitionRenderFor = BlockDefinitionRenderForParent | BlockDefinitionRenderForFieldList | BlockDefinitionRenderForFieldListType;
247
- export type BlockDefinitionInput<Options extends BlockDefinitionOptionsInput = BlockDefinitionOptionsInput, GlobalOptions extends GlobalOptionsKey[] | undefined = undefined> = {
252
+ export type BlockDefinitionInput<Options extends BlockDefinitionOptionsInput = BlockDefinitionOptionsInput, GlobalOptions extends GlobalOptionsKey[] | undefined = [], Bundle extends BundleKey | string = string> = {
248
253
  /**
249
254
  * The bundle ID of the block, e.g. "text" or "section_title".
250
255
  */
251
- bundle: string;
256
+ bundle: Bundle;
252
257
  /**
253
258
  * Define the name of a block bundle that supports nested blocks.
254
259
  * If a bundle is defined, then this component will be rendered if the
@@ -277,16 +282,20 @@ export type BlockDefinitionInput<Options extends BlockDefinitionOptionsInput = B
277
282
  /**
278
283
  * Settings for the behaviour in the editor.
279
284
  */
280
- editor?: BlokkliDefinitionInputEditor<Options, GlobalOptions>;
285
+ editor?: BlokkliDefinitionInputEditor<Options, GlobalOptions, Bundle>;
281
286
  };
282
- export type InjectedBlokkliItem = ComputedRef<{
287
+ export type RuntimeBlockDefinitionInput = {
288
+ bundle: string;
289
+ };
290
+ export type InjectedBlokkliItem = {
283
291
  index: ComputedRef<number>;
284
292
  uuid: string;
285
293
  options?: Record<string, string> | undefined;
286
294
  isEditing: boolean;
287
295
  parentType?: BlockBundleWithNested;
288
296
  fieldListType?: ValidFieldListTypes;
289
- }>;
297
+ fragmentName?: string;
298
+ };
290
299
  export type FieldListItem = {
291
300
  uuid: string;
292
301
  bundle: string;
@@ -926,6 +935,7 @@ export type ItemEditContext = {
926
935
  eventBus: Eventbus;
927
936
  mutatedOptions: MutatedOptions;
928
937
  dom?: DomProvider;
938
+ definitions: DefinitionProvider;
929
939
  };
930
940
  export interface BlokkliApp {
931
941
  /**
@@ -944,6 +954,7 @@ export interface BlokkliApp {
944
954
  keyboard: KeyboardProvider;
945
955
  ui: UiProvider;
946
956
  animation: AnimationProvider;
957
+ definitions: DefinitionProvider;
947
958
  state: StateProvider;
948
959
  context: ComputedRef<AdapterContext>;
949
960
  $t: TextProvider;
@@ -1009,7 +1020,7 @@ export type FeatureDefinitionSettingSlider = {
1009
1020
  export type FeatureDefinitionSettingMethod = {
1010
1021
  type: 'method';
1011
1022
  label: string;
1012
- method: () => void;
1023
+ method: (app: BlokkliApp) => void;
1013
1024
  group?: SettingsGroup;
1014
1025
  viewports?: Viewport[];
1015
1026
  };
@@ -1158,5 +1169,17 @@ export interface LibraryItemProps {
1158
1169
  label?: string;
1159
1170
  uuid?: string;
1160
1171
  }
1172
+ export type PublishOptions = {
1173
+ canPublish: boolean;
1174
+ isRevisionable: boolean;
1175
+ hasRevisionLogMessage: boolean;
1176
+ lastChanged?: string | null;
1177
+ };
1178
+ export type GetEditStatesItem = {
1179
+ hostEntityType: string;
1180
+ hostEntityUuid: string;
1181
+ entity: EditEntity;
1182
+ currentUserIsOwner: boolean;
1183
+ };
1161
1184
  declare const _default: {};
1162
1185
  export default _default;
@@ -0,0 +1,431 @@
1
+ import { WatchEvent, Nuxt } from 'nuxt/schema';
2
+ import { FeatureDefinition, AdapterMethods, FragmentDefinitionInput, BlockDefinitionInput, BlockDefinitionOptionsInput } from '../../dist/runtime/types/index.js';
3
+ import { ModuleOptionsSettings } from '#blokkli-build/module-types';
4
+ import { ThemeName, Theme } from '../../dist/runtime/types/theme.js';
5
+ import { Resolver } from '@nuxt/kit';
6
+
7
+ type TemplateCallback = (context: ModuleContext) => string | Promise<string>;
8
+ type TemplateDependency = 'icons' | 'features' | 'block-content' | 'block-path' | 'block-global-options';
9
+ type TemplateOptions = {
10
+ dependencies?: TemplateDependency[];
11
+ write?: boolean;
12
+ };
13
+ type ModuleCodeTemplate = {
14
+ type: 'code';
15
+ name: string;
16
+ buildCode: TemplateCallback;
17
+ buildTypes: TemplateCallback;
18
+ options: Required<TemplateOptions>;
19
+ };
20
+ type ModuleFileTemplate = {
21
+ type: 'file';
22
+ fileName: string;
23
+ build: TemplateCallback;
24
+ options: Required<TemplateOptions>;
25
+ };
26
+ type ModuleTemplate = ModuleCodeTemplate | ModuleFileTemplate;
27
+
28
+ type CollectedBlockType = 'main' | 'context' | 'fragment';
29
+ declare class CollectedBlockFile extends CollectedFile {
30
+ folder: string;
31
+ iconPath: string | null;
32
+ iconContents: string | null;
33
+ diffComponentPath: string | null;
34
+ proxyComponentPath: string | null;
35
+ type: CollectedBlockType | null;
36
+ definition: ExtractedFragmentDefinitionInput | ExtractedBlockDefinitionInput | null;
37
+ definitionSource: string | null;
38
+ hasBlokkliField: boolean;
39
+ identifier: string;
40
+ chunkName: string;
41
+ variations: string[];
42
+ private objectLiteralString;
43
+ private hasSiblingFile;
44
+ handleChange(helper: ModuleHelper): Promise<boolean>;
45
+ }
46
+ declare class BlockCollector extends Collector<CollectedBlockFile> {
47
+ private patterns;
48
+ constructor(helper: ModuleHelper);
49
+ init(): Promise<void>;
50
+ runHooks(): Promise<any>;
51
+ createCollectedFile(filePath: string, fileContents?: string): CollectedBlockFile;
52
+ private findBlockForFolderFile;
53
+ protected handleAdd(filePath: string): Promise<boolean>;
54
+ protected handleUnlink(filePath: string): Promise<boolean>;
55
+ protected handleChange(filePath: string): Promise<boolean>;
56
+ applies(filePath: string): Promise<boolean>;
57
+ getDependencyTypes(): TemplateDependency[];
58
+ }
59
+
60
+ type ExtractedFeatureDefinition = {
61
+ id: string;
62
+ componentName: string;
63
+ componentPath: string;
64
+ definition: FeatureDefinition<AdapterMethods[]>;
65
+ definitionSource: string;
66
+ };
67
+ declare class CollectedFeatureFile extends CollectedFile {
68
+ private definition;
69
+ private composableName;
70
+ private enabled;
71
+ private objectLiteral;
72
+ getDefinition(): ExtractedFeatureDefinition | null;
73
+ handleChange(): Promise<boolean>;
74
+ isEnabled(): boolean;
75
+ /**
76
+ * Disable the feature.
77
+ */
78
+ disable(): void;
79
+ }
80
+ declare class FeatureCollector extends Collector<CollectedFeatureFile> {
81
+ protected needsFileContents: boolean;
82
+ private disabledFeatures;
83
+ private srcFromModule;
84
+ constructor(helper: ModuleHelper);
85
+ getEnabledFeatures(): ExtractedFeatureDefinition[];
86
+ init(): Promise<void>;
87
+ runHooks(): Promise<any>;
88
+ createCollectedFile(filePath: string, fileContents?: string): CollectedFeatureFile;
89
+ applies(filePath: string): Promise<boolean>;
90
+ getDependencyTypes(): TemplateDependency[];
91
+ disableFeature(id: string): void;
92
+ }
93
+
94
+ type ExtractedBlockDefinitionInput = BlockDefinitionInput;
95
+ type ExtractedFragmentDefinitionInput = FragmentDefinitionInput;
96
+ type GetBundlePropsTypeResult = {
97
+ typeName: string;
98
+ from: string;
99
+ };
100
+ type GetBundlePropsType = (name: string, definition: CollectedBlockFile) => GetBundlePropsTypeResult;
101
+ type BuildRelativeImports = {
102
+ TYPES: string;
103
+ CONSTANTS: string;
104
+ ADAPTER: string;
105
+ TYPES_THEME: string;
106
+ TYPES_BLOKK_OPTIONS: string;
107
+ };
108
+ type ModuleOptionsStorageDefaults = {
109
+ /**
110
+ * The default favorite block bundles.
111
+ */
112
+ blockFavorites?: string[];
113
+ };
114
+ type AlterHookContext<K extends string, T extends CollectedFile> = {
115
+ [P in K]: T[];
116
+ };
117
+ /**
118
+ * Options for the module.
119
+ */
120
+ type ModuleOptions = {
121
+ /**
122
+ * An array of blökkli modules to use.
123
+ */
124
+ modules?: BlokkliModule[];
125
+ /**
126
+ * The pattern of source files to scan for blokkli components.
127
+ */
128
+ pattern?: string[];
129
+ /**
130
+ * Define reusable options that can be used in blokkli item components by
131
+ * referencing the option name.
132
+ */
133
+ globalOptions?: BlockDefinitionOptionsInput;
134
+ /**
135
+ * Custom path where the blökkli edit adapter can be found.
136
+ *
137
+ * Must be an absolute path and the file must exist when the module
138
+ * is initialised.
139
+ */
140
+ editAdapterPath?: string;
141
+ /**
142
+ * Define available chunk groups.
143
+ *
144
+ * The idea of this feature is to split rarely used components into separate
145
+ * chunks, so that they are not imported on each page.
146
+ *
147
+ * This value should only be set if the component is actually used rarely.
148
+ * Having too many chunks has the opposite effect, as rendering a page
149
+ * requires multiple requests.
150
+ *
151
+ * If left empty, all components are bundled in a default chunk, which should
152
+ * contain components that are used for most pages.
153
+ */
154
+ chunkNames?: string[];
155
+ /**
156
+ * Valid field list types.
157
+ *
158
+ * If one or more values are defined, they can be passed to the BlokkliField
159
+ * component as a prop. The value is made available to all blokkli items inside
160
+ * this field.
161
+ */
162
+ fieldListTypes?: string[];
163
+ /**
164
+ * The entity type of blokkli items.
165
+ *
166
+ * Using the paragraphs_blokkli integration this value should be set to "paragraph".
167
+ */
168
+ itemEntityType?: string;
169
+ /**
170
+ * Provide overrides for the translations.
171
+ */
172
+ translations?: Record<string, Record<string, string>>;
173
+ /**
174
+ * The default/fallback language for the editor.
175
+ */
176
+ defaultLanguage?: string;
177
+ /**
178
+ * Force the editor to always be in the default language.
179
+ *
180
+ * The default behaviour is that the editor is rendered in the same language
181
+ * as the page entity. Setting this value to true will always render the
182
+ * editor in the default language.
183
+ */
184
+ forceDefaultLanguage?: boolean;
185
+ /**
186
+ * Add custom features by defining either a pattern or path to a feature component.
187
+ */
188
+ featureImports?: string[];
189
+ /**
190
+ * Theme colors for the editor.
191
+ *
192
+ * Accent colors are used for selections, highlights, buttons.
193
+ * Mono colors are used for the UI elements in the editor.
194
+ */
195
+ theme?: ThemeName | Partial<Theme>;
196
+ /**
197
+ * Enable the theme editor feature.
198
+ */
199
+ enableThemeEditor?: boolean;
200
+ /**
201
+ * blokkli generates a JSON file that contains all the defined block
202
+ * options, keyed by block bundle. By default the file is output to
203
+ * .nuxt/blokkli/options-schema.json, but the path can be overriden here.
204
+ *
205
+ * The path can use aliases like ~ or @ and must also contain the file
206
+ * name including the extension.
207
+ */
208
+ schemaOptionsPath?: string;
209
+ /**
210
+ * Override the feature settings.
211
+ */
212
+ settingsOverride?: ModuleOptionsSettings;
213
+ /**
214
+ * The default storage values for non-settings values.
215
+ *
216
+ * These values are not visible in the settings dialog, but are still
217
+ * "settable" by the user through interactions. This option allows you to
218
+ * define default values for these settings, like default favorite block
219
+ * bundles.
220
+ */
221
+ storageDefaults?: ModuleOptionsStorageDefaults;
222
+ /**
223
+ * Method that is called for each block bundle component to generate the
224
+ * prop types.
225
+ *
226
+ * These types are used if you access a block item with the generated
227
+ * FieldListItemTyped type, for example through:
228
+ * const { rootBlocks } = defineBlokkli().
229
+ *
230
+ * or using <BlokkliField v-slot="{ items }">.
231
+ *
232
+ * The method receives the name of the bundle and the extracted block
233
+ * definition as the second argument.
234
+ * The return value should be an object with these properties:
235
+ *
236
+ * - typeName: The name of the type
237
+ * - from: Where the type can be imported from
238
+ *
239
+ * For example, if the method returns this object:
240
+ * ```typescript
241
+ * {
242
+ * typeName: 'ParagraphTextWithImageFragment',
243
+ * from: '#graphql-operations'
244
+ * }
245
+ * ```
246
+ *
247
+ * Then the module will generate this TypeScript code:
248
+ *
249
+ * ```typescript
250
+ * import type { ParagraphTextWithImageFragment } from '#graphql-operations'
251
+ * ```
252
+ *
253
+ * And assign the imported type as the type for the `props` property for this bundle.
254
+ *
255
+ * Then, for example in a block component:
256
+ *
257
+ * ```typescript
258
+ * const { siblings, index } = defineBlokkli()
259
+ *
260
+ * const previousBlock = computed(() => siblings.value[index.value - 1])
261
+ *
262
+ * const previousTitle = computed(() => {
263
+ * // The previous block in the list is a title.
264
+ * if (previousBlock.value?.bundle === 'title') {
265
+ * // The type of the props are now typed correctly.
266
+ * const title = previousBlock.value.props.title
267
+ * }
268
+ * })
269
+ * ```
270
+ */
271
+ getBundlePropsType?: GetBundlePropsType;
272
+ };
273
+ interface ModuleHooks {
274
+ /**
275
+ * Alter features.
276
+ */
277
+ 'blokkli:alter-features': (ctx: AlterHookContext<'features', CollectedFeatureFile>) => void | Promise<void>;
278
+ /**
279
+ * Alter icons.
280
+ */
281
+ 'blokkli:alter-icons': (ctx: AlterHookContext<'icons', CollectedFile>) => void | Promise<void>;
282
+ /**
283
+ * Alter blocks.
284
+ */
285
+ 'blokkli:alter-blocks': (ctx: AlterHookContext<'blocks', CollectedBlockFile>) => void | Promise<void>;
286
+ }
287
+
288
+ declare class FileCache {
289
+ private cache;
290
+ private existingFiles;
291
+ /**
292
+ * Read a file from disk.
293
+ */
294
+ read(filePath: string): Promise<string>;
295
+ /**
296
+ * Delete a file.
297
+ */
298
+ delete(filePath: string): void;
299
+ /**
300
+ * Check if a file exists.
301
+ */
302
+ fileExists(filePath: string): boolean;
303
+ /**
304
+ * Handles the builder watch event.
305
+ */
306
+ handleWatchEvent(event: WatchEvent, filePath: string): Promise<void>;
307
+ }
308
+
309
+ type ModuleHelperResolvers = {
310
+ /**
311
+ * Resolver for files relative to the module src.
312
+ */
313
+ module: Resolver;
314
+ /**
315
+ * Resolver for files relative to the blökkli build directory.
316
+ */
317
+ build: Resolver;
318
+ /**
319
+ * Resolver for files relative to the Nuxt app source directory.
320
+ */
321
+ src: Resolver;
322
+ /**
323
+ * Resolver for the app directory.
324
+ */
325
+ app: Resolver;
326
+ };
327
+ type ModuleHelperPaths = {
328
+ blokkliBuildDir: string;
329
+ srcDir: string;
330
+ editAdapter: string;
331
+ };
332
+ declare class ModuleHelper {
333
+ nuxt: Nuxt;
334
+ relativePaths: BuildRelativeImports;
335
+ paths: ModuleHelperPaths;
336
+ resolvers: ModuleHelperResolvers;
337
+ fileCache: FileCache;
338
+ readonly options: ModuleOptions;
339
+ readonly isDev: boolean;
340
+ readonly isModuleBuild: boolean;
341
+ constructor(nuxt: Nuxt, moduleUrl: string, providedOptions: ModuleOptions);
342
+ /**
343
+ * Transform the path relative to the module's build directory.
344
+ *
345
+ * @param path - The absolute path.
346
+ *
347
+ * @returns The path relative to the module's build directory.
348
+ */
349
+ toModuleBuildRelative(path: string): string;
350
+ private findEditAdapterPath;
351
+ getChunkNames(): string[];
352
+ addComponent(name: string): void;
353
+ addComposable(name: string): void;
354
+ addAlias(name: string, path: string): void;
355
+ }
356
+
357
+ type HandleWatchEventResult = {
358
+ hasChanged: boolean;
359
+ };
360
+ declare class CollectedFile {
361
+ readonly filePath: string;
362
+ fileContents: string;
363
+ constructor(filePath: string, fileContents: string);
364
+ handleChange(_helper: ModuleHelper): Promise<boolean>;
365
+ }
366
+ declare abstract class Collector<T extends CollectedFile = CollectedFile> {
367
+ protected helper: ModuleHelper;
368
+ files: Map<string, T>;
369
+ protected needsFileContents: boolean;
370
+ constructor(helper: ModuleHelper);
371
+ abstract init(): Promise<any>;
372
+ abstract runHooks(): Promise<any>;
373
+ abstract applies(filePath: string): Promise<boolean>;
374
+ abstract createCollectedFile(filePath: string, fileContents?: string): T;
375
+ abstract getDependencyTypes(): TemplateDependency[];
376
+ addFile(filePath: string): Promise<void>;
377
+ protected handleAdd(filePath: string): Promise<boolean>;
378
+ protected handleChange(filePath: string): Promise<boolean>;
379
+ protected handleUnlink(filePath: string): Promise<boolean> | boolean;
380
+ private handleAddDir;
381
+ private handleUnlinkDir;
382
+ handleWatchEvent(event: WatchEvent, filePath: string): Promise<HandleWatchEventResult>;
383
+ }
384
+
385
+ declare class IconCollector extends Collector {
386
+ protected needsFileContents: boolean;
387
+ private srcFromModule;
388
+ constructor(helper: ModuleHelper);
389
+ init(): Promise<void>;
390
+ runHooks(): Promise<any>;
391
+ applies(filePath: string): Promise<boolean>;
392
+ getDependencyTypes(): TemplateDependency[];
393
+ createCollectedFile(filePath: string, fileContents?: string): CollectedFile;
394
+ }
395
+
396
+ declare class ThemeData {
397
+ css: string;
398
+ fullTheme: Record<string, any>;
399
+ hasCustomTheme: boolean;
400
+ constructor(helper: ModuleHelper);
401
+ }
402
+
403
+ declare class ModuleContext {
404
+ helper: ModuleHelper;
405
+ icons: IconCollector;
406
+ features: FeatureCollector;
407
+ blocks: BlockCollector;
408
+ theme: ThemeData;
409
+ private templates;
410
+ private templateContents;
411
+ constructor(helper: ModuleHelper, icons: IconCollector, features: FeatureCollector, blocks: BlockCollector, theme: ThemeData);
412
+ private getTemplateContents;
413
+ private setTemplateContents;
414
+ generateTemplates(dependencies?: TemplateDependency[]): Promise<void>;
415
+ addTemplate(template: ModuleTemplate): void;
416
+ }
417
+
418
+ type Blokkli = {
419
+ helper: ModuleHelper;
420
+ context: ModuleContext;
421
+ };
422
+ type BlokkliModuleInit<O extends object> = {
423
+ alterOptions?: (options: ModuleOptions) => void;
424
+ setup: (app: Blokkli, options: O) => Promise<void> | void;
425
+ };
426
+ type BlokkliModule<O extends object = object> = {
427
+ options?: O;
428
+ init: BlokkliModuleInit<O>;
429
+ };
430
+
431
+ export type { BlokkliModule as B, ModuleHooks as M, ModuleOptions as a };
package/dist/types.d.mts CHANGED
@@ -1 +1 @@
1
- export { type ModuleOptions, default } from './module.js'
1
+ export { type ModuleOptions, default } from './module.mjs'