{"version":3,"file":"js/app.5e3dcdaf.js","mappings":"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","sources":["webpack://agent-portal/src/views/Login.vue","webpack://agent-portal/./node_modules/moment/locale/ sync ^\\.\\/.*$","webpack://agent-portal/./src/App.vue?22d0","webpack://agent-portal/./src/components/MenuTile.vue?4e03","webpack://agent-portal/./src/components/MenuTile.vue","webpack://agent-portal/./src/components/MenuTile.vue?afa4","webpack://agent-portal/./src/components/MenuTile.vue?9b26","webpack://agent-portal/./src/util/UrlHelper.ts","webpack://agent-portal/./src/App.vue","webpack://agent-portal/./src/App.vue?c072","webpack://agent-portal/./src/App.vue?fc23","webpack://agent-portal/./src/views/Home.vue?3ea1","webpack://agent-portal/./src/components/ScreenTile.vue?20f5","webpack://agent-portal/./src/components/ScreenTile.vue","webpack://agent-portal/./src/components/ScreenTile.vue?db74","webpack://agent-portal/./src/components/ScreenTile.vue?ba72","webpack://agent-portal/./src/components/DefaultDashBoard.vue?ab74","webpack://agent-portal/./src/components/DefaultDashBoard.vue","webpack://agent-portal/./src/components/DefaultDashBoard.vue?d6ff","webpack://agent-portal/./src/components/DefaultDashBoard.vue?9f30","webpack://agent-portal/./src/views/Home.vue","webpack://agent-portal/./src/views/Home.vue?96e4","webpack://agent-portal/./src/views/Home.vue?8d6f","webpack://agent-portal/./src/views/favorite/Favorites.vue?9cd4","webpack://agent-portal/./src/views/favorite/MDDocumentsTab.vue?14d8","webpack://agent-portal/./src/components/DocumentTile.vue?546d","webpack://agent-portal/./src/components/DocumentTile.vue","webpack://agent-portal/./src/components/DocumentTile.vue?2498","webpack://agent-portal/./src/components/DocumentTile.vue?2559","webpack://agent-portal/./src/views/favorite/MDDocumentsTab.vue","webpack://agent-portal/./src/views/favorite/MDDocumentsTab.vue?addc","webpack://agent-portal/./src/views/favorite/MDDocumentsTab.vue?5f15","webpack://agent-portal/./src/views/favorite/AgentResourcesTab.vue?6e4a","webpack://agent-portal/./src/components/ResourceTile.vue?4adb","webpack://agent-portal/./src/components/ResourceTile.vue","webpack://agent-portal/./src/components/ResourceTile.vue?dfe1","webpack://agent-portal/./src/components/ResourceTile.vue?0e0a","webpack://agent-portal/./src/views/favorite/AgentResourcesTab.vue","webpack://agent-portal/./src/views/favorite/AgentResourcesTab.vue?4865","webpack://agent-portal/./src/views/favorite/AgentResourcesTab.vue?1292","webpack://agent-portal/./src/views/favorite/ReinsuranceResourcesTab.vue?8d5b","webpack://agent-portal/./src/components/ResourceDirectoryTile.vue?b955","webpack://agent-portal/./src/components/ResourceDirectoryTile.vue","webpack://agent-portal/./src/components/ResourceDirectoryTile.vue?af32","webpack://agent-portal/./src/components/ResourceDirectoryTile.vue?17f0","webpack://agent-portal/./src/views/favorite/ReinsuranceResourcesTab.vue","webpack://agent-portal/./src/views/favorite/ReinsuranceResourcesTab.vue?c836","webpack://agent-portal/./src/views/favorite/ReinsuranceResourcesTab.vue?496d","webpack://agent-portal/./src/views/favorite/Favorites.vue","webpack://agent-portal/./src/views/favorite/Favorites.vue?f44a","webpack://agent-portal/./src/views/favorite/Favorites.vue?a8dc","webpack://agent-portal/./src/views/Proposals.vue?5a1e","webpack://agent-portal/./src/components/proposal/ProposalTile.vue?4ac1","webpack://agent-portal/./src/components/proposal/ProposalTile.vue","webpack://agent-portal/./src/components/proposal/ProposalTile.vue?6fff","webpack://agent-portal/./src/components/proposal/ProposalTile.vue?d4e0","webpack://agent-portal/./src/components/proposal/ProposalHistory.vue?26d8","webpack://agent-portal/./src/components/proposal/ProposalHistory.vue","webpack://agent-portal/./src/components/proposal/ProposalHistory.vue?b2da","webpack://agent-portal/./src/components/proposal/ProposalHistory.vue?bb15","webpack://agent-portal/./src/components/general/RemoveItemModal.vue?61d7","webpack://agent-portal/./src/components/general/modal/Modal.vue?a833","webpack://agent-portal/./src/components/general/modal/Modal.vue","webpack://agent-portal/./src/components/general/modal/Modal.vue?46e3","webpack://agent-portal/./src/components/general/modal/Modal.vue?c733","webpack://agent-portal/./src/components/general/modal/ModalBody.vue?099d","webpack://agent-portal/./src/components/general/modal/ModalBody.vue","webpack://agent-portal/./src/components/general/modal/ModalBody.vue?92be","webpack://agent-portal/./src/components/general/modal/ModalBody.vue?370b","webpack://agent-portal/./src/components/general/RemoveItemModal.vue","webpack://agent-portal/./src/components/general/RemoveItemModal.vue?2a09","webpack://agent-portal/./src/components/general/RemoveItemModal.vue?031f","webpack://agent-portal/./src/components/proposal/UpsertProposalModal.vue?41ac","webpack://agent-portal/./src/components/general/SmallDisplay.vue?0cc6","webpack://agent-portal/./src/components/general/SmallDisplay.vue","webpack://agent-portal/./src/components/general/SmallDisplay.vue?72cb","webpack://agent-portal/./src/components/general/SmallDisplay.vue?15f7","webpack://agent-portal/./src/components/general/Folder.vue?0d98","webpack://agent-portal/./src/components/proposal/UpsertProposalModal.vue","webpack://agent-portal/./src/components/general/Folder.vue","webpack://agent-portal/./src/components/general/Folder.vue?1541","webpack://agent-portal/./src/components/general/Folder.vue?cacb","webpack://agent-portal/./src/components/proposal/UpsertProposalModal.vue?56bb","webpack://agent-portal/./src/components/proposal/UpsertProposalModal.vue?ef93","webpack://agent-portal/./src/components/general/PendingChangeModal.vue?38da","webpack://agent-portal/./src/components/general/PendingChangeModal.vue","webpack://agent-portal/./src/components/general/PendingChangeModal.vue?4073","webpack://agent-portal/./src/components/general/PendingChangeModal.vue?1cf4","webpack://agent-portal/./src/views/Proposals.vue","webpack://agent-portal/./src/views/Proposals.vue?6664","webpack://agent-portal/./src/views/Proposals.vue?e061","webpack://agent-portal/./src/views/MDResources.vue?3548","webpack://agent-portal/./src/components/AddMDResourceModal.vue?8414","webpack://agent-portal/./src/components/AddMDResourceModal.vue","webpack://agent-portal/./src/components/AddMDResourceModal.vue?1bec","webpack://agent-portal/./src/components/AddMDResourceModal.vue?e515","webpack://agent-portal/./src/components/general/Breadcrumbs.vue?537e","webpack://agent-portal/src/components/general/Breadcrumbs.vue","webpack://agent-portal/./src/components/general/Breadcrumbs.vue?5218","webpack://agent-portal/./src/components/general/Breadcrumbs.vue","webpack://agent-portal/./src/components/ResourceRow.vue?28a9","webpack://agent-portal/./src/components/ResourceRow.vue","webpack://agent-portal/./src/components/ResourceRow.vue?dd01","webpack://agent-portal/./src/components/ResourceRow.vue?ec3e","webpack://agent-portal/./src/views/MDResources.vue","webpack://agent-portal/./src/views/MDResources.vue?d5f0","webpack://agent-portal/./src/views/MDResources.vue?0124","webpack://agent-portal/./src/views/AgentResources.vue?5ec2","webpack://agent-portal/./src/components/AddAgentResourceModal.vue?421f","webpack://agent-portal/./src/components/AddAgentResourceModal.vue","webpack://agent-portal/./src/components/AddAgentResourceModal.vue?daa0","webpack://agent-portal/./src/components/AddAgentResourceModal.vue?10b7","webpack://agent-portal/./src/views/AgentResources.vue","webpack://agent-portal/./src/views/AgentResources.vue?9c32","webpack://agent-portal/./src/views/AgentResources.vue?f559","webpack://agent-portal/./src/views/Reports.vue?5585","webpack://agent-portal/./src/components/CategoryTile.vue?cd53","webpack://agent-portal/./src/components/CategoryLink.vue?af90","webpack://agent-portal/./src/components/CategoryLink.vue","webpack://agent-portal/./src/components/CategoryLink.vue?b554","webpack://agent-portal/./src/components/CategoryLink.vue?6d54","webpack://agent-portal/./src/components/general/modal/ModalHeader.vue?5cad","webpack://agent-portal/./src/components/general/modal/ModalHeader.vue","webpack://agent-portal/./src/components/general/modal/ModalHeader.vue?4c1c","webpack://agent-portal/./src/components/general/modal/ModalHeader.vue?2cb0","webpack://agent-portal/./src/components/CategoryTile.vue","webpack://agent-portal/./src/components/CategoryTile.vue?7189","webpack://agent-portal/./src/components/CategoryTile.vue?5069","webpack://agent-portal/./src/views/Reports.vue","webpack://agent-portal/./src/views/Reports.vue?9a28","webpack://agent-portal/./src/views/Reports.vue?7fe1","webpack://agent-portal/./src/views/ShipmentsToDealers.vue?e173","webpack://agent-portal/./src/components/ShipmentTile.vue?4746","webpack://agent-portal/./src/components/ShipmentTile.vue","webpack://agent-portal/./src/components/ShipmentTile.vue?e079","webpack://agent-portal/./src/components/ShipmentTile.vue?8b68","webpack://agent-portal/./src/views/ShipmentsToDealers.vue","webpack://agent-portal/./src/views/ShipmentsToDealers.vue?393c","webpack://agent-portal/./src/views/ShipmentsToDealers.vue?a813","webpack://agent-portal/./src/views/UpdatesAndAlerts.vue?55e6","webpack://agent-portal/./src/components/alert/AdminAlertList.vue?9955","webpack://agent-portal/./src/dataLayer/Alerts.ts","webpack://agent-portal/./src/components/general/OkModal.vue?3c73","webpack://agent-portal/./src/components/general/OkModal.vue","webpack://agent-portal/./src/components/general/OkModal.vue?4687","webpack://agent-portal/./src/components/general/OkModal.vue?5906","webpack://agent-portal/./src/components/alert/AdminAlertList.vue","webpack://agent-portal/./src/components/alert/AdminAlertList.vue?9510","webpack://agent-portal/./src/components/alert/AdminAlertList.vue?932e","webpack://agent-portal/./src/components/alert/UserAlertList.vue?1b66","webpack://agent-portal/./src/components/alert/AlertThumbnail.vue?a388","webpack://agent-portal/./src/util/Format.ts","webpack://agent-portal/./src/components/alert/AlertThumbnail.vue","webpack://agent-portal/./src/components/alert/AlertThumbnail.vue?7752","webpack://agent-portal/./src/components/alert/AlertThumbnail.vue?8731","webpack://agent-portal/./src/components/alert/UserAlertList.vue","webpack://agent-portal/./src/components/alert/UserAlertList.vue?78a1","webpack://agent-portal/./src/components/alert/UserAlertList.vue?d0ed","webpack://agent-portal/./src/components/alert/AddAlertModal.vue?5e1c","webpack://agent-portal/./src/components/general/ImagePicker.vue?8332","webpack://agent-portal/./src/components/general/ImagePicker.vue","webpack://agent-portal/./src/components/general/ImagePicker.vue?8187","webpack://agent-portal/./src/components/general/ImagePicker.vue?d014","webpack://agent-portal/./src/components/DatePicker.vue?22e0","webpack://agent-portal/./src/components/DatePicker.vue","webpack://agent-portal/./src/components/DatePicker.vue?06d6","webpack://agent-portal/./src/components/DatePicker.vue?8d3c","webpack://agent-portal/./src/components/controls/QuillEditor.vue?fce6","webpack://agent-portal/./src/components/controls/QuillEditor.vue","webpack://agent-portal/./src/components/controls/QuillEditor.vue?5879","webpack://agent-portal/./src/components/controls/QuillEditor.vue?1436","webpack://agent-portal/./src/components/alert/AddAlertModal.vue","webpack://agent-portal/./src/components/alert/AddAlertModal.vue?2cda","webpack://agent-portal/./src/components/alert/AddAlertModal.vue?7f0b","webpack://agent-portal/./src/views/UpdatesAndAlerts.vue","webpack://agent-portal/./src/views/UpdatesAndAlerts.vue?f5d2","webpack://agent-portal/./src/views/UpdatesAndAlerts.vue?6d7e","webpack://agent-portal/./src/views/IConWebsite.vue?8452","webpack://agent-portal/./src/views/IConWebsite.vue","webpack://agent-portal/./src/views/IConWebsite.vue?1f92","webpack://agent-portal/./src/views/IConWebsite.vue?cf31","webpack://agent-portal/./src/views/RemittanceCloseCalendar.vue?d3c2","webpack://agent-portal/./src/components/calendar/AddEventModal.vue?52c9","webpack://agent-portal/./src/components/calendar/AddEventModal.vue","webpack://agent-portal/./src/components/calendar/AddEventModal.vue?1604","webpack://agent-portal/./src/components/calendar/AddEventModal.vue?8356","webpack://agent-portal/./src/views/RemittanceCloseCalendar.vue","webpack://agent-portal/./src/views/RemittanceCloseCalendar.vue?239e","webpack://agent-portal/./src/views/RemittanceCloseCalendar.vue?058f","webpack://agent-portal/./src/views/ReportView.vue?7c57","webpack://agent-portal/./src/views/ReportView.vue","webpack://agent-portal/./src/views/ReportView.vue?990f","webpack://agent-portal/./src/views/ReportView.vue?5538","webpack://agent-portal/./src/views/AdminManagement.vue?c5ad","webpack://agent-portal/./src/components/adminUsers/AddAdminUserModal.vue?82c4","webpack://agent-portal/./src/components/adminUsers/AddAdminUserModal.vue","webpack://agent-portal/./src/components/adminUsers/AddAdminUserModal.vue?5d0d","webpack://agent-portal/./src/components/adminUsers/AddAdminUserModal.vue?1e40","webpack://agent-portal/./src/views/AdminManagement.vue","webpack://agent-portal/./src/views/AdminManagement.vue?1a68","webpack://agent-portal/./src/views/AdminManagement.vue?1410","webpack://agent-portal/./src/views/CostUserManagement.vue?a43b","webpack://agent-portal/./src/components/costUsers/AddCostUserModal.vue?0536","webpack://agent-portal/./src/components/costUsers/AddCostUserModal.vue","webpack://agent-portal/./src/components/costUsers/AddCostUserModal.vue?ce0f","webpack://agent-portal/./src/components/costUsers/AddCostUserModal.vue?25cc","webpack://agent-portal/./src/views/CostUserManagement.vue","webpack://agent-portal/./src/views/CostUserManagement.vue?77a3","webpack://agent-portal/./src/views/CostUserManagement.vue?d1ad","webpack://agent-portal/./src/views/Login.vue?7b9d","webpack://agent-portal/./src/views/Login.vue?1606","webpack://agent-portal/./src/views/Login.vue","webpack://agent-portal/./src/views/AlertDetail.vue?12db","webpack://agent-portal/./src/components/alert/AlertList.vue?f0b7","webpack://agent-portal/./src/components/alert/AlertList.vue","webpack://agent-portal/./src/components/alert/AlertList.vue?02fc","webpack://agent-portal/./src/components/alert/AlertList.vue?ffed","webpack://agent-portal/./src/views/AlertDetail.vue","webpack://agent-portal/./src/views/AlertDetail.vue?6499","webpack://agent-portal/./src/views/AlertDetail.vue?2f71","webpack://agent-portal/./src/views/ReinsuranceResources.vue?66d1","webpack://agent-portal/./src/views/ReinsuranceResources.vue","webpack://agent-portal/./src/views/ReinsuranceResources.vue?7632","webpack://agent-portal/./src/views/ReinsuranceResources.vue?ff8d","webpack://agent-portal/./src/store.ts","webpack://agent-portal/./src/router/index.ts","webpack://agent-portal/./src/plugins/vuetify.ts","webpack://agent-portal/./src/main.ts","webpack://agent-portal/./src/registerServiceWorker.ts","webpack://agent-portal/webpack/bootstrap","webpack://agent-portal/webpack/runtime/chunk loaded","webpack://agent-portal/webpack/runtime/compat get default export","webpack://agent-portal/webpack/runtime/define property getters","webpack://agent-portal/webpack/runtime/ensure chunk","webpack://agent-portal/webpack/runtime/get javascript chunk filename","webpack://agent-portal/webpack/runtime/get mini-css chunk filename","webpack://agent-portal/webpack/runtime/global","webpack://agent-portal/webpack/runtime/hasOwnProperty shorthand","webpack://agent-portal/webpack/runtime/load script","webpack://agent-portal/webpack/runtime/make namespace object","webpack://agent-portal/webpack/runtime/node module decorator","webpack://agent-portal/webpack/runtime/publicPath","webpack://agent-portal/webpack/runtime/jsonp chunk loading","webpack://agent-portal/webpack/startup"],"sourcesContent":["\r\n \r\n Login\r\n \r\n This is a temporary page to allow our developers to actually log into the\r\n app without using the shared login page\r\n \r\n Login\r\n \r\n\r\n\r\n","var map = {\n\t\"./af\": 2786,\n\t\"./af.js\": 2786,\n\t\"./ar\": 867,\n\t\"./ar-dz\": 4130,\n\t\"./ar-dz.js\": 4130,\n\t\"./ar-kw\": 6135,\n\t\"./ar-kw.js\": 6135,\n\t\"./ar-ly\": 6440,\n\t\"./ar-ly.js\": 6440,\n\t\"./ar-ma\": 7702,\n\t\"./ar-ma.js\": 7702,\n\t\"./ar-sa\": 6040,\n\t\"./ar-sa.js\": 6040,\n\t\"./ar-tn\": 7100,\n\t\"./ar-tn.js\": 7100,\n\t\"./ar.js\": 867,\n\t\"./az\": 1083,\n\t\"./az.js\": 1083,\n\t\"./be\": 9808,\n\t\"./be.js\": 9808,\n\t\"./bg\": 8338,\n\t\"./bg.js\": 8338,\n\t\"./bm\": 7438,\n\t\"./bm.js\": 7438,\n\t\"./bn\": 8905,\n\t\"./bn-bd\": 6225,\n\t\"./bn-bd.js\": 6225,\n\t\"./bn.js\": 8905,\n\t\"./bo\": 1560,\n\t\"./bo.js\": 1560,\n\t\"./br\": 1278,\n\t\"./br.js\": 1278,\n\t\"./bs\": 622,\n\t\"./bs.js\": 622,\n\t\"./ca\": 2468,\n\t\"./ca.js\": 2468,\n\t\"./cs\": 5822,\n\t\"./cs.js\": 5822,\n\t\"./cv\": 877,\n\t\"./cv.js\": 877,\n\t\"./cy\": 7373,\n\t\"./cy.js\": 7373,\n\t\"./da\": 4780,\n\t\"./da.js\": 4780,\n\t\"./de\": 9740,\n\t\"./de-at\": 217,\n\t\"./de-at.js\": 217,\n\t\"./de-ch\": 894,\n\t\"./de-ch.js\": 894,\n\t\"./de.js\": 9740,\n\t\"./dv\": 5300,\n\t\"./dv.js\": 5300,\n\t\"./el\": 837,\n\t\"./el.js\": 837,\n\t\"./en-au\": 8348,\n\t\"./en-au.js\": 8348,\n\t\"./en-ca\": 7925,\n\t\"./en-ca.js\": 7925,\n\t\"./en-gb\": 2243,\n\t\"./en-gb.js\": 2243,\n\t\"./en-ie\": 6436,\n\t\"./en-ie.js\": 6436,\n\t\"./en-il\": 7207,\n\t\"./en-il.js\": 7207,\n\t\"./en-in\": 4175,\n\t\"./en-in.js\": 4175,\n\t\"./en-nz\": 6319,\n\t\"./en-nz.js\": 6319,\n\t\"./en-sg\": 1662,\n\t\"./en-sg.js\": 1662,\n\t\"./eo\": 2915,\n\t\"./eo.js\": 2915,\n\t\"./es\": 5655,\n\t\"./es-do\": 5251,\n\t\"./es-do.js\": 5251,\n\t\"./es-mx\": 6112,\n\t\"./es-mx.js\": 6112,\n\t\"./es-us\": 1146,\n\t\"./es-us.js\": 1146,\n\t\"./es.js\": 5655,\n\t\"./et\": 5603,\n\t\"./et.js\": 5603,\n\t\"./eu\": 7763,\n\t\"./eu.js\": 7763,\n\t\"./fa\": 6959,\n\t\"./fa.js\": 6959,\n\t\"./fi\": 1897,\n\t\"./fi.js\": 1897,\n\t\"./fil\": 2549,\n\t\"./fil.js\": 2549,\n\t\"./fo\": 4694,\n\t\"./fo.js\": 4694,\n\t\"./fr\": 4470,\n\t\"./fr-ca\": 3049,\n\t\"./fr-ca.js\": 3049,\n\t\"./fr-ch\": 2330,\n\t\"./fr-ch.js\": 2330,\n\t\"./fr.js\": 4470,\n\t\"./fy\": 5044,\n\t\"./fy.js\": 5044,\n\t\"./ga\": 9295,\n\t\"./ga.js\": 9295,\n\t\"./gd\": 2101,\n\t\"./gd.js\": 2101,\n\t\"./gl\": 8794,\n\t\"./gl.js\": 8794,\n\t\"./gom-deva\": 7884,\n\t\"./gom-deva.js\": 7884,\n\t\"./gom-latn\": 3168,\n\t\"./gom-latn.js\": 3168,\n\t\"./gu\": 5349,\n\t\"./gu.js\": 5349,\n\t\"./he\": 4206,\n\t\"./he.js\": 4206,\n\t\"./hi\": 94,\n\t\"./hi.js\": 94,\n\t\"./hr\": 316,\n\t\"./hr.js\": 316,\n\t\"./hu\": 2138,\n\t\"./hu.js\": 2138,\n\t\"./hy-am\": 1423,\n\t\"./hy-am.js\": 1423,\n\t\"./id\": 9218,\n\t\"./id.js\": 9218,\n\t\"./is\": 135,\n\t\"./is.js\": 135,\n\t\"./it\": 626,\n\t\"./it-ch\": 150,\n\t\"./it-ch.js\": 150,\n\t\"./it.js\": 626,\n\t\"./ja\": 9183,\n\t\"./ja.js\": 9183,\n\t\"./jv\": 4286,\n\t\"./jv.js\": 4286,\n\t\"./ka\": 2105,\n\t\"./ka.js\": 2105,\n\t\"./kk\": 7772,\n\t\"./kk.js\": 7772,\n\t\"./km\": 8758,\n\t\"./km.js\": 8758,\n\t\"./kn\": 9282,\n\t\"./kn.js\": 9282,\n\t\"./ko\": 3730,\n\t\"./ko.js\": 3730,\n\t\"./ku\": 1408,\n\t\"./ku.js\": 1408,\n\t\"./ky\": 3291,\n\t\"./ky.js\": 3291,\n\t\"./lb\": 6841,\n\t\"./lb.js\": 6841,\n\t\"./lo\": 5466,\n\t\"./lo.js\": 5466,\n\t\"./lt\": 7010,\n\t\"./lt.js\": 7010,\n\t\"./lv\": 7595,\n\t\"./lv.js\": 7595,\n\t\"./me\": 9861,\n\t\"./me.js\": 9861,\n\t\"./mi\": 5493,\n\t\"./mi.js\": 5493,\n\t\"./mk\": 5966,\n\t\"./mk.js\": 5966,\n\t\"./ml\": 7341,\n\t\"./ml.js\": 7341,\n\t\"./mn\": 5115,\n\t\"./mn.js\": 5115,\n\t\"./mr\": 370,\n\t\"./mr.js\": 370,\n\t\"./ms\": 9847,\n\t\"./ms-my\": 1237,\n\t\"./ms-my.js\": 1237,\n\t\"./ms.js\": 9847,\n\t\"./mt\": 2126,\n\t\"./mt.js\": 2126,\n\t\"./my\": 6165,\n\t\"./my.js\": 6165,\n\t\"./nb\": 4924,\n\t\"./nb.js\": 4924,\n\t\"./ne\": 6744,\n\t\"./ne.js\": 6744,\n\t\"./nl\": 3901,\n\t\"./nl-be\": 9814,\n\t\"./nl-be.js\": 9814,\n\t\"./nl.js\": 3901,\n\t\"./nn\": 3877,\n\t\"./nn.js\": 3877,\n\t\"./oc-lnc\": 2135,\n\t\"./oc-lnc.js\": 2135,\n\t\"./pa-in\": 5858,\n\t\"./pa-in.js\": 5858,\n\t\"./pl\": 4495,\n\t\"./pl.js\": 4495,\n\t\"./pt\": 9520,\n\t\"./pt-br\": 7971,\n\t\"./pt-br.js\": 7971,\n\t\"./pt.js\": 9520,\n\t\"./ro\": 6459,\n\t\"./ro.js\": 6459,\n\t\"./ru\": 1793,\n\t\"./ru.js\": 1793,\n\t\"./sd\": 4048,\n\t\"./sd.js\": 4048,\n\t\"./se\": 490,\n\t\"./se.js\": 490,\n\t\"./si\": 124,\n\t\"./si.js\": 124,\n\t\"./sk\": 4249,\n\t\"./sk.js\": 4249,\n\t\"./sl\": 4985,\n\t\"./sl.js\": 4985,\n\t\"./sq\": 1104,\n\t\"./sq.js\": 1104,\n\t\"./sr\": 9131,\n\t\"./sr-cyrl\": 9915,\n\t\"./sr-cyrl.js\": 9915,\n\t\"./sr.js\": 9131,\n\t\"./ss\": 5893,\n\t\"./ss.js\": 5893,\n\t\"./sv\": 8760,\n\t\"./sv.js\": 8760,\n\t\"./sw\": 1172,\n\t\"./sw.js\": 1172,\n\t\"./ta\": 7333,\n\t\"./ta.js\": 7333,\n\t\"./te\": 3110,\n\t\"./te.js\": 3110,\n\t\"./tet\": 2095,\n\t\"./tet.js\": 2095,\n\t\"./tg\": 7321,\n\t\"./tg.js\": 7321,\n\t\"./th\": 9041,\n\t\"./th.js\": 9041,\n\t\"./tk\": 9005,\n\t\"./tk.js\": 9005,\n\t\"./tl-ph\": 5768,\n\t\"./tl-ph.js\": 5768,\n\t\"./tlh\": 9444,\n\t\"./tlh.js\": 9444,\n\t\"./tr\": 2397,\n\t\"./tr.js\": 2397,\n\t\"./tzl\": 8254,\n\t\"./tzl.js\": 8254,\n\t\"./tzm\": 1106,\n\t\"./tzm-latn\": 699,\n\t\"./tzm-latn.js\": 699,\n\t\"./tzm.js\": 1106,\n\t\"./ug-cn\": 9288,\n\t\"./ug-cn.js\": 9288,\n\t\"./uk\": 7691,\n\t\"./uk.js\": 7691,\n\t\"./ur\": 3795,\n\t\"./ur.js\": 3795,\n\t\"./uz\": 6791,\n\t\"./uz-latn\": 588,\n\t\"./uz-latn.js\": 588,\n\t\"./uz.js\": 6791,\n\t\"./vi\": 5666,\n\t\"./vi.js\": 5666,\n\t\"./x-pseudo\": 4378,\n\t\"./x-pseudo.js\": 4378,\n\t\"./yo\": 5805,\n\t\"./yo.js\": 5805,\n\t\"./zh-cn\": 3839,\n\t\"./zh-cn.js\": 3839,\n\t\"./zh-hk\": 5726,\n\t\"./zh-hk.js\": 5726,\n\t\"./zh-mo\": 9807,\n\t\"./zh-mo.js\": 9807,\n\t\"./zh-tw\": 4152,\n\t\"./zh-tw.js\": 4152\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = 6700;","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-app',[(!_vm.isMobile)?_c('v-system-bar',{attrs:{\"app\":\"\"}},[_c('v-container',{staticClass:\"py-0 fill-height\",attrs:{\"fluid\":\"\"}},[_c('a',{attrs:{\"href\":_vm.urls.dashboard}},[_c('v-img',{attrs:{\"src\":require(\"@/assets/logo.jpg\"),\"max-height\":\"50\",\"max-width\":\"200\"}})],1),_c('v-spacer'),_c('v-avatar',{staticClass:\"hidden-sm-and-down mr-7\",attrs:{\"color\":\"grey darken-3 shrink\",\"size\":\"32\"}},[_c('span',{staticStyle:{\"color\":\"white\"}},[_vm._v(_vm._s(_vm.user && _vm.user.fullName ? _vm.user.fullName.split(' ')[0][0] + _vm.user.fullName.split(' ')[1][0] : ''))])]),_c('span',{staticClass:\"hidden-sm-and-down\",staticStyle:{\"font-size\":\"16px\",\"color\":\"black\"}},[_vm._v(_vm._s(_vm.user ? _vm.user.fullName : ''))]),_c('v-responsive',{attrs:{\"max-width\":\"140\"}},[_c('v-menu',{scopedSlots:_vm._u([{key:\"activator\",fn:function(ref){\nvar on = ref.on;\nvar attrs = ref.attrs;\nreturn [_c('v-btn',_vm._g(_vm._b({attrs:{\"icon\":\"\"}},'v-btn',attrs,false),on),[_c('CIcon',{attrs:{\"content\":_vm.icons.dropDown}})],1)]}}],null,false,4102313306)},[_c('v-list',_vm._l((_vm.getNavigationLinks()),function(item,index){return _c('v-list-item',{key:index},[_c('v-list-item-title',{staticClass:\"menu-link\",on:{\"click\":function () { return _vm.dropDownMenuChange(item); }}},[_vm._v(_vm._s(item)+\" \")])],1)}),1)],1)],1)],1)],1):_vm._e(),(_vm.isMobile)?_c('v-app-bar',{attrs:{\"color\":\"white\",\"dark\":\"\",\"prominent\":\"\",\"app\":\"\"}},[_c('v-app-bar-nav-icon',{staticStyle:{\"color\":\"black\",\"margin-top\":\"35px\"},on:{\"click\":function($event){$event.stopPropagation();_vm.drawer = !_vm.drawer}}}),_c('v-container',{staticClass:\"py-0 fill-height\",attrs:{\"fluid\":\"\"}},[_c('a',{attrs:{\"href\":_vm.urls.dashboard}},[_c('v-img',{attrs:{\"src\":require(\"@/assets/logo.jpg\"),\"max-height\":\"50\",\"max-width\":\"200\"}})],1),_c('v-spacer'),_c('v-avatar',{staticClass:\"hidden-sm-and-down mr-7\",attrs:{\"color\":\"grey darken-3 shrink\",\"size\":\"32\"}},[_c('span',{staticStyle:{\"color\":\"white\"}},[_vm._v(_vm._s(_vm.user && _vm.user.fullName ? _vm.user.fullName.split(' ')[0][0] + _vm.user.fullName.split(' ')[1][0] : ''))])]),_c('span',{staticClass:\"hidden-sm-and-down\",staticStyle:{\"font-size\":\"16px\",\"color\":\"black\"}},[_vm._v(_vm._s(_vm.user ? _vm.user.fullName : ''))]),_c('v-responsive',{attrs:{\"max-width\":\"140\"}},[_c('v-menu',{scopedSlots:_vm._u([{key:\"activator\",fn:function(ref){\nvar on = ref.on;\nvar attrs = ref.attrs;\nreturn [_c('v-btn',_vm._g(_vm._b({attrs:{\"icon\":\"\"}},'v-btn',attrs,false),on),[_c('CIcon',{attrs:{\"content\":_vm.icons.dropDown}})],1)]}}],null,false,4102313306)},[_c('v-list',_vm._l((_vm.getNavigationLinks()),function(item,index){return _c('v-list-item',{key:index},[_c('v-list-item-title',{staticClass:\"menu-link\",on:{\"click\":function () { return _vm.dropDownMenuChange(item); }}},[_vm._v(_vm._s(item)+\" \")])],1)}),1)],1)],1)],1)],1):_vm._e(),_c('v-navigation-drawer',{staticClass:\"white lighten-3\",staticStyle:{\"top\":\"125px\",\"z-index\":\"1\"},attrs:{\"absolute\":\"\",\"temporary\":_vm.isMobile,\"permanent\":!_vm.isMobile,\"app\":\"\"},model:{value:(_vm.drawer),callback:function ($$v) {_vm.drawer=$$v},expression:\"drawer\"}},[_c('v-sheet',{attrs:{\"color\":\"white lighten-4\"}},[_c('v-list',{attrs:{\"color\":\"transparent\"}},[_c('span',{staticClass:\"side-menu hidden-sm-and-up\"},[_c('v-list-item-content',{staticClass:\"pa-4\"},[_c('v-list-item-title',[_c('v-avatar',{staticClass:\"hidden-sm-and-up mr-7\",staticStyle:{\"margin-left\":\"10px\"},attrs:{\"color\":\"grey darken-3 shrink\",\"size\":\"32\"}},[_c('span',{staticStyle:{\"color\":\"white\"}},[_vm._v(_vm._s(_vm.user && _vm.user.fullName ? _vm.user.fullName.split(' ')[0][0] + _vm.user.fullName.split(' ')[1][0] : ''))])]),_c('span',{staticStyle:{\"font-size\":\"16px\",\"color\":\"black\",\"margin-top\":\"5px\"}},[_vm._v(_vm._s(_vm.user ? _vm.user.fullName : ''))]),_c('span',{staticClass:\"v-list-item-menu-chevron\",staticStyle:{\"margin-left\":\"20px\",\"margin-top\":\"5px\"},on:{\"click\":function($event){_vm.sideMenuUserOpen = !_vm.sideMenuUserOpen}}},[_c('CIcon',{attrs:{\"content\":_vm.icons.dropDown}})],1)],1),_c('v-list-item-subtitle',[_c('div',[(_vm.sideMenuUserOpen)?_c('ul',_vm._l((_vm.getNavigationLinks()),function(item,index){return _c('li',{key:index},[_c('span',{staticClass:\"menu-link\",on:{\"click\":function () { return _vm.dropDownMenuChange(item); }}},[_vm._v(_vm._s(item))])])}),0):_vm._e()])])],1)],1),_c('menu-tile',{attrs:{\"title\":\"Home\",\"icon\":_vm.icons.home,\"route\":\"/\",\"mini\":_vm.mini}}),_c('menu-tile',{attrs:{\"title\":\"Favorites\",\"icon\":_vm.icons.favorite,\"route\":\"/favorites\",\"mini\":_vm.mini}}),(_vm.user.canAccessMdResources)?_c('menu-tile',{attrs:{\"title\":\"MD Resources\",\"icon\":_vm.icons.mdResources,\"route\":\"/md-resources\",\"mini\":_vm.mini}}):_vm._e(),_c('menu-tile',{attrs:{\"title\":\"Reinsurance Resources\",\"icon\":_vm.icons.reinsuranceResources,\"route\":\"/reinsurance-resources\",\"mini\":_vm.mini}}),_c('menu-tile',{attrs:{\"title\":\"Agent Resources\",\"icon\":_vm.icons.agentResources,\"route\":\"/agent-resources\",\"mini\":_vm.mini}}),_c('menu-tile',{attrs:{\"title\":\"Reports\",\"icon\":_vm.icons.reports,\"url\":_vm.urls.reportcenter,\"mini\":_vm.mini}}),_c('menu-tile',{attrs:{\"title\":\"Shipments to Dealers\",\"icon\":_vm.icons.shipments,\"route\":\"/shipments-to-dealers\",\"mini\":_vm.mini}}),_c('menu-tile',{attrs:{\"title\":\"Updates & Alerts\",\"icon\":_vm.icons.updates,\"route\":\"/updates-and-alerts\",\"mini\":_vm.mini}}),_c('menu-tile',{attrs:{\"title\":\"Online Contracting\",\"icon\":_vm.icons.econtracting,\"url\":_vm.urls.econtracting,\"mini\":_vm.mini}}),_c('menu-tile',{attrs:{\"title\":\"eStore\",\"icon\":_vm.icons.store,\"url\":_vm.urls.estore,\"mini\":_vm.mini}}),_c('menu-tile',{attrs:{\"title\":\"Contacts List\",\"icon\":_vm.icons.contacts,\"url\":_vm.urls.contacts,\"mini\":_vm.mini}}),_c('menu-tile',{attrs:{\"title\":\"Calendar\",\"icon\":_vm.icons.calendar,\"route\":\"/remittance-close-calendar\",\"mini\":_vm.mini}}),_c('menu-tile',{attrs:{\"title\":\"External Links\",\"icon\":_vm.icons.externalLinks,\"links\":[\n {\n url: _vm.urls.university,\n name: 'Portfolio University',\n },\n {\n url: _vm.urls.claims,\n name: 'Claim Status',\n },\n {\n url: _vm.urls.iconSite,\n name: 'iCon Website',\n },\n {\n url: _vm.urls.rateCard,\n name: 'Legacy NAE Rate Cards',\n },\n {\n url: _vm.urls.repairedForLife,\n name: 'RFL Dealer Onboarding',\n }\n ]}})],1)],1)],1),_c('v-main',{staticClass:\"grey lighten-3 height-adjust\"},[_c('v-container',{attrs:{\"fluid\":\"\"}},[_c('v-row',[_c('v-col',[_c('router-view')],1)],1)],1)],1),_c('v-footer',{attrs:{\"app\":\"\"}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('span',[(_vm.route)?_c('router-link',{staticClass:\"side-menu\",attrs:{\"to\":_vm.route}},[_c('v-list-item-content',{staticClass:\"pa-4\"},[_c('v-list-item-title',[(_vm.icon !== undefined)?_c('CIcon',{staticClass:\"v-list-item-menu-icon\",attrs:{\"content\":_vm.icon}}):_vm._e(),(_vm.iconImage !== undefined)?_c('img',{attrs:{\"src\":_vm.iconImage}}):_vm._e(),_c('div',[_c('span',[_vm._v(_vm._s(_vm.title))])])],1)],1)],1):_vm._e(),(_vm.url)?_c('a',{staticClass:\"side-menu\",attrs:{\"href\":_vm.url,\"target\":\"_blank\"}},[_c('v-list-item-content',{staticClass:\"pa-4\"},[_c('v-list-item-title',[(_vm.icon !== undefined)?_c('CIcon',{staticClass:\"v-list-item-menu-icon\",attrs:{\"content\":_vm.icon}}):_vm._e(),(_vm.iconImage !== undefined)?_c('img',{attrs:{\"src\":_vm.iconImage}}):_vm._e(),_c('div',[_c('span',[_vm._v(_vm._s(_vm.title))])])],1)],1)],1):_vm._e(),(_vm.links)?_c('span',{staticClass:\"side-menu\"},[_c('v-list-item-content',{staticClass:\"pa-4\"},[_c('v-list-item-title',[(_vm.icon !== undefined)?_c('CIcon',{staticClass:\"v-list-item-menu-icon\",attrs:{\"content\":_vm.icon}}):_vm._e(),(_vm.iconImage !== undefined)?_c('img',{attrs:{\"src\":_vm.iconImage}}):_vm._e(),_c('div',{staticClass:\"link-menu-title\"},[_c('span',[_vm._v(_vm._s(_vm.title))]),(_vm.links)?_c('span',{staticClass:\"v-list-item-menu-chevron\",on:{\"click\":function($event){_vm.menuOpen = !_vm.menuOpen}}},[_c('CIcon',{attrs:{\"content\":_vm.menuOpen ? _vm.closeMenuIcon : _vm.openMenuIcon}})],1):_vm._e()])],1),_c('v-list-item-subtitle',[_c('div',[(_vm.links && _vm.menuOpen)?_c('ul',{staticClass:\"link-list\"},_vm._l((_vm.links),function(link){return _c('li',{key:link.url},[(_vm.icon !== undefined)?_c('CIcon',{staticClass:\"v-list-item-menu-icon\",attrs:{\"content\":_vm.icon}}):_vm._e(),((link.image || _vm.iconImage) !== undefined)?_c('img',{attrs:{\"src\":link.image || _vm.iconImage}}):_vm._e(),_c('a',{attrs:{\"target\":\"_blank\",\"href\":link.url}},[_vm._v(_vm._s(link.name))])],1)}),0):_vm._e()])])],1)],1):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport '../styles/menu-tile.css'\r\nimport { CIcon } from '@coreui/icons-vue'\r\nimport {\r\n cilExternalLink,\r\n cilChevronBottomAlt,\r\n cilChevronTopAlt,\r\n} from '@coreui/icons-pro'\r\n\r\nimport Vue, { PropOptions } from 'vue'\r\n\r\ninterface ILink {\r\n url: string\r\n name: string\r\n image?: string\r\n}\r\n\r\nexport default Vue.extend({\r\n data() {\r\n return {\r\n menuOpen: false,\r\n linkIcon: cilExternalLink,\r\n openMenuIcon: cilChevronBottomAlt,\r\n closeMenuIcon: cilChevronTopAlt,\r\n }\r\n },\r\n props: {\r\n title: {\r\n type: String,\r\n required: true,\r\n },\r\n icon: {\r\n type: Array,\r\n required: false,\r\n },\r\n iconImage: {\r\n type: String,\r\n required: false,\r\n },\r\n route: {\r\n type: String,\r\n required: false,\r\n },\r\n url: {\r\n type: String,\r\n required: false,\r\n },\r\n links: {\r\n type: Array,\r\n required: false,\r\n } as PropOptions,\r\n },\r\n name: 'MenuTile',\r\n components: { CIcon },\r\n methods: {},\r\n})\r\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./MenuTile.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./MenuTile.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./MenuTile.vue?vue&type=template&id=2591bef5&\"\nimport script from \"./MenuTile.vue?vue&type=script&lang=ts&\"\nexport * from \"./MenuTile.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/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\n\n/* vuetify-loader */\nimport installComponents from \"!../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VListItemContent } from 'vuetify/lib/components/VList';\nimport { VListItemSubtitle } from 'vuetify/lib/components/VList';\nimport { VListItemTitle } from 'vuetify/lib/components/VList';\ninstallComponents(component, {VListItemContent,VListItemSubtitle,VListItemTitle})\n","class UrlHelper {\r\n \r\n getApplicationUrl(appName: string, queryString?: string){\r\n if(queryString){\r\n return `/${appName}/${queryString}`;\r\n } else {\r\n return `/${appName}/`;\r\n }\r\n }\r\n}\r\n\r\nexport const urlHelper = new UrlHelper();","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport './styles/page.css'\r\nimport Vue from 'vue'\r\nimport {\r\n cilChevronBottomAlt,\r\n cilHome,\r\n cilStarCircle,\r\n cilLightbulb,\r\n cilCog,\r\n cilFlightTakeoff,\r\n cilCommentSquareExclamation,\r\n cilInfo,\r\n cilPhone,\r\n cilFile,\r\n cilCalendar,\r\n cilCart,\r\n cilLinkIntact,\r\n cilArchive,\r\n cilShieldCheck,\r\ncilDocument,\r\n} from '@coreui/icons-pro'\r\nimport MenuTile from './components/MenuTile.vue'\r\nimport { mapState } from 'vuex'\r\nimport { CIcon } from '@coreui/icons-vue'\r\nimport {urlHelper} from './util/UrlHelper'\r\n\r\n\r\n\r\nexport default Vue.extend({\r\n name: 'App',\r\n computed: {\r\n ...mapState(['user']),\r\n isMobile: function () {\r\n return window.innerWidth <= 960\r\n },\r\n },\r\n components: { CIcon, MenuTile },\r\n data: () => ({\r\n drawer: false,\r\n mini: false,\r\n sideMenuUserOpen: false,\r\n icons: {\r\n dropDown: cilChevronBottomAlt,\r\n home: cilHome,\r\n favorite: cilStarCircle,\r\n proposal: cilLightbulb,\r\n mdResources: cilArchive,\r\n agentResources: cilCog,\r\n shipments: cilFlightTakeoff,\r\n updates: cilCommentSquareExclamation,\r\n iconWebsite: cilInfo,\r\n contacts: cilPhone,\r\n calendar: cilCalendar,\r\n externalLinks: cilLinkIntact,\r\n store: cilCart,\r\n reports: cilFile,\r\n reinsuranceResources: cilShieldCheck,\r\n econtracting: cilDocument,\r\n },\r\n urls: {\r\n claims: urlHelper.getApplicationUrl('claims'),\r\n contracts: urlHelper.getApplicationUrl('contracts', 'Application/Default.aspx'),\r\n estore: urlHelper.getApplicationUrl('ordering','QuickOrder/Last'),\r\n econtracting: urlHelper.getApplicationUrl('econtracting'),\r\n university: 'https://www.portfolioco.university/',\r\n iconSite: 'https://fandiexpress.com/',\r\n rateCard: urlHelper.getApplicationUrl('ratecards', 'Portals/RateCards/Overview.aspx'),\r\n login: urlHelper.getApplicationUrl('login'),\r\n logout: urlHelper.getApplicationUrl('login', 'Account/LogOff'),\r\n dashboard: urlHelper.getApplicationUrl('login', 'Dashboard/Index'),\r\n contractLookup: urlHelper.getApplicationUrl('contractlookup'),\r\n contacts: urlHelper.getApplicationUrl('help', 'Topics/View/General/Contact-List'),\r\n reportcenter: urlHelper.getApplicationUrl('reportcenter'),\r\n repairedForLife: 'https://us.services.docusign.net/webforms-ux/v1.0/forms/bcfa51d15b1106abe8b56fd42cfccc23?accountId=94be2332-8039-4651-88d4-863c2155e74d&workflowId=3e926ccb-006c-4004-848f-c515b0b26dc3&userId=812ec491-2429-4160-9ad3-68e4481ba1c1&stepId=b71d4870-57be-440c-8524-3dfbc55ad970'\r\n },\r\n }),\r\n methods: {\r\n getNavigationLinks() {\r\n if (this.user.isAdministrator) {\r\n return ['Admin', 'Cost Users', 'Logout']\r\n }\r\n return ['Logout']\r\n },\r\n dropDownMenuChange(event: string) {\r\n switch (event) {\r\n case 'Logout':\r\n document.cookie.split(';').forEach(function (c) {\r\n document.cookie = c\r\n .replace(/^ +/, '')\r\n .replace(\r\n /=.*/,\r\n '=;expires=' +\r\n new Date().toUTCString() +\r\n ';path=/;domain=.portfolioco.com;'\r\n )\r\n })\r\n window.location.href =\r\n urlHelper.getApplicationUrl(\"login\", \"Account/LogOff\")\r\n break\r\n case 'Admin':\r\n this.$router.push('/admins')\r\n break\r\n case 'Cost Users':\r\n this.$router.push('/costUsers')\r\n }\r\n },\r\n },\r\n})\r\n","import mod from \"-!../node_modules/thread-loader/dist/cjs.js!../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../node_modules/thread-loader/dist/cjs.js!../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./App.vue?vue&type=template&id=283416d0&\"\nimport script from \"./App.vue?vue&type=script&lang=ts&\"\nexport * from \"./App.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../node_modules/@vue/vue-loader-v15/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\n\n/* vuetify-loader */\nimport installComponents from \"!../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VApp } from 'vuetify/lib/components/VApp';\nimport { VAppBar } from 'vuetify/lib/components/VAppBar';\nimport { VAppBarNavIcon } from 'vuetify/lib/components/VAppBar';\nimport { VAvatar } from 'vuetify/lib/components/VAvatar';\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VFooter } from 'vuetify/lib/components/VFooter';\nimport { VImg } from 'vuetify/lib/components/VImg';\nimport { VList } from 'vuetify/lib/components/VList';\nimport { VListItem } from 'vuetify/lib/components/VList';\nimport { VListItemContent } from 'vuetify/lib/components/VList';\nimport { VListItemSubtitle } from 'vuetify/lib/components/VList';\nimport { VListItemTitle } from 'vuetify/lib/components/VList';\nimport { VMain } from 'vuetify/lib/components/VMain';\nimport { VMenu } from 'vuetify/lib/components/VMenu';\nimport { VNavigationDrawer } from 'vuetify/lib/components/VNavigationDrawer';\nimport { VResponsive } from 'vuetify/lib/components/VResponsive';\nimport { VRow } from 'vuetify/lib/components/VGrid';\nimport { VSheet } from 'vuetify/lib/components/VSheet';\nimport { VSpacer } from 'vuetify/lib/components/VGrid';\nimport { VSystemBar } from 'vuetify/lib/components/VSystemBar';\ninstallComponents(component, {VApp,VAppBar,VAppBarNavIcon,VAvatar,VBtn,VCol,VContainer,VFooter,VImg,VList,VListItem,VListItemContent,VListItemSubtitle,VListItemTitle,VMain,VMenu,VNavigationDrawer,VResponsive,VRow,VSheet,VSpacer,VSystemBar})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('ScreenTile',{attrs:{\"title\":\"Home\",\"subTitle\":\"Agent Portal\"}},[_c('div',{staticStyle:{\"display\":\"flex\",\"justify-content\":\"space-between\",\"flex-wrap\":\"wrap\",\"width\":\"100%\"}},[(_vm.loading)?_c('v-progress-linear',{staticStyle:{\"margin-top\":\"10px\"},attrs:{\"indeterminate\":\"\",\"color\":\"#4A3046\"}}):_vm._e(),_c('div',{staticClass:\"home-tile-display\"},[_c('DefaultDashBoard',{staticClass:\"home-tile\"})],1)],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"screen-tile\"},[_c('div',{staticClass:\"screen-header\"},[(!_vm.tabs)?_c('div',{staticClass:\"screen-title-container\"},[_c('div',{staticClass:\"screen-title\"},[_vm._v(_vm._s(_vm.title))]),(_vm.subTitle)?_c('div',{staticClass:\"screen-subtitle\"},[_vm._v(_vm._s(_vm.subTitle))]):_vm._e()]):_c('div',[_c('v-tabs',{staticClass:\"screen-tabs\",attrs:{\"color\":\"white\",\"background-color\":\"#4A3046\"},model:{value:(_vm.tabModel),callback:function ($$v) {_vm.tabModel=$$v},expression:\"tabModel\"}},_vm._l((_vm.tabs),function(item){return _c('v-tab',{key:item,on:{\"click\":function($event){return _vm.$emit('on-tab-click', item)}}},[_vm._v(\" \"+_vm._s(item)+\" \")])}),1)],1),_vm._t(\"buttons\")],2),_c('v-sheet',{attrs:{\"rounded\":\"lg\",\"elevation\":\"3\"}},[_c(_vm.children,{tag:\"component\",staticClass:\"screen-content\"},[_vm._t(\"default\")],2)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport '../styles/screen-tile.css'\r\nimport Vue from 'vue'\r\n\r\nexport default Vue.extend({\r\n data() {\r\n return {\r\n tabModel: null as any,\r\n }\r\n },\r\n beforeMount: function () {\r\n this.tabModel = this.tab\r\n },\r\n props: {\r\n title: {\r\n type: String,\r\n required: true,\r\n },\r\n subTitle: {\r\n type: String,\r\n required: false,\r\n },\r\n children: {\r\n type: [String, Object],\r\n default: 'div',\r\n },\r\n actionText: {\r\n type: String,\r\n required: false,\r\n },\r\n tab: {\r\n type: String,\r\n required: false,\r\n },\r\n tabs: {\r\n type: Array,\r\n required: false,\r\n },\r\n },\r\n name: 'ScreenTile',\r\n methods: {},\r\n})\r\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ScreenTile.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ScreenTile.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ScreenTile.vue?vue&type=template&id=35ffce68&\"\nimport script from \"./ScreenTile.vue?vue&type=script&lang=ts&\"\nexport * from \"./ScreenTile.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/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\n\n/* vuetify-loader */\nimport installComponents from \"!../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VSheet } from 'vuetify/lib/components/VSheet';\nimport { VTab } from 'vuetify/lib/components/VTabs';\nimport { VTabs } from 'vuetify/lib/components/VTabs';\ninstallComponents(component, {VSheet,VTab,VTabs})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticStyle:{\"height\":\"1000px\",\"width\":\"1500px\"},attrs:{\"id\":\"reportdiv\"}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\r\nimport { Vue } from 'vue-property-decorator'\r\nimport { CIcon } from '@coreui/icons-vue'\r\nimport ScreenTile from '../components/ScreenTile.vue'\r\nimport * as powerbi from 'powerbi-client'\r\nimport { cisStar, cilStar } from '@coreui/icons-pro'\r\n\r\ninterface IToken {\r\n description: string\r\n embedUrl: string\r\n id: string\r\n name: string\r\n token: {\r\n expiration: string\r\n token: string\r\n tokenId: string\r\n }\r\n}\r\n\r\ninterface IReport {\r\n id: string\r\n name: string\r\n description: string\r\n imageUrl: string\r\n favorite: boolean\r\n}\r\n\r\nexport default Vue.extend({\r\n data: function (): {\r\n loading: boolean\r\n detailedError: string | undefined\r\n } {\r\n return {\r\n loading: true,\r\n detailedError: undefined,\r\n \r\n }\r\n },\r\n components: { },\r\n \r\n mounted: async function () {\r\n const tokenRequest = await fetch(`/api/reports/default`)\r\n if (tokenRequest.ok) {\r\n const token = (await tokenRequest.json()) as IToken\r\n\r\n const permissions = powerbi.models.Permissions.All\r\n const config = {\r\n visualName: '',\r\n type: 'report',\r\n accessToken: token.token.token, // I'm not changing this, it's awesome\r\n embedUrl: token.embedUrl,\r\n tokenType: powerbi.models.TokenType.Embed,\r\n permissions,\r\n settings: {\r\n panes: {\r\n filters: {\r\n visible: true,\r\n },\r\n pageNavigation: {\r\n visible: true,\r\n },\r\n },\r\n },\r\n }\r\n\r\n // Embed the report and display it within the div container\r\n const embedder = new powerbi.service.Service(\r\n powerbi.factories.hpmFactory,\r\n powerbi.factories.wpmpFactory,\r\n powerbi.factories.routerFactory\r\n )\r\n\r\n const el = document.querySelector('#reportdiv') as HTMLElement\r\n if (el) {\r\n embedder.embed(el, config)\r\n }\r\n } else {\r\n const message = JSON.parse(await tokenRequest.text())\r\n this.detailedError = message.powerBIErrorMessage\r\n }\r\n this.loading = false\r\n },\r\n})\r\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./DefaultDashBoard.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./DefaultDashBoard.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./DefaultDashBoard.vue?vue&type=template&id=45c43cb2&\"\nimport script from \"./DefaultDashBoard.vue?vue&type=script&lang=ts&\"\nexport * from \"./DefaultDashBoard.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/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","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { Vue } from 'vue-property-decorator'\r\nimport ScreenTile from '../components/ScreenTile.vue'\r\nimport DefaultDashBoard from '../components/DefaultDashBoard.vue'\r\nimport '../styles/home.css'\r\n\r\nexport default Vue.extend({\r\n data: function () {\r\n return {\r\n loading: false,\r\n }\r\n },\r\n components: {\r\n ScreenTile,\r\n DefaultDashBoard,\r\n },\r\n})\r\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Home.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Home.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Home.vue?vue&type=template&id=559fed06&\"\nimport script from \"./Home.vue?vue&type=script&lang=ts&\"\nexport * from \"./Home.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/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\n\n/* vuetify-loader */\nimport installComponents from \"!../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VProgressLinear } from 'vuetify/lib/components/VProgressLinear';\ninstallComponents(component, {VProgressLinear})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('ScreenTile',{attrs:{\"title\":\"Favorites\",\"subTitle\":\"Agent Portal\"}},[_c('v-tabs',{model:{value:(_vm.tab),callback:function ($$v) {_vm.tab=$$v},expression:\"tab\"}},_vm._l((_vm.tabs),function(item){return _c('v-tab',{key:item},[_vm._v(\" \"+_vm._s(item)+\" \")])}),1),_c('v-tabs-items',{staticStyle:{\"width\":\"100%\"},model:{value:(_vm.tab),callback:function ($$v) {_vm.tab=$$v},expression:\"tab\"}},_vm._l((_vm.tabs),function(item){return _c('v-tab-item',{key:item},[(item === 'md documents')?_c('MDDocumentsTab',{on:{\"view-document\":_vm.openMDDocument,\"remove-favorite\":_vm.removeFavorite}}):_vm._e(),(item === 'agent resources')?_c('AgentResourcesTab',{on:{\"view-document\":_vm.openAgentDocument,\"remove-favorite\":_vm.removeFavorite}}):_vm._e(),(item === 'reinsurance resources')?_c('ReinsuranceResourcesTab',{on:{\"view-document\":_vm.openReinsuranceResource,\"remove-favorite\":_vm.removeFavorite}}):_vm._e()],1)}),1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticStyle:{\"width\":\"100%\"}},[(_vm.loading)?_c('v-progress-linear',{attrs:{\"indeterminate\":\"\",\"color\":\"#4A3046\"}}):_vm._e(),(!_vm.loading)?_c('div',{staticClass:\"favorite-content\"},[(_vm.mdresourceFavorites.length === 0)?_c('div',{staticClass:\"empty-directory\"},[_vm._v(\" Nothing currently favorited. \")]):_vm._e(),_vm._l((_vm.mdresourceFavorites),function(item){return _c('DocumentTile',{key:item.id,attrs:{\"id\":item.id,\"title\":item.name,\"imageUrl\":item.imageUrl,\"createdDate\":new Date(item.createdDate),\"favorite\":{ id: item.favoriteId },\"isAdministrator\":false},on:{\"view-click\":function () { return _vm.$emit('view-document', item); },\"toggle-favorite\":function () { return _vm.removeFavoriteDocument(item.favoriteId); }}})})],2):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"document-tile\",on:{\"click\":function($event){return _vm.$emit('touchDoc')}}},[_c('div',{staticClass:\"document-icon\"},[(_vm.usePlaceholder)?_c('CIcon',{attrs:{\"content\":_vm.fileIcon}}):_c('img',{attrs:{\"src\":_vm.imageUrl,\"alt\":\"\"}})],1),_c('div',{staticClass:\"document-content\"},[_c('div',{staticClass:\"document-title\"},[_vm._v(_vm._s(_vm.searchPath ? _vm.searchPath : _vm.title))]),_c('div',{staticClass:\"document-creation-date\"},[_vm._v(\" Added \"+_vm._s(_vm.createdDate.toLocaleDateString('en-us', { year: 'numeric', month: 'long', day: 'numeric', }))+\" \")])]),_c('div',{staticClass:\"document-action\"},[_c('div',[(_vm.isAdministrator)?_c('span',{staticClass:\"document-edit-action\",on:{\"click\":_vm.onEditClick}},[_c('CIcon',{attrs:{\"content\":_vm.editIcon}})],1):_vm._e(),(_vm.isAdministrator)?_c('span',{staticClass:\"document-delete-action\",on:{\"click\":_vm.onDeleteClick}},[_c('CIcon',{attrs:{\"content\":_vm.deleteIcon}})],1):_vm._e(),_c('span',{staticClass:\"document-favorite-action\",on:{\"click\":_vm.onFavoriteClick}},[(!!_vm.favorite)?_c('CIcon',{staticStyle:{\"color\":\"#fff259\"},attrs:{\"content\":_vm.favoritedStarIcon}}):_c('CIcon',{attrs:{\"content\":_vm.standardStarIcon}})],1)]),_c('a',{attrs:{\"href\":\"#\"},on:{\"click\":_vm.onViewClick}},[_vm._v(\"View\")])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport '../styles/document-tile.css'\r\nimport { CIcon } from '@coreui/icons-vue'\r\nimport {\r\n cilFile,\r\n cisStar,\r\n cilStar,\r\n cilTrash,\r\n cilPencil,\r\n} from '@coreui/icons-pro'\r\nimport Vue from 'vue'\r\n\r\nexport default Vue.extend({\r\n data() {\r\n return {\r\n usePlaceholder: false,\r\n fileIcon: cilFile,\r\n favoritedStarIcon: cisStar,\r\n standardStarIcon: cilStar,\r\n deleteIcon: cilTrash,\r\n editIcon: cilPencil,\r\n }\r\n },\r\n props: {\r\n id: {\r\n type: Number,\r\n required: true,\r\n },\r\n title: {\r\n type: String,\r\n required: true,\r\n },\r\n imageUrl: {\r\n type: String,\r\n required: true,\r\n },\r\n createdDate: {\r\n type: Date,\r\n required: true,\r\n },\r\n favorite: {\r\n type: Object,\r\n required: false,\r\n },\r\n isAdministrator: {\r\n type: Boolean,\r\n required: true,\r\n },\r\n searchPath: {\r\n type: String,\r\n required: false,\r\n },\r\n },\r\n name: 'DocumentTile',\r\n components: { CIcon },\r\n mounted: async function () {\r\n try {\r\n const canLoadImage = await fetch(this.imageUrl)\r\n\r\n if (!canLoadImage.ok) this.usePlaceholder = true\r\n } catch {\r\n this.usePlaceholder = true\r\n }\r\n },\r\n methods: {\r\n onViewClick(e: Event) {\r\n e.preventDefault()\r\n this.$emit('view-click', this.id)\r\n },\r\n onFavoriteClick() {\r\n this.$emit('toggle-favorite', {\r\n favoriteId: this.favorite?.id,\r\n id: this.id,\r\n })\r\n },\r\n onDeleteClick() {\r\n this.$emit('delete-resource', this.id)\r\n },\r\n onEditClick() {\r\n this.$emit('edit-resource', this.id)\r\n },\r\n },\r\n})\r\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./DocumentTile.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./DocumentTile.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./DocumentTile.vue?vue&type=template&id=8a52b30c&\"\nimport script from \"./DocumentTile.vue?vue&type=script&lang=ts&\"\nexport * from \"./DocumentTile.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/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","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { Vue } from 'vue-property-decorator'\r\nimport DocumentTile from '../../components/DocumentTile.vue'\r\n\r\ninterface IMDResourceFavorite {\r\n id: number\r\n name: string\r\n description: string\r\n favoriteId: number\r\n createdDate: string\r\n resourceLink: string\r\n imageUrl: string\r\n}\r\n\r\nexport default Vue.extend({\r\n data: function () {\r\n return {\r\n loading: true,\r\n mdresourceFavorites: [] as IMDResourceFavorite[],\r\n }\r\n },\r\n mounted: async function () {\r\n this.mdresourceFavorites = await (\r\n await fetch(\r\n '/api/mdresources/favorites?' +\r\n new URLSearchParams({ isDirectory: 'false' })\r\n )\r\n ).json()\r\n this.mdresourceFavorites = this.mdresourceFavorites.map((x) => ({\r\n ...x,\r\n type: 'md-resources',\r\n }))\r\n this.loading = false\r\n },\r\n methods: {\r\n removeFavoriteDocument(favoriteId: number) {\r\n // Trigger the common api removal in the parent element\r\n this.$emit('remove-favorite', favoriteId)\r\n\r\n this.mdresourceFavorites = this.mdresourceFavorites.filter(\r\n (mdrf) => mdrf.favoriteId !== favoriteId\r\n )\r\n },\r\n },\r\n components: {\r\n DocumentTile,\r\n },\r\n})\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./MDDocumentsTab.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./MDDocumentsTab.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./MDDocumentsTab.vue?vue&type=template&id=3ca72743&\"\nimport script from \"./MDDocumentsTab.vue?vue&type=script&lang=ts&\"\nexport * from \"./MDDocumentsTab.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/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\n\n/* vuetify-loader */\nimport installComponents from \"!../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VProgressLinear } from 'vuetify/lib/components/VProgressLinear';\ninstallComponents(component, {VProgressLinear})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticStyle:{\"width\":\"100%\"}},[(_vm.loading)?_c('v-progress-linear',{attrs:{\"indeterminate\":\"\",\"color\":\"#4A3046\"}}):_vm._e(),(!_vm.loading)?_c('div',{staticClass:\"favorite-content\"},[(_vm.agentresourceFavorites.length === 0)?_c('div',{staticClass:\"empty-directory\"},[_vm._v(\" Nothing currently favorited. \")]):_vm._e(),_vm._l((_vm.agentresourceFavorites),function(item){return _c('ResourceTile',{key:item.id,attrs:{\"id\":item.id,\"title\":item.name,\"description\":item.description,\"imageUrl\":item.imageUrl,\"createdDate\":new Date(item.createdDate),\"favoriteId\":item.favoriteId,\"favorite\":true,\"isAdministrator\":false},on:{\"view-click\":function () { return _vm.$emit('view-document', item); },\"toggle-favorite\":function () { return _vm.removeFavoriteDocument(item.favoriteId); }}})})],2):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"resource-tile\"},[_c('div',{staticClass:\"resource-image\"},[(_vm.usePlaceholder)?_c('img',{attrs:{\"src\":\"/icons/favorite.png\",\"alt\":\"Placeholder image\"}}):_c('img',{attrs:{\"src\":_vm.imageUrl,\"alt\":\"\"}})]),_c('div',{staticClass:\"resource-content\"},[_c('div',{staticClass:\"resource-favorites\"},[(_vm.isAdministrator)?_c('span',{staticClass:\"resource-edit\",on:{\"click\":_vm.onEditClick}},[_c('CIcon',{attrs:{\"content\":_vm.editIcon}})],1):_vm._e(),(_vm.isAdministrator)?_c('span',{staticClass:\"resource-delete\",on:{\"click\":_vm.onDeleteClick}},[_c('CIcon',{attrs:{\"content\":_vm.deleteIcon}})],1):_vm._e(),_c('span',{on:{\"click\":_vm.onFavoriteClick}},[(!!_vm.favorite)?_c('CIcon',{staticStyle:{\"color\":\"#fff259\"},attrs:{\"content\":_vm.favoritedStarIcon}}):_c('CIcon',{attrs:{\"content\":_vm.standardStarIcon}})],1)]),_c('div',{staticClass:\"resource-title\"},[_vm._v(\" \"+_vm._s(_vm.title)+\" \")]),_c('div',{staticClass:\"resource-description\",domProps:{\"textContent\":_vm._s(_vm.description)}}),_c('a',{staticClass:\"view-link\",attrs:{\"href\":\"#\"},on:{\"click\":function($event){return _vm.$emit('view-click', _vm.id)}}},[_vm._v(\"View\")])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport '../styles/resource-tile.css'\r\nimport { CIcon } from '@coreui/icons-vue'\r\nimport { cisStar, cilStar, cilTrash, cilPencil } from '@coreui/icons-pro'\r\nimport Vue from 'vue'\r\n\r\nexport default Vue.extend({\r\n data(): {\r\n usePlaceholder: boolean\r\n favoritedStarIcon: any[]\r\n standardStarIcon: any[]\r\n deleteIcon: any[]\r\n editIcon: any[]\r\n } {\r\n return {\r\n usePlaceholder: false,\r\n favoritedStarIcon: cisStar,\r\n standardStarIcon: cilStar,\r\n deleteIcon: cilTrash,\r\n editIcon: cilPencil,\r\n }\r\n },\r\n props: {\r\n id: {\r\n type: Number,\r\n required: true,\r\n },\r\n title: {\r\n type: String,\r\n required: true,\r\n },\r\n description: {\r\n type: String,\r\n required: false,\r\n },\r\n favorite: {\r\n type: Boolean,\r\n required: true,\r\n },\r\n favoriteId: {\r\n type: Number,\r\n required: false,\r\n },\r\n imageUrl: {\r\n type: String,\r\n required: false,\r\n },\r\n isAdministrator: {\r\n type: Boolean,\r\n required: true,\r\n },\r\n },\r\n mounted: async function () {\r\n try {\r\n const canLoadImage = await fetch(this.imageUrl)\r\n\r\n if (!canLoadImage.ok) this.usePlaceholder = true\r\n } catch {\r\n this.usePlaceholder = true\r\n }\r\n },\r\n methods: {\r\n onFavoriteClick(): void {\r\n this.$emit('toggle-favorite', {\r\n favoriteId: this.favoriteId,\r\n id: this.id,\r\n })\r\n },\r\n onDeleteClick(): void {\r\n this.$emit('delete-resource', this.id)\r\n },\r\n onEditClick(): void {\r\n this.$emit('edit-resource', this.id)\r\n },\r\n },\r\n name: 'ResourceTile',\r\n components: { CIcon },\r\n})\r\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ResourceTile.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ResourceTile.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ResourceTile.vue?vue&type=template&id=2feeda71&\"\nimport script from \"./ResourceTile.vue?vue&type=script&lang=ts&\"\nexport * from \"./ResourceTile.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/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","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { Vue } from 'vue-property-decorator'\r\nimport ResourceTile from '../../components/ResourceTile.vue'\r\n\r\ninterface IAgentResourceFavorite {\r\n id: number\r\n name: string\r\n description: string\r\n favoriteId: number\r\n createdDate: string\r\n resourceLink: string\r\n imageUrl: string\r\n}\r\n\r\nexport default Vue.extend({\r\n data: function () {\r\n return {\r\n loading: true,\r\n agentresourceFavorites: [] as IAgentResourceFavorite[],\r\n }\r\n },\r\n mounted: async function () {\r\n this.agentresourceFavorites = await (\r\n await fetch('/api/agentresources/favorites')\r\n ).json()\r\n this.agentresourceFavorites = this.agentresourceFavorites.map((x) => ({\r\n ...x,\r\n type: 'agent-resources',\r\n }))\r\n this.loading = false\r\n },\r\n methods: {\r\n removeFavoriteDocument(favoriteId: number) {\r\n // Trigger the common api removal in the parent element\r\n this.$emit('remove-favorite', favoriteId)\r\n\r\n this.agentresourceFavorites = this.agentresourceFavorites.filter(\r\n (agentrf) => agentrf.favoriteId !== favoriteId\r\n )\r\n },\r\n },\r\n components: {\r\n ResourceTile,\r\n },\r\n})\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AgentResourcesTab.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AgentResourcesTab.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./AgentResourcesTab.vue?vue&type=template&id=610790ef&\"\nimport script from \"./AgentResourcesTab.vue?vue&type=script&lang=ts&\"\nexport * from \"./AgentResourcesTab.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/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\n\n/* vuetify-loader */\nimport installComponents from \"!../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VProgressLinear } from 'vuetify/lib/components/VProgressLinear';\ninstallComponents(component, {VProgressLinear})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticStyle:{\"width\":\"100%\"}},[(_vm.loading)?_c('v-progress-linear',{attrs:{\"indeterminate\":\"\",\"color\":\"#4A3046\"}}):_vm._e(),(!_vm.loading)?_c('div',{staticClass:\"favorite-content\"},[(_vm.agentresourceFavorites.length === 0)?_c('div',{staticClass:\"empty-directory\"},[_vm._v(\" Nothing currently favorited. \")]):_vm._e(),_vm._l((_vm.agentresourceFavorites),function(item){return _c('div',{key:item.id},[(item.isDirectory)?_c('div',[_c('ResourceDirectoryTile',{attrs:{\"title\":item.name,\"path\":(_vm.currentPath + '/' + item.name).replace('//', '/'),\"imageUrl\":_vm.favoriteIcon,\"folderIcon\":_vm.favoriteIcon,\"usePlaceholder\":false,\"favorite\":true,\"favoriteId\":item.favoriteId,\"numberOfDocuments\":item.numberOfChildren},on:{\"view-click\":function($event){return _vm.descendIntoDirectory(item.name, item.path)},\"toggle-favorite\":_vm.toggleFavorite}})],1):_c('div',[_c('ResourceTile',{key:item.id,attrs:{\"id\":item.id,\"title\":item.name,\"description\":item.description,\"createdDate\":new Date(item.createdDate),\"favoriteId\":item.favoriteId,\"favorite\":true,\"isAdministrator\":false},on:{\"view-click\":function () { return _vm.$emit('view-document', item); },\"toggle-favorite\":function () { return _vm.removeFavoriteDocument(item.favoriteId); }}})],1)])})],2):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"resource-directory-tile\"},[_c('div',{staticClass:\"resource-directory-image\"},[(!_vm.usePlaceholder)?_c('img',{attrs:{\"src\":_vm.imageUrl,\"alt\":\"\"}}):_vm._e()]),_c('div',{staticClass:\"resource-directory-content\"},[_c('div',{staticClass:\"resource-directory-favorites\"},[(_vm.isAdministrator)?_c('span',{staticClass:\"resource-directory-edit\",on:{\"click\":_vm.onEditClick}},[_c('CIcon',{attrs:{\"content\":_vm.editIcon}})],1):_vm._e(),(_vm.isAdministrator)?_c('span',{staticClass:\"resource-directory-delete\",on:{\"click\":_vm.onDeleteClick}},[_c('CIcon',{attrs:{\"content\":_vm.deleteIcon}})],1):_vm._e(),_c('span',{on:{\"click\":_vm.onFavoriteClick}},[(!!_vm.favorite)?_c('CIcon',{staticStyle:{\"color\":\"#fff259\"},attrs:{\"content\":_vm.favoritedStarIcon}}):_c('CIcon',{attrs:{\"content\":_vm.standardStarIcon}})],1)]),_c('div',[(_vm.imageUrl)?_c('div',{staticClass:\"resource-directory-title\"},[_vm._v(\" \"+_vm._s(_vm.title)+\" \")]):_c('div',{staticClass:\"resource-directory-title\"},[_c('CIcon',{attrs:{\"content\":_vm.folderIcon}}),_vm._v(\" \"+_vm._s(_vm.searchPath ? _vm.searchPath : _vm.title)+\" \")],1)]),_c('div',{staticClass:\"resource-directory-description\",domProps:{\"textContent\":_vm._s(_vm.description)}}),_c('a',{staticClass:\"view-link\",attrs:{\"href\":\"#\"},on:{\"click\":function($event){return _vm.$emit('view-click', _vm.id)}}},[_vm._v(\"View\")])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport '../styles/resource-directory-tile.css'\r\nimport { CIcon } from '@coreui/icons-vue'\r\nimport {\r\n cisStar,\r\n cilStar,\r\n cilFolder,\r\n cilTrash,\r\n cilPencil,\r\n} from '@coreui/icons-pro'\r\nimport Vue from 'vue'\r\n\r\nexport default Vue.extend({\r\n data() {\r\n return {\r\n usePlaceholder: false,\r\n folderIcon: cilFolder,\r\n favoritedStarIcon: cisStar,\r\n standardStarIcon: cilStar,\r\n deleteIcon: cilTrash,\r\n editIcon: cilPencil,\r\n }\r\n },\r\n props: {\r\n id: {\r\n type: Number,\r\n required: false,\r\n },\r\n title: {\r\n type: String,\r\n required: true,\r\n },\r\n description: {\r\n type: String,\r\n required: false,\r\n },\r\n favorite: {\r\n type: Boolean,\r\n required: false,\r\n },\r\n favoriteId: {\r\n type: Number,\r\n required: false,\r\n },\r\n imageUrl: {\r\n type: String,\r\n required: false,\r\n },\r\n isAdministrator: {\r\n type: Boolean,\r\n required: false,\r\n },\r\n path: {\r\n type: String,\r\n required: false,\r\n },\r\n searchPath: {\r\n type: String,\r\n required: false,\r\n },\r\n },\r\n mounted: async function () {\r\n if (!this.imageUrl) this.usePlaceholder = true\r\n else {\r\n try {\r\n const canLoadImage = await fetch(this.imageUrl)\r\n\r\n if (!canLoadImage.ok) this.usePlaceholder = true\r\n } catch {\r\n this.usePlaceholder = true\r\n }\r\n }\r\n },\r\n methods: {\r\n onFavoriteClick() {\r\n this.$emit('toggle-favorite', {\r\n favoriteId: this.favoriteId,\r\n id: this.id,\r\n path: this.path,\r\n })\r\n },\r\n onDeleteClick(): void {\r\n this.$emit('delete-resource', this.id)\r\n },\r\n onEditClick(): void {\r\n this.$emit('edit-resource', this.id)\r\n },\r\n },\r\n name: 'ResourceDirectoryTile',\r\n components: { CIcon },\r\n})\r\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ResourceDirectoryTile.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ResourceDirectoryTile.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ResourceDirectoryTile.vue?vue&type=template&id=cf8eff66&\"\nimport script from \"./ResourceDirectoryTile.vue?vue&type=script&lang=ts&\"\nexport * from \"./ResourceDirectoryTile.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/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","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { Vue } from 'vue-property-decorator'\r\nimport ResourceTile from '../../components/ResourceTile.vue'\r\nimport ResourceDirectoryTile from '../../components/ResourceDirectoryTile.vue'\r\n\r\ninterface IAgentResourceFavorite {\r\n id: number\r\n name: string\r\n description: string\r\n numberOfChildren: number\r\n isDirectory: boolean\r\n favoriteId: number\r\n createdDate: string\r\n resourceLink: string\r\n imageUrl: string\r\n}\r\n\r\nexport default Vue.extend({\r\n data: function () {\r\n return {\r\n loading: true,\r\n agentresourceFavorites: [] as IAgentResourceFavorite[],\r\n routes: [{ id: '', name: 'Reinsurance Resources' }] as {\r\n id: string | undefined\r\n name: string\r\n }[],\r\n currentPath: '/',\r\n favoriteIcon: \"../../icons/favorite.png\"\r\n }\r\n },\r\n mounted: async function () {\r\n this.agentresourceFavorites = await (\r\n await fetch('/api/ReinsuranceResources/favorites')\r\n ).json()\r\n this.agentresourceFavorites = this.agentresourceFavorites.map((x) => ({\r\n ...x,\r\n name: x.path.split('/')[x.path.split('/').length - 1],\r\n type: 'agent-resources',\r\n }))\r\n this.loading = false\r\n },\r\n methods: {\r\n removeFavoriteDocument(favoriteId: number) {\r\n // Trigger the common api removal in the parent element\r\n this.$emit('remove-favorite', favoriteId)\r\n\r\n this.agentresourceFavorites = this.agentresourceFavorites.filter(\r\n (agentrf) => agentrf.favoriteId !== favoriteId\r\n )\r\n },\r\n descendIntoDirectory: async function (name: string, path: string) {\r\n this.loading = true\r\n const newPath = (this.currentPath + '/').replace('//', '/') + path\r\n this.routes.push({\r\n id: newPath,\r\n name: name ?? '',\r\n })\r\n this.$router.push({\r\n name: 'Reinsurance Resources',\r\n params: { path: newPath },\r\n })\r\n this.currentPath = newPath\r\n this.reinsuranceResources = await (\r\n await fetch(`/api/reinsuranceresources?path=${newPath}`)\r\n ).json()\r\n \r\n this.loading = false\r\n },\r\n },\r\n components: {\r\n ResourceTile,\r\n ResourceDirectoryTile,\r\n },\r\n})\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ReinsuranceResourcesTab.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ReinsuranceResourcesTab.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ReinsuranceResourcesTab.vue?vue&type=template&id=0111c428&\"\nimport script from \"./ReinsuranceResourcesTab.vue?vue&type=script&lang=ts&\"\nexport * from \"./ReinsuranceResourcesTab.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/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\n\n/* vuetify-loader */\nimport installComponents from \"!../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VProgressLinear } from 'vuetify/lib/components/VProgressLinear';\ninstallComponents(component, {VProgressLinear})\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { Vue } from 'vue-property-decorator'\r\nimport ScreenTile from '../../components/ScreenTile.vue'\r\nimport MDDocumentsTab from './MDDocumentsTab.vue'\r\nimport AgentResourcesTab from './AgentResourcesTab.vue'\r\nimport ReinsuranceResourcesTab from './ReinsuranceResourcesTab.vue'\r\nimport { mapState } from 'vuex'\r\n\r\nimport '../../styles/favorites.css'\r\n\r\ninterface IDocument {\r\n key: string\r\n id: number\r\n name: string\r\n createdDate: string\r\n favoriteId: number\r\n resourceLink: string\r\n source: string\r\n isDirectory: boolean\r\n type: string\r\n path?: string\r\n}\r\n\r\nexport default Vue.extend({\r\n data: function () {\r\n return {\r\n tab: 'folders',\r\n }\r\n },\r\n methods: {\r\n removeFavorite: async (favoriteId: number) => {\r\n await fetch(`/api/favorites/${favoriteId}`, { method: 'DELETE' })\r\n },\r\n openAgentDocument: async function (document: IDocument) {\r\n if (document.isDirectory) {\r\n this.$router.push(`/${document.type}/${document.id}`)\r\n return\r\n }\r\n try {\r\n const canOpenResource = await fetch(`${document.resourceLink}`)\r\n\r\n if (canOpenResource.ok) {\r\n window.open(document.resourceLink)\r\n }\r\n } catch {\r\n console.log('error')\r\n }\r\n },\r\n openMDDocument: async function (document: IDocument) {\r\n if (document.isDirectory) {\r\n this.$router.push(`/${document.type}/${document.id}`)\r\n return\r\n }\r\n try {\r\n const canOpenResource = await fetch(`${document.resourceLink}`)\r\n\r\n if (canOpenResource.ok) {\r\n window.open(document.resourceLink)\r\n }\r\n } catch {\r\n console.log('error')\r\n }\r\n },\r\n openReinsuranceResource: async function (document: IDocument) {\r\n if (!document.path) return\r\n const fileName =\r\n document.path.split('/')[document.path.split('/').length - 1]\r\n if (fileName.includes('.')) {\r\n // document\r\n window.open(`/api/reinsuranceresources/download?path=${document.path}`)\r\n } else {\r\n // folder\r\n this.$router.push(`/reinsurance-resources/${document.path}`)\r\n }\r\n },\r\n },\r\n computed: {\r\n ...mapState(['user']),\r\n tabs: function () {\r\n return this.user.canAccessMdResources\r\n ? [ \r\n 'md documents',\r\n 'agent resources',\r\n 'reinsurance resources',\r\n ]\r\n : ['agent resources', 'reinsurance resources']\r\n },\r\n },\r\n components: {\r\n ScreenTile,\r\n MDDocumentsTab,\r\n AgentResourcesTab,\r\n ReinsuranceResourcesTab,\r\n },\r\n})\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Favorites.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Favorites.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Favorites.vue?vue&type=template&id=cd9b5dae&\"\nimport script from \"./Favorites.vue?vue&type=script&lang=ts&\"\nexport * from \"./Favorites.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/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\n\n/* vuetify-loader */\nimport installComponents from \"!../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VTab } from 'vuetify/lib/components/VTabs';\nimport { VTabItem } from 'vuetify/lib/components/VTabs';\nimport { VTabs } from 'vuetify/lib/components/VTabs';\nimport { VTabsItems } from 'vuetify/lib/components/VTabs';\ninstallComponents(component, {VTab,VTabItem,VTabs,VTabsItems})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('ScreenTile',{attrs:{\"title\":\"Proposals\",\"subTitle\":\"Agent Portal\"},scopedSlots:_vm._u([(!_vm.viewItem.id)?{key:\"buttons\",fn:function(){return [_c('button',{staticClass:\"screen-action\",on:{\"click\":function($event){_vm.showModal = true}}},[_c('CIcon',{attrs:{\"content\":_vm.addIcon}}),_vm._v(\" Create Proposal \")],1)]},proxy:true}:null],null,true)},[_c('UpsertProposalModal',{attrs:{\"editMode\":!!_vm.viewItem.id,\"showModal\":_vm.showModal,\"proposal\":_vm.viewItem.id\n ? Object.assign({}, _vm.viewItem,\n {selectedDocuments: _vm.proposalDocuments.map(function (pd) { return ({\n id: pd.documentId,\n name: pd.name,\n source: pd.source,\n }); })})\n : {}},on:{\"close\":_vm.upsertProposal}}),_c('RemoveItemModal',{attrs:{\"showModal\":_vm.showRemoveModal,\"item\":_vm.removeItem.id ? (\"proposal \" + (_vm.removeItem.title)) : ''},on:{\"close\":function () {\n _vm.showRemoveModal = false\n _vm.removeItem = {}\n },\"confirm\":function($event){return _vm.removeProposal(_vm.removeItem.id)}}}),_c('PendingChangeModal',{attrs:{\"showModal\":_vm.showPendingChangeModal},on:{\"close\":function($event){_vm.showPendingChangeModal = false},\"confirm\":function($event){return _vm.changeView(null)}}}),(_vm.loading)?_c('v-progress-linear',{attrs:{\"indeterminate\":\"\",\"color\":\"#4A3046\"}}):(!_vm.viewItem.id)?_c('div',{staticStyle:{\"display\":\"flex\",\"flex-wrap\":\"wrap\"}},_vm._l((_vm.proposals),function(proposal){return _c('ProposalTile',{key:proposal.id,attrs:{\"title\":proposal.title,\"imageUrl\":proposal.imageUrl,\"documentsCount\":proposal.numberOfChildren,\"updatedAt\":new Date(proposal.updatedDate)},on:{\"view-click\":function () { return _vm.changeView(proposal.id); },\"remove-proposal\":function () {\n _vm.showRemoveModal = true\n _vm.removeItem = proposal\n }}})}),1):_c('div',{staticClass:\"proposal-details-container\"},[_c('div',{staticClass:\"proposal-details-actions-container\"},[_c('div',[_vm._v(\"< \"),_c('a',{on:{\"click\":_vm.confirmChange}},[_vm._v(\" Back\")])]),_c('div',[_c('button',{staticClass:\"screen-action\",attrs:{\"disabled\":_vm.producing},on:{\"click\":_vm.produce}},[_vm._v(\" PRODUCE \"),(_vm.producing)?_c('v-progress-linear',{attrs:{\"indeterminate\":\"\",\"color\":\"#4A3046\"}}):_vm._e()],1),_c('button',{staticClass:\"screen-action\",on:{\"click\":function($event){_vm.showModal = true}}},[_vm._v(\" EDIT \")]),(_vm.hasReorderedDocuments)?_c('button',{staticClass:\"screen-action main\",on:{\"click\":_vm.updateOrder}},[_vm._v(\" SAVE \")]):_vm._e()])]),_c('div',{staticClass:\"proposal-details-title\",domProps:{\"textContent\":_vm._s(_vm.viewItem.title)}}),_c('div',[_vm._v(\"These are some of the proposal details\")]),(_vm.loadingDetails)?_c('v-progress-linear',{attrs:{\"indeterminate\":\"\",\"color\":\"#4A3046\"}}):_vm._e(),_c('v-tabs',{model:{value:(_vm.currentTab),callback:function ($$v) {_vm.currentTab=$$v},expression:\"currentTab\"}},[_c('v-tab',[_vm._v(\"Documents\")]),_c('v-tab',[_vm._v(\"Production History\")])],1),_c('v-tabs-items',{staticStyle:{\"width\":\"100%\"},model:{value:(_vm.currentTab),callback:function ($$v) {_vm.currentTab=$$v},expression:\"currentTab\"}},[_c('v-tab-item',[(!_vm.loading)?_c('draggable',{staticStyle:{\"display\":\"flex\",\"flex-wrap\":\"wrap\"},on:{\"update\":function () { return (_vm.hasReorderedDocuments = true); }},model:{value:(_vm.proposalDocuments),callback:function ($$v) {_vm.proposalDocuments=$$v},expression:\"proposalDocuments\"}},_vm._l((_vm.proposalDocuments),function(proposalDocument){return _c('ProposalTile',{key:proposalDocument.id,attrs:{\"isDocument\":true,\"title\":proposalDocument.name,\"imageUrl\":proposalDocument.imageUrl,\"createdAt\":new Date(proposalDocument.createdDate)},on:{\"view-click\":function () { return _vm.openDocument(proposalDocument); }}})}),1):_vm._e()],1),_c('v-tab-item',[_c('proposal-history',{ref:\"propHistory\",attrs:{\"id\":_vm.viewItem.id}})],1)],1)],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"proposal-tile\"},[_c('div',{staticClass:\"proposal-image\"},[(_vm.usePlaceholder)?_c('img',{attrs:{\"src\":require(\"@/assets/placeholder-image.png\"),\"alt\":\"Placeholder image\"}}):_c('img',{attrs:{\"src\":_vm.imageUrl,\"alt\":\"\"}})]),_c('div',{staticClass:\"proposal-content\"},[(!_vm.isDocument)?_c('div',[_c('div',{staticClass:\"proposal-title\",domProps:{\"textContent\":_vm._s(_vm.title)}}),_c('div',{staticClass:\"proposal-updatedAt\",domProps:{\"textContent\":_vm._s((\"Last Updated: \" + (_vm.formatDate(_vm.updatedAt))))}}),_c('div',{staticClass:\"proposal-view-documents-container\"},[_c('div',{staticClass:\"proposal-view-documents-count\"},[_c('p',{staticClass:\"proposal-view-documents-counter\",domProps:{\"textContent\":_vm._s(_vm.documentsCount)}}),_c('p',[_vm._v(\"Documents / Screens\")])]),_c('a',{staticClass:\"proposal-view-documents-link\",on:{\"click\":function($event){return _vm.$emit('view-click')}}},[_vm._v(\" View \")])])]):_c('div',{staticStyle:{\"display\":\"flex\"}},[_c('div',{staticStyle:{\"width\":\"100%\"}},[_c('div',{staticClass:\"proposal-title\",domProps:{\"textContent\":_vm._s(_vm.title)}}),_c('div',{staticClass:\"proposal-createdAt\",domProps:{\"textContent\":_vm._s((\"Added \" + (_vm.formatDate(_vm.createdAt))))}})]),_c('div',{staticClass:\"proposal-view-documents-container\",staticStyle:{\"flex\":\"1\"}},[_c('a',{staticClass:\"proposal-view-documents-link\",on:{\"click\":function($event){return _vm.$emit('view-click')}}},[_vm._v(\" View \")])])])]),(!_vm.isDocument)?_c('div',{staticClass:\"proposal-hover-layer\",domProps:{\"textContent\":_vm._s('X')},on:{\"click\":function($event){return _vm.$emit('remove-proposal')}}}):_vm._e()])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport '../../styles/proposal-tile.css'\r\nimport Vue from 'vue'\r\nimport moment from 'moment'\r\n\r\nexport default Vue.extend({\r\n data() {\r\n return {\r\n usePlaceholder: false,\r\n }\r\n },\r\n props: {\r\n isDocument: {\r\n type: Boolean,\r\n required: false,\r\n default: false,\r\n },\r\n title: {\r\n type: String,\r\n required: true,\r\n },\r\n updatedAt: {\r\n type: Date,\r\n required: false,\r\n },\r\n createdAt: {\r\n type: Date,\r\n required: false,\r\n },\r\n documentsCount: {\r\n type: Number,\r\n required: false,\r\n default: 0,\r\n },\r\n imageUrl: {\r\n type: String,\r\n required: false,\r\n },\r\n },\r\n mounted: async function () {\r\n try {\r\n const canLoadImage = await fetch(this.imageUrl)\r\n\r\n if (!canLoadImage.ok) this.usePlaceholder = true\r\n } catch {\r\n this.usePlaceholder = true\r\n }\r\n },\r\n methods: {\r\n formatDate: (date: string) => moment(date).format('MMM. DD YYYY'),\r\n },\r\n name: 'ProposalTile',\r\n})\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ProposalTile.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ProposalTile.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ProposalTile.vue?vue&type=template&id=36ce24b0&\"\nimport script from \"./ProposalTile.vue?vue&type=script&lang=ts&\"\nexport * from \"./ProposalTile.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/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","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('v-timeline',{attrs:{\"dense\":\"\"}},_vm._l((_vm.histories),function(history){return _c('v-timeline-item',{key:history.id,attrs:{\"small\":\"\"}},[_c('v-row',[_c('v-col',[_c('strong',[_c('a',{attrs:{\"href\":history.resourceLink}},[_vm._v(_vm._s(_vm.formatDate(history.productionDate)))])])])],1)],1)}),1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport Vue from 'vue'\r\nimport moment from 'moment'\r\n\r\nexport default Vue.extend({\r\n data() {\r\n return {\r\n histories: [],\r\n }\r\n },\r\n props: {\r\n id: {\r\n required: true,\r\n type: Number,\r\n },\r\n },\r\n methods: {\r\n formatDate: (date: Date) => moment.utc(date).fromNow(),\r\n refresh: async function () {\r\n this.histories = await (\r\n await fetch(`/api/proposals/${this.id}/history`)\r\n ).json()\r\n },\r\n },\r\n mounted: async function () {\r\n this.histories = await (\r\n await fetch(`/api/proposals/${this.id}/history`)\r\n ).json()\r\n },\r\n\r\n name: 'ProposalHistory',\r\n})\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ProposalHistory.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ProposalHistory.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ProposalHistory.vue?vue&type=template&id=7faa81ff&\"\nimport script from \"./ProposalHistory.vue?vue&type=script&lang=ts&\"\nexport * from \"./ProposalHistory.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/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\n\n/* vuetify-loader */\nimport installComponents from \"!../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VRow } from 'vuetify/lib/components/VGrid';\nimport { VTimeline } from 'vuetify/lib/components/VTimeline';\nimport { VTimelineItem } from 'vuetify/lib/components/VTimeline';\ninstallComponents(component, {VCol,VRow,VTimeline,VTimelineItem})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('Modal',{staticClass:\"common-modal\",attrs:{\"showModal\":_vm.showModal}},[_c('ModalBody',[_c('div',{staticClass:\"common-title\"},[_vm._v(\" Are you sure you want to remove \"+_vm._s(_vm.item)+\"? \")]),_c('div',{staticClass:\"common-actions-container\"},[_c('button',{staticClass:\"common-cancel-button\",on:{\"click\":function($event){return _vm.$emit('close')}}},[_vm._v(\" Cancel \")]),_c('button',{staticClass:\"common-delete-button\",on:{\"click\":function($event){return _vm.$emit('confirm')}}},[_c('CIcon',{attrs:{\"content\":_vm.trashIcon}}),_vm._v(\"Delete \")],1)])])],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.showModal)?_c('div',[_c('div',{staticClass:\"modal-mask\"}),_c('div',{staticClass:\"modal-wrapper\"},[_c(_vm.children,{tag:\"component\",staticClass:\"modal-container\"},[_vm._t(\"default\"),_c('div',{staticClass:\"modal-spacer\"})],2)],1)]):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport '../../../styles/modal.css'\r\nimport Vue from 'vue'\r\n\r\nexport default Vue.extend({\r\n data() {\r\n return {}\r\n },\r\n props: {\r\n showModal: {\r\n type: Boolean,\r\n required: true,\r\n },\r\n children: {\r\n type: [String, Object],\r\n default: 'div',\r\n },\r\n },\r\n name: 'Modal',\r\n})\r\n","import mod from \"-!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Modal.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Modal.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Modal.vue?vue&type=template&id=7091a024&\"\nimport script from \"./Modal.vue?vue&type=script&lang=ts&\"\nexport * from \"./Modal.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/@vue/vue-loader-v15/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","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c(_vm.children,{tag:\"div\",staticClass:\"modal-body\"},[_vm._t(\"default\")],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\r\nimport Vue from 'vue'\r\n\r\nexport default Vue.extend({\r\n data() {\r\n return {}\r\n },\r\n props: {\r\n children: {\r\n type: [String, Object],\r\n default: 'div',\r\n },\r\n },\r\n name: 'ModalBody',\r\n})\r\n","import mod from \"-!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ModalBody.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ModalBody.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ModalBody.vue?vue&type=template&id=4b7459a8&\"\nimport script from \"./ModalBody.vue?vue&type=script&lang=ts&\"\nexport * from \"./ModalBody.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/@vue/vue-loader-v15/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","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport '../../styles/common-modal.css'\r\nimport Modal from './modal/Modal.vue'\r\nimport ModalBody from './modal/ModalBody.vue'\r\nimport { CIcon } from '@coreui/icons-vue'\r\nimport { cidTrash } from '@coreui/icons-pro'\r\nimport Vue from 'vue'\r\n\r\nexport default Vue.extend({\r\n data() {\r\n return {\r\n trashIcon: cidTrash,\r\n }\r\n },\r\n props: {\r\n showModal: {\r\n type: Boolean,\r\n required: true,\r\n },\r\n item: {\r\n type: String,\r\n required: true,\r\n },\r\n },\r\n components: { Modal, ModalBody, CIcon },\r\n name: 'RemoveItemModal',\r\n})\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./RemoveItemModal.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./RemoveItemModal.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./RemoveItemModal.vue?vue&type=template&id=4d67221a&\"\nimport script from \"./RemoveItemModal.vue?vue&type=script&lang=ts&\"\nexport * from \"./RemoveItemModal.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/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","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('Modal',{staticClass:\"upsert-proposal-modal\",attrs:{\"showModal\":_vm.showModal}},[_c('div',{staticClass:\"modal-header\"},[_c('div',{staticClass:\"modal-exit-icon\",on:{\"click\":function () { return _vm.close(undefined); }}},[_c('CIcon',{attrs:{\"content\":_vm.exitIcon}})],1)]),_c('ModalBody',[_c('div',{staticClass:\"upsert-proposal-title\"},[_vm._v(\" \"+_vm._s(_vm.editMode ? 'Update' : 'Create')+\" Your Proposal \")]),(!!_vm.imageData || _vm.proposal.imageUrl)?_c('img',{staticClass:\"upsert-proposal-populated-image\",attrs:{\"src\":_vm.imageData || _vm.proposal.imageUrl,\"alt\":\"\"},on:{\"click\":_vm.selectFile}}):_vm._e(),(!_vm.imageData && !_vm.proposal.imageUrl)?_c('div',{staticClass:\"upsert-proposal-image-container\",on:{\"click\":_vm.selectFile}},[_c('CIcon',{staticClass:\"upsert-proposal-image\",attrs:{\"content\":_vm.cameraIcon}})],1):_vm._e(),_c('input',{ref:\"fileinput\",staticStyle:{\"display\":\"none\"},attrs:{\"id\":\"file-input\",\"type\":\"file\",\"name\":\"name\",\"accept\":\"image/*\"}}),_c('v-container',[_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\"}},[_c('v-text-field',{attrs:{\"error-messages\":_vm.titleErrors,\"label\":\"Title\",\"required\":\"\",\"outlined\":\"\",\"dense\":\"\"},on:{\"input\":function($event){return _vm.$v.title.$touch()},\"blur\":function($event){return _vm.$v.title.$touch()}},model:{value:(_vm.titleModel),callback:function ($$v) {_vm.titleModel=$$v},expression:\"titleModel\"}}),_c('SmallDisplay',{attrs:{\"title\":\"Add Documents\",\"loading\":_vm.loading},scopedSlots:_vm._u([{key:\"buttons\",fn:function(){return [_c('div',{staticClass:\"small-display-actions\"},[_c('button',{class:(\"small-display-action \" + (_vm.tab === 'mdResources' ? 'active' : '')),domProps:{\"textContent\":_vm._s('MD Resources')},on:{\"click\":function($event){_vm.tab = 'mdResources'}}}),_c('button',{class:(\"small-display-action \" + (_vm.tab === 'agentResources' ? 'active' : '')),domProps:{\"textContent\":_vm._s('Agent Resources')},on:{\"click\":function($event){_vm.tab = 'agentResources'}}})])]},proxy:true}])},[_c('div',{staticClass:\"upsert-proposal-possible-documents\"},_vm._l((_vm.tabDocuments),function(document){return _c('div',{key:((document.id) + \"-\" + (document.source))},[(!!document.documents)?_c('Folder',{attrs:{\"folder\":document,\"isRoot\":true,\"selectedDocuments\":_vm.selectedDocuments},on:{\"select-document\":_vm.selectDocument}}):_c('div',{staticClass:\"root-file\"},[_c('input',{attrs:{\"type\":\"checkbox\"},domProps:{\"checked\":_vm.selectedDocuments.find(\n function (sd) { return sd.id === document.id &&\n sd.source === document.source; }\n )},on:{\"click\":function () { return _vm.selectDocument(document); }}}),_c('label',[_vm._v(_vm._s(document.name))])])],1)}),0)]),_c('SmallDisplay',{attrs:{\"title\":\"Selected Documents\"}},[_c('div',{staticClass:\"selected-documents-container\"},_vm._l((_vm.selectedDocuments),function(SDocument){return _c('div',{key:SDocument.id,staticClass:\"selected-document\",domProps:{\"textContent\":_vm._s(SDocument.name)}})}),0)])],1)],1)],1),_c('button',{staticClass:\"upsert-proposal-button\",attrs:{\"disabled\":_vm.saving},on:{\"click\":_vm.submit}},[_vm._v(\" \"+_vm._s(_vm.editMode ? 'UPDATE' : 'CREATE')+\" \")])],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"small-display\"},[_c('div',{staticClass:\"small-display-title\",domProps:{\"textContent\":_vm._s(_vm.title)}}),_vm._t(\"buttons\"),(_vm.loading)?_c('v-progress-linear',{attrs:{\"indeterminate\":\"\",\"color\":\"#4A3046\"}}):_c(_vm.children,{tag:\"component\",staticClass:\"small-display-content\"},[_vm._t(\"default\")],2)],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport '../../styles/small-display.css'\r\nimport Vue from 'vue'\r\n\r\nexport default Vue.extend({\r\n data() {\r\n return {}\r\n },\r\n props: {\r\n title: {\r\n type: String,\r\n required: true,\r\n },\r\n children: {\r\n type: [String, Object],\r\n default: 'div',\r\n },\r\n loading: {\r\n type: Boolean,\r\n required: false,\r\n },\r\n },\r\n name: 'SmallDisplay',\r\n})\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./SmallDisplay.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./SmallDisplay.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./SmallDisplay.vue?vue&type=template&id=5fee7544&\"\nimport script from \"./SmallDisplay.vue?vue&type=script&lang=ts&\"\nexport * from \"./SmallDisplay.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/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\n\n/* vuetify-loader */\nimport installComponents from \"!../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VProgressLinear } from 'vuetify/lib/components/VProgressLinear';\ninstallComponents(component, {VProgressLinear})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{class:(\"\" + (_vm.isRoot ? '' : 'folder'))},[_c('div',{staticClass:\"folder-name\"},[_c('CIcon',{attrs:{\"content\":_vm.folderIcon}}),_vm._v(\" \"+_vm._s(_vm.folder.name)+\" \")],1),(!!_vm.folder.documents.length)?_c('div',_vm._l((_vm.folder.documents),function(document){return _c('div',{key:document.id},[(document.documents)?_c('Folder',{attrs:{\"folder\":document,\"selectedDocuments\":_vm.selectedDocuments},on:{\"select-document\":_vm.selectDocument}}):_c('div',{staticClass:\"file\"},[_c('input',{attrs:{\"type\":\"checkbox\"},domProps:{\"checked\":_vm.selectedDocuments.find(\n function (sd) { return sd.id === document.id && sd.source === document.source; }\n )},on:{\"click\":function($event){return _vm.$emit('select-document', document)}}}),_c('label',[_vm._v(_vm._s(document.name))])])],1)}),0):_vm._e()])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport '../../styles/upsert-proposal-modal.css'\r\nimport Vue from 'vue'\r\nimport { CIcon } from '@coreui/icons-vue'\r\nimport { cilCamera, cilX, cilFolder } from '@coreui/icons-pro'\r\n\r\nimport { validationMixin } from 'vuelidate'\r\nimport { required } from 'vuelidate/lib/validators'\r\n\r\nimport Modal from '../general/modal/Modal.vue'\r\nimport ModalBody from '../general/modal/ModalBody.vue'\r\nimport SmallDisplay from '../general/SmallDisplay.vue'\r\nimport Folder from '../general/Folder.vue'\r\nimport { IValidationResult } from '../../util/IValidationResult'\r\n\r\nenum IDocumentSource {\r\n MDResource = 'MDResource',\r\n AgentResource = 'AgentResource',\r\n Report = 'Report',\r\n Other = 'Other',\r\n}\r\n\r\ninterface IDocument {\r\n id: number\r\n name?: string\r\n link?: string | undefined\r\n imageUrl?: string | undefined\r\n source: IDocumentSource\r\n documents?: IDocument[]\r\n}\r\n\r\ninterface IProposal {\r\n id: number\r\n title: string\r\n imageUrl: string | undefined\r\n documents?: IDocument[]\r\n numberOfChildren?: number\r\n}\r\n\r\ninterface IMDResource {\r\n id: number\r\n name: string\r\n parentId: number\r\n isDirectory: boolean\r\n imageUrl: string | undefined\r\n resourceLink: string | undefined\r\n}\r\n\r\ninterface IAgentResource {\r\n id: number\r\n name: string\r\n description: string\r\n imageUrl: string | undefined\r\n resourceLink: string | undefined\r\n}\r\n\r\nexport default Vue.extend({\r\n mixins: [validationMixin],\r\n validations: {\r\n title: { required },\r\n },\r\n data() {\r\n return {\r\n cameraIcon: cilCamera,\r\n exitIcon: cilX,\r\n folderIcon: cilFolder,\r\n title: '',\r\n imageData: '',\r\n\r\n tab: 'mdResources',\r\n tabs: ['mdResources', 'agentResources', 'reports'],\r\n errors: [],\r\n\r\n loading: true,\r\n saving: false,\r\n documents: {\r\n mdResources: [] as IDocument[],\r\n agentResources: [] as IDocument[],\r\n reports: [] as IDocument[],\r\n },\r\n selectedDocuments: [] as IDocument[],\r\n }\r\n },\r\n props: {\r\n showModal: {\r\n type: Boolean,\r\n required: true,\r\n },\r\n editMode: {\r\n type: Boolean,\r\n required: false,\r\n default: false,\r\n },\r\n proposal: {\r\n type: Object,\r\n required: false,\r\n default: null,\r\n },\r\n },\r\n watch: {\r\n proposal: function (val) {\r\n if (val.id) {\r\n this.title = val.title\r\n this.selectedDocuments = val.selectedDocuments\r\n } else {\r\n this.title = ''\r\n this.selectedDocuments = []\r\n }\r\n },\r\n },\r\n mounted: async function () {\r\n await this.populateMDResources()\r\n await this.populateAgentResources()\r\n this.loading = false\r\n },\r\n updated: function () {\r\n if (this.$refs.fileinput) {\r\n ;(this.$refs.fileinput as HTMLInputElement).onchange = () => {\r\n const files = (this.$refs.fileinput as HTMLInputElement).files\r\n\r\n if (files && files.length > 0) {\r\n const file = files[0]\r\n if (file) {\r\n this.imageData = URL.createObjectURL(file)\r\n }\r\n }\r\n }\r\n }\r\n },\r\n methods: {\r\n populateMDResources: async function () {\r\n const pullDocuments = async (id?: number): Promise => {\r\n const compiledDocuments: IDocument[] = []\r\n const resources: IMDResource[] = await (\r\n await fetch(`/api/mdresources${id ? `?parentId=${id}` : ''}`)\r\n ).json()\r\n\r\n for (const resource of resources) {\r\n const document: IDocument = {\r\n id: resource.id,\r\n name: resource.name,\r\n imageUrl: resource.imageUrl,\r\n link: resource.resourceLink,\r\n source: IDocumentSource.MDResource,\r\n }\r\n\r\n if (resource.isDirectory)\r\n document.documents = await pullDocuments(resource.id)\r\n\r\n compiledDocuments.push(document)\r\n }\r\n\r\n return compiledDocuments\r\n }\r\n\r\n this.documents.mdResources = await pullDocuments()\r\n },\r\n populateAgentResources: async function () {\r\n const compiledDocuments: IDocument[] = []\r\n const resources: IAgentResource[] = await (\r\n await fetch(`/api/agentresources`)\r\n ).json()\r\n\r\n for (const resource of resources) {\r\n const document: IDocument = {\r\n id: resource.id,\r\n name: resource.name,\r\n imageUrl: resource.imageUrl,\r\n link: resource.resourceLink,\r\n source: IDocumentSource.AgentResource,\r\n }\r\n\r\n compiledDocuments.push(document)\r\n }\r\n\r\n this.documents.agentResources = compiledDocuments\r\n },\r\n selectDocument: function (document: IDocument) {\r\n const existingDocument = this.selectedDocuments.find(\r\n (value) => value.id === document.id && value.source === document.source\r\n )\r\n\r\n if (existingDocument) {\r\n this.selectedDocuments = this.selectedDocuments.filter(\r\n (sd) => sd.id !== document.id || sd.source !== document.source\r\n )\r\n } else {\r\n this.selectedDocuments.push(document)\r\n }\r\n },\r\n submit: async function () {\r\n // TODO: Show error message if the selected documents are emtpy\r\n if (this.$v.title.$invalid || !this.selectDocument.length) {\r\n this.$v.$touch()\r\n return\r\n }\r\n\r\n this.saving = true\r\n\r\n const result = await fetch(\r\n `/api/proposals${this.editMode ? `/${this.proposal.id}` : ''}`,\r\n {\r\n method: this.editMode ? 'PUT' : 'POST',\r\n body: JSON.stringify({\r\n title: this.title,\r\n documents: this.selectedDocuments,\r\n }),\r\n headers: {\r\n 'Content-type': 'application/json; charset=UTF-8',\r\n },\r\n }\r\n )\r\n\r\n if (!result.ok) {\r\n this.errors = (await result.json()).map(\r\n (x: IValidationResult) => x.errorMessage\r\n )\r\n } else {\r\n const body = await result.json()\r\n const files = (this.$refs.fileinput as HTMLInputElement).files\r\n if (files && files.length > 0) {\r\n const file = files[0]\r\n if (file) {\r\n const uploadImageUrl = body.uploadImageUrl\r\n await fetch(uploadImageUrl, {\r\n method: 'PUT',\r\n body: file,\r\n headers: {\r\n 'Content-Type': 'image/png',\r\n 'x-ms-blob-type': 'BlockBlob',\r\n },\r\n })\r\n }\r\n }\r\n\r\n this.close({ ...body, numberOfChildren: this.selectedDocuments.length })\r\n }\r\n\r\n this.saving = false\r\n },\r\n selectFile: async function (): Promise {\r\n ;(this.$refs.fileinput as HTMLInputElement).click()\r\n },\r\n close: function (data: IProposal | undefined) {\r\n this.title = ''\r\n this.imageData = ''\r\n this.selectedDocuments = []\r\n\r\n this.$v.$reset()\r\n this.$emit('close', data)\r\n },\r\n },\r\n computed: {\r\n tabDocuments() {\r\n const vueInstance = this as any\r\n let activeDocuments: IDocument[] = []\r\n\r\n if (vueInstance.documents[vueInstance.tab].length)\r\n activeDocuments = vueInstance.documents[vueInstance.tab]\r\n\r\n return activeDocuments\r\n },\r\n titleErrors() {\r\n const vueInstance = this as any\r\n if (!vueInstance.titleModel) {\r\n return ['Title is required']\r\n }\r\n return []\r\n },\r\n titleModel: {\r\n get() {\r\n const vueInstance = this as any\r\n\r\n if (vueInstance.editMode) {\r\n return vueInstance.proposal.title || vueInstance.title\r\n }\r\n\r\n return vueInstance.title\r\n },\r\n set(value) {\r\n ;(this as any).title = value\r\n },\r\n },\r\n },\r\n components: { CIcon, Modal, ModalBody, SmallDisplay, Folder },\r\n name: 'UpsertProposalModal',\r\n})\r\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport Vue from 'vue'\r\nimport { CIcon } from '@coreui/icons-vue'\r\nimport { cilFolder } from '@coreui/icons-pro'\r\nimport '../../styles/folder.css'\r\n\r\nexport default Vue.extend({\r\n name: 'Folder',\r\n data() {\r\n return {\r\n folderIcon: cilFolder,\r\n }\r\n },\r\n props: {\r\n selectedDocuments: {\r\n type: [],\r\n required: true,\r\n },\r\n folder: {\r\n type: Object,\r\n required: true,\r\n },\r\n isRoot: {\r\n type: Boolean,\r\n required: false,\r\n default: false,\r\n },\r\n },\r\n methods: {\r\n selectDocument: function (document: any) {\r\n this.$emit('select-document', document)\r\n },\r\n },\r\n computed: {},\r\n components: { CIcon },\r\n})\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Folder.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Folder.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Folder.vue?vue&type=template&id=624ab314&\"\nimport script from \"./Folder.vue?vue&type=script&lang=ts&\"\nexport * from \"./Folder.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/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","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./UpsertProposalModal.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./UpsertProposalModal.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./UpsertProposalModal.vue?vue&type=template&id=52475b84&\"\nimport script from \"./UpsertProposalModal.vue?vue&type=script&lang=ts&\"\nexport * from \"./UpsertProposalModal.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/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\n\n/* vuetify-loader */\nimport installComponents from \"!../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VRow } from 'vuetify/lib/components/VGrid';\nimport { VTextField } from 'vuetify/lib/components/VTextField';\ninstallComponents(component, {VCol,VContainer,VRow,VTextField})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('Modal',{staticClass:\"common-modal\",attrs:{\"showModal\":_vm.showModal}},[_c('ModalBody',[_c('div',{staticClass:\"common-title\"},[_vm._v(\" Are you sure you don't want to save your changes? \")]),_c('div',{staticClass:\"common-actions-container\"},[_c('button',{staticClass:\"common-cancel-button\",on:{\"click\":function($event){return _vm.$emit('close')}}},[_vm._v(\" Cancel \")]),_c('button',{staticClass:\"common-confirm-button\",on:{\"click\":function($event){return _vm.$emit('confirm')}}},[_vm._v(\" Confirm \")])])])],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport '../../styles/common-modal.css'\r\nimport Modal from './modal/Modal.vue'\r\nimport ModalBody from './modal/ModalBody.vue'\r\nimport Vue from 'vue'\r\n\r\nexport default Vue.extend({\r\n data() {\r\n return {}\r\n },\r\n props: {\r\n showModal: {\r\n type: Boolean,\r\n required: true,\r\n },\r\n },\r\n components: { Modal, ModalBody },\r\n name: 'PendingChangeModal',\r\n})\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./PendingChangeModal.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./PendingChangeModal.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./PendingChangeModal.vue?vue&type=template&id=4caba31c&\"\nimport script from \"./PendingChangeModal.vue?vue&type=script&lang=ts&\"\nexport * from \"./PendingChangeModal.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/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","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport '../styles/proposals.css'\r\nimport { Vue } from 'vue-property-decorator'\r\nimport { CIcon } from '@coreui/icons-vue'\r\nimport { cilPlus } from '@coreui/icons-pro'\r\n\r\nimport draggable from 'vuedraggable'\r\nimport ScreenTile from '../components/ScreenTile.vue'\r\nimport ProposalTile from '../components/proposal/ProposalTile.vue'\r\nimport ProposalHistory from '../components/proposal/ProposalHistory.vue'\r\n\r\nimport RemoveItemModal from '../components/general/RemoveItemModal.vue'\r\nimport UpsertProposalModal from '../components/proposal/UpsertProposalModal.vue'\r\nimport PendingChangeModal from '../components/general/PendingChangeModal.vue'\r\n\r\ninterface IProposal {\r\n id: number\r\n title: string\r\n imageUrl: string | undefined\r\n updatedDate: string\r\n createdDate: string\r\n numberOfChildren: number\r\n}\r\n\r\ninterface IProposalDocument {\r\n id: number\r\n documentId: number\r\n name: string\r\n imageUrl: string | undefined\r\n resourceLink: string | undefined\r\n createdDate: string\r\n source: string\r\n}\r\n\r\nexport default Vue.extend({\r\n components: {\r\n ScreenTile,\r\n ProposalTile,\r\n UpsertProposalModal,\r\n RemoveItemModal,\r\n PendingChangeModal,\r\n CIcon,\r\n draggable,\r\n ProposalHistory,\r\n },\r\n data: function () {\r\n return {\r\n loading: true,\r\n loadingDetails: false,\r\n proposals: [] as IProposal[],\r\n\r\n originalOrder: [] as IProposalDocument[],\r\n proposalDocuments: [] as IProposalDocument[],\r\n\r\n viewItem: {} as IProposal,\r\n removeItem: {} as IProposal,\r\n\r\n showModal: false,\r\n showRemoveModal: false,\r\n showPendingChangeModal: false,\r\n hasReorderedDocuments: false,\r\n\r\n addIcon: cilPlus,\r\n\r\n currentTab: 0,\r\n producing: false,\r\n }\r\n },\r\n mounted: async function () {\r\n this.proposals = await (await fetch(`/api/proposals`)).json()\r\n this.loading = false\r\n },\r\n computed: {\r\n areDocumentInOriginalOrder(): boolean {\r\n if (!this.hasReorderedDocuments) return true\r\n\r\n let isSameOrder = true\r\n\r\n for (let index = 0; index < this.originalOrder.length; index++) {\r\n if (isSameOrder) {\r\n const oOPD = this.originalOrder[index]\r\n const cOPD = this.proposalDocuments[index]\r\n\r\n if (oOPD.id !== cOPD.id || oOPD.source !== cOPD.source)\r\n isSameOrder = false\r\n }\r\n }\r\n\r\n return isSameOrder\r\n },\r\n },\r\n methods: {\r\n updateOrder: async function () {\r\n // console.log('Updating order of proposal documents')\r\n\r\n try {\r\n const result = await fetch(`/api/proposals/${this.viewItem.id}`, {\r\n method: 'PUT',\r\n body: JSON.stringify({\r\n title: this.viewItem.title,\r\n documents: this.proposalDocuments.map((proposalDocument) => ({\r\n id: proposalDocument.documentId,\r\n name: proposalDocument.name,\r\n source: proposalDocument.source,\r\n })),\r\n }),\r\n headers: {\r\n 'Content-type': 'application/json; charset=UTF-8',\r\n },\r\n })\r\n\r\n // TODO: show an error toast\r\n if (!result.ok) {\r\n // console.log('Failed to update the order of the proposal documents')\r\n }\r\n } catch {\r\n // console.log('Failed to update the order of the proposal documents')\r\n }\r\n\r\n this.hasReorderedDocuments = false\r\n },\r\n upsertProposal: function (item: IProposal) {\r\n if (item) {\r\n if (this.viewItem?.id)\r\n this.proposals = this.proposals.filter(\r\n (proposal) => proposal.id !== item.id\r\n )\r\n this.proposals.push(item)\r\n }\r\n\r\n this.showModal = false\r\n this.changeView(null)\r\n },\r\n confirmChange: async function () {\r\n if (this.areDocumentInOriginalOrder) this.changeView(null)\r\n else this.showPendingChangeModal = true\r\n },\r\n changeView: async function (id: number | null) {\r\n if (id === null) {\r\n this.showPendingChangeModal = false\r\n this.hasReorderedDocuments = false\r\n this.viewItem = {} as IProposal\r\n this.proposalDocuments = []\r\n this.originalOrder = []\r\n } else {\r\n this.loadingDetails = true\r\n\r\n this.viewItem =\r\n this.proposals.find((proposal) => proposal.id === id) ??\r\n ({} as IProposal)\r\n this.proposalDocuments = await (\r\n await fetch(`/api/proposals/${id}/documents`)\r\n ).json()\r\n\r\n this.loadingDetails = false\r\n }\r\n },\r\n produce: async function () {\r\n this.producing = true\r\n await fetch(`/api/proposals/${this.viewItem.id}/produce`, {\r\n method: 'POST',\r\n })\r\n // move to history tab\r\n if (this.$refs.propHistory) {\r\n ;(this.$refs.propHistory as any).refresh()\r\n }\r\n this.producing = false\r\n this.currentTab = 1\r\n },\r\n removeProposal: async function (id: number | null) {\r\n if (id === null) {\r\n // console.log('Someone tried to remove nothing')\r\n return\r\n }\r\n\r\n this.showRemoveModal = false\r\n this.loading = true\r\n\r\n await fetch(`/api/proposals/${id}`, { method: 'DELETE' })\r\n\r\n this.proposals = this.proposals.filter((proposal) => proposal.id !== id)\r\n this.loading = false\r\n },\r\n openDocument: async function (document: IProposalDocument) {\r\n // TODO: Show a toast or some other message when errors happen\r\n try {\r\n const canOpenResource = await fetch(`${document.resourceLink}`)\r\n\r\n if (canOpenResource.ok) {\r\n // console.log('opening ' + document.resourceLink)\r\n window.open(document.resourceLink)\r\n } else {\r\n // console.log('Was unable to open resource' + document.resourceLink)\r\n }\r\n } catch {\r\n // console.log('Was unable to open resource' + document.resourceLink)\r\n }\r\n },\r\n },\r\n})\r\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Proposals.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Proposals.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Proposals.vue?vue&type=template&id=481a6721&\"\nimport script from \"./Proposals.vue?vue&type=script&lang=ts&\"\nexport * from \"./Proposals.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/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\n\n/* vuetify-loader */\nimport installComponents from \"!../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VProgressLinear } from 'vuetify/lib/components/VProgressLinear';\nimport { VTab } from 'vuetify/lib/components/VTabs';\nimport { VTabItem } from 'vuetify/lib/components/VTabs';\nimport { VTabs } from 'vuetify/lib/components/VTabs';\nimport { VTabsItems } from 'vuetify/lib/components/VTabs';\ninstallComponents(component, {VProgressLinear,VTab,VTabItem,VTabs,VTabsItems})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('ScreenTile',{attrs:{\"title\":\"MD Resources\",\"subTitle\":\"Agent Portal\"},scopedSlots:_vm._u([{key:\"buttons\",fn:function(){return [_c('div',[(_vm.user.isAdministrator)?_c('button',{staticClass:\"screen-action\",on:{\"click\":_vm.addResource}},[_c('CIcon',{attrs:{\"content\":_vm.mdresourceAddIcon}}),_vm._v(\" Add Resource \")],1):_vm._e(),(_vm.user.isAdministrator)?_c('button',{staticClass:\"screen-action\",on:{\"click\":_vm.resetResources}},[_c('CIcon',{attrs:{\"content\":_vm.mdresourceResetIcon}}),_vm._v(\" Delete All Resources \")],1):_vm._e()])]},proxy:true}])},[_c('div',{staticStyle:{\"width\":\"100%\"}},[_c('v-text-field',{staticClass:\"search-box\",attrs:{\"hint\":\"You can search by name\",\"label\":\"Search\"},on:{\"input\":_vm.onSearch},model:{value:(_vm.searchText),callback:function ($$v) {_vm.searchText=$$v},expression:\"searchText\"}}),_c('div',[_c('Breadcrumbs',{attrs:{\"routes\":_vm.routes},on:{\"click\":_vm.recurseUpTo}})],1)],1),(_vm.loading)?_c('v-progress-linear',{attrs:{\"indeterminate\":\"\",\"color\":\"#4A3046\"}}):_vm._e(),_c('AddMDResourceModal',{attrs:{\"showModal\":_vm.showModal,\"type\":_vm.updateType,\"parentId\":_vm.parentId,\"resource\":_vm.editItem},on:{\"close\":_vm.resourceAdded}}),(_vm.deleteItem)?_c('RemoveItemModal',{attrs:{\"showModal\":!!_vm.showDeleteModal && !!_vm.deleteItem,\"item\":_vm.deleteItem.isDirectory\n ? ((_vm.deleteItem.name) + \" and all its contents\")\n : (\"\" + (_vm.deleteItem.name))},on:{\"close\":function () {\n _vm.showDeleteModal = false\n _vm.deleteItem = undefined\n },\"confirm\":_vm.deleteItemOnServer}}):_vm._e(),_c('RemoveItemModal',{attrs:{\"showModal\":!!_vm.showResetModal,\"item\":\"all items\"},on:{\"close\":function () {\n _vm.showResetModal = false\n },\"confirm\":_vm.resetResourcesOnServer}}),_c('div',{staticClass:\"tile-display\"},[(_vm.filteredMDResources.length === 0)?_c('div',{staticClass:\"empty-directory\"},[_vm._v(\" This directory is empty \")]):_vm._e(),_vm._l((_vm.filteredSortedMDResources),function(curResource){return _c('div',{key:curResource.id},[(curResource.isDirectory)?_c('ResourceDirectoryTile',{attrs:{\"id\":curResource.id,\"title\":curResource.name,\"cardIconUrl\":curResource.imageUrl,\"lastUpdated\":new Date(curResource.updatedDate),\"favorite\":curResource.favorite,\"numberOfDocuments\":curResource.numberOfChildren,\"isAdministrator\":_vm.user.isAdministrator,\"searchPath\":curResource.searchPath},on:{\"view-click\":function($event){return _vm.descendIntoDirectory(curResource.id)},\"toggle-favorite\":_vm.toggleFavorite,\"delete-resource\":_vm.deleteResource,\"edit-resource\":_vm.editResource}}):_vm._e()],1)})],2),_c('div',[_c('ul',{staticClass:\"file-list\"},_vm._l((_vm.filteredSortedMDResources),function(curResource){return _c('li',{key:curResource.id},[(!curResource.isDirectory)?_c('ResourceRow',{key:curResource.id,attrs:{\"id\":curResource.id,\"title\":curResource.name,\"description\":(new Date(curResource.createdDate)).toString(),\"favorite\":curResource.favorite !== null,\"favoriteId\":curResource.favorite !== null ? curResource.favorite.id : null,\"imageUrl\":curResource.imageUrl,\"isAdministrator\":_vm.user.isAdministrator,\"searchPath\":curResource.searchPath},on:{\"view-click\":_vm.openDocument,\"toggle-favorite\":_vm.toggleFavorite,\"delete-resource\":_vm.deleteResource,\"edit-resource\":_vm.editResource}}):_vm._e()],1)}),0)])],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('Modal',{staticClass:\"add-mdresource-modal\",attrs:{\"showModal\":_vm.showModal}},[_c('div',{staticClass:\"modal-header\"},[_c('div',{staticClass:\"modal-exit-icon\",on:{\"click\":_vm.close}},[_c('CIcon',{attrs:{\"content\":_vm.exitIcon}})],1)]),_c('ModalBody',[_c('div',{staticClass:\"add-mdresource-title\"},[_vm._v(\" \"+_vm._s(_vm.type === 'add' ? 'Add' : 'Edit')+\" Resource \")]),(!!_vm.imageData)?_c('img',{staticClass:\"add-mdresource-populated-image\",attrs:{\"src\":_vm.imageData,\"alt\":\"\"},on:{\"click\":_vm.selectFile}}):_vm._e(),(!_vm.imageData)?_c('div',{staticClass:\"add-mdresource-image-container\",on:{\"click\":_vm.selectFile}},[_c('CIcon',{staticClass:\"add-mdresource-image\",attrs:{\"content\":_vm.imageIcon}})],1):_vm._e(),_c('input',{ref:\"imagefileinput\",staticStyle:{\"display\":\"none\"},attrs:{\"id\":\"image-file-input\",\"type\":\"file\",\"name\":\"name\",\"accept\":\"image/*\"}}),_c('v-container',[_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\"}},[_c('v-text-field',{attrs:{\"error-messages\":_vm.nameErrors,\"label\":\"Name\",\"required\":\"\",\"outlined\":\"\"},model:{value:(_vm.name),callback:function ($$v) {_vm.name=$$v},expression:\"name\"}}),_c('v-switch',{attrs:{\"label\":\"Is a directory\"},model:{value:(_vm.isDirectory),callback:function ($$v) {_vm.isDirectory=$$v},expression:\"isDirectory\"}}),(!_vm.isDirectory)?_c('v-file-input',{ref:\"resourceFileInput\",attrs:{\"label\":\"Resource File\",\"outlined\":\"\",\"show-size\":\"\",\"accept\":\".pdf,.zip\"},model:{value:(_vm.resourceFile),callback:function ($$v) {_vm.resourceFile=$$v},expression:\"resourceFile\"}}):_vm._e(),(\n _vm.resourceFile &&\n _vm.resourceFile.name.toLowerCase().endsWith('.zip')\n )?_c('v-alert',{attrs:{\"border\":\"bottom\",\"colored-border\":\"\",\"type\":\"info\"}},[_vm._v(\" When uploading a zip file it will be expanded and the contents will be added rather than the actual zip file. It may take a moment to process before files are visible. \")]):_vm._e()],1)],1)],1),(_vm.errors && _vm.errors.length > 0)?_c('v-alert',{staticClass:\"validation-errors\",attrs:{\"border\":\"bottom\",\"colored-border\":\"\",\"type\":\"error\",\"elevation\":\"2\"}},[_c('ul',_vm._l((_vm.errors),function(err){return _c('li',{key:err},[_vm._v(_vm._s(err))])}),0)]):_vm._e(),_c('button',{staticClass:\"add-mdresource-button\",attrs:{\"disabled\":_vm.saving},on:{\"click\":_vm.add}},[_vm._v(\" \"+_vm._s(_vm.type === 'add' ? 'ADD' : 'UPDATE')+\" \")]),(_vm.saving)?_c('v-progress-linear',{staticStyle:{\"margin-top\":\"10px\"},attrs:{\"indeterminate\":\"\",\"color\":\"#4A3046\"}}):_vm._e()],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport '../styles/add-mdresource-modal.css'\r\nimport Vue from 'vue'\r\nimport Modal from './general/modal/Modal.vue'\r\nimport ModalBody from './general/modal/ModalBody.vue'\r\nimport { CIcon } from '@coreui/icons-vue'\r\nimport { cilX, cilImage } from '@coreui/icons-pro'\r\n\r\nimport { validationMixin } from 'vuelidate'\r\nimport { required } from 'vuelidate/lib/validators'\r\n\r\nimport { IValidationResult } from '../util/IValidationResult'\r\nimport * as mime from 'mime-types'\r\n\r\nexport default Vue.extend({\r\n mixins: [validationMixin],\r\n validations: {\r\n name: { required },\r\n },\r\n name: 'AddMDResourceModal',\r\n data() {\r\n return {\r\n saving: false,\r\n errors: [],\r\n imageData: '',\r\n\r\n name: '',\r\n isDirectory: false,\r\n\r\n exitIcon: cilX,\r\n imageIcon: cilImage,\r\n resourceFile: null as any,\r\n }\r\n },\r\n components: { CIcon, Modal, ModalBody },\r\n props: {\r\n showModal: {\r\n type: Boolean,\r\n required: true,\r\n },\r\n parentId: {\r\n type: Number,\r\n required: false,\r\n },\r\n type: {\r\n type: String,\r\n required: true,\r\n },\r\n resource: {\r\n type: Object,\r\n required: false,\r\n },\r\n },\r\n watch: {\r\n resource: {\r\n immediate: true,\r\n deep: true,\r\n handler(val) {\r\n if (val) {\r\n this.name = val.name\r\n this.isDirectory = val.isDirectory\r\n this.imageData = val.imageData\r\n }\r\n },\r\n },\r\n },\r\n updated: function () {\r\n if (this.$refs.imagefileinput) {\r\n ;(this.$refs.imagefileinput as HTMLInputElement).onchange = () => {\r\n const files = (this.$refs.imagefileinput as HTMLInputElement).files\r\n if (files && files.length > 0) {\r\n const file = files[0]\r\n if (file) {\r\n this.imageData = URL.createObjectURL(file)\r\n }\r\n }\r\n }\r\n }\r\n },\r\n methods: {\r\n close: function () {\r\n this.name = ''\r\n this.imageData = ''\r\n this.isDirectory = false\r\n this.resourceFile = null\r\n\r\n this.$v.$reset()\r\n this.$emit('close')\r\n },\r\n add: async function () {\r\n this.saving = true\r\n\r\n if (this.$v.name.$invalid) {\r\n this.$v.$touch()\r\n this.saving = false\r\n return\r\n }\r\n const result = await fetch('/api/mdresources', {\r\n method: this.type === 'add' ? 'POST' : 'PUT',\r\n body: JSON.stringify({\r\n name: this.name,\r\n isDirectory: this.isDirectory,\r\n parentId: this.parentId,\r\n isZipFile:\r\n !!this.resourceFile &&\r\n this.resourceFile.name.toLowerCase().endsWith('.zip'),\r\n id: this.resource?.id,\r\n }),\r\n headers: {\r\n 'Content-type': 'application/json; charset=UTF-8',\r\n },\r\n })\r\n if (!result.ok) {\r\n this.errors = (await result.json()).map(\r\n (x: IValidationResult) => x.errorMessage\r\n )\r\n } else {\r\n const body = await result.json()\r\n const files = (this.$refs.imagefileinput as HTMLInputElement).files\r\n if (files && files.length > 0) {\r\n const file = files[0]\r\n if (file) {\r\n const uploadImageUrl = body.uploadImageUrl\r\n await fetch(uploadImageUrl, {\r\n method: 'PUT',\r\n body: file,\r\n headers: {\r\n 'Content-Type': 'image/png',\r\n 'x-ms-blob-type': 'BlockBlob',\r\n },\r\n })\r\n }\r\n }\r\n\r\n if (this && this.resourceFile && this.resourceFile.name) {\r\n const uploadImageUrl = body.uploadResourceLink\r\n await fetch(uploadImageUrl, {\r\n method: 'PUT',\r\n body: this.resourceFile,\r\n headers: {\r\n 'Content-Type': mime.lookup(this.resourceFile.name) as string,\r\n 'x-ms-blob-type': 'BlockBlob',\r\n 'x-ms-blob-content-disposition': `attachment; filename=\"${\r\n this.resourceFile.name as string\r\n }\"`,\r\n },\r\n })\r\n }\r\n }\r\n\r\n this.saving = false\r\n this.close()\r\n },\r\n selectFile: async function () {\r\n ;(this.$refs.imagefileinput as HTMLInputElement).click()\r\n },\r\n },\r\n computed: {\r\n nameErrors(): string[] {\r\n const errors: string[] = []\r\n if (this.$v.name.$error) errors.push('Name is required')\r\n return errors\r\n },\r\n },\r\n})\r\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AddMDResourceModal.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AddMDResourceModal.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./AddMDResourceModal.vue?vue&type=template&id=303e7f9c&\"\nimport script from \"./AddMDResourceModal.vue?vue&type=script&lang=ts&\"\nexport * from \"./AddMDResourceModal.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/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\n\n/* vuetify-loader */\nimport installComponents from \"!../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VAlert } from 'vuetify/lib/components/VAlert';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VFileInput } from 'vuetify/lib/components/VFileInput';\nimport { VProgressLinear } from 'vuetify/lib/components/VProgressLinear';\nimport { VRow } from 'vuetify/lib/components/VGrid';\nimport { VSwitch } from 'vuetify/lib/components/VSwitch';\nimport { VTextField } from 'vuetify/lib/components/VTextField';\ninstallComponents(component, {VAlert,VCol,VContainer,VFileInput,VProgressLinear,VRow,VSwitch,VTextField})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',_vm._l((_vm.routes),function(item){return _c('span',{key:item.id},[_c('a',{staticClass:\"breadcrumb-link\",attrs:{\"href\":\"#\"},on:{\"click\":function($event){return _vm.onClick(item.id)}}},[_vm._v(_vm._s(item.name))]),_vm._v(\"/ \")])}),0)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n \r\n \r\n {{\r\n item.name\r\n }}/\r\n \r\n \r\n\r\n\r\n\r\n","import mod from \"-!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Breadcrumbs.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Breadcrumbs.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Breadcrumbs.vue?vue&type=template&id=739e3f9a&\"\nimport script from \"./Breadcrumbs.vue?vue&type=script&lang=js&\"\nexport * from \"./Breadcrumbs.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/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","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"resource-row\"},[(_vm.isAdministrator && this.$listeners['edit-resource'])?_c('span',{staticClass:\"resource-edit\",on:{\"click\":_vm.onEditClick}},[_c('CIcon',{attrs:{\"content\":_vm.editIcon}})],1):_vm._e(),(_vm.isAdministrator && this.$listeners['delete-resource'])?_c('span',{staticClass:\"resource-delete\",on:{\"click\":_vm.onDeleteClick}},[_c('CIcon',{attrs:{\"content\":_vm.deleteIcon}})],1):_vm._e(),_c('span',{staticClass:\"resource-favorite\",on:{\"click\":_vm.onFavoriteClick}},[(!!_vm.favorite)?_c('CIcon',{staticStyle:{\"color\":\"#fff259\"},attrs:{\"content\":_vm.favoritedStarIcon}}):_c('CIcon',{attrs:{\"content\":_vm.standardStarIcon}})],1),_c('a',{staticClass:\"view-link\",attrs:{\"href\":\"#\"},on:{\"click\":function($event){return _vm.$emit('view-click', _vm.id)}}},[_vm._v(_vm._s(_vm.searchPath ? _vm.searchPath : _vm.title))])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport '../styles/resource-tile.css'\r\nimport { CIcon } from '@coreui/icons-vue'\r\nimport { cisStar, cilStar, cilTrash, cilPencil } from '@coreui/icons-pro'\r\nimport Vue from 'vue'\r\n\r\nexport default Vue.extend({\r\n data(): {\r\n usePlaceholder: boolean\r\n favoritedStarIcon: any[]\r\n standardStarIcon: any[]\r\n deleteIcon: any[]\r\n editIcon: any[]\r\n } {\r\n return {\r\n usePlaceholder: false,\r\n favoritedStarIcon: cisStar,\r\n standardStarIcon: cilStar,\r\n deleteIcon: cilTrash,\r\n editIcon: cilPencil,\r\n }\r\n },\r\n props: {\r\n id: {\r\n type: Number,\r\n required: false,\r\n },\r\n title: {\r\n type: String,\r\n required: true,\r\n },\r\n description: {\r\n type: String,\r\n required: false,\r\n },\r\n favorite: {\r\n type: Boolean,\r\n required: false,\r\n },\r\n favoriteId: {\r\n type: Number,\r\n required: false,\r\n },\r\n imageUrl: {\r\n type: String,\r\n required: false,\r\n },\r\n isAdministrator: {\r\n type: Boolean,\r\n required: true,\r\n },\r\n path: {\r\n type: String,\r\n required: false,\r\n },\r\n searchPath: {\r\n type: String,\r\n required: false,\r\n },\r\n },\r\n mounted: async function () {\r\n try {\r\n if (!this.imageUrl) {\r\n this.usePlaceholder = true\r\n return\r\n }\r\n const canLoadImage = await fetch(this.imageUrl)\r\n\r\n if (!canLoadImage.ok) this.usePlaceholder = true\r\n } catch {\r\n this.usePlaceholder = true\r\n }\r\n },\r\n methods: {\r\n onFavoriteClick(): void {\r\n this.$emit('toggle-favorite', {\r\n favoriteId: this.favoriteId,\r\n id: this.id,\r\n path: this.path,\r\n })\r\n },\r\n onDeleteClick(): void {\r\n this.$emit('delete-resource', this.id)\r\n },\r\n onEditClick(): void {\r\n this.$emit('edit-resource', this.id)\r\n },\r\n },\r\n name: 'ResourceRow',\r\n components: { CIcon },\r\n})\r\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ResourceRow.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ResourceRow.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ResourceRow.vue?vue&type=template&id=0b4d1d88&\"\nimport script from \"./ResourceRow.vue?vue&type=script&lang=ts&\"\nexport * from \"./ResourceRow.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/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","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport '../styles/md-resources.css'\r\nimport { Vue } from 'vue-property-decorator'\r\nimport { CIcon } from '@coreui/icons-vue'\r\nimport { cilFileAdd, cilQueueRemove } from '@coreui/icons-pro'\r\nimport ScreenTile from '../components/ScreenTile.vue'\r\nimport AddMDResourceModal from '../components/AddMDResourceModal.vue'\r\nimport Breadcrumbs from '../components/general/Breadcrumbs.vue'\r\nimport RemoveItemModal from '../components/general/RemoveItemModal.vue'\r\nimport { mapState } from 'vuex'\r\nimport ResourceDirectoryTile from '../components/ResourceDirectoryTile.vue'\r\nimport ResourceRow from '../components/ResourceRow.vue'\r\n\r\ninterface IFavorite {\r\n id: number\r\n username: string\r\n mddocumentId: number\r\n reportId: number\r\n}\r\n\r\ninterface IMDResource {\r\n id: number\r\n name: string\r\n imageUrl: string | undefined\r\n resourceLink: string | undefined\r\n isDirectory: boolean\r\n parentId: number\r\n favorite: IFavorite | null\r\n updatedDate: string\r\n createdDate: string\r\n numberOfChildren: number\r\n searchPath: string\r\n searchIdPath: string\r\n}\r\n\r\ninterface IModel {\r\n loading: boolean\r\n showModal: boolean\r\n showDeleteModal: boolean\r\n showResetModal: boolean\r\n deleteItem: IMDResource | undefined\r\n searchText: string\r\n mdresources: IMDResource[]\r\n favorites: IFavorite[]\r\n parentId: number | undefined\r\n routes: any[]\r\n mdresourceAddIcon: any[]\r\n mdresourceResetIcon: any[]\r\n updateType: string\r\n editItem: IMDResource | undefined\r\n onSearchId: number | undefined\r\n}\r\n\r\nexport default Vue.extend({\r\n data: function (): IModel {\r\n return {\r\n loading: true,\r\n favorites: [] as IFavorite[],\r\n mdresources: [] as IMDResource[],\r\n showDeleteModal: false,\r\n showResetModal: false,\r\n deleteItem: undefined,\r\n showModal: false,\r\n mdresourceAddIcon: cilFileAdd,\r\n mdresourceResetIcon: cilQueueRemove,\r\n searchText: '',\r\n updateType: 'add',\r\n parentId: undefined as number | undefined,\r\n routes: [{ id: undefined, name: 'MD Resources' }] as {\r\n id: number | undefined\r\n name: string\r\n }[],\r\n editItem: undefined as IMDResource | undefined,\r\n onSearchId: undefined as number | undefined,\r\n }\r\n },\r\n methods: {\r\n resourceAdded: async function () {\r\n this.loading = true\r\n this.showModal = false\r\n\r\n await this.loadResources()\r\n\r\n this.loading = false\r\n },\r\n recurseUpTo: async function (id: number) {\r\n this.loading = true\r\n const indexOfRoute = this.routes.findIndex((x) => x.id === id)\r\n this.routes = this.routes.slice(0, indexOfRoute + 1)\r\n this.parentId = this.routes[this.routes.length - 1]?.id\r\n await this.loadResources()\r\n\r\n this.loading = false\r\n },\r\n descendIntoDirectory: async function (id: number) {\r\n this.loading = true\r\n const mdResource = this.mdresources.find((x) => x.id === id)\r\n if (mdResource && mdResource.parentId != this.parentId) {\r\n const idArr = mdResource.searchIdPath.split(' / ')\r\n const pathArr = mdResource.searchPath.split(' / ')\r\n for (let i = 0; i < idArr.length; i++) {\r\n this.routes.push({\r\n id: idArr[i],\r\n name: pathArr[i],\r\n })\r\n }\r\n } else {\r\n this.routes.push({\r\n id,\r\n name: this.mdresources.find((x) => x.id === id)?.name ?? '',\r\n })\r\n }\r\n this.parentId = id\r\n this.$router.push({\r\n name: 'MD Resources',\r\n params: { directoryId: id },\r\n })\r\n await this.loadResources()\r\n\r\n this.loading = false\r\n },\r\n openDocument: async function (id: number) {\r\n const resource = this.mdresources.find((x) => x.id === id)\r\n\r\n // TODO: Show a toast or some other message when errors happen\r\n try {\r\n const canOpenResource = await fetch(`${resource?.resourceLink}`)\r\n\r\n if (canOpenResource.ok) {\r\n window.open(resource?.resourceLink)\r\n } else {\r\n // console.log('Was unable to open resource' + resource?.resourceLink)\r\n }\r\n } catch {\r\n // console.log('Was unable to open resource' + resource?.resourceLink)\r\n }\r\n },\r\n\r\n resetResources: async function () {\r\n this.showResetModal = true\r\n },\r\n\r\n resetResourcesOnServer: async function () {\r\n this.loading = true\r\n this.showResetModal = false\r\n await fetch(`/api/mdresources/reset`, {\r\n method: 'POST',\r\n })\r\n this.mdresources = []\r\n this.loading = false\r\n },\r\n\r\n addResource: async function () {\r\n this.updateType = 'add'\r\n this.showModal = true\r\n },\r\n\r\n editResource: async function (id: number) {\r\n this.updateType = 'edit'\r\n this.showModal = true\r\n this.editItem = this.mdresources.find((x) => x.id === id)\r\n },\r\n\r\n deleteResource: async function (id: number) {\r\n this.deleteItem = this.mdresources.find((x) => x.id === id)\r\n this.showDeleteModal = true\r\n },\r\n\r\n deleteItemOnServer: async function () {\r\n this.loading = true\r\n this.showDeleteModal = false\r\n\r\n if (this.deleteItem) {\r\n await fetch(`/api/mdresources/${this.deleteItem!.id}`, {\r\n method: 'DELETE',\r\n })\r\n if (this.searchText) {\r\n await this.loadResources()\r\n } else {\r\n this.mdresources = this.mdresources.filter(\r\n (x) => x.id !== this.deleteItem!.id\r\n )\r\n }\r\n }\r\n this.deleteItem = undefined\r\n this.loading = false\r\n },\r\n toggleFavorite: async function (params: {\r\n favoriteId?: number\r\n id?: number\r\n }) {\r\n if (params.favoriteId) {\r\n const response = await fetch(`/api/favorites/${params.favoriteId}`, {\r\n method: 'DELETE',\r\n })\r\n\r\n if (response.ok)\r\n this.favorites = this.favorites.filter(\r\n (favorite: IFavorite) => favorite.id !== params.favoriteId\r\n )\r\n } else if (params.id) {\r\n const response = await fetch('/api/favorites', {\r\n method: 'POST',\r\n body: JSON.stringify({\r\n mddocumentId: params.id,\r\n }),\r\n headers: {\r\n 'Content-type': 'application/json; charset=UTF-8',\r\n },\r\n })\r\n\r\n if (response.ok) this.favorites.push(await response.json())\r\n }\r\n },\r\n onSearch: async function () {\r\n // // delay call to server until user stops typing\r\n clearTimeout(this.onSearchId)\r\n this.onSearchId = setTimeout(() => {\r\n this.loadResources()\r\n }, 500)\r\n },\r\n loadResources: async function () {\r\n this.loading = true\r\n if (this.searchText) {\r\n this.mdresources = await (\r\n await fetch(\r\n `/api/mdresources/search?searchText=${this.searchText}${\r\n this.parentId ? `&parentId=${this.parentId}` : ''\r\n }`\r\n )\r\n ).json()\r\n } else {\r\n this.mdresources = await (\r\n await fetch(\r\n `/api/mdresources${\r\n this.parentId ? `?parentId=${this.parentId}` : ''\r\n }`\r\n )\r\n ).json()\r\n }\r\n this.loading = false\r\n },\r\n },\r\n computed: {\r\n mdResourcesWithFavorites(): IMDResource[] {\r\n return this.mdresources.map((mdresource: IMDResource) => {\r\n const favorite = this.favorites.find(\r\n (favorite: IFavorite) => favorite.mddocumentId === mdresource.id\r\n )\r\n\r\n return { ...mdresource, favorite: favorite ?? null }\r\n })\r\n },\r\n filteredMDResources(): IMDResource[] {\r\n if (this.searchText)\r\n return this.mdResourcesWithFavorites.filter((x) =>\r\n x.name?.toLowerCase()?.includes(this.searchText?.toLowerCase())\r\n )\r\n\r\n return this.mdResourcesWithFavorites\r\n },\r\n filteredSortedMDResources(): IMDResource[] {\r\n return this.filteredMDResources.slice().sort((a, b) => {\r\n if (a.isDirectory && a.name === 'Portfolio') {\r\n return -1\r\n }\r\n if (\r\n a.isDirectory &&\r\n a.name === 'Legacy Portfolio' &&\r\n b.isDirectory &&\r\n b.name !== 'Portfolio'\r\n ) {\r\n return -1\r\n }\r\n if (\r\n a.isDirectory &&\r\n a.name === 'Legacy NAE' &&\r\n b.isDirectory &&\r\n !b.name.includes('Portfolio')\r\n ) {\r\n return -1\r\n }\r\n if (a.isDirectory && !b.isDirectory) {\r\n return -1\r\n } else if (!a.isDirectory && b.isDirectory) {\r\n return 1\r\n } else {\r\n return a.name.localeCompare(b.name)\r\n }\r\n })\r\n },\r\n ...mapState(['user']),\r\n },\r\n mounted: async function () {\r\n this.parentId = null\r\n if (this.$attrs.directoryId) {\r\n this.parentId = parseInt(this.$attrs.directoryId) || 0\r\n }\r\n await this.loadResources()\r\n this.favorites = await (\r\n await fetch(\r\n '/api/favorites?' + new URLSearchParams({ mddocumentsOnly: 'true' })\r\n )\r\n ).json()\r\n this.loading = false\r\n },\r\n components: {\r\n ScreenTile,\r\n CIcon,\r\n ResourceDirectoryTile,\r\n ResourceRow,\r\n AddMDResourceModal,\r\n Breadcrumbs,\r\n RemoveItemModal,\r\n },\r\n})\r\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./MDResources.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./MDResources.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./MDResources.vue?vue&type=template&id=cc6a1534&\"\nimport script from \"./MDResources.vue?vue&type=script&lang=ts&\"\nexport * from \"./MDResources.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/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\n\n/* vuetify-loader */\nimport installComponents from \"!../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VProgressLinear } from 'vuetify/lib/components/VProgressLinear';\nimport { VTextField } from 'vuetify/lib/components/VTextField';\ninstallComponents(component, {VProgressLinear,VTextField})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('ScreenTile',{attrs:{\"title\":\"Agent Resources\",\"subTitle\":\"Agent Portal\"},scopedSlots:_vm._u([{key:\"buttons\",fn:function(){return [(_vm.user.isAdministrator)?_c('div',[_c('button',{staticClass:\"screen-action\",on:{\"click\":_vm.addResource}},[_c('CIcon',{attrs:{\"content\":_vm.agentresourceAddIcon}}),_vm._v(\" Add Resource \")],1),(_vm.user.isAdministrator)?_c('button',{staticClass:\"screen-action\",on:{\"click\":_vm.resetResources}},[_c('CIcon',{attrs:{\"content\":_vm.agentresourceResetIcon}}),_vm._v(\" Delete All Resources \")],1):_vm._e()]):_vm._e()]},proxy:true}])},[_c('div',{staticStyle:{\"width\":\"100%\"}},[_c('v-text-field',{staticClass:\"search-box\",attrs:{\"hint\":\"You can search by name\",\"label\":\"Search\"},on:{\"input\":_vm.onSearch},model:{value:(_vm.searchText),callback:function ($$v) {_vm.searchText=$$v},expression:\"searchText\"}}),_c('div',[_c('Breadcrumbs',{attrs:{\"routes\":_vm.routes},on:{\"click\":_vm.recurseUpTo}})],1)],1),_c('AddAgentResourceModal',{attrs:{\"showModal\":_vm.showAddModal,\"parentId\":_vm.parentId,\"resource\":_vm.editItem,\"type\":_vm.updateType},on:{\"close\":_vm.resourceAdded}}),(_vm.deleteItem)?_c('RemoveItemModal',{attrs:{\"showModal\":!!_vm.showDeleteModal && !!_vm.deleteItem,\"item\":_vm.deleteItem.isDirectory\n ? ((_vm.deleteItem.name) + \" and all its contents\")\n : (\"\" + (_vm.deleteItem.name))},on:{\"close\":function () {\n _vm.showDeleteModal = false\n _vm.deleteItem = undefined\n },\"confirm\":_vm.deleteItemOnServer}}):_vm._e(),_c('RemoveItemModal',{attrs:{\"showModal\":!!_vm.showResetModal,\"item\":\"all items\"},on:{\"close\":function () {\n _vm.showResetModal = false\n },\"confirm\":_vm.resetResourcesOnServer}}),(_vm.loading)?_c('v-progress-linear',{attrs:{\"indeterminate\":\"\",\"color\":\"#4A3046\"}}):_vm._e(),_c('div',{staticClass:\"tile-display\"},[(_vm.filteredSortedAgentResources.length === 0)?_c('div',{staticClass:\"empty-directory\"},[_vm._v(\" This directory is empty \")]):_vm._e(),_vm._l((_vm.filteredSortedAgentResources),function(curResource){return _c('div',{key:curResource.id},[(curResource.isDirectory)?_c('ResourceDirectoryTile',{attrs:{\"id\":curResource.id,\"title\":curResource.name,\"cardIconUrl\":curResource.imageUrl,\"lastUpdated\":new Date(curResource.lastUpdatedDate),\"favoriteId\":_vm.getFavoriteId(curResource.id),\"favorite\":_vm.getFavorite(curResource.id) !== undefined,\"numberOfDocuments\":curResource.numberOfChildren,\"description\":curResource.description,\"isAdministrator\":_vm.user.isAdministrator,\"imageUrl\":curResource.imageUrl,\"searchPath\":curResource.searchPath},on:{\"view-click\":function($event){return _vm.descendIntoDirectory(curResource.id)},\"toggle-favorite\":_vm.toggleFavorite,\"delete-resource\":_vm.deleteResource,\"edit-resource\":_vm.editResource}}):_vm._e()],1)})],2),_c('div',[_c('ul',{staticClass:\"file-list\"},_vm._l((_vm.filteredSortedAgentResources),function(curResource){return _c('li',{key:curResource.id},[(!curResource.isDirectory)?_c('ResourceRow',{key:curResource.id,attrs:{\"id\":curResource.id,\"title\":curResource.name,\"description\":curResource.description,\"imageUrl\":curResource.imageUrl,\"favoriteId\":_vm.getFavoriteId(curResource.id),\"favorite\":_vm.getFavorite(curResource.id) !== undefined,\"isAdministrator\":_vm.user.isAdministrator,\"searchPath\":curResource.searchPath},on:{\"view-click\":function () { return _vm.openDocument(curResource); },\"toggle-favorite\":_vm.toggleFavorite,\"delete-resource\":_vm.deleteResource,\"edit-resource\":_vm.editResource}}):_vm._e()],1)}),0)])],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {\nvar this$1 = this;\nvar _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('Modal',{staticClass:\"add-agentresource-modal\",attrs:{\"showModal\":_vm.showModal}},[_c('div',{staticClass:\"modal-header\"},[_c('div',{staticClass:\"modal-exit-icon\",on:{\"click\":function () { return this$1.close(null); }}},[_c('CIcon',{attrs:{\"content\":_vm.exitIcon}})],1)]),_c('ModalBody',[_c('div',{staticClass:\"add-agentresource-title\"},[_vm._v(\" \"+_vm._s(_vm.type === 'add' ? 'Add' : 'Edit')+\" Resource \")]),(!!_vm.imageData)?_c('img',{staticClass:\"add-agentresource-populated-image\",attrs:{\"src\":_vm.imageData,\"alt\":\"\"},on:{\"click\":_vm.selectFile}}):_vm._e(),(!_vm.imageData)?_c('div',{staticClass:\"add-agentresource-image-container\",on:{\"click\":_vm.selectFile}},[_c('CIcon',{staticClass:\"add-agentresource-image\",attrs:{\"content\":_vm.imageIcon}})],1):_vm._e(),_c('input',{ref:\"imagefileinput\",staticStyle:{\"display\":\"none\"},attrs:{\"id\":\"image-file-input\",\"type\":\"file\",\"name\":\"name\",\"accept\":\"image/*\"}}),_c('v-container',[_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\"}},[_c('v-text-field',{attrs:{\"error-messages\":_vm.nameErrors,\"label\":\"Name\",\"required\":\"\",\"outlined\":\"\"},model:{value:(_vm.name),callback:function ($$v) {_vm.name=$$v},expression:\"name\"}}),_c('v-text-field',{attrs:{\"error-messages\":_vm.descriptionErrors,\"label\":\"Description\",\"required\":\"\",\"outlined\":\"\"},model:{value:(_vm.description),callback:function ($$v) {_vm.description=$$v},expression:\"description\"}}),_c('v-switch',{attrs:{\"label\":\"Is a directory\"},model:{value:(_vm.isDirectory),callback:function ($$v) {_vm.isDirectory=$$v},expression:\"isDirectory\"}}),(!_vm.isDirectory)?_c('v-file-input',{ref:\"resourceFileInput\",attrs:{\"label\":\"Resource File\",\"outlined\":\"\",\"show-size\":\"\",\"accept\":\".pdf,.zip\"},model:{value:(_vm.resourceFile),callback:function ($$v) {_vm.resourceFile=$$v},expression:\"resourceFile\"}}):_vm._e(),(\n _vm.resourceFile &&\n _vm.resourceFile.name.toLowerCase().endsWith('.zip')\n )?_c('v-alert',{attrs:{\"border\":\"bottom\",\"colored-border\":\"\",\"type\":\"info\"}},[_vm._v(\" When uploading a zip file it will be expanded and the contents will be added rather than the actual zip file. It may take a moment to process before files are visible. \")]):_vm._e()],1)],1)],1),(_vm.errors && _vm.errors.length > 0)?_c('v-alert',{staticClass:\"validation-errors\",attrs:{\"border\":\"bottom\",\"colored-border\":\"\",\"type\":\"error\",\"elevation\":\"2\"}},[_c('ul',_vm._l((_vm.errors),function(err){return _c('li',{key:err},[_vm._v(_vm._s(err))])}),0)]):_vm._e(),_c('button',{staticClass:\"add-agentresource-button\",attrs:{\"disabled\":_vm.saving},on:{\"click\":_vm.add}},[_vm._v(\" \"+_vm._s(_vm.type === 'add' ? 'ADD' : 'UPDATE')+\" \")]),(_vm.saving)?_c('v-progress-linear',{staticStyle:{\"margin-top\":\"10px\"},attrs:{\"indeterminate\":\"\",\"color\":\"#4A3046\"}}):_vm._e()],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport '../styles/add-agentresource-modal.css'\r\nimport Vue from 'vue'\r\nimport Modal from './general/modal/Modal.vue'\r\nimport ModalBody from './general/modal/ModalBody.vue'\r\nimport { CIcon } from '@coreui/icons-vue'\r\nimport { cilX, cilImage } from '@coreui/icons-pro'\r\n\r\nimport { validationMixin } from 'vuelidate'\r\nimport { required } from 'vuelidate/lib/validators'\r\n\r\nimport { IValidationResult } from '../util/IValidationResult'\r\nimport * as mime from 'mime-types'\r\n\r\nexport default Vue.extend({\r\n mixins: [validationMixin],\r\n validations: {\r\n name: { required },\r\n description: { required },\r\n },\r\n name: 'AddAgentResourceModal',\r\n data() {\r\n return {\r\n saving: false,\r\n errors: [],\r\n imageData: '',\r\n\r\n name: '',\r\n description: '',\r\n isDirectory: false,\r\n\r\n exitIcon: cilX,\r\n imageIcon: cilImage,\r\n resourceFile: null as any,\r\n }\r\n },\r\n components: { CIcon, Modal, ModalBody },\r\n props: {\r\n showModal: {\r\n type: Boolean,\r\n required: true,\r\n },\r\n parentId: {\r\n type: Number,\r\n required: false,\r\n },\r\n type: {\r\n type: String,\r\n required: true,\r\n },\r\n resource: {\r\n type: Object,\r\n required: false,\r\n },\r\n },\r\n watch: {\r\n resource: {\r\n immediate: true,\r\n deep: true,\r\n handler(val) {\r\n if (val) {\r\n this.name = val.name\r\n this.description = val.description\r\n this.isDirectory = val.isDirectory\r\n this.imageData = val.imageData\r\n }\r\n },\r\n },\r\n },\r\n updated: function () {\r\n if (this.$refs.imagefileinput) {\r\n ;(this.$refs.imagefileinput as HTMLInputElement).onchange = () => {\r\n const files = (this.$refs.imagefileinput as HTMLInputElement).files\r\n if (files && files.length > 0) {\r\n const file = files[0]\r\n if (file) {\r\n this.imageData = URL.createObjectURL(file)\r\n }\r\n }\r\n }\r\n }\r\n },\r\n methods: {\r\n close: function (data: any | undefined) {\r\n this.name = ''\r\n this.description = ''\r\n this.imageData = ''\r\n this.resourceFile = null\r\n\r\n this.$v.$reset()\r\n this.$emit('close', data)\r\n },\r\n add: async function () {\r\n this.saving = true\r\n\r\n if (this.$v.name.$invalid) {\r\n this.$v.$touch()\r\n this.saving = false\r\n return\r\n }\r\n const result = await fetch('/api/agentresources', {\r\n method: this.type === 'add' ? 'POST' : 'PUT',\r\n body: JSON.stringify({\r\n name: this.name,\r\n description: this.description,\r\n isDirectory: this.isDirectory,\r\n parentId: this.parentId,\r\n isZipFile:\r\n !!this.resourceFile &&\r\n this.resourceFile.name.toLowerCase().endsWith('.zip'),\r\n id: this.resource?.id,\r\n }),\r\n headers: {\r\n 'Content-type': 'application/json; charset=UTF-8',\r\n },\r\n })\r\n if (!result.ok) {\r\n this.errors = (await result.json()).map(\r\n (x: IValidationResult) => x.errorMessage\r\n )\r\n } else {\r\n const body = await result.json()\r\n const files = (this.$refs.imagefileinput as HTMLInputElement).files\r\n if (files && files.length > 0) {\r\n const file = files[0]\r\n if (file) {\r\n const uploadImageUrl = body.uploadImageUrl\r\n await fetch(uploadImageUrl, {\r\n method: 'PUT',\r\n body: file,\r\n headers: {\r\n 'Content-Type': 'image/png',\r\n 'x-ms-blob-type': 'BlockBlob',\r\n },\r\n })\r\n }\r\n }\r\n\r\n if (this && this.resourceFile && this.resourceFile.name) {\r\n const uploadImageUrl = body.uploadResourceLink\r\n await fetch(uploadImageUrl, {\r\n method: 'PUT',\r\n body: this.resourceFile,\r\n headers: {\r\n 'Content-Type': mime.lookup(this.resourceFile.name) as string,\r\n 'x-ms-blob-type': 'BlockBlob',\r\n 'x-ms-blob-content-disposition': `attachment; filename=\"${\r\n this.resourceFile.name as string\r\n }\"`,\r\n },\r\n })\r\n }\r\n\r\n this.close({ ...body, updatedDate: new Date() })\r\n }\r\n\r\n this.saving = false\r\n },\r\n selectFile: async function () {\r\n ;(this.$refs.imagefileinput as HTMLInputElement).click()\r\n },\r\n },\r\n computed: {\r\n nameErrors(): string[] {\r\n const errors: string[] = []\r\n if (this.$v.name.$error) errors.push('Name is required')\r\n return errors\r\n },\r\n descriptionErrors(): string[] {\r\n const errors: string[] = []\r\n if (this.$v.description.$error) errors.push('Description is required')\r\n return errors\r\n },\r\n },\r\n})\r\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AddAgentResourceModal.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AddAgentResourceModal.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./AddAgentResourceModal.vue?vue&type=template&id=245f0f3a&\"\nimport script from \"./AddAgentResourceModal.vue?vue&type=script&lang=ts&\"\nexport * from \"./AddAgentResourceModal.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/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\n\n/* vuetify-loader */\nimport installComponents from \"!../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VAlert } from 'vuetify/lib/components/VAlert';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VFileInput } from 'vuetify/lib/components/VFileInput';\nimport { VProgressLinear } from 'vuetify/lib/components/VProgressLinear';\nimport { VRow } from 'vuetify/lib/components/VGrid';\nimport { VSwitch } from 'vuetify/lib/components/VSwitch';\nimport { VTextField } from 'vuetify/lib/components/VTextField';\ninstallComponents(component, {VAlert,VCol,VContainer,VFileInput,VProgressLinear,VRow,VSwitch,VTextField})\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport '../styles/agent-resources.css'\r\nimport { Vue } from 'vue-property-decorator'\r\nimport ScreenTile from '../components/ScreenTile.vue'\r\nimport ResourceRow from '../components/ResourceRow.vue'\r\nimport ResourceDirectoryTile from '../components/ResourceDirectoryTile.vue'\r\nimport RemoveItemModal from '../components/general/RemoveItemModal.vue'\r\nimport { CIcon } from '@coreui/icons-vue'\r\nimport { cilFileAdd, cilQueueRemove } from '@coreui/icons-pro'\r\nimport AddAgentResourceModal from '../components/AddAgentResourceModal.vue'\r\nimport Breadcrumbs from '../components/general/Breadcrumbs.vue'\r\nimport { mapState } from 'vuex'\r\n\r\ninterface IFavorite {\r\n id: number\r\n username: string\r\n agentResourceId: number\r\n}\r\n\r\ninterface IAgentResource {\r\n id: number\r\n name: string\r\n description: string\r\n favorite: boolean\r\n favoriteId: number | undefined\r\n imageUrl: string\r\n resourceLink: string\r\n isDirectory: boolean\r\n parentId: number\r\n numberOfChildren: number\r\n searchPath: string\r\n searchIdPath: string\r\n lastUpdatedDate: Date\r\n}\r\n\r\ninterface IModel {\r\n loading: boolean\r\n numColumns: number\r\n showAddModal: boolean\r\n showDeleteModal: boolean\r\n showResetModal: boolean\r\n deleteItem: IAgentResource | undefined\r\n searchText: string\r\n agentResources: IAgentResource[]\r\n onSearchId: number | undefined\r\n agentresourceAddIcon: any\r\n agentresourceResetIcon: any[]\r\n favorites: IFavorite[]\r\n parentId: number | undefined\r\n routes: any[]\r\n updateType: string\r\n editItem: IAgentResource | undefined\r\n}\r\n\r\nexport default Vue.extend({\r\n components: {\r\n ScreenTile,\r\n ResourceRow,\r\n CIcon,\r\n AddAgentResourceModal,\r\n ResourceDirectoryTile,\r\n Breadcrumbs,\r\n RemoveItemModal,\r\n },\r\n data: function (): IModel {\r\n return {\r\n loading: true,\r\n showAddModal: false,\r\n showDeleteModal: false,\r\n showResetModal: false,\r\n deleteItem: undefined,\r\n searchText: '',\r\n numColumns: 3,\r\n agentResources: [] as IAgentResource[],\r\n onSearchId: undefined as number | undefined,\r\n favorites: [] as IFavorite[],\r\n agentresourceAddIcon: cilFileAdd,\r\n agentresourceResetIcon: cilQueueRemove,\r\n parentId: undefined as number | undefined,\r\n routes: [{ id: undefined, name: 'Agent Resources' }] as {\r\n id: number | undefined\r\n name: string\r\n }[],\r\n updateType: 'add',\r\n editItem: undefined as IAgentResource | undefined,\r\n }\r\n },\r\n mounted: async function () {\r\n if (this.$attrs.directoryId) {\r\n this.parentId = parseInt(this.$attrs.directoryId)\r\n }\r\n await this.loadResources()\r\n this.favorites = await (\r\n await fetch(\r\n '/api/favorites?' + new URLSearchParams({ agentResourcesOnly: 'true' })\r\n )\r\n ).json()\r\n this.loading = false\r\n },\r\n computed: {\r\n filteredAgentResources(): IAgentResource[] {\r\n if (this.searchText) {\r\n return this.agentResources.filter((x) =>\r\n x.name?.toLowerCase().includes(this.searchText?.toLowerCase())\r\n )\r\n }\r\n return this.agentResources\r\n },\r\n filteredSortedAgentResources(): IAgentResource[] {\r\n return this.filteredAgentResources.slice().sort((a, b) => {\r\n if (a.isDirectory && a.name === 'Portfolio') {\r\n return -1\r\n }\r\n if (\r\n a.isDirectory &&\r\n a.name === 'Legacy Portfolio' &&\r\n b.isDirectory &&\r\n b.name !== 'Portfolio'\r\n ) {\r\n return -1\r\n }\r\n if (\r\n a.isDirectory &&\r\n a.name === 'Legacy NAE' &&\r\n b.isDirectory &&\r\n !b.name.includes('Portfolio')\r\n ) {\r\n return -1\r\n }\r\n if (a.isDirectory && !b.isDirectory) {\r\n return -1\r\n } else if (!a.isDirectory && b.isDirectory) {\r\n return 1\r\n } else {\r\n return a.name.localeCompare(b.name)\r\n }\r\n })\r\n },\r\n\r\n ...mapState(['user']),\r\n },\r\n methods: {\r\n getFavorite: function (agentResourceId: number) {\r\n return this.favorites.find((x) => x.agentResourceId === agentResourceId)\r\n },\r\n getFavoriteId: function (agentResourceId: number) {\r\n return this.getFavorite(agentResourceId)?.id\r\n },\r\n\r\n resetResources: async function () {\r\n this.showResetModal = true\r\n },\r\n\r\n resetResourcesOnServer: async function () {\r\n this.loading = true\r\n this.showResetModal = false\r\n await fetch(`/api/agentResources/reset`, {\r\n method: 'POST',\r\n })\r\n this.agentResources = []\r\n this.loading = false\r\n },\r\n addResource: async function (id: number) {\r\n this.updateType = 'add'\r\n this.showAddModal = true\r\n },\r\n\r\n editResource: async function (id: number) {\r\n this.updateType = 'edit'\r\n this.showAddModal = true\r\n this.editItem = this.agentResources.find((x) => x.id === id)\r\n },\r\n\r\n resourceAdded: async function (item: IAgentResource) {\r\n this.loading = true\r\n this.showAddModal = false\r\n\r\n await this.loadResources()\r\n\r\n this.loading = false\r\n },\r\n recurseUpTo: async function (id: number) {\r\n this.loading = true\r\n const indexOfRoute = this.routes.findIndex((x) => x.id === id)\r\n this.routes = this.routes.slice(0, indexOfRoute + 1)\r\n this.parentId = this.routes[this.routes.length - 1]?.id\r\n await this.loadResources()\r\n\r\n this.loading = false\r\n },\r\n descendIntoDirectory: async function (id: number) {\r\n this.loading = true\r\n const agentResource = this.agentResources.find((x) => x.id === id)\r\n if (agentResource && agentResource.parentId != this.parentId) {\r\n const idArr = agentResource.searchIdPath.split(' / ')\r\n const pathArr = agentResource.searchPath.split(' / ')\r\n for (let i = 0; i < idArr.length; i++) {\r\n this.routes.push({\r\n id: idArr[i],\r\n name: pathArr[i],\r\n })\r\n }\r\n } else {\r\n this.routes.push({\r\n id,\r\n name: this.agentResources.find((x) => x.id === id)?.name ?? '',\r\n })\r\n }\r\n this.parentId = id\r\n this.$router.push({\r\n name: 'Agent Resources',\r\n params: { directoryId: id },\r\n })\r\n await this.loadResources()\r\n\r\n this.loading = false\r\n },\r\n openDocument: async (document: IAgentResource) => {\r\n // TODO: Show a toast or some other message when errors happen\r\n try {\r\n const canOpenResource = await fetch(`${document?.resourceLink}`)\r\n\r\n if (canOpenResource.ok) {\r\n window.open(document?.resourceLink)\r\n } else {\r\n // console.log('Was unable to open resource' + document?.resourceLink)\r\n }\r\n } catch {\r\n // console.log('Was unable to open resource' + document?.resourceLink)\r\n }\r\n },\r\n deleteResource: async function (id: number) {\r\n this.deleteItem = this.agentResources.find((x) => x.id === id)\r\n this.showDeleteModal = true\r\n },\r\n\r\n deleteItemOnServer: async function () {\r\n this.loading = true\r\n this.showDeleteModal = false\r\n\r\n if (this.deleteItem) {\r\n await fetch(`/api/agentresources/${this.deleteItem!.id}`, {\r\n method: 'DELETE',\r\n })\r\n if (this.searchText) {\r\n await this.loadResources()\r\n } else {\r\n this.agentResources = this.agentResources.filter(\r\n (x) => x.id !== this.deleteItem!.id\r\n )\r\n }\r\n }\r\n this.deleteItem = undefined\r\n this.loading = false\r\n },\r\n toggleFavorite: async function (params: {\r\n favoriteId?: number\r\n id?: number\r\n }) {\r\n if (params.favoriteId) {\r\n const response = await fetch(`/api/favorites/${params.favoriteId}`, {\r\n method: 'DELETE',\r\n })\r\n\r\n if (response.ok) {\r\n this.favorites = this.favorites.filter(\r\n (favorite: IFavorite) => favorite.id !== params.favoriteId\r\n )\r\n }\r\n } else if (params.id) {\r\n const response = await fetch('/api/favorites', {\r\n method: 'POST',\r\n body: JSON.stringify({\r\n agentResourceId: params.id,\r\n }),\r\n headers: {\r\n 'Content-type': 'application/json; charset=UTF-8',\r\n },\r\n })\r\n\r\n if (response.ok) {\r\n this.favorites.push(await response.json())\r\n }\r\n } else {\r\n console.log('Invalid Params')\r\n }\r\n },\r\n onSearch: async function () {\r\n // delay call to server until user stops typing\r\n clearTimeout(this.onSearchId)\r\n this.onSearchId = setTimeout(() => {\r\n this.loadResources()\r\n }, 500)\r\n },\r\n loadResources: async function () {\r\n this.loading = true\r\n if (this.searchText) {\r\n this.agentResources = await (\r\n await fetch(\r\n `/api/agentResources/search?searchText=${this.searchText}${\r\n this.parentId ? `&parentId=${this.parentId}` : ''\r\n }`\r\n )\r\n ).json()\r\n } else {\r\n this.agentResources = await (\r\n await fetch(\r\n `/api/agentResources${\r\n this.parentId ? `?parentId=${this.parentId}` : ''\r\n }`\r\n )\r\n ).json()\r\n }\r\n this.loading = false\r\n },\r\n },\r\n})\r\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AgentResources.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AgentResources.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./AgentResources.vue?vue&type=template&id=15c62c9e&\"\nimport script from \"./AgentResources.vue?vue&type=script&lang=ts&\"\nexport * from \"./AgentResources.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/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\n\n/* vuetify-loader */\nimport installComponents from \"!../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VProgressLinear } from 'vuetify/lib/components/VProgressLinear';\nimport { VTextField } from 'vuetify/lib/components/VTextField';\ninstallComponents(component, {VProgressLinear,VTextField})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('ScreenTile',{attrs:{\"title\":\"Reports\",\"subTitle\":\"Agent Portal\"}},[(_vm.loading)?_c('v-progress-linear',{attrs:{\"indeterminate\":\"\",\"color\":\"#4A3046\"}}):_vm._e(),_vm._l((_vm.reports),function(item){return _c('CategoryTile',{key:item.name,attrs:{\"title\":item.name,\"categories\":_vm.getReports(item.reports),\"click\":_vm.loadReport}})})],2)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"category-tile\"},[_c('div',{staticClass:\"category-header\",domProps:{\"textContent\":_vm._s(_vm.title)}}),_c('div',{staticClass:\"category-content\"},[_vm._l((_vm.categoriesList),function(category,index){return _c('CategoryLink',{key:index,staticClass:\"category-link\",attrs:{\"title\":category.title,\"imageUrl\":category.imageUrl,\"favorite\":category.favorite},on:{\"click-category\":function($event){return _vm.clickCategory(category)}}})}),(_vm.categories.length > 3)?_c('CategoryLink',{attrs:{\"title\":\"more\",\"favorite\":undefined,\"imageUrl\":\"icons/more.png\"},on:{\"click-category\":_vm.openModal}}):_vm._e()],2),_c('Modal',{attrs:{\"showModal\":_vm.showModal}},[_c('ModalHeader',{attrs:{\"title\":\"Categories\",\"showExitButton\":true},on:{\"close\":function($event){_vm.showModal = false}}}),_c('ModalBody',_vm._l((_vm.categories),function(category,index){return _c('CategoryLink',{key:index,staticClass:\"category-link\",attrs:{\"title\":category.title,\"imageUrl\":category.imageUrl,\"favorite\":category.favorite},on:{\"click-category\":function($event){return _vm.clickCategory(category)}}})}),1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"category-link\",on:{\"click\":function($event){return _vm.$emit('click-category')}}},[_c('div',{staticClass:\"category-icon\"},[(_vm.imageUrl)?_c('img',{attrs:{\"src\":_vm.imageUrl,\"alt\":_vm.title,\"onerror\":\"this.onerror=null;this.src='icons/report-placeholder.svg'\"}}):_c('v-img',{attrs:{\"src\":\"icons/report-placeholder.svg\",\"alt\":\"Placeholder Image\"}}),_c('span',{staticClass:\"favorite\"},[(_vm.favorite === false)?_c('CIcon',{attrs:{\"content\":_vm.standardStarIcon}}):_vm._e(),(_vm.favorite === true)?_c('CIcon',{attrs:{\"content\":_vm.favoritedStarIcon}}):_vm._e()],1)],1),_c('div',{staticClass:\"category-text\",domProps:{\"textContent\":_vm._s(_vm.title)}})])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport '../styles/category-tile.css'\r\nimport Vue from 'vue'\r\nimport { CIcon } from '@coreui/icons-vue'\r\nimport { cisStar, cilStar } from '@coreui/icons-pro'\r\n\r\nexport default Vue.extend({\r\n data() {\r\n return {\r\n favoritedStarIcon: cisStar,\r\n standardStarIcon: cilStar,\r\n }\r\n },\r\n components: { CIcon },\r\n props: {\r\n title: {\r\n type: String,\r\n required: true,\r\n },\r\n imageUrl: {\r\n type: String,\r\n required: false,\r\n },\r\n favorite: {\r\n type: Boolean,\r\n required: false,\r\n },\r\n },\r\n name: 'CategoryLink',\r\n})\r\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./CategoryLink.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./CategoryLink.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./CategoryLink.vue?vue&type=template&id=a3dbef02&\"\nimport script from \"./CategoryLink.vue?vue&type=script&lang=ts&\"\nexport * from \"./CategoryLink.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/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\n\n/* vuetify-loader */\nimport installComponents from \"!../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VImg } from 'vuetify/lib/components/VImg';\ninstallComponents(component, {VImg})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"modal-header\"},[_c('div',{staticClass:\"title\",domProps:{\"textContent\":_vm._s(_vm.title)}}),(_vm.showExitButton)?_c('button',{on:{\"click\":function($event){return _vm.$emit('close')}}},[_vm._v(\"X\")]):_vm._e()])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\r\nimport Vue from 'vue'\r\n\r\nexport default Vue.extend({\r\n data() {\r\n return {}\r\n },\r\n props: {\r\n title: {\r\n type: String,\r\n required: true,\r\n },\r\n showExitButton: {\r\n type: Boolean,\r\n required: false,\r\n default: false,\r\n },\r\n },\r\n name: 'ModalHeader',\r\n})\r\n","import mod from \"-!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ModalHeader.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ModalHeader.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ModalHeader.vue?vue&type=template&id=91385ac4&\"\nimport script from \"./ModalHeader.vue?vue&type=script&lang=ts&\"\nexport * from \"./ModalHeader.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/@vue/vue-loader-v15/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","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport '../styles/category-tile.css'\r\nimport CategoryLink from './CategoryLink.vue'\r\nimport Modal from './general/modal/Modal.vue'\r\nimport ModalHeader from './general/modal/ModalHeader.vue'\r\nimport ModalBody from './general/modal/ModalBody.vue'\r\nimport Vue, { PropType } from 'vue'\r\n\r\ninterface Category {\r\n id: string\r\n title: string\r\n imageUrl?: string\r\n favorite?: boolean\r\n}\r\n\r\nexport default Vue.extend({\r\n data() {\r\n return {\r\n showModal: false,\r\n }\r\n },\r\n props: {\r\n title: {\r\n type: String,\r\n required: true,\r\n },\r\n categories: {\r\n type: Array as PropType>,\r\n required: true,\r\n },\r\n click: {\r\n type: Function,\r\n required: true,\r\n },\r\n },\r\n computed: {\r\n categoriesList(): Array {\r\n let categories = this.categories as Array\r\n categories = categories.filter((x) => x.title)\r\n\r\n let finalList: Array = []\r\n\r\n if (categories.length > 3) {\r\n finalList = categories.slice(0, 2)\r\n } else {\r\n finalList = categories\r\n }\r\n\r\n return finalList\r\n },\r\n },\r\n methods: {\r\n clickCategory(category: Category) {\r\n this.click(category)\r\n },\r\n openModal() {\r\n this.showModal = true\r\n window.scrollTo(0, 0)\r\n },\r\n },\r\n components: { CategoryLink, Modal, ModalHeader, ModalBody },\r\n name: 'CategoryTile',\r\n})\r\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./CategoryTile.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./CategoryTile.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./CategoryTile.vue?vue&type=template&id=6eadbb47&\"\nimport script from \"./CategoryTile.vue?vue&type=script&lang=ts&\"\nexport * from \"./CategoryTile.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/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","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { Vue } from 'vue-property-decorator'\r\nimport ScreenTile from '../components/ScreenTile.vue'\r\nimport CategoryTile from '../components/CategoryTile.vue'\r\n\r\ninterface IReport {\r\n id: string\r\n name: string\r\n description: string\r\n imageUrl: string\r\n favorite: boolean\r\n}\r\n\r\ninterface IReportGroup {\r\n name: string\r\n reports: IReport[]\r\n}\r\n\r\nexport default Vue.extend({\r\n components: { ScreenTile, CategoryTile },\r\n data: function () {\r\n return {\r\n loading: true,\r\n reports: [] as IReportGroup[],\r\n }\r\n },\r\n methods: {\r\n getReports: function (reports: IReport[]) {\r\n return reports.map((x) => ({\r\n title: x.name,\r\n id: x.id,\r\n imageUrl: x.imageUrl,\r\n favorite: x.favorite,\r\n description: x.description,\r\n }))\r\n },\r\n loadReport: async function (report: {\r\n id: string\r\n title: string\r\n favorite: boolean\r\n description: string\r\n }) {\r\n this.$router.push(\r\n `/reports/${report.id}/${report.description}/${report.favorite}`\r\n )\r\n },\r\n },\r\n mounted: async function () {\r\n const reports = (await (await fetch('/api/reports')).json()) as IReport[]\r\n const categories = Array.from(\r\n new Set(reports.map((x) => x.name.split(' - ')[0]))\r\n )\r\n\r\n for (const category of categories) {\r\n const reportGroup = {\r\n name: category,\r\n reports: reports\r\n .filter((x) => x.name.startsWith(category))\r\n .map((x) => ({\r\n id: x.id,\r\n description: x.name,\r\n name: x.name.split(' - ')[1],\r\n imageUrl: `icons/reports/${x.name}.svg`,\r\n favorite: x.favorite,\r\n })),\r\n }\r\n this.reports.push(reportGroup)\r\n }\r\n this.loading = false\r\n },\r\n})\r\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Reports.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Reports.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Reports.vue?vue&type=template&id=2c98c077&\"\nimport script from \"./Reports.vue?vue&type=script&lang=ts&\"\nexport * from \"./Reports.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/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\n\n/* vuetify-loader */\nimport installComponents from \"!../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VProgressLinear } from 'vuetify/lib/components/VProgressLinear';\ninstallComponents(component, {VProgressLinear})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[(_vm.loading)?_c('v-progress-linear',{attrs:{\"indeterminate\":\"\",\"color\":\"#4A3046\"}}):_vm._e(),(!_vm.loading)?_c('div',[_c('ScreenTile',{attrs:{\"title\":\"Shipments To Dealers\",\"subTitle\":\"Agent Portal\"}},[_c('div',{staticClass:\"search-box-wrapper\"},[_c('v-text-field',{staticClass:\"search-box\",attrs:{\"outlined\":\"\",\"hint\":\"You can search for dealer names\",\"label\":\"Search...\"},model:{value:(_vm.searchText),callback:function ($$v) {_vm.searchText=$$v},expression:\"searchText\"}},[_c('v-icon',{attrs:{\"slot\":\"append\"},slot:\"append\"},[_vm._v(\" mdi-magnify \")])],1)],1),_vm._l((_vm.pagedShipments),function(item){return _c('ShipmentTile',{key:item.shipmentId,attrs:{\"dealerName\":item.accountName,\"title\":item.shipToName,\"description\":item.description,\"orderNumber\":item.shipmentId,\"trackingNumber\":item.trackingNumber,\"trackingUrl\":_vm.getTrackingUrl(item.trackingNumber,item.shipmentDate),\"shipmentDate\":item.shipmentDate}})}),_c('div',{staticClass:\"pagination-wrapper\"},[_c('v-pagination',{attrs:{\"length\":_vm.pages},model:{value:(_vm.page),callback:function ($$v) {_vm.page=$$v},expression:\"page\"}})],1)],2)],1):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"shipment-tile\"},[_c('div',{staticClass:\"shipment-details\"},[_vm._m(0),_c('div',{staticClass:\"shipment-detail\"},[_c('div',[_vm._v(\"Tracking #:\")]),(_vm.trackingUrl)?_c('a',{attrs:{\"href\":_vm.trackingUrl,\"target\":\"_blank\"},domProps:{\"textContent\":_vm._s(_vm.trackingNumber)}}):_c('div',{domProps:{\"textContent\":_vm._s(_vm.trackingNumber)}})]),_c('div',{staticClass:\"shipment-detail\"},[_c('div',[_vm._v(\"Order #:\")]),_c('div',{domProps:{\"textContent\":_vm._s(_vm.orderNumber)}})]),_c('div',{staticClass:\"shipment-detail\"},[_c('div',[_vm._v(\"Shipped:\")]),_c('div',{domProps:{\"textContent\":_vm._s(_vm.formatDate(_vm.shipmentDate))}})])]),_c('div',{staticClass:\"shipment-content\"},[_c('div',{staticClass:\"shipment-title\",domProps:{\"textContent\":_vm._s(_vm.title)}}),_c('div',{staticClass:\"shipment-description\",domProps:{\"textContent\":_vm._s(_vm.description)}})])])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"shipment-dealer\"},[_c('img',{attrs:{\"src\":\"icons/ShipmentsDealers.svg\"}})])}]\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport '../styles/shipment-tile.css'\r\n\r\nimport Vue from 'vue'\r\nimport moment from 'moment'\r\n\r\nexport default Vue.extend({\r\n data() {\r\n return {}\r\n },\r\n props: {\r\n dealerName: {\r\n type: String,\r\n required: true,\r\n },\r\n title: {\r\n type: String,\r\n required: true,\r\n },\r\n description: {\r\n type: String,\r\n required: true,\r\n },\r\n orderNumber: {\r\n type: Number,\r\n required: true,\r\n },\r\n trackingNumber: {\r\n type: String,\r\n required: true,\r\n },\r\n carrier: {\r\n type: String,\r\n required: false,\r\n },\r\n trackingUrl: {\r\n type: String,\r\n required: false,\r\n },\r\n shipmentDate: {\r\n type: Date,\r\n required: true,\r\n },\r\n },\r\n components: {},\r\n name: 'ShipmentTile',\r\n methods: {\r\n formatDate: (date: string) => moment(date).format('MMMM DD, YYYY'),\r\n },\r\n})\r\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ShipmentTile.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ShipmentTile.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ShipmentTile.vue?vue&type=template&id=f40dba52&\"\nimport script from \"./ShipmentTile.vue?vue&type=script&lang=ts&\"\nexport * from \"./ShipmentTile.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/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","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { Vue } from 'vue-property-decorator'\r\nimport ScreenTile from '../components/ScreenTile.vue'\r\nimport ShipmentTile from '../components/ShipmentTile.vue'\r\nimport '../styles/shipments-to-dealers.css'\r\n\r\ninterface IShipment {\r\n accountName: string\r\n shipToName: string\r\n shipmentId: number\r\n trackingNumber: string\r\n description: string\r\n shipmentDate: Date\r\n shipmentMethodUsed: string\r\n}\r\n\r\ninterface IDbShipment {\r\n accountName: string\r\n shipToName: string\r\n shipmentId: number\r\n trackingNumber: string\r\n description: string\r\n created: Date\r\n shipmentMethodUsed: string\r\n}\r\n\r\nexport default Vue.extend({\r\n components: { ScreenTile, ShipmentTile },\r\n data: function () {\r\n return {\r\n loading: true,\r\n shipments: [] as IShipment[],\r\n searchText: '',\r\n page: 1,\r\n pageSize: 12,\r\n }\r\n },\r\n mounted: async function () {\r\n this.shipments = (await (await fetch('/api/shipments')).json()).map(\r\n (x: IDbShipment) => ({\r\n accountName: x.accountName,\r\n shipmentId: x.shipmentId,\r\n shipToName: x.shipToName ?? '',\r\n trackingNumber: x.trackingNumber,\r\n description: x.description ?? '',\r\n shipmentDate: new Date(x.created),\r\n shipmentMethodUsed: x.shipmentMethodUsed,\r\n })\r\n )\r\n this.loading = false\r\n },\r\n computed: {\r\n filteredShipments(): IShipment[] {\r\n return this.shipments.filter((x: IShipment) =>\r\n x.shipToName.toLowerCase().includes(this.searchText.toLowerCase())\r\n )\r\n },\r\n pagedShipments(): IShipment[] {\r\n return this.filteredShipments.slice(\r\n (this.page - 1) * this.pageSize,\r\n this.page * this.pageSize\r\n )\r\n },\r\n pages(): number {\r\n return Math.ceil(this.filteredShipments.length / this.pageSize)\r\n },\r\n },\r\n methods: {\r\n getTrackingUrl(trackingNumber: string, shipmentDate: Date) {\r\n if (shipmentDate < new Date(2023, 8, 1))\r\n return `https://www.ups.com/mobile/track?trackingNumber=${trackingNumber}`\r\n else\r\n return `https://www.fedex.com/fedextrack/?trknbr=${trackingNumber}`\r\n },\r\n },\r\n})\r\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ShipmentsToDealers.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ShipmentsToDealers.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ShipmentsToDealers.vue?vue&type=template&id=0ae2c81b&\"\nimport script from \"./ShipmentsToDealers.vue?vue&type=script&lang=ts&\"\nexport * from \"./ShipmentsToDealers.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/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\n\n/* vuetify-loader */\nimport installComponents from \"!../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VIcon } from 'vuetify/lib/components/VIcon';\nimport { VPagination } from 'vuetify/lib/components/VPagination';\nimport { VProgressLinear } from 'vuetify/lib/components/VProgressLinear';\nimport { VTextField } from 'vuetify/lib/components/VTextField';\ninstallComponents(component, {VIcon,VPagination,VProgressLinear,VTextField})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('ScreenTile',{attrs:{\"title\":\"Updates & Alerts\",\"subTitle\":\"Agent Portal\"},scopedSlots:_vm._u([{key:\"buttons\",fn:function(){return [(_vm.user.isAdministrator)?_c('button',{staticClass:\"screen-action\",on:{\"click\":_vm.showAddAlert}},[_c('CIcon',{attrs:{\"content\":_vm.alertAddIcon}}),_vm._v(\" Add Alert \")],1):_vm._e()]},proxy:true}])},[_c('div',[_c('span',{staticClass:\"tagFilterHeader\"},[_vm._v(\" Filters \")]),_c('div',{staticClass:\"tagFilterRow\"},_vm._l((_vm.alertTags),function(tag){return _c('v-chip',{key:tag.id,staticStyle:{\"margin-right\":\"5px\"},attrs:{\"color\":_vm.filteredTags.includes(tag.id) ? 'secondary' : null},on:{\"click\":function($event){return _vm.toggleTag(tag.id)}}},[_vm._v(_vm._s(tag.name))])}),1),_c('div',[(_vm.user.isAdministrator)?_c('v-switch',{staticClass:\"d-inline-block me-2\",attrs:{\"label\":\"Admin view\"},model:{value:(_vm.showAdmin),callback:function ($$v) {_vm.showAdmin=$$v},expression:\"showAdmin\"}}):_vm._e(),(!_vm.showAdmin)?_c('v-switch',{staticClass:\"d-inline-block ms-2\",attrs:{\"label\":\"Show All\"},model:{value:(_vm.showAllAlerts),callback:function ($$v) {_vm.showAllAlerts=$$v},expression:\"showAllAlerts\"}}):_vm._e()],1),(_vm.showAdmin && _vm.user.isAdministrator)?_c('AdminAlertList',{attrs:{\"tags\":_vm.filteredTags,\"alertTags\":_vm.alertTags},on:{\"onEdit\":_vm.showEditModal}}):_vm._e(),(!_vm.showAdmin)?_c('UserAlertList',{key:_vm.showAllAlerts,attrs:{\"tags\":_vm.filteredTags,\"alertTags\":_vm.alertTags,\"showAll\":_vm.showAllAlerts}}):_vm._e()],1),_c('add-alert-modal',{attrs:{\"show-modal\":_vm.showCreateModal,\"type\":_vm.updateType,\"alert-prop\":_vm.editAlert,\"edit-mode\":_vm.editAlert !== undefined},on:{\"close\":function($event){return _vm.onCreateModalClosed()}}})],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[(_vm.loading)?_c('v-progress-linear',{staticStyle:{\"margin-top\":\"10px\"},attrs:{\"indeterminate\":\"\",\"color\":\"#4A3046\"}}):_vm._e(),_c('v-data-table',{attrs:{\"items\":_vm.alerts,\"headers\":_vm.headers},scopedSlots:_vm._u([{key:\"item.actions\",fn:function(ref){\nvar item = ref.item;\nreturn [_c('v-icon',{staticClass:\"mr-2\",attrs:{\"small\":\"\"},on:{\"click\":function($event){return _vm.editItem(item)}}},[_vm._v(\" mdi-pencil \")]),_c('v-icon',{attrs:{\"small\":\"\"},on:{\"click\":function($event){return _vm.deleteItem(item)}}},[_vm._v(\" mdi-delete \")])]}},{key:\"item.startDate\",fn:function(ref){\nvar item = ref.item;\nreturn [_vm._v(\" \"+_vm._s(_vm._f(\"formatDate\")(item.startDate))+\" \")]}},{key:\"item.endDate\",fn:function(ref){\nvar item = ref.item;\nreturn [_vm._v(\" \"+_vm._s(_vm._f(\"formatDate\")(item.endDate))+\" \")]}},{key:\"item.startDisplayingOn\",fn:function(ref){\nvar item = ref.item;\nreturn [_vm._v(\" \"+_vm._s(_vm._f(\"formatDate\")(item.startDisplayingOn))+\" \")]}},{key:\"item.stopDisplayingOn\",fn:function(ref){\nvar item = ref.item;\nreturn [_vm._v(\" \"+_vm._s(_vm._f(\"formatDate\")(item.stopDisplayingOn))+\" \")]}},{key:\"item.tags\",fn:function(ref){\nvar item = ref.item;\nreturn [_vm._v(\" \"+_vm._s(_vm._f(\"convertToTags\")(item,item))+\" \")]}}])}),_c('RemoveItemModal',{attrs:{\"showModal\":_vm.showRemoveModal,\"item\":_vm.removeItem.title ? _vm.removeItem.title : ''},on:{\"close\":function($event){return _vm.closeRemoveModal()},\"confirm\":function($event){return _vm.deleteAlert()}}}),_c('OkModal',{attrs:{\"showModal\":_vm.showRemoveErrorModal,\"message\":(\"unable to delete \" + (_vm.removeItem.title))},on:{\"close\":function($event){return _vm.closeOkModal()}}}),(!_vm.loading && _vm.alerts.length === 0)?_c('div',[_c('div',{staticClass:\"alert alert-info\",attrs:{\"role\":\"alert\"}},[_vm._v(\"No matching alerts\")])]):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import IAlert from '@/viewModel/IAlert'\r\nimport IAlertList from '@/viewModel/IAlertList'\r\nimport IAlertTag from '@/viewModel/IAlertTag'\r\n\r\nexport class Alerts {\r\n static convertTagsArrayToFlags(\r\n tagsArray: { title: string; value: number }[]\r\n ): number {\r\n let flags = 0\r\n for (let i = 0; i < tagsArray.length; i++) {\r\n const curTagValue = tagsArray[i]\r\n flags |= curTagValue.value\r\n }\r\n return flags\r\n }\r\n\r\n static async loadAlerts(\r\n tags: number[],\r\n matchAllTags: boolean,\r\n onlyUnread: boolean\r\n ): Promise {\r\n const queryString = new URLSearchParams()\r\n if (tags) queryString.append('tags', tags.join(','))\r\n if (matchAllTags !== undefined)\r\n queryString.append('matchAllTags', matchAllTags.toString())\r\n if (onlyUnread !== undefined)\r\n queryString.append('onlyUnread', onlyUnread.toString())\r\n const result = await fetch(`/api/Alerts?${queryString.toString()}`, {\r\n method: 'GET',\r\n headers: {\r\n 'Content-type': 'application/json; charset=UTF-8',\r\n },\r\n })\r\n if (!result.ok) {\r\n console.log(\r\n `failed to load alerts. response: ${result.status} ${result.statusText}`\r\n )\r\n return {} as IAlertList\r\n } else {\r\n return await result.json()\r\n }\r\n }\r\n\r\n static async loadAlertTags(): Promise {\r\n const result = await fetch(`/api/AlertTags`, {\r\n method: 'GET',\r\n headers: {\r\n 'Content-type': 'application/json; charset=UTF-8',\r\n },\r\n })\r\n return (await result.json()) as IAlertTag[]\r\n }\r\n\r\n static async loadAlert(id: string): Promise {\r\n const result = await fetch(`/api/Alert/${id}`, {\r\n method: 'GET',\r\n headers: {\r\n 'Content-type': 'application/json; charset=UTF-8',\r\n },\r\n })\r\n if (!result.ok) {\r\n return {} as IAlert\r\n } else {\r\n return await result.json()\r\n }\r\n }\r\n\r\n static async markRead(id: number): Promise {\r\n const result = await fetch(`/api/Alert/${id}/Read`, {\r\n method: 'POST',\r\n headers: {\r\n 'Content-type': 'application/json; charset=UTF-8',\r\n },\r\n })\r\n return (await result.json()) as boolean\r\n }\r\n static async markUnRead(id: number): Promise {\r\n const result = await fetch(`/api/Alert/${id}/UnRead`, {\r\n method: 'POST',\r\n headers: {\r\n 'Content-type': 'application/json; charset=UTF-8',\r\n },\r\n })\r\n return (await result.json()) as boolean\r\n }\r\n}\r\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('Modal',{staticClass:\"common-modal\",attrs:{\"showModal\":_vm.showModal}},[_c('ModalBody',[_c('div',{staticClass:\"common-title\"},[_vm._v(\" \"+_vm._s(_vm.message)+\" \")]),_c('div',{staticClass:\"common-actions-container\"},[_c('button',{staticClass:\"common-confirm-button\",on:{\"click\":function($event){return _vm.$emit('close')}}},[_vm._v(\" OK \")])])])],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport '../../styles/common-modal.css'\r\nimport Modal from './modal/Modal.vue'\r\nimport ModalBody from './modal/ModalBody.vue'\r\nimport Vue from 'vue'\r\n\r\nexport default Vue.extend({\r\n props: {\r\n showModal: {\r\n type: Boolean,\r\n required: true,\r\n },\r\n message: {\r\n type: String,\r\n required: true,\r\n },\r\n },\r\n components: { Modal, ModalBody },\r\n name: 'OkModal',\r\n})\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./OkModal.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./OkModal.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./OkModal.vue?vue&type=template&id=ac10ebde&\"\nimport script from \"./OkModal.vue?vue&type=script&lang=ts&\"\nexport * from \"./OkModal.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/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","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { Vue } from 'vue-property-decorator'\r\nimport '../../styles/view-tile.css'\r\nimport { Alerts } from '../../dataLayer/Alerts'\r\nimport IAlert from '../../viewModel/IAlert'\r\nimport RemoveItemModal from '../general/RemoveItemModal.vue'\r\nimport OkModal from '../general/OkModal.vue'\r\nimport moment from 'moment'\r\n\r\ninterface IData {\r\n removeItem: IAlert\r\n showRemoveModal: boolean\r\n showRemoveErrorModal: boolean\r\n alerts: IAlert[]\r\n isAdmin: boolean\r\n loading: boolean\r\n headers: { text: string; value: string }[]\r\n}\r\n\r\nexport default Vue.extend({\r\n components: { RemoveItemModal, OkModal },\r\n name: 'AdminAlertList',\r\n data: function (): IData {\r\n return {\r\n removeItem: {} as IAlert,\r\n showRemoveModal: false,\r\n showRemoveErrorModal: false,\r\n alerts: [] as IAlert[],\r\n isAdmin: false,\r\n loading: true,\r\n headers: [\r\n { text: 'Id', value: 'id' },\r\n { text: 'Title', value: 'title' },\r\n { text: 'Tags', value: 'tags' },\r\n { text: 'Event Start Date', value: 'startDate' },\r\n { text: 'Event End Date', value: 'endDate' },\r\n { text: 'Start Displaying On', value: 'startDisplayingOn' },\r\n { text: 'Stop Displaying On', value: 'stopDisplayingOn' },\r\n { text: 'Actions', value: 'actions' },\r\n ],\r\n }\r\n },\r\n mounted: async function (): Promise {\r\n await this.loadData()\r\n this.$root.$on('alerts-modified', () => {\r\n this.loadData()\r\n })\r\n },\r\n props: {\r\n tags: {\r\n type: Array,\r\n required: true,\r\n },\r\n alertTags: {\r\n type: Array,\r\n required: true,\r\n },\r\n },\r\n filters: {\r\n formatDate(date) {\r\n return moment(date).format('yyyy-MM-DD')\r\n },\r\n convertToTags(item) {\r\n return item.tags\r\n .map((x) => item.tagItems.find((y) => y.id === x).name)\r\n .join(', ')\r\n },\r\n },\r\n watch: {\r\n tags: async function () {\r\n await this.loadData()\r\n },\r\n },\r\n methods: {\r\n loadData: async function () {\r\n this.loading = true\r\n const viewModel = await Alerts.loadAlerts(\r\n this.tags as number[],\r\n false,\r\n false\r\n )\r\n this.alerts = viewModel.alerts\r\n for (const alert of this.alerts) {\r\n alert.tagItems = this.alertTags\r\n }\r\n this.isAdmin = viewModel.isAdmin\r\n this.loading = false\r\n },\r\n deleteItem(alert: IAlert) {\r\n this.removeItem = alert\r\n this.showRemoveModal = true\r\n },\r\n editItem(alert) {\r\n this.$emit('onEdit', alert)\r\n },\r\n deleteAlert: async function () {\r\n const result = await fetch(`/api/Alerts/${this.removeItem.id}`, {\r\n method: 'DELETE',\r\n headers: {\r\n 'Content-type': 'application/json; charset=UTF-8',\r\n },\r\n })\r\n if (result.ok) {\r\n this.alerts = this.alerts.filter(\r\n (alert: IAlert) => alert.id !== this.removeItem.id\r\n )\r\n this.removeItem = {} as IAlert\r\n } else {\r\n this.showRemoveErrorModal = true\r\n }\r\n this.showRemoveModal = false\r\n },\r\n closeRemoveModal() {\r\n this.showRemoveModal = false\r\n this.removeItem = {} as IAlert\r\n },\r\n closeOkModal() {\r\n this.removeItem = {} as IAlert\r\n this.showRemoveErrorModal = false\r\n },\r\n },\r\n})\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AdminAlertList.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AdminAlertList.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./AdminAlertList.vue?vue&type=template&id=74554bc4&\"\nimport script from \"./AdminAlertList.vue?vue&type=script&lang=ts&\"\nexport * from \"./AdminAlertList.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/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\n\n/* vuetify-loader */\nimport installComponents from \"!../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VDataTable } from 'vuetify/lib/components/VDataTable';\nimport { VIcon } from 'vuetify/lib/components/VIcon';\nimport { VProgressLinear } from 'vuetify/lib/components/VProgressLinear';\ninstallComponents(component, {VDataTable,VIcon,VProgressLinear})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[(_vm.loading)?_c('v-progress-linear',{staticStyle:{\"margin-top\":\"10px\"},attrs:{\"indeterminate\":\"\",\"color\":\"#4A3046\"}}):_vm._e(),_c('div',{staticClass:\"alert-tile-display\"},_vm._l((_vm.alerts),function(curAlert){return _c('div',{key:curAlert.id,staticClass:\"view-body\"},[(!_vm.loading)?_c('AlertThumbnail',{attrs:{\"alert\":curAlert,\"alertTags\":_vm.alertTags}}):_vm._e()],1)}),0),(!_vm.loading && _vm.alerts.length === 0)?_c('div',[_c('div',{staticClass:\"alert alert-info\",attrs:{\"role\":\"alert\"}},[_vm._v(\"No matching alerts\")])]):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-card',{staticStyle:{\"margin-bottom\":\"20px\"},attrs:{\"max-width\":\"325\",\"min-height\":\"400\"}},[_c('img',{staticStyle:{\"max-width\":\"325px\",\"max-height\":\"85px\",\"min-height\":\"85px\"},attrs:{\"src\":_vm.imageUrl,\"alt\":\"cover image\"}}),_c('div',{staticClass:\"alert-date\"},[_vm._v(\" \"+_vm._s(_vm._f(\"formatDate\")(_vm.alert.startDate))+\" \"),(_vm.showEndDate)?_c('span',[_vm._v(\"- \"+_vm._s(_vm._f(\"formatDate\")(_vm.alert.endDate)))]):_vm._e()]),_c('v-card-title',{staticStyle:{\"word-break\":\"break-word\",\"min-height\":\"96px\",\"align-items\":\"start\"}},[_vm._v(_vm._s(_vm.alert.title))]),_c('v-card-text',[_c('div',{staticClass:\"view-description\",staticStyle:{\"min-height\":\"175px\",\"max-height\":\"175px\",\"margin-bottom\":\"10px\"},domProps:{\"innerHTML\":_vm._s(_vm.alert.shortContent)}}),_c('v-row',{staticStyle:{\"min-height\":\"50px\",\"max-height\":\"50px\",\"overflow\":\"hidden\"}},_vm._l((_vm.alert.tags),function(tag){return _c('v-chip',{key:tag,staticClass:\"ma-2\"},[_vm._v(\" \"+_vm._s((_vm.alertTags.find(function (t) { return t.id === tag; }) || {}).name)+\" \")])}),1)],1),_c('v-card-actions',[_c('v-row',[_c('v-col',[_c('router-link',{attrs:{\"to\":(\"/AlertDetail/\" + (_vm.alert.id) + \"?from=\" + (_vm.getFromUrl()))},nativeOn:{\"click\":function($event){return _vm.scrollToTop.apply(null, arguments)}}},[(_vm.showView)?_c('div',{staticClass:\"view-action\"},[_c('span',{staticClass:\"text-uppercase\"},[_vm._v(\" View \"),_c('CIcon',{attrs:{\"content\":_vm.arrowIcon}})],1)]):_vm._e()])],1),_c('v-col',[_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(!_vm.alert.alertRead),expression:\"!alert.alertRead\"}],staticClass:\"view-read\",attrs:{\"title\":\"Mark Read\"},on:{\"click\":function($event){return _vm.markRead(_vm.alert.id)}}},[_vm._v(\" NEW \"),_c('v-icon',[_vm._v(\"mdi-email-check-outline\")])],1)])],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import moment from 'moment'\r\n\r\nexport default {\r\n formatDate: function (date: string): string {\r\n return moment(date).format('MMM. DD YYYY')\r\n },\r\n}\r\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport '../../styles/view-tile.css'\r\nimport '../../styles/alert-tile.css'\r\nimport Vue, { PropOptions } from 'vue'\r\nimport Format from '../../util/Format'\r\nimport IAlert from '@/viewModel/IAlert'\r\nimport { Alerts } from '@/dataLayer/Alerts'\r\nimport moment from 'moment'\r\nimport { CIcon } from '@coreui/icons-vue'\r\nimport { cilArrowRight } from '@coreui/icons-pro'\r\n\r\nexport default Vue.extend({\r\n data() {\r\n return {\r\n imageUrl: '/img/wide-placeholder-image.png',\r\n arrowIcon: cilArrowRight,\r\n formatDateFn: (strDate: string) => Format.formatDate(strDate),\r\n }\r\n },\r\n components: {\r\n CIcon,\r\n },\r\n props: {\r\n alert: {\r\n type: Object,\r\n required: true,\r\n } as PropOptions,\r\n alertTags: {\r\n type: Array,\r\n required: true,\r\n } as PropOptions<{ id: number; name: string }[]>,\r\n showRead: {\r\n type: Boolean,\r\n required: false,\r\n default: true,\r\n } as PropOptions,\r\n showView: {\r\n type: Boolean,\r\n required: false,\r\n default: true,\r\n } as PropOptions,\r\n },\r\n mounted: async function () {\r\n if (this.alert.imageUrl) {\r\n try {\r\n const canLoadImage = await fetch(this.alert.imageUrl)\r\n\r\n if (canLoadImage.ok) this.imageUrl = this.alert.imageUrl\r\n } catch {\r\n // continue with default\r\n }\r\n }\r\n },\r\n filters: {\r\n formatDate(date) {\r\n return moment(date).format('yyyy-MM-DD')\r\n },\r\n },\r\n computed: {\r\n showEndDate: function () {\r\n return (\r\n this.alertDate &&\r\n moment(this.alert.endDate).format('yyyy-MM-DD') !==\r\n moment(this.alert.startDate).format('yyyy-MM-DD')\r\n )\r\n },\r\n },\r\n methods: {\r\n scrollToTop() {\r\n window.scrollTo(0, 0)\r\n },\r\n getFromUrl() {\r\n return this.$route.path\r\n },\r\n async markRead(id: number) {\r\n await Alerts.markRead(id)\r\n this.$emit('alert-read', id)\r\n window.location.reload();\r\n },\r\n },\r\n name: 'AlertThumbnail',\r\n})\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AlertThumbnail.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AlertThumbnail.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./AlertThumbnail.vue?vue&type=template&id=116697ce&\"\nimport script from \"./AlertThumbnail.vue?vue&type=script&lang=ts&\"\nexport * from \"./AlertThumbnail.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/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\n\n/* vuetify-loader */\nimport installComponents from \"!../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VCard } from 'vuetify/lib/components/VCard';\nimport { VCardActions } from 'vuetify/lib/components/VCard';\nimport { VCardText } from 'vuetify/lib/components/VCard';\nimport { VCardTitle } from 'vuetify/lib/components/VCard';\nimport { VChip } from 'vuetify/lib/components/VChip';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VIcon } from 'vuetify/lib/components/VIcon';\nimport { VRow } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VCard,VCardActions,VCardText,VCardTitle,VChip,VCol,VIcon,VRow})\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport Vue, { PropOptions } from 'vue'\r\nimport '../../styles/view-tile.css'\r\nimport '../../styles/user-alert-list.css'\r\nimport { Alerts } from '../../dataLayer/Alerts'\r\nimport IAlert from '../../viewModel/IAlert'\r\nimport AlertThumbnail from './AlertThumbnail.vue'\r\n\r\ninterface IData {\r\n removeItem: IAlert\r\n showRemoveModal: boolean\r\n showRemoveErrorModal: boolean\r\n alerts: IAlert[]\r\n isAdmin: boolean\r\n loading: boolean\r\n}\r\n\r\nexport default Vue.extend({\r\n components: { AlertThumbnail },\r\n name: 'UserAlertList',\r\n data: function (): IData {\r\n return {\r\n removeItem: {} as IAlert,\r\n showRemoveModal: false,\r\n showRemoveErrorModal: false,\r\n alerts: [] as IAlert[],\r\n isAdmin: false,\r\n loading: true,\r\n }\r\n },\r\n mounted: async function (): Promise {\r\n await this.loadData()\r\n this.$root.$on('alerts-modified', () => {\r\n this.loadData()\r\n })\r\n },\r\n props: {\r\n tags: {\r\n type: Array,\r\n required: true,\r\n },\r\n alertTags: { type: Array, required: true } as PropOptions<\r\n { id: string; name: string }[]\r\n >,\r\n showAll: {\r\n type: Boolean,\r\n required: false\r\n }\r\n },\r\n watch: {\r\n tags: async function () {\r\n await this.loadData()\r\n },\r\n },\r\n methods: {\r\n loadData: async function () {\r\n this.loading = true\r\n const viewModel = await Alerts.loadAlerts(\r\n this.tags as number[],\r\n false,\r\n !this.showAll\r\n )\r\n this.alerts = viewModel.alerts\r\n this.isAdmin = viewModel.isAdmin\r\n this.loading = false\r\n },\r\n },\r\n})\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./UserAlertList.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./UserAlertList.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./UserAlertList.vue?vue&type=template&id=23d2e260&\"\nimport script from \"./UserAlertList.vue?vue&type=script&lang=ts&\"\nexport * from \"./UserAlertList.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/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\n\n/* vuetify-loader */\nimport installComponents from \"!../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VProgressLinear } from 'vuetify/lib/components/VProgressLinear';\ninstallComponents(component, {VProgressLinear})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('Modal',{staticClass:\"add-alert-modal\",attrs:{\"showModal\":_vm.showModal}},[_c('div',{staticClass:\"modal-header\"},[_c('div',{staticClass:\"modal-exit-icon\",on:{\"click\":_vm.close}},[_c('CIcon',{attrs:{\"content\":_vm.exitIcon}})],1)]),_c('ModalBody',[_c('div',{staticClass:\"add-alert-title\"},[_vm._v(\" \"+_vm._s(_vm.type === 'add' ? 'Add' : 'Edit')+\" Alert \")]),_c('ImagePicker',{attrs:{\"imageUrl\":_vm.alertProp ? _vm.alertProp.imageUrl : null},on:{\"selection-changed\":_vm.onFilePicked}}),_c('v-container',[_c('v-row',[_c('v-col',[_c('v-text-field',{attrs:{\"error-messages\":_vm.titleErrors,\"label\":\"Title\",\"required\":\"\",\"outlined\":\"\",\"dense\":\"\"},model:{value:(_vm.title),callback:function ($$v) {_vm.title=$$v},expression:\"title\"}})],1)],1),_c('v-row',[_c('v-col',[_c('DatePicker',{attrs:{\"label\":\"Event Date\",\"minDate\":new Date(),\"errors\":_vm.startDateErrors},model:{value:(_vm.startDate),callback:function ($$v) {_vm.startDate=$$v},expression:\"startDate\"}}),_c('v-switch',{attrs:{\"label\":\"Display on calendar\"},model:{value:(_vm.displayOnCalendar),callback:function ($$v) {_vm.displayOnCalendar=$$v},expression:\"displayOnCalendar\"}})],1),_c('v-col',[_c('v-text-field',{attrs:{\"error-messages\":_vm.durationInDaysErrors,\"label\":\"Duration in Days\",\"required\":\"\",\"outlined\":\"\",\"dense\":\"\"},model:{value:(_vm.durationInDays),callback:function ($$v) {_vm.durationInDays=_vm._n($$v)},expression:\"durationInDays\"}})],1)],1),_c('v-row',[_c('v-col',[_c('DatePicker',{attrs:{\"label\":\"Start Displaying On\"},model:{value:(_vm.startDisplayingOn),callback:function ($$v) {_vm.startDisplayingOn=$$v},expression:\"startDisplayingOn\"}})],1),_c('v-col',[_c('DatePicker',{attrs:{\"label\":\"Stop Displaying On\"},model:{value:(_vm.stopDisplayingOn),callback:function ($$v) {_vm.stopDisplayingOn=$$v},expression:\"stopDisplayingOn\"}})],1)],1),_c('v-row',[_c('v-col',[_c('v-combobox',{attrs:{\"items\":_vm.tagItems,\"label\":\"Tags\",\"multiple\":\"\",\"outlined\":\"\",\"dense\":\"\",\"item-value\":\"value\",\"item-text\":\"title\",\"return-object\":\"\"},model:{value:(_vm.tags),callback:function ($$v) {_vm.tags=$$v},expression:\"tags\"}}),_c('QuillEditor',{model:{value:(_vm.content),callback:function ($$v) {_vm.content=$$v},expression:\"content\"}})],1)],1)],1),_c('button',{staticClass:\"add-alert-button\",attrs:{\"disabled\":_vm.saving},on:{\"click\":_vm.submit}},[_vm._v(\" \"+_vm._s(this.type === 'edit' ? 'UPDATE' : 'ADD')+\" \")])],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[(!!_vm.imageData)?_c('img',{staticClass:\"add-alert-populated-image\",attrs:{\"src\":_vm.imageData,\"alt\":\"\"},on:{\"click\":_vm.selectFile}}):_vm._e(),(!_vm.imageData && _vm.imageUrl)?_c('img',{staticClass:\"add-alert-populated-image\",attrs:{\"src\":_vm.imageUrl,\"alt\":\"\"},on:{\"click\":_vm.selectFile}}):_vm._e(),(\n (_vm.imageHeight !== 0 && _vm.imageWidth / _vm.imageHeight > 4.25) ||\n _vm.imageWidth / _vm.imageHeight < 3.75\n )?_c('span',{staticClass:\"image-alert\"},[_c('v-alert',{attrs:{\"border\":\"top\",\"colored-border\":\"\",\"type\":\"info\",\"elevation\":\"2\"}},[_vm._v(\" Images look best if they have a 4:1 aspect ratio. This image has a 1:\"+_vm._s((_vm.imageWidth / _vm.imageHeight).toFixed(2))+\" aspect ratio. \")])],1):_vm._e(),(!_vm.imageData && !_vm.imageUrl)?_c('div',{staticClass:\"add-alert-image-container\",on:{\"click\":_vm.selectFile}},[_c('CIcon',{staticClass:\"add-alert-image\",attrs:{\"content\":_vm.cameraIcon}})],1):_vm._e(),_c('input',{ref:\"fileinput\",staticStyle:{\"display\":\"none\"},attrs:{\"id\":\"file-input\",\"type\":\"file\",\"name\":\"name\",\"accept\":\"image/*\"},on:{\"change\":_vm.fileSelectionChanged}})])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { CIcon } from '@coreui/icons-vue'\r\nimport { cilCamera, cilX } from '@coreui/icons-pro'\r\nimport Vue from 'vue'\r\n\r\nexport default Vue.extend({\r\n name: 'ImagePicker',\r\n data: function () {\r\n return {\r\n cameraIcon: cilCamera,\r\n xIcon: cilX,\r\n imageData: null,\r\n imageHeight: 0,\r\n imageWidth: 0,\r\n alertProp: null,\r\n }\r\n },\r\n props: {\r\n imageUrl: {\r\n type: String,\r\n default: '',\r\n }\r\n },\r\n methods: {\r\n selectFile: async function (): Promise {\r\n ;(this.$refs.fileinput as HTMLInputElement).click()\r\n },\r\n fileSelectionChanged() {\r\n const files = (this.$refs.fileinput as HTMLInputElement).files\r\n if (files && files[0]) {\r\n const file = files[0]\r\n this.$emit('selection-changed', file)\r\n\r\n //updated preview\r\n this.imageData = URL.createObjectURL(file)\r\n const img = new Image()\r\n\r\n // eslint-disable-next-line @typescript-eslint/no-this-alias\r\n const setDimensions = this.setDimensions\r\n img.onload = function () {\r\n const me = this as any\r\n setDimensions(me.width, me.height)\r\n }\r\n img.src = URL.createObjectURL(file)\r\n }\r\n },\r\n setDimensions(x: number, y: number) {\r\n this.imageWidth = x\r\n this.imageHeight = y\r\n },\r\n },\r\n components: {\r\n CIcon,\r\n },\r\n})\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ImagePicker.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ImagePicker.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ImagePicker.vue?vue&type=template&id=4fd43ec4&\"\nimport script from \"./ImagePicker.vue?vue&type=script&lang=ts&\"\nexport * from \"./ImagePicker.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/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\n\n/* vuetify-loader */\nimport installComponents from \"!../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VAlert } from 'vuetify/lib/components/VAlert';\ninstallComponents(component, {VAlert})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-menu',{ref:\"menu\",attrs:{\"close-on-content-click\":false,\"transition\":\"scale-transition\"},scopedSlots:_vm._u([{key:\"activator\",fn:function(ref){\nvar on = ref.on;\nvar attrs = ref.attrs;\nreturn [_c('v-text-field',_vm._g(_vm._b({attrs:{\"label\":_vm.label,\"outlined\":\"\",\"dense\":\"\",\"readonly\":\"\",\"error-messages\":_vm.errors},model:{value:(_vm.date),callback:function ($$v) {_vm.date=$$v},expression:\"date\"}},'v-text-field',attrs,false),on))]}}]),model:{value:(_vm.menu),callback:function ($$v) {_vm.menu=$$v},expression:\"menu\"}},[_c('v-date-picker',{attrs:{\"min\":_vm.minDate ? _vm.minDate.toISOString().slice(0, 10) : '',\"no-title\":\"\",\"scrollable\":\"\"},model:{value:(_vm.date),callback:function ($$v) {_vm.date=$$v},expression:\"date\"}},[_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\",\"color\":\"primary\"},on:{\"click\":function($event){_vm.menu = false}}},[_vm._v(\"Cancel\")]),_c('v-btn',{attrs:{\"text\":\"\",\"color\":\"primary\"},on:{\"click\":_vm.save}},[_vm._v(\"OK\")])],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport Vue from 'vue'\r\nexport default Vue.extend({\r\n props: {\r\n label: {\r\n type: String,\r\n required: false,\r\n },\r\n minDate: {\r\n type: Date,\r\n required: false,\r\n },\r\n value: {\r\n type: String,\r\n required: false,\r\n },\r\n errors: {\r\n type: Array,\r\n required: false,\r\n },\r\n },\r\n name: 'DatePicker',\r\n methods: {\r\n save: function () {\r\n this.menu = false\r\n this.$emit('input', this.date)\r\n },\r\n },\r\n watch: {\r\n value: {\r\n immediate: true,\r\n deep: true,\r\n handler(val) {\r\n if (val) {\r\n this.date = val.substr(0, 10)\r\n }\r\n },\r\n },\r\n },\r\n data() {\r\n return {\r\n menu: false,\r\n date: this.value\r\n ? this.value.substr(0, 10)\r\n : new Date(Date.now() - new Date().getTimezoneOffset() * 60000)\r\n .toISOString()\r\n .substr(0, 10),\r\n }\r\n },\r\n})\r\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./DatePicker.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./DatePicker.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./DatePicker.vue?vue&type=template&id=05f1413c&\"\nimport script from \"./DatePicker.vue?vue&type=script&lang=ts&\"\nexport * from \"./DatePicker.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/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\n\n/* vuetify-loader */\nimport installComponents from \"!../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VDatePicker } from 'vuetify/lib/components/VDatePicker';\nimport { VMenu } from 'vuetify/lib/components/VMenu';\nimport { VSpacer } from 'vuetify/lib/components/VGrid';\nimport { VTextField } from 'vuetify/lib/components/VTextField';\ninstallComponents(component, {VBtn,VDatePicker,VMenu,VSpacer,VTextField})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('quill-editor',{attrs:{\"value\":_vm.content,\"options\":{\n modules: {\n toolbar: [\n [{ header: [2, false] }],\n ['bold', 'italic', 'underline', 'link'],\n [{ list: 'ordered' }, { list: 'bullet' }],\n [{ align: [] }],\n ['clean'] ],\n },\n }},on:{\"change\":_vm.handleInput}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport Vue from 'vue'\r\nimport 'quill/dist/quill.core.css'\r\nimport 'quill/dist/quill.snow.css'\r\nimport 'quill/dist/quill.bubble.css'\r\n\r\nimport { quillEditor } from 'vue-quill-editor'\r\nexport default Vue.extend({\r\n props: ['value'],\r\n components: {\r\n quillEditor,\r\n },\r\n data() {\r\n return {\r\n content: this.value,\r\n }\r\n },\r\n methods: {\r\n handleInput(e) {\r\n this.$emit('input', e.html)\r\n },\r\n },\r\n})\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./QuillEditor.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./QuillEditor.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./QuillEditor.vue?vue&type=template&id=2938a40d&\"\nimport script from \"./QuillEditor.vue?vue&type=script&lang=ts&\"\nexport * from \"./QuillEditor.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/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","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport '../../styles/add-alert-modal.css'\r\nimport Vue from 'vue'\r\nimport { CIcon } from '@coreui/icons-vue'\r\nimport { cilCamera, cilX } from '@coreui/icons-pro'\r\nimport ImagePicker from '../general/ImagePicker.vue'\r\nimport { validationMixin } from 'vuelidate'\r\nimport { required, integer, minValue } from 'vuelidate/lib/validators'\r\n\r\nimport Modal from '../general/modal/Modal.vue'\r\nimport ModalBody from '../general/modal/ModalBody.vue'\r\nimport { IValidationResult } from '../../util/IValidationResult'\r\nimport DatePicker from '../DatePicker.vue'\r\nimport IAlert from '../../viewModel/IAlert'\r\nimport { Alerts } from '@/dataLayer/Alerts'\r\n\r\nimport 'quill/dist/quill.core.css'\r\nimport 'quill/dist/quill.snow.css'\r\nimport 'quill/dist/quill.bubble.css'\r\n\r\nimport QuillEditor from '../controls/QuillEditor.vue'\r\n\r\ninterface IModel {\r\n cameraIcon: any[]\r\n exitIcon: any[]\r\n errors: string[]\r\n title: string\r\n content: string\r\n startDisplayingOn: string\r\n stopDisplayingOn: string\r\n addToCalendar: boolean\r\n startDate: string\r\n endDate: string\r\n durationInDays: number\r\n tags: { value: number; title: string }[]\r\n saving: boolean\r\n displayOnCalendar: boolean\r\n file: File | undefined\r\n}\r\n\r\nexport default Vue.extend({\r\n mixins: [validationMixin],\r\n validations: {\r\n title: { required },\r\n content: { required },\r\n durationInDays: { required, integer, minValue: minValue(1) },\r\n },\r\n data: (): IModel => {\r\n const curDate = new Date()\r\n const curDateStr = curDate.toISOString().substring(0, 10) // YYYY-MM-DD (required by v-date-picker)\r\n\r\n return {\r\n cameraIcon: cilCamera,\r\n exitIcon: cilX,\r\n errors: [],\r\n title: '',\r\n content: '',\r\n startDisplayingOn: curDateStr,\r\n stopDisplayingOn: curDateStr,\r\n startDate: curDateStr,\r\n endDate: curDateStr,\r\n addToCalendar: false,\r\n durationInDays: 1,\r\n tags: [],\r\n saving: false,\r\n displayOnCalendar: false,\r\n file: undefined,\r\n }\r\n },\r\n props: {\r\n showModal: {\r\n type: Boolean,\r\n required: true,\r\n },\r\n type: {\r\n type: String,\r\n required: true,\r\n },\r\n alertProp: {\r\n type: Object,\r\n required: false,\r\n },\r\n },\r\n watch: {\r\n alertProp: function (val) {\r\n if (val) {\r\n this.title = val.title\r\n this.content = val.content\r\n this.startDate = val.startDate\r\n this.durationInDays = val.durationInDays\r\n this.tags = this.tagItems.filter((x) => val.tags.includes(x.value))\r\n this.startDisplayingOn = val.startDisplayingOn\r\n this.stopDisplayingOn = val.stopDisplayingOn\r\n this.displayOnCalendar = val.displayOnCalendar\r\n }\r\n },\r\n },\r\n\r\n methods: {\r\n submit: async function () {\r\n if (\r\n this.$v.title.$invalid ||\r\n this.$v.content.$invalid ||\r\n this.$v.durationInDays.$invalid\r\n ) {\r\n this.$v.$touch()\r\n return\r\n }\r\n\r\n this.saving = true\r\n try {\r\n const result = await fetch('/api/Alerts', {\r\n method: this.type === 'edit' ? 'PUT' : 'POST',\r\n body: JSON.stringify({\r\n id: this.alertProp && this.alertProp.id ? this.alertProp.id : 0,\r\n title: this.title,\r\n content: this.content,\r\n shortContent: '',\r\n startDate: new Date(this.startDate),\r\n stopDisplayingOn: new Date(this.stopDisplayingOn),\r\n startDisplayingOn: new Date(this.startDisplayingOn),\r\n durationInDays: this.durationInDays,\r\n displayOnCalendar: this.displayOnCalendar,\r\n imageUrl: '',\r\n tags: this.tags.map((x) => x.value),\r\n } as IAlert),\r\n headers: {\r\n 'Content-type': 'application/json; charset=UTF-8',\r\n },\r\n })\r\n if (!result.ok) {\r\n this.errors = await result.json()\r\n } else {\r\n const createdAlert = await result.json()\r\n\r\n if (this.file) {\r\n const uploadImageUrl = createdAlert.uploadImageUrl\r\n\r\n await fetch(uploadImageUrl, {\r\n method: 'PUT',\r\n body: this.file,\r\n headers: {\r\n 'Content-Type': 'image/png',\r\n 'x-ms-blob-type': 'BlockBlob',\r\n },\r\n })\r\n }\r\n\r\n this.close(createdAlert)\r\n }\r\n } finally {\r\n this.saving = false\r\n }\r\n },\r\n onFilePicked: function (file: File) {\r\n this.file = file\r\n },\r\n\r\n close(data: IModel | undefined): void {\r\n this.$emit('close', data)\r\n this.resetData()\r\n },\r\n resetData() {\r\n const curDate = new Date()\r\n const curDateStr = curDate.toISOString().substring(0, 10)\r\n this.title = ''\r\n this.content = ''\r\n this.startDisplayingOn = curDateStr\r\n this.stopDisplayingOn = curDateStr\r\n this.startDate = curDateStr\r\n this.endDate = curDateStr\r\n this.addToCalendar = false\r\n this.durationInDays = 1\r\n this.imageData = ''\r\n this.imageWidth = 0\r\n this.imageHeight = 0\r\n this.tags = []\r\n this.saving = false\r\n this.errors = []\r\n this.displayOnCalendar = false\r\n },\r\n setDimensions(x, y) {\r\n this.imageWidth = x\r\n this.imageHeight = y\r\n },\r\n },\r\n computed: {\r\n tagItems(): { value: number; title: string }[] {\r\n return [\r\n { value: 1, title: 'News' },\r\n { value: 2, title: 'Underwriters' },\r\n { value: 3, title: 'Product Updates' },\r\n { value: 4, title: 'Company Updates' },\r\n { value: 5, title: 'Industry' },\r\n { value: 6, title: 'Compliance' },\r\n ]\r\n },\r\n titleErrors(): string[] {\r\n const errors: string[] = []\r\n\r\n if (this.$v.title.$error) errors.push('Title is required')\r\n return errors\r\n },\r\n contentErrors(): string[] {\r\n const errors: string[] = []\r\n\r\n if (this.$v.content.$error) errors.push('Content is required')\r\n return errors\r\n },\r\n durationInDaysErrors(): string[] {\r\n const errors: string[] = []\r\n\r\n if (this.$v.durationInDays.$error)\r\n errors.push('Duration in Days must be a positive, whole number.')\r\n return errors\r\n },\r\n startDateErrors(): string[] {\r\n return this.errors\r\n .filter((x) => x.propertyName === 'StartDate')\r\n .map((x) => x.errorMessage)\r\n },\r\n },\r\n components: { ImagePicker, CIcon, Modal, ModalBody, DatePicker, QuillEditor },\r\n name: 'AddAlertModal',\r\n})\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AddAlertModal.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AddAlertModal.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./AddAlertModal.vue?vue&type=template&id=51a22be3&\"\nimport script from \"./AddAlertModal.vue?vue&type=script&lang=ts&\"\nexport * from \"./AddAlertModal.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/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\n\n/* vuetify-loader */\nimport installComponents from \"!../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VCombobox } from 'vuetify/lib/components/VCombobox';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VRow } from 'vuetify/lib/components/VGrid';\nimport { VSwitch } from 'vuetify/lib/components/VSwitch';\nimport { VTextField } from 'vuetify/lib/components/VTextField';\ninstallComponents(component, {VCol,VCombobox,VContainer,VRow,VSwitch,VTextField})\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { Vue } from 'vue-property-decorator'\r\nimport ScreenTile from '../components/ScreenTile.vue'\r\nimport AdminAlertList from '../components/alert/AdminAlertList.vue'\r\nimport UserAlertList from '../components/alert/UserAlertList.vue'\r\nimport { CIcon } from '@coreui/icons-vue'\r\nimport { cilAlarmAdd } from '@coreui/icons-pro'\r\nimport AddAlertModal from '@/components/alert/AddAlertModal.vue'\r\nimport { Alerts } from '../dataLayer/Alerts'\r\nimport IAlertTag from '@/viewModel/IAlertTag'\r\nimport { mapState } from 'vuex'\r\nimport IAlert from '@/viewModel/IAlert'\r\n\r\nexport default Vue.extend({\r\n components: {\r\n ScreenTile,\r\n AdminAlertList,\r\n CIcon,\r\n AddAlertModal,\r\n UserAlertList,\r\n },\r\n data: function () {\r\n return {\r\n alertAddIcon: cilAlarmAdd,\r\n showCreateModal: false,\r\n filteredTags: [] as number[],\r\n updateType: 'add',\r\n alertTags: [] as IAlertTag[],\r\n showAdmin: false,\r\n editAlert: undefined as IAlert | undefined,\r\n showAllAlerts: false,\r\n }\r\n },\r\n watch: {\r\n showAllAlerts(value) {\r\n console.log(`Show All Alerts: ${value}`);\r\n //this.showAllToggle();\r\n }\r\n },\r\n async mounted() {\r\n await this.loadAlertTags()\r\n },\r\n computed: {\r\n ...mapState(['user']),\r\n },\r\n methods: {\r\n onCreateModalClosed: async function () {\r\n this.showCreateModal = false\r\n this.alertTags = await Alerts.loadAlertTags()\r\n this.$root.$emit('alerts-modified', null)\r\n },\r\n loadAlertTags: async function () {\r\n this.alertTags = await Alerts.loadAlertTags()\r\n },\r\n toggleTag: function (tagValue: number) {\r\n if (this.filteredTags.includes(tagValue)) {\r\n this.filteredTags = this.filteredTags.filter((x) => x !== tagValue)\r\n } else {\r\n this.filteredTags.push(tagValue)\r\n }\r\n },\r\n toggleTagFlag: function (tagValue: number) {\r\n if (this.filteredTags.includes(tagValue)) {\r\n this.filteredTags = this.filteredTags.filter(function (value) {\r\n return value !== tagValue\r\n })\r\n } else {\r\n this.filteredTags.push(tagValue)\r\n }\r\n },\r\n showAddAlert() {\r\n this.editAlert = undefined\r\n this.updateType = 'add'\r\n this.showCreateModal = true\r\n },\r\n showEditModal(evt) {\r\n this.editAlert = evt\r\n this.updateType = 'edit'\r\n this.showCreateModal = true\r\n },\r\n showAllToggle: function() {\r\n this.$root.$emit('alerts-modified', null)\r\n }\r\n },\r\n})\r\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./UpdatesAndAlerts.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./UpdatesAndAlerts.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./UpdatesAndAlerts.vue?vue&type=template&id=057bc700&\"\nimport script from \"./UpdatesAndAlerts.vue?vue&type=script&lang=ts&\"\nexport * from \"./UpdatesAndAlerts.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/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\n\n/* vuetify-loader */\nimport installComponents from \"!../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VChip } from 'vuetify/lib/components/VChip';\nimport { VSwitch } from 'vuetify/lib/components/VSwitch';\ninstallComponents(component, {VChip,VSwitch})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('ScreenTile',{attrs:{\"title\":\"iCon Website\",\"subTitle\":\"Agent Portal\"}},[_c('div',[_vm._v(\"This is some dynamic content\")])])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\r\nimport { Vue } from 'vue-property-decorator'\r\nimport ScreenTile from '../components/ScreenTile.vue'\r\n\r\nexport default Vue.extend({\r\n components: { ScreenTile },\r\n})\r\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./IConWebsite.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./IConWebsite.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./IConWebsite.vue?vue&type=template&id=03842af0&\"\nimport script from \"./IConWebsite.vue?vue&type=script&lang=ts&\"\nexport * from \"./IConWebsite.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/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","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('ScreenTile',{attrs:{\"title\":\"Calendar\",\"subTitle\":\"Agent Portal\"},scopedSlots:_vm._u([{key:\"buttons\",fn:function(){return [_c('div',[(_vm.user.isAdministrator)?_c('button',{staticClass:\"screen-action\",on:{\"click\":_vm.showAdd}},[_c('CIcon',{attrs:{\"content\":_vm.calendarAddIcon}}),_vm._v(\"Add Event \")],1):_vm._e(),_c('button',{staticClass:\"screen-action\",on:{\"click\":_vm.exportToPDF}},[_c('CIcon',{attrs:{\"content\":_vm.pdfIcon}}),_vm._v(\"Export to PDF \")],1)])]},proxy:true}])},[_c('AddEventModal',{attrs:{\"showModal\":_vm.showModal,\"type\":_vm.addEditType,\"editEvent\":_vm.selectedEvent},on:{\"close\":function($event){_vm.showModal = false},\"refresh\":function($event){return _vm.getEvents()}}}),_c('v-row',{staticClass:\"fill-height\"},[(_vm.loading)?_c('v-progress-linear',{attrs:{\"indeterminate\":\"\",\"color\":\"#4A3046\"}}):_vm._e(),_c('v-col',[_c('v-sheet',{staticClass:\"hidden-sm-and-down\",attrs:{\"height\":\"64\"}},[_c('v-toolbar',{attrs:{\"flat\":\"\"}},[_c('v-btn',{staticClass:\"mr-4\",attrs:{\"outlined\":\"\",\"color\":\"grey darken-2\"},on:{\"click\":_vm.setToday}},[_vm._v(\"Today\")]),_c('v-btn',{attrs:{\"fab\":\"\",\"text\":\"\",\"small\":\"\",\"color\":\"grey darken-2\"},on:{\"click\":_vm.prev}},[_c('v-icon',{attrs:{\"small\":\"\"}},[_vm._v(\"mdi-chevron-left\")])],1),_c('v-btn',{attrs:{\"fab\":\"\",\"text\":\"\",\"small\":\"\",\"color\":\"grey darken-2\"},on:{\"click\":_vm.next}},[_c('v-icon',{attrs:{\"small\":\"\"}},[_vm._v(\"mdi-chevron-right\")])],1),_c('v-toolbar-title',[_vm._v(\" \"+_vm._s(_vm.$refs.calendar ? _vm.$refs.calendar.title : ((new Date().toLocaleString('default', { month: 'long', })) + \" \" + (new Date().getFullYear())))+\" \")]),_c('v-spacer'),_c('v-menu',{attrs:{\"bottom\":\"\",\"right\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function(ref){\nvar on = ref.on;\nvar attrs = ref.attrs;\nreturn [_c('v-btn',_vm._g(_vm._b({attrs:{\"outlined\":\"\",\"color\":\"grey darken-2\"}},'v-btn',attrs,false),on),[_c('span',[_vm._v(_vm._s(_vm.typeToLabel[_vm.type]))]),_c('v-icon',{attrs:{\"right\":\"\"}},[_vm._v(\"mdi-menu-down\")])],1)]}}])},[_c('v-list',[_c('v-list-item',{on:{\"click\":function($event){_vm.type = 'day'}}},[_c('v-list-item-title',[_vm._v(\"Day\")])],1),_c('v-list-item',{on:{\"click\":function($event){_vm.type = 'week'}}},[_c('v-list-item-title',[_vm._v(\"Week\")])],1),_c('v-list-item',{on:{\"click\":function($event){_vm.type = 'month'}}},[_c('v-list-item-title',[_vm._v(\"Month\")])],1)],1)],1)],1)],1),_c('v-sheet',{staticClass:\"hidden-sm-and-up\"},_vm._l((_vm.eventGroupsAfterToday),function(group){return _c('div',{key:group.key},[_c('h3',[_vm._v(_vm._s(_vm.monthName(new Date(group[0].start))))]),_vm._l((group),function(entry){return _c('v-card',{key:entry.id,staticClass:\"event-card\",style:({ 'border-color': entry.color })},[_c('v-card-title',[_c('span',[_vm._v(_vm._s(entry.name))])]),_c('v-card-subtitle',[_vm._v(\" \"+_vm._s(entry.start)+\" \")]),_c('v-card-text',[_vm._v(\" \"+_vm._s(entry.details)+\" \")])],1)})],2)}),0),_c('v-sheet',{staticClass:\"hidden-sm-and-down\",attrs:{\"height\":\"600\"}},[_c('v-calendar',{ref:\"calendar\",attrs:{\"color\":\"primary\",\"type\":_vm.type,\"events\":_vm.events},on:{\"click:event\":_vm.showEvent,\"click:more\":_vm.viewDay,\"click:date\":_vm.viewDay},model:{value:(_vm.focus),callback:function ($$v) {_vm.focus=$$v},expression:\"focus\"}}),_c('div',{staticClass:\"legend\"},_vm._l((_vm.colors),function(color){return _c('span',{key:color.name,staticClass:\"legend-item\"},[_c('div',{staticClass:\"legend-color\",style:('background-color: ' + color.color)}),_c('span',[_vm._v(_vm._s(color.name))])])}),0),_c('v-menu',{attrs:{\"close-on-content-click\":false,\"activator\":_vm.selectedElement,\"offset-x\":\"\"},model:{value:(_vm.selectedOpen),callback:function ($$v) {_vm.selectedOpen=$$v},expression:\"selectedOpen\"}},[(_vm.selectedEvent)?_c('v-card',{attrs:{\"color\":\"grey lighten-4\",\"min-width\":\"350px\",\"flat\":\"\"}},[_c('v-toolbar',{attrs:{\"color\":_vm.selectedEvent.color,\"dark\":\"\"}},[_c('v-toolbar-title',[_vm._v(_vm._s(_vm.selectedEvent.name))]),_c('v-spacer')],1),_c('v-card-text',[_c('span',{domProps:{\"innerHTML\":_vm._s(_vm.selectedEvent.details)}})]),_c('v-card-actions',[_c('v-btn',{attrs:{\"text\":\"\",\"color\":\"secondary\"},on:{\"click\":function($event){_vm.selectedOpen = false}}},[_vm._v(\"Close\")]),_c('v-btn',{attrs:{\"text\":\"\",\"color\":\"secondary\"},on:{\"click\":function($event){return _vm.exportToICS(_vm.selectedEvent)}}},[_c('CIcon',{attrs:{\"content\":_vm.downloadIcon}}),_vm._v(\"Download\")],1),(_vm.user.isAdministrator && _vm.selectedEvent.id)?_c('v-btn',{attrs:{\"text\":\"\",\"color\":\"secondary\"},on:{\"click\":function($event){return _vm.showEdit(_vm.selectedEvent.id)}}},[_vm._v(\"Edit\")]):_vm._e(),(_vm.user.isAdministrator && _vm.selectedEvent.id)?_c('v-btn',{attrs:{\"text\":\"\",\"color\":\"red\"},on:{\"click\":function($event){return _vm.deleteEvent(_vm.selectedEvent.id)}}},[_vm._v(\"Delete\")]):_vm._e()],1)],1):_vm._e()],1)],1)],1)],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('Modal',{staticClass:\"add-event-modal\",attrs:{\"showModal\":_vm.showModal}},[_c('div',{staticClass:\"modal-header\"},[_c('div',{staticClass:\"modal-exit-icon\",on:{\"click\":_vm.close}},[_c('CIcon',{attrs:{\"content\":_vm.exitIcon}})],1)]),_c('ModalBody',[_c('div',{staticClass:\"add-event-title\"},[_vm._v(\" \"+_vm._s(_vm.type === 'add' ? 'Add' : 'Edit')+\" Event \")]),_c('v-container',[_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\"}},[_c('DatePicker',{attrs:{\"label\":\"Start Date\"},model:{value:(_vm.date),callback:function ($$v) {_vm.date=$$v},expression:\"date\"}}),_c('DatePicker',{attrs:{\"label\":\"End Date\"},model:{value:(_vm.endDate),callback:function ($$v) {_vm.endDate=$$v},expression:\"endDate\"}}),_c('v-select',{attrs:{\"item-text\":\"name\",\"item-value\":\"id\",\"items\":_vm.categories,\"error-messages\":_vm.categoryErrors,\"label\":\"Category\",\"required\":\"\",\"outlined\":\"\",\"dense\":\"\"},on:{\"change\":_vm.populateTypes,\"click\":function($event){return _vm.$v.selectedCategory.$touch()}},model:{value:(_vm.selectedCategory),callback:function ($$v) {_vm.selectedCategory=$$v},expression:\"selectedCategory\"}}),(_vm.loading)?_c('v-progress-linear',{attrs:{\"indeterminate\":\"\",\"color\":\"#4A3046\"}}):_vm._e(),_c('v-select',{attrs:{\"item-text\":\"name\",\"item-value\":\"id\",\"items\":_vm.types,\"error-messages\":_vm.typeErrors,\"label\":\"Type\",\"required\":\"\",\"outlined\":\"\",\"dense\":\"\"},on:{\"click\":function($event){return _vm.$v.eventTypeId.$touch()}},model:{value:(_vm.eventTypeId),callback:function ($$v) {_vm.eventTypeId=$$v},expression:\"eventTypeId\"}}),_c('v-text-field',{attrs:{\"error-messages\":_vm.nameErrors,\"label\":\"Name\",\"required\":\"\",\"outlined\":\"\",\"dense\":\"\"},on:{\"input\":function($event){return _vm.$v.name.$touch()},\"blur\":function($event){return _vm.$v.name.$touch()}},model:{value:(_vm.name),callback:function ($$v) {_vm.name=$$v},expression:\"name\"}}),_c('QuillEditor',{model:{value:(_vm.description),callback:function ($$v) {_vm.description=$$v},expression:\"description\"}})],1)],1)],1),_c('button',{staticClass:\"add-event-button\",attrs:{\"disabled\":_vm.saving},on:{\"click\":_vm.add}},[_vm._v(\" \"+_vm._s(this.type === 'edit' ? 'UPDATE' : 'ADD')+\" \")])],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport Vue from 'vue'\r\nimport { validationMixin } from 'vuelidate'\r\nimport { required, maxLength } from 'vuelidate/lib/validators'\r\n\r\nimport Modal from '../general/modal/Modal.vue'\r\nimport ModalBody from '../general/modal/ModalBody.vue'\r\nimport DatePicker from '../DatePicker.vue'\r\nimport QuillEditor from '../controls/QuillEditor.vue'\r\nimport { CIcon } from '@coreui/icons-vue'\r\nimport { cilX } from '@coreui/icons-pro'\r\nimport '../../styles/add-event-modal.css'\r\n\r\nexport default Vue.extend({\r\n mixins: [validationMixin],\r\n validations: {\r\n name: { required },\r\n description: { required },\r\n selectedCategory: {\r\n selected: (value) => value !== -1,\r\n },\r\n eventTypeId: {\r\n selected: (value) => value !== -1,\r\n },\r\n },\r\n data() {\r\n return {\r\n name: '',\r\n description: '',\r\n date: new Date().toISOString().substring(0, 10),\r\n endDate: new Date().toISOString().substring(0, 10),\r\n\r\n categories: [],\r\n selectedCategory: -1,\r\n types: [],\r\n eventTypeId: -1,\r\n\r\n exitIcon: cilX,\r\n\r\n saving: false,\r\n loading: false,\r\n }\r\n },\r\n props: {\r\n showModal: {\r\n type: Boolean,\r\n required: true,\r\n },\r\n type: {\r\n type: String,\r\n required: true,\r\n },\r\n editEvent: {\r\n type: Object,\r\n required: false,\r\n },\r\n },\r\n mounted: async function () {\r\n this.categories = await (await fetch('/api/Calendar/Categories')).json()\r\n },\r\n watch: {\r\n editEvent: {\r\n immediate: true,\r\n handler: async function (val) {\r\n if (this.type === 'edit') {\r\n this.name = val.name\r\n this.description = val.details\r\n this.selectedCategory = val.categoryId\r\n this.date = val.start\r\n this.endDate = val.end\r\n await this.populateTypes()\r\n this.eventTypeId = val.typeId\r\n }\r\n },\r\n },\r\n },\r\n methods: {\r\n populateTypes: async function () {\r\n this.loading = true\r\n this.types = await (\r\n await fetch(`/api/Calendar/Categories/${this.selectedCategory}/Types`)\r\n ).json()\r\n this.loading = false\r\n },\r\n close: function () {\r\n this.name = ''\r\n this.description = ''\r\n this.eventTypeId = -1\r\n this.selectedCategory = -1\r\n this.date = new Date().toISOString().substr(0, 10)\r\n this.$v.$reset()\r\n this.$emit('close')\r\n },\r\n add: async function () {\r\n if (\r\n this.$v.name.$invalid ||\r\n this.$v.selectedCategory.$invalid ||\r\n this.$v.eventTypeId.$invalid ||\r\n this.$v.description.$invalid\r\n ) {\r\n this.$v.$touch()\r\n return\r\n }\r\n\r\n this.saving = true\r\n\r\n await fetch('/api/Calendar', {\r\n method: this.type === 'edit' ? 'PUT' : 'POST',\r\n body: JSON.stringify({\r\n id: this.type === 'edit' ? this.editEvent.id : 0,\r\n name: this.name,\r\n description: this.description,\r\n date: this.date,\r\n endDate: this.endDate,\r\n eventTypeId: this.eventTypeId,\r\n }),\r\n })\r\n this.close()\r\n this.$emit('refresh')\r\n this.saving = false\r\n },\r\n },\r\n computed: {\r\n nameErrors() {\r\n const vueInstance = this as any\r\n\r\n const errors: any[] = []\r\n if (!vueInstance.$v.name.$dirty) return errors\r\n !vueInstance.$v.name.required && errors.push('Name is required')\r\n return errors\r\n },\r\n categoryErrors() {\r\n const vueInstance = this as any\r\n\r\n const errors: any[] = []\r\n if (!vueInstance.$v.selectedCategory.$dirty) return errors\r\n !vueInstance.$v.selectedCategory.selected &&\r\n errors.push('Category is required')\r\n return errors\r\n },\r\n typeErrors() {\r\n const vueInstance = this as any\r\n\r\n const errors: any[] = []\r\n if (!vueInstance.$v.eventTypeId.$dirty) return errors\r\n !vueInstance.$v.eventTypeId.selected && errors.push('Type is required')\r\n return errors\r\n },\r\n descriptionErrors() {\r\n const vueInstance = this as any\r\n\r\n const errors: any[] = []\r\n if (!vueInstance.$v.description.$dirty) return errors\r\n !vueInstance.$v.description.maxLength &&\r\n errors.push(\r\n `Description length can't exceed ${vueInstance.$v.description.$params.maxLength.max} characters`\r\n )\r\n return errors\r\n },\r\n },\r\n components: { CIcon, Modal, ModalBody, DatePicker, QuillEditor },\r\n name: 'AddEventModal',\r\n})\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AddEventModal.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AddEventModal.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./AddEventModal.vue?vue&type=template&id=12d50db2&\"\nimport script from \"./AddEventModal.vue?vue&type=script&lang=ts&\"\nexport * from \"./AddEventModal.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/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\n\n/* vuetify-loader */\nimport installComponents from \"!../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VProgressLinear } from 'vuetify/lib/components/VProgressLinear';\nimport { VRow } from 'vuetify/lib/components/VGrid';\nimport { VSelect } from 'vuetify/lib/components/VSelect';\nimport { VTextField } from 'vuetify/lib/components/VTextField';\ninstallComponents(component, {VCol,VContainer,VProgressLinear,VRow,VSelect,VTextField})\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { Vue } from 'vue-property-decorator'\r\nimport { CIcon } from '@coreui/icons-vue'\r\nimport {\r\n cilCalendarPlus,\r\n cilFilePdf,\r\n cilDataTransferDown,\r\n} from '@coreui/icons-pro'\r\nimport ScreenTile from '../components/ScreenTile.vue'\r\nimport AddEventModal from '../components/calendar/AddEventModal.vue'\r\nimport { mapState } from 'vuex'\r\nimport '../styles/calendar.css'\r\nimport * as _ from 'lodash'\r\n\r\ninterface IEvent {\r\n name: string\r\n start: Date\r\n end: Date\r\n color: string\r\n timed: boolean\r\n details: string\r\n}\r\n\r\nexport default Vue.extend({\r\n components: { ScreenTile, CIcon, AddEventModal },\r\n data: function () {\r\n return {\r\n focus: '',\r\n type: 'month',\r\n typeToLabel: {\r\n month: 'Month',\r\n week: 'Week',\r\n day: 'Day',\r\n } as {\r\n [key: string]: string\r\n },\r\n selectedEvent: null as any,\r\n selectedElement: null as any,\r\n selectedOpen: false,\r\n events: [] as IEvent[],\r\n showModal: false,\r\n addEditType: 'edit',\r\n calendarAddIcon: cilCalendarPlus,\r\n downloadIcon: cilDataTransferDown,\r\n pdfIcon: cilFilePdf,\r\n colors: [\r\n { name: 'Extension payments', color: '#2F353A' },\r\n { name: 'Tax estimates', color: '#005EB8' },\r\n { name: 'Annual BRT/Renewal', color: '#5867CF' },\r\n {\r\n name: 'Deadline Reinsurance Distribution Request',\r\n color: '#5A7631',\r\n },\r\n { name: 'Remittance Close', color: '#95B466' },\r\n { name: 'Holiday', color: '#FED201' },\r\n { name: 'Special Event', color: '#f44336' },\r\n { name: 'Filing Deadline', color: '#00bcd4' },\r\n ],\r\n loading: false,\r\n }\r\n },\r\n async mounted() {\r\n if (this.$refs.calendar) {\r\n ;(this.$refs.calendar as any).updateTimes()\r\n this.focus = ''\r\n this.loading = true\r\n await this.getEvents()\r\n this.loading = false\r\n }\r\n },\r\n computed: {\r\n ...mapState(['user']),\r\n eventsAfterToday: function () {\r\n if (!this || !this.events) return []\r\n return this.events\r\n .filter(\r\n (event) => new Date(event.start).getTime() > new Date().getTime()\r\n )\r\n .sort((a, b) => (a.start < b.start ? -1 : 1))\r\n },\r\n eventGroupsAfterToday: function () {\r\n return _.groupBy(\r\n this.eventsAfterToday,\r\n (e) =>\r\n `${new Date(e.start).getFullYear()}-${new Date(e.start).getMonth()}`\r\n )\r\n },\r\n },\r\n methods: {\r\n getEvents: async function () {\r\n const serverEvents = await (await fetch('/api/Calendar')).json()\r\n this.events = serverEvents.map((x: any) => ({\r\n name: x.name,\r\n start: x.date.split('T')[0],\r\n end: x.endDate ? x.endDate.split('T')[0] : x.date.split('T')[0],\r\n color: x.color,\r\n timed: false,\r\n id: x.id,\r\n details: x.description,\r\n categoryId: x.categoryId,\r\n typeId: x.typeId,\r\n }))\r\n const today = new Date()\r\n const today_year = `0000${today.getFullYear().toString()}`.slice(-4)\r\n const today_month = `00${(today.getMonth() + 1).toString()}`.slice(-2)\r\n const today_day = `00${today.getDate().toString()}`.slice(-2)\r\n const todayFormatted = `${today_year}-${today_month}-${today_day}`\r\n this.events.push({\r\n name: 'Today',\r\n start: todayFormatted,\r\n end: todayFormatted,\r\n color: 'blue',\r\n timed: false,\r\n details: \"It's today! Make it the best day you can make it\",\r\n })\r\n },\r\n deleteEvent: async function (id: number) {\r\n await (await fetch(`/api/Calendar/${id}`, { method: 'delete' })).json()\r\n this.selectedOpen = false\r\n this.getEvents()\r\n },\r\n showAdd: async function () {\r\n this.addEditType = 'add'\r\n this.showModal = true\r\n },\r\n showEdit: async function () {\r\n this.selectedOpen = false\r\n this.addEditType = 'edit'\r\n this.showModal = true\r\n },\r\n setToday() {\r\n this.focus = ''\r\n },\r\n prev() {\r\n if (this.$refs.calendar) (this.$refs.calendar as any).prev()\r\n },\r\n next() {\r\n if (this.$refs.calendar) (this.$refs.calendar as any).next()\r\n },\r\n viewDay({ date }: { date: string }) {\r\n this.focus = date\r\n this.type = 'day'\r\n },\r\n exportToPDF: function () {\r\n window.open('/api/Calendar/Export')\r\n },\r\n exportToICS: function (event) {\r\n ;(this as any).$ics.removeAllEvents()\r\n const localStart = new Date(event.start)\r\n localStart.setMinutes(\r\n localStart.getMinutes() + localStart.getTimezoneOffset()\r\n )\r\n const localEnd = new Date(event.end)\r\n localEnd.setMinutes(localEnd.getMinutes() + localEnd.getTimezoneOffset())\r\n ;(this as any).$ics.addEvent(\r\n 'en-us',\r\n event.name,\r\n event.details,\r\n '',\r\n localStart,\r\n localEnd\r\n )\r\n ;(this as any).$ics.download(event.name)\r\n },\r\n monthName: function (date) {\r\n return date.toLocaleString('en-US', { month: 'long' })\r\n },\r\n showEvent: async function ({\r\n nativeEvent,\r\n event,\r\n }: {\r\n nativeEvent: Event\r\n event: any\r\n }) {\r\n const open = () => {\r\n this.selectedEvent = event\r\n this.selectedElement = nativeEvent.target\r\n requestAnimationFrame(() =>\r\n requestAnimationFrame(() => {\r\n this.selectedOpen = true\r\n })\r\n )\r\n }\r\n\r\n if (this.selectedOpen) {\r\n this.selectedOpen = false\r\n requestAnimationFrame(() => requestAnimationFrame(() => open()))\r\n } else {\r\n open()\r\n }\r\n nativeEvent.stopPropagation()\r\n },\r\n },\r\n})\r\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./RemittanceCloseCalendar.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./RemittanceCloseCalendar.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./RemittanceCloseCalendar.vue?vue&type=template&id=23a3fe0a&\"\nimport script from \"./RemittanceCloseCalendar.vue?vue&type=script&lang=ts&\"\nexport * from \"./RemittanceCloseCalendar.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/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\n\n/* vuetify-loader */\nimport installComponents from \"!../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCalendar } from 'vuetify/lib/components/VCalendar';\nimport { VCard } from 'vuetify/lib/components/VCard';\nimport { VCardActions } from 'vuetify/lib/components/VCard';\nimport { VCardSubtitle } from 'vuetify/lib/components/VCard';\nimport { VCardText } from 'vuetify/lib/components/VCard';\nimport { VCardTitle } from 'vuetify/lib/components/VCard';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VIcon } from 'vuetify/lib/components/VIcon';\nimport { VList } from 'vuetify/lib/components/VList';\nimport { VListItem } from 'vuetify/lib/components/VList';\nimport { VListItemTitle } from 'vuetify/lib/components/VList';\nimport { VMenu } from 'vuetify/lib/components/VMenu';\nimport { VProgressLinear } from 'vuetify/lib/components/VProgressLinear';\nimport { VRow } from 'vuetify/lib/components/VGrid';\nimport { VSheet } from 'vuetify/lib/components/VSheet';\nimport { VSpacer } from 'vuetify/lib/components/VGrid';\nimport { VToolbar } from 'vuetify/lib/components/VToolbar';\nimport { VToolbarTitle } from 'vuetify/lib/components/VToolbar';\ninstallComponents(component, {VBtn,VCalendar,VCard,VCardActions,VCardSubtitle,VCardText,VCardTitle,VCol,VIcon,VList,VListItem,VListItemTitle,VMenu,VProgressLinear,VRow,VSheet,VSpacer,VToolbar,VToolbarTitle})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('ScreenTile',{attrs:{\"title\":\"Report\",\"subTitle\":\"Agent Portal\"},scopedSlots:_vm._u([{key:\"buttons\",fn:function(){return [_c('div',[_c('button',{staticClass:\"screen-action\",on:{\"click\":_vm.toggleFavorite}},[(_vm.favoriteStatus)?_c('span',[_c('CIcon',{attrs:{\"content\":_vm.favoritedStarIcon}}),_vm._v(\" Remove from Favorites\")],1):_c('span',[_c('CIcon',{attrs:{\"content\":_vm.standardStarIcon}}),_vm._v(\" Add to Favorites\")],1)])])]},proxy:true}])},[(_vm.loading)?_c('v-progress-linear',{attrs:{\"indeterminate\":\"\",\"color\":\"#4A3046\"}}):_vm._e(),(_vm.detailedError)?_c('div',{staticStyle:{\"width\":\"100%\"}},[_c('v-alert',{attrs:{\"type\":\"error\"}},[_c('div',[_vm._v(\"Power BI Message: \"+_vm._s(_vm.detailedError))]),_c('p',[_vm._v(\" Frequently this error is seen because the contact id is not set up properly in the report. PBIX reports must expect a role of \\\"DealerAgentUsers\\\" and then use the UserName() to filter the data. \")])])],1):_vm._e(),_c('div',{staticStyle:{\"height\":\"1000px\",\"width\":\"1500px\"},attrs:{\"id\":\"reportdiv\"}})],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { Vue } from 'vue-property-decorator'\r\nimport { CIcon } from '@coreui/icons-vue'\r\nimport ScreenTile from '../components/ScreenTile.vue'\r\nimport * as powerbi from 'powerbi-client'\r\nimport { cisStar, cilStar } from '@coreui/icons-pro'\r\n\r\ninterface IToken {\r\n description: string\r\n embedUrl: string\r\n id: string\r\n name: string\r\n token: {\r\n expiration: string\r\n token: string\r\n tokenId: string\r\n }\r\n}\r\n\r\nexport default Vue.extend({\r\n props: {\r\n reportId: {\r\n required: true,\r\n type: String,\r\n },\r\n reportName: {\r\n required: true,\r\n type: String,\r\n },\r\n favorite: {\r\n required: false,\r\n type: Boolean,\r\n },\r\n },\r\n data: function (): {\r\n loading: boolean\r\n favoritedStarIcon: any[]\r\n standardStarIcon: any[]\r\n favoriteOverride: boolean | undefined\r\n detailedError: string | undefined\r\n } {\r\n return {\r\n loading: true,\r\n favoritedStarIcon: cisStar,\r\n standardStarIcon: cilStar,\r\n favoriteOverride: undefined as boolean | undefined,\r\n detailedError: undefined,\r\n }\r\n },\r\n computed: {\r\n favoriteStatus: function (): boolean {\r\n if (this.favoriteOverride !== undefined) {\r\n return this.favoriteOverride\r\n }\r\n return this.favorite\r\n },\r\n },\r\n components: { ScreenTile, CIcon },\r\n methods: {\r\n toggleFavorite: async function () {\r\n if (!this.favoriteStatus) {\r\n await fetch('/api/favorites', {\r\n method: 'POST',\r\n body: JSON.stringify({\r\n reportId: this.reportId,\r\n reportName: this.reportName,\r\n }),\r\n headers: {\r\n 'Content-type': 'application/json; charset=UTF-8',\r\n },\r\n })\r\n this.favoriteOverride = true\r\n } else {\r\n await fetch(`/api/favorites/reports/${this.reportId}`, {\r\n method: 'DELETE',\r\n })\r\n this.favoriteOverride = false\r\n }\r\n },\r\n },\r\n mounted: async function () {\r\n const tokenRequest = await fetch(`/api/reports/${this.reportId}`)\r\n if (tokenRequest.ok) {\r\n const token = (await tokenRequest.json()) as IToken\r\n\r\n const permissions = powerbi.models.Permissions.All\r\n const config = {\r\n visualName: '',\r\n type: 'report',\r\n accessToken: token.token.token, // I'm not changing this, it's awesome\r\n embedUrl: token.embedUrl,\r\n tokenType: powerbi.models.TokenType.Embed,\r\n permissions,\r\n settings: {\r\n panes: {\r\n filters: {\r\n visible: true,\r\n },\r\n pageNavigation: {\r\n visible: true,\r\n },\r\n },\r\n },\r\n }\r\n\r\n // Embed the report and display it within the div container\r\n const embedder = new powerbi.service.Service(\r\n powerbi.factories.hpmFactory,\r\n powerbi.factories.wpmpFactory,\r\n powerbi.factories.routerFactory\r\n )\r\n\r\n const el = document.querySelector('#reportdiv') as HTMLElement\r\n if (el) {\r\n embedder.embed(el, config)\r\n }\r\n } else {\r\n const message = JSON.parse(await tokenRequest.text())\r\n this.detailedError = message.powerBIErrorMessage\r\n }\r\n this.loading = false\r\n },\r\n})\r\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ReportView.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ReportView.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ReportView.vue?vue&type=template&id=6bfc11ec&\"\nimport script from \"./ReportView.vue?vue&type=script&lang=ts&\"\nexport * from \"./ReportView.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/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\n\n/* vuetify-loader */\nimport installComponents from \"!../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VAlert } from 'vuetify/lib/components/VAlert';\nimport { VProgressLinear } from 'vuetify/lib/components/VProgressLinear';\ninstallComponents(component, {VAlert,VProgressLinear})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('ScreenTile',{attrs:{\"title\":\"Admin Users\",\"subTitle\":\"Agent Portal\"},scopedSlots:_vm._u([{key:\"buttons\",fn:function(){return [_c('div',[_c('button',{staticClass:\"screen-action\",on:{\"click\":function($event){_vm.showAddDialog = true}}},[_c('CIcon',{attrs:{\"content\":_vm.userAddIcon}}),_vm._v(\" Add Admin User \")],1)])]},proxy:true}])},[(_vm.loading)?_c('v-progress-linear',{attrs:{\"indeterminate\":\"\",\"color\":\"#4A3046\"}}):_vm._e(),_c('v-data-table',{staticClass:\"elevation-1\",attrs:{\"headers\":_vm.headers,\"items\":_vm.records,\"items-per-page\":5},scopedSlots:_vm._u([{key:\"item.actions\",fn:function(ref){\nvar item = ref.item;\nreturn [_c('v-icon',{attrs:{\"small\":\"\"},on:{\"click\":function($event){return _vm.openDelete(item)}}},[_vm._v(\" mdi-delete \")])]}}])})],1),_c('RemoveItemModal',{attrs:{\"showModal\":_vm.showDeleteDialog,\"item\":_vm.deleteItem.id ? ((_vm.deleteItem.fullName) + \" as an administrator\") : ''},on:{\"close\":function () {\n _vm.showDeleteDialog = false\n _vm.removeItem = {}\n },\"confirm\":function($event){return _vm.deleteItemOnServer(_vm.deleteItem.id)}}}),_c('AddAdminUserModal',{attrs:{\"showModal\":_vm.showAddDialog},on:{\"close\":_vm.userAdded}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('Modal',{staticClass:\"add-mdresource-modal\",attrs:{\"showModal\":_vm.showModal}},[_c('div',{staticClass:\"modal-header\"},[_c('div',{staticClass:\"modal-exit-icon\",on:{\"click\":_vm.close}},[_c('CIcon',{attrs:{\"content\":_vm.exitIcon}})],1)]),_c('ModalBody',[_c('div',{staticClass:\"add-mdresource-title\"},[_vm._v(\"Add Admin User\")]),_c('v-container',[_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\"}},[_c('v-autocomplete',{attrs:{\"items\":_vm.items,\"loading\":_vm.loading,\"search-input\":_vm.search,\"color\":\"white\",\"hide-no-data\":\"\",\"hide-selected\":\"\",\"item-text\":\"contactFullName\",\"item-value\":\"contactEmail\",\"label\":\"Users\",\"placeholder\":\"Start typing to Search\",\"prepend-icon\":\"mdi-database-search\",\"return-object\":\"\"},on:{\"update:searchInput\":function($event){_vm.search=$event},\"update:search-input\":function($event){_vm.search=$event}},model:{value:(_vm.selectedItem),callback:function ($$v) {_vm.selectedItem=$$v},expression:\"selectedItem\"}})],1)],1)],1),(_vm.errors && _vm.errors.length > 0)?_c('v-alert',{staticClass:\"validation-errors\",attrs:{\"border\":\"bottom\",\"colored-border\":\"\",\"type\":\"error\",\"elevation\":\"2\"}},[_c('ul',_vm._l((_vm.errors),function(err){return _c('li',{key:err},[_vm._v(_vm._s(err))])}),0)]):_vm._e(),_c('button',{staticClass:\"add-mdresource-button\",on:{\"click\":_vm.add}},[_vm._v(\"ADD\")])],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport '../../styles/add-adminuser-modal.css'\r\nimport Vue from 'vue'\r\nimport Modal from '../general/modal/Modal.vue'\r\nimport ModalBody from '../general/modal/ModalBody.vue'\r\nimport { CIcon } from '@coreui/icons-vue'\r\nimport { cilX } from '@coreui/icons-pro'\r\nimport { IValidationResult } from '../../util/IValidationResult'\r\n\r\nexport default Vue.extend({\r\n name: 'AddAdminUserModal',\r\n data() {\r\n return {\r\n errors: [] as IValidationResult[],\r\n loading: false,\r\n selectedItem: { contactEmail: '' },\r\n exitIcon: cilX,\r\n items: [],\r\n search: '',\r\n }\r\n },\r\n components: { CIcon, Modal, ModalBody },\r\n props: {\r\n showModal: {\r\n type: Boolean,\r\n required: true,\r\n },\r\n },\r\n\r\n methods: {\r\n close: function () {\r\n this.$emit('close')\r\n },\r\n add: async function () {\r\n await fetch('/api/PortalAdmin/Users', {\r\n method: 'POST',\r\n body: JSON.stringify({\r\n email: this.selectedItem.contactEmail,\r\n }),\r\n headers: {\r\n 'Content-type': 'application/json; charset=UTF-8',\r\n },\r\n })\r\n this.$emit('close')\r\n },\r\n },\r\n watch: {\r\n async search(val) {\r\n if (!val) return\r\n if (val.length < 3) return\r\n\r\n if (this.loading) return\r\n\r\n this.loading = true\r\n try {\r\n this.items = await (\r\n await fetch(`/api/PortalAdmin/Users/Search?term=${val}`)\r\n ).json()\r\n } finally {\r\n this.loading = false\r\n }\r\n },\r\n },\r\n})\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AddAdminUserModal.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AddAdminUserModal.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./AddAdminUserModal.vue?vue&type=template&id=5855ff1c&\"\nimport script from \"./AddAdminUserModal.vue?vue&type=script&lang=ts&\"\nexport * from \"./AddAdminUserModal.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/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\n\n/* vuetify-loader */\nimport installComponents from \"!../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VAlert } from 'vuetify/lib/components/VAlert';\nimport { VAutocomplete } from 'vuetify/lib/components/VAutocomplete';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VRow } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VAlert,VAutocomplete,VCol,VContainer,VRow})\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { Vue } from 'vue-property-decorator'\r\nimport ScreenTile from '../components/ScreenTile.vue'\r\nimport RemoveItemModal from '../components/general/RemoveItemModal.vue'\r\nimport { CIcon } from '@coreui/icons-vue'\r\nimport { cilUserFemalePlus } from '@coreui/icons-pro'\r\nimport AddAdminUserModal from '../components/adminUsers/AddAdminUserModal.vue'\r\n\r\ninterface Item {\r\n id: number\r\n fullName: string\r\n}\r\n\r\nexport default Vue.extend({\r\n data: function () {\r\n return {\r\n loading: true,\r\n showDeleteDialog: false,\r\n showAddDialog: false,\r\n deleteItem: { id: 0, fullName: '' },\r\n records: [],\r\n headers: [\r\n { text: 'Email', value: 'email' },\r\n { text: 'Full Name', value: 'fullName' },\r\n { text: 'Created By', value: 'createdBy' },\r\n { text: 'Created On', value: 'createdDate' },\r\n { text: 'Actions', value: 'actions', sortable: false },\r\n ],\r\n userAddIcon: cilUserFemalePlus,\r\n }\r\n },\r\n mounted: async function () {\r\n this.records = await (await fetch('/api/portaladmin/users')).json()\r\n this.loading = false\r\n },\r\n methods: {\r\n openDelete(item: Item) {\r\n this.showDeleteDialog = true\r\n this.deleteItem = item\r\n },\r\n async deleteItemOnServer(id: number) {\r\n await (\r\n await fetch(`/api/portaladmin/users/${id}`, {\r\n method: 'DELETE',\r\n })\r\n ).json()\r\n this.loading = true\r\n this.records = await (await fetch('/api/portaladmin/users')).json()\r\n this.loading = false\r\n this.showDeleteDialog = false\r\n },\r\n async userAdded() {\r\n this.loading = true\r\n this.records = await (await fetch('/api/portaladmin/users')).json()\r\n this.loading = false\r\n this.showAddDialog = false\r\n },\r\n },\r\n components: {\r\n ScreenTile,\r\n RemoveItemModal,\r\n CIcon,\r\n AddAdminUserModal,\r\n },\r\n})\r\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AdminManagement.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AdminManagement.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./AdminManagement.vue?vue&type=template&id=be9589ca&\"\nimport script from \"./AdminManagement.vue?vue&type=script&lang=ts&\"\nexport * from \"./AdminManagement.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/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\n\n/* vuetify-loader */\nimport installComponents from \"!../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VDataTable } from 'vuetify/lib/components/VDataTable';\nimport { VIcon } from 'vuetify/lib/components/VIcon';\nimport { VProgressLinear } from 'vuetify/lib/components/VProgressLinear';\ninstallComponents(component, {VDataTable,VIcon,VProgressLinear})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('ScreenTile',{attrs:{\"title\":\"Cost Users\",\"subTitle\":\"Agent Portal\"},scopedSlots:_vm._u([{key:\"buttons\",fn:function(){return [_c('div',[_c('button',{staticClass:\"screen-action\",on:{\"click\":function($event){_vm.showAddDialog = true}}},[_c('CIcon',{attrs:{\"content\":_vm.userAddIcon}}),_vm._v(\" Add Cost User \")],1)])]},proxy:true}])},[(_vm.loading)?_c('v-progress-linear',{attrs:{\"indeterminate\":\"\",\"color\":\"#4A3046\"}}):_vm._e(),_c('v-data-table',{staticClass:\"elevation-1\",attrs:{\"headers\":_vm.headers,\"items\":_vm.records,\"items-per-page\":5},scopedSlots:_vm._u([{key:\"item.actions\",fn:function(ref){\nvar item = ref.item;\nreturn [_c('v-icon',{attrs:{\"small\":\"\"},on:{\"click\":function($event){return _vm.openDelete(item)}}},[_vm._v(\" mdi-delete \")])]}}])})],1),_c('RemoveItemModal',{attrs:{\"showModal\":_vm.showDeleteDialog,\"item\":_vm.deleteItem.id ? ((_vm.deleteItem.fullName) + \" as an cost user\") : ''},on:{\"close\":function () {\n _vm.showDeleteDialog = false\n _vm.removeItem = {}\n },\"confirm\":function($event){return _vm.deleteItemOnServer(_vm.deleteItem.id)}}}),_c('AddCostUserModal',{attrs:{\"showModal\":_vm.showAddDialog},on:{\"close\":_vm.userAdded}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('Modal',{staticClass:\"add-mdresource-modal\",attrs:{\"showModal\":_vm.showModal}},[_c('div',{staticClass:\"modal-header\"},[_c('div',{staticClass:\"modal-exit-icon\",on:{\"click\":_vm.close}},[_c('CIcon',{attrs:{\"content\":_vm.exitIcon}})],1)]),_c('ModalBody',[_c('div',{staticClass:\"add-mdresource-title\"},[_vm._v(\"Add Cost User\")]),_c('v-container',[_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\"}},[_c('v-autocomplete',{attrs:{\"items\":_vm.items,\"loading\":_vm.loading,\"search-input\":_vm.search,\"color\":\"white\",\"hide-no-data\":\"\",\"hide-selected\":\"\",\"item-text\":\"contactFullName\",\"item-value\":\"contactEmail\",\"label\":\"Users\",\"placeholder\":\"Start typing to Search\",\"prepend-icon\":\"mdi-database-search\",\"return-object\":\"\"},on:{\"update:searchInput\":function($event){_vm.search=$event},\"update:search-input\":function($event){_vm.search=$event}},model:{value:(_vm.selectedItem),callback:function ($$v) {_vm.selectedItem=$$v},expression:\"selectedItem\"}})],1)],1)],1),(_vm.errors && _vm.errors.length > 0)?_c('v-alert',{staticClass:\"validation-errors\",attrs:{\"border\":\"bottom\",\"colored-border\":\"\",\"type\":\"error\",\"elevation\":\"2\"}},[_c('ul',_vm._l((_vm.errors),function(err){return _c('li',{key:err},[_vm._v(_vm._s(err))])}),0)]):_vm._e(),_c('button',{staticClass:\"add-mdresource-button\",on:{\"click\":_vm.add}},[_vm._v(\"ADD\")])],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport '../../styles/add-adminuser-modal.css'\r\nimport Vue from 'vue'\r\nimport Modal from '../general/modal/Modal.vue'\r\nimport ModalBody from '../general/modal/ModalBody.vue'\r\nimport { CIcon } from '@coreui/icons-vue'\r\nimport { cilX } from '@coreui/icons-pro'\r\nimport { IValidationResult } from '../../util/IValidationResult'\r\n\r\nexport default Vue.extend({\r\n name: 'AddCostUserModal',\r\n data() {\r\n return {\r\n errors: [] as IValidationResult[],\r\n loading: false,\r\n selectedItem: { contactEmail: '' },\r\n exitIcon: cilX,\r\n items: [],\r\n search: '',\r\n }\r\n },\r\n components: { CIcon, Modal, ModalBody },\r\n props: {\r\n showModal: {\r\n type: Boolean,\r\n required: true,\r\n },\r\n },\r\n\r\n methods: {\r\n close: function () {\r\n this.$emit('close')\r\n },\r\n add: async function () {\r\n await fetch('/api/CostUsers/Users', {\r\n method: 'POST',\r\n body: JSON.stringify({\r\n email: this.selectedItem.contactEmail,\r\n }),\r\n headers: {\r\n 'Content-type': 'application/json; charset=UTF-8',\r\n },\r\n })\r\n this.$emit('close')\r\n },\r\n },\r\n watch: {\r\n async search(val) {\r\n if (!val) return\r\n if (val.length < 3) return\r\n\r\n if (this.loading) return\r\n\r\n this.loading = true\r\n try {\r\n this.items = await (\r\n await fetch(`/api/CostUsers/Users/Search?term=${val}`)\r\n ).json()\r\n } finally {\r\n this.loading = false\r\n }\r\n },\r\n },\r\n})\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AddCostUserModal.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AddCostUserModal.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./AddCostUserModal.vue?vue&type=template&id=06b5f9dc&\"\nimport script from \"./AddCostUserModal.vue?vue&type=script&lang=ts&\"\nexport * from \"./AddCostUserModal.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/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\n\n/* vuetify-loader */\nimport installComponents from \"!../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VAlert } from 'vuetify/lib/components/VAlert';\nimport { VAutocomplete } from 'vuetify/lib/components/VAutocomplete';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VRow } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VAlert,VAutocomplete,VCol,VContainer,VRow})\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { Vue } from 'vue-property-decorator'\r\nimport ScreenTile from '../components/ScreenTile.vue'\r\nimport RemoveItemModal from '../components/general/RemoveItemModal.vue'\r\nimport { CIcon } from '@coreui/icons-vue'\r\nimport { cilUserFemalePlus } from '@coreui/icons-pro'\r\nimport AddCostUserModal from '../components/costUsers/AddCostUserModal.vue'\r\n\r\ninterface Item {\r\n id: number\r\n fullName: string\r\n}\r\n\r\nexport default Vue.extend({\r\n data: function () {\r\n return {\r\n loading: true,\r\n showDeleteDialog: false,\r\n showAddDialog: false,\r\n deleteItem: { id: 0, fullName: '' },\r\n records: [],\r\n headers: [\r\n { text: 'Email', value: 'email' },\r\n { text: 'Full Name', value: 'fullName' },\r\n { text: 'Created By', value: 'createdBy' },\r\n { text: 'Created On', value: 'createdDate' },\r\n { text: 'Actions', value: 'actions', sortable: false },\r\n ],\r\n userAddIcon: cilUserFemalePlus,\r\n }\r\n },\r\n mounted: async function () {\r\n this.records = await (await fetch('/api/costusers/users')).json()\r\n this.loading = false\r\n },\r\n methods: {\r\n openDelete(item: Item) {\r\n this.showDeleteDialog = true\r\n this.deleteItem = item\r\n },\r\n async deleteItemOnServer(id: number) {\r\n await (\r\n await fetch(`/api/costusers/users/${id}`, {\r\n method: 'DELETE',\r\n })\r\n ).json()\r\n this.loading = true\r\n this.records = await (await fetch('/api/costusers/users')).json()\r\n this.loading = false\r\n this.showDeleteDialog = false\r\n },\r\n async userAdded() {\r\n this.loading = true\r\n this.records = await (await fetch('/api/costusers/users')).json()\r\n this.loading = false\r\n this.showAddDialog = false\r\n },\r\n },\r\n components: {\r\n ScreenTile,\r\n RemoveItemModal,\r\n CIcon,\r\n AddCostUserModal,\r\n },\r\n})\r\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./CostUserManagement.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./CostUserManagement.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./CostUserManagement.vue?vue&type=template&id=1d08324d&\"\nimport script from \"./CostUserManagement.vue?vue&type=script&lang=ts&\"\nexport * from \"./CostUserManagement.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/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\n\n/* vuetify-loader */\nimport installComponents from \"!../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VDataTable } from 'vuetify/lib/components/VDataTable';\nimport { VIcon } from 'vuetify/lib/components/VIcon';\nimport { VProgressLinear } from 'vuetify/lib/components/VProgressLinear';\ninstallComponents(component, {VDataTable,VIcon,VProgressLinear})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"login\"},[_c('h1',[_vm._v(\"Login\")]),_c('p',[_vm._v(\" This is a temporary page to allow our developers to actually log into the app without using the shared login page \")]),_c('v-btn',{on:{\"click\":_vm.login}},[_vm._v(\"Login\")])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Login.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Login.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Login.vue?vue&type=template&id=c03bc428&\"\nimport script from \"./Login.vue?vue&type=script&lang=js&\"\nexport * from \"./Login.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/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\n\n/* vuetify-loader */\nimport installComponents from \"!../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\ninstallComponents(component, {VBtn})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('ScreenTile',{attrs:{\"title\":\"Updates\",\"subTitle\":_vm.loading ? '' : _vm.formatDateFn(_vm.alert.startDate.toString())},scopedSlots:_vm._u([{key:\"buttons\",fn:function(){return [_c('button',{staticClass:\"screen-action\",on:{\"click\":_vm.markUnRead}},[_c('v-icon',[_vm._v(\"mdi-email-check-outline\")]),_vm._v(\" Mark As Unread \")],1),_c('button',{staticClass:\"screen-action\",on:{\"click\":_vm.returnToUpdateAlerts}},[_c('v-icon',[_vm._v(\"mdi-email-check-outline\")]),_vm._v(\" Return to Updates & Alerts \")],1)]},proxy:true}])},[(_vm.loading)?_c('v-progress-linear',{staticStyle:{\"margin-top\":\"10px\"},attrs:{\"indeterminate\":\"\",\"color\":\"#4A3046\"}}):_vm._e(),(!_vm.loading)?_c('v-container',{staticStyle:{\"max-width\":\"none\"}},[_c('v-row',[_c('v-col',[_c('router-link',{staticStyle:{\"font-weight\":\"bold\"},attrs:{\"to\":_vm.$route.query.from != undefined ? _vm.$route.query.from : ''}},[_vm._v(_vm._s(_vm.$route.query.from == '' ? 'Home' : 'Updates & Alerts'))]),_c('br'),_c('br'),_c('h1',[_vm._v(_vm._s(_vm.alert.title))]),_c('v-row',[_c('v-col',_vm._l((_vm.applicableTags),function(tag){return _c('v-chip',{key:tag.id,staticStyle:{\"margin-right\":\"5px\"},attrs:{\"color\":_vm.alert.tags.includes(tag.id) ? 'secondary' : null}},[_vm._v(_vm._s(tag.name)+\" \")])}),1)],1),_c('div',{staticClass:\"alert-date\"},[_vm._v(\" \"+_vm._s(_vm._f(\"formatDate\")(_vm.alert.startDate))+\" \"),(_vm.showEndDate)?_c('span',[_vm._v(\"- \"+_vm._s(_vm._f(\"formatDate\")(_vm.alert.endDate)))]):_vm._e()]),(_vm.canLoadImage)?_c('img',{attrs:{\"src\":_vm.alert.imageUrl}}):_vm._e(),_c('div',{domProps:{\"innerHTML\":_vm._s(_vm.alert.content)}})],1)],1),_c('div',{staticStyle:{\"margin-top\":\"20px\"}},[(_vm.relatedAlerts.length > 0)?_c('h4',[_vm._v(\"Related Articles\")]):_vm._e(),_c('AlertList',{attrs:{\"alerts\":_vm.relatedAlerts,\"showBorder\":false,\"showTitle\":false,\"isColumnLayout\":false,\"alertTags\":_vm.alertTags}})],1)],1):_vm._e()],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{style:(((_vm.isColumnLayout ? 'max-width:100%;' : 'width:1500px;') + \" border: solid \" + (_vm.showBorder ? 1 : 0) + \"px grey; padding: 3px\"))},[(_vm.alerts)?_c('div',{staticStyle:{\"padding\":\"20px\"}},[(_vm.showTitle && _vm.alerts.length > 0)?_c('div',[_c('h3',[_vm._v(\"Portfolio News\")])]):_vm._e()]):_vm._e(),_c('div',{staticClass:\"alert-tile-display\"},[_vm._l((_vm.alerts),function(alert){return _c('div',{key:alert.id,staticClass:\"view-body\"},[_c('AlertThumbnail',{attrs:{\"alert\":alert,\"alertTags\":_vm.alertTags},on:{\"alert-read\":_vm.markRead}})],1)}),(_vm.alerts.length === 0)?_c('div',{staticClass:\"view-body\"},[_c('AlertThumbnail',{attrs:{\"alert\":{\n id: 0,\n title: 'No News is Good News!',\n shortContent: 'Keep checking here for latest news and updates',\n tags: [],\n createdAt: new Date(),\n imageUrl: '/img/logo.jpg'\n },\"showRead\":false,\"showView\":false}})],1):_vm._e()],2)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { Vue } from 'vue-property-decorator'\r\nimport '../../styles/view-tile.css'\r\nimport AlertThumbnail from './AlertThumbnail.vue'\r\nimport IAlert from '../../viewModel/IAlert'\r\nimport { PropOptions } from 'vue'\r\nimport IAlertTag from '@/viewModel/IAlertTag'\r\nexport default Vue.extend({\r\n components: { AlertThumbnail },\r\n name: 'AlertList',\r\n props: {\r\n alerts: {\r\n type: Array,\r\n required: true,\r\n } as PropOptions,\r\n alertTags: {\r\n type: Array,\r\n required: true,\r\n } as PropOptions,\r\n showTitle: {\r\n type: Boolean,\r\n required: true,\r\n },\r\n showBorder: {\r\n type: Boolean,\r\n required: true,\r\n },\r\n isColumnLayout: {\r\n type: Boolean,\r\n required: true,\r\n },\r\n },\r\n methods: {\r\n markRead(id: number) {\r\n this.$emit('markRead', id)\r\n },\r\n },\r\n})\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AlertList.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AlertList.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./AlertList.vue?vue&type=template&id=f1610c36&\"\nimport script from \"./AlertList.vue?vue&type=script&lang=ts&\"\nexport * from \"./AlertList.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/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","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { Alerts } from '@/dataLayer/Alerts'\r\nimport IAlert from '@/viewModel/IAlert'\r\nimport AlertList from '@/components/alert/AlertList.vue'\r\nimport { Vue } from 'vue-property-decorator'\r\nimport ScreenTile from '../components/ScreenTile.vue'\r\nimport '../styles/alert-detail.css'\r\nimport Format from '@/util/Format'\r\nimport IAlertTag from '@/viewModel/IAlertTag'\r\nimport moment from 'moment'\r\n\r\nexport default Vue.extend({\r\n data: function () {\r\n return {\r\n alert: {} as IAlert,\r\n loading: true,\r\n canLoadImage: false,\r\n tagsArray: [] as string[],\r\n relatedAlerts: [] as IAlert[],\r\n alertTags: [] as IAlertTag[],\r\n formatDateFn: (strDate: string) => strDate,\r\n }\r\n },\r\n props: {\r\n id: {\r\n type: String,\r\n required: true,\r\n },\r\n },\r\n async mounted() {\r\n await this.loadAlert()\r\n await this.loadAlertTags()\r\n this.loading = false\r\n\r\n try {\r\n const canLoadImage = await fetch(this.alert.imageUrl)\r\n\r\n if (canLoadImage.ok) this.canLoadImage = true\r\n } catch {}\r\n },\r\n watch: {\r\n id: function () {\r\n this.loadAlert()\r\n },\r\n },\r\n filters: {\r\n formatDate(date) {\r\n return moment(date).format('yyyy-MM-DD')\r\n },\r\n },\r\n created() {\r\n this.formatDateFn = Format.formatDate\r\n },\r\n computed: {\r\n applicableTags: function () {\r\n return this.alertTags.filter((tag) => this.alert.tags.includes(tag.id))\r\n },\r\n\r\n showEndDate: function () {\r\n return (\r\n this.alertDate &&\r\n moment(this.alert.endDate).format('yyyy-MM-DD') !==\r\n moment(this.alert.startDate).format('yyyy-MM-DD')\r\n )\r\n },\r\n },\r\n methods: {\r\n loadAlert: async function () {\r\n this.loading = true\r\n\r\n this.alert = await Alerts.loadAlert(this.id)\r\n\r\n if(this.alert.alertRead == false)\r\n {\r\n await Alerts.markRead(this.id)\r\n }\r\n\r\n const relatedAlertsViewModel = await Alerts.loadAlerts(\r\n this.alert.tags,\r\n false,\r\n true\r\n ) // show any article that has at least 1 checkbox matching\r\n this.relatedAlerts = relatedAlertsViewModel.alerts.filter(\r\n (alert: IAlert) => alert.id !== this.alert.id\r\n )\r\n },\r\n loadAlertTags: async function () {\r\n this.alertTags = await Alerts.loadAlertTags()\r\n },\r\n markRead: async function () {\r\n await Alerts.markRead(this.alert.id)\r\n },\r\n markUnRead: async function () {\r\n await Alerts.markUnRead(this.alert.id)\r\n this.$router.push('/updates-and-alerts')\r\n },\r\n returnToUpdateAlerts() {\r\n this.$router.push('/updates-and-alerts')\r\n },\r\n },\r\n components: { ScreenTile, AlertList },\r\n})\r\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AlertDetail.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AlertDetail.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./AlertDetail.vue?vue&type=template&id=19198473&\"\nimport script from \"./AlertDetail.vue?vue&type=script&lang=ts&\"\nexport * from \"./AlertDetail.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/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\n\n/* vuetify-loader */\nimport installComponents from \"!../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VChip } from 'vuetify/lib/components/VChip';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VIcon } from 'vuetify/lib/components/VIcon';\nimport { VProgressLinear } from 'vuetify/lib/components/VProgressLinear';\nimport { VRow } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VChip,VCol,VContainer,VIcon,VProgressLinear,VRow})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('ScreenTile',{attrs:{\"title\":\"Reinsurance Resources\",\"subTitle\":\"Agent Portal\"}},[_c('div',{staticStyle:{\"width\":\"100%\"}},[_c('v-text-field',{staticClass:\"search-box\",attrs:{\"hint\":\"You can search by name\",\"label\":\"Search\"},on:{\"input\":_vm.debounceSearch}}),_c('div',[_c('Breadcrumbs',{attrs:{\"routes\":_vm.routes},on:{\"click\":_vm.recurseUpTo}})],1)],1),(_vm.loading)?_c('v-progress-linear',{attrs:{\"indeterminate\":\"\",\"color\":\"#4A3046\"}}):_vm._e(),_c('div',{staticClass:\"tile-display\"},[(_vm.filteredReinsuranceResources.length === 0 && !_vm.loading)?_c('div',{staticClass:\"empty-directory\"},[_vm._v(\" This directory is empty \")]):_vm._e(),_vm._l((_vm.filteredSortedReinsuranceResources),function(curResource){return _c('div',{key:curResource.id},[(curResource.isDirectory)?_c('ResourceDirectoryTile',{attrs:{\"title\":curResource.name,\"path\":(_vm.currentPath + '/' + curResource.name).replace('//', '/'),\"favorite\":!!curResource.favorite,\"favoriteId\":curResource.favorite ? curResource.favorite.id : null,\"numberOfDocuments\":curResource.numberOfChildren},on:{\"view-click\":function($event){return _vm.descendIntoDirectory(curResource.name)},\"toggle-favorite\":_vm.toggleFavorite}}):_vm._e()],1)})],2),_c('div',[_c('ul',_vm._l((_vm.filteredSortedReinsuranceResourcesFiles),function(curResource){return _c('li',{key:curResource.name},[_c('ResourceRow',{attrs:{\"path\":curResource.path ? curResource.path.replace('//', '/') : '',\"title\":curResource.name,\"favoriteId\":curResource.favorite ? curResource.favorite.id : null,\"favorite\":!!curResource.favorite,\"isAdministrator\":_vm.user.isAdministrator},on:{\"view-click\":function () { return _vm.openDocument(curResource); },\"toggle-favorite\":_vm.toggleFavorite}})],1)}),0)])],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport '../styles/agent-resources.css'\r\nimport { Vue } from 'vue-property-decorator'\r\n\r\nimport ScreenTile from '../components/ScreenTile.vue'\r\nimport ResourceRow from '../components/ResourceRow.vue'\r\nimport ResourceDirectoryTile from '../components/ResourceDirectoryTile.vue'\r\nimport Breadcrumbs from '../components/general/Breadcrumbs.vue'\r\nimport * as _ from 'lodash'\r\n\r\nimport { mapState } from 'vuex'\r\n\r\ninterface IFavorite {\r\n id: number\r\n username: string\r\n reinsruanceResourcePath: string\r\n}\r\n\r\ninterface IReinsuranceResource {\r\n name: string\r\n numberOfChildren: number\r\n favorite?: { id: number; reinsruanceResourcePath: string }\r\n path: string\r\n}\r\n\r\ninterface IModel {\r\n loading: boolean\r\n searchText: string\r\n reinsuranceResources: IReinsuranceResource[]\r\n favorites: IFavorite[]\r\n routes: any[]\r\n currentPath: string\r\n}\r\n\r\nexport default Vue.extend({\r\n data: function (): IModel {\r\n return {\r\n loading: true,\r\n favorites: [] as IFavorite[],\r\n reinsuranceResources: [] as IReinsuranceResource[],\r\n searchText: '',\r\n routes: [{ id: '', name: 'Reinsurance Resources' }] as {\r\n id: string | undefined\r\n name: string\r\n }[],\r\n currentPath: '/',\r\n }\r\n },\r\n methods: {\r\n debounceSearch: _.debounce(function (searchText) {\r\n this.search(searchText)\r\n }, 500),\r\n recurseUpTo: async function (path: string) {\r\n this.loading = true\r\n\r\n const indexOfRoute = this.routes.findIndex((x) => x.id === path)\r\n this.routes = this.routes.slice(0, indexOfRoute + 1)\r\n\r\n this.reinsuranceResources = await (\r\n await fetch(`/api/reinsuranceresources?path=${encodeURIComponent(path)}`)\r\n ).json()\r\n\r\n this.currentPath = path\r\n this.loading = false\r\n },\r\n search: async function (searchText: string) {\r\n this.reinsuranceResources = []\r\n this.loading = true\r\n if (searchText === '')\r\n this.reinsuranceResources = await (\r\n await fetch(`/api/reinsuranceresources?path=${encodeURIComponent(this.currentPath)}`)\r\n ).json()\r\n else\r\n this.reinsuranceResources = await (\r\n await fetch(`/api/reinsuranceresources/search?search=${encodeURIComponent(searchText)}¤tPath=${encodeURIComponent(this.currentPath)}`)\r\n ).json()\r\n this.loading = false\r\n },\r\n descendIntoDirectory: async function (name: string) {\r\n this.loading = true\r\n const newPath = (this.currentPath + '/').replace('//', '/') + name\r\n this.routes.push({\r\n id: newPath,\r\n name: name ?? '',\r\n })\r\n this.$router.push({\r\n name: 'Reinsurance Resources',\r\n params: { path: newPath },\r\n })\r\n this.currentPath = newPath\r\n this.reinsuranceResources = await (\r\n await fetch(`/api/reinsuranceresources?path=${encodeURIComponent(newPath)}`)\r\n ).json()\r\n\r\n this.loading = false\r\n },\r\n openDocument: async function (document: { path: string }) {\r\n let path = document.path\r\n if(path.startsWith('/')){\r\n path = path.substring(1)\r\n }\r\n const encodedPath = encodeURIComponent(path)\r\n window.open(\r\n `/api/reinsuranceresources/download?path=${encodedPath}`\r\n )\r\n },\r\n\r\n toggleFavorite: async function (params: {\r\n favoriteId?: number\r\n path?: string\r\n }) {\r\n if (params.favoriteId) {\r\n const response = await fetch(`/api/favorites/${params.favoriteId}`, {\r\n method: 'DELETE',\r\n })\r\n\r\n if (response.ok)\r\n this.favorites = this.favorites.filter(\r\n (favorite: IFavorite) => favorite.id !== params.favoriteId\r\n )\r\n } else if (params.path) {\r\n const response = await fetch('/api/favorites', {\r\n method: 'POST',\r\n body: JSON.stringify({\r\n reinsruanceResourcePath: params.path,\r\n }),\r\n headers: {\r\n 'Content-type': 'application/json; charset=UTF-8',\r\n },\r\n })\r\n\r\n if (response.ok) this.favorites.push(await response.json())\r\n }\r\n },\r\n },\r\n computed: {\r\n reinsuranceResourcesWithFavorites(): IReinsuranceResource[] {\r\n return this.reinsuranceResources.map(\r\n (mdresource: IReinsuranceResource) => {\r\n const favorite = this.favorites.find(\r\n (favorite: IFavorite) =>\r\n favorite.reinsruanceResourcePath ===\r\n `${this.currentPath}/${mdresource.name}`.replace('//', '/')\r\n )\r\n\r\n return { ...mdresource, favorite: favorite ?? null }\r\n }\r\n )\r\n },\r\n filteredReinsuranceResources(): IReinsuranceResource[] {\r\n if (this.searchText)\r\n return this.reinsuranceResourcesWithFavorites.filter((x) =>\r\n x.name?.toLowerCase()?.includes(this.searchText?.toLowerCase())\r\n )\r\n\r\n return this.reinsuranceResourcesWithFavorites\r\n },\r\n filteredSortedReinsuranceResources(): IReinsuranceResource[] {\r\n return this.filteredReinsuranceResources; // Resources are being sorted API-side. \r\n },\r\n\r\n filteredSortedReinsuranceResourcesFiles(): IReinsuranceResource[] {\r\n return this.filteredSortedReinsuranceResources.filter(\r\n (x) => !x.isDirectory\r\n )\r\n },\r\n ...mapState(['user']),\r\n },\r\n mounted: async function () {\r\n if (this.$attrs.path) {\r\n this.currentPath = this.$attrs.path || '/'\r\n let accumulator = ''\r\n for (const segment of this.currentPath\r\n .split('/')\r\n .filter((x) => x.length > 0)) {\r\n accumulator += '/' + segment\r\n this.routes.push({ id: accumulator, name: segment })\r\n }\r\n }\r\n this.reinsuranceResources = await (this.currentPath\r\n ? await fetch(`/api/reinsuranceresources?path=${encodeURIComponent(this.currentPath)}`)\r\n : await fetch(`/api/reinsuranceresources`)\r\n ).json()\r\n this.favorites = await (\r\n await fetch(\r\n '/api/favorites?' +\r\n new URLSearchParams({ reinsuranceResourcesOnly: 'true' })\r\n )\r\n ).json()\r\n this.loading = false\r\n },\r\n components: {\r\n ScreenTile,\r\n ResourceDirectoryTile,\r\n ResourceRow,\r\n Breadcrumbs,\r\n },\r\n})\r\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ReinsuranceResources.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ReinsuranceResources.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ReinsuranceResources.vue?vue&type=template&id=60148602&\"\nimport script from \"./ReinsuranceResources.vue?vue&type=script&lang=ts&\"\nexport * from \"./ReinsuranceResources.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/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\n\n/* vuetify-loader */\nimport installComponents from \"!../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VProgressLinear } from 'vuetify/lib/components/VProgressLinear';\nimport { VTextField } from 'vuetify/lib/components/VTextField';\ninstallComponents(component, {VProgressLinear,VTextField})\n","import Vuex from 'vuex'\r\nimport Vue from 'vue'\r\n\r\nVue.use(Vuex)\r\nconst store = new Vuex.Store({\r\n state: {\r\n user: {\r\n name: undefined,\r\n fullName: undefined,\r\n isAdministrator: false,\r\n canAccessMdResources: false,\r\n },\r\n },\r\n mutations: {\r\n setUser(state, user) {\r\n state.user = user\r\n },\r\n },\r\n})\r\n\r\nexport default store\r\n","import Vue from 'vue'\r\nimport VueRouter, { RouteConfig } from 'vue-router'\r\nimport Home from '../views/Home.vue'\r\nimport Favorites from '../views/favorite/Favorites.vue'\r\nimport Proposals from '../views/Proposals.vue'\r\nimport MDResources from '../views/MDResources.vue'\r\nimport AgentResources from '../views/AgentResources.vue'\r\nimport Reports from '../views/Reports.vue'\r\nimport ShipmentsToDealers from '../views/ShipmentsToDealers.vue'\r\nimport UpdatesAndAlerts from '../views/UpdatesAndAlerts.vue'\r\nimport IConWebsite from '../views/IConWebsite.vue'\r\nimport RemittanceCloseCalendar from '../views/RemittanceCloseCalendar.vue'\r\nimport ReportView from '../views/ReportView.vue'\r\nimport AdminManagement from '../views/AdminManagement.vue'\r\nimport CostUserManagement from '../views/CostUserManagement.vue'\r\nimport Login from '../views/Login.vue'\r\nimport AlertDetail from '../views/AlertDetail.vue'\r\nimport ReinsuranceResources from '../views/ReinsuranceResources.vue'\r\nimport store from '../store'\r\nimport ICS from '@inventivegroup/vue-ics'\r\nimport { urlHelper } from \"../util/UrlHelper\"\r\n\r\nVue.use(VueRouter)\r\nVue.use(ICS, {})\r\n\r\nconst routes: Array = [\r\n {\r\n path: '/',\r\n name: 'Home',\r\n component: Home,\r\n },\r\n {\r\n path: '/login',\r\n name: 'Login',\r\n component: Login,\r\n meta: {\r\n public: true,\r\n },\r\n },\r\n {\r\n path: '/favorites',\r\n name: 'Favorites',\r\n component: Favorites,\r\n },\r\n {\r\n path: '/proposals',\r\n name: 'Proposals',\r\n component: Proposals,\r\n },\r\n {\r\n path: '/md-resources/:directoryId?',\r\n name: 'MD Resources',\r\n component: MDResources,\r\n props: (route) => ({\r\n ...route.params,\r\n }),\r\n },\r\n {\r\n path: '/reinsurance-resources/:path?',\r\n name: 'Reinsurance Resources',\r\n component: ReinsuranceResources,\r\n props: (route) => ({\r\n ...route.params,\r\n }),\r\n },\r\n\r\n {\r\n path: '/agent-resources/:directoryId?',\r\n name: 'Agent Resources',\r\n component: AgentResources,\r\n props: (route) => ({\r\n ...route.params,\r\n }),\r\n },\r\n {\r\n path: '/reports',\r\n name: 'ReportList',\r\n component: Reports,\r\n },\r\n {\r\n path: '/reports/:reportId/:reportName/:favorite',\r\n name: 'Reports',\r\n component: ReportView,\r\n props: (route) => ({\r\n ...route.params,\r\n favorite: route.params.favorite === 'true',\r\n }),\r\n },\r\n {\r\n path: '/shipments-to-dealers',\r\n name: 'Shipments to Dealers',\r\n component: ShipmentsToDealers,\r\n },\r\n {\r\n path: '/updates-and-alerts',\r\n name: 'Updates & Alerts',\r\n component: UpdatesAndAlerts,\r\n },\r\n {\r\n path: '/icon-website',\r\n name: 'iCon Website',\r\n component: IConWebsite,\r\n },\r\n {\r\n path: '/remittance-close-calendar',\r\n name: 'Remittance Close Calendar',\r\n component: RemittanceCloseCalendar,\r\n },\r\n {\r\n path: '/AlertDetail/:id',\r\n name: 'Alert Detail',\r\n component: AlertDetail,\r\n props: true,\r\n },\r\n {\r\n path: '/admins',\r\n name: 'Admin Management',\r\n component: AdminManagement,\r\n meta: {\r\n admin: true,\r\n },\r\n },\r\n {\r\n path: '/costUsers',\r\n name: 'Cost User Management',\r\n component: CostUserManagement,\r\n meta: {\r\n admin: true,\r\n },\r\n },\r\n {\r\n path: '/about',\r\n name: 'About',\r\n // route level code-splitting\r\n // this generates a separate chunk (about.[hash].js) for this route\r\n // which is lazy-loaded when the route is visited.\r\n component: () =>\r\n import(/* webpackChunkName: \"about\" */ '../views/About.vue'),\r\n },\r\n]\r\n\r\nconst router = new VueRouter({\r\n mode: 'history',\r\n base: process.env.BASE_URL,\r\n routes\r\n})\r\n\r\nfunction isInDebug() {\r\n return !!(window as any).webpackHotUpdate\r\n}\r\n\r\nrouter.beforeEach((to, from, next) => {\r\n if (!to.meta) next()\r\n else if (to.meta.public) next()\r\n else if (to.meta.admin && store.state.user.isAdministrator) next()\r\n else if (to.meta.admin && !store.state.user.isAdministrator) {\r\n if (isInDebug()) {\r\n next({ name: 'Login' })\r\n } else {\r\n window.location.href = \"/\"\r\n }\r\n } else if (document.cookie.includes('APAUTH')) next()\r\n else {\r\n if (isInDebug()) {\r\n next({ name: 'Login' })\r\n } else {\r\n window.location.href = urlHelper.getApplicationUrl(\"login\",\"?ReturnUrl=\" + urlHelper.getApplicationUrl(\"agents\", window.location.pathname))\r\n }\r\n }\r\n})\r\n\r\nexport default router\r\n","import Vue from 'vue'\r\nimport Vuetify from 'vuetify/lib/framework'\r\n\r\nVue.use(Vuetify)\r\n\r\nexport default new Vuetify({})\r\n","import Vue from 'vue'\r\nimport App from './App.vue'\r\nimport router from './router'\r\nimport vuetify from './plugins/vuetify'\r\nimport store from './store'\r\nimport './registerServiceWorker'\r\n\r\nVue.config.productionTip = false\r\nfunction createApp() {\r\n new Vue({\r\n router,\r\n store,\r\n vuetify,\r\n render: (h) => h(App),\r\n }).$mount('#app')\r\n}\r\n\r\ntry {\r\n if (document.cookie.includes('APAUTH')) {\r\n fetch('/api/me').then((x) =>\r\n x.json().then((user) => {\r\n store.commit('setUser', user)\r\n createApp()\r\n })\r\n )\r\n } else {\r\n createApp()\r\n }\r\n} catch {\r\n createApp()\r\n}\r\n","/* eslint-disable no-console */\r\n\r\nimport { register } from 'register-service-worker'\r\n\r\nif (process.env.NODE_ENV === 'production') {\r\n register(`${process.env.BASE_URL}service-worker.js`, {\r\n ready() {\r\n console.log(\r\n 'App is being served from cache by a service worker.\\n' +\r\n 'For more details, visit https://goo.gl/AFskqB'\r\n )\r\n },\r\n registered() {\r\n console.log('Service worker has been registered.')\r\n },\r\n cached() {\r\n console.log('Content has been cached for offline use.')\r\n },\r\n updatefound() {\r\n console.log('New content is downloading.')\r\n },\r\n updated() {\r\n console.log('New content is available; please refresh.')\r\n },\r\n offline() {\r\n console.log(\r\n 'No internet connection found. App is running in offline mode.'\r\n )\r\n },\r\n error(error) {\r\n console.error('Error during service worker registration:', error)\r\n },\r\n })\r\n}\r\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\tid: moduleId,\n\t\tloaded: false,\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Flag the module as loaded\n\tmodule.loaded = true;\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","var deferred = [];\n__webpack_require__.O = function(result, chunkIds, fn, priority) {\n\tif(chunkIds) {\n\t\tpriority = priority || 0;\n\t\tfor(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];\n\t\tdeferred[i] = [chunkIds, fn, priority];\n\t\treturn;\n\t}\n\tvar notFulfilled = Infinity;\n\tfor (var i = 0; i < deferred.length; i++) {\n\t\tvar chunkIds = deferred[i][0];\n\t\tvar fn = deferred[i][1];\n\t\tvar priority = deferred[i][2];\n\t\tvar fulfilled = true;\n\t\tfor (var j = 0; j < chunkIds.length; j++) {\n\t\t\tif ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every(function(key) { return __webpack_require__.O[key](chunkIds[j]); })) {\n\t\t\t\tchunkIds.splice(j--, 1);\n\t\t\t} else {\n\t\t\t\tfulfilled = false;\n\t\t\t\tif(priority < notFulfilled) notFulfilled = priority;\n\t\t\t}\n\t\t}\n\t\tif(fulfilled) {\n\t\t\tdeferred.splice(i--, 1)\n\t\t\tvar r = fn();\n\t\t\tif (r !== undefined) result = r;\n\t\t}\n\t}\n\treturn result;\n};","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = function(module) {\n\tvar getter = module && module.__esModule ?\n\t\tfunction() { return module['default']; } :\n\t\tfunction() { return module; };\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = function(exports, definition) {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.f = {};\n// This file contains only the entry chunk.\n// The chunk loading function for additional chunks\n__webpack_require__.e = function(chunkId) {\n\treturn Promise.all(Object.keys(__webpack_require__.f).reduce(function(promises, key) {\n\t\t__webpack_require__.f[key](chunkId, promises);\n\t\treturn promises;\n\t}, []));\n};","// This function allow to reference async chunks\n__webpack_require__.u = function(chunkId) {\n\t// return url for filenames based on template\n\treturn \"js/\" + \"about\" + \".\" + \"74c5529d\" + \".js\";\n};","// This function allow to reference async chunks\n__webpack_require__.miniCssF = function(chunkId) {\n\t// return url for filenames based on template\n\treturn undefined;\n};","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }","var inProgress = {};\nvar dataWebpackPrefix = \"agent-portal:\";\n// loadScript function to load a script via script tag\n__webpack_require__.l = function(url, done, key, chunkId) {\n\tif(inProgress[url]) { inProgress[url].push(done); return; }\n\tvar script, needAttach;\n\tif(key !== undefined) {\n\t\tvar scripts = document.getElementsByTagName(\"script\");\n\t\tfor(var i = 0; i < scripts.length; i++) {\n\t\t\tvar s = scripts[i];\n\t\t\tif(s.getAttribute(\"src\") == url || s.getAttribute(\"data-webpack\") == dataWebpackPrefix + key) { script = s; break; }\n\t\t}\n\t}\n\tif(!script) {\n\t\tneedAttach = true;\n\t\tscript = document.createElement('script');\n\n\t\tscript.charset = 'utf-8';\n\t\tscript.timeout = 120;\n\t\tif (__webpack_require__.nc) {\n\t\t\tscript.setAttribute(\"nonce\", __webpack_require__.nc);\n\t\t}\n\t\tscript.setAttribute(\"data-webpack\", dataWebpackPrefix + key);\n\t\tscript.src = url;\n\t}\n\tinProgress[url] = [done];\n\tvar onScriptComplete = function(prev, event) {\n\t\t// avoid mem leaks in IE.\n\t\tscript.onerror = script.onload = null;\n\t\tclearTimeout(timeout);\n\t\tvar doneFns = inProgress[url];\n\t\tdelete inProgress[url];\n\t\tscript.parentNode && script.parentNode.removeChild(script);\n\t\tdoneFns && doneFns.forEach(function(fn) { return fn(event); });\n\t\tif(prev) return prev(event);\n\t}\n\t;\n\tvar timeout = setTimeout(onScriptComplete.bind(null, undefined, { type: 'timeout', target: script }), 120000);\n\tscript.onerror = onScriptComplete.bind(null, script.onerror);\n\tscript.onload = onScriptComplete.bind(null, script.onload);\n\tneedAttach && document.head.appendChild(script);\n};","// define __esModule on exports\n__webpack_require__.r = function(exports) {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","__webpack_require__.nmd = function(module) {\n\tmodule.paths = [];\n\tif (!module.children) module.children = [];\n\treturn module;\n};","__webpack_require__.p = \"/\";","// no baseURI\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t143: 0\n};\n\n__webpack_require__.f.j = function(chunkId, promises) {\n\t\t// JSONP chunk loading for javascript\n\t\tvar installedChunkData = __webpack_require__.o(installedChunks, chunkId) ? installedChunks[chunkId] : undefined;\n\t\tif(installedChunkData !== 0) { // 0 means \"already installed\".\n\n\t\t\t// a Promise means \"currently loading\".\n\t\t\tif(installedChunkData) {\n\t\t\t\tpromises.push(installedChunkData[2]);\n\t\t\t} else {\n\t\t\t\tif(true) { // all chunks have JS\n\t\t\t\t\t// setup Promise in chunk cache\n\t\t\t\t\tvar promise = new Promise(function(resolve, reject) { installedChunkData = installedChunks[chunkId] = [resolve, reject]; });\n\t\t\t\t\tpromises.push(installedChunkData[2] = promise);\n\n\t\t\t\t\t// start chunk loading\n\t\t\t\t\tvar url = __webpack_require__.p + __webpack_require__.u(chunkId);\n\t\t\t\t\t// create error before stack unwound to get useful stacktrace later\n\t\t\t\t\tvar error = new Error();\n\t\t\t\t\tvar loadingEnded = function(event) {\n\t\t\t\t\t\tif(__webpack_require__.o(installedChunks, chunkId)) {\n\t\t\t\t\t\t\tinstalledChunkData = installedChunks[chunkId];\n\t\t\t\t\t\t\tif(installedChunkData !== 0) installedChunks[chunkId] = undefined;\n\t\t\t\t\t\t\tif(installedChunkData) {\n\t\t\t\t\t\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n\t\t\t\t\t\t\t\tvar realSrc = event && event.target && event.target.src;\n\t\t\t\t\t\t\t\terror.message = 'Loading chunk ' + chunkId + ' failed.\\n(' + errorType + ': ' + realSrc + ')';\n\t\t\t\t\t\t\t\terror.name = 'ChunkLoadError';\n\t\t\t\t\t\t\t\terror.type = errorType;\n\t\t\t\t\t\t\t\terror.request = realSrc;\n\t\t\t\t\t\t\t\tinstalledChunkData[1](error);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t};\n\t\t\t\t\t__webpack_require__.l(url, loadingEnded, \"chunk-\" + chunkId, chunkId);\n\t\t\t\t} else installedChunks[chunkId] = 0;\n\t\t\t}\n\t\t}\n};\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n__webpack_require__.O.j = function(chunkId) { return installedChunks[chunkId] === 0; };\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = function(parentChunkLoadingFunction, data) {\n\tvar chunkIds = data[0];\n\tvar moreModules = data[1];\n\tvar runtime = data[2];\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tif(chunkIds.some(function(id) { return installedChunks[id] !== 0; })) {\n\t\tfor(moduleId in moreModules) {\n\t\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t\t}\n\t\t}\n\t\tif(runtime) var result = runtime(__webpack_require__);\n\t}\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkId] = 0;\n\t}\n\treturn __webpack_require__.O(result);\n}\n\nvar chunkLoadingGlobal = self[\"webpackChunkagent_portal\"] = self[\"webpackChunkagent_portal\"] || [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","// startup\n// Load entry module and return exports\n// This entry module depends on other loaded chunks and execution need to be delayed\nvar __webpack_exports__ = __webpack_require__.O(undefined, [998], function() { return __webpack_require__(5342); })\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["module","exports","methods","login","cookieValue","document","cookie","window","location","href","replace","map","webpackContext","req","id","webpackContextResolve","__webpack_require__","o","e","Error","code","keys","Object","resolve","render","_vm","this","_h","$createElement","_c","_self","isMobile","_e","attrs","staticClass","urls","dashboard","staticStyle","_v","_s","user","fullName","split","scopedSlots","_u","key","fn","ref","on","_g","_b","icons","dropDown","_l","getNavigationLinks","item","index","dropDownMenuChange","$event","stopPropagation","drawer","model","value","callback","$$v","expression","sideMenuUserOpen","home","mini","favorite","mdResources","reinsuranceResources","agentResources","reports","reportcenter","shipments","updates","econtracting","store","estore","contacts","calendar","externalLinks","url","university","name","claims","iconSite","rateCard","repairedForLife","staticRenderFns","route","undefined","icon","iconImage","title","menuOpen","closeMenuIcon","openMenuIcon","links","link","image","data","linkIcon","c","props","type","String","required","Array","components","CIcon","component","VListItemContent","UrlHelper","getApplicationUrl","appName","queryString","urlHelper","computed","innerWidth","MenuTile","proposal","iconWebsite","contracts","logout","contractLookup","isAdministrator","event","forEach","Date","toUTCString","$router","push","VApp","tabs","tabModel","$emit","subTitle","_t","children","tag","beforeMount","tab","default","actionText","VSheet","loading","detailedError","mounted","async","tokenRequest","fetch","ok","token","json","permissions","powerbi","models","Permissions","All","config","visualName","accessToken","embedUrl","tokenType","TokenType","Embed","settings","panes","filters","visible","pageNavigation","embedder","service","Service","factories","hpmFactory","wpmpFactory","routerFactory","el","querySelector","embed","message","JSON","parse","text","powerBIErrorMessage","ScreenTile","DefaultDashBoard","VProgressLinear","openMDDocument","removeFavorite","openAgentDocument","openReinsuranceResource","mdresourceFavorites","length","imageUrl","createdDate","favoriteId","removeFavoriteDocument","fileIcon","searchPath","toLocaleDateString","year","month","day","onEditClick","editIcon","onDeleteClick","deleteIcon","onFavoriteClick","favoritedStarIcon","standardStarIcon","onViewClick","usePlaceholder","Number","Boolean","canLoadImage","preventDefault","URLSearchParams","isDirectory","x","filter","mdrf","DocumentTile","agentresourceFavorites","description","domProps","agentrf","ResourceTile","currentPath","favoriteIcon","numberOfChildren","descendIntoDirectory","path","toggleFavorite","folderIcon","routes","newPath","params","ResourceDirectoryTile","method","canOpenResource","resourceLink","open","console","log","fileName","includes","canAccessMdResources","MDDocumentsTab","AgentResourcesTab","ReinsuranceResourcesTab","VTab","viewItem","showModal","addIcon","proxy","assign","selectedDocuments","proposalDocuments","pd","documentId","source","upsertProposal","showRemoveModal","removeItem","removeProposal","showPendingChangeModal","changeView","confirmChange","producing","produce","updateOrder","currentTab","hasReorderedDocuments","proposalDocument","openDocument","updatedDate","isDocument","formatDate","createdAt","updatedAt","documentsCount","date","format","history","productionDate","histories","fromNow","refresh","VCol","trashIcon","Modal","ModalBody","close","exitIcon","editMode","imageData","selectFile","cameraIcon","titleErrors","$v","$touch","titleModel","class","documents","selectDocument","find","sd","SDocument","saving","submit","IDocumentSource","isRoot","folder","mixins","validations","errors","watch","val","populateMDResources","populateAgentResources","updated","$refs","fileinput","onchange","files","file","URL","createObjectURL","pullDocuments","compiledDocuments","resources","resource","MDResource","AgentResource","existingDocument","$invalid","result","body","stringify","headers","uploadImageUrl","errorMessage","click","$reset","tabDocuments","vueInstance","activeDocuments","get","set","SmallDisplay","Folder","ProposalTile","UpsertProposalModal","RemoveItemModal","PendingChangeModal","draggable","ProposalHistory","loadingDetails","proposals","originalOrder","areDocumentInOriginalOrder","isSameOrder","oOPD","cOPD","propHistory","addResource","mdresourceAddIcon","resetResources","mdresourceResetIcon","onSearch","searchText","recurseUpTo","updateType","parentId","editItem","resourceAdded","showDeleteModal","deleteItem","deleteItemOnServer","showResetModal","resetResourcesOnServer","filteredMDResources","curResource","deleteResource","editResource","toString","imageIcon","nameErrors","resourceFile","toLowerCase","endsWith","err","add","immediate","deep","handler","imagefileinput","isZipFile","uploadResourceLink","$error","VAlert","onClick","$listeners","favorites","mdresources","onSearchId","loadResources","indexOfRoute","findIndex","slice","mdResource","idArr","searchIdPath","pathArr","i","directoryId","response","mddocumentId","clearTimeout","setTimeout","mdResourcesWithFavorites","mdresource","filteredSortedMDResources","sort","a","b","localeCompare","$attrs","parseInt","mddocumentsOnly","ResourceRow","AddMDResourceModal","Breadcrumbs","agentresourceAddIcon","agentresourceResetIcon","showAddModal","filteredSortedAgentResources","lastUpdatedDate","getFavoriteId","getFavorite","this$1","descriptionErrors","AddAgentResourceModal","numColumns","agentResourcesOnly","filteredAgentResources","agentResourceId","agentResource","getReports","loadReport","category","clickCategory","categories","openModal","VImg","showExitButton","Function","categoriesList","finalList","scrollTo","CategoryLink","ModalHeader","CategoryTile","report","from","Set","reportGroup","startsWith","slot","shipmentId","accountName","shipToName","trackingNumber","getTrackingUrl","shipmentDate","pages","page","_m","trackingUrl","orderNumber","dealerName","carrier","ShipmentTile","pageSize","created","shipmentMethodUsed","filteredShipments","pagedShipments","Math","ceil","VIcon","showAddAlert","alertAddIcon","filteredTags","toggleTag","showAdmin","showAllAlerts","alertTags","showEditModal","showCreateModal","editAlert","onCreateModalClosed","alerts","_f","startDate","endDate","startDisplayingOn","stopDisplayingOn","closeRemoveModal","deleteAlert","showRemoveErrorModal","closeOkModal","Alerts","static","tagsArray","flags","curTagValue","tags","matchAllTags","onlyUnread","append","join","status","statusText","OkModal","isAdmin","loadData","$root","$on","convertToTags","tagItems","y","viewModel","loadAlerts","alert","VDataTable","curAlert","shortContent","t","getFromUrl","nativeOn","scrollToTop","apply","arguments","arrowIcon","directives","rawName","alertRead","markRead","formatDateFn","strDate","Format","showRead","showView","showEndDate","alertDate","$route","reload","VCard","AlertThumbnail","showAll","alertProp","onFilePicked","startDateErrors","displayOnCalendar","durationInDaysErrors","durationInDays","_n","content","imageHeight","imageWidth","toFixed","fileSelectionChanged","xIcon","img","Image","setDimensions","onload","me","width","height","src","label","menu","minDate","toISOString","save","substr","now","getTimezoneOffset","VBtn","modules","toolbar","header","list","align","handleInput","quillEditor","html","integer","minValue","curDate","curDateStr","substring","addToCalendar","createdAlert","resetData","contentErrors","propertyName","ImagePicker","DatePicker","QuillEditor","AdminAlertList","AddAlertModal","UserAlertList","loadAlertTags","tagValue","toggleTagFlag","evt","showAllToggle","VChip","showAdd","calendarAddIcon","exportToPDF","pdfIcon","addEditType","selectedEvent","getEvents","setToday","prev","next","toLocaleString","getFullYear","typeToLabel","group","monthName","start","entry","style","color","details","events","showEvent","viewDay","focus","selectedElement","selectedOpen","exportToICS","downloadIcon","showEdit","deleteEvent","categoryErrors","populateTypes","selectedCategory","types","typeErrors","eventTypeId","selected","editEvent","categoryId","end","typeId","$dirty","maxLength","$params","max","AddEventModal","week","colors","updateTimes","eventsAfterToday","getTime","eventGroupsAfterToday","getMonth","serverEvents","timed","today","today_year","today_month","today_day","getDate","todayFormatted","$ics","removeAllEvents","localStart","setMinutes","getMinutes","localEnd","addEvent","download","nativeEvent","target","requestAnimationFrame","reportId","reportName","favoriteOverride","favoriteStatus","showAddDialog","userAddIcon","records","openDelete","showDeleteDialog","userAdded","items","search","selectedItem","contactEmail","email","sortable","AddAdminUserModal","AddCostUserModal","markUnRead","returnToUpdateAlerts","query","relatedAlerts","isColumnLayout","showBorder","showTitle","loadAlert","applicableTags","relatedAlertsViewModel","AlertList","debounceSearch","filteredReinsuranceResources","encodeURIComponent","encodedPath","reinsruanceResourcePath","reinsuranceResourcesWithFavorites","filteredSortedReinsuranceResources","filteredSortedReinsuranceResourcesFiles","accumulator","segment","reinsuranceResourcesOnly","state","mutations","setUser","Home","Login","meta","public","Favorites","Proposals","MDResources","ReinsuranceResources","AgentResources","Reports","ReportView","ShipmentsToDealers","UpdatesAndAlerts","IConWebsite","RemittanceCloseCalendar","AlertDetail","AdminManagement","admin","CostUserManagement","router","mode","base","isInDebug","webpackHotUpdate","beforeEach","to","pathname","createApp","vuetify","h","App","$mount","ready","registered","cached","updatefound","offline","error","then","__webpack_module_cache__","moduleId","cachedModule","loaded","__webpack_modules__","call","m","deferred","O","chunkIds","priority","notFulfilled","Infinity","fulfilled","j","every","splice","r","n","getter","__esModule","d","definition","defineProperty","enumerable","f","chunkId","Promise","all","reduce","promises","u","miniCssF","g","globalThis","obj","prop","prototype","hasOwnProperty","inProgress","dataWebpackPrefix","l","done","script","needAttach","scripts","getElementsByTagName","s","getAttribute","createElement","charset","timeout","nc","setAttribute","onScriptComplete","onerror","doneFns","parentNode","removeChild","bind","head","appendChild","Symbol","toStringTag","nmd","paths","p","installedChunks","installedChunkData","promise","reject","loadingEnded","errorType","realSrc","request","webpackJsonpCallback","parentChunkLoadingFunction","moreModules","runtime","some","chunkLoadingGlobal","self","__webpack_exports__"],"sourceRoot":""}
\r\n This is a temporary page to allow our developers to actually log into the\r\n app without using the shared login page\r\n