@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
@@ -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;
@@ -44,5 +45,5 @@ export type DomProvider = {
44
45
  */
45
46
  getDragElement: (block: DraggableExistingBlock) => HTMLElement | undefined;
46
47
  };
47
- export default function (ui: UiProvider, debug: DebugProvider): DomProvider;
48
+ export default function (ui: UiProvider, debug: DebugProvider, definitions: DefinitionProvider): DomProvider;
48
49
  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/definitions";
13
12
  const buildFieldElement = (element) => {
14
13
  const key = element.dataset.fieldKey;
15
14
  const name = element.dataset.fieldName;
@@ -49,7 +48,7 @@ function rectWithTime(rect, time) {
49
48
  time: time || performance.now()
50
49
  };
51
50
  }
52
- export default function(ui, debug) {
51
+ export default function(ui, debug, definitions) {
53
52
  const artboardElement = ui.artboardElement();
54
53
  const logger = debug.createLogger("DomProvider");
55
54
  const mutationsReady = ref(true);
@@ -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
  }
@@ -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
+ }
@@ -1,9 +1,10 @@
1
1
  import type { FeatureDefinition, AdapterMethods } from '#blokkli/types';
2
- import { type ValidFeatureKey } from '#blokkli-runtime/features';
2
+ 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
3
- } from "#blokkli-runtime/features";
2
+ featureDefinitions
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
+ }
@@ -86,3 +86,4 @@ export declare function getInteractionCoordinates(e: MouseEvent | TouchEvent): C
86
86
  export declare function toShaderColor(rgba: RGB): RGB;
87
87
  export declare function generateUUID(): string;
88
88
  export declare function buildAttributesForLibraryItem(props: LibraryItemProps): Record<string, string | undefined>;
89
+ export declare function asValidNumber(v: unknown, defaultValue: number): number;
@@ -1,6 +1,5 @@
1
1
  import { easeOutSine } from "./easing.js";
2
2
  import { useRuntimeConfig } from "#imports";
3
- import { getDefinition } from "#blokkli/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);
@@ -474,3 +471,9 @@ export function buildAttributesForLibraryItem(props) {
474
471
  "data-blokkli-is-reusable": "true"
475
472
  };
476
473
  }
474
+ export function asValidNumber(v, defaultValue) {
475
+ if (typeof v === "number" && !Number.isNaN(v)) {
476
+ return v;
477
+ }
478
+ return defaultValue;
479
+ }
@@ -1,7 +1,8 @@
1
1
  /**
2
2
  * This file should contain all helpers that are meant for runtime functionality, such as defineBlokkli composable or <BlokkliProvider>.
3
3
  */
4
- import type { FieldListItemTyped } from '#blokkli/generated-types';
4
+ import { type RuntimeBlockOptionArray, type RuntimeBlockOptions } from '#blokkli-build/runtime-options';
5
+ import type { FieldListItemTyped } from '#blokkli-build/generated-types';
5
6
  import type { BlockOptionDefinition } from '#blokkli/types/blokkOptions';
6
7
  import type { FieldListItem } from '#blokkli/types';
7
8
  /**
@@ -9,13 +10,38 @@ import type { FieldListItem } from '#blokkli/types';
9
10
  * Returns our "internal" value of a checkbox state.
10
11
  */
11
12
  export declare function mapCheckboxTrue(v?: unknown): '1' | '0';
13
+ export declare function isValidDatetimeLocalValue(value: string): boolean;
12
14
  /**
13
15
  * Get the runtime value for an option.
14
16
  *
15
17
  * Internally, all option values are stored as strings. This function maps the stored data to the runtime value.
16
18
  */
17
- export declare function getRuntimeOptionValue(definition: Pick<BlockOptionDefinition, 'type' | 'default'>, value: string | string[] | boolean | undefined | null | number): string | string[] | boolean | number;
19
+ export declare function getRuntimeOptionValue(definition: Pick<BlockOptionDefinition, 'type' | 'default'> | RuntimeBlockOptionArray, value: string | string[] | boolean | undefined | null | number): string | string[] | boolean | number;
18
20
  /**
19
21
  * Determines whether an item is visible.
20
22
  */
21
23
  export declare function isVisibleByOptions(item?: FieldListItemTyped | FieldListItem, language?: string): boolean;
24
+ /**
25
+ * Returns the runtime options for a block.
26
+ *
27
+ * If the provided item's bundle is 'from_library', the method will merge the
28
+ * options defined in the reusable block with the options defined in the
29
+ * from_library block.
30
+ */
31
+ export declare function getRuntimeOptions<K extends keyof RuntimeBlockOptions>(item: FieldListItemTyped & {
32
+ bundle: K;
33
+ }, context?: {
34
+ parentType: string;
35
+ } | {
36
+ fieldListType: string;
37
+ }, fromLibraryOptions?: Record<string, any>): RuntimeBlockOptions[K];
38
+ /**
39
+ * Get the actual block for reusable blocks.
40
+ *
41
+ * If the provided bundle is 'from_library', the method will merge the options
42
+ * from both the from_library block and the actual block.
43
+ */
44
+ export declare function getActualBlock(item: FieldListItemTyped): FieldListItemTyped | null;
45
+ export declare function getItemsforBundles<K extends FieldListItemTyped['bundle']>(items: FieldListItemTyped[], bundles: K[]): Extract<FieldListItemTyped, {
46
+ bundle: K;
47
+ }>[];
@@ -1,27 +1,40 @@
1
+ import {
2
+ OPTIONS
3
+ } from "#blokkli-build/runtime-options";
1
4
  import {
2
5
  bundlesWithVisibleLanguage,
3
6
  bundlesWithHiddenGlobally
4
- } from "#blokkli/default-global-options";
7
+ } from "#blokkli-build/default-global-options";
5
8
  import { BK_HIDDEN_GLOBALLY, BK_VISIBLE_LANGUAGES } from "../symbols.js";
6
9
  export function mapCheckboxTrue(v) {
7
10
  return v === true || v === "1" || v === 1 || v === "true" ? "1" : "0";
8
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
+ }
9
19
  export function getRuntimeOptionValue(definition, value) {
10
- if (definition.type === "checkbox") {
20
+ const type = Array.isArray(definition) ? definition[0] : definition.type;
21
+ const defaultValue = Array.isArray(definition) ? definition[1] : definition.default;
22
+ if ((value === null || value === void 0) && defaultValue !== void 0) {
23
+ return defaultValue;
24
+ }
25
+ if (type === "checkbox") {
11
26
  return mapCheckboxTrue(value) === "1";
12
- } else if (definition.type === "radios") {
27
+ } else if (type === "radios") {
13
28
  if (typeof value === "string") {
14
29
  return value;
15
30
  }
16
- return "";
17
- } else if (definition.type === "checkboxes") {
31
+ } else if (type === "checkboxes") {
18
32
  if (typeof value === "string") {
19
33
  return value.split(",");
20
34
  } else if (Array.isArray(value)) {
21
35
  return value;
22
36
  }
23
- return [];
24
- } else if (definition.type === "range" || definition.type === "number") {
37
+ } else if (type === "range" || type === "number") {
25
38
  if (typeof value === "number" && !Number.isNaN(value)) {
26
39
  return value;
27
40
  } else if (typeof value === "string") {
@@ -30,11 +43,23 @@ export function getRuntimeOptionValue(definition, value) {
30
43
  return parsed;
31
44
  }
32
45
  }
33
- }
34
- if (typeof value === "string") {
46
+ } else if (type === "color") {
47
+ if (typeof value === "string") {
48
+ if (value.startsWith("#")) {
49
+ return value;
50
+ } else if (value.length === 6) {
51
+ return `#${value}`;
52
+ }
53
+ }
54
+ } else if (type === "text" && typeof value === "string") {
55
+ return value;
56
+ } else if (type === "datetime-local" && typeof value === "string" && isValidDatetimeLocalValue(value)) {
35
57
  return value;
36
58
  }
37
- return "";
59
+ if (defaultValue === void 0) {
60
+ return "";
61
+ }
62
+ return defaultValue;
38
63
  }
39
64
  export function isVisibleByOptions(item, language) {
40
65
  if (!item) {
@@ -56,3 +81,64 @@ export function isVisibleByOptions(item, language) {
56
81
  }
57
82
  return true;
58
83
  }
84
+ export function getRuntimeOptions(item, context, fromLibraryOptions) {
85
+ if (item.bundle === "from_library" && "libraryItem" in item.props) {
86
+ const actualBlock = item.props.libraryItem?.block;
87
+ if (!actualBlock) {
88
+ throw new Error("Missing block");
89
+ }
90
+ return getRuntimeOptions(
91
+ actualBlock,
92
+ context,
93
+ item.options
94
+ );
95
+ }
96
+ const availableOptions = OPTIONS["block:" + item.bundle] || {};
97
+ return Object.entries(availableOptions).reduce(
98
+ (acc, [key, definition]) => {
99
+ if (fromLibraryOptions && fromLibraryOptions[key] !== void 0 && fromLibraryOptions[key] !== null) {
100
+ acc[key] = getRuntimeOptionValue(
101
+ definition,
102
+ fromLibraryOptions.value[key]
103
+ );
104
+ return acc;
105
+ }
106
+ if (item.options && item.options[key] !== void 0 && item.options[key] !== null) {
107
+ acc[key] = getRuntimeOptionValue(definition, item.options[key]);
108
+ return acc;
109
+ }
110
+ acc[key] = definition[1];
111
+ return acc;
112
+ },
113
+ {}
114
+ );
115
+ }
116
+ export function getActualBlock(item) {
117
+ if (item.bundle === "from_library") {
118
+ const block = item.props.libraryItem?.block;
119
+ if (!block) {
120
+ return null;
121
+ }
122
+ const mergedOptions = {
123
+ ...item.options || {},
124
+ ...block.options || {}
125
+ };
126
+ return { ...block, options: mergedOptions };
127
+ }
128
+ return item;
129
+ }
130
+ export function getItemsforBundles(items, bundles) {
131
+ const filtered = [];
132
+ for (let i = 0; i < items.length; i++) {
133
+ const item = items[i];
134
+ if (item.bundle === "from_library") {
135
+ const actual = getActualBlock(item);
136
+ if (actual && bundles.includes(actual.bundle)) {
137
+ filtered.push(actual);
138
+ }
139
+ } else if (bundles.includes(item.bundle)) {
140
+ filtered.push(item);
141
+ }
142
+ }
143
+ return filtered;
144
+ }
@@ -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,5 +1,5 @@
1
1
  import { computed, ref } from "vue";
2
- import { storageDefaults } from "#blokkli/config";
2
+ import { storageDefaults } from "#blokkli-build/config";
3
3
  const PREFIX = "blokkli:";
4
4
  const getExisting = (key) => {
5
5
  try {
@@ -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;
@@ -1,6 +1,6 @@
1
1
  import { computed } from "vue";
2
- import { translations } from "#blokkli/translations";
3
- import { defaultLanguage, forceDefaultLanguage } from "#blokkli/config";
2
+ import { translations } from "#blokkli-build/translations";
3
+ import { defaultLanguage, forceDefaultLanguage } from "#blokkli-build/config";
4
4
  export default function(context) {
5
5
  const language = computed(() => {
6
6
  if (forceDefaultLanguage) {
@@ -1,4 +1,4 @@
1
- import { theme, themes } from "#blokkli/config";
1
+ import { theme, themes } from "#blokkli-build/config";
2
2
  import { ref, onMounted, onBeforeUnmount } from "#imports";
3
3
  import { rgbaToString } from "./index.js";
4
4
  import { DragStyle } from "./DragStyle/index.js";
@@ -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;
@@ -169,7 +169,6 @@ export default function(storage, state) {
169
169
  }
170
170
  return height;
171
171
  });
172
- const viewportPadding = computed(() => 10);
173
172
  const blockingPaddingX = computed(() => 15);
174
173
  const blockingPaddingY = computed(() => 50);
175
174
  const viewportBlockingRects = computed(() => {
@@ -195,10 +194,10 @@ export default function(storage, state) {
195
194
  });
196
195
  const visibleViewportPadded = computed(() => {
197
196
  return {
198
- x: visibleViewportX.value + viewportPadding.value,
199
- y: visibleViewportY.value + viewportPadding.value,
200
- width: visibleViewportWidth.value - 2 * viewportPadding.value,
201
- height: visibleViewportHeight.value - 2 * viewportPadding.value
197
+ x: visibleViewportX.value + 10,
198
+ y: visibleViewportY.value + 10,
199
+ width: visibleViewportWidth.value - 10 - 16 - 10,
200
+ height: visibleViewportHeight.value - 20
202
201
  };
203
202
  });
204
203
  function setProxyModeClass() {
@@ -120,7 +120,7 @@ export class RectangleBufferCollector {
120
120
  this.index++;
121
121
  }
122
122
  getIndex(id) {
123
- return this.rects[id].index || void 0;
123
+ return this.rects[id]?.index;
124
124
  }
125
125
  updateRectangle() {
126
126
  }
@@ -0,0 +1,3 @@
1
+ <svg viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg">
2
+ <path d="M0 11V13H20L14.5 18.5L15.92 19.92L23.84 12L15.92 4.07996L14.5 5.49996L20 11H0Z" />
3
+ </svg>
@@ -0,0 +1,6 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24">
2
+ <path
3
+ d="M9,20.42L2.79,14.21L5.62,11.38L9,14.77L18.88,4.88L21.71,7.71L9,20.42Z"
4
+ fill="white"
5
+ />
6
+ </svg>
@@ -0,0 +1 @@
1
+ <svg fill="white" width="36" height="36" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><style>.spinner_b2T7{animation:spinner_xe7Q .8s linear infinite}.spinner_YRVV{animation-delay:-.65s}.spinner_c9oY{animation-delay:-.5s}@keyframes spinner_xe7Q{93.75%,100%{r:3px}46.875%{r:.2px}}</style><circle class="spinner_b2T7" cx="4" cy="12" r="3"/><circle class="spinner_b2T7 spinner_YRVV" cx="12" cy="12" r="3"/><circle class="spinner_b2T7 spinner_c9oY" cx="20" cy="12" r="3"/></svg>