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

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 (445) hide show
  1. package/dist/module.d.mts +12 -194
  2. package/dist/module.json +4 -4
  3. package/dist/module.mjs +1862 -1306
  4. package/dist/modules/drupal/graphql/base/fragment.blokkliProps.graphql +8 -0
  5. package/dist/modules/drupal/graphql/base/fragment.paragraphsBlokkliEditState.graphql +44 -0
  6. package/dist/modules/drupal/graphql/base/fragment.paragraphsBlokkliMutatedField.graphql +11 -0
  7. package/dist/modules/drupal/graphql/base/fragment.paragraphsBlokkliMutationItem.graphql +9 -0
  8. package/dist/modules/drupal/graphql/base/fragment.paragraphsBlokkliMutationResult.graphql +7 -0
  9. package/dist/modules/drupal/graphql/base/fragment.paragraphsBlokkliViolation.graphql +7 -0
  10. package/dist/modules/drupal/graphql/base/fragment.paragraphsFieldItem.graphql +6 -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 +177 -0
  46. package/dist/{runtime/adapter/drupal/graphqlMiddleware.d.ts → modules/drupal/runtime/adapter/index.d.ts} +1 -0
  47. package/dist/modules/drupal/runtime/adapter/index.js +765 -0
  48. package/dist/runtime/adapter/index.d.ts +30 -4
  49. package/dist/runtime/blokkliPlugins/AddAction/index.vue +39 -54
  50. package/dist/runtime/blokkliPlugins/AddAction/index.vue.d.ts +26 -0
  51. package/dist/runtime/blokkliPlugins/ContextMenu/Menu/index.vue +38 -64
  52. package/dist/runtime/blokkliPlugins/ContextMenu/Menu/index.vue.d.ts +12 -0
  53. package/dist/runtime/blokkliPlugins/ContextMenu/index.vue +19 -30
  54. package/dist/runtime/blokkliPlugins/ContextMenu/index.vue.d.ts +20 -0
  55. package/dist/runtime/blokkliPlugins/DebugOverlay/index.vue +15 -23
  56. package/dist/runtime/blokkliPlugins/DebugOverlay/index.vue.d.ts +16 -0
  57. package/dist/runtime/blokkliPlugins/DroppableEdit/index.vue +28 -45
  58. package/dist/runtime/blokkliPlugins/DroppableEdit/index.vue.d.ts +24 -0
  59. package/dist/runtime/blokkliPlugins/ItemAction/index.vue +39 -85
  60. package/dist/runtime/blokkliPlugins/ItemAction/index.vue.d.ts +84 -0
  61. package/dist/runtime/blokkliPlugins/ItemDropdown/index.vue +22 -26
  62. package/dist/runtime/blokkliPlugins/ItemDropdown/index.vue.d.ts +17 -0
  63. package/dist/runtime/blokkliPlugins/MenuButton/index.vue +30 -38
  64. package/dist/runtime/blokkliPlugins/MenuButton/index.vue.d.ts +32 -0
  65. package/dist/runtime/blokkliPlugins/Sidebar/Detached/index.vue +146 -211
  66. package/dist/runtime/blokkliPlugins/Sidebar/Detached/index.vue.d.ts +42 -0
  67. package/dist/runtime/blokkliPlugins/Sidebar/index.vue +95 -139
  68. package/dist/runtime/blokkliPlugins/Sidebar/index.vue.d.ts +91 -0
  69. package/dist/runtime/blokkliPlugins/ToolbarButton/index.vue +38 -57
  70. package/dist/runtime/blokkliPlugins/ToolbarButton/index.vue.d.ts +48 -0
  71. package/dist/runtime/blokkliPlugins/TourItem/index.vue +20 -29
  72. package/dist/runtime/blokkliPlugins/TourItem/index.vue.d.ts +18 -0
  73. package/dist/runtime/blokkliPlugins/ViewOption/index.vue +45 -59
  74. package/dist/runtime/blokkliPlugins/ViewOption/index.vue.d.ts +40 -0
  75. package/dist/runtime/components/Blocks/Fragment/index.vue +13 -20
  76. package/dist/runtime/components/Blocks/Fragment/index.vue.d.ts +6 -0
  77. package/dist/runtime/components/Blocks/FromLibrary/index.vue +19 -29
  78. package/dist/runtime/components/Blocks/FromLibrary/index.vue.d.ts +6 -0
  79. package/dist/runtime/components/BlokkliEditable.vue +30 -49
  80. package/dist/runtime/components/BlokkliEditable.vue.d.ts +20 -0
  81. package/dist/runtime/components/BlokkliField.vue +102 -159
  82. package/dist/runtime/components/BlokkliField.vue.d.ts +49 -0
  83. package/dist/runtime/components/BlokkliItem.vue +43 -66
  84. package/dist/runtime/components/BlokkliItem.vue.d.ts +26 -0
  85. package/dist/runtime/components/BlokkliProvider.vue +51 -87
  86. package/dist/runtime/components/BlokkliProvider.vue.d.ts +34 -0
  87. package/dist/runtime/components/Edit/Actions/index.vue +119 -164
  88. package/dist/runtime/components/Edit/Actions/index.vue.d.ts +2 -0
  89. package/dist/runtime/components/Edit/AddListItem/index.vue +45 -66
  90. package/dist/runtime/components/Edit/AddListItem/index.vue.d.ts +28 -0
  91. package/dist/runtime/components/Edit/AnimationCanvas/index.vue +52 -88
  92. package/dist/runtime/components/Edit/AnimationCanvas/index.vue.d.ts +2 -0
  93. package/dist/runtime/components/Edit/AppMenu/index.vue +12 -15
  94. package/dist/runtime/components/Edit/AppMenu/index.vue.d.ts +2 -0
  95. package/dist/runtime/components/Edit/BlockProxy/index.vue +50 -82
  96. package/dist/runtime/components/Edit/BlockProxy/index.vue.d.ts +10 -0
  97. package/dist/runtime/components/Edit/BlokkliErrorBoundary.vue +17 -21
  98. package/dist/runtime/components/Edit/BlokkliErrorBoundary.vue.d.ts +12 -0
  99. package/dist/runtime/components/Edit/Dialog/index.vue +67 -103
  100. package/dist/runtime/components/Edit/Dialog/index.vue.d.ts +44 -0
  101. package/dist/runtime/components/Edit/DragInteractions/index.vue +220 -334
  102. package/dist/runtime/components/Edit/DragInteractions/index.vue.d.ts +2 -0
  103. package/dist/runtime/components/Edit/DraggableList.vue +82 -125
  104. package/dist/runtime/components/Edit/DraggableList.vue.d.ts +27 -0
  105. package/dist/runtime/components/Edit/EditIndicator.vue +34 -46
  106. package/dist/runtime/components/Edit/EditIndicator.vue.d.ts +11 -0
  107. package/dist/runtime/components/Edit/EditProvider.vue +148 -142
  108. package/dist/runtime/components/Edit/EditProvider.vue.d.ts +26 -0
  109. package/dist/runtime/components/Edit/Features/AddList/index.vue +90 -117
  110. package/dist/runtime/components/Edit/Features/AddList/index.vue.d.ts +2 -0
  111. package/dist/runtime/components/Edit/Features/Artboard/Overview/index.vue +43 -63
  112. package/dist/runtime/components/Edit/Features/Artboard/Overview/index.vue.d.ts +6 -0
  113. package/dist/runtime/components/Edit/Features/Artboard/Scrollbar/index.vue +18 -23
  114. package/dist/runtime/components/Edit/Features/Artboard/Scrollbar/index.vue.d.ts +7 -0
  115. package/dist/runtime/components/Edit/Features/Artboard/index.vue +202 -223
  116. package/dist/runtime/components/Edit/Features/Artboard/index.vue.d.ts +2 -0
  117. package/dist/runtime/components/Edit/Features/Assistant/Overlay/ResultMarkup/index.vue +7 -7
  118. package/dist/runtime/components/Edit/Features/Assistant/Overlay/ResultMarkup/index.vue.d.ts +6 -0
  119. package/dist/runtime/components/Edit/Features/Assistant/Overlay/index.vue +41 -54
  120. package/dist/runtime/components/Edit/Features/Assistant/Overlay/index.vue.d.ts +8 -0
  121. package/dist/runtime/components/Edit/Features/Assistant/index.vue +32 -40
  122. package/dist/runtime/components/Edit/Features/Assistant/index.vue.d.ts +2 -0
  123. package/dist/runtime/components/Edit/Features/BlockAddList/index.vue +225 -326
  124. package/dist/runtime/components/Edit/Features/BlockAddList/index.vue.d.ts +2 -0
  125. package/dist/runtime/components/Edit/Features/Clipboard/List/Item/File.vue +36 -44
  126. package/dist/runtime/components/Edit/Features/Clipboard/List/Item/File.vue.d.ts +3 -0
  127. package/dist/runtime/components/Edit/Features/Clipboard/List/Item/Video.vue +33 -35
  128. package/dist/runtime/components/Edit/Features/Clipboard/List/Item/Video.vue.d.ts +3 -0
  129. package/dist/runtime/components/Edit/Features/Clipboard/List/index.vue +13 -21
  130. package/dist/runtime/components/Edit/Features/Clipboard/List/index.vue.d.ts +10 -0
  131. package/dist/runtime/components/Edit/Features/Clipboard/index.vue +227 -298
  132. package/dist/runtime/components/Edit/Features/Clipboard/index.vue.d.ts +2 -0
  133. package/dist/runtime/components/Edit/Features/CommandPalette/Palette/Group/index.vue +24 -34
  134. package/dist/runtime/components/Edit/Features/CommandPalette/Palette/Group/index.vue.d.ts +22 -0
  135. package/dist/runtime/components/Edit/Features/CommandPalette/Palette/index.vue +146 -195
  136. package/dist/runtime/components/Edit/Features/CommandPalette/Palette/index.vue.d.ts +6 -0
  137. package/dist/runtime/components/Edit/Features/CommandPalette/index.vue +21 -26
  138. package/dist/runtime/components/Edit/Features/CommandPalette/index.vue.d.ts +2 -0
  139. package/dist/runtime/components/Edit/Features/Comments/AddForm/index.vue +11 -14
  140. package/dist/runtime/components/Edit/Features/Comments/AddForm/index.vue.d.ts +8 -0
  141. package/dist/runtime/components/Edit/Features/Comments/Comment/index.vue +21 -29
  142. package/dist/runtime/components/Edit/Features/Comments/Comment/index.vue.d.ts +23 -0
  143. package/dist/runtime/components/Edit/Features/Comments/Overlay/Item/index.vue +31 -43
  144. package/dist/runtime/components/Edit/Features/Comments/Overlay/Item/index.vue.d.ts +19 -0
  145. package/dist/runtime/components/Edit/Features/Comments/Overlay/index.vue +70 -100
  146. package/dist/runtime/components/Edit/Features/Comments/Overlay/index.vue.d.ts +18 -0
  147. package/dist/runtime/components/Edit/Features/Comments/index.vue +37 -48
  148. package/dist/runtime/components/Edit/Features/Comments/index.vue.d.ts +2 -0
  149. package/dist/runtime/components/Edit/Features/Conversions/index.vue +40 -56
  150. package/dist/runtime/components/Edit/Features/Conversions/index.vue.d.ts +2 -0
  151. package/dist/runtime/components/Edit/Features/Debug/Rects/index.vue +37 -50
  152. package/dist/runtime/components/Edit/Features/Debug/Rects/index.vue.d.ts +2 -0
  153. package/dist/runtime/components/Edit/Features/Debug/Viewport/index.vue +35 -44
  154. package/dist/runtime/components/Edit/Features/Debug/Viewport/index.vue.d.ts +2 -0
  155. package/dist/runtime/components/Edit/Features/Debug/index.vue +43 -57
  156. package/dist/runtime/components/Edit/Features/Debug/index.vue.d.ts +2 -0
  157. package/dist/runtime/components/Edit/Features/Delete/index.vue +31 -52
  158. package/dist/runtime/components/Edit/Features/Delete/index.vue.d.ts +2 -0
  159. package/dist/runtime/components/Edit/Features/Diff/DiffView/index.vue +75 -114
  160. package/dist/runtime/components/Edit/Features/Diff/DiffView/index.vue.d.ts +2 -0
  161. package/dist/runtime/components/Edit/Features/Diff/index.vue +17 -19
  162. package/dist/runtime/components/Edit/Features/Diff/index.vue.d.ts +2 -0
  163. package/dist/runtime/components/Edit/Features/DraggingOverlay/DragItems/index.vue +193 -337
  164. package/dist/runtime/components/Edit/Features/DraggingOverlay/DragItems/index.vue.d.ts +27 -0
  165. package/dist/runtime/components/Edit/Features/DraggingOverlay/DropTargets/fragment.glsl +1 -1
  166. package/dist/runtime/components/Edit/Features/DraggingOverlay/DropTargets/index.vue +391 -644
  167. package/dist/runtime/components/Edit/Features/DraggingOverlay/DropTargets/index.vue.d.ts +27 -0
  168. package/dist/runtime/components/Edit/Features/DraggingOverlay/index.vue +197 -323
  169. package/dist/runtime/components/Edit/Features/DraggingOverlay/index.vue.d.ts +2 -0
  170. package/dist/runtime/components/Edit/Features/Duplicate/index.vue +49 -71
  171. package/dist/runtime/components/Edit/Features/Duplicate/index.vue.d.ts +2 -0
  172. package/dist/runtime/components/Edit/Features/Edit/index.vue +41 -71
  173. package/dist/runtime/components/Edit/Features/Edit/index.vue.d.ts +2 -0
  174. package/dist/runtime/components/Edit/Features/EditForm/Frame/index.vue +35 -51
  175. package/dist/runtime/components/Edit/Features/EditForm/Frame/index.vue.d.ts +11 -0
  176. package/dist/runtime/components/Edit/Features/EditForm/index.vue +104 -140
  177. package/dist/runtime/components/Edit/Features/EditForm/index.vue.d.ts +2 -0
  178. package/dist/runtime/components/Edit/Features/EditableField/Overlay/Contenteditable/index.vue +18 -25
  179. package/dist/runtime/components/Edit/Features/EditableField/Overlay/Contenteditable/index.vue.d.ts +12 -0
  180. package/dist/runtime/components/Edit/Features/EditableField/Overlay/Frame/index.vue +34 -50
  181. package/dist/runtime/components/Edit/Features/EditableField/Overlay/Frame/index.vue.d.ts +16 -0
  182. package/dist/runtime/components/Edit/Features/EditableField/Overlay/Plaintext/index.vue +40 -51
  183. package/dist/runtime/components/Edit/Features/EditableField/Overlay/Plaintext/index.vue.d.ts +16 -0
  184. package/dist/runtime/components/Edit/Features/EditableField/Overlay/index.vue +147 -209
  185. package/dist/runtime/components/Edit/Features/EditableField/Overlay/index.vue.d.ts +15 -0
  186. package/dist/runtime/components/Edit/Features/EditableField/index.vue +90 -143
  187. package/dist/runtime/components/Edit/Features/EditableField/index.vue.d.ts +2 -0
  188. package/dist/runtime/components/Edit/Features/EditableMask/index.vue +28 -36
  189. package/dist/runtime/components/Edit/Features/EditableMask/index.vue.d.ts +2 -0
  190. package/dist/runtime/components/Edit/Features/EntityTitle/index.vue +49 -58
  191. package/dist/runtime/components/Edit/Features/EntityTitle/index.vue.d.ts +2 -0
  192. package/dist/runtime/components/Edit/Features/Exit/index.vue +16 -20
  193. package/dist/runtime/components/Edit/Features/Exit/index.vue.d.ts +2 -0
  194. package/dist/runtime/components/Edit/Features/FieldAreas/Overlay/index.vue +4 -15
  195. package/dist/runtime/components/Edit/Features/FieldAreas/Overlay/index.vue.d.ts +2 -0
  196. package/dist/runtime/components/Edit/Features/FieldAreas/index.vue +19 -21
  197. package/dist/runtime/components/Edit/Features/FieldAreas/index.vue.d.ts +2 -0
  198. package/dist/runtime/components/Edit/Features/Fragments/Dialog/Item/index.vue +28 -35
  199. package/dist/runtime/components/Edit/Features/Fragments/Dialog/Item/index.vue.d.ts +8 -0
  200. package/dist/runtime/components/Edit/Features/Fragments/Dialog/index.vue +51 -74
  201. package/dist/runtime/components/Edit/Features/Fragments/Dialog/index.vue.d.ts +12 -0
  202. package/dist/runtime/components/Edit/Features/Fragments/index.vue +42 -51
  203. package/dist/runtime/components/Edit/Features/Fragments/index.vue.d.ts +2 -0
  204. package/dist/runtime/components/Edit/Features/Grid/index.vue +17 -20
  205. package/dist/runtime/components/Edit/Features/Grid/index.vue.d.ts +2 -0
  206. package/dist/runtime/components/Edit/Features/Help/Shortcuts/index.vue +24 -35
  207. package/dist/runtime/components/Edit/Features/Help/Shortcuts/index.vue.d.ts +2 -0
  208. package/dist/runtime/components/Edit/Features/Help/index.vue +19 -23
  209. package/dist/runtime/components/Edit/Features/Help/index.vue.d.ts +2 -0
  210. package/dist/runtime/components/Edit/Features/History/List/index.vue +49 -70
  211. package/dist/runtime/components/Edit/Features/History/List/index.vue.d.ts +5 -0
  212. package/dist/runtime/components/Edit/Features/History/index.vue +54 -69
  213. package/dist/runtime/components/Edit/Features/History/index.vue.d.ts +2 -0
  214. package/dist/runtime/components/Edit/Features/ImportExisting/Dialog/index.vue +48 -66
  215. package/dist/runtime/components/Edit/Features/ImportExisting/Dialog/index.vue.d.ts +14 -0
  216. package/dist/runtime/components/Edit/Features/ImportExisting/index.vue +38 -54
  217. package/dist/runtime/components/Edit/Features/ImportExisting/index.vue.d.ts +2 -0
  218. package/dist/runtime/components/Edit/Features/Library/EditReusable/index.vue +90 -128
  219. package/dist/runtime/components/Edit/Features/Library/EditReusable/index.vue.d.ts +13 -0
  220. package/dist/runtime/components/Edit/Features/Library/LibraryDialog/Item/index.vue +29 -38
  221. package/dist/runtime/components/Edit/Features/Library/LibraryDialog/Item/index.vue.d.ts +9 -0
  222. package/dist/runtime/components/Edit/Features/Library/LibraryDialog/index.vue +68 -93
  223. package/dist/runtime/components/Edit/Features/Library/LibraryDialog/index.vue.d.ts +12 -0
  224. package/dist/runtime/components/Edit/Features/Library/ReusableDialog/index.vue +39 -49
  225. package/dist/runtime/components/Edit/Features/Library/ReusableDialog/index.vue.d.ts +12 -0
  226. package/dist/runtime/components/Edit/Features/Library/index.vue +86 -117
  227. package/dist/runtime/components/Edit/Features/Library/index.vue.d.ts +2 -0
  228. package/dist/runtime/components/Edit/Features/MediaLibrary/Library/Item.vue +13 -19
  229. package/dist/runtime/components/Edit/Features/MediaLibrary/Library/Item.vue.d.ts +19 -0
  230. package/dist/runtime/components/Edit/Features/MediaLibrary/Library/index.vue +76 -112
  231. package/dist/runtime/components/Edit/Features/MediaLibrary/Library/index.vue.d.ts +6 -0
  232. package/dist/runtime/components/Edit/Features/MediaLibrary/index.vue +107 -140
  233. package/dist/runtime/components/Edit/Features/MediaLibrary/index.vue.d.ts +2 -0
  234. package/dist/runtime/components/Edit/Features/MultiSelect/Overlay/index.vue +128 -188
  235. package/dist/runtime/components/Edit/Features/MultiSelect/Overlay/index.vue.d.ts +12 -0
  236. package/dist/runtime/components/Edit/Features/MultiSelect/index.vue +42 -57
  237. package/dist/runtime/components/Edit/Features/MultiSelect/index.vue.d.ts +2 -0
  238. package/dist/runtime/components/Edit/Features/Options/Form/Checkbox/index.vue +27 -34
  239. package/dist/runtime/components/Edit/Features/Options/Form/Checkbox/index.vue.d.ts +14 -0
  240. package/dist/runtime/components/Edit/Features/Options/Form/Checkboxes/index.vue +55 -75
  241. package/dist/runtime/components/Edit/Features/Options/Form/Checkboxes/index.vue.d.ts +24 -0
  242. package/dist/runtime/components/Edit/Features/Options/Form/Color/index.vue +18 -21
  243. package/dist/runtime/components/Edit/Features/Options/Form/Color/index.vue.d.ts +12 -0
  244. package/dist/runtime/components/Edit/Features/Options/Form/DateTimeLocal/index.vue +36 -0
  245. package/dist/runtime/components/Edit/Features/Options/Form/DateTimeLocal/index.vue.d.ts +20 -0
  246. package/dist/runtime/components/Edit/Features/Options/Form/Group.vue +7 -9
  247. package/dist/runtime/components/Edit/Features/Options/Form/Group.vue.d.ts +20 -0
  248. package/dist/runtime/components/Edit/Features/Options/Form/Item.vue +87 -93
  249. package/dist/runtime/components/Edit/Features/Options/Form/Item.vue.d.ts +14 -0
  250. package/dist/runtime/components/Edit/Features/Options/Form/Number/index.vue +31 -45
  251. package/dist/runtime/components/Edit/Features/Options/Form/Number/index.vue.d.ts +21 -0
  252. package/dist/runtime/components/Edit/Features/Options/Form/Radios/index.vue +55 -79
  253. package/dist/runtime/components/Edit/Features/Options/Form/Radios/index.vue.d.ts +30 -0
  254. package/dist/runtime/components/Edit/Features/Options/Form/Range/index.vue +23 -33
  255. package/dist/runtime/components/Edit/Features/Options/Form/Range/index.vue.d.ts +18 -0
  256. package/dist/runtime/components/Edit/Features/Options/Form/Text/index.vue +17 -26
  257. package/dist/runtime/components/Edit/Features/Options/Form/Text/index.vue.d.ts +17 -0
  258. package/dist/runtime/components/Edit/Features/Options/Form/index.vue +178 -272
  259. package/dist/runtime/components/Edit/Features/Options/Form/index.vue.d.ts +9 -0
  260. package/dist/runtime/components/Edit/Features/Options/index.vue +38 -69
  261. package/dist/runtime/components/Edit/Features/Options/index.vue.d.ts +2 -0
  262. package/dist/runtime/components/Edit/Features/Ownership/index.vue +27 -34
  263. package/dist/runtime/components/Edit/Features/Ownership/index.vue.d.ts +2 -0
  264. package/dist/runtime/components/Edit/Features/Preview/index.vue +22 -27
  265. package/dist/runtime/components/Edit/Features/Preview/index.vue.d.ts +2 -0
  266. package/dist/runtime/components/Edit/Features/PreviewGrant/QrCode/index.vue +12 -16
  267. package/dist/runtime/components/Edit/Features/PreviewGrant/QrCode/index.vue.d.ts +5 -0
  268. package/dist/runtime/components/Edit/Features/PreviewGrant/index.vue +31 -36
  269. package/dist/runtime/components/Edit/Features/PreviewGrant/index.vue.d.ts +2 -0
  270. package/dist/runtime/components/Edit/Features/ProxyView/index.vue +18 -20
  271. package/dist/runtime/components/Edit/Features/ProxyView/index.vue.d.ts +2 -0
  272. package/dist/runtime/components/Edit/Features/Publish/Dialog/Item.vue +118 -0
  273. package/dist/runtime/components/Edit/Features/Publish/Dialog/Item.vue.d.ts +18 -0
  274. package/dist/runtime/components/Edit/Features/Publish/Dialog/index.vue +251 -0
  275. package/dist/runtime/components/Edit/Features/Publish/Dialog/index.vue.d.ts +19 -0
  276. package/dist/runtime/components/Edit/Features/Publish/Dialog/types.d.ts +7 -0
  277. package/dist/runtime/components/Edit/Features/Publish/index.vue +85 -71
  278. package/dist/runtime/components/Edit/Features/Publish/index.vue.d.ts +2 -0
  279. package/dist/runtime/components/Edit/Features/ResponsivePreview/Frame/index.vue +48 -54
  280. package/dist/runtime/components/Edit/Features/ResponsivePreview/Frame/index.vue.d.ts +16 -0
  281. package/dist/runtime/components/Edit/Features/ResponsivePreview/index.vue +77 -103
  282. package/dist/runtime/components/Edit/Features/ResponsivePreview/index.vue.d.ts +2 -0
  283. package/dist/runtime/components/Edit/Features/Revert/index.vue +27 -32
  284. package/dist/runtime/components/Edit/Features/Revert/index.vue.d.ts +2 -0
  285. package/dist/runtime/components/Edit/Features/Search/Overlay/Results/Content/index.vue +67 -88
  286. package/dist/runtime/components/Edit/Features/Search/Overlay/Results/Content/index.vue.d.ts +17 -0
  287. package/dist/runtime/components/Edit/Features/Search/Overlay/Results/Page/index.vue +89 -139
  288. package/dist/runtime/components/Edit/Features/Search/Overlay/Results/Page/index.vue.d.ts +18 -0
  289. package/dist/runtime/components/Edit/Features/Search/Overlay/index.vue +79 -108
  290. package/dist/runtime/components/Edit/Features/Search/Overlay/index.vue.d.ts +12 -0
  291. package/dist/runtime/components/Edit/Features/Search/index.vue +30 -37
  292. package/dist/runtime/components/Edit/Features/Search/index.vue.d.ts +2 -0
  293. package/dist/runtime/components/Edit/Features/Selection/Overlay/index.vue +67 -103
  294. package/dist/runtime/components/Edit/Features/Selection/Overlay/index.vue.d.ts +9 -0
  295. package/dist/runtime/components/Edit/Features/Selection/OverlayFallback/index.vue +28 -36
  296. package/dist/runtime/components/Edit/Features/Selection/OverlayFallback/index.vue.d.ts +5 -0
  297. package/dist/runtime/components/Edit/Features/Selection/index.vue +131 -217
  298. package/dist/runtime/components/Edit/Features/Selection/index.vue.d.ts +2 -0
  299. package/dist/runtime/components/Edit/Features/Settings/Dialog/FeatureSetting/index.vue +50 -81
  300. package/dist/runtime/components/Edit/Features/Settings/Dialog/FeatureSetting/index.vue.d.ts +9 -0
  301. package/dist/runtime/components/Edit/Features/Settings/Dialog/index.vue +73 -117
  302. package/dist/runtime/components/Edit/Features/Settings/Dialog/index.vue.d.ts +6 -0
  303. package/dist/runtime/components/Edit/Features/Settings/index.vue +41 -53
  304. package/dist/runtime/components/Edit/Features/Settings/index.vue.d.ts +2 -0
  305. package/dist/runtime/components/Edit/Features/Structure/List/Field/index.vue +65 -101
  306. package/dist/runtime/components/Edit/Features/Structure/List/Field/index.vue.d.ts +15 -0
  307. package/dist/runtime/components/Edit/Features/Structure/List/Item/index.vue +71 -99
  308. package/dist/runtime/components/Edit/Features/Structure/List/Item/index.vue.d.ts +12 -0
  309. package/dist/runtime/components/Edit/Features/Structure/List/index.vue +17 -26
  310. package/dist/runtime/components/Edit/Features/Structure/List/index.vue.d.ts +12 -0
  311. package/dist/runtime/components/Edit/Features/Structure/index.vue +31 -40
  312. package/dist/runtime/components/Edit/Features/Structure/index.vue.d.ts +2 -0
  313. package/dist/runtime/components/Edit/Features/Theme/Color/index.vue +32 -53
  314. package/dist/runtime/components/Edit/Features/Theme/Color/index.vue.d.ts +7 -0
  315. package/dist/runtime/components/Edit/Features/Theme/GeneratedCode/index.vue +7 -10
  316. package/dist/runtime/components/Edit/Features/Theme/GeneratedCode/index.vue.d.ts +2 -0
  317. package/dist/runtime/components/Edit/Features/Theme/index.vue +49 -63
  318. package/dist/runtime/components/Edit/Features/Theme/index.vue.d.ts +2 -0
  319. package/dist/runtime/components/Edit/Features/TouchActionBar/Bar/index.vue +9 -10
  320. package/dist/runtime/components/Edit/Features/TouchActionBar/Bar/index.vue.d.ts +12 -0
  321. package/dist/runtime/components/Edit/Features/TouchActionBar/index.vue +16 -19
  322. package/dist/runtime/components/Edit/Features/TouchActionBar/index.vue.d.ts +2 -0
  323. package/dist/runtime/components/Edit/Features/Tour/Overlay/index.vue +119 -174
  324. package/dist/runtime/components/Edit/Features/Tour/Overlay/index.vue.d.ts +6 -0
  325. package/dist/runtime/components/Edit/Features/Tour/Popup/index.vue +10 -12
  326. package/dist/runtime/components/Edit/Features/Tour/Popup/index.vue.d.ts +8 -0
  327. package/dist/runtime/components/Edit/Features/Tour/index.vue +21 -25
  328. package/dist/runtime/components/Edit/Features/Tour/index.vue.d.ts +2 -0
  329. package/dist/runtime/components/Edit/Features/Transform/index.vue +80 -120
  330. package/dist/runtime/components/Edit/Features/Transform/index.vue.d.ts +2 -0
  331. package/dist/runtime/components/Edit/Features/Translations/Banner/index.vue +21 -29
  332. package/dist/runtime/components/Edit/Features/Translations/Banner/index.vue.d.ts +6 -0
  333. package/dist/runtime/components/Edit/Features/Translations/index.vue +96 -139
  334. package/dist/runtime/components/Edit/Features/Translations/index.vue.d.ts +2 -0
  335. package/dist/runtime/components/Edit/Features/Validations/Overlay/Item.vue +21 -35
  336. package/dist/runtime/components/Edit/Features/Validations/Overlay/Item.vue.d.ts +6 -0
  337. package/dist/runtime/components/Edit/Features/Validations/Overlay/index.vue +30 -39
  338. package/dist/runtime/components/Edit/Features/Validations/Overlay/index.vue.d.ts +6 -0
  339. package/dist/runtime/components/Edit/Features/Validations/SidebarItem/index.vue +20 -28
  340. package/dist/runtime/components/Edit/Features/Validations/SidebarItem/index.vue.d.ts +9 -0
  341. package/dist/runtime/components/Edit/Features/Validations/index.vue +27 -33
  342. package/dist/runtime/components/Edit/Features/Validations/index.vue.d.ts +2 -0
  343. package/dist/runtime/components/Edit/Features/index.vue +33 -52
  344. package/dist/runtime/components/Edit/Features/index.vue.d.ts +6 -0
  345. package/dist/runtime/components/Edit/Form/Group/index.vue +23 -0
  346. package/dist/runtime/components/Edit/Form/Group/index.vue.d.ts +18 -0
  347. package/dist/runtime/components/Edit/Form/Item/index.vue +5 -0
  348. package/dist/runtime/components/Edit/Form/Item/index.vue.d.ts +12 -0
  349. package/dist/runtime/components/Edit/Form/Textarea/index.vue +27 -0
  350. package/dist/runtime/components/Edit/Form/Textarea/index.vue.d.ts +16 -0
  351. package/dist/runtime/components/Edit/Form/Toggle/index.vue +21 -0
  352. package/dist/runtime/components/Edit/Form/Toggle/index.vue.d.ts +14 -0
  353. package/dist/runtime/components/Edit/FormOverlay/Header/index.vue +11 -22
  354. package/dist/runtime/components/Edit/FormOverlay/Header/index.vue.d.ts +18 -0
  355. package/dist/runtime/components/Edit/FormOverlay/index.vue +15 -21
  356. package/dist/runtime/components/Edit/FormOverlay/index.vue.d.ts +26 -0
  357. package/dist/runtime/components/Edit/Highlight/index.vue +31 -70
  358. package/dist/runtime/components/Edit/Highlight/index.vue.d.ts +20 -0
  359. package/dist/runtime/components/Edit/Icon/index.vue +11 -14
  360. package/dist/runtime/components/Edit/Icon/index.vue.d.ts +7 -0
  361. package/dist/runtime/components/Edit/InfoBox/index.vue +5 -6
  362. package/dist/runtime/components/Edit/InfoBox/index.vue.d.ts +5 -0
  363. package/dist/runtime/components/Edit/ItemIcon/index.vue +13 -13
  364. package/dist/runtime/components/Edit/ItemIcon/index.vue.d.ts +6 -0
  365. package/dist/runtime/components/Edit/Loading/index.vue +8 -9
  366. package/dist/runtime/components/Edit/Loading/index.vue.d.ts +6 -0
  367. package/dist/runtime/components/Edit/Messages/Item/index.vue +30 -41
  368. package/dist/runtime/components/Edit/Messages/Item/index.vue.d.ts +11 -0
  369. package/dist/runtime/components/Edit/Messages/index.vue +13 -17
  370. package/dist/runtime/components/Edit/Messages/index.vue.d.ts +2 -0
  371. package/dist/runtime/components/Edit/Pagination/index.vue +6 -8
  372. package/dist/runtime/components/Edit/Pagination/index.vue.d.ts +12 -0
  373. package/dist/runtime/components/Edit/PreviewProvider.vue +124 -177
  374. package/dist/runtime/components/Edit/PreviewProvider.vue.d.ts +24 -0
  375. package/dist/runtime/components/Edit/RelativeTime/index.vue +19 -25
  376. package/dist/runtime/components/Edit/RelativeTime/index.vue.d.ts +15 -0
  377. package/dist/runtime/components/Edit/Resizable/index.vue +45 -55
  378. package/dist/runtime/components/Edit/Resizable/index.vue.d.ts +13 -0
  379. package/dist/runtime/components/Edit/ScaleToFit/index.vue +44 -62
  380. package/dist/runtime/components/Edit/ScaleToFit/index.vue.d.ts +15 -0
  381. package/dist/runtime/components/Edit/ScrollBoundary/index.vue +11 -27
  382. package/dist/runtime/components/Edit/ScrollBoundary/index.vue.d.ts +18 -0
  383. package/dist/runtime/components/Edit/ShortcutIndicator/index.vue +47 -59
  384. package/dist/runtime/components/Edit/ShortcutIndicator/index.vue.d.ts +20 -0
  385. package/dist/runtime/components/Edit/Sortli/index.vue +45 -59
  386. package/dist/runtime/components/Edit/Sortli/index.vue.d.ts +14 -0
  387. package/dist/runtime/components/Edit/SystemRequirements/index.vue +29 -43
  388. package/dist/runtime/components/Edit/SystemRequirements/index.vue.d.ts +2 -0
  389. package/dist/runtime/components/Edit/Toolbar/index.vue +26 -41
  390. package/dist/runtime/components/Edit/Toolbar/index.vue.d.ts +6 -0
  391. package/dist/runtime/components/Edit/ViewportBlockingRect/index.vue +29 -51
  392. package/dist/runtime/components/Edit/ViewportBlockingRect/index.vue.d.ts +15 -0
  393. package/dist/runtime/components/Edit/index.d.ts +5 -1
  394. package/dist/runtime/components/Edit/index.js +9 -1
  395. package/dist/runtime/composables/defineBlokkli.d.ts +2 -2
  396. package/dist/runtime/composables/defineBlokkli.js +36 -11
  397. package/dist/runtime/composables/defineBlokkliFragment.d.ts +1 -1
  398. package/dist/runtime/composables/defineBlokkliFragment.js +24 -25
  399. package/dist/runtime/composables/useBlokkliHelper.d.ts +19 -0
  400. package/dist/runtime/composables/useBlokkliHelper.js +82 -0
  401. package/dist/runtime/css/output.css +1 -1
  402. package/dist/runtime/helpers/animationProvider.js +1 -1
  403. package/dist/runtime/helpers/composables/useBlockRegistration.d.ts +5 -0
  404. package/dist/runtime/helpers/composables/useBlockRegistration.js +23 -0
  405. package/dist/runtime/helpers/definitionProvider.d.ts +18 -0
  406. package/dist/runtime/helpers/definitionProvider.js +96 -0
  407. package/dist/runtime/helpers/domProvider.d.ts +4 -1
  408. package/dist/runtime/helpers/domProvider.js +56 -68
  409. package/dist/runtime/helpers/editComponents/index.d.ts +2 -0
  410. package/dist/runtime/helpers/editComponents/index.js +10 -0
  411. package/dist/runtime/helpers/featuresProvider.d.ts +2 -1
  412. package/dist/runtime/helpers/featuresProvider.js +19 -10
  413. package/dist/runtime/helpers/frameEventBus.d.ts +1 -1
  414. package/dist/runtime/helpers/imports/index.d.ts +1 -0
  415. package/dist/runtime/helpers/imports/index.js +44 -0
  416. package/dist/runtime/helpers/index.js +5 -8
  417. package/dist/runtime/helpers/runtimeHelpers/index.d.ts +5 -0
  418. package/dist/runtime/helpers/runtimeHelpers/index.js +18 -5
  419. package/dist/runtime/helpers/stateProvider.d.ts +1 -1
  420. package/dist/runtime/helpers/textProvider.d.ts +1 -1
  421. package/dist/runtime/helpers/themeProvider.js +4 -1
  422. package/dist/runtime/helpers/transform.d.ts +1 -1
  423. package/dist/runtime/helpers/typesProvider.d.ts +2 -2
  424. package/dist/runtime/helpers/uiProvider.js +4 -5
  425. package/dist/runtime/helpers/webgl/index.js +1 -1
  426. package/dist/runtime/icons/arrow-right-thin.svg +3 -0
  427. package/dist/runtime/public/_blokkli-assets/check.svg +6 -0
  428. package/dist/runtime/public/_blokkli-assets/loader.svg +1 -0
  429. package/dist/runtime/types/blokkOptions.d.ts +11 -2
  430. package/dist/runtime/types/index.d.ts +72 -15
  431. package/dist/shared/editor.gz_ac6uT.d.mts +431 -0
  432. package/dist/types.d.mts +1 -1
  433. package/package.json +30 -25
  434. package/dist/module.cjs +0 -5
  435. package/dist/module.d.ts +0 -198
  436. package/dist/runtime/adapter/drupal/graphql/base.graphql +0 -944
  437. package/dist/runtime/adapter/drupal/graphqlMiddleware.js +0 -680
  438. package/dist/runtime/types/generatedModuleTypes.d.ts +0 -49
  439. package/dist/types.d.ts +0 -1
  440. /package/dist/{runtime/adapter/drupal/graphql → modules/drupal/graphql/features}/comments.graphql +0 -0
  441. /package/dist/{runtime/adapter/drupal/graphql → modules/drupal/graphql/features}/fragments.graphql +0 -0
  442. /package/dist/{runtime/adapter/drupal/graphql → modules/drupal/graphql/features}/search.graphql +0 -0
  443. /package/dist/{runtime/adapter/drupal/graphql → modules/drupal/graphql/features}/transform.graphql +0 -0
  444. /package/dist/runtime/{types/generatedModuleTypes.js → components/Edit/Features/Publish/Dialog/types.js} +0 -0
  445. /package/dist/runtime/public/{Inter.var.woff2 → _blokkli-assets/Inter.var.woff2} +0 -0
@@ -18,7 +18,7 @@ export default function(ui) {
18
18
  return;
19
19
  }
20
20
  iterator--;
21
- eventBus.emit("animationFrame:before", time);
21
+ eventBus.emit("animationFrame:before", { time, mouseX, mouseY });
22
22
  eventBus.emit("animationFrame", {
23
23
  mouseX,
24
24
  mouseY,
@@ -0,0 +1,5 @@
1
+ import type { DomProvider } from '../domProvider.js';
2
+ /**
3
+ * Helper composable to handle registering the block in the DOM provider.
4
+ */
5
+ export declare function useBlockRegistration(dom: DomProvider, uuid: string): void;
@@ -0,0 +1,23 @@
1
+ import {
2
+ getCurrentInstance,
3
+ onBeforeUnmount,
4
+ onMounted,
5
+ onUpdated
6
+ } from "#imports";
7
+ export function useBlockRegistration(dom, uuid) {
8
+ const instance = getCurrentInstance();
9
+ const key = uuid + Math.round(Math.random() * 1e10).toString() + Date.now().toString();
10
+ let rootElement = null;
11
+ function setRootElement() {
12
+ const newElement = instance?.proxy?.$el;
13
+ if (newElement && rootElement !== newElement) {
14
+ rootElement = newElement;
15
+ dom.registerBlock(key, uuid, newElement);
16
+ }
17
+ }
18
+ onMounted(setRootElement);
19
+ onUpdated(setRootElement);
20
+ onBeforeUnmount(() => {
21
+ dom.unregisterBlock(key, uuid);
22
+ });
23
+ }
@@ -0,0 +1,18 @@
1
+ import { type Ref, type ComputedRef } from '#imports';
2
+ import type { BlockDefinition, FragmentDefinition } from '#blokkli-build/definitions';
3
+ import type { ValidFieldListTypes, BlockBundleWithNested } from '#blokkli-build/generated-types';
4
+ import type { DeepReadonly } from 'vue';
5
+ import type { BlockDefinitionOptionsInput } from '../types/index.js';
6
+ import { type RuntimeBlockOptionArray } from '#blokkli-build/runtime-options';
7
+ export type DefinitionProvider = {
8
+ getBlockDefinition: (bundle: string, fieldListType: ValidFieldListTypes, parentBundle?: BlockBundleWithNested) => BlockDefinition | undefined;
9
+ getDefaultDefinition: (bundle: string) => BlockDefinition | undefined;
10
+ getFragmentDefinition: (name: string) => FragmentDefinition | undefined;
11
+ getBlockIcon: (bundle: string) => string | undefined;
12
+ fragmentDefinitions: ComputedRef<FragmentDefinition[]>;
13
+ blockDefinitions: ComputedRef<BlockDefinition[]>;
14
+ globalOptions: DeepReadonly<Ref<BlockDefinitionOptionsInput>>;
15
+ runtimeOptions: DeepReadonly<Ref<Record<string, Record<string, RuntimeBlockOptionArray>>>>;
16
+ renderKey: DeepReadonly<Ref<string>>;
17
+ };
18
+ export default function (): DefinitionProvider;
@@ -0,0 +1,96 @@
1
+ import { computed, ref, readonly } from "#imports";
2
+ import definitions from "#blokkli-build/definitions";
3
+ import {
4
+ OPTIONS
5
+ } from "#blokkli-build/runtime-options";
6
+ export default function() {
7
+ const blocks = ref(definitions.blocks);
8
+ const fragments = ref(definitions.fragments);
9
+ const renderKey = ref(definitions.renderKey);
10
+ const blockIcons = ref(definitions.icons);
11
+ const allGlobalOptions = ref(
12
+ definitions.globalOptions
13
+ );
14
+ const runtimeOptions = ref(OPTIONS);
15
+ if (import.meta.hot) {
16
+ import.meta.hot.accept("#blokkli-build/definitions", (mod) => {
17
+ const newDefinitions = mod;
18
+ renderKey.value = newDefinitions?.default.renderKey || "";
19
+ blocks.value = newDefinitions?.default?.blocks || [];
20
+ fragments.value = newDefinitions?.default?.fragments || [];
21
+ blockIcons.value = newDefinitions?.default?.icons || {};
22
+ allGlobalOptions.value = newDefinitions?.default?.globalOptions || {};
23
+ });
24
+ import.meta.hot.accept("#blokkli-build/runtime-options", (mod) => {
25
+ if (mod?.OPTIONS) {
26
+ runtimeOptions.value = mod.OPTIONS;
27
+ }
28
+ });
29
+ }
30
+ const blocksByKey = computed(
31
+ () => blocks.value.reduce((acc, definition) => {
32
+ const bundle = definition.bundle;
33
+ const renderForValue = definition.renderFor || [];
34
+ const renderForList = Array.isArray(renderForValue) ? renderForValue : [renderForValue];
35
+ if (renderForList.length) {
36
+ renderForList.forEach((renderFor) => {
37
+ if ("parentBundle" in renderFor) {
38
+ acc[bundle + "__parent:" + renderFor.parentBundle] = definition;
39
+ } else if ("fieldList" in renderFor) {
40
+ acc[bundle + "__field:" + renderFor.fieldList] = definition;
41
+ } else if ("fieldListType" in renderFor) {
42
+ acc[bundle + "__field:" + renderFor.fieldListType] = definition;
43
+ }
44
+ });
45
+ } else {
46
+ acc[bundle] = definition;
47
+ }
48
+ return acc;
49
+ }, {})
50
+ );
51
+ const fragmentsByName = computed(
52
+ () => fragments.value.reduce(
53
+ (acc, definition) => {
54
+ acc[definition.name] = definition;
55
+ return acc;
56
+ },
57
+ {}
58
+ )
59
+ );
60
+ function getBlockDefinition(bundle, fieldListType, parentBundle) {
61
+ const forFieldListType = bundle + "__field:" + fieldListType;
62
+ if (blocksByKey.value[forFieldListType]) {
63
+ return blocksByKey.value[forFieldListType];
64
+ }
65
+ if (parentBundle) {
66
+ const forParentBundle = bundle + "__parent:" + parentBundle;
67
+ if (blocksByKey.value[forParentBundle]) {
68
+ return blocksByKey.value[forParentBundle];
69
+ }
70
+ }
71
+ return blocksByKey.value[bundle];
72
+ }
73
+ function getFragmentDefinition(name) {
74
+ return fragmentsByName.value[name];
75
+ }
76
+ function getDefaultDefinition(bundle) {
77
+ return blocksByKey.value[bundle];
78
+ }
79
+ function getBlockIcon(bundle) {
80
+ return blockIcons.value[bundle];
81
+ }
82
+ return {
83
+ getBlockDefinition,
84
+ getFragmentDefinition,
85
+ getDefaultDefinition,
86
+ getBlockIcon,
87
+ fragmentDefinitions: computed(() => fragments.value),
88
+ blockDefinitions: computed(() => blocks.value),
89
+ globalOptions: readonly(allGlobalOptions),
90
+ runtimeOptions: readonly(runtimeOptions),
91
+ renderKey: readonly(renderKey)
92
+ };
93
+ }
94
+ if (import.meta.hot) {
95
+ import.meta.hot.accept();
96
+ }
@@ -2,6 +2,7 @@ import { type ComputedRef } from '#imports';
2
2
  import type { DraggableExistingBlock, BlokkliFieldElement, DraggableItem, DroppableEntityField, EntityContext, Rectangle } from '#blokkli/types';
3
3
  import type { UiProvider } from './uiProvider.js';
4
4
  import type { DebugProvider } from './debugProvider.js';
5
+ import type { DefinitionProvider } from './definitionProvider.js';
5
6
  type RegisteredFieldType = {
6
7
  entityType: string;
7
8
  entityBundle: string;
@@ -19,6 +20,8 @@ export type DomProvider = {
19
20
  */
20
21
  getDropElementMarkup(item: DraggableItem, checkSize?: boolean): string;
21
22
  findField(entityUuid: string, fieldName: string): BlokkliFieldElement | undefined;
23
+ registerBlock: (key: string, uuid: string, el: HTMLElement | null) => void;
24
+ unregisterBlock: (key: string, uuid: string) => void;
22
25
  registerField: (entity: EntityContext, fieldName: string, instance: HTMLElement) => void;
23
26
  updateFieldElement: (entity: EntityContext, fieldName: string, element: HTMLElement) => void;
24
27
  unregisterField: (entity: EntityContext, fieldName: string) => void;
@@ -44,5 +47,5 @@ export type DomProvider = {
44
47
  */
45
48
  getDragElement: (block: DraggableExistingBlock) => HTMLElement | undefined;
46
49
  };
47
- export default function (ui: UiProvider, debug: DebugProvider): DomProvider;
50
+ export default function (ui: UiProvider, debug: DebugProvider, definitions: DefinitionProvider): DomProvider;
48
51
  export {};
@@ -9,7 +9,6 @@ import {
9
9
  import { cloneElementWithStyles } from "./dom/index.js";
10
10
  import onBlokkliEvent from "./composables/onBlokkliEvent.js";
11
11
  import useDelayedIntersectionObserver from "./composables/useDelayedIntersectionObserver.js";
12
- import { getDefinition } from "#blokkli-build/definitions";
13
12
  const buildFieldElement = (element) => {
14
13
  const key = element.dataset.fieldKey;
15
14
  const name = element.dataset.fieldName;
@@ -49,8 +48,7 @@ function rectWithTime(rect, time) {
49
48
  time: time || performance.now()
50
49
  };
51
50
  }
52
- export default function(ui, debug) {
53
- const artboardElement = ui.artboardElement();
51
+ export default function(ui, debug, definitions) {
54
52
  const logger = debug.createLogger("DomProvider");
55
53
  const mutationsReady = ref(true);
56
54
  const intersectionReady = ref(false);
@@ -58,6 +56,7 @@ export default function(ui, debug) {
58
56
  const visibleFields = /* @__PURE__ */ new Set();
59
57
  const blockRects = {};
60
58
  const fieldRects = {};
59
+ const blockUuidCurrentKey = {};
61
60
  let draggableBlockCache = {};
62
61
  const resizeObserver = new ResizeObserver(function(entries) {
63
62
  for (const entry of entries) {
@@ -177,7 +176,11 @@ export default function(ui, debug) {
177
176
  if (el.classList.contains("bk-block-proxy")) {
178
177
  return el;
179
178
  }
180
- const definition = getDefinition(bundle, fieldListType, parentBlockBundle);
179
+ const definition = definitions.getBlockDefinition(
180
+ bundle,
181
+ fieldListType,
182
+ parentBlockBundle
183
+ );
181
184
  if (!definition) {
182
185
  throw new Error("Failed to load definition for bundle: " + bundle);
183
186
  }
@@ -357,66 +360,6 @@ export default function(ui, debug) {
357
360
  }
358
361
  const dragElementUuidMap = /* @__PURE__ */ new WeakMap();
359
362
  const dragElementCache = /* @__PURE__ */ new Map();
360
- function handleNodeAdded(node) {
361
- if (!(node instanceof HTMLElement)) {
362
- return;
363
- }
364
- if (node.dataset.uuid) {
365
- const item = buildDraggableItem(node);
366
- if (item && item.itemType === "existing") {
367
- const observableElement = getElementToObserve(
368
- node,
369
- item.itemBundle,
370
- item.hostFieldListType,
371
- item.hostBundle
372
- );
373
- intersectionObserver.observe(observableElement);
374
- resizeObserver.observe(observableElement);
375
- registeredBlocks[item.uuid] = node;
376
- }
377
- } else if (node.dataset.fieldName && node.dataset.fieldKey && node.dataset.fieldCardinality) {
378
- const blocks = node.querySelectorAll('[data-element-type="existing"]');
379
- for (const block of blocks) {
380
- handleNodeAdded(block);
381
- }
382
- }
383
- }
384
- function handleNodeRemoved(node) {
385
- if (node instanceof HTMLElement && node.dataset.uuid) {
386
- const uuid = node.dataset.uuid;
387
- const el = registeredBlocks[uuid];
388
- if (el !== node) {
389
- return;
390
- }
391
- if (el) {
392
- intersectionObserver.unobserve(el);
393
- resizeObserver.unobserve(el);
394
- dragElementUuidMap.delete(el);
395
- }
396
- dragElementUuidMap.delete(node);
397
- dragElementCache.delete(uuid);
398
- registeredBlocks[uuid] = void 0;
399
- delete blockRects[uuid];
400
- visibleBlocks.delete(uuid);
401
- }
402
- }
403
- const mutationObserverCallback = function(mutationsList) {
404
- for (const mutation of mutationsList) {
405
- if (mutation.type === "childList") {
406
- for (const node of mutation.removedNodes) {
407
- handleNodeRemoved(node);
408
- }
409
- for (const node of mutation.addedNodes) {
410
- handleNodeAdded(node);
411
- }
412
- }
413
- }
414
- };
415
- const mutationObserver = new MutationObserver(mutationObserverCallback);
416
- mutationObserver.observe(artboardElement, {
417
- subtree: true,
418
- childList: true
419
- });
420
363
  function getDragElement(block) {
421
364
  const cached = dragElementCache.get(block.uuid);
422
365
  if (cached && document.body.contains(cached)) {
@@ -426,9 +369,6 @@ export default function(ui, debug) {
426
369
  if (!el) {
427
370
  return;
428
371
  }
429
- if (el.parentNode) {
430
- mutationObserver.observe(el.parentNode, { childList: true });
431
- }
432
372
  dragElementUuidMap.set(el, block.uuid);
433
373
  dragElementCache.set(block.uuid, el);
434
374
  return el;
@@ -436,6 +376,52 @@ export default function(ui, debug) {
436
376
  function isBlockVisible(uuid) {
437
377
  return visibleBlocks.has(uuid);
438
378
  }
379
+ function registerBlock(key, uuid, el) {
380
+ logger.log("registerBlock: " + uuid);
381
+ blockUuidCurrentKey[uuid] = key;
382
+ if (!el) {
383
+ logger.log("registerBlock call unregisterBlock because no element", uuid);
384
+ unregisterBlock(key, uuid);
385
+ return;
386
+ }
387
+ if (registeredBlocks[uuid]) {
388
+ logger.log(
389
+ "registerBlock call unregisterBlock because already registered",
390
+ uuid
391
+ );
392
+ unregisterBlock(key, uuid);
393
+ }
394
+ const item = buildDraggableItem(el);
395
+ if (item && item.itemType === "existing") {
396
+ const observableElement = getElementToObserve(
397
+ el,
398
+ item.itemBundle,
399
+ item.hostFieldListType,
400
+ item.hostBundle
401
+ );
402
+ intersectionObserver.observe(observableElement);
403
+ resizeObserver.observe(observableElement);
404
+ registeredBlocks[item.uuid] = el;
405
+ }
406
+ }
407
+ function unregisterBlock(key, uuid) {
408
+ const currentKey = blockUuidCurrentKey[uuid];
409
+ if (currentKey && currentKey !== key) {
410
+ return;
411
+ }
412
+ logger.log("unregisterBlock: " + uuid);
413
+ const el = registeredBlocks[uuid];
414
+ if (el) {
415
+ intersectionObserver.unobserve(el);
416
+ resizeObserver.unobserve(el);
417
+ dragElementUuidMap.delete(el);
418
+ dragElementUuidMap.delete(el);
419
+ }
420
+ dragElementCache.delete(uuid);
421
+ registeredBlocks[uuid] = void 0;
422
+ delete blockRects[uuid];
423
+ visibleBlocks.delete(uuid);
424
+ }
439
425
  return {
440
426
  findBlock,
441
427
  getAllBlocks,
@@ -459,6 +445,8 @@ export default function(ui, debug) {
459
445
  init,
460
446
  getDragElement,
461
447
  updateVisibleRects,
462
- registeredFieldTypes
448
+ registeredFieldTypes,
449
+ registerBlock,
450
+ unregisterBlock
463
451
  };
464
452
  }
@@ -0,0 +1,2 @@
1
+ export declare function getBlokkliItemProxyComponent(bundle: string): any;
2
+ export declare function getBlokkliItemDiffComponent(bundle: string): any;
@@ -0,0 +1,10 @@
1
+ import {
2
+ PROXY_COMPONENTS,
3
+ DIFF_COMPONENTS
4
+ } from "#blokkli-build/edit-components";
5
+ export function getBlokkliItemProxyComponent(bundle) {
6
+ return PROXY_COMPONENTS[bundle];
7
+ }
8
+ export function getBlokkliItemDiffComponent(bundle) {
9
+ return DIFF_COMPONENTS[bundle];
10
+ }
@@ -3,7 +3,8 @@ import { type ValidFeatureKey } from '#blokkli-build/features';
3
3
  import { type ComputedRef } from '#imports';
4
4
  import type { StorageProvider } from './storageProvider.js';
5
5
  export type FeaturesProvider = {
6
- features: ComputedRef<FeatureDefinition<AdapterMethods[], ValidFeatureKey>[]>;
6
+ features: ComputedRef<FeatureDefinition[]>;
7
+ mountedFeatures: ComputedRef<FeatureDefinition<AdapterMethods[], ValidFeatureKey>[]>;
7
8
  betaFeatures: ComputedRef<{
8
9
  id: ValidFeatureKey;
9
10
  label: string;
@@ -1,10 +1,17 @@
1
1
  import {
2
- featureComponents
2
+ featureDefinitions
3
3
  } from "#blokkli-build/features";
4
4
  import { computed, ref } from "#imports";
5
5
  import { falsy } from "./index.js";
6
6
  export default function(storage) {
7
+ const definitions = ref(featureDefinitions);
7
8
  const mountedFeatures = ref([]);
9
+ if (import.meta.hot) {
10
+ import.meta.hot.accept("#blokkli-build/features", (mod) => {
11
+ const newDefinitions = mod;
12
+ definitions.value = newDefinitions?.featureDefinitions || [];
13
+ });
14
+ }
8
15
  const settingsSettings = storage.use(
9
16
  "feature:settings:settings",
10
17
  {}
@@ -18,15 +25,16 @@ export default function(storage) {
18
25
  return null;
19
26
  }).filter(falsy);
20
27
  });
21
- const features = computed(() => mountedFeatures.value);
22
28
  const betaFeatures = computed(
23
- () => featureComponents.filter((v) => v.beta).map((v) => {
24
- return {
25
- id: v.id,
26
- label: v.label,
27
- description: v.description
28
- };
29
- })
29
+ () => definitions.value.map((v) => {
30
+ if (v.beta && v.label) {
31
+ return {
32
+ id: v.id,
33
+ label: v.label,
34
+ description: v.description
35
+ };
36
+ }
37
+ }).filter(falsy)
30
38
  );
31
39
  const unmount = (id) => {
32
40
  mountedFeatures.value = mountedFeatures.value.filter((v) => v.id !== id);
@@ -35,7 +43,8 @@ export default function(storage) {
35
43
  mountedFeatures.value.push(feature);
36
44
  };
37
45
  return {
38
- features,
46
+ features: computed(() => definitions.value),
47
+ mountedFeatures: computed(() => mountedFeatures.value),
39
48
  betaFeatures,
40
49
  enabledBetaFeatures,
41
50
  mount,
@@ -1,4 +1,4 @@
1
- import type { MutatedField, UpdateBlockOptionEvent } from '../types.js';
1
+ import type { MutatedField, UpdateBlockOptionEvent } from '../types/index.js';
2
2
  type FrameEventBusEvents = {
3
3
  selectItems: string[];
4
4
  mutatedFields: MutatedField[];
@@ -0,0 +1 @@
1
+ export declare function getComponent(type: 'block' | 'fragment', bundle: string, fieldListType?: string, parentBundle?: string): any;
@@ -0,0 +1,44 @@
1
+ import { chunks, chunkMapping } from "#blokkli-build/imports";
2
+ import { defineAsyncComponent } from "#imports";
3
+ function objectOrImport(key) {
4
+ const chunkName = chunkMapping[key];
5
+ if (!chunkName) {
6
+ return;
7
+ }
8
+ const chunkEntry = chunks[chunkName];
9
+ if (!chunkEntry) {
10
+ return;
11
+ }
12
+ if (typeof chunkEntry === "function") {
13
+ return defineAsyncComponent(
14
+ () => chunkEntry().then((group) => {
15
+ const item2 = group[key];
16
+ if (item2 && "loadComponent" in item2) {
17
+ return item2.loadComponent();
18
+ }
19
+ return item2;
20
+ })
21
+ );
22
+ }
23
+ const item = chunkEntry[key];
24
+ if (item && "loadComponent" in item) {
25
+ return defineAsyncComponent(() => item.loadComponent());
26
+ }
27
+ return item;
28
+ }
29
+ export function getComponent(type, bundle, fieldListType, parentBundle) {
30
+ if (fieldListType) {
31
+ const key2 = `${type}:${bundle}__f:${fieldListType}`;
32
+ if (chunkMapping[key2]) {
33
+ return objectOrImport(key2);
34
+ }
35
+ }
36
+ if (parentBundle) {
37
+ const key2 = `${type}:${bundle}__p:${parentBundle}`;
38
+ if (chunkMapping[key2]) {
39
+ return objectOrImport(key2);
40
+ }
41
+ }
42
+ const key = `${type}:${bundle}`;
43
+ return objectOrImport(key);
44
+ }
@@ -1,6 +1,5 @@
1
1
  import { easeOutSine } from "./easing.js";
2
2
  import { useRuntimeConfig } from "#imports";
3
- import { getDefinition } from "#blokkli-build/definitions";
4
3
  export function falsy(value) {
5
4
  return value !== null && value !== void 0;
6
5
  }
@@ -24,13 +23,8 @@ export function buildDraggableItem(element) {
24
23
  const isNew = dataset.isNew === "true";
25
24
  const parentBlockBundle = hostType === itemEntityType ? hostBundle : void 0;
26
25
  if (uuid && hostType && hostUuid && hostFieldName && itemBundle && hostBundle && entityType && hostFieldListType) {
27
- const definition = getDefinition(
28
- itemBundle,
29
- hostFieldListType,
30
- parentBlockBundle
31
- );
32
26
  const libraryLabel = dataset.bkLibraryLabel;
33
- const editTitle = libraryLabel || (definition?.editor?.editTitle ? definition?.editor.editTitle(element) : void 0);
27
+ const editTitle = libraryLabel || "";
34
28
  return {
35
29
  itemType: "existing",
36
30
  element: () => document.querySelector(`[data-uuid="${uuid}"]`),
@@ -205,7 +199,10 @@ export function calculateIntersection(rectA, rectB) {
205
199
  }
206
200
  export function findClosestRectangle(x, y, rects) {
207
201
  let closestRect = rects[0];
208
- let minDistance = distanceToClosestRectangleEdge(x, y, rects[0]);
202
+ if (!closestRect) {
203
+ throw new Error("Need at least one rect.");
204
+ }
205
+ let minDistance = distanceToClosestRectangleEdge(x, y, closestRect);
209
206
  for (let i = 1; i < rects.length; i++) {
210
207
  const rect = rects[i];
211
208
  const distance = distanceToClosestRectangleEdge(x, y, rect);
@@ -10,6 +10,7 @@ import type { FieldListItem } from '#blokkli/types';
10
10
  * Returns our "internal" value of a checkbox state.
11
11
  */
12
12
  export declare function mapCheckboxTrue(v?: unknown): '1' | '0';
13
+ export declare function isValidDatetimeLocalValue(value: string): boolean;
13
14
  /**
14
15
  * Get the runtime value for an option.
15
16
  *
@@ -29,6 +30,10 @@ export declare function isVisibleByOptions(item?: FieldListItemTyped | FieldList
29
30
  */
30
31
  export declare function getRuntimeOptions<K extends keyof RuntimeBlockOptions>(item: FieldListItemTyped & {
31
32
  bundle: K;
33
+ }, context?: {
34
+ parentType: string;
35
+ } | {
36
+ fieldListType: string;
32
37
  }, fromLibraryOptions?: Record<string, any>): RuntimeBlockOptions[K];
33
38
  /**
34
39
  * Get the actual block for reusable blocks.
@@ -1,5 +1,5 @@
1
1
  import {
2
- BLOCK_OPTIONS
2
+ OPTIONS
3
3
  } from "#blokkli-build/runtime-options";
4
4
  import {
5
5
  bundlesWithVisibleLanguage,
@@ -9,10 +9,17 @@ import { BK_HIDDEN_GLOBALLY, BK_VISIBLE_LANGUAGES } from "../symbols.js";
9
9
  export function mapCheckboxTrue(v) {
10
10
  return v === true || v === "1" || v === 1 || v === "true" ? "1" : "0";
11
11
  }
12
+ export function isValidDatetimeLocalValue(value) {
13
+ const pattern = (
14
+ // eslint-disable-next-line regexp/no-unused-capturing-group
15
+ /^(\d{4})-(0[1-9]|1[0-2])-(0[1-9]|[12]\d|3[01])T([01]\d|2[0-3]):([0-5]\d)(:[0-5]\d(\.\d{1,3})?)?$/
16
+ );
17
+ return pattern.test(value);
18
+ }
12
19
  export function getRuntimeOptionValue(definition, value) {
13
20
  const type = Array.isArray(definition) ? definition[0] : definition.type;
14
21
  const defaultValue = Array.isArray(definition) ? definition[1] : definition.default;
15
- if (value === null || value === void 0) {
22
+ if ((value === null || value === void 0) && defaultValue !== void 0) {
16
23
  return defaultValue;
17
24
  }
18
25
  if (type === "checkbox") {
@@ -46,6 +53,11 @@ export function getRuntimeOptionValue(definition, value) {
46
53
  }
47
54
  } else if (type === "text" && typeof value === "string") {
48
55
  return value;
56
+ } else if (type === "datetime-local" && typeof value === "string" && isValidDatetimeLocalValue(value)) {
57
+ return value;
58
+ }
59
+ if (defaultValue === void 0) {
60
+ return "";
49
61
  }
50
62
  return defaultValue;
51
63
  }
@@ -69,7 +81,7 @@ export function isVisibleByOptions(item, language) {
69
81
  }
70
82
  return true;
71
83
  }
72
- export function getRuntimeOptions(item, fromLibraryOptions) {
84
+ export function getRuntimeOptions(item, context, fromLibraryOptions) {
73
85
  if (item.bundle === "from_library" && "libraryItem" in item.props) {
74
86
  const actualBlock = item.props.libraryItem?.block;
75
87
  if (!actualBlock) {
@@ -77,16 +89,17 @@ export function getRuntimeOptions(item, fromLibraryOptions) {
77
89
  }
78
90
  return getRuntimeOptions(
79
91
  actualBlock,
92
+ context,
80
93
  item.options
81
94
  );
82
95
  }
83
- const availableOptions = BLOCK_OPTIONS[item.bundle] || {};
96
+ const availableOptions = OPTIONS["block:" + item.bundle] || {};
84
97
  return Object.entries(availableOptions).reduce(
85
98
  (acc, [key, definition]) => {
86
99
  if (fromLibraryOptions && fromLibraryOptions[key] !== void 0 && fromLibraryOptions[key] !== null) {
87
100
  acc[key] = getRuntimeOptionValue(
88
101
  definition,
89
- fromLibraryOptions.value[key]
102
+ fromLibraryOptions.value?.[key]
90
103
  );
91
104
  return acc;
92
105
  }
@@ -1,5 +1,5 @@
1
1
  import { type Ref, type ComputedRef } from 'vue';
2
- import type { BlokkliAdapter, AdapterContext } from '../adapter.js';
2
+ import type { BlokkliAdapter, AdapterContext } from '../adapter/index.js';
3
3
  import type { MutatedField, EditEntity, MutatedOptions, TranslationState, MutationItem, Validation, MutateWithLoadingStateFunction, EditMode, FieldListItem } from '#blokkli/types';
4
4
  import type { TextProvider } from './textProvider.js';
5
5
  export type BlokkliOwner = {
@@ -1,4 +1,4 @@
1
1
  import { type ComputedRef } from 'vue';
2
- import type { AdapterContext } from '../adapter.js';
2
+ import type { AdapterContext } from '../adapter/index.js';
3
3
  export type TextProvider = (key: string, defaultValue?: string) => string;
4
4
  export default function (context?: ComputedRef<AdapterContext>): TextProvider;
@@ -85,7 +85,10 @@ export default function() {
85
85
  const meta = document.createElement("meta");
86
86
  meta.name = "theme-color";
87
87
  meta.content = THEME_COLOR;
88
- document.getElementsByTagName("head")[0].appendChild(meta);
88
+ const head = document.getElementsByTagName("head")[0];
89
+ if (head) {
90
+ head.appendChild(meta);
91
+ }
89
92
  }
90
93
  });
91
94
  onBeforeUnmount(() => {
@@ -1,2 +1,2 @@
1
- import type { TransformPlugin } from '../types.js';
1
+ import type { TransformPlugin } from '../types/index.js';
2
2
  export declare function filterTransforms(plugins: TransformPlugin[], selectedItems: any[], selectedBundles: string[], allowedBundles: string[]): TransformPlugin[];
@@ -1,6 +1,6 @@
1
1
  import type { ComputedRef } from 'vue';
2
- import type { FieldConfig, BlockBundleDefinition, EditableFieldConfig, BlockDefinitionInput, BlockDefinitionOptionsInput, DroppableFieldConfig, DraggableExistingBlock, EntityContext } from '../types.js';
3
- import type { AdapterContext, BlokkliAdapter } from '../adapter.js';
2
+ import type { FieldConfig, BlockBundleDefinition, EditableFieldConfig, BlockDefinitionInput, BlockDefinitionOptionsInput, DroppableFieldConfig, DraggableExistingBlock, EntityContext } from '../types/index.js';
3
+ import type { AdapterContext, BlokkliAdapter } from '../adapter/index.js';
4
4
  import type { SelectionProvider } from './selectionProvider.js';
5
5
  export type BlokkliBlockType = BlockBundleDefinition & {
6
6
  definition: BlockDefinitionInput<BlockDefinitionOptionsInput, never[]> | undefined;