@blokkli/editor 1.0.3 → 1.1.0

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 (78) hide show
  1. package/README.md +0 -6
  2. package/dist/module.json +1 -1
  3. package/dist/module.mjs +344 -11
  4. package/dist/runtime/adapter/drupal/graphql/base.graphql +2 -1
  5. package/dist/runtime/adapter/drupal/graphqlMiddleware.js +4 -1
  6. package/dist/runtime/adapter/index.d.ts +12 -1
  7. package/dist/runtime/blokkliPlugins/Sidebar/Detached/index.vue +41 -39
  8. package/dist/runtime/blokkliPlugins/Sidebar/index.vue +10 -16
  9. package/dist/runtime/blokkliPlugins/ViewOption/index.vue +2 -0
  10. package/dist/runtime/components/BlokkliField.vue +76 -18
  11. package/dist/runtime/components/BlokkliItem.vue +34 -6
  12. package/dist/runtime/components/BlokkliProvider.vue +18 -1
  13. package/dist/runtime/components/Edit/BlockProxy/index.vue +102 -0
  14. package/dist/runtime/components/Edit/DragInteractions/index.vue +49 -25
  15. package/dist/runtime/components/Edit/DraggableList.vue +139 -29
  16. package/dist/runtime/components/Edit/EditProvider.vue +4 -0
  17. package/dist/runtime/components/Edit/Features/AddList/index.vue +3 -0
  18. package/dist/runtime/components/Edit/Features/Artboard/Overview/index.vue +111 -0
  19. package/dist/runtime/components/Edit/Features/Artboard/Scrollbar/index.vue +47 -0
  20. package/dist/runtime/components/Edit/Features/Artboard/index.vue +301 -9
  21. package/dist/runtime/components/Edit/Features/CommandPalette/Palette/index.vue +3 -4
  22. package/dist/runtime/components/Edit/Features/Debug/Rects/index.vue +27 -0
  23. package/dist/runtime/components/Edit/Features/DraggingOverlay/DragItems/index.vue +24 -3
  24. package/dist/runtime/components/Edit/Features/DraggingOverlay/DropTargets/fragment.glsl +56 -24
  25. package/dist/runtime/components/Edit/Features/DraggingOverlay/DropTargets/index.vue +184 -29
  26. package/dist/runtime/components/Edit/Features/DraggingOverlay/DropTargets/vertex.glsl +36 -16
  27. package/dist/runtime/components/Edit/Features/DraggingOverlay/index.vue +4 -0
  28. package/dist/runtime/components/Edit/Features/Duplicate/index.vue +1 -13
  29. package/dist/runtime/components/Edit/Features/EditableMask/index.vue +2 -2
  30. package/dist/runtime/components/Edit/Features/History/index.vue +1 -1
  31. package/dist/runtime/components/Edit/Features/Options/Form/Checkbox/index.vue +2 -2
  32. package/dist/runtime/components/Edit/Features/Options/Form/Checkboxes/index.vue +28 -25
  33. package/dist/runtime/components/Edit/Features/Options/Form/Color/index.vue +1 -1
  34. package/dist/runtime/components/Edit/Features/Options/Form/Item.vue +67 -39
  35. package/dist/runtime/components/Edit/Features/Options/Form/Number/index.vue +6 -2
  36. package/dist/runtime/components/Edit/Features/Options/Form/Radios/index.vue +1 -1
  37. package/dist/runtime/components/Edit/Features/Options/Form/Range/index.vue +2 -2
  38. package/dist/runtime/components/Edit/Features/Options/Form/Text/index.vue +2 -1
  39. package/dist/runtime/components/Edit/Features/Options/Form/index.vue +84 -33
  40. package/dist/runtime/components/Edit/Features/ProxyView/index.vue +38 -0
  41. package/dist/runtime/components/Edit/Features/Publish/index.vue +53 -6
  42. package/dist/runtime/components/Edit/Features/Search/Overlay/index.vue +3 -13
  43. package/dist/runtime/components/Edit/Features/Selection/Overlay/index.vue +1 -1
  44. package/dist/runtime/components/Edit/Features/Settings/Dialog/index.vue +2 -0
  45. package/dist/runtime/components/Edit/Features/Structure/List/Field/index.vue +3 -3
  46. package/dist/runtime/components/Edit/Features/Structure/index.vue +3 -3
  47. package/dist/runtime/components/Edit/ScrollBoundary/index.vue +24 -0
  48. package/dist/runtime/components/Edit/index.d.ts +2 -1
  49. package/dist/runtime/components/Edit/index.js +3 -1
  50. package/dist/runtime/composables/defineBlokkli.js +10 -5
  51. package/dist/runtime/constants/index.d.ts +1 -1
  52. package/dist/runtime/constants/index.js +6 -1
  53. package/dist/runtime/css/output.css +1 -1
  54. package/dist/runtime/helpers/animationProvider.js +10 -4
  55. package/dist/runtime/helpers/domProvider.d.ts +4 -2
  56. package/dist/runtime/helpers/domProvider.js +42 -19
  57. package/dist/runtime/helpers/featuresProvider.d.ts +1 -1
  58. package/dist/runtime/helpers/runtimeHelpers/index.d.ts +6 -0
  59. package/dist/runtime/helpers/runtimeHelpers/index.js +25 -0
  60. package/dist/runtime/helpers/selectionProvider.d.ts +2 -1
  61. package/dist/runtime/helpers/selectionProvider.js +7 -8
  62. package/dist/runtime/helpers/symbols.d.ts +7 -0
  63. package/dist/runtime/helpers/symbols.js +7 -0
  64. package/dist/runtime/helpers/typesProvider.d.ts +1 -1
  65. package/dist/runtime/helpers/uiProvider.d.ts +1 -0
  66. package/dist/runtime/helpers/uiProvider.js +16 -3
  67. package/dist/runtime/helpers/webgl/index.d.ts +6 -1
  68. package/dist/runtime/helpers/webgl/index.js +38 -5
  69. package/dist/runtime/icons/eye.svg +1 -0
  70. package/dist/runtime/types/generatedModuleTypes.d.ts +12 -4
  71. package/dist/runtime/types/index.d.ts +39 -3
  72. package/package.json +7 -5
  73. package/dist/runtime/components/Edit/Features/Artboard/Manager/Artboard.d.ts +0 -204
  74. package/dist/runtime/components/Edit/Features/Artboard/Manager/Artboard.js +0 -748
  75. package/dist/runtime/components/Edit/Features/Artboard/Manager/Scrollbar/index.vue +0 -176
  76. package/dist/runtime/components/Edit/Features/Artboard/Manager/index.vue +0 -317
  77. package/dist/runtime/helpers/Artboard/index.d.ts +0 -16
  78. package/dist/runtime/helpers/Artboard/index.js +0 -20
package/dist/module.mjs CHANGED
@@ -5,8 +5,9 @@ import { defu, createDefu } from 'defu';
5
5
  import { createUnplugin } from 'unplugin';
6
6
  import MagicString from 'magic-string';
7
7
  import { walk } from 'estree-walker-ts';
8
+ import { BK_VISIBLE_LANGUAGES, BK_HIDDEN_GLOBALLY } from '../dist/runtime/helpers/symbols.js';
8
9
 
9
- const version = "1.0.3";
10
+ const version = "1.1.0";
10
11
 
11
12
  function sortObjectKeys(obj) {
12
13
  const sortedKeys = Object.keys(obj).sort();
@@ -141,6 +142,15 @@ class BlockExtractor {
141
142
  } catch {
142
143
  }
143
144
  }
145
+ async getProxyComponent(componentPath) {
146
+ const folder = path.dirname(componentPath);
147
+ const proxyComponentPath = path.join(folder, "/proxy.vue");
148
+ try {
149
+ await fs.promises.access(proxyComponentPath, fs.constants.F_OK);
150
+ return proxyComponentPath;
151
+ } catch {
152
+ }
153
+ }
144
154
  /**
145
155
  * Read the file and extract the blokkli component definitions.
146
156
  *
@@ -163,6 +173,7 @@ class BlockExtractor {
163
173
  }
164
174
  if ("bundle" in extracted.definition) {
165
175
  const icon = await this.getIcon(filePath2);
176
+ const proxyComponentPath = await this.getProxyComponent(filePath2);
166
177
  if (this.definitions[filePath2] && this.definitions[filePath2]?.source === extracted.source) {
167
178
  return false;
168
179
  }
@@ -172,6 +183,7 @@ class BlockExtractor {
172
183
  filePath: filePath2,
173
184
  definition: extracted.definition,
174
185
  icon,
186
+ proxyComponentPath,
175
187
  chunkName: extracted.definition.chunkName || "global",
176
188
  componentName: "BlokkliComponent_" + extracted.definition.bundle + "_" + componentFileName,
177
189
  source: extracted.source,
@@ -237,10 +249,14 @@ class BlockExtractor {
237
249
  acc.push(
238
250
  `${bundle}__parent_block_${entry.parentBundle}: ${v.componentName}`
239
251
  );
240
- } else {
252
+ } else if ("fieldList" in entry) {
241
253
  acc.push(
242
254
  `${bundle}__field_list_type_${entry.fieldList}: ${v.componentName}`
243
255
  );
256
+ } else if ("fieldListType" in entry) {
257
+ acc.push(
258
+ `${bundle}__field_list_type_${entry.fieldListType}: ${v.componentName}`
259
+ );
244
260
  }
245
261
  });
246
262
  } else {
@@ -257,15 +273,32 @@ class BlockExtractor {
257
273
  }
258
274
  return acc;
259
275
  }, {});
276
+ const proxyComponents = Object.values(this.definitions).reduce((acc, v) => {
277
+ if (v?.proxyComponentPath) {
278
+ acc[v.definition.bundle] = v.proxyComponentPath;
279
+ }
280
+ return acc;
281
+ }, {});
282
+ const proxyImports = Object.entries(proxyComponents).map(([bundle, proxyComponentPath]) => {
283
+ return `import proxyComponent_${bundle} from '${proxyComponentPath}'`;
284
+ }).join("\n");
285
+ const proxyMaps = Object.keys(proxyComponents).map((bundle) => {
286
+ return `'${bundle}': proxyComponent_${bundle}`;
287
+ }).join(", \n");
260
288
  const allFragmentNames = Object.values(this.fragmentDefinitions).filter(falsy).map((v) => `'${v.definition.name}'`).join(" | ");
261
289
  return `import type { GlobalOptionsKey, ValidFieldListTypes, BlockBundleWithNested } from './generated-types'
262
290
  import type { BlockDefinitionInput, BlockDefinitionOptionsInput, FragmentDefinitionInput } from '#blokkli/types'
263
291
  export const globalOptions = ${JSON.stringify(globalOptions, null, 2)} as const
292
+ ${proxyImports}
264
293
 
265
294
  type DefinitionItem = BlockDefinitionInput<BlockDefinitionOptionsInput, GlobalOptionsKey[]>
266
295
 
267
296
  ${definitionDeclarations.join("\n")}
268
297
 
298
+ const PROXY_COMPONENTS: Record<string, any> = {
299
+ ${proxyMaps}
300
+ }
301
+
269
302
  export const icons: Record<string, string> = ${JSON.stringify(icons)}
270
303
 
271
304
  export const definitionsMap: Record<string, DefinitionItem> = {
@@ -299,6 +332,10 @@ export function getDefinition(bundle: string, fieldListType: ValidFieldListTypes
299
332
  return definitionsMap[bundle]
300
333
  }
301
334
 
335
+ export function getBlokkliItemProxyComponent(bundle: string): any {
336
+ return PROXY_COMPONENTS[bundle]
337
+ }
338
+
302
339
  /**
303
340
  * Get the definition of the default block component.
304
341
  */
@@ -326,6 +363,13 @@ export const getFragmentDefinition = (name: string): FragmentDefinitionInput<Rec
326
363
  const sorted = sortObjectKeys(schema);
327
364
  return JSON.stringify(sorted, null, 2);
328
365
  }
366
+ getBundlesWithGlobalOptions(key) {
367
+ return Object.values(this.definitions).map((definition2) => {
368
+ if (definition2?.definition.globalOptions?.includes(key)) {
369
+ return definition2.definition.bundle;
370
+ }
371
+ }).filter(falsy);
372
+ }
329
373
  /**
330
374
  * Generate the default global options values template.
331
375
  */
@@ -349,6 +393,9 @@ type GlobalOptionsDefaults = {
349
393
  default: any
350
394
  }
351
395
 
396
+ export const bundlesWithVisibleLanguage: string[] = ${JSON.stringify(this.getBundlesWithGlobalOptions(BK_VISIBLE_LANGUAGES))}
397
+ export const bundlesWithHiddenGlobally: string[] = ${JSON.stringify(this.getBundlesWithGlobalOptions(BK_HIDDEN_GLOBALLY))}
398
+
352
399
  export const globalOptionsDefaults: Record<string, GlobalOptionsDefaults> = ${JSON.stringify(
353
400
  defaults,
354
401
  null,
@@ -551,10 +598,14 @@ export function getBlokkliFragmentComponent(name: string): any {
551
598
  acc.push(
552
599
  `block_${bundle}__parent_block_${entry.parentBundle}: ${v.componentName}`
553
600
  );
554
- } else {
601
+ } else if ("fieldList" in entry) {
555
602
  acc.push(
556
603
  `block_${bundle}__field_list_type_${entry.fieldList}: ${v.componentName}`
557
604
  );
605
+ } else if ("fieldListType" in entry) {
606
+ acc.push(
607
+ `block_${bundle}__field_list_type_${entry.fieldListType}: ${v.componentName}`
608
+ );
558
609
  }
559
610
  });
560
611
  }
@@ -689,7 +740,23 @@ const all$2 = {
689
740
  };
690
741
  const artboard$2 = {
691
742
  source: "Artboard",
692
- translation: "Zeichenfläche"
743
+ translation: "Vorschau"
744
+ };
745
+ const artboardOverviewHide$2 = {
746
+ source: "Hide overview",
747
+ translation: "Übersicht verstecken"
748
+ };
749
+ const artboardOverviewShow$2 = {
750
+ source: "Show overview",
751
+ translation: "Übersicht anzeigen"
752
+ };
753
+ const artboardOverviewToggle$2 = {
754
+ source: "Toggle overview",
755
+ translation: "Übersicht umschalten"
756
+ };
757
+ const artboardOverviewTourText$2 = {
758
+ source: "Displays a top level overview of your content.",
759
+ translation: "Zeigt eine schematische Übersicht aller Inhalte an."
693
760
  };
694
761
  const artboardResetZoom$2 = {
695
762
  source: "Reset zoom",
@@ -767,6 +834,14 @@ const blockAddListTourTitle$2 = {
767
834
  source: "Favorite blocks",
768
835
  translation: "Favoriten-Blöcke"
769
836
  };
837
+ const blockOption_bkHiddenGlobally_label$2 = {
838
+ source: "Hide globally",
839
+ translation: "Global verstecken"
840
+ };
841
+ const blockOption_bkVisibleLanguages_label$2 = {
842
+ source: "Visible languages",
843
+ translation: "Sichtbare Sprachen"
844
+ };
770
845
  const cancel$2 = {
771
846
  source: "Cancel",
772
847
  translation: "Abbrechen"
@@ -939,13 +1014,17 @@ const featureHelpTitle$2 = {
939
1014
  source: "Help",
940
1015
  translation: "Hilfe"
941
1016
  };
1017
+ const feature_artboard_setting_momentum_label$2 = {
1018
+ source: "Use smooth scrolling",
1019
+ translation: "Sanftes Scrollen verwenden"
1020
+ };
942
1021
  const feature_artboard_setting_persist_label$2 = {
943
1022
  source: "Persist position and zoom",
944
1023
  translation: "Position und Zoom speichern"
945
1024
  };
946
1025
  const feature_artboard_setting_scrollSpeed_label$2 = {
947
1026
  source: "Artboard scroll speed",
948
- translation: "Scrollgeschwindigkeit der Zeichenfläche"
1027
+ translation: "Scrollgeschwindigkeit der Vorschau"
949
1028
  };
950
1029
  const feature_clipboard_setting_openSidebarOnPaste_label$2 = {
951
1030
  source: "Open sidebar when pasting from clipboard",
@@ -955,6 +1034,10 @@ const feature_history_setting_useMouseButtons_label$2 = {
955
1034
  source: "Use mouse buttons for undo/redo",
956
1035
  translation: "Maustasten für Rückgängig/Wiederherstellen verwenden"
957
1036
  };
1037
+ const feature_publish_setting_closeAfterPublish_label$2 = {
1038
+ source: "Close editor after publishing",
1039
+ translation: "Nach «Veröffentlichen» den Editor schliessen"
1040
+ };
958
1041
  const feature_settings_setting_lowPerformanceMode_label$2 = {
959
1042
  source: "Enable low performance mode",
960
1043
  translation: "Modus für niedrige Leistung aktivieren"
@@ -1227,6 +1310,10 @@ const multipleItemsLabel$2 = {
1227
1310
  source: "Items",
1228
1311
  translation: "Elemente"
1229
1312
  };
1313
+ const optionBkVisibleLanguagesAll$2 = {
1314
+ source: "All languages",
1315
+ translation: "Alle Sprachen"
1316
+ };
1230
1317
  const ownershipError$2 = {
1231
1318
  source: "Error in assigning",
1232
1319
  translation: "Fehler beim Zuweisen"
@@ -1283,9 +1370,37 @@ const previewWithSmartphoneTourText$2 = {
1283
1370
  source: "Shows a QR code to quickly open a preview of the changes with your smartphone.",
1284
1371
  translation: "Zeigt einen QR-Code an, um eine Vorschau der Änderungen mit Ihrem Smartphone zu öffnen."
1285
1372
  };
1373
+ const proxyViewHide$2 = {
1374
+ source: "Show content preview",
1375
+ translation: "Inhaltsvorschau anzeigen"
1376
+ };
1377
+ const proxyViewShow$2 = {
1378
+ source: "Show structure view",
1379
+ translation: "Strukturierte Vorschau anzeigen"
1380
+ };
1381
+ const proxyViewToggle$2 = {
1382
+ source: "Toggle structure view",
1383
+ translation: "Vorschau wechseln"
1384
+ };
1385
+ const proxyViewTourText$2 = {
1386
+ source: "Displays the content blocks as a structured view.",
1387
+ translation: "Stellt die Inhaltsblöcke in strukturierter Form dar."
1388
+ };
1389
+ const publishAndCloseLabel$2 = {
1390
+ source: "Publish & Close",
1391
+ translation: "Veröffentlichen & Schliessen"
1392
+ };
1393
+ const publishAndCloseLabelUnpublished$2 = {
1394
+ source: "Save & Close",
1395
+ translation: "Speichern & Schliessen"
1396
+ };
1286
1397
  const publishDescription$2 = {
1287
- source: "Make all changes public",
1288
- translation: "Alle Änderungen öffentlich machen"
1398
+ source: "Publish all changes.",
1399
+ translation: "Alle Änderungen veröffentlichen"
1400
+ };
1401
+ const publishDescriptionUnpublished$2 = {
1402
+ source: "Save all changes while keeping page unpublished",
1403
+ translation: "Alle Änderungen speichern ohne die Seite zu publizieren"
1289
1404
  };
1290
1405
  const publishError$2 = {
1291
1406
  source: "Changes could not be published.",
@@ -1295,6 +1410,10 @@ const publishLabel$2 = {
1295
1410
  source: "Publish",
1296
1411
  translation: "Veröffentlichen"
1297
1412
  };
1413
+ const publishLabelUnpublished$2 = {
1414
+ source: "Save",
1415
+ translation: "Speichern"
1416
+ };
1298
1417
  const publishSuccess$2 = {
1299
1418
  source: "Changes published successfully.",
1300
1419
  translation: "Änderungen erfolgreich publiziert."
@@ -1329,7 +1448,7 @@ const revertError$2 = {
1329
1448
  };
1330
1449
  const revertMenuDescription$2 = {
1331
1450
  source: "Restore currently published state",
1332
- translation: "Aktuell veröffentlichter Zustand Wiederherstellen"
1451
+ translation: "Aktuell veröffentlichten Zustand wiederherstellen"
1333
1452
  };
1334
1453
  const revertMenuTitle$2 = {
1335
1454
  source: "Discard...",
@@ -1371,6 +1490,10 @@ const settingsAppearance$2 = {
1371
1490
  source: "Appearance",
1372
1491
  translation: "Darstellung"
1373
1492
  };
1493
+ const settingsArtboard$2 = {
1494
+ source: "Artboard",
1495
+ translation: "Vorschau"
1496
+ };
1374
1497
  const settingsBehaviour$2 = {
1375
1498
  source: "Behaviour",
1376
1499
  translation: "Verhalten"
@@ -1536,6 +1659,10 @@ const de = {
1536
1659
  addListTourText: addListTourText$2,
1537
1660
  all: all$2,
1538
1661
  artboard: artboard$2,
1662
+ artboardOverviewHide: artboardOverviewHide$2,
1663
+ artboardOverviewShow: artboardOverviewShow$2,
1664
+ artboardOverviewToggle: artboardOverviewToggle$2,
1665
+ artboardOverviewTourText: artboardOverviewTourText$2,
1539
1666
  artboardResetZoom: artboardResetZoom$2,
1540
1667
  artboardScaleToFit: artboardScaleToFit$2,
1541
1668
  artboardScrollDown: artboardScrollDown$2,
@@ -1555,6 +1682,8 @@ const de = {
1555
1682
  assistantPromptPlaceholder: assistantPromptPlaceholder$2,
1556
1683
  blockAddListTourText: blockAddListTourText$2,
1557
1684
  blockAddListTourTitle: blockAddListTourTitle$2,
1685
+ blockOption_bkHiddenGlobally_label: blockOption_bkHiddenGlobally_label$2,
1686
+ blockOption_bkVisibleLanguages_label: blockOption_bkVisibleLanguages_label$2,
1558
1687
  cancel: cancel$2,
1559
1688
  clipboard: clipboard$2,
1560
1689
  clipboardCopyShortcutHelp: clipboardCopyShortcutHelp$2,
@@ -1638,6 +1767,7 @@ const de = {
1638
1767
  source: "Vertical",
1639
1768
  translation: "Vertikal"
1640
1769
  },
1770
+ feature_artboard_setting_momentum_label: feature_artboard_setting_momentum_label$2,
1641
1771
  feature_artboard_setting_persist_label: feature_artboard_setting_persist_label$2,
1642
1772
  feature_artboard_setting_scrollSpeed_label: feature_artboard_setting_scrollSpeed_label$2,
1643
1773
  "feature_block-add-list_setting_hideDisabledBlocks_label": {
@@ -1650,6 +1780,7 @@ const de = {
1650
1780
  source: "Show import dialog at start when page is empty",
1651
1781
  translation: "Importdialog beim Start anzeigen, wenn die Seite leer ist"
1652
1782
  },
1783
+ feature_publish_setting_closeAfterPublish_label: feature_publish_setting_closeAfterPublish_label$2,
1653
1784
  feature_settings_setting_lowPerformanceMode_label: feature_settings_setting_lowPerformanceMode_label$2,
1654
1785
  feature_settings_setting_resetAllSettings_label: feature_settings_setting_resetAllSettings_label$2,
1655
1786
  feature_settings_setting_useAnimations_label: feature_settings_setting_useAnimations_label$2,
@@ -1718,6 +1849,7 @@ const de = {
1718
1849
  mediaLibraryReplaceMedia: mediaLibraryReplaceMedia$2,
1719
1850
  mediaLibraryTourText: mediaLibraryTourText$2,
1720
1851
  multipleItemsLabel: multipleItemsLabel$2,
1852
+ optionBkVisibleLanguagesAll: optionBkVisibleLanguagesAll$2,
1721
1853
  "optionsCommand.selectCheckboxValue": {
1722
1854
  source: "Select \"@value\" in \"@option\"",
1723
1855
  translation: "«@value» in «@option» auswählen"
@@ -1744,9 +1876,17 @@ const de = {
1744
1876
  previewQrCodeText: previewQrCodeText$2,
1745
1877
  previewWithSmartphone: previewWithSmartphone$2,
1746
1878
  previewWithSmartphoneTourText: previewWithSmartphoneTourText$2,
1879
+ proxyViewHide: proxyViewHide$2,
1880
+ proxyViewShow: proxyViewShow$2,
1881
+ proxyViewToggle: proxyViewToggle$2,
1882
+ proxyViewTourText: proxyViewTourText$2,
1883
+ publishAndCloseLabel: publishAndCloseLabel$2,
1884
+ publishAndCloseLabelUnpublished: publishAndCloseLabelUnpublished$2,
1747
1885
  publishDescription: publishDescription$2,
1886
+ publishDescriptionUnpublished: publishDescriptionUnpublished$2,
1748
1887
  publishError: publishError$2,
1749
1888
  publishLabel: publishLabel$2,
1889
+ publishLabelUnpublished: publishLabelUnpublished$2,
1750
1890
  publishSuccess: publishSuccess$2,
1751
1891
  responsivePreviewCustomViewport: responsivePreviewCustomViewport$2,
1752
1892
  responsivePreviewTitle: responsivePreviewTitle$2,
@@ -1766,6 +1906,7 @@ const de = {
1766
1906
  searchTourText: searchTourText$2,
1767
1907
  settingsAdvanced: settingsAdvanced$2,
1768
1908
  settingsAppearance: settingsAppearance$2,
1909
+ settingsArtboard: settingsArtboard$2,
1769
1910
  settingsBehaviour: settingsBehaviour$2,
1770
1911
  settingsDialogTitle: settingsDialogTitle$2,
1771
1912
  settingsMenuDescription: settingsMenuDescription$2,
@@ -1844,6 +1985,22 @@ const artboard$1 = {
1844
1985
  source: "Artboard",
1845
1986
  translation: ""
1846
1987
  };
1988
+ const artboardOverviewHide$1 = {
1989
+ source: "Hide overview",
1990
+ translation: ""
1991
+ };
1992
+ const artboardOverviewShow$1 = {
1993
+ source: "Show overview",
1994
+ translation: ""
1995
+ };
1996
+ const artboardOverviewToggle$1 = {
1997
+ source: "Toggle overview",
1998
+ translation: ""
1999
+ };
2000
+ const artboardOverviewTourText$1 = {
2001
+ source: "Displays a top level overview of your content.",
2002
+ translation: ""
2003
+ };
1847
2004
  const artboardResetZoom$1 = {
1848
2005
  source: "Reset zoom",
1849
2006
  translation: ""
@@ -1920,6 +2077,14 @@ const blockAddListTourTitle$1 = {
1920
2077
  source: "Favorite blocks",
1921
2078
  translation: ""
1922
2079
  };
2080
+ const blockOption_bkHiddenGlobally_label$1 = {
2081
+ source: "Hide globally",
2082
+ translation: ""
2083
+ };
2084
+ const blockOption_bkVisibleLanguages_label$1 = {
2085
+ source: "Visible languages",
2086
+ translation: ""
2087
+ };
1923
2088
  const cancel$1 = {
1924
2089
  source: "Cancel",
1925
2090
  translation: "Annuler"
@@ -2092,6 +2257,10 @@ const featureHelpTitle$1 = {
2092
2257
  source: "Help",
2093
2258
  translation: ""
2094
2259
  };
2260
+ const feature_artboard_setting_momentum_label$1 = {
2261
+ source: "Use smooth scrolling",
2262
+ translation: ""
2263
+ };
2095
2264
  const feature_artboard_setting_persist_label$1 = {
2096
2265
  source: "Persist position and zoom",
2097
2266
  translation: ""
@@ -2108,6 +2277,10 @@ const feature_history_setting_useMouseButtons_label$1 = {
2108
2277
  source: "Use mouse buttons for undo/redo",
2109
2278
  translation: ""
2110
2279
  };
2280
+ const feature_publish_setting_closeAfterPublish_label$1 = {
2281
+ source: "Close editor after publishing",
2282
+ translation: ""
2283
+ };
2111
2284
  const feature_settings_setting_lowPerformanceMode_label$1 = {
2112
2285
  source: "Enable low performance mode",
2113
2286
  translation: ""
@@ -2380,6 +2553,10 @@ const multipleItemsLabel$1 = {
2380
2553
  source: "Items",
2381
2554
  translation: "Éléments"
2382
2555
  };
2556
+ const optionBkVisibleLanguagesAll$1 = {
2557
+ source: "All languages",
2558
+ translation: ""
2559
+ };
2383
2560
  const ownershipError$1 = {
2384
2561
  source: "Error in assigning",
2385
2562
  translation: "Erreur lors de l’attribution"
@@ -2436,10 +2613,38 @@ const previewWithSmartphoneTourText$1 = {
2436
2613
  source: "Shows a QR code to quickly open a preview of the changes with your smartphone.",
2437
2614
  translation: ""
2438
2615
  };
2616
+ const proxyViewHide$1 = {
2617
+ source: "Show content preview",
2618
+ translation: ""
2619
+ };
2620
+ const proxyViewShow$1 = {
2621
+ source: "Show structure view",
2622
+ translation: ""
2623
+ };
2624
+ const proxyViewToggle$1 = {
2625
+ source: "Toggle structure view",
2626
+ translation: ""
2627
+ };
2628
+ const proxyViewTourText$1 = {
2629
+ source: "Displays the content blocks as a structured view.",
2630
+ translation: ""
2631
+ };
2632
+ const publishAndCloseLabel$1 = {
2633
+ source: "Publish & Close",
2634
+ translation: ""
2635
+ };
2636
+ const publishAndCloseLabelUnpublished$1 = {
2637
+ source: "Save & Close",
2638
+ translation: ""
2639
+ };
2439
2640
  const publishDescription$1 = {
2440
- source: "Make all changes public",
2641
+ source: "Publish all changes.",
2441
2642
  translation: "Rendre toutes les modifications publiques"
2442
2643
  };
2644
+ const publishDescriptionUnpublished$1 = {
2645
+ source: "Save all changes while keeping page unpublished",
2646
+ translation: ""
2647
+ };
2443
2648
  const publishError$1 = {
2444
2649
  source: "Changes could not be published.",
2445
2650
  translation: "Les modifications n’ont pas pu être publiées."
@@ -2448,6 +2653,10 @@ const publishLabel$1 = {
2448
2653
  source: "Publish",
2449
2654
  translation: "Publier"
2450
2655
  };
2656
+ const publishLabelUnpublished$1 = {
2657
+ source: "Save",
2658
+ translation: ""
2659
+ };
2451
2660
  const publishSuccess$1 = {
2452
2661
  source: "Changes published successfully.",
2453
2662
  translation: "Modifications publiées avec succès."
@@ -2524,6 +2733,10 @@ const settingsAppearance$1 = {
2524
2733
  source: "Appearance",
2525
2734
  translation: ""
2526
2735
  };
2736
+ const settingsArtboard$1 = {
2737
+ source: "Artboard",
2738
+ translation: ""
2739
+ };
2527
2740
  const settingsBehaviour$1 = {
2528
2741
  source: "Behaviour",
2529
2742
  translation: "Comportement"
@@ -2689,6 +2902,10 @@ const fr = {
2689
2902
  addListTourText: addListTourText$1,
2690
2903
  all: all$1,
2691
2904
  artboard: artboard$1,
2905
+ artboardOverviewHide: artboardOverviewHide$1,
2906
+ artboardOverviewShow: artboardOverviewShow$1,
2907
+ artboardOverviewToggle: artboardOverviewToggle$1,
2908
+ artboardOverviewTourText: artboardOverviewTourText$1,
2692
2909
  artboardResetZoom: artboardResetZoom$1,
2693
2910
  artboardScaleToFit: artboardScaleToFit$1,
2694
2911
  artboardScrollDown: artboardScrollDown$1,
@@ -2708,6 +2925,8 @@ const fr = {
2708
2925
  assistantPromptPlaceholder: assistantPromptPlaceholder$1,
2709
2926
  blockAddListTourText: blockAddListTourText$1,
2710
2927
  blockAddListTourTitle: blockAddListTourTitle$1,
2928
+ blockOption_bkHiddenGlobally_label: blockOption_bkHiddenGlobally_label$1,
2929
+ blockOption_bkVisibleLanguages_label: blockOption_bkVisibleLanguages_label$1,
2711
2930
  cancel: cancel$1,
2712
2931
  clipboard: clipboard$1,
2713
2932
  clipboardCopyShortcutHelp: clipboardCopyShortcutHelp$1,
@@ -2791,6 +3010,7 @@ const fr = {
2791
3010
  source: "Vertical",
2792
3011
  translation: ""
2793
3012
  },
3013
+ feature_artboard_setting_momentum_label: feature_artboard_setting_momentum_label$1,
2794
3014
  feature_artboard_setting_persist_label: feature_artboard_setting_persist_label$1,
2795
3015
  feature_artboard_setting_scrollSpeed_label: feature_artboard_setting_scrollSpeed_label$1,
2796
3016
  "feature_block-add-list_setting_hideDisabledBlocks_label": {
@@ -2803,6 +3023,7 @@ const fr = {
2803
3023
  source: "Show import dialog at start when page is empty",
2804
3024
  translation: ""
2805
3025
  },
3026
+ feature_publish_setting_closeAfterPublish_label: feature_publish_setting_closeAfterPublish_label$1,
2806
3027
  feature_settings_setting_lowPerformanceMode_label: feature_settings_setting_lowPerformanceMode_label$1,
2807
3028
  feature_settings_setting_resetAllSettings_label: feature_settings_setting_resetAllSettings_label$1,
2808
3029
  feature_settings_setting_useAnimations_label: feature_settings_setting_useAnimations_label$1,
@@ -2871,6 +3092,7 @@ const fr = {
2871
3092
  mediaLibraryReplaceMedia: mediaLibraryReplaceMedia$1,
2872
3093
  mediaLibraryTourText: mediaLibraryTourText$1,
2873
3094
  multipleItemsLabel: multipleItemsLabel$1,
3095
+ optionBkVisibleLanguagesAll: optionBkVisibleLanguagesAll$1,
2874
3096
  "optionsCommand.selectCheckboxValue": {
2875
3097
  source: "Select \"@value\" in \"@option\"",
2876
3098
  translation: ""
@@ -2897,9 +3119,17 @@ const fr = {
2897
3119
  previewQrCodeText: previewQrCodeText$1,
2898
3120
  previewWithSmartphone: previewWithSmartphone$1,
2899
3121
  previewWithSmartphoneTourText: previewWithSmartphoneTourText$1,
3122
+ proxyViewHide: proxyViewHide$1,
3123
+ proxyViewShow: proxyViewShow$1,
3124
+ proxyViewToggle: proxyViewToggle$1,
3125
+ proxyViewTourText: proxyViewTourText$1,
3126
+ publishAndCloseLabel: publishAndCloseLabel$1,
3127
+ publishAndCloseLabelUnpublished: publishAndCloseLabelUnpublished$1,
2900
3128
  publishDescription: publishDescription$1,
3129
+ publishDescriptionUnpublished: publishDescriptionUnpublished$1,
2901
3130
  publishError: publishError$1,
2902
3131
  publishLabel: publishLabel$1,
3132
+ publishLabelUnpublished: publishLabelUnpublished$1,
2903
3133
  publishSuccess: publishSuccess$1,
2904
3134
  responsivePreviewCustomViewport: responsivePreviewCustomViewport$1,
2905
3135
  responsivePreviewTitle: responsivePreviewTitle$1,
@@ -2919,6 +3149,7 @@ const fr = {
2919
3149
  searchTourText: searchTourText$1,
2920
3150
  settingsAdvanced: settingsAdvanced$1,
2921
3151
  settingsAppearance: settingsAppearance$1,
3152
+ settingsArtboard: settingsArtboard$1,
2922
3153
  settingsBehaviour: settingsBehaviour$1,
2923
3154
  settingsDialogTitle: settingsDialogTitle$1,
2924
3155
  settingsMenuDescription: settingsMenuDescription$1,
@@ -2997,6 +3228,22 @@ const artboard = {
2997
3228
  source: "Artboard",
2998
3229
  translation: ""
2999
3230
  };
3231
+ const artboardOverviewHide = {
3232
+ source: "Hide overview",
3233
+ translation: ""
3234
+ };
3235
+ const artboardOverviewShow = {
3236
+ source: "Show overview",
3237
+ translation: ""
3238
+ };
3239
+ const artboardOverviewToggle = {
3240
+ source: "Toggle overview",
3241
+ translation: ""
3242
+ };
3243
+ const artboardOverviewTourText = {
3244
+ source: "Displays a top level overview of your content.",
3245
+ translation: ""
3246
+ };
3000
3247
  const artboardResetZoom = {
3001
3248
  source: "Reset zoom",
3002
3249
  translation: ""
@@ -3073,6 +3320,14 @@ const blockAddListTourTitle = {
3073
3320
  source: "Favorite blocks",
3074
3321
  translation: ""
3075
3322
  };
3323
+ const blockOption_bkHiddenGlobally_label = {
3324
+ source: "Hide globally",
3325
+ translation: ""
3326
+ };
3327
+ const blockOption_bkVisibleLanguages_label = {
3328
+ source: "Visible languages",
3329
+ translation: ""
3330
+ };
3076
3331
  const cancel = {
3077
3332
  source: "Cancel",
3078
3333
  translation: "Annulla"
@@ -3245,6 +3500,10 @@ const featureHelpTitle = {
3245
3500
  source: "Help",
3246
3501
  translation: ""
3247
3502
  };
3503
+ const feature_artboard_setting_momentum_label = {
3504
+ source: "Use smooth scrolling",
3505
+ translation: ""
3506
+ };
3248
3507
  const feature_artboard_setting_persist_label = {
3249
3508
  source: "Persist position and zoom",
3250
3509
  translation: ""
@@ -3261,6 +3520,10 @@ const feature_history_setting_useMouseButtons_label = {
3261
3520
  source: "Use mouse buttons for undo/redo",
3262
3521
  translation: ""
3263
3522
  };
3523
+ const feature_publish_setting_closeAfterPublish_label = {
3524
+ source: "Close editor after publishing",
3525
+ translation: ""
3526
+ };
3264
3527
  const feature_settings_setting_lowPerformanceMode_label = {
3265
3528
  source: "Enable low performance mode",
3266
3529
  translation: ""
@@ -3533,6 +3796,10 @@ const multipleItemsLabel = {
3533
3796
  source: "Items",
3534
3797
  translation: "Elementi"
3535
3798
  };
3799
+ const optionBkVisibleLanguagesAll = {
3800
+ source: "All languages",
3801
+ translation: ""
3802
+ };
3536
3803
  const ownershipError = {
3537
3804
  source: "Error in assigning",
3538
3805
  translation: "Errore nell'assegnazione"
@@ -3589,10 +3856,38 @@ const previewWithSmartphoneTourText = {
3589
3856
  source: "Shows a QR code to quickly open a preview of the changes with your smartphone.",
3590
3857
  translation: ""
3591
3858
  };
3859
+ const proxyViewHide = {
3860
+ source: "Show content preview",
3861
+ translation: ""
3862
+ };
3863
+ const proxyViewShow = {
3864
+ source: "Show structure view",
3865
+ translation: ""
3866
+ };
3867
+ const proxyViewToggle = {
3868
+ source: "Toggle structure view",
3869
+ translation: ""
3870
+ };
3871
+ const proxyViewTourText = {
3872
+ source: "Displays the content blocks as a structured view.",
3873
+ translation: ""
3874
+ };
3875
+ const publishAndCloseLabel = {
3876
+ source: "Publish & Close",
3877
+ translation: ""
3878
+ };
3879
+ const publishAndCloseLabelUnpublished = {
3880
+ source: "Save & Close",
3881
+ translation: ""
3882
+ };
3592
3883
  const publishDescription = {
3593
- source: "Make all changes public",
3884
+ source: "Publish all changes.",
3594
3885
  translation: "Rendi pubbliche tutte le modifiche"
3595
3886
  };
3887
+ const publishDescriptionUnpublished = {
3888
+ source: "Save all changes while keeping page unpublished",
3889
+ translation: ""
3890
+ };
3596
3891
  const publishError = {
3597
3892
  source: "Changes could not be published.",
3598
3893
  translation: "Le modifiche non possono essere pubblicate."
@@ -3601,6 +3896,10 @@ const publishLabel = {
3601
3896
  source: "Publish",
3602
3897
  translation: "Pubblica"
3603
3898
  };
3899
+ const publishLabelUnpublished = {
3900
+ source: "Save",
3901
+ translation: ""
3902
+ };
3604
3903
  const publishSuccess = {
3605
3904
  source: "Changes published successfully.",
3606
3905
  translation: "Modifiche pubblicate con successo."
@@ -3677,6 +3976,10 @@ const settingsAppearance = {
3677
3976
  source: "Appearance",
3678
3977
  translation: ""
3679
3978
  };
3979
+ const settingsArtboard = {
3980
+ source: "Artboard",
3981
+ translation: ""
3982
+ };
3680
3983
  const settingsBehaviour = {
3681
3984
  source: "Behaviour",
3682
3985
  translation: "Comportamento"
@@ -3842,6 +4145,10 @@ const it = {
3842
4145
  addListTourText: addListTourText,
3843
4146
  all: all,
3844
4147
  artboard: artboard,
4148
+ artboardOverviewHide: artboardOverviewHide,
4149
+ artboardOverviewShow: artboardOverviewShow,
4150
+ artboardOverviewToggle: artboardOverviewToggle,
4151
+ artboardOverviewTourText: artboardOverviewTourText,
3845
4152
  artboardResetZoom: artboardResetZoom,
3846
4153
  artboardScaleToFit: artboardScaleToFit,
3847
4154
  artboardScrollDown: artboardScrollDown,
@@ -3861,6 +4168,8 @@ const it = {
3861
4168
  assistantPromptPlaceholder: assistantPromptPlaceholder,
3862
4169
  blockAddListTourText: blockAddListTourText,
3863
4170
  blockAddListTourTitle: blockAddListTourTitle,
4171
+ blockOption_bkHiddenGlobally_label: blockOption_bkHiddenGlobally_label,
4172
+ blockOption_bkVisibleLanguages_label: blockOption_bkVisibleLanguages_label,
3864
4173
  cancel: cancel,
3865
4174
  clipboard: clipboard,
3866
4175
  clipboardCopyShortcutHelp: clipboardCopyShortcutHelp,
@@ -3944,6 +4253,7 @@ const it = {
3944
4253
  source: "Vertical",
3945
4254
  translation: ""
3946
4255
  },
4256
+ feature_artboard_setting_momentum_label: feature_artboard_setting_momentum_label,
3947
4257
  feature_artboard_setting_persist_label: feature_artboard_setting_persist_label,
3948
4258
  feature_artboard_setting_scrollSpeed_label: feature_artboard_setting_scrollSpeed_label,
3949
4259
  "feature_block-add-list_setting_hideDisabledBlocks_label": {
@@ -3956,6 +4266,7 @@ const it = {
3956
4266
  source: "Show import dialog at start when page is empty",
3957
4267
  translation: ""
3958
4268
  },
4269
+ feature_publish_setting_closeAfterPublish_label: feature_publish_setting_closeAfterPublish_label,
3959
4270
  feature_settings_setting_lowPerformanceMode_label: feature_settings_setting_lowPerformanceMode_label,
3960
4271
  feature_settings_setting_resetAllSettings_label: feature_settings_setting_resetAllSettings_label,
3961
4272
  feature_settings_setting_useAnimations_label: feature_settings_setting_useAnimations_label,
@@ -4024,6 +4335,7 @@ const it = {
4024
4335
  mediaLibraryReplaceMedia: mediaLibraryReplaceMedia,
4025
4336
  mediaLibraryTourText: mediaLibraryTourText,
4026
4337
  multipleItemsLabel: multipleItemsLabel,
4338
+ optionBkVisibleLanguagesAll: optionBkVisibleLanguagesAll,
4027
4339
  "optionsCommand.selectCheckboxValue": {
4028
4340
  source: "Select \"@value\" in \"@option\"",
4029
4341
  translation: ""
@@ -4050,9 +4362,17 @@ const it = {
4050
4362
  previewQrCodeText: previewQrCodeText,
4051
4363
  previewWithSmartphone: previewWithSmartphone,
4052
4364
  previewWithSmartphoneTourText: previewWithSmartphoneTourText,
4365
+ proxyViewHide: proxyViewHide,
4366
+ proxyViewShow: proxyViewShow,
4367
+ proxyViewToggle: proxyViewToggle,
4368
+ proxyViewTourText: proxyViewTourText,
4369
+ publishAndCloseLabel: publishAndCloseLabel,
4370
+ publishAndCloseLabelUnpublished: publishAndCloseLabelUnpublished,
4053
4371
  publishDescription: publishDescription,
4372
+ publishDescriptionUnpublished: publishDescriptionUnpublished,
4054
4373
  publishError: publishError,
4055
4374
  publishLabel: publishLabel,
4375
+ publishLabelUnpublished: publishLabelUnpublished,
4056
4376
  publishSuccess: publishSuccess,
4057
4377
  responsivePreviewCustomViewport: responsivePreviewCustomViewport,
4058
4378
  responsivePreviewTitle: responsivePreviewTitle,
@@ -4072,6 +4392,7 @@ const it = {
4072
4392
  searchTourText: searchTourText,
4073
4393
  settingsAdvanced: settingsAdvanced,
4074
4394
  settingsAppearance: settingsAppearance,
4395
+ settingsArtboard: settingsArtboard,
4075
4396
  settingsBehaviour: settingsBehaviour,
4076
4397
  settingsDialogTitle: settingsDialogTitle,
4077
4398
  settingsMenuDescription: settingsMenuDescription,
@@ -4984,7 +5305,19 @@ const module = defineNuxtModule({
4984
5305
  },
4985
5306
  defaults: {
4986
5307
  pattern: ["components/Blokkli/**/*.{js,ts,vue}"],
4987
- globalOptions: {},
5308
+ globalOptions: {
5309
+ [BK_VISIBLE_LANGUAGES]: {
5310
+ type: "checkboxes",
5311
+ label: "Visible languages",
5312
+ options: {},
5313
+ default: []
5314
+ },
5315
+ [BK_HIDDEN_GLOBALLY]: {
5316
+ type: "checkbox",
5317
+ label: "Hide globally",
5318
+ default: false
5319
+ }
5320
+ },
4988
5321
  chunkNames: ["global"],
4989
5322
  itemEntityType: "block"
4990
5323
  },