{"version":3,"sources":["webpack:///./src/components/Controls/Map.vue?d873","webpack:///./src/components/Controls/Map.vue?7191","webpack:///./src/components/Controls/Map.vue?3aa0","webpack:///./src/components/Controls/Map.vue","webpack:///./src/components/Controls/Map.vue?e242","webpack:///./src/components/Config/DataModal.vue?5b9f","webpack:///./src/components/Config/DataModal.vue?60a7","webpack:///./src/components/Config/DataModal.vue?1fd0","webpack:///./src/components/Config/DataModal.vue"],"names":["render","_vm","this","_h","$createElement","_c","_self","staticClass","ref","attrs","_v","_s","drawArgs","markerText","drawType","markerDrawType","Path","on","finishDrawing","_e","staticRenderFns","MapDisplay","mapKey","process","enhancedMapping","map","currentDrawing","MarkerDrawType","lat","lng","getEnhancedMapping","mapStyle","getMapStyle","darkMode","mapProvider","createMap","$refs","mappingContainer","location","registerEvent","mapClick","Vue","nextTick","then","setMapping","mapElement","boundsSet","navigator","geolocation","getCurrentPosition","pos","center","coords","latitude","longitude","zoom","startDraw","clearMarkers","off","remove","setCursor","clickLocation","Point","set","addPoint","states","first","imageUrl","colorName","opacity","line","color","linePath","last","Region","markerType","MarkerType","MultiMarker","clickedMarker","index","lineMarkers","marker","position","__decorate","Inject","State","Component","components","component","title","modalSize","scopedSlots","_u","key","fn","ok","_t","item","canDelete","deleting","id","$event","deleteItem","canEdit","isDeleteButtonDisabled","deleteConfirm","class","isSaveButtonDisabled","save","deleteDetailsItem","name","label","model","value","callback","$$v","deleteConfirmText","expression","displayColumns","valid","DataModal","MapProvider","deleteConfirmButtonDisabled","saveButtonDisabled","itemOverrideColumns","confirmDelete","canDeleteItem","canConfirmDelete","editModal","show","columns","allowMap","some","c","dataType","$emit","hide","deleteDetails","Provide","Prop","type","Boolean","default","String","vSelect","FieldPermissions","DataForm"],"mappings":"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","file":"js/chunk-53232726.bdd14736.js","sourcesContent":["var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"enhanced-map-wrapper ps__child--consume\"},[_c('div',{ref:\"mappingContainer\",staticClass:\"h-100\",attrs:{\"id\":\"divMappingContainer\"}}),(_vm.drawArgs)?_c('div',{staticClass:\"draw-text alert alert-secondary\"},[_vm._v(\" Drawing \"+_vm._s(_vm.drawArgs.markerText)+\" \"),(_vm.drawArgs.drawType === _vm.markerDrawType.Path)?_c('a',{staticClass:\"btn btn-primary m-l-20\",on:{\"click\":_vm.finishDrawing}},[_vm._v(\"Done\")]):_vm._e()]):_vm._e()])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\nimport { Component, Vue, Prop, Watch, InjectReactive, Inject } from \"vue-property-decorator\"\r\nimport { State } from \"vuex-class\"\r\n\r\nimport { get, set } from \"lodash\"\r\n\r\n// @ts-ignore\r\nimport { Datetime } from \"vue-datetime\"\r\nimport vSelect from \"vue-select\"\r\n\r\nimport { getMapStyle } from \"@/scripts/mapStyle\"\r\n\r\nimport {\r\n\tgetEnhancedMapping,\r\n\tIEnhancedMapping,\r\n\tIMap,\r\n\tIMarker,\r\n\tILatLng,\r\n\tILatLngBounds,\r\n\tMultiMarker,\r\n\tMarkerType\r\n} from \"@sureview/v2-mapping\"\r\n\r\nimport { MapProvider, DrawArguments, MarkerDrawType } from \"@/services/mapProvider\"\r\n\r\n@Component({\r\n\tcomponents: {\r\n\t}\r\n})\r\nexport default class MapDisplay extends Vue {\r\n\t$refs!: {\r\n\t\tmappingContainer: HTMLElement,\r\n\t}\r\n\r\n\t@Inject(\"mapProvider\") mapProvider!: MapProvider;\r\n\r\n\t@State darkMode!: boolean;\r\n\r\n\tpublic mapKey: string = process.env.VUE_APP_GOOGLE_MAPS_API_KEY || \"\";\r\n\r\n\tpublic enhancedMapping: IEnhancedMapping | null = null;\r\n\tpublic map: IMap | null = null;\r\n\r\n\tprivate drawArgs: DrawArguments | null = null;\r\n\tprivate currentDrawing: MultiMarker | null = null;\r\n\r\n\tprivate markerDrawType = MarkerDrawType;\r\n\r\n\tget location () {\r\n\t\treturn { lat: 0, lng: 0 }\r\n\t}\r\n\r\n\tasync mounted () {\r\n\t\tthis.enhancedMapping = await getEnhancedMapping(\"google\", this.mapKey)\r\n\r\n\t\tconst mapStyle = getMapStyle(this.darkMode, \"roadmap\", false)\r\n\r\n\t\tif (this.mapProvider) {\r\n\t\t\tthis.mapProvider.mapStyle = mapStyle\r\n\t\t}\r\n\r\n\t\tthis.map = this.enhancedMapping.createMap(\r\n\t\t\tthis.$refs.mappingContainer,\r\n\t\t\tthis.location,\r\n\t\t\t2,\r\n\t\t\tfalse,\r\n\t\t\t\"roadmap\",\r\n\t\t\tmapStyle\r\n\t\t)\r\n\r\n\t\tthis.map!.registerEvent(\"onClick\", this.mapClick)\r\n\r\n\t\tif (this.mapProvider) {\r\n\t\t\tVue.nextTick().then(() => {\r\n\t\t\t\tthis.mapProvider.setMapping(this.enhancedMapping!, this.map!)\r\n\t\t\t\tthis.mapProvider.mapElement = this.$refs.mappingContainer\r\n\r\n\t\t\t\tif (!this.mapProvider.boundsSet) {\r\n\t\t\t\t\tnavigator.geolocation.getCurrentPosition((pos: any) => {\r\n\t\t\t\t\t\tthis.map!.center = {\r\n\t\t\t\t\t\t\tlat: pos.coords.latitude,\r\n\t\t\t\t\t\t\tlng: pos.coords.longitude\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\tthis.map!.zoom = 16\r\n\t\t\t\t\t})\r\n\t\t\t\t}\r\n\t\t\t})\r\n\r\n\t\t\tthis.mapProvider.on(\"startDraw\", this.startDraw)\r\n\t\t}\r\n\t}\r\n\r\n\tbeforeDestroy () {\r\n\t\tif (this.mapProvider) {\r\n\t\t\tthis.mapProvider.clearMarkers()\r\n\t\t\tthis.mapProvider.off(\"startDraw\", this.startDraw)\r\n\t\t}\r\n\r\n\t\tif (this.currentDrawing) {\r\n\t\t\tthis.currentDrawing.remove()\r\n\t\t\tthis.currentDrawing = null\r\n\t\t}\r\n\t}\r\n\r\n\tstartDraw (drawArgs: DrawArguments) {\r\n\t\tthis.map!.setCursor(\"crosshair\")\r\n\t\tthis.drawArgs = drawArgs\r\n\t}\r\n\r\n\tmapClick (clickLocation: { lat: number, lng: number }) {\r\n\t\tif (this.drawArgs) {\r\n\t\t\tif (this.drawArgs.drawType === MarkerDrawType.Point) {\r\n\t\t\t\tthis.drawArgs.set({ ...clickLocation, zoom: this.map!.zoom })\r\n\t\t\t\tthis.drawArgs = null\r\n\t\t\t\tthis.map!.setCursor(\"grab\")\r\n\t\t\t} else {\r\n\t\t\t\tif (!this.currentDrawing) {\r\n\t\t\t\t\tconst states = (this.drawArgs!.drawType === MarkerDrawType.Path)\r\n\t\t\t\t\t\t? {\r\n\t\t\t\t\t\t\tfirst: {\r\n\t\t\t\t\t\t\t\timageUrl: `./images/map/${this.drawArgs.colorName}_small.svg`,\r\n\t\t\t\t\t\t\t\topacity: 1,\r\n\t\t\t\t\t\t\t\tline: {\r\n\t\t\t\t\t\t\t\t\tcolor: this.drawArgs.color,\r\n\t\t\t\t\t\t\t\t\tlinePath: \"solid\"\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\tlast: {\r\n\t\t\t\t\t\t\t\timageUrl: `./images/map/${this.drawArgs.colorName}_small.svg`,\r\n\t\t\t\t\t\t\t\topacity: 1,\r\n\t\t\t\t\t\t\t\tline: {\r\n\t\t\t\t\t\t\t\t\tcolor: this.drawArgs.color,\r\n\t\t\t\t\t\t\t\t\tlinePath: \"solid\"\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\t: (this.drawArgs!.drawType === MarkerDrawType.Region)\r\n\t\t\t\t\t\t\t? {\r\n\t\t\t\t\t\t\t\tfirst: {\r\n\t\t\t\t\t\t\t\t\timageUrl: `./images/map/${this.drawArgs.colorName}_small.svg`,\r\n\t\t\t\t\t\t\t\t\topacity: 1,\r\n\t\t\t\t\t\t\t\t\tline: {\r\n\t\t\t\t\t\t\t\t\t\tcolor: this.drawArgs.color,\r\n\t\t\t\t\t\t\t\t\t\tlinePath: \"solid\"\r\n\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t: {}\r\n\r\n\t\t\t\t\tconst markerType = new MarkerType({\r\n\t\t\t\t\t\timageUrl: `./images/map/${this.drawArgs.colorName}_small.svg`,\r\n\t\t\t\t\t\topacity: 0,\r\n\t\t\t\t\t\tline: {\r\n\t\t\t\t\t\t\tcolor: this.drawArgs.color,\r\n\t\t\t\t\t\t\tlinePath: \"solid\"\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}, states)\r\n\r\n\t\t\t\t\tthis.currentDrawing = new MultiMarker(this.enhancedMapping!,\r\n\t\t\t\t\t\tthis.map!,\r\n\t\t\t\t\t\t\"\",\r\n\t\t\t\t\t\tmarkerType,\r\n\t\t\t\t\t\t[clickLocation],\r\n\t\t\t\t\t\t(clickedMarker: IMarker, index: number) => {\r\n\t\t\t\t\t\t\tif (this.drawArgs! && (index === 0 || this.drawArgs!.drawType === MarkerDrawType.Path)) {\r\n\t\t\t\t\t\t\t\tthis.finishDrawing()\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t)\r\n\t\t\t\t} else {\r\n\t\t\t\t\tthis.currentDrawing.addPoint(clickLocation)\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t} else {\r\n\t\t\tthis.map!.setCursor(\"grab\")\r\n\t\t}\r\n\t}\r\n\r\n\tfinishDrawing () {\r\n\t\tif (this.currentDrawing) {\r\n\t\t\tthis.drawArgs!.set(\r\n\t\t\t\tthis.currentDrawing.lineMarkers.map((marker: IMarker) => marker.position)\r\n\t\t\t)\r\n\r\n\t\t\tthis.currentDrawing.remove()\r\n\t\t\tthis.currentDrawing = null\r\n\t\t}\r\n\r\n\t\tthis.drawArgs = null\r\n\t\tthis.map!.setCursor(\"grab\")\r\n\t}\r\n}\r\n\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Map.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Map.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Map.vue?vue&type=template&id=bbe8e3a6&scoped=true&\"\nimport script from \"./Map.vue?vue&type=script&lang=ts&\"\nexport * from \"./Map.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./Map.vue?vue&type=style&index=0&id=bbe8e3a6&prod&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"bbe8e3a6\",\n null\n \n)\n\nexport default component.exports","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Map.vue?vue&type=style&index=0&id=bbe8e3a6&prod&lang=scss&scoped=true&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('b-modal',{ref:\"editModal\",attrs:{\"data-cy\":\"data-modal\",\"content-class\":\"fill-modal\",\"title\":_vm.title,\"size\":_vm.modalSize,\"no-close-on-backdrop\":true},scopedSlots:_vm._u([{key:\"modal-footer\",fn:function(ref){\nvar ok = ref.ok;\nreturn [_c('div',{staticClass:\"d-flex w-100\"},[_vm._t(\"additional-footer\",null,{\"item\":_vm.item}),_c('div',{staticClass:\"flex-grow-1\"},[(_vm.canDelete && !_vm.deleting && _vm.item.id)?_c('b-button',{attrs:{\"data-cy\":\"delete-button\",\"variant\":\"danger\"},on:{\"click\":function($event){return _vm.deleteItem()}}},[_vm._v(\" Delete \")]):_vm._e()],1),(!_vm.canEdit)?_c('div',{attrs:{\"data-cy\":\"ok-footer-container\"}},[_c('b-button',{attrs:{\"data-cy\":\"cancel-button\",\"variant\":\"secondary\"},on:{\"click\":function($event){return ok()}}},[_vm._v(\" OK \")])],1):(!_vm.deleting)?_c('div',{attrs:{\"data-cy\":\"sc-footer-container\"}},[_c('b-button',{staticClass:\"m-r-5\",class:{'disabled': _vm.isSaveButtonDisabled()},attrs:{\"data-cy\":\"save-button\",\"variant\":\"primary\",\"disabled\":_vm.isSaveButtonDisabled()},on:{\"click\":function($event){return _vm.save()}}},[_vm._t(\"okButtonContent\",[_vm._v(\" Save \")])],2),_c('b-button',{attrs:{\"data-cy\":\"cancel-button\",\"variant\":\"secondary\"},on:{\"click\":function($event){return ok()}}},[_vm._v(\" Cancel \")])],1):_c('div',{attrs:{\"data-cy\":\"dc-footer-container\"}},[_c('b-button',{staticClass:\"m-r-5\",attrs:{\"data-cy\":\"delete-confirm-button\",\"variant\":\"danger\",\"disabled\":_vm.isDeleteButtonDisabled},on:{\"click\":function($event){return _vm.deleteConfirm()}}},[_vm._v(\" Delete \")]),_c('b-button',{attrs:{\"data-cy\":\"cancel-button\",\"variant\":\"secondary\"},on:{\"click\":function($event){return ok()}}},[_vm._v(\" Cancel \")])],1)],2)]}}],null,true)},[(_vm.displayColumns)?_c('div',{staticClass:\"modal-contents mh-100\",attrs:{\"data-cy\":\"columns-container\"}},[(!_vm.deleting)?[_vm._t(\"header\",null,{\"item\":_vm.item}),(_vm.showMap)?_c('map-display',{attrs:{\"data-cy\":\"map-display\"}}):_vm._e(),_c('data-form',{attrs:{\"canEdit\":_vm.canEdit,\"columns\":_vm.displayColumns,\"item\":_vm.item},on:{\"valid\":function($event){_vm.valid = true},\"invalid\":function($event){_vm.valid = false}}}),_vm._t(\"additional\",null,{\"item\":_vm.item})]:[_vm._t(\"deleteConfirm\",null,{\"item\":_vm.item,\"details\":_vm.deleteDetailsItem}),(_vm.confirmDelete)?_c('b-form-group',{attrs:{\"label\":'Are you sure you wish to delete ' + (_vm.item.name ? _vm.item.name : _vm.item.title ? _vm.item.title : _vm.item.label) + '?',\"label-for\":'input-delete'}},[(_vm.item.title || _vm.item.name)?_c('div',[_c('span',[_vm._v(\"To confirm deletion, enter \\\"\"+_vm._s(_vm.item.name ? _vm.item.name : _vm.item.title ? _vm.item.title : _vm.item.label)+\"\\\" \")]),_c('b-form-input',{attrs:{\"data-cy\":\"confirm-delete-text\",\"type\":\"text\",\"autocomplete\":\"off\",\"id\":'input-delete'},model:{value:(_vm.deleteConfirmText),callback:function ($$v) {_vm.deleteConfirmText=$$v},expression:\"deleteConfirmText\"}})],1):_vm._e()]):_vm._e(),_vm._t(\"deleteConfirmAdditional\",null,{\"item\":_vm.item,\"details\":_vm.deleteDetailsItem}),_vm._t(\"footer\",null,{\"item\":_vm.item,\"details\":_vm.deleteDetailsItem})],(!_vm.deleting)?_vm._t(\"flex-additional\",null,{\"item\":_vm.item}):_vm._e()],2):_vm._e()])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\nimport { Component, Vue, Prop, Inject, Provide } from \"vue-property-decorator\"\r\n\r\nimport vSelect from \"vue-select\"\r\nimport { BModal } from \"bootstrap-vue\"\r\n\r\nimport DataForm from \"./DataForm.vue\"\r\nimport FieldPermissions from \"./Permissions/FieldPermissions.vue\"\r\nimport MapDisplay from \"@/components/Controls/Map.vue\"\r\n\r\nimport { MapProvider } from \"@/services/mapProvider\"\r\nimport ConfigurationColumn from \"@/types/configurationColumn\"\r\n\r\n@Component({\r\n\tcomponents: {\r\n\t\t\"v-select\": vSelect,\r\n\t\t\"field-permissions\": FieldPermissions,\r\n\t\t\"data-form\": DataForm,\r\n\t\t\"map-display\": MapDisplay\r\n\t}\r\n})\r\nexport default class DataModal extends Vue {\r\n\t$refs!: {\r\n\t\teditModal: BModal;\r\n\t\tscrollbar: any;\r\n\t}\r\n\r\n\t@Inject(\"mapProvider\") parentMapProvider!: MapProvider;\r\n\t@Provide(\"mapProvider\") mapProvider: MapProvider = new MapProvider();\r\n\r\n\t@Prop()\r\n\ttitle!: string;\r\n\r\n\t@Prop()\r\n\tcolumns!: ConfigurationColumn[];\r\n\r\n\t@Prop()\r\n\tcanEdit!: boolean;\r\n\r\n\t@Prop({ type: Boolean, default: false })\r\n\tallowMap!: boolean;\r\n\r\n\t@Prop({ type: String, default: \"xl\" })\r\n\tpublic modalSize!: string;\r\n\r\n\t@Prop()\r\n\tpublic deleteDetails!: (item: any) => any;\r\n\r\n\t@Prop()\r\n\tpublic canDeleteItem!: (item: any) => boolean;\r\n\r\n\t@Prop()\r\n\tpublic canConfirmDelete!: (item: any) => boolean;\r\n\r\n\tpublic deleteConfirmButtonDisabled: boolean = false;\r\n\tpublic saveButtonDisabled: boolean = false;\r\n\r\n\titemOverrideColumns: any[] | null = null;\r\n\titem: any = null;\r\n\r\n\tcanDelete: boolean = false;\r\n\tconfirmDelete: boolean = true;\r\n\tdeleteConfirmText: string = \"\";\r\n\tdeleteDetailsItem: any = null;\r\n\tdeleting: boolean = false;\r\n\r\n\tpublic valid: boolean = false;\r\n\r\n\tpublic async open (item: any, itemOverrideColumns: any[] | null = null) {\r\n\t\tthis.canDelete = this.canDeleteItem ? await this.canDeleteItem(item) : true\r\n\t\tthis.confirmDelete = this.canConfirmDelete ? await this.canConfirmDelete(item) : true\r\n\r\n\t\tthis.deleting = false\r\n\t\tthis.deleteConfirmText = \"\"\r\n\r\n\t\tthis.itemOverrideColumns = itemOverrideColumns\r\n\t\tthis.item = item\r\n\t\tthis.$refs.editModal.show()\r\n\t}\r\n\r\n\tpublic get displayColumns () {\r\n\t\tif (this.itemOverrideColumns) {\r\n\t\t\treturn this.itemOverrideColumns\r\n\t\t}\r\n\r\n\t\treturn this.columns\r\n\t}\r\n\r\n\tpublic get showMap () {\r\n\t\treturn this.allowMap && this.columns.some(\r\n\t\t\tc => c.dataType === \"map-marker\" ||\r\n\t\t\tc.dataType === \"map-path\" ||\r\n\t\t\tc.dataType === \"map-region\"\r\n\t\t)\r\n\t}\r\n\r\n\tpublic get isDeleteButtonDisabled () : boolean {\r\n\t\treturn this.item && (this.deleteConfirmButtonDisabled || (\r\n\t\t\tthis.item.name\r\n\t\t\t\t? this.deleteConfirmText !== this.item.name\r\n\t\t\t\t: this.item.title ? this.deleteConfirmText !== this.item.title : false)\r\n\t\t)\r\n\t}\r\n\r\n\tpublic save () {\r\n\t\tthis.$emit(\"save\", this.item)\r\n\t\tthis.hide()\r\n\t}\r\n\r\n\tpublic async deleteItem () {\r\n\t\tif (this.deleteDetails) {\r\n\t\t\tthis.deleteDetailsItem = await this.deleteDetails(this.item)\r\n\t\t}\r\n\r\n\t\tthis.deleting = true\r\n\t}\r\n\r\n\tpublic async deleteConfirm () {\r\n\t\tif (!this.isDeleteButtonDisabled) {\r\n\t\t\tthis.$emit(\"delete\", this.item)\r\n\t\t\tthis.hide()\r\n\t\t}\r\n\t}\r\n\r\n\tpublic isSaveButtonDisabled () : boolean {\r\n\t\treturn this.saveButtonDisabled || !this.valid\r\n\t}\r\n\r\n\tprivate hide () {\r\n\t\tthis.$refs.editModal.hide()\r\n\t}\r\n}\r\n\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DataModal.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DataModal.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./DataModal.vue?vue&type=template&id=72a4c2cc&\"\nimport script from \"./DataModal.vue?vue&type=script&lang=ts&\"\nexport * from \"./DataModal.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports"],"sourceRoot":""}