{"version":3,"sources":["webpack:///./src/entryPoints/common/App.vue?f245","webpack:///./src/entryPoints/common/App.vue","webpack:///./src/entryPoints/common/App.vue?6f9a","webpack:///./src/entryPoints/common/App.vue?9cbd","webpack:///./src/common/timeContext.ts"],"names":["render","_vm","this","_h","$createElement","_c","_self","staticRenderFns","App","_Vue","_inherits","_super","_createSuper","_classCallCheck","apply","arguments","_createClass","key","value","newVal","timeQuery","query","time","dispatchInterval","isRealTimeQuery","isRealTime","moment","utcOffset","timeControl","TimeControl","get","$router","isValid","undefined","Vue","__decorate","Watch","immediate","deep","Component","component","_router","ko","observable","_travelTo","_asyncToGenerator","_regeneratorRuntime","mark","_callee","route","wrap","_context","prev","next","currentRoute","Object","assign","format","push","stop","travelTo","_x","router","_instance"],"mappings":"4GAAA,IAAIA,EAAS,WAAa,IAAIC,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,gBAC/FE,EAAkB,G,iICYDC,EAAG,SAAAC,GAAAC,eAAAF,EAAAC,GAAA,IAAAE,EAAAC,eAAAJ,GAAA,SAAAA,IAAA,OAAAK,eAAA,KAAAL,GAAAG,EAAAG,MAAA,KAAAC,WAWrB,OAXqBC,eAAAR,EAAA,EAAAS,IAAA,cAAAC,MAC6B,SAAYC,GAC7D,IAAMC,EAAYD,EAAOE,MAAMC,MAAQH,EAAOE,MAAME,iBAC9CC,EAAkBL,EAAOE,MAAMI,WAE/BH,EAAOI,IAAON,EAAqB,mBAAmBO,UAAU,IAAI,GACpEF,EAAgC,SAAnBD,EAEbI,EAAcC,OAAYC,IAAI5B,KAAK6B,SACzCH,EAAYN,KAAKA,EAAKU,UAAYV,OAAOW,GACzCL,EAAYH,WAAWA,OACxBjB,EAXqB,CAAS0B,cACoBC,eAAA,CAAlDC,mBAAM,SAAU,CAAEC,WAAW,EAAOC,MAAM,K,gCADxB9B,EAAG2B,eAAA,CADvBI,cACoB/B,WCb2U,I,YCO5VgC,EAAY,eACd,EACAxC,EACAO,GACA,EACA,KACA,KACA,MAIa,aAAAiC,E,sJCPFX,EAAW,WAUtB,SAAAA,EAA4BY,GAAkB5B,eAAA,KAAAgB,GAAlB,KAAAY,UAErB,KAAAnB,KAAOoB,IAAGC,gBAA+BV,GACzC,KAAAR,WAAaiB,IAAGC,YAAW,GAQjC,OAXiD3B,eAAAa,EAAA,EAAAZ,IAAA,WAAAC,MAAA,eAAA0B,EAAAC,eAAAC,iBAAAC,MAK3C,SAAAC,EAAe1B,GAAY,IAAA2B,EAAA5B,EAAA,OAAAyB,iBAAAI,MAAA,SAAAC,GAAA,eAAAA,EAAAC,KAAAD,EAAAE,MAAA,OAIoD,OAH9EJ,EAAQ/C,KAAKuC,QAAQa,aACrBjC,EAAQkC,OAAOC,OAAO,GAAIP,EAAM5B,OAClCA,EAAMC,OAAMD,EAAMC,KAAOA,EAAKmC,OAAO,oBACrCpC,EAAME,mBAAkBF,EAAME,iBAAmBD,EAAKmC,OAAO,oBAAmBN,EAAAE,KAAA,EAC9EnD,KAAKuC,QAAQiB,KAAK,CAAErC,UAAQ,wBAAA8B,EAAAQ,UAAAX,EAAA,UACnC,SAAAY,EAAAC,GAAA,OAAAjB,EAAA9B,MAAA,KAAAC,WAAA,OAAA6C,EAXiD,MAWjD/B,EArBqB,GAGRA,EAAAC,IAAM,SAACgC,GAInB,OAHKjC,EAAYkC,YACflC,EAAYkC,UAAY,IAAIlC,EAAYiC,IAEnCjC,EAAYkC","file":"js/App.800ef5f2.js","sourcesContent":["var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('router-view')}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\nimport Vue from 'vue';\nimport Component from 'vue-class-component';\nimport { Watch } from 'vue-property-decorator';\nimport { Route } from 'vue-router';\nimport moment from 'moment';\nimport { TimeControl } from '@/common/timeContext';\n\n@Component\nexport default class App extends Vue {\n @Watch('$route', { immediate: false, deep: true }) onUrlChange(newVal: Route) {\n const timeQuery = newVal.query.time || newVal.query.dispatchInterval;\n const isRealTimeQuery = newVal.query.isRealTime;\n\n const time = moment(timeQuery as string, 'YYYY-MM-DD-HHmm').utcOffset(10, true);\n const isRealTime = isRealTimeQuery != 'false';\n\n const timeControl = TimeControl.get(this.$router);\n timeControl.time(time.isValid() ? time : undefined);\n timeControl.isRealTime(isRealTime);\n }\n}\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--14-2!../../../node_modules/cache-loader/dist/cjs.js??ref--1-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--14-0!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--14-2!../../../node_modules/cache-loader/dist/cjs.js??ref--1-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=133f2621&\"\nimport script from \"./App.vue?vue&type=script&lang=ts&\"\nexport * from \"./App.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-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 { Moment } from 'moment';\nimport ko from 'knockout';\nimport VueRouter from 'vue-router';\n\nexport interface ITimeControl {\n time: KnockoutObservable;\n isRealTime: KnockoutObservable;\n\n travelTo(time: Moment): Promise;\n}\n\nexport class TimeControl implements ITimeControl {\n private static _instance: TimeControl;\n\n public static get = (router: VueRouter): ITimeControl => {\n if (!TimeControl._instance) {\n TimeControl._instance = new TimeControl(router);\n }\n return TimeControl._instance;\n };\n\n private constructor(private _router: VueRouter) {}\n\n public time = ko.observable(undefined);\n public isRealTime = ko.observable(true);\n\n public async travelTo(time: Moment) {\n const route = this._router.currentRoute;\n const query = Object.assign({}, route.query);\n if (query.time) query.time = time.format('YYYY-MM-DD-HHmm');\n if (query.dispatchInterval) query.dispatchInterval = time.format('YYYY-MM-DD-HHmm');\n await this._router.push({ query });\n }\n}\n"],"sourceRoot":""}