@blokkli/editor 2.0.0-alpha.12 → 2.0.0-alpha.14

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 (274) hide show
  1. package/dist/module.d.mts +1 -1
  2. package/dist/module.json +5 -5
  3. package/dist/module.mjs +4006 -1164
  4. package/dist/modules/drupal/graphql/base/fragment.ParagraphsBlokkliConfigInput.graphql +31 -0
  5. package/dist/modules/drupal/graphql/base/fragment.blokkliProps.graphql +1 -0
  6. package/dist/modules/drupal/graphql/base/fragment.paragraphsBlokkliEditState.graphql +1 -0
  7. package/dist/modules/drupal/graphql/base/query.pbEntityConfig.graphql +5 -0
  8. package/dist/modules/drupal/graphql/features/transform.graphql +9 -1
  9. package/dist/modules/drupal/graphql/features/transform_host.graphql +38 -0
  10. package/dist/modules/drupal/graphql/mutations/update_host_options.graphql +15 -0
  11. package/dist/modules/drupal/index.d.mts +1 -1
  12. package/dist/modules/drupal/index.mjs +20 -7
  13. package/dist/modules/drupal/runtime/adapter/index.js +109 -4
  14. package/dist/runtime/adapter/index.d.ts +54 -1
  15. package/dist/runtime/blokkliPlugins/AddAction/index.vue +27 -3
  16. package/dist/runtime/blokkliPlugins/BlockIndicator/index.vue +65 -0
  17. package/dist/runtime/blokkliPlugins/BlockIndicator/index.vue.d.ts +26 -0
  18. package/dist/runtime/blokkliPlugins/ContextMenu/Menu/index.vue +3 -0
  19. package/dist/runtime/blokkliPlugins/ContextMenu/index.vue +3 -2
  20. package/dist/runtime/blokkliPlugins/DroppableEdit/index.vue +3 -3
  21. package/dist/runtime/blokkliPlugins/ItemDropdown/index.vue +49 -11
  22. package/dist/runtime/blokkliPlugins/ItemDropdown/index.vue.d.ts +29 -15
  23. package/dist/runtime/blokkliPlugins/Sidebar/Detached/index.vue +6 -7
  24. package/dist/runtime/blokkliPlugins/Sidebar/index.vue +2 -9
  25. package/dist/runtime/blokkliPlugins/Sidebar/index.vue.d.ts +4 -4
  26. package/dist/runtime/blokkliPlugins/ViewOption/index.vue +6 -3
  27. package/dist/runtime/blokkliPlugins/index.d.ts +8 -7
  28. package/dist/runtime/blokkliPlugins/index.js +15 -13
  29. package/dist/runtime/components/Blocks/Fragment/icon.svg +1 -1
  30. package/dist/runtime/components/BlokkliProvider.vue +1 -0
  31. package/dist/runtime/components/BlokkliProvider.vue.d.ts +1 -0
  32. package/dist/runtime/components/Edit/Actions/index.vue +39 -67
  33. package/dist/runtime/components/Edit/AddListItem/index.vue +2 -5
  34. package/dist/runtime/components/Edit/AddListItem/index.vue.d.ts +1 -1
  35. package/dist/runtime/components/Edit/AddListItemIcon/index.vue +19 -0
  36. package/dist/runtime/components/Edit/AddListItemIcon/index.vue.d.ts +15 -0
  37. package/dist/runtime/components/Edit/AppMenu/index.vue +5 -5
  38. package/dist/runtime/components/Edit/Dialog/index.vue +5 -1
  39. package/dist/runtime/components/Edit/Dialog/index.vue.d.ts +1 -1
  40. package/dist/runtime/components/Edit/DiffViewer/State.vue +276 -0
  41. package/dist/runtime/components/Edit/DiffViewer/State.vue.d.ts +16 -0
  42. package/dist/runtime/components/Edit/DragInteractions/index.vue +45 -8
  43. package/dist/runtime/components/Edit/EditProvider.vue +46 -35
  44. package/dist/runtime/components/Edit/Features/AddList/index.vue +15 -25
  45. package/dist/runtime/components/Edit/Features/Analyze/Overlay/fragment.glsl +58 -0
  46. package/dist/runtime/components/Edit/Features/Analyze/Overlay/index.vue +168 -0
  47. package/dist/runtime/components/Edit/Features/Analyze/Overlay/index.vue.d.ts +9 -0
  48. package/dist/runtime/components/Edit/Features/Analyze/Overlay/vertex.glsl +72 -0
  49. package/dist/runtime/components/Edit/Features/Analyze/Renderer.vue +159 -0
  50. package/dist/runtime/components/Edit/Features/Analyze/Renderer.vue.d.ts +7 -0
  51. package/dist/runtime/components/Edit/Features/Analyze/Results/Results.vue +100 -0
  52. package/dist/runtime/components/Edit/Features/Analyze/Results/Results.vue.d.ts +6 -0
  53. package/dist/runtime/components/Edit/Features/Analyze/Results/ResultsItem.vue +56 -0
  54. package/dist/runtime/components/Edit/Features/Analyze/Results/ResultsItem.vue.d.ts +3 -0
  55. package/dist/runtime/components/Edit/Features/Analyze/Results/ResultsItemNodes.vue +87 -0
  56. package/dist/runtime/components/Edit/Features/Analyze/Results/ResultsItemNodes.vue.d.ts +7 -0
  57. package/dist/runtime/components/Edit/Features/Analyze/Results/ResultsItemNodesTarget.vue +101 -0
  58. package/dist/runtime/components/Edit/Features/Analyze/Results/ResultsItemNodesTarget.vue.d.ts +8 -0
  59. package/dist/runtime/components/Edit/Features/Analyze/Results/Status.vue +18 -0
  60. package/dist/runtime/components/Edit/Features/Analyze/Results/Status.vue.d.ts +8 -0
  61. package/dist/runtime/components/Edit/Features/Analyze/Summary/Chart.vue +92 -0
  62. package/dist/runtime/components/Edit/Features/Analyze/Summary/Chart.vue.d.ts +17 -0
  63. package/dist/runtime/components/Edit/Features/Analyze/Summary/index.vue +77 -0
  64. package/dist/runtime/components/Edit/Features/Analyze/Summary/index.vue.d.ts +6 -0
  65. package/dist/runtime/components/Edit/Features/Analyze/analyzers/axe.d.ts +12 -0
  66. package/dist/runtime/components/Edit/Features/Analyze/analyzers/axe.js +75 -0
  67. package/dist/runtime/components/Edit/Features/Analyze/analyzers/defineAnalyzer.d.ts +4 -0
  68. package/dist/runtime/components/Edit/Features/Analyze/analyzers/defineAnalyzer.js +5 -0
  69. package/dist/runtime/components/Edit/Features/Analyze/analyzers/helpers/Context.d.ts +32 -0
  70. package/dist/runtime/components/Edit/Features/Analyze/analyzers/helpers/Context.js +45 -0
  71. package/dist/runtime/components/Edit/Features/Analyze/analyzers/helpers/collectTextElements.d.ts +5 -0
  72. package/dist/runtime/components/Edit/Features/Analyze/analyzers/helpers/collectTextElements.js +95 -0
  73. package/dist/runtime/components/Edit/Features/Analyze/analyzers/helpers/normalizeArray.d.ts +3 -0
  74. package/dist/runtime/components/Edit/Features/Analyze/analyzers/helpers/normalizeArray.js +13 -0
  75. package/dist/runtime/components/Edit/Features/Analyze/analyzers/index.d.ts +2 -0
  76. package/dist/runtime/components/Edit/Features/Analyze/analyzers/index.js +2 -0
  77. package/dist/runtime/components/Edit/Features/Analyze/analyzers/readability.d.ts +2 -0
  78. package/dist/runtime/components/Edit/Features/Analyze/analyzers/readability.js +165 -0
  79. package/dist/runtime/components/Edit/Features/Analyze/analyzers/types.d.ts +44 -0
  80. package/dist/runtime/components/Edit/Features/Analyze/analyzers/types.js +0 -0
  81. package/dist/runtime/components/Edit/Features/Analyze/helper.d.ts +5 -0
  82. package/dist/runtime/components/Edit/Features/Analyze/helper.js +28 -0
  83. package/dist/runtime/components/Edit/Features/Analyze/index.vue +44 -0
  84. package/dist/runtime/components/Edit/Features/Anchors/Renderer.vue +136 -0
  85. package/dist/runtime/components/Edit/Features/Anchors/index.vue +32 -0
  86. package/dist/runtime/components/Edit/Features/Anchors/index.vue.d.ts +2 -0
  87. package/dist/runtime/components/Edit/Features/Artboard/Overview/index.vue +25 -13
  88. package/dist/runtime/components/Edit/Features/Artboard/Renderer.vue +296 -0
  89. package/dist/runtime/components/Edit/Features/Artboard/Renderer.vue.d.ts +7 -0
  90. package/dist/runtime/components/Edit/Features/Artboard/index.vue +10 -245
  91. package/dist/runtime/components/Edit/Features/Assistant/index.vue +3 -2
  92. package/dist/runtime/components/Edit/Features/BlockAddList/index.vue +4 -4
  93. package/dist/runtime/components/Edit/Features/Clipboard/index.vue +161 -28
  94. package/dist/runtime/components/Edit/Features/CommandPalette/Palette/Group/index.vue +16 -4
  95. package/dist/runtime/components/Edit/Features/CommandPalette/Palette/Group/index.vue.d.ts +0 -1
  96. package/dist/runtime/components/Edit/Features/CommandPalette/Palette/index.vue +4 -53
  97. package/dist/runtime/components/Edit/Features/CommandPalette/index.vue +3 -2
  98. package/dist/runtime/components/Edit/Features/Conversions/index.vue +12 -14
  99. package/dist/runtime/components/Edit/Features/Debug/Viewport/index.vue +14 -0
  100. package/dist/runtime/components/Edit/Features/Debug/index.vue +27 -24
  101. package/dist/runtime/components/Edit/Features/Diff/DiffView/index.vue +13 -190
  102. package/dist/runtime/components/Edit/Features/Diff/index.vue +2 -2
  103. package/dist/runtime/components/Edit/Features/DraggingOverlay/DragItems/index.vue +4 -4
  104. package/dist/runtime/components/Edit/Features/DraggingOverlay/DropTargets/fragment.glsl +1 -1
  105. package/dist/runtime/components/Edit/Features/DraggingOverlay/DropTargets/index.vue +35 -71
  106. package/dist/runtime/components/Edit/Features/DraggingOverlay/DropTargets/vertex.glsl +1 -1
  107. package/dist/runtime/components/Edit/Features/DraggingOverlay/index.vue +62 -48
  108. package/dist/runtime/components/Edit/Features/EditForm/Frame/index.vue +3 -3
  109. package/dist/runtime/components/Edit/Features/EditForm/index.vue +3 -3
  110. package/dist/runtime/components/Edit/Features/EditableField/index.vue +6 -2
  111. package/dist/runtime/components/Edit/Features/EditableMask/index.vue +3 -20
  112. package/dist/runtime/components/Edit/Features/Fragments/index.vue +3 -2
  113. package/dist/runtime/components/Edit/Features/History/index.vue +35 -12
  114. package/dist/runtime/components/Edit/Features/ImportExisting/Dialog/index.vue +6 -2
  115. package/dist/runtime/components/Edit/Features/ImportExisting/index.vue +3 -2
  116. package/dist/runtime/components/Edit/Features/Library/index.vue +11 -9
  117. package/dist/runtime/components/Edit/Features/MediaLibrary/Library/index.vue +5 -8
  118. package/dist/runtime/components/Edit/Features/MultiSelect/Overlay/fragment.glsl +1 -1
  119. package/dist/runtime/components/Edit/Features/MultiSelect/Overlay/index.vue +9 -4
  120. package/dist/runtime/components/Edit/Features/MultiSelect/Overlay/vertex.glsl +1 -1
  121. package/dist/runtime/components/Edit/Features/MultiSelect/index.vue +8 -14
  122. package/dist/runtime/components/Edit/Features/Options/Form/Checkbox/index.vue +3 -2
  123. package/dist/runtime/components/Edit/Features/Options/Form/Checkbox/index.vue.d.ts +2 -0
  124. package/dist/runtime/components/Edit/Features/Options/Form/Item.vue +9 -3
  125. package/dist/runtime/components/Edit/Features/Options/Form/Item.vue.d.ts +0 -1
  126. package/dist/runtime/components/Edit/Features/Options/Form/Radios/index.vue +37 -19
  127. package/dist/runtime/components/Edit/Features/Options/Form/Radios/index.vue.d.ts +8 -2
  128. package/dist/runtime/components/Edit/Features/Options/Form/index.vue +81 -37
  129. package/dist/runtime/components/Edit/Features/Options/Form/index.vue.d.ts +5 -5
  130. package/dist/runtime/components/Edit/Features/Options/index.vue +30 -6
  131. package/dist/runtime/components/Edit/Features/PreviewGrant/index.vue +3 -3
  132. package/dist/runtime/components/Edit/Features/Publish/Dialog/index.vue +1 -0
  133. package/dist/runtime/components/Edit/Features/Publish/index.vue +3 -2
  134. package/dist/runtime/components/Edit/Features/Revert/index.vue +3 -3
  135. package/dist/runtime/components/Edit/Features/Search/index.vue +3 -2
  136. package/dist/runtime/components/Edit/Features/Selection/AddButtons/AddButtonsField.vue +54 -0
  137. package/dist/runtime/components/Edit/Features/Selection/AddButtons/AddButtonsField.vue.d.ts +14 -0
  138. package/dist/runtime/components/Edit/Features/Selection/AddButtons/Overlay/index.vue +120 -0
  139. package/dist/runtime/components/Edit/Features/Selection/AddButtons/Overlay/index.vue.d.ts +15 -0
  140. package/dist/runtime/components/Edit/Features/Selection/AddButtons/index.vue +459 -0
  141. package/dist/runtime/components/Edit/Features/Selection/AddButtons/index.vue.d.ts +6 -0
  142. package/dist/runtime/components/Edit/Features/Selection/Overlay/fragment.glsl +15 -10
  143. package/dist/runtime/components/Edit/Features/Selection/Overlay/index.vue +32 -11
  144. package/dist/runtime/components/Edit/Features/Selection/Overlay/vertex.glsl +1 -1
  145. package/dist/runtime/components/Edit/Features/Selection/index.vue +76 -7
  146. package/dist/runtime/components/Edit/Features/Settings/Dialog/FeatureSetting/index.vue +12 -17
  147. package/dist/runtime/components/Edit/Features/Settings/index.vue +11 -25
  148. package/dist/runtime/components/Edit/Features/Theme/Color/index.vue +5 -1
  149. package/dist/runtime/components/Edit/Features/Theme/index.vue +2 -1
  150. package/dist/runtime/components/Edit/Features/TouchActionBar/index.vue +3 -2
  151. package/dist/runtime/components/Edit/Features/Transform/Dialog/index.vue +198 -0
  152. package/dist/runtime/components/Edit/Features/Transform/Dialog/index.vue.d.ts +13 -0
  153. package/dist/runtime/components/Edit/Features/Transform/index.vue +155 -44
  154. package/dist/runtime/components/Edit/Form/Radio/index.vue +33 -0
  155. package/dist/runtime/components/Edit/Form/Radio/index.vue.d.ts +20 -0
  156. package/dist/runtime/components/Edit/Form/RadioTabs/index.vue +37 -0
  157. package/dist/runtime/components/Edit/Form/RadioTabs/index.vue.d.ts +22 -0
  158. package/dist/runtime/components/Edit/Form/Select/index.vue +29 -0
  159. package/dist/runtime/components/Edit/Form/Select/index.vue.d.ts +20 -0
  160. package/dist/runtime/components/Edit/Form/Text/index.vue +33 -0
  161. package/dist/runtime/components/Edit/Form/Text/index.vue.d.ts +19 -0
  162. package/dist/runtime/components/Edit/Form/Textarea/index.vue +13 -6
  163. package/dist/runtime/components/Edit/Form/Textarea/index.vue.d.ts +4 -0
  164. package/dist/runtime/components/Edit/FormOverlay/index.vue +1 -1
  165. package/dist/runtime/components/Edit/Indicators/index.vue +123 -0
  166. package/dist/runtime/components/Edit/Indicators/index.vue.d.ts +2 -0
  167. package/dist/runtime/components/Edit/ItemIcon/index.vue +2 -1
  168. package/dist/runtime/components/Edit/Konami/Game/PixelGrid.vue +66 -0
  169. package/dist/runtime/components/Edit/Konami/Game/PixelGrid.vue.d.ts +7 -0
  170. package/dist/runtime/components/Edit/Konami/Game/blokkli.png +0 -0
  171. package/dist/runtime/components/Edit/Konami/Game/charmap.d.ts +2 -0
  172. package/dist/runtime/components/Edit/Konami/Game/charmap.js +168 -0
  173. package/dist/runtime/components/Edit/Konami/Game/index.vue +745 -0
  174. package/dist/runtime/components/Edit/Konami/Game/index.vue.d.ts +6 -0
  175. package/dist/runtime/components/Edit/Konami/Game/textRendering.d.ts +8 -0
  176. package/dist/runtime/components/Edit/Konami/Game/textRendering.js +138 -0
  177. package/dist/runtime/components/Edit/Konami/Game/useIconRendering.d.ts +9 -0
  178. package/dist/runtime/components/Edit/Konami/Game/useIconRendering.js +130 -0
  179. package/dist/runtime/components/Edit/Konami/index.vue +44 -0
  180. package/dist/runtime/components/Edit/Konami/index.vue.d.ts +2 -0
  181. package/dist/runtime/components/Edit/Loading/index.vue +6 -2
  182. package/dist/runtime/components/Edit/Loading/index.vue.d.ts +2 -0
  183. package/dist/runtime/components/Edit/Messages/index.vue +8 -3
  184. package/dist/runtime/components/Edit/PluginConfigForm/Checkbox/index.vue +17 -0
  185. package/dist/runtime/components/Edit/PluginConfigForm/Checkbox/index.vue.d.ts +11 -0
  186. package/dist/runtime/components/Edit/PluginConfigForm/Options/index.vue +37 -0
  187. package/dist/runtime/components/Edit/PluginConfigForm/Options/index.vue.d.ts +11 -0
  188. package/dist/runtime/components/Edit/PluginConfigForm/Text/index.vue +43 -0
  189. package/dist/runtime/components/Edit/PluginConfigForm/Text/index.vue.d.ts +11 -0
  190. package/dist/runtime/components/Edit/PluginConfigForm/index.vue +57 -0
  191. package/dist/runtime/components/Edit/PluginConfigForm/index.vue.d.ts +16 -0
  192. package/dist/runtime/components/Edit/PreviewProvider.vue +3 -4
  193. package/dist/runtime/components/Edit/RelativeTime/index.vue +3 -2
  194. package/dist/runtime/components/Edit/ShortcutIndicator/index.vue +8 -3
  195. package/dist/runtime/components/Edit/SystemRequirements/index.vue +3 -3
  196. package/dist/runtime/components/Edit/Toolbar/index.vue +3 -2
  197. package/dist/runtime/components/Edit/Transition/index.vue +41 -0
  198. package/dist/runtime/components/Edit/Transition/index.vue.d.ts +19 -0
  199. package/dist/runtime/components/Edit/index.d.ts +23 -15
  200. package/dist/runtime/components/Edit/index.js +44 -28
  201. package/dist/runtime/composables/defineBlokkli.js +7 -3
  202. package/dist/runtime/composables/defineBlokkliFeature.d.ts +4 -7
  203. package/dist/runtime/composables/defineBlokkliProvider.d.ts +11 -0
  204. package/dist/runtime/composables/defineBlokkliProvider.js +46 -0
  205. package/dist/runtime/composables/useBlokkliHelper.js +1 -1
  206. package/dist/runtime/constants/index.d.ts +3 -0
  207. package/dist/runtime/constants/index.js +3 -0
  208. package/dist/runtime/css/output.css +1 -1
  209. package/dist/runtime/helpers/addElementClasses.d.ts +2 -0
  210. package/dist/runtime/helpers/addElementClasses.js +24 -0
  211. package/dist/runtime/helpers/animationProvider.d.ts +4 -2
  212. package/dist/runtime/helpers/animationProvider.js +7 -2
  213. package/dist/runtime/helpers/bundles/index.d.ts +1 -0
  214. package/dist/runtime/helpers/bundles/index.js +4 -0
  215. package/dist/runtime/helpers/composables/useStickyToolbar.d.ts +20 -0
  216. package/dist/runtime/helpers/composables/useStickyToolbar.js +215 -0
  217. package/dist/runtime/helpers/definitionProvider.d.ts +2 -1
  218. package/dist/runtime/helpers/definitionProvider.js +17 -0
  219. package/dist/runtime/helpers/dom/index.d.ts +59 -0
  220. package/dist/runtime/helpers/dom/index.js +48 -0
  221. package/dist/runtime/helpers/domProvider.d.ts +2 -1
  222. package/dist/runtime/helpers/domProvider.js +89 -43
  223. package/dist/runtime/helpers/dropTargets/index.d.ts +6 -0
  224. package/dist/runtime/helpers/dropTargets/index.js +49 -0
  225. package/dist/runtime/helpers/eventBus.d.ts +1 -1
  226. package/dist/runtime/helpers/eventBus.js +2 -2
  227. package/dist/runtime/helpers/index.d.ts +10 -1
  228. package/dist/runtime/helpers/index.js +57 -0
  229. package/dist/runtime/helpers/indicatorsProvider.d.ts +10 -0
  230. package/dist/runtime/helpers/indicatorsProvider.js +23 -0
  231. package/dist/runtime/helpers/keyboardProvider.d.ts +2 -0
  232. package/dist/runtime/helpers/keyboardProvider.js +17 -1
  233. package/dist/runtime/helpers/pluginProvider.d.ts +10 -0
  234. package/dist/runtime/helpers/pluginProvider.js +33 -0
  235. package/dist/runtime/helpers/renderCycle.d.ts +1 -0
  236. package/dist/runtime/helpers/renderCycle.js +10 -0
  237. package/dist/runtime/helpers/runtimeHelpers/index.js +14 -11
  238. package/dist/runtime/helpers/selectionProvider.d.ts +16 -0
  239. package/dist/runtime/helpers/selectionProvider.js +47 -35
  240. package/dist/runtime/helpers/stateProvider.d.ts +6 -2
  241. package/dist/runtime/helpers/stateProvider.js +58 -14
  242. package/dist/runtime/helpers/storageProvider.d.ts +4 -3
  243. package/dist/runtime/helpers/storageProvider.js +56 -3
  244. package/dist/runtime/helpers/symbols.d.ts +1 -0
  245. package/dist/runtime/helpers/symbols.js +1 -0
  246. package/dist/runtime/helpers/textProvider.js +6 -0
  247. package/dist/runtime/helpers/themeProvider.d.ts +2 -0
  248. package/dist/runtime/helpers/themeProvider.js +4 -1
  249. package/dist/runtime/helpers/transform.js +1 -3
  250. package/dist/runtime/helpers/uiProvider.d.ts +7 -2
  251. package/dist/runtime/helpers/uiProvider.js +49 -47
  252. package/dist/runtime/helpers/useTransitionedValue.d.ts +18 -0
  253. package/dist/runtime/helpers/useTransitionedValue.js +57 -0
  254. package/dist/runtime/icons/anchor.svg +1 -0
  255. package/dist/runtime/icons/arrow-left.svg +1 -1
  256. package/dist/runtime/icons/arrow-right.svg +1 -1
  257. package/dist/runtime/icons/arrow-top-right.svg +1 -0
  258. package/dist/runtime/icons/chart.svg +1 -0
  259. package/dist/runtime/icons/copy.svg +1 -0
  260. package/dist/runtime/icons/cursor-move.svg +1 -1
  261. package/dist/runtime/icons/diff.svg +1 -1
  262. package/dist/runtime/icons/eye.svg +1 -1
  263. package/dist/runtime/icons/info.svg +1 -1
  264. package/dist/runtime/icons/link.svg +1 -0
  265. package/dist/runtime/icons/speedometer.svg +1 -0
  266. package/dist/runtime/types/blokkOptions.d.ts +8 -0
  267. package/dist/runtime/types/index.d.ts +163 -5
  268. package/dist/runtime/types/theme.d.ts +2 -1
  269. package/dist/shared/{editor.gz_ac6uT.d.mts → editor.CKsrTpc1.d.mts} +1 -1
  270. package/package.json +55 -38
  271. package/dist/runtime/components/Edit/Features/FieldAreas/Overlay/index.vue +0 -22
  272. package/dist/runtime/components/Edit/Features/FieldAreas/index.vue +0 -41
  273. /package/dist/runtime/components/Edit/Features/{FieldAreas/Overlay → Analyze}/index.vue.d.ts +0 -0
  274. /package/dist/runtime/components/Edit/Features/{FieldAreas/index.vue.d.ts → Anchors/Renderer.vue.d.ts} +0 -0
@@ -0,0 +1,2 @@
1
+ import { type Ref } from '#imports';
2
+ export declare function addElementClasses(element: HTMLElement, classesArg: string | string[], watchSource?: Ref<string | boolean | null | undefined>): void;
@@ -0,0 +1,24 @@
1
+ import { onBeforeUnmount, watch } from "#imports";
2
+ export function addElementClasses(element, classesArg, watchSource) {
3
+ const classes = Array.isArray(classesArg) ? classesArg : [classesArg];
4
+ if (watchSource) {
5
+ watch(
6
+ watchSource,
7
+ function(value) {
8
+ if (value) {
9
+ element.classList.add(...classes);
10
+ } else {
11
+ element.classList.remove(...classes);
12
+ }
13
+ },
14
+ {
15
+ immediate: true
16
+ }
17
+ );
18
+ } else {
19
+ element.classList.add(...classes);
20
+ }
21
+ onBeforeUnmount(() => {
22
+ element.classList.remove(...classes);
23
+ });
24
+ }
@@ -1,6 +1,7 @@
1
- import { type ComputedRef } from '#imports';
1
+ import { type ComputedRef, type WritableComputedRef } from '#imports';
2
2
  import type { UiProvider } from './uiProvider.js';
3
3
  import { type ProgramInfo } from 'twgl.js';
4
+ import type { StorageProvider } from './storageProvider.js';
4
5
  export type AnimationProvider = {
5
6
  /**
6
7
  * Request an animation loop. Should be called when UI state changes.
@@ -13,6 +14,7 @@ export type AnimationProvider = {
13
14
  setSharedUniforms: (gl: WebGLRenderingContext, programInfo: ProgramInfo) => void;
14
15
  dpi: ComputedRef<number>;
15
16
  webglSupported: ComputedRef<boolean | null>;
17
+ webglEnabled: WritableComputedRef<boolean>;
16
18
  getCanvasElement: () => HTMLCanvasElement;
17
19
  /**
18
20
  * Register a WebGL program.
@@ -22,4 +24,4 @@ export type AnimationProvider = {
22
24
  registerProgram: (id: string, gl: WebGLRenderingContext, shaders: string[]) => ProgramInfo;
23
25
  setMouseCoords: (x: number, y: number) => void;
24
26
  };
25
- export default function (ui: UiProvider): AnimationProvider;
27
+ export default function (ui: UiProvider, storage: StorageProvider): AnimationProvider;
@@ -8,7 +8,8 @@ import {
8
8
  } from "#imports";
9
9
  import { eventBus } from "#blokkli/helpers/eventBus";
10
10
  import { createProgramInfo } from "twgl.js";
11
- export default function(ui) {
11
+ export default function(ui, storage) {
12
+ const webglEnabled = storage.use("webglEnabled", true);
12
13
  let mouseX = 0;
13
14
  let mouseY = 0;
14
15
  let iterator = 120;
@@ -99,6 +100,9 @@ export default function(ui) {
99
100
  return {
100
101
  requestDraw,
101
102
  gl: function() {
103
+ if (!webglEnabled.value) {
104
+ return;
105
+ }
102
106
  if (webglSupported.value === false) {
103
107
  return;
104
108
  }
@@ -117,7 +121,8 @@ export default function(ui) {
117
121
  dpi,
118
122
  registerProgram,
119
123
  setMouseCoords,
120
- webglSupported: computed(() => webglSupported.value),
124
+ webglSupported: computed(() => webglSupported.value && webglEnabled.value),
125
+ webglEnabled,
121
126
  getCanvasElement
122
127
  };
123
128
  }
@@ -0,0 +1 @@
1
+ export declare function isInternalBundle(bundle: string): boolean;
@@ -0,0 +1,4 @@
1
+ import { INTERNAL_BUNDLES } from "#blokkli/constants";
2
+ export function isInternalBundle(bundle) {
3
+ return INTERNAL_BUNDLES.includes(bundle);
4
+ }
@@ -0,0 +1,20 @@
1
+ import type { ComputedRef, ShallowRef } from 'vue';
2
+ type PlacementVertical = 'top' | 'bottom' | 'auto';
3
+ type PlacementHorizontal = 'left' | 'center';
4
+ type UseStickyToolbarOptions = {
5
+ getPlacementY?: () => PlacementVertical;
6
+ getPlacementX?: () => PlacementHorizontal;
7
+ shouldUpdate?: () => boolean;
8
+ getWidth?: () => number;
9
+ getHeight?: () => number;
10
+ getMargin?: () => number;
11
+ getAnchorElement?: () => HTMLElement | null;
12
+ getCaretWidth?: () => number;
13
+ };
14
+ type UseStickyToolbar = {
15
+ shouldRender: ComputedRef<boolean>;
16
+ placementY: ComputedRef<'top' | 'bottom'>;
17
+ caretX: ComputedRef<number>;
18
+ };
19
+ export default function (el: Readonly<ShallowRef<HTMLElement | null>>, options?: UseStickyToolbarOptions): UseStickyToolbar;
20
+ export {};
@@ -0,0 +1,215 @@
1
+ import onBlokkliEvent from "./onBlokkliEvent.js";
2
+ import { computed, ref, useBlokkli } from "#imports";
3
+ import { falsy, findIdealRectPosition } from "../index.js";
4
+ const limitPlacedRect = (rect, padding) => {
5
+ return {
6
+ width: rect.width,
7
+ height: rect.height,
8
+ x: Math.min(
9
+ Math.max(rect.x, padding.x),
10
+ padding.x + padding.width - rect.width
11
+ ),
12
+ y: Math.min(
13
+ Math.max(padding.y, rect.y),
14
+ padding.height + padding.y - rect.height
15
+ )
16
+ };
17
+ };
18
+ export default function(el, options) {
19
+ const { ui, selection, dom } = useBlokkli();
20
+ const shouldRender = ref(false);
21
+ const actualPlacement = ref("bottom");
22
+ const caretXPosition = ref(0);
23
+ function getMargin() {
24
+ if (options && options.getMargin) {
25
+ return options.getMargin();
26
+ }
27
+ return 15;
28
+ }
29
+ function getCaretWidth() {
30
+ if (options && options.getCaretWidth) {
31
+ return options.getCaretWidth();
32
+ }
33
+ return 0;
34
+ }
35
+ let anchorRect = null;
36
+ function getCoords(width, height, placementY, placementX, offset, scale) {
37
+ let minX = 0;
38
+ let maxX = 0;
39
+ let minY = 0;
40
+ let maxY = 0;
41
+ let hasRects = false;
42
+ if (options && options.getAnchorElement) {
43
+ const anchorElement = options.getAnchorElement();
44
+ if (anchorElement) {
45
+ anchorRect ||= ui.getAbsoluteElementRect(
46
+ anchorElement.getBoundingClientRect(),
47
+ scale,
48
+ offset
49
+ );
50
+ const rectX = (anchorRect.x + offset.x / scale) * scale;
51
+ const rectY = (anchorRect.y + offset.y / scale) * scale;
52
+ const rectRight = rectX + anchorRect.width * scale;
53
+ const rectBottom = rectY + anchorRect.height * scale;
54
+ minX = rectX;
55
+ maxX = rectRight;
56
+ minY = rectY;
57
+ maxY = rectBottom;
58
+ hasRects = true;
59
+ }
60
+ } else {
61
+ const rects = selection.blocks.value.map((block) => dom.getBlockRect(block.uuid)).filter(falsy).filter((rect2) => rect2.height || rect2.width);
62
+ hasRects = !!rects.length;
63
+ if (hasRects) {
64
+ for (let i = 0; i < rects.length; i++) {
65
+ const { x: x2, y: y2, height: height2, width: rectWidth } = rects[i];
66
+ const rectX = (x2 + offset.x / scale) * scale;
67
+ const rectY = (y2 + offset.y / scale) * scale;
68
+ const rectRight = rectX + rectWidth * scale;
69
+ const rectBottom = rectY + height2 * scale;
70
+ if (i === 0 || rectX < minX) {
71
+ minX = rectX;
72
+ }
73
+ if (i === 0 || rectRight > maxX) {
74
+ maxX = rectRight;
75
+ }
76
+ if (i === 0 || rectY < minY) {
77
+ minY = rectY;
78
+ }
79
+ if (i === 0 || rectBottom > maxY) {
80
+ maxY = rectBottom;
81
+ }
82
+ }
83
+ } else {
84
+ if (!selection.hasHostSelected.value) {
85
+ return;
86
+ }
87
+ minX = offset.x;
88
+ maxX = minX + ui.artboardSize.value.width;
89
+ minY = offset.y;
90
+ maxY = minY + ui.artboardSize.value.height;
91
+ }
92
+ }
93
+ const padding = ui.visibleViewportPadded.value;
94
+ const xSubtract = hasRects ? 5 * Math.min(scale, 1) : 0;
95
+ const margin = getMargin() * Math.min(scale, 1);
96
+ let actualPlacementY = placementY === "auto" ? "bottom" : placementY;
97
+ if (placementY === "auto") {
98
+ const spaceAbove = minY - padding.y;
99
+ const spaceBelow = padding.y + padding.height - maxY;
100
+ const requiredSpace = height + margin;
101
+ if (spaceBelow >= requiredSpace) {
102
+ actualPlacementY = "bottom";
103
+ } else if (spaceAbove >= requiredSpace) {
104
+ actualPlacementY = "top";
105
+ } else {
106
+ actualPlacementY = spaceAbove > spaceBelow ? "top" : "bottom";
107
+ }
108
+ }
109
+ const y = actualPlacementY === "top" ? minY - height - margin : maxY + margin;
110
+ const centerX = (minX + maxX) / 2;
111
+ let x;
112
+ if (placementX === "center") {
113
+ x = centerX - width / 2;
114
+ } else {
115
+ x = minX - xSubtract;
116
+ }
117
+ const rect = limitPlacedRect(
118
+ {
119
+ x,
120
+ y,
121
+ width,
122
+ height
123
+ },
124
+ padding
125
+ );
126
+ const idealPosition = findIdealRectPosition(
127
+ ui.viewportBlockingRects.value,
128
+ rect,
129
+ padding
130
+ );
131
+ if (!idealPosition) {
132
+ return void 0;
133
+ }
134
+ const caretWidth = getCaretWidth();
135
+ const caretHalfWidth = caretWidth / 2;
136
+ const minCaretX = caretHalfWidth;
137
+ const maxCaretX = width - caretHalfWidth;
138
+ const caretX = Math.max(
139
+ minCaretX,
140
+ Math.min(centerX - idealPosition.x, maxCaretX)
141
+ );
142
+ return { ...idealPosition, actualPlacementY, caretX };
143
+ }
144
+ function getWidth() {
145
+ if (options && options.getWidth) {
146
+ return options.getWidth();
147
+ }
148
+ if (el.value) {
149
+ return el.value.clientWidth;
150
+ }
151
+ return null;
152
+ }
153
+ function getHeight() {
154
+ if (options && options.getHeight) {
155
+ return options.getHeight();
156
+ }
157
+ if (el.value) {
158
+ return el.value.clientHeight;
159
+ }
160
+ return null;
161
+ }
162
+ function getPlacementVertical() {
163
+ if (options && options.getPlacementY) {
164
+ return options.getPlacementY();
165
+ }
166
+ return "top";
167
+ }
168
+ function getPlacementHorizontal() {
169
+ if (options && options.getPlacementX) {
170
+ return options.getPlacementX();
171
+ }
172
+ return "left";
173
+ }
174
+ onBlokkliEvent("canvas:draw", (ctx) => {
175
+ if (!el.value) {
176
+ return;
177
+ }
178
+ if (ui.isMobile.value) {
179
+ el.value.style.transform = "";
180
+ shouldRender.value = true;
181
+ return;
182
+ }
183
+ if (options && options.shouldUpdate && !options.shouldUpdate()) {
184
+ return;
185
+ }
186
+ const width = getWidth();
187
+ const height = getHeight();
188
+ if (width === null || height === null) {
189
+ return;
190
+ }
191
+ const placementY = getPlacementVertical();
192
+ const placementX = getPlacementHorizontal();
193
+ const coords = getCoords(
194
+ width,
195
+ height,
196
+ placementY,
197
+ placementX,
198
+ ctx.artboardOffset,
199
+ ctx.artboardScale
200
+ );
201
+ if (!coords) {
202
+ shouldRender.value = false;
203
+ return;
204
+ }
205
+ el.value.style.transform = `translate3d(${coords.x}px, ${coords.y}px, 0)`;
206
+ actualPlacement.value = coords.actualPlacementY;
207
+ caretXPosition.value = coords.caretX;
208
+ shouldRender.value = true;
209
+ });
210
+ return {
211
+ shouldRender: computed(() => shouldRender.value),
212
+ placementY: computed(() => actualPlacement.value),
213
+ caretX: computed(() => caretXPosition.value)
214
+ };
215
+ }
@@ -1,5 +1,5 @@
1
1
  import { type Ref, type ComputedRef } from '#imports';
2
- import type { BlockDefinition, FragmentDefinition } from '#blokkli-build/definitions';
2
+ import type { BlockDefinition, FragmentDefinition, ProviderDefinition } from '#blokkli-build/definitions';
3
3
  import type { ValidFieldListTypes, BlockBundleWithNested } from '#blokkli-build/generated-types';
4
4
  import type { DeepReadonly } from 'vue';
5
5
  import type { BlockDefinitionOptionsInput } from '../types/index.js';
@@ -8,6 +8,7 @@ export type DefinitionProvider = {
8
8
  getBlockDefinition: (bundle: string, fieldListType: ValidFieldListTypes, parentBundle?: BlockBundleWithNested) => BlockDefinition | undefined;
9
9
  getDefaultDefinition: (bundle: string) => BlockDefinition | undefined;
10
10
  getFragmentDefinition: (name: string) => FragmentDefinition | undefined;
11
+ getProviderDefinition: (entityType: string, entityBundle: string) => ProviderDefinition | undefined;
11
12
  getBlockIcon: (bundle: string) => string | undefined;
12
13
  fragmentDefinitions: ComputedRef<FragmentDefinition[]>;
13
14
  blockDefinitions: ComputedRef<BlockDefinition[]>;
@@ -6,6 +6,7 @@ import {
6
6
  export default function() {
7
7
  const blocks = ref(definitions.blocks);
8
8
  const fragments = ref(definitions.fragments);
9
+ const providers = ref(definitions.providers);
9
10
  const renderKey = ref(definitions.renderKey);
10
11
  const blockIcons = ref(definitions.icons);
11
12
  const allGlobalOptions = ref(
@@ -18,6 +19,7 @@ export default function() {
18
19
  renderKey.value = newDefinitions?.default.renderKey || "";
19
20
  blocks.value = newDefinitions?.default?.blocks || [];
20
21
  fragments.value = newDefinitions?.default?.fragments || [];
22
+ providers.value = newDefinitions?.default?.providers || [];
21
23
  blockIcons.value = newDefinitions?.default?.icons || {};
22
24
  allGlobalOptions.value = newDefinitions?.default?.globalOptions || {};
23
25
  });
@@ -57,6 +59,16 @@ export default function() {
57
59
  {}
58
60
  )
59
61
  );
62
+ const providersByName = computed(
63
+ () => providers.value.reduce(
64
+ (acc, definition) => {
65
+ const key = `${definition.entityType}:${definition.bundle}`;
66
+ acc[key] = definition;
67
+ return acc;
68
+ },
69
+ {}
70
+ )
71
+ );
60
72
  function getBlockDefinition(bundle, fieldListType, parentBundle) {
61
73
  const forFieldListType = bundle + "__field:" + fieldListType;
62
74
  if (blocksByKey.value[forFieldListType]) {
@@ -73,6 +85,10 @@ export default function() {
73
85
  function getFragmentDefinition(name) {
74
86
  return fragmentsByName.value[name];
75
87
  }
88
+ function getProviderDefinition(entityType, entityBundle) {
89
+ const key = `${entityType}:${entityBundle}`;
90
+ return providersByName.value[key];
91
+ }
76
92
  function getDefaultDefinition(bundle) {
77
93
  return blocksByKey.value[bundle];
78
94
  }
@@ -82,6 +98,7 @@ export default function() {
82
98
  return {
83
99
  getBlockDefinition,
84
100
  getFragmentDefinition,
101
+ getProviderDefinition,
85
102
  getDefaultDefinition,
86
103
  getBlockIcon,
87
104
  fragmentDefinitions: computed(() => fragments.value),
@@ -3,3 +3,62 @@
3
3
  */
4
4
  export declare function cloneWithInlineStyles(node: Element): Element;
5
5
  export declare function cloneElementWithStyles(element: Element, isRoot?: boolean): string;
6
+ /**
7
+ * Possible values for the MouseEvent.buttons property.
8
+ *
9
+ * @see https://developer.mozilla.org/en-US/docs/Web/API/MouseEvent/buttons
10
+ */
11
+ export declare const MOUSE_BUTTONS: Readonly<{
12
+ /**
13
+ *No button or un-initialized.
14
+ */
15
+ NONE: 0;
16
+ /**
17
+ * Primary button (usually the left button).
18
+ */
19
+ PRIMARY: 1;
20
+ /**
21
+ * Secondary button (usually the right button).
22
+ */
23
+ SECONDARY: 2;
24
+ /**
25
+ * Auxiliary button (usually the mouse wheel button or middle button).
26
+ */
27
+ AUXILIARY: 4;
28
+ /**
29
+ * 4th button (typically the "Browser Back" button).
30
+ */
31
+ FOURTH: 8;
32
+ /**
33
+ * 5th button (typically the "Browser Forward" button).
34
+ */
35
+ FIFTH: 16;
36
+ }>;
37
+ /**
38
+ * Possible values for the MouseEvent.button property.
39
+ * (Yes, they are different from the "buttons" property...)
40
+ *
41
+ * @see https://developer.mozilla.org/en-US/docs/Web/API/MouseEvent/button
42
+ */
43
+ export declare const MOUSE_BUTTON: Readonly<{
44
+ /**
45
+ * Main button, usually the left button or the un-initialized state.
46
+ */
47
+ MAIN: 0;
48
+ /**
49
+ * Auxiliary button, usually the wheel button or the middle button (if present).
50
+ */
51
+ AUXILIARY: 1;
52
+ /**
53
+ * Secondary button, usually the right button.
54
+ */
55
+ SECONDARY: 2;
56
+ /**
57
+ * Fourth button, typically the Browser Back button.
58
+ */
59
+ FOURTH: 3;
60
+ /**
61
+ * Fifth button, typically the Browser Forward button.
62
+ */
63
+ FIFTH: 4;
64
+ }>;
@@ -35,3 +35,51 @@ export function cloneElementWithStyles(element, isRoot) {
35
35
  container.appendChild(clonedElement);
36
36
  return container.innerHTML;
37
37
  }
38
+ export const MOUSE_BUTTONS = Object.freeze({
39
+ /**
40
+ *No button or un-initialized.
41
+ */
42
+ NONE: 0,
43
+ /**
44
+ * Primary button (usually the left button).
45
+ */
46
+ PRIMARY: 1,
47
+ /**
48
+ * Secondary button (usually the right button).
49
+ */
50
+ SECONDARY: 2,
51
+ /**
52
+ * Auxiliary button (usually the mouse wheel button or middle button).
53
+ */
54
+ AUXILIARY: 4,
55
+ /**
56
+ * 4th button (typically the "Browser Back" button).
57
+ */
58
+ FOURTH: 8,
59
+ /**
60
+ * 5th button (typically the "Browser Forward" button).
61
+ */
62
+ FIFTH: 16
63
+ });
64
+ export const MOUSE_BUTTON = Object.freeze({
65
+ /**
66
+ * Main button, usually the left button or the un-initialized state.
67
+ */
68
+ MAIN: 0,
69
+ /**
70
+ * Auxiliary button, usually the wheel button or the middle button (if present).
71
+ */
72
+ AUXILIARY: 1,
73
+ /**
74
+ * Secondary button, usually the right button.
75
+ */
76
+ SECONDARY: 2,
77
+ /**
78
+ * Fourth button, typically the Browser Back button.
79
+ */
80
+ FOURTH: 3,
81
+ /**
82
+ * Fifth button, typically the Browser Forward button.
83
+ */
84
+ FIFTH: 4
85
+ });
@@ -26,6 +26,7 @@ export type DomProvider = {
26
26
  updateFieldElement: (entity: EntityContext, fieldName: string, element: HTMLElement) => void;
27
27
  unregisterField: (entity: EntityContext, fieldName: string) => void;
28
28
  registeredFieldTypes: ComputedRef<RegisteredFieldType[]>;
29
+ registeredBlockUuids: ComputedRef<string[]>;
29
30
  /**
30
31
  * Get all droppable entity fields.
31
32
  */
@@ -36,7 +37,7 @@ export type DomProvider = {
36
37
  isBlockVisible(uuid: string): boolean;
37
38
  getActiveProviderElement: () => HTMLElement;
38
39
  getBlockRects: () => Record<string, MeasuredBlockRect>;
39
- getBlockRect: (uuid: string) => MeasuredBlockRect | undefined;
40
+ getBlockRect: (uuid: string, refresh?: boolean) => MeasuredBlockRect | undefined;
40
41
  refreshBlockRect: (uuid: string) => void;
41
42
  getFieldRect: (key: string) => Rectangle | undefined;
42
43
  updateVisibleRects: () => void;