{"version":3,"sources":["webpack:///../../../src/components/VSkeletonLoader/VSkeletonLoader.ts","webpack:///./src/components/VesselInfo/VesselInfoContent.vue?a675","webpack:///./src/components/VesselInfo/VesselInfoContentLoader.vue?1903","webpack:///./src/components/VesselInfo/PerformanceStatusItem.vue?bc70","webpack:///./src/components/VesselInfo/VesselInfoContentCard.vue?056a","webpack:///./src/components/VesselInfo/VesselInfoContentCard.vue","webpack:///./src/components/VesselInfo/VesselInfoContentCard.vue?5895","webpack:///./src/components/VesselInfo/VesselInfoContentCard.vue?7829","webpack:///./src/views/vessel/VesselInfo.vue?bb1c","webpack:///./src/components/VesselInfo/VesselInfoContentLoader.vue?b3e0","webpack:///./src/components/VesselInfo/VesselInfoContentLoader.vue","webpack:///./src/components/VesselInfo/VesselInfoContentLoader.vue?8fcf","webpack:///./src/components/VesselInfo/VesselInfoContentLoader.vue?f2a3","webpack:///./src/components/VesselInfo/VesselInfoContent.vue?6218","webpack:///./src/components/VesselInfo/PerformanceStatusItem.vue?4a41","webpack:///./src/components/VesselInfo/PerformanceStatusItem.vue","webpack:///./src/components/VesselInfo/PerformanceStatusItem.vue?38e7","webpack:///./src/components/VesselInfo/PerformanceStatusItem.vue?d243","webpack:///./src/components/VesselInfo/VesselInfoContent.vue","webpack:///./src/components/VesselInfo/VesselInfoContent.vue?e811","webpack:///./src/components/VesselInfo/VesselInfoContent.vue?9075","webpack:///./src/views/vessel/VesselInfo.vue","webpack:///./src/views/vessel/VesselInfo.vue?c8fe","webpack:///./src/views/vessel/VesselInfo.vue?a9b8","webpack:///./src/components/VesselInfo/VesselInfoContentCard.vue?a008"],"names":["mixins","Elevatable","Measurable","Themeable","extend","name","props","boilerplate","Boolean","loading","tile","transition","String","type","types","Object","default","computed","attrs","this","isLoading","role","$attrs","classes","themeClasses","elevationClasses","$scopedSlots","rootTypes","actions","article","avatar","button","card","chip","heading","image","paragraph","sentences","table","text","methods","genBone","children","$createElement","staticClass","genBones","bone","split","length","generator","genStructure","Array","from","map","indexOf","mapBones","push","genSkeleton","getSlot","on","afterEnter","resetStyles","beforeEnter","onBeforeEnter","beforeLeave","onBeforeLeave","leaveCancelled","bones","replace","el","_initialStyle","display","style","setProperty","render","h","$listeners","class","measurableStyles","undefined","_vm","_h","_c","_self","_t","staticRenderFns","VesselInfoContentCard","Vue","Component","components","component","latestVesselHistory","vesselHistoryAdditionals","vesselHistories","longTrendsDiagnosticType","VesselInfoContentLoader","VCol","VRow","VSkeletonLoader","scopedSlots","_u","key","fn","_v","proxy","_l","item","index","directives","rawName","value","expression","_s","description","_e","prettyStatusUpdatedTime","longTrendDiagnosticType","staticStyle","vessel","descriptionLong","onUseInVesselStatusChange","model","callback","$$v","$set","ref","_g","performanceStatusIconSettings","color","icon","performanceStatus","longTrendBenchmarkLevelIconSettings","tooltip","Snackbar","getModule","SnackbarModule","store","PerformanceStatusItem","useManualBenchmarkLevel","manualBenchmarkLevel","useInVesselStatus","LongTrendsClient","update","showSnackbar","__decorate","Prop","required","VCheckbox","VIcon","VTooltip","Vessels","VesselsModule","VesselInfoContent","currentVessel","performance","hasNoImports","imoNumber","voyage","voyageName","departurePort","arrivalPort","dateHelper","getFormatedDateTimeString","lastExportDate","trendPeriod","loggingHistoryPeriod","prettyLogVariable","logSpeed","logSpeedLogVariable","gpsSpeed","gpsSpeedLogVariable","prettyLongLatValue","latitude","longitude","course","courseLogVariable","draftMean","draftMeanLogVariable","trim","trimLogVariable","vesselHistory","logVariable","trendDataMinDate","trendDataMaxDate","getFormatedDateString","logDataMinDate","logDataMaxDate","hasDiagnosticTypeId","some","longTrend","diagnosticTypeId","isDiagnosticActivated","_","isEmpty","variable","$root","$options","filters","prettyLatitude","prettyLongitude","maxStatusUpdatedLongTrend","max","moment","performanceStatusUpdated","isNumber","Map","VAlert","LogVariables","LogVariablesModule","VesselsHistories","VesselsHistoriesModule","VesselInfo","isTrendPeriodLoading","isLogVariablesLoading","isVesselHistoryAdditionalsLoading","isLatestVesselHistoryLoading","isVesselHistoriesLoading","currentVesselLogVariables","id","Promise","reject","refreshCurrentVesselLogVariables","getLatestVesselHistory","getVesselHistories","timespan","getVesselHistoryAdditionals","vesselLogVariables","find","logVariableId","findLongTrends","fetchLogVariables","fetchLatestVesselHistory","fetchVesselHistories","fetchVesselHistoryAdditionals","fetchLongTrends"],"mappings":"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","file":"js/chunk-57012571.d4bab72e.js","sourcesContent":["// Styles\nimport './VSkeletonLoader.sass'\n\n// Mixins\nimport Elevatable from '../../mixins/elevatable'\nimport Measurable from '../../mixins/measurable'\nimport Themeable from '../../mixins/themeable'\n\n// Utilities\nimport mixins from '../../util/mixins'\n\n// Types\nimport { VNode } from 'vue'\nimport { getSlot } from '../../util/helpers'\nimport { PropValidator } from 'vue/types/options'\n\nexport interface HTMLSkeletonLoaderElement extends HTMLElement {\n _initialStyle?: {\n display: string | null\n transition: string\n }\n}\n\n/* @vue/component */\nexport default mixins(\n Elevatable,\n Measurable,\n Themeable,\n).extend({\n name: 'VSkeletonLoader',\n\n props: {\n boilerplate: Boolean,\n loading: Boolean,\n tile: Boolean,\n transition: String,\n type: String,\n types: {\n type: Object,\n default: () => ({}),\n } as PropValidator>,\n },\n\n computed: {\n attrs (): object {\n if (!this.isLoading) return this.$attrs\n\n return !this.boilerplate ? {\n 'aria-busy': true,\n 'aria-live': 'polite',\n role: 'alert',\n ...this.$attrs,\n } : {}\n },\n classes (): object {\n return {\n 'v-skeleton-loader--boilerplate': this.boilerplate,\n 'v-skeleton-loader--is-loading': this.isLoading,\n 'v-skeleton-loader--tile': this.tile,\n ...this.themeClasses,\n ...this.elevationClasses,\n }\n },\n isLoading (): boolean {\n return !('default' in this.$scopedSlots) || this.loading\n },\n rootTypes (): Record {\n return {\n actions: 'button@2',\n article: 'heading, paragraph',\n avatar: 'avatar',\n button: 'button',\n card: 'image, card-heading',\n 'card-avatar': 'image, list-item-avatar',\n 'card-heading': 'heading',\n chip: 'chip',\n 'date-picker': 'list-item, card-heading, divider, date-picker-options, date-picker-days, actions',\n 'date-picker-options': 'text, avatar@2',\n 'date-picker-days': 'avatar@28',\n heading: 'heading',\n image: 'image',\n 'list-item': 'text',\n 'list-item-avatar': 'avatar, text',\n 'list-item-two-line': 'sentences',\n 'list-item-avatar-two-line': 'avatar, sentences',\n 'list-item-three-line': 'paragraph',\n 'list-item-avatar-three-line': 'avatar, paragraph',\n paragraph: 'text@3',\n sentences: 'text@2',\n table: 'table-heading, table-thead, table-tbody, table-tfoot',\n 'table-heading': 'heading, text',\n 'table-thead': 'heading@6',\n 'table-tbody': 'table-row-divider@6',\n 'table-row-divider': 'table-row, divider',\n 'table-row': 'table-cell@6',\n 'table-cell': 'text',\n 'table-tfoot': 'text@2, avatar@2',\n text: 'text',\n ...this.types,\n }\n },\n },\n\n methods: {\n genBone (text: string, children: VNode[]) {\n return this.$createElement('div', {\n staticClass: `v-skeleton-loader__${text} v-skeleton-loader__bone`,\n }, children)\n },\n genBones (bone: string): VNode[] {\n // e.g. 'text@3'\n const [type, length] = bone.split('@') as [string, number]\n const generator = () => this.genStructure(type)\n\n // Generate a length array based upon\n // value after @ in the bone string\n return Array.from({ length }).map(generator)\n },\n // Fix type when this is merged\n // https://github.com/microsoft/TypeScript/pull/33050\n genStructure (type?: string): any {\n let children = []\n type = type || this.type || ''\n const bone = this.rootTypes[type] || ''\n\n // End of recursion, do nothing\n /* eslint-disable-next-line no-empty, brace-style */\n if (type === bone) {}\n // Array of values - e.g. 'heading, paragraph, text@2'\n else if (type.indexOf(',') > -1) return this.mapBones(type)\n // Array of values - e.g. 'paragraph@4'\n else if (type.indexOf('@') > -1) return this.genBones(type)\n // Array of values - e.g. 'card@2'\n else if (bone.indexOf(',') > -1) children = this.mapBones(bone)\n // Array of values - e.g. 'list-item@2'\n else if (bone.indexOf('@') > -1) children = this.genBones(bone)\n // Single value - e.g. 'card-heading'\n else if (bone) children.push(this.genStructure(bone))\n\n return [this.genBone(type, children)]\n },\n genSkeleton () {\n const children = []\n\n if (!this.isLoading) children.push(getSlot(this))\n else children.push(this.genStructure())\n\n /* istanbul ignore else */\n if (!this.transition) return children\n\n /* istanbul ignore next */\n return this.$createElement('transition', {\n props: {\n name: this.transition,\n },\n // Only show transition when\n // content has been loaded\n on: {\n afterEnter: this.resetStyles,\n beforeEnter: this.onBeforeEnter,\n beforeLeave: this.onBeforeLeave,\n leaveCancelled: this.resetStyles,\n },\n }, children)\n },\n mapBones (bones: string) {\n // Remove spaces and return array of structures\n return bones.replace(/\\s/g, '').split(',').map(this.genStructure)\n },\n onBeforeEnter (el: HTMLSkeletonLoaderElement) {\n this.resetStyles(el)\n\n if (!this.isLoading) return\n\n el._initialStyle = {\n display: el.style.display,\n transition: el.style.transition,\n }\n\n el.style.setProperty('transition', 'none', 'important')\n },\n onBeforeLeave (el: HTMLSkeletonLoaderElement) {\n el.style.setProperty('display', 'none', 'important')\n },\n resetStyles (el: HTMLSkeletonLoaderElement) {\n if (!el._initialStyle) return\n\n el.style.display = el._initialStyle.display || ''\n el.style.transition = el._initialStyle.transition\n\n delete el._initialStyle\n },\n },\n\n render (h): VNode {\n return h('div', {\n staticClass: 'v-skeleton-loader',\n attrs: this.attrs,\n on: this.$listeners,\n class: this.classes,\n style: this.isLoading ? this.measurableStyles : undefined,\n }, [this.genSkeleton()])\n },\n})\n","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./VesselInfoContent.vue?vue&type=style&index=0&id=061ba7ef&lang=scss&scoped=true&\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./VesselInfoContentLoader.vue?vue&type=style&index=0&id=3ac7087b&lang=scss&scoped=true&\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PerformanceStatusItem.vue?vue&type=style&index=0&id=4b60e48b&lang=scss&scoped=true&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"vessel-info__card\"},[_c('div',{staticClass:\"vessel-info__card__header px-2\"},[_vm._t(\"header\")],2),_c('div',{staticClass:\"vessel-info__card__content pl-8\"},[_vm._t(\"content\")],2)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\nimport { Component, Vue } from \"vue-property-decorator\";\n\n@Component({\n components: {},\n})\nexport default class VesselInfoContentCard extends Vue {}\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--15-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./VesselInfoContentCard.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--15-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./VesselInfoContentCard.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./VesselInfoContentCard.vue?vue&type=template&id=350254ea&scoped=true&\"\nimport script from \"./VesselInfoContentCard.vue?vue&type=script&lang=ts&\"\nexport * from \"./VesselInfoContentCard.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./VesselInfoContentCard.vue?vue&type=style&index=0&id=350254ea&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 \"350254ea\",\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',[(_vm.isVesselDataLoading)?_c('VesselInfoContentLoader'):_c('VesselInfoContent',{attrs:{\"latestVesselHistory\":_vm.latestVesselHistory,\"vesselHistoryAdditionals\":_vm.vesselHistoryAdditionals,\"vesselHistories\":_vm.vesselHistories,\"longTrendsDiagnosticType\":_vm.longTrendsDiagnosticType}})],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-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"md\":\"6\"}},[_c('v-skeleton-loader',{attrs:{\"type\":\"article\"}})],1),_c('v-col',{attrs:{\"cols\":\"12\",\"md\":\"6\"}},[_c('v-skeleton-loader',{attrs:{\"type\":\"article\"}})],1),_c('v-col',{attrs:{\"cols\":\"12\",\"md\":\"6\"}},[_c('v-skeleton-loader',{attrs:{\"type\":\"article\"}})],1),_c('v-col',{attrs:{\"cols\":\"12\",\"md\":\"6\"}},[_c('v-skeleton-loader',{attrs:{\"type\":\"article\"}})],1),_c('v-col',{attrs:{\"cols\":\"12\",\"md\":\"12\"}},[_c('v-skeleton-loader',{attrs:{\"type\":\"image\"}})],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\nimport { Component, Vue } from \"vue-property-decorator\";\n\n@Component({})\nexport default class VesselInfoContentLoader extends Vue {}\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--15-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./VesselInfoContentLoader.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--15-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./VesselInfoContentLoader.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./VesselInfoContentLoader.vue?vue&type=template&id=3ac7087b&scoped=true&\"\nimport script from \"./VesselInfoContentLoader.vue?vue&type=script&lang=ts&\"\nexport * from \"./VesselInfoContentLoader.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./VesselInfoContentLoader.vue?vue&type=style&index=0&id=3ac7087b&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 \"3ac7087b\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VRow } from 'vuetify/lib/components/VGrid';\nimport { VSkeletonLoader } from 'vuetify/lib/components/VSkeletonLoader';\ninstallComponents(component, {VCol,VRow,VSkeletonLoader})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('v-row',[_c('v-col',{attrs:{\"cols\":\"6\",\"lg\":\"6\",\"sm\":\"12\"}},[_c('VesselInfoContentCard',{scopedSlots:_vm._u([{key:\"header\",fn:function(){return [_c('h3',[_vm._v(\"General information\")])]},proxy:true},{key:\"content\",fn:function(){return [_c('ul',{staticClass:\"pa-0\"},_vm._l((_vm.generalInfo),function(item,index){return _c('li',{directives:[{name:\"show\",rawName:\"v-show\",value:(Boolean(item.value)),expression:\"Boolean(item.value)\"}],key:(\"key-\" + index)},[_vm._v(\" \"+_vm._s(item.description)+\": \"),_c('strong',[_vm._v(_vm._s(item.value))])])}),0)]},proxy:true}])}),(_vm.hasNoImports)?_c('v-alert',{staticClass:\"mt-6\",attrs:{\"border\":\"left\",\"colored-border\":\"\",\"color\":\"accent\",\"elevation\":\"2\"}},[_c('span',[_vm._v(\"There are no imports for this vessel yet\")])]):_vm._e()],1),_c('v-col',{attrs:{\"cols\":\"6\",\"lg\":\"6\",\"sm\":\"12\"}},[_c('VesselInfoContentCard',{staticClass:\"vessel-info__card--performance\",scopedSlots:_vm._u([{key:\"header\",fn:function(){return [_c('h3',{staticClass:\"d-flex justify-space-between\"},[_vm._v(\"Performance status \"),_c('span',{staticClass:\"ml-auto\"},[_vm._v(_vm._s(_vm.prettyStatusUpdatedTime))])])]},proxy:true},(_vm.hasDiagnostics)?{key:\"content\",fn:function(){return [_vm._l((_vm.longTrendsDiagnosticType),function(longTrendDiagnosticType,index){return _c('PerformanceStatusItem',{key:(\"key-\" + index),attrs:{\"longTrendDiagnosticType\":longTrendDiagnosticType}})}),_c('p',{staticClass:\"pa-2 pl-9\"},[_vm._v(\"Parameters may be excluded from the overall performance status by clearing the appropriate checkbox\")])]},proxy:true}:{key:\"content\",fn:function(){return [_c('v-alert',{staticClass:\"mt-6\",attrs:{\"border\":\"left\",\"colored-border\":\"\",\"color\":\"info\",\"elevation\":\"2\"}},[(_vm.diagnosticModuleNotActivated)?_c('span',[_vm._v(\" Diagnostics module is not activated for this vessel. \"),_c('br'),_vm._v(\" Please contact \"),_c('a',{attrs:{\"href\":\"mailto:sales@danelec.com\"}},[_vm._v(\"sales@danelec.com\")]),_vm._v(\" for a quotation to activate the Diagnostics module. \")]):_vm._e(),(_vm.noDiagnosticTypes)?_c('span',[_vm._v(\" There are no performance parameters configured for this vessel. \"),_c('br'),_vm._v(\" Please contact \"),_c('a',{attrs:{\"href\":\"mailto:support@danelec.com\"}},[_vm._v(\"support@danelec.com\")]),_vm._v(\" if you believe this to be wrong. \")]):_vm._e()])]},proxy:true}],null,true)})],1)],1),_c('v-row',[_c('v-col',{attrs:{\"cols\":\"6\",\"lg\":\"6\",\"sm\":\"12\"}},[_c('VesselInfoContentCard',{scopedSlots:_vm._u([{key:\"header\",fn:function(){return [_c('h3',[_vm._v(\"Nautical information\")])]},proxy:true},{key:\"content\",fn:function(){return [_c('ul',{staticClass:\"pa-0\"},_vm._l((_vm.nauticalInfo),function(item,index){return _c('li',{directives:[{name:\"show\",rawName:\"v-show\",value:(Boolean(item.value)),expression:\"Boolean(item.value)\"}],key:(\"key-\" + index)},[_vm._v(\" \"+_vm._s(item.description)+\": \"),_c('strong',[_vm._v(_vm._s(item.value))])])}),0)]},proxy:true}])})],1),_c('v-col',{attrs:{\"cols\":\"6\",\"lg\":\"6\",\"sm\":\"12\"}},[_c('VesselInfoContentCard',{scopedSlots:_vm._u([{key:\"header\",fn:function(){return [_c('h3',[_vm._v(\"Additional information\")])]},proxy:true},{key:\"content\",fn:function(){return [_c('ul',{staticClass:\"pa-0\"},_vm._l((_vm.additionalInfo),function(item,index){return _c('li',{directives:[{name:\"show\",rawName:\"v-show\",value:(Boolean(item.value)),expression:\"Boolean(item.value)\"}],key:(\"key-\" + index)},[_vm._v(\" \"+_vm._s(item.description)+\": \"),_c('strong',[_vm._v(_vm._s(item.value))])])}),0)]},proxy:true}])})],1)],1),_c('Map',{staticClass:\"mt-5\",staticStyle:{\"height\":\"450px\"},attrs:{\"vessels\":[_vm.vessel],\"enableMinimalMode\":true}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"performance-status-item\"},[_c('v-checkbox',{staticClass:\"ma-0 pa-0\",attrs:{\"label\":_vm.longTrendDiagnosticType.descriptionLong,\"hide-details\":\"auto\"},on:{\"change\":_vm.onUseInVesselStatusChange},model:{value:(_vm.longTrendDiagnosticType.useInVesselStatus),callback:function ($$v) {_vm.$set(_vm.longTrendDiagnosticType, \"useInVesselStatus\", $$v)},expression:\"longTrendDiagnosticType.useInVesselStatus\"}}),_c('div',{staticClass:\"icons\"},[_c('span',{staticClass:\"mr-2\"},[_c('v-tooltip',{attrs:{\"left\":\"\",\"color\":\"primary\"},scopedSlots:_vm._u([{key:\"activator\",fn:function(ref){\nvar on = ref.on;\nreturn [_c('v-icon',_vm._g({attrs:{\"color\":_vm.performanceStatusIconSettings.color,\"data-testid\":\"v-icon\"}},on),[_vm._v(\" \"+_vm._s(_vm.performanceStatusIconSettings.icon)+\" \")])]}}])},[_c('span',{attrs:{\"data-testid\":\"tooltip\"}},[_vm._v(_vm._s(_vm.longTrendDiagnosticType.performanceStatus))])])],1),_c('span',[_c('v-tooltip',{attrs:{\"top\":\"\",\"color\":\"primary\"},scopedSlots:_vm._u([{key:\"activator\",fn:function(ref){\nvar on = ref.on;\nreturn [_c('v-icon',_vm._g({attrs:{\"color\":\"info\"}},on),[_vm._v(_vm._s(_vm.longTrendBenchmarkLevelIconSettings.icon))])]}}])},[_c('span',[_vm._v(_vm._s(_vm.longTrendBenchmarkLevelIconSettings.tooltip))])])],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\nimport { Component, Vue, Prop } from \"vue-property-decorator\";\nimport { getModule } from \"vuex-module-decorators\";\nimport store from \"@/store\";\n// types\nimport { LongTrendDiagnosticType } from \"@/types/longTrendDiagnosticType\";\n// modules\nimport LongTrendsClient from \"Clients/long-trends-client\";\nimport SnackbarModule from \"@/store/clients/Snackbar.module\";\n\nconst Snackbar = getModule(SnackbarModule, store);\n\ninterface PerformanceStatusIconSettings {\n color: string;\n icon: string;\n}\n\n@Component({})\nexport default class PerformanceStatusItem extends Vue {\n @Prop({ required: true }) longTrendDiagnosticType!: LongTrendDiagnosticType;\n\n get longTrendBenchmarkLevelIconSettings(): { tooltip: string; icon: string } {\n if (this.longTrendDiagnosticType.useManualBenchmarkLevel) {\n return {\n tooltip: `Using manual benchmark level: ${this.longTrendDiagnosticType.manualBenchmarkLevel}%`,\n icon: \"mdi-alpha-m-circle\",\n };\n } else {\n return {\n tooltip: \"Using automatic calculated benchmark level\",\n icon: \"mdi-alpha-a-circle\",\n };\n }\n }\n\n get performanceStatusIconSettings(): PerformanceStatusIconSettings {\n switch (this.longTrendDiagnosticType.performanceStatus) {\n case \"Ok\":\n return { color: \"success\", icon: \"mdi-check-circle\" };\n case \"NotOk\":\n return { color: \"error\", icon: \"mdi-alert-circle\" };\n case \"Observe\":\n return { color: \"warning\", icon: \"mdi-alert-circle\" };\n case \"BenchMarking\":\n return { color: \"info\", icon: \"mdi-chart-box\" };\n default:\n return { color: \"\", icon: \"mdi-circle\" };\n }\n }\n\n async onUseInVesselStatusChange(useInVesselStatus: boolean): Promise {\n try {\n await LongTrendsClient.update(this.longTrendDiagnosticType);\n Snackbar.showSnackbar({ text: \"Successfully updated\", color: \"success\" });\n } catch (error) {\n Snackbar.showSnackbar({ text: \"Failed to update\" });\n }\n }\n}\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--15-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PerformanceStatusItem.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--15-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PerformanceStatusItem.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./PerformanceStatusItem.vue?vue&type=template&id=4b60e48b&scoped=true&\"\nimport script from \"./PerformanceStatusItem.vue?vue&type=script&lang=ts&\"\nexport * from \"./PerformanceStatusItem.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./PerformanceStatusItem.vue?vue&type=style&index=0&id=4b60e48b&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 \"4b60e48b\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VCheckbox } from 'vuetify/lib/components/VCheckbox';\nimport { VIcon } from 'vuetify/lib/components/VIcon';\nimport { VTooltip } from 'vuetify/lib/components/VTooltip';\ninstallComponents(component, {VCheckbox,VIcon,VTooltip})\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\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, Vue, Prop } from \"vue-property-decorator\";\nimport store from \"@/store\";\n// utilities\nimport dateHelper from \"Utilities/date-helper\";\nimport _ from \"underscore\";\nimport moment from \"moment\";\n// types\nimport { VesselHistory, VesselHistoryAdditional, VesselHistories } from \"@/types/vesselHistory\";\nimport { LongTrendDiagnosticType } from \"@/types/longTrendDiagnosticType\";\nimport { LogVariable } from \"@/types/logVariable\";\nimport { ExtendedVessel } from \"@/types/Vessel\";\n// components\nimport VesselInfoContentCard from \"@/components/VesselInfo/VesselInfoContentCard.vue\";\nimport PerformanceStatusItem from \"@/components/VesselInfo/PerformanceStatusItem.vue\";\nimport Map from \"@/components/Map.vue\";\n// modules\nimport { getModule } from \"vuex-module-decorators\";\nimport VesselsModule from \"@/store/clients/Vessels.module\";\n\nconst Vessels = getModule(VesselsModule, store);\n\n@Component({\n components: {\n VesselInfoContentCard,\n PerformanceStatusItem,\n Map,\n },\n})\nexport default class VesselInfoContent extends Vue {\n @Prop({ required: true }) latestVesselHistory!: VesselHistory;\n @Prop({ required: true }) vesselHistoryAdditionals!: VesselHistoryAdditional[];\n @Prop({ required: true }) longTrendsDiagnosticType!: LongTrendDiagnosticType[];\n @Prop({ required: true }) vesselHistories!: VesselHistories;\n\n get vessel(): ExtendedVessel | null {\n return Vessels.currentVessel;\n }\n\n get diagnosticModuleNotActivated(): boolean {\n if (!this.vessel?.performance) return false;\n return this.vessel.performance.performanceStatus === \"DiagnosticsNotActivated\";\n }\n\n get noDiagnosticTypes(): boolean {\n if (!this.vessel?.performance) return false;\n return this.vessel.performance.performanceStatus === \"NoDiagnosticTypes\";\n }\n\n get generalInfo(): { description: string; value: string | null }[] {\n if (this.hasNoImports) return [{ description: \"IMO Number\", value: `IMO${this.vessel?.imoNumber}` }];\n return [\n { description: \"IMO Number\", value: `IMO${this.vessel?.imoNumber}` },\n { description: \"Current voyage\", value: this.latestVesselHistory.voyage.voyageName },\n { description: \"Departure port\", value: this.latestVesselHistory.voyage.departurePort },\n { description: \"Arrival port\", value: this.latestVesselHistory.voyage.arrivalPort },\n { description: \"Last data sent\", value: dateHelper.getFormatedDateTimeString(this.vessel?.lastExportDate) },\n { description: \"Trend period\", value: this.trendPeriod || null },\n { description: \"Logging history period\", value: this.loggingHistoryPeriod || null },\n ];\n }\n\n get nauticalInfo(): { description: string; value: string | undefined }[] {\n return [\n { description: \"Speed by log\", value: this.prettyLogVariable(this.latestVesselHistory.logSpeed, this.latestVesselHistory.logSpeedLogVariable) },\n { description: \"Speed by GPS\", value: this.prettyLogVariable(this.latestVesselHistory.gpsSpeed, this.latestVesselHistory.gpsSpeedLogVariable) },\n { description: \"Latitude\", value: this.prettyLongLatValue(this.latestVesselHistory.latitude, \"latitude\") },\n { description: \"Longitude\", value: this.prettyLongLatValue(this.latestVesselHistory.longitude, \"longitude\") },\n { description: \"Course\", value: this.prettyLogVariable(this.latestVesselHistory.course, this.latestVesselHistory.courseLogVariable) },\n { description: \"Draft mean\", value: this.prettyLogVariable(this.latestVesselHistory.draftMean, this.latestVesselHistory.draftMeanLogVariable) },\n { description: \"Trim\", value: this.prettyLogVariable(this.latestVesselHistory.trim, this.latestVesselHistory.trimLogVariable) },\n ];\n }\n\n get additionalInfo(): { description: string; value: string | undefined }[] {\n return this.vesselHistoryAdditionals.map(vesselHistory => ({\n description: vesselHistory.description,\n value: this.prettyLogVariable(vesselHistory.value, vesselHistory.logVariable),\n }));\n }\n\n get trendPeriod(): string | undefined {\n if (!this.vessel) return;\n const trendDataMinDate = this.vessel.trendDataMinDate;\n const trendDataMaxDate = this.vessel.trendDataMaxDate;\n if (trendDataMinDate === null || trendDataMaxDate === null) return \"Not included\";\n\n return `${dateHelper.getFormatedDateString(trendDataMinDate)} - ${dateHelper.getFormatedDateString(trendDataMaxDate)}`;\n }\n\n get loggingHistoryPeriod(): string | undefined {\n if (!this.vessel) return;\n const logDataMinDate = this.vessel.logDataMinDate;\n const logDataMaxDate = this.vessel.logDataMaxDate;\n if (!logDataMinDate || !logDataMaxDate) return \"Not included\";\n\n return `${dateHelper.getFormatedDateString(logDataMinDate)} - ${dateHelper.getFormatedDateString(logDataMaxDate)}`;\n }\n\n get hasDiagnostics(): boolean {\n const hasDiagnosticTypeId = this.longTrendsDiagnosticType?.some(longTrend => longTrend.diagnosticTypeId !== null);\n return Boolean(this.vessel?.isDiagnosticActivated) && Boolean(this.longTrendsDiagnosticType.length) && hasDiagnosticTypeId;\n }\n\n get hasNoImports(): boolean {\n return _.isEmpty(this.latestVesselHistory);\n }\n\n prettyLogVariable(value: number, variable: LogVariable | undefined): string | undefined {\n if (!this.$root.$options.filters?.prettyLogVariable) return;\n return this.$root.$options.filters?.prettyLogVariable(value, variable);\n }\n\n prettyLongLatValue(value: number, variable: string): string | undefined {\n if (!this.$root.$options.filters?.prettyLogVariable) return;\n if (variable === \"latitude\") return this.$root.$options.filters?.prettyLatitude(value);\n else if (variable === \"longitude\") return this.$root.$options.filters?.prettyLongitude(value);\n }\n\n get prettyStatusUpdatedTime(): string | undefined {\n const maxStatusUpdatedLongTrend = _.max(this.longTrendsDiagnosticType, function (longTrend) {\n return moment(longTrend.performanceStatusUpdated);\n });\n if (_.isNumber(maxStatusUpdatedLongTrend)) return;\n return dateHelper.getFormatedDateString(maxStatusUpdatedLongTrend[\"performanceStatusUpdated\"]);\n }\n}\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--15-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./VesselInfoContent.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--15-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./VesselInfoContent.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./VesselInfoContent.vue?vue&type=template&id=061ba7ef&scoped=true&\"\nimport script from \"./VesselInfoContent.vue?vue&type=script&lang=ts&\"\nexport * from \"./VesselInfoContent.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./VesselInfoContent.vue?vue&type=style&index=0&id=061ba7ef&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 \"061ba7ef\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VAlert } from 'vuetify/lib/components/VAlert';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VRow } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VAlert,VCol,VRow})\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { Component, Vue } from \"vue-property-decorator\";\nimport { getModule } from \"vuex-module-decorators\";\nimport store from \"@/store\";\n// types\nimport { ExtendedVessel } from \"@/types/Vessel\";\nimport { LogVariable } from \"@/types/logVariable\";\nimport { VesselHistory, VesselHistoryAdditional, VesselHistories } from \"@/types/vesselHistory\";\nimport { LongTrendDiagnosticType } from \"@/types/longTrendDiagnosticType\";\n// components\nimport VesselInfoContentLoader from \"@/components/VesselInfo/VesselInfoContentLoader.vue\";\nimport VesselInfoContent from \"@/components/VesselInfo/VesselInfoContent.vue\";\n// modules\nimport VesselsModule from \"@/store/clients/Vessels.module\";\nimport LogVariablesModule from \"@/store/clients/LogVariables.module\";\nimport VesselsHistoriesModule from \"@/store/clients/VesselsHistories.module\";\nimport SnackbarModule from \"@/store/clients/Snackbar.module\";\nimport LongTrendsClient from \"Clients/long-trends-client\";\n\nconst Vessels = getModule(VesselsModule, store);\nconst LogVariables = getModule(LogVariablesModule, store);\nconst VesselsHistories = getModule(VesselsHistoriesModule, store);\nconst Snackbar = getModule(SnackbarModule, store);\n\n@Component({\n components: {\n VesselInfoContentLoader,\n VesselInfoContent,\n },\n})\nexport default class VesselInfo extends Vue {\n isTrendPeriodLoading = true;\n isLogVariablesLoading = true;\n isVesselHistoryAdditionalsLoading = true;\n isLatestVesselHistoryLoading = true;\n isVesselHistoriesLoading = true;\n latestVesselHistory!: VesselHistory;\n vesselHistoryAdditionals!: VesselHistoryAdditional[];\n longTrendsDiagnosticType!: LongTrendDiagnosticType[];\n vesselHistories!: VesselHistories;\n\n get vessel(): ExtendedVessel | null {\n return Vessels.currentVessel;\n }\n\n get vesselLogVariables(): LogVariable[] {\n return LogVariables.currentVesselLogVariables;\n }\n\n get isVesselDataLoading(): boolean {\n const isLoading = this.isLogVariablesLoading || this.isLatestVesselHistoryLoading || this.isVesselHistoryAdditionalsLoading || this.isTrendPeriodLoading || this.isVesselHistoriesLoading;\n return isLoading;\n }\n\n async fetchLogVariables(): Promise {\n if (!this.vessel?.id) return Promise.reject();\n try {\n await LogVariables.refreshCurrentVesselLogVariables(this.vessel.id);\n } catch (error) {\n Snackbar.showSnackbar({ text: \"Failed to load vessel log variables\" });\n }\n this.isLogVariablesLoading = false;\n }\n\n async fetchLatestVesselHistory(): Promise {\n if (!this.vessel?.id) return Promise.reject();\n try {\n this.latestVesselHistory = await VesselsHistories.getLatestVesselHistory(this.vessel.id);\n } catch (error) {\n Snackbar.showSnackbar({ text: \"Failed to load vessel latest history\" });\n }\n this.isLatestVesselHistoryLoading = false;\n }\n\n async fetchVesselHistories(): Promise {\n if (!this.vessel?.id) return Promise.reject();\n try {\n this.vesselHistories = await VesselsHistories.getVesselHistories({ vessel: this.vessel, timespan: 14 });\n } catch (error) {\n Snackbar.showSnackbar({ text: \"Failed to load vessel histories\" });\n }\n this.isVesselHistoriesLoading = false;\n }\n\n async fetchVesselHistoryAdditionals(): Promise {\n if (!this.vessel?.id) return Promise.reject();\n try {\n this.vesselHistoryAdditionals = await VesselsHistories.getVesselHistoryAdditionals(this.latestVesselHistory.id);\n this.vesselHistoryAdditionals = this.vesselHistoryAdditionals.map((vesselHistory: VesselHistoryAdditional) => {\n vesselHistory.logVariable = this.vesselLogVariables.find(logVariable => logVariable.id === vesselHistory.logVariableId);\n return vesselHistory;\n });\n } catch (error) {\n Snackbar.showSnackbar({ text: \"Failed to load vessel history additional information\" });\n }\n this.isVesselHistoryAdditionalsLoading = false;\n }\n\n async fetchLongTrends(): Promise {\n if (!this.vessel?.id) return Promise.reject();\n try {\n this.longTrendsDiagnosticType = await LongTrendsClient.findLongTrends(this.vessel.id);\n } catch (error) {\n Snackbar.showSnackbar({ text: \"Failed to load vessel long trends\" });\n }\n this.isTrendPeriodLoading = false;\n }\n\n async created(): Promise {\n await this.fetchLogVariables();\n await this.fetchLatestVesselHistory();\n await this.fetchVesselHistories();\n await this.fetchVesselHistoryAdditionals();\n await this.fetchLongTrends();\n }\n}\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--15-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./VesselInfo.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--15-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./VesselInfo.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./VesselInfo.vue?vue&type=template&id=4d64cbc1&\"\nimport script from \"./VesselInfo.vue?vue&type=script&lang=ts&\"\nexport * from \"./VesselInfo.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./VesselInfoContentCard.vue?vue&type=style&index=0&id=350254ea&lang=scss&scoped=true&\""],"sourceRoot":""}