@blokkli/editor 2.0.0-alpha.53 → 2.0.0-alpha.55

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 (218) hide show
  1. package/dist/global/constants/index.d.ts +1 -1
  2. package/dist/global/constants/index.js +1 -1
  3. package/dist/global/types/features.d.ts +5 -9
  4. package/dist/module.json +1 -1
  5. package/dist/module.mjs +28 -35
  6. package/dist/modules/agent/index.mjs +46 -29
  7. package/dist/modules/agent/runtime/app/composables/agentProvider.js +2 -1
  8. package/dist/modules/agent/runtime/app/features/agent/Container.d.vue.ts +19 -0
  9. package/dist/modules/agent/runtime/app/features/agent/Container.vue +195 -0
  10. package/dist/modules/agent/runtime/app/features/agent/Container.vue.d.ts +19 -0
  11. package/dist/modules/agent/runtime/app/features/agent/index.vue +18 -164
  12. package/dist/modules/agent/runtime/app/features/agent/types.d.ts +9 -0
  13. package/dist/modules/agent/runtime/app/helpers/index.d.ts +7 -3
  14. package/dist/modules/agent/runtime/app/helpers/index.js +9 -3
  15. package/dist/modules/agent/runtime/app/prompts/fixReadability.js +51 -44
  16. package/dist/modules/agent/runtime/app/tools/add_media_paragraph/index.js +2 -1
  17. package/dist/modules/agent/runtime/app/tools/check_readability/index.js +1 -0
  18. package/dist/modules/agent/runtime/app/tools/delegate_text_rewrite/Component.vue +1 -1
  19. package/dist/modules/agent/runtime/app/tools/delegate_text_rewrite/index.js +6 -1
  20. package/dist/modules/agent/runtime/app/tools/get_readability_issues/index.js +1 -0
  21. package/dist/modules/agent/runtime/app/types/index.d.ts +12 -0
  22. package/dist/modules/charts/runtime/components/ChartRenderer/index.vue +34 -18
  23. package/dist/modules/drupal/graphql/base/fragment.paragraphsBlokkliEditState.graphql +7 -0
  24. package/dist/modules/drupal/graphql/features/droppable-field-items.graphql +22 -0
  25. package/dist/modules/drupal/graphql/features/import-existing.graphql +0 -25
  26. package/dist/modules/drupal/graphql/features/workspace.graphql +9 -2
  27. package/dist/modules/drupal/graphql/mutations/update_droppable_field.graphql +21 -0
  28. package/dist/modules/drupal/index.mjs +6 -2
  29. package/dist/modules/drupal/runtime/adapter/index.js +75 -39
  30. package/dist/modules/readability/index.d.mts +11 -0
  31. package/dist/modules/readability/index.mjs +17 -0
  32. package/dist/modules/readability/runtime/adapter-extension.d.ts +2 -0
  33. package/dist/modules/readability/runtime/adapter-extension.js +5 -0
  34. package/dist/modules/readability/runtime/analyzers/builtin.d.ts +10 -0
  35. package/dist/modules/readability/runtime/analyzers/builtin.js +340 -0
  36. package/dist/runtime/components/BlokkliEditable.vue +10 -90
  37. package/dist/runtime/components/BlokkliItem.vue +2 -2
  38. package/dist/runtime/components/BlokkliProvider.vue +11 -5
  39. package/dist/runtime/composables/defineBlokkli.js +3 -1
  40. package/dist/runtime/composables/defineBlokkliFeature.d.ts +2 -3
  41. package/dist/runtime/editor/components/Actions/index.vue +1 -1
  42. package/dist/runtime/editor/components/AnimationCanvas/index.vue +41 -6
  43. package/dist/runtime/editor/components/AppMenu/Inner.d.vue.ts +7 -0
  44. package/dist/runtime/editor/components/AppMenu/Inner.vue +83 -0
  45. package/dist/runtime/editor/components/AppMenu/Inner.vue.d.ts +7 -0
  46. package/dist/runtime/editor/components/AppMenu/index.vue +5 -79
  47. package/dist/runtime/editor/components/ArtboardTooltip/index.d.vue.ts +1 -0
  48. package/dist/runtime/editor/components/ArtboardTooltip/index.vue +9 -1
  49. package/dist/runtime/editor/components/ArtboardTooltip/index.vue.d.ts +1 -0
  50. package/dist/runtime/editor/components/BlockPreviewItem/index.vue +12 -6
  51. package/dist/runtime/editor/components/BlokkliEditableEdit.d.vue.ts +23 -0
  52. package/dist/runtime/editor/components/BlokkliEditableEdit.vue +95 -0
  53. package/dist/runtime/editor/components/BlokkliEditableEdit.vue.d.ts +23 -0
  54. package/dist/runtime/editor/components/BlokkliRootErrorBoundary.d.vue.ts +4 -1
  55. package/dist/runtime/editor/components/BlokkliRootErrorBoundary.vue +4 -1
  56. package/dist/runtime/editor/components/BlokkliRootErrorBoundary.vue.d.ts +4 -1
  57. package/dist/runtime/editor/components/BundleSelector/index.vue +10 -5
  58. package/dist/runtime/editor/components/Dialog/index.vue +0 -77
  59. package/dist/runtime/editor/components/EditIndicator.d.vue.ts +1 -0
  60. package/dist/runtime/editor/components/EditIndicator.vue +3 -2
  61. package/dist/runtime/editor/components/EditIndicator.vue.d.ts +1 -0
  62. package/dist/runtime/editor/components/EditProvider.d.vue.ts +3 -1
  63. package/dist/runtime/editor/components/EditProvider.vue +13 -4
  64. package/dist/runtime/editor/components/EditProvider.vue.d.ts +3 -1
  65. package/dist/runtime/editor/components/FeaturesRenderer/index.vue +1 -4
  66. package/dist/runtime/editor/components/Form/Text/index.d.vue.ts +5 -0
  67. package/dist/runtime/editor/components/Form/Text/index.vue +10 -4
  68. package/dist/runtime/editor/components/Form/Text/index.vue.d.ts +5 -0
  69. package/dist/runtime/editor/components/FormOverlay/index.vue +0 -24
  70. package/dist/runtime/editor/components/GrowOnly/index.d.vue.ts +10 -0
  71. package/dist/runtime/editor/components/GrowOnly/index.vue +34 -0
  72. package/dist/runtime/editor/components/GrowOnly/index.vue.d.ts +10 -0
  73. package/dist/runtime/editor/components/Konami/Game/index.vue +120 -0
  74. package/dist/runtime/editor/components/Konami/index.vue +7 -124
  75. package/dist/runtime/editor/components/Loading/index.vue +1 -1
  76. package/dist/runtime/editor/components/PluginConfigForm/Text/index.vue +1 -0
  77. package/dist/runtime/editor/components/PluginConfigForm/index.vue +1 -0
  78. package/dist/runtime/editor/components/PreviewProvider.d.vue.ts +3 -1
  79. package/dist/runtime/editor/components/PreviewProvider.vue +6 -1
  80. package/dist/runtime/editor/components/PreviewProvider.vue.d.ts +3 -1
  81. package/dist/runtime/editor/components/Toolbar/index.vue +1 -1
  82. package/dist/runtime/editor/components/index.d.ts +11 -10
  83. package/dist/runtime/editor/components/index.js +32 -10
  84. package/dist/runtime/editor/composables/defineRenderer.d.ts +2 -2
  85. package/dist/runtime/editor/composables/defineRenderer.js +8 -3
  86. package/dist/runtime/editor/css/output.css +1 -1
  87. package/dist/runtime/editor/events/index.d.ts +6 -0
  88. package/dist/runtime/editor/features/analyze/Main.d.vue.ts +1 -0
  89. package/dist/runtime/editor/features/analyze/Main.vue +9 -8
  90. package/dist/runtime/editor/features/analyze/Main.vue.d.ts +1 -0
  91. package/dist/runtime/editor/features/analyze/Results/ResultsItem.vue +7 -15
  92. package/dist/runtime/editor/features/analyze/Results/ResultsItemNodesTarget.vue +4 -2
  93. package/dist/runtime/editor/features/analyze/analyzers/axe.js +9 -9
  94. package/dist/runtime/editor/features/analyze/analyzers/readability.js +7 -7
  95. package/dist/runtime/editor/features/analyze/index.vue +26 -26
  96. package/dist/runtime/editor/features/analyze/readability/types.d.ts +18 -14
  97. package/dist/runtime/editor/features/anchors/index.vue +6 -2
  98. package/dist/runtime/editor/features/artboard/Renderer.vue +3 -2
  99. package/dist/runtime/editor/features/block-scheduler/Dialog/index.vue +78 -0
  100. package/dist/runtime/editor/features/block-scheduler/index.vue +34 -89
  101. package/dist/runtime/editor/features/breadcrumbs/index.vue +2 -2
  102. package/dist/runtime/editor/features/changelog/changelog.json +8 -0
  103. package/dist/runtime/editor/features/changelog/index.vue +10 -8
  104. package/dist/runtime/editor/features/clipboard/DropElement/index.vue +152 -0
  105. package/dist/runtime/editor/features/clipboard/index.vue +13 -159
  106. package/dist/runtime/editor/features/command-palette/Palette/Item/index.vue +0 -28
  107. package/dist/runtime/editor/features/command-palette/Palette/index.vue +17 -6
  108. package/dist/runtime/editor/features/command-palette/index.vue +7 -2
  109. package/dist/runtime/editor/features/comments/index.vue +6 -3
  110. package/dist/runtime/editor/features/debug/Main.vue +168 -0
  111. package/dist/runtime/editor/features/debug/Section/Features.vue +1 -2
  112. package/dist/runtime/editor/features/debug/index.vue +6 -170
  113. package/dist/runtime/editor/features/dev-mode/index.vue +2 -1
  114. package/dist/runtime/editor/features/diff/index.vue +6 -2
  115. package/dist/runtime/editor/features/dragging-overlay/Renderer/index.vue +15 -16
  116. package/dist/runtime/editor/features/dragging-overlay/index.vue +4 -3
  117. package/dist/runtime/editor/features/droppable-field-edit/Overlay/index.d.vue.ts +15 -0
  118. package/dist/runtime/editor/features/droppable-field-edit/Overlay/index.vue +547 -0
  119. package/dist/runtime/editor/features/droppable-field-edit/Overlay/index.vue.d.ts +15 -0
  120. package/dist/runtime/editor/features/droppable-field-edit/index.d.vue.ts +3 -0
  121. package/dist/runtime/editor/features/droppable-field-edit/index.vue +231 -0
  122. package/dist/runtime/editor/features/droppable-field-edit/index.vue.d.ts +3 -0
  123. package/dist/runtime/editor/features/droppable-field-edit/types.d.ts +70 -0
  124. package/dist/runtime/editor/features/editable-field/Overlay/Frame/index.d.vue.ts +1 -0
  125. package/dist/runtime/editor/features/editable-field/Overlay/Frame/index.vue +34 -21
  126. package/dist/runtime/editor/features/editable-field/Overlay/Frame/index.vue.d.ts +1 -0
  127. package/dist/runtime/editor/features/editable-field/Overlay/Plaintext/index.d.vue.ts +2 -2
  128. package/dist/runtime/editor/features/editable-field/Overlay/Plaintext/index.vue.d.ts +2 -2
  129. package/dist/runtime/editor/features/editable-field/Overlay/ReadabilityIndicator/ChunkOverlay.vue +1 -1
  130. package/dist/runtime/editor/features/editable-field/Overlay/ReadabilityIndicator/index.vue +6 -13
  131. package/dist/runtime/editor/features/editable-field/Overlay/index.vue +4 -4
  132. package/dist/runtime/editor/features/fragments/index.vue +9 -4
  133. package/dist/runtime/editor/features/help/index.vue +7 -2
  134. package/dist/runtime/editor/features/highlights/Renderer/index.vue +11 -17
  135. package/dist/runtime/editor/features/history/index.vue +3 -2
  136. package/dist/runtime/editor/features/hover/Renderer/index.vue +87 -36
  137. package/dist/runtime/editor/features/hover/Renderer/vertex.glsl +5 -5
  138. package/dist/runtime/editor/features/hover/index.vue +1 -1
  139. package/dist/runtime/editor/features/import-existing/Dialog/Item.d.vue.ts +5 -0
  140. package/dist/runtime/editor/features/import-existing/Dialog/Item.vue +55 -0
  141. package/dist/runtime/editor/features/import-existing/Dialog/Item.vue.d.ts +5 -0
  142. package/dist/runtime/editor/features/import-existing/Dialog/index.d.vue.ts +7 -3
  143. package/dist/runtime/editor/features/import-existing/Dialog/index.vue +107 -65
  144. package/dist/runtime/editor/features/import-existing/Dialog/index.vue.d.ts +7 -3
  145. package/dist/runtime/editor/features/import-existing/index.vue +19 -6
  146. package/dist/runtime/editor/features/import-existing/types.d.ts +0 -11
  147. package/dist/runtime/editor/features/library/ReusableDialog/index.vue +7 -33
  148. package/dist/runtime/editor/features/library/index.vue +14 -5
  149. package/dist/runtime/editor/features/media-library/Library/index.vue +3 -1
  150. package/dist/runtime/editor/features/media-library/index.vue +9 -2
  151. package/dist/runtime/editor/features/media-library/types.d.ts +2 -0
  152. package/dist/runtime/editor/features/multi-select/Renderer/index.vue +16 -15
  153. package/dist/runtime/editor/features/multi-select/index.vue +9 -3
  154. package/dist/runtime/editor/features/options/Form/Radios/index.vue +4 -8
  155. package/dist/runtime/editor/features/options/index.vue +7 -2
  156. package/dist/runtime/editor/features/preview-grant/index.vue +8 -2
  157. package/dist/runtime/editor/features/publish/index.vue +3 -2
  158. package/dist/runtime/editor/features/referenced-entities/index.vue +7 -2
  159. package/dist/runtime/editor/features/responsive-preview/index.vue +13 -11
  160. package/dist/runtime/editor/features/search/index.vue +6 -2
  161. package/dist/runtime/editor/features/selection/AddButtons/Renderer/index.vue +6 -11
  162. package/dist/runtime/editor/features/selection/Renderer/index.vue +9 -14
  163. package/dist/runtime/editor/features/selection/index.vue +7 -4
  164. package/dist/runtime/editor/features/settings/index.vue +8 -3
  165. package/dist/runtime/editor/features/structure/index.vue +3 -2
  166. package/dist/runtime/editor/features/templates/CreateDialog/index.vue +1 -0
  167. package/dist/runtime/editor/features/templates/index.vue +14 -6
  168. package/dist/runtime/editor/features/theme/index.vue +2 -1
  169. package/dist/runtime/editor/features/tour/index.vue +6 -2
  170. package/dist/runtime/editor/features/translations/index.vue +7 -4
  171. package/dist/runtime/editor/features/workspace/Overlay/Item.d.vue.ts +3 -0
  172. package/dist/runtime/editor/features/workspace/Overlay/Item.vue +49 -0
  173. package/dist/runtime/editor/features/workspace/Overlay/Item.vue.d.ts +3 -0
  174. package/dist/runtime/editor/features/workspace/Overlay/index.vue +16 -104
  175. package/dist/runtime/editor/features/workspace/index.vue +6 -2
  176. package/dist/runtime/editor/helpers/webgl/index.d.ts +3 -2
  177. package/dist/runtime/editor/helpers/webgl/index.js +2 -3
  178. package/dist/runtime/editor/libraries/fzf.d.ts +3 -0
  179. package/dist/runtime/editor/libraries/fzf.js +7 -0
  180. package/dist/runtime/editor/libraries/twgl.d.ts +10 -0
  181. package/dist/runtime/editor/libraries/twgl.js +14 -0
  182. package/dist/runtime/editor/plugins/DebugOverlay/index.vue +3 -1
  183. package/dist/runtime/editor/plugins/Sidebar/Detached/index.vue +39 -18
  184. package/dist/runtime/editor/plugins/Sidebar/index.d.vue.ts +2 -0
  185. package/dist/runtime/editor/plugins/Sidebar/index.vue +12 -4
  186. package/dist/runtime/editor/plugins/Sidebar/index.vue.d.ts +2 -0
  187. package/dist/runtime/editor/providers/animation.d.ts +5 -10
  188. package/dist/runtime/editor/providers/animation.js +10 -8
  189. package/dist/runtime/editor/providers/directive.d.ts +11 -0
  190. package/dist/runtime/editor/providers/directive.js +16 -0
  191. package/dist/runtime/editor/providers/features.d.ts +3 -3
  192. package/dist/runtime/editor/providers/features.js +1 -1
  193. package/dist/runtime/editor/providers/fieldValue.d.ts +27 -0
  194. package/dist/runtime/editor/providers/fieldValue.js +21 -1
  195. package/dist/runtime/editor/providers/keyboard.js +6 -3
  196. package/dist/runtime/editor/providers/readability.d.ts +28 -4
  197. package/dist/runtime/editor/providers/readability.js +30 -46
  198. package/dist/runtime/editor/providers/selection.d.ts +8 -0
  199. package/dist/runtime/editor/providers/selection.js +6 -0
  200. package/dist/runtime/editor/providers/texts.d.ts +1 -3
  201. package/dist/runtime/editor/providers/texts.js +34 -37
  202. package/dist/runtime/editor/providers/workspaces.d.ts +93 -0
  203. package/dist/runtime/editor/providers/workspaces.js +76 -0
  204. package/dist/runtime/editor/translations/de.json +918 -3616
  205. package/dist/runtime/editor/translations/fr.json +250 -3616
  206. package/dist/runtime/editor/translations/gsw_CH.json +918 -3616
  207. package/dist/runtime/editor/translations/it.json +250 -3616
  208. package/dist/runtime/editor/types/app.d.ts +2 -0
  209. package/dist/runtime/editor/types/features.d.ts +1 -1
  210. package/dist/runtime/editor/types/state.d.ts +7 -0
  211. package/dist/runtime/helpers/injections.d.ts +6 -0
  212. package/dist/runtime/helpers/injections.js +3 -0
  213. package/dist/runtime/types/definitions.d.ts +4 -0
  214. package/package.json +14 -4
  215. package/dist/runtime/editor/features/analyze/readability/builtinAnalyzer.d.ts +0 -6
  216. package/dist/runtime/editor/features/analyze/readability/builtinAnalyzer.js +0 -216
  217. package/dist/runtime/editor/features/workspace/types.d.ts +0 -59
  218. /package/dist/runtime/editor/features/{workspace → droppable-field-edit}/types.js +0 -0
@@ -78,3 +78,171 @@ defineItemDropdownAction(() => {
78
78
  }
79
79
  });
80
80
  </script>
81
+
82
+ <style>
83
+ .bk .bk-debug .bk-debug-section {
84
+ border-bottom-width: 1px;
85
+ --bk-tw-border-opacity: 1;
86
+ border-bottom-color: rgb(var(--bk-theme-mono-300) / var(--bk-tw-border-opacity, 1))
87
+ }
88
+ .bk .bk-debug .bk-debug-section-header {
89
+ display: flex;
90
+ cursor: pointer;
91
+ user-select: none;
92
+ align-items: center;
93
+ gap: 5px;
94
+ padding: 20px;
95
+ font-size: 14px;
96
+ line-height: 20px;
97
+ font-weight: 600;
98
+ text-transform: uppercase
99
+ }
100
+ .bk .bk-debug .bk-debug-section-header:hover {
101
+ opacity: 0.8
102
+ }
103
+ .bk .bk-debug .bk-debug-section-content {
104
+ padding-left: 20px;
105
+ padding-right: 20px;
106
+ padding-bottom: 20px
107
+ }
108
+ .bk .bk-debug .bk-debug-section-indicator {
109
+ display: inline-block;
110
+ width: 15px;
111
+ font-size: 12px;
112
+ line-height: 16px
113
+ }
114
+ .bk .bk-debug .bk-debug-list > div {
115
+ display: flex;
116
+ justify-content: space-between
117
+ }
118
+ .bk .bk-debug .bk-debug-list > div:not(:last-child) {
119
+ margin-bottom: 5px
120
+ }
121
+ .bk .bk-debug .bk-debug-features h3 {
122
+ font-weight: 700
123
+ }
124
+ .bk .bk-debug .bk-debug-features p {
125
+ font-size: 14px;
126
+ line-height: 20px
127
+ }
128
+ .bk .bk-debug .bk-debug-features > div {
129
+ display: flex;
130
+ gap: 5px;
131
+ border-bottom-width: 1px;
132
+ --bk-tw-border-opacity: 1;
133
+ border-bottom-color: rgb(var(--bk-theme-mono-300) / var(--bk-tw-border-opacity, 1));
134
+ padding-top: 10px;
135
+ padding-bottom: 10px
136
+ }
137
+
138
+ .bk .bk-debug-visible-viewport {
139
+ pointer-events: none;
140
+ position: fixed;
141
+ z-index: 999999999999;
142
+ border-width: 3px;
143
+ --bk-tw-border-opacity: 1;
144
+ border-color: rgb(var(--bk-theme-red-normal) / var(--bk-tw-border-opacity, 1));
145
+ background-color: rgb(var(--bk-theme-red-normal) / 0.1)
146
+ }
147
+
148
+ .bk .bk-debug-visible-viewport > div {
149
+ position: absolute;
150
+ top: 0px;
151
+ left: 0px;
152
+ --bk-tw-bg-opacity: 1;
153
+ background-color: rgb(var(--bk-theme-red-normal) / var(--bk-tw-bg-opacity, 1));
154
+ padding: 2px;
155
+ font-size: 12px;
156
+ line-height: 16px;
157
+ --bk-tw-text-opacity: 1;
158
+ color: rgb(255 255 255 / var(--bk-tw-text-opacity, 1))
159
+ }
160
+
161
+ .bk .bk-debug-intersection-rects {
162
+ pointer-events: none;
163
+ position: fixed;
164
+ z-index: 999999999999;
165
+ background-color: rgb(var(--bk-theme-yellow-normal) / 0.25);
166
+ outline-style: solid;
167
+ outline-offset: -1px;
168
+ outline-color: rgb(var(--bk-theme-yellow-normal) / 1)
169
+ }
170
+
171
+ .bk .bk-debug-visible-viewport-padded {
172
+ pointer-events: none;
173
+ position: fixed;
174
+ z-index: 9999999;
175
+ border-width: 3px;
176
+ --bk-tw-border-opacity: 1;
177
+ border-color: rgb(var(--bk-theme-red-normal) / var(--bk-tw-border-opacity, 1))
178
+ }
179
+
180
+ .bk .bk-debug-visible-viewport-padded > div {
181
+ position: absolute;
182
+ top: 0px;
183
+ left: 0px;
184
+ --bk-tw-bg-opacity: 1;
185
+ background-color: rgb(var(--bk-theme-red-normal) / var(--bk-tw-bg-opacity, 1));
186
+ padding: 2px;
187
+ font-size: 12px;
188
+ line-height: 16px;
189
+ --bk-tw-text-opacity: 1;
190
+ color: rgb(255 255 255 / var(--bk-tw-text-opacity, 1))
191
+ }
192
+
193
+ .bk .bk-debug-viewport-blocking-rect {
194
+ pointer-events: none;
195
+ position: fixed;
196
+ z-index: 9999999;
197
+ border-width: 3px;
198
+ --bk-tw-border-opacity: 1;
199
+ border-color: rgb(var(--bk-theme-red-normal) / var(--bk-tw-border-opacity, 1))
200
+ }
201
+
202
+ .bk .bk-debug-viewport-lines {
203
+ pointer-events: none;
204
+ position: fixed;
205
+ z-index: 999999999999;
206
+ --bk-tw-bg-opacity: 1;
207
+ background-color: rgb(var(--bk-theme-lime-normal) / var(--bk-tw-bg-opacity, 1))
208
+ }
209
+
210
+ .bk ._bk_debug-rect {
211
+ pointer-events: none;
212
+ position: fixed;
213
+ z-index: 999999999999;
214
+ border-width: 1px;
215
+ --bk-tw-border-opacity: 1;
216
+ border-color: rgb(var(--bk-theme-accent-700) / var(--bk-tw-border-opacity, 1));
217
+ background-color: rgb(var(--bk-theme-accent-700) / 0.1)
218
+ }
219
+
220
+ .bk .bk-debug-icons {
221
+ display: grid;
222
+ grid-template-columns: repeat(4, minmax(0, 1fr));
223
+ gap: 15px;
224
+ text-align: center;
225
+ font-size: 12px;
226
+ line-height: 16px
227
+ }
228
+
229
+ .bk .bk-debug-icons .bk-icon {
230
+ padding: 10px
231
+ }
232
+
233
+ .bk .bk-debug-icons svg {
234
+ aspect-ratio: 1 / 1;
235
+ height: auto;
236
+ width: 100%
237
+ }
238
+
239
+ .bk .bk-debug-rects {
240
+ pointer-events: none;
241
+ position: fixed;
242
+ top: 0px;
243
+ left: 0px;
244
+ z-index: 99999999999;
245
+ height: 100%;
246
+ width: 100%
247
+ }
248
+ </style>
@@ -18,13 +18,12 @@ import { useBlokkli, computed } from "#imports";
18
18
  import { StatusIndicator } from "#blokkli/editor/components";
19
19
  const { features } = useBlokkli();
20
20
  const featuresList = computed(() => {
21
- return features.features.value.map((v) => {
21
+ return features.definitions.value.map((v) => {
22
22
  const feature = features.mountedFeatures.value.find((f) => f.id === v.id);
23
23
  return {
24
24
  id: v.id,
25
25
  label: v.label,
26
26
  description: v.description,
27
- dependencies: v.dependencies?.join(", "),
28
27
  mounted: !!feature
29
28
  };
30
29
  });
@@ -3,9 +3,13 @@
3
3
  </template>
4
4
 
5
5
  <script setup>
6
- import { defineBlokkliFeature, useBlokkli } from "#imports";
7
- import DebugMain from "./Main.vue";
6
+ import {
7
+ defineAsyncComponent,
8
+ defineBlokkliFeature,
9
+ useBlokkli
10
+ } from "#imports";
8
11
  import { onBlokkliEvent } from "#blokkli/editor/composables";
12
+ const DebugMain = defineAsyncComponent(() => import("./Main.vue"));
9
13
  const { logger } = defineBlokkliFeature({
10
14
  id: "debug",
11
15
  label: "Debug",
@@ -29,171 +33,3 @@ export default {
29
33
  name: "Debug"
30
34
  };
31
35
  </script>
32
-
33
- <style>
34
- .bk .bk-debug .bk-debug-section {
35
- border-bottom-width: 1px;
36
- --bk-tw-border-opacity: 1;
37
- border-bottom-color: rgb(var(--bk-theme-mono-300) / var(--bk-tw-border-opacity, 1))
38
- }
39
- .bk .bk-debug .bk-debug-section-header {
40
- display: flex;
41
- cursor: pointer;
42
- user-select: none;
43
- align-items: center;
44
- gap: 5px;
45
- padding: 20px;
46
- font-size: 14px;
47
- line-height: 20px;
48
- font-weight: 600;
49
- text-transform: uppercase
50
- }
51
- .bk .bk-debug .bk-debug-section-header:hover {
52
- opacity: 0.8
53
- }
54
- .bk .bk-debug .bk-debug-section-content {
55
- padding-left: 20px;
56
- padding-right: 20px;
57
- padding-bottom: 20px
58
- }
59
- .bk .bk-debug .bk-debug-section-indicator {
60
- display: inline-block;
61
- width: 15px;
62
- font-size: 12px;
63
- line-height: 16px
64
- }
65
- .bk .bk-debug .bk-debug-list > div {
66
- display: flex;
67
- justify-content: space-between
68
- }
69
- .bk .bk-debug .bk-debug-list > div:not(:last-child) {
70
- margin-bottom: 5px
71
- }
72
- .bk .bk-debug .bk-debug-features h3 {
73
- font-weight: 700
74
- }
75
- .bk .bk-debug .bk-debug-features p {
76
- font-size: 14px;
77
- line-height: 20px
78
- }
79
- .bk .bk-debug .bk-debug-features > div {
80
- display: flex;
81
- gap: 5px;
82
- border-bottom-width: 1px;
83
- --bk-tw-border-opacity: 1;
84
- border-bottom-color: rgb(var(--bk-theme-mono-300) / var(--bk-tw-border-opacity, 1));
85
- padding-top: 10px;
86
- padding-bottom: 10px
87
- }
88
-
89
- .bk .bk-debug-visible-viewport {
90
- pointer-events: none;
91
- position: fixed;
92
- z-index: 999999999999;
93
- border-width: 3px;
94
- --bk-tw-border-opacity: 1;
95
- border-color: rgb(var(--bk-theme-red-normal) / var(--bk-tw-border-opacity, 1));
96
- background-color: rgb(var(--bk-theme-red-normal) / 0.1)
97
- }
98
-
99
- .bk .bk-debug-visible-viewport > div {
100
- position: absolute;
101
- top: 0px;
102
- left: 0px;
103
- --bk-tw-bg-opacity: 1;
104
- background-color: rgb(var(--bk-theme-red-normal) / var(--bk-tw-bg-opacity, 1));
105
- padding: 2px;
106
- font-size: 12px;
107
- line-height: 16px;
108
- --bk-tw-text-opacity: 1;
109
- color: rgb(255 255 255 / var(--bk-tw-text-opacity, 1))
110
- }
111
-
112
- .bk .bk-debug-intersection-rects {
113
- pointer-events: none;
114
- position: fixed;
115
- z-index: 999999999999;
116
- background-color: rgb(var(--bk-theme-yellow-normal) / 0.25);
117
- outline-style: solid;
118
- outline-offset: -1px;
119
- outline-color: rgb(var(--bk-theme-yellow-normal) / 1)
120
- }
121
-
122
- .bk .bk-debug-visible-viewport-padded {
123
- pointer-events: none;
124
- position: fixed;
125
- z-index: 9999999;
126
- border-width: 3px;
127
- --bk-tw-border-opacity: 1;
128
- border-color: rgb(var(--bk-theme-red-normal) / var(--bk-tw-border-opacity, 1))
129
- }
130
-
131
- .bk .bk-debug-visible-viewport-padded > div {
132
- position: absolute;
133
- top: 0px;
134
- left: 0px;
135
- --bk-tw-bg-opacity: 1;
136
- background-color: rgb(var(--bk-theme-red-normal) / var(--bk-tw-bg-opacity, 1));
137
- padding: 2px;
138
- font-size: 12px;
139
- line-height: 16px;
140
- --bk-tw-text-opacity: 1;
141
- color: rgb(255 255 255 / var(--bk-tw-text-opacity, 1))
142
- }
143
-
144
- .bk .bk-debug-viewport-blocking-rect {
145
- pointer-events: none;
146
- position: fixed;
147
- z-index: 9999999;
148
- border-width: 3px;
149
- --bk-tw-border-opacity: 1;
150
- border-color: rgb(var(--bk-theme-red-normal) / var(--bk-tw-border-opacity, 1))
151
- }
152
-
153
- .bk .bk-debug-viewport-lines {
154
- pointer-events: none;
155
- position: fixed;
156
- z-index: 999999999999;
157
- --bk-tw-bg-opacity: 1;
158
- background-color: rgb(var(--bk-theme-lime-normal) / var(--bk-tw-bg-opacity, 1))
159
- }
160
-
161
- .bk ._bk_debug-rect {
162
- pointer-events: none;
163
- position: fixed;
164
- z-index: 999999999999;
165
- border-width: 1px;
166
- --bk-tw-border-opacity: 1;
167
- border-color: rgb(var(--bk-theme-accent-700) / var(--bk-tw-border-opacity, 1));
168
- background-color: rgb(var(--bk-theme-accent-700) / 0.1)
169
- }
170
-
171
- .bk .bk-debug-icons {
172
- display: grid;
173
- grid-template-columns: repeat(4, minmax(0, 1fr));
174
- gap: 15px;
175
- text-align: center;
176
- font-size: 12px;
177
- line-height: 16px
178
- }
179
-
180
- .bk .bk-debug-icons .bk-icon {
181
- padding: 10px
182
- }
183
-
184
- .bk .bk-debug-icons svg {
185
- aspect-ratio: 1 / 1;
186
- height: auto;
187
- width: 100%
188
- }
189
-
190
- .bk .bk-debug-rects {
191
- pointer-events: none;
192
- position: fixed;
193
- top: 0px;
194
- left: 0px;
195
- z-index: 99999999999;
196
- height: 100%;
197
- width: 100%
198
- }
199
- </style>
@@ -60,7 +60,8 @@ defineBlokkliFeature({
60
60
  label: "Dev Mode",
61
61
  icon: "bk_mdi_logo_dev",
62
62
  description: "Feature enabled in development mode.",
63
- viewports: ["desktop"]
63
+ viewports: ["desktop"],
64
+ devOnly: true
64
65
  });
65
66
  const { $t, types, definitions, ui } = useBlokkli();
66
67
  const isEnabled = ref(false);
@@ -14,9 +14,13 @@
14
14
  </template>
15
15
 
16
16
  <script setup>
17
- import { useBlokkli, defineBlokkliFeature } from "#imports";
17
+ import {
18
+ useBlokkli,
19
+ defineBlokkliFeature,
20
+ defineAsyncComponent
21
+ } from "#imports";
18
22
  import { PluginSidebar } from "#blokkli/editor/plugins";
19
- import DiffView from "./DiffView/index.vue";
23
+ const DiffView = defineAsyncComponent(() => import("./DiffView/index.vue"));
20
24
  defineBlokkliFeature({
21
25
  id: "diff",
22
26
  label: "Diff",
@@ -18,11 +18,6 @@ import {
18
18
  } from "#blokkli/editor/helpers/geometry";
19
19
  import { toShaderColor, rgbaToString } from "#blokkli/editor/helpers/color";
20
20
  import { ref, computed, useBlokkli } from "#imports";
21
- import {
22
- setBuffersAndAttributes,
23
- drawBufferInfo,
24
- setUniforms
25
- } from "twgl.js";
26
21
  import vs from "./vertex.glsl?raw";
27
22
  import fs from "./fragment.glsl?raw";
28
23
  import { RectangleBufferCollector } from "#blokkli/editor/helpers/webgl";
@@ -57,7 +52,8 @@ const {
57
52
  fields,
58
53
  definitions,
59
54
  context,
60
- permissions
55
+ permissions,
56
+ selection
61
57
  } = useBlokkli();
62
58
  const FIELD_MIN_DRAW_SIZE = 6;
63
59
  const alphaBase = 0.7;
@@ -502,10 +498,13 @@ function getRectType(field) {
502
498
  return 1 /* FIELD_1 */;
503
499
  }
504
500
  class DropTargetRectangleBufferCollector extends RectangleBufferCollector {
505
- getBufferInfo(gl) {
506
- const visibleFields = dom.getVisibleFields();
501
+ getBufferInfo(gl, twgl) {
507
502
  const visibleBlocks = dom.getVisibleBlocks();
508
503
  const lengthBefore = this.positions.length;
504
+ const isDragFromFieldEdit = props.items.some(
505
+ (item) => item.itemType === "droppable_field_item"
506
+ );
507
+ const visibleFields = selection.activeFieldLabel.value && !isDragFromFieldEdit ? [] : dom.getVisibleFields();
509
508
  for (let i = 0; i < visibleFields.length; i++) {
510
509
  const key = visibleFields[i];
511
510
  const fieldRect = buildFieldRect(key);
@@ -568,8 +567,8 @@ class DropTargetRectangleBufferCollector extends RectangleBufferCollector {
568
567
  }
569
568
  this.processPendingRects();
570
569
  const hasChanged = lengthBefore !== this.positions.length;
571
- if (hasChanged && gl) {
572
- this.bufferInfo = this.createBufferInfo(gl);
570
+ if (hasChanged && gl && twgl) {
571
+ this.bufferInfo = this.createBufferInfo(gl, twgl);
573
572
  }
574
573
  return { info: this.bufferInfo, hasChanged };
575
574
  }
@@ -809,7 +808,7 @@ function setHoveredFieldArea(box, mouse) {
809
808
  }
810
809
  let bufferInfo = null;
811
810
  let bufferChanged = false;
812
- const { collector } = defineRenderer("drop-targets", {
811
+ const { collector } = await defineRenderer("drop-targets", {
813
812
  zIndex: 400,
814
813
  only: true,
815
814
  collector: () => {
@@ -834,7 +833,7 @@ const { collector } = defineRenderer("drop-targets", {
834
833
  },
835
834
  program: () => ({ shaders: [vs, fs] }),
836
835
  cursor: () => "grabbing",
837
- render: (_ctx, gl, program) => {
836
+ render: (_ctx, gl, program, twgl) => {
838
837
  const scale = ui.artboardScale.value;
839
838
  const offset = { ...ui.artboardOffset.value };
840
839
  dragBox.value = {
@@ -844,7 +843,7 @@ const { collector } = defineRenderer("drop-targets", {
844
843
  height: props.box.height / scale
845
844
  };
846
845
  const mouseAbsolute = toCanvasSpaceCoordinates(props.mouseX, props.mouseY);
847
- const result = collector.getBufferInfo(gl);
846
+ const result = collector.getBufferInfo(gl, twgl);
848
847
  bufferInfo = result.info;
849
848
  bufferChanged = result.hasChanged;
850
849
  if (!props.isTouch) {
@@ -861,14 +860,14 @@ const { collector } = defineRenderer("drop-targets", {
861
860
  setHoveredFieldArea(dragBox.value, mouseAbsolute);
862
861
  gl.useProgram(program.program);
863
862
  animation.setSharedUniforms(gl, program);
864
- setUniforms(program, uniforms.value);
863
+ twgl.setUniforms(program, uniforms.value);
865
864
  if (!bufferInfo) {
866
865
  return;
867
866
  }
868
867
  if (bufferChanged) {
869
- setBuffersAndAttributes(gl, program, bufferInfo);
868
+ twgl.setBuffersAndAttributes(gl, program, bufferInfo);
870
869
  }
871
- drawBufferInfo(gl, bufferInfo, gl.TRIANGLES);
870
+ twgl.drawBufferInfo(gl, bufferInfo, gl.TRIANGLES);
872
871
  },
873
872
  renderFallback: (ctx, ctx2d) => {
874
873
  const scale = ui.artboardScale.value;
@@ -39,20 +39,21 @@
39
39
  </template>
40
40
 
41
41
  <script setup>
42
- import DragItems from "./DragItems/index.vue";
43
- import Renderer from "./Renderer/index.vue";
44
42
  import {
45
43
  ref,
46
44
  useBlokkli,
47
45
  onUnmounted,
48
46
  defineBlokkliFeature,
49
47
  nextTick,
50
- useTemplateRef
48
+ useTemplateRef,
49
+ defineAsyncComponent
51
50
  } from "#imports";
52
51
  import { renderCycle } from "#blokkli/editor/helpers/vue";
53
52
  import { BundleSelector, BlokkliTransition } from "#blokkli/editor/components";
54
53
  import { onBlokkliEvent, defineDropHandler } from "#blokkli/editor/composables";
55
54
  import { MOUSE_BUTTON } from "#blokkli/editor/helpers/dom";
55
+ const DragItems = defineAsyncComponent(() => import("./DragItems/index.vue"));
56
+ const Renderer = defineAsyncComponent(() => import("./Renderer/index.vue"));
56
57
  const { adapter } = defineBlokkliFeature({
57
58
  icon: "bk_mdi_drag_pan",
58
59
  id: "dragging-overlay",
@@ -0,0 +1,15 @@
1
+ import type { EntityContext } from '#blokkli/types';
2
+ import type { DroppableFieldConfig } from '#blokkli/editor/features/editable-field/types';
3
+ type __VLS_Props = {
4
+ fieldName: string;
5
+ entity: EntityContext;
6
+ element: HTMLElement;
7
+ config: DroppableFieldConfig;
8
+ };
9
+ declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
10
+ close: () => any;
11
+ }, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
12
+ onClose?: (() => any) | undefined;
13
+ }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
14
+ declare const _default: typeof __VLS_export;
15
+ export default _default;