{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///./src/views/Projects.vue?2402","webpack:///./src/views/SubUnits.vue?6153","webpack:///./src/App.vue?763a","webpack:///./src/assets/PDF_32.png","webpack:///./src/views/Animals/MortalityInfo.vue?53cf","webpack:///./src/views/Animals/Captures.vue?b6a2","webpack:///./src/views/Animals/Main.vue?4e34","webpack:///./src/views/Animals/CaptureEdit.vue?ad87","webpack:///./src/views/Collars.vue?c60f","webpack:///./src/views/Animals/Edit.vue?0714","webpack:///./src/views/Units.vue?92bc","webpack:///./src/App.vue?fde3","webpack:///./src/util/dateutil.ts","webpack:///./src/models/Capture.ts","webpack:///./src/models/Location.ts","webpack:///./src/models/Mortality.ts","webpack:///./src/models/Animal.ts","webpack:///./src/models/User.ts","webpack:///./src/store/state.ts","webpack:///./src/store/store.ts","webpack:///./src/services/services.ts","webpack:///./src/App.vue?ec60","webpack:///./src/App.vue?640d","webpack:///./src/App.vue","webpack:///./src/plugins/MultiFilters.js","webpack:///./src/views/Staging.vue?30e4","webpack:///./src/models/StagingArea.ts","webpack:///./src/views/Staging.vue?163f","webpack:///./src/views/Staging.vue?2467","webpack:///./src/views/Staging.vue","webpack:///./src/views/Animals/Edit.vue?a930","webpack:///./src/views/Animals/Captures.vue?e0ac","webpack:///./src/views/Animals/templates/captureEdit.html","webpack:///./src/models/Unit.ts","webpack:///./src/models/Collar.ts","webpack:///./src/models/CaptureImage.ts","webpack:///./src/models/SubUnit.ts","webpack:///./src/views/Animals/CaptureEdit.vue?e539","webpack:///./src/views/Animals/CaptureEdit.vue?56d8","webpack:///./src/views/Animals/CaptureEdit.vue","webpack:///./src/views/Animals/Captures.vue?cb89","webpack:///./src/views/Animals/Captures.vue?a5e6","webpack:///./src/views/Animals/Captures.vue","webpack:///./src/views/Animals/MortalityInfo.vue?0597","webpack:///./src/models/MortalityImage.ts","webpack:///./src/models/MortalityPDF.ts","webpack:///./src/views/Animals/MortalityInfo.vue?04a0","webpack:///./src/views/Animals/MortalityInfo.vue?9c40","webpack:///./src/views/Animals/MortalityInfo.vue","webpack:///./src/views/Animals/LocationMap.vue?38bc","webpack:///./src/views/Animals/LocationMap.vue?80f1","webpack:///./src/views/Animals/LocationMap.vue?f2a1","webpack:///./src/views/Animals/LocationMap.vue","webpack:///./src/views/Animals/Edit.vue?58de","webpack:///./src/views/Animals/Edit.vue?046b","webpack:///./src/views/Animals/Edit.vue","webpack:///./src/views/Animals/templates/main.html","webpack:///./src/views/Animals/Main.vue?9187","webpack:///./src/views/Animals/Main.vue?504a","webpack:///./src/views/Animals/Main.vue","webpack:///./src/views/Collars.vue?4f7a","webpack:///./src/views/Collars.vue?1156","webpack:///./src/views/Collars.vue?6b02","webpack:///./src/views/Collars.vue","webpack:///./src/views/Units.vue?7eb8","webpack:///./src/views/Units.vue?a5b8","webpack:///./src/views/Units.vue?b57e","webpack:///./src/views/Units.vue","webpack:///./src/views/Users.vue?a662","webpack:///./src/models/Role.ts","webpack:///./src/views/Users.vue?da9a","webpack:///./src/views/Users.vue?9550","webpack:///./src/views/Users.vue","webpack:///./src/views/SubUnits.vue?8168","webpack:///./src/views/SubUnits.vue?99ce","webpack:///./src/views/SubUnits.vue?3d64","webpack:///./src/views/SubUnits.vue","webpack:///./src/views/Projects.vue?89cf","webpack:///./src/views/Projects.vue?be6c","webpack:///./src/views/Projects.vue?1fe3","webpack:///./src/views/Projects.vue","webpack:///./src/router.ts","webpack:///./src/main.ts","webpack:///./src/views/Users.vue?b012","webpack:///./src/views/Staging.vue?7ffa"],"names":["webpackJsonpCallback","data","moduleId","chunkId","chunkIds","moreModules","executeModules","i","resolves","length","Object","prototype","hasOwnProperty","call","installedChunks","push","modules","parentJsonpFunction","shift","deferredModules","apply","checkDeferredModules","result","deferredModule","fulfilled","j","depId","splice","__webpack_require__","s","installedModules","exports","module","l","m","c","d","name","getter","o","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","p","jsonpArray","window","oldJsonpFunction","slice","_vm","this","_h","$createElement","_c","_self","staticClass","attrs","slot","_v","user","RoleId","_e","$route","fullPath","on","beginLogin","staticRenderFns","date","includes","split","month","day","year","padStart","datestr","Date","toISOString","substr","oneSplit","toJavascriptDate","date_test","$CaptureArea","$SubUnitId","$TotalTimeInArea","$TriggerEmailDate","$TriggerEmailTime","$VitLatitude","$VitLongitude","$SurvivalUnit","$CaptureId","$CaptureDate","$CollarId","$CollarCode","$EarTagNumber","$EarTagColor","$CaptureUnitId","$Comments","$Weight","$Age","$AgerUserId","$Chest","$BodyLength","$Neck","$Hoof","$Temp1","$Temp2","$Temp3","$WayPoint","$Latitude","$Longitutde","$BodyConditionScore","$ScoredByUserId","$RumpFat","$Loin","$Pregnant","$Lactation","$BloodSample","$CWDSample","$FecalSample","$StagingAreaOld","$StagingAreaId","$AnimalId","$DataValid","$RecordedByUserId","$ChaseTime","$TempAtCapture","$TimeAtCapture","$Time1","$Time2","$Time3","$IsAdult","$RespiratoryRate","$HeartRate","$Metatarsus","$Lactate","$Velvet","$LeftPoints","$RightPoints","$LeftBeamLength","$RightBeamLength","$TesticleSize","$ReleaseTime","$ArrivalTime","$NeonateHoof","$Spread","$Twins","$Injections","$Twin1Id","$Twin2Id","$Calcium","$Copper","$Iron","$Potassium","$Magnesium","$Manganese","$Molybdenum","$Phosphorus","$Selenium","$Zinc","$drugTagNum","$drugDetails","$areDrugsAdministered","CaptureArea","SubUnitId","TotalTimeInArea","TriggerEmailDate","triggerdate","TriggerEmailDateStr","TriggerEmailTime","VitLatitude","VitLongitude","SurvivalUnit","CaptureId","CollarCode","CaptureDate","CollarId","EarTagNumber","DrugTagNum","DrugDetails","AreDrugsAdministered","EarTagColor","CaptureUnitId","Comments","Weight","Age","AgerUserId","Chest","BodyLength","Neck","Hoof","Temp1","Temp2","Temp3","WayPoint","Latitude","Longitude","BodyConditionScore","ScoredByUserId","RumpFat","Loin","Pregnant","Lactation","BloodSample","CWDSample","FecalSample","StagingAreaOld","StagingAreaId","AnimalId","DataValid","RecordedByUserId","ChaseTime","TempAtCapture","TimeAtCapture","Time1","Time2","Time3","IsAdult","RespiratoryRate","HeartRate","Metatarsus","Lactate","Velvet","LeftPoints","RightPoints","LeftBeamLength","RightBeamLength","TesticleSize","ReleaseTime","ArrivalTime","NeonateHoof","Spread","Twins","Injections","Twin1Id","Twin2Id","Calcium","Copper","Iron","Potassium","Magnesium","Manganese","Molybdenum","Phosphorus","Selenium","Zinc","CaptureDateStr","Species","ArchiveId","json","captureId","captureDate","triggerEmailDate","captureArea","subUnitId","totalTimeInArea","triggerEmailTime","vitLatitude","vitLongitude","survivalUnit","collarId","collarCode","earTagNumber","drugTagNum","drugDetails","areDrugsAdministered","earTagColor","captureUnitId","comments","weight","age","agerUserId","chest","bodyLength","neck","hoof","temp1","temp2","temp3","wayPoint","latitude","longitude","bodyConditionScore","scoredByUserId","rumpFat","loin","pregnant","lactation","bloodSample","cwdSample","fecalSample","stagingAreaOld","stagingAreaId","animalId","dataValid","recordedByUserId","chaseTime","tempAtCapture","timeAtCapture","time1","time2","time3","isAdult","respiratoryRate","heartRate","metatarsus","lactate","velvet","leftPoints","rightPoints","leftBeamLength","rightBeamLength","testicleSize","releaseTime","arrivalTime","neonateHoof","spread","twins","injections","twin1Id","twin2Id","calcium","copper","iron","potassium","magnesium","manganese","molybdenum","phosphorus","selenium","zinc","IFBF","ifbf","archiveId","calculateIFBF","determineDrugsAdministered","specie","details","Id","Collar","livIndex","maxFat","denominator","Math","pow","scaledMaxFat","$LocationId","$Date","$Longitude","$CollarFreq","$NumStats","$HDOP","$FixTIme","_2d3d","$ObjectId","LocationId","CollarFreq","NumStats","HDOP","FixTIme","ObjectId","position","lat","lng","opened","InitialCaptureStr","locationId","collarFreq","numStats","hdop","fixTIme","objectId","$MortalityId","$MortalityDate","$MortalityTime","$FirstEmailedDate","$RetrievedDate","$RecoveredByUserId","$MortalityUnitId","$CauseOfDeath","$IsCaptureRelated","$Waypoint","$CementumAge","$ConfidenceRating","MortalityId","MortalityDate","MortalityTime","FirstEmailedDate","RetrievedDate","RecoveredByUserId","MortalityUnitId","CauseOfDeath","IsCaptureRelated","Waypoint","CementumAge","ConfidenceRating","mortalityId","mortalityDate","mortalityTime","firstEmailedDate","retrievedDate","recoveredByUserId","mortalityUnitId","causeOfDeath","isCaptureRelated","waypoint","cementumAge","confidenceRating","MortalityDateStr","FirstEmailedDateStr","RetrievedDateStr","time","cause","mortality","Mortality","$Sex","$Species","$InitialCapture","$CollarSerialNumber","$Archived","$MaternalId","$UniqueId","$Capture","$LastCaptureUnit","$Mortality","$Locations","$Birthday","Sex","InitialCapture","Birthday","CollarSerialNumber","Archived","MaternalId","UniqueId","Capture","LastCaptureUnit","Locations","sex","species","initialCapture","birthday","substring","BirthString","archived","maternalId","uniqueId","collarSerialNumber","capture","lastCaptureUnit","locations","Projects","ProjectsList","projectsList","fromJSON","forEach","element","projects","id","$Role","$RoleId","FullName","fullName","firstName","lastName","FirstName","LastName","NetId","Role","UserId","Email","Phone","token","dialog","selectedCapture","selectedAnimal","selectedMortality","captures","animals","use","store","Store","state","mutations","setAdmin","payload","setToken","setCaptureDialog","setCapture","setAnimal","setAnimalId","getUniqueId","getMortality","setMortality","setCaptures","addCapture","deleteCapture","setAnimals","actions","apiAuthorizedUrl","getApiUrl","location","hostname","toLowerCase","makeHeader","setJsonHeader","header","setCSVHeader","url","fetch","method","headers","getUnarchivedUsers","getMortalityImages","getMortalityPDFs","getLocationsByAnimalId","start","end","getMortalityLocationsByAnimalId","getCaptureImages","getUser","getAnimalById","includeArchived","getFilteredAnimals","unitId","projectId","URL","params","toLocaleDateString","keys","searchParams","append","toString","getCapturesForAnimal","postMortalityImages","file","body","postMortalityPDFs","postCaptureImage","postCapture","JSON","stringify","postUser","postStagingArea","area","postAnimal","animal","postCollar","collar","postMortality","postUnit","unit","putUnit","postSubUnit","subUnit","putSubUnit","console","log","putStagingArea","putMortality","putCapture","putUser","putAnimal","putCollar","deleteAnimalById","deleteMortalityImageById","deleteMortalityPDFById","deleteCaptureImageById","deleteMortalityById","archiveUnitId","deleteSubUnitById","unArchiveUnitId","archiveAreaId","unArchiveAreaId","archiveUserId","unArchiveUserId","archiveCollarId","unArchiveCollarId","toggleFlagService","endpoint","toggleCaptureFlagService","exportCaptureData","exportMortalityData","reqBody","reqMethod","req","APICall","then","status","text","catch","err","getProjects","addNewProject","updateProject","deleteProject","change","observer","error","expiresAt","now","setTimeout","logout","commit","bearer","netId","admin","redirect","$router","login","localStorage","getItem","path","setItem","removeItem","currentRoute","component","MultiFilters","items","filters","filter","filterCallbacks","filterName","filterCallback","self","filteredItems","entries","entity","cb","val","assign","MultiFiltersPlugin","install","Vue","options","$MultiFilters","model","callback","$$v","confirmdialog","expression","close","archiveArea","staticStyle","filterState","selectedStatus","filterSearch","selectedStagingArea","$set","nativeOn","$event","save","areas","customFilter","scopedSlots","_u","fn","props","expanded","_s","item","Name","editItem","deleteItem","index","unarchiveArea","$Id","$Name","sortable","search","State","defaultStagingArea","selectedIndex","getAreas","getId","archive","unarchive","undefined","setId","res","list","cf","registerFilter","searchWord","trim","newit","runFilters","updateFilters","deleteAnimal","unarchiveAnimal","ref","collarCodes","collarCodeText","addCollarCode","addDate","parseDate","birthDate","projectList","snackbarOpen","message","snackBarObj","snackBarColor","timeout","y","x","snackbar","openDialog","valid","parseDates","copyAnimal","units","unitText","addUnit","subUnits","subUnitText","addSubUnit","areaText","addArea","survivalUnits","chasetimes","users","agerText","eartags","tagColors","scorerText","lactations","pickFile","onFilePicked","_l","deleteUploaded","ImageURL","deleteImage","CaptureImageId","title","redirectUrl","$UnitId","$Abbreviation","UnitId","Abbreviation","$ManufactureDate","ManufactureDate","$CaptureImageId","$ImageURL","CaptureImage","abbreviation","Pending","Value","editedIndex","pending","radios","defaultCapture","imgLinks","captureImages","selectedFiles","getOneThroughEightHundred","getCaptureUnits","getCaptureSubUnits","getStagingAreas","getUsers","setCollarId","getCollarId","setSpecies","getSpecies","$refs","pform","reset","setCaptureDateStr","setTriggerEmailDateStr","updateChest","num","round","Number","EPSILON","collarDrop","blur","areaDrop","setStagingAreaId","unitDrop","setUnitId","getUnitId","setSubUnitId","getAnimalId","newdate","getArchived","$emit","color","onUpload","getAreDrugsAdministered","setDrugDetails","setCaptureId","find","setCollarCode","getCollarCode","$store","image","click","e","files","target","fr","FileReader","onload","imageUrl","imageFile","readAsDataURL","formData","FormData","getCaptureId","getImages","ok","snack","changeValid","getDataValid","components","CaptureEdit","addMortality","emailedDate","confidenceList","userText","addUser","collars","causesDeath","causeOfDeathText","addCauseOfDeath","delDialog","pickImageFile","onImageFilePicked","deleteUploadedImage","MortalityImageId","pickPDFFile","onPDFFilePicked","selectedPDFFiles","deleteUploadedPDF","MortalityPdfId","PdfUrl","deletePDF","deleteDialog","deleteMortality","$MortalityImageId","MortalityImage","$MortalityPdfId","$PdfUrl","MortalityPDF","selectedImgFiles","imagesPendingUpload","uploadedImages","pdfsPendingUpload","uploadedPDFs","getUnits","getCausesOfDeath","setMortalityDate","setMortalityTime","setFirstEmailedDate","getMortalityDate","getFirstEmailedDate","getRetrievedDate","getMortalityTime","getPDFs","setRetrievedDate","userDrop","u","setUserId","userId","setRecoveredByUserId","deathDrop","setCauseOfDeath","getCollarCodeId","getMortalityId","setMortalityId","uploadImages","uploadPDFs","pdf","pdfURL","pdfFile","exportLocations","startDate","startDateStr","endDate","endDateStr","center","infoOptions","_f","pixelOffset","width","height","mortalities","setDate","getDate","getLocations","getLatitude","getLongitude","csvContent","getMonth","getFullYear","today","filename","exportToCSV","content","blob","Blob","type","navigator","msSaveBlob","link","document","createElement","download","createObjectURL","setAttribute","style","visibility","appendChild","removeChild","redirectUser","parseInt","a","setInitialCapture","setBirthdate","drop","Captures","MortalityInfo","LocationMap","exportState","datefrom","fromDate","dateto","toDate","selectedUniqueId","selectedSpecies","selectedCollarCode","selectedUnit","selectedAge","statusList","selectedSex","getTableData","clearFilters","exportCapturesToCSV","exportMortalityToCSV","editedAnimal","updateBirthday","birthMonth","birthYear","formatDate","setSex","getAge","getCollars","getCollarSerialNumber","getCollarFreq","selectedUnitId","VueEditor","selectedCollar","unarchiveCollar","defaultCollar","archiveUnit","unarchiveUnit","messageDialog","messageDialogBody","closeMessageDialog","defaultUnit","getName","archiveUser","filterstatus","selectedUser","roles","unarchiveUser","adminList","defaultUser","getRoles","role","archiveSubUnit","selectedSubUnit","SubUnits","unarchiveSubUnit","defaultSubUnit","getSubUnits","projectsFilter","class","deleted","setEdit","newDialog","isEdit","editProject","archiveProject","closeProjectDialog","arr","idx","temp","getFliteredList","base","routes","config","productionTip","ignoredElements","theme","primary","secondary","accent","info","success","warning","load","libraries","iso","router","render","h","$mount"],"mappings":"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","file":"js/app.bd94c0a6.js","sourcesContent":[" \t// install a JSONP callback for chunk loading\n \tfunction webpackJsonpCallback(data) {\n \t\tvar chunkIds = data[0];\n \t\tvar moreModules = data[1];\n \t\tvar executeModules = data[2];\n\n \t\t// add \"moreModules\" to the modules object,\n \t\t// then flag all \"chunkIds\" as loaded and fire callback\n \t\tvar moduleId, chunkId, i = 0, resolves = [];\n \t\tfor(;i < chunkIds.length; i++) {\n \t\t\tchunkId = chunkIds[i];\n \t\t\tif(Object.prototype.hasOwnProperty.call(installedChunks, chunkId) && installedChunks[chunkId]) {\n \t\t\t\tresolves.push(installedChunks[chunkId][0]);\n \t\t\t}\n \t\t\tinstalledChunks[chunkId] = 0;\n \t\t}\n \t\tfor(moduleId in moreModules) {\n \t\t\tif(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {\n \t\t\t\tmodules[moduleId] = moreModules[moduleId];\n \t\t\t}\n \t\t}\n \t\tif(parentJsonpFunction) parentJsonpFunction(data);\n\n \t\twhile(resolves.length) {\n \t\t\tresolves.shift()();\n \t\t}\n\n \t\t// add entry modules from loaded chunk to deferred list\n \t\tdeferredModules.push.apply(deferredModules, executeModules || []);\n\n \t\t// run deferred modules when all chunks ready\n \t\treturn checkDeferredModules();\n \t};\n \tfunction checkDeferredModules() {\n \t\tvar result;\n \t\tfor(var i = 0; i < deferredModules.length; i++) {\n \t\t\tvar deferredModule = deferredModules[i];\n \t\t\tvar fulfilled = true;\n \t\t\tfor(var j = 1; j < deferredModule.length; j++) {\n \t\t\t\tvar depId = deferredModule[j];\n \t\t\t\tif(installedChunks[depId] !== 0) fulfilled = false;\n \t\t\t}\n \t\t\tif(fulfilled) {\n \t\t\t\tdeferredModules.splice(i--, 1);\n \t\t\t\tresult = __webpack_require__(__webpack_require__.s = deferredModule[0]);\n \t\t\t}\n \t\t}\n\n \t\treturn result;\n \t}\n\n \t// The module cache\n \tvar installedModules = {};\n\n \t// object to store loaded and loading chunks\n \t// undefined = chunk not loaded, null = chunk preloaded/prefetched\n \t// Promise = chunk loading, 0 = chunk loaded\n \tvar installedChunks = {\n \t\t\"app\": 0\n \t};\n\n \tvar deferredModules = [];\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"/\";\n\n \tvar jsonpArray = window[\"webpackJsonp\"] = window[\"webpackJsonp\"] || [];\n \tvar oldJsonpFunction = jsonpArray.push.bind(jsonpArray);\n \tjsonpArray.push = webpackJsonpCallback;\n \tjsonpArray = jsonpArray.slice();\n \tfor(var i = 0; i < jsonpArray.length; i++) webpackJsonpCallback(jsonpArray[i]);\n \tvar parentJsonpFunction = oldJsonpFunction;\n\n\n \t// add entry module to deferred list\n \tdeferredModules.push([0,\"chunk-vendors\"]);\n \t// run deferred modules when ready\n \treturn checkDeferredModules();\n","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/index.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!./Projects.vue?vue&type=style&index=0&lang=scss&\"","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/index.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!./SubUnits.vue?vue&type=style&index=0&id=2a3b1944&lang=scss&scoped=true&\"","export * from \"-!../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../node_modules/css-loader/index.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!./App.vue?vue&type=style&index=0&lang=scss&\"","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAACXBIWXMAAAsSAAALEgHS3X78AAACtklEQVRYCe2XTWjTYBzGn7RN1wkdu1XWebCXlSKenC2iCLPzUBALfqAg1F0m2PpxELGIIjsUPQhO7cQxpmWHgR+wiwq1lQmCK3oRRomXiqDDHgaajrVdm0Ted1uxJG2TNNsuPlDom7zJ/5fn+b9vCCNJErZSFlltl6MbwAyAg21wfQdwC7n801YT5Q64HLPCvgO/V+4+PCrZuzRXZgo8LBOP/rCJCRbV6nPk8me1AkilF68guj2ai/8rE5eF7XSwiErlWTMIk9LBdouv36M0PdMJlj0Jl6NhFIoARkkNhG4AczqJbbt2otO3m+beSDUIi+UEXA5ZFLoB2KlJkF5hlgoUppkIxMrVG4sAjAPA2o3FPV4wCz9azhWOBHcoLW3dAKKzF+ZPczB9zkAYONxyfqMlrRtACB6H9cIwpB5nW6tGvwNuD80fPN+0CTcMgDRe9cwQJLcH7O0R3QDyd4FKsWP3UL4/TrO1HQvAxgUAexdtSGbhJ4SBQVTOX24Zj2YHyJN3XBym1lumJmEbOrUaBYDyg3EUkx9Q/PgFDM/Dev2KcQ6QwtY7IxD6fXQs7vVB7PfRZhR7emF+l4RtcD+NhIjhsnROKym+jJbnv9UdspKMCzwq125SEGJ/6eVr2dIizUjOkxjEPg+EQ/XLk+ycyOWZumvUAJALy6OPYfqaBTs2ivKT6ZoTWqQEoCoC0u0dl87RNU9A9BRvJFUOGCUlBzb0daxGmgC8Xi/9xePx2tjv9yOdTsvOqZXmjSiVStGi4XCYjhOJBEKhEP2fyWQ21gEinq/f951OJwqF1Y2IOEDc0CLNDpCnjUajtTHHcbDb7RRiUxwgEQSDwdo4EokgFotpLryu/8tQCeC9+e2bZcMLZeeX1j7Z6qQUQbfk2D7H5H/1GUrAsuQrKYBcfrY5wCZra3sAwF8ksiYS0DOdWwAAAABJRU5ErkJggg==\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/index.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!./MortalityInfo.vue?vue&type=style&index=0&lang=scss&\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/index.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!./Captures.vue?vue&type=style&index=0&id=7632a46a&lang=scss&scoped=true&\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/index.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!./Main.vue?vue&type=style&index=0&id=5de181c3&lang=scss&scoped=true&\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/index.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!./CaptureEdit.vue?vue&type=style&index=0&id=14ba35f0&lang=scss&scoped=true&\"","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/index.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!./Collars.vue?vue&type=style&index=0&id=01918efe&lang=scss&scoped=true&\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/index.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!./Edit.vue?vue&type=style&index=0&id=15f5a118&lang=scss&scoped=true&\"","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/index.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!./Units.vue?vue&type=style&index=0&id=d078c9da&lang=scss&scoped=true&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"containing-element\"},[_c('byu-header',[_c('span',{attrs:{\"slot\":\"site-title\"},slot:\"site-title\"},[_vm._v(\"Animal Tracker\")]),_c('byu-user-info-oauth',{attrs:{\"slot\":\"user\"},slot:\"user\"}),_c('byu-menu',{attrs:{\"slot\":\"nav\",\"collapsed\":\"\",\"active-selector\":\".router-link-exact-active\"},slot:\"nav\"},[_c('router-link',{attrs:{\"to\":\"/\"}},[_vm._v(\"Animals\")]),(_vm.user.RoleId < 3)?_c('router-link',{attrs:{\"to\":\"/units\"}},[_vm._v(\"Units\")]):_vm._e(),(_vm.user.RoleId < 3)?_c('router-link',{attrs:{\"to\":\"/subunits\"}},[_vm._v(\"Subunits\")]):_vm._e(),(_vm.user.RoleId < 3)?_c('router-link',{attrs:{\"to\":\"/collars\"}},[_vm._v(\"Collars\")]):_vm._e(),(_vm.user.RoleId < 3)?_c('router-link',{attrs:{\"to\":\"/staging\"}},[_vm._v(\"Staging\")]):_vm._e(),(_vm.user.RoleId < 3)?_c('router-link',{attrs:{\"to\":\"/projects\"}},[_vm._v(\"Projects\")]):_vm._e(),(_vm.user.RoleId == 1)?_c('router-link',{attrs:{\"to\":\"/users\"}},[_vm._v(\"Users\")]):_vm._e()],1)],1),_c('div',{staticClass:\"page-content container\",attrs:{\"id\":\"app\"}},[_c('v-app',[_c('router-view',{key:_vm.$route.fullPath,on:{\"beginLogin\":_vm.beginLogin}})],1)],1),_c('byu-footer')],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","export function parseDate(date: string): string|undefined {\n if (!date) return undefined;\n const [month, day, year] = date.includes('/') ? date.split('/') : date.split('-');\n return `${year}-${month.padStart(2, '0')}-${day.padStart(2, '0')}`;\n}\n\nexport function formatDate(date: Date|string|undefined): string|undefined {\n if (!date) return undefined;\n let datestr;\n if (date instanceof Date) {\n datestr = date.toISOString().substr(0, 10);\n } else {\n datestr = date\n }\n\n if (datestr.includes(\"/\"))\n return datestr;\n const [year, month, day] = datestr.split('-');\n return `${month}/${day}/${year}`;\n}\n\nexport const convertCSharpDate = (date: string) => {\n const oneSplit = date.split('T')\n const [year, month, day] = oneSplit[0].split('-')\n\n return `${month}/${day}/${year}`\n}\n\nexport function toJavascriptDate(date: string): Date|undefined {\n if (date) {\n var date_test = new Date(date);\n return date_test;\n } else {\n return undefined\n }\n}","import { formatDate, toJavascriptDate } from '@/util/dateutil';\nexport default class Capture {\n private CaptureId: number;\n private CaptureDate?: Date;\n private CaptureDateStr: string;\n private CollarId: number;\n private CollarCode: string;\n private EarTagNumber: number;\n private DrugTagNum: number;\n private DrugDetails: string;\n private AreDrugsAdministered: boolean;\n private EarTagColor: string;\n private CaptureUnitId: number;\n private Comments: string;\n Weight: number;\n Age: number;\n private AgerUserId: number;\n Chest: number;\n private BodyLength: number;\n private Neck: number;\n private Hoof: number;\n private Temp1: number;\n private Temp2: number;\n private Temp3: number;\n private WayPoint: string;\n private Latitude: string;\n private Longitude: string;\n private BodyConditionScore: number;\n private ScoredByUserId: number;\n private RumpFat: number;\n private Loin: number;\n private Pregnant: boolean;\n private Lactation: number;\n private BloodSample: string;\n private CWDSample: string;\n private FecalSample: string;\n private StagingAreaOld: string;\n private StagingAreaId: number;\n private AnimalId: number;\n private DataValid: boolean;\n private RecordedByUserId: number;\n private ChaseTime: string;\n private TempAtCapture: number;\n private TimeAtCapture: string;\n private Time1: string;\n private Time2: string;\n private Time3: string;\n private IsAdult: boolean;\n private RespiratoryRate: number;\n private HeartRate: number;\n private Metatarsus: number;\n private Lactate: number;\n private Velvet: boolean;\n private LeftPoints: number;\n private RightPoints: number;\n private LeftBeamLength: number;\n private RightBeamLength: number;\n private TesticleSize: number;\n private ReleaseTime: string;\n private ArrivalTime: string;\n private NeonateHoof: number;\n private Spread: number;\n private Twins: boolean;\n private Injections: boolean;\n private Twin1Id: number;\n private Twin2Id: number;\n private Calcium: number;\n private Copper: number;\n private Iron: number;\n private Potassium: number;\n private Magnesium: number;\n private Manganese: string;\n private Molybdenum: number;\n private Phosphorus: number;\n private Selenium: number;\n private Zinc: number;\n private IFBF?: number;\n Species: string;\n private ArchiveId: string;\n\n private CaptureArea: string;\n private SubUnitId: number;\n private TotalTimeInArea: number;\n private TriggerEmailDate?: Date;\n private TriggerEmailDateStr: string;\n private TriggerEmailTime: string;\n private VitLongitude: string;\n private VitLatitude: string;\n private SurvivalUnit: string;\n constructor(\n $CaptureArea: string, $SubUnitId: number, $TotalTimeInArea: number,\n $TriggerEmailDate: Date, $TriggerEmailTime: string, $VitLatitude: string, $VitLongitude: string, $SurvivalUnit: string,\n\n $CaptureId: number, $CaptureDate: Date, $CollarId: number,\n $CollarCode: string, $EarTagNumber: number, $EarTagColor: string,\n $CaptureUnitId: number, $Comments: string, $Weight: number, $Age: number,\n $AgerUserId: number, $Chest: number, $BodyLength: number, $Neck: number,\n $Hoof: number, $Temp1: number, $Temp2: number, $Temp3: number,\n $WayPoint: string, $Latitude: string, $Longitutde: string,\n $BodyConditionScore: number, $ScoredByUserId: number, $RumpFat: number,\n $Loin: number, $Pregnant: boolean, $Lactation: number,\n $BloodSample: string, $CWDSample: string, $FecalSample: string,\n $StagingAreaOld: string, $StagingAreaId: number, $AnimalId: number,\n $DataValid: boolean, $RecordedByUserId: number, $ChaseTime: string,\n $TempAtCapture: number, $TimeAtCapture: string, $Time1: string,\n $Time2: string, $Time3: string, $IsAdult: boolean, $RespiratoryRate: number,\n $HeartRate: number, $Metatarsus: number, $Lactate: number,\n $Velvet: boolean, $LeftPoints: number, $RightPoints: number,\n $LeftBeamLength: number, $RightBeamLength: number, $TesticleSize: number,\n $ReleaseTime: string, $ArrivalTime: string, $NeonateHoof: number,\n $Spread: number, $Twins: boolean, $Injections: boolean, $Twin1Id: number,\n $Twin2Id: number, $Calcium: number, $Copper: number, $Iron: number,\n $Potassium: number, $Magnesium: number, $Manganese: string,\n $Molybdenum: number, $Phosphorus: number, $Selenium: number,\n $Zinc: number, $drugTagNum: number, $drugDetails: string, $areDrugsAdministered: boolean) {\n\n this.CaptureArea = $CaptureArea;\n this.SubUnitId = $SubUnitId;\n this.TotalTimeInArea = $TotalTimeInArea;\n this.TriggerEmailDate = $TriggerEmailDate;\n let triggerdate = formatDate(this.TriggerEmailDate);\n this.TriggerEmailDateStr = triggerdate || \"\";\n this.TriggerEmailTime = $TriggerEmailTime;\n this.VitLatitude = $VitLatitude;\n this.VitLongitude = $VitLongitude;\n this.SurvivalUnit = $SurvivalUnit,\n this.CaptureId = $CaptureId;\n this.CollarCode = $CollarCode;\n this.CaptureDate = $CaptureDate;\n this.CollarId = $CollarId;\n this.EarTagNumber = $EarTagNumber;\n this.DrugTagNum = $drugTagNum;\n this.DrugDetails = $drugDetails;\n this.AreDrugsAdministered = $areDrugsAdministered;\n this.EarTagColor = $EarTagColor;\n this.CaptureUnitId = $CaptureUnitId;\n this.Comments = $Comments;\n this.Weight = $Weight;\n this.Age = $Age;\n this.AgerUserId = $AgerUserId;\n this.Chest = $Chest;\n this.BodyLength = $BodyLength;\n this.Neck = $Neck;\n this.Hoof = $Hoof;\n this.Temp1 = $Temp1;\n this.Temp2 = $Temp2;\n this.Temp3 = $Temp3;\n this.WayPoint = $WayPoint;\n this.Latitude = $Latitude;\n this.Longitude = $Longitutde;\n this.BodyConditionScore = $BodyConditionScore;\n this.ScoredByUserId = $ScoredByUserId;\n this.RumpFat = $RumpFat;\n this.Loin = $Loin;\n this.Pregnant = $Pregnant;\n this.Lactation = $Lactation;\n this.BloodSample = $BloodSample;\n this.CWDSample = $CWDSample;\n this.FecalSample = $FecalSample;\n this.StagingAreaOld = $StagingAreaOld;\n this.StagingAreaId = $StagingAreaId;\n this.AnimalId = $AnimalId;\n this.DataValid = $DataValid;\n this.RecordedByUserId = $RecordedByUserId;\n this.ChaseTime = $ChaseTime;\n this.TempAtCapture = $TempAtCapture;\n this.TimeAtCapture = $TimeAtCapture;\n this.Time1 = $Time1;\n this.Time2 = $Time2;\n this.Time3 = $Time3;\n this.IsAdult = $IsAdult;\n this.RespiratoryRate = $RespiratoryRate;\n this.HeartRate = $HeartRate;\n this.Metatarsus = $Metatarsus;\n this.Lactate = $Lactate;\n this.Velvet = $Velvet;\n this.LeftPoints = $LeftPoints;\n this.RightPoints = $RightPoints;\n this.LeftBeamLength = $LeftBeamLength;\n this.RightBeamLength = $RightBeamLength;\n this.TesticleSize = $TesticleSize;\n this.ReleaseTime = $ReleaseTime;\n this.ArrivalTime = $ArrivalTime;\n this.NeonateHoof = $NeonateHoof;\n this.Spread = $Spread;\n this.Twins = $Twins;\n this.Injections = $Injections;\n this.Twin1Id = $Twin1Id;\n this.Twin2Id = $Twin2Id;\n this.Calcium = $Calcium;\n this.Copper = $Copper;\n this.Iron = $Iron;\n this.Potassium = $Potassium;\n this.Magnesium = $Magnesium;\n this.Manganese = $Manganese;\n this.Molybdenum = $Molybdenum;\n this.Phosphorus = $Phosphorus;\n this.Selenium = $Selenium;\n this.Zinc = $Zinc;\n let date = formatDate(this.CaptureDate);\n this.CaptureDateStr = date || '';\n this.Species = '';\n this.ArchiveId = '';\n }\n\n // @ts-ignore\n constructor();\n\n fromJSON(json: any) {\n this.CaptureId = json.captureId;\n this.CaptureDate = toJavascriptDate(json.captureDate);\n this.TriggerEmailDate = toJavascriptDate(json.triggerEmailDate);\n this.CaptureArea = json.captureArea;\n this.SubUnitId = json.subUnitId;\n this.TotalTimeInArea = json.totalTimeInArea;\n this.TriggerEmailTime = json.triggerEmailTime;\n this.VitLatitude = json.vitLatitude;\n this.VitLongitude = json.vitLongitude;\n this.SurvivalUnit = json.survivalUnit;\n let triggerdate = formatDate(this.TriggerEmailDate);\n this.TriggerEmailDateStr = triggerdate || \"\";\n\n this.CollarId = json.collarId;\n this.CollarCode = json.collarCode;\n this.EarTagNumber = json.earTagNumber;\n this.DrugTagNum = json.drugTagNum;\n this.DrugDetails = json.drugDetails;\n this.AreDrugsAdministered = json.areDrugsAdministered;\n this.EarTagColor = json.earTagColor;\n this.CaptureUnitId = json.captureUnitId;\n this.Comments = json.comments;\n this.Weight = json.weight;\n this.Age = json.age;\n this.AgerUserId = json.agerUserId;\n this.Chest = json.chest;\n this.BodyLength = json.bodyLength;\n this.Neck = json.neck;\n this.Hoof = json.hoof;\n this.Temp1 = json.temp1;\n this.Temp2 = json.temp2;\n this.Temp3 = json.temp3;\n this.WayPoint = json.wayPoint;\n this.Latitude = json.latitude;\n this.Longitude = json.longitude;\n this.BodyConditionScore = json.bodyConditionScore;\n this.ScoredByUserId = json.scoredByUserId;\n this.RumpFat = json.rumpFat;\n this.Loin = json.loin;\n this.Pregnant = json.pregnant;\n this.Lactation = json.lactation;\n this.BloodSample = json.bloodSample;\n this.CWDSample = json.cwdSample;\n this.FecalSample = json.fecalSample;\n this.StagingAreaOld = json.stagingAreaOld;\n this.StagingAreaId = json.stagingAreaId;\n this.AnimalId = json.animalId;\n this.DataValid = json.dataValid;\n this.RecordedByUserId = json.recordedByUserId;\n this.ChaseTime = json.chaseTime;\n this.TempAtCapture = json.tempAtCapture;\n this.TimeAtCapture = json.timeAtCapture;\n this.Time1 = json.time1;\n this.Time2 = json.time2;\n this.Time3 = json.time3;\n this.IsAdult = json.isAdult;\n this.RespiratoryRate = json.respiratoryRate;\n this.HeartRate = json.heartRate;\n this.Metatarsus = json.metatarsus;\n this.Lactate = json.lactate;\n this.Velvet = json.velvet;\n this.LeftPoints = json.leftPoints;\n this.RightPoints = json.rightPoints;\n this.LeftBeamLength = json.leftBeamLength;\n this.RightBeamLength = json.rightBeamLength;\n this.TesticleSize = json.testicleSize;\n this.ReleaseTime = json.releaseTime;\n this.ArrivalTime = json.arrivalTime;\n this.NeonateHoof = json.neonateHoof;\n this.Spread = json.spread;\n this.Twins = json.twins;\n this.Injections = json.injections;\n this.Twin1Id = json.twin1Id;\n this.Twin2Id = json.twin2Id;\n this.Calcium = json.calcium;\n this.Copper = json.copper;\n this.Iron = json.iron;\n this.Potassium = json.potassium;\n this.Magnesium = json.magnesium;\n this.Manganese = json.manganese;\n this.Molybdenum = json.molybdenum;\n this.Phosphorus = json.phosphorus;\n this.Selenium = json.selenium;\n this.Zinc = json.zinc;\n let date = formatDate(this.CaptureDate);\n this.CaptureDateStr = date || '';\n this.IFBF = json.ifbf;\n this.ArchiveId = json.archiveId;\n this.calculateIFBF();\n this.determineDrugsAdministered();\n }\n\n setSpecies(specie: string) {\n this.Species = specie;\n }\n\n getId(): number {\n return this.CaptureId;\n }\n\n getAnimalId(): number {\n return this.AnimalId;\n }\n\n getCollarId(): number {\n return this.CollarId;\n }\n\n changeValid() {\n this.DataValid = !this.DataValid;\n }\n\n getDataValid(): boolean {\n return this.DataValid;\n }\n\n getCaptureId(): number {\n return this.CaptureId;\n }\n\n getCaptureDateStr(): string {\n return this.CaptureDateStr;\n }\n\n getDrugTagNum() {\n return this.DrugTagNum;\n }\n\n getDrugDetails(): string {\n return this.DrugDetails;\n }\n\n getCaptureArea(): string {\n return this.CaptureArea;\n }\n\n getSubUnitId(): number {\n return this.SubUnitId;\n }\n\n getTotalTimeInArea(): number {\n return this.TotalTimeInArea;\n }\n\n getTriggerEmailTime(): string {\n return this.TriggerEmailTime;\n }\n\n getVitLatitude(): string {\n return this.VitLatitude;\n }\n\n getVitLongitude(): string {\n return this.VitLongitude;\n }\n\n getSurvivalUnit(): string {\n return this.SurvivalUnit;\n }\n\n getTriggerEmailDateStr(): string {\n return this.TriggerEmailDateStr;\n }\n\n setDrugDetails(details: string) {\n this.DrugDetails = details;\n }\n\n getAreDrugsAdministered(): boolean {\n return this.AreDrugsAdministered;\n }\n\n setCaptureDateStr(date: string) {\n this.CaptureDateStr = date;\n this.CaptureDate = new Date(date);\n }\n\n setTriggerEmailDateStr(date: string) {\n this.TriggerEmailDateStr = date;\n this.TriggerEmailDate = new Date(date);\n }\n\n setCaptureId(Id: number) {\n this.CaptureId = Id;\n }\n\n setAnimalId(Id: number) {\n this.AnimalId = Id;\n }\n\n setCollarId(Id: number) {\n this.CollarId = Id;\n }\n\n setCollarCode(Collar: string) {\n this.CollarCode = Collar;\n }\n\n setStagingAreaId(Id: number) {\n this.StagingAreaId = Id;\n }\n\n setUnitId(Id: number) {\n this.CaptureUnitId = Id;\n }\n\n setSubUnitId(Id: number) {\n this.SubUnitId = Id;\n }\n\n getBodyConditionScore(): number {\n return this.BodyConditionScore;\n }\n\n setBodyConditionScore(BodyConditionScore: number) {\n this.BodyConditionScore = BodyConditionScore;\n this.calculateIFBF();\n }\n\n setRumpFat(RumpFat: number) {\n this.RumpFat = RumpFat;\n this.calculateIFBF();\n }\n\n getRumpFat(): number {\n return this.RumpFat;\n }\n\n calculateIFBF() {\n if (this.Species == 'Mule Deer') {\n if (this.Age > 1) {\n var rumpFat = 1;\n if (this.RumpFat > 1) {\n rumpFat = this.RumpFat;\n }\n var maxFat = rumpFat / 10;\n var denominator = 0.142 * Math.pow(this.Weight, 0.63);\n var scaledMaxFat = maxFat / denominator;\n var livIndex;\n\n if (rumpFat == 1) {\n livIndex = (3.869 * this.BodyConditionScore - 2.71)\n } else if (rumpFat == 2) {\n livIndex = (3.869 * this.BodyConditionScore - 2.71 +\n (11.35 * scaledMaxFat + 5.63)) /\n 2\n } else if (rumpFat > 2) {\n livIndex = 11.35 * scaledMaxFat + 5.63;\n }\n\n if (livIndex) {\n this.IFBF = (-0.16 + 1.01 * livIndex);\n }\n }\n }\n }\n\n determineDrugsAdministered() {\n (this.DrugDetails == null || this.DrugDetails == \"\") ? (this.AreDrugsAdministered = false) : (this.AreDrugsAdministered = true);\n };\n}","import {formatDate, toJavascriptDate} from '@/util/dateutil';\n\nexport default class Location {\n private LocationId: number;\n private Date?: Date;\n private Latitude: number;\n private Longitude: number;\n private CollarId: number;\n private CollarCode: string;\n private CollarFreq: string;\n private NumStats: string;\n private HDOP: number;\n private FixTIme: number;\n private _2d3d: number;\n private AnimalId: number;\n private ObjectId: number;\n private position: {lat: number, lng: number};\n private opened: boolean;\n private InitialCaptureStr: string;\n\n constructor(\n $LocationId: number, $Date: Date, $Latitude: number, $Longitude: number,\n $CollarId: number, $CollarCode: string, $CollarFreq: string, $NumStats: string, $HDOP: number, $FixTIme: number,\n _2d3d: number, $AnimalId: number, $ObjectId: number) {\n this.LocationId = $LocationId;\n this.Date = $Date;\n this.Latitude = $Latitude;\n this.Longitude = $Longitude;\n this.CollarId = $CollarId;\n this.CollarCode = $CollarCode;\n this.CollarFreq = $CollarFreq;\n this.NumStats = $NumStats;\n this.HDOP = $HDOP;\n this.FixTIme = $FixTIme;\n this._2d3d = _2d3d;\n this.AnimalId = $AnimalId;\n this.ObjectId = $ObjectId;\n this.position = {lat: $Latitude, lng: $Longitude};\n this.opened = false;\n let date = formatDate(this.Date);\n this.InitialCaptureStr = date || '';\n }\n // @ts-ignore\n constructor();\n\n fromJSON(json: any) {\n this.LocationId = json.locationId;\n\n this.Date = toJavascriptDate(json.date);\n this.Latitude = json.latitude;\n this.Longitude = json.longitude;\n this.CollarId = json.collarId;\n this.CollarCode = json.collarCode;\n this.CollarFreq = json.collarFreq;\n this.NumStats = json.numStats;\n this.HDOP = json.hdop;\n this.FixTIme = json.fixTIme;\n this._2d3d = json._2d3d;\n this.AnimalId = json.animalId;\n this.ObjectId = json.objectId;\n this.position = {\n lat: this.Latitude,\n lng: this.Longitude,\n };\n let date = formatDate(this.Date);\n this.InitialCaptureStr = date || '';\n }\n\n getDate(): Date {\n return this.Date!;\n }\n\n getLatitude(): number {\n return this.Latitude;\n }\n\n getLongitude(): number {\n return this.Longitude;\n }\n\n getCollarId(): number {\n return this.CollarId;\n }\n}","import {formatDate, toJavascriptDate} from '@/util/dateutil';\n\nexport default class Mortality {\n private MortalityId: number;\n private MortalityDate?: Date;\n private MortalityDateStr?: string;\n private FirstEmailedDate?: Date;\n private FirstEmailedDateStr?: string;\n private RetrievedDate?: Date;\n private RetrievedDateStr?: string;\n private RecoveredByUserId: number;\n private CollarId: number;\n private MortalityUnitId: number;\n private CauseOfDeath: string;\n private IsCaptureRelated: boolean;\n private Waypoint: string;\n private Latitude: number;\n private Longitude: number;\n private Comments: string;\n private AnimalId: number;\n private CementumAge: number;\n private ConfidenceRating: string;\n private MortalityTime: string;\n\n constructor(\n $MortalityId: number, $MortalityDate: Date|undefined, $MortalityTime: string|undefined,\n $FirstEmailedDate: Date|undefined, $RetrievedDate: Date|undefined,\n $RecoveredByUserId: number, $CollarId: number, $MortalityUnitId: number,\n $CauseOfDeath: string, $IsCaptureRelated: boolean, $Waypoint: string, $Latitude: number,\n $Longitude: number, $Comments: string, $AnimalId: number,\n $CementumAge: number, $ConfidenceRating: string) {\n this.MortalityId = $MortalityId;\n this.MortalityDate = $MortalityDate;\n this.MortalityTime = $MortalityTime;\n this.FirstEmailedDate = $FirstEmailedDate;\n this.RetrievedDate = $RetrievedDate;\n this.RecoveredByUserId = $RecoveredByUserId;\n this.CollarId = $CollarId;\n this.MortalityUnitId = $MortalityUnitId;\n this.CauseOfDeath = $CauseOfDeath;\n this.IsCaptureRelated = $IsCaptureRelated;\n this.Waypoint = $Waypoint;\n this.Latitude = $Latitude;\n this.Longitude = $Longitude;\n this.Comments = $Comments;\n this.AnimalId = $AnimalId;\n this.CementumAge = $CementumAge;\n this.ConfidenceRating = $ConfidenceRating;\n }\n // @ts-ignore\n constructor();\n\n static createMortality(mortality: Mortality): Mortality {\n return new Mortality(\n mortality.MortalityId, mortality.MortalityDate, mortality.MortalityTime,\n mortality.FirstEmailedDate, mortality.RetrievedDate,\n mortality.RecoveredByUserId, mortality.CollarId,\n mortality.MortalityUnitId, mortality.CauseOfDeath, mortality.IsCaptureRelated, mortality.Waypoint,\n mortality.Latitude, mortality.Longitude, mortality.Comments,\n mortality.AnimalId, mortality.CementumAge, mortality.ConfidenceRating);\n }\n\n fromJSON(json: any) {\n this.MortalityId = json.mortalityId;\n this.MortalityDate = toJavascriptDate(json.mortalityDate);\n this.MortalityTime = json.mortalityTime;\n this.FirstEmailedDate = toJavascriptDate(json.firstEmailedDate);\n this.RetrievedDate = toJavascriptDate(json.retrievedDate);\n this.RecoveredByUserId = json.recoveredByUserId;\n this.CollarId = json.collarId;\n this.MortalityUnitId = json.mortalityUnitId;\n this.CauseOfDeath = json.causeOfDeath;\n this.IsCaptureRelated = json.isCaptureRelated;\n this.Waypoint = json.waypoint;\n this.Latitude = json.latitude;\n this.Longitude = json.longitude;\n this.Comments = json.comments;\n this.AnimalId = json.animalId;\n this.CementumAge = json.cementumAge;\n this.ConfidenceRating = json.confidenceRating;\n let date = formatDate(this.MortalityDate);\n this.MortalityDateStr = date || '';\n date = formatDate(this.FirstEmailedDate);\n this.FirstEmailedDateStr = date || '';\n date = formatDate(this.RetrievedDate);\n this.RetrievedDateStr = date || '';\n }\n\n getMortalityDate():Date {\n return this.MortalityDate;\n }\n getMortalityDateStr():string {\n return this.MortalityDateStr;\n }\n getMortalityTime():string {\n return this.MortalityTime;\n }\n\n setMortalityDate(date: string) {\n this.MortalityDateStr = date;\n this.MortalityDate = new Date(date);\n }\n\n setMortalityTime(time: string) {\n this.MortalityTime = time;\n }\n\n setFirstEmailedDate(date: string) {\n this.FirstEmailedDateStr = date;\n this.FirstEmailedDate = new Date(date);\n }\n\n getFirstEmailedDate(): Date {\n return this.FirstEmailedDate;\n }\n getFirstEmailedDateStr(): string {\n return this.FirstEmailedDateStr || '';\n }\n\n setRetrievedDate(date: string) {\n this.RetrievedDateStr = date;\n this.RetrievedDate = new Date(date);\n }\n\n getRetrievedDate(): Date {\n return this.RetrievedDate;\n }\n\n getRetrievedDateStr(): string {\n return this.RetrievedDateStr || '';\n }\n\n getMortalityId(): number {\n return this.MortalityId;\n }\n setMortalityId(Id: number) {\n this.MortalityId = Id;\n }\n getAnimalId(): number {\n return this.AnimalId;\n }\n\n setAnimalId(Id: number) {\n this.AnimalId = Id;\n }\n\n setCollarId(Id: number) {\n this.CollarId = Id;\n }\n\n setCauseOfDeath(cause: string) {\n this.CauseOfDeath = cause;\n }\n\n setIsCaptureRelated(isCaptureRelated: boolean) {\n this.IsCaptureRelated = isCaptureRelated;\n }\n\n getCollarCodeId(): number {\n return this.CollarId;\n }\n\n setCollarCodeId(Id: number) {\n this.CollarId;\n }\n\n public getRecoveredByUserId(): number {\n return this.RecoveredByUserId;\n }\n\n public setRecoveredByUserId(RecoveredByUserId: number): void {\n this.RecoveredByUserId = RecoveredByUserId;\n }\n}\n","\nimport {formatDate, parseDate, toJavascriptDate, convertCSharpDate} from '@/util/dateutil';\nimport Location from './Location';\nimport Mortality from './Mortality';\nimport Unit from './Unit';\n\nexport default class Animal {\n private AnimalId: number;\n private Sex: string;\n private Species: string;\n private InitialCapture?: Date;\n private InitialCaptureStr: string;\n private CollarId: number;\n private CollarCode: string;\n private CollarSerialNumber: string;\n private DataValid: boolean;\n private Archived: boolean;\n private MaternalId: number;\n private UniqueId: number;\n private CollarFreq: string;\n private Capture?: Date;\n private LastCaptureUnit: Unit;\n private Mortality: Mortality;\n private MortalityDate: Date;\n private Locations: Location[];\n private Birthday?: Date;\n public BirthString: string;\n public BirthDate: number;\n public BirthMonth: number;\n public BirthYear: number;\n public Projects: any[];\n public ProjectsList: string;\n\n constructor(\n $AnimalId: number, $Sex: string, $Species: string,\n $InitialCapture: Date, $CollarId: number, $CollarCode: string,\n $CollarSerialNumber: string, $DataValid: boolean, $Archived: boolean,\n $MaternalId: number, $UniqueId: number, $CollarFreq: string,\n $Capture: Date, $LastCaptureUnit: Unit, $Mortality: Mortality,\n $MortalityDate: Date, $Locations: Location[], $Birthday: Date) {\n this.AnimalId = $AnimalId;\n this.Sex = $Sex;\n this.Species = $Species;\n this.InitialCapture = $InitialCapture;\n this.Birthday = $Birthday;\n this.CollarId = $CollarId;\n this.CollarCode = $CollarCode;\n this.CollarSerialNumber = $CollarSerialNumber;\n this.DataValid = $DataValid;\n this.Archived = $Archived;\n this.MaternalId = $MaternalId;\n this.UniqueId = $UniqueId;\n this.CollarFreq = $CollarFreq;\n this.Capture = $Capture;\n this.LastCaptureUnit = $LastCaptureUnit;\n this.Mortality = $Mortality;\n this.MortalityDate = $MortalityDate;\n this.Locations = $Locations;\n let date = formatDate(this.InitialCapture);\n this.InitialCaptureStr = date || '';\n this.Birthday = new Date(2020, 5, 15)\n }\n // @ts-ignore\n constructor();\n\n fromJSON(json: any) {\n this.AnimalId = json.animalId;\n this.Sex = json.sex;\n this.Species = json.species;\n this.InitialCapture = toJavascriptDate(json.initialCapture);\n this.Birthday = json.birthday ? new Date(json.birthday.substring(0,10)) : null;\n this.BirthString = json.birthday ? convertCSharpDate(json.birthday) : ''\n this.CollarId = json.collarId;\n this.DataValid = json.dataValid;\n this.Archived = json.archived;\n this.MaternalId = json.maternalId;\n this.UniqueId = json.uniqueId;\n this.CollarCode = json.collarCode;\n this.CollarSerialNumber = json.collarSerialNumber;\n this.CollarFreq = json.collarFreq;\n this.MortalityDate = json.mortalityDate;\n this.Capture = toJavascriptDate(json.capture);\n this.LastCaptureUnit = json.lastCaptureUnit;\n this.Locations = json.locations;\n this.Projects = []\n this.ProjectsList = json.projectsList\n let date = formatDate(this.InitialCapture);\n this.InitialCaptureStr = date || '';\n date = formatDate(this.Birthday);\n\n if (json.mortality) {\n let m = new Mortality();\n m.fromJSON(json.mortality);\n this.Mortality = m;\n }\n\n if (json.locations) {\n json.locations.forEach((element: object) => {\n let l = new Location();\n l.fromJSON(element);\n this.Locations.push(l);\n });\n }\n\n if(json.projects) {\n json.projects.forEach((p: object) => {\n this.Projects.push(p)\n });\n }\n }\n\n getUniqueId(): number {\n return this.UniqueId;\n }\n\n setInitialCapture(date: string) {\n this.InitialCaptureStr = date;\n this.InitialCapture = new Date(date);\n }\n\n setBirthdate(date: string) {\n this.Birthday = new Date(date);\n this.BirthString = formatDate(this.Birthday.toISOString().substr(0, 10))\n }\n\n getInitialCaptureStr(): string {\n return this.InitialCaptureStr;\n }\n\n getCollarCode(): string {\n return this.CollarCode;\n }\n\n changeValid() {\n this.DataValid = !this.DataValid;\n }\n\n getDataValid(): boolean {\n return this.DataValid;\n }\n\n setAnimalId(Id: number) {\n this.AnimalId = Id;\n this.UniqueId = Id;\n }\n\n getMortality(): Mortality {\n return this.Mortality;\n }\n\n setUniqueId(Id: number) {\n this.UniqueId = Id;\n }\n\n getCollarSerialNumber() {\n return this.CollarSerialNumber;\n }\n\n getCollarFreq() {\n return this.CollarFreq;\n }\n\n getLocations(): Location[] {\n return this.Locations;\n }\n\n setSex(Sex: string) {\n this.Sex = Sex\n }\n\n setCollarId(Id: number) {\n this.CollarId = Id;\n }\n\n getCollarId(): number {\n return this.CollarId;\n }\n\n getSpecies(): string {\n return this.Species;\n }\n\n updateBirthday(value: Date) {\n this.Birthday = value\n }\n}","export default class User {\n public UserId?: number;\n public FirstName: string;\n public LastName?: string;\n public FullName?: string;\n public Email?: string;\n public Phone?: string;\n public NetId: string;\n public Archived?: boolean;\n public RoleId: number;\n public Role: string;\n\n constructor(name?: string, id?: string, $Role?: string, $RoleId?: number) {\n this.FullName = name || '';\n var fullName = this.FullName.split(' '), firstName = fullName[0],\n lastName = fullName[fullName.length - 1];\n this.FirstName = firstName;\n this.LastName = lastName;\n this.NetId = id || '';\n\n this.Role = $Role || '';\n this.RoleId = $RoleId || 3;\n }\n // @ts-ignore\n constructor();\n\n fromJSON(json: any) {\n this.UserId = json.UserId;\n this.FirstName = json.FirstName;\n this.LastName = json.LastName;\n this.Email = json.Email;\n this.Phone = json.Phone;\n this.NetId = json.NetId;\n this.Archived = json.Archived;\n this.FullName = this.FirstName + ' ' + this.LastName;\n this.RoleId = json.RoleId;\n this.Role = json.Role;\n }\n\n unarchive() {\n this.Archived = false;\n }\n\n archive() {\n this.Archived = true;\n }\n\n setUserId(Id: number) {\n this.UserId = Id;\n }\n}","import Animal from '@/models/Animal';\nimport Capture from '@/models/Capture';\nimport Mortality from '@/models/Mortality';\nimport User from '@/models/User';\n\nexport default class State {\n public user: User;\n public token: string;\n public dialog: boolean;\n public selectedCapture: Capture;\n public selectedAnimal: Animal;\n public selectedMortality: Mortality;\n public captures: Capture[];\n public animals: Animal[];\n\n constructor() {\n this.user = new User();\n this.token = '';\n this.dialog = false;\n this.selectedCapture = new Capture();\n this.selectedAnimal = new Animal();\n this.selectedMortality = new Mortality();\n this.captures = [];\n this.animals = [];\n }\n}","import Animal from '@/models/Animal';\nimport Capture from '@/models/Capture';\nimport Mortality from '@/models/Mortality';\nimport User from '@/models/User'\nimport Vue from 'vue'\nimport Vuex from 'vuex'\n\nimport State from './state';\n\nVue.use(Vuex)\n\nexport const store = new Vuex.Store({\n state: new State(),\n mutations: {\n setAdmin(state: State, payload: User): void {\n state.user = payload;\n },\n setToken(state: State, payload: string): void {\n state.token = payload;\n },\n setCaptureDialog(state: State, payload: boolean): void {\n state.dialog = payload;\n },\n setCapture(state: State, payload: Capture): void {\n state.selectedCapture = payload;\n },\n setAnimal(state: State, payload: Animal): void {\n state.selectedAnimal = payload;\n if (state.selectedCapture instanceof Capture) {\n state.selectedCapture.setAnimalId(payload.getUniqueId());\n }\n state.selectedMortality = payload.getMortality();\n },\n setMortality(state: State, payload: Mortality): void {\n state.selectedMortality = payload;\n },\n setCaptures(state: State, payload: Capture[]): void {\n state.captures = payload;\n },\n addCapture(state: State, payload: Capture): void {\n state.captures.push(payload);\n },\n deleteCapture(state: State, payload: number): void {\n state.captures.splice(payload, 1);\n },\n setAnimals(state: State, payload: Animal[]): void {\n state.animals = payload;\n }\n },\n actions: {\n\n }\n})\n","import Animal from '@/models/Animal';\nimport Capture from '@/models/Capture';\nimport Collar from '@/models/Collar';\nimport Mortality from '@/models/Mortality';\nimport StagingArea from '@/models/StagingArea';\nimport Unit from '@/models/Unit';\nimport SubUnit from '@/models/SubUnit';\n\nimport User from '@/models/User';\nimport { __asyncGenerator } from 'tslib';\n// @ts-ignore\nimport * as authn from \"../../node_modules/@byuweb/browser-oauth/byu-browser-oauth.mjs\";\n\nfunction apiAuthorizedUrl(): string\n{\n return 'https://api.byu.edu/lifesciences/animaltracker/1.0.0/';\n}\n\nfunction getApiUrl(): string\n{\n if (!location.hostname.toLowerCase().includes('localhost'))\n return'https://animaltracker-api.byu.edu/api/';\n \n return 'https://animaltracker-api-dev.byu.edu/api/';\n}\n\nconst makeHeader = (token: string) =>\n{\n return { 'Authorization': 'Bearer ' + token };\n};\n\nfunction setImageHeader(header: any)\n{\n header['Content-Type'] = undefined;\n return header;\n}\n\nconst setJsonHeader = (header: any): any =>\n{\n header['Content-Type'] = 'application/json';\n return header;\n};\n\nconst setCSVHeader = (header: any): any =>\n{\n header['Content-Type'] = 'text/csv';\n return header;\n};\n\n// GET functions\n\nexport function getCaptures(): Promise\n{\n const url = getApiUrl() + 'captures';\n return fetch(url, {\n method: 'GET',\n });\n};\n\nexport function getUsers(token: string): Promise\n{\n const url = getApiUrl() + 'users';\n let header = makeHeader(token);\n return fetch(url, {\n method: 'GET',\n headers: header,\n });\n};\n\nexport function getUnarchivedUsers(token: string): Promise\n{\n const url = getApiUrl() + 'users/getUnarchived';\n let header = makeHeader(token);\n header = setJsonHeader(header);\n return fetch(url, {\n method: 'GET',\n headers: header,\n });\n};\n\nexport function getMortalityImages(Id: number): Promise\n{\n const url = getApiUrl() + 'MortalityImages/' + Id;\n return fetch(url, {\n method: 'GET',\n });\n}\n\nexport function getMortalityPDFs(Id: number): Promise\n{\n const url = getApiUrl() + 'MortalityPDFs/' + Id;\n return fetch(url, {\n method: 'GET',\n });\n}\n\nexport function getLocationsByAnimalId(\n Id: number, token: string, start: string, end: string): Promise\n{ \n const url = apiAuthorizedUrl() + 'locations/animal/' + Id + \"?start=\" + start + \"&end=\" + end;\n let header = makeHeader(token);\n header = setJsonHeader(header);\n return fetch(url, {\n method: 'GET',\n headers: header,\n });\n}\n\nexport function getMortalityLocationsByAnimalId(\n Id: number, token: string): Promise\n{\n const url = apiAuthorizedUrl() + 'locations/mortality/animal/' + Id;\n let header = makeHeader(token);\n header = setJsonHeader(header);\n return fetch(url, {\n method: 'GET',\n headers: header,\n });\n}\n\nexport function getCaptureImages(Id: number, token: string): Promise\n{\n const url = apiAuthorizedUrl() + 'captureImages/' + Id;\n let header = makeHeader(token);\n header = setJsonHeader(header);\n return fetch(url, {\n method: 'GET',\n headers: header,\n });\n}\n\nexport function getCausesOfDeath(): Promise\n{\n const url = getApiUrl() + 'mortalities/causesOfDeath';\n\n return fetch(url, {\n method: 'GET',\n\n });\n};\n\nexport function getUser(NetId: string, token: string): Promise\n{\n const url = apiAuthorizedUrl() + 'users/' + NetId;\n const header = makeHeader(token)\n return fetch(url, {\n method: 'GET',\n headers: header,\n });\n};\n\nexport function getCapture(Id: number): Promise\n{\n const url = getApiUrl() + 'captures/' + Id;\n\n return fetch(url, {\n method: 'GET',\n\n });\n};\n\nexport function getCollars(): Promise\n{\n const url = getApiUrl() + 'collars';\n\n return fetch(url, {\n method: 'GET',\n\n });\n};\n\nexport function getAnimalById(Id: number): Promise\n{\n const url = getApiUrl() + 'animals/' + Id;\n\n return fetch(url, {\n method: 'GET',\n\n });\n};\n\nexport function getAnimals(): Promise\n{\n const url = getApiUrl() + 'animals';\n\n return fetch(url, {\n method: 'GET',\n\n });\n};\n\nexport function getUnits(includeArchived? : boolean | null): Promise\n{\n let url = getApiUrl() + 'units';\n\n if (includeArchived)\n url += \"?includeArchived=true\"; \n return fetch(url, {\n method: 'GET',\n\n });\n};\n\nexport function getSubUnits(includeArchived? : boolean | null): Promise\n{\n let url = getApiUrl() + 'subunits';\n if (includeArchived)\n url += \"?includeArchived=true\"; \n\n return fetch(url, {\n method: 'GET',\n\n });\n};\n\nexport function getStagingAreas(): Promise\n{\n const url = getApiUrl() + 'stagingareas';\n\n return fetch(url, {\n method: 'GET',\n\n });\n}\n\nexport function getFilteredAnimals(\n start: Date, end: Date, species: string | null, unitId: number | null,\n collarCode: string | null, sex: string | null, state: string | null,\n age: string | null, uniqueId: number | null, projectId: string): Promise\n{\n const url = new URL(getApiUrl() + 'animals/filtered');\n\n const params = {\n start: start.toLocaleDateString(),\n end: end.toLocaleDateString(),\n species: species,\n unitId: unitId || '',\n collarCode: collarCode,\n age: age,\n sex: sex,\n state: state,\n uniqueId: uniqueId || '',\n projectId: projectId \n };\n Object.keys(params).forEach(key => url.searchParams.append(key, params[key]));\n return fetch(url.toString(), {\n method: 'GET',\n\n });\n}\n\nexport function getSpecies(): Promise\n{\n const url = getApiUrl() + 'species'\n return fetch(url, {\n method: 'GET',\n\n });\n}\n\nexport function getCapturesForAnimal(\n Id: number, token: string): Promise\n{\n const url = getApiUrl() + 'animals/' + Id + '/captures';\n let header = makeHeader(token);\n header = setJsonHeader(header);\n return fetch(url, {\n method: 'GET', // *GET, POST, PUT, DELETE, etc.\n headers: header,\n });\n}\n\nexport function getRoles(): Promise\n{\n const url = getApiUrl() + 'roles'\n return fetch(url, {\n method: 'GET',\n\n });\n}\n\n// POST functions\n\nexport function postMortalityImages(\n file: FormData, Id: number, token: string): Promise\n{\n const url = getApiUrl() + 'MortalityImages/' + Id;\n let header = makeHeader(token);\n return fetch(url, {\n method: 'POST',\n body: file,\n headers: header,\n });\n};\n\nexport function postMortalityPDFs(\n file: FormData, Id: number, token: string): Promise\n{\n const url = getApiUrl() + 'MortalityPDFs/' + Id;\n let header = makeHeader(token);\n return fetch(url, {\n method: 'POST',\n body: file,\n headers: header,\n });\n};\n\nexport function postCaptureImage(\n file: FormData, Id: number, token: string): Promise\n{\n const url = getApiUrl() + 'captureimages/' + Id;\n let header = makeHeader(token);\n return fetch(url, {\n method: 'POST',\n body: file,\n headers: header,\n });\n};\n\nexport function postCapture(\n capture: Capture, token: string): Promise\n{\n const url = apiAuthorizedUrl() + 'captures';\n let header = makeHeader(token);\n header = setJsonHeader(header);\n const json = JSON.stringify(capture);\n return fetch(url, {\n method: 'POST',\n headers: header,\n body: json,\n });\n};\n\nexport function postUser(user: User, token: string): Promise\n{\n const url = apiAuthorizedUrl() + 'users';\n let header = makeHeader(token);\n header = setJsonHeader(header);\n const json = JSON.stringify(user);\n return fetch(url, {\n method: 'POST',\n headers: header,\n body: json,\n });\n};\n\nexport function postStagingArea(\n area: StagingArea, token: string): Promise\n{\n const url = apiAuthorizedUrl() + 'stagingareas';\n let header = makeHeader(token);\n header = setJsonHeader(header);\n return fetch(\n url, { method: 'POST', headers: header, body: JSON.stringify(area) });\n};\n\nexport function postAnimal(animal: Animal, token: string): Promise\n{\n const url = apiAuthorizedUrl() + 'animals';\n let header = makeHeader(token);\n header = setJsonHeader(header);\n return fetch(\n url, { method: 'POST', headers: header, body: JSON.stringify(animal) });\n};\n\nexport function postCollar(collar: Collar, token: string): Promise\n{\n const url = apiAuthorizedUrl() + 'collars';\n let header = makeHeader(token);\n header = setJsonHeader(header);\n return fetch(\n url, { method: 'POST', headers: header, body: JSON.stringify(collar) });\n};\n\nexport function postMortality(\n mortality: Mortality, token: string): Promise\n{\n const url = apiAuthorizedUrl() + 'mortalities';\n let header = makeHeader(token);\n header = setJsonHeader(header);\n return fetch(\n url, { method: 'POST', body: JSON.stringify(mortality), headers: header });\n};\n\nexport function postUnit(unit: Unit, token: string): Promise\n{\n const url = apiAuthorizedUrl() + 'units';\n let header = makeHeader(token);\n header = setJsonHeader(header);\n return fetch(\n url, { method: 'POST', body: JSON.stringify(unit), headers: header });\n};\n\n// PUT functions\n\nexport function putUnit(unit: Unit, token: string): Promise\n{\n const url = apiAuthorizedUrl() + 'units';\n let header = makeHeader(token);\n header = setJsonHeader(header);\n return fetch(\n url, { method: 'PUT', body: JSON.stringify(unit), headers: header });\n};\n\nexport function postSubUnit(subUnit: SubUnit, token: string): Promise\n{\n const url = apiAuthorizedUrl() + 'subunits';\n let header = makeHeader(token);\n header = setJsonHeader(header);\n return fetch(\n url, { method: 'POST', body: JSON.stringify(subUnit), headers: header });\n};\n\n// PUT functions\n\nexport function putSubUnit(subUnit: SubUnit, token: string): Promise\n{\n console.log(subUnit);\n const url = apiAuthorizedUrl() + 'subunits';\n let header = makeHeader(token);\n header = setJsonHeader(header);\n return fetch(\n url, { method: 'PUT', body: JSON.stringify(subUnit), headers: header });\n};\n\nexport function putStagingArea(\n area: StagingArea, token: string): Promise\n{\n const url = apiAuthorizedUrl() + 'stagingareas';\n let header = makeHeader(token);\n header = setJsonHeader(header);\n return fetch(\n url, { method: 'PUT', body: JSON.stringify(area), headers: header });\n};\n\n\nexport function putMortality(\n mortality: Mortality, token: string): Promise\n{\n const url = apiAuthorizedUrl() + 'mortalities';\n let header = makeHeader(token);\n header = setJsonHeader(header);\n return fetch(\n url, { method: 'PUT', body: JSON.stringify(mortality), headers: header });\n};\n\nexport function unarchiveAnimal(Id: number, token: string)\n{\n const url = apiAuthorizedUrl() + 'animals/' + Id + '/unarchive';\n let header = makeHeader(token);\n header = setJsonHeader(header);\n return fetch(url, { method: 'PUT', headers: header });\n}\n\nexport function putCapture(capture: Capture, token: string): Promise\n{\n const url = apiAuthorizedUrl() + 'captures/';\n let header = makeHeader(token);\n header = setJsonHeader(header);\n const json = JSON.stringify(capture);\n return fetch(url, { method: 'PUT', headers: header, body: json });\n};\n\nexport function putUser(user: User, token: string): Promise\n{\n const url = apiAuthorizedUrl() + 'users/';\n let header = makeHeader(token);\n header = setJsonHeader(header);\n const json = JSON.stringify(user);\n return fetch(url, { method: 'PUT', headers: header, body: json });\n};\n\nexport function putAnimal(animal: Animal, token: string): Promise\n{\n const url = apiAuthorizedUrl() + 'animals/';\n let header = makeHeader(token);\n header = setJsonHeader(header);\n return fetch(\n url, { method: 'PUT', headers: header, body: JSON.stringify(animal) });\n};\n\nexport function putCollar(collar: Collar, token: string): Promise\n{\n const url = apiAuthorizedUrl() + 'collars/';\n let header = makeHeader(token);\n header = setJsonHeader(header);\n return fetch(\n url, { method: 'PUT', headers: header, body: JSON.stringify(collar) });\n};\n\n// Delete functions\n\nexport function deleteCapture(Id: number, token: string): Promise\n{\n const url = apiAuthorizedUrl() + 'captures/' + Id;\n let header = makeHeader(token);\n header = setJsonHeader(header);\n return fetch(url, { method: 'DELETE', headers: header });\n};\n\nexport function deleteUser(Id: number, token: string): Promise\n{\n const url = apiAuthorizedUrl() + 'users/' + Id;\n let header = makeHeader(token);\n header = setJsonHeader(header);\n return fetch(url, { method: 'DELETE', headers: header });\n};\n\nexport function deleteAnimalById(Id: number, token: string): Promise\n{\n const url = apiAuthorizedUrl() + 'animals/' + Id;\n let header = makeHeader(token);\n header = setJsonHeader(header);\n return fetch(url, {\n method: 'DELETE',\n headers: header,\n });\n};\n\nexport function deleteMortalityImageById(\n Id: number, token: string): Promise\n{\n const url = apiAuthorizedUrl() + 'MortalityImages/' + Id;\n let header = makeHeader(token);\n header = setJsonHeader(header);\n return fetch(url, {\n method: 'DELETE',\n headers: header,\n });\n};\n\nexport function deleteMortalityPDFById(\n Id: number, token: string): Promise\n{\n const url = apiAuthorizedUrl() + 'MortalityPDFs/' + Id;\n let header = makeHeader(token);\n header = setJsonHeader(header);\n return fetch(url, {\n method: 'DELETE',\n headers: header,\n });\n};\n\nexport function deleteCaptureImageById(\n Id: number, token: string): Promise\n{\n const url = apiAuthorizedUrl() + 'captureimages/' + Id;\n let header = makeHeader(token);\n header = setJsonHeader(header);\n return fetch(url, {\n method: 'DELETE',\n headers: header,\n });\n};\n\nexport function deleteMortalityById(\n Id: number, token: string): Promise\n{\n const url = apiAuthorizedUrl() + 'mortalities/' + Id;\n let header = makeHeader(token);\n header = setJsonHeader(header);\n return fetch(url, {\n method: 'DELETE',\n headers: header,\n });\n};\n\nexport function deleteCollarById(Id: number, token: string): Promise\n{\n const url = apiAuthorizedUrl() + 'collars/' + Id;\n let header = makeHeader(token);\n header = setJsonHeader(header);\n return fetch(url, {\n method: 'DELETE',\n headers: header,\n });\n};\n\n// Other API Routes\n\nexport function archiveUnitId(Id: number, token: string): Promise\n{\n const url = apiAuthorizedUrl() + 'units/archive/' + Id;\n let header = makeHeader(token);\n header = setJsonHeader(header);\n return fetch(url, {\n method: 'PUT',\n headers: header,\n });\n};\n\nexport function deleteSubUnitById(Id: number, token: string): Promise\n{\n const url = apiAuthorizedUrl() + 'subunits/' + Id;\n let header = makeHeader(token);\n header = setJsonHeader(header);\n return fetch(url, {\n method: 'DELETE',\n headers: header,\n });\n};\n\nexport function unArchiveUnitId(Id: number, token: string): Promise\n{\n const url = apiAuthorizedUrl() + 'units/unarchive/' + Id;\n let header = makeHeader(token);\n header = setJsonHeader(header);\n return fetch(url, {\n method: 'PUT',\n headers: header,\n });\n};\n\nexport function archiveAreaId(Id: number, token: string): Promise\n{\n const url = apiAuthorizedUrl() + 'stagingareas/archive/' + Id;\n let header = makeHeader(token);\n header = setJsonHeader(header);\n return fetch(url, {\n method: 'PUT',\n headers: header,\n });\n};\n\nexport function unArchiveAreaId(Id: number, token: string): Promise\n{\n const url = apiAuthorizedUrl() + 'stagingareas/unarchive/' + Id;\n let header = makeHeader(token);\n header = setJsonHeader(header);\n return fetch(url, {\n method: 'PUT',\n headers: header,\n });\n};\n\nexport function archiveUserId(Id: string, token: string): Promise\n{\n const url = apiAuthorizedUrl() + 'users/archive/' + Id;\n let header = makeHeader(token);\n header = setJsonHeader(header);\n return fetch(url, {\n method: 'PUT',\n headers: header,\n });\n};\n\nexport function unArchiveUserId(Id: string, token: string): Promise\n{\n const url = apiAuthorizedUrl() + 'users/unarchive/' + Id;\n let header = makeHeader(token);\n header = setJsonHeader(header);\n return fetch(url, {\n method: 'PUT',\n headers: header,\n });\n};\n\nexport function archiveCollarId(Id: number, token: string): Promise\n{\n const url = apiAuthorizedUrl() + 'collars/archive/' + Id;\n let header = makeHeader(token);\n header = setJsonHeader(header);\n return fetch(url, {\n method: 'PUT',\n headers: header,\n });\n};\n\nexport function unArchiveCollarId(\n Id: number, token: string): Promise\n{\n const url = apiAuthorizedUrl() + 'collars/unarchive/' + Id;\n let header = makeHeader(token);\n header = setJsonHeader(header);\n return fetch(url, {\n method: 'PUT',\n headers: header,\n });\n};\n\nexport function toggleFlagService(dataValid: boolean, Id: number)\n{\n var endpoint = '/datainvalid';\n if (dataValid) {\n endpoint = '/datavalid';\n }\n const url = getApiUrl() + 'animals/' + Id + endpoint;\n\n return fetch(url, {\n method: 'PUT',\n\n });\n}\n\nexport function toggleCaptureFlagService(dataValid: boolean, Id: number)\n{\n var endpoint = '/datainvalid';\n if (dataValid) {\n endpoint = '/datavalid';\n }\n const url = getApiUrl() + 'captures/' + Id + endpoint;\n\n return fetch(url, {\n method: 'PUT',\n\n });\n}\n\n\nexport function exportCaptureData(\n start: Date, end: Date, species: string | null, unitId: number | null,\n collarCode: string | null, sex: string | null, archived: string | null,\n state: string | null, uniqueId: number | null, age: string | null): Promise\n{\n const url = new URL(getApiUrl() + 'captures/exportData');\n const params = {\n start: start.toLocaleDateString(),\n end: end.toLocaleDateString(),\n species: species,\n unitId: unitId || '',\n collarCode: collarCode,\n archived: archived,\n state: state,\n uniqueId: uniqueId || '',\n sex: sex,\n age: age,\n };\n // @ts-ignore\n Object.keys(params).forEach(key => url.searchParams.append(key, params[key]));\n let header = {};\n header = setCSVHeader(header);\n return fetch(url.toString(), {\n method: 'GET',\n headers: header,\n });\n}\n\nexport function exportMortalityData(\n start: Date, end: Date, species: string | null, unitId: number | null,\n collarCode: string | null, archived: string | null, state: string | null,\n uniqueId: number | null): Promise\n{\n const url = new URL(getApiUrl() + 'mortalities/exportData');\n const params = {\n start: start.toLocaleDateString(),\n end: end.toLocaleDateString(),\n species: species,\n unitId: unitId || '',\n collarCode: collarCode,\n archived: archived,\n state: state,\n uniqueId: uniqueId || ''\n };\n Object.keys(params).forEach(key => url.searchParams.append(key, params[key]));\n let header = {};\n header = setCSVHeader(header);\n return fetch(url.toString(), {\n method: 'GET',\n headers: header,\n });\n}\n\nimport { store } from '../store/store'\n\nexport const makeHeader1 = (reqBody, reqMethod) => {\n let req:any = {\n headers: {\n 'Content-Type': 'application/json'\n }\n }\n if(store.state.token) {\n req.headers['Authorization'] = 'Bearer ' + store.state.token\n }\n\n if(reqBody) req.body = JSON.stringify(reqBody)\n if(reqMethod) req.method = reqMethod\n\n return req\n}\n\nexport function APICall(endpoint, method, body) {\n return fetch(getApiUrl() + endpoint, makeHeader1(body, method))\n .then(data => {\n if (data.status == 401) authn.login();\n if(data.status > 299) throw data\n else if(data.status === 204) return data.text()\n return data.json()\n })\n .catch(err => { throw err; })\n}\n\n\n//Projects\nexport const getProjects = () => APICall('projects', 'GET', false)\nexport const addNewProject = data => APICall('projects', 'POST', data)\nexport const updateProject = data => APICall('projects/' + data.id, 'PUT', data)\nexport const deleteProject = id => APICall(`projects/${id}`, 'DELETE', false)","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { Component, Prop, Vue, Watch } from \"vue-property-decorator\";\n\n// @ts-ignore\nimport * as authn from \"../node_modules/@byuweb/browser-oauth/byu-browser-oauth.mjs\";\nimport { store } from \"@/store/store\";\nimport { State } from \"vuex-class\";\nimport { getUser } from \"@/services/services\";\nimport User from \"@/models/User\";\n@Component({})\nexport default class App extends Vue {\n private observer: authn.AuthenticationObserver;\n @State\n private user!: User;\n @State\n private token!: string;\n private change: boolean;\n\n constructor() {\n super();\n this.change = false;\n }\n\n created() {\n this.observer = new authn.AuthenticationObserver(\n ({ state, token, user, error } : any) => {\n // React to change\n if (user) {\n var time = token.expiresAt - Date.now();\n setTimeout(this.logout, time);\n store.commit(\"setToken\", token.bearer);\n\n getUser(user.netId, token.bearer).then(data => {\n data.json().then(json => {\n const admin = new User();\n admin.fromJSON(json);\n\n if (this.redirect(admin.RoleId)) {\n this.$router.push(\"/\");\n } else {\n let login = localStorage.getItem(\"login\");\n\n if (login == \"true\") {\n let path = localStorage.getItem(\"path\");\n localStorage.setItem(\"login\", \"false\");\n localStorage.removeItem(\"path\");\n if (path) this.$router.push(path);\n }\n }\n\n store.commit(\"setAdmin\", admin);\n });\n });\n }\n if (state == \"unauthenticated\") {\n if (this.redirect(3)) {\n var name = this.$router.currentRoute.path || \"\";\n localStorage.setItem(\"path\", name);\n localStorage.setItem(\"login\", \"true\");\n authn.login();\n }\n }\n\n if (state == \"expired\") {\n this.logout();\n }\n }\n );\n }\n\n logout() {\n authn.logout();\n this.$router.push(\"/\");\n }\n\n redirect(Id: number): boolean {\n let redirect = false;\n if (Id > 1) {\n if (this.$router.currentRoute.name === \"users\") {\n redirect = true;\n }\n if (\n Id == 3 &&\n (this.$router.currentRoute.name == \"edit\" ||\n this.$router.currentRoute.name == \"collars\" ||\n this.$router.currentRoute.name == \"units\")\n ) {\n redirect = true;\n }\n }\n return redirect;\n }\n\n beginLogin() {\n authn.login();\n }\n}\n","import mod from \"-!../node_modules/cache-loader/dist/cjs.js??ref--13-0!../node_modules/thread-loader/dist/cjs.js!../node_modules/babel-loader/lib/index.js!../node_modules/ts-loader/index.js??ref--13-3!../node_modules/cache-loader/dist/cjs.js??ref--0-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../node_modules/cache-loader/dist/cjs.js??ref--13-0!../node_modules/thread-loader/dist/cjs.js!../node_modules/babel-loader/lib/index.js!../node_modules/ts-loader/index.js??ref--13-3!../node_modules/cache-loader/dist/cjs.js??ref--0-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./App.vue?vue&type=template&id=d6fbee2e&\"\nimport script from \"./App.vue?vue&type=script&lang=ts&\"\nexport * from \"./App.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./App.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","/**\n * Enabled v-data-table to have moire than one filter.\n */\nclass MultiFilters {\n /**\n * Constructor.\n *\n * @param items\n * @param filters\n * @param filter\n * @param headers\n */\n constructor(items, filters, filter, headers) {\n this.items = items;\n this.filter = filter;\n this.headers = headers;\n this.filters = filters;\n this.filterCallbacks = {};\n }\n\n /**\n * Updates filter values.\n * @param filters filter´s object\n * @param val JSON chunk to be updated.\n * @returns {*}\n */\n static updateFilters(filters, val) {\n return Object.assign({}, filters, val);\n }\n\n /**\n * Adds a new filter\n * @param filterName The name of the filter from which the information will be\n * extracted\n * @param filterCallback The callback that will apply the filter.\n */\n registerFilter(filterName, filterCallback) {\n this.filterCallbacks[filterName] = filterCallback;\n }\n\n /**\n * Run all filters.\n * @returns {*}\n */\n runFilters() {\n const self = this;\n let filteredItems = self.items;\n\n Object.entries(this.filterCallbacks).forEach(([entity, cb]) => {\n filteredItems = cb.call(self, self.filters[entity], filteredItems);\n });\n\n return filteredItems;\n }\n}\n\n// Vue plugin.\nconst MultiFiltersPlugin = {\n install(Vue, options) {\n Vue.prototype.$MultiFilters = MultiFilters;\n }\n};\n\nexport default MultiFiltersPlugin;","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-card',{staticClass:\"elevation-1\"},[_c('v-dialog',{attrs:{\"max-width\":\"290\"},model:{value:(_vm.confirmdialog),callback:function ($$v) {_vm.confirmdialog=$$v},expression:\"confirmdialog\"}},[_c('v-card',[_c('v-card-title',{staticClass:\"headline\"},[_vm._v(\"Archive Staging Area\")]),_c('v-card-text',[_vm._v(\"Are you sure you want to Archive this Staging Area?\")]),_c('v-card-actions',[_c('v-spacer'),_c('v-btn',{attrs:{\"color\":\"green darken-1\",\"flat\":\"flat\"},on:{\"click\":_vm.close}},[_vm._v(\"No\")]),_c('v-btn',{attrs:{\"color\":\"green darken-1\",\"flat\":\"flat\"},on:{\"click\":_vm.archiveArea}},[_vm._v(\"Yes\")])],1)],1)],1),_c('v-toolbar',{attrs:{\"flat\":\"\",\"color\":\"#002E5D\"}},[_c('v-toolbar-title',{staticStyle:{\"color\":\"white\"}},[_vm._v(\"Staging Areas\")])],1),_c('v-toolbar',{staticStyle:{\"padding-bottom\":\"15px\"},attrs:{\"flat\":\"\",\"color\":\"white\"}},[_c('v-flex',{attrs:{\"mt-3\":\"\",\"mr-2\":\"\",\"pt-1\":\"\"}},[_c('v-select',{attrs:{\"items\":_vm.status,\"label\":\"Status\"},on:{\"change\":_vm.filterState},model:{value:(_vm.selectedStatus),callback:function ($$v) {_vm.selectedStatus=$$v},expression:\"selectedStatus\"}})],1),_c('v-text-field',{attrs:{\"append-icon\":\"search\",\"label\":\"Search\",\"single-line\":\"\",\"hide-details\":\"\"},on:{\"input\":_vm.filterSearch}}),_c('v-spacer'),_c('v-dialog',{attrs:{\"max-width\":\"450px\"},model:{value:(_vm.dialog),callback:function ($$v) {_vm.dialog=$$v},expression:\"dialog\"}},[_c('v-btn',{staticClass:\"mb-2\",attrs:{\"slot\":\"activator\",\"color\":\"#5F7C9B\",\"dark\":\"\"},slot:\"activator\"},[_vm._v(\"Add Staging Area\")]),_c('v-card',[_c('v-card-title',[_c('span',{staticClass:\"headline\"},[_vm._v(\"New Staging Area\")])]),_c('v-card-text',[_c('v-container',{attrs:{\"grid-list-md\":\"\",\"text-xs-center\":\"\",\"fluid\":\"\"}},[_c('v-layout',{attrs:{\"row\":\"\",\"wrap\":\"\",\"justify-start\":\"\",\"align-end\":\"\"}},[_c('v-flex',{attrs:{\"lg6\":\"\"}},[_c('v-text-field',{attrs:{\"label\":\"Staging Area Name\",\"single-line\":\"\",\"hide-details\":\"\"},model:{value:(_vm.selectedStagingArea.Name),callback:function ($$v) {_vm.$set(_vm.selectedStagingArea, \"Name\", $$v)},expression:\"selectedStagingArea.Name\"}})],1),_c('v-flex',{attrs:{\"lg6\":\"\"}},[_c('v-text-field',{attrs:{\"label\":\"Abbreviation\",\"single-line\":\"\",\"hide-details\":\"\"},model:{value:(_vm.selectedStagingArea.Abbreviation),callback:function ($$v) {_vm.$set(_vm.selectedStagingArea, \"Abbreviation\", $$v)},expression:\"selectedStagingArea.Abbreviation\"}})],1)],1)],1)],1),_c('v-card-actions',[_c('v-spacer'),_c('v-btn',{attrs:{\"color\":\"blue darken-1\",\"flat\":\"\"},nativeOn:{\"click\":function($event){return _vm.close($event)}}},[_vm._v(\"Cancel\")]),_c('v-btn',{attrs:{\"color\":\"blue darken-1\",\"flat\":\"\"},nativeOn:{\"click\":function($event){return _vm.save($event)}}},[_vm._v(\"Save\")])],1)],1)],1)],1),_c('v-data-table',{attrs:{\"headers\":_vm.headers,\"items\":_vm.areas,\"item-key\":\"Id\",\"search\":_vm.filters,\"custom-filter\":_vm.customFilter,\"rows-per-page-items\":[10, 25, 50, 100]},scopedSlots:_vm._u([{key:\"items\",fn:function(props){return [_c('tr',{staticClass:\"clickable-row\",on:{\"click\":function($event){props.expanded = !props.expanded}}},[_c('td',{staticClass:\"text-xs-left\"},[_vm._v(_vm._s(props.item.Name))]),_c('td',{staticClass:\"justify-center layout px-0\"},[_c('v-icon',{staticClass:\"mr-2\",attrs:{\"medium\":\"\"},on:{\"click\":function($event){return _vm.editItem(props.item)}}},[_vm._v(\"edit\")]),(_vm.user.RoleId == 1)?_c('span',[(!props.item.Archived)?_c('v-btn',{staticClass:\"mr-2\",staticStyle:{\"color\":\"white\"},attrs:{\"medium\":\"\",\"color\":\"#B3041A\"},on:{\"click\":function($event){return _vm.deleteItem(props.item, props.index)}}},[_vm._v(\"Archive\")]):_vm._e()],1):_vm._e(),(props.item.Archived)?_c('v-btn',{staticClass:\"mr-2\",staticStyle:{\"color\":\"white\"},attrs:{\"medium\":\"\",\"color\":\"#B3041A\"},on:{\"click\":function($event){return _vm.unarchiveArea(props.item)}}},[_vm._v(\"Unarchive\")]):_vm._e()],1)])]}}])})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","export default class StagingArea {\n private Id: number;\n private Name: string;\n private Archived: boolean;\n\n constructor($Id: number, $Name: string, $Archived: boolean) {\n this.Id = $Id;\n this.Name = $Name;\n this.Archived = $Archived;\n }\n // @ts-ignore\n constructor();\n\n\n fromJSON(json: any) {\n this.Id = json.Id;\n this.Name = json.Name;\n if (json.Archived == null) {\n this.Archived = false;\n } else {\n this.Archived = json.Archived\n }\n }\n\n getId(): number {\n return this.Id;\n }\n\n setId(Id: number) {\n this.Id = Id;\n }\n\n archive() {\n this.Archived = true;\n }\n\n unarchive() {\n this.Archived = false;\n }\n\n getArchived(): boolean {\n return this.Archived;\n }\n}","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n// @ts-ignore\nimport { Component, Prop, Vue, Watch } from \"vue-property-decorator\";\nimport { State } from \"vuex-class\";\nimport StagingArea from \"@/models/StagingArea\";\nimport { store } from \"@/store/store\";\nimport {\n getStagingAreas,\n postStagingArea,\n putStagingArea,\n unArchiveAreaId,\n archiveAreaId\n} from \"@/services/services\";\nimport Collar from \"@/models/Collar\";\nimport User from \"@/models/User\";\n\n@Component({})\nexport default class Staging extends Vue {\n private headers: {}[] = [\n { text: \"Area Name\", value: \"Name\", sortable: false },\n { text: \"\", value: \"Actions\", sortable: false }\n ];\n private areas: StagingArea[];\n private status: {}[] = [\n { text: \"All\", value: null },\n { text: \"Archived\", value: true },\n { text: \"Current\", value: false }\n ];\n private confirmdialog: boolean;\n private defaultStagingArea: StagingArea;\n private selectedStagingArea: StagingArea;\n private selectedIndex: number;\n private dialog: boolean;\n private selectedStatus: boolean | null;\n private search: string;\n @State\n private user!: User;\n @State\n private token!: string;\n private filters: {} = {\n search: \"\",\n State: false\n };\n\n constructor() {\n super();\n this.defaultStagingArea = new StagingArea();\n this.selectedStagingArea = new StagingArea();\n this.confirmdialog = false;\n this.selectedIndex = -1;\n this.areas = [];\n this.dialog = false;\n this.search = \"\";\n this.selectedStatus = false;\n }\n\n created() {\n this.getAreas();\n }\n\n required(value: string) {\n return !!value || \"Required\";\n }\n\n deleteItem(item: StagingArea, index: number) {\n this.confirmdialog = true;\n this.selectedStagingArea = item;\n }\n\n editItem(item: StagingArea) {\n this.selectedStagingArea = item;\n this.dialog = true;\n }\n\n archiveArea() {\n archiveAreaId(this.selectedStagingArea.getId(), this.token);\n this.confirmdialog = false;\n this.selectedStagingArea.archive();\n }\n\n unarchiveArea(area: StagingArea) {\n unArchiveAreaId(area.getId(), this.token);\n area.unarchive();\n }\n\n close() {\n this.confirmdialog = false;\n this.dialog = false;\n setTimeout(() => {\n this.selectedStagingArea = new StagingArea();\n this.selectedIndex = -1;\n }, 300);\n }\n\n async save() {\n try {\n if (this.selectedStagingArea.getId() != undefined) {\n let result = await putStagingArea(this.selectedStagingArea, this.token);\n } else {\n let result = await postStagingArea(\n this.selectedStagingArea,\n this.token\n );\n let id = await result.json();\n this.selectedStagingArea.setId(id);\n this.areas.push(this.selectedStagingArea);\n }\n\n this.close();\n\n // this.title = \"Capture Saved\";\n } catch (err) {\n err;\n this.close();\n }\n }\n\n async getAreas() {\n try {\n var res = await getStagingAreas();\n var list = await res.json();\n list.forEach((item : any) => {\n const area = new StagingArea();\n area.fromJSON(item);\n this.areas.push(area);\n });\n } catch (error) {}\n }\n\n customFilter(items: any, filters: any, filter: any, headers: any) {\n // Init the filter class.\n const cf = new this.$MultiFilters(items, filters, filter, headers);\n\n //Register each filter with the custom filter initialized above.\n cf.registerFilter(\"search\", function(searchWord : any, items : any) {\n //This is the logic of the filter\n if (!searchWord) return items;\n\n if (searchWord.trim() === \"\") return items;\n\n return items.filter((item : any) => {\n return item.Name.toLowerCase().includes(searchWord.toLowerCase());\n }, searchWord);\n });\n\n cf.registerFilter(\"State\", function(State: boolean, items: any[]) {\n //This is the logic of the filter\n if (State == null) return items;\n\n let newit = items.filter(item => {\n return item.Archived === State;\n }, State);\n\n return newit;\n });\n return cf.runFilters();\n }\n\n // These are the functions that determine which filters need to be updated\n filterSearch(val: string) {\n this.filters = this.$MultiFilters.updateFilters(this.filters, {\n search: val\n });\n }\n\n filterState(val: string[]) {\n this.filters = this.$MultiFilters.updateFilters(this.filters, {\n State: val\n });\n }\n}\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--13-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Staging.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--13-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Staging.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Staging.vue?vue&type=template&id=8652532e&\"\nimport script from \"./Staging.vue?vue&type=script&lang=ts&\"\nexport * from \"./Staging.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./Staging.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('v-container',[_c('v-layout',{attrs:{\"row\":\"\"}},[_c('h1',[_vm._v(\"Add/Edit Animal Info\")]),_c('v-spacer'),(_vm.user.RoleId == 1)?_c('span',[(!_vm.selectedAnimal.Archived)?_c('v-btn',{staticStyle:{\"color\":\"white\"},attrs:{\"color\":\"#B3041A\"},on:{\"click\":_vm.deleteAnimal}},[_vm._v(\"Archive\")]):_vm._e()],1):_vm._e(),(_vm.selectedAnimal.Archived)?_c('v-btn',{staticStyle:{\"color\":\"white\"},attrs:{\"color\":\"#B3041A\"},on:{\"click\":_vm.unarchiveAnimal}},[_vm._v(\"Unarchive\")]):_vm._e(),_c('v-btn',{staticStyle:{\"color\":\"white\"},attrs:{\"color\":\"#002E5D\"},on:{\"click\":_vm.save}},[_vm._v(\"Save Animal\")])],1),_c('v-card',{staticStyle:{\"margin-bottom\":\"10px\"}},[_c('v-toolbar',{attrs:{\"flat\":\"\",\"color\":\"#002E5D\"}},[_c('v-toolbar-title',{staticStyle:{\"color\":\"white\"}},[_vm._v(\"General Info for Unique Id: \"+_vm._s(_vm.selectedAnimal.UniqueId))])],1),_c('v-container',{attrs:{\"grid-list-md\":\"\",\"text-xs-center\":\"\",\"fluid\":\"\"}},[_c('v-layout',{attrs:{\"column\":\"\"}},[_c('v-layout',{attrs:{\"row\":\"\",\"wrap\":\"\",\"justify-start\":\"\",\"align-end\":\"\"}},[_c('v-flex',{attrs:{\"lg2\":\"\"}},[_c('v-radio-group',{attrs:{\"mandatory\":true},model:{value:(_vm.selectedAnimal.Sex),callback:function ($$v) {_vm.$set(_vm.selectedAnimal, \"Sex\", $$v)},expression:\"selectedAnimal.Sex\"}},[_c('v-radio',{attrs:{\"label\":\"Male\",\"value\":\"Male\",\"color\":\"primary\"}}),_c('v-radio',{attrs:{\"label\":\"Female\",\"value\":\"Female\",\"color\":\"primary\"}}),_c('v-radio',{attrs:{\"label\":\"Unknown\",\"value\":\"Unknown\",\"color\":\"primary\"}})],1)],1),_c('v-flex',{attrs:{\"lg2\":\"\"}},[_c('v-autocomplete',{ref:\"drop\",attrs:{\"items\":_vm.collarCodes,\"label\":\"Collar Code\",\"item-value\":\"CollarId\",\"item-text\":\"CollarCode\",\"search-input\":_vm.collarCodeText},on:{\"update:searchInput\":function($event){_vm.collarCodeText=$event},\"update:search-input\":function($event){_vm.collarCodeText=$event}},model:{value:(_vm.selectedAnimal.CollarId),callback:function ($$v) {_vm.$set(_vm.selectedAnimal, \"CollarId\", $$v)},expression:\"selectedAnimal.CollarId\"}},[_c('v-list-tile',{staticClass:\"font-weight-black\",staticStyle:{\"cursor\":\"pointer\"},attrs:{\"slot\":\"prepend-item\"},on:{\"click\":function($event){return _vm.addCollarCode()}},slot:\"prepend-item\"},[_vm._v(\"Add Collar\")])],1)],1),_c('v-flex',{attrs:{\"mb-3\":\"\",\"pb-2\":\"\",\"lg2\":\"\"}},[_c('v-text-field',{attrs:{\"label\":\"Maternal Id\",\"single-line\":\"\",\"hide-details\":\"\"},model:{value:(_vm.selectedAnimal.MaternalId),callback:function ($$v) {_vm.$set(_vm.selectedAnimal, \"MaternalId\", $$v)},expression:\"selectedAnimal.MaternalId\"}})],1),_c('v-flex',{attrs:{\"lg2\":\"\"}},[_c('v-select',{attrs:{\"items\":_vm.species,\"label\":\"Species\",\"item-value\":\"Species\",\"item-text\":\"Name\"},model:{value:(_vm.selectedAnimal.Species),callback:function ($$v) {_vm.$set(_vm.selectedAnimal, \"Species\", $$v)},expression:\"selectedAnimal.Species\"}})],1),_c('v-flex',{attrs:{\"lg2\":\"\"}},[_c('v-menu',{attrs:{\"close-on-content-click\":false,\"nudge-right\":40,\"lazy\":\"\",\"transition\":\"scale-transition\",\"offset-y\":\"\",\"full-width\":\"\",\"max-width\":\"290px\",\"min-width\":\"290px\"}},[_c('v-text-field',{attrs:{\"slot\":\"activator\",\"label\":\"Initial Capture\",\"prepend-icon\":\"event\"},on:{\"blur\":function($event){_vm.addDate = _vm.parseDate(_vm.selectedAnimal.InitialCaptureStr)}},slot:\"activator\",model:{value:(_vm.selectedAnimal.InitialCaptureStr),callback:function ($$v) {_vm.$set(_vm.selectedAnimal, \"InitialCaptureStr\", $$v)},expression:\"selectedAnimal.InitialCaptureStr\"}}),_c('v-date-picker',{attrs:{\"no-title\":\"\"},model:{value:(_vm.addDate),callback:function ($$v) {_vm.addDate=$$v},expression:\"addDate\"}})],1)],1),_c('v-flex',{attrs:{\"lg2\":\"\"}},[_c('v-menu',{attrs:{\"close-on-content-click\":false,\"nudge-right\":40,\"lazy\":\"\",\"transition\":\"scale-transition\",\"offset-y\":\"\",\"full-width\":\"\",\"max-width\":\"290px\",\"min-width\":\"290px\"}},[_c('v-text-field',{attrs:{\"slot\":\"activator\",\"label\":\"Birthday\",\"prepend-icon\":\"event\"},slot:\"activator\",model:{value:(_vm.selectedAnimal.BirthString),callback:function ($$v) {_vm.$set(_vm.selectedAnimal, \"BirthString\", $$v)},expression:\"selectedAnimal.BirthString\"}}),_c('v-date-picker',{attrs:{\"no-title\":\"\"},model:{value:(_vm.birthDate),callback:function ($$v) {_vm.birthDate=$$v},expression:\"birthDate\"}})],1)],1)],1),_c('v-select',{attrs:{\"label\":\"Projects\",\"items\":_vm.projectList,\"item-text\":\"name\",\"multiple\":\"\",\"return-object\":\"\"},model:{value:(_vm.selectedAnimal.Projects),callback:function ($$v) {_vm.$set(_vm.selectedAnimal, \"Projects\", $$v)},expression:\"selectedAnimal.Projects\"}})],1)],1)],1),_c('captures',{attrs:{\"collarCodes\":_vm.collarCodes},on:{\"snackbarOpen\":_vm.snackbarOpen}}),_c('mortality-info',{attrs:{\"collars\":_vm.collarCodes,\"animal\":_vm.selectedAnimal},on:{\"snackbarOpen\":_vm.snackbarOpen}}),_c('location-map',{attrs:{\"AnimalId\":_vm.AnimalId,\"collars\":_vm.collarCodes}}),_c('v-dialog',{attrs:{\"persistent\":\"\",\"max-width\":\"290\"},model:{value:(_vm.dialog),callback:function ($$v) {_vm.dialog=$$v},expression:\"dialog\"}},[_c('v-card',[_c('v-card-text',{staticClass:\"headline\"},[_vm._v(_vm._s(_vm.message))]),_c('v-card-actions',[_c('v-spacer'),_c('v-btn',{attrs:{\"flat\":\"\"},on:{\"click\":_vm.redirect}},[_vm._v(\"Ok\")])],1)],1)],1),_c('v-snackbar',{attrs:{\"color\":_vm.snackBarObj.snackBarColor,\"timeout\":_vm.snackBarObj.timeout,\"top\":_vm.snackBarObj.y === 'top',\"bottom\":_vm.snackBarObj.y === 'bottom',\"right\":_vm.snackBarObj.x === 'right',\"left\":_vm.snackBarObj.x === 'left',\"multi-line\":_vm.snackBarObj.mode === 'multi-line',\"vertical\":_vm.snackBarObj.mode === 'vertical'},model:{value:(_vm.snackBarObj.snackbar),callback:function ($$v) {_vm.$set(_vm.snackBarObj, \"snackbar\", $$v)},expression:\"snackBarObj.snackbar\"}},[_vm._v(\"\\n \"+_vm._s(_vm.snackBarObj.text)+\"\\n \"),_c('v-btn',{attrs:{\"dark\":\"\",\"flat\":\"\"},nativeOn:{\"click\":function($event){_vm.snackBarObj.snackbar = false}}},[_vm._v(\"Close\")])],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('v-card',{staticClass:\"elevation-1\"},[_c('v-dialog',{attrs:{\"max-width\":\"290\"},model:{value:(_vm.confirmdialog),callback:function ($$v) {_vm.confirmdialog=$$v},expression:\"confirmdialog\"}},[_c('v-card',[_c('v-card-title',{staticClass:\"headline\"},[_vm._v(\"Delete Capture\")]),_c('v-card-text',[_vm._v(\"Are you sure you want to Delete this Capture?\")]),_c('v-card-actions',[_c('v-spacer'),_c('v-btn',{attrs:{\"color\":\"green darken-1\",\"flat\":\"flat\"},on:{\"click\":_vm.close}},[_vm._v(\"No\")]),_c('v-btn',{attrs:{\"color\":\"green darken-1\",\"flat\":\"flat\"},on:{\"click\":_vm.deleteCapture}},[_vm._v(\"Yes\")])],1)],1)],1),_c('v-toolbar',{attrs:{\"flat\":\"\",\"color\":\"#002E5D\"}},[_c('v-toolbar-title',{staticStyle:{\"color\":\"white\"}},[_vm._v(\"Captures\")])],1),_c('v-toolbar',{staticStyle:{\"padding-bottom\":\"15px\"},attrs:{\"flat\":\"\",\"color\":\"white\"}},[_c('v-spacer'),_c('capture-edit',{attrs:{\"collarCodes\":_vm.collarCodes},on:{\"snackbarOpen\":_vm.snackbarOpen}})],1),_c('v-data-table',{attrs:{\"headers\":_vm.headers,\"items\":_vm.captures,\"item-key\":\"CaptureId\",\"hide-actions\":\"\"},scopedSlots:_vm._u([{key:\"items\",fn:function(props){return [_c('tr',{staticClass:\"clickable-row\",on:{\"click\":function($event){props.expanded = !props.expanded}}},[_c('td',{staticClass:\"text-xs-left\"},[_vm._v(_vm._s(props.item.CollarCode))]),_c('td',{staticClass:\"text-xs-left\"},[_vm._v(_vm._s(props.item.CaptureDateStr))]),_c('td',{staticClass:\"text-xs-left\"},[_vm._v(_vm._s(props.item.BodyConditionScore))]),_c('td',{staticClass:\"text-xs-left\"},[_vm._v(_vm._s(props.item.Age))]),_c('td',{staticClass:\"text-xs-left\"},[_c('div',{staticClass:\"overme\"},[_vm._v(_vm._s(props.item.Comments))])]),_c('td',{staticClass:\"justify-center layout px-0\"},[_c('v-icon',{staticClass:\"mr-2\",attrs:{\"medium\":\"\"},on:{\"click\":function($event){return _vm.editItem(props.item)}}},[_vm._v(\"edit\")]),(_vm.user.RoleId == 1)?_c('v-icon',{staticClass:\"mr-2\",attrs:{\"medium\":\"\"},on:{\"click\":function($event){return _vm.deleteItem(props.item, props.index)}}},[_vm._v(\"delete\")]):_vm._e()],1)])]}}])})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('v-btn',{staticClass:\"mb-2\",attrs:{\"color\":\"#5F7C9B\",\"dark\":\"\"},on:{\"click\":function($event){return _vm.openDialog()}}},[_vm._v(\"Add Capture\")]),_c('v-dialog',{attrs:{\"scrollable\":\"\",\"persistent\":\"\",\"max-width\":\"850px\"},model:{value:(_vm.dialog),callback:function ($$v) {_vm.dialog=$$v},expression:\"dialog\"}},[_c('v-card',[_c('v-card-title',{staticStyle:{\"background-color\":\"#002E5D\",\"color\":\"white\"}},[_c('span',{staticClass:\"headline\"},[_vm._v(_vm._s(_vm.selectedCapture.CaptureId ? \"Edit Capture\":\"New Capture\"))])]),_c('v-divider'),_c('v-card-text',[_c('v-form',{ref:\"pform\",attrs:{\"lazy-validation\":\"\"},model:{value:(_vm.valid),callback:function ($$v) {_vm.valid=$$v},expression:\"valid\"}},[_c('v-container',{attrs:{\"grid-list-md\":\"\"}},[_c('h1',[_vm._v(\"General:\")]),_c('v-layout',{attrs:{\"wrap\":\"\"}},[_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\"}},[_c('v-menu',{attrs:{\"close-on-content-click\":false,\"nudge-right\":40,\"lazy\":\"\",\"transition\":\"scale-transition\",\"offset-y\":\"\",\"full-width\":\"\",\"max-width\":\"290px\",\"min-width\":\"290px\"}},[_c('v-text-field',{attrs:{\"slot\":\"activator\",\"label\":\"Capture Date\",\"prepend-icon\":\"event\"},on:{\"blur\":function($event){_vm.captureDate = _vm.parseDates(_vm.selectedCapture.CaptureDateStr)}},slot:\"activator\",model:{value:(_vm.selectedCapture.CaptureDateStr),callback:function ($$v) {_vm.$set(_vm.selectedCapture, \"CaptureDateStr\", $$v)},expression:\"selectedCapture.CaptureDateStr\"}}),_c('v-date-picker',{attrs:{\"no-title\":\"\"},model:{value:(_vm.captureDate),callback:function ($$v) {_vm.captureDate=$$v},expression:\"captureDate\"}})],1)],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md1\":\"\"}},[_c('v-text-field',{attrs:{\"type\":\"number\",\"label\":\"Animal Id\"},model:{value:(_vm.selectedCapture.AnimalId),callback:function ($$v) {_vm.$set(_vm.selectedCapture, \"AnimalId\", $$v)},expression:\"selectedCapture.AnimalId\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md3\":\"\"}},[_c('v-btn',{staticStyle:{\"color\":\"white\"},attrs:{\"color\":\"#002E5D\"},nativeOn:{\"click\":function($event){return _vm.copyAnimal($event)}}},[_vm._v(\"Copy Animal\\n \")])],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\"}},[_c('v-autocomplete',{ref:\"unitDrop\",attrs:{\"items\":_vm.units,\"item-text\":\"Name\",\"item-value\":\"UnitId\",\"label\":\"Capture Unit\",\"search-input\":_vm.unitText},on:{\"update:searchInput\":function($event){_vm.unitText=$event},\"update:search-input\":function($event){_vm.unitText=$event}},model:{value:(_vm.selectedCapture.CaptureUnitId),callback:function ($$v) {_vm.$set(_vm.selectedCapture, \"CaptureUnitId\", $$v)},expression:\"selectedCapture.CaptureUnitId\"}},[_c('v-list-tile',{staticStyle:{\"cursor\":\"pointer\",\"font-weight\":\"bold\"},attrs:{\"slot\":\"prepend-item\"},on:{\"click\":function($event){return _vm.addUnit()}},slot:\"prepend-item\"},[_vm._v(\"\\n Add Capture Unit\\n \")])],1)],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\"}},[_c('v-autocomplete',{ref:\"subUnitDrop\",attrs:{\"items\":_vm.subUnits,\"item-text\":\"Name\",\"item-value\":\"Id\",\"label\":\"Capture SubUnit\",\"search-input\":_vm.subUnitText},on:{\"update:searchInput\":function($event){_vm.subUnitText=$event},\"update:search-input\":function($event){_vm.subUnitText=$event}},model:{value:(_vm.selectedCapture.SubUnitId),callback:function ($$v) {_vm.$set(_vm.selectedCapture, \"SubUnitId\", $$v)},expression:\"selectedCapture.SubUnitId\"}},[_c('v-list-tile',{staticStyle:{\"cursor\":\"pointer\",\"font-weight\":\"bold\"},attrs:{\"slot\":\"prepend-item\"},on:{\"click\":function($event){return _vm.addSubUnit()}},slot:\"prepend-item\"},[_vm._v(\"\\n Add Capture SubUnit\\n \")])],1)],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\"}},[_c('v-autocomplete',{ref:\"areaDrop\",attrs:{\"items\":_vm.areas,\"item-text\":\"Name\",\"item-value\":\"Id\",\"label\":\"Staging Area\",\"search-input\":_vm.areaText},on:{\"update:searchInput\":function($event){_vm.areaText=$event},\"update:search-input\":function($event){_vm.areaText=$event}},model:{value:(_vm.selectedCapture.StagingAreaId),callback:function ($$v) {_vm.$set(_vm.selectedCapture, \"StagingAreaId\", $$v)},expression:\"selectedCapture.StagingAreaId\"}},[_c('v-list-tile',{staticStyle:{\"cursor\":\"pointer\",\"font-weight\":\"bold\"},attrs:{\"slot\":\"prepend-item\"},on:{\"click\":function($event){return _vm.addArea()}},slot:\"prepend-item\"},[_vm._v(\"\\n Add Staging Area\\n \")])],1)],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\"}},[_c('v-text-field',{attrs:{\"label\":\"Capture Area\"},model:{value:(_vm.selectedCapture.CaptureArea),callback:function ($$v) {_vm.$set(_vm.selectedCapture, \"CaptureArea\", $$v)},expression:\"selectedCapture.CaptureArea\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\"}},[_c('v-select',{attrs:{\"label\":\"Survival Unit\",\"items\":_vm.survivalUnits},model:{value:(_vm.selectedCapture.SurvivalUnit),callback:function ($$v) {_vm.$set(_vm.selectedCapture, \"SurvivalUnit\", $$v)},expression:\"selectedCapture.SurvivalUnit\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\"}},[_c('v-select',{attrs:{\"items\":_vm.chasetimes,\"label\":\"Chase Time\"},model:{value:(_vm.selectedCapture.ChaseTime),callback:function ($$v) {_vm.$set(_vm.selectedCapture, \"ChaseTime\", $$v)},expression:\"selectedCapture.ChaseTime\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\"}},[_c('v-text-field',{attrs:{\"label\":\"Time At Capture\"},model:{value:(_vm.selectedCapture.TimeAtCapture),callback:function ($$v) {_vm.$set(_vm.selectedCapture, \"TimeAtCapture\", $$v)},expression:\"selectedCapture.TimeAtCapture\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\"}},[_c('v-text-field',{attrs:{\"label\":\"Arrival Time\"},model:{value:(_vm.selectedCapture.ArrivalTime),callback:function ($$v) {_vm.$set(_vm.selectedCapture, \"ArrivalTime\", $$v)},expression:\"selectedCapture.ArrivalTime\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\"}},[_c('v-text-field',{attrs:{\"label\":\"Release Time\"},model:{value:(_vm.selectedCapture.ReleaseTime),callback:function ($$v) {_vm.$set(_vm.selectedCapture, \"ReleaseTime\", $$v)},expression:\"selectedCapture.ReleaseTime\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\"}},[_c('v-text-field',{attrs:{\"label\":\"Waypoint\"},model:{value:(_vm.selectedCapture.Waypoint),callback:function ($$v) {_vm.$set(_vm.selectedCapture, \"Waypoint\", $$v)},expression:\"selectedCapture.Waypoint\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\"}},[_c('v-text-field',{attrs:{\"label\":\"Latitude\"},model:{value:(_vm.selectedCapture.Latitude),callback:function ($$v) {_vm.$set(_vm.selectedCapture, \"Latitude\", $$v)},expression:\"selectedCapture.Latitude\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\"}},[_c('v-text-field',{attrs:{\"label\":\"Longitude\"},model:{value:(_vm.selectedCapture.Longitude),callback:function ($$v) {_vm.$set(_vm.selectedCapture, \"Longitude\", $$v)},expression:\"selectedCapture.Longitude\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\"}},[_c('v-text-field',{attrs:{\"type\":\"number\",\"label\":\"Temperature At Capture\"},model:{value:(_vm.selectedCapture.TempAtCapture),callback:function ($$v) {_vm.$set(_vm.selectedCapture, \"TempAtCapture\", $$v)},expression:\"selectedCapture.TempAtCapture\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\"}},[_c('v-text-field',{attrs:{\"type\":\"number\",\"label\":\"Temp 1\"},model:{value:(_vm.selectedCapture.Temp1),callback:function ($$v) {_vm.$set(_vm.selectedCapture, \"Temp1\", $$v)},expression:\"selectedCapture.Temp1\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\"}},[_c('v-text-field',{attrs:{\"type\":\"number\",\"label\":\"Temp 2\"},model:{value:(_vm.selectedCapture.Temp2),callback:function ($$v) {_vm.$set(_vm.selectedCapture, \"Temp2\", $$v)},expression:\"selectedCapture.Temp2\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\"}},[_c('v-text-field',{attrs:{\"type\":\"number\",\"label\":\"Temp 3\"},model:{value:(_vm.selectedCapture.Temp3),callback:function ($$v) {_vm.$set(_vm.selectedCapture, \"Temp3\", $$v)},expression:\"selectedCapture.Temp3\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\"}},[_c('v-text-field',{attrs:{\"label\":\"Time 1\"},model:{value:(_vm.selectedCapture.Time1),callback:function ($$v) {_vm.$set(_vm.selectedCapture, \"Time1\", $$v)},expression:\"selectedCapture.Time1\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\"}},[_c('v-text-field',{attrs:{\"label\":\"Time 2\"},model:{value:(_vm.selectedCapture.Time2),callback:function ($$v) {_vm.$set(_vm.selectedCapture, \"Time2\", $$v)},expression:\"selectedCapture.Time2\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\"}},[_c('v-text-field',{attrs:{\"label\":\"Time 3\"},model:{value:(_vm.selectedCapture.Time3),callback:function ($$v) {_vm.$set(_vm.selectedCapture, \"Time3\", $$v)},expression:\"selectedCapture.Time3\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\"}},[_c('v-text-field',{attrs:{\"type\":\"number\",\"label\":\"Heart Rate\"},model:{value:(_vm.selectedCapture.HeartRate),callback:function ($$v) {_vm.$set(_vm.selectedCapture, \"HeartRate\", $$v)},expression:\"selectedCapture.HeartRate\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\"}},[_c('v-text-field',{attrs:{\"type\":\"number\",\"label\":\"Respiratory Rate\"},model:{value:(_vm.selectedCapture.RespiratoryRate),callback:function ($$v) {_vm.$set(_vm.selectedCapture, \"RespiratoryRate\", $$v)},expression:\"selectedCapture.RespiratoryRate\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\"}},[_c('v-checkbox',{attrs:{\"label\":\"Drugs Administered?\"},model:{value:(_vm.selectedCapture.AreDrugsAdministered),callback:function ($$v) {_vm.$set(_vm.selectedCapture, \"AreDrugsAdministered\", $$v)},expression:\"selectedCapture.AreDrugsAdministered\"}})],1),(_vm.selectedCapture.AreDrugsAdministered)?_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\"}},[_c('v-text-field',{attrs:{\"label\":\"Drug Details\"},model:{value:(_vm.selectedCapture.DrugDetails),callback:function ($$v) {_vm.$set(_vm.selectedCapture, \"DrugDetails\", $$v)},expression:\"selectedCapture.DrugDetails\"}})],1):_vm._e()],1),_c('h1',[_vm._v(\"Measurements:\")]),_c('v-layout',{attrs:{\"wrap\":\"\"}},[_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\"}},[_c('v-text-field',{attrs:{\"label\":\"Weight(kg)\",\"type\":\"number\"},model:{value:(_vm.selectedCapture.Weight),callback:function ($$v) {_vm.$set(_vm.selectedCapture, \"Weight\", $$v)},expression:\"selectedCapture.Weight\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\"}},[_c('v-text-field',{attrs:{\"label\":\"Age\",\"type\":\"number\"},model:{value:(_vm.selectedCapture.Age),callback:function ($$v) {_vm.$set(_vm.selectedCapture, \"Age\", $$v)},expression:\"selectedCapture.Age\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\"}},[_c('v-autocomplete',{attrs:{\"item-text\":\"FullName\",\"item-value\":\"UserId\",\"items\":_vm.users,\"label\":\"Ager\",\"search-input\":_vm.agerText},on:{\"update:searchInput\":function($event){_vm.agerText=$event},\"update:search-input\":function($event){_vm.agerText=$event}},model:{value:(_vm.selectedCapture.AgerUserId),callback:function ($$v) {_vm.$set(_vm.selectedCapture, \"AgerUserId\", $$v)},expression:\"selectedCapture.AgerUserId\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\"}},[_c('v-text-field',{attrs:{\"label\":\"Chest(cm)\",\"type\":\"number\"},model:{value:(_vm.selectedCapture.Chest),callback:function ($$v) {_vm.$set(_vm.selectedCapture, \"Chest\", $$v)},expression:\"selectedCapture.Chest\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\"}},[_c('v-text-field',{attrs:{\"label\":\"Body Length\",\"type\":\"number\"},model:{value:(_vm.selectedCapture.BodyLength),callback:function ($$v) {_vm.$set(_vm.selectedCapture, \"BodyLength\", $$v)},expression:\"selectedCapture.BodyLength\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\"}},[_c('v-text-field',{attrs:{\"label\":\"Neck(cm)\",\"type\":\"number\"},model:{value:(_vm.selectedCapture.Neck),callback:function ($$v) {_vm.$set(_vm.selectedCapture, \"Neck\", $$v)},expression:\"selectedCapture.Neck\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\"}},[_c('v-text-field',{attrs:{\"label\":\"Hind Foot Length(cm)\",\"type\":\"number\"},model:{value:(_vm.selectedCapture.Hoof),callback:function ($$v) {_vm.$set(_vm.selectedCapture, \"Hoof\", $$v)},expression:\"selectedCapture.Hoof\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\"}},[_c('v-text-field',{attrs:{\"label\":\"Metatarsus Length(cm)\",\"type\":\"number\"},model:{value:(_vm.selectedCapture.Metatarsus),callback:function ($$v) {_vm.$set(_vm.selectedCapture, \"Metatarsus\", $$v)},expression:\"selectedCapture.Metatarsus\"}})],1)],1),_c('h1',[_vm._v(\"Collar:\")]),_c('v-layout',{attrs:{\"wrap\":\"\"}},[_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\"}},[_c('v-autocomplete',{ref:\"collarDrop\",attrs:{\"items\":_vm.collarCodes,\"label\":\"Collar Code\",\"item-value\":\"CollarId\",\"item-text\":\"CollarCode\",\"search-input\":_vm.collarCodeText},on:{\"update:searchInput\":function($event){_vm.collarCodeText=$event},\"update:search-input\":function($event){_vm.collarCodeText=$event}},model:{value:(_vm.selectedCapture.CollarId),callback:function ($$v) {_vm.$set(_vm.selectedCapture, \"CollarId\", $$v)},expression:\"selectedCapture.CollarId\"}},[_c('v-list-tile',{staticStyle:{\"cursor\":\"pointer\",\"font-weight\":\"bold\"},attrs:{\"slot\":\"prepend-item\"},on:{\"click\":function($event){return _vm.addCollarCode()}},slot:\"prepend-item\"},[_vm._v(\"\\n Add Collar\\n \")])],1)],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\"}},[_c('v-autocomplete',{attrs:{\"items\":_vm.eartags,\"label\":\"Ear Tag Num\"},model:{value:(_vm.selectedCapture.EarTagNumber),callback:function ($$v) {_vm.$set(_vm.selectedCapture, \"EarTagNumber\", $$v)},expression:\"selectedCapture.EarTagNumber\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\"}},[_c('v-select',{attrs:{\"items\":_vm.tagColors,\"label\":\"Ear Tag Color\"},model:{value:(_vm.selectedCapture.EarTagColor),callback:function ($$v) {_vm.$set(_vm.selectedCapture, \"EarTagColor\", $$v)},expression:\"selectedCapture.EarTagColor\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\"}},[_c('v-text-field',{attrs:{\"label\":\"Drug Tag Number\",\"type\":\"number\"},model:{value:(_vm.selectedCapture.DrugTagNum),callback:function ($$v) {_vm.$set(_vm.selectedCapture, \"DrugTagNum\", $$v)},expression:\"selectedCapture.DrugTagNum\"}})],1)],1),_c('h1',[_vm._v(\"Condition:\")]),_c('v-layout',{attrs:{\"wrap\":\"\"}},[_c('v-flex',[_c('v-text-field',{attrs:{\"disabled\":\"\",\"label\":\"IFBF\",\"type\":\"number\"},model:{value:(_vm.selectedCapture.IFBF),callback:function ($$v) {_vm.$set(_vm.selectedCapture, \"IFBF\", $$v)},expression:\"selectedCapture.IFBF\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\"}},[_c('v-text-field',{attrs:{\"label\":\"Body Condition Score\"},model:{value:(_vm.selectedCapture.BodyConditionScore),callback:function ($$v) {_vm.$set(_vm.selectedCapture, \"BodyConditionScore\", $$v)},expression:\"selectedCapture.BodyConditionScore\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\"}},[_c('v-autocomplete',{attrs:{\"item-text\":\"FullName\",\"item-value\":\"UserId\",\"items\":_vm.users,\"label\":\"Scored By\",\"search-input\":_vm.scorerText},on:{\"update:searchInput\":function($event){_vm.scorerText=$event},\"update:search-input\":function($event){_vm.scorerText=$event}},model:{value:(_vm.selectedCapture.ScoredByUserId),callback:function ($$v) {_vm.$set(_vm.selectedCapture, \"ScoredByUserId\", $$v)},expression:\"selectedCapture.ScoredByUserId\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\"}},[_c('v-text-field',{attrs:{\"label\":\"Rump Fat(mm)\",\"type\":\"number\"},model:{value:(_vm.selectedCapture.RumpFat),callback:function ($$v) {_vm.$set(_vm.selectedCapture, \"RumpFat\", $$v)},expression:\"selectedCapture.RumpFat\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\"}},[_c('v-text-field',{attrs:{\"label\":\"Loin(mm)\",\"type\":\"number\"},model:{value:(_vm.selectedCapture.Loin),callback:function ($$v) {_vm.$set(_vm.selectedCapture, \"Loin\", $$v)},expression:\"selectedCapture.Loin\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\"}},[_c('v-select',{attrs:{\"items\":_vm.lactations,\"label\":\"Lactation\"},model:{value:(_vm.selectedCapture.Lactation),callback:function ($$v) {_vm.$set(_vm.selectedCapture, \"Lactation\", $$v)},expression:\"selectedCapture.Lactation\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\"}},[_c('v-select',{attrs:{\"items\":_vm.testicleSize,\"label\":\"Testicle Size\"},model:{value:(_vm.selectedCapture.TesticleSize),callback:function ($$v) {_vm.$set(_vm.selectedCapture, \"TesticleSize\", $$v)},expression:\"selectedCapture.TesticleSize\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\"}},[_c('v-select',{attrs:{\"items\":_vm.twins,\"item-value\":\"Value\",\"item-text\":\"Name\",\"label\":\"Pregnant\"},model:{value:(_vm.selectedCapture.Pregnant),callback:function ($$v) {_vm.$set(_vm.selectedCapture, \"Pregnant\", $$v)},expression:\"selectedCapture.Pregnant\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\"}},[_c('v-select',{attrs:{\"items\":_vm.twins,\"item-value\":\"Value\",\"item-text\":\"Name\",\"label\":\"Twins\"},model:{value:(_vm.selectedCapture.Twins),callback:function ($$v) {_vm.$set(_vm.selectedCapture, \"Twins\", $$v)},expression:\"selectedCapture.Twins\"}})],1)],1),_c('h1',[_vm._v(\"Samples:\")]),_c('v-layout',{attrs:{\"wrap\":\"\"}},[_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\"}},[_c('v-text-field',{attrs:{\"label\":\"Blood Sample\"},model:{value:(_vm.selectedCapture.BloodSample),callback:function ($$v) {_vm.$set(_vm.selectedCapture, \"BloodSample\", $$v)},expression:\"selectedCapture.BloodSample\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\"}},[_c('v-text-field',{attrs:{\"label\":\"CWD Sample\"},model:{value:(_vm.selectedCapture.CWDSample),callback:function ($$v) {_vm.$set(_vm.selectedCapture, \"CWDSample\", $$v)},expression:\"selectedCapture.CWDSample\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\"}},[_c('v-text-field',{attrs:{\"label\":\"Fecal Sample\"},model:{value:(_vm.selectedCapture.FecalSample),callback:function ($$v) {_vm.$set(_vm.selectedCapture, \"FecalSample\", $$v)},expression:\"selectedCapture.FecalSample\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\"}},[_c('v-text-field',{attrs:{\"label\":\"Lactate\"},model:{value:(_vm.selectedCapture.Lactate),callback:function ($$v) {_vm.$set(_vm.selectedCapture, \"Lactate\", $$v)},expression:\"selectedCapture.Lactate\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\"}},[_c('v-text-field',{attrs:{\"label\":\"Archive Id\",\"type\":\"number\"},model:{value:(_vm.selectedCapture.ArchiveId),callback:function ($$v) {_vm.$set(_vm.selectedCapture, \"ArchiveId\", $$v)},expression:\"selectedCapture.ArchiveId\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\"}},[_c('v-select',{attrs:{\"items\":_vm.twins,\"item-value\":\"Value\",\"item-text\":\"Name\",\"label\":\"Injections\"},model:{value:(_vm.selectedCapture.Injections),callback:function ($$v) {_vm.$set(_vm.selectedCapture, \"Injections\", $$v)},expression:\"selectedCapture.Injections\"}})],1)],1),_c('h1',[_vm._v(\"Neonates:\")]),_c('v-layout',{attrs:{\"wrap\":\"\"}},[_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\"}},[_c('v-text-field',{attrs:{\"label\":\"Neonate Hoof Growth(cm)\",\"type\":\"number\"},model:{value:(_vm.selectedCapture.NeonateHoof),callback:function ($$v) {_vm.$set(_vm.selectedCapture, \"NeonateHoof\", $$v)},expression:\"selectedCapture.NeonateHoof\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\"}},[_c('v-text-field',{attrs:{\"label\":\"Twin1\"},model:{value:(_vm.selectedCapture.Twin1Id),callback:function ($$v) {_vm.$set(_vm.selectedCapture, \"Twin1Id\", $$v)},expression:\"selectedCapture.Twin1Id\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\"}},[_c('v-text-field',{attrs:{\"label\":\"Twin2\"},model:{value:(_vm.selectedCapture.Twin2Id),callback:function ($$v) {_vm.$set(_vm.selectedCapture, \"Twin2Id\", $$v)},expression:\"selectedCapture.Twin2Id\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\"}},[_c('v-text-field',{attrs:{\"type\":\"number\",\"label\":\"Total Time in Area (mins)\"},model:{value:(_vm.selectedCapture.TotalTimeInArea),callback:function ($$v) {_vm.$set(_vm.selectedCapture, \"TotalTimeInArea\", $$v)},expression:\"selectedCapture.TotalTimeInArea\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\"}},[_c('v-menu',{attrs:{\"close-on-content-click\":false,\"nudge-right\":40,\"lazy\":\"\",\"transition\":\"scale-transition\",\"offset-y\":\"\",\"full-width\":\"\",\"max-width\":\"290px\",\"min-width\":\"290px\"}},[_c('v-text-field',{attrs:{\"slot\":\"activator\",\"label\":\"Trigger Email Date\",\"prepend-icon\":\"event\"},on:{\"blur\":function($event){_vm.triggerEmailDate = _vm.parseDates(_vm.selectedCapture.TriggerEmailDateStr)}},slot:\"activator\",model:{value:(_vm.selectedCapture.TriggerEmailDateStr),callback:function ($$v) {_vm.$set(_vm.selectedCapture, \"TriggerEmailDateStr\", $$v)},expression:\"selectedCapture.TriggerEmailDateStr\"}}),_c('v-date-picker',{attrs:{\"no-title\":\"\"},model:{value:(_vm.triggerEmailDate),callback:function ($$v) {_vm.triggerEmailDate=$$v},expression:\"triggerEmailDate\"}})],1)],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\"}},[_c('v-text-field',{attrs:{\"label\":\"Trigger Email Time\"},model:{value:(_vm.selectedCapture.TriggerEmailTime),callback:function ($$v) {_vm.$set(_vm.selectedCapture, \"TriggerEmailTime\", $$v)},expression:\"selectedCapture.TriggerEmailTime\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\"}},[_c('v-text-field',{attrs:{\"label\":\"VIT Latitude\"},model:{value:(_vm.selectedCapture.VitLatitude),callback:function ($$v) {_vm.$set(_vm.selectedCapture, \"VitLatitude\", $$v)},expression:\"selectedCapture.VitLatitude\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\"}},[_c('v-text-field',{attrs:{\"label\":\"VIT Longitude\"},model:{value:(_vm.selectedCapture.VitLongitude),callback:function ($$v) {_vm.$set(_vm.selectedCapture, \"VitLongitude\", $$v)},expression:\"selectedCapture.VitLongitude\"}})],1)],1),_c('h1',[_vm._v(\"Antler Measurements:\")]),_c('v-layout',{attrs:{\"wrap\":\"\"}},[_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\"}},[_c('v-select',{attrs:{\"items\":_vm.twins,\"item-value\":\"Value\",\"item-text\":\"Name\",\"label\":\"Velvet\"},model:{value:(_vm.selectedCapture.Velvet),callback:function ($$v) {_vm.$set(_vm.selectedCapture, \"Velvet\", $$v)},expression:\"selectedCapture.Velvet\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\"}},[_c('v-text-field',{attrs:{\"label\":\"Left Points\",\"type\":\"number\"},model:{value:(_vm.selectedCapture.LeftPoints),callback:function ($$v) {_vm.$set(_vm.selectedCapture, \"LeftPoints\", $$v)},expression:\"selectedCapture.LeftPoints\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\"}},[_c('v-text-field',{attrs:{\"label\":\"Right Points\",\"type\":\"number\"},model:{value:(_vm.selectedCapture.RightPoints),callback:function ($$v) {_vm.$set(_vm.selectedCapture, \"RightPoints\", $$v)},expression:\"selectedCapture.RightPoints\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\"}},[_c('v-text-field',{attrs:{\"label\":\"Left Beam Length\",\"type\":\"number\"},model:{value:(_vm.selectedCapture.LeftBeamLength),callback:function ($$v) {_vm.$set(_vm.selectedCapture, \"LeftBeamLength\", $$v)},expression:\"selectedCapture.LeftBeamLength\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\"}},[_c('v-text-field',{attrs:{\"label\":\"Right Beam Length\",\"type\":\"number\"},model:{value:(_vm.selectedCapture.RightBeamLength),callback:function ($$v) {_vm.$set(_vm.selectedCapture, \"RightBeamLength\", $$v)},expression:\"selectedCapture.RightBeamLength\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\"}},[_c('v-text-field',{attrs:{\"label\":\"Spread\",\"type\":\"number\"},model:{value:(_vm.selectedCapture.Spread),callback:function ($$v) {_vm.$set(_vm.selectedCapture, \"Spread\", $$v)},expression:\"selectedCapture.Spread\"}})],1)],1),_c('h1',[_vm._v(\"Blood Samples:\")]),_c('v-layout',{attrs:{\"wrap\":\"\"}},[_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\"}},[_c('v-text-field',{attrs:{\"label\":\"Calcium\",\"type\":\"number\"},model:{value:(_vm.selectedCapture.Calcium),callback:function ($$v) {_vm.$set(_vm.selectedCapture, \"Calcium\", $$v)},expression:\"selectedCapture.Calcium\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\"}},[_c('v-text-field',{attrs:{\"label\":\"Copper\",\"type\":\"number\"},model:{value:(_vm.selectedCapture.Copper),callback:function ($$v) {_vm.$set(_vm.selectedCapture, \"Copper\", $$v)},expression:\"selectedCapture.Copper\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\"}},[_c('v-text-field',{attrs:{\"label\":\"Iron\",\"type\":\"number\"},model:{value:(_vm.selectedCapture.Iron),callback:function ($$v) {_vm.$set(_vm.selectedCapture, \"Iron\", $$v)},expression:\"selectedCapture.Iron\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\"}},[_c('v-text-field',{attrs:{\"label\":\"Potassium\",\"type\":\"number\"},model:{value:(_vm.selectedCapture.Potassium),callback:function ($$v) {_vm.$set(_vm.selectedCapture, \"Potassium\", $$v)},expression:\"selectedCapture.Potassium\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\"}},[_c('v-text-field',{attrs:{\"label\":\"Magnesium\",\"type\":\"number\"},model:{value:(_vm.selectedCapture.Magnesium),callback:function ($$v) {_vm.$set(_vm.selectedCapture, \"Magnesium\", $$v)},expression:\"selectedCapture.Magnesium\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\"}},[_c('v-text-field',{attrs:{\"label\":\"Manganese\",\"type\":\"number\"},model:{value:(_vm.selectedCapture.Manganese),callback:function ($$v) {_vm.$set(_vm.selectedCapture, \"Manganese\", $$v)},expression:\"selectedCapture.Manganese\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\"}},[_c('v-text-field',{attrs:{\"label\":\"Molybdenum\",\"type\":\"number\"},model:{value:(_vm.selectedCapture.Molybdenum),callback:function ($$v) {_vm.$set(_vm.selectedCapture, \"Molybdenum\", $$v)},expression:\"selectedCapture.Molybdenum\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\"}},[_c('v-text-field',{attrs:{\"label\":\"Phosphorus\",\"type\":\"number\"},model:{value:(_vm.selectedCapture.Phosphorus),callback:function ($$v) {_vm.$set(_vm.selectedCapture, \"Phosphorus\", $$v)},expression:\"selectedCapture.Phosphorus\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\"}},[_c('v-text-field',{attrs:{\"label\":\"Selenium\",\"type\":\"number\"},model:{value:(_vm.selectedCapture.Selenium),callback:function ($$v) {_vm.$set(_vm.selectedCapture, \"Selenium\", $$v)},expression:\"selectedCapture.Selenium\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\"}},[_c('v-text-field',{attrs:{\"label\":\"Zinc\",\"type\":\"number\"},model:{value:(_vm.selectedCapture.Zinc),callback:function ($$v) {_vm.$set(_vm.selectedCapture, \"Zinc\", $$v)},expression:\"selectedCapture.Zinc\"}})],1)],1),_c('h1',[_vm._v(\"Comments:\")]),_c('v-layout',[_c('v-flex',[_c('v-textarea',{model:{value:(_vm.selectedCapture.Comments),callback:function ($$v) {_vm.$set(_vm.selectedCapture, \"Comments\", $$v)},expression:\"selectedCapture.Comments\"}})],1)],1),_c('v-layout',{attrs:{\"column\":\"\",\"justify-start\":\"\"}},[_c('v-flex',[_c('v-btn',{attrs:{\"label\":\"\"},on:{\"click\":_vm.pickFile}},[_vm._v(\"Select Images\")]),_c('input',{ref:\"image\",staticStyle:{\"display\":\"none\"},attrs:{\"type\":\"file\",\"multiple\":\"\",\"accept\":\"image/*\"},on:{\"change\":_vm.onFilePicked}})],1),_vm._l((_vm.imgLinks),function(file,index){return _c('v-flex',{key:file.name},[_c('img',{attrs:{\"src\":file,\"height\":\"150\"}}),_c('v-btn',{staticStyle:{\"color\":\"white\"},attrs:{\"color\":\"#B3041A\"},on:{\"click\":function($event){return _vm.deleteUploaded(index)}}},[_vm._v(\"Delete\\n \")])],1)}),_vm._l((_vm.captureImages),function(file,index){return _c('v-flex',{key:file.Name},[_c('img',{attrs:{\"src\":file.ImageURL,\"height\":\"150\"}}),(_vm.user.RoleId == 1)?_c('span',[_c('v-btn',{staticStyle:{\"color\":\"white\"},attrs:{\"color\":\"#B3041A\"},on:{\"click\":function($event){return _vm.deleteImage(file.CaptureImageId, index)}}},[_vm._v(\"\\n Delete\\n \")])],1):_vm._e()])})],2)],1)],1)],1),_c('v-divider'),_c('v-card-actions',{attrs:{\"absolute\":\"\"}},[_c('v-spacer'),_c('v-btn',{attrs:{\"color\":\"blue darken-1\",\"flat\":\"\"},nativeOn:{\"click\":function($event){return _vm.close($event)}}},[_vm._v(\"Cancel\")]),_c('v-btn',{attrs:{\"color\":\"blue darken-1\",\"disabled\":!_vm.valid,\"flat\":\"\"},nativeOn:{\"click\":function($event){return _vm.save($event)}}},[_vm._v(\"Save\")])],1)],1)],1),_c('v-dialog',{attrs:{\"max-width\":\"290\"},model:{value:(_vm.confirmdialog),callback:function ($$v) {_vm.confirmdialog=$$v},expression:\"confirmdialog\"}},[_c('v-card',[_c('v-card-title',{staticClass:\"headline\"},[_vm._v(_vm._s(_vm.title))]),_c('v-card-text',[_vm._v(_vm._s(_vm.message))]),_c('v-card-actions',[_c('v-spacer'),_c('v-btn',{attrs:{\"color\":\"green darken-1\",\"flat\":\"flat\"},on:{\"click\":function($event){_vm.confirmdialog = false}}},[_vm._v(\"Close\")]),(_vm.redirect)?_c('v-btn',{attrs:{\"color\":\"green darken-1\",\"flat\":\"flat\"},on:{\"click\":_vm.redirectUrl}},[_vm._v(\"Redirect\")]):_vm._e()],1)],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","export default class Unit {\n public UnitId: number;\n private Name: string;\n private Abbreviation: string;\n private Archived: boolean;\n\n\n constructor(\n $UnitId: number, $Name: string, $Abbreviation: string,\n $Archived: boolean) {\n this.UnitId = $UnitId;\n this.Name = $Name;\n this.Abbreviation = $Abbreviation;\n this.Archived = $Archived;\n }\n // @ts-ignore\n constructor();\n\n fromJSON(json: any) {\n this.UnitId = json.UnitId;\n this.Name = json.Name;\n this.Abbreviation = json.Abbreviation;\n this.Archived = json.Archived;\n }\n\n getUnitId(): number {\n return this.UnitId;\n }\n\n getName(): string {\n return this.Name\n }\n\n setId(Id: number) {\n this.UnitId = Id;\n }\n\n unarchive() {\n this.Archived = false;\n }\n\n archive() {\n this.Archived = true;\n }\n}","export default class Collar {\n private CollarId: number;\n private CollarSerialNumber: string;\n private CollarCode: string;\n private CollarFreq: string;\n private Archived: boolean;\n private ManufactureDate?: Date;\n\n\n constructor(\n $CollarId: number, $CollarSerialNumber: string, $CollarCode: string,\n $CollarFreq: string, $Archived: boolean, $ManufactureDate?: Date) {\n this.CollarId = $CollarId;\n this.CollarSerialNumber = $CollarSerialNumber;\n this.CollarCode = $CollarCode;\n this.CollarFreq = $CollarFreq;\n this.Archived = $Archived;\n this.ManufactureDate = $ManufactureDate;\n }\n // @ts-ignore\n constructor();\n\n fromJSON(json: any) {\n this.CollarId = json.CollarId;\n this.CollarSerialNumber = json.CollarSerialNumber;\n this.CollarCode = json.CollarCode;\n this.CollarFreq = json.CollarFreq;\n this.Archived = json.Archived;\n this.ManufactureDate = json.ManufactureDate;\n }\n\n getId(): number {\n return this.CollarId;\n }\n\n getCollarCode(): string {\n return this.CollarCode;\n }\n\n setCollarId(Id: number) {\n this.CollarId = Id;\n }\n\n unarchive() {\n this.Archived = false;\n }\n\n archive() {\n this.Archived = true;\n }\n\n setId(Id: number) {\n this.CollarId = Id;\n }\n}","export default class CaptureImage {\n public CaptureImageId: number;\n private ImageURL: string;\n private CaptureId: number;\n private Name: string;\n\n\n constructor(\n $CaptureImageId: number, $ImageURL: string, $CaptureId: number,\n $Name: string) {\n this.CaptureImageId = $CaptureImageId;\n this.ImageURL = $ImageURL;\n this.CaptureId = $CaptureId;\n this.Name = $Name;\n }\n\n static fromJSON(json: any): CaptureImage {\n return new CaptureImage(\n json['captureImageId'],\n 'https://animaltracker-files.byu.edu' + json['imageURL'],\n json['captureId'],\n json['name'],\n );\n }\n}","export default class SubUnit {\n public Id: number;\n public Name: string;\n public Abbreviation: string;\n public Archived: boolean;\n // @ts-ignore\n constructor();\n\n fromJSON(json: any) {\n this.Id = json.id;\n this.Name = json.name;\n this.Abbreviation = json.abbreviation;\n this.Archived = json.archived;\n }\n}","\n\n\n\n\n\n\nimport { Component, Prop, Vue, Watch } from \"vue-property-decorator\";\nimport { State } from \"vuex-class\";\n\nimport Animal from \"@/models/Animal.ts\";\nimport Capture from \"@/models/Capture\";\nimport { store } from \"@/store/store\";\nimport {\n toggleFlagService,\n toggleCaptureFlagService,\n getUnits,\n getStagingAreas,\n getUsers,\n putCapture,\n putAnimal,\n postCapture,\n postAnimal,\n getUser,\n getUnarchivedUsers,\n postCaptureImage,\n getCaptureImages,\n deleteCaptureImageById,\n postCollar,\n postStagingArea,\n postUnit,\n getSubUnits,\n postSubUnit,\n} from \"@/services/services\";\nimport { formatDate, parseDate } from \"@/util/dateutil\";\nimport Unit from \"@/models/Unit\";\nimport StagingArea from \"@/models/StagingArea\";\nimport Collar from \"@/models/Collar\";\nimport User from \"@/models/User\";\nimport CaptureImage from \"@/models/CaptureImage\";\nimport SubUnit from \"@/models/SubUnit\";\n\n@Component({})\nexport default class CaptureEdit extends Vue {\n @State\n private selectedCapture!: Capture;\n @State\n private dialog!: boolean;\n @State\n private user!: User;\n @State\n private token!: string;\n @State\n private selectedAnimal!: Animal;\n @Prop()\n private collarCodes!: Collar[];\n private title: string;\n private confirmdialog: boolean;\n private message: string;\n private editedIndex: number;\n private radios: string;\n private units: Unit[];\n private subUnits: SubUnit[];\n private areas: StagingArea[];\n private defaultCapture: Capture;\n private search: string[];\n private valid: boolean;\n private pending: boolean;\n private redirect: boolean;\n private captureDate: string;\n private imgLinks: File[];\n private selectedFiles: File[];\n private agerText: string;\n private scorerText: string;\n private captureImages: CaptureImage[];\n\n private triggerEmailDate: string;\n\n private tagColors: string[] = [\n \"N/A\",\n \"White\",\n \"Green\",\n \"Blue\",\n \"Red\",\n \"Pink\",\n \"Yellow\",\n \"Orange\",\n \"Purple\",\n ];\n private filters: {} = {\n search: \"\",\n UniqueId: \"\",\n State: [],\n Pending: false,\n };\n private chasetimes: string[] = [\n \"< 1 minute\",\n \"1 - 3 minute\",\n \"3 - 5 minute\",\n \"> 5 minute\",\n ];\n private testicleSize: {}[] = [\"\", 1, 2, 3, 4, 5];\n private lactations: {}[] = [\"\", 0, 0.25, 0.5, 0.75, 1];\n private twins: {}[] = [\n { Name: \"Yes\", Value: true },\n { Name: \"No\", Value: false },\n { Name: \"N/A\", Value: null },\n ];\n private eartags: number[];\n private users: User[];\n private collarCodeText: string;\n private areaText: string;\n private unitText: string;\n private subUnitText: string;\n private survivalUnits: string[];\n\n constructor() {\n super();\n this.redirect = false;\n this.editedIndex = -1;\n this.valid = false;\n this.search = [];\n this.pending = false;\n this.radios = \"Captures\";\n this.defaultCapture = new Capture();\n this.defaultCapture;\n this.captureDate = \"\";\n this.triggerEmailDate = \"\";\n this.units = [];\n this.subUnits = [];\n this.areas = [];\n this.users = [];\n this.confirmdialog = false;\n this.message = \"\";\n this.title = \"\";\n this.imgLinks = [];\n this.captureImages = [];\n this.selectedFiles = [];\n this.collarCodeText = \"\";\n this.areaText = \"\";\n this.unitText = \"\";\n this.subUnitText = \"\";\n this.agerText = \"\";\n this.scorerText = \"\";\n this.survivalUnits = [\n \"Cache\",\n \"South Slope\",\n \"Wasatch-Manti\",\n \"Oquirrh-Stansbury\",\n \"San Juan\",\n \"Monroe\",\n \"Pine Valley\",\n ];\n this.eartags = this.getOneThroughEightHundred();\n this.getCaptureUnits();\n this.getCaptureSubUnits();\n this.getStagingAreas();\n this.getUsers();\n }\n\n required(value: string) {\n return !!value || \"Required\";\n }\n openDialog() {\n this.defaultCapture = new Capture();\n this.defaultCapture.setCollarId(this.selectedAnimal.getCollarId());\n this.defaultCapture.setAnimalId(this.selectedAnimal.getUniqueId());\n this.defaultCapture.setSpecies(this.selectedAnimal.getSpecies()); // needed for calculating IFBF\n // let date = formatDate(new Date().toISOString().substr(0, 10));\n // this.defaultCapture.setCaptureDateStr(date!);\n store.commit(\"setCapture\", this.defaultCapture);\n store.commit(\"setCaptureDialog\", true);\n }\n\n close() {\n this.selectedFiles = [];\n this.imgLinks = [];\n store.commit(\"setCaptureDialog\", false);\n this.redirect = false;\n setTimeout(() => {\n store.commit(\"setCapture\", new Capture());\n // @ts-ignore\n this.$refs.pform.reset();\n this.editedIndex = -1;\n }, 300);\n }\n\n @Watch(\"captureDate\")\n checkDateAdd(val: string) {\n let date = formatDate(this.captureDate);\n if (date) {\n this.selectedCapture!.setCaptureDateStr(date);\n }\n }\n\n @Watch(\"triggerEmailDate\")\n checkTriggerDateAdd(val: string) {\n let date = formatDate(this.triggerEmailDate);\n if (date) {\n this.selectedCapture!.setTriggerEmailDateStr(date);\n }\n }\n\n @Watch(\"selectedCapture.BodyConditionScore\")\n updateBCS(val: number) {\n this.selectedCapture.calculateIFBF();\n }\n\n @Watch(\"selectedCapture.RumpFat\")\n updateRumpFat(val: number) {\n this.selectedCapture.calculateIFBF();\n }\n\n @Watch(\"selectedCapture.Weight\")\n updateWeight(val: number) {\n this.selectedCapture.calculateIFBF();\n }\n\n @Watch(\"selectedCapture.Age\")\n updateAge(val: number) {\n this.updateChest(this.selectedCapture.Chest);\n }\n\n @Watch(\"selectedCapture.Chest\")\n updateChest(val: number) {\n if (\n this.selectedCapture.Species == \"Elk\" &&\n this.selectedCapture.Age >= 1\n ) {\n let num = 2.777 * this.selectedCapture.Chest - 193.41;\n\n // this line is to ensure it's properly rounded to 2 decimal places.\n // from a Stack Overflow answer at https://stackoverflow.com/questions/11832914/how-to-round-to-at-most-2-decimal-places-if-necessary\n num = Math.round((num + Number.EPSILON) * 100) / 100;\n this.selectedCapture.Weight = num;\n }\n }\n\n async addCollarCode() {\n //This closes the dropdown after the user clicks add collar code\n //It finds the autocomplete that has ref=collarDrop\n setTimeout(() => {\n // @ts-ignore\n this.$refs.collarDrop.blur();\n }, 50);\n\n const c = new Collar(-1, \"\", this.collarCodeText, \"\", false);\n var res = await postCollar(c, this.token);\n var id = await res.json();\n c.setId(id);\n this.collarCodes.push(c);\n this.selectedCapture.setCollarId(c.getId());\n }\n\n async addArea() {\n //This closes the dropdown after the user clicks add area\n //It finds the autocomplete that has ref=areaDrop\n setTimeout(() => {\n // @ts-ignore\n this.$refs.areaDrop.blur();\n }, 50);\n\n const c = new StagingArea(-1, this.areaText, false);\n var res = await postStagingArea(c, this.token);\n var id = await res.json();\n c.setId(id);\n this.areas.push(c);\n this.selectedCapture.setStagingAreaId(c.getId());\n }\n\n async addUnit() {\n //This closes the dropdown after the user clicks add unit\n //It finds the autocomplete that has ref=unitDrop\n setTimeout(() => {\n // @ts-ignore\n this.$refs.unitDrop.blur();\n }, 50);\n\n const c = new Unit(-1, this.unitText, \"\", false);\n var res = await postUnit(c, this.token);\n var id = await res.json();\n c.setId(id);\n this.units.push(c);\n this.selectedCapture.setUnitId(c.getUnitId());\n }\n\n async addSubUnit() {\n //This closes the dropdown after the user clicks add unit\n //It finds the autocomplete that has ref=unitDrop\n setTimeout(() => {\n // @ts-ignore\n this.$refs.unitDrop.blur();\n }, 50);\n\n let c = new SubUnit();\n c.Name = this.subUnitText;\n c.Abbreviation = \"\";\n var res = await postSubUnit(c, this.token);\n var id = await res.json();\n c.Id = id;\n this.subUnits.push(c);\n this.selectedCapture.setSubUnitId(c.Id);\n }\n\n redirectUrl() {\n this.confirmdialog = false;\n let id = this.selectedCapture.getAnimalId();\n this.$router.push(`/animal/edit/${id}`);\n }\n\n parseDates(date: string): string | undefined {\n let newdate = parseDate(date);\n return newdate;\n }\n\n async getCaptureUnits() {\n try {\n var res = await getUnits();\n var data = await res.json();\n data.forEach((element: object) => {\n const unit = new Unit();\n unit.fromJSON(element);\n this.units.push(unit);\n });\n } catch (err) {}\n }\n\n async getCaptureSubUnits() {\n try {\n var res = await getSubUnits();\n var data = await res.json();\n data.forEach((element: object) => {\n const subUnit = new SubUnit();\n subUnit.fromJSON(element);\n this.subUnits.push(subUnit);\n });\n } catch (err) {}\n }\n\n async getStagingAreas() {\n try {\n var res = await getStagingAreas();\n var data = await res.json();\n data.forEach((element: object) => {\n const area = new StagingArea();\n area.fromJSON(element);\n if (area.getArchived() == false) {\n this.areas.push(area);\n }\n });\n } catch (error) {}\n }\n\n async getUsers() {\n try {\n var res = await getUnarchivedUsers(this.token);\n var data = await res.json();\n data.forEach((element: object) => {\n const user = new User();\n user.fromJSON(element);\n this.users.push(user);\n });\n } catch (error) {}\n }\n\n getOneThroughEightHundred(): number[] {\n let list = [];\n for (var i = 1; i <= 800; i++) {\n list.push(i);\n }\n return list;\n }\n\n async copyAnimal() {\n try {\n // const tempAnimal = Object.assign({}, this.selectedAnimal);\n // tempAnimal.AnimalId = 0;\n this.selectedAnimal.setAnimalId(0);\n let result = await postAnimal(this.selectedAnimal, this.token);\n let id = await result.json();\n this.selectedCapture.setAnimalId(id);\n result = await putCapture(this.selectedCapture, this.token);\n id = await result.json();\n store.commit(\"setCaptureDialog\", false);\n this.confirmdialog = true;\n this.title = \"Coppied Capture to Animal\";\n this.message = \"Would you like to navigate to the new animal page?\";\n this.redirect = true;\n } catch (error) {\n this.close();\n //TODO: Some sort of alert here\n this.$emit(\"snackbarOpen\", {\n text: \"Failed to save capture\",\n color: \"error\",\n });\n }\n }\n\n async save() {\n try {\n this.onUpload();\n if (this.selectedCapture.getId() != undefined) {\n console.log(\"Put\", this.selectedCapture);\n // if checkbox for Drugs Administered? is unchecked, then set drugDetails to empty string\n if (!this.selectedCapture.getAreDrugsAdministered()) {\n this.selectedCapture.setDrugDetails(\"\");\n }\n let result = await putCapture(this.selectedCapture, this.token);\n } else {\n console.log(\"Post\", this.selectedCapture);\n let result = await postCapture(this.selectedCapture, this.token);\n console.log(\"Post Result\", result);\n let id = await result.json();\n this.selectedCapture.setCaptureId(id);\n\n var collar = this.collarCodes.find(\n (collar) => collar.getId() == this.selectedCapture.getCollarId()\n );\n if (collar) this.selectedCapture.setCollarCode(collar.getCollarCode());\n this.$store.commit(\"addCapture\", this.selectedCapture);\n }\n\n this.close();\n //TODO: Some sort of alert here\n // this.confirmdialog = true;\n // this.title = \"Capture Saved\";\n\n this.$emit(\"snackbarOpen\", { text: \"Capture Saved\", color: \"success\" });\n } catch (err) {\n err;\n this.close();\n //TODO: Some sort of alert here\n // this.confirmdialog = true;\n // this.title = \"Failed to Save Capture\";\n this.$emit(\"snackbarOpen\", {\n text: \"Failed to save capture\",\n color: \"error\",\n });\n }\n }\n pickFile() {\n // @ts-ignore\n this.$refs.image.click();\n }\n\n async onFilePicked(e: Event) {\n // @ts-ignore\n var files = e.target.files || [];\n\n for (var i = 0; i < files.length; i++) {\n const fr = new FileReader();\n fr.onload = (e) => {\n // @ts-ignore\n var imageUrl = e.target.result;\n // @ts-ignore\n this.imgLinks.push(imageUrl);\n };\n\n var imageFile = files[i]; // this is an image file that can be sent to server...D\n this.selectedFiles.push(imageFile);\n fr.readAsDataURL(files[i]);\n }\n }\n\n onUpload() {\n // upload file\n const formData = new FormData();\n\n if (this.selectedFiles) {\n for (var i = 0; i < this.selectedFiles.length; i++) {\n formData.append(this.selectedFiles[i].name, this.selectedFiles[i]);\n }\n if (this.selectedFiles.length > 0) {\n postCaptureImage(\n formData,\n this.selectedCapture.getCaptureId(),\n this.token\n )\n .then((res) => res)\n .catch((e) => e);\n }\n this.selectedFiles = [];\n this.imgLinks = [];\n }\n }\n\n @Watch(\"selectedCapture\")\n checkCapture(val: Capture) {\n if (val.getId()) {\n this.getImages();\n }\n }\n\n async getImages() {\n try {\n this.captureImages = [];\n this.imgLinks = [];\n var res = await getCaptureImages(\n this.selectedCapture.getCaptureId(),\n this.token\n );\n if (res.ok) {\n var data = await res.json();\n data.forEach((element: object) => {\n const image = CaptureImage.fromJSON(element);\n this.captureImages.push(image);\n });\n }\n } catch (error) {}\n }\n\n deleteUploaded(index: number) {\n this.imgLinks.splice(index, 1);\n }\n\n deleteImage(Id: number, index: number) {\n deleteCaptureImageById(Id, this.token).then(() => {\n this.captureImages.splice(index, 1);\n });\n }\n}\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CaptureEdit.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CaptureEdit.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./templates/captureEdit.html?vue&type=template&id=14ba35f0&scoped=true&\"\nimport script from \"./CaptureEdit.vue?vue&type=script&lang=ts&\"\nexport * from \"./CaptureEdit.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./CaptureEdit.vue?vue&type=style&index=0&id=14ba35f0&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 \"14ba35f0\",\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n// @ts-ignore\nimport { Component, Prop, Vue, Watch } from \"vue-property-decorator\";\nimport { State } from \"vuex-class\";\nimport User from \"@/models/User\";\nimport Animal from \"@/models/Animal.ts\";\nimport Capture from \"@/models/Capture\";\nimport CaptureEdit from \"./CaptureEdit.vue\";\nimport { store } from \"@/store/store\";\nimport {\n toggleFlagService,\n toggleCaptureFlagService,\n deleteCapture\n} from \"@/services/services\";\nimport Collar from \"@/models/Collar\";\n\n@Component({ components: { CaptureEdit } })\nexport default class Captures extends Vue {\n private headers: {}[] = [\n { text: \"Collar Code\", value: \"CollarCode\", sortable: false },\n { text: \"Date\", value: \"Date\", sortable: false },\n {\n text: \"Body Condition Score\",\n value: \"BodyConditionScore\",\n sortable: false\n },\n { text: \"Age\", value: \"Age\", sortable: false },\n { text: \"Comments\", value: \"Comments\", sortable: false },\n // { text: \"Data Valid\", value: \"Data Valid\", sortable: false },\n { text: \"\", value: \"Actions\", sortable: false }\n ];\n @State\n private captures!: Capture[];\n private confirmdialog: boolean;\n private selectedCapture: Capture;\n private selectedIndex: number;\n @State\n private dialog!: boolean;\n private defaultCapture: Capture;\n private valid: boolean;\n @State\n private user!: User;\n @State\n private token!: string;\n @Prop()\n private collarCodes!: Collar[];\n\n constructor() {\n super();\n this.defaultCapture = new Capture();\n this.selectedCapture = new Capture();\n this.confirmdialog = false;\n this.valid = false;\n\n this.selectedIndex = -1;\n }\n snackbarOpen(snack: object) {\n this.$emit(\"snackbarOpen\", snack);\n }\n\n required(value: string) {\n return !!value || \"Required\";\n }\n\n toggleFlag(capture: Capture) {\n capture.changeValid();\n toggleCaptureFlagService(capture.getDataValid(), capture.getCaptureId());\n }\n\n deleteItem(item: Capture, index: number) {\n this.confirmdialog = true;\n this.selectedCapture = item;\n this.selectedIndex = index;\n }\n\n editItem(item: Capture) {\n console.log('setting item')\n console.log(item)\n store.commit(\"setCaptureDialog\", true);\n store.commit(\"setCapture\", item);\n this.selectedCapture = item\n }\n\n deleteCapture() {\n deleteCapture(this.selectedCapture.getId(), this.token).then(() => {\n this.$store.commit(\"deleteCapture\", this.selectedIndex);\n });\n this.confirmdialog = false;\n }\n\n close() {\n this.confirmdialog = false;\n setTimeout(() => {\n this.selectedCapture = new Capture();\n this.selectedIndex = -1;\n }, 300);\n }\n}\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Captures.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Captures.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Captures.vue?vue&type=template&id=7632a46a&scoped=true&\"\nimport script from \"./Captures.vue?vue&type=script&lang=ts&\"\nexport * from \"./Captures.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./Captures.vue?vue&type=style&index=0&id=7632a46a&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 \"7632a46a\",\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('v-card',{staticStyle:{\"margin-bottom\":\"30px\"}},[_c('v-toolbar',{attrs:{\"flat\":\"\",\"color\":\"#002E5D\"}},[_c('v-toolbar-title',{staticStyle:{\"color\":\"white\"}},[_vm._v(\"Mortality Info\")]),_c('v-spacer'),_c('v-btn',{staticClass:\"mb-2\",attrs:{\"color\":\"#5F7C9B\",\"dark\":\"\"},on:{\"click\":_vm.addMortality}},[_vm._v(\"Add Mortality\")])],1),(_vm.selectedMortality)?_c('v-container',{attrs:{\"grid-list-md\":\"\",\"fluid\":\"\",\"wraps\":\"\"}},[_c('h1',[_vm._v(\"Timing:\")]),_c('v-layout',{attrs:{\"row\":\"\",\"justify-start\":\"\",\"align-end\":\"\",\"wrap\":\"\"}},[_c('v-flex',{attrs:{\"lg3\":\"\"}},[_c('v-menu',{attrs:{\"close-on-content-click\":false,\"nudge-right\":40,\"lazy\":\"\",\"transition\":\"scale-transition\",\"offset-y\":\"\",\"full-width\":\"\",\"max-width\":\"290px\",\"min-width\":\"290px\"}},[_c('v-text-field',{attrs:{\"slot\":\"activator\",\"label\":\"Est. Date of Mortality\",\"prepend-icon\":\"event\"},on:{\"blur\":function($event){_vm.mortalityDate = _vm.parseDate(_vm.selectedMortality.MortalityDateStr)}},slot:\"activator\",model:{value:(_vm.selectedMortality.MortalityDateStr),callback:function ($$v) {_vm.$set(_vm.selectedMortality, \"MortalityDateStr\", $$v)},expression:\"selectedMortality.MortalityDateStr\"}}),_c('v-date-picker',{attrs:{\"no-title\":\"\"},model:{value:(_vm.mortalityDate),callback:function ($$v) {_vm.mortalityDate=$$v},expression:\"mortalityDate\"}})],1)],1),_c('v-flex',[_c('v-menu',{attrs:{\"close-on-content-click\":false,\"nudge-right\":40,\"lazy\":\"\",\"transition\":\"scale-transition\",\"offset-y\":\"\",\"full-width\":\"\",\"max-width\":\"290px\",\"min-width\":\"290px\"}},[_c('v-text-field',{attrs:{\"slot\":\"activator\",\"label\":\"Est. Time of Mortality\",\"prepend-icon\":\"event\"},on:{\"blur\":function($event){_vm.mortalityTime = _vm.selectedMortality.MortalityTime}},slot:\"activator\",model:{value:(_vm.selectedMortality.MortalityTime),callback:function ($$v) {_vm.$set(_vm.selectedMortality, \"MortalityTime\", $$v)},expression:\"selectedMortality.MortalityTime\"}}),_c('v-time-picker',{model:{value:(_vm.mortalityTime),callback:function ($$v) {_vm.mortalityTime=$$v},expression:\"mortalityTime\"}})],1)],1),_c('v-flex',{attrs:{\"lg3\":\"\"}},[_c('v-menu',{attrs:{\"close-on-content-click\":false,\"nudge-right\":40,\"lazy\":\"\",\"transition\":\"scale-transition\",\"offset-y\":\"\",\"full-width\":\"\",\"max-width\":\"290px\",\"min-width\":\"290px\"}},[_c('v-text-field',{attrs:{\"slot\":\"activator\",\"label\":\"Date First Emailed\",\"prepend-icon\":\"event\"},on:{\"blur\":function($event){_vm.emailedDate = _vm.parseDate(_vm.selectedMortality.FirstEmailedDateStr)}},slot:\"activator\",model:{value:(_vm.selectedMortality.FirstEmailedDateStr),callback:function ($$v) {_vm.$set(_vm.selectedMortality, \"FirstEmailedDateStr\", $$v)},expression:\"selectedMortality.FirstEmailedDateStr\"}}),_c('v-date-picker',{attrs:{\"no-title\":\"\"},model:{value:(_vm.emailedDate),callback:function ($$v) {_vm.emailedDate=$$v},expression:\"emailedDate\"}})],1)],1),_c('v-flex',{attrs:{\"lg3\":\"\"}},[_c('v-menu',{attrs:{\"close-on-content-click\":false,\"nudge-right\":40,\"lazy\":\"\",\"transition\":\"scale-transition\",\"offset-y\":\"\",\"full-width\":\"\",\"max-width\":\"290px\",\"min-width\":\"290px\"}},[_c('v-text-field',{attrs:{\"slot\":\"activator\",\"label\":\"Date Retrieved\",\"prepend-icon\":\"event\"},on:{\"blur\":function($event){_vm.retrievedDate = _vm.parseDate(_vm.selectedMortality.RetrievedDateStr)}},slot:\"activator\",model:{value:(_vm.selectedMortality.RetrievedDateStr),callback:function ($$v) {_vm.$set(_vm.selectedMortality, \"RetrievedDateStr\", $$v)},expression:\"selectedMortality.RetrievedDateStr\"}}),_c('v-date-picker',{attrs:{\"no-title\":\"\"},model:{value:(_vm.retrievedDate),callback:function ($$v) {_vm.retrievedDate=$$v},expression:\"retrievedDate\"}})],1)],1),_c('v-flex',{attrs:{\"lg3\":\"\"}},[_c('v-text-field',{attrs:{\"label\":\"Cementum Age\"},model:{value:(_vm.selectedMortality.CementumAge),callback:function ($$v) {_vm.$set(_vm.selectedMortality, \"CementumAge\", $$v)},expression:\"selectedMortality.CementumAge\"}})],1),_c('v-flex',{attrs:{\"lg3\":\"\"}},[_c('v-select',{attrs:{\"items\":_vm.confidenceList,\"label\":\"Confidence Rating\"},model:{value:(_vm.selectedMortality.ConfidenceRating),callback:function ($$v) {_vm.$set(_vm.selectedMortality, \"ConfidenceRating\", $$v)},expression:\"selectedMortality.ConfidenceRating\"}})],1)],1),_c('h1',[_vm._v(\"General:\")]),_c('v-layout',{attrs:{\"row\":\"\",\"justify-start\":\"\",\"align-end\":\"\",\"wrap\":\"\"}},[(_vm.selectedMortality.AnimalId != null)?_c('v-flex',{attrs:{\"lg3\":\"\"}},[_c('v-text-field',{attrs:{\"label\":\"Animal Id\"},model:{value:(_vm.selectedMortality.AnimalId),callback:function ($$v) {_vm.$set(_vm.selectedMortality, \"AnimalId\", $$v)},expression:\"selectedMortality.AnimalId\"}})],1):_vm._e(),_c('v-flex',{attrs:{\"lg3\":\"\"}},[_c('v-autocomplete',{ref:\"collarDrop\",attrs:{\"item-text\":\"FullName\",\"item-value\":\"UserId\",\"items\":_vm.users,\"label\":\"Recovered By\",\"search-input\":_vm.userText},on:{\"update:searchInput\":function($event){_vm.userText=$event},\"update:search-input\":function($event){_vm.userText=$event}},model:{value:(_vm.selectedMortality.RecoveredByUserId),callback:function ($$v) {_vm.$set(_vm.selectedMortality, \"RecoveredByUserId\", $$v)},expression:\"selectedMortality.RecoveredByUserId\"}},[_c('v-list-tile',{staticStyle:{\"cursor\":\"pointer\",\"font-weight\":\"bold\"},attrs:{\"slot\":\"prepend-item\"},on:{\"click\":function($event){return _vm.addUser()}},slot:\"prepend-item\"},[_vm._v(\"Add User\")])],1)],1),(_vm.selectedMortality.CollarId != null)?_c('v-flex',{attrs:{\"lg3\":\"\"}},[_c('v-autocomplete',{ref:\"collarDrop\",attrs:{\"item-text\":\"CollarCode\",\"item-value\":\"CollarId\",\"items\":_vm.collars,\"label\":\"Collar Code\",\"search-input\":_vm.collarCodeText},on:{\"update:searchInput\":function($event){_vm.collarCodeText=$event},\"update:search-input\":function($event){_vm.collarCodeText=$event}},model:{value:(_vm.selectedMortality.CollarId),callback:function ($$v) {_vm.$set(_vm.selectedMortality, \"CollarId\", $$v)},expression:\"selectedMortality.CollarId\"}},[_c('v-list-tile',{staticStyle:{\"cursor\":\"pointer\",\"font-weight\":\"bold\"},attrs:{\"slot\":\"prepend-item\"},on:{\"click\":function($event){return _vm.addCollarCode()}},slot:\"prepend-item\"},[_vm._v(\"Add Collar\")])],1)],1):_vm._e(),_c('v-flex',{attrs:{\"lg3\":\"\"}},[_c('v-autocomplete',{attrs:{\"item-text\":\"Name\",\"item-value\":\"UnitId\",\"items\":_vm.units,\"label\":\"Unit\"},model:{value:(_vm.selectedMortality.MortalityUnitId),callback:function ($$v) {_vm.$set(_vm.selectedMortality, \"MortalityUnitId\", $$v)},expression:\"selectedMortality.MortalityUnitId\"}})],1),_c('v-flex',{attrs:{\"lg3\":\"\"}},[_c('v-autocomplete',{ref:\"userDrop\",attrs:{\"items\":_vm.causesDeath,\"label\":\"Cause of Death\",\"search-input\":_vm.causeOfDeathText},on:{\"update:searchInput\":function($event){_vm.causeOfDeathText=$event},\"update:search-input\":function($event){_vm.causeOfDeathText=$event}},model:{value:(_vm.selectedMortality.CauseOfDeath),callback:function ($$v) {_vm.$set(_vm.selectedMortality, \"CauseOfDeath\", $$v)},expression:\"selectedMortality.CauseOfDeath\"}},[_c('v-list-tile',{staticStyle:{\"cursor\":\"pointer\"},attrs:{\"slot\":\"prepend-item\"},on:{\"click\":function($event){return _vm.addCauseOfDeath()}},slot:\"prepend-item\"},[_vm._v(\"Add Cause\")])],1)],1),_c('v-flex',{attrs:{\"lg3\":\"\"}},[_c('v-checkbox',{attrs:{\"label\":\"Capture Related?\"},model:{value:(_vm.selectedMortality.IsCaptureRelated),callback:function ($$v) {_vm.$set(_vm.selectedMortality, \"IsCaptureRelated\", $$v)},expression:\"selectedMortality.IsCaptureRelated\"}})],1)],1),_c('h1',[_vm._v(\"Location:\")]),_c('v-layout',{attrs:{\"row\":\"\",\"justify-start\":\"\",\"align-end\":\"\",\"wrap\":\"\"}},[_c('v-flex',{attrs:{\"lg4\":\"\"}},[_c('v-text-field',{attrs:{\"label\":\"Deg Latitude\"},model:{value:(_vm.selectedMortality.Latitude),callback:function ($$v) {_vm.$set(_vm.selectedMortality, \"Latitude\", $$v)},expression:\"selectedMortality.Latitude\"}})],1),_c('v-flex',{attrs:{\"lg4\":\"\"}},[_c('v-text-field',{attrs:{\"label\":\"Deg Longitude\"},model:{value:(_vm.selectedMortality.Longitude),callback:function ($$v) {_vm.$set(_vm.selectedMortality, \"Longitude\", $$v)},expression:\"selectedMortality.Longitude\"}})],1),_c('v-flex',{attrs:{\"lg4\":\"\"}},[_c('v-textarea',{attrs:{\"label\":\"Comments\"},model:{value:(_vm.selectedMortality.Comments),callback:function ($$v) {_vm.$set(_vm.selectedMortality, \"Comments\", $$v)},expression:\"selectedMortality.Comments\"}})],1)],1),_c('v-layout',{attrs:{\"row\":\"\",\"justify-end\":\"\",\"align-end\":\"\",\"wrap\":\"\"}},[_c('v-spacer'),(_vm.user.RoleId == 1)?_c('span',[_c('v-btn',{staticStyle:{\"color\":\"white\"},attrs:{\"color\":\"#B3041A\",\"disabled\":_vm.selectedMortality.MortalityId == null},on:{\"click\":_vm.delDialog}},[_vm._v(\"Delete Mortality\")])],1):_vm._e(),_c('v-btn',{staticStyle:{\"color\":\"white\"},attrs:{\"color\":\"#002E5D\"},on:{\"click\":_vm.save}},[_vm._v(\"Save\")])],1),_c('v-layout',{attrs:{\"row\":\"\",\"justify-start\":\"\"}},[_c('v-flex',[_c('v-layout',{attrs:{\"column\":\"\",\"justify-start\":\"\"}},[_c('v-flex',[_c('v-btn',{attrs:{\"label\":\"\"},on:{\"click\":_vm.pickImageFile}},[_vm._v(\"Select Images\")]),_c('input',{ref:\"image\",staticStyle:{\"display\":\"none\"},attrs:{\"type\":\"file\",\"multiple\":\"\",\"accept\":\"image/*\"},on:{\"change\":_vm.onImageFilePicked}})],1),_vm._l((_vm.imagesPendingUpload),function(file,index){return _c('v-flex',{key:file.name},[_c('v-layout',{attrs:{\"row\":\"\",\"shrink\":\"\",\"align-center\":\"\"}},[_c('img',{staticStyle:{\"margin\":\"5px\"},attrs:{\"src\":file,\"height\":\"150\"}}),_c('v-btn',{staticStyle:{\"color\":\"white\"},attrs:{\"color\":\"#B3041A\"},on:{\"click\":function($event){return _vm.deleteUploadedImage(index)}}},[_vm._v(\"Delete\")])],1)],1)}),_vm._l((_vm.uploadedImages),function(file,index){return _c('v-flex',{key:file.Name},[_c('v-layout',{attrs:{\"row\":\"\",\"shrink\":\"\",\"align-center\":\"\"}},[_c('a',{attrs:{\"href\":file.ImageURL,\"target\":\"_blank\"}},[_c('img',{staticStyle:{\"margin\":\"5px\"},attrs:{\"src\":file.ImageURL,\"height\":\"150\"}})]),_c('v-btn',{staticStyle:{\"color\":\"white\"},attrs:{\"color\":\"#B3041A\"},on:{\"click\":function($event){return _vm.deleteImage(file.MortalityImageId, index)}}},[_vm._v(\"Delete\")])],1)],1)})],2)],1),_c('v-flex',[_c('v-layout',{attrs:{\"column\":\"\",\"justify-start\":\"\"}},[_c('v-flex',[_c('v-btn',{attrs:{\"label\":\"\"},on:{\"click\":_vm.pickPDFFile}},[_vm._v(\"Select PDFs\")]),_c('input',{ref:\"pdf\",staticStyle:{\"display\":\"none\"},attrs:{\"type\":\"file\",\"multiple\":\"\",\"accept\":\"application/pdf\"},on:{\"change\":_vm.onPDFFilePicked}})],1),_vm._l((_vm.pdfsPendingUpload),function(file,index){return _c('v-flex',{key:file.name},[_vm._v(\"\\n \"+_vm._s(_vm.selectedPDFFiles[index].name)+\"\\n \"),_c('v-layout',{attrs:{\"row\":\"\",\"shrink\":\"\",\"align-center\":\"\"}},[_c('img',{attrs:{\"src\":require(\"../../assets/PDF_32.png\")}}),_c('v-btn',{staticStyle:{\"color\":\"white\"},attrs:{\"color\":\"#B3041A\"},on:{\"click\":function($event){return _vm.deleteUploadedPDF(index)}}},[_vm._v(\"Delete\")])],1)],1)}),_vm._l((_vm.uploadedPDFs),function(file,index){return _c('v-flex',{key:file.MortalityPdfId},[_vm._v(\"\\n \"+_vm._s(file.Name)+\"\\n \"),_c('v-layout',{attrs:{\"row\":\"\",\"shrink\":\"\",\"align-center\":\"\"}},[_c('a',{attrs:{\"href\":file.PdfUrl,\"target\":\"_blank\"}},[_c('img',{attrs:{\"src\":require(\"../../assets/PDF_32.png\")}})]),_c('v-btn',{staticStyle:{\"color\":\"white\"},attrs:{\"color\":\"#B3041A\"},on:{\"click\":function($event){return _vm.deletePDF(file.MortalityPdfId, index)}}},[_vm._v(\"Delete\")])],1)],1)})],2)],1)],1)],1):_vm._e(),_c('v-dialog',{attrs:{\"max-width\":\"290\"},model:{value:(_vm.deleteDialog),callback:function ($$v) {_vm.deleteDialog=$$v},expression:\"deleteDialog\"}},[_c('v-card',{staticClass:\"delete-dialog\"},[_c('v-card-title',{staticClass:\"headline\"},[_vm._v(\"Delete\")]),_c('v-card-text',[_vm._v(\"Are you sure you want to Delete the Mortality\")]),_c('v-card-actions',[_c('v-spacer'),_c('v-btn',{attrs:{\"color\":\"green darken-1\",\"flat\":\"flat\"},on:{\"click\":function($event){_vm.deleteDialog = false}}},[_vm._v(\"No\")]),_c('v-btn',{attrs:{\"color\":\"green darken-1\",\"flat\":\"flat\"},on:{\"click\":_vm.deleteMortality}},[_vm._v(\"Yes\")])],1)],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","export default class MortalityImage {\n private MortalityImageId: number;\n private ImageURL: string;\n private MortalityId: number;\n private Name: string;\n\n\n constructor(\n $MortalityImageId: number, $ImageURL: string, $MortalityId: number,\n $Name: string) {\n this.MortalityImageId = $MortalityImageId;\n this.ImageURL = $ImageURL;\n this.MortalityId = $MortalityId;\n this.Name = $Name;\n }\n\n static fromJSON(json: any): MortalityImage {\n return new MortalityImage(\n json['MortalityImageId'],\n 'https://animaltracker-files.byu.edu' + json['ImageURL'],\n json['MortalityId'],\n json['Name'],\n );\n }\n}","export default class MortalityPDF {\n private MortalityPdfId: number;\n private PdfUrl: string;\n private MortalityId: number;\n private Name: string;\n\n\n constructor(\n $MortalityPdfId: number, $PdfUrl: string, $MortalityId: number,\n $Name: string) {\n this.MortalityPdfId = $MortalityPdfId;\n this.PdfUrl = $PdfUrl;\n this.MortalityId = $MortalityId;\n this.Name = $Name;\n }\n\n static fromJSON(json: any): MortalityPDF {\n return new MortalityPDF(\n json['MortalityPdfId'],\n 'https://animaltracker-files.byu.edu' + json['PdfUrl'],\n json['MortalityId'],\n json['Name'],\n );\n }\n}","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { Component, Prop, Vue, Watch } from \"vue-property-decorator\";\nimport { State } from \"vuex-class\";\nimport Mortality from \"@/models/Mortality\";\nimport MortalityImage from \"@/models/MortalityImage\";\nimport MortalityPDF from \"@/models/MortalityPDF\";\nimport { formatDate, parseDate } from \"@/util/dateutil\";\nimport Collar from \"@/models/Collar\";\nimport {\n getUnits,\n getUsers,\n getCausesOfDeath,\n postMortality,\n putMortality,\n deleteMortalityById,\n getUnarchivedUsers,\n postMortalityImages,\n postMortalityPDFs,\n getMortalityImages,\n getMortalityPDFs,\n deleteMortalityImageById,\n deleteMortalityPDFById,\n postCollar,\n postUser\n} from \"@/services/services\";\nimport Unit from \"@/models/Unit\";\nimport User from \"@/models/User\";\nimport { store } from \"@/store/store\";\nimport Animal from \"@/models/Animal\";\n\n@Component({})\nexport default class MortalityInfo extends Vue {\n private mortalityDate: string;\n private mortalityTime: string;\n private emailedDate: string;\n private retrievedDate: string;\n\n private selectedImgFiles: File[];\n private imagesPendingUpload: any[];\n private uploadedImages: MortalityImage[];\n\n private selectedPDFFiles: File[];\n private pdfsPendingUpload: any[];\n private uploadedPDFs: MortalityPDF[];\n\n private users: User[];\n private units: Unit[];\n private deleteDialog: boolean;\n private causesDeath: string[];\n\n private userText: string;\n @Prop()\n private animal!: Animal;\n @Prop()\n private collars!: Collar[];\n private confidenceList: {}[] = [\n { text: \"A\", value: \"A\" },\n { text: \"B\", value: \"B\" },\n { text: \"C\", value: \"C\" },\n { text: \"N/A\", value: null }\n ];\n @State\n private selectedMortality!: Mortality;\n private collarCodeText: string;\n private causeOfDeathText: string;\n\n @State\n private user!: User;\n @State\n private token!: string;\n constructor() {\n super();\n this.mortalityDate = \"\";\n this.mortalityTime = \"\";\n this.emailedDate = \"\";\n this.retrievedDate = \"\";\n this.units = [];\n this.users = [];\n this.causesDeath = [];\n\n this.selectedImgFiles = [];\n this.imagesPendingUpload = [];\n this.uploadedImages = [];\n\n this.selectedPDFFiles = [];\n this.pdfsPendingUpload = [];\n this.uploadedPDFs = [];\n\n this.deleteDialog = false;\n this.collarCodeText = \"\";\n this.causeOfDeathText = \"\";\n this.userText = \"\";\n }\n\n mounted() {\n this.getUnits();\n this.getUsers();\n this.getCausesOfDeath();\n }\n\n @Watch(\"mortalityDate\")\n checkMortalityDate(val: string) {\n let date = formatDate(this.mortalityDate);\n if (date) {\n this.selectedMortality!.setMortalityDate(date);\n }\n }\n\n @Watch(\"mortalityTime\")\n checkMortalityTime(val: string) {\n this.selectedMortality!.setMortalityTime(this.mortalityTime);\n }\n\n @Watch(\"emailedDate\")\n checkEmailedDate(val: string) {\n let date = formatDate(this.emailedDate);\n if (date) {\n this.selectedMortality!.setFirstEmailedDate(date);\n }\n }\n\n @Watch(\"selectedMortality\")\n checkMortality(val: any) {\n if (val) {\n\n if (this.selectedMortality.getMortalityDate())\n {\n this.mortalityDate = this.selectedMortality.getMortalityDate().toISOString().substr(0, 10);\n }\n if (this.selectedMortality.getFirstEmailedDate())\n {\n this.emailedDate = this.selectedMortality.getFirstEmailedDate().toISOString().substr(0, 10);\n }\n if (this.selectedMortality.getRetrievedDate())\n {\n this.retrievedDate = this.selectedMortality.getRetrievedDate().toISOString().substr(0, 10);\n }\n this.mortalityTime = this.selectedMortality.getMortalityTime();\n this.getImages();\n this.getPDFs();\n }\n }\n\n @Watch(\"retrievedDate\")\n checkRetrievedDate(val: string) {\n let date = formatDate(this.retrievedDate);\n if (date) {\n this.selectedMortality!.setRetrievedDate(date);\n }\n }\n\n async addUser() {\n setTimeout(() => {\n // @ts-ignore\n this.$refs.userDrop.blur();\n }, 50);\n\n const u = new User(this.userText, undefined, \"\", 3);\n\n var res = await postUser(u, this.token);\n var data = await res.json();\n u.setUserId(data.userId);\n this.users.push(u);\n this.selectedMortality.setRecoveredByUserId(u.UserId!);\n }\n\n async addCollarCode() {\n //This closes the dropdown after the user clicks add unit\n //It finds the autocomplete that has ref=unitDrop\n setTimeout(() => {\n // @ts-ignore\n this.$refs.collarDrop.blur();\n }, 50);\n\n const c = new Collar(-1, \"\", this.collarCodeText, \"\", false);\n var res = await postCollar(c, this.token);\n var id = await res.json();\n c.setId(id);\n this.collars.push(c);\n this.selectedMortality.setCollarId(c.getId());\n }\n\n addCauseOfDeath() {\n //This closes the dropdown after the user clicks add unit\n //It finds the autocomplete that has ref=unitDrop\n setTimeout(() => {\n // @ts-ignore\n this.$refs.deathDrop.blur();\n }, 50);\n this.causesDeath.push(this.causeOfDeathText);\n this.selectedMortality.setCauseOfDeath(this.causeOfDeathText);\n }\n\n parseDate(date: string): string | undefined {\n let newdate = parseDate(date);\n return newdate;\n }\n\n async getUnits() {\n try {\n const res = await getUnits();\n const json = await res.json();\n json.forEach((element: object) => {\n const unit = new Unit();\n unit.fromJSON(element);\n this.units.push(unit);\n });\n } catch (error) {}\n }\n\n async getUsers() {\n try {\n var res = await getUnarchivedUsers(this.token);\n var data = await res.json();\n data.forEach((element: object) => {\n const user = new User();\n user.fromJSON(element);\n this.users.push(user);\n });\n } catch (error) {}\n }\n\n async getCausesOfDeath() {\n try {\n const res = await getCausesOfDeath();\n const json = await res.json();\n\n this.causesDeath = json;\n } catch (error) {}\n }\n\n addMortality() {\n store.commit(\"setMortality\", new Mortality());\n }\n\n async save() {\n try {\n if (\n this.selectedMortality.getAnimalId() == null ||\n this.selectedMortality.getAnimalId() == undefined\n ) {\n this.selectedMortality.setAnimalId(this.animal.getUniqueId());\n }\n if (\n this.selectedMortality.getCollarCodeId() == null ||\n this.selectedMortality.getCollarCodeId() == undefined\n ) {\n this.selectedMortality.setCollarId(this.animal.getCollarId());\n }\n \n //Post and put here based on the mortality id\n if (this.selectedMortality.getMortalityId() == null) {\n //Post\n var res = await postMortality(this.selectedMortality, this.token);\n var json = await res.json();\n this.selectedMortality.setMortalityId(json);\n } else {\n //Put\n var res = await putMortality(this.selectedMortality, this.token);\n }\n this.uploadImages();\n this.uploadPDFs();\n this.$emit(\"snackbarOpen\", { text: \"Mortality Saved\", color: \"success\" });\n } catch (error) {\n this.$emit(\"snackbarOpen\", {\n text: \"Failed to save Mortality\",\n color: \"error\"\n });\n }\n }\n\n delDialog() {\n this.deleteDialog = true;\n }\n\n async deleteMortality() {\n try {\n var res = await deleteMortalityById(\n this.selectedMortality.getMortalityId(),\n this.token\n );\n if (res.ok) {\n store.commit(\"setMortality\", null);\n }\n } catch (error) {}\n this.deleteDialog = false;\n }\n\n pickImageFile() {\n // @ts-ignore\n this.$refs.image.click();\n }\n pickPDFFile() {\n // @ts-ignore\n this.$refs.pdf.click();\n }\n\n async onImageFilePicked(e: any) {\n var files = e.target.files || [];\n\n for (var i = 0; i < files.length; i++) {\n const fr = new FileReader();\n fr.onload = e => {\n // @ts-ignore\n var imageUrl = e.target.result;\n this.imagesPendingUpload.push(imageUrl);\n };\n\n var imageFile = files[i]; // this is an image file that can be sent to server...D\n this.selectedImgFiles.push(imageFile);\n fr.readAsDataURL(files[i]);\n }\n }\n\n async onPDFFilePicked(e: any) {\n var files = e.target.files || [];\n\n for (var i = 0; i < files.length; i++) {\n const fr = new FileReader();\n fr.onload = e => {\n // @ts-ignore\n var pdfURL = e.target.result;\n this.pdfsPendingUpload.push(pdfURL);\n };\n\n var pdfFile = files[i]; // this is a pdf file that can be sent to server...D\n this.selectedPDFFiles.push(pdfFile);\n fr.readAsDataURL(files[i]);\n }\n }\n\n async getImages() {\n try {\n var res = await getMortalityImages(\n this.selectedMortality.getMortalityId()\n );\n if (res.ok) {\n var data = await res.json();\n data.forEach((element: object) => {\n const image = MortalityImage.fromJSON(element);\n this.uploadedImages.push(image);\n });\n }\n } catch (error) {}\n }\n\n async getPDFs() {\n try {\n var res = await getMortalityPDFs(this.selectedMortality.getMortalityId());\n if (res.ok) {\n var data = await res.json();\n data.forEach((element: object) => {\n const pdf = MortalityPDF.fromJSON(element);\n this.uploadedPDFs.push(pdf);\n });\n }\n } catch (error) {}\n }\n\n async uploadImages() {\n // upload image file\n try {\n const formData = new FormData();\n\n if (this.selectedImgFiles) {\n for (var i = 0; i < this.selectedImgFiles.length; i++) {\n formData.append(\n this.selectedImgFiles[i].name,\n this.selectedImgFiles[i]\n );\n }\n if (this.selectedImgFiles.length > 0) {\n postMortalityImages(\n formData,\n this.selectedMortality.getMortalityId(),\n this.token\n ).then(() => {\n this.selectedImgFiles = [];\n this.imagesPendingUpload = [];\n this.uploadedImages = [];\n this.getImages();\n });\n }\n }\n } catch (e) {}\n }\n\n async uploadPDFs() {\n // upload image file\n try {\n const formData = new FormData();\n\n if (this.selectedPDFFiles) {\n for (var i = 0; i < this.selectedPDFFiles.length; i++) {\n formData.append(\n this.selectedPDFFiles[i].name,\n this.selectedPDFFiles[i]\n );\n }\n if (this.selectedPDFFiles.length > 0) {\n postMortalityPDFs(\n formData,\n this.selectedMortality.getMortalityId(),\n this.token\n ).then(() => {\n this.selectedPDFFiles = [];\n this.pdfsPendingUpload = [];\n this.uploadedPDFs = [];\n this.getPDFs();\n });\n }\n }\n } catch (e) {}\n }\n\n deleteImage(Id: number, index: number) {\n deleteMortalityImageById(Id, this.token).then(() => {\n this.uploadedImages.splice(index, 1);\n });\n }\n\n deleteUploadedImage(index: number) {\n this.imagesPendingUpload.splice(index, 1);\n this.selectedImgFiles.splice(index, 1);\n }\n\n deletePDF(Id: number, index: number) {\n deleteMortalityPDFById(Id, this.token).then(() => {\n this.uploadedPDFs.splice(index, 1);\n });\n }\n\n deleteUploadedPDF(index: number) {\n this.pdfsPendingUpload.splice(index, 1);\n this.selectedPDFFiles.splice(index, 1);\n }\n}\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MortalityInfo.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MortalityInfo.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./MortalityInfo.vue?vue&type=template&id=97c28c9e&\"\nimport script from \"./MortalityInfo.vue?vue&type=script&lang=ts&\"\nexport * from \"./MortalityInfo.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./MortalityInfo.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('v-card',[_c('v-toolbar',{attrs:{\"flat\":\"\",\"color\":\"#002E5D\"}},[_c('v-toolbar-title',{staticStyle:{\"color\":\"white\"}},[_vm._v(\"Location History\")]),_c('v-spacer'),_c('v-btn',{staticClass:\"mb-2\",attrs:{\"color\":\"#5F7C9B\",\"dark\":\"\"},on:{\"click\":_vm.exportLocations}},[_vm._v(\"Export Locations\")])],1),_c('v-layout',{attrs:{\"row\":\"\"}},[_c('v-flex',[_c('v-menu',{attrs:{\"close-on-content-click\":true,\"nudge-right\":40,\"lazy\":\"\",\"transition\":\"scale-transition\",\"offset-y\":\"\",\"full-width\":\"\",\"max-width\":\"290px\",\"min-width\":\"290px\"}},[_c('v-text-field',{attrs:{\"slot\":\"activator\",\"label\":\"Start Date\",\"prepend-icon\":\"event\"},on:{\"blur\":function($event){_vm.startDate = _vm.parseDates(_vm.startDateStr)}},slot:\"activator\",model:{value:(_vm.startDateStr),callback:function ($$v) {_vm.startDateStr=$$v},expression:\"startDateStr\"}}),_c('v-date-picker',{attrs:{\"no-title\":\"\"},model:{value:(_vm.startDate),callback:function ($$v) {_vm.startDate=$$v},expression:\"startDate\"}})],1)],1),_c('v-flex',[_c('v-menu',{attrs:{\"close-on-content-click\":true,\"nudge-right\":40,\"lazy\":\"\",\"transition\":\"scale-transition\",\"offset-y\":\"\",\"full-width\":\"\",\"max-width\":\"290px\",\"min-width\":\"290px\"}},[_c('v-text-field',{attrs:{\"slot\":\"activator\",\"label\":\"End Date\",\"prepend-icon\":\"event\"},on:{\"blur\":function($event){_vm.endDate = _vm.parseDates(_vm.endDateStr)}},slot:\"activator\",model:{value:(_vm.endDateStr),callback:function ($$v) {_vm.endDateStr=$$v},expression:\"endDateStr\"}}),_c('v-date-picker',{attrs:{\"no-title\":\"\"},model:{value:(_vm.endDate),callback:function ($$v) {_vm.endDate=$$v},expression:\"endDate\"}})],1)],1)],1),_c('GmapMap',{staticStyle:{\"width\":\"100%\",\"height\":\"400px\"},attrs:{\"center\":_vm.center,\"zoom\":7,\"map-type-id\":\"terrain\"}},[_vm._l((_vm.locations),function(m,index){return _c('GmapMarker',{key:index,attrs:{\"position\":m.position,\"clickable\":true,\"icon\":{ url: '/green-dot.png' }},on:{\"click\":function($event){m.opened= !m.opened}}},[_c('GmapInfoWindow',{attrs:{\"options\":_vm.infoOptions,\"opened\":m.opened},on:{\"closeclick\":function($event){m.opened=false}}},[_c('div',{attrs:{\"id\":\"content\"}},[_c('div',{attrs:{\"id\":\"siteNotice\"}}),_c('h1',{staticClass:\"firstHeading\",attrs:{\"id\":\"firstHeading\"}},[_vm._v(_vm._s(_vm._f(\"formatDate\")(m.Date)))]),_c('div',{attrs:{\"id\":\"bodyContent\"}},[_c('p')])])])],1)}),_vm._l((_vm.mortalities),function(m,index){return _c('GmapMarker',{key:index,attrs:{\"position\":m.position,\"clickable\":true,\"icon\":{ url: '/red-pushpin.png' }},on:{\"click\":function($event){m.opened= !m.opened}}},[_c('GmapInfoWindow',{attrs:{\"options\":_vm.infoOptions,\"opened\":m.opened},on:{\"closeclick\":function($event){m.opened=false}}},[_c('div',{attrs:{\"id\":\"content\"}},[_c('div',{attrs:{\"id\":\"siteNotice\"}}),_c('h1',{staticClass:\"firstHeading\",attrs:{\"id\":\"firstHeading\"}},[_vm._v(\"Mortality: \"+_vm._s(_vm._f(\"formatDateShort\")(m.Date)))]),_c('div',{attrs:{\"id\":\"bodyContent\"}},[_c('p')])])])],1)})],2),_c('v-data-table',{attrs:{\"headers\":_vm.headers,\"items\":_vm.locations,\"item-key\":\"CollarId\",\"rows-per-page-items\":[10, 25, 50, 100]},scopedSlots:_vm._u([{key:\"items\",fn:function(props){return [_c('tr',{staticClass:\"clickable-row\",on:{\"click\":function($event){props.expanded = !props.expanded}}},[_c('td',{staticClass:\"text-xs-left\"},[_vm._v(_vm._s(props.item.InitialCaptureStr))]),_c('td',{staticClass:\"text-xs-left\"},[_vm._v(_vm._s(props.item.Latitude))]),_c('td',{staticClass:\"text-xs-left\"},[_vm._v(_vm._s(props.item.Longitude))]),_c('td',{staticClass:\"text-xs-left\"},[_c('div',[_vm._v(_vm._s(props.item.CollarCode))])])])]}}])})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { Component, Prop, Vue, Watch } from \"vue-property-decorator\";\nimport { formatDate, parseDate } from \"@/util/dateutil\";\nimport { State } from \"vuex-class\";\nimport Location from \"@/models/Location\";\nimport {\n getLocationsByAnimalId,\n getMortalityLocationsByAnimalId\n} from \"@/services/services\";\nimport Collar from \"../../models/Collar\";\n@Component({})\nexport default class LocationMap extends Vue {\n private headers: {}[] = [\n { text: \"Date\", value: \"Date\", sortable: false },\n {\n text: \"Latitude\",\n value: \"Latitude\",\n sortable: false\n },\n { text: \"Longitude\", value: \"Longitude\", sortable: false },\n { text: \"Collar Id\", value: \"CollarId\", sortable: false }\n ];\n // private markers: Location[];\n private center: { lat: number; lng: number } = {\n lat: 40.2338,\n lng: -111.6585\n };\n @State\n private token!: string;\n @Prop()\n private AnimalId!: number;\n @Prop()\n private collars!: Collar[];\n private locations: Location[];\n private mortalities: Location[];\n\n private startDate: string;\n private startDateStr: string;\n private endDate: string;\n private endDateStr: string;\n\n private infoOptions: {} = {\n pixelOffset: {\n width: 0,\n height: -35\n }\n };\n\n constructor() {\n super();\n this.locations = [];\n this.mortalities = [];\n let start = new Date();\n start.setDate(start.getDate() - 14);\n let now = new Date();\n this.startDateStr = formatDate(start);\n this.startDate = parseDate(this.startDateStr);\n this.endDateStr = formatDate(now);\n this.endDate = parseDate(this.endDateStr);\n }\n\n created() {\n this.getLocations();\n this.getMortality();\n }\n\n @Watch(\"token\")\n async getLocations() {\n this.locations = [];\n if (this.token == \"\") {\n return;\n }\n\n let res = await getLocationsByAnimalId(\n this.AnimalId,\n this.token,\n this.startDateStr,\n this.endDateStr\n );\n let json = await res.json();\n json.forEach((element: object) => {\n let l = new Location();\n l.fromJSON(element);\n this.locations.push(l);\n });\n if (this.locations.length > 0) {\n this.center.lat = this.locations[0].getLatitude();\n this.center.lng = this.locations[0].getLongitude();\n }\n }\n\n @Watch(\"token\")\n async getMortality() {\n if (this.token == \"\") return;\n let res = await getMortalityLocationsByAnimalId(this.AnimalId, this.token);\n let json = await res.json();\n json.forEach((element: object) => {\n let l = new Location();\n l.fromJSON(element);\n this.mortalities.push(l);\n });\n }\n\n exportLocations() {\n var csvContent = \"\";\n var c = \",\";\n var r = \"\\n\";\n\n csvContent +=\n \"AnimalId\" + c + \"Date\" + c + \"Latitude\" + c + \"Longitude\" + r;\n\n for (var i = 0; i < this.locations.length; i++) {\n var location = this.locations[i];\n var d = location.getDate();\n var date =\n (d.getMonth() + 1).toString() +\n \"/\" +\n d.getDate().toString() +\n \"/\" +\n d.getFullYear().toString();\n csvContent +=\n this.AnimalId +\n c +\n date +\n c +\n location.getLatitude() +\n c +\n location.getLongitude() +\n r;\n }\n\n var today = new Date();\n\n var filename =\n \"Animal Locations \" +\n (today.getMonth() + 1).toString() +\n \"-\" +\n today.getDate().toString() +\n \"-\" +\n today.getFullYear().toString() +\n \".csv\";\n this.exportToCSV(filename, csvContent);\n }\n\n exportToCSV(filename: string, content: any) {\n var blob = new Blob([content], { type: \"text/csv;charset=utf-8;\" });\n if (navigator.msSaveBlob) {\n // IE 10+\n navigator.msSaveBlob(blob, filename);\n } else {\n var link = document.createElement(\"a\");\n if (link.download !== undefined) {\n // feature detection\n // Browsers that support HTML5 download attribute\n var url = URL.createObjectURL(blob);\n link.setAttribute(\"href\", url);\n link.setAttribute(\"download\", filename);\n link.style.visibility = \"hidden\";\n document.body.appendChild(link);\n link.click();\n document.body.removeChild(link);\n }\n }\n }\n\n @Watch(\"startDate\")\n checkStartDate(val: string) {\n let date = formatDate(this.startDate);\n if (date) {\n this.startDateStr = date;\n this.getLocations();\n }\n }\n\n @Watch(\"endDate\")\n checkEndDate(val: string) {\n let date = formatDate(this.endDate);\n if (date) {\n this.endDateStr = date;\n this.getLocations();\n }\n }\n\n parseDates(date: string): string | undefined {\n let newdate = parseDate(date);\n return newdate;\n }\n}\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LocationMap.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LocationMap.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./LocationMap.vue?vue&type=template&id=1803abae&scoped=true&\"\nimport script from \"./LocationMap.vue?vue&type=script&lang=ts&\"\nexport * from \"./LocationMap.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"1803abae\",\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n// @ts-ignore\nimport { Component, Prop, Vue, Watch } from \"vue-property-decorator\";\nimport { State } from \"vuex-class\";\nimport Animal from \"@/models/Animal.ts\";\nimport Captures from \"./Captures.vue\";\nimport MortalityInfo from \"./MortalityInfo.vue\";\nimport Capture from \"@/models/Capture\";\nimport Collar from \"@/models/Collar\";\nimport LocationMap from \"./LocationMap.vue\";\nimport { formatDate, parseDate } from \"@/util/dateutil\";\nimport {\n getAnimalById,\n getCollars,\n getSpecies,\n getCapturesForAnimal,\n deleteAnimalById,\n unarchiveAnimal,\n putAnimal,\n postCollar,\n getProjects\n} from \"@/services/services\";\nimport { store } from \"@/store/store\";\nimport User from \"@/models/User\";\n\n@Component({ components: { Captures, MortalityInfo, LocationMap } })\nexport default class Edit extends Vue {\n @State\n private captures!: Capture[];\n @State\n private selectedAnimal!: Animal;\n private collarCodes: Collar[];\n private addDate: string;\n private birthDate: string;\n @State\n private token!: string;\n @State\n private user!: User;\n private dialog: boolean;\n private message: string;\n private AnimalId?: number;\n private collarCodeText: string;\n private projectList: any[];\n private species: string[] = [\n \"Bighorn Sheep\",\n \"Bison\",\n \"Cougar\",\n \"Elk\",\n \"Moose\",\n \"Mountain Goat\",\n \"Mule Deer\",\n \"Pronghorn\",\n \"White-tailed Deer\",\n ];\n private snackBarObj: any = {\n snackbar: false,\n y: \"top\",\n x: null,\n mode: \"\",\n timeout: 6000,\n text: \"\",\n snackBarColor: \"\"\n };\n\n constructor() {\n super();\n this.collarCodes = [];\n this.message = \"\";\n this.dialog = false;\n this.addDate = \"\";\n this.birthDate = \"\";\n this.collarCodeText = \"\";\n this.projectList = []\n }\n\n snackbarOpen(snack: any) {\n this.snackBarObj.text = snack.text;\n this.snackBarObj.snackBarColor = snack.color;\n this.snackBarObj.snackbar = true;\n }\n\n async created() {\n if (this.redirectUser(this.user.RoleId)) {\n var name = this.$router.currentRoute.path || \"\";\n localStorage.setItem(\"path\", name);\n localStorage.setItem(\"login\", \"true\");\n this.$emit(\"beginLogin\");\n }\n\n let id = this.$route.params.id;\n if (!id) {\n return;\n }\n\n getProjects()\n .then(data => {\n console.log(data)\n this.projectList = data\n })\n\n this.AnimalId = parseInt(id);\n var res = await getAnimalById(this.AnimalId!);\n var data = await res.json();\n let a = new Animal();\n a.fromJSON(data);\n store.commit(\"setAnimal\", a);\n console.log(a)\n\n res = await getCapturesForAnimal(this.AnimalId!, this.token);\n data = await res.json();\n let list = data;\n var captures: Capture[] = [];\n list.forEach((element: Object) => {\n let c = new Capture();\n c.setSpecies(this.selectedAnimal.getSpecies());\n c.fromJSON(element);\n captures.push(c);\n });\n this.$store.commit(\"setCaptures\", captures);\n res = await getCollars();\n data = await res.json();\n data.forEach((element: Object) => {\n let c = new Collar();\n c.fromJSON(element);\n this.collarCodes.push(c);\n });\n\n\n }\n\n redirectUser(Id: number): boolean {\n let redirect = false;\n if (Id > 1) {\n if (this.$router.currentRoute.name === \"users\") {\n redirect = true;\n }\n if (\n Id == 3 &&\n (this.$router.currentRoute.name == \"edit\" ||\n this.$router.currentRoute.name == \"collars\" ||\n this.$router.currentRoute.name == \"units\")\n ) {\n redirect = true;\n }\n }\n return redirect;\n }\n\n @Watch(\"addDate\")\n checkDateAdd(val: string) {\n let date = formatDate(this.addDate);\n if (date) {\n this.selectedAnimal!.setInitialCapture(date);\n }\n }\n\n @Watch(\"birthDate\")\n checkBirthDate(val: string) {\n let date = formatDate(this.birthDate);\n if (date) {\n this.selectedAnimal.setBirthdate(date);\n }\n }\n\n parseDate(date: string): string | undefined {\n let newdate = parseDate(date);\n return newdate;\n }\n\n async deleteAnimal() {\n try {\n if (this.selectedAnimal.getUniqueId() === -1) {\n this.$router.push(\"/\");\n return;\n }\n let res = await deleteAnimalById(\n this.selectedAnimal.getUniqueId(),\n this.token\n );\n //Indicate success\n this.message = \"Delete Successful\";\n } catch (error) {\n //Indicate it failed\n this.message = \"Delete Failed\";\n } finally {\n this.dialog = true;\n }\n }\n\n redirect() {\n this.dialog = false;\n if (\n this.message == \"Delete Successful\" ||\n this.message == \"Restore Successful\"\n ) {\n this.$router.push(\"/\");\n }\n }\n\n async addCollarCode() {\n setTimeout(() => {\n // @ts-ignore\n this.$refs.drop.blur();\n }, 50);\n\n const c = new Collar(-1, \"\", this.collarCodeText, \"\", false);\n var res = await postCollar(c, this.token);\n var id = await res.json();\n c.setId(id);\n this.collarCodes.push(c);\n this.selectedAnimal.setCollarId(c.getId());\n }\n\n async unarchiveAnimal() {\n try {\n let result = await unarchiveAnimal(\n this.selectedAnimal.getUniqueId(),\n this.token\n );\n this.message = \"Restore Successful\";\n } catch (error) {\n this.message = \"Restore Failed\";\n } finally {\n this.dialog = true;\n }\n }\n\n async save() {\n console.log(this.selectedAnimal)\n try {\n let result = await putAnimal(this.selectedAnimal, this.token);\n let id = await result.json();\n if (id == -1) {\n this.message = \"Save Failed\";\n } else {\n this.message = \"Save Successful\";\n }\n } catch (error) {\n this.message = \"Save Failed\";\n } finally {\n this.dialog = true;\n }\n }\n}\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Edit.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Edit.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Edit.vue?vue&type=template&id=15f5a118&scoped=true&\"\nimport script from \"./Edit.vue?vue&type=script&lang=ts&\"\nexport * from \"./Edit.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./Edit.vue?vue&type=style&index=0&id=15f5a118&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 \"15f5a118\",\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:\"elevation-1\"},[_c('v-card',{staticStyle:{\"margin-bottom\":\"10px\"}},[_c('v-toolbar',{attrs:{\"flat\":\"\",\"color\":\"#C5C5C5\"}},[_c('v-toolbar-title',[_vm._v(\"Filters\")])],1),_c('v-container',{attrs:{\"grid-list-md\":\"\",\"text-xs-center\":\"\",\"fluid\":\"\"}},[_c('v-layout',{attrs:{\"row\":\"\",\"wrap\":\"\",\"justify-end\":\"\",\"align-end\":\"\"}},[_c('v-flex',{attrs:{\"shrink\":\"\",\"md2\":\"\",\"lg2\":\"\",\"xs12\":\"\"}},[_c('v-flex',[_c('v-radio-group',{attrs:{\"mandatory\":true},model:{value:(_vm.exportState),callback:function ($$v) {_vm.exportState=$$v},expression:\"exportState\"}},[_c('v-radio',{attrs:{\"label\":\"Capture\",\"value\":\"Capture\",\"color\":\"primary\"}}),_c('v-radio',{attrs:{\"label\":\"Mortality\",\"value\":\"Mortality\",\"color\":\"primary\"}})],1)],1)],1),_c('v-flex',{attrs:{\"grow\":\"\",\"xs12\":\"\",\"md8\":\"\",\"lg8\":\"\"}},[_c('v-layout',{attrs:{\"row\":\"\",\"wrap\":\"\"}},[_c('v-flex',{attrs:{\"column\":\"\",\"md4\":\"\"}},[_c('v-flex',{attrs:{\"xs12\":\"\"}},[_c('v-menu',{attrs:{\"close-on-content-click\":false,\"nudge-right\":40,\"lazy\":\"\",\"transition\":\"scale-transition\",\"offset-y\":\"\",\"full-width\":\"\",\"max-width\":\"290px\",\"min-width\":\"290px\"}},[_c('v-text-field',{attrs:{\"slot\":\"activator\",\"label\":\"From\",\"prepend-icon\":\"event\"},on:{\"blur\":function($event){_vm.datefrom = _vm.parseDate(_vm.fromDate)}},slot:\"activator\",model:{value:(_vm.fromDate),callback:function ($$v) {_vm.fromDate=$$v},expression:\"fromDate\"}}),_c('v-date-picker',{attrs:{\"no-title\":\"\"},model:{value:(_vm.datefrom),callback:function ($$v) {_vm.datefrom=$$v},expression:\"datefrom\"}})],1)],1),_c('v-flex',{attrs:{\"xs12\":\"\"}},[_c('v-menu',{attrs:{\"close-on-content-click\":false,\"nudge-right\":40,\"lazy\":\"\",\"transition\":\"scale-transition\",\"offset-y\":\"\",\"full-width\":\"\",\"max-width\":\"290px\",\"min-width\":\"290px\"}},[_c('v-text-field',{attrs:{\"slot\":\"activator\",\"label\":\"To\",\"prepend-icon\":\"event\"},on:{\"blur\":function($event){_vm.dateto = _vm.parseDate(_vm.toDate)}},slot:\"activator\",model:{value:(_vm.toDate),callback:function ($$v) {_vm.toDate=$$v},expression:\"toDate\"}}),_c('v-date-picker',{attrs:{\"no-title\":\"\"},model:{value:(_vm.dateto),callback:function ($$v) {_vm.dateto=$$v},expression:\"dateto\"}})],1)],1)],1),_c('v-flex',{attrs:{\"column\":\"\",\"md4\":\"\"}},[_c('v-flex',[_c('v-text-field',{attrs:{\"label\":\"Unique Id\",\"single-line\":\"\",\"hide-details\":\"\"},model:{value:(_vm.selectedUniqueId),callback:function ($$v) {_vm.selectedUniqueId=$$v},expression:\"selectedUniqueId\"}})],1),_c('v-flex',{attrs:{\"mt-3\":\"\",\"pt-2\":\"\"}},[_c('v-select',{attrs:{\"items\":_vm.species,\"label\":\"Species\",\"item-value\":\"Species\",\"item-text\":\"Name\"},model:{value:(_vm.selectedSpecies),callback:function ($$v) {_vm.selectedSpecies=$$v},expression:\"selectedSpecies\"}})],1)],1),_c('v-flex',{attrs:{\"column\":\"\",\"md4\":\"\"}},[_c('v-flex',[_c('v-text-field',{attrs:{\"label\":\"Collar Code\",\"single-line\":\"\",\"hide-details\":\"\"},model:{value:(_vm.selectedCollarCode),callback:function ($$v) {_vm.selectedCollarCode=$$v},expression:\"selectedCollarCode\"}})],1),_c('v-flex',{attrs:{\"mt-3\":\"\",\"pt-2\":\"\"}},[_c('v-select',{attrs:{\"items\":_vm.units,\"label\":\"Unit\",\"item-text\":\"Name\",\"return-object\":\"\"},model:{value:(_vm.selectedUnit),callback:function ($$v) {_vm.selectedUnit=$$v},expression:\"selectedUnit\"}})],1)],1)],1)],1),_c('v-flex',{attrs:{\"shrink\":\"\",\"column\":\"\",\"md2\":\"\",\"lg2\":\"\"}},[_c('v-flex',[_c('v-select',{attrs:{\"items\":_vm.age,\"label\":\"Age\"},model:{value:(_vm.selectedAge),callback:function ($$v) {_vm.selectedAge=$$v},expression:\"selectedAge\"}})],1),_c('v-flex',[_c('v-select',{attrs:{\"items\":_vm.statusList,\"label\":\"Sex\",\"item-text\":\"text\",\"item-value\":\"value\"},model:{value:(_vm.selectedSex),callback:function ($$v) {_vm.selectedSex=$$v},expression:\"selectedSex\"}})],1)],1)],1),_c('v-layout',[_c('v-flex',{attrs:{\"shrink\":\"\",\"column\":\"\",\"md2\":\"\",\"lg2\":\"\"}}),_c('v-flex',{attrs:{\"shrink\":\"\",\"column\":\"\",\"md10\":\"\",\"lg10\":\"\"}},[_c('v-select',{attrs:{\"items\":_vm.projectList,\"label\":\"Project\",\"item-text\":\"name\",\"item-value\":\"id\"},model:{value:(_vm.projectId),callback:function ($$v) {_vm.projectId=$$v},expression:\"projectId\"}})],1)],1),_c('v-layout',{attrs:{\"row\":\"\",\"justify-center\":\"\"}},[_c('v-btn',{staticStyle:{\"color\":\"white\"},attrs:{\"color\":\"#002E5D\"},on:{\"click\":function($event){return _vm.getTableData()}}},[_vm._v(\"APPLY FILTERS\")]),_c('v-btn',{staticStyle:{\"color\":\"white\"},attrs:{\"color\":\"#002E5D\"},on:{\"click\":function($event){return _vm.clearFilters()}}},[_vm._v(\"CLEAR FILTERS\")])],1)],1)],1),_c('v-toolbar',{attrs:{\"flat\":\"\",\"color\":\"#C5C5C5\"}},[_c('v-toolbar-title',[_vm._v(\"Animals\")])],1),_c('v-toolbar',{staticStyle:{\"padding-bottom\":\"15px\"},attrs:{\"flat\":\"\",\"color\":\"white\"}},[_c('v-spacer'),(_vm.animals.length > 0 && _vm.exportState == 'Capture')?_c('v-btn',{staticClass:\"mb-2\",attrs:{\"color\":\"#5F7C9B\",\"dark\":\"\"},on:{\"click\":_vm.exportCapturesToCSV}},[_vm._v(\"Export\\n Capture Data\")]):_vm._e(),(_vm.animals.length > 0 && _vm.exportState == 'Mortality')?_c('v-btn',{staticClass:\"mb-2\",attrs:{\"color\":\"#5F7C9B\",\"dark\":\"\"},on:{\"click\":_vm.exportMortalityToCSV}},[_vm._v(\"Export\\n Mortality Data\")]):_vm._e(),_c('v-dialog',{attrs:{\"max-width\":\"360px\",\"persistent\":\"\"},model:{value:(_vm.dialog),callback:function ($$v) {_vm.dialog=$$v},expression:\"dialog\"}},[_c('v-btn',{staticClass:\"mb-2\",attrs:{\"slot\":\"activator\",\"color\":\"#5F7C9B\",\"dark\":\"\"},slot:\"activator\"},[_vm._v(\"Add Animal\")]),_c('v-card',[_c('v-card-title',[_c('span',{staticClass:\"headline\"},[_vm._v(\"New Animal\")])]),_c('v-card-text',[_c('v-layout',{attrs:{\"column\":\"\"}},[_c('v-flex',{attrs:{\"md2\":\"\"}},[_c('v-select',{attrs:{\"items\":['Male', 'Female', 'Unknown'],\"label\":\"Sex\"},model:{value:(_vm.editedAnimal.Sex),callback:function ($$v) {_vm.$set(_vm.editedAnimal, \"Sex\", $$v)},expression:\"editedAnimal.Sex\"}})],1),_c('v-flex',{attrs:{\"md2\":\"\"}},[_c('v-autocomplete',{attrs:{\"items\":_vm.collarCodes,\"label\":\"Collar Code\",\"item-value\":\"CollarId\",\"item-text\":\"CollarCode\",\"search-input\":_vm.collarCodeText},on:{\"update:searchInput\":function($event){_vm.collarCodeText=$event},\"update:search-input\":function($event){_vm.collarCodeText=$event}},model:{value:(_vm.editedAnimal.CollarId),callback:function ($$v) {_vm.$set(_vm.editedAnimal, \"CollarId\", $$v)},expression:\"editedAnimal.CollarId\"}},[_c('v-list-tile',{staticStyle:{\"cursor\":\"pointer\"},attrs:{\"slot\":\"prepend-item\"},on:{\"click\":function($event){return _vm.addCollarCode()}},slot:\"prepend-item\"},[_vm._v(\"\\n Add Collar\\n \")])],1)],1),_c('v-flex',{attrs:{\"md2\":\"\"}},[_c('v-combobox',{attrs:{\"items\":_vm.animals,\"item-value\":\"AnimalId\",\"item-text\":\"AnimalId\",\"label\":\"Maternal Id\"},model:{value:(_vm.editedAnimal.MaternalId),callback:function ($$v) {_vm.$set(_vm.editedAnimal, \"MaternalId\", $$v)},expression:\"editedAnimal.MaternalId\"}})],1),_c('v-flex',{attrs:{\"md2\":\"\"}},[_c('v-select',{attrs:{\"items\":_vm.species,\"label\":\"Species\",\"item-value\":\"Species\",\"item-text\":\"Name\"},model:{value:(_vm.editedAnimal.Species),callback:function ($$v) {_vm.$set(_vm.editedAnimal, \"Species\", $$v)},expression:\"editedAnimal.Species\"}})],1),_c('v-flex',{attrs:{\"md2\":\"\"}},[_c('v-menu',{attrs:{\"close-on-content-click\":false,\"lazy\":\"\",\"transition\":\"scale-transition\",\"offset-y\":\"\",\"full-width\":\"\",\"max-width\":\"290px\",\"min-width\":\"290px\"}},[_c('v-text-field',{attrs:{\"slot\":\"activator\",\"label\":\"Initial Capture\"},on:{\"blur\":function($event){_vm.addDate = _vm.parseDate(_vm.editedAnimal.InitialCaptureStr)}},slot:\"activator\",model:{value:(_vm.editedAnimal.InitialCaptureStr),callback:function ($$v) {_vm.$set(_vm.editedAnimal, \"InitialCaptureStr\", $$v)},expression:\"editedAnimal.InitialCaptureStr\"}}),_c('v-date-picker',{attrs:{\"no-title\":\"\"},model:{value:(_vm.addDate),callback:function ($$v) {_vm.addDate=$$v},expression:\"addDate\"}})],1)],1),_c('v-flex',{staticStyle:{\"padding-bottom\":\"4px\"}},[_c('span',{staticStyle:{\"color\":\"grey\",\"font-size\":\"14px\"}},[_vm._v(\"\\n Birthday\\n \")])]),_c('v-flex',{attrs:{\"md2\":\"\"}},[_c('v-layout',[_c('v-flex',{staticStyle:{\"padding-right\":\"8px\"}},[_c('v-select',{attrs:{\"items\":[1,2,3,4,5,6,7,8,9,10,11,12],\"label\":\"Month\"},on:{\"input\":_vm.updateBirthday},model:{value:(_vm.birthMonth),callback:function ($$v) {_vm.birthMonth=$$v},expression:\"birthMonth\"}})],1),_c('v-flex',{staticStyle:{\"padding-right\":\"8px\"}},[_c('v-select',{attrs:{\"items\":[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31],\"label\":\"Date\"},on:{\"input\":_vm.updateBirthday},model:{value:(_vm.birthDate),callback:function ($$v) {_vm.birthDate=$$v},expression:\"birthDate\"}})],1),_c('v-flex',[_c('v-text-field',{attrs:{\"label\":\"Year\"},on:{\"input\":_vm.updateBirthday},model:{value:(_vm.birthYear),callback:function ($$v) {_vm.birthYear=$$v},expression:\"birthYear\"}})],1)],1)],1),_c('v-flex',[_c('v-select',{attrs:{\"label\":\"Projects\",\"multiple\":\"\",\"items\":_vm.projectList,\"item-text\":\"name\",\"return-object\":\"\"},model:{value:(_vm.editedAnimal.Projects),callback:function ($$v) {_vm.$set(_vm.editedAnimal, \"Projects\", $$v)},expression:\"editedAnimal.Projects\"}})],1)],1)],1),_c('v-card-actions',[_c('v-spacer'),_c('v-btn',{attrs:{\"color\":\"blue darken-1\",\"flat\":\"\"},nativeOn:{\"click\":function($event){return _vm.close($event)}}},[_vm._v(\"Cancel\")]),_c('v-btn',{attrs:{\"color\":\"blue darken-1\",\"flat\":\"\"},nativeOn:{\"click\":function($event){return _vm.save($event)}}},[_vm._v(\"Save\")])],1)],1)],1)],1),_c('v-data-table',{attrs:{\"headers\":_vm.headers,\"items\":_vm.animals,\"item-key\":\"Id\",\"rows-per-page-items\":[10, 25, 50, 100]},scopedSlots:_vm._u([{key:\"items\",fn:function(props){return [_c('tr',{staticClass:\"clickable-row\"},[_c('td',{staticClass:\"text-xs-left\"},[_vm._v(_vm._s(props.item.Species))]),_c('td',{staticClass:\"text-xs-left\"},[_vm._v(_vm._s(props.item.UniqueId))]),_c('td',{staticClass:\"text-xs-left\"},[_vm._v(_vm._s(props.item.CollarCode))]),_c('td',{staticClass:\"text-xs-left\"},[_vm._v(_vm._s(props.item.Sex))]),_c('td',{staticClass:\"text-xs-left\"},[_vm._v(_vm._s(_vm.formatDate( props.item.Capture)))]),_c('td',{staticClass:\"text-xs-left\"},[_vm._v(_vm._s(props.item.ProjectsList))]),_c('td',[_c('v-btn',{staticClass:\"mr-2\",attrs:{\"flat\":\"\"},on:{\"click\":function($event){return _vm.editItem(props.item)}}},[_vm._v(\"edit\")])],1)])]}}])}),_c('v-snackbar',{attrs:{\"color\":_vm.snackBarObj.snackBarColor,\"timeout\":_vm.snackBarObj.timeout,\"top\":_vm.snackBarObj.y === 'top',\"bottom\":_vm.snackBarObj.y === 'bottom',\"right\":_vm.snackBarObj.x === 'right',\"left\":_vm.snackBarObj.x === 'left',\"multi-line\":_vm.snackBarObj.mode === 'multi-line',\"vertical\":_vm.snackBarObj.mode === 'vertical'},model:{value:(_vm.snackBarObj.snackbar),callback:function ($$v) {_vm.$set(_vm.snackBarObj, \"snackbar\", $$v)},expression:\"snackBarObj.snackbar\"}},[_vm._v(\"\\n \"+_vm._s(_vm.snackBarObj.text)+\"\\n \"),_c('v-btn',{attrs:{\"dark\":\"\",\"flat\":\"\"},nativeOn:{\"click\":function($event){_vm.snackBarObj.snackbar = false}}},[_vm._v(\"Close\")])],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n// @ts-ignore\nimport { VueEditor } from \"vue2-editor\";\nimport { Component, Prop, Vue, Watch } from \"vue-property-decorator\";\nimport { State } from \"vuex-class\";\nimport User from \"@/models/User\";\nimport Animal from \"@/models/Animal\";\nimport { formatDate, parseDate } from \"@/util/dateutil\";\nimport {\n getAnimals,\n getFilteredAnimals,\n getUnits,\n toggleFlagService,\n getCollars,\n postAnimal,\n exportCaptureData,\n exportMortalityData,\n postCollar,\n getProjects\n} from \"@/services/services\";\nimport Unit from \"@/models/Unit\";\nimport router from \"@/router\";\nimport Collar from \"@/models/Collar\";\nimport { store } from \"../../store/store\";\n\n@Component({ components: { VueEditor } })\nexport default class Main extends Vue {\n private headers: {}[] = [\n { text: \"Species\", value: \"Species\", sortable: false },\n { text: \"UniqueId\", value: \"UniqueId\" },\n { text: \"Collar Code\", value: \"CollarCode\", sortable: true },\n { text: \"Sex\", value: \"Sex\", sortable: false },\n { text: \"Capture\", value: \"Capture\" },\n { text: \"Project\", value: \"Project\", sortable: true },\n // { text: \"Data Valid\", value: \"Data Valid\", sortable: false },\n { text: \"\", value: \"Actions\", sortable: false }\n ];\n\n private species: string[] = [\n \"Bighorn Sheep\",\n \"Bison\",\n \"Cougar\",\n \"Elk\",\n \"Moose\",\n \"Mountain Goat\",\n \"Mule Deer\",\n \"Pronghorn\",\n \"White-tailed Deer\",\n ];\n\n private statusList: {}[] = [\n { text: \"All\", value: \"All\" },\n { text: \"Male\", value: \"Male\" },\n { text: \"Female\", value: \"Female\" },\n { text: \"Unknown\", value: \"Unknown\" }\n ];\n\n private animals: Animal[];\n private units: Unit[];\n private selectedUniqueId: number | null;\n private fromDate?: string;\n private toDate?: string;\n private datefrom: string;\n private dateto: string;\n private addDate: string;\n private editedAnimal: Animal;\n private selectedSpecies?: string;\n private selectedUnit: Unit | null;\n private selectedCollarCode: string;\n private exportState: string;\n private selectedSex: string;\n private dialog: boolean;\n private collarCodes: Collar[];\n private collarCodeText: string;\n private age: string[];\n private defaultAnimal?: Animal;\n private search: string[];\n private valid: boolean;\n private birthDate: number;\n private birthMonth: number;\n private birthYear: number;\n @State\n private user!: User;\n @State\n private token!: string;\n private selectedAge: string | null;\n private snackBarObj: any = {\n snackbar: false,\n y: \"top\",\n x: null,\n mode: \"\",\n timeout: 6000,\n text: \"\",\n snackBarColor: \"\"\n };\n private projectList: any[]\n private projectId: string\n\n constructor() {\n super();\n this.animals = [];\n this.dialog = false;\n this.editedAnimal = new Animal();\n this.editedAnimal.setSex(\"Male\");\n this.valid = false;\n this.search = [];\n this.exportState = \"Capture\";\n this.toDate = formatDate(new Date());\n this.fromDate = formatDate(new Date(2014, 1, 1));\n this.datefrom = new Date(2014, 1, 1).toISOString().substr(0, 10);\n this.dateto = new Date().toISOString().substr(0, 10);\n this.addDate = new Date().toISOString().substr(0, 10);\n this.selectedSex = \"All\";\n this.selectedUnit = null;\n this.selectedCollarCode = \"\";\n this.selectedUniqueId = null;\n this.selectedSpecies = \"\";\n this.units = [];\n this.collarCodes = [];\n this.collarCodeText = \"\";\n this.selectedAge = \"\";\n this.age = this.getAge();\n this.birthDate = 15\n this.birthMonth = 6\n this.birthYear = (new Date().getFullYear()) - 1 \n this.projectList = []\n this.projectId = \"\";\n }\n\n getAge(): string[] {\n var list = [];\n\n let i = 0\n while(i < 36) {\n list.push(i.toString())\n i += .5\n }\n return list;\n }\n\n mounted() {\n this.animals = store.state.animals;\n this.getUnits();\n this.getCollars();\n getProjects()\n .then(data => this.projectList = data)\n }\n\n @Watch(\"datefrom\")\n checkDateFrom(val: string) {\n this.fromDate = formatDate(this.datefrom);\n }\n\n @Watch(\"dateto\")\n checkDateTo(val: string) {\n this.toDate = formatDate(this.dateto);\n }\n\n @Watch(\"addDate\")\n checkDateAdd(val: string) {\n let date = formatDate(this.addDate);\n if (date) \n this.editedAnimal.setInitialCapture(date);\n }\n\n @Watch(\"dialog\")\n closeDialog(val: boolean) {\n val || this.close();\n }\n\n async addCollarCode() {\n const c = new Collar(-1, \"\", this.collarCodeText, \"\", false);\n var res = await postCollar(c, this.token);\n var id = await res.json();\n c.setId(id);\n this.collarCodes.push(c);\n this.editedAnimal.setCollarId(c.getId());\n }\n\n toggleFlag(animal: Animal) {\n animal.changeValid();\n toggleFlagService(animal.getDataValid(), animal.getUniqueId());\n }\n\n formatDate(date: Date): string | undefined {\n let newdate = formatDate(date);\n return newdate;\n }\n\n parseDate(date: string): string | undefined {\n let newdate = parseDate(date);\n return newdate;\n }\n\n required(value: string) {\n return !!value || \"Required\";\n }\n\n clearFilters() {\n this.selectedSex = \"All\";\n this.selectedUnit = null;\n this.selectedCollarCode = \"\";\n this.selectedUniqueId = null;\n this.selectedSpecies = \"\";\n this.selectedAge = \"\";\n this.projectId = \"\";\n }\n\n close() {\n this.dialog = false;\n setTimeout(() => {\n this.birthDate = 15\n this.birthMonth = 6\n this.birthYear = new Date().getFullYear() - 1\n this.editedAnimal = new Animal();\n this.editedAnimal.setSex(\"Male\");\n }, 300);\n }\n\n editItem(animal: Animal) {\n let id = animal.getUniqueId();\n this.$router.push(`/animal/edit/${id}`);\n }\n\n getUnits() {\n getUnits().then(res => {\n res.json().then(data => {\n data.forEach((element: Object) => {\n const unit = new Unit();\n unit.fromJSON(element);\n this.units.push(unit);\n });\n });\n });\n }\n\n getCollars() {\n getCollars().then(data =>\n data.json().then(data => {\n let list = data;\n list.forEach((element: Object) => {\n let c = new Collar();\n c.fromJSON(element);\n this.collarCodes.push(c);\n });\n })\n );\n }\n\n getTableData() {\n let unitId = null;\n\n if (this.selectedUnit) {\n unitId = this.selectedUnit.getUnitId();\n }\n\n getFilteredAnimals(\n new Date(this.fromDate!),\n new Date(this.toDate!),\n this.selectedSpecies || \"\",\n unitId,\n this.selectedCollarCode,\n this.selectedSex,\n this.exportState,\n this.selectedAge,\n this.selectedUniqueId,\n this.projectId,\n ).then(res => {\n res\n .json()\n .then(list => {\n this.animals = [];\n for (const element of list) {\n const p = new Animal();\n p.fromJSON(element);\n this.animals.push(p);\n }\n console.log(this.animals)\n store.commit(\"setAnimals\", this.animals);\n })\n\n });\n }\n\n async save() {\n try {\n const res = await postAnimal(this.editedAnimal, this.token);\n const id: number = await res.json();\n this.$router.push(`/animal/edit/${id}`);\n this.snackbarOpen({ text: \"Capture Animal\", color: \"success\" });\n } catch (error) {\n this.snackbarOpen({\n text: \"Failed to save animal\",\n color: \"error\"\n });\n }\n }\n\n snackbarOpen(snack: any) {\n this.snackBarObj.text = snack.text;\n this.snackBarObj.snackBarColor = snack.color;\n this.snackBarObj.snackbar = true;\n }\n\n updateBirthday() {\n const d = new Date(this.birthYear, this.birthMonth-1, this.birthDate)\n this.editedAnimal.updateBirthday(d)\n }\n\n exportLocations() {\n var csvContent = \"\";\n var c = \",\";\n var r = \"\\n\";\n\n csvContent +=\n \"AnimalId\" +\n c +\n \"Date\" +\n c +\n \"Latitude\" +\n c +\n \"Longitude\" +\n c +\n \"CollarId\" +\n c +\n \"CollarSerialNumber\" +\n c +\n \"CollarCode\" +\n c +\n \"CollarFreq\" +\n r;\n\n this.animals.forEach(function(animal) {\n let locations = animal.getLocations();\n for (var i = 0; i < locations.length; i++) {\n var location = locations[i];\n var d = location.getDate();\n var date =\n (d.getMonth() + 1).toString() +\n \"/\" +\n d.getDate().toString() +\n \"/\" +\n d.getFullYear().toString();\n csvContent +=\n animal.getUniqueId() +\n c +\n date +\n c +\n location.getLatitude() +\n c +\n location.getLongitude() +\n c +\n location.getCollarId() +\n c +\n animal.getCollarSerialNumber() +\n c +\n animal.getCollarCode() +\n c +\n animal.getCollarFreq() +\n r;\n }\n });\n\n var today = new Date();\n\n var filename =\n \"Animal Locations \" +\n (today.getMonth() + 1).toString() +\n \"-\" +\n today.getDate().toString() +\n \"-\" +\n today.getFullYear().toString() +\n \".csv\";\n this.exportToCSV(filename, csvContent);\n }\n\n exportToCSV(filename: string, content: any) {\n var blob = new Blob([content], { type: \"text/csv;charset=utf-8;\" });\n if (navigator.msSaveBlob) {\n // IE 10+\n navigator.msSaveBlob(blob, filename);\n } else {\n var link = document.createElement(\"a\");\n if (link.download !== undefined) {\n // feature detection\n // Browsers that support HTML5 download attribute\n var url = URL.createObjectURL(blob);\n link.setAttribute(\"href\", url);\n link.setAttribute(\"download\", filename);\n link.style.visibility = \"hidden\";\n document.body.appendChild(link);\n link.click();\n document.body.removeChild(link);\n }\n }\n }\n\n async exportCapturesToCSV() {\n try {\n let selectedUnitId = null;\n if (this.selectedUnit) {\n selectedUnitId = this.selectedUnit!.getUnitId();\n }\n let res = await exportCaptureData(\n new Date(this.fromDate!),\n new Date(this.toDate!),\n this.selectedSpecies || \"\",\n selectedUnitId,\n this.selectedCollarCode,\n this.selectedSex,\n \"current\",\n this.exportState,\n this.selectedUniqueId,\n this.selectedAge\n );\n let json = await res.blob();\n var today = new Date();\n var filename =\n \"Captures \" +\n (today.getMonth() + 1).toString() +\n \"-\" +\n today.getDate().toString() +\n \"-\" +\n today.getFullYear().toString() +\n \".csv\";\n this.exportToCSV(filename, json);\n } catch (error) {\n error;\n }\n }\n\n async exportMortalityToCSV() {\n try {\n let selectedUnitId = null;\n if (this.selectedUnit) {\n selectedUnitId = this.selectedUnit!.getUnitId();\n }\n let res = await exportMortalityData(\n new Date(this.fromDate!),\n new Date(this.toDate!),\n this.selectedSpecies || \"\",\n selectedUnitId,\n this.selectedCollarCode,\n this.selectedSex,\n this.exportState,\n this.selectedUniqueId\n );\n\n let json = await res.blob();\n var today = new Date();\n var filename =\n \"Mortality \" +\n (today.getMonth() + 1).toString() +\n \"-\" +\n today.getDate().toString() +\n \"-\" +\n today.getFullYear().toString() +\n \".csv\";\n this.exportToCSV(filename, json);\n } catch (error) {\n error;\n }\n }\n}\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Main.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Main.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./templates/main.html?vue&type=template&id=5de181c3&scoped=true&\"\nimport script from \"./Main.vue?vue&type=script&lang=ts&\"\nexport * from \"./Main.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./Main.vue?vue&type=style&index=0&id=5de181c3&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 \"5de181c3\",\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('v-card',{staticClass:\"elevation-1\"},[_c('v-dialog',{attrs:{\"max-width\":\"290\"},model:{value:(_vm.confirmdialog),callback:function ($$v) {_vm.confirmdialog=$$v},expression:\"confirmdialog\"}},[_c('v-card',[_c('v-card-title',{staticClass:\"headline\"},[_vm._v(\"Archive Capture\")]),_c('v-card-text',[_vm._v(\"Are you sure you want to Archive this Capture?\")]),_c('v-card-actions',[_c('v-spacer'),_c('v-btn',{attrs:{\"color\":\"green darken-1\",\"flat\":\"flat\"},on:{\"click\":_vm.close}},[_vm._v(\"No\")]),_c('v-btn',{attrs:{\"color\":\"green darken-1\",\"flat\":\"flat\"},on:{\"click\":_vm.deleteCapture}},[_vm._v(\"Yes\")])],1)],1)],1),_c('v-toolbar',{attrs:{\"flat\":\"\",\"color\":\"#002E5D\"}},[_c('v-toolbar-title',{staticStyle:{\"color\":\"white\"}},[_vm._v(\"Collars\")])],1),_c('v-toolbar',{staticStyle:{\"padding-bottom\":\"15px\"},attrs:{\"flat\":\"\",\"color\":\"white\"}},[_c('v-flex',{attrs:{\"mt-3\":\"\",\"mr-2\":\"\",\"pt-1\":\"\"}},[_c('v-select',{attrs:{\"items\":_vm.status,\"label\":\"Status\"},on:{\"change\":_vm.filterState},model:{value:(_vm.selectedStatus),callback:function ($$v) {_vm.selectedStatus=$$v},expression:\"selectedStatus\"}})],1),_c('v-text-field',{attrs:{\"append-icon\":\"search\",\"label\":\"Search\",\"single-line\":\"\",\"hide-details\":\"\"},on:{\"input\":_vm.filterSearch}}),_c('v-spacer'),_c('v-dialog',{attrs:{\"max-width\":\"650px\"},model:{value:(_vm.dialog),callback:function ($$v) {_vm.dialog=$$v},expression:\"dialog\"}},[_c('v-btn',{staticClass:\"mb-2\",attrs:{\"slot\":\"activator\",\"color\":\"#5F7C9B\",\"dark\":\"\"},slot:\"activator\"},[_vm._v(\"Add Collar\")]),_c('v-card',[_c('v-card-title',[_c('span',{staticClass:\"headline\"},[_vm._v(\"New Collar\")])]),_c('v-card-text',[_c('v-container',{attrs:{\"grid-list-md\":\"\",\"text-xs-center\":\"\",\"fluid\":\"\"}},[_c('v-layout',{attrs:{\"row\":\"\",\"wrap\":\"\",\"justify-start\":\"\",\"align-end\":\"\"}},[_c('v-flex',{attrs:{\"lg6\":\"\"}},[_c('v-text-field',{attrs:{\"label\":\"Collar Code\"},model:{value:(_vm.selectedCollar.CollarCode),callback:function ($$v) {_vm.$set(_vm.selectedCollar, \"CollarCode\", $$v)},expression:\"selectedCollar.CollarCode\"}})],1),_c('v-flex',{attrs:{\"lg6\":\"\"}},[_c('v-text-field',{attrs:{\"label\":\"Collar Frequency\"},model:{value:(_vm.selectedCollar.CollarFreq),callback:function ($$v) {_vm.$set(_vm.selectedCollar, \"CollarFreq\", $$v)},expression:\"selectedCollar.CollarFreq\"}})],1)],1)],1)],1),_c('v-card-actions',[_c('v-spacer'),_c('v-btn',{attrs:{\"color\":\"blue darken-1\",\"flat\":\"\"},nativeOn:{\"click\":function($event){return _vm.close($event)}}},[_vm._v(\"Cancel\")]),_c('v-btn',{attrs:{\"color\":\"blue darken-1\",\"flat\":\"\"},nativeOn:{\"click\":function($event){return _vm.save($event)}}},[_vm._v(\"Save\")])],1)],1)],1)],1),_c('v-data-table',{attrs:{\"headers\":_vm.headers,\"items\":_vm.collars,\"item-key\":\"CollarId\",\"search\":_vm.filters,\"custom-filter\":_vm.customFilter,\"rows-per-page-items\":[10, 25, 50, 100]},scopedSlots:_vm._u([{key:\"items\",fn:function(props){return [_c('tr',{staticClass:\"clickable-row\",on:{\"click\":function($event){props.expanded = !props.expanded}}},[_c('td',{staticClass:\"text-xs-left\"},[_vm._v(_vm._s(props.item.CollarCode))]),_c('td',{staticClass:\"text-xs-left\"},[_vm._v(_vm._s(props.item.CollarFreq))]),_c('td',{staticClass:\"justify-center layout px-0\"},[_c('v-icon',{staticClass:\"mr-2\",attrs:{\"medium\":\"\"},on:{\"click\":function($event){return _vm.editItem(props.item)}}},[_vm._v(\"edit\")]),(_vm.user.RoleId == 1)?_c('span',[(!props.item.Archived)?_c('v-btn',{staticClass:\"mr-2\",staticStyle:{\"color\":\"white\"},attrs:{\"medium\":\"\",\"color\":\"#B3041A\"},on:{\"click\":function($event){return _vm.deleteItem(props.item, props.index)}}},[_vm._v(\"Archive\")]):_vm._e()],1):_vm._e(),(props.item.Archived)?_c('v-btn',{staticClass:\"mr-2\",staticStyle:{\"color\":\"white\"},attrs:{\"medium\":\"\",\"color\":\"#B3041A\"},on:{\"click\":function($event){return _vm.unarchiveCollar(props.item)}}},[_vm._v(\"Unarchive\")]):_vm._e()],1)])]}}])})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n// @ts-ignore\nimport { Component, Prop, Vue, Watch } from \"vue-property-decorator\";\nimport { State } from \"vuex-class\";\nimport Collar from \"@/models/Collar\";\nimport { store } from \"@/store/store\";\nimport {\n toggleFlagService,\n toggleCaptureFlagService,\n deleteCapture,\n getCollars,\n putCollar,\n postCollar,\n unArchiveCollarId,\n archiveCollarId\n} from \"@/services/services\";\nimport User from \"@/models/User\";\n\n@Component({})\nexport default class Collars extends Vue {\n private headers: {}[] = [\n { text: \"Code\", value: \"CollarCode\", sortable: false },\n { text: \"Frequency\", value: \"CollarFreq\", sortable: false },\n\n { text: \"\", value: \"Actions\", sortable: false }\n ];\n private collars: Collar[];\n private status: {}[] = [\n { text: \"All\", value: null },\n { text: \"Archived\", value: true },\n { text: \"Current\", value: false }\n ];\n private confirmdialog: boolean;\n private defaultCollar: Collar;\n private selectedCollar: Collar;\n private selectedIndex: number;\n private dialog: boolean;\n private selectedStatus: boolean;\n private search: string;\n @State\n private user!: User;\n @State\n private token!: string;\n private filters: {} = {\n search: \"\",\n State: false\n };\n\n constructor() {\n super();\n this.defaultCollar = new Collar();\n this.selectedCollar = new Collar();\n this.confirmdialog = false;\n this.selectedIndex = -1;\n this.collars = [];\n this.dialog = false;\n this.search = \"\";\n this.selectedStatus = false;\n }\n created() {\n this.getCollars();\n }\n\n required(value: string) {\n return !!value || \"Required\";\n }\n\n deleteItem(item: Collar, index: number) {\n this.confirmdialog = true;\n this.selectedCollar = item;\n }\n\n editItem(item: Collar) {\n this.selectedCollar = item;\n this.dialog = true;\n }\n\n deleteCapture() {\n archiveCollarId(this.selectedCollar.getId(), this.token);\n this.confirmdialog = false;\n this.selectedCollar.archive();\n }\n\n unarchiveCollar(collar: Collar) {\n unArchiveCollarId(collar.getId(), this.token);\n collar.unarchive();\n }\n\n close() {\n this.confirmdialog = false;\n this.dialog = false;\n setTimeout(() => {\n this.selectedCollar = new Collar();\n this.selectedIndex = -1;\n }, 300);\n }\n\n async save() {\n try {\n if (this.selectedCollar.getId() != undefined) {\n let result = await putCollar(this.selectedCollar, this.token);\n } else {\n this.selectedCollar.unarchive();\n let result = await postCollar(this.selectedCollar, this.token);\n let id = await result.json();\n this.selectedCollar.setCollarId(id);\n this.collars.push(this.selectedCollar);\n }\n\n this.close();\n\n // this.title = \"Capture Saved\";\n } catch (err) {\n this.close();\n }\n }\n\n async getCollars() {\n try {\n var res = await getCollars();\n var list = await res.json();\n list.forEach((item : any) => {\n const collar = new Collar();\n collar.fromJSON(item);\n this.collars.push(collar);\n });\n } catch (error) {}\n }\n\n customFilter(items: any, filters: any, filter: any, headers: any) {\n // Init the filter class.\n const cf = new this.$MultiFilters(items, filters, filter, headers);\n\n //Register each filter with the custom filter initialized above.\n cf.registerFilter(\"search\", function(searchWord : string, items : any) {\n //This is the logic of the filter\n if (!searchWord) return items;\n\n if (searchWord.trim() === \"\") return items;\n\n return items.filter((item : any) => {\n if (item.CollarCode != null) {\n if (item.CollarFreq != null)\n return (\n item.CollarCode.includes(searchWord) ||\n item.CollarFreq.includes(searchWord)\n );\n else return item.CollarCode.includes(searchWord);\n }\n\n return item.CollarCode != null\n ? item.CollarCode.includes(searchWord)\n : \"\" || item.CollarFreq != null\n ? item.CollarFreq.includes(searchWord)\n : \"\";\n }, searchWord);\n });\n\n cf.registerFilter(\"State\", function(State: string[], items: any[]) {\n //This is the logic of the filter\n if (State == null) return items;\n\n let newit = items.filter(item => {\n return item.Archived === State;\n }, State);\n\n return newit;\n });\n return cf.runFilters();\n }\n\n // These are the functions that determine which filters need to be updated\n filterSearch(val: string) {\n this.filters = this.$MultiFilters.updateFilters(this.filters, {\n search: val\n });\n }\n\n filterState(val: string[]) {\n this.filters = this.$MultiFilters.updateFilters(this.filters, {\n State: val\n });\n }\n}\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--13-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Collars.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--13-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Collars.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Collars.vue?vue&type=template&id=01918efe&scoped=true&\"\nimport script from \"./Collars.vue?vue&type=script&lang=ts&\"\nexport * from \"./Collars.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./Collars.vue?vue&type=style&index=0&id=01918efe&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 \"01918efe\",\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('v-card',{staticClass:\"elevation-1\"},[_c('v-dialog',{attrs:{\"max-width\":\"290\"},model:{value:(_vm.confirmdialog),callback:function ($$v) {_vm.confirmdialog=$$v},expression:\"confirmdialog\"}},[_c('v-card',[_c('v-card-title',{staticClass:\"headline\"},[_vm._v(\"Archive Unit\")]),_c('v-card-text',[_vm._v(\"Are you sure you want to Archive this Unit?\")]),_c('v-card-actions',[_c('v-spacer'),_c('v-btn',{attrs:{\"color\":\"green darken-1\",\"flat\":\"flat\"},on:{\"click\":_vm.close}},[_vm._v(\"No\")]),_c('v-btn',{attrs:{\"color\":\"green darken-1\",\"flat\":\"flat\"},on:{\"click\":_vm.archiveUnit}},[_vm._v(\"Yes\")])],1)],1)],1),_c('v-toolbar',{attrs:{\"flat\":\"\",\"color\":\"#002E5D\"}},[_c('v-toolbar-title',{staticStyle:{\"color\":\"white\"}},[_vm._v(\"Units\")])],1),_c('v-toolbar',{staticStyle:{\"padding-bottom\":\"15px\"},attrs:{\"flat\":\"\",\"color\":\"white\"}},[_c('v-flex',{attrs:{\"mt-3\":\"\",\"mr-2\":\"\",\"pt-1\":\"\"}},[_c('v-select',{attrs:{\"items\":_vm.status,\"label\":\"Status\"},on:{\"change\":_vm.filterState},model:{value:(_vm.selectedStatus),callback:function ($$v) {_vm.selectedStatus=$$v},expression:\"selectedStatus\"}})],1),_c('v-text-field',{attrs:{\"append-icon\":\"search\",\"label\":\"Search\",\"single-line\":\"\",\"hide-details\":\"\"},on:{\"input\":_vm.filterSearch}}),_c('v-spacer'),_c('v-dialog',{attrs:{\"max-width\":\"450px\"},model:{value:(_vm.dialog),callback:function ($$v) {_vm.dialog=$$v},expression:\"dialog\"}},[_c('v-btn',{staticClass:\"mb-2\",attrs:{\"slot\":\"activator\",\"color\":\"#5F7C9B\",\"dark\":\"\"},slot:\"activator\"},[_vm._v(\"Add Unit\")]),_c('v-card',[_c('v-card-title',[_c('span',{staticClass:\"headline\"},[_vm._v(\"New Unit\")])]),_c('v-card-text',[_c('v-container',{attrs:{\"grid-list-md\":\"\",\"text-xs-center\":\"\",\"fluid\":\"\"}},[_c('v-layout',{attrs:{\"row\":\"\",\"wrap\":\"\",\"justify-start\":\"\",\"align-end\":\"\"}},[_c('v-flex',{attrs:{\"lg6\":\"\"}},[_c('v-text-field',{attrs:{\"label\":\"Unit Name\",\"single-line\":\"\",\"hide-details\":\"\"},model:{value:(_vm.selectedUnit.Name),callback:function ($$v) {_vm.$set(_vm.selectedUnit, \"Name\", $$v)},expression:\"selectedUnit.Name\"}})],1),_c('v-flex',{attrs:{\"lg6\":\"\"}},[_c('v-text-field',{attrs:{\"label\":\"Abbreviation\",\"single-line\":\"\",\"hide-details\":\"\"},model:{value:(_vm.selectedUnit.Abbreviation),callback:function ($$v) {_vm.$set(_vm.selectedUnit, \"Abbreviation\", $$v)},expression:\"selectedUnit.Abbreviation\"}})],1)],1)],1)],1),_c('v-card-actions',[_c('v-spacer'),_c('v-btn',{attrs:{\"color\":\"blue darken-1\",\"flat\":\"\"},nativeOn:{\"click\":function($event){return _vm.close($event)}}},[_vm._v(\"Cancel\")]),_c('v-btn',{attrs:{\"color\":\"blue darken-1\",\"flat\":\"\"},nativeOn:{\"click\":function($event){return _vm.save($event)}}},[_vm._v(\"Save\")])],1)],1)],1)],1),_c('v-data-table',{attrs:{\"headers\":_vm.headers,\"items\":_vm.units,\"item-key\":\"UnitId\",\"search\":_vm.filters,\"custom-filter\":_vm.customFilter,\"hide-actions\":\"\"},scopedSlots:_vm._u([{key:\"items\",fn:function(props){return [_c('tr',{staticClass:\"clickable-row\",on:{\"click\":function($event){props.expanded = !props.expanded}}},[_c('td',{staticClass:\"text-xs-left\"},[_vm._v(_vm._s(props.item.Name))]),_c('td',{staticClass:\"text-xs-left\"},[_vm._v(_vm._s(props.item.Abbreviation))]),_c('td',{staticClass:\"justify-center layout px-0\"},[_c('v-icon',{staticClass:\"mr-2\",attrs:{\"medium\":\"\"},on:{\"click\":function($event){return _vm.editItem(props.item)}}},[_vm._v(\"edit\")]),(_vm.user.RoleId == 1)?_c('span',[(!props.item.Archived)?_c('v-btn',{staticClass:\"mr-2\",staticStyle:{\"color\":\"white\"},attrs:{\"medium\":\"\",\"color\":\"#B3041A\"},on:{\"click\":function($event){return _vm.deleteItem(props.item, props.index)}}},[_vm._v(\"Archive\")]):_vm._e()],1):_vm._e(),(props.item.Archived)?_c('v-btn',{staticClass:\"mr-2\",staticStyle:{\"color\":\"white\"},attrs:{\"medium\":\"\",\"color\":\"#B3041A\"},on:{\"click\":function($event){return _vm.unarchiveUnit(props.item)}}},[_vm._v(\"Unarchive\")]):_vm._e()],1)])]}}])}),_c('v-dialog',{attrs:{\"width\":\"500px\"},model:{value:(_vm.messageDialog),callback:function ($$v) {_vm.messageDialog=$$v},expression:\"messageDialog\"}},[_c('v-card',[_c('v-card-text',[_vm._v(_vm._s(_vm.messageDialogBody))]),_c('v-card-actions',[_c('v-spacer'),_c('v-btn',{attrs:{\"flat\":\"\",\"color\":\"primary\"},nativeOn:{\"click\":function($event){return _vm.closeMessageDialog($event)}}},[_vm._v(\"Okay\")])],1)],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n// @ts-ignore\nimport { Component, Prop, Vue, Watch } from \"vue-property-decorator\";\nimport { State } from \"vuex-class\";\nimport Unit from \"@/models/Unit\";\nimport { store } from \"@/store/store\";\nimport {\n getUnits,\n archiveUnitId,\n putUnit,\n postUnit,\n unArchiveUnitId\n} from \"@/services/services\";\nimport Collar from \"@/models/Collar\";\nimport User from \"@/models/User\";\n\n@Component({})\nexport default class Units extends Vue {\n private headers: {}[] = [\n { text: \"Unit Name\", value: \"Name\", sortable: false },\n { text: \"Abbreviation\", value: \"Abbreviation\", sortable: false },\n\n { text: \"\", value: \"Actions\", sortable: false }\n ];\n private units: Unit[];\n private status: {}[] = [\n { text: \"All\", value: null },\n { text: \"Archived\", value: true },\n { text: \"Current\", value: false }\n ];\n private confirmdialog: boolean;\n private defaultUnit: Unit;\n private selectedUnit: Unit;\n private selectedIndex: number;\n private dialog: boolean;\n private selectedStatus: boolean | null;\n private search: string;\n private messageDialog: boolean;\n private messageDialogBody: string\n @State\n private user!: User;\n @State\n private token!: string;\n private filters: {} = {\n search: \"\",\n State: false\n };\n\n constructor() {\n super();\n this.defaultUnit = new Unit();\n this.selectedUnit = new Unit();\n this.confirmdialog = false;\n this.selectedIndex = -1;\n this.units = [];\n this.dialog = false;\n this.search = \"\";\n this.selectedStatus = false;\n this.messageDialog = false;\n this.messageDialogBody = \"\";\n }\n created() {\n this.getUnits();\n }\n\n required(value: string) {\n return !!value || \"Required\";\n }\n\n deleteItem(item: Unit, index: number) {\n this.confirmdialog = true;\n this.selectedUnit = item;\n }\n\n editItem(item: Unit) {\n this.selectedUnit = item;\n this.dialog = true;\n }\n\n archiveUnit() {\n archiveUnitId(this.selectedUnit.getUnitId(), this.token);\n this.confirmdialog = false;\n this.selectedUnit.archive();\n }\n\n unarchiveUnit(unit: Unit) {\n unArchiveUnitId(unit.UnitId, this.token);\n unit.unarchive();\n }\n\n close() {\n this.confirmdialog = false;\n this.dialog = false;\n setTimeout(() => {\n this.selectedUnit = new Unit();\n this.selectedIndex = -1;\n }, 300);\n }\n\n async save() {\n\n let save = true\n this.units.forEach(unit => {\n if(unit.getName() === this.selectedUnit.getName()) {\n this.messageDialogBody = `There is another Unit with the name ${this.selectedUnit.getName()}, please give the new Unit another name`\n this.messageDialog = true\n save = false\n this.close()\n } \n });\n\n if(!save) return\n\n try {\n if (this.selectedUnit.UnitId != undefined) {\n let result = await putUnit(this.selectedUnit, this.token);\n } else {\n let result = await postUnit(this.selectedUnit, this.token);\n let id = await result.json();\n\n if(id == 0) {\n this.messageDialogBody = `There is another Unit with the name ${this.selectedUnit.getName()}, which will be unarchived instead of creating an new Unit`\n this.messageDialog = true\n this.getUnits()\n }\n else {\n this.selectedUnit.UnitId = id;\n this.units.push(this.selectedUnit);\n }\n }\n\n this.close();\n } catch (err) {\n err;\n this.close();\n }\n }\n\n async getUnits() {\n try {\n var res = await getUnits(true);\n var list = await res.json();\n list.forEach((item : any) => {\n const unit = new Unit();\n unit.fromJSON(item);\n this.units.push(unit);\n });\n } catch (error) {}\n }\n\n closeMessageDialog() {\n this.messageDialog = false\n }\n\n customFilter(items: any, filters: any, filter: any, headers: any) {\n // Init the filter class.\n const cf = new this.$MultiFilters(items, filters, filter, headers);\n\n //Register each filter with the custom filter initialized above.\n cf.registerFilter(\"search\", function(searchWord : any, items : any) {\n //This is the logic of the filter\n if (!searchWord) return items;\n\n if (searchWord.trim() === \"\") return items;\n\n return items.filter((item : any) => {\n return item.Name.toLowerCase().includes(searchWord.toLowerCase());\n }, searchWord);\n });\n\n cf.registerFilter(\"State\", function(State: boolean, items: any[]) {\n //This is the logic of the filter\n if (State == null) return items;\n\n let newit = items.filter((item : any) => {\n return item.Archived === State;\n }, State);\n\n return newit;\n });\n return cf.runFilters();\n }\n\n // These are the functions that determine which filters need to be updated\n filterSearch(val: string) {\n this.filters = this.$MultiFilters.updateFilters(this.filters, {\n search: val\n });\n }\n\n filterState(val: string[]) {\n this.filters = this.$MultiFilters.updateFilters(this.filters, {\n State: val\n });\n }\n}\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--13-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Units.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--13-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Units.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Units.vue?vue&type=template&id=d078c9da&scoped=true&\"\nimport script from \"./Units.vue?vue&type=script&lang=ts&\"\nexport * from \"./Units.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./Units.vue?vue&type=style&index=0&id=d078c9da&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 \"d078c9da\",\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('v-card',{staticClass:\"elevation-1\"},[_c('v-dialog',{attrs:{\"max-width\":\"290\"},model:{value:(_vm.confirmdialog),callback:function ($$v) {_vm.confirmdialog=$$v},expression:\"confirmdialog\"}},[_c('v-card',[_c('v-card-title',{staticClass:\"headline\"},[_vm._v(\"Archive User\")]),_c('v-card-text',[_vm._v(\"Are you sure you want to Archive this User?\")]),_c('v-card-actions',[_c('v-spacer'),_c('v-btn',{attrs:{\"color\":\"green darken-1\",\"flat\":\"flat\"},on:{\"click\":_vm.close}},[_vm._v(\"No\")]),_c('v-btn',{attrs:{\"color\":\"green darken-1\",\"flat\":\"flat\"},on:{\"click\":_vm.archiveUser}},[_vm._v(\"Yes\")])],1)],1)],1),_c('v-toolbar',{attrs:{\"flat\":\"\",\"color\":\"#002E5D\"}},[_c('v-toolbar-title',{staticStyle:{\"color\":\"white\"}},[_vm._v(\"Users\")])],1),_c('v-toolbar',{staticStyle:{\"padding-bottom\":\"15px\"},attrs:{\"flat\":\"\",\"color\":\"white\"}},[_c('v-flex',{attrs:{\"mt-3\":\"\",\"mr-2\":\"\",\"pt-1\":\"\"}},[_c('v-select',{attrs:{\"items\":_vm.status,\"label\":\"Status\"},on:{\"change\":_vm.filterstatus},model:{value:(_vm.selectedStatus),callback:function ($$v) {_vm.selectedStatus=$$v},expression:\"selectedStatus\"}})],1),_c('v-text-field',{attrs:{\"append-icon\":\"search\",\"label\":\"Search\",\"single-line\":\"\",\"hide-details\":\"\"},on:{\"input\":_vm.filterSearch}}),_c('v-spacer'),_c('v-dialog',{attrs:{\"max-width\":\"900px\"},model:{value:(_vm.dialog),callback:function ($$v) {_vm.dialog=$$v},expression:\"dialog\"}},[_c('v-btn',{staticClass:\"mb-2\",attrs:{\"slot\":\"activator\",\"color\":\"#5F7C9B\",\"dark\":\"\"},slot:\"activator\"},[_vm._v(\"Add User\")]),_c('v-card',[_c('v-card-title',[_c('span',{staticClass:\"headline\"},[_vm._v(\"New User\")])]),_c('v-card-text',[_c('v-container',{attrs:{\"grid-list-md\":\"\",\"text-xs-center\":\"\",\"fluid\":\"\"}},[_c('v-layout',{attrs:{\"row\":\"\",\"wrap\":\"\"}},[_c('v-flex',{attrs:{\"lg2\":\"\"}},[_c('v-text-field',{attrs:{\"label\":\"Net Id\",\"single-line\":\"\",\"hide-details\":\"\"},model:{value:(_vm.selectedUser.NetId),callback:function ($$v) {_vm.$set(_vm.selectedUser, \"NetId\", $$v)},expression:\"selectedUser.NetId\"}})],1),_c('v-flex',{attrs:{\"lg2\":\"\"}},[_c('v-text-field',{attrs:{\"label\":\"First Name\",\"single-line\":\"\",\"hide-details\":\"\"},model:{value:(_vm.selectedUser.FirstName),callback:function ($$v) {_vm.$set(_vm.selectedUser, \"FirstName\", $$v)},expression:\"selectedUser.FirstName\"}})],1),_c('v-flex',{attrs:{\"lg2\":\"\"}},[_c('v-text-field',{attrs:{\"label\":\"Last Name\",\"single-line\":\"\",\"hide-details\":\"\"},model:{value:(_vm.selectedUser.LastName),callback:function ($$v) {_vm.$set(_vm.selectedUser, \"LastName\", $$v)},expression:\"selectedUser.LastName\"}})],1),_c('v-flex',{attrs:{\"lg2\":\"\"}},[_c('v-text-field',{attrs:{\"label\":\"Email\",\"single-line\":\"\",\"hide-details\":\"\"},model:{value:(_vm.selectedUser.Email),callback:function ($$v) {_vm.$set(_vm.selectedUser, \"Email\", $$v)},expression:\"selectedUser.Email\"}})],1),_c('v-flex',{attrs:{\"lg2\":\"\"}},[_c('v-text-field',{attrs:{\"label\":\"Phone\",\"single-line\":\"\",\"hide-details\":\"\"},model:{value:(_vm.selectedUser.Phone),callback:function ($$v) {_vm.$set(_vm.selectedUser, \"Phone\", $$v)},expression:\"selectedUser.Phone\"}})],1),_c('v-flex',{attrs:{\"lg2\":\"\"}},[_c('v-select',{attrs:{\"items\":_vm.roles,\"label\":\"Role\",\"item-text\":\"Name\",\"item-value\":\"Id\"},model:{value:(_vm.selectedUser.RoleId),callback:function ($$v) {_vm.$set(_vm.selectedUser, \"RoleId\", $$v)},expression:\"selectedUser.RoleId\"}})],1)],1)],1)],1),_c('v-card-actions',[_c('v-spacer'),_c('v-btn',{attrs:{\"color\":\"blue darken-1\",\"flat\":\"\"},nativeOn:{\"click\":function($event){return _vm.close($event)}}},[_vm._v(\"Cancel\")]),_c('v-btn',{attrs:{\"color\":\"blue darken-1\",\"flat\":\"\"},nativeOn:{\"click\":function($event){return _vm.save($event)}}},[_vm._v(\"Save\")])],1)],1)],1)],1),_c('v-data-table',{attrs:{\"headers\":_vm.headers,\"items\":_vm.users,\"item-key\":\"UserId\",\"search\":_vm.filters,\"custom-filter\":_vm.customFilter,\"hide-actions\":\"\"},scopedSlots:_vm._u([{key:\"items\",fn:function(props){return [_c('tr',{staticClass:\"clickable-row\",on:{\"click\":function($event){props.expanded = !props.expanded}}},[_c('td',{staticClass:\"text-xs-left\"},[_vm._v(_vm._s(props.item.NetId))]),_c('td',{staticClass:\"text-xs-left\"},[_vm._v(_vm._s(props.item.LastName)+\", \"+_vm._s(props.item.FirstName))]),_c('td',{staticClass:\"text-xs-left\"},[_vm._v(_vm._s(props.item.Email))]),_c('td',{staticClass:\"text-xs-left\"},[_vm._v(_vm._s(props.item.Phone))]),_c('td',{staticClass:\"text-xs-left\"},[_vm._v(_vm._s(props.item.Role))]),_c('td',{staticClass:\"justify-center layout px-0\"},[_c('v-icon',{staticClass:\"mr-2\",attrs:{\"medium\":\"\"},on:{\"click\":function($event){return _vm.editItem(props.item)}}},[_vm._v(\"edit\")]),(!props.item.Archived)?_c('v-btn',{staticClass:\"mr-2\",staticStyle:{\"color\":\"white\"},attrs:{\"medium\":\"\",\"color\":\"#B3041A\"},on:{\"click\":function($event){return _vm.deleteItem(props.item, props.index)}}},[_vm._v(\"Archive\")]):_vm._e(),(props.item.Archived)?_c('v-btn',{staticClass:\"mr-2\",staticStyle:{\"color\":\"white\"},attrs:{\"medium\":\"\",\"color\":\"#B3041A\"},on:{\"click\":function($event){return _vm.unarchiveUser(props.item)}}},[_vm._v(\"Unarchive\")]):_vm._e()],1)])]}}])})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","export default class Role {\n private Id: number;\n private Name: string;\n\n constructor($Id: number, $Name: string) {\n this.Id = $Id;\n this.Name = $Name;\n }\n // @ts-ignore\n constructor();\n\n fromJSON(json: any) {\n this.Id = json.id;\n this.Name = json.name\n }\n\n public getId(): number {\n return this.Id;\n }\n\n public setId(Id: number): void {\n this.Id = Id;\n }\n\n public getName(): string {\n return this.Name;\n }\n\n public setName(Name: string): void {\n this.Name = Name;\n }\n}","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n// @ts-ignore\nimport { Component, Prop, Vue, Watch } from \"vue-property-decorator\";\nimport { State } from \"vuex-class\";\nimport User from \"@/models/User\";\nimport { store } from \"@/store/store\";\nimport {\n getUsers,\n archiveUserId,\n putUser,\n postUser,\n unArchiveUserId,\n getRoles\n} from \"@/services/services\";\nimport Collar from \"@/models/Collar\";\nimport Role from \"@/models/Role\";\n\n@Component({})\nexport default class Users extends Vue {\n private headers: {}[] = [\n { text: \"Net Id\", value: \"NetId\", sortable: false },\n { text: \"Name\", value: \"LastName\", sortable: false },\n { text: \"Email\", value: \"Email\", sortable: false },\n { text: \"Phone\", value: \"Phone\", sortable: false },\n { text: \"Role\", value: \"Role\", sortable: false },\n { text: \"\", value: \"Actions\", sortable: false }\n ];\n private users: User[];\n private adminList: {}[] = [\n { text: \"True\", value: true },\n { text: \"False\", value: false }\n ];\n private status: {}[] = [\n { text: \"All\", value: null },\n { text: \"Archived\", value: true },\n { text: \"Current\", value: false }\n ];\n private confirmdialog: boolean;\n private defaultUser: User;\n private selectedUser: User;\n private selectedIndex: number;\n private dialog: boolean;\n private selectedStatus: boolean | null;\n private search: string;\n @State\n private user!: User;\n @State\n private token!: string;\n private filters: {} = {\n search: \"\",\n status: false\n };\n private roles: Role[];\n\n constructor() {\n super();\n this.defaultUser = new User();\n this.selectedUser = new User();\n this.confirmdialog = false;\n this.selectedIndex = -1;\n this.users = [];\n this.dialog = false;\n this.search = \"\";\n this.selectedStatus = false;\n this.roles = [];\n }\n created() {\n this.getUsers();\n this.getRoles();\n }\n\n required(value: string) {\n return !!value || \"Required\";\n }\n\n deleteItem(item: User, index: number) {\n this.confirmdialog = true;\n this.selectedUser = item;\n }\n\n editItem(item: User) {\n this.selectedUser = item;\n this.dialog = true;\n }\n\n archiveUser() {\n archiveUserId(this.selectedUser.NetId, this.token);\n this.confirmdialog = false;\n this.selectedUser.archive();\n }\n\n unarchiveUser(user: User) {\n unArchiveUserId(user.NetId, this.token);\n user.unarchive();\n }\n\n close() {\n this.confirmdialog = false;\n this.dialog = false;\n setTimeout(() => {\n this.selectedUser = new User();\n this.selectedIndex = -1;\n }, 300);\n }\n\n async save() {\n try {\n if (this.selectedUser.UserId != undefined) {\n let result = await putUser(this.selectedUser, this.token);\n } else {\n let result = await postUser(this.selectedUser, this.token);\n let id = await result.json();\n this.selectedUser.UserId = id;\n this.users.push(this.selectedUser);\n }\n var role = this.roles.find(element => {\n return element.getId() == this.selectedUser.RoleId;\n });\n this.selectedUser.Role = role!.getName();\n this.close();\n\n // this.title = \"Capture Saved\";\n } catch (err) {\n this.close();\n }\n }\n\n async getRoles() {\n var res = await getRoles();\n var data = await res.json();\n data.forEach((element: object) => {\n var r = new Role();\n r.fromJSON(element);\n this.roles.push(r);\n });\n }\n\n async getUsers() {\n try {\n var res = await getUsers(this.token);\n var list = await res.json();\n list.forEach((element: object) => {\n const user = new User();\n user.fromJSON(element);\n this.users.push(user);\n });\n } catch (error) {}\n }\n\n customFilter(items: any, filters: any, filter: any, headers: any) {\n // Init the filter class.\n const cf = new this.$MultiFilters(items, filters, filter, headers);\n\n //Register each filter with the custom filter initialized above.\n cf.registerFilter(\"search\", function(searchWord: string, items: User[]) {\n //This is the logic of the filter\n if (!searchWord) return items;\n\n if (searchWord.trim() === \"\") return items;\n\n return items.filter(item => {\n return item.FullName!.toLowerCase().includes(searchWord.toLowerCase());\n }, searchWord);\n });\n\n cf.registerFilter(\"status\", function(status: boolean, items: User[]) {\n //This is the logic of the filter\n if (status == null) return items;\n\n let newit = items.filter(item => {\n return item.Archived === status;\n }, status);\n\n return newit;\n });\n return cf.runFilters();\n }\n\n // These are the functions that determine which filters need to be updated\n filterSearch(val: string) {\n this.filters = this.$MultiFilters.updateFilters(this.filters, {\n search: val\n });\n }\n\n filterstatus(val: string[]) {\n this.filters = this.$MultiFilters.updateFilters(this.filters, {\n status: val\n });\n }\n}\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--13-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Users.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--13-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Users.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Users.vue?vue&type=template&id=ef643c50&scoped=true&\"\nimport script from \"./Users.vue?vue&type=script&lang=ts&\"\nexport * from \"./Users.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./Users.vue?vue&type=style&index=0&id=ef643c50&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 \"ef643c50\",\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('v-card',{staticClass:\"elevation-1\"},[_c('v-dialog',{attrs:{\"max-width\":\"290\"},model:{value:(_vm.confirmdialog),callback:function ($$v) {_vm.confirmdialog=$$v},expression:\"confirmdialog\"}},[_c('v-card',[_c('v-card-title',{staticClass:\"headline\"},[_vm._v(\"Archive SubUnit\")]),_c('v-card-text',[_vm._v(\"Are you sure you want to Archive this SubUnit?\")]),_c('v-card-actions',[_c('v-spacer'),_c('v-btn',{attrs:{\"color\":\"green darken-1\",\"flat\":\"flat\"},on:{\"click\":_vm.close}},[_vm._v(\"No\")]),_c('v-btn',{attrs:{\"color\":\"green darken-1\",\"flat\":\"flat\"},on:{\"click\":_vm.archiveSubUnit}},[_vm._v(\"Yes\")])],1)],1)],1),_c('v-toolbar',{attrs:{\"flat\":\"\",\"color\":\"#002E5D\"}},[_c('v-toolbar-title',{staticStyle:{\"color\":\"white\"}},[_vm._v(\"SubUnits\")])],1),_c('v-toolbar',{staticStyle:{\"padding-bottom\":\"15px\"},attrs:{\"flat\":\"\",\"color\":\"white\"}},[_c('v-flex',{attrs:{\"mt-3\":\"\",\"mr-2\":\"\",\"pt-1\":\"\"}},[_c('v-select',{attrs:{\"items\":_vm.status,\"label\":\"Status\"},on:{\"change\":_vm.filterState},model:{value:(_vm.selectedStatus),callback:function ($$v) {_vm.selectedStatus=$$v},expression:\"selectedStatus\"}})],1),_c('v-text-field',{attrs:{\"append-icon\":\"search\",\"label\":\"Search\",\"single-line\":\"\",\"hide-details\":\"\"},on:{\"input\":_vm.filterSearch}}),_c('v-spacer'),_c('v-dialog',{attrs:{\"max-width\":\"450px\"},model:{value:(_vm.dialog),callback:function ($$v) {_vm.dialog=$$v},expression:\"dialog\"}},[_c('v-btn',{staticClass:\"mb-2\",attrs:{\"slot\":\"activator\",\"color\":\"#5F7C9B\",\"dark\":\"\"},slot:\"activator\"},[_vm._v(\"Add SubUnit\")]),_c('v-card',[_c('v-card-title',[_c('span',{staticClass:\"headline\"},[_vm._v(\"New SubUnit\")])]),_c('v-card-text',[_c('v-container',{attrs:{\"grid-list-md\":\"\",\"text-xs-center\":\"\",\"fluid\":\"\"}},[_c('v-layout',{attrs:{\"row\":\"\",\"wrap\":\"\",\"justify-start\":\"\",\"align-end\":\"\"}},[_c('v-flex',{attrs:{\"lg6\":\"\"}},[_c('v-text-field',{attrs:{\"label\":\"SubUnit Name\",\"single-line\":\"\",\"hide-details\":\"\"},model:{value:(_vm.selectedSubUnit.Name),callback:function ($$v) {_vm.$set(_vm.selectedSubUnit, \"Name\", $$v)},expression:\"selectedSubUnit.Name\"}})],1),_c('v-flex',{attrs:{\"lg6\":\"\"}},[_c('v-text-field',{attrs:{\"label\":\"Abbreviation\",\"single-line\":\"\",\"hide-details\":\"\"},model:{value:(_vm.selectedSubUnit.Abbreviation),callback:function ($$v) {_vm.$set(_vm.selectedSubUnit, \"Abbreviation\", $$v)},expression:\"selectedSubUnit.Abbreviation\"}})],1)],1)],1)],1),_c('v-card-actions',[_c('v-spacer'),_c('v-btn',{attrs:{\"color\":\"blue darken-1\",\"flat\":\"\"},nativeOn:{\"click\":function($event){return _vm.close($event)}}},[_vm._v(\"Cancel\")]),_c('v-btn',{attrs:{\"color\":\"blue darken-1\",\"flat\":\"\"},nativeOn:{\"click\":function($event){return _vm.save($event)}}},[_vm._v(\"Save\")])],1)],1)],1)],1),_c('v-data-table',{attrs:{\"headers\":_vm.headers,\"items\":_vm.SubUnits,\"item-key\":\"SubUnitId\",\"search\":_vm.filters,\"custom-filter\":_vm.customFilter,\"hide-actions\":\"\"},scopedSlots:_vm._u([{key:\"items\",fn:function(props){return [_c('tr',{staticClass:\"clickable-row\",on:{\"click\":function($event){props.expanded = !props.expanded}}},[_c('td',{staticClass:\"text-xs-left\"},[_vm._v(_vm._s(props.item.Name))]),_c('td',{staticClass:\"text-xs-left\"},[_vm._v(_vm._s(props.item.Abbreviation))]),_c('td',{staticClass:\"justify-center layout px-0\"},[_c('v-icon',{staticClass:\"mr-2\",attrs:{\"medium\":\"\"},on:{\"click\":function($event){return _vm.editItem(props.item)}}},[_vm._v(\"edit\")]),(_vm.user.RoleId == 1)?_c('span',[(!props.item.Archived)?_c('v-btn',{staticClass:\"mr-2\",staticStyle:{\"color\":\"white\"},attrs:{\"medium\":\"\",\"color\":\"#B3041A\"},on:{\"click\":function($event){return _vm.deleteItem(props.item, props.index)}}},[_vm._v(\"Archive\")]):_vm._e()],1):_vm._e(),(props.item.Archived)?_c('v-btn',{staticClass:\"mr-2\",staticStyle:{\"color\":\"white\"},attrs:{\"medium\":\"\",\"color\":\"#B3041A\"},on:{\"click\":function($event){return _vm.unarchiveSubUnit(props.item)}}},[_vm._v(\"Unarchive\")]):_vm._e()],1)])]}}])})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n// @ts-ignore\nimport { Component, Prop, Vue, Watch } from \"vue-property-decorator\";\nimport { State } from \"vuex-class\";\nimport SubUnit from \"@/models/SubUnit\";\nimport { store } from \"@/store/store\";\nimport {\n getSubUnits,\n deleteSubUnitById,\n putSubUnit,\n postSubUnit,\n} from \"@/services/services\";\nimport Collar from \"@/models/Collar\";\nimport User from \"@/models/User\";\n\n@Component({})\nexport default class SubUnits extends Vue {\n private headers: {}[] = [\n { text: \"SubUnit Name\", value: \"Name\", sortable: false },\n { text: \"Abbreviation\", value: \"Abbreviation\", sortable: false },\n\n { text: \"\", value: \"Actions\", sortable: false }\n ];\n private SubUnits: SubUnit[];\n private status: {}[] = [\n { text: \"All\", value: null },\n { text: \"Archived\", value: true },\n { text: \"Current\", value: false }\n ];\n private confirmdialog: boolean;\n private defaultSubUnit: SubUnit;\n private selectedSubUnit: SubUnit;\n private selectedIndex: number;\n private dialog: boolean;\n private selectedStatus: boolean | null;\n private search: string;\n @State\n private user!: User;\n @State\n private token!: string;\n private filters: {} = {\n search: \"\",\n State: false\n };\n\n constructor() {\n super();\n this.defaultSubUnit = new SubUnit();\n this.selectedSubUnit = new SubUnit();\n this.confirmdialog = false;\n this.selectedIndex = -1;\n this.SubUnits = [];\n this.dialog = false;\n this.search = \"\";\n this.selectedStatus = false;\n }\n created() {\n this.getSubUnits();\n }\n\n required(value: string) {\n return !!value || \"Required\";\n }\n\n deleteItem(item: SubUnit, index: number) {\n this.confirmdialog = true;\n this.selectedSubUnit = item;\n }\n\n editItem(item: SubUnit) {\n this.selectedSubUnit = item;\n this.dialog = true;\n }\n\n archiveSubUnit() {\n deleteSubUnitById(this.selectedSubUnit.Id, this.token);\n this.confirmdialog = false;\n this.selectedSubUnit.Archived = true;\n this.close();\n }\n\n unarchiveSubUnit(subUnit: SubUnit) {\n\n subUnit.Archived = false;\n putSubUnit(subUnit, this.token);\n this.close();\n }\n\n close() {\n this.confirmdialog = false;\n this.dialog = false;\n setTimeout(() => {\n this.selectedSubUnit = new SubUnit();\n this.selectedIndex = -1;\n console.log('here');\n }, 300);\n }\n\n async save() {\n try {\n if (this.selectedSubUnit.Id != undefined) {\n let result = await putSubUnit(this.selectedSubUnit, this.token);\n } else {\n let result = await postSubUnit(this.selectedSubUnit, this.token);\n let id = await result.json();\n this.selectedSubUnit.Id = id;\n this.selectedSubUnit.Archived = false;\n console.log(this.selectedSubUnit);\n this.SubUnits.push(this.selectedSubUnit);\n }\n\n this.close();\n\n // this.title = \"Capture Saved\";\n } catch (err) {\n err;\n this.close();\n }\n }\n\n async getSubUnits() {\n try {\n var res = await getSubUnits(true);\n var list = await res.json();\n list.forEach((item : any) => {\n const subUnit = new SubUnit();\n subUnit.fromJSON(item);\n this.SubUnits.push(subUnit);\n });\n } catch (error) {}\n }\n\n customFilter(items: any, filters: any, filter: any, headers: any) {\n // Init the filter class.\n const cf = new this.$MultiFilters(items, filters, filter, headers);\n\n //Register each filter with the custom filter initialized above.\n cf.registerFilter(\"search\", function(searchWord : any, items : any) {\n //This is the logic of the filter\n if (!searchWord) return items;\n\n if (searchWord.trim() === \"\") return items;\n\n return items.filter((item : any) => {\n return item.Name.toLowerCase().includes(searchWord.toLowerCase());\n }, searchWord);\n });\n\n cf.registerFilter(\"State\", function(State: boolean, items: any[]) {\n //This is the logic of the filter\n if (State == null) return items;\n\n let newit = items.filter((item : any) => {\n return item.Archived === State;\n }, State);\n\n return newit;\n });\n return cf.runFilters();\n }\n\n // These are the functions that determine which filters need to be updated\n filterSearch(val: string) {\n this.filters = this.$MultiFilters.updateFilters(this.filters, {\n search: val\n });\n }\n\n filterState(val: string[]) {\n this.filters = this.$MultiFilters.updateFilters(this.filters, {\n State: val\n });\n }\n}\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--13-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SubUnits.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--13-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SubUnits.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./SubUnits.vue?vue&type=template&id=2a3b1944&scoped=true&\"\nimport script from \"./SubUnits.vue?vue&type=script&lang=ts&\"\nexport * from \"./SubUnits.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./SubUnits.vue?vue&type=style&index=0&id=2a3b1944&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 \"2a3b1944\",\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('v-layout',{attrs:{\"column\":\"\"}},[_c('v-flex',{attrs:{\"md1\":\"\",\"xs1\":\"\",\"lg11\":\"\"}},[_c('v-layout',{attrs:{\"justify-end\":\"\"}},[_c('v-flex',{attrs:{\"md4\":\"\"}},[_c('v-select',{attrs:{\"items\":['All', 'Archived', 'Current'],\"label\":\"Filter Projects\",\"outline\":\"\"},model:{value:(_vm.projectsFilter),callback:function ($$v) {_vm.projectsFilter=$$v},expression:\"projectsFilter\"}})],1)],1)],1),_c('v-flex',{attrs:{\"md11\":\"\",\"xs11\":\"\",\"lg11\":\"\"}},[_c('v-toolbar',{attrs:{\"flat\":\"\",\"dark\":\"\",\"color\":\"primary\"}},[_c('v-toolbar-title',[_vm._v(\"Projects\")])],1),_c('v-layout',{staticStyle:{\"padding-top\":\"16px\"}},[_vm._l((_vm.projectsList),function(p,i){return _c('div',{key:p.id,class:p.deleted ? 'project-card deleted-card' : 'project-card',on:{\"click\":function($event){return _vm.setEdit(i)}}},[_c('v-layout',{staticStyle:{\"height\":\"100%\"},attrs:{\"justify-center\":\"\",\"align-center\":\"\"}},[_c('h3',[_vm._v(_vm._s(p.name))])])],1)}),_c('div',{staticClass:\"project-card\",attrs:{\"id\":\"new-project\"},on:{\"click\":function($event){return _vm.newDialog()}}},[_c('v-layout',{staticStyle:{\"height\":\"100%\"},attrs:{\"justify-center\":\"\",\"align-center\":\"\"}},[_c('span',{staticStyle:{\"font-size\":\"48px\"}},[_vm._v(\"+\")])])],1)],2)],1),_c('v-dialog',{attrs:{\"width\":\"528px\"},model:{value:(_vm.dialog),callback:function ($$v) {_vm.dialog=$$v},expression:\"dialog\"}},[_c('v-card',[_c('v-card-title',[_vm._v(\"\\n \"+_vm._s(_vm.isEdit ? 'Edit Project' : 'New Project')+\"\\n \")]),_c('v-card-text',[_c('v-layout',{attrs:{\"column\":\"\"}},[_c('v-flex',[_c('v-text-field',{attrs:{\"label\":\"Project Name\"},model:{value:(_vm.editProject.name),callback:function ($$v) {_vm.$set(_vm.editProject, \"name\", $$v)},expression:\"editProject.name\"}})],1),_c('v-flex',[_c('v-textarea',{attrs:{\"label\":\"Description\"},model:{value:(_vm.editProject.description),callback:function ($$v) {_vm.$set(_vm.editProject, \"description\", $$v)},expression:\"editProject.description\"}})],1)],1)],1),_c('v-card-actions',[_c('v-spacer'),(this.isEdit)?_c('v-btn',{attrs:{\"color\":\"error\",\"flat\":\"\"},on:{\"click\":function($event){return _vm.archiveProject()}}},[_vm._v(_vm._s(!!this.editProject.deleted ? 'Restore' : 'Archive'))]):_vm._e(),_c('v-btn',{attrs:{\"color\":\"primary\",\"flat\":\"\"},on:{\"click\":_vm.save}},[_vm._v(\"Save\")]),_c('v-btn',{attrs:{\"flat\":\"\"},on:{\"click\":_vm.closeProjectDialog}},[_vm._v(\"Cancel\")])],1)],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\nimport { addNewProject, deleteProject, getProjects, updateProject } from '../services/services'\nimport { Component, Watch } from 'vue-property-decorator'\nimport Vue from 'vue'\n\n @Component({})\n export default class Projects extends Vue {\n private projects: any[];\n private isEdit: boolean;\n private editProject: any;\n private dialog: boolean;\n private projectsFilter: string;\n private projectsList: any[]\n\n constructor() {\n super()\n this.projects = []\n this.isEdit = false\n this.editProject = {}\n this.dialog = false\n this.projectsFilter = 'All'\n this.projectsList = []\n }\n\n mounted() {\n getProjects()\n .then(data => {\n this.projects = data\n this.projectsFilter = 'Current'\n })\n }\n save() {\n if(!this.isEdit)\n addNewProject(this.editProject)\n .then(data => {\n this.projects.push(data)\n this.dialog = false\n })\n else \n updateProject(this.editProject)\n .then(data => {\n const arr = []\n this.projects.forEach(p => {\n if(p.id === this.editProject.id)\n arr.push(this.editProject)\n else \n arr.push(p)\n })\n this.projects = arr\n this.dialog = false\n })\n .catch(err => {\n console.error(err)\n })\n \n }\n setEdit(idx) {\n this.editProject = {...this.projects[idx]}\n this.isEdit = true\n this.dialog = true\n }\n newDialog() {\n this.isEdit = false\n this.editProject = {}\n this.dialog = true\n }\n closeProjectDialog() {\n this.dialog = false\n }\n archiveProject() {\n deleteProject(this.editProject.id)\n .then(data => {\n const arr = []\n const temp = this.projectsFilter\n this.projectsFilter = 'All'\n this.editProject.deleted = !this.editProject.deleted\n\n this.projects.forEach(p => {\n if(p.id === this.editProject.id)\n arr.push(this.editProject)\n else \n arr.push(p)\n })\n\n this.projects = arr\n this.dialog = false\n this.projectsFilter = temp\n })\n }\n\n getFliteredList() {\n console.log('getting list')\n const list = [...this.projects]\n\n if(this.projectsFilter === 'Archived')\n return list.filter(a => a.deleted)\n\n else if(this.projectsFilter === 'Current')\n return list.filter(a => !a.deleted)\n\n else \n return list\n }\n\n @Watch('projectsFilter')\n filterList() {\n this.projectsList = this.getFliteredList()\n }\n\n @Watch('projects')\n projectsWatcher(){\n this.projectsList = this.getFliteredList()\n }\n }\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--13-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Projects.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--13-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Projects.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Projects.vue?vue&type=template&id=3944afc9&\"\nimport script from \"./Projects.vue?vue&type=script&lang=ts&\"\nexport * from \"./Projects.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./Projects.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 Vue from 'vue';\nimport Router from 'vue-router';\nimport Staging from './views/Staging.vue'\nimport Edit from './views/Animals/Edit.vue';\nimport Main from './views/Animals/Main.vue';\nimport Collars from './views/Collars.vue';\nimport Units from './views/Units.vue';\nimport Users from './views/Users.vue';\nimport SubUnits from './views/SubUnits.vue';\nimport Projects from './views/Projects.vue'\n\nVue.use(Router);\n\nexport default new Router({\n mode: 'history',\n base: process.env.BASE_URL,\n routes: [\n {path: '/', name: 'main', component: Main},\n {path: '/animal/edit/:id', name: 'edit', component: Edit},\n {path: '/units', name: 'units', component: Units},\n {path: '/collars', name: 'collars', component: Collars},\n {path: '/users', name: 'users', component: Users},\n {path: '/staging', name: 'staging', component: Staging},\n {path: '/subunits', name: 'subunits', component: SubUnits},\n {path: '/projects', name: 'projects', component: Projects}\n ]\n});\n","import 'material-design-icons-iconfont/dist/material-design-icons.css'; // ensure you are using css-loader\nimport 'vuetify/dist/vuetify.min.css'; // ensure you are using css-loader\n\nimport Vue from 'vue';\nimport * as VueGoogleMaps from 'vue2-google-maps'\nimport Vuetify from 'vuetify';\n\nimport App from './App.vue';\nimport MultiFiltersPlugin from './plugins/MultiFilters';\nimport router from './router';\nimport {store} from './store/store';\n\nVue.config.productionTip = false;\nVue.config.ignoredElements = [\n /^byu-/,\n];\n\nVue.use(MultiFiltersPlugin); // <-- THIS\nVue.use(Vuetify, {\n theme: {\n primary: '#002E5D',\n secondary: '#0057B8',\n accent: '#5F7C9B',\n error: '#B3041A',\n info: '#2196F3',\n success: '#66B200',\n warning: '#FFC107'\n }\n});\nVue.use(VueGoogleMaps, {\n load: {\n key: 'AIzaSyC33fmQb_ciRqNdt7HH1xuxUxY6O6uw4qw',\n libraries: 'places', // This is required if you use the Autocomplete plugin\n // OR: libraries: 'places,drawing'\n // OR: libraries: 'places,drawing,visualization'\n // (as you require)\n\n //// If you want to set the version, you can do so:\n // v: '3.26',\n },\n\n //// If you intend to programmatically custom event listener code\n //// (e.g. `this.$refs.gmap.$on('zoom_changed', someFunc)`)\n //// instead of going through Vue templates (e.g. ``) / you might need to turn this on.\n // autobindAllEvents: false,\n\n //// If you want to manually install components, e.g.\n //// import {GmapMarker} from 'vue2-google-maps/src/components/marker'\n //// Vue.component('GmapMarker', GmapMarker)\n //// then disable the following:\n // installComponents: true,\n})\n\nVue.filter('formatDate', function(value) {\n if (value) {\n var iso = value.toISOString();\n return iso.substr(0, 10) + \" \" + iso.substr(11, 8);\n }\n else return \"unknown date\";\n});\n\nVue.filter('formatDateShort', function(value) {\n if (value) {\n return value.toISOString().substr(0, 10);\n }\n else return \"unknown date\";\n});\n\nVue.config.productionTip = false;\n\nnew Vue({router, store, render: h => h(App)}).$mount('#app');\n","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/index.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!./Users.vue?vue&type=style&index=0&id=ef643c50&lang=scss&scoped=true&\"","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/index.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!./Staging.vue?vue&type=style&index=0&lang=scss&\""],"sourceRoot":""}