@blokkli/editor 2.0.0-alpha.13 → 2.0.0-alpha.15

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 (289) hide show
  1. package/dist/module.d.mts +1 -1
  2. package/dist/module.json +1 -1
  3. package/dist/module.mjs +4873 -1167
  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 +5 -0
  7. package/dist/modules/drupal/graphql/base/query.pbEntityConfig.graphql +5 -0
  8. package/dist/modules/drupal/graphql/features/publishNew.graphql +1 -4
  9. package/dist/modules/drupal/graphql/features/scheduler.graphql +31 -0
  10. package/dist/modules/drupal/graphql/features/transform.graphql +9 -1
  11. package/dist/modules/drupal/graphql/features/transform_host.graphql +38 -0
  12. package/dist/modules/drupal/graphql/mutations/update_host_options.graphql +15 -0
  13. package/dist/modules/drupal/index.d.mts +1 -1
  14. package/dist/modules/drupal/index.mjs +37 -7
  15. package/dist/modules/drupal/runtime/adapter/index.js +140 -5
  16. package/dist/runtime/adapter/index.d.ts +90 -1
  17. package/dist/runtime/blokkliPlugins/AddAction/index.vue +27 -3
  18. package/dist/runtime/blokkliPlugins/BlockIndicator/index.vue +65 -0
  19. package/dist/runtime/blokkliPlugins/BlockIndicator/index.vue.d.ts +26 -0
  20. package/dist/runtime/blokkliPlugins/ContextMenu/Menu/index.vue +3 -0
  21. package/dist/runtime/blokkliPlugins/ContextMenu/index.vue +3 -2
  22. package/dist/runtime/blokkliPlugins/DroppableEdit/index.vue +3 -3
  23. package/dist/runtime/blokkliPlugins/ItemDropdown/index.vue +49 -11
  24. package/dist/runtime/blokkliPlugins/ItemDropdown/index.vue.d.ts +29 -15
  25. package/dist/runtime/blokkliPlugins/MenuButton/index.vue.d.ts +2 -2
  26. package/dist/runtime/blokkliPlugins/Sidebar/Detached/index.vue +6 -7
  27. package/dist/runtime/blokkliPlugins/Sidebar/index.vue +2 -9
  28. package/dist/runtime/blokkliPlugins/Sidebar/index.vue.d.ts +1 -1
  29. package/dist/runtime/blokkliPlugins/ViewOption/index.vue +6 -3
  30. package/dist/runtime/blokkliPlugins/index.d.ts +8 -7
  31. package/dist/runtime/blokkliPlugins/index.js +15 -13
  32. package/dist/runtime/components/Blocks/Fragment/icon.svg +1 -1
  33. package/dist/runtime/components/BlokkliProvider.vue +1 -0
  34. package/dist/runtime/components/BlokkliProvider.vue.d.ts +1 -0
  35. package/dist/runtime/components/Edit/Actions/index.vue +39 -67
  36. package/dist/runtime/components/Edit/AddListItem/index.vue +2 -5
  37. package/dist/runtime/components/Edit/AddListItem/index.vue.d.ts +1 -1
  38. package/dist/runtime/components/Edit/AddListItemIcon/index.vue +19 -0
  39. package/dist/runtime/components/Edit/AddListItemIcon/index.vue.d.ts +15 -0
  40. package/dist/runtime/components/Edit/AppMenu/index.vue +5 -5
  41. package/dist/runtime/components/Edit/Dialog/index.vue +5 -1
  42. package/dist/runtime/components/Edit/Dialog/index.vue.d.ts +1 -1
  43. package/dist/runtime/components/Edit/DiffViewer/State.vue +276 -0
  44. package/dist/runtime/components/Edit/DiffViewer/State.vue.d.ts +16 -0
  45. package/dist/runtime/components/Edit/DragInteractions/index.vue +35 -6
  46. package/dist/runtime/components/Edit/EditProvider.vue +46 -35
  47. package/dist/runtime/components/Edit/Features/AddList/index.vue +15 -25
  48. package/dist/runtime/components/Edit/Features/Analyze/Overlay/fragment.glsl +58 -0
  49. package/dist/runtime/components/Edit/Features/Analyze/Overlay/index.vue +168 -0
  50. package/dist/runtime/components/Edit/Features/Analyze/Overlay/index.vue.d.ts +9 -0
  51. package/dist/runtime/components/Edit/Features/Analyze/Overlay/vertex.glsl +72 -0
  52. package/dist/runtime/components/Edit/Features/Analyze/Renderer.vue +159 -0
  53. package/dist/runtime/components/Edit/Features/Analyze/Renderer.vue.d.ts +7 -0
  54. package/dist/runtime/components/Edit/Features/Analyze/Results/Results.vue +100 -0
  55. package/dist/runtime/components/Edit/Features/Analyze/Results/Results.vue.d.ts +6 -0
  56. package/dist/runtime/components/Edit/Features/Analyze/Results/ResultsItem.vue +56 -0
  57. package/dist/runtime/components/Edit/Features/Analyze/Results/ResultsItem.vue.d.ts +3 -0
  58. package/dist/runtime/components/Edit/Features/Analyze/Results/ResultsItemNodes.vue +87 -0
  59. package/dist/runtime/components/Edit/Features/Analyze/Results/ResultsItemNodes.vue.d.ts +7 -0
  60. package/dist/runtime/components/Edit/Features/Analyze/Results/ResultsItemNodesTarget.vue +101 -0
  61. package/dist/runtime/components/Edit/Features/Analyze/Results/ResultsItemNodesTarget.vue.d.ts +8 -0
  62. package/dist/runtime/components/Edit/Features/Analyze/Results/Status.vue +18 -0
  63. package/dist/runtime/components/Edit/Features/Analyze/Results/Status.vue.d.ts +8 -0
  64. package/dist/runtime/components/Edit/Features/Analyze/Summary/Chart.vue +92 -0
  65. package/dist/runtime/components/Edit/Features/Analyze/Summary/Chart.vue.d.ts +17 -0
  66. package/dist/runtime/components/Edit/Features/Analyze/Summary/index.vue +77 -0
  67. package/dist/runtime/components/Edit/Features/Analyze/Summary/index.vue.d.ts +6 -0
  68. package/dist/runtime/components/Edit/Features/Analyze/analyzers/axe.d.ts +12 -0
  69. package/dist/runtime/components/Edit/Features/Analyze/analyzers/axe.js +75 -0
  70. package/dist/runtime/components/Edit/Features/Analyze/analyzers/defineAnalyzer.d.ts +4 -0
  71. package/dist/runtime/components/Edit/Features/Analyze/analyzers/defineAnalyzer.js +5 -0
  72. package/dist/runtime/components/Edit/Features/Analyze/analyzers/helpers/Context.d.ts +32 -0
  73. package/dist/runtime/components/Edit/Features/Analyze/analyzers/helpers/Context.js +45 -0
  74. package/dist/runtime/components/Edit/Features/Analyze/analyzers/helpers/collectTextElements.d.ts +5 -0
  75. package/dist/runtime/components/Edit/Features/Analyze/analyzers/helpers/collectTextElements.js +95 -0
  76. package/dist/runtime/components/Edit/Features/Analyze/analyzers/helpers/normalizeArray.d.ts +3 -0
  77. package/dist/runtime/components/Edit/Features/Analyze/analyzers/helpers/normalizeArray.js +13 -0
  78. package/dist/runtime/components/Edit/Features/Analyze/analyzers/index.d.ts +2 -0
  79. package/dist/runtime/components/Edit/Features/Analyze/analyzers/index.js +2 -0
  80. package/dist/runtime/components/Edit/Features/Analyze/analyzers/readability.d.ts +2 -0
  81. package/dist/runtime/components/Edit/Features/Analyze/analyzers/readability.js +165 -0
  82. package/dist/runtime/components/Edit/Features/Analyze/analyzers/types.d.ts +44 -0
  83. package/dist/runtime/components/Edit/Features/Analyze/analyzers/types.js +0 -0
  84. package/dist/runtime/components/Edit/Features/Analyze/helper.d.ts +5 -0
  85. package/dist/runtime/components/Edit/Features/Analyze/helper.js +28 -0
  86. package/dist/runtime/components/Edit/Features/Analyze/index.vue +44 -0
  87. package/dist/runtime/components/Edit/Features/Anchors/Renderer.vue +136 -0
  88. package/dist/runtime/components/Edit/Features/Anchors/index.vue +32 -0
  89. package/dist/runtime/components/Edit/Features/Anchors/index.vue.d.ts +2 -0
  90. package/dist/runtime/components/Edit/Features/Artboard/Overview/index.vue +25 -13
  91. package/dist/runtime/components/Edit/Features/Artboard/Renderer.vue +296 -0
  92. package/dist/runtime/components/Edit/Features/Artboard/Renderer.vue.d.ts +7 -0
  93. package/dist/runtime/components/Edit/Features/Artboard/index.vue +10 -245
  94. package/dist/runtime/components/Edit/Features/Assistant/index.vue +3 -2
  95. package/dist/runtime/components/Edit/Features/BlockAddList/index.vue +4 -4
  96. package/dist/runtime/components/Edit/Features/Clipboard/index.vue +161 -28
  97. package/dist/runtime/components/Edit/Features/CommandPalette/Palette/Group/index.vue +16 -4
  98. package/dist/runtime/components/Edit/Features/CommandPalette/Palette/Group/index.vue.d.ts +0 -1
  99. package/dist/runtime/components/Edit/Features/CommandPalette/Palette/index.vue +4 -53
  100. package/dist/runtime/components/Edit/Features/CommandPalette/index.vue +3 -2
  101. package/dist/runtime/components/Edit/Features/Conversions/index.vue +12 -14
  102. package/dist/runtime/components/Edit/Features/Debug/Viewport/index.vue +14 -0
  103. package/dist/runtime/components/Edit/Features/Debug/index.vue +27 -24
  104. package/dist/runtime/components/Edit/Features/Diff/DiffView/index.vue +13 -190
  105. package/dist/runtime/components/Edit/Features/Diff/index.vue +2 -2
  106. package/dist/runtime/components/Edit/Features/DraggingOverlay/DragItems/index.vue +4 -4
  107. package/dist/runtime/components/Edit/Features/DraggingOverlay/DropTargets/fragment.glsl +1 -1
  108. package/dist/runtime/components/Edit/Features/DraggingOverlay/DropTargets/index.vue +35 -71
  109. package/dist/runtime/components/Edit/Features/DraggingOverlay/DropTargets/vertex.glsl +1 -1
  110. package/dist/runtime/components/Edit/Features/DraggingOverlay/index.vue +62 -48
  111. package/dist/runtime/components/Edit/Features/EditForm/Frame/index.vue +3 -3
  112. package/dist/runtime/components/Edit/Features/EditForm/index.vue +3 -3
  113. package/dist/runtime/components/Edit/Features/EditableField/index.vue +6 -2
  114. package/dist/runtime/components/Edit/Features/EditableMask/index.vue +3 -20
  115. package/dist/runtime/components/Edit/Features/EntityTitle/index.vue +33 -1
  116. package/dist/runtime/components/Edit/Features/Fragments/index.vue +3 -2
  117. package/dist/runtime/components/Edit/Features/History/index.vue +35 -12
  118. package/dist/runtime/components/Edit/Features/ImportExisting/Dialog/index.vue +6 -2
  119. package/dist/runtime/components/Edit/Features/ImportExisting/index.vue +3 -2
  120. package/dist/runtime/components/Edit/Features/Library/index.vue +11 -9
  121. package/dist/runtime/components/Edit/Features/MediaLibrary/Library/index.vue +5 -8
  122. package/dist/runtime/components/Edit/Features/MultiSelect/Overlay/fragment.glsl +1 -1
  123. package/dist/runtime/components/Edit/Features/MultiSelect/Overlay/index.vue +9 -4
  124. package/dist/runtime/components/Edit/Features/MultiSelect/Overlay/vertex.glsl +1 -1
  125. package/dist/runtime/components/Edit/Features/MultiSelect/index.vue +8 -14
  126. package/dist/runtime/components/Edit/Features/Options/Form/Checkbox/index.vue +3 -2
  127. package/dist/runtime/components/Edit/Features/Options/Form/Checkbox/index.vue.d.ts +2 -0
  128. package/dist/runtime/components/Edit/Features/Options/Form/Item.vue +9 -3
  129. package/dist/runtime/components/Edit/Features/Options/Form/Item.vue.d.ts +0 -1
  130. package/dist/runtime/components/Edit/Features/Options/Form/Radios/index.vue +37 -19
  131. package/dist/runtime/components/Edit/Features/Options/Form/Radios/index.vue.d.ts +8 -2
  132. package/dist/runtime/components/Edit/Features/Options/Form/index.vue +81 -37
  133. package/dist/runtime/components/Edit/Features/Options/Form/index.vue.d.ts +5 -5
  134. package/dist/runtime/components/Edit/Features/Options/index.vue +30 -6
  135. package/dist/runtime/components/Edit/Features/PreviewGrant/index.vue +3 -3
  136. package/dist/runtime/components/Edit/Features/Publish/Dialog/Item.vue +41 -14
  137. package/dist/runtime/components/Edit/Features/Publish/Dialog/Item.vue.d.ts +2 -0
  138. package/dist/runtime/components/Edit/Features/Publish/Dialog/PublishOption.vue +47 -0
  139. package/dist/runtime/components/Edit/Features/Publish/Dialog/PublishOption.vue.d.ts +19 -0
  140. package/dist/runtime/components/Edit/Features/Publish/Dialog/ScheduleDate.vue +183 -0
  141. package/dist/runtime/components/Edit/Features/Publish/Dialog/ScheduleDate.vue.d.ts +13 -0
  142. package/dist/runtime/components/Edit/Features/Publish/Dialog/Summary.vue +83 -0
  143. package/dist/runtime/components/Edit/Features/Publish/Dialog/Summary.vue.d.ts +9 -0
  144. package/dist/runtime/components/Edit/Features/Publish/Dialog/index.vue +381 -128
  145. package/dist/runtime/components/Edit/Features/Publish/Dialog/index.vue.d.ts +3 -14
  146. package/dist/runtime/components/Edit/Features/Publish/index.vue +37 -22
  147. package/dist/runtime/components/Edit/Features/Revert/index.vue +3 -3
  148. package/dist/runtime/components/Edit/Features/Search/index.vue +3 -2
  149. package/dist/runtime/components/Edit/Features/Selection/AddButtons/AddButtonsField.vue +54 -0
  150. package/dist/runtime/components/Edit/Features/Selection/AddButtons/AddButtonsField.vue.d.ts +14 -0
  151. package/dist/runtime/components/Edit/Features/Selection/AddButtons/Overlay/index.vue +120 -0
  152. package/dist/runtime/components/Edit/Features/Selection/AddButtons/Overlay/index.vue.d.ts +15 -0
  153. package/dist/runtime/components/Edit/Features/Selection/AddButtons/index.vue +459 -0
  154. package/dist/runtime/components/Edit/Features/Selection/AddButtons/index.vue.d.ts +6 -0
  155. package/dist/runtime/components/Edit/Features/Selection/Overlay/fragment.glsl +14 -9
  156. package/dist/runtime/components/Edit/Features/Selection/Overlay/index.vue +32 -11
  157. package/dist/runtime/components/Edit/Features/Selection/Overlay/vertex.glsl +1 -1
  158. package/dist/runtime/components/Edit/Features/Selection/index.vue +76 -7
  159. package/dist/runtime/components/Edit/Features/Settings/Dialog/FeatureSetting/index.vue +12 -17
  160. package/dist/runtime/components/Edit/Features/Settings/index.vue +11 -25
  161. package/dist/runtime/components/Edit/Features/Theme/Color/index.vue +5 -1
  162. package/dist/runtime/components/Edit/Features/Theme/index.vue +2 -1
  163. package/dist/runtime/components/Edit/Features/TouchActionBar/index.vue +3 -2
  164. package/dist/runtime/components/Edit/Features/Transform/Dialog/index.vue +198 -0
  165. package/dist/runtime/components/Edit/Features/Transform/Dialog/index.vue.d.ts +13 -0
  166. package/dist/runtime/components/Edit/Features/Transform/index.vue +155 -44
  167. package/dist/runtime/components/Edit/Form/Datepicker/index.vue +198 -0
  168. package/dist/runtime/components/Edit/Form/Datepicker/index.vue.d.ts +15 -0
  169. package/dist/runtime/components/Edit/Form/Radio/index.vue +33 -0
  170. package/dist/runtime/components/Edit/Form/Radio/index.vue.d.ts +20 -0
  171. package/dist/runtime/components/Edit/Form/RadioTabs/index.vue +37 -0
  172. package/dist/runtime/components/Edit/Form/RadioTabs/index.vue.d.ts +22 -0
  173. package/dist/runtime/components/Edit/Form/Select/index.vue +29 -0
  174. package/dist/runtime/components/Edit/Form/Select/index.vue.d.ts +20 -0
  175. package/dist/runtime/components/Edit/Form/Text/index.vue +33 -0
  176. package/dist/runtime/components/Edit/Form/Text/index.vue.d.ts +19 -0
  177. package/dist/runtime/components/Edit/Form/Textarea/index.vue +13 -6
  178. package/dist/runtime/components/Edit/Form/Textarea/index.vue.d.ts +4 -0
  179. package/dist/runtime/components/Edit/FormOverlay/index.vue +1 -1
  180. package/dist/runtime/components/Edit/Indicators/index.vue +123 -0
  181. package/dist/runtime/components/Edit/Indicators/index.vue.d.ts +2 -0
  182. package/dist/runtime/components/Edit/ItemIcon/index.vue +2 -1
  183. package/dist/runtime/components/Edit/Konami/Game/PixelGrid.vue +66 -0
  184. package/dist/runtime/components/Edit/Konami/Game/PixelGrid.vue.d.ts +7 -0
  185. package/dist/runtime/components/Edit/Konami/Game/blokkli.png +0 -0
  186. package/dist/runtime/components/Edit/Konami/Game/charmap.d.ts +2 -0
  187. package/dist/runtime/components/Edit/Konami/Game/charmap.js +168 -0
  188. package/dist/runtime/components/Edit/Konami/Game/index.vue +752 -0
  189. package/dist/runtime/components/Edit/Konami/Game/index.vue.d.ts +6 -0
  190. package/dist/runtime/components/Edit/Konami/Game/textRendering.d.ts +8 -0
  191. package/dist/runtime/components/Edit/Konami/Game/textRendering.js +138 -0
  192. package/dist/runtime/components/Edit/Konami/Game/useIconRendering.d.ts +9 -0
  193. package/dist/runtime/components/Edit/Konami/Game/useIconRendering.js +130 -0
  194. package/dist/runtime/components/Edit/Konami/index.vue +44 -0
  195. package/dist/runtime/components/Edit/Konami/index.vue.d.ts +2 -0
  196. package/dist/runtime/components/Edit/Loading/index.vue +6 -2
  197. package/dist/runtime/components/Edit/Loading/index.vue.d.ts +2 -0
  198. package/dist/runtime/components/Edit/Messages/index.vue +8 -3
  199. package/dist/runtime/components/Edit/PluginConfigForm/Checkbox/index.vue +17 -0
  200. package/dist/runtime/components/Edit/PluginConfigForm/Checkbox/index.vue.d.ts +11 -0
  201. package/dist/runtime/components/Edit/PluginConfigForm/Options/index.vue +37 -0
  202. package/dist/runtime/components/Edit/PluginConfigForm/Options/index.vue.d.ts +11 -0
  203. package/dist/runtime/components/Edit/PluginConfigForm/Text/index.vue +43 -0
  204. package/dist/runtime/components/Edit/PluginConfigForm/Text/index.vue.d.ts +11 -0
  205. package/dist/runtime/components/Edit/PluginConfigForm/index.vue +57 -0
  206. package/dist/runtime/components/Edit/PluginConfigForm/index.vue.d.ts +16 -0
  207. package/dist/runtime/components/Edit/PreviewProvider.vue +3 -4
  208. package/dist/runtime/components/Edit/RelativeTime/index.vue +3 -2
  209. package/dist/runtime/components/Edit/ShortcutIndicator/index.vue +8 -3
  210. package/dist/runtime/components/Edit/SystemRequirements/index.vue +3 -3
  211. package/dist/runtime/components/Edit/Toolbar/index.vue +3 -2
  212. package/dist/runtime/components/Edit/Transition/index.vue +41 -0
  213. package/dist/runtime/components/Edit/Transition/index.vue.d.ts +19 -0
  214. package/dist/runtime/components/Edit/index.d.ts +24 -15
  215. package/dist/runtime/components/Edit/index.js +46 -28
  216. package/dist/runtime/composables/defineBlokkli.js +7 -3
  217. package/dist/runtime/composables/defineBlokkliFeature.d.ts +4 -7
  218. package/dist/runtime/composables/defineBlokkliProvider.d.ts +11 -0
  219. package/dist/runtime/composables/defineBlokkliProvider.js +46 -0
  220. package/dist/runtime/composables/useBlokkliHelper.js +1 -1
  221. package/dist/runtime/constants/index.d.ts +3 -0
  222. package/dist/runtime/constants/index.js +3 -0
  223. package/dist/runtime/css/output.css +1 -1
  224. package/dist/runtime/helpers/addElementClasses.d.ts +2 -0
  225. package/dist/runtime/helpers/addElementClasses.js +24 -0
  226. package/dist/runtime/helpers/animationProvider.d.ts +4 -2
  227. package/dist/runtime/helpers/animationProvider.js +7 -2
  228. package/dist/runtime/helpers/bundles/index.d.ts +1 -0
  229. package/dist/runtime/helpers/bundles/index.js +4 -0
  230. package/dist/runtime/helpers/composables/useStickyToolbar.d.ts +20 -0
  231. package/dist/runtime/helpers/composables/useStickyToolbar.js +215 -0
  232. package/dist/runtime/helpers/definitionProvider.d.ts +2 -1
  233. package/dist/runtime/helpers/definitionProvider.js +17 -0
  234. package/dist/runtime/helpers/domProvider.d.ts +2 -1
  235. package/dist/runtime/helpers/domProvider.js +89 -43
  236. package/dist/runtime/helpers/dropTargets/index.d.ts +6 -0
  237. package/dist/runtime/helpers/dropTargets/index.js +49 -0
  238. package/dist/runtime/helpers/eventBus.d.ts +1 -1
  239. package/dist/runtime/helpers/eventBus.js +2 -2
  240. package/dist/runtime/helpers/index.d.ts +10 -1
  241. package/dist/runtime/helpers/index.js +57 -0
  242. package/dist/runtime/helpers/indicatorsProvider.d.ts +10 -0
  243. package/dist/runtime/helpers/indicatorsProvider.js +23 -0
  244. package/dist/runtime/helpers/keyboardProvider.d.ts +2 -0
  245. package/dist/runtime/helpers/keyboardProvider.js +17 -1
  246. package/dist/runtime/helpers/pluginProvider.d.ts +10 -0
  247. package/dist/runtime/helpers/pluginProvider.js +33 -0
  248. package/dist/runtime/helpers/renderCycle.d.ts +1 -0
  249. package/dist/runtime/helpers/renderCycle.js +10 -0
  250. package/dist/runtime/helpers/runtimeHelpers/index.js +14 -11
  251. package/dist/runtime/helpers/selectionProvider.d.ts +16 -0
  252. package/dist/runtime/helpers/selectionProvider.js +47 -35
  253. package/dist/runtime/helpers/stateProvider.d.ts +7 -2
  254. package/dist/runtime/helpers/stateProvider.js +89 -14
  255. package/dist/runtime/helpers/storageProvider.d.ts +4 -3
  256. package/dist/runtime/helpers/storageProvider.js +56 -3
  257. package/dist/runtime/helpers/symbols.d.ts +1 -0
  258. package/dist/runtime/helpers/symbols.js +1 -0
  259. package/dist/runtime/helpers/textProvider.js +6 -0
  260. package/dist/runtime/helpers/themeProvider.d.ts +2 -0
  261. package/dist/runtime/helpers/themeProvider.js +4 -1
  262. package/dist/runtime/helpers/transform.js +1 -3
  263. package/dist/runtime/helpers/uiProvider.d.ts +9 -2
  264. package/dist/runtime/helpers/uiProvider.js +72 -47
  265. package/dist/runtime/helpers/useTransitionedValue.d.ts +18 -0
  266. package/dist/runtime/helpers/useTransitionedValue.js +57 -0
  267. package/dist/runtime/icons/anchor.svg +1 -0
  268. package/dist/runtime/icons/arrow-left.svg +1 -1
  269. package/dist/runtime/icons/arrow-right.svg +1 -1
  270. package/dist/runtime/icons/arrow-top-right.svg +1 -0
  271. package/dist/runtime/icons/calendar-clock.svg +1 -0
  272. package/dist/runtime/icons/chart.svg +1 -0
  273. package/dist/runtime/icons/copy.svg +1 -0
  274. package/dist/runtime/icons/cursor-move.svg +1 -1
  275. package/dist/runtime/icons/diff.svg +1 -1
  276. package/dist/runtime/icons/eye-off.svg +1 -0
  277. package/dist/runtime/icons/eye.svg +1 -1
  278. package/dist/runtime/icons/info.svg +1 -1
  279. package/dist/runtime/icons/link.svg +1 -0
  280. package/dist/runtime/icons/speedometer.svg +1 -0
  281. package/dist/runtime/types/blokkOptions.d.ts +8 -0
  282. package/dist/runtime/types/index.d.ts +172 -6
  283. package/dist/runtime/types/theme.d.ts +2 -1
  284. package/dist/shared/{editor.gz_ac6uT.d.mts → editor.CKsrTpc1.d.mts} +1 -1
  285. package/package.json +20 -5
  286. package/dist/runtime/components/Edit/Features/FieldAreas/Overlay/index.vue +0 -22
  287. package/dist/runtime/components/Edit/Features/FieldAreas/index.vue +0 -41
  288. /package/dist/runtime/components/Edit/Features/{FieldAreas/Overlay → Analyze}/index.vue.d.ts +0 -0
  289. /package/dist/runtime/components/Edit/Features/{FieldAreas/index.vue.d.ts → Anchors/Renderer.vue.d.ts} +0 -0
@@ -0,0 +1,198 @@
1
+ <template>
2
+ <div
3
+ class="bk-datepicker"
4
+ :class="{
5
+ 'bk-is-invalid': error
6
+ }"
7
+ >
8
+ <div class="bk-datepicker-header">
9
+ <button
10
+ type="button"
11
+ class="bk-datepicker-nav"
12
+ :disabled="!canGoPrevious"
13
+ @click="previousMonth"
14
+ >
15
+ <Icon name="arrow-left" />
16
+ </button>
17
+ <div class="bk-datepicker-title">{{ monthName }} {{ currentYear }}</div>
18
+ <button
19
+ type="button"
20
+ class="bk-datepicker-nav"
21
+ :disabled="!canGoNext"
22
+ @click="nextMonth"
23
+ >
24
+ <Icon name="arrow-right" />
25
+ </button>
26
+ </div>
27
+ <div class="bk-datepicker-weekdays">
28
+ <div v-for="day in weekdays" :key="day" class="bk-datepicker-weekday">
29
+ {{ day }}
30
+ </div>
31
+ </div>
32
+ <div class="bk-datepicker-days">
33
+ <button
34
+ v-for="day in calendarDays"
35
+ :key="day.key"
36
+ type="button"
37
+ class="bk-datepicker-day"
38
+ :disabled="disabled || day.isDisabled"
39
+ @click="selectDate(day)"
40
+ >
41
+ <div
42
+ class="bk-datepicker-day-inner"
43
+ :class="{
44
+ 'bk-is-other-month': !day.isCurrentMonth,
45
+ 'bk-is-today': day.isToday,
46
+ 'bk-is-selected': day.isSelected,
47
+ 'bk-is-disabled': day.isDisabled
48
+ }"
49
+ >
50
+ {{ day.day }}
51
+ </div>
52
+ </button>
53
+ </div>
54
+ </div>
55
+ </template>
56
+
57
+ <script setup>
58
+ import { ref, computed, watch, useBlokkli } from "#imports";
59
+ import { Icon } from "#blokkli/components";
60
+ const props = defineProps({
61
+ min: { type: String, required: false },
62
+ max: { type: String, required: false },
63
+ disabled: { type: Boolean, required: false },
64
+ error: { type: Boolean, required: false }
65
+ });
66
+ const { ui } = useBlokkli();
67
+ const modelValue = defineModel({ type: String });
68
+ const weekdays = computed(() => {
69
+ const formatter = new Intl.DateTimeFormat(ui.locale.value, {
70
+ weekday: "short"
71
+ });
72
+ const days = [];
73
+ for (let i = 0; i < 7; i++) {
74
+ const date = new Date(2023, 0, 2 + i);
75
+ days.push(formatter.format(date));
76
+ }
77
+ return days;
78
+ });
79
+ const monthNames = computed(() => {
80
+ const formatter = new Intl.DateTimeFormat(ui.locale.value, { month: "long" });
81
+ const months = [];
82
+ for (let i = 0; i < 12; i++) {
83
+ const date = new Date(2023, i, 1);
84
+ months.push(formatter.format(date));
85
+ }
86
+ return months;
87
+ });
88
+ const initDate = modelValue.value ? new Date(modelValue.value) : /* @__PURE__ */ new Date();
89
+ const currentMonth = ref(initDate.getMonth());
90
+ const currentYear = ref(initDate.getFullYear());
91
+ const monthName = computed(() => monthNames.value[currentMonth.value]);
92
+ const canGoPrevious = computed(() => {
93
+ if (props.disabled) {
94
+ return false;
95
+ }
96
+ if (!props.min) {
97
+ return true;
98
+ }
99
+ const prevMonth = currentMonth.value === 0 ? 11 : currentMonth.value - 1;
100
+ const prevYear = currentMonth.value === 0 ? currentYear.value - 1 : currentYear.value;
101
+ const lastDayOfPrevMonth = new Date(prevYear, prevMonth + 1, 0);
102
+ const lastDayString = formatDate(lastDayOfPrevMonth);
103
+ return lastDayString >= props.min;
104
+ });
105
+ const canGoNext = computed(() => {
106
+ if (props.disabled) {
107
+ return false;
108
+ }
109
+ if (!props.max) {
110
+ return true;
111
+ }
112
+ const nextMonth2 = currentMonth.value === 11 ? 0 : currentMonth.value + 1;
113
+ const nextYear = currentMonth.value === 11 ? currentYear.value + 1 : currentYear.value;
114
+ const firstDayOfNextMonth = new Date(nextYear, nextMonth2, 1);
115
+ const firstDayString = formatDate(firstDayOfNextMonth);
116
+ return firstDayString <= props.max;
117
+ });
118
+ function previousMonth() {
119
+ if (currentMonth.value === 0) {
120
+ currentMonth.value = 11;
121
+ currentYear.value--;
122
+ } else {
123
+ currentMonth.value--;
124
+ }
125
+ }
126
+ function nextMonth() {
127
+ if (currentMonth.value === 11) {
128
+ currentMonth.value = 0;
129
+ currentYear.value++;
130
+ } else {
131
+ currentMonth.value++;
132
+ }
133
+ }
134
+ const calendarDays = computed(() => {
135
+ const firstDay = new Date(currentYear.value, currentMonth.value, 1);
136
+ const lastDay = new Date(currentYear.value, currentMonth.value + 1, 0);
137
+ let firstDayOfWeek = firstDay.getDay() - 1;
138
+ if (firstDayOfWeek < 0) firstDayOfWeek = 6;
139
+ const days = [];
140
+ const prevMonthLastDay = new Date(currentYear.value, currentMonth.value, 0);
141
+ for (let i = firstDayOfWeek - 1; i >= 0; i--) {
142
+ const day = prevMonthLastDay.getDate() - i;
143
+ const date = new Date(currentYear.value, currentMonth.value - 1, day);
144
+ days.push(createCalendarDay(date, false));
145
+ }
146
+ for (let day = 1; day <= lastDay.getDate(); day++) {
147
+ const date = new Date(currentYear.value, currentMonth.value, day);
148
+ days.push(createCalendarDay(date, true));
149
+ }
150
+ const remainingDays = 42 - days.length;
151
+ for (let day = 1; day <= remainingDays; day++) {
152
+ const date = new Date(currentYear.value, currentMonth.value + 1, day);
153
+ days.push(createCalendarDay(date, false));
154
+ }
155
+ return days;
156
+ });
157
+ function createCalendarDay(date, isCurrentMonth) {
158
+ const dateString = formatDate(date);
159
+ const today = /* @__PURE__ */ new Date();
160
+ const todayString = formatDate(today);
161
+ let isDisabled = false;
162
+ if (props.min && dateString < props.min) {
163
+ isDisabled = true;
164
+ }
165
+ if (props.max && dateString > props.max) {
166
+ isDisabled = true;
167
+ }
168
+ return {
169
+ day: date.getDate(),
170
+ date,
171
+ dateString,
172
+ key: dateString,
173
+ isCurrentMonth,
174
+ isToday: dateString === todayString,
175
+ isSelected: dateString === modelValue.value,
176
+ isDisabled
177
+ };
178
+ }
179
+ function formatDate(date) {
180
+ const year = date.getFullYear();
181
+ const month = String(date.getMonth() + 1).padStart(2, "0");
182
+ const day = String(date.getDate()).padStart(2, "0");
183
+ return `${year}-${month}-${day}`;
184
+ }
185
+ function selectDate(day) {
186
+ if (day.isDisabled || props.disabled) {
187
+ return;
188
+ }
189
+ modelValue.value = day.dateString;
190
+ }
191
+ watch(modelValue, (newValue) => {
192
+ if (newValue) {
193
+ const date = new Date(newValue);
194
+ currentMonth.value = date.getMonth();
195
+ currentYear.value = date.getFullYear();
196
+ }
197
+ });
198
+ </script>
@@ -0,0 +1,15 @@
1
+ type __VLS_Props = {
2
+ min?: string;
3
+ max?: string;
4
+ disabled?: boolean;
5
+ error?: boolean;
6
+ };
7
+ type __VLS_PublicProps = __VLS_Props & {
8
+ modelValue?: string;
9
+ };
10
+ declare const _default: import("vue").DefineComponent<__VLS_PublicProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
11
+ "update:modelValue": (value: string | undefined) => any;
12
+ }, string, import("vue").PublicProps, Readonly<__VLS_PublicProps> & Readonly<{
13
+ "onUpdate:modelValue"?: ((value: string | undefined) => any) | undefined;
14
+ }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
15
+ export default _default;
@@ -0,0 +1,33 @@
1
+ <template>
2
+ <div>
3
+ <div class="bk-form-label">
4
+ {{ label }}<span v-if="required" class="bk-required-indicator">*</span>
5
+ </div>
6
+ <div>
7
+ <label v-for="option in options" :key="option.value" class="bk-radio">
8
+ <input
9
+ v-model="value"
10
+ type="radio"
11
+ :value="option.value"
12
+ :required
13
+ :name="id"
14
+ :disabled
15
+ />
16
+ <span>{{ option.label }}</span>
17
+ </label>
18
+ </div>
19
+ <div v-if="description" class="bk-form-description">{{ description }}</div>
20
+ </div>
21
+ </template>
22
+
23
+ <script setup>
24
+ defineProps({
25
+ id: { type: String, required: true },
26
+ label: { type: String, required: true },
27
+ options: { type: Array, required: true },
28
+ required: { type: Boolean, required: false },
29
+ disabled: { type: Boolean, required: false },
30
+ description: { type: String, required: false }
31
+ });
32
+ const value = defineModel({ type: String });
33
+ </script>
@@ -0,0 +1,20 @@
1
+ type __VLS_Props = {
2
+ id: string;
3
+ label: string;
4
+ options: {
5
+ value: string;
6
+ label: string;
7
+ }[];
8
+ required?: boolean;
9
+ disabled?: boolean;
10
+ description?: string;
11
+ };
12
+ type __VLS_PublicProps = __VLS_Props & {
13
+ modelValue?: string;
14
+ };
15
+ declare const _default: import("vue").DefineComponent<__VLS_PublicProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
16
+ "update:modelValue": (value: string | undefined) => any;
17
+ }, string, import("vue").PublicProps, Readonly<__VLS_PublicProps> & Readonly<{
18
+ "onUpdate:modelValue"?: ((value: string | undefined) => any) | undefined;
19
+ }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
20
+ export default _default;
@@ -0,0 +1,37 @@
1
+ <template>
2
+ <div>
3
+ <div class="bk-form-label">
4
+ {{ label }}<span v-if="required" class="bk-required-indicator">*</span>
5
+ </div>
6
+ <div
7
+ class="bk-radio-tabs"
8
+ :class="scheme ? 'bk-scheme-' + scheme : void 0"
9
+ >
10
+ <label v-for="option in options" :key="option.value">
11
+ <input
12
+ v-model="value"
13
+ type="radio"
14
+ :value="option.value"
15
+ :required
16
+ :name="id"
17
+ :disabled
18
+ />
19
+ <span>{{ option.label }}</span>
20
+ </label>
21
+ </div>
22
+ <div v-if="description" class="bk-form-description">{{ description }}</div>
23
+ </div>
24
+ </template>
25
+
26
+ <script setup>
27
+ defineProps({
28
+ id: { type: String, required: true },
29
+ label: { type: String, required: true },
30
+ options: { type: Array, required: true },
31
+ required: { type: Boolean, required: false },
32
+ disabled: { type: Boolean, required: false },
33
+ description: { type: String, required: false },
34
+ scheme: { type: String, required: false }
35
+ });
36
+ const value = defineModel({ type: String });
37
+ </script>
@@ -0,0 +1,22 @@
1
+ import type { ThemeColorName } from '#blokkli/types/theme';
2
+ type __VLS_Props = {
3
+ id: string;
4
+ label: string;
5
+ options: {
6
+ value: string;
7
+ label: string;
8
+ }[];
9
+ required?: boolean;
10
+ disabled?: boolean;
11
+ description?: string;
12
+ scheme?: ThemeColorName;
13
+ };
14
+ type __VLS_PublicProps = __VLS_Props & {
15
+ modelValue?: string;
16
+ };
17
+ declare const _default: import("vue").DefineComponent<__VLS_PublicProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
18
+ "update:modelValue": (value: string | undefined) => any;
19
+ }, string, import("vue").PublicProps, Readonly<__VLS_PublicProps> & Readonly<{
20
+ "onUpdate:modelValue"?: ((value: string | undefined) => any) | undefined;
21
+ }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
22
+ export default _default;
@@ -0,0 +1,29 @@
1
+ <template>
2
+ <div>
3
+ <label class="bk-form-label" :for="id">
4
+ {{ label }}<span v-if="required" class="bk-required-indicator">*</span>
5
+ </label>
6
+ <select :id v-model="value" class="bk-form-input" :required :disabled>
7
+ <option
8
+ v-for="option in options"
9
+ :key="option.value"
10
+ :value="option.value"
11
+ >
12
+ {{ option.label }}
13
+ </option>
14
+ </select>
15
+ <div v-if="description" class="bk-form-description">{{ description }}</div>
16
+ </div>
17
+ </template>
18
+
19
+ <script setup>
20
+ defineProps({
21
+ id: { type: String, required: true },
22
+ label: { type: String, required: true },
23
+ options: { type: Array, required: true },
24
+ required: { type: Boolean, required: false },
25
+ disabled: { type: Boolean, required: false },
26
+ description: { type: String, required: false }
27
+ });
28
+ const value = defineModel({ type: String });
29
+ </script>
@@ -0,0 +1,20 @@
1
+ type __VLS_Props = {
2
+ id: string;
3
+ label: string;
4
+ options: {
5
+ value: string;
6
+ label: string;
7
+ }[];
8
+ required?: boolean;
9
+ disabled?: boolean;
10
+ description?: string;
11
+ };
12
+ type __VLS_PublicProps = __VLS_Props & {
13
+ modelValue?: string;
14
+ };
15
+ declare const _default: import("vue").DefineComponent<__VLS_PublicProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
16
+ "update:modelValue": (value: string | undefined) => any;
17
+ }, string, import("vue").PublicProps, Readonly<__VLS_PublicProps> & Readonly<{
18
+ "onUpdate:modelValue"?: ((value: string | undefined) => any) | undefined;
19
+ }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
20
+ export default _default;
@@ -0,0 +1,33 @@
1
+ <template>
2
+ <div>
3
+ <label class="bk-form-label" :for="id">
4
+ {{ label }}<span v-if="required" class="bk-required-indicator">*</span>
5
+ </label>
6
+ <input
7
+ :id
8
+ v-model.lazy="value"
9
+ type="text"
10
+ class="bk-form-input"
11
+ :placeholder
12
+ :required
13
+ :disabled
14
+ :minlength
15
+ :maxlength
16
+ />
17
+ <div v-if="description" class="bk-form-description">{{ description }}</div>
18
+ </div>
19
+ </template>
20
+
21
+ <script setup>
22
+ defineProps({
23
+ id: { type: String, required: true },
24
+ label: { type: String, required: true },
25
+ description: { type: String, required: false },
26
+ placeholder: { type: String, required: false },
27
+ required: { type: Boolean, required: false },
28
+ disabled: { type: Boolean, required: false },
29
+ minlength: { type: [String, Number], required: false },
30
+ maxlength: { type: [String, Number], required: false }
31
+ });
32
+ const value = defineModel({ type: String });
33
+ </script>
@@ -0,0 +1,19 @@
1
+ type __VLS_Props = {
2
+ id: string;
3
+ label: string;
4
+ description?: string;
5
+ placeholder?: string;
6
+ required?: boolean;
7
+ disabled?: boolean;
8
+ minlength?: string | number;
9
+ maxlength?: string | number;
10
+ };
11
+ type __VLS_PublicProps = __VLS_Props & {
12
+ modelValue?: string;
13
+ };
14
+ declare const _default: import("vue").DefineComponent<__VLS_PublicProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
15
+ "update:modelValue": (value: string | undefined) => any;
16
+ }, string, import("vue").PublicProps, Readonly<__VLS_PublicProps> & Readonly<{
17
+ "onUpdate:modelValue"?: ((value: string | undefined) => any) | undefined;
18
+ }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
19
+ export default _default;
@@ -1,15 +1,18 @@
1
1
  <template>
2
2
  <div>
3
- <label class="bk-form-label">
4
- {{ label }}
3
+ <label class="bk-form-label" :for="id">
4
+ {{ label }}<span v-if="required" class="bk-required-indicator">*</span>
5
5
  </label>
6
6
  <textarea
7
- v-model="value"
7
+ :id
8
+ v-model.lazy="value"
8
9
  class="bk-form-input"
9
- :placeholder="placeholder"
10
+ :placeholder
10
11
  :required
11
12
  :disabled
12
- rows="5"
13
+ :rows="rows ?? 5"
14
+ :minlength
15
+ :maxlength
13
16
  />
14
17
  <div v-if="description" class="bk-form-description">{{ description }}</div>
15
18
  </div>
@@ -17,11 +20,15 @@
17
20
 
18
21
  <script setup>
19
22
  defineProps({
23
+ id: { type: String, required: true },
20
24
  label: { type: String, required: true },
21
25
  description: { type: String, required: false },
22
26
  placeholder: { type: String, required: false },
23
27
  required: { type: Boolean, required: false },
24
- disabled: { type: Boolean, required: false }
28
+ disabled: { type: Boolean, required: false },
29
+ minlength: { type: [String, Number], required: false },
30
+ maxlength: { type: [String, Number], required: false },
31
+ rows: { type: [String, Number], required: false }
25
32
  });
26
33
  const value = defineModel({ type: String });
27
34
  </script>
@@ -1,9 +1,13 @@
1
1
  type __VLS_Props = {
2
+ id: string;
2
3
  label: string;
3
4
  description?: string;
4
5
  placeholder?: string;
5
6
  required?: boolean;
6
7
  disabled?: boolean;
8
+ minlength?: string | number;
9
+ maxlength?: string | number;
10
+ rows?: string | number;
7
11
  };
8
12
  type __VLS_PublicProps = __VLS_Props & {
9
13
  modelValue?: string;
@@ -1,6 +1,6 @@
1
1
  <template>
2
2
  <div
3
- class="bk-form-overlay"
3
+ class="bk-form-overlay bk-vars"
4
4
  @click.stop
5
5
  @mousedown.stop
6
6
  @keyup.stop
@@ -0,0 +1,123 @@
1
+ <template>
2
+ <Teleport to="body">
3
+ <div id="bk-indicators" class="bk bk-indicators" :style>
4
+ <div id="bk-indicators-left" />
5
+ <div id="bk-indicators-right" />
6
+ <div class="bk-indicators-hovered" :style="hoveredStyle" />
7
+ <div class="bk-indicators-highlighted" :style="highlightedStyle" />
8
+ </div>
9
+ </Teleport>
10
+ </template>
11
+
12
+ <script setup>
13
+ import onBlokkliEvent from "#blokkli/helpers/composables/onBlokkliEvent";
14
+ import { computed, useBlokkli, watch, ref } from "#imports";
15
+ const { ui, dom, indicators, selection } = useBlokkli();
16
+ const artboardElement = ui.artboardElement();
17
+ const highlighted = ref(null);
18
+ const hasIndicators = computed(
19
+ () => !!indicators.indicators.value.length || !!highlighted.value
20
+ );
21
+ const style = computed(() => {
22
+ const offset = ui.artboardOffset.value;
23
+ return {
24
+ width: ui.artboardSize.value.width + "px",
25
+ height: ui.artboardSize.value.height + "px",
26
+ transform: `translate(${offset.x}px, ${offset.y}px) scale(${ui.artboardScale.value})`
27
+ };
28
+ });
29
+ const hoveredStyle = computed(() => {
30
+ if (indicators.hovered.value && hasIndicators.value) {
31
+ const rect = dom.getBlockRect(indicators.hovered.value, true);
32
+ if (rect) {
33
+ return {
34
+ width: rect.width.toString() + "px",
35
+ height: rect.height.toString() + "px",
36
+ transform: `translate(${rect.x}px, ${rect.y}px)`
37
+ };
38
+ }
39
+ }
40
+ return {
41
+ visibility: "hidden"
42
+ };
43
+ });
44
+ const highlightedStyle = computed(() => {
45
+ if (highlighted.value) {
46
+ return {
47
+ width: highlighted.value.width.toString() + "px",
48
+ height: highlighted.value.height.toString() + "px",
49
+ transform: `translate(${highlighted.value.x}px, ${highlighted.value.y}px)`
50
+ };
51
+ }
52
+ return {
53
+ visibility: "hidden"
54
+ };
55
+ });
56
+ const HEIGHT = 30;
57
+ function snapToAnchorGrid(y) {
58
+ return Math.ceil(y / HEIGHT) * HEIGHT;
59
+ }
60
+ const prevRects = /* @__PURE__ */ new Map();
61
+ let lastFullUpdate = 0;
62
+ onBlokkliEvent("animationFrame", function(ctx) {
63
+ if (!hasIndicators.value) {
64
+ return;
65
+ }
66
+ const items = indicators.indicators.value;
67
+ const taken = /* @__PURE__ */ new Set();
68
+ const forceRefresh = ctx.time - lastFullUpdate > 1e3;
69
+ for (let i = 0; i < items.length; i++) {
70
+ const item = items[i];
71
+ if (!item) {
72
+ continue;
73
+ }
74
+ const rect = dom.getBlockRect(item.uuid, forceRefresh);
75
+ if (!rect) {
76
+ prevRects.delete(item.uuid);
77
+ continue;
78
+ }
79
+ let y = snapToAnchorGrid(Math.round(rect.y));
80
+ while (taken.has(y)) {
81
+ y += HEIGHT;
82
+ }
83
+ taken.add(y);
84
+ const style2 = `translateY(${y}px)`;
85
+ if (prevRects.get(item.uuid) !== y) {
86
+ prevRects.set(item.uuid, y);
87
+ item.element.style.transform = style2;
88
+ }
89
+ }
90
+ if (forceRefresh) {
91
+ lastFullUpdate = ctx.time;
92
+ }
93
+ });
94
+ onBlokkliEvent("view-option:toggle", () => {
95
+ prevRects.clear();
96
+ });
97
+ onBlokkliEvent("state:reloaded", () => {
98
+ prevRects.clear();
99
+ });
100
+ onBlokkliEvent("scrollIntoView", (e) => {
101
+ if ("element" in e) {
102
+ if (artboardElement.contains(e.element)) {
103
+ highlighted.value = ui.getAbsoluteElementRect(e.element);
104
+ } else {
105
+ highlighted.value = {
106
+ x: 0,
107
+ y: 0,
108
+ width: ui.artboardSize.value.width,
109
+ height: ui.artboardSize.value.height
110
+ };
111
+ }
112
+ }
113
+ });
114
+ onBlokkliEvent("window:clickAway", function() {
115
+ highlighted.value = null;
116
+ });
117
+ watch(indicators.indicators, function() {
118
+ prevRects.clear();
119
+ });
120
+ watch(selection.uuids, function() {
121
+ highlighted.value = null;
122
+ });
123
+ </script>
@@ -0,0 +1,2 @@
1
+ declare const _default: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
2
+ export default _default;
@@ -1,6 +1,6 @@
1
1
  <template>
2
2
  <div v-if="markup" class="bk-blokkli-item-icon" v-html="markup" />
3
- <div v-else-if="bundle === 'from_library'" class="bk-blokkli-item-icon">
3
+ <div v-else-if="bundle === BUNDLE_FROM_LIBRARY" class="bk-blokkli-item-icon">
4
4
  <Icon name="reusable" />
5
5
  </div>
6
6
  <div v-else class="bk-blokkli-item-icon">
@@ -11,6 +11,7 @@
11
11
  <script setup>
12
12
  import { computed, useBlokkli } from "#imports";
13
13
  import { Icon } from "#blokkli/components";
14
+ import { BUNDLE_FROM_LIBRARY } from "#blokkli/constants";
14
15
  const props = defineProps({
15
16
  bundle: { type: String, required: false }
16
17
  });