@vcmap/ui 5.0.0-rc.6 → 5.0.0-rc.9
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.
- package/README.md +72 -22
- package/build/build.js +0 -3
- package/build/buildHelpers.js +0 -1
- package/build/commonViteConfig.js +1 -1
- package/config/aerowest.config.json +2 -1
- package/config/base.config.json +7 -7
- package/config/dev.config.json +4 -4
- package/dist/assets/cesium/Workers/{AttributeCompression-27507afe.js → AttributeCompression-80665726.js} +1 -1
- package/dist/assets/cesium/Workers/{AxisAlignedBoundingBox-7565c1e8.js → AxisAlignedBoundingBox-a655a4bc.js} +1 -1
- package/dist/assets/cesium/Workers/{BoundingRectangle-9d707275.js → BoundingRectangle-c3b79029.js} +1 -1
- package/dist/assets/cesium/Workers/{BoxGeometry-fb31d3b5.js → BoxGeometry-f8f9c981.js} +1 -1
- package/dist/assets/cesium/Workers/{Color-56bb5728.js → Color-de06a177.js} +1 -1
- package/dist/assets/cesium/Workers/{CoplanarPolygonGeometryLibrary-72143c19.js → CoplanarPolygonGeometryLibrary-48cdc26d.js} +1 -1
- package/dist/assets/cesium/Workers/{CorridorGeometryLibrary-7bae1712.js → CorridorGeometryLibrary-ddc027d3.js} +1 -1
- package/dist/assets/cesium/Workers/{CylinderGeometry-331891fe.js → CylinderGeometry-82a8cbe6.js} +1 -1
- package/dist/assets/cesium/Workers/{EllipseGeometry-5e3f67b6.js → EllipseGeometry-32d55454.js} +1 -1
- package/dist/assets/cesium/Workers/{EllipseGeometryLibrary-dbc15162.js → EllipseGeometryLibrary-b2ae188a.js} +1 -1
- package/dist/assets/cesium/Workers/{EllipseOutlineGeometry-21191fce.js → EllipseOutlineGeometry-f05a5a27.js} +1 -1
- package/dist/assets/cesium/Workers/{EllipsoidGeodesic-cc3bace8.js → EllipsoidGeodesic-19e75e11.js} +1 -1
- package/dist/assets/cesium/Workers/{EllipsoidGeometry-8bfa24a9.js → EllipsoidGeometry-7c99fc81.js} +1 -1
- package/dist/assets/cesium/Workers/{EllipsoidOutlineGeometry-48d9c023.js → EllipsoidOutlineGeometry-21c243df.js} +1 -1
- package/dist/assets/cesium/Workers/{EllipsoidRhumbLine-125a8b72.js → EllipsoidRhumbLine-6145377b.js} +1 -1
- package/dist/assets/cesium/Workers/EllipsoidTangentPlane-a01286f6.js +1 -0
- package/dist/assets/cesium/Workers/{EncodedCartesian3-96fdc0ef.js → EncodedCartesian3-d9f5c4a4.js} +1 -1
- package/dist/assets/cesium/Workers/{FrustumGeometry-9ab86004.js → FrustumGeometry-17776af8.js} +1 -1
- package/dist/assets/cesium/Workers/GeometryAttribute-89a520b9.js +1 -0
- package/dist/assets/cesium/Workers/{GeometryInstance-13e4ff38.js → GeometryInstance-4fbf16ba.js} +1 -1
- package/dist/assets/cesium/Workers/{GeometryPipeline-e0eb4567.js → GeometryPipeline-309fad76.js} +1 -1
- package/dist/assets/cesium/Workers/IntersectionTests-58aa8f80.js +1 -0
- package/dist/assets/cesium/Workers/{Matrix2-37e55508.js → Matrix2-47e98d76.js} +0 -0
- package/dist/assets/cesium/Workers/{OrientedBoundingBox-e9c07538.js → OrientedBoundingBox-fcb5b750.js} +1 -1
- package/dist/assets/cesium/Workers/{Plane-6ee42cab.js → Plane-3f01019d.js} +1 -1
- package/dist/assets/cesium/Workers/{PolygonGeometryLibrary-b408c688.js → PolygonGeometryLibrary-0b29eb16.js} +1 -1
- package/dist/assets/cesium/Workers/{PolygonPipeline-7b8e4643.js → PolygonPipeline-a934c4dd.js} +1 -1
- package/dist/assets/cesium/Workers/{PolylinePipeline-6757400c.js → PolylinePipeline-8095c9bc.js} +1 -1
- package/dist/assets/cesium/Workers/{PolylineVolumeGeometryLibrary-eb972210.js → PolylineVolumeGeometryLibrary-67d12fff.js} +1 -1
- package/dist/assets/cesium/Workers/{PrimitivePipeline-f244975e.js → PrimitivePipeline-980e44c5.js} +1 -1
- package/dist/assets/cesium/Workers/{RectangleGeometryLibrary-1bd6152a.js → RectangleGeometryLibrary-621c6de8.js} +1 -1
- package/dist/assets/cesium/Workers/{TerrainEncoding-5a21a97f.js → TerrainEncoding-f96552d5.js} +1 -1
- package/dist/assets/cesium/Workers/{Transforms-eb5c1a84.js → Transforms-c8cb8f43.js} +3 -3
- package/dist/assets/cesium/Workers/{WallGeometryLibrary-a6b6a368.js → WallGeometryLibrary-c03d8479.js} +1 -1
- package/dist/assets/cesium/Workers/{WebMercatorProjection-2839e524.js → WebMercatorProjection-79b3214e.js} +1 -1
- package/dist/assets/cesium/Workers/combineGeometry.js +1 -1
- package/dist/assets/cesium/Workers/createBoxGeometry.js +1 -1
- package/dist/assets/cesium/Workers/createBoxOutlineGeometry.js +1 -1
- package/dist/assets/cesium/Workers/createCircleGeometry.js +1 -1
- package/dist/assets/cesium/Workers/createCircleOutlineGeometry.js +1 -1
- package/dist/assets/cesium/Workers/createCoplanarPolygonGeometry.js +1 -1
- package/dist/assets/cesium/Workers/createCoplanarPolygonOutlineGeometry.js +1 -1
- package/dist/assets/cesium/Workers/createCorridorGeometry.js +1 -1
- package/dist/assets/cesium/Workers/createCorridorOutlineGeometry.js +1 -1
- package/dist/assets/cesium/Workers/createCylinderGeometry.js +1 -1
- package/dist/assets/cesium/Workers/createCylinderOutlineGeometry.js +1 -1
- package/dist/assets/cesium/Workers/createEllipseGeometry.js +1 -1
- package/dist/assets/cesium/Workers/createEllipseOutlineGeometry.js +1 -1
- package/dist/assets/cesium/Workers/createEllipsoidGeometry.js +1 -1
- package/dist/assets/cesium/Workers/createEllipsoidOutlineGeometry.js +1 -1
- package/dist/assets/cesium/Workers/createFrustumGeometry.js +1 -1
- package/dist/assets/cesium/Workers/createFrustumOutlineGeometry.js +1 -1
- package/dist/assets/cesium/Workers/createGeometry.js +1 -1
- package/dist/assets/cesium/Workers/createGroundPolylineGeometry.js +1 -1
- package/dist/assets/cesium/Workers/createPlaneGeometry.js +1 -1
- package/dist/assets/cesium/Workers/createPlaneOutlineGeometry.js +1 -1
- package/dist/assets/cesium/Workers/createPolygonGeometry.js +1 -1
- package/dist/assets/cesium/Workers/createPolygonOutlineGeometry.js +1 -1
- package/dist/assets/cesium/Workers/createPolylineGeometry.js +1 -1
- package/dist/assets/cesium/Workers/createPolylineVolumeGeometry.js +1 -1
- package/dist/assets/cesium/Workers/createPolylineVolumeOutlineGeometry.js +1 -1
- package/dist/assets/cesium/Workers/createRectangleGeometry.js +1 -1
- package/dist/assets/cesium/Workers/createRectangleOutlineGeometry.js +1 -1
- package/dist/assets/cesium/Workers/createSimplePolylineGeometry.js +1 -1
- package/dist/assets/cesium/Workers/createSphereGeometry.js +1 -1
- package/dist/assets/cesium/Workers/createSphereOutlineGeometry.js +1 -1
- package/dist/assets/cesium/Workers/createVectorTileClampedPolylines.js +1 -1
- package/dist/assets/cesium/Workers/createVectorTileGeometries.js +1 -1
- package/dist/assets/cesium/Workers/createVectorTilePoints.js +1 -1
- package/dist/assets/cesium/Workers/createVectorTilePolygons.js +1 -1
- package/dist/assets/cesium/Workers/createVectorTilePolylines.js +1 -1
- package/dist/assets/cesium/Workers/createVerticesFromGoogleEarthEnterpriseBuffer.js +1 -1
- package/dist/assets/cesium/Workers/createVerticesFromHeightmap.js +1 -1
- package/dist/assets/cesium/Workers/createVerticesFromQuantizedTerrainMesh.js +1 -1
- package/dist/assets/cesium/Workers/createWallGeometry.js +1 -1
- package/dist/assets/cesium/Workers/createWallOutlineGeometry.js +1 -1
- package/dist/assets/cesium/Workers/upsampleQuantizedTerrainMesh.js +1 -1
- package/dist/assets/{cesium.fba8ca.js → cesium.4e40f4.js} +955 -968
- package/dist/assets/cesium.js +1 -1
- package/dist/assets/core.edcf5e.js +4 -0
- package/dist/assets/core.js +1 -1
- package/dist/assets/{index.6a83278e.js → index.889d0f3a.js} +1 -1
- package/dist/assets/{ol.abea3a.js → ol.246fd4.js} +0 -0
- package/dist/assets/ol.js +1 -1
- package/dist/assets/ui.df4f6d.css +1 -0
- package/dist/assets/ui.df4f6d.js +43 -0
- package/dist/assets/ui.js +1 -1
- package/dist/assets/{vue-composition-api.7051d7.js → vue-composition-api.a520f3.js} +1 -1
- package/dist/assets/vue-composition-api.js +2 -2
- package/dist/assets/{vue.9fd7f6.js → vue.2cee44.js} +0 -0
- package/dist/assets/vue.js +1 -1
- package/dist/assets/{vuetify.33dafc.css → vuetify.cc817b.css} +1 -1
- package/dist/assets/{vuetify.33dafc.js → vuetify.cc817b.js} +1 -1
- package/dist/assets/vuetify.js +2 -2
- package/dist/index.html +1 -1
- package/index.js +96 -6
- package/package.json +3 -4
- package/plugins/@vcmap/pluginExample/index.js +5 -5
- package/plugins/@vcmap/pluginExample/pluginExampleComponent.vue +1 -1
- package/plugins/@vcmap/project-selector/ContextsListComponent.vue +1 -1
- package/plugins/@vcmap/project-selector/index.js +5 -5
- package/plugins/@vcmap/project-selector/package.json +1 -2
- package/plugins/@vcmap/theme-changer/index.js +6 -6
- package/plugins/buttonExamples/ButtonExamples.vue +1 -1
- package/plugins/buttonExamples/index.js +5 -4
- package/plugins/categoryTest/Categories.vue +1 -1
- package/plugins/categoryTest/Category.vue +1 -1
- package/plugins/categoryTest/index.js +5 -5
- package/plugins/example/index.js +33 -14
- package/plugins/test/allIconsComponent.vue +34 -0
- package/plugins/test/editor.vue +1 -1
- package/plugins/test/index.js +40 -17
- package/plugins/test/toolbox-data.js +106 -26
- package/plugins/test/windowManagerExample.vue +1 -2
- package/src/actions/actionHelper.js +41 -1
- package/src/actions/styleSelector.vue +1 -1
- package/src/application/Navbar.vue +47 -6
- package/src/application/VcsApp.vue +37 -29
- package/src/application/VcsMap.vue +1 -20
- package/src/assets/logo-mobile.svg +9 -0
- package/src/assets/logo.svg +23 -23
- package/src/components/buttons/VcsActionButtonList.vue +99 -0
- package/src/components/buttons/VcsButton.vue +201 -0
- package/src/components/form-inputs-controls/VcsCheckbox.vue +73 -0
- package/src/components/form-inputs-controls/VcsColorPicker.vue +81 -0
- package/src/components/form-inputs-controls/VcsFormSection.vue +46 -0
- package/src/components/form-inputs-controls/VcsLabel.vue +38 -0
- package/src/components/form-inputs-controls/VcsSelect.vue +97 -0
- package/src/components/form-inputs-controls/VcsTextArea.vue +130 -0
- package/src/components/form-inputs-controls/VcsTextField.vue +129 -0
- package/src/components/form-output/VcsFormattedNumber.vue +103 -0
- package/src/components/lists/VcsActionList.vue +100 -0
- package/src/components/lists/VcsTreeview.vue +109 -0
- package/src/components/lists/VcsTreeviewLeaf.vue +105 -0
- package/src/components/lists/VcsTreeviewSearchbar.vue +156 -0
- package/src/components/notification/VcsBadge.vue +27 -0
- package/src/components/notification/VcsTooltip.vue +154 -0
- package/src/components/notification/validation.js +19 -0
- package/src/contentTree/LayerTree.vue +1 -1
- package/src/contentTree/contentTreeCollection.js +6 -2
- package/src/icons/+all.js +359 -0
- package/src/icons/2DAreaIcon.vue +21 -0
- package/src/icons/2DDistanceIcon.vue +18 -0
- package/src/icons/3DAreaIcon.vue +21 -0
- package/src/icons/3DDistanceIcon.vue +18 -0
- package/src/icons/3DHeightIcon.vue +18 -0
- package/src/icons/AngleIcon.vue +8 -0
- package/src/icons/AssociationsIcon.vue +34 -0
- package/src/icons/AxisIcon.vue +10 -0
- package/src/icons/BoundingBoxIcon.vue +15 -0
- package/src/icons/CheckboxCheckedIcon.vue +16 -0
- package/src/icons/CheckboxIcon.vue +23 -0
- package/src/icons/CheckboxIndeterminateIcon.vue +24 -0
- package/src/icons/CircleIcon.vue +10 -0
- package/src/icons/ColorSwatchIcon.vue +17 -0
- package/src/icons/CommentIcon.vue +19 -0
- package/src/icons/CompassIcon.vue +8 -0
- package/src/icons/ComponentsIcon.vue +7 -0
- package/src/icons/ConeIcon.vue +11 -0
- package/src/icons/DimensionsHouseIcon.vue +14 -0
- package/src/icons/ElevationProfileIcon.vue +111 -0
- package/src/icons/ExportAreaIcon.vue +7 -0
- package/src/icons/ExportFlightIcon.vue +7 -0
- package/src/icons/ExportIcon.vue +8 -0
- package/src/icons/ExternalLinkIcon.vue +10 -0
- package/src/icons/EyeIcon.vue +7 -0
- package/src/icons/FastForwardIcon.vue +7 -0
- package/src/icons/FilterIcon.vue +8 -0
- package/src/icons/GlobeNatureIcon.vue +14 -0
- package/src/icons/HealthCareIndustriesIcon.vue +118 -0
- package/src/icons/HelpIcon.vue +7 -0
- package/src/icons/HomePointIcon.vue +8 -0
- package/src/icons/HospitalsIcon.vue +237 -0
- package/src/icons/HouseIcon.vue +25 -0
- package/src/icons/ImportIcon.vue +8 -0
- package/src/icons/InfoIcon.vue +10 -0
- package/src/icons/KebabIcon.vue +36 -0
- package/src/icons/LabelIcon.vue +7 -0
- package/src/icons/LayersIcon.vue +26 -0
- package/src/icons/LegendIcon.vue +65 -0
- package/src/icons/LineIcon.vue +7 -0
- package/src/icons/LinkIcon.vue +7 -0
- package/src/icons/MapIcon.vue +8 -0
- package/src/icons/MenuIcon.vue +34 -0
- package/src/icons/MinusIcon.vue +8 -0
- package/src/icons/ObjectAttributeIcon.vue +18 -0
- package/src/icons/ObjectSelectIcon.vue +8 -0
- package/src/icons/ObliqueViewIcon.vue +13 -0
- package/src/icons/PdfIcon.vue +10 -0
- package/src/icons/PedestrianIcon.vue +8 -0
- package/src/icons/PenIcon.vue +14 -0
- package/src/icons/PlayCircleIcon.vue +10 -0
- package/src/icons/PlusIcon.vue +9 -0
- package/src/icons/PoiIcon.vue +7 -0
- package/src/icons/PointSelectIcon.vue +7 -0
- package/src/icons/PolygonIcon.vue +38 -0
- package/src/icons/PresentationModeIcon.vue +7 -0
- package/src/icons/ProgressIcon.vue +24 -0
- package/src/icons/QueryIcon.vue +15 -0
- package/src/icons/RectangleIcon.vue +9 -0
- package/src/icons/ReturnIcon.vue +7 -0
- package/src/icons/RewindIcon.vue +6 -0
- package/src/icons/SearchIcon.vue +8 -0
- package/src/icons/ShadowIcon.vue +9 -0
- package/src/icons/ShapesIcon.vue +28 -0
- package/src/icons/ShareIcon.vue +22 -0
- package/src/icons/SimpleCircleFilledIcon.vue +15 -0
- package/src/icons/SimpleCircleHalfFilledIcon.vue +12 -0
- package/src/icons/SimpleCircleOutlinedIcon.vue +15 -0
- package/src/icons/SkipNextIcon.vue +7 -0
- package/src/icons/SkipPreviousIcon.vue +9 -0
- package/src/icons/SplitViewIcon.vue +19 -0
- package/src/icons/TextStyleIcon.vue +14 -0
- package/src/icons/ThreeDimensionsIcon.vue +7 -0
- package/src/icons/ToolsIcon.vue +35 -0
- package/src/icons/TouchIcon.vue +8 -0
- package/src/icons/TrashCanIcon.vue +7 -0
- package/src/icons/TriangleIcon.vue +15 -0
- package/src/icons/TwoDimensionsIcon.vue +8 -0
- package/src/icons/UploadIcon.vue +14 -0
- package/src/icons/VideoRecorderIcon.vue +14 -0
- package/src/icons/WalkingIcon.vue +7 -0
- package/src/icons/WallIcon.vue +14 -0
- package/src/manager/buttonManager.js +5 -52
- package/src/manager/navbarManager.js +81 -0
- package/src/manager/toolbox/ToolboxGroupComponent.vue +128 -0
- package/src/manager/toolbox/ToolboxManager.vue +119 -76
- package/src/manager/toolbox/toolboxManager.js +204 -0
- package/src/manager/window/WindowComponent.vue +27 -20
- package/src/manager/window/WindowComponentHeader.vue +13 -6
- package/src/manager/window/WindowManager.vue +18 -1
- package/src/manager/window/windowManager.js +3 -5
- package/src/navigation/mapNavigation.vue +34 -5
- package/src/navigation/orientationToolsButton.vue +1 -1
- package/src/navigation/overviewMap.js +616 -0
- package/src/navigation/overviewMapClickedInteraction.js +38 -0
- package/src/navigation/tiltSlider.vue +1 -1
- package/src/styles/_theming.scss +10 -0
- package/src/styles/main.scss +3 -0
- package/src/styles/variables.scss +70 -0
- package/src/styles/vcsFont.scss +5 -0
- package/src/styles/vcsGrid.scss +4 -0
- package/src/vcsUiApp.js +18 -3
- package/src/vuePlugins/vuetify.js +1 -1
- package/dist/assets/cesium/Workers/EllipsoidTangentPlane-678e34e4.js +0 -1
- package/dist/assets/cesium/Workers/GeometryAttribute-3915ea0b.js +0 -1
- package/dist/assets/cesium/Workers/IntersectionTests-ac2459de.js +0 -1
- package/dist/assets/core.d5ed0f.js +0 -4
- package/dist/assets/ui.ad1ec9.css +0 -1
- package/dist/assets/ui.ad1ec9.js +0 -39
- package/dist/assets/uicomponents.161461.css +0 -1
- package/dist/assets/uicomponents.161461.js +0 -31
- package/dist/assets/uicomponents.js +0 -1
- package/lib/uicomponents.js +0 -1
- package/src/manager/toolbox/ToolboxMultiSelectButton.vue +0 -96
- package/src/manager/toolbox/ToolboxSingleSelectButton.vue +0 -98
- package/src/manager/toolbox/toolbox-manager.js +0 -203
@@ -10,7 +10,7 @@ function loadCss(href) {
|
|
10
10
|
elem.onerror = reject;
|
11
11
|
document.head.appendChild(elem);
|
12
12
|
});
|
13
|
-
} await loadCss('./assets/vuetify.
|
13
|
+
} await loadCss('./assets/vuetify.cc817b.css');var Qr=Object.defineProperty,Jr=Object.defineProperties;var ta=Object.getOwnPropertyDescriptors;var ae=Object.getOwnPropertySymbols;var Xi=Object.prototype.hasOwnProperty,Ki=Object.prototype.propertyIsEnumerable;var Ui=(t,e,i)=>e in t?Qr(t,e,{enumerable:!0,configurable:!0,writable:!0,value:i}):t[e]=i,l=(t,e)=>{for(var i in e||(e={}))Xi.call(e,i)&&Ui(t,i,e[i]);if(ae)for(var i of ae(e))Ki.call(e,i)&&Ui(t,i,e[i]);return t},p=(t,e)=>Jr(t,ta(e));var Z=(t,e)=>{var i={};for(var s in t)Xi.call(t,s)&&e.indexOf(s)<0&&(i[s]=t[s]);if(t!=null&&ae)for(var s of ae(t))e.indexOf(s)<0&&Ki.call(t,s)&&(i[s]=t[s]);return i};import $ from"./vue.2cee44.js";var qu="";const Ye=$.extend().extend({name:"themeable",provide(){return{theme:this.themeableProvide}},inject:{theme:{default:{isDark:!1}}},props:{dark:{type:Boolean,default:null},light:{type:Boolean,default:null}},data(){return{themeableProvide:{isDark:!1}}},computed:{appIsDark(){return this.$vuetify.theme.dark||!1},isDark(){return this.dark===!0?!0:this.light===!0?!1:this.theme.isDark},themeClasses(){return{"theme--dark":this.isDark,"theme--light":!this.isDark}},rootIsDark(){return this.dark===!0?!0:this.light===!0?!1:this.appIsDark},rootThemeClasses(){return{"theme--dark":this.rootIsDark,"theme--light":!this.rootIsDark}}},watch:{isDark:{handler(t,e){t!==e&&(this.themeableProvide.isDark=this.isDark)},immediate:!0}}});var S=Ye;function qi(t){const e=l(l({},t.props),t.injections),i=Ye.options.computed.isDark.call(e);return Ye.options.computed.themeClasses.call({isDark:i})}function f(...t){return $.extend({mixins:t})}var ea=f(S).extend({name:"v-app",props:{dark:{type:Boolean,default:void 0},id:{type:String,default:"app"},light:{type:Boolean,default:void 0}},computed:{isDark(){return this.$vuetify.theme.dark}},beforeCreate(){if(!this.$vuetify||this.$vuetify===this.$root)throw new Error("Vuetify is not properly initialized, see https://vuetifyjs.com/getting-started/quick-start#bootstrapping-the-vuetify-object")},render(t){const e=t("div",{staticClass:"v-application--wrap"},this.$slots.default);return t("div",{staticClass:"v-application",class:l({"v-application--is-rtl":this.$vuetify.rtl,"v-application--is-ltr":!this.$vuetify.rtl},this.themeClasses),attrs:{"data-app":!0},domProps:{id:this.id}},[e])}}),Zu="",Qu="",Ju="";function Zi(t){return function(e,i){for(const s in i)Object.prototype.hasOwnProperty.call(e,s)||this.$delete(this.$data[t],s);for(const s in e)this.$set(this.$data[t],s,e[s])}}var wt=$.extend({data:()=>({attrs$:{},listeners$:{}}),created(){this.$watch("$attrs",Zi("attrs$"),{immediate:!0}),this.$watch("$listeners",Zi("listeners$"),{immediate:!0})}});function je(t,e={}){if(je.installed)return;je.installed=!0,$!==t&&X(`Multiple instances of Vue detected
|
14
14
|
See https://github.com/vuetifyjs/vuetify/issues/4068
|
15
15
|
|
16
16
|
If you're seeing "$attrs is readonly", it's caused by this`);const i=e.components||{},s=e.directives||{};for(const n in s){const r=s[n];t.directive(n,r)}(function n(r){if(r){for(const a in r){const o=r[a];o&&!n(o.$_vuetify_subcomponents)&&t.component(a,o)}return!0}return!1})(i),!t.$_vuetify_installed&&(t.$_vuetify_installed=!0,t.mixin({beforeCreate(){const n=this.$options;n.vuetify?(n.vuetify.init(this,this.$ssrContext),this.$vuetify=t.observable(n.vuetify.framework)):this.$vuetify=n.parent&&n.parent.$vuetify||this},beforeMount(){this.$options.vuetify&&this.$el&&this.$el.hasAttribute("data-server-rendered")&&(this.$vuetify.isHydrating=!0,this.$vuetify.breakpoint.update(!0))},mounted(){this.$options.vuetify&&this.$vuetify.isHydrating&&(this.$vuetify.isHydrating=!1,this.$vuetify.breakpoint.update())}}))}class mt{constructor(){this.framework={}}init(e,i){}}class Qi extends mt{constructor(){super(...arguments);this.bar=0,this.top=0,this.left=0,this.insetFooter=0,this.right=0,this.bottom=0,this.footer=0,this.application={bar:{},top:{},left:{},insetFooter:{},right:{},bottom:{},footer:{}}}register(e,i,s){this.application[i][e]=s,this.update(i)}unregister(e,i){this.application[i][e]!=null&&(delete this.application[i][e],this.update(i))}update(e){this[e]=Object.values(this.application[e]).reduce((i,s)=>i+s,0)}}Qi.property="application";class Ne extends mt{constructor(e){super();this.xs=!1,this.sm=!1,this.md=!1,this.lg=!1,this.xl=!1,this.xsOnly=!1,this.smOnly=!1,this.smAndDown=!1,this.smAndUp=!1,this.mdOnly=!1,this.mdAndDown=!1,this.mdAndUp=!1,this.lgOnly=!1,this.lgAndDown=!1,this.lgAndUp=!1,this.xlOnly=!1,this.name="xs",this.height=0,this.width=0,this.mobile=!0,this.resizeTimeout=0;const{mobileBreakpoint:i,scrollBarWidth:s,thresholds:n}=e[Ne.property];this.mobileBreakpoint=i,this.scrollBarWidth=s,this.thresholds=n}init(){this.update(),typeof window!="undefined"&&window.addEventListener("resize",this.onResize.bind(this),{passive:!0})}update(e=!1){const i=e?0:this.getClientHeight(),s=e?0:this.getClientWidth(),n=s<this.thresholds.xs,r=s<this.thresholds.sm&&!n,a=s<this.thresholds.md-this.scrollBarWidth&&!(r||n),o=s<this.thresholds.lg-this.scrollBarWidth&&!(a||r||n),h=s>=this.thresholds.lg-this.scrollBarWidth;switch(this.height=i,this.width=s,this.xs=n,this.sm=r,this.md=a,this.lg=o,this.xl=h,this.xsOnly=n,this.smOnly=r,this.smAndDown=(n||r)&&!(a||o||h),this.smAndUp=!n&&(r||a||o||h),this.mdOnly=a,this.mdAndDown=(n||r||a)&&!(o||h),this.mdAndUp=!(n||r)&&(a||o||h),this.lgOnly=o,this.lgAndDown=(n||r||a||o)&&!h,this.lgAndUp=!(n||r||a)&&(o||h),this.xlOnly=h,!0){case n:this.name="xs";break;case r:this.name="sm";break;case a:this.name="md";break;case o:this.name="lg";break;default:this.name="xl";break}if(typeof this.mobileBreakpoint=="number"){this.mobile=s<parseInt(this.mobileBreakpoint,10);return}const c={xs:0,sm:1,md:2,lg:3,xl:4},u=c[this.name],d=c[this.mobileBreakpoint];this.mobile=u<=d}onResize(){clearTimeout(this.resizeTimeout),this.resizeTimeout=window.setTimeout(this.update.bind(this),200)}getClientWidth(){return typeof document=="undefined"?0:Math.max(document.documentElement.clientWidth,window.innerWidth||0)}getClientHeight(){return typeof document=="undefined"?0:Math.max(document.documentElement.clientHeight,window.innerHeight||0)}}Ne.property="breakpoint";const ia=t=>t,sa=t=>t**2,na=t=>t*(2-t),ra=t=>t<.5?2*t**2:-1+(4-2*t)*t,aa=t=>t**3,oa=t=>--t**3+1,Ji=t=>t<.5?4*t**3:(t-1)*(2*t-2)*(2*t-2)+1,la=t=>t**4,ha=t=>1- --t**4,ca=t=>t<.5?8*t*t*t*t:1-8*--t*t*t*t,ua=t=>t**5,da=t=>1+--t**5,pa=t=>t<.5?16*t**5:1+16*--t**5;var fa=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",linear:ia,easeInQuad:sa,easeOutQuad:na,easeInOutQuad:ra,easeInCubic:aa,easeOutCubic:oa,easeInOutCubic:Ji,easeInQuart:la,easeOutQuart:ha,easeInOutQuart:ca,easeInQuint:ua,easeOutQuint:da,easeInOutQuint:pa});function Ge(t){if(typeof t=="number")return t;let e=es(t);if(!e)throw typeof t=="string"?new Error(`Target element "${t}" not found.`):new TypeError(`Target must be a Number/Selector/HTMLElement/VueComponent, received ${ts(t)} instead.`);let i=0;for(;e;)i+=e.offsetTop,e=e.offsetParent;return i}function ma(t){const e=es(t);if(e)return e;throw typeof t=="string"?new Error(`Container element "${t}" not found.`):new TypeError(`Container must be a Selector/HTMLElement/VueComponent, received ${ts(t)} instead.`)}function ts(t){return t==null?t:t.constructor.name}function es(t){return typeof t=="string"?document.querySelector(t):t&&t._isVue?t.$el:t instanceof HTMLElement?t:null}function gt(t,e={}){const i=l({container:document.scrollingElement||document.body||document.documentElement,duration:500,offset:0,easing:"easeInOutCubic",appOffset:!0},e),s=ma(i.container);if(i.appOffset&>.framework.application){const h=s.classList.contains("v-navigation-drawer"),c=s.classList.contains("v-navigation-drawer--clipped"),{bar:u,top:d}=gt.framework.application;i.offset+=u,(!h||c)&&(i.offset+=d)}const n=performance.now();let r;typeof t=="number"?r=Ge(t)-i.offset:r=Ge(t)-Ge(s)-i.offset;const a=s.scrollTop;if(r===a)return Promise.resolve(r);const o=typeof i.easing=="function"?i.easing:fa[i.easing];if(!o)throw new TypeError(`Easing function "${i.easing}" not found.`);return new Promise(h=>requestAnimationFrame(function c(u){const d=u-n,g=Math.abs(i.duration?Math.min(d/i.duration,1):1);s.scrollTop=Math.floor(a+(r-a)*o(g));const b=(s===document.body?document.documentElement.clientHeight:s.clientHeight)+s.scrollTop>=s.scrollHeight;if(g===1||r>s.scrollTop&&b)return h(r);requestAnimationFrame(c)}))}gt.framework={},gt.init=()=>{};class is extends mt{constructor(){super();return gt}}is.property="goTo";function N(t,e="div",i){return $.extend({name:i||t.replace(/__/g,"-"),functional:!0,props:{tag:{type:String,default:e}},render(s,{data:n,props:r,children:a}){return n.staticClass=`${t} ${n.staticClass||""}`.trim(),s(r.tag,n,a)}})}function Ue(t,e,i,s=!1){const n=r=>{i(r),t.removeEventListener(e,n,s)};t.addEventListener(e,n,s)}let vt=!1;try{if(typeof window!="undefined"){const t=Object.defineProperty({},"passive",{get:()=>{vt=!0}});window.addEventListener("testListener",t,t),window.removeEventListener("testListener",t,t)}}catch(t){console.warn(t)}function ga(t,e,i,s){t.addEventListener(e,i,vt?s:!1)}function Xe(t,e,i){const s=e.length-1;if(s<0)return t===void 0?i:t;for(let n=0;n<s;n++){if(t==null)return i;t=t[e[n]]}return t==null||t[e[s]]===void 0?i:t[e[s]]}function A(t,e){if(t===e)return!0;if(t instanceof Date&&e instanceof Date&&t.getTime()!==e.getTime()||t!==Object(t)||e!==Object(e))return!1;const i=Object.keys(t);return i.length!==Object.keys(e).length?!1:i.every(s=>A(t[s],e[s]))}function y(t,e,i){return t==null||!e||typeof e!="string"?i:t[e]!==void 0?t[e]:(e=e.replace(/\[(\w+)\]/g,".$1"),e=e.replace(/^\./,""),Xe(t,e.split("."),i))}function ot(t,e,i){if(e==null)return t===void 0?i:t;if(t!==Object(t))return i===void 0?t:i;if(typeof e=="string")return y(t,e,i);if(Array.isArray(e))return Xe(t,e,i);if(typeof e!="function")return i;const s=e(t,i);return typeof s=="undefined"?i:s}function et(t){return Array.from({length:t},(e,i)=>i)}function Ht(t){if(!t||t.nodeType!==Node.ELEMENT_NODE)return 0;const e=+window.getComputedStyle(t).getPropertyValue("z-index");return e||Ht(t.parentNode)}const va={"&":"&","<":"<",">":">"};function Ft(t){return t.replace(/[&<>]/g,e=>va[e]||e)}function ya(t,e){const i={};for(let s=0;s<e.length;s++){const n=e[s];typeof t[n]!="undefined"&&(i[n]=t[n])}return i}function m(t,e="px"){if(!(t==null||t===""))return isNaN(+t)?String(t):`${Number(t)}${e}`}function oe(t){return(t||"").replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase()}function ss(t){return t!==null&&typeof t=="object"}const v=Object.freeze({enter:13,tab:9,delete:46,esc:27,space:32,up:38,down:40,left:37,right:39,end:35,home:36,del:46,backspace:8,insert:45,pageup:33,pagedown:34,shift:16});function ba(t,e){const i=t.$vuetify.icons.component;if(e.startsWith("$")){const s=`$vuetify.icons.values.${e.split("$").pop().split(".").pop()}`,n=y(t,s,e);if(typeof n=="string")e=n;else return n}return i==null?e:{component:i,props:{icon:e}}}function le(t){return Object.keys(t)}const $a=/-(\w)/g,ns=t=>t.replace($a,(e,i)=>i?i.toUpperCase():"");function Sa(t,e){const i=[];for(let s=0;s<e.length;s++)t.indexOf(e[s])<0&&i.push(e[s]);return i}function he(t){return t.charAt(0).toUpperCase()+t.slice(1)}function xa(t,e,i){const s=e[0],n=[];let r;for(let a=0;a<t.length;a++){const o=t[a],h=y(o,s,null);r!==h&&(r=h,n.push({name:h!=null?h:"",items:[]})),n[n.length-1].items.push(o)}return n}function O(t){return t!=null?Array.isArray(t)?t:[t]:[]}function Ca(t,e,i,s,n){if(e===null||!e.length)return t;const r=new Intl.Collator(s,{sensitivity:"accent",usage:"sort"});return t.sort((a,o)=>{for(let h=0;h<e.length;h++){const c=e[h];let u=y(a,c),d=y(o,c);if(i[h]&&([u,d]=[d,u]),n&&n[c]){const g=n[c](u,d);if(!g)continue;return g}if(!(u===null&&d===null)){if(u instanceof Date&&d instanceof Date)return u.getTime()-d.getTime();if([u,d]=[u,d].map(g=>(g||"").toString().toLocaleLowerCase()),u!==d)return!isNaN(u)&&!isNaN(d)?Number(u)-Number(d):r.compare(u,d)}}return 0})}function Ke(t,e,i){return t!=null&&e!=null&&typeof t!="boolean"&&t.toString().toLocaleLowerCase().indexOf(e.toLocaleLowerCase())!==-1}function wa(t,e){return!e||(e=e.toString().toLowerCase(),e.trim()==="")?t:t.filter(i=>Object.keys(i).some(s=>Ke(y(i,s),e)))}function rs(t,e,i){if(t.$slots.hasOwnProperty(e)&&t.$scopedSlots.hasOwnProperty(e)&&t.$scopedSlots[e].name)return i?"v-slot":"scoped";if(t.$slots.hasOwnProperty(e))return"normal";if(t.$scopedSlots.hasOwnProperty(e))return"scoped"}function ka(t,e){let i=0;return(...s)=>{clearTimeout(i),i=setTimeout(()=>t(...s),e)}}function Ia(t,e){let i=!1;return(...s)=>{if(!i)return i=!0,setTimeout(()=>i=!1,e),t(...s)}}function ce(t,e){return Object.keys(e).filter(i=>i.startsWith(t)).reduce((i,s)=>(i[s.replace(t,"")]=e[s],i),{})}function x(t,e="default",i,s=!1){if(t.$scopedSlots.hasOwnProperty(e))return t.$scopedSlots[e](i instanceof Function?i():i);if(t.$slots.hasOwnProperty(e)&&(!i||s))return t.$slots[e]}function qe(t,e=0,i=1){return Math.max(e,Math.min(i,t))}function Ze(t,e,i="0"){return t+i.repeat(Math.max(0,e-t.length))}function Ta(t,e=1){const i=[];let s=0;for(;s<t.length;)i.push(t.substr(s,e)),s+=e;return i}function as(t,e=!1){const i=e?1024:1e3;if(t<i)return`${t} B`;const s=e?["Ki","Mi","Gi"]:["k","M","G"];let n=-1;for(;Math.abs(t)>=i&&n<s.length-1;)t/=i,++n;return`${t.toFixed(1)} ${s[n]}B`}function os(t){return t?Object.keys(t).reduce((e,i)=>(e[ns(i)]=t[i],e),{}):{}}function Nt(t={},e={}){for(const i in e){const s=t[i],n=e[i];if(ss(s)&&ss(n)){t[i]=Nt(s,n);continue}t[i]=n}return t}function ls(t,e){return Array(t).fill(e)}function hs(t){if(t.composedPath)return t.composedPath();const e=[];let i=t.target;for(;i;){if(e.push(i),i.tagName==="HTML")return e.push(document),e.push(window),e;i=i.parentElement}return e}const _a={complete:"M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z",cancel:"M12,2C17.53,2 22,6.47 22,12C22,17.53 17.53,22 12,22C6.47,22 2,17.53 2,12C2,6.47 6.47,2 12,2M15.59,7L12,10.59L8.41,7L7,8.41L10.59,12L7,15.59L8.41,17L12,13.41L15.59,17L17,15.59L13.41,12L17,8.41L15.59,7Z",close:"M19,6.41L17.59,5L12,10.59L6.41,5L5,6.41L10.59,12L5,17.59L6.41,19L12,13.41L17.59,19L19,17.59L13.41,12L19,6.41Z",delete:"M12,2C17.53,2 22,6.47 22,12C22,17.53 17.53,22 12,22C6.47,22 2,17.53 2,12C2,6.47 6.47,2 12,2M15.59,7L12,10.59L8.41,7L7,8.41L10.59,12L7,15.59L8.41,17L12,13.41L15.59,17L17,15.59L13.41,12L17,8.41L15.59,7Z",clear:"M19,6.41L17.59,5L12,10.59L6.41,5L5,6.41L10.59,12L5,17.59L6.41,19L12,13.41L17.59,19L19,17.59L13.41,12L19,6.41Z",success:"M12,2C17.52,2 22,6.48 22,12C22,17.52 17.52,22 12,22C6.48,22 2,17.52 2,12C2,6.48 6.48,2 12,2M11,16.5L18,9.5L16.59,8.09L11,13.67L7.91,10.59L6.5,12L11,16.5Z",info:"M13,9H11V7H13M13,17H11V11H13M12,2C6.48,2 2,6.48 2,12C2,17.52 6.48,22 12,22C17.52,22 22,17.52 22,12C22,6.48 17.52,2 12,2Z",warning:"M11,4.5H13V15.5H11V4.5M13,17.5V19.5H11V17.5H13Z",error:"M13,14H11V10H13M13,18H11V16H13M1,21H23L12,2L1,21Z",prev:"M15.41,16.58L10.83,12L15.41,7.41L14,6L8,12L14,18L15.41,16.58Z",next:"M8.59,16.58L13.17,12L8.59,7.41L10,6L16,12L10,18L8.59,16.58Z",checkboxOn:"M10,17L5,12L6.41,10.58L10,14.17L17.59,6.58L19,8M19,3H5C3.89,3 3,3.89 3,5V19C3,20.1 3.9,21 5,21H19C20.1,21 21,20.1 21,19V5C21,3.89 20.1,3 19,3Z",checkboxOff:"M19,3H5C3.89,3 3,3.89 3,5V19C3,20.1 3.9,21 5,21H19C20.1,21 21,20.1 21,19V5C21,3.89 20.1,3 19,3M19,5V19H5V5H19Z",checkboxIndeterminate:"M17,13H7V11H17M19,3H5C3.89,3 3,3.89 3,5V19C3,20.1 3.9,21 5,21H19C20.1,21 21,20.1 21,19V5C21,3.89 20.1,3 19,3Z",delimiter:"M12,2C6.48,2 2,6.48 2,12C2,17.52 6.48,22 12,22C17.52,22 22,17.52 22,12C22,6.48 17.52,2 12,2Z",sort:"M13,20H11V8L5.5,13.5L4.08,12.08L12,4.16L19.92,12.08L18.5,13.5L13,8V20Z",expand:"M7.41,8.58L12,13.17L16.59,8.58L18,10L12,16L6,10L7.41,8.58Z",menu:"M3,6H21V8H3V6M3,11H21V13H3V11M3,16H21V18H3V16Z",subgroup:"M7,10L12,15L17,10H7Z",dropdown:"M7,10L12,15L17,10H7Z",radioOn:"M12,20C7.58,20 4,16.42 4,12C4,7.58 7.58,4 12,4C16.42,4 20,7.58 20,12C20,16.42 16.42,20 12,20M12,2C6.48,2 2,6.48 2,12C2,17.52 6.48,22 12,22C17.52,22 22,17.52 22,12C22,6.48 17.52,2 12,2M12,7C9.24,7 7,9.24 7,12C7,14.76 9.24,17 12,17C14.76,17 17,14.76 17,12C17,9.24 14.76,7 12,7Z",radioOff:"M12,20C7.58,20 4,16.42 4,12C4,7.58 7.58,4 12,4C16.42,4 20,7.58 20,12C20,16.42 16.42,20 12,20M12,2C6.48,2 2,6.48 2,12C2,17.52 6.48,22 12,22C17.52,22 22,17.52 22,12C22,6.48 17.52,2 12,2Z",edit:"M20.71,7.04C21.1,6.65 21.1,6 20.71,5.63L18.37,3.29C18,2.9 17.35,2.9 16.96,3.29L15.12,5.12L18.87,8.87M3,17.25V21H6.75L17.81,9.93L14.06,6.18L3,17.25Z",ratingEmpty:"M12,15.39L8.24,17.66L9.23,13.38L5.91,10.5L10.29,10.13L12,6.09L13.71,10.13L18.09,10.5L14.77,13.38L15.76,17.66M22,9.24L14.81,8.63L12,2L9.19,8.63L2,9.24L7.45,13.97L5.82,21L12,17.27L18.18,21L16.54,13.97L22,9.24Z",ratingFull:"M12,17.27L18.18,21L16.54,13.97L22,9.24L14.81,8.62L12,2L9.19,8.62L2,9.24L7.45,13.97L5.82,21L12,17.27Z",ratingHalf:"M12,15.4V6.1L13.71,10.13L18.09,10.5L14.77,13.39L15.76,17.67M22,9.24L14.81,8.63L12,2L9.19,8.63L2,9.24L7.45,13.97L5.82,21L12,17.27L18.18,21L16.54,13.97L22,9.24Z",loading:"M19,8L15,12H18C18,15.31 15.31,18 12,18C11,18 10.03,17.75 9.2,17.3L7.74,18.76C8.97,19.54 10.43,20 12,20C16.42,20 20,16.42 20,12H23M6,12C6,8.69 8.69,6 12,6C13,6 13.97,6.25 14.8,6.7L16.26,5.24C15.03,4.46 13.57,4 12,4C7.58,4 4,7.58 4,12H1L5,16L9,12",first:"M18.41,16.59L13.82,12L18.41,7.41L17,6L11,12L17,18L18.41,16.59M6,6H8V18H6V6Z",last:"M5.59,7.41L10.18,12L5.59,16.59L7,18L13,12L7,6L5.59,7.41M16,6H18V18H16V6Z",unfold:"M12,18.17L8.83,15L7.42,16.41L12,21L16.59,16.41L15.17,15M12,5.83L15.17,9L16.58,7.59L12,3L7.41,7.59L8.83,9L12,5.83Z",file:"M16.5,6V17.5C16.5,19.71 14.71,21.5 12.5,21.5C10.29,21.5 8.5,19.71 8.5,17.5V5C8.5,3.62 9.62,2.5 11,2.5C12.38,2.5 13.5,3.62 13.5,5V15.5C13.5,16.05 13.05,16.5 12.5,16.5C11.95,16.5 11.5,16.05 11.5,15.5V6H10V15.5C10,16.88 11.12,18 12.5,18C13.88,18 15,16.88 15,15.5V5C15,2.79 13.21,1 11,1C8.79,1 7,2.79 7,5V17.5C7,20.54 9.46,23 12.5,23C15.54,23 18,20.54 18,17.5V6H16.5Z",plus:"M19,13H13V19H11V13H5V11H11V5H13V11H19V13Z",minus:"M19,13H5V11H19V13Z"};var Aa=_a;const Da={complete:"check",cancel:"cancel",close:"close",delete:"cancel",clear:"clear",success:"check_circle",info:"info",warning:"priority_high",error:"warning",prev:"chevron_left",next:"chevron_right",checkboxOn:"check_box",checkboxOff:"check_box_outline_blank",checkboxIndeterminate:"indeterminate_check_box",delimiter:"fiber_manual_record",sort:"arrow_upward",expand:"keyboard_arrow_down",menu:"menu",subgroup:"arrow_drop_down",dropdown:"arrow_drop_down",radioOn:"radio_button_checked",radioOff:"radio_button_unchecked",edit:"edit",ratingEmpty:"star_border",ratingFull:"star",ratingHalf:"star_half",loading:"cached",first:"first_page",last:"last_page",unfold:"unfold_more",file:"attach_file",plus:"add",minus:"remove"};var Ba=Da;const Ea={complete:"mdi-check",cancel:"mdi-close-circle",close:"mdi-close",delete:"mdi-close-circle",clear:"mdi-close",success:"mdi-check-circle",info:"mdi-information",warning:"mdi-exclamation",error:"mdi-alert",prev:"mdi-chevron-left",next:"mdi-chevron-right",checkboxOn:"mdi-checkbox-marked",checkboxOff:"mdi-checkbox-blank-outline",checkboxIndeterminate:"mdi-minus-box",delimiter:"mdi-circle",sort:"mdi-arrow-up",expand:"mdi-chevron-down",menu:"mdi-menu",subgroup:"mdi-menu-down",dropdown:"mdi-menu-down",radioOn:"mdi-radiobox-marked",radioOff:"mdi-radiobox-blank",edit:"mdi-pencil",ratingEmpty:"mdi-star-outline",ratingFull:"mdi-star",ratingHalf:"mdi-star-half-full",loading:"mdi-cached",first:"mdi-page-first",last:"mdi-page-last",unfold:"mdi-unfold-more-horizontal",file:"mdi-paperclip",plus:"mdi-plus",minus:"mdi-minus"};var Ma=Ea;const Va={complete:"fas fa-check",cancel:"fas fa-times-circle",close:"fas fa-times",delete:"fas fa-times-circle",clear:"fas fa-times-circle",success:"fas fa-check-circle",info:"fas fa-info-circle",warning:"fas fa-exclamation",error:"fas fa-exclamation-triangle",prev:"fas fa-chevron-left",next:"fas fa-chevron-right",checkboxOn:"fas fa-check-square",checkboxOff:"far fa-square",checkboxIndeterminate:"fas fa-minus-square",delimiter:"fas fa-circle",sort:"fas fa-sort-up",expand:"fas fa-chevron-down",menu:"fas fa-bars",subgroup:"fas fa-caret-down",dropdown:"fas fa-caret-down",radioOn:"far fa-dot-circle",radioOff:"far fa-circle",edit:"fas fa-edit",ratingEmpty:"far fa-star",ratingFull:"fas fa-star",ratingHalf:"fas fa-star-half",loading:"fas fa-sync",first:"fas fa-step-backward",last:"fas fa-step-forward",unfold:"fas fa-arrows-alt-v",file:"fas fa-paperclip",plus:"fas fa-plus",minus:"fas fa-minus"};var cs=Va;const La={complete:"fa fa-check",cancel:"fa fa-times-circle",close:"fa fa-times",delete:"fa fa-times-circle",clear:"fa fa-times-circle",success:"fa fa-check-circle",info:"fa fa-info-circle",warning:"fa fa-exclamation",error:"fa fa-exclamation-triangle",prev:"fa fa-chevron-left",next:"fa fa-chevron-right",checkboxOn:"fa fa-check-square",checkboxOff:"fa fa-square-o",checkboxIndeterminate:"fa fa-minus-square",delimiter:"fa fa-circle",sort:"fa fa-sort-up",expand:"fa fa-chevron-down",menu:"fa fa-bars",subgroup:"fa fa-caret-down",dropdown:"fa fa-caret-down",radioOn:"fa fa-dot-circle-o",radioOff:"fa fa-circle-o",edit:"fa fa-pencil",ratingEmpty:"fa fa-star-o",ratingFull:"fa fa-star",ratingHalf:"fa fa-star-half-o",loading:"fa fa-refresh",first:"fa fa-step-backward",last:"fa fa-step-forward",unfold:"fa fa-angle-double-down",file:"fa fa-paperclip",plus:"fa fa-plus",minus:"fa fa-minus"};var Oa=La;function Pa(t,e){const i={};for(const s in e)i[s]={component:t,props:{icon:e[s].split(" fa-")}};return i}var Ha=Pa("font-awesome-icon",cs),Fa=Object.freeze({mdiSvg:Aa,md:Ba,mdi:Ma,fa:cs,fa4:Oa,faSvg:Ha});class We extends mt{constructor(e){super();const{iconfont:i,values:s,component:n}=e[We.property];this.component=n,this.iconfont=i,this.values=Nt(Fa[i],s)}}We.property="icons";const us="$vuetify.",ds=Symbol("Lang fallback");function ps(t,e,i=!1,s){const n=e.replace(us,"");let r=y(t,n,ds);return r===ds&&(i?(X(`Translation key "${n}" not found in fallback`),r=e):(V(`Translation key "${n}" not found, falling back to default`),r=ps(s,e,!0,s))),r}class ze extends mt{constructor(e){super();this.defaultLocale="en";const{current:i,locales:s,t:n}=e[ze.property];this.current=i,this.locales=s,this.translator=n||this.defaultTranslator}currentLocale(e){const i=this.locales[this.current],s=this.locales[this.defaultLocale];return ps(i,e,!1,s)}t(e,...i){return e.startsWith(us)?this.translator(e,...i):this.replace(e,i)}defaultTranslator(e,...i){return this.replace(this.currentLocale(e),i)}replace(e,i){return e.replace(/\{(\d+)\}/g,(s,n)=>String(i[+n]))}}ze.property="lang";var td="",Na={badge:"Badge",close:"Close",dataIterator:{noResultsText:"No matching records found",loadingText:"Loading items..."},dataTable:{itemsPerPageText:"Rows per page:",ariaLabel:{sortDescending:"Sorted descending.",sortAscending:"Sorted ascending.",sortNone:"Not sorted.",activateNone:"Activate to remove sorting.",activateDescending:"Activate to sort descending.",activateAscending:"Activate to sort ascending."},sortBy:"Sort by"},dataFooter:{itemsPerPageText:"Items per page:",itemsPerPageAll:"All",nextPage:"Next page",prevPage:"Previous page",firstPage:"First page",lastPage:"Last page",pageText:"{0}-{1} of {2}"},datePicker:{itemsSelected:"{0} selected",nextMonthAriaLabel:"Next month",nextYearAriaLabel:"Next year",prevMonthAriaLabel:"Previous month",prevYearAriaLabel:"Previous year"},noDataText:"No data available",carousel:{prev:"Previous visual",next:"Next visual",ariaLabel:{delimiter:"Carousel slide {0} of {1}"}},calendar:{moreEvents:"{0} more"},fileInput:{counter:"{0} files",counterSize:"{0} files ({1} in total)"},timePicker:{am:"AM",pm:"PM"},pagination:{ariaLabel:{wrapper:"Pagination Navigation",next:"Next page",previous:"Previous page",page:"Goto Page {0}",currentPage:"Current Page, Page {0}"}},rating:{ariaLabel:{icon:"Rating {0} of {1}"}}};const Wa={breakpoint:{mobileBreakpoint:1264,scrollBarWidth:16,thresholds:{xs:600,sm:960,md:1280,lg:1920}},icons:{iconfont:"mdi",values:{}},lang:{current:"en",locales:{en:Na},t:void 0},rtl:!1,theme:{dark:!1,default:"light",disable:!1,options:{cspNonce:void 0,customProperties:void 0,minifyTheme:void 0,themeCache:void 0,variations:!0},themes:{light:{primary:"#1976D2",secondary:"#424242",accent:"#82B1FF",error:"#FF5252",info:"#2196F3",success:"#4CAF50",warning:"#FB8C00"},dark:{primary:"#2196F3",secondary:"#424242",accent:"#FF4081",error:"#FF5252",info:"#2196F3",success:"#4CAF50",warning:"#FB8C00"}}}};class fs extends mt{constructor(e,i){super();const s=Nt({},Wa),{userPreset:n}=i,o=n,{preset:r={}}=o,a=Z(o,["preset"]);r.preset!=null&&V("Global presets do not support the **preset** option, it can be safely omitted"),i.preset=Nt(Nt(s,r),a)}}fs.property="presets";const za=[[3.2406,-1.5372,-.4986],[-.9689,1.8758,.0415],[.0557,-.204,1.057]],Ra=t=>t<=.0031308?t*12.92:1.055*t**(1/2.4)-.055,Ya=[[.4124,.3576,.1805],[.2126,.7152,.0722],[.0193,.1192,.9505]],ja=t=>t<=.04045?t/12.92:((t+.055)/1.055)**2.4;function ms(t){const e=Array(3),i=Ra,s=za;for(let n=0;n<3;++n)e[n]=Math.round(qe(i(s[n][0]*t[0]+s[n][1]*t[1]+s[n][2]*t[2]))*255);return(e[0]<<16)+(e[1]<<8)+(e[2]<<0)}function ue(t){const e=[0,0,0],i=ja,s=Ya,n=i((t>>16&255)/255),r=i((t>>8&255)/255),a=i((t>>0&255)/255);for(let o=0;o<3;++o)e[o]=s[o][0]*n+s[o][1]*r+s[o][2]*a;return e}function gs(t){return!!t&&!!t.match(/^(#|var\(--|(rgb|hsl)a?\()/)}function Qe(t){let e;if(typeof t=="number")e=t;else if(typeof t=="string"){let i=t[0]==="#"?t.substring(1):t;i.length===3&&(i=i.split("").map(s=>s+s).join("")),i.length!==6&&V(`'${t}' is not a valid rgb color`),e=parseInt(i,16)}else throw new TypeError(`Colors can only be numbers or strings, recieved ${t==null?t:t.constructor.name} instead`);return e<0?(V(`Colors cannot be negative: '${t}'`),e=0):(e>16777215||isNaN(e))&&(V(`'${t}' is not a valid rgb color`),e=16777215),e}function Wt(t){let e=t.toString(16);return e.length<6&&(e="0".repeat(6-e.length)+e),"#"+e}function Ga(t){return Wt(Qe(t))}function de(t){const{h:e,s:i,v:s,a:n}=t,r=o=>{const h=(o+e/60)%6;return s-s*i*Math.max(Math.min(h,4-h,1),0)},a=[r(5),r(3),r(1)].map(o=>Math.round(o*255));return{r:a[0],g:a[1],b:a[2],a:n}}function vs(t){if(!t)return{h:0,s:1,v:1,a:1};const e=t.r/255,i=t.g/255,s=t.b/255,n=Math.max(e,i,s),r=Math.min(e,i,s);let a=0;n!==r&&(n===e?a=60*(0+(i-s)/(n-r)):n===i?a=60*(2+(s-e)/(n-r)):n===s&&(a=60*(4+(e-i)/(n-r)))),a<0&&(a=a+360);const o=n===0?0:(n-r)/n,h=[a,o,n];return{h:h[0],s:h[1],v:h[2],a:t.a}}function Je(t){const{h:e,s:i,v:s,a:n}=t,r=s-s*i/2,a=r===1||r===0?0:(s-r)/Math.min(r,1-r);return{h:e,s:a,l:r,a:n}}function Ua(t){const{h:e,s:i,l:s,a:n}=t,r=s+i*Math.min(s,1-s),a=r===0?0:2-2*s/r;return{h:e,s:a,v:r,a:n}}function ys(t){return`rgba(${t.r}, ${t.g}, ${t.b}, ${t.a})`}function Xa(t){return ys(p(l({},t),{a:1}))}function bs(t){const e=i=>{const s=Math.round(i).toString(16);return("00".substr(0,2-s.length)+s).toUpperCase()};return`#${[e(t.r),e(t.g),e(t.b),e(Math.round(t.a*255))].join("")}`}function Ka(t){const e=Ta(t.slice(1),2).map(i=>parseInt(i,16));return{r:e[0],g:e[1],b:e[2],a:Math.round(e[3]/255*100)/100}}function qa(t){const e=Ka(t);return vs(e)}function $s(t){return bs(de(t))}function ti(t){return t.startsWith("#")&&(t=t.slice(1)),t=t.replace(/([^0-9a-f])/gi,"F"),(t.length===3||t.length===4)&&(t=t.split("").map(e=>e+e).join("")),t.length===6?t=Ze(t,8,"F"):t=Ze(Ze(t,6),8,"F"),`#${t}`.toUpperCase().substr(0,9)}function Ss(t){return(t.r<<16)+(t.g<<8)+t.b}function xs(t,e){const[,i]=ue(Ss(t)),[,s]=ue(Ss(e));return(Math.max(i,s)+.05)/(Math.min(i,s)+.05)}const pe=.20689655172413793,Za=t=>t>pe**3?Math.cbrt(t):t/(3*pe**2)+4/29,Qa=t=>t>pe?t**3:3*pe**2*(t-4/29);function Cs(t){const e=Za,i=e(t[1]);return[116*i-16,500*(e(t[0]/.95047)-i),200*(i-e(t[2]/1.08883))]}function ws(t){const e=Qa,i=(t[0]+16)/116;return[e(i+t[1]/500)*.95047,e(i),e(i-t[2]/200)*1.08883]}function ks(t,e=!1,i=!0){const o=t,{anchor:s}=o,n=Z(o,["anchor"]),r=Object.keys(n),a={};for(let h=0;h<r.length;++h){const c=r[h],u=t[c];u!=null&&(i?e?(c==="base"||c.startsWith("lighten")||c.startsWith("darken"))&&(a[c]=Ga(u)):typeof u=="object"?a[c]=ks(u,!0,i):a[c]=io(c,Qe(u)):a[c]={base:Wt(Qe(u))})}return e||(a.anchor=s||a.base||a.primary.base),a}const Ja=(t,e)=>`
|
package/dist/assets/vuetify.js
CHANGED
@@ -1,2 +1,2 @@
|
|
1
|
-
export * from "./vuetify.
|
2
|
-
export { default } from "./vuetify.
|
1
|
+
export * from "./vuetify.cc817b.js";
|
2
|
+
export { default } from "./vuetify.cc817b.js";
|
package/dist/index.html
CHANGED
@@ -7,7 +7,7 @@
|
|
7
7
|
rel="stylesheet"
|
8
8
|
href="https://fonts.googleapis.com/css?family=Titillium+Web"
|
9
9
|
/>
|
10
|
-
<script type="module" crossorigin src="./assets/index.
|
10
|
+
<script type="module" crossorigin src="./assets/index.889d0f3a.js"></script>
|
11
11
|
<link rel="stylesheet" href="./assets/index.60dea538.css">
|
12
12
|
</head>
|
13
13
|
<body style="height: 100vH;">
|
package/index.js
CHANGED
@@ -1,18 +1,108 @@
|
|
1
1
|
import './src/setup.js';
|
2
2
|
import './src/styles/main.scss';
|
3
3
|
|
4
|
-
export {
|
5
|
-
export {
|
6
|
-
|
7
|
-
|
8
|
-
|
4
|
+
export { default as StyleSelector } from './src/actions/styleSelector.vue';
|
5
|
+
export {
|
6
|
+
createMapButtonAction,
|
7
|
+
createToggleAction,
|
8
|
+
createOverviewMapAction,
|
9
|
+
createModalAction,
|
10
|
+
createLinkAction,
|
11
|
+
createGoToViewpointAction,
|
12
|
+
} from './src/actions/actionHelper.js';
|
13
|
+
export {
|
14
|
+
createStateRefAction,
|
15
|
+
} from './src/actions/stateRefAction.js';
|
16
|
+
|
9
17
|
export { default as EmptyCmpt } from './src/application/empty-cmp.vue';
|
18
|
+
export { default as Navbar } from './src/application/Navbar.vue';
|
19
|
+
export { default as VcsApp } from './src/application/VcsApp.vue';
|
20
|
+
export { default as VcsMap } from './src/application/VcsMap.vue';
|
21
|
+
|
22
|
+
export {
|
23
|
+
default as ContentTreeCollection,
|
24
|
+
createContentTreeCollection,
|
25
|
+
} from './src/contentTree/contentTreeCollection.js';
|
10
26
|
export { default as ContentTreeItem } from './src/contentTree/contentTreeItem.js';
|
11
27
|
export { default as GroupContentTreeItem } from './src/contentTree/groupContentTreeItem.js';
|
12
|
-
export {
|
28
|
+
export {
|
29
|
+
default as LayerContentTreeItem,
|
30
|
+
setViewpointAction,
|
31
|
+
getStateFromLayer,
|
32
|
+
} from './src/contentTree/layerContentTreeItem.js';
|
13
33
|
export { default as LayerGroupContentTreeItem } from './src/contentTree/layerGroupContentTreeItem.js';
|
34
|
+
export { default as LayerTree } from './src/contentTree/LayerTree.vue';
|
14
35
|
export { default as NodeContentTreeItem } from './src/contentTree/nodeContentTreeItem.js';
|
15
36
|
export { default as ObliqueCollectionContentTreeItem } from './src/contentTree/obliqueCollectionContentTreeItem.js';
|
16
37
|
export { default as SubContentTreeItem } from './src/contentTree/subContentTreeItem.js';
|
17
38
|
export { default as VcsObjectContentTreeItem } from './src/contentTree/vcsObjectContentTreeItem.js';
|
18
39
|
export { default as ViewPointContentTreeItem } from './src/contentTree/viewPointContentTreeItem.js';
|
40
|
+
|
41
|
+
export { default as WindowComponent } from './src/manager/window/WindowComponent.vue';
|
42
|
+
export { default as WindowComponentHeader } from './src/manager/window/WindowComponentHeader.vue';
|
43
|
+
export { default as VcsWindowManager } from './src/manager/window/WindowManager.vue';
|
44
|
+
export { WindowManager, WindowSlot, WindowPositions } from './src/manager/window/windowManager.js';
|
45
|
+
|
46
|
+
export { ButtonManager } from './src/manager/buttonManager.js';
|
47
|
+
export { NavbarManager, ButtonLocation, getActionsByLocation } from './src/manager/navbarManager.js';
|
48
|
+
|
49
|
+
export { default as MapNavCompass } from './src/navigation/mapNavCompass.vue';
|
50
|
+
export { default as MapNavigation } from './src/navigation/mapNavigation.vue';
|
51
|
+
export { default as ObliqueRotation } from './src/navigation/obliqueRotation.vue';
|
52
|
+
export { default as OrientationToolsButton } from './src/navigation/orientationToolsButton.vue';
|
53
|
+
export { getWindowComponentOptions, default as OverviewMap } from './src/navigation/overviewMap.js';
|
54
|
+
export { default as OverviewMapClickedInteraction } from './src/navigation/overviewMapClickedInteraction.js';
|
55
|
+
export { default as TiltSlider } from './src/navigation/tiltSlider.vue';
|
56
|
+
export { default as VcsCompass } from './src/navigation/vcsCompass.vue';
|
57
|
+
export { default as VcsZoomButton } from './src/navigation/vcsZoomButton.vue';
|
58
|
+
|
59
|
+
export { i18n } from './src/vuePlugins/i18n.js';
|
60
|
+
export { vuetify } from './src/vuePlugins/vuetify.js';
|
61
|
+
export { default as initApp } from './src/init.js';
|
62
|
+
export {
|
63
|
+
vcsAppSymbol,
|
64
|
+
pluginFactorySymbol,
|
65
|
+
isValidPackageName,
|
66
|
+
loadPlugin,
|
67
|
+
serializePlugin,
|
68
|
+
deserializePlugin,
|
69
|
+
} from './src/pluginHelper.js';
|
70
|
+
export { default as VcsUiApp } from './src/vcsUiApp.js';
|
71
|
+
export { default as Icons } from './src/icons/+all.js';
|
72
|
+
|
73
|
+
export { default as VcsButton } from './src/components/buttons/VcsButton.vue';
|
74
|
+
export { default as VcsActionButtonList } from './src/components/buttons/VcsActionButtonList.vue';
|
75
|
+
export { default as VcsTooltip } from './src/components/notification/VcsTooltip.vue';
|
76
|
+
|
77
|
+
// export { default as VcsConfirmationDialog } from './src/components/dialogs/VcsConfirmationDialog.vue';
|
78
|
+
|
79
|
+
export { default as VcsLabel } from './src/components/form-inputs-controls/VcsLabel.vue';
|
80
|
+
export { default as VcsCheckbox } from './src/components/form-inputs-controls/VcsCheckbox.vue';
|
81
|
+
// export { default as VcsColorPicker } from './src/components/form-inputs-controls/VcsColorPicker.vue';
|
82
|
+
export { default as VcsFormSection } from './src/components/form-inputs-controls/VcsFormSection.vue';
|
83
|
+
// export { default as VcsInputColumnCoordinates } from './src/components/form-inputs-controls/VcsInputColumnCoordinates.vue';
|
84
|
+
// export { default as VcsInputColumnDimensions } from './src/components/form-inputs-controls/VcsInputColumnDimensions.vue';
|
85
|
+
// export { default as VcsMinimalCheckbox } from './src/components/form-inputs-controls/VcsMinimalCheckbox.vue';
|
86
|
+
export { default as VcsSelect } from './src/components/form-inputs-controls/VcsSelect.vue';
|
87
|
+
export { default as VcsTextField } from './src/components/form-inputs-controls/VcsTextField.vue';
|
88
|
+
export { default as VcsTextArea } from './src/components/form-inputs-controls/VcsTextArea.vue';
|
89
|
+
|
90
|
+
export { default as VcsFormattedNumber } from './src/components/form-output/VcsFormattedNumber.vue';
|
91
|
+
|
92
|
+
export { default as VcsActionList, validateActions } from './src/components/lists/VcsActionList.vue';
|
93
|
+
// export { default as VcsEndlessList } from './src/components/lists/VcsEndlessList.vue';
|
94
|
+
export { default as VcsTreeview } from './src/components/lists/VcsTreeview.vue';
|
95
|
+
export { default as VcsTreeviewLeaf } from './src/components/lists/VcsTreeviewLeaf.vue';
|
96
|
+
// export { default as VcsTreeviewSearchbar } from './src/components/lists/VcsTreeviewSearchbar.vue';
|
97
|
+
|
98
|
+
// export { default as VcsMediaControls } from './src/components/media-controls/VcsMediaControls.vue';
|
99
|
+
|
100
|
+
// export { default as VcsContextMenu } from './src/components/menus/VcsContextMenu.vue';
|
101
|
+
// export { default as VcsMenu } from './src/components/menus/VcsMenu.vue';
|
102
|
+
// export { default as VcsOverflowMenu } from './src/components/menus/VcsOverflowMenu.vue';
|
103
|
+
|
104
|
+
|
105
|
+
// export { default as VcsBadge } from './src/components/notification/VcsBadge.vue';
|
106
|
+
|
107
|
+
// export { default as VcsFileNamePopover } from './src/components/popovers/VcsFileNamePopover.vue';
|
108
|
+
// export { default as VcsTexturePopover } from './src/components/popovers/VcsTexturePopover.vue';
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "@vcmap/ui",
|
3
|
-
"version": "5.0.0-rc.
|
3
|
+
"version": "5.0.0-rc.9",
|
4
4
|
"author": "Virtual City Systems",
|
5
5
|
"license": "MIT",
|
6
6
|
"scripts": {
|
@@ -41,9 +41,8 @@
|
|
41
41
|
"vue-i18n": "^8.24.1"
|
42
42
|
},
|
43
43
|
"peerDependencies": {
|
44
|
-
"@vcmap/cesium": "~1.
|
45
|
-
"@vcmap/core": "^5.0.0-rc.
|
46
|
-
"@vcsuite/ui-components": "~0.1.13",
|
44
|
+
"@vcmap/cesium": "~1.93.1",
|
45
|
+
"@vcmap/core": "^5.0.0-rc.12",
|
47
46
|
"@vue/composition-api": "~1.4.5",
|
48
47
|
"ol": "~6.13.0",
|
49
48
|
"vue": "~2.6.14",
|
@@ -166,11 +166,11 @@ export default function (config) {
|
|
166
166
|
app.windowManager,
|
167
167
|
packageJSON.name,
|
168
168
|
);
|
169
|
-
app.navbarManager.add(
|
170
|
-
id: 'pluginExample',
|
171
|
-
|
172
|
-
|
173
|
-
|
169
|
+
app.navbarManager.add(
|
170
|
+
{ id: 'pluginExample', action },
|
171
|
+
packageJSON.name,
|
172
|
+
ButtonLocation.TOOL,
|
173
|
+
);
|
174
174
|
this._destroyAction = destroy;
|
175
175
|
},
|
176
176
|
toJSON: async () => {
|
@@ -224,11 +224,11 @@ export default async function projectSelector(config) {
|
|
224
224
|
app.windowManager,
|
225
225
|
packageJSON.name,
|
226
226
|
);
|
227
|
-
app.navbarManager.add(
|
228
|
-
id: 'project-selector',
|
229
|
-
|
230
|
-
|
231
|
-
|
227
|
+
app.navbarManager.add(
|
228
|
+
{ id: 'project-selector', action },
|
229
|
+
packageJSON.name,
|
230
|
+
ButtonLocation.PROJECT,
|
231
|
+
);
|
232
232
|
this._destroyAction = destroy;
|
233
233
|
|
234
234
|
pluginConfig.contexts.value.forEach(c => addContextFromOptions(c));
|
@@ -1,6 +1,6 @@
|
|
1
1
|
import { ref } from '@vue/composition-api';
|
2
2
|
import { check } from '@vcsuite/check';
|
3
|
-
import {
|
3
|
+
import { ButtonLocation, createToggleAction, vuetify } from '@vcmap/ui';
|
4
4
|
import ThemeChangerComponent from './ThemeChangerComponent.vue';
|
5
5
|
import packageJSON from './package.json';
|
6
6
|
import defaultConfig from './config.json';
|
@@ -85,11 +85,11 @@ export default async function themeChanger(config) {
|
|
85
85
|
app.windowManager,
|
86
86
|
packageJSON.name,
|
87
87
|
);
|
88
|
-
app.navbarManager.add(
|
89
|
-
id: 'theme-changer',
|
90
|
-
|
91
|
-
|
92
|
-
|
88
|
+
app.navbarManager.add(
|
89
|
+
{ id: 'theme-changer', action },
|
90
|
+
packageJSON.name,
|
91
|
+
ButtonLocation.MENU,
|
92
|
+
);
|
93
93
|
this._destroyAction = destroy;
|
94
94
|
},
|
95
95
|
destroy() {
|
@@ -24,10 +24,11 @@ export default async function buttonExamples() {
|
|
24
24
|
app.windowManager,
|
25
25
|
'buttonExamples',
|
26
26
|
);
|
27
|
-
app.navbarManager.add(
|
28
|
-
|
29
|
-
|
30
|
-
|
27
|
+
app.navbarManager.add(
|
28
|
+
{ action },
|
29
|
+
'buttonExamples',
|
30
|
+
ButtonLocation.TOOL,
|
31
|
+
);
|
31
32
|
this._destroyAction = destroy;
|
32
33
|
},
|
33
34
|
destroy() {
|
@@ -49,7 +49,7 @@
|
|
49
49
|
|
50
50
|
<script>
|
51
51
|
import { inject, nextTick, ref } from '@vue/composition-api';
|
52
|
-
import { VcsButton } from '@
|
52
|
+
import { VcsButton } from '@vcmap/ui';
|
53
53
|
import { getObjectFromClassRegistry } from '@vcmap/core';
|
54
54
|
|
55
55
|
export default {
|
@@ -24,11 +24,11 @@ export default async function categoryTest() {
|
|
24
24
|
app.windowManager,
|
25
25
|
'@vcmap/categoryTest',
|
26
26
|
);
|
27
|
-
app.navbarManager.add(
|
28
|
-
id: 'category-editor',
|
29
|
-
|
30
|
-
|
31
|
-
|
27
|
+
app.navbarManager.add(
|
28
|
+
{ id: 'category-editor', action },
|
29
|
+
'@vcmap/categoryTest',
|
30
|
+
ButtonLocation.TOOL,
|
31
|
+
);
|
32
32
|
this._destroyAction = destroy;
|
33
33
|
},
|
34
34
|
destroy() {
|
package/plugins/example/index.js
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
/* eslint-disable no-console */
|
2
|
-
import { ButtonLocation, createToggleAction,
|
2
|
+
import { ButtonLocation, createToggleAction, WindowSlot } from '@vcmap/ui';
|
3
3
|
import mySuperComponent from './mySuperComponent.vue';
|
4
4
|
|
5
5
|
/**
|
@@ -19,6 +19,7 @@ export default async function (config) {
|
|
19
19
|
const { action, destroy } = createToggleAction(
|
20
20
|
{
|
21
21
|
name: 'Example',
|
22
|
+
icon: '$vcsPointSelect',
|
22
23
|
},
|
23
24
|
{
|
24
25
|
id: '228',
|
@@ -32,19 +33,37 @@ export default async function (config) {
|
|
32
33
|
'@vcmap/example',
|
33
34
|
);
|
34
35
|
this._destroyAction = destroy;
|
35
|
-
app.navbarManager.add(
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
36
|
+
app.navbarManager.add(
|
37
|
+
{
|
38
|
+
action,
|
39
|
+
},
|
40
|
+
'@vcmap/example',
|
41
|
+
ButtonLocation.TOOL,
|
42
|
+
);
|
43
|
+
const buttonComponents = [
|
44
|
+
{
|
45
|
+
id: 'distance3D',
|
46
|
+
action: {
|
47
|
+
name: 'distance3D',
|
48
|
+
title: '3D distance',
|
49
|
+
icon: '$vcs3dDistance',
|
50
|
+
active: false,
|
51
|
+
callback() { this.active = !this.active; },
|
52
|
+
},
|
53
|
+
},
|
54
|
+
{
|
55
|
+
id: 'area3D',
|
56
|
+
action: {
|
57
|
+
name: 'area3D',
|
58
|
+
title: '3D area',
|
59
|
+
icon: '$vcs3dArea',
|
60
|
+
active: false,
|
61
|
+
callback() { this.active = !this.active; },
|
62
|
+
},
|
63
|
+
},
|
64
|
+
];
|
65
|
+
const measurementGroup = app.toolboxManager.requestGroup('measurement');
|
66
|
+
buttonComponents.forEach(c => measurementGroup.buttonManager.add(c, '@vcmap/example'));
|
48
67
|
},
|
49
68
|
destroy() {
|
50
69
|
if (this._destroyAction) {
|
@@ -0,0 +1,34 @@
|
|
1
|
+
<template>
|
2
|
+
<v-sheet class="overflow-auto icons-window">
|
3
|
+
<v-list>
|
4
|
+
<v-list-item
|
5
|
+
v-for="icon in icons"
|
6
|
+
:key="icon"
|
7
|
+
>
|
8
|
+
<v-list-item-title>{{ icon }}</v-list-item-title>
|
9
|
+
<v-list-item-icon>
|
10
|
+
<v-icon>{{ icon }}</v-icon>
|
11
|
+
</v-list-item-icon>
|
12
|
+
</v-list-item>
|
13
|
+
</v-list>
|
14
|
+
</v-sheet>
|
15
|
+
</template>
|
16
|
+
|
17
|
+
<script>
|
18
|
+
import { Icons } from '@vcmap/ui';
|
19
|
+
|
20
|
+
export default {
|
21
|
+
name: 'AllIconsComponent',
|
22
|
+
computed: {
|
23
|
+
icons() {
|
24
|
+
return Object.keys(Icons).map(n => `$${n}`);
|
25
|
+
},
|
26
|
+
},
|
27
|
+
};
|
28
|
+
</script>
|
29
|
+
|
30
|
+
<style scoped>
|
31
|
+
.icons-window {
|
32
|
+
max-height: 600px;
|
33
|
+
}
|
34
|
+
</style>
|
package/plugins/test/editor.vue
CHANGED
package/plugins/test/index.js
CHANGED
@@ -4,6 +4,7 @@ import { ButtonLocation, createToggleAction, WindowSlot } from '@vcmap/ui';
|
|
4
4
|
import { toolboxData } from './toolbox-data.js';
|
5
5
|
import editor from './editor.vue';
|
6
6
|
import windowManagerExample from './windowManagerExample.vue';
|
7
|
+
import AllIconsComponent from './allIconsComponent.vue';
|
7
8
|
|
8
9
|
let source;
|
9
10
|
|
@@ -58,7 +59,21 @@ export default async function () {
|
|
58
59
|
app.windowManager,
|
59
60
|
'@vcmap/test',
|
60
61
|
);
|
61
|
-
|
62
|
+
const { action: iconAction, destroy: destroyIconAction } = createToggleAction(
|
63
|
+
{
|
64
|
+
name: 'Icons',
|
65
|
+
},
|
66
|
+
{
|
67
|
+
id: 'allIcons',
|
68
|
+
state: {
|
69
|
+
headerTitle: 'All Icons',
|
70
|
+
},
|
71
|
+
component: AllIconsComponent,
|
72
|
+
},
|
73
|
+
app.windowManager,
|
74
|
+
'@vcmap/test',
|
75
|
+
);
|
76
|
+
this._destroyActions = [destroyConfigEditorAction, destroyWindowAction, destroyIconAction];
|
62
77
|
const alertAction = {
|
63
78
|
name: 'VC Systems',
|
64
79
|
callback() {
|
@@ -66,22 +81,30 @@ export default async function () {
|
|
66
81
|
window.alert(`there are ${getSource().getFeatures().length} features ${app.maps.activeMap.name}`);
|
67
82
|
},
|
68
83
|
};
|
69
|
-
app.navbarManager.add(
|
70
|
-
id: 'config-editor',
|
71
|
-
|
72
|
-
|
73
|
-
|
74
|
-
app.navbarManager.add(
|
75
|
-
id: 'windowManagerExample',
|
76
|
-
|
77
|
-
|
78
|
-
|
79
|
-
app.navbarManager.add(
|
80
|
-
id: '
|
81
|
-
|
82
|
-
|
83
|
-
|
84
|
-
|
84
|
+
app.navbarManager.add(
|
85
|
+
{ id: 'config-editor', action: configEditorAction },
|
86
|
+
'@vcmap/test',
|
87
|
+
ButtonLocation.TOOL,
|
88
|
+
);
|
89
|
+
app.navbarManager.add(
|
90
|
+
{ id: 'windowManagerExample', action: windowAction },
|
91
|
+
'@vcmap/test',
|
92
|
+
ButtonLocation.TOOL,
|
93
|
+
);
|
94
|
+
app.navbarManager.add(
|
95
|
+
{ id: 'allIcons', action: iconAction },
|
96
|
+
'@vcmap/test',
|
97
|
+
ButtonLocation.TOOL,
|
98
|
+
);
|
99
|
+
app.navbarManager.add(
|
100
|
+
{ id: 'alert', action: alertAction },
|
101
|
+
'@vcmap/test',
|
102
|
+
ButtonLocation.TOOL,
|
103
|
+
);
|
104
|
+
toolboxData.forEach(([{ id, icon, title, buttonComponents }, owner]) => {
|
105
|
+
const group = app.toolboxManager.requestGroup(id, icon, title);
|
106
|
+
buttonComponents.forEach(c => group.buttonManager.add(c, owner));
|
107
|
+
});
|
85
108
|
},
|
86
109
|
destroy() {
|
87
110
|
if (this._destroyActions) {
|