@vcmap/ui 6.0.0-rc.2 → 6.0.0-rc.5

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 (278) hide show
  1. package/build/build.js +40 -60
  2. package/build/buildHelpers.js +62 -19
  3. package/build/bundle.js +1 -1
  4. package/build/info/conf.json +1 -1
  5. package/build/info/publish.js +25 -31
  6. package/build/lintTypes.js +5 -0
  7. package/config/base.config.json +2 -1
  8. package/config/dev.config.json +7 -1
  9. package/config/projects.config.json +2 -1
  10. package/config/splashscreen.config.json +45 -0
  11. package/config/www.config.json +25 -22
  12. package/dist/.htaccess +7 -0
  13. package/dist/assets/@mdi/font/README.md +25 -0
  14. package/dist/assets/@mdi/font/css/materialdesignicons.min-680621ca.css +3 -0
  15. package/dist/assets/@mdi/font/css/materialdesignicons.min.css.map +16 -0
  16. package/dist/assets/@mdi/font/fonts/materialdesignicons-webfont.woff2 +0 -0
  17. package/dist/assets/{cesium.0b750d.js → cesium-126f111a.js} +272 -385
  18. package/dist/assets/cesium.js +1 -1
  19. package/dist/assets/{core.cbf44a.js → core-1c8b8674.js} +2015 -2019
  20. package/dist/assets/core.js +1 -1
  21. package/dist/assets/{ol.86e93c.js → ol-27f9b3f3.js} +42521 -44394
  22. package/dist/assets/ol.js +1 -1
  23. package/dist/assets/ui-7214428e.css +1 -0
  24. package/dist/assets/{ui.7c276c.js → ui-7214428e.js} +13968 -13907
  25. package/dist/assets/ui.js +1 -1
  26. package/dist/assets/vue-c78a5f76.js +6083 -0
  27. package/dist/assets/vue.js +1 -1
  28. package/dist/assets/{vuetify.4d18fe.css → vuetify-88a2fabe.css} +2 -2
  29. package/dist/assets/{vuetify.4d18fe.js → vuetify-88a2fabe.js} +7793 -7940
  30. package/dist/assets/vuetify.js +1 -1
  31. package/dist/index.html +11 -10
  32. package/index.d.ts +11 -11
  33. package/index.html +5 -5
  34. package/index.js +9 -7
  35. package/lib/olLib.js +84 -23
  36. package/package.json +19 -19
  37. package/plugins/@vcmap-show-case/flight-component-example/src/FlightExample.vue +41 -1
  38. package/plugins/@vcmap-show-case/form-inputs-example/src/FormInputsExample.vue +71 -32
  39. package/plugins/@vcmap-show-case/form-inputs-example/src/exampleActions.js +7 -11
  40. package/plugins/@vcmap-show-case/form-inputs-example/src/index.js +2 -2
  41. package/plugins/@vcmap-show-case/list-example/src/ListExample.vue +21 -8
  42. package/plugins/@vcmap-show-case/project-selector/src/ModulesListComponent.vue +18 -11
  43. package/plugins/@vcmap-show-case/search-example/src/index.js +1 -0
  44. package/plugins/@vcmap-show-case/search-example/src/searchImpl.js +35 -5
  45. package/plugins/@vcmap-show-case/style-input-example/src/StyleExample.vue +29 -90
  46. package/plugins/@vcmap-show-case/toolbox-example/src/index.js +2 -1
  47. package/plugins/package.json +3 -23
  48. package/public/assets/@mdi/font/README.md +25 -0
  49. package/public/assets/@mdi/font/css/materialdesignicons.min.css +2 -2
  50. package/public/assets/@mdi/font/css/materialdesignicons.min.css.map +16 -0
  51. package/public/assets/@mdi/font/fonts/materialdesignicons-webfont.woff2 +0 -0
  52. package/src/actions/StyleSelector.vue +1 -1
  53. package/src/actions/actionHelper.js +33 -22
  54. package/src/actions/flightActions.js +5 -5
  55. package/src/actions/listActions.d.ts +4 -11
  56. package/src/actions/listActions.js +6 -22
  57. package/src/actions/stateRefAction.js +2 -2
  58. package/src/application/VcsApp.vue +147 -57
  59. package/src/application/VcsApp.vue.d.ts +298 -4
  60. package/src/application/VcsAttributions.vue +2 -13
  61. package/src/application/VcsAttributionsFooter.vue +10 -11
  62. package/src/application/VcsContainer.vue +26 -9
  63. package/src/application/VcsContainer.vue.d.ts +237 -0
  64. package/src/application/VcsMainMap.vue +7 -7
  65. package/src/application/VcsMainMap.vue.d.ts +2 -2
  66. package/src/application/VcsNavbar.vue +5 -1
  67. package/src/application/VcsPositionDisplay.vue +8 -23
  68. package/src/application/VcsPositionDisplay.vue.d.ts +0 -1
  69. package/src/application/VcsSettings.vue +10 -17
  70. package/src/application/VcsSplashScreen.vue +21 -40
  71. package/src/application/VcsSplashScreen.vue.d.ts +0 -2
  72. package/src/application/VcsTextPage.vue +12 -43
  73. package/src/application/VcsTextPage.vue.d.ts +4 -8
  74. package/src/application/VcsTextPageFooter.vue +23 -40
  75. package/src/components/buttons/VcsActionButtonList.vue +59 -3
  76. package/src/components/buttons/VcsActionButtonList.vue.d.ts +28 -0
  77. package/src/components/extent/VcsExtentEditor.vue +1 -1
  78. package/src/components/flight/VcsFlightAnchorsComponent.vue +63 -36
  79. package/src/components/flight/VcsFlightComponent.vue +16 -21
  80. package/src/components/flight/VcsFlightPlayer.vue +27 -5
  81. package/src/components/form-inputs-controls/VcsCheckbox.vue +9 -5
  82. package/src/components/form-inputs-controls/VcsChipArrayInput.vue +15 -13
  83. package/src/components/form-inputs-controls/VcsChipArrayInput.vue.d.ts +3 -4
  84. package/src/components/form-inputs-controls/VcsCoordinate.vue +17 -4
  85. package/src/components/form-inputs-controls/VcsCoordinate.vue.d.ts +5 -2
  86. package/src/components/form-inputs-controls/VcsDatePicker.vue +34 -60
  87. package/src/components/form-inputs-controls/VcsDatePicker.vue.d.ts +1 -63
  88. package/src/components/form-inputs-controls/VcsFileInput.vue +17 -18
  89. package/src/components/form-inputs-controls/VcsFileInput.vue.d.ts +1 -0
  90. package/src/components/form-inputs-controls/VcsLabel.vue +1 -1
  91. package/src/components/form-inputs-controls/VcsRadio.vue +17 -3
  92. package/src/components/form-inputs-controls/VcsRadio.vue.d.ts +1 -0
  93. package/src/components/form-inputs-controls/VcsSelect.vue +40 -31
  94. package/src/components/form-inputs-controls/VcsSelect.vue.d.ts +5 -2
  95. package/src/components/form-inputs-controls/VcsSlider.vue +13 -1
  96. package/src/components/form-inputs-controls/VcsSlider.vue.d.ts +1 -0
  97. package/src/components/form-inputs-controls/VcsTextArea.vue +27 -26
  98. package/src/components/form-inputs-controls/VcsTextArea.vue.d.ts +1 -0
  99. package/src/components/form-inputs-controls/VcsTextField.vue +20 -4
  100. package/src/components/form-inputs-controls/VcsTextField.vue.d.ts +9 -0
  101. package/src/components/form-inputs-controls/VcsWizardStep.vue +3 -6
  102. package/src/components/form-inputs-controls/vcsTextField.scss +9 -12
  103. package/src/components/form-output/VcsFormattedNumber.vue +21 -5
  104. package/src/components/form-output/VcsFormattedNumber.vue.d.ts +9 -0
  105. package/src/components/form-output/VcsMarkdown.vue +15 -12
  106. package/src/components/form-output/VcsMarkdown.vue.d.ts +1 -0
  107. package/src/components/form-output/markdownHelper.d.ts +30 -0
  108. package/src/components/form-output/markdownHelper.js +398 -0
  109. package/src/components/import/VcsFileDrop.vue +8 -5
  110. package/src/components/import/VcsImportComponent.vue +4 -3
  111. package/src/components/import/VcsImportComponent.vue.d.ts +1 -2
  112. package/src/components/lists/VcsActionList.vue +11 -7
  113. package/src/components/lists/VcsList.vue +30 -52
  114. package/src/components/lists/VcsList.vue.d.ts +14 -59
  115. package/src/components/lists/{VcsListItem.vue → VcsListItemComponent.vue} +68 -22
  116. package/src/components/lists/VcsListItemComponent.vue.d.ts +69 -0
  117. package/src/components/lists/VcsTreeview.vue +43 -16
  118. package/src/components/lists/VcsTreeview.vue.d.ts +14 -3
  119. package/src/components/lists/VcsTreeviewLeaf.vue +15 -6
  120. package/src/components/lists/VcsTreeviewSearchbar.vue +2 -2
  121. package/src/components/notification/VcsHelp.vue +1 -1
  122. package/src/components/notification/VcsHelp.vue.d.ts +3 -2
  123. package/src/components/section/VcsExpansionPanel.vue +101 -0
  124. package/src/components/section/VcsExpansionPanel.vue.d.ts +19 -0
  125. package/src/components/{form-inputs-controls → section}/VcsFormSection.vue +10 -4
  126. package/src/components/{form-inputs-controls → section}/VcsFormSection.vue.d.ts +1 -2
  127. package/src/components/style/MenuWrapper.vue +24 -26
  128. package/src/components/style/MenuWrapper.vue.d.ts +4 -4
  129. package/src/components/style/VcsFillMenu.vue +9 -16
  130. package/src/components/style/VcsFillMenu.vue.d.ts +0 -18
  131. package/src/components/style/VcsFillSelector.vue +13 -16
  132. package/src/components/style/VcsImageMenu.vue +8 -25
  133. package/src/components/style/VcsImageMenu.vue.d.ts +0 -27
  134. package/src/components/style/VcsImageSelector.vue +102 -167
  135. package/src/components/style/VcsImageSelector.vue.d.ts +15 -15
  136. package/src/components/style/VcsStrokeMenu.vue +8 -15
  137. package/src/components/style/VcsStrokeMenu.vue.d.ts +0 -18
  138. package/src/components/style/VcsStrokeSelector.vue +11 -18
  139. package/src/components/style/VcsTextMenu.vue +9 -12
  140. package/src/components/style/VcsTextMenu.vue.d.ts +0 -9
  141. package/src/components/style/VcsTextSelector.vue +79 -95
  142. package/src/components/style/VcsTextSelector.vue.d.ts +20 -22
  143. package/src/components/style/VcsVectorStyleComponent.vue +8 -19
  144. package/src/components/style/VcsVectorStyleComponent.vue.d.ts +1 -1
  145. package/src/components/style/composables.d.ts +0 -14
  146. package/src/components/style/composables.js +0 -49
  147. package/src/components/tables/VcsDataTable.vue +28 -22
  148. package/src/components/tables/VcsTable.vue +45 -62
  149. package/src/components/tables/VcsTable.vue.d.ts +30 -17
  150. package/src/components/tables/VcsTableCell.vue +72 -0
  151. package/src/components/tables/VcsTableCell.vue.d.ts +13 -0
  152. package/src/components/vector-properties/VcsFeatureEditingWindow.vue +43 -9
  153. package/src/components/vector-properties/VcsFeatureTransforms.vue +5 -0
  154. package/src/components/vector-properties/VcsVectorPropertiesComponent.vue +1 -1
  155. package/src/components/viewpoint/VcsViewpointComponent.vue +23 -10
  156. package/src/components/viewpoint/VcsViewpointEditor.vue +2 -1
  157. package/src/contentTree/LayerTree.vue +9 -27
  158. package/src/contentTree/LayerTree.vue.d.ts +1 -1
  159. package/src/contentTree/contentTreeCollection.d.ts +1 -0
  160. package/src/contentTree/contentTreeCollection.js +45 -11
  161. package/src/contentTree/contentTreeItem.d.ts +2 -2
  162. package/src/contentTree/contentTreeItem.js +7 -7
  163. package/src/featureInfo/BalloonComponent.vue +14 -15
  164. package/src/featureInfo/MarkdownBalloonComponent.vue +4 -2
  165. package/src/featureInfo/MarkdownBalloonComponent.vue.d.ts +2 -2
  166. package/src/featureInfo/abstractFeatureInfoView.d.ts +6 -0
  167. package/src/featureInfo/abstractFeatureInfoView.js +15 -7
  168. package/src/featureInfo/featureInfo.d.ts +5 -5
  169. package/src/featureInfo/featureInfo.js +59 -41
  170. package/src/featureInfo/iframeFeatureInfoView.d.ts +8 -2
  171. package/src/featureInfo/iframeFeatureInfoView.js +15 -5
  172. package/src/featureInfo/markdownBalloonFeatureInfoView.d.ts +1 -1
  173. package/src/featureInfo/markdownBalloonFeatureInfoView.js +5 -5
  174. package/src/featureInfo/markdownFeatureInfoView.d.ts +1 -1
  175. package/src/featureInfo/markdownFeatureInfoView.js +9 -11
  176. package/src/featureInfo/tableFeatureInfoView.js +13 -4
  177. package/src/init.d.ts +5 -38
  178. package/src/init.js +19 -18
  179. package/src/legend/StyleLegendItem.vue +4 -9
  180. package/src/legend/VcsLegend.vue +28 -54
  181. package/src/manager/buttonManager.js +4 -4
  182. package/src/manager/collectionManager/CollectionComponent.vue +17 -42
  183. package/src/manager/collectionManager/CollectionComponent.vue.d.ts +4 -2
  184. package/src/manager/collectionManager/CollectionComponentContent.vue +7 -6
  185. package/src/manager/collectionManager/CollectionComponentContent.vue.d.ts +3 -1
  186. package/src/manager/collectionManager/CollectionComponentList.vue +11 -9
  187. package/src/manager/collectionManager/CollectionComponentList.vue.d.ts +6 -4
  188. package/src/manager/collectionManager/CollectionComponentProvider.vue +1 -1
  189. package/src/manager/collectionManager/CollectionComponentStandalone.vue +3 -2
  190. package/src/manager/collectionManager/CollectionManager.vue +1 -1
  191. package/src/manager/collectionManager/collectionComponentClass.d.ts +1 -1
  192. package/src/manager/collectionManager/collectionComponentClass.js +7 -10
  193. package/src/manager/collectionManager/collectionManager.js +10 -10
  194. package/src/manager/collectionManager/editorCollectionComponentClass.js +6 -5
  195. package/src/manager/contextMenu/contextMenuManager.js +2 -2
  196. package/src/manager/navbarManager.js +2 -2
  197. package/src/manager/panel/PanelComponent.vue +2 -9
  198. package/src/manager/panel/PanelManagerComponent.vue +7 -3
  199. package/src/manager/panel/panelHelper.js +3 -3
  200. package/src/manager/panel/panelManager.d.ts +9 -1
  201. package/src/manager/panel/panelManager.js +18 -6
  202. package/src/manager/toolbox/GroupToolboxComponent.vue +8 -4
  203. package/src/manager/toolbox/GroupToolboxComponent.vue.d.ts +1 -0
  204. package/src/manager/toolbox/SelectToolboxComponent.vue +7 -4
  205. package/src/manager/toolbox/SelectToolboxComponent.vue.d.ts +1 -0
  206. package/src/manager/toolbox/ToolboxManager.vue +9 -6
  207. package/src/manager/toolbox/ToolboxManager.vue.d.ts +1 -0
  208. package/src/manager/toolbox/toolboxManager.js +10 -10
  209. package/src/manager/window/WindowComponent.vue +12 -8
  210. package/src/manager/window/WindowComponentHeader.vue +29 -8
  211. package/src/manager/window/WindowComponentHeader.vue.d.ts +2 -0
  212. package/src/manager/window/WindowManager.vue +2 -2
  213. package/src/manager/window/windowManager.d.ts +2 -2
  214. package/src/manager/window/windowManager.js +4 -4
  215. package/src/navigation/MapNavigation.vue +20 -0
  216. package/src/navigation/locatorHelper.js +1 -1
  217. package/src/navigation/overviewMap.js +1 -1
  218. package/src/notifier/NotifierComponent.vue +18 -15
  219. package/src/search/ResultItem.vue +18 -6
  220. package/src/search/ResultsComponent.vue +31 -20
  221. package/src/search/ResultsComponent.vue.d.ts +2 -1
  222. package/src/search/SearchComponent.vue +8 -14
  223. package/src/search/SearchComponent.vue.d.ts +1 -0
  224. package/src/search/search.js +2 -2
  225. package/src/siteConfig.js +9 -9
  226. package/src/state.js +4 -4
  227. package/src/styles/_typography.scss +0 -2
  228. package/src/styles/main.scss +0 -4
  229. package/src/uiConfig.d.ts +300 -5
  230. package/src/uiConfig.js +28 -16
  231. package/src/vcsUiApp.d.ts +21 -17
  232. package/src/vcsUiApp.js +11 -10
  233. package/src/vuePlugins/vuetify.d.ts +2 -0
  234. package/src/vuePlugins/vuetify.js +14 -0
  235. package/dist/assets/@mdi/font/css/materialdesignicons.css.map +0 -16
  236. package/dist/assets/@mdi/font/css/materialdesignicons.min.e3f476.css +0 -3
  237. package/dist/assets/index-8eGauqjA.js +0 -1
  238. package/dist/assets/ui.7c276c.css +0 -1
  239. package/dist/assets/vue.a3cd64.js +0 -6096
  240. package/public/assets/@mdi/font/css/materialdesignicons.css.map +0 -16
  241. package/src/application/VcsCustomScreen.vue +0 -45
  242. package/src/application/VcsCustomScreen.vue.d.ts +0 -15
  243. package/src/application/markdownHelper.d.ts +0 -12
  244. package/src/application/markdownHelper.js +0 -70
  245. package/src/components/lists/VcsListItem.vue.d.ts +0 -21
  246. package/src/components/notification/VcsTooltip.vue +0 -156
  247. package/src/components/notification/VcsTooltip.vue.d.ts +0 -27
  248. package/src/featureInfo/MarkdownComponent.vue +0 -16
  249. package/src/featureInfo/MarkdownComponent.vue.d.ts +0 -7
  250. package/src/styles/_theming.scss +0 -73
  251. package/src/styles/settings.scss +0 -6
  252. package/src/styles/shades.scss +0 -4
  253. package/src/styles/variables.scss +0 -140
  254. package/src/styles/vcsFont.scss +0 -2
  255. package/src/styles/vcsGrid.scss +0 -3
  256. /package/dist/assets/{favicon-128.4c4ce5.png → favicon-128-4c4ce5df.png} +0 -0
  257. /package/dist/assets/{favicon-180.5b99c0.png → favicon-180-4c4ce5df.png} +0 -0
  258. /package/dist/assets/{favicon-192.0e205e.png → favicon-192-4c4ce5df.png} +0 -0
  259. /package/dist/assets/{favicon-32.6b9add.png → favicon-32-4c4ce5df.png} +0 -0
  260. /package/dist/assets/{favicon.d5ec97.svg → favicon-4c4ce5df.svg} +0 -0
  261. /package/dist/assets/font/{TitilliumWeb-Regular.9ca076.woff2 → TitilliumWeb-Regular-9ca076be.woff2} +0 -0
  262. /package/dist/assets/style/{icon-marker.70960f.png → icon-marker-70960f05.png} +0 -0
  263. /package/dist/assets/style/{icon-marker-blue.534e37.png → icon-marker-blue-534e374b.png} +0 -0
  264. /package/dist/assets/style/{icon-marker-green.0b6a92.png → icon-marker-green-0b6a92bc.png} +0 -0
  265. /package/dist/assets/style/{icon-marker-o.036477.png → icon-marker-o-036477fa.png} +0 -0
  266. /package/dist/assets/style/{icon-marker-o-blue.7b6d62.png → icon-marker-o-blue-7b6d6279.png} +0 -0
  267. /package/dist/assets/style/{icon-marker-o-green.c863c0.png → icon-marker-o-green-c863c0fa.png} +0 -0
  268. /package/dist/assets/style/{icon-marker-o-red.93ff58.png → icon-marker-o-red-93ff58df.png} +0 -0
  269. /package/dist/assets/style/{icon-marker-red.313d03.png → icon-marker-red-313d03e8.png} +0 -0
  270. /package/dist/assets/style/{icon-pin.b7ce77.png → icon-pin-b7ce771e.png} +0 -0
  271. /package/dist/assets/style/{icon-pin-blue.7be369.png → icon-pin-blue-7be369a3.png} +0 -0
  272. /package/dist/assets/style/{icon-pin-green.cbb935.png → icon-pin-green-cbb935fe.png} +0 -0
  273. /package/dist/assets/style/{icon-pin-red.3f25b2.png → icon-pin-red-3f25b245.png} +0 -0
  274. /package/public/assets/{favicon-128.png → favicon-128-4c4ce5df.png} +0 -0
  275. /package/public/assets/{favicon-180.png → favicon-180-4c4ce5df.png} +0 -0
  276. /package/public/assets/{favicon-192.png → favicon-192-4c4ce5df.png} +0 -0
  277. /package/public/assets/{favicon-32.png → favicon-32-4c4ce5df.png} +0 -0
  278. /package/public/assets/{favicon.svg → favicon-4c4ce5df.svg} +0 -0
@@ -1,3 +1,11 @@
1
+ /**
2
+ * This helper checks the uiConfig and depending on the value will setup/teardown the providedSetupFunction
3
+ * @param {import("../vcsUiApp.js").default} app
4
+ * @param {(import("../vcsUiApp.js").default) => () => void} setupFunction
5
+ * @param {string} configOption parameter name of a uiConfig parameter, for example `app.uiConfig.config.hideContentTree`
6
+ * @returns {function():void} - cleanup function
7
+ */
8
+ export function setupUIConfigDependency(app: import("../vcsUiApp.js").default, setupFunction: any, configOption: string): () => void;
1
9
  /**
2
10
  * You should call this function in the component providing the vcsUiApp to your
3
11
  * application in the components mounted hook. This will call VcsAppMounted on all plugins in the app
@@ -10,6 +18,7 @@ export function setupPluginMountedListeners(app: import("../vcsUiApp.js").defaul
10
18
  /**
11
19
  * This helper function will add a map action button based on the default icons
12
20
  * to the apps NavbarManager. Furthermore, all maps on the app are synced for adding and removing.
21
+ * The buttons can be removed with the uiConfig hideMapButtons
13
22
  * @param {import("../vcsUiApp.js").default} app
14
23
  * @returns {function():void}
15
24
  */
@@ -65,30 +74,315 @@ export function setupAttributions(app: import("../vcsUiApp.js").default): {
65
74
  attributionAction: import("../actions/actionHelper.js").VcsAction;
66
75
  destroyAttributions: () => void;
67
76
  };
77
+ /**
78
+ * @type {string}
79
+ */
80
+ export const categoryManagerWindowId: string;
68
81
  declare const _default: import("vue").DefineComponent<{
69
82
  appId: {
70
83
  type: StringConstructor;
71
84
  required: true;
72
85
  };
73
86
  }, {
74
- smAndUp: import("vue").Ref<boolean>;
87
+ config: {
88
+ readonly [x: string]: any;
89
+ /**
90
+ * - the company logo to display. this will override any and all css overrides.
91
+ */
92
+ readonly logo?: string | undefined;
93
+ /**
94
+ * - an alternative logo to display in mobile view
95
+ */
96
+ readonly mobileLogo?: string | undefined;
97
+ /**
98
+ * - an optional title to display next to the company logo
99
+ */
100
+ readonly appTitle?: string | undefined;
101
+ /**
102
+ * - an optional primary color to use in all themes
103
+ */
104
+ readonly primaryColor?: string | undefined;
105
+ /**
106
+ * - an optional flag whether to activate feature info on startup (default active)
107
+ */
108
+ readonly startingFeatureInfo?: boolean | undefined;
109
+ /**
110
+ * - mouse event, when position display is updated. Either 'click' (default) or 'move'.
111
+ */
112
+ readonly positionDisplayEventType?: string | undefined;
113
+ /**
114
+ * - an optional URL to a help landing page
115
+ */
116
+ readonly helpBaseUrl?: string | undefined;
117
+ /**
118
+ * - an option imprint, will show a link in the footer. Default title is 'footer.imprint.title'.
119
+ */
120
+ readonly imprint?: {
121
+ readonly title?: string | undefined;
122
+ readonly url?: string | {
123
+ readonly hash: string;
124
+ readonly host: string;
125
+ readonly hostname: string;
126
+ readonly href: string;
127
+ readonly toString: () => string;
128
+ readonly origin: string;
129
+ readonly password: string;
130
+ readonly pathname: string;
131
+ readonly port: string;
132
+ readonly protocol: string;
133
+ readonly search: string;
134
+ readonly searchParams: ReadonlyMap<string, string | null>;
135
+ readonly username: string;
136
+ readonly toJSON: () => string;
137
+ } | undefined;
138
+ readonly content?: string | undefined;
139
+ } | undefined;
140
+ /**
141
+ * - an option dataProtection, will show a link in the footer. Default title is 'footer.dataProtection.title'.
142
+ */
143
+ readonly dataProtection?: {
144
+ readonly title?: string | undefined;
145
+ readonly url?: string | {
146
+ readonly hash: string;
147
+ readonly host: string;
148
+ readonly hostname: string;
149
+ readonly href: string;
150
+ readonly toString: () => string;
151
+ readonly origin: string;
152
+ readonly password: string;
153
+ readonly pathname: string;
154
+ readonly port: string;
155
+ readonly protocol: string;
156
+ readonly search: string;
157
+ readonly searchParams: ReadonlyMap<string, string | null>;
158
+ readonly username: string;
159
+ readonly toJSON: () => string;
160
+ } | undefined;
161
+ readonly content?: string | undefined;
162
+ } | undefined;
163
+ /**
164
+ * - an option splashScreen, will show a splash Screen on Map Load.
165
+ */
166
+ readonly splashScreen?: {
167
+ readonly title?: string | undefined;
168
+ readonly icon?: string | undefined;
169
+ readonly content?: string | undefined;
170
+ readonly name?: string | undefined;
171
+ readonly checkBoxText?: string | undefined;
172
+ readonly buttonTitle?: string | undefined;
173
+ readonly menuEntry?: boolean | undefined;
174
+ readonly acceptInput?: boolean | undefined;
175
+ readonly position?: {
176
+ readonly width?: string | undefined;
177
+ readonly height?: string | undefined;
178
+ readonly maxHeight?: string | undefined;
179
+ readonly maxWidth?: string | undefined;
180
+ } | undefined;
181
+ } | undefined;
182
+ /**
183
+ * - an option customScreen, will show a Custom Menu Point that opens a window with custom content.
184
+ */
185
+ readonly customScreen?: {
186
+ readonly title?: string | undefined;
187
+ readonly icon?: string | undefined;
188
+ readonly content?: string | undefined;
189
+ readonly name?: string | undefined;
190
+ readonly windowPosition?: {
191
+ /**
192
+ * Can be a css position string (e.g. '320px' or '50%') number values are treated as `px` values
193
+ */
194
+ readonly left?: string | number | undefined;
195
+ /**
196
+ * Can be a css position string (e.g. '320px' or '50%') number values are treated as `px` values
197
+ */
198
+ readonly top?: string | number | undefined;
199
+ /**
200
+ * Can be a css position string (e.g. '320px' or '50%') number values are treated as `px` values
201
+ */
202
+ readonly right?: string | number | undefined;
203
+ /**
204
+ * Can be a css position string (e.g. '320px' or '50%') number values are treated as `px` values
205
+ */
206
+ readonly bottom?: string | number | undefined;
207
+ /**
208
+ * Can be a css position string (e.g. '320px' or '50%') number values are treated as `px` values
209
+ */
210
+ readonly width?: string | number | undefined;
211
+ /**
212
+ * Can be a css position string (e.g. '320px' or '50%') number values are treated as `px` values
213
+ */
214
+ readonly height?: string | number | undefined;
215
+ /**
216
+ * Can be a css position string (e.g. '320px' or '50%') number values are treated as `px` values
217
+ */
218
+ readonly maxHeight?: string | number | undefined;
219
+ /**
220
+ * Can be a css position string (e.g. '320px' or '50%') number values are treated as `px` values
221
+ */
222
+ readonly maxWidth?: string | number | undefined;
223
+ /**
224
+ * Can be a css position string (e.g. '320px' or '50%') number values are treated as `px` values
225
+ */
226
+ readonly minHeight?: string | number | undefined;
227
+ /**
228
+ * Can be a css position string (e.g. '320px' or '50%') number values are treated as `px` values
229
+ */
230
+ readonly minWidth?: string | number | undefined;
231
+ } | undefined;
232
+ } | undefined;
233
+ /**
234
+ * - the favicon to set
235
+ */
236
+ readonly favicon?: string | undefined;
237
+ /**
238
+ * - the title to display in the tab of the browser
239
+ */
240
+ readonly headerTitle?: string | undefined;
241
+ /**
242
+ * - an optional flag whether to show the Locator in the map.
243
+ */
244
+ readonly showLocator?: boolean | undefined;
245
+ /**
246
+ * - can be used to hide the default Header of the map
247
+ */
248
+ readonly hideHeader?: boolean | undefined;
249
+ /**
250
+ * - can be used to hide the integrated Search bar
251
+ */
252
+ readonly hideSearch?: boolean | undefined;
253
+ /**
254
+ * - can be used to hide the default Map Buttons
255
+ */
256
+ readonly hideMapButtons?: boolean | undefined;
257
+ /**
258
+ * - can be used to hide the toolbox
259
+ */
260
+ readonly hideToolbox?: boolean | undefined;
261
+ /**
262
+ * - can be used to hide the navigation
263
+ */
264
+ readonly hideMapNavigation?: boolean | undefined;
265
+ /**
266
+ * - can be used to hide the footer
267
+ */
268
+ readonly hideFooter?: boolean | undefined;
269
+ /**
270
+ * - can be used to hide the myWorkspace button
271
+ */
272
+ readonly hideMyWorkspace?: boolean | undefined;
273
+ /**
274
+ * - can be used to hide the contentTree
275
+ */
276
+ readonly hideContentTree?: boolean | undefined;
277
+ /**
278
+ * - can be used to hide the legend
279
+ */
280
+ readonly hideLegend?: boolean | undefined;
281
+ /**
282
+ * - can be used to hide the settings Window
283
+ */
284
+ readonly hideSettings?: boolean | undefined;
285
+ /**
286
+ * - can be used to activate the overviewMap on startup
287
+ */
288
+ readonly overviewMapActiveOnStartup?: boolean | undefined;
289
+ /**
290
+ * - the display quality settings
291
+ */
292
+ readonly displayQuality?: {
293
+ readonly startingQualityLevel?: import("@vcmap/core", { with: { "resolution-mode": "import" } }).DisplayQualityLevel | undefined;
294
+ readonly startingMobileQualityLevel?: import("@vcmap/core", { with: { "resolution-mode": "import" } }).DisplayQualityLevel | undefined;
295
+ readonly low?: {
296
+ readonly sse?: number | undefined;
297
+ readonly fxaa?: boolean | undefined;
298
+ readonly fogEnabled?: boolean | undefined;
299
+ readonly fogDensity?: number | undefined;
300
+ readonly fogScreenSpaceErrorFactor?: number | undefined;
301
+ readonly resolutionScale?: number | undefined;
302
+ readonly layerSSEFactor?: number | undefined;
303
+ } | undefined;
304
+ readonly medium?: {
305
+ readonly sse?: number | undefined;
306
+ readonly fxaa?: boolean | undefined;
307
+ readonly fogEnabled?: boolean | undefined;
308
+ readonly fogDensity?: number | undefined;
309
+ readonly fogScreenSpaceErrorFactor?: number | undefined;
310
+ readonly resolutionScale?: number | undefined;
311
+ readonly layerSSEFactor?: number | undefined;
312
+ } | undefined;
313
+ readonly high?: {
314
+ readonly sse?: number | undefined;
315
+ readonly fxaa?: boolean | undefined;
316
+ readonly fogEnabled?: boolean | undefined;
317
+ readonly fogDensity?: number | undefined;
318
+ readonly fogScreenSpaceErrorFactor?: number | undefined;
319
+ readonly resolutionScale?: number | undefined;
320
+ readonly layerSSEFactor?: number | undefined;
321
+ } | undefined;
322
+ } | undefined;
323
+ };
324
+ showFooter: import("vue").ComputedRef<boolean>;
325
+ footerHeight: import("vue").ComputedRef<number>;
75
326
  mobileLogo: import("vue").ComputedRef<any>;
76
327
  imprint: import("vue").ComputedRef<{
77
328
  title: string;
329
+ url?: string | {
330
+ readonly hash: string;
331
+ readonly host: string;
332
+ readonly hostname: string;
333
+ readonly href: string;
334
+ readonly toString: () => string;
335
+ readonly origin: string;
336
+ readonly password: string;
337
+ readonly pathname: string;
338
+ readonly port: string;
339
+ readonly protocol: string;
340
+ readonly search: string;
341
+ readonly searchParams: ReadonlyMap<string, string | null>;
342
+ readonly username: string;
343
+ readonly toJSON: () => string;
344
+ } | undefined;
345
+ content?: string | undefined;
78
346
  tooltip: string;
79
347
  } | undefined>;
80
348
  dataProtection: import("vue").ComputedRef<{
81
349
  title: string;
350
+ url?: string | {
351
+ readonly hash: string;
352
+ readonly host: string;
353
+ readonly hostname: string;
354
+ readonly href: string;
355
+ readonly toString: () => string;
356
+ readonly origin: string;
357
+ readonly password: string;
358
+ readonly pathname: string;
359
+ readonly port: string;
360
+ readonly protocol: string;
361
+ readonly search: string;
362
+ readonly searchParams: ReadonlyMap<string, string | null>;
363
+ readonly username: string;
364
+ readonly toJSON: () => string;
365
+ } | undefined;
366
+ content?: string | undefined;
82
367
  tooltip: string;
83
368
  } | undefined>;
84
369
  splashScreenRef: import("vue").Ref<boolean>;
85
370
  splashScreen: import("vue").ComputedRef<{
86
371
  title: string;
87
- tooltip: string;
372
+ icon?: string | undefined;
373
+ content?: string | undefined;
374
+ name?: string | undefined;
375
+ checkBoxText?: string | undefined;
376
+ buttonTitle?: string | undefined;
377
+ menuEntry?: boolean | undefined;
378
+ acceptInput?: boolean | undefined;
88
379
  position: {
89
- width: string;
90
- height: string;
380
+ readonly width?: string | undefined;
381
+ readonly height?: string | undefined;
382
+ readonly maxHeight?: string | undefined;
383
+ readonly maxWidth?: string | undefined;
91
384
  };
385
+ tooltip: string;
92
386
  } | undefined>;
93
387
  attributionEntries: import("vue").Ref<import("./attributionsHelper.js", { with: { "resolution-mode": "import" } }).AttributionEntry[]>;
94
388
  attributionAction: import("../actions/actionHelper.js", { with: { "resolution-mode": "import" } }).VcsAction;
@@ -25,21 +25,10 @@
25
25
  </template>
26
26
 
27
27
  <style lang="scss" scoped>
28
- @import '../styles/shades.scss';
29
-
30
- .theme--light {
31
- a {
32
- color: map-get($shades, 'black');
33
- }
34
- }
35
- .theme--dark {
36
- a {
37
- color: map-get($shades, 'white');
38
- }
39
- }
40
28
  a {
29
+ color: var(--v-theme-surface);
41
30
  &:hover {
42
- color: var(--v-primary-base);
31
+ color: rgb(var(--v-theme-primary));
43
32
  }
44
33
  &:before {
45
34
  content: '\00a9';
@@ -2,11 +2,11 @@
2
2
  <span class="d-inline-block text-truncate mr-10">
3
3
  <span
4
4
  v-for="attribution in mergedAttributions"
5
- class="attribution-span"
5
+ class="attribution"
6
6
  :key="attribution.provider"
7
7
  >
8
- <a :href="attribution.url" target="_blank"
9
- >{{ $st(attribution.provider) }} <span>{{ attribution.years }}</span>
8
+ <a :href="attribution.url" target="_blank">
9
+ {{ $st(attribution.provider) }} <span>{{ attribution.years }}</span>
10
10
  </a>
11
11
  </span>
12
12
  <VcsButton
@@ -21,14 +21,7 @@
21
21
  </template>
22
22
 
23
23
  <style lang="scss" scoped>
24
- .attribution-wrap .vcs-button-wrap {
25
- bottom: 3px;
26
- }
27
-
28
- a:before {
29
- content: '\00a9\00a0';
30
- }
31
- .attribution-span {
24
+ .attribution {
32
25
  font-size: smaller;
33
26
  &:before {
34
27
  content: '\00a0\007c\00a0';
@@ -39,6 +32,12 @@
39
32
  span {
40
33
  font-size: inherit;
41
34
  }
35
+ a {
36
+ color: var(--v-text-color);
37
+ &:before {
38
+ content: '\00a9\00a0';
39
+ }
40
+ }
42
41
  }
43
42
  </style>
44
43
 
@@ -1,7 +1,12 @@
1
1
  <template>
2
2
  <v-container
3
3
  class="vcs-container pa-0"
4
- :class="{ 'vcs-container-xs': xs }"
4
+ :class="{
5
+ 'vcs-container-xs': xs,
6
+ 'with-header': !config.hideHeader,
7
+ 'without-header': config.hideHeader,
8
+ 'without-footer': config.hideFooter,
9
+ }"
5
10
  fluid
6
11
  absolute
7
12
  style="background: #1b5e20"
@@ -25,25 +30,37 @@
25
30
  class="z-index-1 mobile-attribution-btn"
26
31
  /-->
27
32
  <PanelManagerComponent />
28
- <ToolboxManagerComponent />
33
+ <ToolboxManagerComponent v-if="!config.hideToolbox" />
29
34
  <WindowManagerComponent />
30
35
  <NotifierComponent />
31
36
  </v-container>
32
37
  </template>
33
38
 
34
39
  <style scoped lang="scss">
40
+ .without-header {
41
+ top: 0px;
42
+ }
43
+ .with-header {
44
+ top: 48px;
45
+ }
35
46
  .vcs-container {
36
47
  position: absolute;
37
- top: 48px;
38
48
  left: 0;
39
49
  right: 0;
40
- bottom: 22px;
50
+ bottom: round(up, calc(var(--v-vcs-font-size) * 1.65), 1px);
51
+ }
52
+ .vcs-container.without-footer {
53
+ bottom: 0;
41
54
  }
42
55
 
43
- .vcs-container-xs {
56
+ .vcs-container-xs.with-header {
44
57
  top: 0;
45
58
  bottom: 56px;
46
59
  }
60
+ .vcs-container-xs.without-header {
61
+ top: 0;
62
+ bottom: 0px;
63
+ }
47
64
 
48
65
  .mobile-logo {
49
66
  max-height: 40px;
@@ -93,16 +110,16 @@
93
110
  },
94
111
  },
95
112
  setup() {
113
+ /** @type {import("../vcsUiApp.js").default} */
96
114
  const app = inject('vcsApp');
97
-
98
115
  const { xs } = useDisplay();
99
-
100
116
  return {
117
+ config: app.uiConfig.config,
101
118
  xs,
102
119
  mobileLogo: computed(
103
120
  () =>
104
- app.uiConfig.config.value.mobileLogo ??
105
- app.uiConfig.config.value.logo ??
121
+ app.uiConfig.config.mobileLogo ??
122
+ app.uiConfig.config.logo ??
106
123
  VcsDefaultLogoMobile,
107
124
  ),
108
125
  };