@vcmap/ui 6.1.13 → 6.2.0-rc.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (169) hide show
  1. package/build/build.js +2 -2
  2. package/build/buildHelpers.js +2 -3
  3. package/build/buildTypes.js +1 -1
  4. package/build/commonViteConfig.js +0 -1
  5. package/build/lintTypes.js +1 -1
  6. package/config/dev.config.json +4 -0
  7. package/dist/assets/cesium.js +1 -1
  8. package/dist/assets/{core-171d1d84.js → core-de8e51b5.js} +2 -2
  9. package/dist/assets/core.js +1 -1
  10. package/dist/assets/ol.js +1 -1
  11. package/dist/assets/ui-4f308e45.css +1 -0
  12. package/dist/assets/{ui-78b0084c.js → ui-4f308e45.js} +9084 -8706
  13. package/dist/assets/ui.js +1 -1
  14. package/dist/assets/vue.js +1 -1
  15. package/dist/assets/{vuetify-d26d8a53.js → vuetify-99195777.js} +1 -1
  16. package/dist/assets/vuetify.js +1 -1
  17. package/index.d.ts +4 -0
  18. package/index.js +5 -0
  19. package/package.json +4 -46
  20. package/plugins/@vcmap-show-case/category-tester/src/CategoriesExample.vue +2 -3
  21. package/plugins/@vcmap-show-case/form-inputs-example/src/FormInputsExample.vue +0 -1
  22. package/plugins/@vcmap-show-case/form-inputs-example/src/index.js +3 -3
  23. package/plugins/@vcmap-show-case/hello-world/src/helloWorld.vue +6 -6
  24. package/plugins/@vcmap-show-case/hello-world/src/index.js +0 -6
  25. package/plugins/@vcmap-show-case/hello-world/tests/helloWorld.spec.js +1 -1
  26. package/plugins/@vcmap-show-case/panel-tester/src/IframePanelExample.vue +1 -1
  27. package/plugins/@vcmap-show-case/panel-tester/src/ImgPanelExample.vue +1 -1
  28. package/plugins/@vcmap-show-case/panel-tester/src/PanelExample.vue +1 -1
  29. package/plugins/@vcmap-show-case/panel-tester/src/TextPanelExample.vue +1 -1
  30. package/plugins/@vcmap-show-case/project-selector/src/ModulesListComponent.vue +1 -0
  31. package/plugins/@vcmap-show-case/toolbox-example/src/TriStateExampleWindow.vue +1 -1
  32. package/plugins/@vcmap-show-case/window-tester/src/EmptyComponent.vue +5 -5
  33. package/plugins/@vcmap-show-case/window-tester/src/MyCustomHeader.vue +1 -0
  34. package/plugins/@vcmap-show-case/window-tester/src/WindowExample.vue +1 -1
  35. package/plugins/@vcmap-show-case/window-tester/src/WindowExampleContent.vue +1 -1
  36. package/plugins/@vcmap-show-case/window-tester/src/WindowExampleToggleChild.vue +1 -1
  37. package/src/application/MapsGroupMobileMenu.vue +6 -5
  38. package/src/application/MapsGroupMobileMenu.vue.d.ts +3 -1
  39. package/src/application/VcsApp.vue +36 -46
  40. package/src/application/VcsApp.vue.d.ts +19 -45
  41. package/src/application/VcsAppWrapper.vue +4 -4
  42. package/src/application/VcsAttributions.vue +12 -12
  43. package/src/application/VcsAttributionsFooter.vue +27 -27
  44. package/src/application/VcsContainer.vue +50 -51
  45. package/src/application/VcsContainer.vue.d.ts +14 -2
  46. package/src/application/VcsMainMap.vue +2 -2
  47. package/src/application/VcsMap.vue +16 -16
  48. package/src/application/VcsNavbar.vue +17 -15
  49. package/src/application/VcsNavbarMobile.vue +15 -15
  50. package/src/application/VcsObliqueFooter.vue +10 -9
  51. package/src/application/VcsPositionDisplay.vue +8 -8
  52. package/src/application/VcsTextPage.vue +10 -10
  53. package/src/application/VcsTextPageFooter.vue +9 -9
  54. package/src/application/uiConfigHelper.d.ts +6 -0
  55. package/src/application/uiConfigHelper.js +19 -0
  56. package/src/callback/stopRotationCallback.js +0 -1
  57. package/src/callback/toggleToolbarButtonCallback.d.ts +48 -0
  58. package/src/callback/toggleToolbarButtonCallback.js +115 -0
  59. package/src/components/attrsHelpers.js +1 -1
  60. package/src/components/buttons/VcsActionButtonList.vue +5 -5
  61. package/src/components/buttons/VcsButton.vue +26 -26
  62. package/src/components/buttons/VcsFormButton.vue +31 -31
  63. package/src/components/buttons/VcsToolButton.vue +29 -29
  64. package/src/components/extent/VcsExtent.vue +1 -1
  65. package/src/components/extent/VcsExtentEditor.vue +1 -1
  66. package/src/components/flight/VcsFlightAnchorsComponent.vue +2 -2
  67. package/src/components/flight/VcsFlightAnchorsComponent.vue.d.ts +1 -4
  68. package/src/components/flight/VcsFlightEditor.vue +1 -0
  69. package/src/components/flight/VcsFlightEditor.vue.d.ts +4 -2
  70. package/src/components/flight/VcsFlightPlayer.vue +1 -1
  71. package/src/components/form-inputs-controls/VcsCheckbox.vue +23 -23
  72. package/src/components/form-inputs-controls/VcsChipArrayInput.vue +20 -20
  73. package/src/components/form-inputs-controls/VcsCoordinate.vue +3 -3
  74. package/src/components/form-inputs-controls/VcsDatePicker.vue +7 -7
  75. package/src/components/form-inputs-controls/VcsFileInput.vue +14 -14
  76. package/src/components/form-inputs-controls/VcsLabel.vue +26 -26
  77. package/src/components/form-inputs-controls/VcsRadio.vue +27 -27
  78. package/src/components/form-inputs-controls/VcsSelect.vue +78 -78
  79. package/src/components/form-inputs-controls/VcsSlider.vue +43 -43
  80. package/src/components/form-inputs-controls/VcsTextArea.vue +47 -47
  81. package/src/components/form-inputs-controls/VcsTextField.vue +4 -4
  82. package/src/components/form-inputs-controls/VcsWizard.vue +4 -4
  83. package/src/components/form-output/VcsFormattedNumber.vue +11 -11
  84. package/src/components/form-output/VcsMarkdown.vue +23 -22
  85. package/src/components/form-output/markdownHelper.js +1 -1
  86. package/src/components/import/VcsImportComponent.vue +1 -0
  87. package/src/components/import/VcsImportComponent.vue.d.ts +4 -2
  88. package/src/components/lists/VcsActionList.vue +14 -14
  89. package/src/components/lists/VcsList.vue +24 -20
  90. package/src/components/lists/VcsList.vue.d.ts +4 -6
  91. package/src/components/lists/VcsListItemComponent.vue +28 -8
  92. package/src/components/lists/VcsTreeNode.vue +138 -38
  93. package/src/components/lists/VcsTreeview.vue +65 -23
  94. package/src/components/lists/VcsTreeview.vue.d.ts +34 -9
  95. package/src/components/lists/VcsTreeviewSearchbar.vue +50 -50
  96. package/src/components/lists/VcsTreeviewTitle.vue +13 -13
  97. package/src/components/lists/dragHelper.d.ts +118 -0
  98. package/src/components/lists/dragHelper.js +325 -0
  99. package/src/components/lists/listHelper.d.ts +3 -2
  100. package/src/components/lists/listHelper.js +8 -1
  101. package/src/components/notification/VcsBadge.vue +12 -12
  102. package/src/components/notification/VcsHelp.vue +9 -9
  103. package/src/components/notification/VcsHelpTooltip.vue +1 -1
  104. package/src/components/style/StyleMenuWrapper.vue +1 -1
  105. package/src/components/tables/VcsDataTable.vue +3 -2
  106. package/src/components/tables/VcsDataTable.vue.d.ts +4 -2
  107. package/src/components/vector-properties/VcsFeatureEditingWindow.vue +1 -1
  108. package/src/components/vector-properties/VcsFeatureTransforms.vue +1 -1
  109. package/src/components/vector-properties/VcsVectorPropertiesComponent.vue +1 -1
  110. package/src/components/viewpoint/VcsViewpointEditor.vue +1 -0
  111. package/src/components/viewpoint/VcsViewpointEditor.vue.d.ts +4 -2
  112. package/src/contentTree/LayerSwap.vue +149 -0
  113. package/src/contentTree/LayerSwap.vue.d.ts +27 -0
  114. package/src/contentTree/LayerTree.vue +53 -3
  115. package/src/contentTree/LayerTree.vue.d.ts +3 -0
  116. package/src/contentTree/contentTreeCollection.js +0 -1
  117. package/src/i18n/de.d.ts +63 -55
  118. package/src/i18n/de.js +5 -0
  119. package/src/i18n/en.d.ts +63 -55
  120. package/src/i18n/en.js +5 -0
  121. package/src/init.js +1 -1
  122. package/src/manager/collectionManager/CollectionComponent.vue +1 -1
  123. package/src/manager/collectionManager/CollectionComponentContent.vue +2 -2
  124. package/src/manager/collectionManager/CollectionComponentContent.vue.d.ts +1 -4
  125. package/src/manager/collectionManager/CollectionComponentList.vue +14 -13
  126. package/src/manager/collectionManager/CollectionComponentList.vue.d.ts +3 -7
  127. package/src/manager/collectionManager/CollectionComponentStandalone.vue +2 -2
  128. package/src/manager/collectionManager/CollectionManager.vue +2 -2
  129. package/src/manager/panel/PanelComponent.vue +40 -39
  130. package/src/manager/panel/PanelComponent.vue.d.ts +4 -2
  131. package/src/manager/panel/PanelManagerComponent.vue +13 -13
  132. package/src/manager/panel/PanelManagerComponent.vue.d.ts +4 -2
  133. package/src/manager/panel/panelHelper.js +19 -21
  134. package/src/manager/toolbox/GroupToolboxComponent.vue +9 -8
  135. package/src/manager/toolbox/GroupToolboxComponent.vue.d.ts +5 -2
  136. package/src/manager/toolbox/SelectToolboxComponent.vue +9 -8
  137. package/src/manager/toolbox/SelectToolboxComponent.vue.d.ts +5 -2
  138. package/src/manager/toolbox/ToolboxManagerComponent.vue +23 -23
  139. package/src/manager/window/WindowComponent.vue +12 -12
  140. package/src/manager/window/WindowComponent.vue.d.ts +7 -4
  141. package/src/manager/window/WindowComponentHeader.vue +24 -24
  142. package/src/manager/window/WindowComponentHeader.vue.d.ts +7 -4
  143. package/src/manager/window/WindowManager.vue +41 -41
  144. package/src/navigation/MapNavCompass.vue +4 -3
  145. package/src/navigation/MapNavCompass.vue.d.ts +4 -2
  146. package/src/navigation/ObliqueRotation.vue +1 -0
  147. package/src/navigation/ObliqueRotation.vue.d.ts +4 -2
  148. package/src/navigation/OrientationToolsButton.vue +1 -1
  149. package/src/navigation/TiltSlider.vue +35 -35
  150. package/src/navigation/VcsCompass.vue +18 -13
  151. package/src/navigation/VcsCompass.vue.d.ts +6 -2
  152. package/src/navigation/VcsZoomButton.vue +1 -0
  153. package/src/navigation/VcsZoomButton.vue.d.ts +5 -2
  154. package/src/navigation/locatorHelper.js +1 -1
  155. package/src/notifier/NotifierComponent.vue +1 -1
  156. package/src/pluginHelper.js +2 -1
  157. package/src/search/ResultItem.vue +1 -0
  158. package/src/search/SearchComponent.vue +35 -35
  159. package/src/search/markText.js +2 -2
  160. package/src/state.d.ts +12 -1
  161. package/src/state.js +59 -4
  162. package/src/uiConfig.d.ts +30 -3
  163. package/src/uiConfig.js +4 -1
  164. package/src/vcsUiApp.js +20 -0
  165. package/dist/assets/ui-78b0084c.css +0 -1
  166. /package/dist/assets/{cesium-76fff1d7.js → cesium-ac6c193a.js} +0 -0
  167. /package/dist/assets/{ol-76b9c9e3.js → ol-94c57f2e.js} +0 -0
  168. /package/dist/assets/{vue-859ae1f4.js → vue-62303c82.js} +0 -0
  169. /package/dist/assets/{vuetify-d26d8a53.css → vuetify-99195777.css} +0 -0
package/src/i18n/en.d.ts CHANGED
@@ -154,6 +154,13 @@ declare namespace messages {
154
154
  let title_6: string;
155
155
  export { title_6 as title };
156
156
  }
157
+ export namespace layerRenderOrder {
158
+ let name_1: string;
159
+ export { name_1 as name };
160
+ let title_7: string;
161
+ export { title_7 as title };
162
+ export let help: string;
163
+ }
157
164
  }
158
165
  export namespace navigation {
159
166
  let rotateButton: string;
@@ -178,13 +185,13 @@ declare namespace messages {
178
185
  }
179
186
  namespace obliqueFallback {
180
187
  export let message: string;
181
- let title_7: string;
182
- export { title_7 as title };
188
+ let title_8: string;
189
+ export { title_8 as title };
183
190
  }
184
191
  }
185
192
  export namespace categoryManager {
186
- let title_8: string;
187
- export { title_8 as title };
193
+ let title_9: string;
194
+ export { title_9 as title };
188
195
  let tooltip_2: string;
189
196
  export { tooltip_2 as tooltip };
190
197
  }
@@ -211,7 +218,8 @@ declare namespace messages {
211
218
  }
212
219
  export { _import as import };
213
220
  export namespace vcsFormSection {
214
- let help: string;
221
+ let help_1: string;
222
+ export { help_1 as help };
215
223
  }
216
224
  export namespace vcsTable {
217
225
  let key: string;
@@ -259,10 +267,10 @@ declare namespace messages {
259
267
  }
260
268
  export namespace flight {
261
269
  export let general: string;
262
- let name_1: string;
263
- export { name_1 as name };
264
- let title_9: string;
265
- export { title_9 as title };
270
+ let name_2: string;
271
+ export { name_2 as name };
272
+ let title_10: string;
273
+ export { title_10 as title };
266
274
  export let titlePlaceholder: string;
267
275
  export let interpolation: string;
268
276
  export let duration: string;
@@ -283,21 +291,21 @@ declare namespace messages {
283
291
  export let exportPath: string;
284
292
  }
285
293
  export namespace splashScreen {
286
- let name_2: string;
287
- export { name_2 as name };
294
+ let name_3: string;
295
+ export { name_3 as name };
288
296
  export let checkBoxText: string;
289
297
  export let buttonTitle: string;
290
298
  export let dontShowAgain: string;
291
299
  }
292
300
  export namespace customScreen {
293
- let name_3: string;
294
- export { name_3 as name };
295
- }
296
- export namespace viewpoint {
297
301
  let name_4: string;
298
302
  export { name_4 as name };
299
- let title_10: string;
300
- export { title_10 as title };
303
+ }
304
+ export namespace viewpoint {
305
+ let name_5: string;
306
+ export { name_5 as name };
307
+ let title_11: string;
308
+ export { title_11 as title };
301
309
  let titlePlaceholder_1: string;
302
310
  export { titlePlaceholder_1 as titlePlaceholder };
303
311
  export let groundPosition: string;
@@ -322,8 +330,8 @@ declare namespace messages {
322
330
  let outOfRange: string;
323
331
  }
324
332
  export namespace extent {
325
- let title_11: string;
326
- export { title_11 as title };
333
+ let title_12: string;
334
+ export { title_12 as title };
327
335
  export let projection: string;
328
336
  export let min: string;
329
337
  export let max: string;
@@ -338,8 +346,8 @@ declare namespace messages {
338
346
  export let toggle: string;
339
347
  }
340
348
  export namespace projection_1 {
341
- let title_12: string;
342
- export { title_12 as title };
349
+ let title_13: string;
350
+ export { title_13 as title };
343
351
  export let epsg: string;
344
352
  export let proj4: string;
345
353
  export let proj4Tooltip: string;
@@ -367,10 +375,10 @@ declare namespace messages {
367
375
  export let modifyInfo: string;
368
376
  export let styleHeader: string;
369
377
  export namespace snapping {
370
- let title_13: string;
371
- export { title_13 as title };
372
- let help_1: string;
373
- export { help_1 as help };
378
+ let title_14: string;
379
+ export { title_14 as title };
380
+ let help_2: string;
381
+ export { help_2 as help };
374
382
  export let orthogonalTooltip: string;
375
383
  export let parallelTooltip: string;
376
384
  export let vertexTooltip: string;
@@ -411,7 +419,7 @@ declare namespace messages {
411
419
  export let extrudedHeight: string;
412
420
  export let skirt: string;
413
421
  export let modelScale: string;
414
- export namespace help_2 {
422
+ export namespace help_3 {
415
423
  let clampToGround_1: string;
416
424
  export { clampToGround_1 as clampToGround };
417
425
  let clampToTerrain_1: string;
@@ -427,7 +435,7 @@ declare namespace messages {
427
435
  let relativeTo3DTiles_1: string;
428
436
  export { relativeTo3DTiles_1 as relativeTo3DTiles };
429
437
  }
430
- export { help_2 as help };
438
+ export { help_3 as help };
431
439
  }
432
440
  export namespace validation {
433
441
  let allowedRange: string;
@@ -436,14 +444,14 @@ declare namespace messages {
436
444
  }
437
445
  }
438
446
  export namespace settings {
439
- let title_14: string;
440
- export { title_14 as title };
447
+ let title_15: string;
448
+ export { title_15 as title };
441
449
  let tooltip_3: string;
442
450
  export { tooltip_3 as tooltip };
443
451
  export let languageSelector: string;
444
452
  export namespace displayQuality {
445
- let title_15: string;
446
- export { title_15 as title };
453
+ let title_16: string;
454
+ export { title_16 as title };
447
455
  export namespace level {
448
456
  let low: string;
449
457
  let medium: string;
@@ -451,19 +459,19 @@ declare namespace messages {
451
459
  }
452
460
  }
453
461
  export namespace theme {
454
- let title_16: string;
455
- export { title_16 as title };
462
+ let title_17: string;
463
+ export { title_17 as title };
456
464
  export let dark: string;
457
465
  export let light: string;
458
466
  }
459
467
  }
460
- export namespace help_3 {
461
- let title_17: string;
462
- export { title_17 as title };
468
+ export namespace help_4 {
469
+ let title_18: string;
470
+ export { title_18 as title };
463
471
  let tooltip_4: string;
464
472
  export { tooltip_4 as tooltip };
465
473
  }
466
- export { help_3 as help };
474
+ export { help_4 as help };
467
475
  export namespace featureInfo {
468
476
  let activateToolTitle: string;
469
477
  let deactivateToolTitle: string;
@@ -475,15 +483,15 @@ declare namespace messages {
475
483
  export { empty_2 as empty };
476
484
  }
477
485
  namespace deepPicking {
478
- let title_18: string;
479
- export { title_18 as title };
486
+ let title_19: string;
487
+ export { title_19 as title };
480
488
  let headerTitle_1: string;
481
489
  export { headerTitle_1 as headerTitle };
482
490
  }
483
491
  }
484
492
  export namespace legend {
485
- let title_19: string;
486
- export { title_19 as title };
493
+ let title_20: string;
494
+ export { title_20 as title };
487
495
  let tooltip_5: string;
488
496
  export { tooltip_5 as tooltip };
489
497
  let empty_3: string;
@@ -492,8 +500,8 @@ declare namespace messages {
492
500
  export let defaultLabelText: string;
493
501
  }
494
502
  export namespace search_1 {
495
- let title_20: string;
496
- export { title_20 as title };
503
+ let title_21: string;
504
+ export { title_21 as title };
497
505
  let tooltip_6: string;
498
506
  export { tooltip_6 as tooltip };
499
507
  export let select: string;
@@ -505,38 +513,38 @@ declare namespace messages {
505
513
  }
506
514
  export { search_1 as search };
507
515
  export namespace toolbox {
508
- let title_21: string;
509
- export { title_21 as title };
516
+ let title_22: string;
517
+ export { title_22 as title };
510
518
  let flight_1: string;
511
519
  export { flight_1 as flight };
512
520
  export let miscellaneous: string;
513
521
  }
514
522
  export namespace footer {
515
- let title_22: string;
516
- export { title_22 as title };
523
+ let title_23: string;
524
+ export { title_23 as title };
517
525
  export namespace attributions {
518
- let title_23: string;
519
- export { title_23 as title };
526
+ let title_24: string;
527
+ export { title_24 as title };
520
528
  let tooltip_7: string;
521
529
  export { tooltip_7 as tooltip };
522
530
  let empty_4: string;
523
531
  export { empty_4 as empty };
524
532
  }
525
533
  export namespace imprint {
526
- let title_24: string;
527
- export { title_24 as title };
534
+ let title_25: string;
535
+ export { title_25 as title };
528
536
  let tooltip_8: string;
529
537
  export { tooltip_8 as tooltip };
530
538
  }
531
539
  export namespace dataProtection {
532
- let title_25: string;
533
- export { title_25 as title };
540
+ let title_26: string;
541
+ export { title_26 as title };
534
542
  let tooltip_9: string;
535
543
  export { tooltip_9 as tooltip };
536
544
  }
537
545
  export namespace positionDisplay {
538
- let title_26: string;
539
- export { title_26 as title };
546
+ let title_27: string;
547
+ export { title_27 as title };
540
548
  let projection_2: string;
541
549
  export { projection_2 as projection };
542
550
  }
package/src/i18n/en.js CHANGED
@@ -45,6 +45,11 @@ const messages = {
45
45
  name: 'Zoom to extent',
46
46
  title: 'Zoom to layer extent',
47
47
  },
48
+ layerRenderOrder: {
49
+ name: 'Rendering order',
50
+ title: 'Change rendering order of active layers',
51
+ help: 'Drag & drop items to change their rendering order. The last item in the tree will appear on top. Grouped items can only be swapped within the group. Please note that 3D content can come with configured rendering settings that have greater impact than the rendering order.',
52
+ },
48
53
  },
49
54
  navigation: {
50
55
  rotateButton: 'Rotate view',
package/src/init.js CHANGED
@@ -122,7 +122,7 @@ export async function initAppFromAppConfig(mountTarget, appUrl) {
122
122
  const modules = await Promise.all(
123
123
  appConfig.modules.map(createModuleFromObjectOrUrl),
124
124
  );
125
- // eslint-disable-next-line no-restricted-syntax
125
+
126
126
  for await (const module of modules) {
127
127
  if (module) {
128
128
  await app.addModule(module);
@@ -11,7 +11,7 @@
11
11
  </span>
12
12
  </template>
13
13
  <template #default>
14
- <CollectionComponentContent @openList="(id) => $emit('openList', id)" />
14
+ <CollectionComponentContent @open-list="(id) => $emit('openList', id)" />
15
15
  </template>
16
16
  </vcs-expansion-panel>
17
17
  </template>
@@ -75,8 +75,8 @@
75
75
  }
76
76
  return actions.value;
77
77
  }),
78
- move({ item, targetIndex }) {
79
- moveItem(collectionComponent, item, targetIndex);
78
+ move(event) {
79
+ moveItem(collectionComponent, event);
80
80
  },
81
81
  openCollectionComponentList() {
82
82
  emit('openList', collectionComponent.id);
@@ -8,10 +8,7 @@ declare const _default: import("vue").DefineComponent<{}, {
8
8
  overflowCount: any;
9
9
  limit: any;
10
10
  actions: import("vue").ComputedRef<any>;
11
- move({ item, targetIndex }: {
12
- item: any;
13
- targetIndex: any;
14
- }): void;
11
+ move(event: any): void;
15
12
  openCollectionComponentList(): void;
16
13
  }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "openList"[], "openList", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{}>> & {
17
14
  onOpenList?: ((...args: any[]) => any) | undefined;
@@ -48,19 +48,20 @@
48
48
  * New position is derived from a target item in the collection.
49
49
  * This ensures correct movement, if rendered list is only a subset of the collection.
50
50
  * @param {import("./collectionComponentClass.js").default<Object>} collectionComponent
51
- * @param {import("../../components/lists/VcsListItemComponent.vue").VcsListItem} item
52
- * @param {number} targetIndex
51
+ * @param {import("../../components/lists/dragHelper.js").ItemMovedEvent} event
53
52
  */
54
- export function moveItem(collectionComponent, item, targetIndex) {
53
+ export function moveItem(
54
+ collectionComponent,
55
+ { item, targetItem, position },
56
+ ) {
55
57
  const { collection } = collectionComponent;
56
58
  if (collection instanceof IndexedCollection) {
57
59
  const collectionItem = collection.getByKey(item.name);
58
60
  const keyProperty = collection.uniqueKey;
59
- const targetItem = collectionComponent.items.value[targetIndex];
60
61
  const targetIndexCol = [...collection].findIndex(
61
62
  (i) => i[keyProperty] === targetItem.name,
62
63
  );
63
- collection.moveTo(collectionItem, targetIndexCol);
64
+ collection.moveTo(collectionItem, targetIndexCol + position);
64
65
  }
65
66
  }
66
67
 
@@ -73,6 +74,12 @@
73
74
  */
74
75
  export default {
75
76
  name: 'CollectionComponentList',
77
+ components: {
78
+ VcsButton,
79
+ VcsActionButtonList,
80
+ VcsList,
81
+ VSheet,
82
+ },
76
83
  props: {
77
84
  showLessButton: {
78
85
  type: Boolean,
@@ -83,12 +90,6 @@
83
90
  default: false,
84
91
  },
85
92
  },
86
- components: {
87
- VcsButton,
88
- VcsActionButtonList,
89
- VcsList,
90
- VSheet,
91
- },
92
93
  emits: ['closeList'],
93
94
  setup(_props, { emit }) {
94
95
  /**
@@ -122,8 +123,8 @@
122
123
  }
123
124
  return actions.value;
124
125
  }),
125
- move({ item, targetIndex }) {
126
- moveItem(collectionComponent, item, targetIndex);
126
+ move(event) {
127
+ moveItem(collectionComponent, event);
127
128
  },
128
129
  closeList() {
129
130
  emit('closeList', collectionComponent.id);
@@ -3,10 +3,9 @@
3
3
  * New position is derived from a target item in the collection.
4
4
  * This ensures correct movement, if rendered list is only a subset of the collection.
5
5
  * @param {import("./collectionComponentClass.js").default<Object>} collectionComponent
6
- * @param {import("../../components/lists/VcsListItemComponent.vue").VcsListItem} item
7
- * @param {number} targetIndex
6
+ * @param {import("../../components/lists/dragHelper.js").ItemMovedEvent} event
8
7
  */
9
- export function moveItem(collectionComponent: import("./collectionComponentClass.js").default<Object>, item: import("../../components/lists/VcsListItemComponent.vue").VcsListItem, targetIndex: number): void;
8
+ export function moveItem(collectionComponent: import("./collectionComponentClass.js").default<Object>, { item, targetItem, position }: import("../../components/lists/dragHelper.js").ItemMovedEvent): void;
10
9
  declare const _default: import("vue").DefineComponent<{
11
10
  showLessButton: {
12
11
  type: BooleanConstructor;
@@ -26,10 +25,7 @@ declare const _default: import("vue").DefineComponent<{
26
25
  overflowCount: any;
27
26
  limit: any;
28
27
  actions: import("vue").ComputedRef<any>;
29
- move({ item, targetIndex }: {
30
- item: any;
31
- targetIndex: any;
32
- }): void;
28
+ move(event: any): void;
33
29
  closeList(): void;
34
30
  }, any, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "closeList"[], "closeList", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
35
31
  showLessButton: {
@@ -9,9 +9,9 @@
9
9
  <collection-component-list
10
10
  v-if="componentListView"
11
11
  hide-header
12
- @closeList="closeList"
12
+ @close-list="closeList"
13
13
  />
14
- <CollectionComponentContent v-else @openList="openList" />
14
+ <CollectionComponentContent v-else @open-list="openList" />
15
15
  </VcsFormSection>
16
16
  </template>
17
17
 
@@ -13,7 +13,7 @@
13
13
  :key="componentId"
14
14
  >
15
15
  <collection-component
16
- @openList="openList"
16
+ @open-list="openList"
17
17
  :open="panels.includes(index)"
18
18
  />
19
19
  </collection-component-provider>
@@ -22,7 +22,7 @@
22
22
  v-if="componentView"
23
23
  :component-id="componentView"
24
24
  >
25
- <collection-component-list @closeList="closeList" />
25
+ <collection-component-list @close-list="closeList" />
26
26
  </collection-component-provider>
27
27
  </v-container>
28
28
  </template>
@@ -17,45 +17,6 @@
17
17
  </div>
18
18
  </template>
19
19
 
20
- <style scoped lang="scss">
21
- .panel-component {
22
- padding: 0 4px;
23
- }
24
- .panel-component::after {
25
- content: '';
26
- position: absolute;
27
- background: rgb(var(--v-theme-surface-light));
28
- }
29
-
30
- .panel-component-left::after {
31
- width: 4px;
32
- top: 0;
33
- bottom: 0;
34
- right: 0;
35
- }
36
- .panel-component-left.resizable::after {
37
- cursor: ew-resize;
38
- }
39
- .panel-component-right::after {
40
- width: 4px;
41
- top: 0;
42
- bottom: 0;
43
- left: 0;
44
- }
45
- .panel-component-right.resizable::after {
46
- cursor: ew-resize;
47
- }
48
- .panel-component-bottom::after {
49
- left: 0;
50
- right: 0;
51
- top: 0;
52
- height: 4px;
53
- }
54
- .panel-component-bottom.resizable::after {
55
- cursor: n-resize;
56
- }
57
- </style>
58
-
59
20
  <script>
60
21
  import { computed, getCurrentInstance } from 'vue';
61
22
  import { PanelLocation } from './panelManager.js';
@@ -68,6 +29,7 @@
68
29
  required: true,
69
30
  },
70
31
  },
32
+ emits: ['resize'],
71
33
  setup(props, { emit }) {
72
34
  return {
73
35
  appIsDark: computed(() => {
@@ -101,3 +63,42 @@
101
63
  },
102
64
  };
103
65
  </script>
66
+
67
+ <style scoped lang="scss">
68
+ .panel-component {
69
+ padding: 0 4px;
70
+ }
71
+ .panel-component::after {
72
+ content: '';
73
+ position: absolute;
74
+ background: rgb(var(--v-theme-surface-light));
75
+ }
76
+
77
+ .panel-component-left::after {
78
+ width: 4px;
79
+ top: 0;
80
+ bottom: 0;
81
+ right: 0;
82
+ }
83
+ .panel-component-left.resizable::after {
84
+ cursor: ew-resize;
85
+ }
86
+ .panel-component-right::after {
87
+ width: 4px;
88
+ top: 0;
89
+ bottom: 0;
90
+ left: 0;
91
+ }
92
+ .panel-component-right.resizable::after {
93
+ cursor: ew-resize;
94
+ }
95
+ .panel-component-bottom::after {
96
+ left: 0;
97
+ right: 0;
98
+ top: 0;
99
+ height: 4px;
100
+ }
101
+ .panel-component-bottom.resizable::after {
102
+ cursor: n-resize;
103
+ }
104
+ </style>
@@ -10,10 +10,12 @@ declare const _default: import("vue").DefineComponent<{
10
10
  isBottom: import("vue").ComputedRef<boolean>;
11
11
  startResize(e: any): void;
12
12
  stopResize(): void;
13
- }, any, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
13
+ }, any, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "resize"[], "resize", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
14
14
  panelState: {
15
15
  type: ObjectConstructor;
16
16
  required: true;
17
17
  };
18
- }>>, {}, {}>;
18
+ }>> & {
19
+ onResize?: ((...args: any[]) => any) | undefined;
20
+ }, {}, {}>;
19
21
  export default _default;
@@ -31,19 +31,6 @@
31
31
  </div>
32
32
  </template>
33
33
 
34
- <style scoped lang="scss">
35
- .vcs-panel-frame {
36
- position: absolute;
37
- top: 0;
38
- left: 0;
39
- right: 0;
40
- bottom: 0;
41
- }
42
- .vcs-panel-border {
43
- padding: 5px;
44
- }
45
- </style>
46
-
47
34
  <script>
48
35
  import {
49
36
  computed,
@@ -229,3 +216,16 @@
229
216
  },
230
217
  };
231
218
  </script>
219
+
220
+ <style scoped lang="scss">
221
+ .vcs-panel-frame {
222
+ position: absolute;
223
+ top: 0;
224
+ left: 0;
225
+ right: 0;
226
+ bottom: 0;
227
+ }
228
+ .vcs-panel-border {
229
+ padding: 5px;
230
+ }
231
+ </style>
@@ -18,12 +18,14 @@ declare const _default: import("vue").DefineComponent<{}, {
18
18
  isBottom: import("vue").ComputedRef<boolean>;
19
19
  startResize(e: any): void;
20
20
  stopResize(): void;
21
- }, any, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
21
+ }, any, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "resize"[], "resize", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
22
22
  panelState: {
23
23
  type: ObjectConstructor;
24
24
  required: true;
25
25
  };
26
- }>>, {}, {}>) => PanelPosition | null;
26
+ }>> & {
27
+ onResize?: ((...args: any[]) => any) | undefined;
28
+ }, {}, {}>) => PanelPosition | null;
27
29
  getStyles: (id: string) => import("vue").ComputedRef<Object>;
28
30
  getState: (id: string) => PanelState;
29
31
  getProps: (id: string) => Object;
@@ -104,29 +104,27 @@ function getMaxWidth(main, side, targetSize) {
104
104
  */
105
105
  function handleSidePanel(key, panel, main, side, targetSize) {
106
106
  const toUpdate = {};
107
- if (panel.state.resizable) {
108
- const position = percentageFromPanelOptions(
109
- getPanelPosition(panel),
110
- targetSize,
111
- );
112
- if (side.maxWidth !== position.maxWidth) {
113
- position.maxWidth = side.maxWidth;
114
- toUpdate.maxWidth = `${side.maxWidth}%`;
115
- }
107
+ const position = percentageFromPanelOptions(
108
+ getPanelPosition(panel),
109
+ targetSize,
110
+ );
111
+ if (side.maxWidth !== position.maxWidth) {
112
+ position.maxWidth = side.maxWidth;
113
+ toUpdate.maxWidth = `${side.maxWidth}%`;
114
+ }
116
115
 
117
- const width = Math.max(
118
- position.minWidth,
119
- Math.min(position.width, position.maxWidth),
120
- );
121
- main.width -= width;
122
- main[key] = width;
116
+ const width = Math.max(
117
+ position.minWidth,
118
+ Math.min(position.width, position.maxWidth),
119
+ );
120
+ main.width -= width;
121
+ main[key] = width;
123
122
 
124
- if (width !== position.width) {
125
- toUpdate.width = `${width}%`;
126
- }
127
- if (position.height !== side.height) {
128
- toUpdate.height = `${side.height}%`;
129
- }
123
+ if (width !== position.width) {
124
+ toUpdate.width = `${width}%`;
125
+ }
126
+ if (position.height !== side.height) {
127
+ toUpdate.height = `${side.height}%`;
130
128
  }
131
129
  return toUpdate;
132
130
  }