{"version":3,"sources":["webpack:///./src/components/menus/Links/index.vue?3274","webpack:///./src/utilities/Date/parse.js","webpack:///./src/pages/Shared/violations/Details/tabs/conversations/List.vue?9f5a","webpack:///./src/pages/Shared/violations/Details/tabs/conversations/keys/methods.js","webpack:///./src/pages/Shared/violations/Details/tabs/conversations/keys/data.js","webpack:///src/pages/Shared/violations/Details/tabs/conversations/List.vue","webpack:///./src/pages/Shared/violations/Details/tabs/conversations/List.vue?ba7f","webpack:///./src/pages/Shared/violations/Details/tabs/conversations/List.vue","webpack:///./src/pages/Management/violations/Main/index.vue?8d1c","webpack:///./src/pages/Management/violations/Reporter/index.vue?48c0","webpack:///./src/pages/Management/violations/Reporter/components/Owner/index.vue?c375","webpack:///./src/pages/Management/violations/Reporter/components/Owner/keys/data.js","webpack:///./src/services/ViolationIssue/Violation/store.js","webpack:///./src/pages/Management/violations/Reporter/components/Owner/keys/methods.js","webpack:///./src/pages/Management/violations/Reporter/components/Owner/keys/mounted.js","webpack:///./src/services/Violation/ViolationType/List.js","webpack:///./src/services/ViolationIssue/Violation/CreateViolationActionStepOccurrence.js","webpack:///./src/services/ViolationIssue/Violation/CreateViolationReportOccurrence.js","webpack:///./src/pages/Management/violations/Reporter/store.js","webpack:///./src/pages/Management/violations/Reporter/components/Owner/keys/watch.js","webpack:///src/pages/Management/violations/Reporter/components/Owner/index.vue","webpack:///./src/pages/Management/violations/Reporter/components/Owner/index.vue?5e92","webpack:///./src/pages/Management/violations/Reporter/components/Owner/index.vue","webpack:///./src/pages/Management/violations/Reporter/components/Occurence/index.vue?7740","webpack:///./src/pages/Management/violations/Reporter/components/Occurence/keys/computed.js","webpack:///./src/pages/Management/violations/Reporter/components/Occurence/keys/data.js","webpack:///./src/pages/Management/violations/Reporter/components/Occurence/keys/methods.js","webpack:///./src/pages/Management/violations/Reporter/components/Occurence/keys/props.js","webpack:///./src/pages/Management/violations/Reporter/components/Occurence/keys/watch.js","webpack:///src/pages/Management/violations/Reporter/components/Occurence/index.vue","webpack:///./src/pages/Management/violations/Reporter/components/Occurence/index.vue?4cee","webpack:///./src/pages/Management/violations/Reporter/components/Occurence/index.vue","webpack:///./src/pages/Management/violations/Reporter/components/ImageUpload/index.vue?3e41","webpack:///./src/pages/Management/violations/Reporter/components/ImageUpload/keys/data.js","webpack:///./src/pages/Management/violations/Reporter/components/ImageUpload/keys/methods.js","webpack:///./src/pages/Management/violations/Reporter/components/ImageUpload/keys/watch.js","webpack:///src/pages/Management/violations/Reporter/components/ImageUpload/index.vue","webpack:///./src/pages/Management/violations/Reporter/components/ImageUpload/index.vue?2976","webpack:///./src/pages/Management/violations/Reporter/components/ImageUpload/index.vue","webpack:///./src/pages/Management/violations/Reporter/components/Notes/index.vue?8cdc","webpack:///src/pages/Management/violations/Reporter/components/Notes/index.vue","webpack:///./src/pages/Management/violations/Reporter/components/Notes/index.vue?7f97","webpack:///./src/pages/Management/violations/Reporter/components/Notes/index.vue","webpack:///./src/pages/Management/violations/Reporter/components/Stage/index.vue?79ce","webpack:///./src/pages/Management/violations/Reporter/components/Stage/keys/methods.js","webpack:///src/pages/Management/violations/Reporter/components/Stage/index.vue","webpack:///./src/pages/Management/violations/Reporter/components/Stage/index.vue?421d","webpack:///./src/pages/Management/violations/Reporter/components/Stage/index.vue","webpack:///./src/pages/Management/violations/Reporter/components/Review/index.vue?bbd5","webpack:///./src/pages/Management/violations/Reporter/components/Review/keys/beforeDestroy.js","webpack:///./src/pages/Management/violations/Reporter/components/Review/keys/computed.js","webpack:///./src/pages/Management/violations/Reporter/components/Review/keys/data.js","webpack:///./src/pages/Management/violations/Reporter/components/Review/keys/methods.js","webpack:///./src/pages/Management/violations/Reporter/components/Review/keys/mounted.js","webpack:///./src/pages/Management/violations/Reporter/components/Review/keys/props.js","webpack:///./src/pages/Management/violations/Reporter/components/Review/keys/watch.js","webpack:///src/pages/Management/violations/Reporter/components/Review/index.vue","webpack:///./src/pages/Management/violations/Reporter/components/Review/index.vue?e433","webpack:///./src/pages/Management/violations/Reporter/components/Review/index.vue","webpack:///./src/pages/Management/violations/Reporter/keys/data.js","webpack:///./src/pages/Management/violations/Reporter/keys/methods.js","webpack:///./src/pages/Management/violations/Reporter/keys/mounted.js","webpack:///./src/pages/Management/violations/Reporter/keys/watch.js","webpack:///src/pages/Management/violations/Reporter/index.vue","webpack:///./src/pages/Management/violations/Reporter/index.vue?f234","webpack:///./src/pages/Management/violations/Reporter/index.vue","webpack:///./src/pages/Management/violations/Main/keys/data.js","webpack:///./src/pages/Management/violations/Main/components/Actions.vue?c192","webpack:///src/pages/Management/violations/Main/components/Actions.vue","webpack:///./src/pages/Management/violations/Main/components/Actions.vue?ac18","webpack:///./src/pages/Management/violations/Main/components/Actions.vue","webpack:///./src/pages/Management/violations/Main/keys/methods.js","webpack:///./src/pages/Management/violations/Main/keys/mounted.js","webpack:///src/pages/Management/violations/Main/index.vue","webpack:///./src/pages/Management/violations/Main/index.vue?f1c4","webpack:///./src/pages/Management/violations/Main/index.vue","webpack:///./src/services/ViolationIssue/Violation/Get.js","webpack:///./src/services/ViolationIssue/Violation/GenerateViolationLetterHTMLPreview.js","webpack:///./src/services/Hoa/store.js","webpack:///./src/components/LazyLoad/ImageSpinner.vue?44ef","webpack:///./src/components/transitions/Slide.vue?a83b","webpack:///./node_modules/lodash/_compareMultiple.js","webpack:///./src/components/menus/Links/index.vue?5407","webpack:///src/components/menus/Links/index.vue","webpack:///./src/components/menus/Links/index.vue?1cc0","webpack:///./src/components/menus/Links/index.vue","webpack:///./src/services/WorkOrderRequests/WorkOrderRequestPhoto/StorePhotoFile.js","webpack:///./src/services/WorkOrderRequests/WorkOrderRequestPhoto/procedures/StoreMultiplePhotos.js","webpack:///./src/components/transitions/Slide.vue?ab9d","webpack:///src/components/transitions/Slide.vue","webpack:///./src/components/transitions/Slide.vue?8d18","webpack:///./src/components/transitions/Slide.vue","webpack:///./src/services/ViolationIssue/ViolationOccurrence/List.js","webpack:///./node_modules/lodash/_baseEach.js","webpack:///./src/services/Roster/Unit/sequences/getOwnersList.js","webpack:///./src/utilities/get/Array.js","webpack:///./src/services/ViolationIssue/ViolationStep/List.js","webpack:///./node_modules/lodash/_baseOrderBy.js","webpack:///./src/pages/Shared/violations/Details/index.vue?ff27","webpack:///./src/services/ViolationIssue/ViolationOccurrencePhoto/StorePhoto.js","webpack:///./src/services/ViolationIssue/ViolationOccurrencePhoto/sequences/StoreMultiplePhotos.js","webpack:///./src/services/Roster/Unit/List.js","webpack:///./src/services/WorkOrders/store.js","webpack:///./src/services/ViolationIssue/Violation/List.js","webpack:///./src/components/buttons/Row/index.vue?55d9","webpack:///src/components/buttons/Row/index.vue","webpack:///./src/components/buttons/Row/index.vue?f142","webpack:///./src/components/buttons/Row/index.vue","webpack:///./src/services/ViolationIssue/ViolationOccurrencePhoto/GetFile.js","webpack:///./src/services/ViolationIssue/ViolationOccurrencePhoto/sequences/GetMultiple.js","webpack:///./node_modules/core-js/modules/es.number.is-nan.js","webpack:///./node_modules/lodash/orderBy.js","webpack:///./node_modules/lodash/_createBaseEach.js","webpack:///./node_modules/lodash/_baseMap.js","webpack:///./src/pages/Management/violations/Main/store.js","webpack:///./src/services/Violation/ViolationAction/List.js","webpack:///./src/pages/Management/violations/Reporter/components/ImageUpload/index.vue?3c0f","webpack:///./src/services/blobutility.js","webpack:///./src/pages/Shared/violations/Details/tabs/history/List.vue?a277","webpack:///./src/services/ViolationIssue/ViolationStepDocument/store.js","webpack:///./src/pages/Shared/violations/Details/tabs/history/keys/methods.js","webpack:///./src/pages/Shared/violations/Details/tabs/history/keys/data.js","webpack:///src/pages/Shared/violations/Details/tabs/history/List.vue","webpack:///./src/pages/Shared/violations/Details/tabs/history/List.vue?eb25","webpack:///./src/pages/Shared/violations/Details/tabs/history/List.vue","webpack:///./node_modules/lodash/_compareAscending.js","webpack:///./node_modules/lodash/_baseSortBy.js","webpack:///./src/pages/Shared/violations/Details/index.vue?a255","webpack:///./src/pages/Shared/violations/Details/keys/data.js","webpack:///./src/pages/Shared/violations/Details/keys/methods.js","webpack:///./src/pages/Shared/violations/Details/keys/watch.js","webpack:///src/pages/Shared/violations/Details/index.vue","webpack:///./src/pages/Shared/violations/Details/index.vue?f6a9","webpack:///./src/pages/Shared/violations/Details/index.vue","webpack:///./src/pages/Management/violations/Escalator/index.vue?0aec","webpack:///./src/components/Fields/ImageUploader/index.vue?8473","webpack:///./src/components/Fields/ImageUploader/keys/data.js","webpack:///./src/components/Fields/ImageUploader/keys/methods.js","webpack:///./src/components/Fields/ImageUploader/keys/watch.js","webpack:///src/components/Fields/ImageUploader/index.vue","webpack:///./src/components/Fields/ImageUploader/index.vue?6f1a","webpack:///./src/components/Fields/ImageUploader/index.vue","webpack:///./src/pages/Management/violations/Escalator/keys/computed.js","webpack:///./src/pages/Management/violations/Escalator/keys/data.js","webpack:///./src/services/ViolationIssue/Violation/UpdateViolationActionStepOccurrence.js","webpack:///./src/pages/Management/violations/Escalator/keys/methods.js","webpack:///./src/pages/Management/violations/Escalator/keys/props.js","webpack:///src/pages/Management/violations/Escalator/index.vue","webpack:///./src/pages/Management/violations/Escalator/index.vue?a343","webpack:///./src/pages/Management/violations/Escalator/index.vue","webpack:///./src/components/googlemaps/index.vue?6d16","webpack:///./node_modules/@babel/runtime/helpers/esm/createForOfIteratorHelper.js","webpack:///src/components/googlemaps/index.vue","webpack:///./src/components/googlemaps/index.vue?816c","webpack:///./src/components/googlemaps/index.vue","webpack:///./src/pages/Management/violations/Escalator/index.vue?a8a6","webpack:///./src/pages/Management/violations/Reporter/index.vue?7b1c","webpack:///./src/components/Fields/ImageUploader/index.vue?c67a","webpack:///./src/components/LazyLoad/ImageItem.vue?6b7d","webpack:///./src/pages/Shared/violations/Details/tabs/details/index.vue?da31","webpack:///./src/pages/Shared/violations/Details/tabs/details/components/DesktopGallery.vue?f794","webpack:///./src/components/LazyLoad/ImageItem.vue?bb40","webpack:///./src/components/LazyLoad/ImageSpinner.vue?dec8","webpack:///./src/components/LazyLoad/ImageSpinner.vue","webpack:///src/components/LazyLoad/ImageItem.vue","webpack:///./src/components/LazyLoad/ImageItem.vue?a524","webpack:///./src/components/LazyLoad/ImageItem.vue","webpack:///src/pages/Shared/violations/Details/tabs/details/components/DesktopGallery.vue","webpack:///./src/pages/Shared/violations/Details/tabs/details/components/DesktopGallery.vue?a31d","webpack:///./src/pages/Shared/violations/Details/tabs/details/components/DesktopGallery.vue","webpack:///./src/pages/Shared/violations/Details/tabs/details/components/MobileGallery.vue?a5d9","webpack:///src/pages/Shared/violations/Details/tabs/details/components/MobileGallery.vue","webpack:///./src/pages/Shared/violations/Details/tabs/details/components/MobileGallery.vue?a191","webpack:///./src/pages/Shared/violations/Details/tabs/details/components/MobileGallery.vue","webpack:///./src/pages/Shared/violations/Details/tabs/details/keys/computed.js","webpack:///./src/pages/Shared/violations/Details/tabs/details/keys/data.js","webpack:///./src/services/ViolationIssue/Violation/Put.js","webpack:///./src/pages/Shared/violations/Details/tabs/details/keys/methods.js","webpack:///./src/pages/Shared/violations/Details/tabs/details/keys/mounted.js","webpack:///./src/pages/Shared/violations/Details/tabs/details/keys/props.js","webpack:///./src/pages/Shared/violations/Details/tabs/details/keys/watch.js","webpack:///src/pages/Shared/violations/Details/tabs/details/index.vue","webpack:///./src/pages/Shared/violations/Details/tabs/details/index.vue?83d4","webpack:///./src/pages/Shared/violations/Details/tabs/details/index.vue"],"names":["parseDate","date","format","console","debug","parsed","moment","isValid","exception","message","error","render","_vm","this","_h","$createElement","_c","_self","attrs","parseInt","violationID","staticRenderFns","methods","reload","loading","$route","params","id","data","isDebug","styles","filterButton","float","marginTop","name","components","PageContentLayoutOnly","ListViolationConversations","computed","watch","mounted","i18n","messages","en","component","$t","staticClass","style","marginRight","on","$event","openAdder","_v","region","filters","rows","columns","perPage","tableWrapper","height","ref","toggle","isOpen","modalContent","modal","maxHeight","scopedSlots","_u","key","fn","proxy","prevToolTip","length","prevPrevented","prevStep","nextToolTip","nextPrevented","nextStep","model","value","callback","$$v","step","expression","checkAddressOnNextStep","formData","$set","_l","option","domProps","_s","label","addressMethod","isFiltering","filterList","optionSelected","query","_e","handleSubmit","preventDefault","onFormSubmit","staticStyle","onFocus","directives","rawName","target","composing","accessToken","Number","parseFloat","longitude","latitude","reloadParentImages","returnMarkerAddress","fullList","selected","addressChoiceList","address","hideShowMapFlag","googleAddress","actions","getAddressChoiceList","choices","unshift","JSON","stringify","list","notifyProblem","Vue","use","Vuex","violationStore","Store","state","mutations","getters","_cloneDeep","filter","owner","toLowerCase","includes","x","getAddressChoice","dispatch","then","getAccessToken","workOrderList","credentialsName","result","credentialValue","setCurrentLocation","navigator","geolocation","getCurrentPosition","position","coords","hideShowMap","hideShowMapText","hoaID","_get","getOwnersList","getViolationTypeList","kms","kms_","get","successful","reportNewViolation","json","post","reportOccurence","presetState","observedBy","selectedType","isNew","violationReporterStore","loadActionsList","commit","violationEscalationID","getVActionList","hoaId","escalationID","actionsList","modify","payload","erase","setAsNew","setAsOccurence","existingViolationID","setAsEscalation","setOwner","clearOwner","loadTypes","setSelectedType","loadPrevious","ownerID","listViolations","reportNew","pics","uploadedDocumentIds","picUploadProblems","Array","isArray","StoreMultiplePhotos","photos","uploads","problems","undefined","violationTypeID","violationActionID","violationNote","isClosed","observationDate","observationDescription","generateLetterPreview","generateViolationLetterHTMLPreview","description","photoDocumentIDs","preset","closeModal","vReporterStore","isFromAddress","props","Function","GoogleMap","ValidInput","ValidationObserver","search","item","index","class","active","filteredList","typesList","type","selectedViolation","Date","toISOString","descriptionTemplate","slideIsActive","Boolean","default","DatePicker","authUser","file","previews","image","deleteDropFile","documentIds","splice","updatePictures","map","URL","createObjectURL","unsubViolationAdderStore","subscribe","top","transform","background","padding","borderRadius","left","typeName","escalationType","declareAction","formLetterID","escalationTypes","borderTop","color","margin","Object","assign","listRow","listLabel","listItem","details","actionName","ownerName","ownerAddress","preview","display","justifyContent","alignItems","width","overflow","boxShadow","flexShrink","maxWidth","objectFit","save","beforeDestroy","mapState","user","selectedHoaId","theme","saved","isOccurrence","nameOfType","flexBasis","updateData","getArray","action","find","getString","parseAddress","violationListStore","newWindow","window","open","document","body","innerHTML","totalSteps","ownerSelected","typeSelected","noteAdded","actionSelected","isMapAddress","isMapAddressValid","stepAddress","checkPreventions","isOwnerSlide","isTypeSelector","isPictures","isNotePad","isActionSelector","checkMapAddress","hoaUtility","done","validatedAddress","notifyError","mutation","mType","selectedTypeName","Modal","Owner","Occurrence","ImageUpload","Notes","Stage","Review","occurrences","show","title","role","ariaLabel","field","numeric","aria","sortable","searchable","path","detail","isHidden","openEscalator","SimpleButton","determineRows","dateFormat","entry","stage","status","Actions","$refs","escalator","button","RowButton","to","violationid","violationownerid","violationlabel","text","adder","_orderBy","unsubViolationListStore","lists","Reporter","Escalator","PageContent","ModernTable","violationsList","getV","getHoaById","results","filtered","hoas","f","retrieveGoogleMapSignature","encodeURIComponent","url","signature","toString","retrieveGoogleAddress","lat","lng","googleAddressExistsInSystem","loadDropDownAddressList","startRecord","recordCount","includeOwnerContacts","addresses","dropDownAddresses","a","addressID","addressOne","city","postalCode","unitID","primaryOwnerID","sort","b","loadVendors","vendors","vendorDropDownList","v","vendorID","loadHoasByGlobalVendorId","vendorGlobalID","hoaDropDownList","loadDropDownOwnersList","owners","dropDownOwners","primaryOwner","ownername","compareAscending","compareMultiple","object","other","orders","objCriteria","criteria","othCriteria","ordersLength","order","module","exports","breakpoint","styles_","tab","prefix","hash","flexGrow","selectedTab","_t","tabs","String","getTabName","tabName","$router","push","unsubWindowStore","StorePhoto","photo","FormData","append","workOrderRequestID","documentId","verb","amount","Promise","all","getVOccurrenceList","log","baseForOwn","createBaseEach","baseEach","getUnitList","prop","c","variable","listSteps","steps","arrayMap","baseGet","baseIteratee","baseMap","baseSortBy","baseUnary","identity","baseOrderBy","collection","iteratees","iteratee","credentials","loadLocationTypes","myList","loadLocationTypesManagement","getWorkOrderList","deleteWorkOrder","workOrderID","delete","wasDeleted","notifyMessage","cancelWorkOrder","cancelledReason","put","cancelledByAspNetUserID","addWorkOrder","workOrderTypeID","sourceWorkOrderRequestID","locationDescription","detailedDescription","specialInstructions","locationType","completeByDate","transmitNotification","isNaN","visible","buttonClass","clicked","onClick","size","$emit","getPhoto","getMultiplePhotos","paramsList","retrievals","content","$","stat","number","orderBy","guard","isArrayLike","eachFunc","fromRight","iterable","refreshList","_set","base64toBlob","b64Data","contentType","sliceSize","byteCharacters","atob","byteArrays","offset","slice","byteNumbers","i","charCodeAt","byteArray","Uint8Array","blob","Blob","showPdf","newBlob","msSaveOrOpenBlob","link","createElement","download","setAttribute","href","downloadPdf","click","setTimeout","revokeObjectURL","showAnyType","mimeType","_m","marginBottom","right","count","marginLeft","fontWeight","handleEllipsis","showEllipsis","paddingRight","paddingLeft","openPhotoModal","violationLetters","letter","getDocumentFile","violationStepDocumentID","zIndex","photoModal","src","getViolationStepDocumentList","violationOccurrenceID","violationStepID","includeDocumentsAsBase64","includeDocumentAsHtml","getFile","violationStepDocumentStore","loadingComponent","$buefy","container","getOccurrences","getSteps","close","occurrence","asRawBaseSixtyFour","notifyWarning","photosList","photosMeta","o","violationOccurrencePhotos","observationDateParsed","reverse","totalProblems","violationOccurrencePhotoID","asBase64","forEach","documentFileName","mainPhoto","$forceUpdate","isSymbol","valIsDefined","valIsNull","valIsReflexive","valIsSymbol","othIsDefined","othIsNull","othIsReflexive","othIsSymbol","array","comparer","returnToParent","ul","overflowX","transitionName","violation","mainContainer","minHeight","showUploadModal","from","toIndex","fromIndex","SlideTransition","LinksMenu","unit","violationDetails","page","border","actionDescription","justifyItems","select","imagesUpdated","textAlign","checkDetails","fontSize","confirm","onChange","images","allActions","update","updateObservedBy","observationDateComponent","getValue","allValid","utcFormat","reset","actionSuccessful","actionMessage","chosenActions","possible","chosen","escalationOrder","meta","uploadImages","updateV","onComplete","ImageUploader","hideMap","rtoggle","readOnlyMap","showUpload","verticalAlign","exportStaticImage","resetPinMarker","fitBounds","setPlace","infoOptions","myLat","myLong","zoomLevel","selectedMapStyle","boundsRestriction","infoWindowPos","infoWinOpen","m","toggleInfoWindow","updateMarker","latLng","_createForOfIteratorHelper","allowArrayLike","it","Symbol","iterator","unsupportedIterableToArray","F","s","n","e","TypeError","err","normalCompletion","didErr","next","_e2","mapStyle","defailtLongitude","defaultLatitude","workOrderRequestId","workOrderId","reloadParent","allowGeocodingOnMarker","vendorHoaId","hoa","markers","currentPlace","placeAddress","pixelOffset","currentMidx","created","google","refresh","geolocate","generateBounds","maps","mapRef","$mapPromise","bounds","$gmapDefaultResizeBus","LatLngBounds","extend","southmostLatitude","westmostLongitude","northmostLatitude","eastmostLongitude","ex","marker","idx","refreshParentWorkOrderRequestDetails","updateMainPhoto","flexDirection","paddingBottom","authUserType","bottom","confirmClose","escalate","stepAdded","overflowY","source","script","ImageSpinner","required","ImageItem","whiteSpace","updateImages","win","startIndex","itemsPerPage","getId","propId","fromRoute","indexOf","reRender","go","lazyLoadMoreImages","counter","scaleToWidth","getVDetails","vDetails","dialog","confirmText","hasIcon","onConfirm","modifyStatus","createdDate","modifiedDate","DesktopGallery","MobileGallery"],"mappings":"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","file":"js/violations.926eeaea.js","sourcesContent":["import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=style&index=0&id=bac35f7c&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=style&index=0&id=bac35f7c&lang=scss&scoped=true&\"","/*\r\n Example:\r\n import { parseDate } from '@/utilities/Date/parse'\r\n\r\n const parsedDate = parseDate (date, 'LL');\r\n*/\r\nimport moment from 'moment'\r\n\r\nexport const parseDate = (date, format = 'LL') => {\r\n if (typeof date !== 'string') {\r\n console.debug(`parseDate can only parse a date string. got:`, { date })\r\n return date\r\n }\r\n\r\n try {\r\n const parsed = moment(date)\r\n if (parsed.isValid()) {\r\n date = moment(date).format(format)\r\n }\r\n } catch (exception) {\r\n if (exception && exception.message) {\r\n console.error(exception.message)\r\n } else {\r\n console.error(exception)\r\n }\r\n }\r\n\r\n return date\r\n}\r\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('PageContentLayoutOnly',[_c('div',[_c('ListViolationConversations',{attrs:{\"violationID\":parseInt(_vm.violationID)}})],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","export const methods = {\r\n async reload() {\r\n this.loading = true\r\n\r\n this.violationID = this.$route.params.id || 0\r\n\r\n this.loading = false\r\n }\r\n}\r\n","export const data = () => ({\r\n isDebug: true,\r\n loading: false,\r\n violationID: 0,\r\n styles: {\r\n filterButton: {\r\n float: 'right',\r\n marginTop: '4px'\r\n }\r\n }\r\n})\r\n","\r\n\r\n\r\n\r\n\r\n","import mod from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./List.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./List.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./List.vue?vue&type=template&id=53f7a13a&\"\nimport script from \"./List.vue?vue&type=script&lang=js&\"\nexport * from \"./List.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('PageContent',{attrs:{\"title\":_vm.$t('violationsList.title')}},[_c('div',{staticClass:\"pb-5\"},[_c('b-button',{style:({ marginRight: '12px' }),attrs:{\"size\":\"is-small\",\"type\":\"is-primary\",\"rounded\":\"\"},on:{\"click\":function($event){return _vm.openAdder()}}},[_vm._v(\" Report New \")])],1),_c('ModernTable',{attrs:{\"region\":_vm.region,\"filters\":_vm.filters,\"rows\":_vm.rows,\"columns\":_vm.columns,\"pagination\":{\n perPage: 12\n },\"styles\":{ tableWrapper: { height: 'calc(100vh - 250px)' } },\"readMoreColumn\":\"\"}}),_c('Reporter',{ref:\"adder\"}),_c('Escalator',{ref:\"escalator\"}),_c('div',[_c('Modal',{attrs:{\"toggle\":_vm.toggle},on:{\"update:toggle\":function($event){_vm.toggle=$event}}},[_c('Creation')],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',{attrs:{\"id\":\"vio-adder\",\"vio-reporter\":\"\"}},[_c('Modal',{attrs:{\"width\":\"700\",\"height\":\"700\",\"toggle\":_vm.isOpen,\"styles\":{\n modalContent: { height: '800px' },\n modal: { maxHeight: '90vh' }\n }},on:{\"update:toggle\":function($event){_vm.isOpen=$event}},scopedSlots:_vm._u([{key:\"header\",fn:function(){return [_vm._v(\"Violation Reporter\")]},proxy:true},{key:\"footer\",fn:function(){return [_c('div',{style:({ float: 'right' })},[_c('b-tooltip',{attrs:{\"active\":_vm.prevToolTip.length >= 1,\"label\":_vm.prevToolTip,\"position\":\"is-right\"}},[_c('b-button',{style:({ marginRight: '8px' }),attrs:{\"vio-reporter-prev-button\":\"\",\"icon-left\":\"chevron-left\",\"size\":\"is-medium\",\"disabled\":_vm.prevPrevented},on:{\"click\":_vm.prevStep}})],1),_c('b-tooltip',{attrs:{\"active\":_vm.nextToolTip.length >= 1,\"label\":_vm.nextToolTip,\"position\":\"is-left\"}},[_c('b-button',{attrs:{\"vio-reporter-next-button\":\"\",\"icon-left\":\"chevron-right\",\"size\":\"is-medium\",\"disabled\":_vm.nextPrevented},on:{\"click\":_vm.nextStep}})],1)],1)]},proxy:true}])},[_c('div',[_c('transition',{attrs:{\"name\":\"fade\",\"mode\":\"out-in\",\"appear\":\"\"}},[_c('b-steps',{attrs:{\"has-navigation\":false,\"label-position\":\"bottom\",\"size\":\"is-small\"},model:{value:(_vm.step),callback:function ($$v) {_vm.step=$$v},expression:\"step\"}},[_c('b-step-item',{attrs:{\"label\":\"Owner\"}},[_c('Owner',{ref:\"owner\",attrs:{\"checkAddressOnNextStep\":_vm.checkAddressOnNextStep,\"owner-step\":\"\"}})],1),_c('b-step-item',{attrs:{\"label\":\"Type\"}},[_c('Occurrence',{attrs:{\"slideIsActive\":_vm.step === 1,\"occurrence-step\":\"\"}})],1),_c('b-step-item',{attrs:{\"label\":\"Pictures\"}},[_c('ImageUpload',{attrs:{\"pictures-step\":\"\"}})],1),_c('b-step-item',{attrs:{\"label\":\"Notes\"}},[_c('Notes',{attrs:{\"notes-step\":\"\"}})],1),_c('b-step-item',{attrs:{\"label\":\"Action\"}},[_c('Stage',{attrs:{\"stage-step\":\"\"}})],1),_c('b-step-item',{attrs:{\"label\":\"Review\"}},[_c('Review',{attrs:{\"active\":_vm.step === 5,\"review-step\":\"\"}})],1)],1)],1)],1),_c('b-loading',{model:{value:(_vm.loading),callback:function ($$v) {_vm.loading=$$v},expression:\"loading\"}})],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('div',[_c('b-select',{attrs:{\"required\":\"true\",\"placeholder\":\"Select an Address Method\"},model:{value:(_vm.formData.addressMethod),callback:function ($$v) {_vm.$set(_vm.formData, \"addressMethod\", $$v)},expression:\"formData.addressMethod\"}},_vm._l((_vm.addressChoiceList),function(option){return _c('option',{key:option.value,domProps:{\"value\":option.value}},[_vm._v(\" \"+_vm._s(option.label)+\" \")])}),0)],1),(_vm.formData.addressMethod && _vm.formData.addressMethod === 'fromAddress')?_c('div',{staticClass:\"pb-5 pt-5\"},[_c('b-field',{attrs:{\"label\":\"Owner\"}},[_c('b-autocomplete',{attrs:{\"vr-owner-select\":\"\",\"data\":_vm.data,\"loading\":_vm.isFiltering,\"open-on-focus\":true,\"keep-first\":true,\"field\":\"label\",\"icon\":\"magnify\",\"placeholder\":\"e.g. First Name or Last Name or Address\"},on:{\"typing\":_vm.filterList,\"select\":_vm.optionSelected},scopedSlots:_vm._u([{key:\"empty\",fn:function(){return [_vm._v(\"No results found\")]},proxy:true}],null,false,478364837),model:{value:(_vm.query),callback:function ($$v) {_vm.query=$$v},expression:\"query\"}})],1)],1):_vm._e(),(_vm.formData.addressMethod && _vm.formData.addressMethod === 'fromMap')?_c('div',{staticClass:\"pt-5\"},[_c('ValidationObserver',{ref:\"form\",scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar handleSubmit = ref.handleSubmit;\nreturn [_c('transition',{attrs:{\"name\":\"fade\",\"mode\":\"out-in\",\"appear\":\"\"}},[_c('form',{staticClass:\"form\",on:{\"submit\":function($event){$event.preventDefault();return handleSubmit(_vm.onFormSubmit)}}},[_c('div',{staticClass:\"is-12\"},[_c('valid-input',{staticClass:\"is-small\",staticStyle:{\"width\":\"50px !important\"},attrs:{\"name\":\"address\",\"label\":\"Address\",\"type\":\"text\",\"vid\":\"Address\",\"placeholder\":\"Address\",\"spellcheck\":\"true\",\"aria-label\":\"Address\",\"rules\":\"max:8000\",\"disabled\":true,\"readonly\":true},on:{\"input\":_vm.onFocus},model:{value:(_vm.formData.address),callback:function ($$v) {_vm.$set(_vm.formData, \"address\", $$v)},expression:\"formData.address\"}})],1)])])]}}],null,false,2697895932)}),_c('div',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.formData.latitude),expression:\"formData.latitude\"}],attrs:{\"type\":\"hidden\"},domProps:{\"value\":(_vm.formData.latitude)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.formData, \"latitude\", $event.target.value)}}}),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.formData.longitude),expression:\"formData.longitude\"}],attrs:{\"type\":\"hidden\"},domProps:{\"value\":(_vm.formData.longitude)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.formData, \"longitude\", $event.target.value)}}})]),_c('div',{staticClass:\"pt-3\"},[_c('GoogleMap',{attrs:{\"mapStyle\":\"satellite\",\"accessToken\":_vm.accessToken,\"longitude\":Number.parseFloat(_vm.formData && _vm.formData.longitude ? _vm.formData.longitude : 0),\"latitude\":Number.parseFloat(_vm.formData && _vm.formData.latitude ? _vm.formData.latitude : 0),\"defaultLongitude\":Number.parseFloat(_vm.formData && _vm.formData.longitude ? _vm.formData.longitude : 0),\"defaultLatitude\":Number.parseFloat(_vm.formData && _vm.formData.latitude ? _vm.formData.latitude : 0),\"zoomLevel\":parseInt(19),\"reloadParent\":_vm.reloadParentImages,\"returnMarkerAddress\":_vm.returnMarkerAddress,\"showUpload\":true,\"allowGeocodingOnMarker\":true}})],1)],1):_vm._e(),_c('b-loading',{model:{value:(_vm.loading),callback:function ($$v) {_vm.loading=$$v},expression:\"loading\"}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","export function data() {\r\n return {\r\n loading: true,\r\n isDebug: true,\r\n isFiltering: false,\r\n data: [],\r\n fullList: [],\r\n query: null,\r\n selected: null,\r\n addressChoiceList: null,\r\n formData: {\r\n latitude: 0,\r\n longitude: 0,\r\n address: '',\r\n addressMethod: ''\r\n },\r\n hideShowMapFlag: null,\r\n accessToken: '',\r\n googleAddress: false\r\n }\r\n}\r\n","/*\r\n import { violationStore } from '@/services/ViolationIssue/Violation/store'\r\n*/\r\n\r\nimport Vue from 'vue'\r\nimport Vuex from 'vuex'\r\n\r\nimport { notifyProblem } from '@/services/notify'\r\n//import kms from '@/services/kms'\r\n\r\nconst isDebug = true\r\n\r\n/* eslint-disable no-empty-pattern */\r\nconst actions = {\r\n async getAddressChoiceList({}) {\r\n try {\r\n let choices = [\r\n { value: 'fromAddress', label: 'Select from Address' },\r\n { value: 'fromMap', label: 'Select from Map' }\r\n ]\r\n\r\n choices.unshift({ value: '', label: '<-Select Address Type->' })\r\n\r\n if (isDebug == true) console.debug('getAddressChoiceList=' + JSON.stringify(choices))\r\n\r\n return {\r\n list: choices\r\n }\r\n } catch (exception) {\r\n notifyProblem(`There was a problem retrieving the address choice list.`)\r\n console.error(exception)\r\n }\r\n\r\n return {\r\n list: []\r\n }\r\n }\r\n}\r\n/* eslint-enable no-empty-pattern */\r\n\r\nVue.use(Vuex)\r\nexport const violationStore = new Vuex.Store({\r\n state: {},\r\n mutations: {},\r\n getters: {},\r\n actions\r\n})\r\n","import _cloneDeep from 'lodash/cloneDeep'\r\nimport { workOrderList } from '@/services/WorkOrders/store'\r\nimport { violationStore } from '@/services/ViolationIssue/Violation/store'\r\n\r\nexport const methods = {\r\n optionSelected(option) {\r\n this.selected = option\r\n this.formData.address = ''\r\n },\r\n\r\n filterList: function(name) {\r\n this.formData.address = ''\r\n\r\n // String update\r\n if (this.name !== name) {\r\n this.name = name\r\n this.data = []\r\n } else {\r\n // no update occurred\r\n return\r\n }\r\n\r\n this.isFiltering = true\r\n\r\n if (this.name === '') {\r\n this.data = _cloneDeep(this.fullList)\r\n }\r\n\r\n this.data = this.fullList.filter(owner => {\r\n try {\r\n if (owner.label.toLowerCase().includes(this.name.toLowerCase())) {\r\n return true\r\n }\r\n } catch (x) {\r\n console.error(x)\r\n }\r\n\r\n return false\r\n })\r\n\r\n this.isFiltering = false\r\n },\r\n\r\n async getAddressChoice() {\r\n await violationStore.dispatch('getAddressChoiceList').then(({ list }) => {\r\n if (list) {\r\n this.addressChoiceList = list\r\n }\r\n })\r\n },\r\n\r\n async getAccessToken() {\r\n await workOrderList\r\n .dispatch('getAccessToken', {\r\n credentialsName: 'google-maps-api-key'\r\n })\r\n .then(({ result }) => {\r\n if (result) {\r\n this.accessToken = result.credentialValue\r\n }\r\n })\r\n },\r\n\r\n async setCurrentLocation() {\r\n navigator.geolocation.getCurrentPosition(position => {\r\n this.formData.latitude = position.coords.latitude\r\n this.formData.longitude = position.coords.longitude\r\n })\r\n },\r\n\r\n async returnMarkerAddress(address) {\r\n this.formData.address = address\r\n },\r\n\r\n hideShowMap() {\r\n console.debug('in hideShowMap...')\r\n this.hideShowMapFlag = !this.hideShowMapFlag\r\n if (this.hideShowMapFlag == true) {\r\n this.hideShowMapText = 'Hide Map'\r\n } else {\r\n this.hideShowMapText = 'Show Map'\r\n }\r\n },\r\n\r\n async reloadParentImages() {\r\n if (this.isDebug === true) console.debug('reloadParentImages...')\r\n },\r\n\r\n onFocus() {\r\n console.debug('onFocus()...')\r\n\r\n if (this.formData && this.formData.address && this.formData.address.length > 0) {\r\n this.googleAddress = true\r\n this.query = null\r\n } else {\r\n this.googleAddress = false\r\n }\r\n\r\n console.debug('this.googleAddress=' + this.googleAddress)\r\n }\r\n}\r\n","import _get from 'lodash/get'\r\nimport { getOwnersList } from '@/services/Roster/Unit/sequences/getOwnersList'\r\n\r\nexport async function mounted() {\r\n this.loading = true\r\n\r\n this.getAccessToken()\r\n\r\n this.getAddressChoice()\r\n\r\n const hoaID = _get(this, ['$store', 'getters', 'user/hoaIDInteger'], null)\r\n\r\n const { list } = await getOwnersList({\r\n hoaID\r\n })\r\n\r\n this.data = list\r\n this.fullList = list\r\n\r\n this.loading = false\r\n}\r\n","/*\r\n example:\r\n import { getViolationTypeList } from '@/services/Violation/ViolationType/List';\r\n\r\n const { list, successful, message } = await getViolationTypeList ({\r\n hoaID\r\n });\r\n if (!successful) {\r\n console.error (message);\r\n return;\r\n }\r\n*/\r\n//\r\nimport _get from 'lodash/get'\r\nimport kms from '@/services/kms'\r\n//\r\nexport async function getViolationTypeList({ hoaID, kms: kms_ = kms } = {}) {\r\n const message = 'The violation type list could not be retrieved.'\r\n\r\n try {\r\n const result = await kms_.get(`/Violation/ViolationType/List`, {\r\n params: {\r\n hoaID\r\n }\r\n })\r\n\r\n return {\r\n list: _get(result, 'results', []),\r\n successful: true,\r\n message\r\n }\r\n } catch (x) {\r\n console.error(x)\r\n }\r\n\r\n return {\r\n successful: false,\r\n list: null,\r\n message\r\n }\r\n}\r\n\r\n///////\r\n","/*\r\n For reporting a new one\r\n\r\n {\r\n \"violationActionID\": 0,\r\n \"ownerID\": 0,\r\n \"hoaID\": 0,\r\n \"violationTypeID\": 0,\r\n \"violationEscalationID\": 0,\r\n \"formLetterID\": 0,\r\n \"violationNote\": \"string\",\r\n \"isClosed\": true,\r\n \"observationDate\": \"2021-08-30T18:40:19.581Z\",\r\n \"observedBy\": \"string\",\r\n \"observationDescription\": \"string\",\r\n \"createdDate\": \"2021-08-30T18:40:19.581Z\",\r\n \"modifiedDate\": \"2021-08-30T18:40:19.581Z\",\r\n \"deletedDate\": \"2021-08-30T18:40:19.581Z\",\r\n \"uploadedDocumentIds\": [\r\n 0\r\n ]\r\n }\r\n*/\r\n\r\n/*\r\n import { reportNewViolation } from '@/services/ViolationIssue/Violation/CreateViolationActionStepOccurrence';\r\n\r\n // for example:\r\n const { successful } = await reportNewViolation ({\r\n json: {\r\n hoaID,\r\n ownerID,\r\n\r\n violationTypeID,\r\n violationActionID,\r\n violationEscalationID,\r\n formLetterID,\r\n\r\n violationNote: \"vio note\",\r\n isClosed: false,\r\n observationDescription: \"vio description\",\r\n\r\n observationDate: \"2021-08-09T21:31:51.958Z\",\r\n observedBy: \"string\",\r\n uploadedDocumentIds: []\r\n }\r\n });\r\n if (!successful) {\r\n notifyProblem ('A problem occurred and the violation could not be reported');\r\n return;\r\n }\r\n*/\r\n\r\n//\r\nimport kms from '@/services/kms'\r\n//\r\nexport async function reportNewViolation({ kms: kms_ = kms, json } = {}) {\r\n const message = 'A problem occurred and the violation could not be reported'\r\n\r\n try {\r\n const result = await kms_.post(\r\n `/ViolationIssue/Violation/CreateViolationActionStepOccurrence`,\r\n json\r\n )\r\n\r\n return {\r\n message: '',\r\n result,\r\n successful: true\r\n }\r\n } catch (exception) {\r\n console.error(exception)\r\n }\r\n\r\n return {\r\n message,\r\n result: null,\r\n successful: false\r\n }\r\n}\r\n","/*\r\n For reporting another occurrence\r\n\r\n {\r\n \"existingViolationID\": 0,\r\n\r\n \"violationNote\": \"string\",\r\n \"isClosed\": true,\r\n\r\n \"observationDate\": \"2021-08-30T22:31:32.373Z\",\r\n \"observedBy\": \"string\",\r\n \"observationDescription\": \"string\",\r\n\r\n \"createdDate\": \"2021-08-30T22:31:32.373Z\",\r\n \"modifiedDate\": \"2021-08-30T22:31:32.373Z\",\r\n \"deletedDate\": \"2021-08-30T22:31:32.373Z\",\r\n \"uploadedDocumentIds\": [\r\n 0\r\n ]\r\n }\r\n\r\n import { reportOccurence } from '@/services/ViolationIssue/Violation/CreateViolationReportOccurrence';\r\n\r\n await reportOccurence ({\r\n json: {\r\n existingViolationID: 0,\r\n\r\n violationNote: \"a note\",\r\n isClosed: false,\r\n\r\n observationDate: \"2021-08-30T22:31:32.373Z\",\r\n observedBy: \"\",\r\n observationDescription: \"\",\r\n\r\n uploadedDocumentIds: []\r\n }\r\n })\r\n*/\r\n\r\n//\r\nimport kms from '@/services/kms'\r\n//\r\nexport async function reportOccurence({ kms: kms_ = kms, json } = {}) {\r\n let message = `The escalation list could not be retrieved.`\r\n\r\n try {\r\n await kms_.post(`/ViolationIssue/Violation/CreateViolationReportOccurrence`, json)\r\n\r\n return {\r\n successful: true,\r\n message\r\n }\r\n } catch (exception) {\r\n console.error(exception)\r\n }\r\n\r\n return {\r\n successful: false,\r\n message\r\n }\r\n}\r\n","/*\r\n import { vReporterStore } from '@/pages/Management/violations/Reporter/store.js'\r\n\r\n this.unsubViolationAdderStore = vReporterStore.subscribe ((mutation, state) => {\r\n console.log(mutation.type)\r\n console.log(mutation.payload)\r\n\r\n });\r\n*/\r\n\r\nimport _get from 'lodash/get'\r\nimport Vue from 'vue'\r\nimport Vuex from 'vuex'\r\n//\r\nimport { notifyProblem } from '@/services/notify'\r\n//\r\nimport { getViolationTypeList } from '@/services/Violation/ViolationType/List'\r\nimport { getVActionList } from '@/services/Violation/ViolationAction/List'\r\n//\r\nimport { StoreMultiplePhotos } from '@/services/ViolationIssue/ViolationOccurrencePhoto/sequences/StoreMultiplePhotos'\r\nimport { reportNewViolation } from '@/services/ViolationIssue/Violation/CreateViolationActionStepOccurrence'\r\nimport { listViolations } from '@/services/ViolationIssue/Violation/List'\r\nimport { reportOccurence } from '@/services/ViolationIssue/Violation/CreateViolationReportOccurrence'\r\nimport { generateViolationLetterHTMLPreview } from '@/services/ViolationIssue/Violation/GenerateViolationLetterHTMLPreview'\r\n//\r\nconst presetState = () => {\r\n return {\r\n observedBy: null,\r\n owner: null,\r\n selectedType: null,\r\n actions: [],\r\n //\r\n isNew: true\r\n }\r\n}\r\n\r\nVue.use(Vuex)\r\nconst violationReporterStore = new Vuex.Store({\r\n /* eslint-disable no-empty-pattern */\r\n actions: {\r\n async loadActionsList({ state, commit }, { violationEscalationID }) {\r\n const { list: actionsList, successful, message } = await getVActionList({\r\n hoaID: state.hoaId,\r\n escalationID: violationEscalationID\r\n })\r\n if (!successful) {\r\n notifyProblem(message)\r\n return\r\n } else {\r\n commit('modify', {\r\n actions: actionsList\r\n })\r\n }\r\n },\r\n\r\n /*\r\n await violationReporterStore.dispatch ('modify', {});\r\n */\r\n async modify({ commit }, payload) {\r\n commit('modify', payload)\r\n },\r\n async erase({ commit }) {\r\n commit('erase')\r\n },\r\n\r\n /*\r\n declare that the violation is a new one\r\n\r\n await violationReporterStore.dispatch ('setAsNew');\r\n */\r\n async setAsNew({ commit }) {\r\n commit('setAsNew')\r\n },\r\n\r\n /*\r\n declare that the violation is an occurence of an existing one\r\n */\r\n async setAsOccurence({ commit }, { existingViolationID }) {\r\n commit('setAsOccurence', {\r\n existingViolationID\r\n })\r\n },\r\n\r\n /*\r\n await violationReporterStore.dispatch ('setAsEscalation')\r\n */\r\n async setAsEscalation({ commit }, { existingViolationID }) {\r\n commit('setAsEscalation', {\r\n existingViolationID\r\n })\r\n },\r\n\r\n /*\r\n await violationReporterStore.dispatch ('setOwner', {\r\n label:\r\n value:\r\n });\r\n */\r\n async setOwner({ commit }, { label, value, data, hoaId }) {\r\n commit('setOwner', { label, value, data, hoaId })\r\n },\r\n async clearOwner({ commit }) {\r\n commit('clearOwner')\r\n },\r\n\r\n async loadTypes({ state }) {\r\n const { list, successful, message } = await getViolationTypeList({\r\n hoaID: state.hoaId\r\n })\r\n if (!successful) {\r\n console.error(message)\r\n return {\r\n list: null\r\n }\r\n }\r\n\r\n return { list }\r\n },\r\n async setSelectedType({ commit }, { selectedType }) {\r\n commit('setSelectedType', { selectedType })\r\n },\r\n\r\n /*\r\n load the violations list for a particular owner (via ownerID)\r\n */\r\n async loadPrevious({ state }) {\r\n const ownerID = _get(state, ['owner', 'value'], null)\r\n if (typeof ownerID !== 'number') {\r\n notifyProblem('The previous violations could not be loaded.')\r\n return\r\n }\r\n\r\n // for example:\r\n const { successful, message, list } = await listViolations({\r\n hoaID: state.hoaId,\r\n ownerID\r\n })\r\n if (!successful) {\r\n notifyProblem(message)\r\n return\r\n }\r\n\r\n return {\r\n list\r\n }\r\n },\r\n\r\n async reportNew({ state }) {\r\n const pics = state.pics\r\n const hoaID = state.hoaId\r\n\r\n let uploadedDocumentIds = []\r\n let picUploadProblems = []\r\n if (Array.isArray(pics) && pics.length >= 1) {\r\n const { uploads, problems } = await StoreMultiplePhotos({\r\n hoaID,\r\n photos: pics\r\n })\r\n\r\n if (problems && problems !== undefined) {\r\n console.debug('problems=' + JSON.stringify(problems))\r\n }\r\n\r\n uploadedDocumentIds = uploads\r\n picUploadProblems = problems\r\n }\r\n\r\n const { successful } = await reportNewViolation({\r\n json: {\r\n hoaID: state.hoaId,\r\n ownerID: state.owner.value,\r\n //\r\n violationTypeID: state.selectedType.violationTypeID,\r\n violationActionID: state.violationActionID,\r\n violationEscalationID: state.violationEscalationID,\r\n //\r\n violationNote: '',\r\n isClosed: false,\r\n //\r\n observedBy: state.observedBy,\r\n observationDate: state.observationDate,\r\n observationDescription: state.observationDescription,\r\n //\r\n uploadedDocumentIds\r\n }\r\n })\r\n return {\r\n successful,\r\n picUploadProblems\r\n }\r\n },\r\n async reportOccurence({ state }) {\r\n const pics = state.pics\r\n const hoaID = state.hoaId\r\n\r\n const { uploads: uploadedDocumentIds, problems } = await StoreMultiplePhotos({\r\n hoaID,\r\n photos: pics\r\n })\r\n\r\n if (problems && problems !== undefined) {\r\n console.debug('problems=' + JSON.stringify(problems))\r\n }\r\n\r\n const { successful } = await reportOccurence({\r\n json: {\r\n existingViolationID: state.existingViolationID,\r\n //\r\n violationNote: '',\r\n isClosed: false,\r\n //\r\n observedBy: state.observedBy,\r\n observationDate: state.observationDate,\r\n observationDescription: state.observationDescription,\r\n //\r\n uploadedDocumentIds\r\n }\r\n })\r\n\r\n return {\r\n successful\r\n }\r\n },\r\n async generateLetterPreview({ state }) {\r\n const pics = state.pics\r\n const hoaID = state.hoaId\r\n\r\n let uploadedDocumentIds = []\r\n if (Array.isArray(pics) && pics.length >= 1) {\r\n const { uploads, problems } = await StoreMultiplePhotos({\r\n hoaID,\r\n photos: pics\r\n })\r\n\r\n if (problems && problems !== undefined) {\r\n console.debug('problems=' + JSON.stringify(problems))\r\n }\r\n\r\n uploadedDocumentIds = uploads\r\n }\r\n\r\n const result = await generateViolationLetterHTMLPreview({\r\n json: {\r\n ownerID: state.owner.value,\r\n //\r\n violationTypeID: state.selectedType.violationTypeID,\r\n violationActionID: state.violationActionID,\r\n //\r\n observationDate: state.observationDate,\r\n description: state.observationDescription,\r\n //\r\n photoDocumentIDs: uploadedDocumentIds\r\n }\r\n })\r\n return result\r\n }\r\n },\r\n /* eslint-enable no-empty-pattern */\r\n\r\n getters: {},\r\n\r\n mutations: {\r\n erase(state) {\r\n const preset = presetState()\r\n\r\n for (const key in state) {\r\n if (preset[key] !== undefined) {\r\n state[key] = preset[key]\r\n } else {\r\n state[key] = null\r\n }\r\n }\r\n },\r\n setOwner(state, { label, value, data, hoaId }) {\r\n state.owner = { label, value, data }\r\n state.hoaId = hoaId\r\n },\r\n clearOwner(state) {\r\n state.owner = null\r\n },\r\n setSelectedType(state, { selectedType }) {\r\n state.selectedType = selectedType\r\n },\r\n modify(state, payload) {\r\n for (const key in payload) {\r\n state[key] = payload[key]\r\n }\r\n },\r\n loading(state, toggle) {\r\n state.loading = toggle\r\n },\r\n closeModal() {},\r\n setAsNew(state) {\r\n state.isNew = true\r\n }\r\n },\r\n state: presetState()\r\n})\r\n\r\nconst vReporterStore = violationReporterStore\r\n\r\nexport { violationReporterStore, vReporterStore }\r\n","//\r\n//\r\nimport { violationReporterStore } from '@/pages/Management/violations/Reporter/store.js'\r\nimport _get from 'lodash/get'\r\n//\r\nexport const watch = {\r\n async query() {\r\n if (this.selected === null) {\r\n await violationReporterStore.dispatch('clearOwner')\r\n return\r\n }\r\n\r\n const { label, value, data } = this.selected\r\n const hoaId = _get(this, ['$store', 'getters', 'user/hoaIDInteger'], null)\r\n\r\n this.formData.address = ''\r\n\r\n await violationReporterStore.dispatch('setOwner', {\r\n hoaId,\r\n label,\r\n value,\r\n data\r\n })\r\n\r\n return\r\n },\r\n async 'formData.address'() {\r\n const isFromAddress =\r\n this.formData.addressMethod && this.formData.addressMethod === 'fromMap' ? true : false\r\n this.checkAddressOnNextStep(this.formData.address, isFromAddress)\r\n }\r\n}\r\n","\r\n\r\n\r\n\r\n\r\n","import mod from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./index.vue?vue&type=template&id=342049d8&\"\nimport script from \"./index.vue?vue&type=script&lang=js&\"\nexport * from \"./index.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"py-2 sm:py-4 flex flex-wrap mt-4\"},[_c('div',{staticClass:\"w-full sm:w-2/5\"},[_c('div',{staticClass:\"relative w-full text-cool-gray-400 focus-within:text-cool-gray-600 border-b border-gray-400\"},[_c('div',{staticClass:\"absolute inset-y-0 left-0 flex items-center pointer-events-none\"},[_c('svg',{staticClass:\"h-5 w-5\",attrs:{\"fill\":\"currentColor\",\"viewBox\":\"0 0 20 20\"}},[_c('path',{attrs:{\"fill-rule\":\"evenodd\",\"clip-rule\":\"evenodd\",\"d\":\"M8 4a4 4 0 100 8 4 4 0 000-8zM2 8a6 6 0 1110.89 3.476l4.817 4.817a1 1 0 01-1.414 1.414l-4.816-4.816A6 6 0 012 8z\"}})])]),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.search),expression:\"search\"}],staticClass:\"block w-full h-full pl-8 pr-3 py-2 rounded-md bg-transparent text-cool-gray-900 placeholder-cool-gray-500 focus:outline-none focus:placeholder-cool-gray-400 sm:text-lg\",attrs:{\"placeholder\":\"Search violation types...\",\"type\":\"search\"},domProps:{\"value\":(_vm.search)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.search=$event.target.value}}})]),_c('div',{staticClass:\"overflow-auto h-64 sm:h-127\"},[_c('ul',{staticClass:\"py-1 text-base leading-6 focus:outline-none sm:text-sm sm:leading-5\",attrs:{\"tabindex\":\"-1\",\"role\":\"listbox\",\"aria-labelledby\":\"listbox-label\",\"aria-activedescendant\":\"listbox-item-3\"}},_vm._l((_vm.filteredList),function(item,index){return _c('li',{key:item.violationTypeID,class:(\"text-gray-900 cursor-pointer select-none relative py-2 pl-8 pr-4 \" + (_vm.active === index ? \"bg-blue-200\" : \"\")),attrs:{\"id\":(\"listbox-item-\" + index),\"role\":\"option\"},on:{\"click\":function($event){return _vm.selectedType(item, index)}}},[_c('span',{class:(\"font-normal truncate \" + (_vm.active === index ? \"\" : \"\"))},[_vm._v(\" \"+_vm._s(item.name)+\" \")]),(_vm.active === index)?_c('span',{class:(\"absolute inset-y-0 left-0 flex items-center pl-1.5 \" + (_vm.active === index ? \"text-white\" : \"\"))},[_c('svg',{staticClass:\"h-5 w-5\",attrs:{\"xmlns\":\"http://www.w3.org/2000/svg\",\"viewBox\":\"0 0 20 20\",\"fill\":\"currentColor\"}},[_c('path',{attrs:{\"fill-rule\":\"evenodd\",\"d\":\"M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z\",\"clip-rule\":\"evenodd\"}})])]):_vm._e()])}),0)])]),_c('div',{staticClass:\"w-full sm:w-3/5 sm:pl-8 pt-4 sm:pt-0\"},[_c('h2',{staticClass:\"text-xl mb-4\"},[_vm._v(\"Select date of occurrence\")]),_c('DatePicker',{attrs:{\"ariaLabel\":\"date\"},model:{value:(_vm.observationDate),callback:function ($$v) {_vm.observationDate=$$v},expression:\"observationDate\"}})],1),_c('div',{staticClass:\"pt-5\"},[_c('b-field',{attrs:{\"label\":\"Observed By\"}},[_c('b-input',{attrs:{\"maxlength\":\"255\",\"aria-required\":\"true\",\"type\":\"text\"},model:{value:(_vm.observedBy),callback:function ($$v) {_vm.observedBy=$$v},expression:\"observedBy\"}})],1)],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","export const computed = {\r\n filteredList() {\r\n return this.typesList.filter(type => {\r\n if (!this.search) return type\r\n\r\n return type.name.toLowerCase().includes(this.search.toLowerCase())\r\n })\r\n }\r\n}\r\n","import moment from 'moment'\r\n\r\nexport function data() {\r\n return {\r\n selectedViolation: null,\r\n active: null,\r\n search: null,\r\n observationDate: moment(new Date()).toISOString(),\r\n observedBy: null,\r\n typesList: []\r\n }\r\n}\r\n","import { violationReporterStore } from '@/pages/Management/violations/Reporter/store.js'\r\nimport _get from 'lodash/get'\r\n\r\nexport const methods = {\r\n async selectedType(selectedType, index) {\r\n this.active = index\r\n const observationDate = this.observationDate\r\n\r\n const violationEscalationID = _get(\r\n selectedType,\r\n ['violationEscalation', 'violationEscalationID'],\r\n null\r\n )\r\n\r\n const descriptionTemplate = _get(selectedType, ['descriptionTemplate'], null)\r\n\r\n await violationReporterStore.dispatch('loadActionsList', {\r\n violationEscalationID\r\n })\r\n\r\n await violationReporterStore.dispatch('modify', {\r\n selectedType,\r\n observationDate,\r\n observationDescription: descriptionTemplate\r\n })\r\n }\r\n}\r\n","export const props = {\r\n slideIsActive: {\r\n type: Boolean,\r\n default: false\r\n }\r\n}\r\n","//\r\n//\r\nimport { violationReporterStore } from '@/pages/Management/violations/Reporter/store.js'\r\n//\r\nexport const watch = {\r\n async slideIsActive(active) {\r\n if (active === true) {\r\n const { list } = await violationReporterStore.dispatch('loadTypes')\r\n\r\n this.typesList = list\r\n this.loading = false\r\n }\r\n },\r\n async observationDate(observationDate) {\r\n await violationReporterStore.dispatch('modify', {\r\n observationDate\r\n })\r\n },\r\n async observedBy(observedBy) {\r\n await violationReporterStore.dispatch('modify', {\r\n observedBy\r\n })\r\n }\r\n}\r\n","\r\n\r\n\r\n\r\n\r\n","import mod from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./index.vue?vue&type=template&id=948ee486&\"\nimport script from \"./index.vue?vue&type=script&lang=js&\"\nexport * from \"./index.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('section',{staticClass:\"flex flex-col\"},[_c('b-field',{staticClass:\"file justify-center items-center\"},[_c('b-upload',{staticClass:\"border-dashed border-2 border-gray-400 flex flex-col\",attrs:{\"multiple\":\"\",\"drag-drop\":\"\",\"accept\":\"image/png, image/jpeg, image/jpg\"},model:{value:(_vm.file),callback:function ($$v) {_vm.file=$$v},expression:\"file\"}},[_c('section',{staticClass:\"section\"},[_c('div',{staticClass:\"content has-text-centered\"},[_c('p',[_c('b-icon',{attrs:{\"icon\":\"upload\",\"size\":\"is-large\"}})],1),_c('p',[_vm._v(\" Drop a PNG, JPG, or JPEG file here, or click to select a file from your computer. \")])])])])],1),_c('ul',{staticClass:\"flex flex-1 flex-wrap-m-1\",attrs:{\"id\":\"gallery\"}},[_c('li',{directives:[{name:\"show\",rawName:\"v-show\",value:(!_vm.previews.length),expression:\"!previews.length\"}],staticClass:\"h-full w-full text-center flex flex-col\"},[_c('img',{staticClass:\"mx-auto w-32\",attrs:{\"src\":\"https://user-images.githubusercontent.com/507615/54591670-ac0a0180-4a65-11e9-846c-e55ffce0fe7b.png\",\"alt\":\"no data\"}}),_c('span',{staticClass:\"text-small text-gray-500\"},[_vm._v(\"No files selected\")])]),_vm._l((_vm.previews),function(image,index){return _c('li',{key:index,staticClass:\"p-1 flex w-1/4 h-32 justify-center items-center\"},[_c('div',{staticClass:\"relative w-full h-full bg-cover\",style:((\"background-image: url(\" + image + \");\"))},[_c('button',{staticClass:\"delete is-small\",attrs:{\"type\":\"button\"},on:{\"click\":function($event){return _vm.deleteDropFile(index)}}}),_c('label',{staticClass:\"absolute inset-x-0 bottom-0 bg-black bg-opacity-50 z-10 p-2\"},[_c('span',{staticClass:\"text-black font-small bg-white\"},[_vm._v(_vm._s(_vm.file[index].name))])])])])})],2)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","export function data() {\r\n return {\r\n isDebug: true,\r\n file: [],\r\n image: null,\r\n documentIds: [],\r\n previews: []\r\n }\r\n}\r\n","//\r\nimport { notifyProblem } from '@/services/notify'\r\n//\r\nimport { violationReporterStore } from '@/pages/Management/violations/Reporter/store.js'\r\n//\r\nexport const methods = {\r\n async deleteDropFile(index) {\r\n this.file.splice(index, 1)\r\n\r\n const pics = this.file\r\n\r\n const previews = this.previews\r\n this.previews.splice(index, 1)\r\n\r\n await violationReporterStore.dispatch('modify', {\r\n previews,\r\n pics\r\n })\r\n },\r\n\r\n async updatePictures() {\r\n const pics = this.file\r\n if (!Array.isArray(pics)) {\r\n notifyProblem('A problem occurred and the photos could not be uploaded.')\r\n return\r\n }\r\n\r\n ////////////////////////////////\r\n // Store image previews\r\n ////////////////////////////////\r\n\r\n this.previews = this.file.map(file => {\r\n return URL.createObjectURL(file)\r\n })\r\n\r\n await violationReporterStore.dispatch('modify', {\r\n previews: this.previews,\r\n pics\r\n })\r\n }\r\n}\r\n","//\r\nexport const watch = {\r\n file() {\r\n this.updatePictures()\r\n }\r\n}\r\n","\r\n\r\n\r\n\r\n\r\n","import mod from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./index.vue?vue&type=template&id=cc2c94e6&\"\nimport script from \"./index.vue?vue&type=script&lang=js&\"\nexport * from \"./index.vue?vue&type=script&lang=js&\"\nimport style0 from \"./index.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"py-2 sm:py-4 flex flex-wrap mt-4\"},[_c('h2',{staticClass:\"text-xl mb-1\"},[_vm._v(\" Violation notes \")]),_c('div',{staticClass:\"w-full sm:px-4\"},[_c('textarea',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.observationDescription),expression:\"observationDescription\"}],staticClass:\"resize border rounded focus:outline-none focus:shadow-outline w-full h-64 p-2 mt-4\",attrs:{\"placeholder\":\"Add details about the violation...\",\"rules\":\"max:8000\",\"maxlength\":\"8000\"},domProps:{\"value\":(_vm.observationDescription)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.observationDescription=$event.target.value}}})])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n\r\n\r\n","import mod from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./index.vue?vue&type=template&id=1d24ff84&\"\nimport script from \"./index.vue?vue&type=script&lang=js&\"\nexport * from \"./index.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"py-2 sm:py-4 flex flex-wrap mt-4\"},[_c('div',[_c('h2',{staticClass:\"text-xl mb-4\"},[_vm._v(\" The next letter in the violation escalation has been pre-selected. If you would like to escalate to a different letter, select from the options below. \")]),_c('div',_vm._l((_vm.actions),function(item,index){return _c('button',{key:index,class:\"select-none relative inline-block w-1/2\",style:({ position: 'relative' }),on:{\"click\":function($event){return _vm.selectedType(item, index)}}},[_c('div',{style:({\n position: 'absolute',\n top: '50%',\n transform: 'translateY(-50%)',\n background: 'white',\n padding: '8px',\n borderRadius: '4px',\n left: '17px'\n })},[_vm._v(\" \"+_vm._s(index + 1)+\" \")]),_c('div',{class:(\"cursor-pointer m-2 p-4 border border-blue-800 rounded text-gray-900 \" + (_vm.active === index ? \"bg-blue-200\" : \"bg-blue-400\"))},[_vm._v(\" \"+_vm._s(item.name)+\" \")])])}),0),(_vm.actions.length === 0)?_c('div',[_vm._v(\" There currently are not any escalation actions setup for violation type \\\"\"+_vm._s(_vm.typeName)+\"\\\". \")]):_vm._e()])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import _get from 'lodash/get'\r\nimport { notifyProblem } from '@/services/notify'\r\nimport { violationReporterStore } from '@/pages/Management/violations/Reporter/store.js'\r\n//\r\nexport const methods = {\r\n async selectedType(escalationType, index) {\r\n this.active = index\r\n\r\n this.declareAction()\r\n },\r\n\r\n async declareAction() {\r\n const escalationType = this.actions[this.active]\r\n\r\n const violationEscalationID = _get(escalationType, 'violationEscalationID', null)\r\n const violationActionID = _get(escalationType, 'violationActionID', null)\r\n const formLetterID = _get(escalationType, 'formLetterID', null)\r\n\r\n if (!['string', 'number'].includes(typeof violationActionID)) {\r\n notifyProblem('A problem occurred and the action selected could not be recorded.')\r\n return\r\n }\r\n\r\n if (!['string', 'number'].includes(typeof violationEscalationID)) {\r\n notifyProblem('A problem occurred and the action selected could not be recorded.')\r\n return\r\n }\r\n\r\n await violationReporterStore.dispatch('modify', {\r\n violationEscalationID,\r\n violationActionID,\r\n formLetterID\r\n })\r\n }\r\n}\r\n","\r\n\r\n\r\n\r\n\r\n","import mod from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./index.vue?vue&type=template&id=4194e183&\"\nimport script from \"./index.vue?vue&type=script&lang=js&\"\nexport * from \"./index.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"py-2 sm:py-4 flex flex-wrap\"},[_c('div',{staticClass:\"w-full sm:px-4\"},[_c('span',{staticClass:\"inline-block text-lg my-4\"},[_vm._v(\"To confirm the report, please review the details and press \\\"save\\\".\")]),_c('div',{style:({ padding: '30px 0' })},[_c('div',{style:({\n borderTop: (\"1px solid \" + (_vm.color[9])),\n margin: '5px 0'\n })}),_c('div',{style:(Object.assign({}, _vm.styles.listRow))},[_c('div',{style:(Object.assign({}, _vm.styles.listLabel))},[_vm._v(\"Type\")]),_c('div',{style:(Object.assign({}, _vm.styles.listItem))},[_vm._v(_vm._s(_vm.details.typeName))])]),_c('div',{style:(Object.assign({}, _vm.styles.listRow))},[_c('div',{style:(Object.assign({}, _vm.styles.listLabel))},[_vm._v(\"Action\")]),_c('div',{style:(Object.assign({}, _vm.styles.listItem))},[_vm._v(_vm._s(_vm.details.actionName))])]),_c('div',{style:({\n borderTop: (\"1px solid \" + (_vm.color[9])),\n margin: '5px 0'\n })}),_c('div',{style:(Object.assign({}, _vm.styles.listRow))},[_c('div',{style:(Object.assign({}, _vm.styles.listLabel))},[_vm._v(\"Owner\")]),_c('div',{style:(Object.assign({}, _vm.styles.listItem))},[_vm._v(_vm._s(_vm.details.ownerName))])]),_c('div',{style:(Object.assign({}, _vm.styles.listRow))},[_c('div',{style:(Object.assign({}, _vm.styles.listLabel))},[_vm._v(\"Address\")]),_c('div',{style:(Object.assign({}, _vm.styles.listItem))},[_vm._v(_vm._s(_vm.details.ownerAddress))])]),_c('div',{style:({\n borderTop: (\"1px solid \" + (_vm.color[9])),\n margin: '5px 0'\n })}),_c('div',{style:(Object.assign({}, _vm.styles.listRow))},[_c('div',{style:(Object.assign({}, _vm.styles.listLabel))},[_vm._v(\"Observed By\")]),_c('div',{style:(Object.assign({}, _vm.styles.listItem))},[_vm._v(_vm._s(_vm.details.observedBy))])]),_c('div',{style:(Object.assign({}, _vm.styles.listRow))},[_c('div',{style:(Object.assign({}, _vm.styles.listLabel))},[_vm._v(\"Observation Date\")]),_c('div',{style:(Object.assign({}, _vm.styles.listItem))},[_vm._v(_vm._s(_vm.details.observationDate))])]),_c('div',{style:(Object.assign({}, _vm.styles.listRow))},[_c('div',{style:(Object.assign({}, _vm.styles.listLabel))},[_vm._v(\"Description\")]),_c('div',{style:(Object.assign({}, _vm.styles.listItem))},[_vm._v(_vm._s(_vm.details.description))])]),_c('div',{style:(Object.assign({}, _vm.styles.listRow))},[_c('div',{style:(Object.assign({}, _vm.styles.listLabel))},[_vm._v(\"Pictures\")]),_c('div',{style:(Object.assign({}, _vm.styles.listItem))},_vm._l((_vm.previews),function(preview,index){return _c('figure',{key:index,style:({\n position: 'relative',\n display: 'inline-flex',\n justifyContent: 'center',\n alignItems: 'center',\n\n margin: '4px',\n\n width: '70px',\n height: '70px',\n\n overflow: 'hidden',\n borderRadius: '6px',\n\n boxShadow: '0 12px 18px 0 rgba(0, 0, 0, 0.05)'\n }),attrs:{\"tabindex\":\"0\",\"aria-label\":'photo ' + (index + 1)}},[_c('transition',{attrs:{\"name\":\"fade\"}},[_c('img',{style:({\n position: 'absolute',\n top: '50%',\n left: '50%',\n transform: 'translateX(-50%) translateY(-50%)',\n\n flexShrink: '0',\n maxWidth: '100%',\n maxHeight: '100%',\n height: '100%',\n width: '100%',\n objectFit: 'contain'\n }),attrs:{\"src\":preview}})])],1)}),0)])]),_c('div',{staticStyle:{\"display\":\"flex\",\"flex-direction\":\"row\",\"justify-content\":\"end\"}},[_c('b-button',{style:({ marginRight: '20px' }),attrs:{\"type\":\"is-primary\",\"size\":\"is-medium\"},on:{\"click\":_vm.preview}},[_vm._v(\"Preview\")]),_c('b-button',{attrs:{\"type\":\"is-primary\",\"size\":\"is-medium\"},on:{\"click\":_vm.save}},[_vm._v(\"Save\")])],1),_c('div',{style:({ height: '70px' })})])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","export function beforeDestroy() {\r\n this.unsubViolationAdderStore()\r\n}\r\n","//\r\nimport { mapState } from 'vuex'\r\n//\r\nexport const computed = {\r\n ...mapState({\r\n hoaId: state => state.user.selectedHoaId\r\n })\r\n}\r\n","import _get from 'lodash/get'\r\n\r\nexport function data() {\r\n const theme = _get(this, ['$store', 'state', 'theme'], {})\r\n\r\n return {\r\n color: theme.color,\r\n //\r\n isDebug: true,\r\n loading: false,\r\n saved: false,\r\n //\r\n isOccurrence: false,\r\n isNew: false,\r\n //\r\n nameOfType: null,\r\n observationDate: null,\r\n observationDescription: null,\r\n previews: [],\r\n //\r\n styles: {\r\n listRow: {\r\n display: 'flex'\r\n },\r\n listLabel: {\r\n display: 'inline-block',\r\n flexBasis: '186px',\r\n color: 'rgb(130, 130, 130)'\r\n },\r\n listItem: {\r\n display: 'inline-block',\r\n flexBasis: `calc(100% - 186px)`\r\n }\r\n },\r\n //\r\n details: {}\r\n }\r\n}\r\n","//\r\n//\r\nimport _get from 'lodash/get'\r\n//\r\nimport { notifyProblem } from '@/services/notify'\r\n//\r\nimport { vReporterStore } from '@/pages/Management/violations/Reporter/store.js'\r\nimport { violationListStore } from '@/pages/Management/violations/Main/store.js'\r\n//\r\nimport { parseDate } from '@/utilities/Date/parse'\r\nimport parseAddress from '@/utilities/address/parse'\r\nimport { getArray } from '@/utilities/get/Array'\r\nimport { getString } from '@/utilities/get/string'\r\n//\r\nexport const methods = {\r\n async updateData() {\r\n const state = vReporterStore.state\r\n\r\n const actions = getArray(vReporterStore, ['state', 'actions'], [])\r\n let action = actions.find(action => {\r\n try {\r\n return action.violationActionID === state.violationActionID\r\n } catch (x) {\r\n console.error(x)\r\n }\r\n return false\r\n })\r\n\r\n const actionName = getString(action, 'name', '')\r\n\r\n this.details = {\r\n typeName: _get(vReporterStore, ['state', 'selectedType', 'name'], null),\r\n actionName,\r\n //\r\n ownerName: getString(state, ['owner', 'data', 'primaryOwner', 'name'], ''),\r\n ownerAddress: parseAddress({\r\n address: _get(state, ['owner', 'data', 'address'], '')\r\n }),\r\n //\r\n observedBy: getString(state, ['observedBy'], ''),\r\n observationDate: parseDate(_get(vReporterStore, ['state', 'observationDate'], null), 'LL'),\r\n description: _get(state, ['observationDescription'], null)\r\n }\r\n\r\n this.name = _get(vReporterStore, ['state', 'selectedType', 'name'], null)\r\n this.observationDescription = _get(vReporterStore, ['state', 'observationDescription'], null)\r\n this.observationDate = parseDate(_get(vReporterStore, ['state', 'observationDate'], null), 'LL')\r\n\r\n const previews = _get(vReporterStore, ['state', 'previews'], [])\r\n if (Array.isArray(previews)) {\r\n this.previews = previews\r\n }\r\n\r\n this.isOccurrence = _get(vReporterStore, ['state', 'isOccurrence'], false)\r\n this.isNew = _get(vReporterStore, ['state', 'isNew'], false)\r\n\r\n this.nameOfType = _get(vReporterStore, ['state', 'selectedType', 'name'], '')\r\n },\r\n async reportNew() {\r\n vReporterStore.commit('loading', true)\r\n\r\n const { successful } = await vReporterStore.dispatch('reportNew')\r\n if (!successful) {\r\n notifyProblem('A problem occurred, and the report could not be added successfully.')\r\n vReporterStore.commit('loading', false)\r\n return\r\n }\r\n\r\n // refreshes the main list\r\n const hoaID = _get(this, ['$store', 'getters', 'user/hoaIDInteger'], null)\r\n await violationListStore.dispatch('refreshList', {\r\n hoaID\r\n })\r\n\r\n vReporterStore.commit('loading', false)\r\n vReporterStore.commit('closeModal')\r\n },\r\n //\r\n async save() {\r\n this.reportNew()\r\n },\r\n async preview() {\r\n vReporterStore.commit('loading', true)\r\n\r\n const { result } = await vReporterStore.dispatch('generateLetterPreview')\r\n\r\n vReporterStore.commit('loading', false)\r\n\r\n var newWindow = window.open()\r\n\r\n if (!newWindow.document) {\r\n notifyProblem('Unable to preview letter - please make sure popups are not blocked.')\r\n return\r\n }\r\n\r\n newWindow.document.body.innerHTML = result\r\n }\r\n}\r\n","//\r\n//\r\nimport { vReporterStore } from '@/pages/Management/violations/Reporter/store.js'\r\n//\r\nexport function mounted() {\r\n this.unsubViolationAdderStore = vReporterStore.subscribe(() => {\r\n this.updateData()\r\n })\r\n}\r\n","export const props = {\r\n active: {\r\n type: Boolean,\r\n default: false\r\n }\r\n}\r\n","//\r\nexport const watch = {\r\n active(value) {\r\n if (value === true) {\r\n this.updateData()\r\n }\r\n }\r\n}\r\n","\r\n\r\n\r\n\r\n\r\n","import mod from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./index.vue?vue&type=template&id=5ad435b2&\"\nimport script from \"./index.vue?vue&type=script&lang=js&\"\nexport * from \"./index.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","export function data() {\r\n return {\r\n loading: false,\r\n isOpen: false,\r\n step: 0,\r\n totalSteps: 6,\r\n toggle: false,\r\n nextPrevented: false,\r\n nextToolTip: '',\r\n prevPrevented: true,\r\n prevToolTip: '',\r\n ownerSelected: false,\r\n typeSelected: false,\r\n noteAdded: false,\r\n actionSelected: false,\r\n isNew: true,\r\n isMapAddress: false,\r\n isMapAddressValid: false,\r\n stepAddress: ''\r\n }\r\n}\r\n","import { violationReporterStore } from '@/pages/Management/violations/Reporter/store.js'\r\nimport { hoaUtility } from '@/services/Hoa/store'\r\nimport { notifyError } from '@/services/notify'\r\n\r\nexport const methods = {\r\n async open() {\r\n await violationReporterStore.dispatch('erase')\r\n\r\n this.isOpen = true\r\n this.step = 0\r\n this.loading = false\r\n this.checkPreventions()\r\n },\r\n checkPreventions() {\r\n const isOwnerSlide = this.step === 0\r\n const isTypeSelector = this.step === 1\r\n const isPictures = this.step === 2\r\n const isNotePad = this.step === 3\r\n const isActionSelector = this.step === 4\r\n\r\n this.prevPrevented = false\r\n\r\n // is the last slide\r\n if (this.step === this.totalSteps - 1) {\r\n this.nextPrevented = true\r\n } else {\r\n this.nextPrevented = false\r\n }\r\n\r\n /*\r\n slide 0\r\n */\r\n if (isOwnerSlide) {\r\n this.prevPrevented = true\r\n\r\n // if no owner is selected,\r\n // prevent next with message\r\n if (this.ownerSelected === true) {\r\n this.nextPrevented = false\r\n this.nextToolTip = ''\r\n } else {\r\n this.nextPrevented = true\r\n this.nextToolTip = 'Please select an owner, or map address, to continue.'\r\n }\r\n } else if (isTypeSelector) {\r\n if (this.typeSelected === true) {\r\n this.nextPrevented = false\r\n this.nextToolTip = ''\r\n } else {\r\n this.nextPrevented = true\r\n this.nextToolTip = 'Please select a type to continue.'\r\n }\r\n } else if (isPictures) {\r\n this.prevPrevented = false\r\n // this.nextToolTip = \"\"\r\n } else if (isNotePad) {\r\n if (this.noteAdded === true) {\r\n this.nextPrevented = false\r\n this.nextToolTip = ''\r\n } else {\r\n this.nextPrevented = true\r\n this.nextToolTip = 'Please add a note to continue.'\r\n }\r\n } else if (isActionSelector) {\r\n if (this.actionSelected) {\r\n this.nextPrevented = false\r\n this.nextToolTip = ''\r\n } else {\r\n this.nextPrevented = true\r\n this.nextToolTip = 'Please select an action to continue.'\r\n }\r\n } else {\r\n this.prevPrevented = false\r\n }\r\n },\r\n\r\n async checkMapAddress() {\r\n await hoaUtility.dispatch('googleAddressExistsInSystem', {\r\n hoaID: this.hoaId,\r\n address: this.stepAddress,\r\n done: async ({ result }) => {\r\n console.debug('address compare=' + JSON.stringify(result))\r\n if (result.validatedAddress && result.validatedAddress.address) {\r\n //set ownerID into session state\r\n await violationReporterStore.dispatch('setOwner', {\r\n hoaId: this.hoaId,\r\n label: result.validatedAddress.address,\r\n value: result.validatedAddress.ownerID,\r\n data: result.validatedAddress.ownerID\r\n })\r\n this.isMapAddressValid = true\r\n } else {\r\n this.ownerSelected = false\r\n this.nextPrevented = true\r\n this.nextToolTip = 'Please select an owner to continue.'\r\n notifyError(\r\n 'Address not recognized as a valid property address. Please select another property from the map.'\r\n )\r\n this.isMapAddressValid = false\r\n }\r\n }\r\n })\r\n },\r\n\r\n async nextStep() {\r\n if (this.isMapAddress === true) {\r\n await this.checkMapAddress()\r\n console.debug('this.isMapAddressValid=' + this.isMapAddressValid)\r\n\r\n if (this.isMapAddressValid === false) {\r\n console.debug('returning')\r\n return\r\n }\r\n }\r\n\r\n if (this.step <= this.totalSteps - 1) {\r\n this.step++\r\n }\r\n\r\n this.checkPreventions()\r\n },\r\n prevStep() {\r\n if (this.step >= 1) {\r\n this.step--\r\n }\r\n\r\n this.checkPreventions()\r\n },\r\n\r\n checkAddressOnNextStep(address, isFromAddress) {\r\n console.debug('address from parent=' + address)\r\n\r\n if (isFromAddress === true) {\r\n this.isMapAddress = true\r\n this.stepAddress = address\r\n this.ownerSelected = false\r\n this.nextPrevented = false\r\n this.nextToolTip = ''\r\n } else {\r\n this.isMapAddress = false\r\n this.stepAddress = ''\r\n }\r\n }\r\n}\r\n","import { violationReporterStore } from '@/pages/Management/violations/Reporter/store.js'\r\n\r\nimport _get from 'lodash/get'\r\n\r\nexport function mounted() {\r\n this.unsubViolationAdderStore = violationReporterStore.subscribe((mutation, state) => {\r\n const mType = mutation.type\r\n\r\n if (mType === 'setOwner') {\r\n this.ownerSelected = true\r\n this.checkPreventions()\r\n } else if (mType === 'clearOwner') {\r\n this.ownerSelected = false\r\n this.checkPreventions()\r\n } else if (mType === 'modify') {\r\n const selectedTypeName = _get(state, ['selectedType', 'name'], null)\r\n\r\n if (typeof selectedTypeName === 'string' && selectedTypeName.length >= 1) {\r\n this.typeSelected = true\r\n } else {\r\n this.typeSelected = false\r\n }\r\n\r\n const observationDescription = _get(state, ['observationDescription'], null)\r\n if (typeof observationDescription === 'string' && observationDescription.length >= 1) {\r\n this.noteAdded = true\r\n } else {\r\n this.noteAdded = false\r\n }\r\n\r\n const violationActionID = _get(state, ['violationActionID'], null)\r\n if (['string', 'number'].includes(typeof violationActionID)) {\r\n this.actionSelected = true\r\n } else {\r\n this.actionSelected = false\r\n }\r\n\r\n this.checkPreventions()\r\n } else if (mType === 'loading') {\r\n this.loading = state.loading\r\n } else if (mType === 'closeModal') {\r\n this.isOpen = false\r\n }\r\n })\r\n\r\n this.checkPreventions()\r\n}\r\n","export const watch = {\r\n step() {\r\n this.checkPreventions()\r\n }\r\n}\r\n","\r\n\r\n\r\n\r\n\r\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./index.vue?vue&type=template&id=751c5fa2&\"\nimport script from \"./index.vue?vue&type=script&lang=js&\"\nexport * from \"./index.vue?vue&type=script&lang=js&\"\nimport style0 from \"./index.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","export function data() {\r\n return {\r\n list: [],\r\n rows: [],\r\n occurrences: 0,\r\n toggle: false,\r\n filters: {\r\n show: true\r\n },\r\n region: {\r\n title: this.$t('violationsList.title'),\r\n role: 'main',\r\n ariaLabel: this.$t('violationsList.title')\r\n },\r\n columns: [\r\n {\r\n field: 'id',\r\n numeric: true,\r\n\r\n label: 'ID',\r\n aria: 'Violation ID',\r\n width: '5%',\r\n sortable: true,\r\n searchable: true\r\n },\r\n {\r\n field: 'type',\r\n\r\n label: 'Type',\r\n aria: 'Lot number',\r\n width: '15%',\r\n sortable: true,\r\n searchable: true\r\n },\r\n {\r\n field: 'owner',\r\n\r\n label: 'Owner',\r\n aria: 'Owner',\r\n width: '15%',\r\n sortable: true,\r\n searchable: true\r\n },\r\n {\r\n field: 'address',\r\n\r\n label: 'Address',\r\n aria: 'Address',\r\n width: '15%',\r\n sortable: true,\r\n searchable: true\r\n },\r\n\r\n {\r\n field: 'stage',\r\n // numeric: true,\r\n\r\n label: 'Stage',\r\n aria: 'Stage',\r\n width: '15%',\r\n sortable: true,\r\n searchable: true\r\n },\r\n {\r\n field: 'status',\r\n\r\n label: 'Status',\r\n aria: 'Status',\r\n width: '5%',\r\n sortable: true,\r\n searchable: true\r\n },\r\n {\r\n field: 'date',\r\n date: true,\r\n\r\n label: 'Reported On',\r\n aria: 'Date',\r\n width: '10%',\r\n sortable: true,\r\n searchable: true\r\n },\r\n {\r\n field: 'actions',\r\n\r\n label: '',\r\n aria: '',\r\n width: '20%'\r\n }\r\n ]\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('SimpleButton',{staticClass:\"button is-info is-light is-small is-outline is-rounded\",style:({ margin: '4px' }),attrs:{\"to\":{\n path: (\"violationtabs/\" + _vm.detail + \"/violationDetails#tab\"),\n params: {\n id: _vm.detail\n }\n }}},[_vm._v(\" Details \")]),(_vm.isHidden === false)?_c('span',[_c('b-button',{staticClass:\"button is-info is-light is-small is-outline is-rounded\",style:({ margin: '4px' }),attrs:{\"type\":\"is-primary\",\"rounded\":\"\"},on:{\"click\":_vm.openEscalator}},[_vm._v(\"Escalate\")])],1):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Actions.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Actions.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Actions.vue?vue&type=template&id=7e584d20&\"\nimport script from \"./Actions.vue?vue&type=script&lang=js&\"\nexport * from \"./Actions.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import _get from 'lodash/get'\r\nimport moment from 'moment'\r\nimport Actions from '../components/Actions'\r\nimport RowButton from '@/components/buttons/Row'\r\n\r\nexport const methods = {\r\n determineRows() {\r\n const dateFormat = 'LL'\r\n\r\n const list = this.list\r\n if (!Array.isArray(list)) {\r\n return []\r\n }\r\n\r\n this.rows = list.map(entry => {\r\n const address = _get(entry, 'address', null)\r\n\r\n var isClosed = _get(entry, 'isClosed', false)\r\n\r\n var date = _get(entry, 'createdDate', '')\r\n try {\r\n date = moment(date).format(dateFormat)\r\n } catch (exception) {\r\n console.error(exception)\r\n }\r\n\r\n const id = _get(entry, 'violationID', null)\r\n\r\n let stage = ''\r\n stage = _get(entry, 'lastStepName', null)\r\n\r\n return {\r\n id,\r\n type: _get(entry, 'violationTypeName', null),\r\n owner: _get(entry, 'ownerName', null),\r\n address,\r\n stage,\r\n status: isClosed === true ? 'Closed' : 'Open',\r\n date: {\r\n date,\r\n format: dateFormat\r\n },\r\n actions: {\r\n component: Actions,\r\n props: {\r\n detail: id,\r\n isHidden: _get(entry, 'isClosed', false),\r\n openEscalator: () => {\r\n this.$refs.escalator.open({\r\n id\r\n })\r\n }\r\n }\r\n },\r\n button: {\r\n component: RowButton,\r\n props: {\r\n to: {\r\n name: 'newconversation',\r\n params: {\r\n violationid: _get(entry, 'violationID', 0),\r\n violationownerid: _get(entry, 'ownerID', 0),\r\n violationlabel: `Add Homeowner - ${_get(entry, 'ownerName', '')}`\r\n }\r\n },\r\n text: 'Ask a Question'\r\n }\r\n }\r\n }\r\n })\r\n },\r\n\r\n openAdder() {\r\n this.$refs.adder.open()\r\n }\r\n}\r\n","//\r\nimport _get from 'lodash/get'\r\nimport _orderBy from 'lodash/orderBy'\r\nimport { violationListStore } from '@/pages/Management/violations/Main/store.js'\r\n//\r\nexport async function mounted() {\r\n const hoaID = _get(this, ['$store', 'getters', 'user/hoaIDInteger'], null)\r\n const { list } = await violationListStore.dispatch('refreshList', {\r\n hoaID\r\n })\r\n\r\n this.list = _orderBy(list, 'createdDate', 'desc')\r\n this.determineRows()\r\n\r\n this.unsubViolationListStore = violationListStore.subscribe((mutation, state) => {\r\n const mType = mutation.type\r\n\r\n if (mType === 'refreshList') {\r\n this.list = _orderBy(state.lists[hoaID], 'createdDate', 'desc')\r\n this.determineRows()\r\n }\r\n })\r\n}\r\n","\r\n\r\n\r\n\r\n\r\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./index.vue?vue&type=template&id=b744abd8&\"\nimport script from \"./index.vue?vue&type=script&lang=js&\"\nexport * from \"./index.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","/*\r\n import { getV } from '@/services/ViolationIssue/Violation/Get';\r\n\r\n // for example:\r\n const { successful, message, details } = await getV ({\r\n id\r\n });\r\n if (!successful) {\r\n notifyProblem (message);\r\n return;\r\n }\r\n\r\n*/\r\n//\r\nimport kms from '@/services/kms'\r\n//\r\nexport async function getV({ kms: kms_ = kms, id } = {}) {\r\n try {\r\n const details = await kms_.get(`/ViolationIssue/Violation/${id}`)\r\n\r\n return {\r\n successful: true,\r\n message: null,\r\n details\r\n }\r\n } catch (exception) {\r\n console.error(exception)\r\n }\r\n\r\n return {\r\n successful: false,\r\n message: `The details could not be retrieved successfully.`,\r\n details: null\r\n }\r\n}\r\n","/*\r\n For generating a violation preview letter\r\n\r\n {\r\n \"ownerID\": 0,\r\n \"violationActionID\": 0,\r\n \"violationTypeID\": 0,\r\n \"observationDate\": \"2021-08-30T18:40:19.581Z\",\r\n \"description\": \"string\",\r\n \"photoDocumentIDs\": [\r\n 0\r\n ]\r\n }\r\n*/\r\n\r\n/*\r\n import { generateViolationLetterHTMLPreview } from '@/services/ViolationIssue/Violation/GenerateViolationLetterHTMLPreview';\r\n\r\n // for example:\r\n const { successful } = await generateViolationLetterHTMLPreview ({\r\n json: {\r\n ownerID,\r\n violationTypeID,\r\n violationActionID,\r\n description: \"vio description\",\r\n observationDate: \"2021-08-09T21:31:51.958Z\",\r\n photoDocumentIDs: []\r\n }\r\n });\r\n if (!successful) {\r\n notifyProblem ('A problem occurred and the violation letter could not be generated');\r\n return;\r\n }\r\n*/\r\n\r\n//\r\nimport kms from '@/services/kms'\r\n//\r\nexport async function generateViolationLetterHTMLPreview({ kms: kms_ = kms, json } = {}) {\r\n const message = 'A problem occurred and the violation could not be reported'\r\n\r\n try {\r\n const result = await kms_.post(\r\n `/ViolationIssue/Violation/GenerateViolationLetterHTMLPreview`,\r\n json\r\n )\r\n\r\n return {\r\n message: '',\r\n result,\r\n successful: true\r\n }\r\n } catch (exception) {\r\n console.error(exception)\r\n }\r\n\r\n return {\r\n message,\r\n result: null,\r\n successful: false\r\n }\r\n}\r\n","/*\r\n import { hoaUtility } from '@/services/Hoa/store'\r\n*/\r\n\r\nimport Vue from 'vue'\r\nimport Vuex from 'vuex'\r\nimport _get from 'lodash/get'\r\nimport { notifyProblem, notifyError } from '@/services/notify'\r\nimport kms from '@/services/kms'\r\n\r\nconst isDebug = false\r\n\r\n/* eslint-disable no-empty-pattern */\r\nconst actions = {\r\n //Get by Id\r\n async getHoaById({}, { hoaID }) {\r\n try {\r\n console.debug('in getHoaById...')\r\n const results = await kms.get(`/Hoa/List`)\r\n\r\n const filtered = results.hoas.filter(f => f.hoaID === hoaID)\r\n\r\n if (isDebug == true) console.debug('getHoaById=' + JSON.stringify(filtered[0]))\r\n\r\n return {\r\n result: filtered[0]\r\n }\r\n } catch (exception) {\r\n notifyProblem(`There was a problem retrieving the hoa information.`)\r\n console.error(exception)\r\n }\r\n\r\n return {\r\n result: {}\r\n }\r\n },\r\n\r\n async retrieveGoogleMapSignature({ dispatch }, { payload, done }) {\r\n if (isDebug == true)\r\n console.debug('...in retrieveGoogleMapSignature=' + JSON.stringify(payload))\r\n try {\r\n const results = await kms.post(\r\n `/Utilities/GoogleMapUtility/GoogleMapSignUrl?url=${encodeURIComponent(\r\n payload.url\r\n )}&signatureOnly=true`\r\n )\r\n\r\n if (this.isDebug == true) console.debug('results=' + JSON.stringify(results))\r\n\r\n if (dispatch && dispatch != undefined) console.debug(dispatch)\r\n\r\n if (results) {\r\n const result = {\r\n signature: results.toString()\r\n }\r\n\r\n console.debug(`Successfully retrived google map signature. ` + JSON.stringify(result))\r\n\r\n done({ result })\r\n } else {\r\n notifyError('There was a problem retrieving the google map signature.')\r\n }\r\n } catch (exception) {\r\n notifyError(`There was a problem retrieving the google map signature.`)\r\n console.error(exception)\r\n }\r\n },\r\n\r\n async retrieveGoogleAddress({ dispatch }, { lat, lng, done }) {\r\n if (isDebug == true) console.debug('...in retrieveGoogleAddress...')\r\n try {\r\n const address = await kms.post(\r\n `/Utilities/GoogleMapUtility/GoogleMapRetrievePhysicalAddress?lat=${lat}&lng=${lng}`\r\n )\r\n\r\n //console.debug('results=' + address)\r\n\r\n if (dispatch && dispatch != undefined) console.debug(dispatch)\r\n\r\n if (address) {\r\n const result = {\r\n address\r\n }\r\n done({ result })\r\n } else {\r\n notifyError('There was a problem retrieving the google map address.')\r\n }\r\n } catch (exception) {\r\n notifyError(`There was a problem retrieving the google map address.`)\r\n console.error(exception)\r\n }\r\n },\r\n\r\n async googleAddressExistsInSystem({ dispatch }, { hoaID, address, done }) {\r\n if (isDebug == true) console.debug('in googleAddressExistInSystem...')\r\n try {\r\n const validatedAddress = await kms.get(\r\n `/Roster/Unit/CheckForMatchingUnitAddress?hoaId=${hoaID}&address=${address}`\r\n )\r\n\r\n //console.debug('results=' + validatedAddress)\r\n\r\n if (dispatch && dispatch != undefined) console.debug(dispatch)\r\n\r\n if (validatedAddress) {\r\n const result = {\r\n validatedAddress\r\n }\r\n done({ result })\r\n } else {\r\n notifyError('There was a problem validating the google map address.')\r\n }\r\n } catch (exception) {\r\n notifyError(`There was a problem validating the google map address.`)\r\n console.error(exception)\r\n }\r\n },\r\n\r\n // Address List\r\n async loadDropDownAddressList(\r\n {},\r\n { hoaID, startRecord = 1, recordCount = 10000, includeOwnerContacts = false }\r\n ) {\r\n try {\r\n const params = {\r\n hoaID: hoaID,\r\n includeOwnerContacts,\r\n startRecord,\r\n recordCount\r\n }\r\n\r\n if (isDebug == true) console.debug('params=' + JSON.stringify(params))\r\n\r\n const { results: addresses } = await kms.get('/Roster/Unit/List', { params })\r\n\r\n let dropDownAddresses = addresses\r\n .map(a => ({\r\n value: a.address ? a.address.addressID : '',\r\n label: a.address\r\n ? a.address.addressOne +\r\n ', ' +\r\n a.address.city +\r\n ' ' +\r\n a.address.state +\r\n ' ' +\r\n a.address.postalCode\r\n : '',\r\n unitID: a.unitID ? a.unitID : 0,\r\n primaryOwnerID: a.primaryOwnerID ? a.primaryOwnerID : 0\r\n }))\r\n .filter(f => f.label.length > 0 && f.value > 0)\r\n .sort((a, b) => a.label - b.label)\r\n\r\n dropDownAddresses.unshift({ value: '', label: '<-Select Address->' })\r\n\r\n if (isDebug == true)\r\n console.debug('address drop down list=' + JSON.stringify(dropDownAddresses))\r\n\r\n return {\r\n list: dropDownAddresses\r\n }\r\n } catch (exception) {\r\n notifyProblem(`The address list could not be retrieved.`)\r\n console.error(exception)\r\n }\r\n\r\n return {\r\n list: []\r\n }\r\n },\r\n\r\n // Vendors List\r\n async loadVendors({}, { hoaID }) {\r\n try {\r\n const params = {\r\n hoaID: hoaID\r\n }\r\n const { results: vendors } = await kms.get('/Vendors/Vendor/List', { params })\r\n\r\n const vendorDropDownList = vendors\r\n .map(v => ({\r\n value: v.vendorID,\r\n label: v.name ? v.name : ''\r\n }))\r\n .filter(f => f.label.length > 0 && f.value > 0)\r\n .sort((a, b) => a.label - b.label)\r\n\r\n if (isDebug == true) console.debug('loadVendors=' + JSON.stringify(vendorDropDownList))\r\n\r\n return {\r\n list: vendorDropDownList\r\n }\r\n } catch (exception) {\r\n notifyProblem(`The vendor list could not be retrieved.`)\r\n console.error(exception)\r\n }\r\n\r\n return {\r\n list: []\r\n }\r\n },\r\n\r\n // Hoa List\r\n async loadHoasByGlobalVendorId({}, { vendorGlobalID }) {\r\n try {\r\n const params = {\r\n vendorGlobalID\r\n }\r\n const { results: hoas } = await kms.get('/Vendors/Vendor/HoaListForGlobalVendor', { params })\r\n\r\n const hoaDropDownList = hoas\r\n .map(v => ({\r\n value: v.hoaID,\r\n label: v.name ? v.name : ''\r\n }))\r\n .filter(f => f.label.length > 0 && f.value > 0)\r\n .sort((a, b) => a.label - b.label)\r\n\r\n hoaDropDownList.unshift({ value: 0, label: '<-All Hoas->' })\r\n\r\n if (isDebug == true)\r\n console.debug('loadHoasByGlobalVendorId=' + JSON.stringify(hoaDropDownList))\r\n\r\n return {\r\n list: hoaDropDownList\r\n }\r\n } catch (exception) {\r\n notifyProblem(`The hoa list could not be retrieved.`)\r\n console.error(exception)\r\n }\r\n\r\n return {\r\n list: []\r\n }\r\n },\r\n\r\n // Owners List\r\n async loadDropDownOwnersList(\r\n {},\r\n { hoaID, startRecord = 1, recordCount = 10000, includeOwnerContacts = false } = {}\r\n ) {\r\n try {\r\n const { results: owners } = await kms.get('/Roster/Unit/List', {\r\n params: {\r\n hoaID: hoaID,\r\n includeOwnerContacts,\r\n startRecord,\r\n recordCount\r\n }\r\n })\r\n\r\n const dropDownOwners = owners\r\n .map(a => ({\r\n value: _get(a, ['primaryOwner', 'ownerID'], ''),\r\n\r\n label: a.primaryOwner\r\n ? `${a.primaryOwner.name} - ${\r\n a.address && a.address != undefined && a.address.addressOne\r\n ? a.address.addressOne\r\n : ''\r\n }`\r\n : '',\r\n ownername: a.primaryOwner ? a.primaryOwner.name : ''\r\n }))\r\n .filter(f => f.label.length > 0 && f.value > 0)\r\n\r\n if (isDebug == true) console.debug('owner drop down list=' + JSON.stringify(dropDownOwners))\r\n\r\n return {\r\n list: dropDownOwners\r\n }\r\n } catch (e) {\r\n notifyProblem(e)\r\n }\r\n\r\n return {\r\n list: null\r\n }\r\n }\r\n}\r\n/* eslint-enable no-empty-pattern */\r\n\r\nVue.use(Vuex)\r\nexport const hoaUtility = new Vuex.Store({\r\n state: {},\r\n mutations: {},\r\n getters: {},\r\n actions\r\n})\r\n","import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ImageSpinner.vue?vue&type=style&index=0&id=e745b496&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ImageSpinner.vue?vue&type=style&index=0&id=e745b496&lang=scss&scoped=true&\"","import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Slide.vue?vue&type=style&index=0&id=308229b2&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Slide.vue?vue&type=style&index=0&id=308229b2&lang=scss&scoped=true&\"","var compareAscending = require('./_compareAscending');\n\n/**\n * Used by `_.orderBy` to compare multiple properties of a value to another\n * and stable sort them.\n *\n * If `orders` is unspecified, all values are sorted in ascending order. Otherwise,\n * specify an order of \"desc\" for descending or \"asc\" for ascending sort order\n * of corresponding values.\n *\n * @private\n * @param {Object} object The object to compare.\n * @param {Object} other The other object to compare.\n * @param {boolean[]|string[]} orders The order to sort by for each property.\n * @returns {number} Returns the sort order indicator for `object`.\n */\nfunction compareMultiple(object, other, orders) {\n var index = -1,\n objCriteria = object.criteria,\n othCriteria = other.criteria,\n length = objCriteria.length,\n ordersLength = orders.length;\n\n while (++index < length) {\n var result = compareAscending(objCriteria[index], othCriteria[index]);\n if (result) {\n if (index >= ordersLength) {\n return result;\n }\n var order = orders[index];\n return result * (order == 'desc' ? -1 : 1);\n }\n }\n // Fixes an `Array#sort` bug in the JS engine embedded in Adobe applications\n // that causes it, under certain circumstances, to provide the same value for\n // `object` and `other`. See https://github.com/jashkenas/underscore/pull/1247\n // for more details.\n //\n // This also ensures a stable sort in V8 and other engines.\n // See https://bugs.chromium.org/p/v8/issues/detail?id=90 for more details.\n return object.index - other.index;\n}\n\nmodule.exports = compareMultiple;\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{style:({ display: 'flex' }),attrs:{\"links-menu\":\"\"}},[(_vm.breakpoint === 'desktop')?_c('ul',{staticClass:\"details-menu\",style:(_vm.styles_.ul),attrs:{\"role\":\"navigation\"}},_vm._l((_vm.tabs),function(tab,index){return _c('li',{key:tab.name},[_c('router-link',{staticClass:\"h7\",attrs:{\"to\":{\n name: (\"\" + _vm.prefix + (tab.name)),\n hash: '#tab',\n params: Object.assign(\n {\n index: index\n },\n _vm.params\n )\n }}},[_vm._v(\" \"+_vm._s(tab.label)+\" \")])],1)}),0):_vm._e(),_c('div',{style:({ flexGrow: 1 })},[(['tablet', 'mobile'].includes(_vm.breakpoint))?_c('b-field',[_c('b-select',{style:({ maxWidth: '300px', width: '100%', margin: '0 auto' }),attrs:{\"rounded\":\"\"},model:{value:(_vm.selectedTab),callback:function ($$v) {_vm.selectedTab=$$v},expression:\"selectedTab\"}},_vm._l((_vm.tabs),function(key,index){return _c('option',{key:index},[_vm._v(\" \"+_vm._s(key.label)+\" \")])}),0)],1):_vm._e(),_vm._t(\"default\")],2)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./index.vue?vue&type=template&id=bac35f7c&scoped=true&\"\nimport script from \"./index.vue?vue&type=script&lang=js&\"\nexport * from \"./index.vue?vue&type=script&lang=js&\"\nimport style0 from \"./index.vue?vue&type=style&index=0&id=bac35f7c&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"bac35f7c\",\n null\n \n)\n\nexport default component.exports","/*\r\n example:\r\n import { StorePhoto } from '@/services/WorkOrderRequests/WorkOrderRequestPhoto/StorePhotoFile';\r\n\r\n const { successful, documentId } = await StorePhoto ({\r\n photo,\r\n params: {\r\n workOrderRequestID\r\n }\r\n });\r\n if (!successful) {\r\n\r\n }\r\n*/\r\n\r\n/*\r\n example response:\r\n\r\n*/\r\nimport kms from '@/services/kms'\r\nimport _get from 'lodash/get'\r\n\r\nconst isDebug = false\r\n\r\nexport async function StorePhoto({ params, photo }) {\r\n if (isDebug === true) console.debug('in StorePhoto for work order requests...')\r\n const message = 'A problem occurred and the photo could not be uploaded.'\r\n\r\n try {\r\n const formData = new FormData()\r\n formData.append('file', photo)\r\n\r\n const results = await kms.post(\r\n `/WorkOrderRequests/WorkOrderRequestPhoto/StorePhotoFile?workOrderRequestID=${params.workOrderRequestID}`,\r\n formData,\r\n {\r\n 'Content-Type': 'multipart/form-data'\r\n }\r\n )\r\n\r\n if (isDebug === true) console.debug({ results })\r\n\r\n const documentId = _get(results, 'documentId', null)\r\n\r\n return {\r\n successful: true,\r\n message: '',\r\n documentId\r\n }\r\n } catch (exception) {\r\n console.error(exception)\r\n }\r\n\r\n return {\r\n successful: false,\r\n documentId: null,\r\n message\r\n }\r\n}\r\n","/*\r\n example:\r\n import { StoreMultiplePhotos } from '@/services/WorkOrderRequests/WorkOrderRequestPhoto/procedures/StoreMultiplePhotos';\r\n\r\n const { problems, message } = await StoreMultiplePhotos ({\r\n photo,\r\n params: {\r\n workOrderRequestID\r\n }\r\n });\r\n if (problems >= 1) {\r\n notifyProblem (message);\r\n }\r\n*/\r\n\r\n/*\r\n example response:\r\n\r\n*/\r\nimport _get from 'lodash/get'\r\n//\r\nimport { StorePhoto } from '../StorePhotoFile'\r\n//\r\nlet message = ({ problems }) => {\r\n let verb = 'were'\r\n let amount = 's'\r\n if (problems === 1) {\r\n verb = 'was'\r\n amount = ''\r\n }\r\n\r\n return `A problem occurred and ${problems} photo${amount} ${verb} not stored successfully.`\r\n}\r\n//\r\nexport async function StoreMultiplePhotos({ photos, params }) {\r\n if (!Array.isArray(photos) || photos.length === 0) {\r\n return {\r\n problems: 0,\r\n message: ''\r\n }\r\n }\r\n\r\n const results = await Promise.all(\r\n photos.map(photo => {\r\n return StorePhoto({\r\n params,\r\n photo\r\n })\r\n })\r\n )\r\n\r\n let problems = 0\r\n for (let a = 0; a < results.length; a++) {\r\n const result = results[a]\r\n\r\n if (_get(result, 'successful', '') !== true) {\r\n problems++\r\n continue\r\n }\r\n }\r\n\r\n return {\r\n problems,\r\n message: message({\r\n problems\r\n })\r\n }\r\n}\r\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('transition',{attrs:{\"name\":_vm.name}},[_vm._t(\"default\")],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n\r\n\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Slide.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Slide.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Slide.vue?vue&type=template&id=308229b2&scoped=true&\"\nimport script from \"./Slide.vue?vue&type=script&lang=js&\"\nexport * from \"./Slide.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Slide.vue?vue&type=style&index=0&id=308229b2&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"308229b2\",\n null\n \n)\n\nexport default component.exports","/*\r\n example:\r\n import { getVOccurrenceList } from '@/services/ViolationIssue/ViolationOccurrence/List';\r\n\r\n const { list, successful, message } = await getVOccurrenceList ({\r\n json: {\r\n hoaID,\r\n violationID\r\n }\r\n });\r\n if (!successful) {\r\n console.error (message);\r\n return;\r\n }\r\n*/\r\n//\r\nimport kms from '@/services/kms'\r\nimport _get from 'lodash/get'\r\n//\r\nexport async function getVOccurrenceList({ json, kms: kms_ = kms } = {}) {\r\n let message = `The occurrence list could not be retrieved.`\r\n\r\n try {\r\n const result = await kms_.get(`/ViolationIssue/ViolationOccurrence/List`, {\r\n params: json\r\n })\r\n\r\n console.log({\r\n result\r\n })\r\n\r\n return {\r\n successful: true,\r\n message: '',\r\n list: _get(result, 'results', [])\r\n }\r\n } catch (exception) {\r\n console.error(exception)\r\n }\r\n\r\n return {\r\n successful: false,\r\n message,\r\n list: null\r\n }\r\n}\r\n\r\n///////\r\n","var baseForOwn = require('./_baseForOwn'),\n createBaseEach = require('./_createBaseEach');\n\n/**\n * The base implementation of `_.forEach` without support for iteratee shorthands.\n *\n * @private\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Array|Object} Returns `collection`.\n */\nvar baseEach = createBaseEach(baseForOwn);\n\nmodule.exports = baseEach;\n","/*\r\n import { getOwnersList } from '@/services/Roster/Unit/sequences/getOwnersList';\r\n\r\n const { list } = await getOwnersList ({\r\n hoaID\r\n });\r\n */\r\n//\r\nimport { getUnitList } from '../List'\r\nimport _get from 'lodash/get'\r\nimport { getString } from '@/utilities/get/string'\r\n//\r\nexport async function getOwnersList({ hoaID }) {\r\n const message = 'The list of owners could not be retrieved'\r\n\r\n try {\r\n const { list, successful } = await getUnitList({\r\n hoaID\r\n })\r\n if (successful) {\r\n return {\r\n list: list\r\n .map(prop => {\r\n let value = _get(prop, ['primaryOwner', 'ownerID'], '')\r\n\r\n const name = getString(prop, ['primaryOwner', 'name'], '')\r\n const address = getString(prop, ['address', 'addressOne'], '')\r\n\r\n return {\r\n data: prop,\r\n value,\r\n label: `${name} - ${address}`\r\n }\r\n })\r\n .filter(owner => {\r\n if (typeof owner.value !== 'number' || owner.value < 1) {\r\n console.debug(`ownerID value for owner isn't valid`, { owner, list })\r\n return false\r\n }\r\n\r\n return true\r\n }),\r\n successful: true,\r\n message: ''\r\n }\r\n }\r\n } catch (x) {\r\n console.error('An exception occurred while attempting to get a parsed list of owners')\r\n console.error(x)\r\n }\r\n\r\n return {\r\n successful: false,\r\n message,\r\n list: []\r\n }\r\n}\r\n","/*\r\n import { getArray } from '@/utilities/get/Array'\r\n\r\n const array = getArray ()\r\n */\r\n\r\nimport _get from 'lodash/get'\r\n\r\nexport function getArray(a, b, c) {\r\n try {\r\n const variable = _get(a, b, c)\r\n\r\n if (Array.isArray(variable)) {\r\n return variable\r\n }\r\n } catch (x) {\r\n console.error(x)\r\n }\r\n\r\n return []\r\n}\r\n","/*\r\n import { listSteps } from '@/services/ViolationIssue/ViolationStep/List';\r\n\r\n // for example:\r\n const { successful, message, steps } = await listSteps ({\r\n params: {\r\n hoaID,\r\n violationID\r\n }\r\n });\r\n if (!successful) {\r\n notifyProblem ('A problem occurred and the violation could not be reported');\r\n return;\r\n }\r\n\r\n*/\r\n//\r\nimport _get from 'lodash/get'\r\n//\r\nimport kms from '@/services/kms'\r\n//\r\nexport async function listSteps({ kms: kms_ = kms, params } = {}) {\r\n let message = `The list of steps could not be retrieved.`\r\n\r\n try {\r\n const result = await kms_.get(`/ViolationIssue/ViolationStep/List`, {\r\n params\r\n })\r\n\r\n let steps = _get(result, 'results', [])\r\n if (!Array.isArray(steps)) {\r\n steps = []\r\n }\r\n\r\n return {\r\n successful: true,\r\n message: null,\r\n steps\r\n }\r\n } catch (exception) {\r\n console.error(exception)\r\n }\r\n\r\n return {\r\n successful: false,\r\n message,\r\n list: []\r\n }\r\n}\r\n","var arrayMap = require('./_arrayMap'),\n baseGet = require('./_baseGet'),\n baseIteratee = require('./_baseIteratee'),\n baseMap = require('./_baseMap'),\n baseSortBy = require('./_baseSortBy'),\n baseUnary = require('./_baseUnary'),\n compareMultiple = require('./_compareMultiple'),\n identity = require('./identity'),\n isArray = require('./isArray');\n\n/**\n * The base implementation of `_.orderBy` without param guards.\n *\n * @private\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function[]|Object[]|string[]} iteratees The iteratees to sort by.\n * @param {string[]} orders The sort orders of `iteratees`.\n * @returns {Array} Returns the new sorted array.\n */\nfunction baseOrderBy(collection, iteratees, orders) {\n if (iteratees.length) {\n iteratees = arrayMap(iteratees, function(iteratee) {\n if (isArray(iteratee)) {\n return function(value) {\n return baseGet(value, iteratee.length === 1 ? iteratee[0] : iteratee);\n }\n }\n return iteratee;\n });\n } else {\n iteratees = [identity];\n }\n\n var index = -1;\n iteratees = arrayMap(iteratees, baseUnary(baseIteratee));\n\n var result = baseMap(collection, function(value, key, collection) {\n var criteria = arrayMap(iteratees, function(iteratee) {\n return iteratee(value);\n });\n return { 'criteria': criteria, 'index': ++index, 'value': value };\n });\n\n return baseSortBy(result, function(object, other) {\n return compareMultiple(object, other, orders);\n });\n}\n\nmodule.exports = baseOrderBy;\n","import mod from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=style&index=0&id=2de6ad07&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=style&index=0&id=2de6ad07&lang=scss&scoped=true&\"","/*\r\n example:\r\n import { StorePhoto } from '@/services/ViolationIssue/ViolationOccurrencePhoto/StorePhoto';\r\n\r\n const { successful, documentId } = await StorePhoto ({\r\n hoaID,\r\n photo\r\n });\r\n if (!successful) {\r\n\r\n }\r\n*/\r\n\r\n/*\r\n example response:\r\n containerID: 24\r\n contentType: \"image/jpeg\"\r\n createdDate: \"2021-08-28T01:00:43.9473631+00:00\"\r\n deletedDate: null\r\n description: \"\"\r\n documentId: 1168\r\n fileSize: 3370\r\n filename: \"3.jpeg\"\r\n modifiedDate: \"2021-08-28T01:00:43.9473631+00:00\"\r\n version: 1\r\n*/\r\nimport kms from '@/services/kms'\r\nimport _get from 'lodash/get'\r\n//\r\nexport async function StorePhoto({ hoaID, photo }) {\r\n try {\r\n const path = `/ViolationIssue/ViolationOccurrencePhoto/StorePhoto?hoaID=${hoaID}`\r\n\r\n console.log({\r\n hoaID,\r\n photo\r\n })\r\n\r\n const formData = new FormData()\r\n formData.append('file', photo)\r\n const results = await kms.post(path, formData, {\r\n 'Content-Type': 'multipart/form-data'\r\n })\r\n\r\n console.log({ results })\r\n\r\n const documentId = _get(results, 'documentId', null)\r\n\r\n return {\r\n successful: true,\r\n photo,\r\n documentId\r\n }\r\n } catch (exception) {\r\n console.error(exception)\r\n }\r\n\r\n return {\r\n successful: false,\r\n photo,\r\n documentId: null\r\n }\r\n}\r\n","/*\r\n import { StoreMultiplePhotos } from '@/services/ViolationIssue/ViolationOccurrencePhoto/sequences/StoreMultiplePhotos';\r\n\r\n const { successful, documentIds } = await StoreMultiplePhotos ({\r\n hoaID,\r\n\r\n // Array of Files\r\n photos: []\r\n });\r\n if (!successful) {\r\n\r\n }\r\n\r\n*/\r\n\r\nimport { StorePhoto } from '@/services/ViolationIssue/ViolationOccurrencePhoto/StorePhoto'\r\n\r\nexport async function StoreMultiplePhotos({ hoaID, photos }) {\r\n const results = await Promise.all(\r\n photos.map(photo => {\r\n return StorePhoto({\r\n hoaID,\r\n photo\r\n })\r\n })\r\n )\r\n\r\n const problems = []\r\n const uploads = []\r\n for (let a = 0; a < results.length; a++) {\r\n const result = results[a]\r\n const { successful, documentId } = result\r\n if (successful === false) {\r\n problems.push(result.photo)\r\n }\r\n\r\n if (successful === true) {\r\n uploads.push(documentId)\r\n }\r\n }\r\n\r\n return {\r\n uploads,\r\n problems\r\n }\r\n}\r\n","/*\r\n example:\r\n import { getUnitList } from '@/services/Roster/Unit/List';\r\n\r\n const { list, exception } = await getUnitList ({\r\n hoaID\r\n });\r\n if (exception) {\r\n console.error (exception);\r\n return;\r\n }\r\n*/\r\n//\r\nimport _get from 'lodash/get'\r\n//\r\nimport kms from '@/services/kms'\r\n//\r\nexport async function getUnitList({ hoaID, kms: kms_ = kms } = {}) {\r\n try {\r\n const result = await kms_.get(`/Roster/Unit/List`, {\r\n params: {\r\n hoaID,\r\n includeOwnerContacts: false,\r\n startRecord: 1,\r\n recordCount: 99999\r\n }\r\n })\r\n\r\n let list = _get(result, 'results', [])\r\n if (!Array.isArray(list)) {\r\n list = []\r\n }\r\n\r\n console.debug('unit list=' + JSON.stringify(list))\r\n\r\n return {\r\n successful: true,\r\n list\r\n }\r\n } catch (exception) {\r\n console.error(exception)\r\n }\r\n\r\n return {\r\n list: [],\r\n successful: false\r\n }\r\n}\r\n\r\n///////\r\n","/*\r\n import { workOrderList } from '@/services/WorkOrders/store'\r\n*/\r\n\r\nimport Vue from 'vue'\r\nimport Vuex from 'vuex'\r\nimport _get from 'lodash/get'\r\n\r\nimport { notifyProblem, notifyError, notifyMessage } from '@/services/notify'\r\nimport kms from '@/services/kms'\r\n\r\nconst isDebug = true\r\n\r\n/* eslint-disable no-empty-pattern */\r\nconst actions = {\r\n async getAccessToken({}, { credentialsName }) {\r\n try {\r\n console.debug('in getAccessToken...')\r\n const credentials = await kms.get(`/Support/ThirdPartyCredentials/GetCredentialsSingle`, {\r\n params: {\r\n credentialsName\r\n }\r\n })\r\n\r\n if (isDebug == true) console.debug('getAccessToken=')\r\n\r\n return {\r\n result: credentials\r\n }\r\n } catch (exception) {\r\n notifyProblem(`There was a problem retrieving the result.`)\r\n console.error(exception)\r\n }\r\n\r\n return {\r\n result: {}\r\n }\r\n },\r\n\r\n async loadLocationTypes({}) {\r\n try {\r\n const myList = [\r\n {\r\n value: 'My Property',\r\n label: 'My Property'\r\n },\r\n {\r\n value: 'Common Area',\r\n label: 'Common Area'\r\n }\r\n ]\r\n\r\n if (myList) {\r\n myList.unshift({\r\n value: '<-Select a Location Type->',\r\n label: '<-Select a Location Type->'\r\n })\r\n }\r\n\r\n return {\r\n list: myList\r\n }\r\n } catch (exception) {\r\n notifyProblem(`The Location Types could not be retrieved.`)\r\n console.error(exception)\r\n }\r\n\r\n return {\r\n list: []\r\n }\r\n },\r\n\r\n async loadLocationTypesManagement({}) {\r\n try {\r\n const myList = [\r\n {\r\n value: 'My Property',\r\n label: 'Property'\r\n },\r\n {\r\n value: 'Common Area',\r\n label: 'Common Area'\r\n }\r\n ]\r\n\r\n if (myList) {\r\n myList.unshift({\r\n value: '<-Select a Location Type->',\r\n label: '<-Select a Location Type->'\r\n })\r\n }\r\n\r\n return {\r\n list: myList\r\n }\r\n } catch (exception) {\r\n notifyProblem(`The Location Types could not be retrieved.`)\r\n console.error(exception)\r\n }\r\n\r\n return {\r\n list: []\r\n }\r\n },\r\n\r\n /*\r\n const { list } = await workOrderList.dispatch ('getWorkOrderList', {\r\n hoaId\r\n });\r\n */\r\n async getWorkOrderList({}, { hoaId, unitID }) {\r\n console.log('in getWorkOrderList...')\r\n try {\r\n const result = await kms.get('/WorkOrders/WorkOrder/ListBasic', {\r\n params: {\r\n hoaId,\r\n unitID: unitID ? unitID : null\r\n }\r\n })\r\n\r\n if (isDebug == true) console.debug('getWorkOrderList log=' + JSON.stringify(result))\r\n\r\n return {\r\n list: result.results\r\n }\r\n } catch (exception) {\r\n notifyProblem(`The work orders list could not be retrieved.`)\r\n console.error(exception)\r\n }\r\n\r\n return {\r\n list: []\r\n }\r\n },\r\n\r\n async deleteWorkOrder({ dispatch }, { workOrderID, done }) {\r\n try {\r\n const path = `/WorkOrders/WorkOrder/${workOrderID}?forceDelete=false`\r\n\r\n const results = await kms.delete(path)\r\n\r\n if (this.isDebug == true) console.debug('results=' + JSON.stringify(results))\r\n\r\n if (dispatch && dispatch != undefined) console.debug(dispatch)\r\n\r\n const wasDeleted = _get(results, 'deleted', false)\r\n\r\n if (wasDeleted === true) {\r\n notifyMessage(`Successfully deleted the work order.`)\r\n done()\r\n } else {\r\n notifyError('There was a problem deleting the work order.')\r\n }\r\n } catch (exception) {\r\n notifyProblem(`There was a problem deleting this work order.`)\r\n console.error(exception)\r\n }\r\n },\r\n\r\n async cancelWorkOrder({ dispatch }, { workOrderID, cancelledReason, done }) {\r\n try {\r\n const path = `/WorkOrders/WorkOrder/CancelWorkOrder`\r\n\r\n const results = await kms.put(path, {\r\n workOrderID,\r\n cancelledReason,\r\n cancelledByAspNetUserID: 'stub'\r\n })\r\n\r\n if (this.isDebug == true) console.debug('results=' + JSON.stringify(results))\r\n\r\n if (dispatch && dispatch != undefined) console.debug(dispatch)\r\n\r\n if (results !== undefined && results && results.workOrderID) {\r\n notifyMessage(`Successfully cancelled the work order.`)\r\n done()\r\n } else {\r\n notifyError('There was a problem cancelling the work order.')\r\n }\r\n } catch (exception) {\r\n notifyProblem(`There was a problem cancelling this work order.`)\r\n console.error(exception)\r\n }\r\n },\r\n\r\n /*\r\n \r\n */\r\n async addWorkOrder(\r\n { dispatch },\r\n {\r\n workOrderTypeID,\r\n sourceWorkOrderRequestID,\r\n vendorID,\r\n hoaID,\r\n unitID,\r\n locationDescription,\r\n description,\r\n detailedDescription,\r\n specialInstructions,\r\n latitude,\r\n longitude,\r\n locationType,\r\n completeByDate,\r\n done\r\n }\r\n ) {\r\n try {\r\n const results = await kms.post(`/WorkOrders/WorkOrder`, {\r\n workOrderTypeID,\r\n sourceWorkOrderRequestID,\r\n vendorID,\r\n hoaID,\r\n unitID,\r\n locationDescription,\r\n description,\r\n detailedDescription,\r\n specialInstructions,\r\n latitude,\r\n longitude,\r\n locationType,\r\n completeByDate\r\n })\r\n\r\n if (this.isDebug == true) console.debug('results=' + JSON.stringify(results))\r\n\r\n if (dispatch && dispatch != undefined) console.debug(dispatch)\r\n\r\n if (results.workOrderID > 0) {\r\n notifyMessage(`Successfully added work order.`)\r\n done({ details: results })\r\n return {\r\n details: results\r\n }\r\n } else {\r\n notifyError('There was a problem adding the new work order.')\r\n }\r\n } catch (exception) {\r\n notifyProblem(`There was a problem adding this work order.`)\r\n console.error(exception)\r\n }\r\n\r\n return {\r\n details: {}\r\n }\r\n },\r\n\r\n /*\r\n await workOrderList.dispatch('transmitNotification', {\r\n workOrderID: id,\r\n done: ({ details }) => {\r\n console.debug('details=' + details)\r\n this.loading = false\r\n }\r\n })\r\n */\r\n async transmitNotification({ dispatch }, { workOrderID, done }) {\r\n try {\r\n const results = await kms.post(\r\n `/WorkOrders/WorkOrder/TransmitNotificationToVendor?workOrderID=${workOrderID}`,\r\n {\r\n workOrderID\r\n }\r\n )\r\n\r\n if (this.isDebug == true) console.debug('results=' + JSON.stringify(results))\r\n\r\n if (dispatch && dispatch != undefined) console.debug(dispatch)\r\n\r\n if (results && results === true) {\r\n notifyMessage(`Successfully transmitted work order notification.`)\r\n done({ details: results })\r\n return {\r\n details: results\r\n }\r\n } else {\r\n notifyError('There was a problem transmitting the work order notification.')\r\n }\r\n } catch (exception) {\r\n notifyProblem(`There was a problem transmitting the work order notification.`)\r\n console.error(exception)\r\n }\r\n }\r\n}\r\n/* eslint-enable no-empty-pattern */\r\n\r\nVue.use(Vuex)\r\nexport const workOrderList = new Vuex.Store({\r\n state: {},\r\n mutations: {},\r\n getters: {},\r\n actions\r\n})\r\n","/*\r\n import { listViolations } from '@/services/ViolationIssue/Violation/List';\r\n\r\n // for example:\r\n const { successful, message, list } = await listViolations ({\r\n hoaID,\r\n\r\n // optional\r\n ownerID\r\n });\r\n if (!successful) {\r\n notifyProblem (message);\r\n return;\r\n }\r\n\r\n*/\r\n\r\nimport _get from 'lodash/get'\r\nimport kms from '@/services/kms'\r\n\r\nexport async function listViolations({ kms: kms_ = kms, hoaID, ownerID = null } = {}) {\r\n let message = ``\r\n\r\n if (!Number.isNaN(ownerID)) {\r\n let params = {\r\n hoaID\r\n }\r\n if (typeof ownerID === 'number') {\r\n params.ownerID = ownerID\r\n }\r\n\r\n try {\r\n const result = await kms_.get(`/ViolationIssue/Violation/ListBasic`, {\r\n params\r\n })\r\n\r\n let list = _get(result, 'results', [])\r\n if (!Array.isArray(list)) {\r\n console.debug(result)\r\n }\r\n\r\n return {\r\n successful: true,\r\n message: null,\r\n list\r\n }\r\n } catch (exception) {\r\n console.error(exception)\r\n message = 'The list of violations could not be retrieved'\r\n }\r\n }\r\n\r\n return {\r\n successful: false,\r\n message,\r\n list: []\r\n }\r\n}\r\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return ((_vm.visible && _vm.visible == true) || _vm.visible == undefined)?_c('div',{style:(_vm.styles),attrs:{\"row-button\":\"\"}},[(_vm.model === 'router')?_c('router-link',{class:_vm.buttonClass,attrs:{\"to\":_vm.to}},[_vm._v(\" \"+_vm._s(_vm.text)+\" \")]):(_vm.model === 'text')?_c('button',{class:_vm.buttonClass,attrs:{\"aria-label\":_vm.text},on:{\"click\":_vm.clicked}},[_vm._v(\" \"+_vm._s(_vm.text)+\" \")]):_vm._e()],1):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./index.vue?vue&type=template&id=5b9c3722&\"\nimport script from \"./index.vue?vue&type=script&lang=js&\"\nexport * from \"./index.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","/*\r\n example:\r\n import { getPhoto } from '@/services/ViolationIssue/ViolationOccurrencePhoto/GetFile';\r\n\r\n const { photo, successful, message } = await getPhoto ({\r\n params: {}\r\n });\r\n if (!successful) {\r\n console.error (message);\r\n return;\r\n }\r\n*/\r\n//\r\nimport kms from '@/services/kms'\r\n//\r\nexport async function getPhoto({ params, kms: kms_ = kms } = {}) {\r\n let message = `A photo could not be retrieved.`\r\n\r\n try {\r\n const result = await kms_.get(`/ViolationIssue/ViolationOccurrencePhoto/GetFile`, {\r\n params\r\n })\r\n\r\n return {\r\n successful: true,\r\n message: '',\r\n photo: result\r\n }\r\n } catch (exception) {\r\n console.error(exception)\r\n }\r\n\r\n return {\r\n successful: false,\r\n message,\r\n photo: null\r\n }\r\n}\r\n\r\n///////\r\n","/*\r\n import { getMultiplePhotos } from '@/services/ViolationIssue/ViolationOccurrencePhoto/sequences/GetMultiple';\r\n\r\n const { photos, problems } = await getMultiplePhotos ({\r\n paramsList: []\r\n });\r\n if (!successful) {\r\n\r\n }\r\n*/\r\n\r\nimport { getPhoto } from '../GetFile'\r\n\r\nexport async function getMultiplePhotos({ paramsList }) {\r\n const results = await Promise.all(\r\n paramsList.map(params => {\r\n return getPhoto({\r\n params\r\n })\r\n })\r\n )\r\n\r\n const problems = []\r\n const retrievals = []\r\n\r\n for (let a = 0; a < results.length; a++) {\r\n const result = results[a]\r\n const { successful } = result\r\n\r\n if (successful === true) {\r\n retrievals.push({\r\n content: result.photo\r\n })\r\n } else {\r\n problems.push(result)\r\n }\r\n }\r\n\r\n return {\r\n photos: retrievals,\r\n problems\r\n }\r\n}\r\n","var $ = require('../internals/export');\n\n// `Number.isNaN` method\n// https://tc39.github.io/ecma262/#sec-number.isnan\n$({ target: 'Number', stat: true }, {\n isNaN: function isNaN(number) {\n // eslint-disable-next-line no-self-compare\n return number != number;\n }\n});\n","var baseOrderBy = require('./_baseOrderBy'),\n isArray = require('./isArray');\n\n/**\n * This method is like `_.sortBy` except that it allows specifying the sort\n * orders of the iteratees to sort by. If `orders` is unspecified, all values\n * are sorted in ascending order. Otherwise, specify an order of \"desc\" for\n * descending or \"asc\" for ascending sort order of corresponding values.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Array[]|Function[]|Object[]|string[]} [iteratees=[_.identity]]\n * The iteratees to sort by.\n * @param {string[]} [orders] The sort orders of `iteratees`.\n * @param- {Object} [guard] Enables use as an iteratee for methods like `_.reduce`.\n * @returns {Array} Returns the new sorted array.\n * @example\n *\n * var users = [\n * { 'user': 'fred', 'age': 48 },\n * { 'user': 'barney', 'age': 34 },\n * { 'user': 'fred', 'age': 40 },\n * { 'user': 'barney', 'age': 36 }\n * ];\n *\n * // Sort by `user` in ascending order and by `age` in descending order.\n * _.orderBy(users, ['user', 'age'], ['asc', 'desc']);\n * // => objects for [['barney', 36], ['barney', 34], ['fred', 48], ['fred', 40]]\n */\nfunction orderBy(collection, iteratees, orders, guard) {\n if (collection == null) {\n return [];\n }\n if (!isArray(iteratees)) {\n iteratees = iteratees == null ? [] : [iteratees];\n }\n orders = guard ? undefined : orders;\n if (!isArray(orders)) {\n orders = orders == null ? [] : [orders];\n }\n return baseOrderBy(collection, iteratees, orders);\n}\n\nmodule.exports = orderBy;\n","var isArrayLike = require('./isArrayLike');\n\n/**\n * Creates a `baseEach` or `baseEachRight` function.\n *\n * @private\n * @param {Function} eachFunc The function to iterate over a collection.\n * @param {boolean} [fromRight] Specify iterating from right to left.\n * @returns {Function} Returns the new base function.\n */\nfunction createBaseEach(eachFunc, fromRight) {\n return function(collection, iteratee) {\n if (collection == null) {\n return collection;\n }\n if (!isArrayLike(collection)) {\n return eachFunc(collection, iteratee);\n }\n var length = collection.length,\n index = fromRight ? length : -1,\n iterable = Object(collection);\n\n while ((fromRight ? index-- : ++index < length)) {\n if (iteratee(iterable[index], index, iterable) === false) {\n break;\n }\n }\n return collection;\n };\n}\n\nmodule.exports = createBaseEach;\n","var baseEach = require('./_baseEach'),\n isArrayLike = require('./isArrayLike');\n\n/**\n * The base implementation of `_.map` without support for iteratee shorthands.\n *\n * @private\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Array} Returns the new mapped array.\n */\nfunction baseMap(collection, iteratee) {\n var index = -1,\n result = isArrayLike(collection) ? Array(collection.length) : [];\n\n baseEach(collection, function(value, key, collection) {\n result[++index] = iteratee(value, key, collection);\n });\n return result;\n}\n\nmodule.exports = baseMap;\n","/*\r\n import { violationListStore } from '@/pages/Management/violations/Main/store.js'\r\n\r\n this.unsubViolationListStore = violationListStore.subscribe ((mutation, state) => {\r\n const mType = mutation.type;\r\n\r\n\r\n });\r\n*/\r\n\r\nimport _set from 'lodash/set'\r\nimport Vue from 'vue'\r\nimport Vuex from 'vuex'\r\n//\r\nimport { notifyProblem } from '@/services/notify'\r\n//\r\nimport { listViolations } from '@/services/ViolationIssue/Violation/List'\r\n//\r\nVue.use(Vuex)\r\nexport const violationListStore = new Vuex.Store({\r\n /* eslint-disable no-empty-pattern */\r\n actions: {\r\n /*\r\n const { list } = await violationListStore.dispatch ('refreshList', {\r\n hoaID\r\n });\r\n */\r\n async refreshList({ commit }, { hoaID }) {\r\n const { successful, list, message } = await listViolations({\r\n hoaID\r\n })\r\n if (!successful) {\r\n notifyProblem(message)\r\n }\r\n\r\n commit('refreshList', { list, hoaID })\r\n\r\n return {\r\n list\r\n }\r\n }\r\n },\r\n /* eslint-enable no-empty-pattern */\r\n\r\n getters: {},\r\n mutations: {\r\n refreshList(state, { list, hoaID }) {\r\n _set(state, ['lists', hoaID], list)\r\n }\r\n },\r\n\r\n /*\r\n\r\n */\r\n state: {\r\n /*\r\n lists [ hoaId ] = []\r\n\r\n e.g.\r\n lists = {\r\n 0: []\r\n }\r\n */\r\n lists: {}\r\n }\r\n})\r\n","/*\r\n example:\r\n import { getVActionList } from '@/services/Violation/ViolationAction/List';\r\n\r\n const { list, successful, message } = await getVActionList ({\r\n hoaID,\r\n\r\n // optional\r\n escalationID\r\n });\r\n if (!successful) {\r\n console.error (exception);\r\n return;\r\n }\r\n*/\r\n//\r\nimport _get from 'lodash/get'\r\n//\r\nimport kms from '@/services/kms'\r\n//\r\nexport async function getVActionList({ hoaID, escalationID = null, kms: kms_ = kms } = {}) {\r\n let message = `The action list could not be retrieved.`\r\n\r\n console.log('\\n\\ngetVActionList\\n')\r\n\r\n let params = {\r\n hoaID\r\n }\r\n\r\n if (['string', 'number'].includes(typeof escalationID)) {\r\n params.violationEscalationID = escalationID\r\n } else {\r\n console.error(`/Violation/ViolationAction/List`, { escalationID })\r\n }\r\n\r\n try {\r\n const result = await kms_.get(`/Violation/ViolationAction/List`, {\r\n params\r\n })\r\n\r\n let list = []\r\n const actions = _get(result, 'results', [])\r\n if (Array.isArray(actions)) {\r\n list = actions\r\n }\r\n\r\n return {\r\n successful: true,\r\n message: '',\r\n list\r\n }\r\n } catch (exception) {\r\n console.error(exception)\r\n }\r\n\r\n return {\r\n successful: false,\r\n message,\r\n list: null\r\n }\r\n}\r\n\r\n///////\r\n","import mod from \"-!../../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=style&index=0&lang=scss&\"; export default mod; export * from \"-!../../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=style&index=0&lang=scss&\"","/*\r\n import { base64toBlob, showPdf } from '@/services/blobutility'\r\n*/\r\n\r\nexport const base64toBlob = (b64Data, contentType) => {\r\n const sliceSize = 512\r\n const byteCharacters = atob(b64Data)\r\n const byteArrays = []\r\n\r\n for (let offset = 0; offset < byteCharacters.length; offset += sliceSize) {\r\n const slice = byteCharacters.slice(offset, offset + sliceSize)\r\n\r\n const byteNumbers = new Array(slice.length)\r\n for (let i = 0; i < slice.length; i++) {\r\n byteNumbers[i] = slice.charCodeAt(i)\r\n }\r\n\r\n const byteArray = new Uint8Array(byteNumbers)\r\n byteArrays.push(byteArray)\r\n }\r\n\r\n const blob = new Blob(byteArrays, { type: contentType })\r\n return blob\r\n}\r\n\r\nexport const showPdf = blob => {\r\n var newBlob = new Blob([blob], { type: 'application/pdf' })\r\n\r\n if (window.navigator && window.navigator.msSaveOrOpenBlob) {\r\n window.navigator.msSaveOrOpenBlob(newBlob)\r\n } else {\r\n const data = window.URL.createObjectURL(newBlob)\r\n\r\n var link = document.createElement('a')\r\n link.download = 'download.pdf'\r\n link.setAttribute('download', 'download.pdf')\r\n link.href = data\r\n\r\n window.open(link, '_blank')\r\n }\r\n\r\n return\r\n}\r\n\r\nexport const downloadPdf = blob => {\r\n var newBlob = new Blob([blob], { type: 'application/pdf' })\r\n\r\n if (window.navigator && window.navigator.msSaveOrOpenBlob) {\r\n window.navigator.msSaveOrOpenBlob(newBlob)\r\n } else {\r\n const data = window.URL.createObjectURL(newBlob)\r\n var link = document.createElement('a')\r\n link.download = 'download.pdf'\r\n link.setAttribute('download', 'download.pdf')\r\n link.href = data\r\n link.click()\r\n\r\n setTimeout(function() {\r\n window.URL.revokeObjectURL(data)\r\n 100\r\n })\r\n }\r\n\r\n return\r\n}\r\n\r\nexport const showAnyType = (blob, mimeType) => {\r\n console.debug('showAnyType...')\r\n var newBlob = new Blob([blob], { type: mimeType })\r\n if (window.navigator && window.navigator.msSaveOrOpenBlob) {\r\n window.navigator.msSaveOrOpenBlob(newBlob)\r\n } else {\r\n const data = window.URL.createObjectURL(newBlob)\r\n var link = document.createElement('a')\r\n link.href = data\r\n\r\n window.open(data, '_blank')\r\n\r\n setTimeout(function() {\r\n window.URL.revokeObjectURL(data)\r\n 100\r\n })\r\n }\r\n\r\n return\r\n}\r\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"tile is-parent is-12\"},[_c('article',{staticClass:\"card\",style:({\n padding: '1rem',\n width: '100%'\n })},[_vm._m(0),_vm._l((_vm.steps),function(step,index){return _c('div',{key:index,staticClass:\"card\",style:({\n position: 'relative',\n padding: '1rem',\n boxShadow: '0 12px 18px 0 rgba(0, 0, 0, 0.05)',\n marginBottom: '12px'\n }),attrs:{\"vio-step\":\"\"}},[_c('div',{style:({\n position: 'absolute',\n top: '12px',\n right: '12px',\n color: _vm.color[8]\n }),attrs:{\"vio-step-date\":\"\"}},[_vm._v(\" \"+_vm._s(step.observationDate)+\" \")]),_c('b-tag',{attrs:{\"size\":\"is-large\",\"vio-step-count\":\"\"}},[_vm._v(\"Step \"+_vm._s(step.count))]),_c('b-tag',{style:({ marginLeft: '12px' }),attrs:{\"size\":\"is-large\",\"vio-step-name\":\"\"}},[_vm._v(_vm._s(step.actionName))]),_c('div',{style:({ padding: '20px 0 20px 10px' })},[_c('div',{staticClass:\"columns\",style:({ display: 'flex' })},[_c('div',{staticClass:\"column is-2\",style:({ color: _vm.color[8] })},[_vm._v(\"Observed by:\")]),_c('div',{staticClass:\"column is-9\",style:({ color: _vm.color[8], fontWeight: 'bold' })},[_vm._v(\" \"+_vm._s(step.observedBy)+\" \")])]),_c('div',{staticClass:\"columns\",style:({ display: 'flex' })},[_c('div',{staticClass:\"column is-2\",style:({ color: _vm.color[8] })},[_vm._v(\"Description:\")]),(step.description.length <= 200)?_c('div',{staticClass:\"column is-9\",style:({ color: _vm.color[8], fontWeight: 'bold' })},[_vm._v(\" \"+_vm._s(step.description)+\" \")]):_vm._e(),(step.description.length > 200)?_c('div',{staticClass:\"column is-9\",style:({ color: _vm.color[8], fontWeight: 'bold' })},[_vm._v(\" \"+_vm._s(step.description.slice(1, 200))),(step.description.length > 200)?_c('span',{staticClass:\"pt-5 pb-3 pl-3\"},[_c('b-button',{staticClass:\"p-2 font-bold button is-small is-outline is-rounded\",staticStyle:{\"height\":\"20px\"},attrs:{\"title\":\"click to expand/collapse the description\"},on:{\"click\":function($event){$event.preventDefault();return _vm.handleEllipsis()}}},[_vm._v(_vm._s((\"\" + (_vm.showEllipsis === false ? 'Read More...' : 'Read Less...'))))])],1):_vm._e(),(step.description.length > 200 && _vm.showEllipsis === true)?_c('span',{staticClass:\"column is-9 pl-2\",style:({ color: _vm.color[8], fontWeight: 'bold' })},[_vm._v(_vm._s(step.description.slice(200, step.description.length)))]):_vm._e()]):_vm._e()])]),_c('div',{staticClass:\"property-photo-gallery\",style:({\n position: 'relative',\n width: '100%',\n height: '80%',\n paddingRight: '10px',\n paddingLeft: '6px'\n })},_vm._l((step.photos),function(photo,index){return _c('figure',{key:index,style:({\n position: 'relative',\n display: 'inline-flex',\n justifyContent: 'center',\n alignItems: 'center',\n margin: '4px',\n height: '140px',\n width: '140px',\n overflow: 'hidden',\n borderRadius: '6px',\n boxShadow: '0 12px 18px 0 rgba(0, 0, 0, 0.05)'\n }),attrs:{\"vio-step-photo\":\"\",\"tabindex\":\"0\",\"aria-label\":'photo ' + (index + 1)},on:{\"click\":function($event){$event.preventDefault();return _vm.openPhotoModal(photo)}}},[_c('transition',{attrs:{\"name\":\"fade\"}},[_c('img',{style:({\n position: 'absolute',\n top: '50%',\n left: '50%',\n transform: 'translateX(-50%) translateY(-50%)',\n flexShrink: '0',\n maxWidth: '100%',\n maxHeight: '100%',\n objectFit: 'contain'\n }),attrs:{\"src\":photo.content}})])],1)}),0),(step && step.violationLetters && step.violationLetters.length > 0)?_c('div',[_c('label',{staticClass:\"label\"},[_vm._v(\"Violation Letter(s)\")])]):_vm._e(),_vm._l((step.violationLetters),function(letter,index){return _c('div',{key:index,staticClass:\"card\",style:({\n position: 'relative',\n padding: '1rem',\n boxShadow: '0 12px 18px 0 rgba(0, 0, 0, 0.05)',\n marginBottom: '12px'\n }),attrs:{\"aria-label\":\"Violation Letters\"}},[_c('button',{staticClass:\"button is-link is-light\",attrs:{\"type\":\"button\"},on:{\"click\":function($event){$event.preventDefault();return _vm.getDocumentFile(letter.violationStepDocumentID)}}},[_vm._v(\" \"+_vm._s(\"View Letter\")+\" \")])])}),_c('b-modal',{style:({ zIndex: 999 }),model:{value:(_vm.photoModal.open),callback:function ($$v) {_vm.$set(_vm.photoModal, \"open\", $$v)},expression:\"photoModal.open\"}},[_c('p',{staticClass:\"image is-4by3\"},[_c('img',{attrs:{\"src\":_vm.photoModal.src}})])])],2)})],2)])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"level\"},[_c('span',{staticClass:\"title level-left\"},[_vm._v(\"History\")])])}]\n\nexport { render, staticRenderFns }","/*\r\n import { violationStepDocumentStore } from '@/services/ViolationIssue/ViolationStepDocument/store'\r\n*/\r\n\r\nimport Vue from 'vue'\r\nimport Vuex from 'vuex'\r\n\r\nimport { notifyProblem } from '@/services/notify'\r\nimport kms from '@/services/kms'\r\n\r\nconst isDebug = true\r\n\r\n/* eslint-disable no-empty-pattern */\r\nconst actions = {\r\n /*\r\n const { list } = await violationStepDocumentStore.dispatch ('getViolationStepDocumentList', {\r\n hoaID,\r\n violationOccurrenceID,\r\n violationStepID,\r\n includeDocumentsAsBase64,\r\n includeDocumentAsHtml\r\n });\r\n */\r\n\r\n async getViolationStepDocumentList({}, { params }) {\r\n console.log('in getViolationStepDocumentList...' + JSON.stringify(params))\r\n try {\r\n let path = ''\r\n\r\n if (params.hoaID) {\r\n path = `?hoaID=${params.hoaID}`\r\n }\r\n\r\n if (params.violationOccurrenceID) {\r\n path = path + `&violationOccurrenceID=${params.violationOccurrenceID}`\r\n }\r\n\r\n if (params.violationStepID) {\r\n path = path + `&violationStepID=${params.violationStepID}`\r\n }\r\n\r\n if (params.includeDocumentsAsBase64) {\r\n path = path + `&includeDocumentsAsBase64=${params.includeDocumentsAsBase64}`\r\n }\r\n\r\n if (params.includeDocumentAsHtml) {\r\n path = path + `&includeDocumentAsHtml=${params.includeDocumentAsHtml}`\r\n }\r\n\r\n const results = await kms.get(`/ViolationIssue/ViolationStepDocument/List${path}`)\r\n\r\n if (isDebug == true)\r\n console.debug('getViolationStepDocumentList log=' + JSON.stringify(results))\r\n\r\n return {\r\n list: results.results\r\n }\r\n } catch (exception) {\r\n notifyProblem(`The Violation Document list could not be retrieved.`)\r\n console.error(exception)\r\n }\r\n\r\n return {\r\n list: []\r\n }\r\n },\r\n\r\n async getFile({ dispatch }, { params, done }) {\r\n const path = `/ViolationIssue/ViolationStepDocument/GetFile`\r\n const result = await kms.get(path, {\r\n params\r\n })\r\n\r\n if (this.isDebug == true) console.debug('getFile=' + JSON.stringify(result))\r\n\r\n if (dispatch && dispatch != undefined) console.debug(dispatch)\r\n\r\n if (result) {\r\n console.debug(`Successfully retrieved this document.`)\r\n done({ details: result })\r\n } else {\r\n console.error('There was a problem retrieving this document.')\r\n }\r\n }\r\n}\r\n/* eslint-enable no-empty-pattern */\r\n\r\nVue.use(Vuex)\r\nexport const violationStepDocumentStore = new Vuex.Store({\r\n state: {},\r\n mutations: {},\r\n getters: {},\r\n actions\r\n})\r\n","import { notifyProblem, notifyError, notifyWarning } from '@/services/notify'\r\nimport { getVOccurrenceList } from '@/services/ViolationIssue/ViolationOccurrence/List'\r\nimport { listSteps } from '@/services/ViolationIssue/ViolationStep/List'\r\nimport { getMultiplePhotos } from '@/services/ViolationIssue/ViolationOccurrencePhoto/sequences/GetMultiple'\r\nimport { violationStepDocumentStore } from '@/services/ViolationIssue/ViolationStepDocument/store'\r\nimport _get from 'lodash/get'\r\nimport { getString } from '@/utilities/get/string'\r\nimport { parseDate } from '@/utilities/Date/parse'\r\nimport { base64toBlob, showAnyType } from '@/services/blobutility'\r\nimport moment from 'moment'\r\n\r\nexport const methods = {\r\n async reload() {\r\n this.loading = true\r\n const loadingComponent = this.$buefy.loading.open({\r\n container: null\r\n })\r\n\r\n this.violationID = this.$route.params.id || 0\r\n\r\n this.hoaID = _get(this, ['$store', 'getters', 'user/hoaIDInteger'], null)\r\n\r\n await this.getOccurrences()\r\n\r\n await this.getSteps({\r\n id: this.violationID\r\n })\r\n\r\n loadingComponent.close()\r\n this.loading = false\r\n },\r\n\r\n handleEllipsis() {\r\n this.showEllipsis = !this.showEllipsis\r\n },\r\n\r\n async openPhotoModal(photo) {\r\n if (photo !== undefined && photo) {\r\n this.photoModal = {\r\n open: true,\r\n src: photo.content\r\n }\r\n return\r\n }\r\n },\r\n\r\n async getOccurrences() {\r\n const { list, successful, message } = await getVOccurrenceList({\r\n json: {\r\n hoaID: this.hoaID,\r\n violationID: this.violationID\r\n }\r\n })\r\n if (!successful) {\r\n notifyProblem(message)\r\n this.loading = false\r\n return {\r\n successful: false\r\n }\r\n }\r\n //\r\n this.occurrences = list\r\n this.occurrence = list[0]\r\n },\r\n\r\n async getDocumentFile(id) {\r\n if (!id || id <= 0) {\r\n notifyError('Could not retrieve the violation letter')\r\n return\r\n }\r\n\r\n try {\r\n const params = {\r\n violationStepDocumentID: id,\r\n asRawBaseSixtyFour: true\r\n }\r\n\r\n await violationStepDocumentStore.dispatch('getFile', {\r\n params,\r\n done: ({ details }) => {\r\n if (details) {\r\n if (this.isDebug == true) console.debug('base64pdf........................' + details)\r\n\r\n const blob = base64toBlob(details, 'text/html')\r\n showAnyType(blob, 'text/html')\r\n\r\n console.debug(`Successfully downloaded the violation letter.`)\r\n return\r\n }\r\n }\r\n })\r\n } catch (e) {\r\n if (this.isDebug == true) console.debug(e)\r\n notifyWarning('There was a problem downloading the violation letter.')\r\n }\r\n },\r\n\r\n async getSteps({ id }) {\r\n const hoaID = _get(this, ['$store', 'getters', 'user/hoaIDInteger'], null)\r\n var { successful, message, steps } = await listSteps({\r\n params: {\r\n hoaID,\r\n violationID: id\r\n }\r\n })\r\n if (!successful) {\r\n notifyProblem(message)\r\n return false\r\n }\r\n\r\n const occurrences = this.occurrences\r\n const photosList = []\r\n\r\n this.steps = steps\r\n .map((step, index) => {\r\n const dateFormat = 'LL'\r\n\r\n const occurrence = _get(step, 'violationOccurrence', {})\r\n const violationStepID = _get(step, 'violationStepID', 0)\r\n\r\n console.debug('step=' + JSON.stringify(step))\r\n\r\n let photosMeta = []\r\n\r\n /* get the photos meta data from the corresponding occurence */\r\n for (let a = 0; a < occurrences.length; a++) {\r\n const o = occurrences[a]\r\n\r\n try {\r\n if (\r\n o.violationOccurrenceID === step.violationOccurrenceID &&\r\n Array.isArray(o.violationOccurrencePhotos)\r\n ) {\r\n photosMeta = o.violationOccurrencePhotos\r\n break\r\n }\r\n } catch (x) {\r\n console.error(x)\r\n }\r\n }\r\n\r\n const observationDate = getString(\r\n occurrence,\r\n 'observationDate',\r\n moment('01/01/1900').format(dateFormat)\r\n )\r\n let observationDateParsed = parseDate(observationDate, 'LL')\r\n\r\n return {\r\n count: index + 1,\r\n actionName: getString(step, ['violationAction', 'name'], ''),\r\n observedBy: getString(occurrence, 'observedBy', ''),\r\n observationDate: observationDateParsed,\r\n description: getString(occurrence, 'description', ''),\r\n photosMeta,\r\n violationStepID,\r\n photos: [],\r\n violationLetters: []\r\n }\r\n })\r\n .reverse()\r\n\r\n let totalProblems = 0\r\n for (let a = 0; a < this.steps.length; a++) {\r\n const { photosMeta } = this.steps[a]\r\n\r\n const { photos, problems } = await getMultiplePhotos({\r\n hoaID,\r\n paramsList: photosMeta.map(photo => {\r\n return {\r\n violationOccurrencePhotoID: _get(photo, ['violationOccurrencePhotoID'], ''),\r\n asBase64: true\r\n }\r\n })\r\n })\r\n\r\n if (Array.isArray(problems) && problems.length >= 1) {\r\n totalProblems += problems.length\r\n }\r\n\r\n //Retrieve violation letters\r\n let violationLetters = []\r\n const params = {\r\n hoaID: this.hoaId,\r\n violationStepID: _get(this.steps[a], 'violationStepID', 0)\r\n }\r\n\r\n await violationStepDocumentStore\r\n .dispatch('getViolationStepDocumentList', {\r\n params\r\n })\r\n .then(({ list }) => {\r\n if (list) {\r\n list.forEach(f => {\r\n if (f) {\r\n violationLetters.push({\r\n violationStepDocumentID: f.violationStepDocumentID,\r\n documentFileName: f.documentFileName\r\n })\r\n }\r\n })\r\n }\r\n })\r\n\r\n console.debug('violationLetters=' + JSON.stringify(this.steps[a].violationLetters))\r\n\r\n this.steps[a].photos = photos\r\n this.steps[a].violationLetters = violationLetters\r\n photosList.push(...photos)\r\n }\r\n\r\n if (totalProblems >= 1) {\r\n notifyProblem(`${totalProblems} photos may not have been retrieved.`)\r\n }\r\n\r\n this.photosList = photosList\r\n\r\n const mainPhoto = _get(photosList, [0, 'content'], null)\r\n if (typeof mainPhoto === 'string') {\r\n this.mainPhoto = mainPhoto\r\n }\r\n\r\n this.$forceUpdate()\r\n\r\n return true\r\n }\r\n}\r\n","import _get from 'lodash/get'\r\n\r\nexport function data() {\r\n const theme = _get(this, ['$store', 'state', 'theme'], {})\r\n\r\n return {\r\n color: theme.color,\r\n isDebug: true,\r\n loading: false,\r\n hoaID: 0,\r\n violationID: 0,\r\n mainPhoto: null,\r\n showEllipsis: false,\r\n occurrences: [],\r\n steps: [],\r\n photosList: [],\r\n photoModal: {\r\n open: false,\r\n src: ''\r\n },\r\n styles: {\r\n filterButton: {\r\n float: 'right',\r\n marginTop: '4px'\r\n }\r\n }\r\n }\r\n}\r\n","\r\n\r\n\r\n\r\n\r\n","import mod from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./List.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./List.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./List.vue?vue&type=template&id=023f42b5&\"\nimport script from \"./List.vue?vue&type=script&lang=js&\"\nexport * from \"./List.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var isSymbol = require('./isSymbol');\n\n/**\n * Compares values to sort them in ascending order.\n *\n * @private\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @returns {number} Returns the sort order indicator for `value`.\n */\nfunction compareAscending(value, other) {\n if (value !== other) {\n var valIsDefined = value !== undefined,\n valIsNull = value === null,\n valIsReflexive = value === value,\n valIsSymbol = isSymbol(value);\n\n var othIsDefined = other !== undefined,\n othIsNull = other === null,\n othIsReflexive = other === other,\n othIsSymbol = isSymbol(other);\n\n if ((!othIsNull && !othIsSymbol && !valIsSymbol && value > other) ||\n (valIsSymbol && othIsDefined && othIsReflexive && !othIsNull && !othIsSymbol) ||\n (valIsNull && othIsDefined && othIsReflexive) ||\n (!valIsDefined && othIsReflexive) ||\n !valIsReflexive) {\n return 1;\n }\n if ((!valIsNull && !valIsSymbol && !othIsSymbol && value < other) ||\n (othIsSymbol && valIsDefined && valIsReflexive && !valIsNull && !valIsSymbol) ||\n (othIsNull && valIsDefined && valIsReflexive) ||\n (!othIsDefined && valIsReflexive) ||\n !othIsReflexive) {\n return -1;\n }\n }\n return 0;\n}\n\nmodule.exports = compareAscending;\n","/**\n * The base implementation of `_.sortBy` which uses `comparer` to define the\n * sort order of `array` and replaces criteria objects with their corresponding\n * values.\n *\n * @private\n * @param {Array} array The array to sort.\n * @param {Function} comparer The function to define sort order.\n * @returns {Array} Returns `array`.\n */\nfunction baseSortBy(array, comparer) {\n var length = array.length;\n\n array.sort(comparer);\n while (length--) {\n array[length] = array[length].value;\n }\n return array;\n}\n\nmodule.exports = baseSortBy;\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('PageContent',{attrs:{\"role\":\"region\",\"violation-details\":\"\"}},[_c('div',{staticClass:\"level\"},[_c('div',{staticClass:\"level-left level-item title\"},[_vm._v(\" \"+_vm._s(_vm.$t('violationDetails.title') + \" ID: \" + _vm.violationID)+\" \")]),_c('div',{staticClass:\"level-right\"},[_c('div',{staticClass:\"level-item\"},[_c('svg',{attrs:{\"width\":\"30\",\"height\":\"30\",\"xmlns\":\"http://www.w3.org/2000/svg\",\"fill\":\"none\",\"viewBox\":\"0 0 24 24\",\"stroke\":\"currentColor\"}},[_c('path',{attrs:{\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\",\"stroke-width\":\"2\",\"d\":\"M15 19l-7-7 7-7\"}})])]),_c('div',{staticClass:\"level-item\"},[_c('b-button',{attrs:{\"label\":\"Back to Violations\"},on:{\"click\":function($event){$event.preventDefault();return _vm.returnToParent()}}})],1)])]),_c('section',{staticClass:\"section card\"},[_c('LinksMenu',{style:(Object.assign({}, (_vm.breakpoint === 'desktop'\n ? {\n display: 'flex'\n }\n : {\n display: 'block'\n }))),attrs:{\"aria-label\":\"account settings tabs\",\"tabs\":_vm.tabs,\"prefix\":\"violation.\",\"styles\":{\n ul: {\n width: '140px'\n }\n },\"params\":{\n id: _vm.$route.params.id\n }}},[_c('section',{style:({ overflowX: 'auto', flexGrow: 2 })},[_c('SlideTransition',{attrs:{\"name\":_vm.transitionName}},[_c('keep-alive',[_c('router-view',{key:_vm.$route.name})],1)],1)],1)])],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","export const data = function() {\r\n return {\r\n isDebug: true,\r\n loading: false,\r\n violationID: 0,\r\n violation: null,\r\n tabs: [\r\n { name: 'violationDetails', label: 'Details' },\r\n { name: 'violationHistory', label: 'History' },\r\n { name: 'violationConversations', label: 'Conversations' }\r\n ],\r\n styles: {\r\n mainContainer: {\r\n minHeight: '1000px'\r\n }\r\n },\r\n transitionName: 'slide-down',\r\n showUploadModal: false\r\n }\r\n}\r\n","export const methods = {\r\n async reload() {\r\n this.loading = true\r\n\r\n this.violationID = this.$route.params.id || 0\r\n\r\n this.loading = false\r\n },\r\n\r\n returnToParent() {\r\n this.$router.push({\r\n name: 'violations'\r\n })\r\n }\r\n}\r\n","import _get from 'lodash/get'\r\n\r\nexport const watch = {\r\n hoaId() {\r\n this.reload()\r\n },\r\n $route: function(to, from) {\r\n const toIndex = _get(to, ['params', 'index'], 1)\r\n const fromIndex = _get(from, ['params', 'index'], 1)\r\n\r\n this.transitionName = toIndex < fromIndex ? 'slide-up' : 'slide-down'\r\n }\r\n}\r\n","\r\n\r\n\r\n\r\n\r\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./index.vue?vue&type=template&id=2de6ad07&scoped=true&\"\nimport script from \"./index.vue?vue&type=script&lang=js&\"\nexport * from \"./index.vue?vue&type=script&lang=js&\"\nimport style0 from \"./index.vue?vue&type=style&index=0&id=2de6ad07&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"2de6ad07\",\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',{attrs:{\"id\":\"v-escalator\",\"vio-escalator\":\"\"}},[_c('Modal',{attrs:{\"toggle\":_vm.isOpen,\"styles\":{\n modalContent: { height: '600px' },\n modal: { maxHeight: '90vh' }\n },\"loading\":_vm.loading},on:{\"update:toggle\":function($event){_vm.isOpen=$event}},scopedSlots:_vm._u([{key:\"header\",fn:function(){return [_vm._v(\"Escalate Violation\")]},proxy:true}])},[_c('b-steps',{attrs:{\"size\":\"is-small\",\"has-navigation\":false},model:{value:(_vm.page),callback:function ($$v) {_vm.page=$$v},expression:\"page\"}},[_c('b-step-item',{attrs:{\"label\":\"Action Select\",\"ve-action-select\":\"\"}},[_c('div',{style:({\n display: 'flex',\n padding: '3px',\n alignItems: 'center'\n })},[_c('div',{style:({\n display: 'inline-block',\n marginRight: '12px',\n flexBasis: '200px',\n flexGrow: 0,\n flexShrink: 0\n })},[_c('b-tag',{style:({ fontWeight: 'bold' })},[_vm._v(\"Owner\")])],1),_c('div',[_vm._v(_vm._s(_vm.details.ownerName))])]),_c('div',{style:({\n display: 'flex',\n padding: '3px',\n alignItems: 'center'\n })},[_c('div',{style:({\n display: 'inline-block',\n marginRight: '12px',\n flexBasis: '200px',\n flexGrow: 0,\n flexShrink: 0\n })},[_c('b-tag',{style:({ fontWeight: 'bold' })},[_vm._v(\"Address\")])],1),_c('div',[_vm._v(_vm._s(_vm.details.ownerAddress))])]),_c('div',{style:({\n display: 'flex',\n padding: '3px',\n alignItems: 'center'\n })},[_c('div',{style:({\n display: 'inline-block',\n marginRight: '12px',\n flexBasis: '200px',\n flexGrow: 0,\n flexShrink: 0\n })},[_c('b-tag',{style:({ fontWeight: 'bold' })},[_vm._v(\"Type\")])],1),_c('div',[_vm._v(_vm._s(_vm.details.type))])]),_c('div',{style:({ borderTop: (\"1px solid \" + (_vm.color[9])) })},[_c('div',{style:({\n display: 'flex',\n padding: '3px',\n alignItems: 'center'\n })},[_c('div',{style:({\n display: 'inline-block',\n marginRight: '12px',\n flexBasis: '200px',\n flexGrow: 0,\n flexShrink: 0\n })},[_c('b-tag',{style:({ fontWeight: 'bold' })},[_vm._v(\"Steps Taken\")])],1)]),_vm._l((_vm.details.steps),function(step,index){return _c('div',{key:index,staticClass:\"card rounded shadow bg-white\",style:({\n position: 'relative',\n marginBottom: '10px',\n padding: '12px',\n border: '1px solid #f4f1f1'\n })},[_c('div',[_c('div',[_vm._v(\"Action: \"+_vm._s(step.actionName))]),_c('div',[_vm._v(\"Action Description: \"+_vm._s(step.actionDescription))]),_c('div',[_vm._v(\"Observed By: \"+_vm._s(step.observedBy))]),_c('div',[_vm._v(\"Observation Description: \"+_vm._s(step.observationDescription))])]),_c('div',[_vm._v(\"Observation Date: \"+_vm._s(step.observationDate))])])})],2),_c('div',{style:({ borderTop: (\"1px solid \" + (_vm.color[9])) })}),_c('div',{style:({\n display: 'flex',\n padding: '3px',\n alignItems: 'center'\n })},[_c('div',{style:({\n display: 'inline-block',\n marginRight: '12px',\n flexBasis: '200px',\n flexGrow: 0,\n flexShrink: 0\n })},[_c('b-tag',{style:({ fontWeight: 'bold' })},[_vm._v(\"Next Step\")])],1)]),_vm._l((_vm.allActions),function(action,index){return _c('div',{key:index,staticClass:\"card rounded shadow bg-white\",style:({\n display: 'flex',\n justifyItems: 'right',\n justifyContent: 'space-between',\n\n marginBottom: '10px',\n border: '1px solid #f4f1f1',\n padding: '12px'\n })},[_c('p',{style:({ padding: '8px 0' })},[_vm._v(_vm._s(action.description))]),_c('button',{staticClass:\"button is-primary is-rounded\",attrs:{\"ve-action-button\":\"\"},on:{\"click\":function($event){return _vm.select(action)}}},[_vm._v(\" \"+_vm._s(action.name)+\" \")])])})],2),_c('b-step-item',{attrs:{\"label\":\"Details\",\"ve-details\":\"\"}},[_c('div',{style:({ width: '70%', margin: '0 auto 50px' })},[_c('b-field',{attrs:{\"label\":\"Observed By\"}},[_c('b-input',{attrs:{\"ve-observed-by\":\"\",\"maxlength\":\"255\",\"aria-required\":\"true\",\"type\":\"text\"},model:{value:(_vm.observedBy),callback:function ($$v) {_vm.observedBy=$$v},expression:\"observedBy\"}})],1),_c('b-field',{attrs:{\"label\":\"Observed On\"}},[_c('DatePicker',{ref:\"observationDateComponent\",attrs:{\"ve-observation-date\":\"\",\"ariaLabel\":\"date\"},model:{value:(_vm.observationDate),callback:function ($$v) {_vm.observationDate=$$v},expression:\"observationDate\"}})],1),_c('b-field',{style:({ marginTop: '20px' }),attrs:{\"label\":\"Description\"}},[_c('b-input',{attrs:{\"maxlength\":\"200\",\"type\":\"textarea\",\"ve-description\":\"\"},model:{value:(_vm.description),callback:function ($$v) {_vm.description=$$v},expression:\"description\"}})],1),_c('b-field',{style:({ marginTop: '20px' }),attrs:{\"label\":\"Pictures (optional)\"}},[_c('ImageUploader',{attrs:{\"onChange\":_vm.imagesUpdated,\"ve-image-uploader\":\"\"}})],1),_c('div',{style:({\n padding: '30px 0',\n textAlign: 'right'\n })},[_c('b-button',{attrs:{\"type\":\"is-primary\",\"size\":\"is-medium\",\"ve-details-next-button\":\"\"},on:{\"click\":_vm.checkDetails}},[_vm._v(\"Next\")])],1)],1)]),_c('b-step-item',{attrs:{\"label\":\"Confirmation\",\"ve-confirmation\":\"\"}},[_c('div',{style:({ width: '70%', margin: '0 auto' })},[_c('p',{style:({ fontSize: '1.4rem' })},[_vm._v(\" To proceed, please review the details and then press \"),_c('b',[_vm._v(\"Confirm\")]),_vm._v(\". \")]),_c('div',{style:({ padding: '30px 0' })},[_c('div',{style:({\n borderTop: (\"1px solid \" + (_vm.color[9])),\n margin: '5px 0'\n })}),_c('div',{style:(Object.assign({}, _vm.styles.listRow))},[_c('div',{style:(Object.assign({}, _vm.styles.listLabel))},[_vm._v(\"Action\")]),_c('div',{style:(Object.assign({}, _vm.styles.listItem))},[_vm._v(_vm._s(_vm.selected.name))])]),_c('div',{style:({\n borderTop: (\"1px solid \" + (_vm.color[9])),\n margin: '5px 0'\n })}),_c('div',{style:(Object.assign({}, _vm.styles.listRow))},[_c('div',{style:(Object.assign({}, _vm.styles.listLabel))},[_vm._v(\"Owner\")]),_c('div',{style:(Object.assign({}, _vm.styles.listItem))},[_vm._v(_vm._s(_vm.details.ownerName))])]),_c('div',{style:(Object.assign({}, _vm.styles.listRow))},[_c('div',{style:(Object.assign({}, _vm.styles.listLabel))},[_vm._v(\"Address\")]),_c('div',{style:(Object.assign({}, _vm.styles.listItem))},[_vm._v(_vm._s(_vm.details.ownerAddress))])]),_c('div',{style:({\n borderTop: (\"1px solid \" + (_vm.color[9])),\n margin: '5px 0'\n })}),_c('div',{style:(Object.assign({}, _vm.styles.listRow))},[_c('div',{style:(Object.assign({}, _vm.styles.listLabel))},[_vm._v(\"Observed By\")]),_c('div',{style:(Object.assign({}, _vm.styles.listItem))},[_vm._v(_vm._s(_vm.observedBy))])]),_c('div',{style:(Object.assign({}, _vm.styles.listRow))},[_c('div',{style:(Object.assign({}, _vm.styles.listLabel))},[_vm._v(\"Observation Date\")]),_c('div',{style:(Object.assign({}, _vm.styles.listItem))},[_vm._v(_vm._s(_vm.observationDateParsed))])]),_c('div',{style:(Object.assign({}, _vm.styles.listRow))},[_c('div',{style:(Object.assign({}, _vm.styles.listLabel))},[_vm._v(\"Description\")]),_c('div',{style:(Object.assign({}, _vm.styles.listItem))},[_vm._v(_vm._s(_vm.description))])]),_c('div',{style:(Object.assign({}, _vm.styles.listRow))},[_c('div',{style:(Object.assign({}, _vm.styles.listLabel))},[_vm._v(\"Pictures\")]),_c('div',{style:(Object.assign({}, _vm.styles.listItem))},_vm._l((_vm.previews),function(preview,index){return _c('figure',{key:index,style:({\n position: 'relative',\n display: 'inline-flex',\n justifyContent: 'center',\n alignItems: 'center',\n\n margin: '4px',\n\n width: '70px',\n height: '70px',\n\n overflow: 'hidden',\n borderRadius: '6px',\n\n boxShadow: '0 12px 18px 0 rgba(0, 0, 0, 0.05)'\n }),attrs:{\"tabindex\":\"0\",\"aria-label\":'photo ' + (index + 1)}},[_c('transition',{attrs:{\"name\":\"fade\"}},[_c('img',{style:({\n position: 'absolute',\n top: '50%',\n left: '50%',\n transform: 'translateX(-50%) translateY(-50%)',\n\n flexShrink: '0',\n maxWidth: '100%',\n maxHeight: '100%',\n height: '100%',\n width: '100%',\n objectFit: 'contain'\n }),attrs:{\"src\":preview}})])],1)}),0)])]),_c('div',{staticStyle:{\"display\":\"flex\",\"flex-direction\":\"row\",\"justify-content\":\"end\"}},[_c('b-button',{style:({ marginRight: '20px' }),attrs:{\"type\":\"is-primary\",\"size\":\"is-medium\"},on:{\"click\":_vm.preview}},[_vm._v(\"Preview\")]),_c('b-button',{style:({ float: 'right' }),attrs:{\"ve-confirm-button\":\"\",\"type\":\"is-primary\",\"size\":\"is-medium\"},on:{\"click\":_vm.confirm}},[_vm._v(\"Confirm\")])],1),_c('div',{style:({ height: '70px' })})])])],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('section',{staticClass:\"image-uploader--field h-full overflow-auto mt-4 sm:p-8 w-full h-full flex flex-col\",style:({\n border: '1px solid #cecece',\n borderRadius: '4px'\n })},[_c('b-upload',{staticClass:\"border-dashed border-2 border-gray-400 flex flex-col justify-center items-center\",attrs:{\"multiple\":\"\",\"drag-drop\":\"\",\"accept\":\"image/png, image/jpeg, image/jpg\"},model:{value:(_vm.file),callback:function ($$v) {_vm.file=$$v},expression:\"file\"}},[_c('section',{staticClass:\"section\"},[_c('div',{staticClass:\"content has-text-centered\"},[_c('p',[_c('b-icon',{attrs:{\"icon\":\"upload\",\"size\":\"is-large\"}})],1),_c('p',[_vm._v(\" Drop your files here or click to upload. Drop a PNG, JPG, or JPEG file here, or click to select a file from your computer. \")])])])]),_c('ul',{staticClass:\"flex flex-1 flex-wrap\",style:({ marginTop: '20px' }),attrs:{\"id\":\"gallery\"}},[_c('li',{directives:[{name:\"show\",rawName:\"v-show\",value:(!_vm.previews.length),expression:\"!previews.length\"}],staticClass:\"h-full w-full text-center flex flex-col items-center justify-center items-center\"},[_c('img',{staticClass:\"mx-auto w-32\",attrs:{\"src\":\"https://user-images.githubusercontent.com/507615/54591670-ac0a0180-4a65-11e9-846c-e55ffce0fe7b.png\",\"alt\":\"no data\"}}),_c('span',{staticClass:\"text-small text-gray-500\"},[_vm._v(\"No images added\")])]),_vm._l((_vm.previews),function(image,index){return _c('li',{key:index,staticClass:\"p-1 flex w-32 h-32\"},[_c('div',{staticClass:\"align-items-center relative w-full h-full bg-cover\",style:((\"background-image: url(\" + image + \");\"))},[_c('button',{staticClass:\"delete is-small\",attrs:{\"type\":\"button\"},on:{\"click\":function($event){return _vm.deleteDropFile(index)}}}),_vm._m(0,true)])])})],2)],1)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('label',[_c('span',{staticStyle:{\"width\":\"100px\"}})])}]\n\nexport { render, staticRenderFns }","export function data() {\r\n return {\r\n file: [],\r\n image: null,\r\n documentIds: [],\r\n previews: []\r\n }\r\n}\r\n","//\r\nimport { notifyProblem } from '@/services/notify'\r\n//\r\nexport const methods = {\r\n async deleteDropFile(index) {\r\n this.file.splice(index, 1)\r\n this.previews.splice(index, 1)\r\n\r\n this.onChange({\r\n previews: this.previews,\r\n images: this.file\r\n })\r\n },\r\n\r\n async updatePictures() {\r\n const images = this.file\r\n if (!Array.isArray(images)) {\r\n notifyProblem('A problem occurred and the photos could not be updated.')\r\n return\r\n }\r\n\r\n ////////////////////////////////\r\n // Store image previews\r\n ////////////////////////////////\r\n\r\n this.previews = this.file.map(file => {\r\n return URL.createObjectURL(file)\r\n })\r\n\r\n this.onChange({\r\n previews: this.previews,\r\n images: this.file\r\n })\r\n }\r\n}\r\n","//\r\n//\r\nexport const watch = {\r\n file() {\r\n this.updatePictures()\r\n }\r\n}\r\n","\r\n\r\n\r\n\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./index.vue?vue&type=template&id=45929863&\"\nimport script from \"./index.vue?vue&type=script&lang=js&\"\nexport * from \"./index.vue?vue&type=script&lang=js&\"\nimport style0 from \"./index.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import { parseDate } from '@/utilities/Date/parse'\r\n\r\nexport const computed = {\r\n observationDateParsed() {\r\n return parseDate(this.observationDate, 'LL')\r\n }\r\n}\r\n","import _get from 'lodash/get'\r\nimport moment from 'moment'\r\n\r\nexport function data() {\r\n const theme = _get(this, ['$store', 'state', 'theme'], {})\r\n\r\n return {\r\n color: theme.color,\r\n isOpen: false,\r\n details: {\r\n steps: []\r\n },\r\n allActions: [],\r\n page: 0,\r\n loading: true,\r\n selected: {},\r\n description: '',\r\n observedBy: '',\r\n observationDate: moment(new Date()).toISOString(),\r\n images: [],\r\n previews: [],\r\n styles: {\r\n listRow: {\r\n display: 'flex'\r\n },\r\n listLabel: {\r\n display: 'inline-block',\r\n flexBasis: '186px',\r\n color: 'rgb(130, 130, 130)'\r\n },\r\n listItem: {\r\n display: 'inline-block',\r\n flexBasis: `calc(100% - 186px)`\r\n }\r\n }\r\n }\r\n}\r\n","/*\r\n import { update as updateV } from '@/services/ViolationIssue/Violation/UpdateViolationActionStepOccurrence';\r\n\r\n // for example:\r\n const { successful, message } = await updateV ({\r\n json: {\r\n\r\n }\r\n });\r\n if (!successful) {\r\n notifyProblem (message);\r\n return;\r\n }\r\n*/\r\n\r\n//\r\nimport kms from '@/services/kms'\r\n//\r\nexport async function update({ kms: kms_ = kms, json } = {}) {\r\n let message = `The update did not happen successfully.`\r\n\r\n try {\r\n await kms_.post(`/ViolationIssue/Violation/UpdateViolationActionStepOccurrence`, json)\r\n\r\n return {\r\n successful: true,\r\n message\r\n }\r\n } catch (exception) {\r\n console.error(exception)\r\n }\r\n\r\n return {\r\n successful: false,\r\n message\r\n }\r\n}\r\n","import _get from 'lodash/get'\r\nimport moment from 'moment'\r\nimport parseAddress from '@/utilities/address/parse'\r\nimport { parseDate } from '@/utilities/Date/parse'\r\nimport { notifyProblem, notifyMessage } from '@/services/notify'\r\nimport { getVActionList } from '@/services/Violation/ViolationAction/List'\r\nimport { getV } from '@/services/ViolationIssue/Violation/Get'\r\nimport { update as updateV } from '@/services/ViolationIssue/Violation/UpdateViolationActionStepOccurrence'\r\nimport { StoreMultiplePhotos } from '@/services/ViolationIssue/ViolationOccurrencePhoto/sequences/StoreMultiplePhotos'\r\nimport { generateViolationLetterHTMLPreview } from '@/services/ViolationIssue/Violation/GenerateViolationLetterHTMLPreview'\r\nimport { violationListStore } from '@/pages/Management/violations/Main/store.js'\r\n\r\nexport const methods = {\r\n updateObservedBy() {\r\n const authUser = _get(this, ['$store', 'getters', 'user/authUser'], null)\r\n\r\n this.observedBy = authUser.name\r\n },\r\n imagesUpdated({ previews, images }) {\r\n this.images = images\r\n this.previews = previews\r\n },\r\n checkDetails() {\r\n if (this.description.length === 0) {\r\n notifyProblem('Please provide a description.')\r\n return\r\n }\r\n\r\n if (this.observedBy.length === 0) {\r\n notifyProblem('Please state who is reporting the action.')\r\n return\r\n }\r\n\r\n const { allValid, utcFormat } = this.$refs.observationDateComponent.getValue()\r\n if (allValid !== true) {\r\n notifyProblem('The date does not seem to be valid.')\r\n return\r\n }\r\n\r\n this.observationDate = utcFormat\r\n\r\n this.page = 2\r\n },\r\n\r\n reset() {\r\n // resets\r\n this.description = ''\r\n this.observedBy = ''\r\n this.observationDate = moment(new Date()).toISOString()\r\n this.images = []\r\n this.previews = []\r\n\r\n this.allActions = []\r\n this.selected = {}\r\n },\r\n\r\n async open({ id }) {\r\n this.loading = true\r\n this.page = 0\r\n\r\n this.reset()\r\n\r\n const hoaID = _get(this, ['$store', 'getters', 'user/hoaIDInteger'], null)\r\n\r\n this.updateObservedBy()\r\n this.isOpen = true\r\n\r\n const { successful, message, details } = await getV({\r\n id\r\n })\r\n if (!successful) {\r\n notifyProblem(message)\r\n return\r\n }\r\n\r\n const {\r\n list: allActions,\r\n successful: actionSuccessful,\r\n message: actionMessage\r\n } = await getVActionList({\r\n hoaID,\r\n\r\n // optional\r\n escalationID: _get(details, ['violationEscalationID'], '')\r\n })\r\n if (!actionSuccessful) {\r\n notifyProblem(actionMessage)\r\n return\r\n }\r\n\r\n let chosenActions = _get(details, ['violationEscalation', 'violationActions'], [])\r\n if (!Array.isArray(chosenActions)) {\r\n chosenActions = []\r\n }\r\n\r\n this.allActions = allActions\r\n\r\n let actions = []\r\n for (let a = 0; a < allActions.length; a++) {\r\n const possible = allActions[a]\r\n\r\n for (let b = 0; b < chosenActions.length; b++) {\r\n const chosen = chosenActions[b]\r\n\r\n if (chosen.violationActionID === possible.violationActionID) {\r\n actions.push({\r\n name: possible.name,\r\n order: possible.escalationOrder\r\n })\r\n break\r\n }\r\n }\r\n }\r\n\r\n var steps = _get(details, ['violationSteps'], [])\r\n if (!Array.isArray(steps)) {\r\n steps = []\r\n }\r\n\r\n this.details = {\r\n ownerName: _get(details, ['owner', 'name'], ''),\r\n ownerAddress: parseAddress({\r\n address: _get(details, ['owner', 'unit', 'address'], '')\r\n }),\r\n type: _get(details, ['violationType', 'name'], ''),\r\n actions: chosenActions,\r\n steps: steps.map(step => {\r\n return {\r\n actionName: _get(step, ['violationAction', 'name'], ''),\r\n actionDescription: _get(step, ['violationAction', 'description'], ''),\r\n observedBy: _get(step, ['violationOccurrence', 'observedBy'], ''),\r\n observationDescription: _get(step, ['violationOccurrence', 'description'], ''),\r\n observationDate: parseDate(\r\n _get(step, ['violationOccurrence', 'observationDate'], ''),\r\n 'LL'\r\n )\r\n }\r\n })\r\n }\r\n\r\n this.meta = details\r\n this.description = _get(details, ['violationType', 'descriptionTemplate'])\r\n\r\n this.loading = false\r\n },\r\n async select(action) {\r\n this.selected = {\r\n name: action.name,\r\n description: action.description,\r\n violationActionID: action.violationActionID,\r\n violationEscalationID: action.violationEscalationID\r\n }\r\n\r\n this.page = 1\r\n },\r\n\r\n async uploadImages() {\r\n const hoaID = _get(this, ['$store', 'getters', 'user/hoaIDInteger'], null)\r\n\r\n const { uploads, problems } = await StoreMultiplePhotos({\r\n hoaID,\r\n photos: this.images\r\n })\r\n\r\n if (problems.length >= 1) {\r\n notifyProblem(`${problems.length} photos may not have been uploaded successfully.`)\r\n }\r\n\r\n if (problems && problems !== undefined) {\r\n console.debug('problems=' + JSON.stringify(problems))\r\n }\r\n\r\n return {\r\n uploads\r\n }\r\n },\r\n\r\n async confirm() {\r\n const hoaID = _get(this, ['$store', 'getters', 'user/hoaIDInteger'], null)\r\n\r\n this.loading = true\r\n\r\n const { uploads } = await this.uploadImages()\r\n\r\n // for example:\r\n const { successful, message } = await updateV({\r\n json: {\r\n hoaID,\r\n ownerID: _get(this, ['meta', 'owner', 'ownerID'], ''),\r\n violationID: _get(this, ['meta', 'violationID'], ''),\r\n //\r\n violationTypeID: _get(this, ['meta', 'violationType', 'violationTypeID'], ''),\r\n violationEscalationID: _get(\r\n this,\r\n ['meta', 'violationEscalation', 'violationEscalationID'],\r\n ''\r\n ),\r\n violationActionID: _get(this, ['selected', 'violationActionID']),\r\n //\r\n violationNote: '',\r\n isClosed: false,\r\n //\r\n observationDate: this.observationDate,\r\n observedBy: this.observedBy,\r\n observationDescription: this.description,\r\n //\r\n uploadedDocumentIds: uploads\r\n }\r\n })\r\n if (!successful) {\r\n notifyProblem(message)\r\n return\r\n }\r\n\r\n notifyMessage('The step was initiated successfully.')\r\n\r\n // refreshes the main list\r\n await violationListStore.dispatch('refreshList', {\r\n hoaID\r\n })\r\n\r\n await this.onComplete()\r\n\r\n this.loading = false\r\n this.isOpen = false\r\n },\r\n\r\n async preview() {\r\n this.loading = true\r\n\r\n const { uploads } = await this.uploadImages()\r\n\r\n // for example:\r\n const { message, result, successful } = await generateViolationLetterHTMLPreview({\r\n json: {\r\n ownerID: _get(this, ['meta', 'owner', 'ownerID'], ''),\r\n //\r\n violationTypeID: _get(this, ['meta', 'violationType', 'violationTypeID'], ''),\r\n violationActionID: _get(this, ['selected', 'violationActionID']),\r\n //\r\n violationNote: '',\r\n isClosed: false,\r\n //\r\n observationDate: this.observationDate,\r\n description: this.description,\r\n //\r\n photoDocumentIDs: uploads\r\n }\r\n })\r\n if (!successful) {\r\n notifyProblem(message)\r\n return\r\n }\r\n\r\n this.loading = false\r\n\r\n var newWindow = window.open()\r\n if (!newWindow.document) {\r\n notifyProblem('Unable to preview letter - please make sure popups are not blocked.')\r\n return\r\n }\r\n\r\n newWindow.document.body.innerHTML = result\r\n }\r\n}\r\n","export const props = {\r\n onComplete: {\r\n type: Function,\r\n default: async () => {}\r\n }\r\n}\r\n","\r\n\r\n\r\n\r\n\r\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./index.vue?vue&type=template&id=476afc40&\"\nimport script from \"./index.vue?vue&type=script&lang=js&\"\nexport * from \"./index.vue?vue&type=script&lang=js&\"\nimport style0 from \"./index.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.hideMap && (_vm.hideMap === 'true' || _vm.hideMap === true) ? false : true),expression:\"hideMap && (hideMap === 'true' || hideMap === true) ? false : true\"}]},[_c('span',[_c('div',[_c('b-radio',{attrs:{\"name\":\"satellite\",\"native-value\":\"satellite\",\"aria-label\":\"satellite\"},model:{value:(_vm.rtoggle),callback:function ($$v) {_vm.rtoggle=$$v},expression:\"rtoggle\"}},[_vm._v(\" satellite \")]),_c('b-radio',{attrs:{\"name\":\"roadmap\",\"native-value\":\"roadmap\",\"aria-label\":\"roadmap\"},model:{value:(_vm.rtoggle),callback:function ($$v) {_vm.rtoggle=$$v},expression:\"rtoggle\"}},[_vm._v(\" road map \")]),_c('b-radio',{attrs:{\"name\":\"hybrid\",\"native-value\":\"hybrid\",\"aria-label\":\"hybrid\"},model:{value:(_vm.rtoggle),callback:function ($$v) {_vm.rtoggle=$$v},expression:\"rtoggle\"}},[_vm._v(\" hybrid \")]),_c('b-radio',{attrs:{\"name\":\"terrain\",\"native-value\":\"terrain\",\"aria-label\":\"terrain\"},model:{value:(_vm.rtoggle),callback:function ($$v) {_vm.rtoggle=$$v},expression:\"rtoggle\"}},[_vm._v(\" terrain \")]),(!_vm.readOnlyMap && (!_vm.showUpload || (_vm.showUpload && _vm.showUpload === false)))?_c('button',{staticClass:\"button is-text is-small\",style:({ verticalAlign: 'super' }),attrs:{\"type\":\"button\"},on:{\"click\":function($event){$event.preventDefault();return _vm.exportStaticImage()}}},[_vm._v(\" Upload Marker Image \")]):_vm._e(),(!_vm.readOnlyMap)?_c('button',{staticClass:\"button is-text is-small\",style:({ verticalAlign: 'super' }),attrs:{\"type\":\"button\"},on:{\"click\":function($event){$event.preventDefault();return _vm.resetPinMarker()}}},[_vm._v(\" Reset Pin Marker \")]):_vm._e(),(!_vm.readOnlyMap)?_c('button',{staticClass:\"button is-text is-small\",style:({ verticalAlign: 'super' }),attrs:{\"type\":\"button\"},on:{\"click\":function($event){$event.preventDefault();return _vm.fitBounds()}}},[_vm._v(\" Fit into Boundary \")]):_vm._e()],1),_c('div',{attrs:{\"title\":\"Click save below to save your location.\",\"id\":\"map\"}}),_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(false),expression:\"false\"}],staticClass:\"coordinates\",attrs:{\"id\":\"coordinates\"}}),_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(true),expression:\"true\"}],staticClass:\"columns is-12 pt-5\"},[_vm._m(0),_vm._m(1)])]),_c('b-field',{attrs:{\"label\":\"Address Search\"}},[_c('GmapAutocomplete',{staticStyle:{\"width\":\"700px\"},on:{\"place_changed\":_vm.setPlace}})],1),_c('GmapMap',{ref:\"mapRef\",staticStyle:{\"width\":\"800px\",\"height\":\"400px\"},attrs:{\"title\":_vm.infoOptions.content,\"center\":{ lat: _vm.myLat, lng: _vm.myLong },\"zoom\":_vm.zoomLevel,\"maxZoom\":\"32\",\"map-type-id\":_vm.selectedMapStyle,\"restriction\":_vm.boundsRestriction}},[_c('GmapInfoWindow',{staticStyle:{\"width\":\"300px\"},attrs:{\"options\":_vm.infoOptions,\"position\":_vm.infoWindowPos,\"opened\":_vm.infoWinOpen},on:{\"closeclick\":function($event){_vm.infoWinOpen = false}}}),_vm._l((_vm.markers),function(m,index){return _c('GmapMarker',{key:index,attrs:{\"position\":m.position,\"clickable\":true,\"draggable\":true},on:{\"click\":function($event){return _vm.toggleInfoWindow(m, index)},\"drag\":function($event){return _vm.updateMarker($event.latLng)}}})})],2)],1)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"column is-6\"},[_c('input',{attrs:{\"type\":\"hidden\",\"id\":\"formLatitude\"}})])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"column is-6\"},[_c('input',{attrs:{\"type\":\"hidden\",\"id\":\"formLongitude\"}})])}]\n\nexport { render, staticRenderFns }","import unsupportedIterableToArray from \"@babel/runtime/helpers/esm/unsupportedIterableToArray\";\nexport default function _createForOfIteratorHelper(o, allowArrayLike) {\n var it;\n\n if (typeof Symbol === \"undefined\" || o[Symbol.iterator] == null) {\n if (Array.isArray(o) || (it = unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") {\n if (it) o = it;\n var i = 0;\n\n var F = function F() {};\n\n return {\n s: F,\n n: function n() {\n if (i >= o.length) return {\n done: true\n };\n return {\n done: false,\n value: o[i++]\n };\n },\n e: function e(_e) {\n throw _e;\n },\n f: F\n };\n }\n\n throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n }\n\n var normalCompletion = true,\n didErr = false,\n err;\n return {\n s: function s() {\n it = o[Symbol.iterator]();\n },\n n: function n() {\n var step = it.next();\n normalCompletion = step.done;\n return step;\n },\n e: function e(_e2) {\n didErr = true;\n err = _e2;\n },\n f: function f() {\n try {\n if (!normalCompletion && it[\"return\"] != null) it[\"return\"]();\n } finally {\n if (didErr) throw err;\n }\n }\n };\n}","\r\n\r\n\r\n\r\n\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./index.vue?vue&type=template&id=cea1ecd4&scoped=true&\"\nimport script from \"./index.vue?vue&type=script&lang=js&\"\nexport * from \"./index.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"cea1ecd4\",\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=style&index=0&lang=scss&\"; export default mod; export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=style&index=0&lang=scss&\"","import mod from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=style&index=0&lang=scss&\"; export default mod; export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=style&index=0&lang=scss&\"","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=style&index=0&lang=scss&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=style&index=0&lang=scss&\"","import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ImageItem.vue?vue&type=style&index=0&id=d88fdbd0&scoped=true&lang=scss&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ImageItem.vue?vue&type=style&index=0&id=d88fdbd0&scoped=true&lang=scss&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('section',{style:({\n display: 'flex'\n }),attrs:{\"vio-details\":\"\"}},[(_vm.breakpoint === 'desktop')?_c('div',{style:({\n width: '20%',\n marginRight: '1%'\n })},[_c('DesktopGallery',{attrs:{\"color\":_vm.color,\"loading\":_vm.loading,\"updateMainPhoto\":_vm.updateMainPhoto,\"photosList\":_vm.photosList}})],1):_vm._e(),_c('div',{staticClass:\"card\",style:(Object.assign({}, {display: 'flex',\n width: '100%',\n padding: '1rem'},\n\n (_vm.breakpoint === 'desktop'\n ? {}\n : {\n flexDirection: 'column'\n })))},[_c('article',{style:({ textAlign: 'center' })},[_c('figure',{style:({\n position: 'relative',\n display: 'inline-flex',\n justifyContent: 'center',\n alignItems: 'center',\n\n margin: '4px',\n\n height: '380px',\n width: '380px',\n maxWidth: '100%',\n\n overflow: 'hidden',\n borderRadius: '6px',\n\n boxShadow: '0 12px 18px 0 rgba(0, 0, 0, 0.05)'\n }),attrs:{\"tabindex\":\"0\",\"aria-label\":\"main photo\"}},[_c('transition',{attrs:{\"name\":\"fade\"}},[(_vm.mainPhoto && _vm.mainPhoto.length > 0)?_c('img',{style:({\n position: 'absolute',\n top: '50%',\n left: '50%',\n transform: 'translateX(-50%) translateY(-50%)',\n\n flexShrink: '0',\n maxWidth: '100%',\n maxHeight: '100%',\n height: '100%',\n width: '100%',\n objectFit: 'contain'\n }),attrs:{\"vio-main-photo\":\"\",\"src\":_vm.mainPhoto}}):_vm._e()]),(_vm.mainPhoto && _vm.mainPhoto.length === 0)?_c('div',{style:({ color: _vm.color[8] })},[_vm._v(\" No photos were added \")]):_vm._e(),(_vm.loading)?_c('b-loading',{attrs:{\"is-full-page\":false},model:{value:(_vm.loading),callback:function ($$v) {_vm.loading=$$v},expression:\"loading\"}}):_vm._e()],1)]),(['mobile', 'tablet'].includes(_vm.breakpoint))?_c('MobileGallery',{attrs:{\"color\":_vm.color,\"loading\":_vm.loading,\"updateMainPhoto\":_vm.updateMainPhoto,\"photosList\":_vm.photosList}}):_vm._e(),_c('article',{style:({\n position: 'relative',\n paddingLeft: '30px',\n paddingBottom: '50px',\n width: '100%'\n })},[_c('div',[_c('div',{style:({ display: 'flex', flexDirection: 'column', marginTop: '14px' })},[_c('div',{style:({ color: _vm.color[8], width: '140px' })},[_vm._v(\"Status\")]),_c('div',{style:({\n color: _vm.color[8],\n fontSize: '1.5rem',\n\n fontWeight: 'bold',\n paddingRight: '12px'\n }),attrs:{\"vio-status\":\"\"}},[_vm._v(\" \"+_vm._s(_vm.details.status)+\" \")])]),_c('div',{style:({ display: 'flex', flexDirection: 'column', marginTop: '14px' })},[_c('div',{style:({ color: _vm.color[8], width: '140px' })},[_vm._v(\"Type\")]),_c('div',{style:({\n color: _vm.color[8],\n fontSize: '1.5rem',\n\n fontWeight: 'bold',\n paddingRight: '12px'\n }),attrs:{\"vio-type\":\"\"}},[_vm._v(\" \"+_vm._s(_vm.details.typeName)+\" \")])]),_c('div',{style:({ display: 'flex', flexDirection: 'column', marginTop: '14px' })},[_c('div',{style:({ color: _vm.color[8], width: '140px' })},[_vm._v(\"Owner\")]),_c('div',{style:({\n color: _vm.color[8],\n\n fontWeight: 'bold',\n paddingRight: '12px'\n }),attrs:{\"vio-owner\":\"\"}},[_vm._v(\" \"+_vm._s(_vm.details.ownerName)+\" \")])]),_c('div',{style:({ display: 'flex', flexDirection: 'column', marginTop: '14px' })},[_c('div',{style:({ color: _vm.color[8], width: '140px' })},[_vm._v(\"Address\")]),_c('div',{style:({\n color: _vm.color[8],\n\n fontWeight: 'bold',\n paddingRight: '12px'\n }),attrs:{\"vio-address\":\"\"}},[_vm._v(\" \"+_vm._s(_vm.details.address)+\" \")])])]),(_vm.authUserType !== 'HomeOwner')?_c('div',{staticClass:\"pt-2\",style:({\n // position: 'absolute',\n width: '100%',\n bottom: 0,\n left: '0',\n textAlign: 'right'\n })},[(_vm.violation.isClosed == false)?_c('b-button',{style:({ margin: '4px' }),on:{\"click\":function($event){$event.preventDefault();return _vm.confirmClose(_vm.violation.violationID, true)}}},[_vm._v(\"Close Violation\")]):_c('b-button',{style:({ margin: '4px' }),on:{\"click\":function($event){$event.preventDefault();return _vm.confirmClose(_vm.violation.violationID, false)}}},[_vm._v(\"Open Violation\")]),(_vm.violation.isClosed == false)?_c('b-button',{style:({ margin: '4px' }),attrs:{\"escalator\":\"\",\"type\":\"is-primary\"},on:{\"click\":_vm.escalate}},[_vm._v(\"Escalate\")]):_vm._e()],1):_vm._e()])],1),_c('Escalator',{ref:\"escalator\",attrs:{\"onComplete\":_vm.stepAdded}}),_c('b-loading',{attrs:{\"is-full-page\":true},model:{value:(_vm.loading),callback:function ($$v) {_vm.loading=$$v},expression:\"loading\"}})],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('article',{staticClass:\"card\",style:({ padding: '.5rem', height: '420px' })},[_c('div',{style:({ color: _vm.color[8] })},[_vm._v(\"All Photos\")]),(_vm.photosList && !_vm.loading)?_c('div',{style:({\n maxHeight: '350px',\n minHeight: '350px',\n overflowY: 'scroll'\n })},_vm._l((_vm.photosList),function(photo,index){return _c('figure',{key:index,style:({\n position: 'relative',\n display: 'inline-flex',\n justifyContent: 'center',\n alignItems: 'center',\n\n margin: '4px',\n\n width: '90%',\n paddingBottom: '90%',\n\n overflow: 'hidden',\n borderRadius: '6px',\n\n boxShadow: '0 12px 18px 0 rgba(0, 0, 0, 0.05)'\n }),attrs:{\"vio-photo\":\"\",\"tabindex\":\"0\",\"aria-label\":'photo ' + (index + 1)},on:{\"click\":function($event){$event.preventDefault();return _vm.updateMainPhoto(index)}}},[_c('transition',{attrs:{\"name\":\"fade\"}},[_c('ImageItem',{attrs:{\"source\":photo.content}})],1)],1)}),0):_vm._e(),(_vm.loading)?_c('b-loading',{attrs:{\"is-full-page\":false},model:{value:(_vm.loading),callback:function ($$v) {_vm.loading=$$v},expression:\"loading\"}}):_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('figure',{directives:[{name:\"lazyload\",rawName:\"v-lazyload\"}],staticClass:\"image__wrapper\"},[_c('ImageSpinner',{staticClass:\"image__spinner\"}),_c('img',{staticClass:\"image__item\",style:({\n position: 'absolute',\n top: '50%',\n left: '50%',\n transform: 'translateX(-50%) translateY(-50%)',\n flexShrink: '0',\n maxWidth: '100%',\n maxHeight: '100%',\n height: '100%',\n width: '100%',\n objectFit: 'contain'\n }),attrs:{\"data-url\":_vm.source}})],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._m(0)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"ripple\"},[_c('div',{staticClass:\"ripple__circle\"}),_c('div',{staticClass:\"ripple__circle ripple__inner-circle\"})])}]\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./ImageSpinner.vue?vue&type=template&id=e745b496&scoped=true&\"\nvar script = {}\nimport style0 from \"./ImageSpinner.vue?vue&type=style&index=0&id=e745b496&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"e745b496\",\n null\n \n)\n\nexport default component.exports","\r\n\r\n\r\n\r\n\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ImageItem.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ImageItem.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ImageItem.vue?vue&type=template&id=d88fdbd0&scoped=true&\"\nimport script from \"./ImageItem.vue?vue&type=script&lang=js&\"\nexport * from \"./ImageItem.vue?vue&type=script&lang=js&\"\nimport style0 from \"./ImageItem.vue?vue&type=style&index=0&id=d88fdbd0&scoped=true&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"d88fdbd0\",\n null\n \n)\n\nexport default component.exports","\r\n\r\n\r\n","import mod from \"-!../../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DesktopGallery.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DesktopGallery.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./DesktopGallery.vue?vue&type=template&id=36c8643a&\"\nimport script from \"./DesktopGallery.vue?vue&type=script&lang=js&\"\nexport * from \"./DesktopGallery.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('article',{staticClass:\"card\",style:({ padding: '.5rem' })},[_c('div',{style:({ color: _vm.color[8] })},[_vm._v(\"All Photos\")]),(_vm.photosList)?_c('div',{style:({\n overflowY: 'scroll',\n overflowX: 'scroll',\n whiteSpace: 'nowrap',\n width: '100%',\n paddingBottom: '10px'\n })},_vm._l((_vm.photosList),function(photo,index){return _c('figure',{key:index,style:({\n position: 'relative',\n display: 'inline-flex',\n justifyContent: 'center',\n alignItems: 'center',\n margin: '4px',\n width: '95px',\n height: '71px',\n overflow: 'hidden',\n borderRadius: '6px',\n boxShadow: '0 12px 18px 0 rgba(0, 0, 0, 0.05)'\n }),attrs:{\"vio-photo\":\"\",\"tabindex\":\"0\",\"aria-label\":'photo ' + (index + 1)},on:{\"click\":function($event){$event.preventDefault();return _vm.updateMainPhoto(index)}}},[_c('transition',{attrs:{\"name\":\"fade\"}},[_c('ImageItem',{attrs:{\"source\":photo.content}})],1)],1)}),0):_vm._e(),(_vm.loading)?_c('b-loading',{attrs:{\"is-full-page\":false},model:{value:(_vm.loading),callback:function ($$v) {_vm.loading=$$v},expression:\"loading\"}}):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n","import mod from \"-!../../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MobileGallery.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MobileGallery.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./MobileGallery.vue?vue&type=template&id=6255008c&\"\nimport script from \"./MobileGallery.vue?vue&type=script&lang=js&\"\nexport * from \"./MobileGallery.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","//\r\nimport { mapState } from 'vuex'\r\n//\r\nexport const computed = {\r\n ...mapState({\r\n hoaId: state => state.user.selectedHoaId,\r\n breakpoint: state => state.win.breakpoint\r\n })\r\n}\r\n","import _get from 'lodash/get'\r\n\r\nexport function data() {\r\n const theme = _get(this, ['$store', 'state', 'theme'], {})\r\n\r\n const authUserType = _get(this, ['$store', 'getters', 'user/authUserType'], null)\r\n\r\n return {\r\n authUserType,\r\n color: theme.color,\r\n toggle: false,\r\n loading: true,\r\n mainPhoto: null,\r\n occurrence: null,\r\n violation: {},\r\n occurrences: [],\r\n steps: [],\r\n photosList: [],\r\n details: {},\r\n startIndex: 1,\r\n itemsPerPage: 1,\r\n hoaID: 0\r\n }\r\n}\r\n","/*\r\n import { updateV } from '@/services/ViolationIssue/Violation/Put';\r\n\r\n // for example:\r\n const { successful, message, details } = await updateV ({\r\n json: {}\r\n });\r\n if (!successful) {\r\n notifyProblem (message);\r\n return;\r\n }\r\n\r\n*/\r\n//\r\nimport kms from '@/services/kms'\r\n//\r\nexport async function updateV({ kms: kms_ = kms, json } = {}) {\r\n try {\r\n const details = await kms_.put(`/ViolationIssue/Violation`, json)\r\n\r\n return {\r\n successful: true,\r\n message: null,\r\n details\r\n }\r\n } catch (exception) {\r\n console.error(exception)\r\n }\r\n\r\n return {\r\n successful: false,\r\n message: `The details could not be retrieved successfully.`,\r\n details: null\r\n }\r\n}\r\n","import _get from 'lodash/get'\r\nimport { notifyProblem } from '@/services/notify'\r\nimport { getString } from '@/utilities/get/string'\r\nimport parseAddress from '@/utilities/address/parse'\r\nimport { parseDate } from '@/utilities/Date/parse'\r\nimport { getV } from '@/services/ViolationIssue/Violation/Get'\r\nimport { getVOccurrenceList } from '@/services/ViolationIssue/ViolationOccurrence/List'\r\nimport { updateV } from '@/services/ViolationIssue/Violation/Put'\r\nimport { listSteps } from '@/services/ViolationIssue/ViolationStep/List'\r\nimport { getMultiplePhotos } from '@/services/ViolationIssue/ViolationOccurrencePhoto/sequences/GetMultiple'\r\n\r\nexport const methods = {\r\n getId() {\r\n if (typeof this.propId === 'number') {\r\n return this.propId\r\n }\r\n\r\n return _get(this, ['$route', 'params', 'id'], 0)\r\n },\r\n\r\n async stepAdded() {\r\n console.debug('in step added...')\r\n const fromRoute = _get(this, ['$route', 'path'], '')\r\n\r\n if (fromRoute.indexOf('violationDetails') !== -1) {\r\n console.debug('in reRender')\r\n this.reRender()\r\n } else {\r\n await this.getSteps({\r\n id: this.getId()\r\n })\r\n\r\n await this.refresh()\r\n }\r\n },\r\n\r\n reRender() {\r\n //Necessary for now to force other tabs to re-render\r\n this.$forceUpdate()\r\n this.$router.go(0)\r\n },\r\n\r\n async getSteps({ id }) {\r\n const hoaID = _get(this, ['$store', 'getters', 'user/hoaIDInteger'], null)\r\n this.hoaID = hoaID\r\n\r\n var { successful, message, steps } = await listSteps({\r\n params: {\r\n hoaID,\r\n violationID: id\r\n }\r\n })\r\n if (!successful) {\r\n notifyProblem(message)\r\n return false\r\n }\r\n\r\n console.debug('steps=' + JSON.stringify(steps))\r\n\r\n const occurrences = this.occurrences\r\n //const photosList = []\r\n\r\n this.steps = steps\r\n .map((step, index) => {\r\n const occurrence = _get(step, 'violationOccurrence', {})\r\n\r\n let photosMeta = []\r\n\r\n /* get the photos meta data from the corresponding occurrence */\r\n for (let a = 0; a < occurrences.length; a++) {\r\n const o = occurrences[a]\r\n\r\n try {\r\n if (\r\n o.violationOccurrenceID === step.violationOccurrenceID &&\r\n Array.isArray(o.violationOccurrencePhotos)\r\n ) {\r\n photosMeta = o.violationOccurrencePhotos\r\n break\r\n }\r\n } catch (x) {\r\n console.error(x)\r\n }\r\n }\r\n\r\n const observationDate = getString(occurrence, 'observationDate', '')\r\n let observationDateParsed = parseDate(observationDate, 'LL')\r\n\r\n return {\r\n count: index + 1,\r\n actionName: getString(step, ['violationAction', 'name'], ''),\r\n observedBy: getString(occurrence, 'observedBy', ''),\r\n observationDate: observationDateParsed,\r\n description: getString(occurrence, 'description', ''),\r\n photosMeta,\r\n photos: []\r\n }\r\n })\r\n .reverse()\r\n\r\n this.$forceUpdate()\r\n\r\n return true\r\n },\r\n\r\n async lazyLoadMoreImages() {\r\n console.debug('in lazyLoadMoreImages()...')\r\n const loadingComponent = this.$buefy.loading.open({\r\n container: null\r\n })\r\n\r\n let counter = 0\r\n\r\n const photosList = []\r\n\r\n for (let a = 0; a < this.steps.length; a++) {\r\n const { photosMeta } = this.steps[a]\r\n\r\n console.debug('counter=' + counter)\r\n\r\n if (photosMeta) {\r\n const { photos } = await getMultiplePhotos({\r\n hoaID: this.hoaID,\r\n paramsList: photosMeta.map(photo => {\r\n return {\r\n violationOccurrencePhotoID: _get(photo, ['violationOccurrencePhotoID'], ''),\r\n asBase64: true,\r\n scaleToWidth: 400\r\n }\r\n })\r\n })\r\n\r\n if (counter <= this.steps.length) {\r\n console.debug('photos===' + JSON.stringify(photos))\r\n photosList.push(...photos)\r\n this.mainPhoto = _get(photosList, [0, 'content'], '')\r\n }\r\n\r\n counter = counter + 1\r\n }\r\n }\r\n\r\n this.photosList.push(...photosList)\r\n\r\n loadingComponent.close()\r\n },\r\n\r\n async updateImages(index) {\r\n console.debug('updateImages=' + index)\r\n },\r\n\r\n async escalate() {\r\n const id = this.getId()\r\n\r\n this.$refs.escalator.open({\r\n id\r\n })\r\n },\r\n\r\n async getVDetails() {\r\n const id = this.getId()\r\n\r\n const { successful, message, details: vDetails } = await getV({\r\n id\r\n })\r\n if (!successful) {\r\n notifyProblem(message)\r\n\r\n return {\r\n vDetails: null\r\n }\r\n }\r\n\r\n this.violation = vDetails\r\n\r\n const isClosed = _get(vDetails, ['isClosed'], null)\r\n let status = 'Indeterminable'\r\n if (isClosed === true) {\r\n status = 'Closed'\r\n } else if (isClosed === false) {\r\n status = 'Open'\r\n }\r\n\r\n this.details = {\r\n ownerName: _get(vDetails, ['owner', 'name'], ''),\r\n address: parseAddress({\r\n address: _get(vDetails, ['owner', 'unit', 'address'], '')\r\n }),\r\n typeName: _get(vDetails, ['violationType', 'name'], ''),\r\n status\r\n }\r\n\r\n return {\r\n vDetails\r\n }\r\n },\r\n\r\n confirmClose(id, isClosed) {\r\n const message = isClosed\r\n ? 'Please confirm below, that you wish to close the violation and mark it as resolved. A Violation Resolved Notice will be sent to the homeowner.'\r\n : 'Please confirm below, that you wish to re-open the violation and mark it as un-resolved.'\r\n\r\n const title = isClosed ? 'Closure Confirmation' : 'Re-open Confirmation'\r\n const confirm = isClosed ? 'Close Violation' : 'Re-open Violation'\r\n\r\n this.$buefy.dialog.confirm({\r\n title: title,\r\n message: message,\r\n confirmText: confirm,\r\n type: 'is-danger',\r\n hasIcon: true,\r\n onConfirm: () => this.modifyStatus({ isClosed })\r\n })\r\n },\r\n\r\n async getOccurrences({ vDetails }) {\r\n const hoaID = _get(this, ['$store', 'getters', 'user/hoaIDInteger'], null)\r\n\r\n const violationID = _get(vDetails, ['violationID'], null)\r\n\r\n const { list, successful, message } = await getVOccurrenceList({\r\n json: {\r\n hoaID,\r\n violationID\r\n }\r\n })\r\n if (!successful) {\r\n notifyProblem(message)\r\n this.loading = false\r\n return {\r\n successful: false\r\n }\r\n }\r\n //\r\n this.occurrences = list\r\n this.occurrence = list[0]\r\n\r\n return {\r\n successful: true\r\n }\r\n },\r\n\r\n async refresh() {\r\n this.loading = true\r\n\r\n const authUserType = _get(this, ['$store', 'getters', 'user/authUserType'], null)\r\n this.authUserType = authUserType\r\n console.log({\r\n authUserType\r\n })\r\n\r\n const { vDetails } = await this.getVDetails()\r\n if (vDetails === null) {\r\n this.loading = false\r\n return\r\n }\r\n\r\n const { successful } = await this.getOccurrences({\r\n vDetails\r\n })\r\n if (!successful) {\r\n this.loading = false\r\n return\r\n }\r\n\r\n const id = this.getId()\r\n await this.getSteps({\r\n id\r\n })\r\n\r\n this.loading = false\r\n\r\n this.lazyLoadMoreImages()\r\n },\r\n\r\n async modifyStatus({ isClosed }) {\r\n const { successful, message } = await updateV({\r\n json: {\r\n violationID: this.violation.violationID,\r\n ownerID: this.violation.ownerID,\r\n hoaID: this.violation.hoaID,\r\n violationTypeID: this.violation.violationTypeID,\r\n violationEscalationID: this.violation.violationEscalationID,\r\n isClosed,\r\n createdDate: this.violation.createdDate,\r\n modifiedDate: this.violation.modifiedDate\r\n }\r\n })\r\n if (!successful) {\r\n notifyProblem(message)\r\n return\r\n }\r\n\r\n this.refresh()\r\n },\r\n\r\n async updateMainPhoto(index) {\r\n console.debug('updateMainPhoto...')\r\n const photosList = this.photosList\r\n\r\n if (Array.isArray(photosList) && photosList.length >= 1) {\r\n this.mainPhoto = _get(photosList, [index, 'content'], '')\r\n }\r\n }\r\n}\r\n","export function mounted() {\r\n this.refresh()\r\n}\r\n","export const props = {\r\n //\r\n // for testing, so that the id\r\n // can be passed in as a prop\r\n // instead of being retrieved\r\n // from the route\r\n //\r\n propId: {\r\n type: [Number, Boolean],\r\n default: false\r\n }\r\n}\r\n","export const watch = {\r\n toggle() {\r\n if (this.toggle == false) {\r\n this.refresh()\r\n this.toggle = false\r\n if (this.Modal && this.Modal != undefined) {\r\n this.Modal.$emit('update:toggle', (this.toggle = false))\r\n }\r\n }\r\n },\r\n hoaId() {\r\n this.refresh()\r\n }\r\n}\r\n","\r\n\r\n\r\n","import mod from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./index.vue?vue&type=template&id=4d41c068&\"\nimport script from \"./index.vue?vue&type=script&lang=js&\"\nexport * from \"./index.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports"],"sourceRoot":""}