{"version":3,"sources":["./node_modules/moment/locale ^\\.\\/.*$","./src/$_lazy_route_resource lazy","./src/app/app-routing.module.ts","./src/app/app.component.css","./src/app/app.component.html","./src/app/app.component.ts","./src/app/app.module.ts","./src/app/config.ts","./src/app/directives/tooltip.directive.ts","./src/app/guards/auth.guard.ts","./src/app/guards/index.ts","./src/app/guards/main-no-device.guard.ts","./src/app/guards/main.guard.ts","./src/app/guards/personal.guard.ts","./src/app/guards/signUp.guard.ts","./src/app/shared/models/requests/password-confirm-request.ts","./src/app/shared/models/requests/password-recovery-request.ts","./src/app/shared/models/requests/sign-in-request.ts","./src/app/shared/models/requests/sign-up-request.ts","./src/app/shared/models/user.ts","./src/app/shared/pager.ts","./src/app/shared/services/app.service.ts","./src/app/shared/services/commands.service.ts","./src/app/shared/services/data/cached-data.service.ts","./src/app/shared/services/data/index.ts","./src/app/shared/services/data/mapping.service.ts","./src/app/shared/services/http/auth.service.ts","./src/app/shared/services/http/base-http.service.ts","./src/app/shared/services/http/devices.service.ts","./src/app/shared/services/http/geozone.service.ts","./src/app/shared/services/http/index.ts","./src/app/shared/services/http/objects.service.ts","./src/app/shared/services/http/observable-objects.service.ts","./src/app/shared/services/http/services.service.ts","./src/app/shared/services/http/share-device.service.ts","./src/app/shared/services/http/user.service.ts","./src/app/shared/services/index.ts","./src/app/shared/services/screen.service.ts","./src/app/shared/services/settings.service.ts","./src/app/shared/services/state.service.ts","./src/app/shared/services/tariff.services.ts","./src/app/validator.ts","./src/app/view/auth/confirmUser/confirmUser.component.html","./src/app/view/auth/confirmUser/confirmUser.component.ts","./src/app/view/auth/deleteUser/deleteUser.component.html","./src/app/view/auth/deleteUser/deleteUser.component.ts","./src/app/view/auth/nav-app/navapp.component.html","./src/app/view/auth/nav-app/navapp.component.ts","./src/app/view/auth/restore/restore.component.css","./src/app/view/auth/restore/restore.component.html","./src/app/view/auth/restore/restore.component.ts","./src/app/view/auth/signin/signin.component.css","./src/app/view/auth/signin/signin.component.html","./src/app/view/auth/signin/signin.component.ts","./src/app/view/auth/signup/signup.component.css","./src/app/view/auth/signup/signup.component.html","./src/app/view/auth/signup/signup.component.ts","./src/app/view/components/add-object-menu/add-object-menu.component.html","./src/app/view/components/add-object-menu/add-object-menu.component.ts","./src/app/view/components/bitmask-field/bitmask-field.component.html","./src/app/view/components/bitmask-field/bitmask-field.component.ts","./src/app/view/components/command-list/command-list.component.html","./src/app/view/components/command-list/command-list.component.ts","./src/app/view/components/file-upload/file-upload.component.html","./src/app/view/components/file-upload/file-upload.component.ts","./src/app/view/components/graph-stats/graph-stats.component.html","./src/app/view/components/graph-stats/graph-stats.component.ts","./src/app/view/components/index.ts","./src/app/view/components/indicator-device/indicator-device.component.html","./src/app/view/components/indicator-device/indicator-device.component.ts","./src/app/view/components/main-state-info/main-state-info.component.html","./src/app/view/components/main-state-info/main-state-info.component.ts","./src/app/view/components/pointer-graph/pointer-graph.component.html","./src/app/view/components/pointer-graph/pointer-graph.component.scss","./src/app/view/components/pointer-graph/pointer-graph.component.ts","./src/app/view/components/report-quality-graph/report-quality-graph.component.html","./src/app/view/components/report-quality-graph/report-quality-graph.component.scss","./src/app/view/components/report-quality-graph/report-quality-graph.component.ts","./src/app/view/components/report-quality/report-quality.component.html","./src/app/view/components/report-quality/report-quality.component.scss","./src/app/view/components/report-quality/report-quality.component.ts","./src/app/view/components/report-stats-item/report-stats-item.component.html","./src/app/view/components/report-stats-item/report-stats-item.component.scss","./src/app/view/components/report-stats-item/report-stats-item.component.ts","./src/app/view/components/state-info/state-info.component.html","./src/app/view/components/state-info/state-info.component.ts","./src/app/view/components/tariffs-block/tariffs-block.component.html","./src/app/view/components/tariffs-block/tariffs-block.component.scss","./src/app/view/components/tariffs-block/tariffs-block.component.ts","./src/app/view/components/timer-add/timer-add.component.html","./src/app/view/components/timer-add/timer-add.component.ts","./src/app/view/components/timers-list/timers-list.component.html","./src/app/view/components/timers-list/timers-list.component.ts","./src/app/view/components/username-field/username-field.component.html","./src/app/view/components/username-field/username-field.component.ts","./src/app/view/components/video-background/video-background.component.html","./src/app/view/components/video-background/video-background.component.scss","./src/app/view/components/video-background/video-background.component.ts","./src/app/view/events/events.component.html","./src/app/view/events/events.component.ts","./src/app/view/geozone/geozone.component.html","./src/app/view/geozone/geozone.component.scss","./src/app/view/geozone/geozone.component.ts","./src/app/view/header/header.component.html","./src/app/view/header/header.component.scss","./src/app/view/header/header.component.ts","./src/app/view/modal/add-object-modal/add-object.component.html","./src/app/view/modal/add-object-modal/add-object.component.ts","./src/app/view/modal/agreements-modal/agreements-modal.component.html","./src/app/view/modal/agreements-modal/agreements-modal.component.ts","./src/app/view/modal/change-device-phone/change-device-phone-modal.component.html","./src/app/view/modal/change-device-phone/change-device-phone-modal.component.ts","./src/app/view/modal/change-object-name/change-object-name-modal.component.html","./src/app/view/modal/change-object-name/change-object-name-modal.component.ts","./src/app/view/modal/confirm-deleting-modal/confirm-deleting-modal.component.html","./src/app/view/modal/confirm-deleting-modal/confirm-deleting-modal.component.ts","./src/app/view/modal/feedback-modal/feedback-modal.component.html","./src/app/view/modal/feedback-modal/feedback-modal.component.ts","./src/app/view/modal/index.ts","./src/app/view/modal/profile-modal/profile-modal.component.html","./src/app/view/modal/profile-modal/profile-modal.component.ts","./src/app/view/modal/select-object-modal/select-object-modal.component.html","./src/app/view/modal/select-object-modal/select-object-modal.component.ts","./src/app/view/modal/send-capcha/send-capcha.component.html","./src/app/view/modal/send-capcha/send-capcha.component.ts","./src/app/view/modal/service-order-modal/service-order-modal.component.html","./src/app/view/modal/service-order-modal/service-order-modal.component.scss","./src/app/view/modal/service-order-modal/service-order-modal.component.ts","./src/app/view/modal/settings-modal/settings-modal.component.html","./src/app/view/modal/settings-modal/settings-modal.component.ts","./src/app/view/modal/share-device-cancel-modal/share-device-cancel-modal.component.html","./src/app/view/modal/share-device-cancel-modal/share-device-cancel-modal.component.ts","./src/app/view/modal/share-device-confirm-modal/share-device-confirm-modal.component.html","./src/app/view/modal/share-device-confirm-modal/share-device-confirm-modal.component.ts","./src/app/view/modal/share-device-modal/share-device-modal.component.html","./src/app/view/modal/share-device-modal/share-device-modal.component.ts","./src/app/view/modal/tariff-modal/tariff-modal.component.html","./src/app/view/modal/tariff-modal/tariff-modal.component.ts","./src/app/view/modal/update-password-modal/update-password-modal.component.html","./src/app/view/modal/update-password-modal/update-password-modal.component.ts","./src/app/view/online/online.component.html","./src/app/view/online/online.component.scss","./src/app/view/online/online.component.ts","./src/app/view/personal/personal.component.html","./src/app/view/personal/personal.component.scss","./src/app/view/personal/personal.component.ts","./src/app/view/reports/reports.component.html","./src/app/view/reports/reports.component.ts","./src/app/view/services/services.component.html","./src/app/view/services/services.component.scss","./src/app/view/services/services.component.ts","./src/app/view/share-requests/share-requests.component.html","./src/app/view/share-requests/share-requests.component.ts","./src/app/view/state/state.component.css","./src/app/view/state/state.component.html","./src/app/view/state/state.component.ts","./src/app/view/tracks/tracks.component.html","./src/app/view/tracks/tracks.component.ts","./src/assets/json/icon-mapping.json","./src/environments/environment.ts","./src/main.ts"],"names":[],"mappings":";;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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","file":"main.bundle.js","sourcesContent":["var map = {\n\t\"./af\": \"./node_modules/moment/locale/af.js\",\n\t\"./af.js\": \"./node_modules/moment/locale/af.js\",\n\t\"./ar\": \"./node_modules/moment/locale/ar.js\",\n\t\"./ar-dz\": \"./node_modules/moment/locale/ar-dz.js\",\n\t\"./ar-dz.js\": \"./node_modules/moment/locale/ar-dz.js\",\n\t\"./ar-kw\": \"./node_modules/moment/locale/ar-kw.js\",\n\t\"./ar-kw.js\": \"./node_modules/moment/locale/ar-kw.js\",\n\t\"./ar-ly\": \"./node_modules/moment/locale/ar-ly.js\",\n\t\"./ar-ly.js\": \"./node_modules/moment/locale/ar-ly.js\",\n\t\"./ar-ma\": \"./node_modules/moment/locale/ar-ma.js\",\n\t\"./ar-ma.js\": \"./node_modules/moment/locale/ar-ma.js\",\n\t\"./ar-sa\": \"./node_modules/moment/locale/ar-sa.js\",\n\t\"./ar-sa.js\": \"./node_modules/moment/locale/ar-sa.js\",\n\t\"./ar-tn\": \"./node_modules/moment/locale/ar-tn.js\",\n\t\"./ar-tn.js\": \"./node_modules/moment/locale/ar-tn.js\",\n\t\"./ar.js\": \"./node_modules/moment/locale/ar.js\",\n\t\"./az\": \"./node_modules/moment/locale/az.js\",\n\t\"./az.js\": \"./node_modules/moment/locale/az.js\",\n\t\"./be\": \"./node_modules/moment/locale/be.js\",\n\t\"./be.js\": \"./node_modules/moment/locale/be.js\",\n\t\"./bg\": \"./node_modules/moment/locale/bg.js\",\n\t\"./bg.js\": \"./node_modules/moment/locale/bg.js\",\n\t\"./bm\": \"./node_modules/moment/locale/bm.js\",\n\t\"./bm.js\": \"./node_modules/moment/locale/bm.js\",\n\t\"./bn\": \"./node_modules/moment/locale/bn.js\",\n\t\"./bn.js\": \"./node_modules/moment/locale/bn.js\",\n\t\"./bo\": \"./node_modules/moment/locale/bo.js\",\n\t\"./bo.js\": \"./node_modules/moment/locale/bo.js\",\n\t\"./br\": \"./node_modules/moment/locale/br.js\",\n\t\"./br.js\": \"./node_modules/moment/locale/br.js\",\n\t\"./bs\": \"./node_modules/moment/locale/bs.js\",\n\t\"./bs.js\": \"./node_modules/moment/locale/bs.js\",\n\t\"./ca\": \"./node_modules/moment/locale/ca.js\",\n\t\"./ca.js\": \"./node_modules/moment/locale/ca.js\",\n\t\"./cs\": \"./node_modules/moment/locale/cs.js\",\n\t\"./cs.js\": \"./node_modules/moment/locale/cs.js\",\n\t\"./cv\": \"./node_modules/moment/locale/cv.js\",\n\t\"./cv.js\": \"./node_modules/moment/locale/cv.js\",\n\t\"./cy\": \"./node_modules/moment/locale/cy.js\",\n\t\"./cy.js\": \"./node_modules/moment/locale/cy.js\",\n\t\"./da\": \"./node_modules/moment/locale/da.js\",\n\t\"./da.js\": \"./node_modules/moment/locale/da.js\",\n\t\"./de\": \"./node_modules/moment/locale/de.js\",\n\t\"./de-at\": \"./node_modules/moment/locale/de-at.js\",\n\t\"./de-at.js\": \"./node_modules/moment/locale/de-at.js\",\n\t\"./de-ch\": \"./node_modules/moment/locale/de-ch.js\",\n\t\"./de-ch.js\": \"./node_modules/moment/locale/de-ch.js\",\n\t\"./de.js\": \"./node_modules/moment/locale/de.js\",\n\t\"./dv\": \"./node_modules/moment/locale/dv.js\",\n\t\"./dv.js\": \"./node_modules/moment/locale/dv.js\",\n\t\"./el\": \"./node_modules/moment/locale/el.js\",\n\t\"./el.js\": \"./node_modules/moment/locale/el.js\",\n\t\"./en-au\": \"./node_modules/moment/locale/en-au.js\",\n\t\"./en-au.js\": \"./node_modules/moment/locale/en-au.js\",\n\t\"./en-ca\": \"./node_modules/moment/locale/en-ca.js\",\n\t\"./en-ca.js\": \"./node_modules/moment/locale/en-ca.js\",\n\t\"./en-gb\": \"./node_modules/moment/locale/en-gb.js\",\n\t\"./en-gb.js\": \"./node_modules/moment/locale/en-gb.js\",\n\t\"./en-ie\": \"./node_modules/moment/locale/en-ie.js\",\n\t\"./en-ie.js\": \"./node_modules/moment/locale/en-ie.js\",\n\t\"./en-il\": \"./node_modules/moment/locale/en-il.js\",\n\t\"./en-il.js\": \"./node_modules/moment/locale/en-il.js\",\n\t\"./en-nz\": \"./node_modules/moment/locale/en-nz.js\",\n\t\"./en-nz.js\": \"./node_modules/moment/locale/en-nz.js\",\n\t\"./eo\": \"./node_modules/moment/locale/eo.js\",\n\t\"./eo.js\": \"./node_modules/moment/locale/eo.js\",\n\t\"./es\": \"./node_modules/moment/locale/es.js\",\n\t\"./es-do\": \"./node_modules/moment/locale/es-do.js\",\n\t\"./es-do.js\": \"./node_modules/moment/locale/es-do.js\",\n\t\"./es-us\": \"./node_modules/moment/locale/es-us.js\",\n\t\"./es-us.js\": \"./node_modules/moment/locale/es-us.js\",\n\t\"./es.js\": \"./node_modules/moment/locale/es.js\",\n\t\"./et\": \"./node_modules/moment/locale/et.js\",\n\t\"./et.js\": \"./node_modules/moment/locale/et.js\",\n\t\"./eu\": \"./node_modules/moment/locale/eu.js\",\n\t\"./eu.js\": \"./node_modules/moment/locale/eu.js\",\n\t\"./fa\": \"./node_modules/moment/locale/fa.js\",\n\t\"./fa.js\": \"./node_modules/moment/locale/fa.js\",\n\t\"./fi\": \"./node_modules/moment/locale/fi.js\",\n\t\"./fi.js\": \"./node_modules/moment/locale/fi.js\",\n\t\"./fo\": \"./node_modules/moment/locale/fo.js\",\n\t\"./fo.js\": \"./node_modules/moment/locale/fo.js\",\n\t\"./fr\": \"./node_modules/moment/locale/fr.js\",\n\t\"./fr-ca\": \"./node_modules/moment/locale/fr-ca.js\",\n\t\"./fr-ca.js\": \"./node_modules/moment/locale/fr-ca.js\",\n\t\"./fr-ch\": \"./node_modules/moment/locale/fr-ch.js\",\n\t\"./fr-ch.js\": \"./node_modules/moment/locale/fr-ch.js\",\n\t\"./fr.js\": \"./node_modules/moment/locale/fr.js\",\n\t\"./fy\": \"./node_modules/moment/locale/fy.js\",\n\t\"./fy.js\": \"./node_modules/moment/locale/fy.js\",\n\t\"./gd\": \"./node_modules/moment/locale/gd.js\",\n\t\"./gd.js\": \"./node_modules/moment/locale/gd.js\",\n\t\"./gl\": \"./node_modules/moment/locale/gl.js\",\n\t\"./gl.js\": \"./node_modules/moment/locale/gl.js\",\n\t\"./gom-latn\": \"./node_modules/moment/locale/gom-latn.js\",\n\t\"./gom-latn.js\": \"./node_modules/moment/locale/gom-latn.js\",\n\t\"./gu\": \"./node_modules/moment/locale/gu.js\",\n\t\"./gu.js\": \"./node_modules/moment/locale/gu.js\",\n\t\"./he\": \"./node_modules/moment/locale/he.js\",\n\t\"./he.js\": \"./node_modules/moment/locale/he.js\",\n\t\"./hi\": \"./node_modules/moment/locale/hi.js\",\n\t\"./hi.js\": \"./node_modules/moment/locale/hi.js\",\n\t\"./hr\": \"./node_modules/moment/locale/hr.js\",\n\t\"./hr.js\": \"./node_modules/moment/locale/hr.js\",\n\t\"./hu\": \"./node_modules/moment/locale/hu.js\",\n\t\"./hu.js\": \"./node_modules/moment/locale/hu.js\",\n\t\"./hy-am\": \"./node_modules/moment/locale/hy-am.js\",\n\t\"./hy-am.js\": \"./node_modules/moment/locale/hy-am.js\",\n\t\"./id\": \"./node_modules/moment/locale/id.js\",\n\t\"./id.js\": \"./node_modules/moment/locale/id.js\",\n\t\"./is\": \"./node_modules/moment/locale/is.js\",\n\t\"./is.js\": \"./node_modules/moment/locale/is.js\",\n\t\"./it\": \"./node_modules/moment/locale/it.js\",\n\t\"./it.js\": \"./node_modules/moment/locale/it.js\",\n\t\"./ja\": \"./node_modules/moment/locale/ja.js\",\n\t\"./ja.js\": \"./node_modules/moment/locale/ja.js\",\n\t\"./jv\": \"./node_modules/moment/locale/jv.js\",\n\t\"./jv.js\": \"./node_modules/moment/locale/jv.js\",\n\t\"./ka\": \"./node_modules/moment/locale/ka.js\",\n\t\"./ka.js\": \"./node_modules/moment/locale/ka.js\",\n\t\"./kk\": \"./node_modules/moment/locale/kk.js\",\n\t\"./kk.js\": \"./node_modules/moment/locale/kk.js\",\n\t\"./km\": \"./node_modules/moment/locale/km.js\",\n\t\"./km.js\": \"./node_modules/moment/locale/km.js\",\n\t\"./kn\": \"./node_modules/moment/locale/kn.js\",\n\t\"./kn.js\": \"./node_modules/moment/locale/kn.js\",\n\t\"./ko\": \"./node_modules/moment/locale/ko.js\",\n\t\"./ko.js\": \"./node_modules/moment/locale/ko.js\",\n\t\"./ky\": \"./node_modules/moment/locale/ky.js\",\n\t\"./ky.js\": \"./node_modules/moment/locale/ky.js\",\n\t\"./lb\": \"./node_modules/moment/locale/lb.js\",\n\t\"./lb.js\": \"./node_modules/moment/locale/lb.js\",\n\t\"./lo\": \"./node_modules/moment/locale/lo.js\",\n\t\"./lo.js\": \"./node_modules/moment/locale/lo.js\",\n\t\"./lt\": \"./node_modules/moment/locale/lt.js\",\n\t\"./lt.js\": \"./node_modules/moment/locale/lt.js\",\n\t\"./lv\": \"./node_modules/moment/locale/lv.js\",\n\t\"./lv.js\": \"./node_modules/moment/locale/lv.js\",\n\t\"./me\": \"./node_modules/moment/locale/me.js\",\n\t\"./me.js\": \"./node_modules/moment/locale/me.js\",\n\t\"./mi\": \"./node_modules/moment/locale/mi.js\",\n\t\"./mi.js\": \"./node_modules/moment/locale/mi.js\",\n\t\"./mk\": \"./node_modules/moment/locale/mk.js\",\n\t\"./mk.js\": \"./node_modules/moment/locale/mk.js\",\n\t\"./ml\": \"./node_modules/moment/locale/ml.js\",\n\t\"./ml.js\": \"./node_modules/moment/locale/ml.js\",\n\t\"./mn\": \"./node_modules/moment/locale/mn.js\",\n\t\"./mn.js\": \"./node_modules/moment/locale/mn.js\",\n\t\"./mr\": \"./node_modules/moment/locale/mr.js\",\n\t\"./mr.js\": \"./node_modules/moment/locale/mr.js\",\n\t\"./ms\": \"./node_modules/moment/locale/ms.js\",\n\t\"./ms-my\": \"./node_modules/moment/locale/ms-my.js\",\n\t\"./ms-my.js\": \"./node_modules/moment/locale/ms-my.js\",\n\t\"./ms.js\": \"./node_modules/moment/locale/ms.js\",\n\t\"./mt\": \"./node_modules/moment/locale/mt.js\",\n\t\"./mt.js\": \"./node_modules/moment/locale/mt.js\",\n\t\"./my\": \"./node_modules/moment/locale/my.js\",\n\t\"./my.js\": \"./node_modules/moment/locale/my.js\",\n\t\"./nb\": \"./node_modules/moment/locale/nb.js\",\n\t\"./nb.js\": \"./node_modules/moment/locale/nb.js\",\n\t\"./ne\": \"./node_modules/moment/locale/ne.js\",\n\t\"./ne.js\": \"./node_modules/moment/locale/ne.js\",\n\t\"./nl\": \"./node_modules/moment/locale/nl.js\",\n\t\"./nl-be\": \"./node_modules/moment/locale/nl-be.js\",\n\t\"./nl-be.js\": \"./node_modules/moment/locale/nl-be.js\",\n\t\"./nl.js\": \"./node_modules/moment/locale/nl.js\",\n\t\"./nn\": \"./node_modules/moment/locale/nn.js\",\n\t\"./nn.js\": \"./node_modules/moment/locale/nn.js\",\n\t\"./pa-in\": \"./node_modules/moment/locale/pa-in.js\",\n\t\"./pa-in.js\": \"./node_modules/moment/locale/pa-in.js\",\n\t\"./pl\": \"./node_modules/moment/locale/pl.js\",\n\t\"./pl.js\": \"./node_modules/moment/locale/pl.js\",\n\t\"./pt\": \"./node_modules/moment/locale/pt.js\",\n\t\"./pt-br\": \"./node_modules/moment/locale/pt-br.js\",\n\t\"./pt-br.js\": \"./node_modules/moment/locale/pt-br.js\",\n\t\"./pt.js\": \"./node_modules/moment/locale/pt.js\",\n\t\"./ro\": \"./node_modules/moment/locale/ro.js\",\n\t\"./ro.js\": \"./node_modules/moment/locale/ro.js\",\n\t\"./ru\": \"./node_modules/moment/locale/ru.js\",\n\t\"./ru.js\": \"./node_modules/moment/locale/ru.js\",\n\t\"./sd\": \"./node_modules/moment/locale/sd.js\",\n\t\"./sd.js\": \"./node_modules/moment/locale/sd.js\",\n\t\"./se\": \"./node_modules/moment/locale/se.js\",\n\t\"./se.js\": \"./node_modules/moment/locale/se.js\",\n\t\"./si\": \"./node_modules/moment/locale/si.js\",\n\t\"./si.js\": \"./node_modules/moment/locale/si.js\",\n\t\"./sk\": \"./node_modules/moment/locale/sk.js\",\n\t\"./sk.js\": \"./node_modules/moment/locale/sk.js\",\n\t\"./sl\": \"./node_modules/moment/locale/sl.js\",\n\t\"./sl.js\": \"./node_modules/moment/locale/sl.js\",\n\t\"./sq\": \"./node_modules/moment/locale/sq.js\",\n\t\"./sq.js\": \"./node_modules/moment/locale/sq.js\",\n\t\"./sr\": \"./node_modules/moment/locale/sr.js\",\n\t\"./sr-cyrl\": \"./node_modules/moment/locale/sr-cyrl.js\",\n\t\"./sr-cyrl.js\": \"./node_modules/moment/locale/sr-cyrl.js\",\n\t\"./sr.js\": \"./node_modules/moment/locale/sr.js\",\n\t\"./ss\": \"./node_modules/moment/locale/ss.js\",\n\t\"./ss.js\": \"./node_modules/moment/locale/ss.js\",\n\t\"./sv\": \"./node_modules/moment/locale/sv.js\",\n\t\"./sv.js\": \"./node_modules/moment/locale/sv.js\",\n\t\"./sw\": \"./node_modules/moment/locale/sw.js\",\n\t\"./sw.js\": \"./node_modules/moment/locale/sw.js\",\n\t\"./ta\": \"./node_modules/moment/locale/ta.js\",\n\t\"./ta.js\": \"./node_modules/moment/locale/ta.js\",\n\t\"./te\": \"./node_modules/moment/locale/te.js\",\n\t\"./te.js\": \"./node_modules/moment/locale/te.js\",\n\t\"./tet\": \"./node_modules/moment/locale/tet.js\",\n\t\"./tet.js\": \"./node_modules/moment/locale/tet.js\",\n\t\"./tg\": \"./node_modules/moment/locale/tg.js\",\n\t\"./tg.js\": \"./node_modules/moment/locale/tg.js\",\n\t\"./th\": \"./node_modules/moment/locale/th.js\",\n\t\"./th.js\": \"./node_modules/moment/locale/th.js\",\n\t\"./tl-ph\": \"./node_modules/moment/locale/tl-ph.js\",\n\t\"./tl-ph.js\": \"./node_modules/moment/locale/tl-ph.js\",\n\t\"./tlh\": \"./node_modules/moment/locale/tlh.js\",\n\t\"./tlh.js\": \"./node_modules/moment/locale/tlh.js\",\n\t\"./tr\": \"./node_modules/moment/locale/tr.js\",\n\t\"./tr.js\": \"./node_modules/moment/locale/tr.js\",\n\t\"./tzl\": \"./node_modules/moment/locale/tzl.js\",\n\t\"./tzl.js\": \"./node_modules/moment/locale/tzl.js\",\n\t\"./tzm\": \"./node_modules/moment/locale/tzm.js\",\n\t\"./tzm-latn\": \"./node_modules/moment/locale/tzm-latn.js\",\n\t\"./tzm-latn.js\": \"./node_modules/moment/locale/tzm-latn.js\",\n\t\"./tzm.js\": \"./node_modules/moment/locale/tzm.js\",\n\t\"./ug-cn\": \"./node_modules/moment/locale/ug-cn.js\",\n\t\"./ug-cn.js\": \"./node_modules/moment/locale/ug-cn.js\",\n\t\"./uk\": \"./node_modules/moment/locale/uk.js\",\n\t\"./uk.js\": \"./node_modules/moment/locale/uk.js\",\n\t\"./ur\": \"./node_modules/moment/locale/ur.js\",\n\t\"./ur.js\": \"./node_modules/moment/locale/ur.js\",\n\t\"./uz\": \"./node_modules/moment/locale/uz.js\",\n\t\"./uz-latn\": \"./node_modules/moment/locale/uz-latn.js\",\n\t\"./uz-latn.js\": \"./node_modules/moment/locale/uz-latn.js\",\n\t\"./uz.js\": \"./node_modules/moment/locale/uz.js\",\n\t\"./vi\": \"./node_modules/moment/locale/vi.js\",\n\t\"./vi.js\": \"./node_modules/moment/locale/vi.js\",\n\t\"./x-pseudo\": \"./node_modules/moment/locale/x-pseudo.js\",\n\t\"./x-pseudo.js\": \"./node_modules/moment/locale/x-pseudo.js\",\n\t\"./yo\": \"./node_modules/moment/locale/yo.js\",\n\t\"./yo.js\": \"./node_modules/moment/locale/yo.js\",\n\t\"./zh-cn\": \"./node_modules/moment/locale/zh-cn.js\",\n\t\"./zh-cn.js\": \"./node_modules/moment/locale/zh-cn.js\",\n\t\"./zh-hk\": \"./node_modules/moment/locale/zh-hk.js\",\n\t\"./zh-hk.js\": \"./node_modules/moment/locale/zh-hk.js\",\n\t\"./zh-tw\": \"./node_modules/moment/locale/zh-tw.js\",\n\t\"./zh-tw.js\": \"./node_modules/moment/locale/zh-tw.js\"\n};\nfunction webpackContext(req) {\n\treturn __webpack_require__(webpackContextResolve(req));\n};\nfunction webpackContextResolve(req) {\n\tvar id = map[req];\n\tif(!(id + 1)) // check for number or string\n\t\tthrow new Error(\"Cannot find module '\" + req + \"'.\");\n\treturn id;\n};\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = \"./node_modules/moment/locale recursive ^\\\\.\\\\/.*$\";\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/moment/locale ^\\.\\/.*$\n// module id = ./node_modules/moment/locale recursive ^\\.\\/.*$\n// module chunks = main","function webpackEmptyAsyncContext(req) {\n\t// Here Promise.resolve().then() is used instead of new Promise() to prevent\n\t// uncatched exception popping up in devtools\n\treturn Promise.resolve().then(function() {\n\t\tthrow new Error(\"Cannot find module '\" + req + \"'.\");\n\t});\n}\nwebpackEmptyAsyncContext.keys = function() { return []; };\nwebpackEmptyAsyncContext.resolve = webpackEmptyAsyncContext;\nmodule.exports = webpackEmptyAsyncContext;\nwebpackEmptyAsyncContext.id = \"./src/$$_lazy_route_resource lazy recursive\";\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/$$_lazy_route_resource lazy\n// module id = ./src/$$_lazy_route_resource lazy recursive\n// module chunks = main","import { NgModule } from '@angular/core';\nimport { RouterModule, Routes } from '@angular/router';\nimport { SignInComponent } from './view/auth/signin/signin.component';\nimport { SignUpComponent } from './view/auth/signup/signup.component';\nimport { RestoreComponent } from './view/auth/restore/restore.component';\nimport { PersonalComponent } from './view/personal/personal.component';\nimport { OnlineComponent } from './view/online/online.component';\nimport { EventsComponent } from './view/events/events.component';\nimport { StateComponent } from './view/state/state.component';\nimport { TracksComponent } from './view/tracks/tracks.component';\nimport { ReportsComponent } from './view/reports/reports.component';\nimport { GeozoneComponent } from './view/geozone/geozone.component';\nimport { ServicesComponent } from \"./view/services/services.component\";\nimport { ShareRequestsComponent } from './view/share-requests/share-requests.component';\n\nimport { MainGuard, AuthGuard, SignUpGuard, PersonalGuard, MainNoDeviceGuard } from './guards';\nimport {DeleteUserComponent} from \"./view/auth/deleteUser/deleteUser.component\";\n\nconst routes: Routes = [\n {\n path: '',\n redirectTo: '/signin',\n pathMatch: 'full',\n canActivate: [AuthGuard]\n },\n {\n path: 'signin',\n component: SignInComponent,\n canActivate: [AuthGuard]\n },\n {\n path: 'signup',\n component: SignUpComponent,\n canActivate: [SignUpGuard]\n },\n {\n path: 'restore',\n component: RestoreComponent,\n canActivate: [AuthGuard]\n },\n {\n path: 'personal/:userId',\n component: PersonalComponent,\n canActivate: [PersonalGuard]\n },\n {\n path: 'share-requests',\n component:ShareRequestsComponent ,\n canActivate: [MainNoDeviceGuard]\n },\n {\n path: 'online',\n component: OnlineComponent,\n canActivate: [MainGuard],\n pathMatch: 'full'\n },\n {\n path: 'account-delete',\n component: DeleteUserComponent,\n canActivate: [PersonalGuard],\n pathMatch: 'full'\n },\n // {\n // \tpath: 'online/:id/state',\n // \tcomponent: OnlineComponent,\n // \tcanActivate: [MainGuard],\n // \tpathMatch: 'full'\n // },\n {\n path: 'online/:objectId/:deviceId',\n component: OnlineComponent,\n canActivate: [MainGuard],\n children: [\n\n { path: 'events', component: EventsComponent },\n { path: 'tracks', component: TracksComponent },\n { path: 'state', component: StateComponent },\n { path: 'reports', component: ReportsComponent },\n { path: 'geozone', component: GeozoneComponent },\n { path: 'services', component: ServicesComponent },\n ]\n },\n\n\n { path: '**', redirectTo: '/signin' }\n];\n\n@NgModule({\n imports: [RouterModule.forRoot(routes)],\n exports: [\n RouterModule\n ],\n})\nexport class AppRoutingModule { }\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/app-routing.module.ts","module.exports = \"nav.nav {\\n display: block;\\n}\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/app.component.css\n// module id = ./src/app/app.component.css\n// module chunks = main","module.exports = \"\\n
\\n
\\n \\n \\n \\n \\n
\\n
\\n \\n \\n \\n \\n\\n\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/app.component.html\n// module id = ./src/app/app.component.html\n// module chunks = main","import { Component, OnInit } from '@angular/core';\nimport { ScreenService } from '@services/screen.service';\n\n@Component({\n selector: 'app-root',\n templateUrl: './app.component.html',\n styleUrls: ['./app.component.css']\n})\n\n\nexport class AppComponent implements OnInit {\n title = 'app';\n\n constructor(\n public screenService: ScreenService) {\n }\n\n ngOnInit() {\n this.screenService.isShowLoader = true;\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/app.component.ts","import { BrowserModule } from '@angular/platform-browser';\nimport { NgModule } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { ReactiveFormsModule } from '@angular/forms';\nimport { HttpClientModule } from '@angular/common/http';\n\n/*Moduls */\nimport { AppRoutingModule } from './app-routing.module';\n\n/*Components */\nimport { AppComponent } from './app.component';\nimport { HeaderComponent } from './view/header/header.component';\nimport { NavAppComponent } from './view/auth/nav-app/navapp.component';\nimport { SignInComponent } from './view/auth/signin/signin.component';\nimport { SignUpComponent } from './view/auth/signup/signup.component';\nimport { RestoreComponent } from './view/auth/restore/restore.component';\nimport { ConfirmUserComponent } from './view/auth/confirmUser/confirmUser.component';\nimport { DeleteUserComponent } from './view/auth/deleteUser/deleteUser.component';\n\n\nimport { PersonalComponent } from './view/personal/personal.component';\nimport { OnlineComponent } from './view/online/online.component';\nimport { EventsComponent } from './view/events/events.component';\nimport { StateComponent } from './view/state/state.component';\nimport { TracksComponent } from './view/tracks/tracks.component';\nimport { ReportsComponent } from './view/reports/reports.component';\nimport { GeozoneComponent } from './view/geozone/geozone.component';\nimport { ServicesComponent } from './view/services/services.component';\nimport { ShareRequestsComponent } from './view/share-requests/share-requests.component';\n\nimport {\n TimersListComponent,\n TimerAddComponent,\n TariffsBlockComponent,\n MainStateInfoComponent,\n StateInfoComponent,\n CommandList,\n IndicatorDeviceComponent,\n AddObjectMenuComponent,\n VideoBackgroundComponent,\n UsernameFieldComponent,\n ReportStatsItemComponent,\n GraphStatsComponent,\n ReportQualityComponent,\n PointerGraphComponent,\n ReportQualityGraphComponent,\n BitmaskField,\n FileUploadComponent\n} from './view/components';\n\nimport {\n SettingsComponent,\n AddObjectComponent,\n selectObjectComponent,\n FeedbackComponent,\n TariffModalComponent,\n UpdatePasswordModalComponent,\n AgreementsModalComponent,\n ChangeObjectNameModalComponent,\n ChangeDevicePhoneModalComponent,\n ProfileModalComponent,\n SendCapchaModalComponent,\n ShareDeviceModalComponent,\n ShareDeviceConfirmModalComponent,\n ShareDeviceCancelModalComponent,\n ServiceOrderModalComponent,\n ConfirmDeletingModalComponent\n} from './view/modal';\n\n\n/*Services */\nimport {\n CachedDataService,\n AuthService,\n UserService,\n ObservableObjectsService,\n DevicesService,\n ObjectsService,\n ScreenService,\n StateService,\n CommandsService,\n SettingsService,\n MappingService,\n TariffService,\n AppService,\n GeozoneService,\n ShareDeviceService,\n ServicesService\n} from '@services';\n\n\n/*Guards */\nimport { MainGuard, AuthGuard, SignUpGuard, PersonalGuard, MainNoDeviceGuard } from './guards';\n\n/*Directives*/\nimport { TooltipeDirective } from './directives/tooltip.directive';\n\n\n/*Plugins */\nimport { BsModalModule } from 'ng2-bs3-modal';\nimport { ChartModule } from 'angular-highcharts';\nimport { NgbModule } from '@ng-bootstrap/ng-bootstrap';\nimport { NgxMyDatePickerModule } from 'ngx-mydatepicker';\nimport { TextMaskModule } from 'angular2-text-mask';\nimport { NgSelectModule } from '@ng-select/ng-select';\nimport { MyDateRangePickerModule } from 'mydaterangepicker';\nimport { OwlModule } from 'ngx-owl-carousel';\nimport { MyDatePickerModule } from 'mydatepicker';\nimport { IonRangeSliderModule } from 'ng2-ion-range-slider';\nimport { YoutubePlayerModule } from 'ngx-youtube-player';\n\n@NgModule({\n declarations: [\n AppComponent,\n HeaderComponent,\n NavAppComponent,\n SignInComponent,\n SignUpComponent,\n RestoreComponent,\n ConfirmUserComponent,\n DeleteUserComponent,\n FeedbackComponent,\n PersonalComponent,\n OnlineComponent,\n EventsComponent,\n StateComponent,\n TracksComponent,\n AddObjectComponent,\n selectObjectComponent,\n AddObjectMenuComponent,\n SettingsComponent,\n CommandList,\n StateInfoComponent,\n IndicatorDeviceComponent,\n MainStateInfoComponent,\n TimerAddComponent,\n TimersListComponent,\n TooltipeDirective,\n TariffsBlockComponent,\n TariffModalComponent,\n UpdatePasswordModalComponent,\n AgreementsModalComponent,\n VideoBackgroundComponent,\n UsernameFieldComponent,\n ChangeObjectNameModalComponent,\n ChangeDevicePhoneModalComponent,\n ProfileModalComponent,\n ReportsComponent,\n ReportStatsItemComponent,\n SendCapchaModalComponent,\n ConfirmDeletingModalComponent,\n GraphStatsComponent,\n GeozoneComponent,\n ReportQualityComponent,\n PointerGraphComponent,\n ReportQualityGraphComponent,\n ShareDeviceModalComponent,\n ShareRequestsComponent,\n ShareDeviceConfirmModalComponent,\n ShareDeviceCancelModalComponent,\n ServiceOrderModalComponent,\n BitmaskField,\n ServicesComponent,\n FileUploadComponent\n ],\n imports: [\n BrowserModule,\n FormsModule,\n HttpClientModule,\n AppRoutingModule,\n NgxMyDatePickerModule.forRoot(),\n NgbModule.forRoot(),\n MyDatePickerModule,\n ChartModule,\n ReactiveFormsModule,\n TextMaskModule,\n BsModalModule,\n NgSelectModule,\n MyDateRangePickerModule,\n OwlModule,\n IonRangeSliderModule,\n YoutubePlayerModule\n ],\n providers: [\n AuthService,\n UserService,\n CachedDataService,\n ObservableObjectsService,\n DevicesService,\n ObjectsService,\n ScreenService,\n MappingService,\n StateService,\n CommandsService,\n SettingsService,\n TariffService,\n AppService,\n GeozoneService,\n ShareDeviceService,\n ServicesService,\n MainGuard,\n AuthGuard,\n SignUpGuard,\n PersonalGuard,\n MainNoDeviceGuard],\n bootstrap: [AppComponent],\n entryComponents: [\n AddObjectMenuComponent\n ]\n})\nexport class AppModule { }\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/app.module.ts","export const CONFIG = {\n intervalUpdateState: 5000,\n intervalUpdateAfterSendCommand: 1000,\n demoUsername: 'demo',\n demoPassword: 'password1',\n objectTypes: [\n 'Moto',\n 'Car',\n 'SUV',\n 'QuadBike'\n ],\n dayLabels: { su: 'Вс', mo: 'Пн', tu: 'Вт', we: 'Ср', th: 'Чт', fr: 'Пт', sa: 'Сб' },\n monthLabels: { 1: 'Янв', 2: 'Фев', 3: 'Мар', 4: 'Апр', 5: 'Май', 6: 'Июнь', 7: 'Июль', 8: 'Авг', 9: 'Сен', 10: 'Окт', 11: 'Ноя', 12: 'Дек' },\n commandIcon: {\n '1': { iconName: 'flat_17' }, // Позвонить на автомобиль\n '2': { iconName: 'flat_6' }, // Поиск на парковке\n '3': { iconName: 'flat_4' }, // Статус\n '4': { iconName: 'flat_1' }, // Запрос местоположения\n '5': { iconName: 'flat_7' }, // Запрос баланса\n '6': { iconName: 'flat_9' }, // Сброс\n '7': { iconName: 'default' }, // Продление связи\n '8': { iconName: 'default' }, // Завершение связи\n '9': { iconName: 'default' }, // Команда CHECK\n '10': { iconName: 'flat_21' }, // Режим антиограбления вкл\n '11': { iconName: 'flat_22' }, // Режим антиограбления выкл\n '12': { iconName: '3' }, // Включить сигнал\n '13': { iconName: 'default' }, // Паника\n // Двигатель\n '101': { iconName: 'flat_3' }, // Запустить двигатель\n '102': { iconName: 'flat_3--off' }, // Остановить двигатель\n '103': { iconName: 'flat_15' }, // Включить подогреватель\n '104': { iconName: 'flat_15--off' }, // Выключить подогреватель\n '105': { iconName: 'flat_13' }, // Заблокировать двигатель\n // Охрана\n '201': { iconName: 'flat_20' }, // Включить охрану\n '202': { iconName: 'flat_19' }, // Выключить охрану\n '203': { iconName: 'flat_on_security' }, // Включить активную охрану\n '204': { iconName: 'flat_off_security' }, // Выключить активную охрану\n '205': { iconName: 'ugona_30' }, // Снять режим охраны с багажника\n // ТО\n '301': { iconName: 'flat_2' }, // Включить режим ТО\n '302': { iconName: 'flat_2--off' }, // Выключить режим ТО\n // Контакты\n '401': { iconName: 'flat_20' }, // Открыть замок\n '402': { iconName: 'flat_19' }, // Закрыть замок\n '403': { iconName: '10' }, // Открыть багажник\n '404': { iconName: 'hand_1' }, // Включить свободные руки\n '405': { iconName: 'flat_3_cross' }, // Выключить свободные руки\n // Трекинг\n '501': { iconName: 'flat_5' }, // Включить трекинг\n '502': { iconName: 'flat_5--off' }, // Выключить трекинг\n // Остальное\n '601': { iconName: 'flat_internet_on' }, // Включить интернет\n '602': { iconName: 'flat_off_tracking' }, // Выключить интернет\n '603': { iconName: 'flat_ch' }, // Включить канал\n '604': { iconName: 'flat_ch_cross' }, // Выключить канал\n '605': { iconName: 'default' }, // Выключение датчика удара\n '606': { iconName: 'default' }, // Выключение датчика наклона\n '609': { iconName: 'default' }, // Выключение доп. датчика\n '612': { iconName: 'flat_11' }, // Импульс на канал\n '613': { iconName: 'flat_ch1' }, // Включить реле1\n '614': { iconName: 'flat_ch1_cross' }, // Выключить реле1\n '615': { iconName: 'flat_11' }, // Импульс на реле1\n '1002': { iconName: 'flat_A' }, // Режим А\n '1003': { iconName: 'flat_B' }, // Режим B\n 'default': { iconName: 'default' },\n },\n periodTimer: [\n {\n text: 'Один раз',\n value: 'oneTime'\n },\n {\n text: 'Ежедневно',\n value: 'everyDay'\n },\n {\n text: 'Еженедельно',\n value: 'everyWeek'\n }\n ],\n periodTimerPandora: [\n {\n text: 'Ежедневно',\n value: 'everyDay'\n },\n {\n text: 'Еженедельно',\n value: 'everyWeek'\n }\n ],\n weekTimer: [\n {\n text: 'пн',\n value: 1\n },\n {\n text: 'вт',\n value: 2\n },\n {\n text: 'ср',\n value: 3\n },\n {\n text: 'чт',\n value: 4\n },\n {\n text: 'пт',\n value: 5\n },\n {\n text: 'сб',\n value: 6\n },\n {\n text: 'вс',\n value: 0\n }\n ],\n extra: {\n car: '',\n moto: '',\n SUV:'',\n quadBike:'',\n\n },\n orderStatus:{\n created:\"В обработке\",\n paid:\"Оплачено\",\n completed:\"Завершено\",\n canceled:\"Отменено\", \n error:\"Ошибка\" \n }\n};\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/config.ts","import { Directive, ElementRef, Input, HostListener } from '@angular/core';\n\n@Directive({\n selector: '[tooltipCustom]'\n})\n\nexport class TooltipeDirective {\n supportsTouch = 'ontouchstart' in window || navigator.msMaxTouchPoints;\n\n @Input() tooltipCustom: any;\n \n \n @HostListener('mouseenter', ['$event']) show(event) {\n if(!this.supportsTouch){\n event.target.classList.add('show-tooltip')\n }\n\n \n \n \n }\n @HostListener('mouseleave', ['$event']) hide(event) {\n event.target.classList.remove('show-tooltip')\n\n \n\n \n }\n\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/directives/tooltip.directive.ts","\nimport { Injectable } from '@angular/core';\nimport { Router, CanActivate } from '@angular/router';\nimport { CachedDataService } from '@services/data/cached-data.service';\n\n@Injectable()\nexport class AuthGuard implements CanActivate {\n\n constructor(\n private router: Router,\n private cachedDataService: CachedDataService) {\n }\n\n public canActivate() {\n if (this.cachedDataService.isAuth()) {\n if (this.cachedDataService.getCurrentUser() && this.cachedDataService.getCurrentUser().phoneNumberConfirmed) {\n this.router.navigate(['/online']);\n return false;\n } else {\n return true;\n }\n } else {\n return true;\n }\n }\n}\n\n\n\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/guards/auth.guard.ts","export * from './main.guard';\nexport * from './auth.guard';\nexport * from './signUp.guard';\nexport * from './personal.guard';\nexport * from './main-no-device.guard';\n\n\n// WEBPACK FOOTER //\n// ./src/app/guards/index.ts","\nimport { Injectable } from '@angular/core';\nimport { Router, CanActivate } from '@angular/router';\nimport { CachedDataService } from '@services/data/cached-data.service';\nimport { ScreenService } from '@services/screen.service';\nimport { ObjectsService } from '@services/http/objects.service';\n@Injectable()\nexport class MainNoDeviceGuard implements CanActivate {\n currentUrl: String = null;\n constructor(\n private router: Router,\n private screenService: ScreenService,\n private objectsService: ObjectsService,\n private cachedDataService: CachedDataService) {\n objectsService.updateObjects.subscribe(() => {\n\n });\n }\n\n public canActivate() {\n if (!this.cachedDataService.getExpiredDate()) {\n this.cachedDataService.clearCache();\n this.router.navigate(['/signin']);\n return false;\n }\n if (this.cachedDataService.isAuth()) {\n if (this.cachedDataService.getCurrentUser() && !this.cachedDataService.getCurrentUser().phoneNumberConfirmed) {\n this.screenService.isShowLoader = false;\n this.router.navigate(['/signup']);\n return false;\n } else {\n return true;\n }\n } else {\n this.router.navigate(['/signin']);\n return false;\n }\n\n }\n}\n\n\n// WEBPACK FOOTER //\n// ./src/app/guards/main-no-device.guard.ts","\nimport { Injectable } from '@angular/core';\nimport {Router, CanActivate, ActivatedRoute, RouterStateSnapshot, ActivatedRouteSnapshot} from '@angular/router';\nimport { CachedDataService } from '@services/data/cached-data.service';\nimport { ScreenService } from '@services/screen.service';\nimport { ObjectsService } from '@services/http/objects.service';\n@Injectable()\nexport class MainGuard implements CanActivate {\n currentUrl: String = null;\n constructor(\n private router: Router,\n private route: ActivatedRoute,\n private screenService: ScreenService,\n private objectsService: ObjectsService,\n private cachedDataService: CachedDataService) {\n objectsService.updateObjects.subscribe(() => {\n\n });\n }\n\n public canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot) {\n if (!this.cachedDataService.getExpiredDate()) {\n this.cachedDataService.clearCache();\n this.router.navigate(['/signin']);\n return false;\n }\n if (this.cachedDataService.isAuth()) {\n if (this.cachedDataService.getCurrentUser() && !this.cachedDataService.getCurrentUser().phoneNumberConfirmed) {\n this.screenService.isShowLoader = false;\n this.router.navigate(['/signup']);\n return false;\n } else {\n if (!this.cachedDataService.getObservableObjects() || this.cachedDataService.getObservableObjects().length === 0) {\n this.router.navigate(['/personal', this.cachedDataService.getCurrentUser().id]);\n return false;\n }\n return true;\n }\n } else {\n this.router.navigate(['/signin']);\n return false;\n }\n\n }\n}\n\n\n\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/guards/main.guard.ts","\nimport { Injectable } from '@angular/core';\nimport {Router, CanActivate, ActivatedRouteSnapshot, RouterStateSnapshot} from '@angular/router';\nimport { CachedDataService } from '@services/data/cached-data.service';\nimport { ScreenService } from '@services/screen.service';\n@Injectable()\nexport class PersonalGuard implements CanActivate {\n currentUrl: String = null;\n constructor(\n private router: Router,\n private screenService: ScreenService,\n private cachedDataService: CachedDataService) {\n }\n\n public canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot) {\n if (!this.cachedDataService.getExpiredDate()) {\n this.cachedDataService.clearCache();\n this.router.navigate(['/signin'], { queryParams: { returnUrl: state.url }});\n return false;\n }\n if (this.cachedDataService.isAuth()) {\n if (this.cachedDataService.getCurrentUser() && !this.cachedDataService.getCurrentUser().phoneNumberConfirmed){\n this.screenService.isShowLoader = false;\n this.router.navigate(['/signup']);\n return false;\n } else {\n return true;\n }\n } else {\n this.router.navigate(['/signin'], { queryParams: { returnUrl: state.url }});\n return false;\n }\n }\n}\n\n\n\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/guards/personal.guard.ts","import { Injectable } from '@angular/core';\nimport { Router, CanActivate } from '@angular/router';\nimport { CachedDataService } from '@services/data/cached-data.service';\n@Injectable()\nexport class SignUpGuard implements CanActivate {\n\n constructor(\n private router: Router,\n private cachedDataService: CachedDataService) {\n }\n\n public canActivate() {\n if (this.cachedDataService.isAuth()) {\n if (this.cachedDataService.getCurrentUser() && !this.cachedDataService.getCurrentUser().phoneNumberConfirmed) {\n return true;\n } else {\n this.router.navigate(['/personal', this.cachedDataService.getCurrentUser().id]);\n return false;\n }\n } else {\n return true;\n }\n }\n}\n\n\n\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/guards/signUp.guard.ts","export class PasswordConfirnRequest {\n login: string;\n code: string;\n constructor(login: string, code: string) {\n this.login = login;\n this.code = code;\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/shared/models/requests/password-confirm-request.ts","export class PasswordRecoveryRequest {\n login: string;\n NewPassword: string;\n Channel: string;\n constructor(login: string, NewPassword: string, Channel: string) {\n this.login = login;\n this.NewPassword = NewPassword;\n this.Channel = Channel;\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/shared/models/requests/password-recovery-request.ts","export class SignInRequest {\n userName: string;\n password: string;\n\n constructor(userName: string, password: string) {\n this.userName = userName;\n this.password = password;\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/shared/models/requests/sign-in-request.ts","export class SignUpRequest {\n userName: string;\n password: string;\n fullName: string;\n phoneNumber: string;\n email: string;\n dateTimeOffset: number;\n\n constructor(\n userName: string,\n password: string,\n fullName: string,\n phoneNumber: string,\n email: string,\n dateTimeOffset: number) {\n this.userName = userName;\n this.password = password;\n this.fullName = fullName;\n this.phoneNumber = phoneNumber;\n this.email = email;\n this.dateTimeOffset = dateTimeOffset;\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/shared/models/requests/sign-up-request.ts","export class User {\n id: string;\n email: string;\n userName: string;\n fullName: string;\n dateTimeOffset: string;\n phoneNumber: string;\n commands: Array;\n created: number;\n isEnabled: boolean;\n isTest: boolean;\n onlineId: string;\n onlineSynchronized: boolean;\n parameters: any;\n phoneNumberConfirmed: boolean;\n roles: Array;\n constructor() { }\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/shared/models/user.ts","\nimport { OwlCarousel } from 'ngx-owl-carousel';\n\nexport class Pager {\n private pageSize;\n public pages = [];\n public currentPage = 1;\n public carouselOption = {\n dots: false,\n navigation: false,\n nav: false,\n loop: false,\n lazyLoad: false,\n items: 1,\n // onDrag: this.owlDrag.bind(this)\n };\n constructor(pageSize) {\n this.pageSize = pageSize;\n }\n setData(data) {\n const temp = [];\n const tempData = JSON.parse(JSON.stringify(data));\n\n\n while (tempData.length) {\n temp.push(tempData.splice(0, this.pageSize));\n }\n this.pages = temp;\n this.currentPage = 1;\n }\n updateDataTrack(data) {\n this.pages.map((page) => {\n const currentTrack = page.filter(track => track.startTimestamp === data.startTimestamp)[0];\n if (currentTrack) {\n currentTrack.startAddress = data.startAddress;\n currentTrack.finishAddress = data.finishAddress;\n }\n });\n }\n\n nextSlide(element: OwlCarousel) {\n if (this.currentPage >= this.pages.length) {\n return;\n }\n this.currentPage++;\n element.to([this.currentPage - 1, 200]);\n }\n toFirstSlide(element: OwlCarousel) {\n if (element) {\n this.currentPage = 1;\n element.to([0, 200]);\n }\n\n }\n prevSlide(element: OwlCarousel) {\n if (this.currentPage < 2) {\n return;\n }\n this.currentPage--;\n element.to([this.currentPage - 1, 200]);\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/shared/pager.ts","import { Injectable } from '@angular/core';\n\n/*Models */\nimport { Device, StatsTrack } from '@models';\n\n/*Service */\nimport { CachedDataService } from './data/cached-data.service';\n\n/*Plugins */\nimport * as moment from 'moment';\n\n/*Models */\nimport { ObservableObject } from '@models';\n\n@Injectable()\nexport class AppService {\n\n constructor(private cachedDataService: CachedDataService) {\n\n }\n sortedArray(array, field, direction?) {\n let dir = 1;\n if (direction) {\n dir = direction;\n }\n return array.sort((a, b) => {\n a[field] = parseInt(a[field]);\n b[field] = parseInt(b[field]);\n \n if (a[field] < b[field]) { return -1 * dir; } else if (a[field] > b[field]) { return 1 * dir; } else { return 0; }\n });\n }\n\n\n\n parseDateReportsStat(response: Array) {\n const userDateTimeOffset = this.userTimezoneOffset();\n\n response.map(item => {\n item.fromUnix = moment(item.from).startOf('day').unix() + (userDateTimeOffset * 60 * 60);\n item.toUnix = moment(item.to).endOf('day').unix() + (userDateTimeOffset * 60 * 60);\n item.fromFormat = moment(item.from).format('DD.MM.YYYY');\n item.toFormat = moment(item.to).format('DD.MM.YYYY');\n item.averageSpeed = parseFloat(parseFloat(item.averageSpeed).toFixed(2)).toString();\n item.maxSpeed = parseFloat(parseFloat(item.maxSpeed).toFixed(2)).toString();\n item.travelTimeHours = parseFloat((this.secondsToTime(item.travelTime).h + this.secondsToTime(item.travelTime).m / 60).toFixed(2));\n item.travelTimeFormat = {\n hours: this.secondsToTime(item.travelTime).h,\n minutes: this.secondsToTime(item.travelTime).m\n };\n });\n response = this.sortedArray(response, 'fromUnix', -1);\n }\n\n secondsToTime(secs) {\n const hours = Math.floor(secs / (60 * 60));\n\n const divisor_for_minutes = secs % (60 * 60);\n const minutes = Math.floor(divisor_for_minutes / 60);\n\n const divisor_for_seconds = divisor_for_minutes % 60;\n const seconds = Math.ceil(divisor_for_seconds);\n\n const obj = {\n 'h': hours,\n 'm': minutes,\n 's': seconds\n };\n return obj;\n }\n\n userTimezoneOffset(): number {\n let userTimezoneOffset;\n if (this.cachedDataService.ifWatchAnotherUser) {\n userTimezoneOffset = this.cachedDataService.getCurrentObject().user.dateTimeOffset;\n } else {\n userTimezoneOffset = -new Date().getTimezoneOffset() / 60;\n }\n return userTimezoneOffset;\n }\n\n filterObjects(observableObjects:Array):Array{\n // let newObjectList:Array = [];\n // let isHidden = false;\n observableObjects = observableObjects.filter(object => object.devices && object.devices.length);\n\n observableObjects.map(object=>{\n if(object.devices){\n object.devices.map(device=>{\n device = this.filterHiddepPhoneDevice(device);\n })\n }\n // if(!isHidden){\n // newObjectList.push(object);\n // }\n })\n return observableObjects;\n }\n filterHiddepPhoneDevice(device: Device){\n if(device.phones){\n if(device.phones.filter(phone=>phone.isHidden).length){\n device[\"isHiddenPhone\"] = true;\n }\n }\n return device;\n }\n \n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/shared/services/app.service.ts","import { Injectable, EventEmitter, OnDestroy } from '@angular/core';\nimport { Subject } from 'rxjs/Subject';\nimport 'rxjs/add/operator/takeUntil';\n\n/*Services*/\nimport { CachedDataService } from '@services/data/cached-data.service';\nimport { DevicesService } from '@services/http/devices.service';\nimport { StateService } from '@services/state.service';\n\n/*Models*/\nimport { Device } from '@models/device';\nimport { DeviceState } from '@models/device-state';\n\nimport { CONFIG } from '../../config';\n@Injectable()\n\nexport class CommandsService implements OnDestroy {\n currentDevice: Device;\n arrayCommands: Array = [];\n getCommandsSubject: Subject = new Subject();\n getCommandsObservable = this.getCommandsSubject.asObservable();\n\n getCommandsGroupSubject: Subject = new Subject();\n getCommandsGroupObservable = this.getCommandsGroupSubject.asObservable();\n\n ifLoadCommand = false;\n\n ifLoadCommandSubject: Subject = new Subject();\n ifLoadCommandObservable = this.ifLoadCommandSubject.asObservable();\n\n\n commandsGroup: Array;\n commands: Array;\n state: DeviceState;\n ifLoadCommandEvent: EventEmitter = new EventEmitter();\n ngUnsubscribe: Subject = new Subject();\n commandIconList = CONFIG.commandIcon;\n\n constructor(\n private devicesService: DevicesService,\n private stateService: StateService,\n private cachedDataService: CachedDataService,\n ) {\n this.currentDevice = this.stateService.currentDevice;\n\n this.stateService.currentDeviceObservable\n .takeUntil(this.ngUnsubscribe)\n .subscribe(device => {\n this.currentDevice = device;\n /*clear command list if device change */\n this.commands = null;\n this.getGroups();\n });\n\n this.getCommandsGroupObservable\n .takeUntil(this.ngUnsubscribe)\n .subscribe(groups => {\n groups = groups.filter(group => !group.isSms);\n this.commandsGroup = this.loadSelectedCommandsGroups(groups);\n this.filterCommands();\n });\n this.ifLoadCommandObservable\n .takeUntil(this.ngUnsubscribe)\n .subscribe(value => {\n this.ifLoadCommand = value;\n });\n\n this.stateService.stateObservable\n .takeUntil(this.ngUnsubscribe)\n .subscribe(state => {\n this.state = state;\n this.filterCommands();\n });\n }\n\n\n\n getGroups() {\n if (this.currentDevice) {\n this.devicesService.getCommandGroups(this.currentDevice.id).subscribe(result => {\n result.map((command) => {\n command['checked'] = false;\n });\n this.getCommandsGroupSubject.next(result);\n });\n }\n }\n\n getCommand() {\n if (this.ifLoadCommand) {\n return false;\n }\n this.ifLoadCommandSubject.next(true);\n\n if (!this.commands) {\n this.devicesService.getCommand(this.currentDevice.id).subscribe(result => {\n this.commands = result.filter(command => command.id != null && command.group != null);\n this.filterCommands();\n });\n } else {\n this.filterCommands();\n }\n }\n\n loadSelectedCommandsGroups(newCommandsGroup) {\n const selectedGroupCommand = this.cachedDataService.getSelectedGroupCommand();\n if (selectedGroupCommand) {\n /*load selected group command */\n newCommandsGroup.map((command) => {\n selectedGroupCommand.map((selectCommand) => {\n if (command.key === selectCommand.key) {\n command.checked = selectCommand.checked;\n }\n });\n });\n }\n\n return newCommandsGroup;\n }\n\n filterCommands() {\n if (!this.commandsGroup || !this.commands) {\n return false;\n }\n\n this.arrayCommands = [];\n const selectCommandsGroup = [];\n\n this.commandsGroup.map((command) => {\n if (command.checked) {\n /*get only checked group */\n selectCommandsGroup.push(command);\n }\n });\n\n\n selectCommandsGroup.map(group => {\n const tempArray = this.commands.filter(command => command.group === group.key);\n if (tempArray.length) {\n tempArray.map((item) => {\n if (!item.condition) {\n /*if always show */\n item['show'] = true;\n } else {\n if (\n (!this.state.mainStates[item.group] && item.condition.indexOf('false') >= 0) ||\n (this.state.mainStates[item.group] && item.condition.indexOf('true') >= 0)\n ) {\n item['show'] = true;\n } else {\n item['show'] = false;\n }\n }\n let icon = this.commandIconList[item.templateId];\n if (!icon) {\n icon = this.commandIconList['default'];\n }\n item['icon'] = icon.iconName;\n\n });\n this.arrayCommands.push({ key: group.key, title: group.title, data: tempArray });\n }\n });\n this.getCommandsSubject.next(this.arrayCommands);\n this.ifLoadCommandSubject.next(false);\n }\n\n ngOnDestroy() {\n this.ngUnsubscribe.next();\n this.ngUnsubscribe.complete();\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/shared/services/commands.service.ts","import { Injectable, EventEmitter } from '@angular/core';\nimport { User } from '@models/user';\nimport { ObservableObject } from '@models/observable-object';\nimport { Credentials } from '@models/credentials';\nimport { Cookie } from 'ng2-cookies/ng2-cookies';\n\n/*Models */\nimport { Device } from '@models/device';\n\n@Injectable()\nexport class CachedDataService {\n private token;\n private currentUser;\n private currentDeviceId;\n private currentDevice;\n private currentObject;\n public needUpdatePassword = false;\n private currentCredentials: Credentials;\n private observableObjects: ObservableObject[];\n private placeInfo = [];\n public isAuth = CachedDataService.isAuth;\n public updateUserStatus: EventEmitter = new EventEmitter();\n ifWatchAnotherUser = false;\n currentUserId: string;\n constructor() {\n\n }\n\n getObservableObjects() {\n if (this.observableObjects) {\n\n return this.observableObjects;\n }\n this.observableObjects = JSON.parse(localStorage.getItem('observableObjects'));\n return this.observableObjects;\n }\n\n setObservableObjects(observableObjects) {\n this.observableObjects = observableObjects;\n localStorage.setItem('observableObjects', JSON.stringify(observableObjects));\n }\n\n setToken(token: string) {\n localStorage.setItem('token', token);\n this.token = token;\n }\n\n public getToken(): string {\n if (this.token) {\n return this.token;\n }\n this.token = localStorage.getItem('token');\n return this.token;\n }\n\n setCredentials(credentials: Credentials) {\n this.currentCredentials = credentials;\n this.currentCredentials.username = this.currentCredentials.username.replace(/\\D/g, '')\n localStorage.setItem('credentials', JSON.stringify(this.currentCredentials));\n }\n setCurrentDeviceId(id: string) {\n\n // if(this.getCurrentDeviceId()){\n // \tif(this.getCurrentDeviceId()!=id){\n // \t\tthis.clearSelectedGroupCommand()\n // \t}\n // }\n this.currentDeviceId = id;\n localStorage.setItem('currentDeviceId', id);\n }\n getCurrentDeviceId() {\n if (this.currentDeviceId) {\n return this.currentDeviceId;\n }\n return localStorage.getItem('currentDeviceId');\n }\n\n setCurrentDevice(device: Device) {\n this.currentDevice = device;\n localStorage.setItem('currentDevice', JSON.stringify(device));\n }\n\n getCurrentDevice() {\n if (this.currentDevice) {\n return this.currentDevice;\n } else {\n return JSON.parse(localStorage.getItem('currentDevice'));\n }\n }\n\n setCurrentObject(object: string) {\n this.currentObject = object;\n localStorage.setItem('currentObject', object);\n }\n getCurrentObject() {\n if (this.currentObject) {\n return JSON.parse(this.currentObject);\n }\n return JSON.parse(localStorage.getItem('currentObject'));\n }\n\n getCredentials(): Credentials {\n if (this.currentCredentials) {\n return this.currentCredentials;\n }\n\n const credentialsJson = localStorage.getItem('credentials');\n if (credentialsJson) {\n return JSON.parse(credentialsJson);\n }\n\n return null;\n }\n private static isAuth = (): boolean => CachedDataService.getUser();\n\n static getUser = (): any => {\n if (localStorage.getItem('currentUser') === null || localStorage.getItem('token') === null) {\n return false;\n } else {\n return true;\n }\n };\n getCurrentUser():User {\n if (this.currentUser) {\n return this.currentUser;\n }\n\n const currentUserJson = localStorage.getItem('currentUser');\n this.currentUser = JSON.parse(currentUserJson);\n return this.currentUser;\n }\n\n setCurrentUser(user: User) {\n this.currentUser = user;\n localStorage.setItem('currentUser', JSON.stringify(user));\n\n }\n setExpiredDate(remember: boolean) {\n let expire;\n if (remember) {\n expire = 7;\n } else {\n expire = 1;\n }\n Cookie.set('token-expire', 'true', expire, '/');\n this.updateUserStatus.emit();\n }\n getExpiredDate() {\n if (Cookie.get('token-expire')) {\n return true;\n } else {\n return false;\n }\n }\n setSelectedGroupCommand(saveGgroups: Array) {\n localStorage.setItem('selectedGroupCommand', JSON.stringify(saveGgroups));\n }\n getSelectedGroupCommand() {\n const selectedGroupCommand = localStorage.getItem('selectedGroupCommand');\n return JSON.parse(selectedGroupCommand);\n }\n setCcode(code) {\n if (code) {\n localStorage.setItem('ccode', code);\n } else {\n localStorage.removeItem('ccode');\n }\n\n }\n getCcode() {\n return localStorage.getItem('ccode');\n }\n setPlaceInfo(item) {\n const currentPlaceInfo = this.getPlacesArray();\n\n\n let place;\n if (currentPlaceInfo) {\n this.placeInfo = JSON.parse(currentPlaceInfo);\n }\n\n if (this.placeInfo) {\n place = this.placeInfo.filter(place => place.lat == item.lat)[0];\n if (!place) {\n this.placeInfo.push(item);\n }\n } else {\n this.placeInfo.push(item);\n }\n\n\n localStorage.setItem('placeInfo', JSON.stringify(this.placeInfo));\n\n\n }\n getPlacesArray() {\n return localStorage.getItem('placeInfo');\n }\n getPlaceInfo(item) {\n const currentPlaceArray = JSON.parse(localStorage.getItem('placeInfo'));\n let currentPlace;\n if (currentPlaceArray) {\n currentPlace = currentPlaceArray.filter(place => (place.lat == item.lat && place.lng == item.lng))[0]\n }\n return currentPlace;\n\n }\n clearSelectedGroupCommand() {\n localStorage.removeItem('selectedGroupCommand');\n }\n // setPlaceAddres(){\n // \tlocalStorage.setItem('placeInfo', this.placeInfo);\n // }\n // getPlacesAddres(){\n // \treturn localStorage.getItem('placeInfo');\n // }\n\n setTempUsername(value: string) {\n localStorage.setItem('tempUsername', value);\n }\n\n getTempUsername() {\n return localStorage.getItem('tempUsername');\n }\n clearTempUsername() {\n localStorage.removeItem('tempUsername');\n }\n setCurrentAgreementTimer(date: string){\n localStorage.setItem('agreement_timer', date);\n }\n\n getCurrentAgreementTimer(): string{\n return localStorage.getItem('agreement_timer');\n }\n clearCurrentAgreementTimer(){\n localStorage.removeItem('agreement_timer');\n }\n\n clearCache() {\n localStorage.removeItem('token');\n localStorage.removeItem('currentUser');\n localStorage.removeItem('observableObjects');\n localStorage.removeItem('credentials');\n localStorage.removeItem('expireddate');\n localStorage.removeItem('currentDeviceId');\n localStorage.removeItem('currentDevice');\n localStorage.removeItem('currentObject');\n localStorage.removeItem('tempUsername');\n localStorage.removeItem('agreement_timer');\n //localStorage.removeItem('selectedGroupCommand');\n Cookie.delete('token-expire', '/');\n this.updateUserStatus.emit();\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/shared/services/data/cached-data.service.ts","export * from './cached-data.service';\nexport * from './mapping.service';\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/shared/services/data/index.ts","import { Injectable } from '@angular/core';\nimport * as eventsMapping from '@assets/json/icon-mapping.json';\n\n@Injectable()\nexport class MappingService {\n private mappings;\n private indicatorsMapping = [{ key: 'gsmLevel', title: 'title', icon: 'i_1.png', order: 1 }];\n private geocoder;\n\n constructor() {\n this.geocoder = new google.maps.Geocoder();\n }\n\n getEventMapping(eventId: string) {\n if (!this.mappings) {\n this.mappings = eventsMapping;\n }\n const mapping = this.mappings.find((eventMapping) => {\n return eventMapping.id.toString() === eventId;\n });\n\n return mapping;\n }\n\n PlaceInfo(params, cb) {\n const location = new google.maps.LatLng(params.lat, params.lng);\n const geocoder = new google.maps.Geocoder();\n geocoder.geocode({ 'location': location }, function (results, status) {\n if (typeof cb !== 'function') {\n return;\n }\n if (status === google.maps.GeocoderStatus.OK) {\n const place = results[0];\n return cb(place);\n }\n cb();\n });\n }\n\n getAddress(latitude, longitude, onSuccess, type?, id?) {\n const coordinate = new google.maps.LatLng(latitude, longitude);\n this.geocoder.geocode({ location: coordinate }, (result, status) => {\n onSuccess(result, status);\n });\n\n }\n\n getIndicators() {\n return this.indicatorsMapping;\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/shared/services/data/mapping.service.ts","import { Injectable } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpRequest, HttpParams } from '@angular/common/http';\nimport { Subject } from 'rxjs/Subject';\nimport { CachedDataService } from '@services/data/cached-data.service';\nimport { SignInRequest } from '@models/requests/sign-in-request';\nimport { SignInResponse } from '@models/responses/sign-in-response';\nimport { SignUpRequest } from '@models/requests/sign-up-request';\nimport { SignUpResponse } from '@models/responses/sign-up-response';\nimport { SendCodeRequest } from '@models/requests/send-code-request';\nimport { PasswordRecoveryRequest } from '@models/requests/password-recovery-request';\nimport { PasswordConfirnRequest } from '@models/requests/password-confirm-request';\n\n\nimport { Observable } from 'rxjs/Observable';\nimport { environment } from '@environments';\nimport { ScreenService } from '@services/screen.service';\nimport { Router } from '@angular/router';\n\n\n@Injectable()\nexport class AuthService {\n\n constructor(\n private httpClient: HttpClient,\n private screenService: ScreenService,\n private cachedDataService: CachedDataService,\n private router: Router) { }\n\n needUpdatePasswordSubject: Subject = new Subject();\n needUpdatePasswordObservable = this.needUpdatePasswordSubject.asObservable();\n\n userUpdatePasswordSubject: Subject = new Subject();\n userUpdatePasswordObservable = this.userUpdatePasswordSubject.asObservable();\n\n signIn(login: string, password: string) {\n const request = new SignInRequest(login, password);\n const uri = environment.apiUri + 'user/signin';\n\n return this.httpClient.post(uri, request)\n .toPromise()\n .then(loginResponse => loginResponse);\n // .catch(this.utils.handleError)\n\n }\n signUp(username: string, password: string, fullname: string, phoneNumber: string, email: string, dateTimeOffset: number) {\n const request = new SignUpRequest(username, password, fullname, phoneNumber, email, dateTimeOffset);\n const uri = environment.apiUri + 'user/signup';\n return this.httpClient.post(uri, request)\n .toPromise()\n .then(response => response);\n // .catch(this.utils.handleError)\n }\n signOut() {\n this.cachedDataService.clearCache();\n this.router.navigate(['/']);\n }\n passwordRecovery(login: string, NewPassword: string, Channel: string) {\n const request = new PasswordRecoveryRequest(login, NewPassword, Channel);\n const uri = environment.apiUri + 'user/passwordRecovery';\n\n return this.httpClient.post(uri, request)\n .toPromise()\n .then(response => response);\n // .catch(this.utils.handleError)\n\n }\n passwordConfirm(login: string, code: string) {\n const request = new PasswordConfirnRequest(login, code);\n const uri = environment.apiUri + 'user/passwordConfirm';\n let headers = new HttpHeaders();\n headers= headers.set('content-type', 'application/json');\n\n return this.httpClient.put(uri, request, {headers})\n .toPromise()\n .then(response => response);\n // .catch(this.utils.handleError)\n }\n\n helpRequest(body) {\n\n\n const uri = environment.apiUri + 'user/helpRequest';\n\n return this.httpClient.post(uri, body)\n .toPromise()\n .then(response => response);\n // .catch(this.utils.handleError)\n\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/shared/services/http/auth.service.ts","import { Observable } from 'rxjs/Observable';\nimport { HttpClient, HttpHeaders, HttpErrorResponse, HttpParams } from '@angular/common/http';\nimport { Router } from '@angular/router';\nimport 'rxjs/add/operator/catch';\nimport 'rxjs/add/observable/empty';\nimport 'rxjs/add/observable/throw';\n\n/*Services */\nimport { AuthService } from '@services/http/auth.service';\nimport { CachedDataService } from '@services/data/cached-data.service';\n\nexport class BaseHttpService {\n constructor(\n protected httpClient: HttpClient,\n protected cachedDataService: CachedDataService,\n protected router: Router,\n protected authService: AuthService) { }\n\n send(method: string, uri: string, params?: HttpParams, allowRetry = true, body?): Observable {\n\n const headers = new HttpHeaders().append('Authorization', `Bearer ${this.cachedDataService.getToken()}`);\n\n return this.httpClient.request(method, uri, { body: body, headers: headers, params: params }).catch(\n (error: HttpErrorResponse) => {\n if (error.status === 401 && allowRetry) {\n const restoreTokenObservable = new Observable(subscriber => {\n this.tryRestoreToken().subscribe(restoreTokenResult => {\n if (restoreTokenResult) {\n this.send(method, uri, params, false, body).subscribe(data => {\n subscriber.next(data);\n });\n } else {\n this.router.navigate(['/signin']);\n }\n });\n });\n return restoreTokenObservable;\n }\n if (error.status === 403) {\n this.cachedDataService.clearCache();\n this.router.navigate(['/signin']);\n }\n if (error.status === 407 || error.status === 0) {\n this.authService.needUpdatePasswordSubject.next(true);\n }\n return Observable.throw(error);\n });\n }\n\n tryRestoreToken(): Observable {\n return new Observable(subscriber => {\n const credentials = this.cachedDataService.getCredentials();\n\n if (!credentials) {\n this.cachedDataService.clearCache();\n this.router.navigate(['/signin']);\n } else {\n // tslint:disable-next-line:no-non-null-assertion\n if (credentials && (!credentials.username.length || credentials.password.length!)) {\n this.cachedDataService.clearCache();\n this.router.navigate(['/signin']);\n } else {\n this.authService.signIn(credentials.username, credentials.password)\n .then((loginResponse) => {\n this.cachedDataService.setToken(loginResponse.token);\n subscriber.next(true);\n })\n .catch((error: any) => {\n subscriber.next(false);\n });\n }\n }\n });\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/shared/services/http/base-http.service.ts","import { Injectable } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpRequest, HttpParams } from '@angular/common/http';\nimport { CachedDataService } from '@services/data/cached-data.service';\nimport { Observable } from 'rxjs/Observable';\nimport { DeviceState } from '@models/device-state';\nimport { BaseHttpService } from '@services/http/base-http.service';\nimport { Router } from '@angular/router';\nimport { AuthService } from '@services/http/auth.service';\n\n\n\nimport { StatsItem, Track, StatsTrack, DeviceEvent, DailyQuality, GraphQuality, CaptchaItem, AddDeviceResponse } from '@models';\n\n/*Eenvironment */\nimport { environment } from '@environments';\n\n@Injectable()\nexport class DevicesService extends BaseHttpService {\n\n constructor(protected httpClient: HttpClient,\n protected cachedDataService: CachedDataService,\n protected router: Router,\n protected authService: AuthService) {\n super(httpClient, cachedDataService, router, authService);\n }\n\n getDeivesByObjectId(objectId: string): Observable {\n const uri = environment.apiUri + `device/search?ObjectOrSharedObjectId=${objectId}&isExtended=true&PageSize=10000`;\n return super.send('GET', uri);\n }\n\n\n getState(deviceId: string, captchaBody?: CaptchaItem): Observable {\n let params;\n if( captchaBody){\n params = new HttpParams()\n .set('capchaId', captchaBody.capchaId)\n .set('capchaCode', captchaBody.capchaCode);\n }\n \n const uri = `${environment.apiUri}device/${deviceId}/state`;\n if(params){\n return super.send('GET', uri, params);\n }else{\n return super.send('GET', uri);\n }\n }\n\n getEvents(deviceId: string, from: number, to: number): Observable {\n const uri = environment.apiUri + 'event';\n const params = new HttpParams()\n .set('from', from.toString())\n .set('to', to.toString())\n .set('deviceId', deviceId);\n\n return super.send('GET', uri, params);\n }\n\n getEventDetails(deviceId: string, eventId: string, timestamp: number): Observable {\n const uri = environment.apiUri + 'event/state';\n const params = new HttpParams()\n .set('deviceId', deviceId)\n .set('eventId', eventId)\n .set('timestamp', timestamp.toString());\n\n return super.send('GET', uri, params);\n }\n\n getHistory(deviceId: string, type: string, from: number, to: number): Observable {\n const uri = environment.apiUri + 'stats';\n const params = new HttpParams()\n .set('deviceId', deviceId)\n .set('type', type)\n .set('from', from.toString())\n .set('to', to.toString());\n\n return super.send('GET', uri, params);\n }\n\n getStats(deviceId: string): Observable {\n const uri = environment.apiUri + 'stats/summary';\n const params = new HttpParams()\n .set('deviceId', deviceId);\n\n return super.send('GET', uri, params);\n }\n\n getStatsTrack(deviceId: string, from: number, to: number): Observable {\n const uri = environment.apiUri + 'stats/track';\n const params = new HttpParams()\n .set('deviceId', deviceId)\n .set('from', from.toString())\n .set('to', to.toString());\n\n return super.send('GET', uri, params);\n }\n\n getTracks(deviceId: string, from: number, to: number): Observable {\n const uri = environment.apiUri + 'track';\n const params = new HttpParams()\n .set('deviceId', deviceId)\n .set('from', from.toString())\n .set('to', to.toString());\n\n return super.send('GET', uri, params);\n }\n\n getCommand(deviceId: string): Observable {\n const uri = environment.apiUri + 'command';\n const params = new HttpParams()\n .set('deviceId', deviceId);\n return super.send('GET', uri, params);\n }\n\n sendCommand(id: string, deviceId: string, provider: string, cCode?: string): Observable {\n const uri = environment.apiUri + 'command';\n const body: object = {\n id: id,\n deviceId: deviceId,\n provider: provider\n };\n if (cCode) {\n body['CommandText'] = `ccode=${cCode}`;\n }\n return super.send('POST', uri, null, true, body);\n }\n\n getCommandGroups(deviceId: string): Observable {\n const uri = environment.apiUri + 'command/group';\n const params = new HttpParams()\n .set('deviceId', deviceId);\n return super.send('GET', uri, params);\n }\n\n createDevice(body: object): Observable> {\n const uri = environment.apiUri + 'device';\n return super.send('POST', uri, null, true, body);\n }\n\n updatePhone(deviceId: string, number: string, id: string) {\n const uri = environment.apiUri + `device/${deviceId}/phone`;\n const body = {\n number: number,\n id: id,\n usagetype: 'main',\n };\n return super.send('PUT', uri, null, true, body);\n }\n\n updatePassword(password: string, oldPassword: string, ProviderAccountId: string, isLocal: boolean, capchaId?:string, capchaCode?:string): Observable {\n const uri = environment.apiUri + 'provideraccount/password';\n const body = {\n password: password,\n ProviderAccountId: ProviderAccountId,\n isLocal: isLocal\n };\n if(oldPassword!=null){\n body['oldPassword'] = oldPassword;\n }\n if(capchaId && capchaCode){\n body['capchaId'] = capchaId;\n body['capchaCode'] = capchaCode;\n }\n return super.send('PUT', uri, null, true, body);\n }\n\n getDailyQuality( deviceId: string, provider: string, date: number): Observable {\n const uri = environment.apiUri + `device/${deviceId}/insurance?date=${date}&provider=${provider}`;\n \n return super.send('GET', uri);\n }\n getPeriodQuality( deviceId: string, provider: string, from: number, to: number, isDay: boolean): Observable {\n const uri = environment.apiUri + `device/${deviceId}/insuranceHistory?from=${from}&to=${to}&grouping=${ isDay ? \"day\" : \"month\"}&provider=${provider}`;\n \n return super.send('GET', uri);\n }\n \n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/shared/services/http/devices.service.ts","import { Injectable } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpRequest, HttpParams } from '@angular/common/http';\nimport { CachedDataService } from '@services/data/cached-data.service';\nimport { Observable } from 'rxjs/Observable';\nimport { DeviceState } from '@models/device-state';\nimport { BaseHttpService } from '@services/http/base-http.service';\nimport { Router } from '@angular/router';\nimport { AuthService } from '@services/http/auth.service';\nimport { Subject } from 'rxjs/Subject';\n\n\nimport { StatsItem, Track, StatsTrack, DeviceEvent, Geozone, Location } from '@models';\n\n/*Eenvironment */\nimport { environment } from '@environments';\n\n@Injectable()\nexport class GeozoneService extends BaseHttpService {\n \n\n\n constructor(protected httpClient: HttpClient,\n protected cachedDataService: CachedDataService,\n protected router: Router,\n protected authService: AuthService) {\n super(httpClient, cachedDataService, router, authService);\n }\n\n getGeozone(providerAccountId: string): Observable> {\n const uri = environment.apiUri + 'geozone';\n const params = new HttpParams()\n .set('providerAccountId', providerAccountId)\n\n return super.send('GET', uri, params);\n }\n\n updateGeozone(providerAccountId: string, name: string, id: string, points: Array, isActive: boolean, isSms: boolean): Observable {\n const uri = environment.apiUri + 'geozone';\n\n const body = {\n providerAccountId: providerAccountId,\n name: name,\n points: points,\n id: id,\n isActive: isActive,\n isSms: isSms\n };\n return super.send('PUT', uri, null, true, body);\n }\n\n addGeozone(providerAccountId: string, name: string, points: Array): Observable {\n const uri = environment.apiUri + 'geozone';\n\n const body = {\n providerAccountId: providerAccountId,\n name: name,\n points: points\n };\n return super.send('POST', uri, null, true, body);\n }\n deleteGeozone(providerAccountId: string, geozoneId: string): Observable> {\n const uri = environment.apiUri + 'geozone';\n const params = new HttpParams()\n .set('providerAccountId', providerAccountId)\n .set('geozoneId', geozoneId)\n\n return super.send('DELETE', uri, params);\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/shared/services/http/geozone.service.ts","export * from './auth.service';\nexport * from './base-http.service';\nexport * from './devices.service';\nexport * from './objects.service';\nexport * from './observable-objects.service';\nexport * from './user.service';\nexport * from './geozone.service';\nexport * from './share-device.service';\nexport * from './services.service';\n\n\n// WEBPACK FOOTER //\n// ./src/app/shared/services/http/index.ts","import { Injectable, EventEmitter } from '@angular/core';\nimport { HttpClient } from '@angular/common/http';\nimport { Observable } from 'rxjs/Observable';\nimport { Router } from '@angular/router';\n\n/*Services*/\nimport { AuthService } from '@services/http/auth.service';\nimport { CachedDataService } from '@services/data/cached-data.service';\nimport { BaseHttpService } from '@services/http/base-http.service';\n\n/*Environment */\nimport { environment } from '@environments';\n\n@Injectable()\n\nexport class ObjectsService extends BaseHttpService {\n public updateObjects: EventEmitter = new EventEmitter();\n\n constructor(protected httpClient: HttpClient,\n protected cachedDataService: CachedDataService,\n protected router: Router,\n protected authService: AuthService) {\n super(httpClient, cachedDataService, router, authService);\n }\n\n addObject(name: string, ObjectType: string, extra: string, userId: string): Observable {\n const uri = environment.apiUri + 'object';\n const body = {\n name: name,\n ObjectType: ObjectType,\n extra: extra\n };\n if(userId){\n body['userId'] = userId;\n }\n return super.send('POST', uri, null, true, body);\n }\n\n changeObject(name: string, ObjectType: string, extra: string, id: string): Observable {\n const uri = environment.apiUri + 'object';\n const body = {\n name: name,\n ObjectType: ObjectType,\n extra: extra,\n id: id\n };\n return super.send('PUT', uri, null, true, body);\n }\n\n deleteObject(id: string): Observable {\n const uri = environment.apiUri + `object/${id}`;\n return super.send('DELETE', uri);\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/shared/services/http/objects.service.ts","import { Injectable } from '@angular/core';\nimport { Observable } from 'rxjs/Observable';\nimport { HttpClient } from '@angular/common/http';\nimport { Router } from '@angular/router';\n\n/*Services */\nimport { CachedDataService } from '@services/data/cached-data.service';\nimport { BaseHttpService } from '@services/http/base-http.service';\nimport { AuthService } from '@services/http/auth.service';\n\n/*Models*/\nimport { ObjectSerachResponse } from '@models/responses/object-search-response';\nimport { ObservableObject } from '@models/observable-object';\n\n/*environments*/\nimport { environment } from '@environments';\n\n/*config*/\nimport { CONFIG } from '../../../config';\n\n\n@Injectable()\n\nexport class ObservableObjectsService extends BaseHttpService {\n\n constructor(protected httpClient: HttpClient,\n protected cachedDataService: CachedDataService,\n protected loginService: AuthService,\n protected router: Router) {\n super(httpClient, cachedDataService, router, loginService);\n }\n\n getObjectById(id: string): Observable {\n const uri = environment.apiUri + `object/${id}?extended=true`;\n return super.send('GET', uri);\n }\n\n getAll(): Observable {\n const uri = environment.apiUri + 'object?extended=true';\n return super.send('GET', uri);\n }\n\n\n getAllByUser(userId): Observable {\n const uri = environment.apiUri + `object/search?extended=true&userId=${userId}`;\n return super.send('GET', uri);\n }\n\n getObjectType(extra: string) {\n if (extra) {\n for (const type of CONFIG.objectTypes) {\n if (extra.indexOf(type) >= 0) {\n return type.toLowerCase();\n }\n }\n } else {\n return 'default';\n }\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/shared/services/http/observable-objects.service.ts","import { Injectable } from '@angular/core';\nimport { Router } from '@angular/router';\nimport { HttpClient, HttpParams } from '@angular/common/http';\nimport { Observable } from 'rxjs/Observable';\n\n/*Services*/\nimport { BaseHttpService } from '@services/http/base-http.service';\nimport { CachedDataService } from '@services/data/cached-data.service';\nimport { AuthService, } from '@services/http/auth.service';\n\n/*Environment */\nimport { environment } from '@environments';\n\n/*Models*/\nimport { Service } from '@models';\n\n\n\n@Injectable()\nexport class ServicesService extends BaseHttpService {\n\n constructor(protected httpClient: HttpClient,\n protected cachedDataService: CachedDataService,\n protected router: Router,\n protected authService: AuthService\n ) {\n super(httpClient, cachedDataService, router, authService);\n }\n getServices(deviceId: string): Observable> {\n const uri = environment.apiUri + 'simCardData/services';\n const params = new HttpParams()\n .set('deviceId', deviceId);\n\n return super.send('GET', uri, params);\n }\n\n \n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/shared/services/http/services.service.ts","import { Injectable } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpRequest, HttpParams } from '@angular/common/http';\n\nimport { ReplaySubject } from 'rxjs/ReplaySubject';\nimport { CachedDataService } from '@services/data/cached-data.service';\nimport { Observable } from 'rxjs/Observable';\nimport { DeviceState } from '@models/device-state';\nimport { BaseHttpService } from '@services/http/base-http.service';\nimport { Router } from '@angular/router';\nimport { AuthService } from '@services/http/auth.service';\n\nimport { ShareRequest } from \"@models\";\n\n\n/*Eenvironment */\nimport { environment } from '@environments';\n\n@Injectable()\nexport class ShareDeviceService extends BaseHttpService {\n\n constructor(protected httpClient: HttpClient,\n protected cachedDataService: CachedDataService,\n protected router: Router,\n protected authService: AuthService) {\n super(httpClient, cachedDataService, router, authService);\n }\n\n updateRequestsSubject: ReplaySubject = new ReplaySubject(1);\n updateRequestsObservable = this.updateRequestsSubject.asObservable();\n\n shareDevice(userName: string, deviceId: string, permissions: string): Observable {\n const body: object = {\n userName: userName,\n deviceId: deviceId,\n permissions: permissions\n };\n \n return super.send('POST', environment.apiUri +'deviceSharing/request', null, true, body);\n }\n getShareDevice(): Observable> { \n return super.send('GET', environment.apiUri +'deviceSharing/request', null, true, null);\n }\n confirmShareDevice(DeviceId: string, SlaveUserId: string,Status?:string, Permissions?:string,ObservableObjectId?:string): Observable> { \n\n let body = {\n DeviceId: DeviceId,\n SlaveUserId: SlaveUserId\n }\n if(Permissions!=undefined){\n body[\"Permissions\"] = Permissions;\n }\n if(ObservableObjectId!=undefined){\n body[\"ObservableObjectId\"] = ObservableObjectId;\n }\n if(Status!=undefined){\n body[\"Status\"] = Status;\n }\n return super.send('PUT', environment.apiUri +'deviceSharing/request', null, true, body);\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/shared/services/http/share-device.service.ts","import { Injectable } from '@angular/core';\nimport { HttpClient, HttpParams } from '@angular/common/http';\nimport { CachedDataService } from '@services/data/cached-data.service';\nimport { BaseHttpService } from '@services/http/base-http.service';\nimport { AuthService } from '@services/http/auth.service';\nimport { Observable } from 'rxjs/Observable';\nimport { environment } from '@environments';\nimport { Router } from '@angular/router';\n\n\n@Injectable()\nexport class UserService extends BaseHttpService {\n\n constructor(protected httpClient: HttpClient,\n protected cachedDataService: CachedDataService,\n protected router: Router,\n protected authService: AuthService\n ) {\n super(httpClient, cachedDataService, router, authService);\n }\n\n sendCode(phone: string): Observable {\n const uri = environment.apiUri + 'user/code';\n const params = new HttpParams();\n\n return super.send('POST', uri, params, true, { phone: phone });\n }\n\n ConfirmCode(phone: string, code: string): Observable {\n const uri = environment.apiUri + 'user/confirm';\n const params = new HttpParams();\n return super.send('PUT', uri, params, true, { phone: phone, code: code });\n }\n\n updateUserInfo(FullName: string, Email: string, Id: string, dateTimeOffset: number): Observable {\n const uri = environment.apiUri + 'user';\n const params = new HttpParams();\n return super.send('PUT', uri, params, true, { FullName: FullName, Email: Email, Id: Id, dateTimeOffset: dateTimeOffset });\n }\n\n delete(userId: string) : Observable {\n const uri = environment.apiUri + `user/${userId}?isHardDelete=true`;\n\n return super.send('DELETE', uri);\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/shared/services/http/user.service.ts","export * from './commands.service';\nexport * from './screen.service';\nexport * from './settings.service';\nexport * from './state.service';\nexport * from './tariff.services';\nexport * from './http';\nexport * from './data';\nexport * from './app.service';\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/shared/services/index.ts","\nimport { Injectable, EventEmitter, OnDestroy } from '@angular/core';\nimport { Subject } from 'rxjs/Subject';\nimport { ReplaySubject } from 'rxjs/ReplaySubject';\nimport 'rxjs/add/operator/takeUntil';\n\n/*Services */\nimport { CachedDataService } from '@services/data/cached-data.service';\n\n/*Models */\nimport { Track } from '@models/track';\n\n/*Plugins */\nimport { } from '@types/googlemaps';\nimport { Geozone, Location } from '@models';\n\n\n\n\n@Injectable()\nexport class ScreenService {\n map: google.maps.Map;\n markers: google.maps.Marker[] = [];\n tracksInfo = [];\n mapItems = [];\n currentMarker = {\n latitude: null,\n longitude: null\n };\n isStateHidden = true;\n private isMapInitialized: boolean;\n isShowLoader = true;\n circleRadius;\n drawingManager = new google.maps.drawing.DrawingManager();\n private geozone;\n\n public isDataLoadingSubject: ReplaySubject = new ReplaySubject(1);\n public isDataLoadingObservable = this.isDataLoadingSubject.asObservable();\n\n\n public triggerStateSubject: ReplaySubject = new ReplaySubject(1);\n public triggerStateObservable = this.triggerStateSubject.asObservable();\n\n onChangeGeozoneSubject:Subject> = new Subject>();\n onChangeGeozoneObservable = this.onChangeGeozoneSubject.asObservable()\n\n defaultCoordinate = {\n latitude: 55.752390,\n longitude: 37.621224,\n }\n constructor(private cachedDataService: CachedDataService) { }\n\n\n\n\n\n\n initMap(element) {\n if (this.isMapInitialized) {\n return;\n }\n\n const mapProp = {\n center: new google.maps.LatLng(55.752390, 37.621224),\n zoom: 5,\n mapTypeId: google.maps.MapTypeId.ROADMAP,\n disableDefaultUI: true,\n zoomControl: true,\n zoomControlOptions: {\n style: google.maps.ZoomControlStyle.SMALL,\n position: google.maps.ControlPosition.RIGHT_BOTTOM\n },\n mapTypeControl: false,\n mapTypeControlOptions: {\n style: google.maps.MapTypeControlStyle.DEFAULT,\n position: google.maps.ControlPosition.RIGHT_BOTTOM\n }\n };\n this.map = new google.maps.Map(element, mapProp);\n }\n\n setCenter(latitude?: number, longitude?: number, zoom?:number) {\n if(!zoom){\n zoom = 14;\n }\n if (!latitude || !longitude) {\n latitude = this.defaultCoordinate.latitude;\n longitude = this.defaultCoordinate.longitude;\n zoom = 5;\n }\n const coordinate = new google.maps.LatLng(latitude, longitude);\n this.map.panTo(coordinate);\n this.map.setZoom(zoom);\n }\n\n addMarker(latitude: number, longitude: number, content: string, precision) {\n this.currentMarker['latitude'] = latitude;\n this.currentMarker['longitude'] = longitude;\n const coordinate = new google.maps.LatLng(latitude, longitude);\n const marker = new google.maps.Marker({ position: coordinate, title: 'текущее местоположение' });\n const infowindow = new google.maps.InfoWindow({\n content: content\n });\n let click = false;\n marker.addListener('click', () => {\n infowindow.open(this.map, marker);\n click = true;\n });\n marker.addListener('mouseover', () => {\n if (!click) {\n infowindow.open(this.map, marker);\n }\n });\n marker.addListener('mouseout', function () {\n if (!click) {\n infowindow.close();\n }\n\n });\n\n google.maps.event.addListener(infowindow, 'closeclick', function () {\n click = false;\n });\n\n\n marker.setMap(this.map);\n this.markers.push(marker);\n\n if (precision) {\n this.hideRadius();\n this.addCircle(latitude, longitude, precision);\n } else {\n this.hideRadius();\n }\n\n }\n addCircle(latitude: number, longitude: number, precision: number) {\n const currentDevice = this.cachedDataService.getCurrentDevice();\n if (currentDevice.provider === 'magicsystems') {\n precision = precision / 10;\n }\n\n this.circleRadius = new google.maps.Circle({\n map: this.map,\n radius: precision,\n fillColor: '#FF0000',\n fillOpacity: 0.1,\n strokeColor: '#FF0000',\n strokeOpacity: 0.5,\n strokeWeight: 2,\n center: {\n lat: latitude,\n lng: longitude\n },\n });\n this.circleRadius.setMap(this.map);\n }\n\n hideRadius() {\n if (this.circleRadius && this.map) {\n this.circleRadius.setMap(null);\n this.circleRadius = null;\n }\n\n }\n removeMarker() {\n this.hideRadius();\n while (this.markers.length) {\n const marker = this.markers.pop();\n google.maps.event.clearInstanceListeners(marker);\n marker.setMap(null);\n }\n\n }\n\n setMarker(latitude: number, longitude: number, content: string, precision: number) {\n this.removeMarker();\n\n this.addMarker(latitude, longitude, content, precision);\n }\n\n showSingleTrack(track: Track) {\n\n this.cleanTracksData();\n this.mapFit(track);\n this.showTrack(track);\n\n this.showTrackBorders(track.startLatitude, track.startLongitude, track.finishLatitude, track.finishLongitude);\n }\n\n showTrackBorders(startLat, startLong, finishLat, finishLong) {\n /*show first and finish icon */\n const startImage = {\n url: './assets/images/start.svg',\n size: new google.maps.Size(50, 80),\n origin: new google.maps.Point(0, 0),\n anchor: new google.maps.Point(25, 70)\n };\n\n const finishImage = {\n url: './assets/images/finish.svg',\n size: new google.maps.Size(50, 80),\n origin: new google.maps.Point(0, 0),\n anchor: new google.maps.Point(25, 70)\n };\n\n const startMarker = new google.maps.Marker({\n position: { lat: startLat, lng: startLong },\n map: this.map,\n icon: startImage\n });\n\n this.mapItems.push(startMarker);\n\n const finishMarker = new google.maps.Marker({\n position: { lat: finishLat, lng: finishLong },\n map: this.map,\n icon: finishImage\n });\n\n this.mapItems.push(finishMarker);\n }\n\n cleanTracksData() {\n this.mapItems.forEach(element => {\n if (element.setMap) {\n element.setMap(null);\n }\n });\n\n this.mapItems = [];\n }\n\n showAllTracks(tracks: Track[]) {\n this.cleanTracksData();\n this.hideRadius();\n if (tracks.length) {\n\n this.mapFit(tracks);\n const that = this;\n\n setTimeout(() => {\n tracks.forEach(track => {\n that.showTrack(track);\n });\n\n }, 300);\n\n const firstTrack = tracks[0];\n const lastTrack = tracks[tracks.length - 1];\n\n this.showTrackBorders(firstTrack.startLatitude, firstTrack.startLongitude,\n lastTrack.finishLatitude, lastTrack.finishLongitude);\n }\n\n }\n\n\n mapFit(tracks) {\n let arrayTracks = [];\n let minLat;\n let maxLat;\n let minLng;\n let maxLng;\n\n if (!Array.isArray(tracks)) {\n arrayTracks.push(tracks);\n } else {\n arrayTracks = tracks;\n }\n\n arrayTracks.forEach(function (track) {\n track.items.forEach(function (point) {\n if (!minLat || minLat > point.latitude) {\n minLat = point.latitude;\n }\n if (!minLng || minLng > point.longitude) {\n minLng = point.longitude;\n }\n if (!maxLat || maxLat < point.latitude) {\n maxLat = point.latitude;\n }\n if (!maxLng || maxLng < point.longitude) {\n maxLng = point.longitude;\n }\n });\n });\n const k = 0.2;\n minLng -= (maxLng - minLng) * k;\n maxLng += (maxLng - minLng) * k;\n\n const pointStart = new google.maps.LatLng(minLat, minLng);\n const pointEnd = new google.maps.LatLng(maxLat, maxLng);\n const bounds = new google.maps.LatLngBounds(pointStart, pointEnd);\n this.map.fitBounds(bounds);\n this.map.panBy(-200, 0);\n }\n\n\n\n\n showTrack(track: Track) {\n this.removeMarker();\n const items = [];\n const arrowPath = [];\n\n track.items.forEach((point, index, points) => {\n arrowPath.push(new google.maps.LatLng(point.latitude, point.longitude));\n const nextPoint = points[index + 1];\n if (!nextPoint) {\n return;\n }\n\n const coordStart = new google.maps.LatLng(point.latitude, point.longitude);\n const coordFinish = new google.maps.LatLng(nextPoint.latitude, nextPoint.longitude);\n const path = [coordStart, coordFinish];\n let color1 = 'rgb(60, 223, 32)';\n let color2 = 'rgb(65, 132, 54)';\n if (point.speed) {\n if (point.speed >= 60) {\n color1 = 'rgb(253, 157, 0)';\n color2 = 'rgb(169, 105, 0)';\n }\n if (point.speed > 90) {\n color1 = 'rgb(252, 0, 0)';\n color2 = 'rgb(157, 11, 12)';\n }\n }\n const line1 = new google.maps.Polyline({\n path: path,\n geodesic: true,\n strokeColor: color1,\n strokeOpacity: 1,\n strokeWeight: 7,\n zIndex: -2 * nextPoint.timestamp\n });\n\n const line2 = new google.maps.Polyline({\n path: path,\n geodesic: true,\n strokeColor: color2,\n strokeOpacity: 1,\n strokeWeight: 9,\n zIndex: -999999999999999\n });\n\n items.push(line1);\n items.push(line2);\n\n let contentString = '
';\n contentString += '
Отрезок маршрута
';\n contentString += `
Время отрезка:
${this.getTime(point.timestamp)} -
${this.getTime(nextPoint.timestamp)}
`;\n contentString += `
Скорость: ${point.speed} км/ч
`;\n contentString += '
';\n\n const infoWindow = new google.maps.InfoWindow({\n content: contentString,\n position: coordStart\n });\n\n this.tracksInfo.push(infoWindow);\n\n const clickHandler = () => {\n this.tracksInfo.forEach(element => {\n element.close();\n });\n infoWindow.open(this.map);\n };\n\n line1.addListener('click', clickHandler);\n line2.addListener('click', clickHandler);\n });\n\n const arrowSymbol = {\n path: 'M -3,0 0,-5 3,0 -0.5,0 -0.5,6 0.5,6 0.5,0 0,0 0,-3 z',\n strokeOpacity: 1,\n strokeColor: 'white',\n strokeWeight: 2,\n scale: 1\n };\n\n const arrowLine = new google.maps.Polyline({\n icons: [{\n icon: arrowSymbol,\n repeat: '75px',\n offset: '50%'\n }],\n path: arrowPath,\n strokeOpacity: 0,\n clickable: false\n });\n\n items.push(arrowLine);\n\n items.forEach(mapItem => {\n this.mapItems.push(mapItem);\n mapItem.setMap(this.map);\n });\n }\n getTime(unix_timestamp) {\n // Create a new JavaScript Date object based on the timestamp\n // multiplied by 1000 so that the argument is in milliseconds, not seconds.\n const date = new Date(unix_timestamp * 1000);\n // Hours part from the timestamp\n const hours = date.getHours();\n // Minutes part from the timestamp\n const minutes = '0' + date.getMinutes();\n // Seconds part from the timestamp\n const seconds = '0' + date.getSeconds();\n const year = date.getFullYear();\n let month: any = date.getMonth() + 1;\n let day: any = date.getDate();\n\n if (day < 10) {\n day = '0' + day;\n }\n if (month < 10) {\n month = '0' + month;\n }\n\n // Will display time in 10:30:23 format\n const formattedTime = `${hours}:${minutes.substr(-2)}:${seconds.substr(-2)} ${day}.${month}.${year}`;\n\n\n return formattedTime;\n }\n\n public trackGetAddress(startLatitude, startLongitude, cb) {\n\n this.placeInfo({\n lat: startLatitude,\n lng: startLongitude,\n }, (place) => {\n if (place && place.formatted_address) {\n return cb(place.formatted_address.split(', Россия')[0]);\n }\n cb();\n });\n }\n\n placeInfo(params, cb) {\n\n const findPlace = this.cachedDataService.getPlaceInfo({ lat: params.lat, lng: params.lng });\n if (findPlace) {\n return cb(findPlace.place);\n }\n\n const location = new google.maps.LatLng(params.lat, params.lng);\n const geocoder = new google.maps.Geocoder();\n const that = this;\n geocoder.geocode({ 'location': location }, function (results, status) {\n if (typeof cb !== 'function') {\n return;\n }\n if (status === google.maps.GeocoderStatus.OK) {\n const place = results[0];\n that.cachedDataService.setPlaceInfo({ lat: params.lat, lng: params.lng, place: place });\n return cb(place);\n }\n cb();\n });\n }\n initGeozone(drawingControl: boolean){\n this.drawingManager.setOptions({\n drawingMode : google.maps.drawing.OverlayType.RECTANGLE,\n drawingControl : drawingControl,\n \n drawingControlOptions : {\n position : google.maps.ControlPosition.TOP_LEFT,\n drawingModes : [ google.maps.drawing.OverlayType.RECTANGLE ]\n },\n rectangleOptions : {\n strokeColor : '#23508c',\n strokeWeight : 3.5,\n fillColor : '#013c60',\n fillOpacity : 0.3,\n editable: true,\n draggable: true\n }\t\n });\n\n // Loading the drawing Tool in the Map.\n this.drawingManager.setMap(this.map);\n\n google.maps.event.addListener(this.drawingManager, 'overlaycomplete', (event)=> {\n \n if (event.type == google.maps.drawing.OverlayType.RECTANGLE) {\n\n let newShape = event.overlay;\n newShape.type = event.type;\n this.geozone = newShape;\n\n var ne = this.geozone.getBounds().getNorthEast();\n var sw = this.geozone.getBounds().getSouthWest();\n let points = [\n {\n latitude: sw.lat(),\n longitude: sw.lng()\n },\n {\n latitude: ne.lat(),\n longitude: ne.lng()\n }\n ]\n\n this.onChangeGeozoneSubject.next(points);\n\n\n this.drawingManager.setDrawingMode(null);\n this.drawingManager.setOptions({\n drawingControl : false,\n })\n }\n });\n }\n showNewGeozone(){\n \n this.initGeozone(true);\n this.clearGeozone();\n this.drawingManager.setOptions({\n drawingControl: true,\n drawingMode: google.maps.drawing.OverlayType.RECTANGLE\n });\n console.log(true)\n // let diff = 0.005;\n // let coordinate = this.defaultCoordinate;\n \n // if(this.currentMarker && this.currentMarker.latitude && this.currentMarker.longitude){\n // coordinate = this.currentMarker;\n // }\n // let points = [\n // {\n // latitude: coordinate.latitude-diff,\n // longitude: coordinate.longitude-diff\n // },\n // {\n // latitude: coordinate.latitude+diff,\n // longitude: coordinate.longitude+diff\n // }\n // ]\n // let bounds = new google.maps.LatLngBounds(\n // new google.maps.LatLng(points[0].latitude, points[0].longitude),\n // new google.maps.LatLng(points[1].latitude, points[1].longitude)\n // );\n // this.showRectangleGeozone(bounds, points);\n // this.onChangeGeozoneSubject.next(points);\n \n }\n\n showGeozone(points: Array){\n this.initGeozone(false)\n let bounds = new google.maps.LatLngBounds(\n new google.maps.LatLng(points[0].latitude, points[0].longitude),\n new google.maps.LatLng(points[1].latitude, points[1].longitude)\n );\n this.showRectangleGeozone(bounds, points); \n }\n\n clearGeozone(){\n if(this.geozone){\n this.geozone.setMap(null);\n }\n }\n clearEditableGeozone(){\n this.showNewGeozone();\n }\n showRectangleGeozone(bounds, points: Array){\n \n this.clearGeozone();\n\n this.setCenter(points[0].latitude, points[0].longitude)\n \n //Setting options for the Drawing Tool. In our case, enabling Polygon shape.\n this.geozone = new google.maps.Rectangle({\n strokeColor : '#23508c',\n strokeWeight : 3.5,\n fillColor : '#013c60',\n fillOpacity : 0.3,\n bounds: bounds,\n editable: true,\n draggable: true\n });\n \n this.geozone.setMap(this.map);\n this.drawingManager.setDrawingMode(null);\n\n this.geozone.addListener('bounds_changed', ()=>{\n let points = [\n {\n latitude: this.geozone.getBounds().getSouthWest().lat(),\n longitude: this.geozone.getBounds().getSouthWest().lng()\n },\n {\n latitude: this.geozone.getBounds().getNorthEast().lat(),\n longitude: this.geozone.getBounds().getNorthEast().lng()\n }\n ]\n this.onChangeGeozoneSubject.next(points);\n });\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/shared/services/screen.service.ts","import { Injectable } from '@angular/core';\nimport { Subject } from 'rxjs/Subject';\nimport 'rxjs/add/operator/takeUntil';\nimport { HttpClient, HttpHeaders, HttpRequest, HttpParams } from '@angular/common/http';\nimport { BaseHttpService } from '@services/http/base-http.service';\nimport { Router } from '@angular/router';\nimport { environment } from '@environments';\nimport { CachedDataService } from '@services/data/cached-data.service';\nimport { Observable } from 'rxjs/Observable';\nimport { AuthService } from '@services/http/auth.service';\nimport {Setting} from \"@models\";\n@Injectable()\nexport class SettingsService extends BaseHttpService {\n\n\tconstructor(protected httpClient: HttpClient,\n\t\tprotected cachedDataService: CachedDataService,\n protected router: Router,\n protected authService: AuthService\n\t\t) {\n\t\t\t super(httpClient, cachedDataService, router, authService);\n\t }\n\n openSettingsSubject:Subject = new Subject();\n openSettingsObservable = this.openSettingsSubject.asObservable()\n\n\tgetTimers(deviceId: string,provider: string): Observable {\n\t\tconst uri = environment.apiUri + 'setting/timer';\n\t\tconst params = new HttpParams()\n\t\t.set('deviceId', deviceId)\n\t\t.set('provider', provider)\n\n\t\treturn super.send('GET', uri, params);\n }\n\n\tsetTimers(deviceId: string,timers: string): Observable {\n\t\tconst uri = environment.apiUri + 'setting/timer';\n return super.send('PUT', uri, null,true,{deviceId:deviceId,timers:timers});\n\t}\n\n getSettings(deviceId: string,provider: string): Observable {\n\t\tconst uri = environment.apiUri + 'setting';\n\t\tconst params = new HttpParams()\n\t\t.set('deviceId', deviceId)\n\t\t.set('provider', provider)\n\t\t.set('generation', \"v2\")\n\n\t\treturn super.send('GET', uri, params);\n\t}\n\tsaveSettings(deviceId: string,settings): Observable {\n\t\tconst uri = environment.apiUri + 'setting';\n\t\treturn super.send('PUT', uri, null,true,{deviceId:deviceId,settings:settings});\n }\n getSettingsTemplate(deviceId: string): Observable {\n\t\tconst uri = environment.apiUri + 'setting/template';\n\t\tconst params = new HttpParams()\n\t\t.set('deviceId', deviceId)\n\n\t\treturn super.send('GET', uri, params);\n\t}\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/shared/services/settings.service.ts","import { Injectable, EventEmitter, OnInit, OnDestroy } from '@angular/core';\nimport { Subject } from 'rxjs/Subject';\nimport { ReplaySubject } from 'rxjs/ReplaySubject';\nimport 'rxjs/add/operator/takeUntil';\nimport { Router } from '@angular/router';\n/*Services*/\nimport { DevicesService } from '@services/http/devices.service';\nimport { ScreenService } from '@services/screen.service';\nimport { MappingService } from '@services/data/mapping.service';\nimport { CachedDataService } from '@services/data/cached-data.service';\n\n/*Models */\n\nimport { Device, ObservableObject, DeviceState, CaptchaItem } from '@models';\n\n/*Config */\nimport { CONFIG } from './../../config';\n\n/*Plugins */\nimport * as moment from 'moment';\ndeclare var swal: any;\n\n@Injectable()\nexport class StateService implements OnDestroy {\n isSyncState = false;\n currentDevice: Device;\n currentObservableObject: ObservableObject;\n state: DeviceState;\n intervalUpdateAfterSendCommand = CONFIG.intervalUpdateAfterSendCommand;\n currentTryGetState = 0;\n maxTryGetState = 12;\n isStateChanged = false;\n isTryGetUpdateState = false;\n autoUpdatePosition = true;\n\n observableObjectSubject: ReplaySubject = new ReplaySubject(1);\n observableObjectObservable = this.observableObjectSubject.asObservable();\n\n currentDeviceSubject: ReplaySubject = new ReplaySubject(1);\n currentDeviceObservable = this.currentDeviceSubject.asObservable();\n\n stateSubject: ReplaySubject = new ReplaySubject(1);\n stateObservable = this.stateSubject.asObservable();\n\n isSyncStateSubject: Subject = new Subject();\n isSyncStateObservable = this.isSyncStateSubject.asObservable();\n\n autoUpdatePositionSubject: Subject = new Subject();\n autoUpdatePositionObservable = this.autoUpdatePositionSubject.asObservable();\n\n updateDevicePhoneSubject: Subject = new Subject();\n updateDevicePhoneObservable = this.updateDevicePhoneSubject.asObservable();\n\n needSendCaptchaSubject: Subject = new Subject();\n needSendCaptchaObservable = this.needSendCaptchaSubject.asObservable();\n\n toggleGraphStatsSubject: Subject = new Subject();\n toggleGraphStatsObservable = this.toggleGraphStatsSubject.asObservable();\n\n initAgreementsModalSubject: Subject = new Subject();\n initAgreementsModalObservable = this.initAgreementsModalSubject.asObservable();\n\n removeAgreementsSubject: Subject = new Subject();\n removeAgreementsObservable = this.removeAgreementsSubject.asObservable();\n\n showAgreementsModalSubject: Subject = new Subject();\n showAgreementsModalObservable = this.showAgreementsModalSubject.asObservable();\n\n\n agreementsCompletedSubject: Subject = new Subject();\n agreementsCompletedObservable = this.agreementsCompletedSubject.asObservable();\n\n addCcodeEvent: EventEmitter = new EventEmitter();\n\n public sendCommandEvent = new EventEmitter();\n private intervalTryGetState = null;\n currentDay = null;\n private ngUnsubscribe: Subject = new Subject();\n\n constructor(\n private cachedDataService: CachedDataService,\n private devicesService: DevicesService,\n private screenService: ScreenService,\n private mappingService: MappingService,\n private router: Router,\n ) {\n this.currentDeviceObservable\n .takeUntil(this.ngUnsubscribe)\n .subscribe(device => {\n this.currentDevice = device;\n });\n\n this.autoUpdatePositionObservable\n .takeUntil(this.ngUnsubscribe)\n .subscribe(value => {\n\n this.autoUpdatePosition = value;\n\n });\n\n this.sendCommandEvent.subscribe(() => {\n\n if (this.intervalTryGetState && this.intervalTryGetState != null) {\n clearInterval(this.intervalTryGetState);\n }\n\n\n let truCount = this.maxTryGetState;\n const that = this;\n this.intervalTryGetState = setInterval(function () {\n if (truCount <= 0 || that.isStateChanged) {\n clearInterval(that.intervalTryGetState);\n that.isTryGetUpdateState = false;\n that.syncState(false);\n that.isStateChanged = false;\n return false;\n }\n truCount--;\n that.isTryGetUpdateState = true;\n that.syncState(true);\n }, this.intervalUpdateAfterSendCommand);\n });\n\n\n this.currentDeviceSubject\n .takeUntil(this.ngUnsubscribe)\n .subscribe(device => {\n if (this.intervalTryGetState && this.intervalTryGetState != null) {\n clearInterval(this.intervalTryGetState);\n this.isTryGetUpdateState = false;\n this.isStateChanged = false;\n }\n });\n\n this.currentDay = moment();\n // if (this.cachedDataService.getCurrentUser()) {\n // this.currentDay;\n // }\n\n }\n\n loadState(deviceId?: string, captchaBody?: CaptchaItem) {\n this.devicesService.getState(deviceId ? deviceId : this.currentDevice.id, captchaBody)\n .subscribe(response => {\n response.coordinate\n if(response.coordinate){\n if(response.coordinate.latitude){\n response.coordinate.latitude = parseFloat(response.coordinate.latitude.toString().replace(\",\",\".\"))\n }\n if(response.coordinate.longitude){\n response.coordinate.longitude = parseFloat(response.coordinate.longitude.toString().replace(\",\",\".\"))\n }\n }\n if (this.isTryGetUpdateState) {\n this.syncState(false);\n let isEquals = true;\n for (const key in this.state.mainStates) {\n if (this.state.mainStates[key] !== response.mainStates[key]) {\n isEquals = false;\n }\n }\n if (!isEquals) {\n this.isStateChanged = true;\n\n this.stateSubject.next(response);\n /*todo*/\n this.state = response;\n }\n return false;\n }\n this.stateSubject.next(response);\n /*todo*/\n this.state = response;\n\n if (this.state.coordinate != null && this.state.coordinate.latitude && this.state.coordinate.longitude) {\n if (this.autoUpdatePosition) {\n if (this.screenService.currentMarker.latitude && this.screenService.currentMarker.longitude) {\n // If the marker is already displayed, check need to update\n if (\n this.screenService.currentMarker.latitude !== this.state.coordinate.latitude ||\n this.screenService.currentMarker.longitude !== this.state.coordinate.longitude) {\n this.setMarker();\n }\n } else {\n this.setMarker();\n }\n } else {\n this.screenService.currentMarker.latitude = null;\n this.screenService.currentMarker.longitude = null;\n }\n } else {\n this.screenService.removeMarker();\n this.screenService.setCenter();\n }\n\n this.syncState(false);\n\n }, error => {\n console.log(error);\n if (error.error) {\n error = error.error;\n }\n\n\n if (error.capchaId && error.capchaUri) {\n this.needSendCaptchaSubject.next(error);\n // this.errorMessage = error.message;\n } else if (error.errorMessage) {\n if(this.cachedDataService.needUpdatePassword){\n //if showing need update password\n return false;\n }\n if(error && error.errorMessage){\n swal({\n type: 'error',\n title: 'Ошибка',\n text: error.errorMessage,\n showConfirmButton: false,\n timer: 5000,\n });\n \n } \n setTimeout(() => {\n this.router.navigate(['/personal', this.cachedDataService.getCurrentUser().id]);\n }, 5000);\n \n }\n });\n }\n setMarker() {\n this.mappingService.getAddress(this.state.coordinate.latitude, this.state.coordinate.longitude, (result) => {\n if (result && result[0] && result[0].formatted_address && result[0] && result[0].formatted_address) {\n let address = result[0].formatted_address;\n\n\n if (address.slice(address.length - 6, address.length).match(/^-{0,1}\\d+$/)) {\n /*remove index from address */\n address = address.substring(0, address.length - 8);\n }\n\n const content = `
${this.currentObservableObject.name}
Адрес: ${address}
`;\n // tslint:disable-next-line:max-line-length\n this.screenService.setMarker(this.state.coordinate.latitude, this.state.coordinate.longitude, content, this.state.coordinate.precision);\n // if(this.state.coordinate.precision){\n // \tthis.screenService.addCircle(this.state.coordinate.latitude, this.state.coordinate.longitude);\n // }else{\n // \tthis.screenService.hideRadius()\n // }\n }\n });\n this.screenService.setCenter(this.state.coordinate.latitude, this.state.coordinate.longitude);\n }\n\n setCurrentDevice(device: Device) {\n this.currentDevice = device;\n this.currentDeviceSubject.next(device);\n }\n setCurrentObject(object: ObservableObject) {\n this.currentObservableObject = object;\n this.cachedDataService.setCurrentObject(JSON.stringify(object));\n this.observableObjectSubject.next(object);\n }\n\n getLastStateTime() {\n if (this.state) {\n const value = this.state.additionalStates.time.value;\n const currentDate = this.currentDay.format('DD MM YYYY');\n const date = moment.unix(this.state.additionalStates.time.value);\n if (currentDate === date.format('DD MM YYYY')) {\n return moment.unix(value).format('HH:mm:ss');\n } else {\n return moment.unix(value).format('HH:mm:ss DD.MM.YY');\n }\n }\n return '';\n }\n syncState(value) {\n this.isSyncState = value;\n this.isSyncStateSubject.next(value);\n if (value) {\n this.loadState();\n }\n }\n\n\n\n\n ngOnDestroy() {\n this.ngUnsubscribe.next();\n this.ngUnsubscribe.complete();\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/shared/services/state.service.ts","import { Injectable } from '@angular/core';\nimport { Router } from '@angular/router';\nimport { HttpClient, HttpParams } from '@angular/common/http';\nimport { Observable } from 'rxjs/Observable';\n\n/*Services*/\nimport { BaseHttpService } from '@services/http/base-http.service';\nimport { CachedDataService } from '@services/data/cached-data.service';\nimport { AuthService, } from '@services/http/auth.service';\nimport { AppService } from '@services/app.service';\n\n/*Environment */\nimport { environment } from '@environments';\n\n\n/*Models */\nimport { Tariff, GetTarifsResponse, GetOrdersResponse, GetAgreementsResponse } from '@models';\n\n/*Plugins */\nimport * as moment from 'moment';\n\n@Injectable()\nexport class TariffService extends BaseHttpService {\n\n constructor(protected httpClient: HttpClient,\n protected cachedDataService: CachedDataService,\n protected router: Router,\n protected authService: AuthService,\n private appService: AppService\n ) {\n super(httpClient, cachedDataService, router, authService);\n }\n getInfoSim(userId: string): Observable {\n const uri = environment.apiUri + 'simCardData/search';\n const params = new HttpParams()\n .set('userId', userId);\n return super.send('GET', uri, params);\n }\n getTariffUrlPayment(tariffList: Array): Observable {\n let body:Array = []\n tariffList.map(tariff=>{\n let startServiceDate;\n let endServiceDate;\n \n const userDateTimeOffset = this.appService.userTimezoneOffset();\n const currentDateInix = moment().startOf('day').add(userDateTimeOffset, 'hours').unix();\n \n if (currentDateInix > tariff.finishDate) {\n /*Если просроченный тариф */\n startServiceDate = currentDateInix;\n endServiceDate = moment.unix(currentDateInix).add(1, 'year').unix();\n } else {\n /*Если тариф еще действует*/\n startServiceDate = tariff.finishDate;\n endServiceDate = moment.unix(tariff.finishDate).add(1, 'year').unix();\n }\n\n body.push({\n 'number': tariff.number,\n 'serviceType': 'prolongation',\n 'StartServiceDate': startServiceDate,\n 'EndServiceDate': endServiceDate\n });\n \n })\n \n const uri = environment.apiUri + 'simCardData/order';\n \n return super.send('POST', uri, null, true, body);\n }\n seriveceOrder(number: string, serviceType: string, startServiceDate: number, endServiceDate: number): Observable {\n let body:Array = []\n body.push({\n 'number': number,\n 'serviceType': serviceType,\n 'StartServiceDate': startServiceDate,\n 'EndServiceDate': endServiceDate\n });\n console.log(body)\n \n const uri = environment.apiUri + 'simCardData/order';\n \n return super.send('POST', uri, null, true, body);\n }\n\n getSerivecesOrders(serviceType: string, userId: string): Observable {\n\n\n const uri = environment.apiUri +'simCardData/order/search';\n const params = new HttpParams()\n .set('serviceType', serviceType)\n .set('userId', userId);\n \n\n return super.send('GET', uri, params);\n }\n\n getTariff(tariffs, device, userId?) {\n let phoneDevice = device.phones.filter(phone => phone.usageType == \"main\")[0];\n if (phoneDevice) {\n phoneDevice = phoneDevice.number;\n } else {\n return false;\n }\n\n const tariffDevice = tariffs.filter(tariff => tariff.number === phoneDevice)[0];\n if (tariffDevice) {\n if(tariffDevice.finishDate){\n tariffDevice['dateFormat'] = moment.unix(tariffDevice.finishDate).format('DD.MM.YY');\n }else{\n tariffDevice['dateFormat'] = \"-\"\n }\n \n return tariffDevice;\n } else {\n return false;\n }\n }\n getAgreements(deviceId: string): Observable {\n const uri = environment.apiUri +'tariffs/agreements';\n const params = new HttpParams()\n .set('deviceId', deviceId);\n\n return super.send('GET', uri, params);\n } \n sendAgreements(agreementId: string,passportScan,passportSecondScan, registrationScan, registrationSecondScan ): Observable {\n const uri = environment.apiUri +`tariffs/agreements/${agreementId}/complete`;\n var fd = new FormData();\n fd.append('passportScan', passportScan);\n fd.append('passportSecondScan', passportSecondScan);\n fd.append('registrationScan', registrationScan);\n fd.append('registrationSecondScan', registrationSecondScan);\n fd.append('agreementId', agreementId);\n return super.send('POST', uri, null, true, fd);\n} \n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/shared/services/tariff.services.ts","export const regexValidators = {\n phone: ['+', '7', ' ', '(', /[1-9]/, /\\d/, /\\d/, ')', ' ', /\\d/, /\\d/, /\\d/, '-', /\\d/, /\\d/, '-', /\\d/, /\\d/],\n email: /^(([^<>()\\[\\]\\\\.,;:\\s@\"]+(\\.[^<>()\\[\\]\\\\.,;:\\s@\"]+)*)|(\".+\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$/\n};\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/validator.ts","module.exports = \"
\\n \\n
{{errorMessage}}
\\n \\n \\n \\n
\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/view/auth/confirmUser/confirmUser.component.html\n// module id = ./src/app/view/auth/confirmUser/confirmUser.component.html\n// module chunks = main","import { Component, OnInit, Output, EventEmitter } from '@angular/core';\nimport { AuthService } from '@services/http/auth.service';\nimport { UserService } from '@services/http/user.service';\nimport { ScreenService } from '@services/screen.service';\nimport { FormGroup, FormBuilder, Validators } from '@angular/forms';\nimport { CachedDataService } from '@services/data/cached-data.service';\nimport { Router } from '@angular/router';\n\n@Component({\n selector: 'confirm-sms',\n templateUrl: './confirmUser.component.html'\n})\n\nexport class ConfirmUserComponent implements OnInit {\n confirmForm: FormGroup;\n errorMessage = '';\n @Output() confirmCodeEvent: EventEmitter = new EventEmitter();\n constructor(\n private userService: UserService,\n private formBuilder: FormBuilder,\n private cachedDataService: CachedDataService,\n private authService: AuthService,\n private screenService: ScreenService,\n private router: Router\n ) { }\n\n ngOnInit() {\n this.initForm();\n }\n ConfirmCode() {\n if (this.confirmForm.invalid) {\n const controls = this.confirmForm.controls;\n Object.keys(controls)\n .forEach(controlName => controls[controlName].markAsTouched());\n return;\n }\n this.errorMessage = '';\n this.userService.ConfirmCode(this.cachedDataService.getCurrentUser().userName, this.confirmForm.value.code)\n .subscribe(\n response => {\n this.cachedDataService.setToken(response.token);\n this.cachedDataService.setCurrentUser(response.user);\n this.screenService.isShowLoader = true;\n this.router.navigate(['/personal', response.user.id]);\n },\n error => {\n this.confirmCodeEvent.emit();\n if (error.error.errorMessage && error.error.errorMessage.length) {\n this.errorMessage = error.error.errorMessage;\n } else {\n const errors = error.error.modelState;\n for (error in errors) {\n if (errors[error].field && this.confirmForm.controls[errors[error].field.toLowerCase()]) {\n this.confirmForm.controls[errors[error].field.toLowerCase()].setErrors({ 'error': errors[error].errors });\n } else {\n this.errorMessage = 'Ошибка, попробуйте позже.';\n }\n\n }\n }\n });\n }\n keyUpField() {\n this.errorMessage = '';\n }\n initForm() {\n this.confirmForm = this.formBuilder.group({\n code: ['', [Validators.required]]\n });\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/view/auth/confirmUser/confirmUser.component.ts","module.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// WEBPACK FOOTER\n// ./src/app/view/auth/deleteUser/deleteUser.component.html\n// module id = ./src/app/view/auth/deleteUser/deleteUser.component.html\n// module chunks = main","import {Component, OnInit, Output, EventEmitter, ViewChild} from '@angular/core';\nimport {AuthService} from '@services/http/auth.service';\nimport {UserService} from '@services/http/user.service';\nimport {ScreenService} from '@services/screen.service';\nimport {FormGroup, FormBuilder, Validators} from '@angular/forms';\nimport {CachedDataService} from '@services/data/cached-data.service';\nimport {Router} from '@angular/router';\nimport {BsModalComponent} from \"ng2-bs3-modal\";\nimport {ConfirmDeletingModalComponent} from \"../../modal\";\nimport {User} from \"@models/user\";\n\n@Component({\n selector: 'delete-account',\n templateUrl: './deleteUser.component.html'\n})\n\nexport class DeleteUserComponent implements OnInit {\n @ViewChild('confirmDeletingModal') confirmDeletingModal: ConfirmDeletingModalComponent;\n\n private currentUser: User\n public isError: boolean;\n\n constructor(\n private screenService: ScreenService,\n private usersService: UserService,\n private cachedDataService: CachedDataService,\n private router: Router\n ) {\n }\n\n ngOnInit() {\n this.isError = false;\n this.currentUser = this.cachedDataService.getCurrentUser();\n this.screenService.isShowLoader = false;\n this.confirmDeletingModal.dialog.onClose.subscribe(result => {\n if (result) {\n this.screenService.isShowLoader = true;\n this.usersService.delete(this.currentUser.id).subscribe(result => {\n this.screenService.isShowLoader = false;\n this.cachedDataService.clearCache();\n this.router.navigate(['/signin']);\n }, error => {\n this.screenService.isShowLoader = false;\n this.isError = true;\n });\n }\n });\n }\n\n cancel() {\n this.router.navigate(['/personal', this.currentUser.id]);\n }\n\n delete() {\n this.confirmDeletingModal.dialog.open();\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/view/auth/deleteUser/deleteUser.component.ts","module.exports = \"
\\n\\t\\n\\n
\\n\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/view/auth/nav-app/navapp.component.html\n// module id = ./src/app/view/auth/nav-app/navapp.component.html\n// module chunks = main","import { Component } from '@angular/core';\n\n@Component({\n selector:'nav-app',\n templateUrl:'./navapp.component.html'\n})\nexport class NavAppComponent {\n \n}\n\n\n// WEBPACK FOOTER //\n// ./src/app/view/auth/nav-app/navapp.component.ts","module.exports = \"\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/view/auth/restore/restore.component.css\n// module id = ./src/app/view/auth/restore/restore.component.css\n// module chunks = main","module.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
{{errorMessage}}
\\n
Код\\n отправлен
\\n
Код принят, пароль\\n изменен.
\\n \\n\\n\\n\\n
\\n
\\n
\\n \\n
Это\\n поле обязательно для заполнения
\\n
\\n {{confirmForm.get('code').errors['error']}}
\\n
\\n
{{errorMessage}}
\\n \\n
\\n\\n

Вернуться к авторизации

\\n
\\n
\\n\\n
\\n\\n
\\n
\\n
\\n\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/view/auth/restore/restore.component.html\n// module id = ./src/app/view/auth/restore/restore.component.html\n// module chunks = main","import { Component, OnInit } from '@angular/core';\nimport { Router, ActivatedRoute, ParamMap } from '@angular/router';\nimport { FormGroup, FormBuilder, Validators } from '@angular/forms';\n\n/*Services */\nimport { ScreenService } from '@services/screen.service';\nimport { AuthService } from '@services/http/auth.service';\nimport { CachedDataService } from '@services/data/cached-data.service';\n\n@Component({\n selector: 'app-restore',\n templateUrl: './restore.component.html',\n styleUrls: ['./restore.component.css']\n})\nexport class RestoreComponent implements OnInit {\n showConfirmCode = false;\n restoreForm: FormGroup;\n confirmForm: FormGroup;\n ButtonText = 'Восстановить';\n errorMessage = '';\n successCode = false;\n\n errorConfirmPassword = {\n status: true,\n message: ''\n };\n errorPassword = null;\n passwordHasNumAndChar = true;\n constructor(\n private formBuilder: FormBuilder,\n private authService: AuthService,\n private router: Router,\n private screenService: ScreenService,\n private cachedDataService: CachedDataService) { }\n\n ngOnInit() {\n this.initForm();\n const tempUsername = this.cachedDataService.getTempUsername();\n if (tempUsername) {\n this.restoreForm.get('login').setValue(tempUsername);\n }\n\n this.screenService.isShowLoader = false;\n }\n\n initForm() {\n this.restoreForm = this.formBuilder.group({\n login: [null, [Validators.required]],\n NewPassword: [null, [Validators.required, Validators.minLength(6)]],\n confirmPassword: [null, [Validators.required]],\n channel: ['sms']\n });\n this.confirmForm = this.formBuilder.group({\n code: ['', [Validators.required]],\n });\n }\n checkPassword() {\n const passLength = this.restoreForm.value.NewPassword.length;\n const password = this.restoreForm.value.NewPassword;\n if (passLength > 0) {\n if (this.restoreForm.get('NewPassword').errors &&\n this.restoreForm.get('NewPassword').errors.minlength &&\n this.restoreForm.get('NewPassword').errors.minlength.actualLength < this.restoreForm.get('NewPassword').errors.minlength.requiredLength) {\n this.errorPassword = `Пароль слишком короткий, ${passLength} символов`;\n } else {\n this.errorPassword = null;\n }\n\n } else {\n this.errorPassword = null;\n }\n\n if (/[a-zA-Z]/gi.test(password) && /[0-9]/gi.test(password)) {\n /*должен содержать хоть 1 символ и 1 цифру */\n this.passwordHasNumAndChar = true;\n } else {\n this.passwordHasNumAndChar = false;\n }\n\n if (passLength > 0 && this.restoreForm.value.confirmPassword && this.restoreForm.value.confirmPassword.length > 0) {\n if (this.restoreForm.value.NewPassword !== this.restoreForm.value.confirmPassword) {\n this.errorConfirmPassword.status = false;\n this.errorConfirmPassword.message = 'Подтверждение не совпадает с паролем';\n } else {\n this.errorConfirmPassword.status = true;\n this.errorConfirmPassword.message = 'Подтверждение совпадает с паролем';\n }\n } else {\n this.errorConfirmPassword.message = '';\n }\n }\n\n onChangeUsername(value) {\n this.restoreForm.controls['login'].setValue(value);\n }\n\n restore() {\n if (this.restoreForm.invalid) {\n const controls = this.restoreForm.controls;\n Object.keys(controls)\n .forEach(controlName => controls[controlName].markAsTouched());\n return;\n }\n if (!this.errorConfirmPassword.status) {\n return false;\n }\n\n if (!this.passwordHasNumAndChar) {\n return false;\n }\n\n this.ButtonText = 'Отправка..';\n this.authService.passwordRecovery(\n this.restoreForm.value.login.replace(/\\D/g, ''),\n this.restoreForm.value.NewPassword,\n this.restoreForm.value.channel\n )\n .then(() => {\n this.ButtonText = 'Подтвердить';\n this.errorMessage = '';\n this.showConfirmCode = true;\n })\n .catch((error: any) => {\n this.ButtonText = 'Восстановить';\n this.errorMessage = '';\n if (error.error.errorMessage.length) {\n this.errorMessage = error.error.errorMessage;\n } else {\n const errors = error.error.modelState;\n for (error in errors) {\n this.restoreForm.controls[errors[error].field].setErrors({ 'error': errors[error].errors });\n }\n }\n });\n }\n confirmPassword() {\n\n if (this.confirmForm.invalid) {\n const controls = this.restoreForm.controls;\n Object.keys(controls)\n .forEach(controlName => controls[controlName].markAsTouched());\n return;\n }\n this.ButtonText = 'Отправка..';\n this.authService.passwordConfirm(\n this.restoreForm.value.login.replace(/\\D/g, ''),\n this.confirmForm.value.code\n )\n .then(() => {\n this.ButtonText = 'Подтвердить';\n this.successCode = true;\n this.cachedDataService.clearTempUsername();\n setTimeout(() => {\n this.router.navigate(['/signin']);\n }, 1500);\n })\n .catch((error: any) => {\n this.ButtonText = 'Подтвердить';\n if (error.error.errorMessage.length) {\n this.errorMessage = error.error.errorMessage;\n } else {\n const errors = error.error.modelState;\n for (error in errors) {\n this.restoreForm.controls[errors[error].field].setErrors({ 'error': errors[error].errors });\n }\n }\n });\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/view/auth/restore/restore.component.ts","module.exports = \"input.ng-touched.ng-invalid{\\n border-color: red;\\n}\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/view/auth/signin/signin.component.css\n// module id = ./src/app/view/auth/signin/signin.component.css\n// module chunks = main","module.exports = \"\\n\\n
\\n
\\n
\\n
\\n

охранно-информационный сервис

\\n
\\n
\\n
\\n Вход\\n
\\n \\n \\n {{signInForm.get('username').errors['error']}}\\n
\\n
\\n \\n {{signInForm.get('password').errors['error']}}\\n
\\n
{{errorMessage}}
\\n\\n \\n\\n \\n\\n
\\n Регистрация\\n \\n
\\n

Забыли пароль?

\\n
\\n
\\n

Выполняя вход вы соглашаетесь\\n с условиями Пользовательского соглашения и даете своё согласие Угона.нет на обработку своей персональной информации на условиях, определенных Политикой конфиденциальности.\\n \\n

\\n \\n\\n
\\n \\n \\n\\n
\\n \\n
\\n
\\n
\\n\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/view/auth/signin/signin.component.html\n// module id = ./src/app/view/auth/signin/signin.component.html\n// module chunks = main","import { Component, OnInit } from '@angular/core';\nimport { FormGroup, FormBuilder, Validators } from '@angular/forms';\nimport { CachedDataService } from '@services/data/cached-data.service';\nimport { AuthService } from '@services/http/auth.service';\nimport { ScreenService } from '@services/screen.service';\nimport { Router, ActivatedRoute, ParamMap } from '@angular/router';\nimport { CONFIG } from '../../../config';\n\n@Component({\n selector: 'app-signin',\n templateUrl: './signin.component.html',\n styleUrls: ['./signin.component.css']\n})\nexport class SignInComponent implements OnInit {\n signInForm: FormGroup;\n\n\n errorMessage = '';\n trySend = false;\n btnText = {\n text: 'Войти',\n default: 'Войти',\n loadText: 'Авторизация..'\n };\n btnTextDemo = {\n text: 'Демо-вход',\n default: 'Демо-вход',\n loadText: 'Авторизация..'\n };\n\n returnUrl: string;\n constructor(\n private route: ActivatedRoute,\n private formBuilder: FormBuilder,\n private cachedDataService: CachedDataService,\n private authService: AuthService,\n private screenService: ScreenService,\n private router: Router) { }\n\n ngOnInit() {\n this.screenService.isShowLoader = false;\n\n this.returnUrl = this.route.snapshot.queryParams['returnUrl'];\n\n console.log('init ' + this.returnUrl);\n this.initForm();\n }\n\n initForm() {\n this.signInForm = this.formBuilder.group({\n username: [null, [Validators.required]],\n password: [null, [Validators.required]],\n remember: [false],\n });\n }\n\n onKeyUpField(event: any) {\n if (this.signInForm.get(event.target.name).touched && this.signInForm.get(event.target.name).errors) {\n this.signInForm.controls[event.target.name].setErrors({ 'error': null });\n }\n }\n onChangeUsername(value) {\n this.signInForm.controls['username'].setValue(value);\n this.cachedDataService.clearTempUsername();\n }\n\n demoSignIn() {\n this.signIn(CONFIG.demoUsername, CONFIG.demoPassword);\n }\n\n signIn(username?, password?) {\n if (this.trySend) {\n return false;\n }\n if (!username && !password) {\n /*if not demo signin */\n username = this.signInForm.value.username.replace(/\\D/g, '');\n password = this.signInForm.value.password;\n if (this.signInForm.invalid) {\n this.errorMessage = 'Заполните обязательные поля.';\n return;\n }\n this.btnText.text = this.btnText.loadText;\n } else {\n this.btnTextDemo.text = this.btnTextDemo.loadText;\n }\n this.trySend = true;\n\n this.cachedDataService.setTempUsername(username);\n\n this.authService.signIn(username, password)\n .then((response) => {\n this.cachedDataService.clearTempUsername();\n this.trySend = false;\n this.cachedDataService.setCredentials({ 'username': username, 'password': password });\n this.cachedDataService.setToken(response.token);\n this.cachedDataService.setCurrentUser(response.user);\n this.cachedDataService.setExpiredDate(this.signInForm.value.remember);\n\n this.screenService.isShowLoader = true;\n\n if(this.returnUrl) {\n console.log('navigate to ' + this.returnUrl);\n this.router.navigateByUrl(this.returnUrl);\n }\n else {\n this.router.navigate(['/personal', response.user.id]);\n }\n\n })\n .catch((error: any) => {\n this.trySend = false;\n this.btnText.text = this.btnText.default;\n this.btnTextDemo.text = this.btnTextDemo.default;\n if (error.error.errorMessage.length) {\n this.errorMessage = error.error.errorMessage;\n } else {\n const errors = error.error.modelState;\n for (error in errors) {\n this.signInForm.controls[errors[error].field.toLowerCase()].setErrors({ 'error': errors[error].errors });\n }\n }\n });\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/view/auth/signin/signin.component.ts","module.exports = \"\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/view/auth/signup/signup.component.css\n// module id = ./src/app/view/auth/signup/signup.component.css\n// module chunks = main","module.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 {{errorPassword}}\\n
\\n\\n \\n\\n \\n\\n \\n
\\n\\n
\\n\\n \\n \\n Это поле обязательно для заполнения\\n
\\n \\n
{{errorMessage}}
\\n \\n \\n\\n\\n\\n\\n
\\n \\n\\n \\n
\\n Вход\\n
\\n
\\n \\n
\\n \\n\\n
\\n
\\n
\\n
\\n\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/view/auth/signup/signup.component.html\n// module id = ./src/app/view/auth/signup/signup.component.html\n// module chunks = main","import { Component, OnInit } from '@angular/core';\nimport { AuthService } from '@services/http/auth.service';\nimport { UserService } from '@services/http/user.service';\n\nimport { CachedDataService } from '@services/data/cached-data.service';\nimport { FormGroup, FormBuilder, Validators } from '@angular/forms';\nimport { Observable } from 'rxjs/Observable';\nimport { ScreenService } from '@services/screen.service';\nimport { regexValidators } from '../../../validator';\n\n@Component({\n selector: 'app-signup',\n templateUrl: './signup.component.html',\n styleUrls: ['./signup.component.css']\n})\nexport class SignUpComponent implements OnInit {\n signUpForm: FormGroup;\n showConfirm = false;\n isConfirmCodeSend = false;\n btnText = {\n text: 'Зарегистрироваться',\n default: 'Зарегистрироваться',\n loadText: 'Отправка..'\n };\n errorMessage = '';\n errorConfirmPassword = {\n status: true,\n message: ''\n };\n errorPassword = null;\n passwordHasNumAndChar = true;\n\n constructor(\n private formBuilder: FormBuilder,\n private userService: UserService,\n private authService: AuthService,\n private cachedDataService: CachedDataService,\n private screenService: ScreenService) {\n\n }\n\n confirmCodeEvent() {\n this.errorMessage = '';\n }\n\n ngOnInit() {\n this.screenService.isShowLoader = false;\n this.initForm();\n if (this.cachedDataService.getCurrentUser() && !this.cachedDataService.getCurrentUser().phoneNumberConfirmed) {\n this.showConfirm = true;\n const currentUser = this.cachedDataService.getCurrentUser();\n this.signUpForm.controls['username'].setValue(currentUser.userName);\n this.signUpForm.controls['email'].setValue(currentUser.email);\n this.signUpForm.controls['fullname'].setValue(currentUser.fullName);\n this.signUpForm.controls['password'].setValue(this.cachedDataService.getCredentials().password);\n this.signUpForm.controls['confirmPassword'].setValue(this.cachedDataService.getCredentials().password);\n this.btnText.text = 'Отправить код';\n }\n }\n\n\n initForm() {\n this.signUpForm = this.formBuilder.group({\n username: ['', [Validators.required]],\n email: ['', [Validators.required, Validators.pattern(regexValidators.email)]],\n fullname: ['', [Validators.required]],\n password: ['', [Validators.required, Validators.minLength(6)]],\n confirmPassword: ['', [Validators.required]],\n accept: [false, [Validators.required]]\n });\n }\n\n checkPassword() {\n const passLength = this.signUpForm.value.password.length;\n const password = this.signUpForm.value.password;\n\n if (passLength > 0) {\n if (this.signUpForm.get('password').errors &&\n this.signUpForm.get('password').errors.minlength &&\n this.signUpForm.get('password').errors.minlength.actualLength < this.signUpForm.get('password').errors.minlength.requiredLength) {\n this.errorPassword = `Пароль слишком короткий, ${passLength} символов`;\n } else {\n this.errorPassword = null;\n }\n } else {\n this.errorPassword = null;\n }\n if (/[a-zA-Z]/gi.test(password) && /[0-9]/gi.test(password)) {\n /*должен содержать хоть 1 символ и 1 цифру */\n this.passwordHasNumAndChar = true;\n } else {\n this.passwordHasNumAndChar = false;\n }\n\n\n if (passLength > 0 && this.signUpForm.value.confirmPassword.length > 0) {\n if (this.signUpForm.value.password !== this.signUpForm.value.confirmPassword) {\n this.errorConfirmPassword.status = false;\n this.errorConfirmPassword.message = 'Подтверждение не совпадает с паролем';\n } else {\n this.errorConfirmPassword.status = true;\n this.errorConfirmPassword.message = 'Подтверждение совпадает с паролем';\n }\n } else {\n this.errorConfirmPassword.message = '';\n }\n }\n\n signUp() {\n this.errorMessage = '';\n \n if (this.cachedDataService.getCurrentUser() && !this.cachedDataService.getCurrentUser().phoneNumberConfirmed) {\n this.btnText.text = this.btnText.loadText;\n this.sendConfirmCode();\n } else {\n if (this.signUpForm.invalid) {\n const controls = this.signUpForm.controls;\n Object.keys(controls)\n .forEach(controlName => controls[controlName].markAsTouched());\n return;\n }\n if (!this.errorConfirmPassword.status) {\n return false;\n }\n if (!this.passwordHasNumAndChar) {\n return false;\n }\n if(!this.signUpForm.value.accept){\n this.errorMessage = 'Необходимо принять условия';\n return false;\n }\n const userDateTimeOffset = (new Date().getTimezoneOffset() / 60) * -1;\n\n this.btnText.text = this.btnText.loadText;\n this.authService.signUp(\n this.signUpForm.value.username.replace(/\\D/g, ''),\n this.signUpForm.value.password,\n this.signUpForm.value.fullname,\n this.signUpForm.value.username.replace(/\\D/g, ''),\n this.signUpForm.value.email,\n userDateTimeOffset\n )\n .then((response) => {\n this.cachedDataService.setCredentials(this.signUpForm.value);\n this.cachedDataService.setToken(response.token);\n this.cachedDataService.setCurrentUser(response.user);\n this.cachedDataService.setExpiredDate(false);\n this.sendConfirmCode();\n })\n .catch((error: any) => {\n this.btnText.text = this.btnText.default;\n if (error) {\n if (error.error.errorMessage.length) {\n this.errorMessage = error.error.errorMessage;\n } else {\n const errors = error.error.modelState;\n for (error in errors) {\n this.signUpForm.controls[errors[error].field.toLowerCase()].setErrors({ 'error': errors[error].errors });\n }\n }\n }\n\n });\n }\n }\n\n onChangeUsername(value) {\n this.signUpForm.controls['username'].setValue(value);\n }\n\n sendConfirmCode() {\n this.userService.sendCode(this.cachedDataService.getCurrentUser().userName)\n .subscribe(\n response => {\n this.isConfirmCodeSend = true;\n this.btnText.text = 'Отправить код повторно';\n this.errorMessage = 'SMS отправлено';\n this.showConfirm = true;\n },\n error => {\n this.errorMessage = 'Ошибка';\n });\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/view/auth/signup/signup.component.ts","module.exports = \"\\n\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/view/components/add-object-menu/add-object-menu.component.html\n// module id = ./src/app/view/components/add-object-menu/add-object-menu.component.html\n// module chunks = main","import { Component, ViewChild, OnInit, HostListener } from '@angular/core';\n\n/*Models */\nimport { ObservableObject } from '@models/observable-object';\n\n/*Services */\nimport { ObservableObjectsService } from '@services/http/observable-objects.service';\nimport { CachedDataService } from '@services/data/cached-data.service';\nimport { ObjectsService } from '@services/http/objects.service';\nimport { AppService } from '@services';\n\ndeclare var $: any;\n\n@Component({\n // tslint:disable-next-line:component-selector\n selector: 'add-object-menu',\n templateUrl: './add-object-menu.component.html'\n})\n\nexport class AddObjectMenuComponent implements OnInit {\n @ViewChild('addObjectModal') addObjectModal;\n supportsTouch = 'ontouchstart' in window || navigator.msMaxTouchPoints;\n observableObjects: ObservableObject[];\n isFirstInit = true;\n isOpenMenu = false;\n\n @HostListener('document:touchstart', ['$event']) onClick(btn) {\n if (this.supportsTouch && this.isOpenMenu) {\n if (!btn.target.closest('.add-object-menu')) {\n this.isOpenMenu = false;\n }\n\n }\n }\n\n constructor(\n private cachedDataService: CachedDataService,\n private observableObjectsService: ObservableObjectsService,\n private objectsService: ObjectsService,\n private appService: AppService) {\n objectsService.updateObjects.subscribe(() => {\n this.getObject();\n });\n }\n\n getObject() {\n this.observableObjectsService.getAll().subscribe(response => {\n this.observableObjects =this.appService.filterObjects(response);\n if (!this.observableObjects.length) {\n if (this.isFirstInit) {\n this.addObjectModal.openForm('Car');\n this.isFirstInit = false;\n }\n } else {\n this.cachedDataService.setObservableObjects(this.observableObjects);\n }\n }, error => console.log('from component error', error));\n }\n ngOnInit() {\n this.getObject();\n\n if (this.supportsTouch) {\n $('.custom-tooltip.icon-object').addClass('show-tooltip');\n }\n }\n\n get isMobile() {\n let check = false;\n navigator.maxTouchPoints ? check = true : check = false;\n return check;\n }\n showObjectAdd(type: string) {\n\n this.addObjectModal.openForm(type);\n }\n showDeviceAdd() {\n if (!this.observableObjects.length) {\n this.addObjectModal.openForm('Car');\n } else {\n this.addObjectModal.openDevice();\n }\n\n }\n openAddMenu(value?) {\n if (this.supportsTouch) {\n if (!value) {\n this.isOpenMenu = !this.isOpenMenu;\n }\n\n } else {\n if (value) {\n this.isOpenMenu = value;\n } else {\n this.isOpenMenu = !this.isOpenMenu;\n }\n }\n\n }\n}\n\n\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/view/components/add-object-menu/add-object-menu.component.ts","module.exports = \"\\n \\n {{value.name}}\\n \\n\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/view/components/bitmask-field/bitmask-field.component.html\n// module id = ./src/app/view/components/bitmask-field/bitmask-field.component.html\n// module chunks = main","import { Component, Input, OnInit, EventEmitter, Output} from '@angular/core';\n\n@Component({\n selector: 'app-bitmask-field',\n templateUrl: './bitmask-field.component.html'\n})\n\nexport class BitmaskField implements OnInit {\n @Input(\"listValues\") listValues:Array<{\n code: string;\n id: string;\n name: string;\n }>;\n @Input(\"currentValue\") currentValue:{\n code: string;\n value: string;\n };\n selectedValuesModel:Array = [];\n @Output() onChange = new EventEmitter();\n ngOnInit(){\n //переводим в двоичный код \n let bin_number = this.dec2bin(parseInt(this.currentValue.value))\n\n //переворачиваем число с двоичным кодом\n let array_init = bin_number.split(\"\").reverse();\n\n let array_pos = [];\n let end_array = [];\n\n //находим позиции где есть 1\n array_init.map((item,index)=>{\n if(parseInt(item)) array_pos.push(index)\n })\n\n //возводим в 2 степень\n array_pos.map(item=>{\n end_array.push(Math.pow(2, item))\n })\n\n //находим выбранные значения из списка значений\n this.listValues.map(item=>{\n if(end_array.indexOf(parseInt(item.code))>=0){\n this.selectedValuesModel.push(item.code)\n }\n })\n }\n onChangeSelect(){\n let summ = 0;\n this.selectedValuesModel.map(item=>{\n summ+=parseInt(item);\n })\n this.onChange.emit(summ);\n\n }\n\n dec2bin(dec:number){\n //переводим в довичный код\n return (dec >>> 0).toString(2);\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/view/components/bitmask-field/bitmask-field.component.ts","module.exports = \"
\\n \\n
\\n
    \\n \\n
  • \\n

    Загрузка списка быстрых команд...

    \\n
  • \\n \\n \\n
  • \\n

    Добавьте список быстрых
    команд в настройках

    \\n
  • \\n \\n \\n \\n
  • \\n
    {{com.description}}
    \\n
    \\n \\n
    \\n
  • \\n
    \\n
    \\n
    \\n
    \\n \\n
\\n
\\n
\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/view/components/command-list/command-list.component.html\n// module id = ./src/app/view/components/command-list/command-list.component.html\n// module chunks = main","import { Component, EventEmitter, Output, Input, OnDestroy } from '@angular/core';\nimport { Subject } from 'rxjs/Subject';\nimport 'rxjs/add/operator/takeUntil';\n\nimport { DevicesService } from '@services/http/devices.service';\nimport { StateService } from '@services/state.service';\nimport { CommandsService } from '@services/commands.service';\nimport { SettingsService } from '@services/settings.service';\nimport { CachedDataService } from '@services/data/cached-data.service';\n\nimport { Device } from '@models/device';\n\ndeclare var swal: any;\n\n@Component({\n // tslint:disable-next-line:component-selector\n selector: 'command-list',\n templateUrl: './command-list.component.html'\n})\n\n// tslint:disable-next-line:component-class-suffix\nexport class CommandList implements OnDestroy {\n private ngUnsubscribe: Subject = new Subject();\n public ifLoadCommand = false;\n public isOpenCtrlMenu = false;\n public arrayCommands: Array = [];\n public currentDevice: Device;\n private cCode: string = null;\n @Input() getCtrlMenuStatus: boolean;\n @Output() getCtrlMenuStatusChange = new EventEmitter();\n\n constructor(\n private commandsService: CommandsService,\n private devicesService: DevicesService,\n private settingsService: SettingsService,\n private cachedDataService: CachedDataService,\n public stateService: StateService) {\n\n this.currentDevice = this.stateService.currentDevice;\n this.cCode = this.cachedDataService.getCcode();\n\n this.stateService.currentDeviceObservable\n .takeUntil(this.ngUnsubscribe)\n .subscribe(device => {\n\n this.arrayCommands = null;\n if (this.isOpenCtrlMenu) {\n this.openCtrlMenu();\n }\n\n this.currentDevice = device;\n this.commandsService.getCommand();\n });\n\n this.commandsService.getCommandsObservable\n .takeUntil(this.ngUnsubscribe)\n .subscribe(arrayCommands => {\n if (this.arrayCommands) {\n if (JSON.stringify(this.arrayCommands) !== JSON.stringify(arrayCommands)) {\n this.arrayCommands = arrayCommands;\n }\n } else {\n this.arrayCommands = arrayCommands;\n }\n\n });\n\n this.commandsService.ifLoadCommandObservable\n .takeUntil(this.ngUnsubscribe)\n .subscribe(value => {\n this.ifLoadCommand = value;\n });\n\n\n stateService.addCcodeEvent.subscribe(() => {\n this.cCode = this.cachedDataService.getCcode();\n });\n }\n\n openCtrlMenu() {\n\n if (this.ifLoadCommand && this.isOpenCtrlMenu) {\n return false;\n }\n this.isOpenCtrlMenu = !this.isOpenCtrlMenu;\n this.getCtrlMenuStatusChange.emit(this.isOpenCtrlMenu);\n\n if (this.isOpenCtrlMenu) {\n /*if open menu*/\n this.ifLoadCommand = true;\n this.commandsService.getCommand();\n }\n }\n\n sendCommand(command) {\n if (command.format && command.format.indexOf('ccode') >= 0 && !this.checkedCcode()) {\n swal({\n text: 'Не задан C-код',\n type: 'warning',\n showCancelButton: false,\n confirmButtonColor: '#23518d',\n\n confirmButtonText: 'Задать'\n }).then((result) => {\n if (result.value) {\n this.openSettings();\n }\n });\n\n return false;\n }\n\n swal({\n text: 'Отправить команду ' + command.description + ' на сервер?',\n type: 'question',\n showCancelButton: true,\n confirmButtonColor: '#23518d',\n cancelButtonColor: '#d33',\n confirmButtonText: 'Отправить',\n cancelButtonText: 'Отмена'\n }).then((result) => {\n if (result.value) {\n this.openCtrlMenu();\n // tslint:disable-next-line:no-shadowed-variable\n this.devicesService.sendCommand(command.id, this.currentDevice.id, this.currentDevice.provider, this.cCode).subscribe(result => {\n if (result.status === 'fail') {\n swal({\n type: 'error',\n title: 'Ошибка',\n text: 'Команда не выполнена, попробуйте позже.',\n showConfirmButton: false,\n timer: 3000,\n });\n } else {\n swal({\n type: 'success',\n text: 'Команда ' + command.description + ' отправлена на сервер',\n showConfirmButton: false,\n timer: 3000,\n });\n this.stateService.sendCommandEvent.emit();\n }\n\n });\n }\n });\n }\n\n openSettings() {\n this.settingsService.openSettingsSubject.next('command');\n }\n\n checkCountCommand(groups) {\n if (groups) {\n let count = 0;\n groups.map(group => {\n group.data.map(command => {\n if (command.show) {\n count++;\n }\n });\n });\n return count > 5;\n }\n }\n\n checkedCcode() {\n if (!this.cCode || this.cCode.length === 0 || this.cCode === 'null') {\n return false;\n } else {\n return true;\n }\n }\n\n ngOnDestroy() {\n this.ngUnsubscribe.next();\n this.ngUnsubscribe.complete();\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/view/components/command-list/command-list.component.ts","module.exports = \"\\n\\n
\\n\\n {{fileName || \\\"Выбрать файл\\\"}}\\n\\n \\n\\n
\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/view/components/file-upload/file-upload.component.html\n// module id = ./src/app/view/components/file-upload/file-upload.component.html\n// module chunks = main","import { Component, OnInit, OnDestroy, Input,Output, EventEmitter } from '@angular/core';\nimport { Subject } from 'rxjs/Subject';\n\n\n\n@Component({\n selector: 'file-upload',\n templateUrl: \"file-upload.component.html\"\n })\n export class FileUploadComponent {\n @Output() uploadFileEvent: EventEmitter = new EventEmitter();\n @Input()\n requiredFileType:string;\n \n fileName = '';\n uploadProgress:number;\n // uploadSub: Subscription;\n \n constructor() {}\n \n onFileSelected(event) {\n const file:File = event.target.files[0];\n \n if (file) {\n this.uploadFileEvent.emit(file);\n console.log(file)\n this.fileName = file.name;\n const formData = new FormData();\n formData.append(\"thumbnail\", file);\n console.log(formData)\n \n // const upload$ = this.http.post(\"/api/thumbnail-upload\", formData, {\n // reportProgress: true,\n // observe: 'events'\n // })\n // .pipe(\n // finalize(() => this.reset())\n // );\n \n // this.uploadSub = upload$.subscribe(event => {\n // if (event.type == HttpEventType.UploadProgress) {\n // this.uploadProgress = Math.round(100 * (event.loaded / event.total));\n // }\n // })\n }\n }\n \n cancelUpload() {\n // this.uploadSub.unsubscribe();\n this.reset();\n }\n \n reset() {\n this.uploadProgress = null;\n // this.uploadSub = null;\n }\n }\n\n\n// WEBPACK FOOTER //\n// ./src/app/view/components/file-upload/file-upload.component.ts","module.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// WEBPACK FOOTER\n// ./src/app/view/components/graph-stats/graph-stats.component.html\n// module id = ./src/app/view/components/graph-stats/graph-stats.component.html\n// module chunks = main","import { Component, OnInit, OnDestroy } from '@angular/core';\nimport { Subject } from 'rxjs/Subject';\n\n/*Services*/\nimport { StateService, AppService } from '@services';\n\n/*Plugins*/\nimport { Chart, Highcharts } from 'angular-highcharts';\n\n\n/*Models */\nimport { StatsTrack } from '@models';\n\n@Component({\n selector: 'app-graph-stats',\n templateUrl: './graph-stats.component.html'\n})\n\nexport class GraphStatsComponent implements OnDestroy {\n chartDistance: Chart;\n chartTime: Chart;\n chartSpeed: Chart;\n private ngUnsubscribe: Subject = new Subject();\n ifShowGraph = false;\n statsTrackList: Array;\n\n chartYAxisTime = {\n // Формат для часов/минут\n type: 'datetime',\n title: {\n text: null\n },\n labels: {\n formatter: function() {\n const time = this.value;\n let hours = (time / 3600000).toString() ;\n let mins = ((time % 3600000) / 60000).toString();\n if (hours.length === 1) {\n hours = '0' + hours;\n }\n if (mins.length === 1) {\n mins = '0' + mins;\n }\n return `${hours}:${mins}`;\n }\n }\n };\n chartYAxis = {\n // Формат для обычных данных\n min: 0,\n title: {\n text: null\n },\n labels: {\n formatter: function () {\n return `${this.value}`;\n }\n }\n };\n chartTooltipTime = {\n // Формат для часов/минут\n formatter: function () {\n\n const time = this.y;\n const hours = parseInt( (time / 3600000).toString() );\n const mins = parseInt((parseInt((time % 3600000).toString()) / 60000).toString());\n return `${this.x}
${this.series.name}: ${hours}:${mins}`;\n }\n };\n chartTooltip = {\n // Формат для обычных данных\n headerFormat: '{point.x}
',\n pointFormat: '{series.name}: {point.y}'\n };\n\n constructor(private stateService: StateService, private appService: AppService) {\n this.stateService.toggleGraphStatsObservable\n .takeUntil(this.ngUnsubscribe)\n .subscribe((value: Array) => {\n if (value) {\n this.ifShowGraph = true;\n this.statsTrackList = value;\n\n this.showChartDistance();\n this.showChartTime();\n this.showChartSpeed();\n\n } else {\n this.ifShowGraph = false;\n }\n });\n }\n\n showChartDistance() {\n const data = [];\n const legend = [];\n this.parseFormatDataChart(this.statsTrackList, 'distance').map(item => {\n legend.push(this.getDateFormat(item[0]));\n data.push(parseFloat(item[1]));\n });\n\n // tslint:disable-next-line:max-line-length\n this.chartDistance = this.getChart([{name: 'Расстояние, км', color: '#5ac8fa', data: data}], legend, this.chartYAxis, this.chartTooltip);\n }\n\n showChartTime() {\n const data = [];\n const legend = [];\n this.parseFormatDataChart(this.statsTrackList, 'travelTime').map(item => {\n legend.push(this.getDateFormat(item[0]));\n data.push(item[1] * 1000);\n });\n\n // tslint:disable-next-line:max-line-length\n this.chartTime = this.getChart([{name: 'Время в пути', color: '#c7c7cc', data: data }], legend, this.chartYAxisTime, this.chartTooltipTime);\n }\n\n getDateFormat(date: string) {\n const dateArray = date.split('.');\n return `${dateArray[0]}.${dateArray[1]}`;\n }\n\n showChartSpeed() {\n const data = [];\n const dataMaxSpeed = [];\n const legend = [];\n\n this.parseFormatDataChart(this.statsTrackList, 'averageSpeed').map(item => {\n legend.push(this.getDateFormat(item[0]));\n data.push(parseFloat(item[1]));\n });\n\n this.parseFormatDataChart(this.statsTrackList, 'maxSpeed').map(item => {\n const itemData = item[1];\n dataMaxSpeed.push(itemData);\n });\n\n\n this.chartSpeed = this.getChart(\n [\n {name: 'Максимальная скорость, км', color: '#ff9500', data: dataMaxSpeed },\n {name: 'Средняя скорость, км', color: '#007aff', data: data }\n ]\n , legend, this.chartYAxis, this.chartTooltip);\n }\n\n parseFormatDataChart(array: Array, field, notAddFirst?) {\n let dataArray = [];\n\n array.map((item, index ) => {\n let newItem;\n if (index === 0) {\n newItem = [item.toFormat, item[field], item.toUnix];\n } else {\n newItem = [item.fromFormat, item[field], item.fromUnix];\n }\n\n if (item.items && item.items.length) {\n dataArray = dataArray.concat(this.parseFormatDataChart(item.items, field, true));\n } else {\n dataArray.push(newItem);\n }\n });\n dataArray = this.appService.sortedArray(dataArray, 2);\n return dataArray;\n }\n\n\n getChart(series, legend, yAxis, tooltip) {\n return new Chart({\n chart: {\n type: 'column',\n marginBottom: 50\n },\n title: { style: { 'display': 'none' } },\n xAxis: {\n categories: legend,\n\n },\n yAxis: yAxis,\n tooltip: tooltip,\n plotOptions: {\n column: {\n grouping: false,\n shadow: false\n }\n },\n series: series\n ,\n credits: {\n enabled: false\n },\n legend: {\n enabled: false\n },\n });\n }\n\n ngOnDestroy() {\n this.ngUnsubscribe.next();\n this.ngUnsubscribe.complete();\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/view/components/graph-stats/graph-stats.component.ts","export * from './add-object-menu/add-object-menu.component';\nexport * from './command-list/command-list.component';\nexport * from './indicator-device/indicator-device.component';\nexport * from './main-state-info/main-state-info.component';\nexport * from './state-info/state-info.component';\nexport * from './timer-add/timer-add.component';\nexport * from './timers-list/timers-list.component';\nexport * from './tariffs-block/tariffs-block.component';\nexport * from './video-background/video-background.component';\nexport * from './username-field/username-field.component';\nexport * from './report-stats-item/report-stats-item.component';\nexport * from './graph-stats/graph-stats.component';\nexport * from './report-quality/report-quality.component';\nexport * from './pointer-graph/pointer-graph.component';\nexport * from './report-quality-graph/report-quality-graph.component';\nexport * from './bitmask-field/bitmask-field.component';\nexport * from './file-upload/file-upload.component';\n\n\n// WEBPACK FOOTER //\n// ./src/app/view/components/index.ts","module.exports = \"
\\n
    \\n \\n
    \\n \\n \\\"{{item.nameRus}}\\\"\\n \\n {{item.value}} {{item.unit}}\\n
    \\n \\n
\\n
\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/view/components/indicator-device/indicator-device.component.html\n// module id = ./src/app/view/components/indicator-device/indicator-device.component.html\n// module chunks = main","import { Component, ViewChild, OnDestroy } from '@angular/core';\nimport { Subject } from 'rxjs/Subject';\nimport 'rxjs/add/operator/takeUntil';\n\n/*Services */\nimport { StateService } from '@services/state.service';\n\n/*Models */\nimport { DeviceState } from '@models/device-state';\nimport { Device } from '@models/device';\n/*Plugins */\nimport { OwlCarousel } from 'ngx-owl-carousel';\n\n@Component({\n // tslint:disable-next-line:component-selector\n selector: 'indicator-device',\n templateUrl: './indicator-device.component.html'\n})\nexport class IndicatorDeviceComponent implements OnDestroy {\n\n @ViewChild('statesSlider') statesSlider: OwlCarousel;\n public sliderStatesOptions: any;\n additionalStates: Array = [];\n state: DeviceState;\n public currentDevice: Device;\n private ngUnsubscribe: Subject = new Subject();\n\n constructor(\n public stateService: StateService\n ) {\n\n this.currentDevice = this.stateService.currentDevice;\n\n this.stateService.currentDeviceSubject\n .takeUntil(this.ngUnsubscribe)\n .subscribe(device => {\n this.currentDevice = device;\n });\n this.stateService.observableObjectObservable\n .takeUntil(this.ngUnsubscribe)\n .subscribe(object => {\n if (this.statesSlider) {\n this.statesSlider.to([0, 0]);\n }\n\n });\n this.stateService.stateObservable\n .takeUntil(this.ngUnsubscribe)\n .subscribe(state => {\n\n /*compare two arrays */\n if (this.state) {\n\n /*update time */\n this.state.additionalStates.time = state.additionalStates.time;\n if (JSON.stringify(this.state.additionalStates) !== JSON.stringify(state)) {\n\n this.state = state;\n this.setAdditionlaState();\n }\n } else {\n\n this.state = state;\n this.setAdditionlaState();\n }\n if (this.statesSlider) {\n this.statesSlider.trigger('refresh');\n }\n\n\n });\n\n this.sliderStatesOptions = {\n dots: false,\n navigation: true,\n nav: true,\n navText: ['', ''],\n navClass: ['car-details-tabs-prev', 'car-details-tabs-next'],\n loop: false,\n lazyLoad: false,\n responsive: {\n 0: { items: 5 },\n 600: { items: 5 },\n 1000: { items: 5 }\n }\n };\n\n\n }\n\n setAdditionlaState() {\n this.additionalStates = [];\n if (this.currentDevice.provider.toLowerCase() === 'magicsystems' && this.currentDevice.deviceType === 'beacon') {\n if (this.state.additionalStates.voltage && this.state.additionalStates.voltage.value) {\n this.additionalStates.push({\n value: this.state.additionalStates.voltage.value,\n unit: this.state.additionalStates.voltage.units,\n nameRus: 'Заряд аккумулятора',\n type: 'voltage',\n hasGraph: true\n });\n }\n if (this.state.additionalStates.gsmLevel && this.state.additionalStates.gsmLevel.value) {\n this.additionalStates.push({\n value: this.state.additionalStates.gsmLevel.value,\n unit: this.state.additionalStates.gsmLevel.units,\n nameRus: 'Уровень GSM',\n type: 'gsmLevel'\n });\n }\n } else {\n if (this.state.additionalStates.fuel && this.state.additionalStates.fuel.value) {\n this.additionalStates.push({\n // type\n value: this.state.additionalStates.fuel.value,\n unit: this.state.additionalStates.fuel.units,\n nameRus: 'Бензин',\n type: 'fuel',\n hasGraph: true\n });\n }\n if (this.state.additionalStates.voltage && this.state.additionalStates.voltage.value) {\n this.additionalStates.push({\n value: this.state.additionalStates.voltage.value,\n unit: this.state.additionalStates.voltage.units,\n nameRus: 'Заряд аккумулятора',\n type: 'voltage',\n hasGraph: true\n });\n }\n if (this.state.additionalStates.reservedVoltage && this.state.additionalStates.reservedVoltage.value) {\n this.additionalStates.push({\n value: this.state.additionalStates.reservedVoltage.value,\n unit: this.state.additionalStates.reservedVoltage.units,\n nameRus: 'Резервный заряд',\n type: 'reservedVoltage',\n hasGraph: true\n });\n }\n if (this.state.additionalStates.cardVoltage && this.state.additionalStates.cardVoltage.value) {\n this.additionalStates.push({\n value: this.state.additionalStates.cardVoltage.value,\n unit: this.state.additionalStates.cardVoltage.units,\n nameRus: 'Заряд метка',\n type: 'cardVoltage'\n });\n }\n if (this.state.additionalStates.balance && this.state.additionalStates.balance.value) {\n this.additionalStates.push({\n value: this.state.additionalStates.balance.value,\n unit: this.state.additionalStates.balance.units,\n nameRus: 'Баланс',\n type: 'balance',\n hasGraph: true\n });\n }\n if (this.state.additionalStates.temperatureOut && this.state.additionalStates.temperatureOut.value) {\n this.additionalStates.push({\n value: this.state.additionalStates.temperatureOut.value,\n unit: this.state.additionalStates.temperatureOut.units,\n nameRus: 'Температура за бортом',\n type: 'temperatureOut'\n });\n }\n if (this.state.additionalStates.temperatureEngine && this.state.additionalStates.temperatureEngine.value) {\n this.additionalStates.push({\n value: this.state.additionalStates.temperatureEngine.value,\n unit: this.state.additionalStates.temperatureEngine.units,\n nameRus: 'Температура двигателя',\n type: 'temperatureEngine',\n hasGraph: true\n });\n }\n if (this.state.additionalStates.temperatureIn && this.state.additionalStates.temperatureIn.value) {\n this.additionalStates.push({\n value: this.state.additionalStates.temperatureIn.value,\n unit: this.state.additionalStates.temperatureIn.units,\n nameRus: 'Температура в салоне',\n type: 'temperatureIn'\n });\n }\n if (this.state.additionalStates.temperatureMain && this.state.additionalStates.temperatureMain.value) {\n this.additionalStates.push({\n value: this.state.additionalStates.temperatureMain.value,\n unit: this.state.additionalStates.temperatureMain.units,\n nameRus: 'Температура основная',\n type: 'temperatureMain'\n });\n }\n if (this.state.additionalStates.cardLevel && this.state.additionalStates.cardLevel.value) {\n this.additionalStates.push({\n value: this.state.additionalStates.cardLevel.value,\n unit: this.state.additionalStates.cardLevel.units,\n nameRus: 'Уровень метки',\n type: 'cardLevel'\n });\n }\n if (this.state.additionalStates.gsmLevel && this.state.additionalStates.gsmLevel.value) {\n this.additionalStates.push({\n value: this.state.additionalStates.gsmLevel.value,\n unit: this.state.additionalStates.gsmLevel.units,\n nameRus: 'Уровень GSM',\n type: 'gsmLevel'\n });\n }\n if (this.state.additionalStates.satelites && this.state.additionalStates.satelites.value) {\n this.additionalStates.push({\n value: this.state.additionalStates.satelites.value,\n unit: this.state.additionalStates.satelites.units,\n nameRus: 'Спутники',\n type: 'satelites'\n });\n }\n if (this.state.additionalStates.speed && this.state.additionalStates.speed.value) {\n this.additionalStates.push({\n value: this.state.additionalStates.speed.value,\n unit: this.state.additionalStates.speed.units,\n nameRus: 'Cкорость',\n type: 'speed'\n });\n }\n if (this.state.additionalStates.mileage && this.state.additionalStates.mileage.value) {\n this.additionalStates.push({\n value: this.state.additionalStates.mileage.value,\n unit: this.state.additionalStates.mileage.units,\n nameRus: 'Одометр',\n type: 'mileage',\n hasGraph: true\n });\n }\n if (this.state.additionalStates.rpm && this.state.additionalStates.rpm.value) {\n this.additionalStates.push({\n value: this.state.additionalStates.rpm.value,\n unit: this.state.additionalStates.rpm.units,\n nameRus: 'Тахометр',\n type: 'rpm',\n hasGraph: true\n });\n }\n }\n }\n\n ngOnDestroy() {\n this.ngUnsubscribe.next();\n this.ngUnsubscribe.complete();\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/view/components/indicator-device/indicator-device.component.ts","module.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 Режим A: данные GSM каждые 24 часа\\n \\n \\n режим B: данные GPS каждые 72 часа\\n \\n \\n
\\n

На связи

\\n

Нет связи

\\n \\n \\n\\n
\\n\\n \\n \\n \\n
\\n
\\n
\\n \\n\\n

\\n \\n\\n
\\n \\n
\\n \\n
\\n
\\n\\n
\\n \\n\\n \\n \\n\\n\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/view/components/main-state-info/main-state-info.component.html\n// module id = ./src/app/view/components/main-state-info/main-state-info.component.html\n// module chunks = main","import { Component, OnInit, OnDestroy } from '@angular/core';\nimport { Subject } from 'rxjs/Subject';\nimport 'rxjs/add/operator/takeUntil';\nimport { Router } from '@angular/router';\n\n/*Services */\nimport { DevicesService } from '@services/http/devices.service';\nimport { StateService } from '@services/state.service';\nimport { ScreenService } from '@services/screen.service';\nimport { CachedDataService } from '@services/data/cached-data.service';\nimport { ObservableObjectsService } from '@services/http/observable-objects.service';\n\n/*Models */\nimport { DeviceState } from '@models/device-state';\nimport { ObservableObject } from '@models/observable-object';\nimport { Device } from '@models/device';\n\n/*Plugins */\nimport * as moment from 'moment';\n\n@Component({\n // tslint:disable-next-line:component-selector\n selector: 'main-state-info',\n templateUrl: './main-state-info.component.html'\n})\n\nexport class MainStateInfoComponent implements OnInit, OnDestroy {\n state: DeviceState;\n public isOpenCtrlMenu = false;\n public ifIgnOn: boolean;\n currentObservableObject: ObservableObject;\n public currentDevice: Device;\n firstDevice: Device = null;\n guardTimeText;\n colorObject;\n private ngUnsubscribe: Subject = new Subject();\n\n constructor(\n private devicesService: DevicesService,\n private cachedDataService: CachedDataService,\n public stateService: StateService,\n protected router: Router,\n private observableObjectsService: ObservableObjectsService,\n public screenService: ScreenService) {\n\n this.stateService.stateObservable\n .takeUntil(this.ngUnsubscribe)\n .subscribe(state => {\n this.state = state;\n this.getTimeGuard();\n if (this.state.mainStates.autostart) {\n this.ifIgnOn = true;\n } else {\n this.ifIgnOn = false;\n }\n\n\n if (this.state.mainStates.guard) {\n this.colorObject = 'blue';\n } else {\n this.colorObject = 'white';\n }\n });\n this.stateService.observableObjectObservable\n .takeUntil(this.ngUnsubscribe)\n .subscribe(object => {\n this.currentObservableObject = object;\n this.findFirstDevice();\n });\n\n this.stateService.currentDeviceSubject\n .takeUntil(this.ngUnsubscribe)\n .subscribe(device => {\n this.currentDevice = device;\n if (device) {\n this.findFirstDevice();\n }\n });\n\n }\n\n ngOnInit() {\n this.screenService.isStateHidden = false;\n }\n\n getObjectType() {\n if (this.currentObservableObject.extra) {\n return this.observableObjectsService.getObjectType(this.currentObservableObject.extra);\n } else {\n return 'default';\n }\n\n }\n getTimeGuard() {\n\n if (Math.abs(this.state.mainStates.guardTime)) {\n this.guardTimeText = this.getTime(Math.abs(this.state.mainStates.guardTime));\n }\n }\n getTime(value) {\n const currentDate = moment().format('DD MM YYYY');\n value = moment.unix(value);\n\n if (currentDate === value.format('DD MM YYYY')) {\n return value.format('HH:mm');\n } else {\n return (value.format('HH:mm') + '  ' + value.format('DD.MM.YY'));\n }\n\n }\n findFirstDevice() {\n\n this.firstDevice = null;\n if (this.currentObservableObject && this.currentObservableObject.devices.length > 1 && this.currentDevice) {\n if (this.currentDevice.deviceType === 'alarm') {\n this.currentObservableObject.devices.map(device => {\n if (device.deviceType === 'beacon') {\n if (this.firstDevice) {\n if (this.firstDevice.created > device.created) {\n this.firstDevice = device;\n }\n } else {\n this.firstDevice = device;\n }\n }\n });\n }\n }\n\n if (this.firstDevice) {\n\n this.devicesService.getState(this.firstDevice.id).subscribe(response => {\n if (this.firstDevice) {\n this.firstDevice['lastDate'] = this.getTime(response.additionalStates.time.value);\n }\n }, error => {\n console.log(error);\n });\n }\n }\n\n ngOnDestroy() {\n this.ngUnsubscribe.next();\n this.ngUnsubscribe.complete();\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/view/components/main-state-info/main-state-info.component.ts","module.exports = \"
\\n
\\n \\n
\\n
\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/view/components/pointer-graph/pointer-graph.component.html\n// module id = ./src/app/view/components/pointer-graph/pointer-graph.component.html\n// module chunks = main","module.exports = \".pointer-graph {\\n display: -webkit-box;\\n display: -ms-flexbox;\\n display: flex; }\\n .pointer-graph div {\\n width: 18px;\\n height: 18px;\\n margin-right: 2px;\\n background: #dae6ea;\\n position: relative; }\\n .pointer-graph div:first-child {\\n border-top-left-radius: 3px;\\n border-bottom-left-radius: 3px; }\\n .pointer-graph div:last-child {\\n margin-right: 0;\\n border-top-right-radius: 3px;\\n border-bottom-right-radius: 3px; }\\n .pointer-graph div span {\\n position: absolute;\\n height: 100%;\\n left: 0;\\n top: 0;\\n background: green; }\\n .pointer-graph div span.green {\\n background: #87cc57; }\\n .pointer-graph div span.yellow {\\n background: #fdd14a; }\\n .pointer-graph div span.red {\\n background: #e94b26; }\\n\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/view/components/pointer-graph/pointer-graph.component.scss\n// module id = ./src/app/view/components/pointer-graph/pointer-graph.component.scss\n// module chunks = main","import { Component, Input, EventEmitter, OnInit, Output, ViewEncapsulation } from '@angular/core';\nimport { Subject } from 'rxjs/Subject';\nimport 'rxjs/add/operator/takeUntil';\n\n/*Services */\nimport { DevicesService, StateService, AppService } from '@services';\n\n/*Models */\nimport { DailyQuality, Device } from '@models';\n\n/*Plugins */\n\n/*Plugins */\nimport { IMyDrpOptions, IMyDateRangeModel } from 'mydaterangepicker';\nimport * as moment from 'moment';\n\n/*Config*/\nimport { CONFIG } from '@config';\n\n@Component({\n\tselector: 'app-pointer-graph',\n\ttemplateUrl: './pointer-graph.component.html',\n\tstyleUrls: ['./pointer-graph.component.scss'],\n encapsulation: ViewEncapsulation.None\n})\n\nexport class PointerGraphComponent implements OnInit {\n @Input(\"value\") value: number;\n currentColor;\n graphCount = [\n {\n width:0\n },\n {\n width:0\n },\n {\n width:0\n }\n ];\n\n ngOnInit(){\n if(this.value<=15){\n this.currentColor = \"red\";\n }else if(this.value>15 && this.value<90){\n this.currentColor = \"yellow\";\n }else{\n this.currentColor = \"green\";\n }\n let tempValue = parseInt(this.value.toString());\n if(tempValue<=100/3){\n this.graphCount[0].width = tempValue*100/(100/3);\n }else{\n tempValue = tempValue-100/3;\n this.graphCount[0].width = 100;\n if(tempValue<=100/3){\n this.graphCount[1].width = tempValue*100/(100/3);;\n }else{\n this.graphCount[1].width = 100;\n tempValue = tempValue-100/3;\n this.graphCount[2].width = tempValue*100/(100/3);;\n }\n }\n \n }\n}\n\n\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/view/components/pointer-graph/pointer-graph.component.ts","module.exports = \"
\\n\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/view/components/report-quality-graph/report-quality-graph.component.html\n// module id = ./src/app/view/components/report-quality-graph/report-quality-graph.component.html\n// module chunks = main","module.exports = \"\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/view/components/report-quality-graph/report-quality-graph.component.scss\n// module id = ./src/app/view/components/report-quality-graph/report-quality-graph.component.scss\n// module chunks = main","import { Component, Input, EventEmitter, OnInit, Output } from '@angular/core';\nimport { Subject } from 'rxjs/Subject';\nimport 'rxjs/add/operator/takeUntil';\n\n/*Services */\nimport { DevicesService, StateService, AppService } from '@services';\n\n/*Models */\nimport { DailyQuality, Device, GraphQuality } from '@models';\n\n/*Plugins */\n\n/*Plugins */\nimport { IMyDrpOptions, IMyDateRangeModel } from 'mydaterangepicker';\nimport * as moment from 'moment';\n\nimport { Chart, Highcharts } from 'angular-highcharts';\n\n/*Config*/\nimport { CONFIG } from '@config';\n\n@Component({\n\tselector: 'app-report-quality-graph',\n\ttemplateUrl: './report-quality-graph.component.html',\n\tstyleUrls: ['./report-quality-graph.component.scss']\n})\n\nexport class ReportQualityGraphComponent implements OnInit {\n @Input(\"data\") graphData: GraphQuality;\n green = \"#87cc57\";\n yellow = \"#fdd14a\";\n red = \"#e94b26\";\n\n chartBlock: Chart;\n chartTooltip = {\n // Формат для обычных данных\n headerFormat: '{point.x}
',\n pointFormat: '{series.name}: {point.y}'\n };\n chartYAxis = {\n // Формат для обычных данных\n min: 0,\n max:100,\n title: {\n text: null\n },\n tickInterval: 20,\n labels: {\n formatter: function () {\n return `${this.value}`;\n }\n }\n };\n constructor(private appService: AppService){}\n\n ngOnInit(){\n this.initChart()\n }\n\n\n initChart(){\n const data = [];\n const legend = [];\n const colors = []\n \n this.parseFormatDataChart().map(item => {\n legend.push(this.getDateFormat(item[0]));\n data.push(item[1]);\n if(item[1]<=15){\n colors.push(this.red);\n }else if(item[1]>15 && item[1]<90){\n colors.push(this.yellow);\n }else{\n colors.push(this.green);\n }\n });\n\n console.log(legend)\n console.log(data)\n\n this.chartBlock = this.getChart([{name: 'Уровень', data: data, pointWidth: 15}], legend, this.chartYAxis, this.chartTooltip, colors);\n }\n\n\n parseFormatDataChart() {\n let dataArray = [];\n\n this.graphData.items.map((item, index ) => {\n let newItem;\n newItem = [ moment.unix(item.timeStamp).format('DD.MM.YYYY'), item.score, item.timeStamp];\n dataArray.push(newItem);\n });\n\n dataArray = this.appService.sortedArray(dataArray, 2);\n \n return dataArray;\n }\n\n getChart(series, legend, yAxis, tooltip, colors: Array) {\n return new Chart({\n chart: {\n type: 'column',\n marginBottom: 50\n },\n title: { style: { 'display': 'none' } },\n xAxis: {\n categories: legend,\n \n },\n colors: colors,\n yAxis: yAxis,\n tooltip: tooltip,\n plotOptions: {\n column: {\n grouping: false,\n shadow: false,\n pointWidth: 15,\n colorByPoint: true\n },\n },\n\n\n series: series,\n credits: {\n enabled: false\n },\n legend: {\n enabled: false\n },\n });\n }\n\n\n getDateFormat(date: string) {\n const dateArray = date.split('.');\n return `${dateArray[0]}.${dateArray[1]}`;\n }\n\n}\n\n\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/view/components/report-quality-graph/report-quality-graph.component.ts","module.exports = \"
\\n \\n \\n
\\n
Качество вождения (доступная телематика)
\\n
\\n Загрузка..\\n
\\n
\\n
\\n
За текущий день
\\n
\\n
{{dailyQuality.score}}%
\\n \\n
\\n \\n
\\n
\\n
События, повлиявшие на расчет
\\n
\\n
\\n Скорость\\n
\\n \\n
0\\\">{{dailyQuality.speed}}
\\n
\\n
\\n Торможение\\n
\\n
0\\\">{{dailyQuality.brakes}}
\\n
\\n
\\n Разгон\\n
\\n \\n
0\\\">{{dailyQuality.accelerations}}
\\n
\\n
\\n Повороты\\n
\\n \\n
0\\\">{{dailyQuality.turns}}
\\n
\\n
\\n
\\n
\\n
За предыдущие периоды
\\n
\\n \\t\\n \\n
\\n
Неделя
\\n
Месяц
\\n
Год
\\n
\\n \\n
Загрузка..
\\n \\n
\\n
\\n \\n
\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/view/components/report-quality/report-quality.component.html\n// module id = ./src/app/view/components/report-quality/report-quality.component.html\n// module chunks = main","module.exports = \".report-quality {\\n padding: 10px; }\\n .report-quality__title {\\n font-weight: bold;\\n margin-bottom: 10px;\\n text-align: center; }\\n .report-quality__info {\\n display: -webkit-box;\\n display: -ms-flexbox;\\n display: flex;\\n margin-top: 15px;\\n margin-bottom: 20px; }\\n .report-quality__info .percent {\\n line-height: 30px;\\n font-size: 27px; }\\n .report-quality__info .title {\\n text-align: center;\\n color: #9ca7ad; }\\n .report-quality__info__left {\\n width: 35%; }\\n .report-quality__info__left .report-quality__content {\\n display: -webkit-box;\\n display: -ms-flexbox;\\n display: flex;\\n -webkit-box-orient: vertical;\\n -webkit-box-direction: normal;\\n -ms-flex-direction: column;\\n flex-direction: column;\\n -webkit-box-align: center;\\n -ms-flex-align: center;\\n align-items: center;\\n -webkit-box-pack: center;\\n -ms-flex-pack: center;\\n justify-content: center; }\\n .report-quality__info__right {\\n width: 65%; }\\n .report-quality__content {\\n height: 80px; }\\n .quality-info {\\n display: -webkit-box;\\n display: -ms-flexbox;\\n display: flex;\\n -webkit-box-pack: justify;\\n -ms-flex-pack: justify;\\n justify-content: space-between;\\n max-width: 180px;\\n margin: 0 auto;\\n height: 80px; }\\n .quality-info__item {\\n display: -webkit-box;\\n display: -ms-flexbox;\\n display: flex;\\n -webkit-box-orient: vertical;\\n -webkit-box-direction: normal;\\n -ms-flex-direction: column;\\n flex-direction: column;\\n margin: 7px 0px;\\n -webkit-box-align: center;\\n -ms-flex-align: center;\\n align-items: center; }\\n .quality-info__item .custom-tooltip__content {\\n -webkit-transform: translateX(-50%);\\n transform: translateX(-50%);\\n left: 50%;\\n top: 69px;\\n display: block;\\n width: 103px;\\n text-align: center; }\\n .quality-info__value {\\n width: 30px;\\n margin-top: 5px;\\n text-align: center;\\n font-size: 18px;\\n line-height: 20px;\\n border-radius: 100%;\\n border: 3px solid #87cc57;\\n height: 30px;\\n display: -webkit-box;\\n display: -ms-flexbox;\\n display: flex;\\n -webkit-box-pack: center;\\n -ms-flex-pack: center;\\n justify-content: center;\\n -webkit-box-align: center;\\n -ms-flex-align: center;\\n align-items: center; }\\n .quality-info__value.red {\\n border-color: #e94b26; }\\n .fast-select-date {\\n display: -webkit-box;\\n display: -ms-flexbox;\\n display: flex;\\n -webkit-box-pack: center;\\n -ms-flex-pack: center;\\n justify-content: center; }\\n .fast-select-date div {\\n border-bottom: 1px dotted black;\\n margin: 0 5px; }\\n .fast-select-date div:hover {\\n cursor: pointer;\\n border-bottom-color: transparent; }\\n\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/view/components/report-quality/report-quality.component.scss\n// module id = ./src/app/view/components/report-quality/report-quality.component.scss\n// module chunks = main","import { Component, Input, EventEmitter, OnInit, Output } from '@angular/core';\nimport { Subject } from 'rxjs/Subject';\nimport 'rxjs/add/operator/takeUntil';\n\n/*Services */\nimport { DevicesService, StateService, AppService } from '@services';\n\n/*Models */\nimport { DailyQuality, Device, GraphQuality } from '@models';\n\n/*Plugins */\n\n/*Plugins */\nimport { IMyDrpOptions, IMyDateRangeModel } from 'mydaterangepicker';\nimport * as moment from 'moment';\n\n/*Config*/\nimport { CONFIG } from '@config';\n\n@Component({\n\tselector: 'app-report-quality',\n\ttemplateUrl: './report-quality.component.html',\n\tstyleUrls: ['./report-quality.component.scss']\n})\n\nexport class ReportQualityComponent implements OnInit {\n\n\t\n\tmyDateRangePickerOptions: IMyDrpOptions = {\n\t\tdateFormat: 'dd.mm.yyyy',\n\t\tselectBeginDateTxt: 'Выберите начало периода',\n\t\tselectEndDateTxt: 'Выберите конец периода',\n\t\tshowSelectDateText: true,\n\t\tmonthSelector: true,\n\t\tshowClearDateRangeBtn: false,\n\t\teditableDateRangeField: false,\n\t\topenSelectorOnInputClick: true,\n\t\tshowClearBtn: false,\n\t\tshowApplyBtn: false,\n\t\tyearSelector: false,\n\t\tdisableSince: { year: 0, month: 0, day: 0 },\n\t\tdisableUntil: { year: 0, month: 0, day: 0 },\n\t\tdayLabels: CONFIG.dayLabels,\n\t\tmonthLabels: CONFIG.monthLabels\n\t };\n\t modelDateRange;\n\n\t graphData: GraphQuality\n \tprivate ngUnsubscribe: Subject = new Subject();\n \tprivate currentDevice: Device;\n\tcurrentDay: number;\n\tifLoadDailyQuality = true;\n\tifLoadGraphQuality = false;\n\tdailyQuality: DailyQuality;\n\t\n \tconstructor(private stateService: StateService, private devicesService: DevicesService){}\n\n\tngOnInit() {\n\t\tthis.currentDay = moment().unix();\n\n\t\tthis.stateService.currentDeviceObservable\n\t\t\t.takeUntil(this.ngUnsubscribe)\n\t\t\t.subscribe(device => {\n\t\t\t\tthis.currentDevice = device;\n\t\t\t\tthis.initDateRange();\n\t\t\t\tconsole.log(this.currentDevice)\n\t\t\t\tthis.getDailyQuality()\n\t\t\t\t\n\t\t\t});\n\t}\n\n\n\tinitDateRange() {\n\t\tconst date = new Date();\n\t\tconst copy = this.getCopyOfOptions();\n\t\n\t\tconst dateTomorrow = this.addDays(date, 1);\n\t\n\t\tcopy.disableSince = {\n\t\t year: dateTomorrow.getFullYear(),\n\t\t month: dateTomorrow.getMonth() + 1,\n\t\t day: dateTomorrow.getDate(),\n\t\t};\n\t\n\t\tcopy.disableUntil = {\n\t\t year: date.getFullYear() - 1,\n\t\t month: date.getMonth() + 1,\n\t\t day: date.getDate() - 1\n\t\t};\n\t\n\t\tthis.myDateRangePickerOptions = copy;\n\t\tthis.setInitialDate()\n\t\t\n\t\n\t\t\n\t\tthis.onDateRangeChanged();\n\t}\n\tsetInitialDate (){\n\t\tconst date = new Date();\n\t\tconst firstDayMonth = new Date(date.getFullYear(), date.getMonth(), 1);\n\t\tthis.modelDateRange = {\n\t\t\tbeginDate: {\n\t\t\t year: firstDayMonth.getFullYear(),\n\t\t\t month: firstDayMonth.getMonth() + 1,\n\t\t\t day: firstDayMonth.getDate(),\n\t\t\t},\n\t\t\tendDate: {\n\t\t\t year: date.getFullYear(),\n\t\t\t month: date.getMonth() + 1,\n\t\t\t day: date.getDate(),\n\t\t\t}\n\t\t };\n\t}\n\t\n\n\tgetCopyOfOptions(): IMyDrpOptions {\n\t\treturn JSON.parse(JSON.stringify(this.myDateRangePickerOptions));\n\t}\n\t\n\taddDays(date, days) {\n\t\tconst result = new Date(date);\n\t\tresult.setDate(result.getDate() + days);\n\t\treturn result;\n\t}\n\n\tonDateRangeChanged(event?: IMyDateRangeModel) {\n\t\tif (event) {\n\t\t this.modelDateRange.beginDate = event.beginDate;\n\t\t this.modelDateRange.endDate = event.endDate;\n\t\t}\n\t\n\t\tconst fromMoment = moment.utc({\n\t\t year: this.modelDateRange.beginDate.year,\n\t\t month: this.modelDateRange.beginDate.month - 1,\n\t\t date: this.modelDateRange.beginDate.day\n\t\t});\n\t\n\t\tconst toMoment = moment.utc({\n\t\t year: this.modelDateRange.endDate.year,\n\t\t month: this.modelDateRange.endDate.month - 1,\n\t\t date: this.modelDateRange.endDate.day\n\t\t});\n\t\n\t\tconst from = fromMoment.startOf('day').unix()-(24*60*60);\n\t\tconst to = toMoment.startOf('day').unix();\n\n\t\tlet dayDiff = Math.abs(fromMoment.diff(toMoment, 'days'))+1;\n\t\t\n\t\tthis.getPeriodQuality(from, to, dayDiff);\n\t}\n\n \tgetDailyQuality(){\n\t\tthis.devicesService.getDailyQuality(this.currentDevice.id,this.currentDevice.provider,this.currentDay)\n\t\t\t.subscribe(response => {\n\t\t\t\tthis.dailyQuality = response;\n\t\t\t\tconsole.log(response)\n\t\t\t\tthis.ifLoadDailyQuality = false;\n\t\t\t\t\n\t\t\t}, errors => {\n\t\t\t\tconsole.log(errors);\n\t\t\t\tthis.ifLoadDailyQuality = false;\n\t\t\t});\n\t}\n\n\tgetPeriodQuality(fromUnix: number, toUnix: number, dayDiff: number){\n\t\tif(this.ifLoadGraphQuality){\n\t\t\treturn;\n\t\t}\n\t\tthis.ifLoadGraphQuality = true;\n\n\t\tthis.devicesService.getPeriodQuality(this.currentDevice.id,this.currentDevice.provider,fromUnix,toUnix,dayDiff<=30)\n\t\t\t.subscribe(response => {\n\t \n\t \t\t\tthis.graphData = response;\n\t\t\t\tconsole.log(response)\n\t\t\t\t\n\t\t\t\tthis.ifLoadGraphQuality = false;\n\t\t\t}, errors => {\n\t\t\t\tconsole.log(errors);\n\t\t\t\tthis.ifLoadGraphQuality = false;\n\t\t\t\t\n\t\t\t});\n\t\tconsole.log(fromUnix,toUnix)\n\t}\n\n\tselectDate(type: string){\n\t\tif(this.ifLoadGraphQuality){\n\t\t\treturn;\n\t\t}\n\t\tif(type===\"week\"){\n\t\t\tconst date = new Date();\n\t\t\tconst firstDayWeek = this.getMonday(new Date()); \n\t\t\tthis.modelDateRange = {\n\t\t\t\tbeginDate: {\n\t\t\t\t year: firstDayWeek.getFullYear(),\n\t\t\t\t month: firstDayWeek.getMonth() + 1,\n\t\t\t\t day: firstDayWeek.getDate(),\n\t\t\t\t},\n\t\t\t\tendDate: {\n\t\t\t\t year: date.getFullYear(),\n\t\t\t\t month: date.getMonth() + 1,\n\t\t\t\t day: date.getDate(),\n\t\t\t\t}\n\t\t\t };\n\t\t}else if(type ===\"month\"){\n\t\t\tthis.setInitialDate()\n\t\t} else if(type ===\"year\"){\n\n\t\t\tconst date = new Date();\n\t\t\tconst firstDayWeek = this.getMonday(new Date()); \n\t\t\tthis.modelDateRange = {\n\t\t\t\tbeginDate: {\n\t\t\t\t year: firstDayWeek.getFullYear(),\n\t\t\t\t month: 1,\n\t\t\t\t day: 1,\n\t\t\t\t},\n\t\t\t\tendDate: {\n\t\t\t\t year: date.getFullYear(),\n\t\t\t\t month: date.getMonth() + 1,\n\t\t\t\t day: date.getDate(),\n\t\t\t\t}\n\t\t\t };\n\t\t\t\n\t\t}\n\t\tthis.onDateRangeChanged()\n\t}\n\n\t getMonday(d) {\n\t\td = new Date(d);\n\t\tvar day = d.getDay(),\n\t\t\tdiff = d.getDate() - day + (day == 0 ? -6:1); // adjust when day is sunday\n\t\treturn new Date(d.setDate(diff));\n\t }\n\t \n\t // Mon Nov 08 2010\n}\n\n\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/view/components/report-quality/report-quality.component.ts","module.exports = \" \\n
\\n
\\n
\\n {{track.fromFormat}}\\n - {{track.toFormat}}\\n \\n
\\n
{{track.distance}} км
\\n
\\n \\n
Время в пути:\\n {{track.travelTimeFormat.hours}} ч {{track.travelTimeFormat.minutes}} мин
\\n
Средняя скорость: {{track.averageSpeed}} км/ч
\\n
Максимальная скорость: {{track.maxSpeed}} км/ч
\\n
\\n
{{track.active ? \\\"Скрыть\\\" : \\\"Подробнее\\\"}}\\n
\\n
\\n {{track.loading ? \\\"Загрузка...\\\" : \\\"Подробнее\\\"}}
\\n
\\n
\\n \\n
\\n\\n\\n
\\n\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/view/components/report-stats-item/report-stats-item.component.html\n// module id = ./src/app/view/components/report-stats-item/report-stats-item.component.html\n// module chunks = main","module.exports = \".reports-list__item {\\n font-size: 13px;\\n line-height: 16px;\\n padding: 10px;\\n position: relative;\\n overflow: hidden; }\\n .reports-list__item:after {\\n position: absolute;\\n content: \\\"\\\";\\n height: 1px;\\n width: 600px;\\n background: #D7D7D7;\\n bottom: 0;\\n left: 0px; }\\n .reports-list__item .reports-list__item:after {\\n left: 20px; }\\n .reports-list__item--open {\\n padding-bottom: 0px; }\\n .reports-list__item .reports-list__item {\\n padding-left: 20px;\\n padding-right: 0;\\n overflow: visible; }\\n .reports-list__item b {\\n font-weight: bold;\\n color: #255B78; }\\n .reports-list__top {\\n display: -webkit-box;\\n display: -ms-flexbox;\\n display: flex;\\n -webkit-box-pack: justify;\\n -ms-flex-pack: justify;\\n justify-content: space-between;\\n -webkit-box-align: center;\\n -ms-flex-align: center;\\n align-items: center; }\\n .reports-list__text {\\n color: gray; }\\n .reports-list__bottom {\\n display: -webkit-box;\\n display: -ms-flexbox;\\n display: flex;\\n -webkit-box-pack: end;\\n -ms-flex-pack: end;\\n justify-content: flex-end; }\\n .reports-list__bottom div {\\n cursor: pointer;\\n border-bottom: 1px dotted #D7D7D7; }\\n .reports-list__bottom div:hover {\\n border-bottom-color: transparent; }\\n\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/view/components/report-stats-item/report-stats-item.component.scss\n// module id = ./src/app/view/components/report-stats-item/report-stats-item.component.scss\n// module chunks = main","import { Component, Input, EventEmitter, OnInit, Output } from '@angular/core';\nimport { Subject } from 'rxjs/Subject';\nimport 'rxjs/add/operator/takeUntil';\n\n/*Services */\nimport { DevicesService, StateService, AppService } from '@services';\n\n/*Models */\nimport { StatsTrack, Device } from '@models';\n@Component({\n\n selector: 'app-report-stats-item',\n templateUrl: './report-stats-item.component.html',\n styleUrls: ['./report-stats-item.component.scss']\n})\n\nexport class ReportStatsItemComponent implements OnInit {\n statsTrackList: Array;\n\n private ngUnsubscribe: Subject = new Subject();\n private currentDevice: Device;\n\n @Input('statsList') set statsList(statsList) {\n this.statsTrackList = statsList;\n }\n @Input() isMainComponent;\n\n @Output() updateList: EventEmitter> = new EventEmitter>();\n @Output() updateListNested: EventEmitter> = new EventEmitter>();\n constructor(\n private devicesService: DevicesService,\n private stateService: StateService,\n private appService: AppService) { }\n\n ngOnInit() {\n this.stateService.currentDeviceObservable\n .takeUntil(this.ngUnsubscribe)\n .subscribe(device => {\n this.currentDevice = device;\n });\n }\n\n\n getDetailStatsEvent(statTrack: StatsTrack) {\n statTrack.loading = true;\n this.devicesService.getStatsTrack(this.currentDevice.id, statTrack.fromUnix, statTrack.toUnix)\n .subscribe(response => {\n statTrack.loading = false;\n this.appService.parseDateReportsStat(response);\n statTrack.active = true;\n statTrack.items = response;\n if (this.isMainComponent) {\n /*Проверяем, если это родительский елемент - посылаем на вывод в график, если нет - сообщаем родителю что обновились данные */\n this.updateList.emit(this.statsTrackList);\n } else {\n this.updateListNested.emit(this.statsTrackList);\n }\n }, errors => {\n statTrack.loading = false;\n console.log(errors);\n });\n }\n updateListNestedEvent() {\n if (this.isMainComponent) {\n /*Проверяем, если это родительский елемент - посылаем на вывод в график, если нет - сообщаем родителю что обновились данные */\n this.updateList.emit(this.statsTrackList);\n }\n }\n}\n\n\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/view/components/report-stats-item/report-stats-item.component.ts","module.exports = \"\\n
\\n \\n \\\"car-status\\\"\\n \\n
\\n
\\n \\n {{message}}, \\n \\n
\\n\\n\\n\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/view/components/state-info/state-info.component.html\n// module id = ./src/app/view/components/state-info/state-info.component.html\n// module chunks = main","import { Component, OnDestroy } from '@angular/core';\nimport { Subject } from 'rxjs/Subject';\nimport 'rxjs/add/operator/takeUntil';\n\n/*Services */\nimport { StateService } from '@services/state.service';\n\n/*Models */\nimport { DeviceState } from '@models/device-state';\n\n\n@Component({\n // tslint:disable-next-line:component-selector\n selector: 'state-info',\n templateUrl: './state-info.component.html'\n})\nexport class StateInfoComponent implements OnDestroy {\n state: DeviceState;\n public stateInfo = {\n message: [],\n icon: []\n };\n private ngUnsubscribe: Subject = new Subject();\n\n constructor(private stateService: StateService) {\n\n this.stateService.stateObservable\n .takeUntil(this.ngUnsubscribe)\n .subscribe(state => {\n this.state = state;\n this.setStateObject();\n });\n }\n\n setStateObject() {\n let prior = 0;\n let currentPrior = 0;\n this.stateInfo = {\n message: [],\n icon: []\n };\n /*prior 10 */\n currentPrior = 10;\n if (this.state.mainStates.guard) {\n if (prior < currentPrior) {\n prior = currentPrior;\n this.stateInfo.message = [];\n this.stateInfo.icon = [];\n }\n if (this.stateInfo.message.indexOf('Охрана') < 0) {\n this.stateInfo.message.push('Охрана');\n }\n\n if (this.stateInfo.icon.indexOf('blue_lock') < 0) {\n this.stateInfo.icon.push('blue_lock');\n }\n\n }\n /*end prior 10 */\n if (this.state.mainStates.alarm) {\n\n this.stateInfo.message = [];\n this.stateInfo.icon = [];\n this.stateInfo.icon.push('red_lock');\n this.stateInfo.message.push('Тревога');\n\n }\n /*prior 20 */\n currentPrior = 20;\n if (this.state.mainStates.activeGuard) {\n if (prior < currentPrior) {\n prior = currentPrior;\n this.stateInfo.message = [];\n this.stateInfo.icon = [];\n }\n if (this.stateInfo.message.indexOf('Активная охрана') < 0) {\n this.stateInfo.message.push('Активная охрана');\n }\n\n if (this.stateInfo.icon.indexOf('secure_on') < 0) {\n this.stateInfo.icon.push('secure_on');\n }\n }\n /*end prior 20 */\n\n /*prior 30 */\n currentPrior = 30;\n\n if (this.state.mainStates.valet) {\n if (prior < currentPrior) {\n prior = currentPrior;\n this.stateInfo.message = [];\n this.stateInfo.icon = [];\n }\n\n if (this.stateInfo.message.indexOf('Режим Автосервис') < 0) {\n this.stateInfo.message.push('Режим Автосервис');\n }\n if (this.stateInfo.icon.indexOf('valet') < 0) {\n this.stateInfo.icon.push('valet');\n }\n }\n if (this.state.mainStates.ign) {\n\n if (prior < currentPrior) {\n prior = currentPrior;\n this.stateInfo.message = [];\n this.stateInfo.icon = [];\n }\n if (this.stateInfo.message.indexOf('Зажигание включено') < 0) {\n this.stateInfo.message.push('Зажигание включено');\n }\n\n if (this.stateInfo.icon.indexOf('blue_key') < 0 && !this.state.mainStates.autostart) {\n this.stateInfo.icon.push('blue_key');\n }\n\n }\n\n\n /*end prior 30 */\n /*prior 35 */\n currentPrior = 40;\n if (this.state.mainStates.autostart) {\n\n if (prior < currentPrior) {\n prior = currentPrior;\n this.stateInfo.message = [];\n this.stateInfo.icon = [];\n }\n if (this.stateInfo.message.indexOf('Автозапуск') < 0) {\n this.stateInfo.message.push('Автозапуск');\n }\n\n if (this.stateInfo.icon.indexOf('blue_key') < 0) {\n this.stateInfo.icon.push('blue_key');\n }\n if (this.stateInfo.icon.indexOf('blue_lock') < 0) {\n this.stateInfo.icon.push('blue_lock');\n }\n }\n /*end prior 35 */\n\n /*prior 40 */\n currentPrior = 40;\n\n\n if (this.state.alarmStates.shockLow) {\n\n if (prior < currentPrior) {\n prior = currentPrior;\n this.stateInfo.message = [];\n this.stateInfo.icon = [];\n }\n\n this.stateInfo.message.push('Слабый удар');\n\n if (this.stateInfo.icon.indexOf('blue_lock') < 0) {\n this.stateInfo.icon.push('blue_lock');\n }\n if (this.stateInfo.icon.indexOf('shock') < 0) {\n this.stateInfo.icon.push('shock');\n }\n }\n\n if (this.state.alarmStates.shockHigh) {\n if (prior < currentPrior) {\n prior = currentPrior;\n this.stateInfo.message = [];\n this.stateInfo.icon = [];\n }\n\n this.stateInfo.message.push('Сильный удар');\n\n if (this.stateInfo.icon.indexOf('blue_lock') < 0) {\n this.stateInfo.icon.push('blue_lock');\n }\n if (this.stateInfo.icon.indexOf('shock') < 0) {\n this.stateInfo.icon.push('shock');\n }\n }\n\n\n if (this.state.alarmStates.tilt) {\n if (prior < currentPrior) {\n prior = currentPrior;\n this.stateInfo.message = [];\n this.stateInfo.icon = [];\n }\n\n this.stateInfo.message.push('Наклон');\n\n if (this.stateInfo.icon.indexOf('blue_lock') < 0) {\n this.stateInfo.icon.push('blue_lock');\n }\n if (this.stateInfo.icon.indexOf('slope') < 0) {\n this.stateInfo.icon.push('slope');\n }\n }\n\n if (this.state.alarmStates.ign) {\n if (prior < currentPrior) {\n prior = currentPrior;\n this.stateInfo.message = [];\n this.stateInfo.icon = [];\n }\n\n this.stateInfo.message.push('Зажигание');\n\n if (this.stateInfo.icon.indexOf('blue_lock') < 0) {\n this.stateInfo.icon.push('blue_lock');\n }\n if (this.stateInfo.icon.indexOf('red_key') < 0) {\n this.stateInfo.icon.push('red_key');\n }\n }\n\n if (this.state.alarmStates.hBrake || this.state.alarmStates.pBrake) {\n if (prior < currentPrior) {\n prior = currentPrior;\n this.stateInfo.message = [];\n this.stateInfo.icon = [];\n }\n\n this.stateInfo.message.push('Тормоз');\n if (this.stateInfo.icon.indexOf('blue_lock') < 0) {\n this.stateInfo.icon.push('blue_lock');\n }\n if (this.stateInfo.icon.indexOf('brake') < 0) {\n this.stateInfo.icon.push('brake');\n }\n }\n if (this.state.alarmStates.move) {\n if (prior < currentPrior) {\n prior = currentPrior;\n this.stateInfo.message = [];\n this.stateInfo.icon = [];\n }\n this.stateInfo.message.push('Движение');\n\n if (this.stateInfo.icon.indexOf('blue_lock') < 0) {\n this.stateInfo.icon.push('blue_lock');\n }\n if (this.stateInfo.icon.indexOf('slope') < 0) {\n this.stateInfo.icon.push('slope');\n }\n }\n\n\n if (this.state.alarmStates.hood) {\n\n if (prior < currentPrior) {\n prior = currentPrior;\n this.stateInfo.message = [];\n this.stateInfo.icon = [];\n }\n\n if (this.stateInfo.message.indexOf('Охрана') < 0) {\n this.stateInfo.message.push('Охрана');\n }\n if (this.stateInfo.icon.indexOf('blue_lock') >= 0) {\n this.stateInfo.icon.splice(this.stateInfo.icon.indexOf('blue_lock'), 1);\n }\n if (this.stateInfo.icon.indexOf('red_lock') < 0) {\n this.stateInfo.icon.push('red_lock');\n }\n }\n if (this.state.alarmStates.trunk) {\n\n if (prior < currentPrior) {\n prior = currentPrior;\n this.stateInfo.message = [];\n this.stateInfo.icon = [];\n }\n\n if (this.stateInfo.message.indexOf('Охрана') < 0) {\n this.stateInfo.message.push('Охрана');\n }\n if (this.stateInfo.icon.indexOf('blue_lock') >= 0) {\n this.stateInfo.icon.splice(this.stateInfo.icon.indexOf('blue_lock'), 1);\n }\n if (this.stateInfo.icon.indexOf('red_lock') < 0) {\n this.stateInfo.icon.push('red_lock');\n }\n }\n if (\n this.state.alarmStates.doorBackLeft ||\n this.state.alarmStates.doorBackRight ||\n this.state.alarmStates.doorFrontLeft ||\n this.state.alarmStates.doorFrontRight) {\n\n if (prior < currentPrior) {\n prior = currentPrior;\n this.stateInfo.message = [];\n this.stateInfo.icon = [];\n }\n if (this.stateInfo.message.indexOf('Охрана') < 0) {\n this.stateInfo.message.push('Охрана');\n }\n if (this.stateInfo.icon.indexOf('blue_lock') >= 0) {\n this.stateInfo.icon.splice(this.stateInfo.icon.indexOf('blue_lock'), 1);\n }\n if (this.stateInfo.icon.indexOf('red_lock') < 0) {\n this.stateInfo.icon.push('red_lock');\n }\n\n }\n if (this.state.alarmStates.hijack) {\n\n if (prior < currentPrior) {\n prior = currentPrior;\n this.stateInfo.message = [];\n this.stateInfo.icon = [];\n }\n\n if (this.stateInfo.message.indexOf('Ограбление') < 0) {\n this.stateInfo.message.push('Ограбление');\n }\n if (this.stateInfo.icon.indexOf('blue_lock') >= 0) {\n this.stateInfo.icon.splice(this.stateInfo.icon.indexOf('blue_lock'), 1);\n }\n if (this.stateInfo.icon.indexOf('red_lock') < 0) {\n this.stateInfo.icon.push('red_lock');\n }\n }\n if ((this.state.alarmStates.shockLow ||\n this.state.alarmStates.shockHigh ||\n this.state.alarmStates.tilt ||\n this.state.alarmStates.ign ||\n this.state.alarmStates.hBrake ||\n this.state.alarmStates.pBrake ||\n this.state.alarmStates.move) && this.stateInfo.message.indexOf('Охрана') > 0) {\n this.stateInfo.message.splice(this.stateInfo.message.indexOf('Охрана'), 1);\n }\n\n\n /*end prior 40 */\n }\n\n ngOnDestroy() {\n this.ngUnsubscribe.next();\n this.ngUnsubscribe.complete();\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/view/components/state-info/state-info.component.ts","module.exports = \"
\\n
\\n {{curentTariff.tariff}}\\n
\\n +{{curentTariff.number}}\\n
\\n
Оплачен до {{curentTariff.dateFormat}}
\\n
Продлить
\\n
\\n\\n\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/view/components/tariffs-block/tariffs-block.component.html\n// module id = ./src/app/view/components/tariffs-block/tariffs-block.component.html\n// module chunks = main","module.exports = \".tariffs-block {\\n display: -webkit-box;\\n display: -ms-flexbox;\\n display: flex;\\n -webkit-box-align: center;\\n -ms-flex-align: center;\\n align-items: center;\\n -webkit-box-pack: justify;\\n -ms-flex-pack: justify;\\n justify-content: space-between;\\n padding: 7px 10px; }\\n .tariffs-block__name {\\n font-weight: bold;\\n color: #0081C9; }\\n .tariffs-block__name span {\\n color: #444;\\n text-align: center;\\n display: block; }\\n .tariffs-block__date {\\n font-weight: bold; }\\n\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/view/components/tariffs-block/tariffs-block.component.scss\n// module id = ./src/app/view/components/tariffs-block/tariffs-block.component.scss\n// module chunks = main","import { Component, OnInit, OnDestroy, ViewChild } from '@angular/core';\nimport { Subject } from 'rxjs/Subject';\nimport 'rxjs/add/operator/takeUntil';\n\n/*Services */\nimport { TariffService } from '@services/tariff.services';\nimport { CachedDataService } from '@services/data/cached-data.service';\nimport { StateService } from '@services/state.service';\nimport { AppService } from '@services/app.service';\n\n/*Models */\nimport { Device } from '@models/device';\nimport { Tariff } from '@models/tariff';\n\n/*Plugins */\nimport * as moment from 'moment';\n\n@Component({\n // tslint:disable-next-line:component-selector\n selector: 'tariffs-block',\n templateUrl: './tariffs-block.component.html',\n styleUrls: ['./tariffs-block.component.scss']\n})\n\nexport class TariffsBlockComponent implements OnDestroy {\n @ViewChild('tariffModal') tariffModal;\n private ngUnsubscribe: Subject = new Subject();\n public currentDevice: Device;\n curentUser;\n curentPhoneUser;\n tariffs = [];\n curentTariff: Tariff;\n paymentUrl: string;\n\n constructor(\n private tariffService: TariffService,\n private cachedDataService: CachedDataService,\n private stateService: StateService,\n private appService: AppService\n ) {\n this.currentDevice = this.stateService.currentDevice;\n this.curentUser = this.cachedDataService.getCurrentUser();\n this.stateService.currentDeviceObservable\n .takeUntil(this.ngUnsubscribe)\n .subscribe(device => {\n device = this.appService.filterHiddepPhoneDevice(device);\n this.currentDevice = device;\n this.tariffs = [];\n this.curentTariff = null;\n this.curentPhoneUser = null;\n this.paymentUrl = null;\n this.getAllTariffs();\n });\n }\n\n getAllTariffs() {\n this.tariffService.getInfoSim(this.curentUser.id)\n .subscribe(response => {\n if (response.data && response.data.length) {\n this.tariffs = response.data;\n this.getTariff();\n }\n },\n error => {\n console.log(error);\n }\n );\n }\n\n getTariff() {\n this.curentTariff = this.tariffService.getTariff(this.tariffs, this.currentDevice, this.curentUser.id);\n }\n\n openTariffModal(tariff) {\n this.tariffModal.open([tariff]);\n }\n\n ngOnDestroy() {\n this.ngUnsubscribe.next();\n this.ngUnsubscribe.complete();\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/view/components/tariffs-block/tariffs-block.component.ts","module.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// WEBPACK FOOTER\n// ./src/app/view/components/timer-add/timer-add.component.html\n// module id = ./src/app/view/components/timer-add/timer-add.component.html\n// module chunks = main","import { Component, EventEmitter, Output, Input, OnInit } from '@angular/core';\n/*Service */\nimport { AppService } from '@services';\n/*Config*/\nimport { CONFIG } from '../../../config';\n\n\n@Component({\n selector: 'timer-add',\n templateUrl: './timer-add.component.html'\n})\nexport class TimerAddComponent implements OnInit {\n @Output('onAddTimer') onAddTimer: EventEmitter = new EventEmitter();\n @Input() typeTimer;\n @Input() ifCurrentPandora;\n\n constructor(\n private appService: AppService\n ) { }\n isShow = false;\n currentTime;\n dayOfWeek = 0;\n period;\n periodTimer = CONFIG.periodTimer;\n weekTimer = CONFIG.weekTimer;\n ngOnInit() {\n if (this.ifCurrentPandora) {\n this.periodTimer = CONFIG.periodTimerPandora;\n }\n\n }\n\n getCurrentTime() {\n const date = new Date();\n let hours = date.getHours().toString();\n let minutes = date.getMinutes().toString();\n if (hours.length === 1) {\n hours = '0' + hours;\n }\n if (minutes.length === 1) {\n minutes = '0' + minutes;\n }\n this.currentTime = hours + ':' + minutes;\n }\n show() {\n this.getCurrentTime();\n this.isShow = true;\n this.period = this.periodTimer[0].value;\n }\n\n add() {\n const userDateTimeOffset = this.appService.userTimezoneOffset();\n let hours = parseInt(this.currentTime.split(':')[0]);\n const minutes = parseInt(this.currentTime.split(':')[1]);\n if (userDateTimeOffset < 0) {\n hours = hours + userDateTimeOffset;\n } else {\n hours = hours - userDateTimeOffset;\n }\n\n if (hours < 0) {\n hours = hours + 24;\n }\n this.hide();\n\n const body = {\n 'dayOfWeek': this.dayOfWeek,\n 'hours': hours,\n 'minutes': minutes,\n 'period': this.period,\n 'type': this.typeTimer\n };\n this.onAddTimer.emit(body);\n }\n hide() {\n this.isShow = false;\n }\n selectDay(event, value) {\n this.dayOfWeek = value;\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/view/components/timer-add/timer-add.component.ts","module.exports = \"
\\n \\n\\n\\n\\n \\n \\n \\n \\n
\\n {{timer.time }}\\n \\n
\\n {{getPeriodText(timer.period)}}\\n
\\n
\\n {{day.text}} \\n
\\n
\\n \\n
\\n
\\n\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/view/components/timers-list/timers-list.component.html\n// module id = ./src/app/view/components/timers-list/timers-list.component.html\n// module chunks = main","import { Component, Input, EventEmitter, Output, OnInit } from '@angular/core';\n/*Service*/\nimport { AppService } from '@services';\n\n/*Config*/\nimport { CONFIG } from '../../../config';\ndeclare var swal: any;\n@Component({\n selector: 'timers-list',\n templateUrl: './timers-list.component.html'\n})\nexport class TimersListComponent implements OnInit {\n periodTimer = CONFIG.periodTimer;\n weekTimer = CONFIG.weekTimer;\n\n @Output('onDeleteTimer') onDeleteTimer: EventEmitter = new EventEmitter();\n _timersList;\n @Input('timersList') set timersList(value) {\n this._timersList = value;\n this.calcTime();\n\n }\n constructor(private appService: AppService) { }\n ngOnInit() {\n this.calcTime();\n }\n calcTime() {\n const userDateTimeOffset = this.appService.userTimezoneOffset();\n this._timersList.map(timer => {\n let hours = timer.hours + userDateTimeOffset;\n if (hours >= 24) {\n hours = hours - 24;\n }\n hours = hours.toString();\n if (hours.length === 1) {\n hours = '0' + hours;\n }\n let minutes = timer.minutes.toString();\n if (minutes.length === 1) {\n minutes = '0' + minutes;\n }\n timer['time'] = hours + ':' + minutes;\n });\n }\n getPeriodText(value) {\n return this.periodTimer.filter(period => period.value === value)[0].text;\n }\n removeTimer(timer, index) {\n swal({\n text: 'Удалить таймер?',\n type: 'question',\n showCancelButton: true,\n confirmButtonColor: '#23518d',\n cancelButtonColor: '#d33',\n confirmButtonText: 'Удалить',\n cancelButtonText: 'Отмена'\n }).then((result) => {\n if (result.value) {\n this._timersList.splice(index, 1);\n this.onDeleteTimer.emit(this._timersList);\n }\n });\n }\n}\n\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/view/components/timers-list/timers-list.component.ts","module.exports = \"\\n\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/view/components/username-field/username-field.component.html\n// module id = ./src/app/view/components/username-field/username-field.component.html\n// module chunks = main","import { Component, OnInit, EventEmitter, Output, Input } from '@angular/core';\nimport { regexValidators } from '../../../validator';\n\n@Component({\n selector: 'app-username-field',\n templateUrl: './username-field.component.html'\n})\nexport class UsernameFieldComponent implements OnInit {\n maskSettings;\n usernameMaskSettings = {\n mask: regexValidators.phone,\n guide: true,\n showMask: false\n };\n usernameModel = null;\n firstBlurInput = false;\n isDisabledField = false;\n\n @Output() changeValue = new EventEmitter();\n @Output() keyUpField = new EventEmitter();\n @Input() placeholder;\n @Input() classList;\n @Input('disabled') set disabled(disabled) {\n this.isDisabledField = disabled;\n }\n @Input() initialValue;\n\n\n ngOnInit() {\n this.maskSettings = this.usernameMaskSettings;\n if (this.initialValue) {\n if (this.initialValue.charAt(0) === '+') {\n this.initialValue = this.initialValue.slice(1);\n }\n\n\n if (this.initialValue.charAt(0) === '7') {\n this.initialValue = this.initialValue.slice(1);\n } else {\n this.initialValue = '+' + this.initialValue;\n this.maskSettings = { mask: false };\n }\n\n this.usernameModel = this.initialValue;\n }\n\n }\n\n onKeyUpMask() {\n // this.errorMessage = '';\n if (!this.usernameModel || !this.usernameModel.length) {\n this.maskSettings = { mask: false };\n setTimeout(() => {\n this.usernameModel = '+';\n });\n } else if (this.usernameModel === '+7') {\n this.maskSettings = this.usernameMaskSettings;\n }\n this.changeValue.emit(this.usernameModel);\n }\n\n onBlurMask() {\n if (this.maskSettings && this.maskSettings.mask) {\n if (this.usernameModel && (this.usernameModel.indexOf('_') >= 0 || this.usernameModel.length <= 2)) {\n setTimeout(() => {\n this.usernameModel = null;\n });\n }\n }\n this.changeValue.emit(this.usernameModel);\n }\n\n onFocusMask() {\n let timer;\n clearTimeout(timer);\n timer = setTimeout(() => {\n if (this.maskSettings && this.maskSettings.mask && (this.usernameModel === '' || this.usernameModel === null)) {\n if (!this.firstBlurInput && this.ifAutofill()) {\n this.firstBlurInput = true;\n } else {\n this.usernameModel = ' ';\n }\n }\n });\n }\n\n ifAutofill() {\n const style = window.getComputedStyle(document.getElementsByClassName('username-field-js')[0]);\n if (style.getPropertyValue('column-fill') === 'auto') {\n return true;\n } else {\n return false;\n }\n }\n\n onKeyUpField(event: any) {\n this.keyUpField.emit(event);\n this.changeValue.emit(this.usernameModel);\n }\n}\n\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/view/components/username-field/username-field.component.ts","module.exports = \"
\\n
\\n
\\n\\n \\n
\\n\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/view/components/video-background/video-background.component.html\n// module id = ./src/app/view/components/video-background/video-background.component.html\n// module chunks = main","module.exports = \".video-background {\\n position: fixed;\\n top: 0;\\n right: 0;\\n bottom: 0;\\n left: 0;\\n z-index: 1; }\\n .video-background__pattern {\\n position: absolute;\\n z-index: 2;\\n width: 100%;\\n height: 100%;\\n top: 0;\\n left: 0;\\n opacity: 0;\\n background: url(/assets/images/pttrn.png) 0 0 repeat;\\n -webkit-box-shadow: inset 0 100px 200px -50px #000, inset 0 -100px 200px -50px #000;\\n box-shadow: inset 0 100px 200px -50px #000, inset 0 -100px 200px -50px #000;\\n -webkit-transition: all 0.8s;\\n transition: all 0.8s; }\\n .video-background__pattern.active {\\n opacity: 0.8; }\\n .video-background__placeholder {\\n position: absolute;\\n top: 0;\\n left: 0;\\n width: 100%;\\n height: 100%;\\n pointer-events: none;\\n z-index: 1;\\n -webkit-transition: all 0.8s;\\n transition: all 0.8s;\\n background: url(/assets/images/bg-auth.jpg) center center/cover no-repeat fixed; }\\n .video-background__placeholder.active {\\n opacity: 0; }\\n .video-foreground,\\n.video-background iframe {\\n position: absolute;\\n top: 0;\\n left: 0;\\n width: 100%;\\n height: 100%;\\n pointer-events: none; }\\n @media (min-aspect-ratio: 16 / 9) {\\n .video-foreground {\\n height: 300%;\\n top: -100%; } }\\n @media (max-aspect-ratio: 16 / 9) {\\n .video-foreground {\\n width: 300%;\\n left: -100%; } }\\n\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/view/components/video-background/video-background.component.scss\n// module id = ./src/app/view/components/video-background/video-background.component.scss\n// module chunks = main","import { Component, AfterViewInit, OnInit, ViewEncapsulation } from '@angular/core';\n\n@Component({\n selector: 'app-video-background',\n templateUrl: './video-background.component.html',\n styleUrls: ['./video-background.component.scss'],\n encapsulation: ViewEncapsulation.None\n})\n\nexport class VideoBackgroundComponent {\n startTime = this.randomIntFromInterval(0, 173);\n player: YT.Player;\n id = 'dPRyvBtj76U';\n showPlayer = false;\n playerVars = {\n controls: 0,\n showinfo: 0,\n rel: 0,\n autoplay: 1,\n mute: 1,\n volume: 0,\n loop: 1,\n start: this.startTime,\n t: this.startTime\n };\n\n onStateChange(event) {\n if (event.data === 1) {\n this.showPlayer = true;\n }\n if (event.data === YT.PlayerState.ENDED) {\n this.player.playVideo();\n }\n }\n\n savePlayer(player) {\n this.player = player;\n }\n\n randomIntFromInterval(min, max) {\n return Math.floor(Math.random() * (max - min + 1) + min);\n }\n\n}\n\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/view/components/video-background/video-background.component.ts","module.exports = \"
\\n
\\n
\\n
    \\n
  • События
  • \\n
\\n
\\n\\n
\\n
\\n
\\n \\n \\n
\\n\\n
\\n \\n {{ filter.name}}\\n \\n
\\n\\n
\\n
Нет данных за выбранную дату, попробуйте выбрать другую дату.

\\n
\\n \\n
\\n\\n
\\n 1\\\">\\n \\n
\\n \\n
{{event.deviceTime * 1000 | date:\\\"HH:mm:ss\\\"}}
\\n
\\n
{{event.provider.message}}
\\n
\\n
\\n \\n
\\n
\\n
\\n
1\\\">\\n

\\n Результаты с\\n {{pager.currentPage}} по {{ pager.pages.length }}\\n

\\n \\n \\n
\\n
\\n
\\n\\n\\n
\\n
\\n \\n\\n\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/view/events/events.component.html\n// module id = ./src/app/view/events/events.component.html\n// module chunks = main","import { Component, OnInit, ViewChild, OnDestroy } from '@angular/core';\nimport { Subject } from 'rxjs/Subject';\nimport 'rxjs/add/operator/takeUntil';\n\n/*Services */\nimport { DevicesService, MappingService, ScreenService, StateService, AppService } from '@services';\n\n/*Models */\nimport { Device, DeviceEvent } from '@models';\n\nimport { Pager } from '../../shared/pager';\n\n/*Plugins */\nimport { OwlCarousel } from 'ngx-owl-carousel';\nimport { IMyDpOptions } from 'mydatepicker';\nimport * as moment from 'moment';\n\n/*Config */\nimport { CONFIG } from '../../config';\n\n\ndeclare var $: any;\n\n@Component({\n selector: 'app-events',\n templateUrl: './events.component.html'\n})\n\nexport class EventsComponent implements OnInit, OnDestroy {\n @ViewChild('eventsSlider') eventsSlider: OwlCarousel;\n private ngUnsubscribe: Subject = new Subject();\n public events: DeviceEvent[];\n public filteredEvents = [];\n public pager: Pager;\n public selectedDate: any;\n public isLoadData = false;\n public myDatePickerOptions: IMyDpOptions = {\n dateFormat: 'dd.mm.yyyy',\n monthSelector: true,\n editableDateField: false,\n showClearDateBtn: false,\n openSelectorOnInputClick: true,\n showTodayBtn: false,\n yearSelector: false,\n disableSince: { year: 0, month: 0, day: 0 },\n dayLabels: CONFIG.dayLabels,\n monthLabels: CONFIG.monthLabels\n };\n\n public filters = [{ isActive: true, name: 'Действия', value: 'userAction' },\n { isActive: true, name: 'Контакты', value: 'contactZone' },\n { isActive: false, name: 'Система', value: 'system' },\n { isActive: true, name: 'Статус', value: 'status' }];\n public currentDevice: Device;\n\n\n constructor(\n private devicesService: DevicesService,\n public screenService: ScreenService,\n private stateService: StateService,\n private mappingService: MappingService,\n private appService: AppService) {\n this.pager = new Pager(this.pageSizeCalculator(23));\n this.currentDevice = this.stateService.currentDevice;\n if (this.currentDevice) {\n this.init();\n }\n }\n\n pageSizeCalculator(lineHeight) {\n const topOffset = $('.events-result').offset();\n let height = window.innerHeight;\n height -= topOffset ? topOffset.top + 25 : 236; // top\n height -= 42; // bottom\n\n let size = Math.floor(height / lineHeight);\n if (size < 1) {\n size = 1;\n }\n\n $('.events-result-wrapper').height(size * lineHeight);\n return size;\n }\n\n ngOnInit() {\n\n\n\n this.stateService.currentDeviceObservable\n .takeUntil(this.ngUnsubscribe)\n .subscribe(device => {\n this.currentDevice = device;\n if (this.currentDevice) {\n this.init();\n }\n\n });\n this.screenService.isDataLoadingObservable\n .takeUntil(this.ngUnsubscribe)\n .subscribe(value => {\n this.isLoadData = value;\n });\n this.screenService.triggerStateObservable\n .takeUntil(this.ngUnsubscribe)\n .subscribe(value => {\n setTimeout(() => {\n this.pageSizeCalculator(23);\n });\n\n });\n this.screenService.isStateHidden = true;\n }\n private init() {\n this.screenService.isDataLoadingSubject.next(true);\n this.initDate();\n this.onDateChanged(null);\n }\n ngOnDestroy() {\n this.screenService.isDataLoadingSubject.next(true);\n this.stateService.autoUpdatePositionSubject.next(true);\n this.ngUnsubscribe.next();\n this.ngUnsubscribe.complete();\n }\n private initDate() {\n\n const currentMoment = moment();\n this.selectedDate = { date: { year: currentMoment.year(), month: currentMoment.month() + 1, day: currentMoment.date() } };\n\n const today = new Date(currentMoment.year(), currentMoment.month(), currentMoment.date());\n const tomorrow = new Date(new Date().setHours(0, 0, 0, 0));\n\n tomorrow.setDate(today.getDate() + 1);\n\n const copy = this.getCopyOfOptions();\n copy.disableSince = {\n year: tomorrow.getFullYear(),\n month: tomorrow.getMonth() + 1,\n day: tomorrow.getDate(),\n };\n this.myDatePickerOptions = copy;\n }\n\n\n getDetails(event: DeviceEvent) {\n this.stateService.autoUpdatePositionSubject.next(false);\n\n if (!event.coordinate && !event.provider.eventId) {\n return false;\n }\n if (event.coordinate) {\n this.showEventDetails(event);\n return;\n }\n\n this.devicesService.getEventDetails(this.currentDevice.id, event.provider.eventId, event.deviceTime)\n .subscribe((eventDetails: DeviceEvent) => {\n this.showEventDetails(eventDetails);\n });\n }\n\n showEventDetails(eventDetails: DeviceEvent) {\n if(eventDetails.coordinate){\n if(eventDetails.coordinate.latitude){\n eventDetails.coordinate.latitude = parseFloat(eventDetails.coordinate.latitude.toString().replace(\",\",\".\"))\n }\n if(eventDetails.coordinate.longitude){\n eventDetails.coordinate.longitude = parseFloat(eventDetails.coordinate.longitude.toString().replace(\",\",\".\"))\n }\n }\n console.log(eventDetails)\n\n this.mappingService.getAddress(eventDetails.coordinate.latitude, eventDetails.coordinate.longitude, (result) => {\n let content = eventDetails.provider.message;\n content += ' адрес: ' + result.length ? result[0].formatted_address : '';\n this.screenService.setMarker(\n eventDetails.coordinate.latitude,\n eventDetails.coordinate.longitude,\n content,\n eventDetails.coordinate.precision);\n this.screenService.setCenter(eventDetails.coordinate.latitude, eventDetails.coordinate.longitude);\n });\n }\n\n onDateChanged(dateChangedEvent) {\n\n this.screenService.isDataLoadingSubject.next(true);\n\n if (dateChangedEvent) {\n this.selectedDate = dateChangedEvent;\n }\n const userDateTimeOffset = this.appService.userTimezoneOffset();\n const date = this.selectedDate.date;\n const fromMoment = moment.utc({ year: date.year, month: date.month - 1, date: date.day });\n const toMoment = moment.utc({ year: date.year, month: date.month - 1, date: date.day });\n\n\n const from = fromMoment.startOf('day').subtract(userDateTimeOffset, 'h').unix();\n const to = toMoment.endOf('day').subtract(userDateTimeOffset, 'h').unix();\n\n this.devicesService.getEvents(this.currentDevice.id, from, to).subscribe((eventsResult: DeviceEvent[]) => {\n\n this.screenService.isDataLoadingSubject.next(false);\n // eventsResult.sort((a, b) => a.time - b.time);\n\n\n for (const event of eventsResult) {\n event.icon = this.getIcon(event);\n }\n\n this.events = eventsResult;\n this.showEvents();\n });\n }\n\n updateFilter(filter) {\n filter.isActive = !filter.isActive;\n this.showEvents();\n }\n\n showEvents() {\n this.filteredEvents = [];\n this.events.map(event => {\n if (event.level) {\n if (event.group && this.filters.some(filter => filter.value.toLowerCase() === event.group.toLowerCase())) {\n if (this.filters.some(filter => filter.isActive && filter.value.toLowerCase() === event.group.toLowerCase())) {\n this.filteredEvents.push(event);\n }\n } else {\n this.filteredEvents.push(event);\n }\n }\n\n });\n this.filteredEvents = this.sortArrayDown(this.filteredEvents);\n\n this.pager.toFirstSlide(this.eventsSlider);\n this.pager.setData(this.filteredEvents);\n\n this.screenService.isDataLoadingSubject.next(false);\n\n }\n sortArrayDown(array) {\n return array.sort((obj1, obj2) => {\n if (obj1.deviceTime > obj2.deviceTime) {\n return -1;\n }\n\n if (obj1.deviceTime < obj2.deviceTime) {\n return 1;\n }\n\n return 0;\n });\n }\n getIcon(event: DeviceEvent) {\n const mapping = this.mappingService.getEventMapping(event.id);\n if (mapping) {\n return mapping.icon;\n }\n return 'gprs_on';\n }\n\n getCopyOfOptions(): IMyDpOptions {\n return JSON.parse(JSON.stringify(this.myDatePickerOptions));\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/view/events/events.component.ts","module.exports = \"
Удалить геозону
\\n \\n
Кликните и тащите, чтобы отметить прямоугольную область
\\n
\\n
\\n
\\n
    \\n
  • Геозоны
  • \\n
\\n
\\n\\n
\\n
\\n \\n
{{btnAddSubmit.text}}
\\n
Отменить
\\n \\n
\\n
\\n
Введите название геозоны
\\n
Выделите геозону на карте
\\n
\\n
\\n
\\n
\\n
\\n
{{geozone.name}}
\\n
\\n \\n \\n
\\n \\n \\n \\n
\\n
Введите название геозоны
\\n
Выделите геозону на карте
\\n
\\n
{{btnUpdateSubmit.text}}
\\n
Закрыть
\\n
{{btnDeleteSubmit.text}}
\\n \\n
\\n \\n
\\n \\n
\\n
\\n
\\n
Геозоны не найдены

\\n
\\n
\\n
Загрузка списка геозон...

\\n
\\n
\\n \\n
\\n
\\n
\\n\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/view/geozone/geozone.component.html\n// module id = ./src/app/view/geozone/geozone.component.html\n// module chunks = main","module.exports = \".geozone-list {\\n margin-bottom: 20px;\\n margin-top: 20px; }\\n .geozone-list__item {\\n border-top: 1px solid #E4E4E4;\\n padding: 2px 5px; }\\n .geozone-list__item:last-child {\\n border-bottom: 1px solid #E4E4E4; }\\n .geozone-list__item__trigger {\\n cursor: pointer; }\\n .geozone-list__form {\\n margin: 10px 0; }\\n .geozone-list__form__checkbox-container {\\n margin-top: 10px;\\n display: -webkit-box;\\n display: -ms-flexbox;\\n display: flex; }\\n .geozone-list__form__checkbox-container > * {\\n min-width: 50%; }\\n .geozone-list__form__btn-container {\\n display: -webkit-box;\\n display: -ms-flexbox;\\n display: flex;\\n -webkit-box-pack: end;\\n -ms-flex-pack: end;\\n justify-content: flex-end; }\\n .geozone-list__form__btn-container > *:not(:last-child) {\\n margin-right: 10px; }\\n .geozone-add-from {\\n display: -webkit-box;\\n display: -ms-flexbox;\\n display: flex;\\n -webkit-box-pack: center;\\n -ms-flex-pack: center;\\n justify-content: center; }\\n .geozone-add-from.active {\\n -webkit-box-pack: justify;\\n -ms-flex-pack: justify;\\n justify-content: space-between; }\\n .geozone-map-info {\\n position: fixed;\\n left: 404px;\\n top: 58px;\\n display: block;\\n background: white;\\n padding: 7px 15px;\\n -webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);\\n box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);\\n border-radius: 2px;\\n min-height: 32px; }\\n @media (min-width: 992px) {\\n .geozone-map-info {\\n left: 419px; } }\\n .geozone-map-info__btn {\\n cursor: pointer; }\\n .geozone-map-info__btn:hover {\\n background: rgba(0, 54, 124, 0.85);\\n color: white; }\\n\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/view/geozone/geozone.component.scss\n// module id = ./src/app/view/geozone/geozone.component.scss\n// module chunks = main","import { Component, OnInit, OnDestroy } from '@angular/core';\nimport { Subject } from 'rxjs/Subject';\nimport { Router } from '@angular/router';\nimport 'rxjs/add/operator/takeUntil';\n\n/*Services */\nimport { StateService, ScreenService, DevicesService, AppService, GeozoneService } from '@services';\n\n/*Models */\nimport { Device, Geozone, Location } from '@models';\n\n/*Config*/\nimport { CONFIG } from '@config';\n\ndeclare var swal: any;\n\n@Component({\n selector: 'app-geozone',\n templateUrl: './geozone.component.html',\n styleUrls: ['./geozone.component.scss']\n})\n\nexport class GeozoneComponent implements OnInit, OnDestroy {\n private ngUnsubscribe: Subject = new Subject();\n public currentDevice: Device;\n newGeozoneName: string;\n geozoneList: Array;\n showAddGeozone = false;\n currentGeozone: Geozone;\n editableGeozone: Geozone;\n newGeozonePoints: Array;\n ifLoadingGeozones = true;\n btnAddSubmit = {\n text:\"Добавить зону\",\n load:\"Добавление..\",\n default: \"Добавить зону\"\n }\n btnUpdateSubmit = {\n text:\"Сохранить\",\n load:\"Сохранение..\",\n default: \"Сохранить\"\n }\n\n btnDeleteSubmit = {\n text:\"Удалить\",\n load:\"Удаление..\",\n default: \"Удалить\"\n }\n ifSendAdd = false;\n ifSendDelete = false;\n ifSendUpdate = false;\n constructor(\n private stateService: StateService,\n private screenService: ScreenService,\n private devicesService: DevicesService,\n private geozoneService: GeozoneService,\n private router: Router){\n this.currentDevice = this.stateService.currentDevice;\n console.log(this.currentDevice)\n if (this.currentDevice) {\n if(this.currentDevice.provider.toLowerCase() != \"magicsystems\" && this.currentDevice.provider != \"pandora\"){\n this.router.navigate(['/personal']);\n }else{\n this.getGeozone();\n }\n }\n this.screenService.isStateHidden = true;\n this.stateService.currentDeviceObservable\n .takeUntil(this.ngUnsubscribe)\n .subscribe(device => {\n this.currentDevice = device;\n if (this.currentDevice) {\n if(this.currentDevice.provider.toLowerCase() != \"magicsystems\" && this.currentDevice.provider != \"pandora\"){\n this.router.navigate(['/personal']);\n }else{\n this.getGeozone();\n }\n \n }\n });\n this.screenService.onChangeGeozoneObservable\n .takeUntil(this.ngUnsubscribe)\n .subscribe(points => {\n if(this.currentGeozone && this.editableGeozone){\n this.editableGeozone.points = points;\n }else{\n this.newGeozonePoints = points;\n }\n });\n }\n\n ngOnInit(){\n \n\n this.screenService.isDataLoadingSubject.next(true);\n this.stateService.autoUpdatePositionSubject.next(false);\n this.screenService.isStateHidden = true;\n //this.screenService.isStateHidden = true;\n }\n\n getGeozone(){\n this.geozoneService.getGeozone(this.currentDevice.providerAccountId)\n .subscribe(response => {\n if(response && response.length){\n this.geozoneList = response;\n }else{\n this.geozoneList = [];\n }\n this.screenService.isDataLoadingSubject.next(false);\n \n console.log(response)\n }, error => {\n let errorMessage = 'Ошибка, попробуйте позже';\n if (error.error && error.error.errorMessage && error.error.errorMessage.length) {\n errorMessage = error.error.errorMessage;\n }\n swal({\n type: 'error',\n text: errorMessage,\n showConfirmButton: true\n });\n this.geozoneList = [];\n this.screenService.isDataLoadingSubject.next(false);\n console.log(error);\n });\n }\n\n addGeozone(){\n \n if(!this.showAddGeozone){\n this.showAddGeozone = true;\n this.currentGeozone = null;\n this.editableGeozone = null;\n this.screenService.showNewGeozone();\n }else{\n this.addNewGeozone()\n }\n }\n cancelAddGeozone(){\n this.newGeozoneName = null;\n this.showAddGeozone = false;\n this.newGeozonePoints = null;\n this.screenService.clearGeozone();\n }\n deleteGeozone(geozone: Geozone){\n console.log(geozone)\n if(this.ifSendDelete || this.ifSendAdd || this.ifSendUpdate){\n return false;\n }\n swal({\n text: 'Удалить геозону?',\n type: 'question',\n showCancelButton: true,\n confirmButtonColor: '#23518d',\n cancelButtonColor: '#d33',\n confirmButtonText: 'Удалить',\n cancelButtonText: 'Отмена'\n }).then((result) => {\n if (result.value) {\n this.ifSendDelete = true;\n this.btnDeleteSubmit.text = this.btnDeleteSubmit.load;\n this.geozoneService.deleteGeozone(this.currentDevice.providerAccountId, geozone.id)\n .subscribe(response => {\n this.ifSendDelete = false;\n let indexDelete: number;\n this.geozoneList.map((item, index)=>{\n if(item.id === geozone.id && !indexDelete){\n indexDelete = index;\n return;\n }\n })\n\n this.geozoneList.splice(indexDelete,1);\n this.screenService.clearGeozone();\n swal({\n type: 'success',\n text: 'Геозона удалена',\n showConfirmButton: false,\n timer: 3000,\n });\n this.editableGeozone = null;\n console.log(response)\n this.btnDeleteSubmit.text = this.btnDeleteSubmit.default;\n }, error => {\n this.ifSendDelete = false;\n let errorMessage = 'Ошибка, попробуйте позже';\n if (error.error && error.error.errorMessage && error.error.errorMessage.length) {\n errorMessage = error.error.errorMessage;\n }\n swal({\n type: 'error',\n text: errorMessage,\n showConfirmButton: true\n });\n this.btnDeleteSubmit.text = this.btnDeleteSubmit.default;\n console.log(error);\n });\n \n\n\n }\n });\n \n\n\n }\n addNewGeozone(){\n if(this.ifSendDelete || this.ifSendAdd || this.ifSendUpdate){\n return false;\n }\n if(this.newGeozonePoints && this.newGeozoneName){\n this.btnAddSubmit.text = this.btnAddSubmit.load;\n this.ifSendAdd = true;\n this.geozoneService.addGeozone(this.currentDevice.providerAccountId, this.newGeozoneName, this.newGeozonePoints)\n .subscribe(response => {\n this.ifSendAdd = false;\n swal({\n type: 'success',\n text: 'Геозона добавлена',\n showConfirmButton: false,\n timer: 3000,\n });\n this.geozoneList = null;\n this.getGeozone();\n this.cancelAddGeozone();\n this.newGeozoneName = null;\n this.btnAddSubmit.text = this.btnAddSubmit.default;\n console.log(response)\n }, error => {\n this.ifSendAdd = false;\n let errorMessage = 'Ошибка, попробуйте позже';\n if (error.error && error.error.errorMessage && error.error.errorMessage.length) {\n errorMessage = error.error.errorMessage;\n }\n swal({\n type: 'error',\n text: errorMessage,\n showConfirmButton: true\n });\n this.btnAddSubmit.text = this.btnAddSubmit.default;\n console.log(error);\n });\n }\n }\n updateGeozone(geozone: Geozone){\n if(this.ifSendDelete || this.ifSendAdd || this.ifSendUpdate){\n return false;\n }\n if(this.editableGeozone && this.editableGeozone.points && this.editableGeozone.name){\n this.ifSendUpdate = true;\n this.btnUpdateSubmit.text = this.btnUpdateSubmit.load;\n this.geozoneService.updateGeozone(this.currentDevice.providerAccountId, this.editableGeozone.name, this.editableGeozone.id, this.editableGeozone.points, this.editableGeozone.isActive, this.editableGeozone.isSms)\n .subscribe(response => {\n\n swal({\n type: 'success',\n text: 'Геозона Обновлена',\n showConfirmButton: false,\n timer: 3000,\n });\n this.btnUpdateSubmit.text = this.btnUpdateSubmit.default;\n this.ifSendUpdate = false;\n this.geozoneList.map((geozone, index)=>{\n if(geozone.id === this.editableGeozone.id){\n this.geozoneList.splice(index, 1, response);\n return;\n }\n })\n this.closeGeozone()\n\n }, error => {\n this.ifSendUpdate = false;\n let errorMessage = 'Ошибка, попробуйте позже';\n if (error.error && error.error.errorMessage && error.error.errorMessage.length) {\n errorMessage = error.error.errorMessage;\n }\n swal({\n type: 'error',\n text: errorMessage,\n showConfirmButton: true\n });\n console.log(error);\n this.btnUpdateSubmit.text = this.btnUpdateSubmit.default;\n });\n }\n\n }\n closeGeozone(){\n this.currentGeozone = null;\n this.editableGeozone = null;\n this.screenService.clearGeozone();\n }\n deleteEditableGeozone(){\n if(this.ifSendDelete || this.ifSendAdd || this.ifSendUpdate){\n return false;\n }\n if(this.currentGeozone && this.editableGeozone){\n this.editableGeozone.points = null;\n }else{\n this.newGeozonePoints = null;\n }\n this.screenService.clearEditableGeozone();\n }\n setCurrentGeozone(geozone: Geozone){\n this.showAddGeozone = false;\n this.newGeozoneName = null;\n this.newGeozonePoints = null;\n if(this.currentGeozone && this.currentGeozone.id == geozone.id){\n this.closeGeozone();\n return false;\n }\n this.editableGeozone = JSON.parse(JSON.stringify(geozone));\n this.currentGeozone = geozone;\n this.screenService.showGeozone(this.currentGeozone.points);\n }\n ngOnDestroy() {\n this.ngUnsubscribe.next();\n this.ngUnsubscribe.complete();\n this.stateService.toggleGraphStatsSubject.next(false);\n this.stateService.autoUpdatePositionSubject.next(true);\n this.screenService.clearGeozone();\n }\n}\n\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/view/geozone/geozone.component.ts","module.exports = \"
\\n
\\n \\n \\\"Угона.нет\\\"\\n \\n \\n 8-800-725-04-66\\n \\n \\n
\\n
\\n\\n\\n\\n\\n\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/view/header/header.component.html\n// module id = ./src/app/view/header/header.component.html\n// module chunks = main","module.exports = \".nav,\\n.nav-menu {\\n overflow: visible !important; }\\n\\n.nav-share-info {\\n position: relative;\\n cursor: pointer; }\\n\\n.nav-share-info span {\\n position: absolute;\\n background: white;\\n width: 13px;\\n height: 13px;\\n border-radius: 100%;\\n line-height: 14px;\\n font-size: 9px;\\n top: 15px;\\n right: 0px;\\n z-index: 1; }\\n\\n.nav-share-info:hover:after {\\n content: \\\"\\\";\\n position: absolute;\\n width: 70px;\\n height: 40px;\\n right: 0;\\n top: 35px; }\\n\\n.nav-share-info:hover .nav-share-info__tooltip {\\n display: block; }\\n\\n.nav-share-info__tooltip {\\n z-index: 1;\\n display: none;\\n position: absolute;\\n top: 100%;\\n width: 400px;\\n right: 0;\\n background: #fff;\\n border-radius: 2px;\\n -webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);\\n box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);\\n padding: 10px;\\n cursor: default; }\\n\\n.menu-share--desktop {\\n display: none; }\\n\\n@media screen and (min-width: 1300px) {\\n .menu-share--desktop {\\n display: inline-block; } }\\n\\n.menu-share--mobile {\\n display: inline-block; }\\n\\n@media screen and (min-width: 1300px) {\\n .menu-share--mobile {\\n display: none; } }\\n\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/view/header/header.component.scss\n// module id = ./src/app/view/header/header.component.scss\n// module chunks = main","import { Component, ViewChild, OnDestroy, OnInit } from '@angular/core';\nimport { Router, NavigationEnd } from '@angular/router';\nimport { Subject } from 'rxjs/Subject';\nimport 'rxjs/add/operator/takeUntil';\n\n/*Services*/\nimport { CachedDataService } from '@services/data/cached-data.service';\nimport { StateService } from '@services/state.service';\nimport { ShareDeviceService } from '@services';\n\n/*Models */\nimport { User } from '@models/user';\nimport { Device } from '@models/device';\nimport { ObservableObject } from '@models/observable-object';\nimport { ShareRequest } from \"@models\";\n\nimport { environment } from '@environments';\n\n@Component({\n selector: 'app-header',\n templateUrl: './header.component.html',\n styleUrls: ['./header.component.scss']\n})\n\nexport class HeaderComponent implements OnInit, OnDestroy {\n isAuth = false;\n isOpenMenu = false;\n user = new User;\n currentDevice: Device;\n currentObject;\n _environment = environment;\n currentObservableObject: ObservableObject;\n shareDeviceList: Array\n private ngUnsubscribe: Subject = new Subject();\n @ViewChild('feedBackForm') feedBackForm;\n @ViewChild('settingsModal') settingsModal;\n @ViewChild('profileModal') profileModal;\n @ViewChild('shareDeviceConfirm') shareDeviceConfirm;\n @ViewChild('shareDeviceCancel') shareDeviceCancel;\n \n\n currentPage = '';\n ifActiveGeozone = false;\n\n constructor(\n private cachedDataService: CachedDataService,\n private router: Router,\n public stateService: StateService,\n private shareDeviceService: ShareDeviceService\n ) {\n this.isAuth = this.cachedDataService.isAuth();\n this.user = this.cachedDataService.getCurrentUser();\n this.currentDevice = this.stateService.currentDevice;\n\n cachedDataService.updateUserStatus.subscribe(() => {\n this.isAuth = this.cachedDataService.isAuth();\n this.user = this.cachedDataService.getCurrentUser();\n });\n this.stateService.observableObjectObservable\n .takeUntil(this.ngUnsubscribe)\n .subscribe(object => {\n this.currentObservableObject = object;\n });\n this.shareDeviceService.updateRequestsObservable\n .takeUntil(this.ngUnsubscribe)\n .subscribe(respone => {\n this.getShareDevice()\n });\n\n\n\n this.stateService.currentDeviceSubject\n .takeUntil(this.ngUnsubscribe)\n .subscribe(device => {\n\n this.currentDevice = device;\n if (device) {\n this.currentObject = this.cachedDataService.getCurrentObject();\n if(this.currentDevice.provider.toLowerCase() === \"magicsystems\" || this.currentDevice.provider.toLowerCase() === \"pandora\"){\n this.ifActiveGeozone = true;\n }else{\n this.ifActiveGeozone = false;\n }\n } else {\n this.ifActiveGeozone = false;\n this.currentObject = null;\n }\n });\n\n router.events.filter((event: any) => event instanceof NavigationEnd)\n .subscribe(event => {\n this.getShareDevice()\n this.isOpenMenu = false;\n if (event.url === '/online') {\n this.currentPage = 'online';\n } else if (event.url.indexOf('/personal') >= 0) {\n this.currentPage = 'personal';\n } else if (event.url.indexOf('/online') >= 0) {\n this.currentPage = 'detail';\n } else if (event.url.indexOf('/profile') >= 0) {\n this.currentPage = 'profile';\n } else if (event.url.indexOf('/share-requests') >= 0) {\n this.currentPage = 'share-requests';\n } else {\n this.currentPage = '';\n }\n });\n }\n ngOnInit(){\n this.getShareDevice()\n }\n\n showFeedbackForm() {\n // this.isOpenMenu = false;\n // this.feedBackForm.open();\n }\n\n logout() {\n this.cachedDataService.clearCache();\n this.router.navigate(['/signin']);\n }\n\n toggleMenu() {\n this.isOpenMenu = !this.isOpenMenu;\n }\n\n openSettings() {\n this.settingsModal.open();\n }\n openProfile() {\n this.profileModal.open();\n }\n\n ngOnDestroy() {\n this.ngUnsubscribe.next();\n this.ngUnsubscribe.complete();\n }\n\n getShareDevice(){\n if(!this.isAuth){\n return;\n }\n this.shareDeviceService.getShareDevice()\n .subscribe(response => {\n if(response && response.length){\n this.shareDeviceList = response.filter(item=>item.status.toLowerCase()==\"sent\")\n }else{\n this.shareDeviceList = null;\n }\n },\n error => {\n console.log(error);\n }\n );\n }\n\n openConfirmShare(request: ShareRequest){\n this.shareDeviceConfirm.open(request);\n }\n openCancelShare(request: ShareRequest){\n this.shareDeviceCancel.open(request);\n }\n\n \n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/view/header/header.component.ts","module.exports = \"\\n \\n

Добавить {{ typeObjectName[typeObject].name}}

\\n

Введите данные маяка

\\n\\n
\\n \\n
\\n \\n\\n
\\n \\n \\n {{observableObject.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
{{errorMessage}}
\\n
\\n\\n \\n\\n
\\n
\\n
\\n\\n\\n\\n \\n

Привязать маяк к уже созданному объекту?

\\n
\\n \\n
\\n Нет\\n Да\\n
\\n
\\n
\\n
\\n\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/view/modal/add-object-modal/add-object.component.html\n// module id = ./src/app/view/modal/add-object-modal/add-object.component.html\n// module chunks = main","import { Component, ViewChild, OnInit } from '@angular/core';\nimport { FormGroup, FormBuilder, Validators } from '@angular/forms';\nimport { Router } from '@angular/router';\n\n/*Services */\nimport { ObjectsService } from '@services/http/objects.service';\nimport { DevicesService } from '@services/http/devices.service';\nimport { StateService } from '@services/state.service';\nimport { ObservableObjectsService } from '@services/http/observable-objects.service';\nimport { CachedDataService, AppService } from '@services';\n\n/*Models*/\nimport { ObservableObject } from '@models/observable-object';\n\n/*Plugins*/\nimport { BsModalComponent, BsModalService } from 'ng2-bs3-modal';\n\nimport { CONFIG } from '../../../config';\n\n@Component({\n selector: 'add-object-modal',\n templateUrl: './add-object.component.html'\n})\n\nexport class AddObjectComponent implements OnInit {\n\n @ViewChild('addObjectModal')\n addObjectModal: BsModalComponent;\n @ViewChild('addDeviceModal')\n addDeviceModal: BsModalComponent;\n\n addDeviceToCreated = false;\n observableObjects: ObservableObject[];\n addObjectForm: FormGroup;\n\n errorMessage = '';\n ifNeedCaptcha = false;\n ifNeedSelectProvider = false; // Если нужно выбрать провайдера перед добавлением\n providersArray = []; // Список провадеров для выбора перед добавлением устройства\n ifNeedSelectDevice = false; // Если нужно выбрать одно устройство\n devicesArray = []; // Список устрйоств для выбора перед добавлением устройства\n\n typeObject = '';\n trySend = false;\n typeObjectName = {\n 'Moto': { name: 'мотоцикл', nameDecl: 'мотоцикла' },\n 'Car': { name: 'автомобиль', nameDecl: 'автомобиля' },\n 'SUV': { name: 'внедорожник', nameDecl: 'внедорожника' },\n 'QuadBike': { name: 'квадроцикл', nameDecl: 'квадроцикла' }\n };\n btnText = {\n text: 'Добавить',\n defaultText: 'Добавить',\n loadText: 'Обработка..'\n };\n extraTYpe = CONFIG.extra;\n capcha = {\n capchaId: null,\n capchaUri: null\n };\n constructor(\n private objectsService: ObjectsService,\n private devicesService: DevicesService,\n private modalservice: BsModalService,\n private cachedDataService: CachedDataService,\n private observableObjectsService: ObservableObjectsService,\n private formBuilder: FormBuilder,\n private router: Router,\n private appService: AppService,\n private stateService: StateService) {\n objectsService.updateObjects.subscribe(() => {\n this.getObject();\n });\n }\n\n ngOnInit() {\n this.initForm();\n this.getObject();\n\n }\n\n initForm() {\n this.ifNeedCaptcha = false;\n this.ifNeedSelectDevice = false;\n this.ifNeedSelectProvider = false;\n this.providersArray = [];\n this.devicesArray = [];\n this.errorMessage = '';\n\n this.addObjectForm = this.formBuilder.group({\n userId: null,\n name: ['', [Validators.required]],\n phonenumber: [''],\n objecttype: ['Transport'],\n objectid: [''],\n extra: [''],\n login: ['', [Validators.required]],\n password: ['', [Validators.required]],\n capchacode: [''],\n provider: [''],\n externalDeviceId: ['']\n });\n this.addObjectForm.controls['password'].setErrors({ 'error': '' });\n }\n\n\n getObject() {\n this.observableObjectsService.getAll().subscribe(response => {\n this.observableObjects = this.appService.filterObjects(response);\n }, error => console.log('from component error', error));\n }\n openForm(type: string, isCreated?: boolean) {\n this.addDeviceModal.close();\n this.typeObject = type;\n this.addObjectModal.open();\n if (isCreated) {\n if (this.observableObjects.length) {\n /*set by default */\n this.addObjectForm.controls['name'].setValue(this.observableObjects[0].name);\n this.addObjectForm.controls['objectid'].setValue(this.observableObjects[0].id);\n }\n this.addDeviceToCreated = true;\n } else {\n this.addObjectForm.controls['name'].setValue('');\n this.addObjectForm.controls['objectid'].setValue('');\n this.addDeviceToCreated = false;\n }\n }\n openDevice() {\n this.addDeviceModal.open();\n \n }\n createObject() {\n \n if (this.trySend) {\n return false;\n }\n this.errorMessage = '';\n if (this.addObjectForm.invalid) {\n const controls = this.addObjectForm.controls;\n Object.keys(controls)\n .forEach(controlName => controls[controlName].markAsTouched());\n return;\n }\n if(this.cachedDataService.currentUserId){\n this.addObjectForm.get('userId').setValue(this.cachedDataService.currentUserId)\n }\n \n this.trySend = true;\n this.btnText.text = this.btnText.loadText;\n\n if (this.addDeviceToCreated ||\n this.ifNeedCaptcha ||\n this.addObjectForm.controls['objectid'].value.length ||\n this.ifNeedSelectProvider ||\n this.ifNeedSelectDevice) {\n this.createDevice();\n } else {\n let extra = '';\n switch (this.typeObject) {\n case 'Moto': {\n extra = this.extraTYpe.moto;\n break;\n }\n case 'Car': {\n extra = this.extraTYpe.car;\n break;\n }\n case 'SUV': {\n extra = this.extraTYpe.SUV;\n break;\n }\n case 'QuadBike': {\n extra = this.extraTYpe.quadBike;\n break;\n }\n default: {\n extra = this.extraTYpe.car;\n break;\n }\n }\n this.objectsService.addObject(\n this.addObjectForm.value.name,\n this.addObjectForm.value.objecttype,\n extra,\n this.addObjectForm.value.userId)\n .subscribe(response => {\n this.addObjectForm.controls['objectid'].setValue(response.id);\n this.createDevice();\n },\n error => {\n if (error.error) {\n error = error.error;\n }\n this.trySend = false;\n this.btnText.text = this.btnText.defaultText;\n console.log(error.type);\n this.showErorr(error);\n }\n );\n }\n }\n createDevice() {\n const body: object = {};\n body['Login'] = this.addObjectForm.value.login;\n body['Password'] = this.addObjectForm.value.password;\n body['ObjectId'] = this.addObjectForm.value.objectid;\n body['PhoneNumber'] = this.addObjectForm.value.phonenumber.replace(/\\D/g, '');\n if(this.addObjectForm.value.userId){\n body['userId'] = this.addObjectForm.value.userId;\n }\n \n \n if (this.capcha.capchaId && this.capcha.capchaUri && this.ifNeedCaptcha) {\n body['capchaId'] = this.capcha.capchaId;\n body['capchaCode'] = this.addObjectForm.controls['capchacode'].value;\n\n this.addObjectForm.controls['password'].setErrors(null);\n }\n if (this.ifNeedSelectProvider) {\n body['provider'] = this.addObjectForm.controls['provider'].value;\n }\n if (this.ifNeedSelectDevice) {\n body['externalDeviceId'] = this.addObjectForm.controls['externalDeviceId'].value;\n }\n\n\n this.devicesService.createDevice(body)\n .subscribe(response => {\n this.trySend = false;\n this.btnText.text = this.btnText.defaultText;\n this.typeObject = '';\n if (response) {\n this.initForm();\n this.addObjectModal.close();\n this.objectsService.updateObjects.emit();\n if(response[0].isTariffAgreementCompleted == false){\n this.stateService.initAgreementsModalSubject.next(response[0].id);\n }\n\n const that = this;\n setTimeout(function () {\n that.router.navigate(['/online', this.addObjectForm.value.objectid, response[0].id, 'state']);\n }, 1000);\n }\n\n },\n error => {\n this.trySend = false;\n this.btnText.text = this.btnText.defaultText;\n\n if (error.error) {\n error = error.error;\n }\n if (error.capchaId && error.capchaUri) {\n /*Если нужно ввести капчу */\n if (error.errorMessage !== 'Капча введена не верно') {\n this.addObjectForm.controls['password'].setErrors({ 'error': 'Пароль неверный' });\n }\n this.errorMessage = error.errorMessage;\n this.ifNeedCaptcha = true;\n this.capcha.capchaId = error.capchaId;\n this.capcha.capchaUri = error.capchaUri + '?version=' + new Date().getTime();\n this.addObjectForm.controls['capchacode'].setValidators([Validators.required]);\n } else if (error.type === 'SelectProviderRequired' && error.providers && error.providers.length) {\n /*Если нужно выбрать провайдера */\n this.ifNeedSelectProvider = true;\n this.providersArray = error.providers;\n this.addObjectForm.get('provider').setValidators(Validators.required);\n\n } else if (error.type === 'SelectDeviceRequired' && error.devices && error.devices.length) {\n /*Если нужно выбрать устройство */\n this.ifNeedSelectDevice = true;\n this.devicesArray = error.devices;\n this.addObjectForm.get('externalDeviceId').setValidators(Validators.required);\n } else {\n this.showErorr(error);\n }\n }\n );\n }\n showErorr(error) {\n if (error.errorMessage && error.errorMessage.length) {\n this.errorMessage = error.errorMessage;\n } else {\n const errors = error.modelState;\n for (error in errors) {\n this.addObjectForm.controls[errors[error].field.toLowerCase()].setErrors({ 'error': errors[error].errors });\n }\n }\n }\n\n onChangeUsername(value) {\n this.addObjectForm.controls['phonenumber'].setValue(value);\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/view/modal/add-object-modal/add-object.component.ts","module.exports = \"\\n \\n

{{currentStep < 2 ? \\\"Договор\\\" : \\\"Загрузка документов\\\" }}

\\n
\\n \\n \\n
Загрузка договора...
\\n\\n \\n \\n
Ваша заявка была отклонена. Для продолжения использования устройства необходимо повторно принять договор и загрузить сканы документов.
\\n \\n
\\n
\\n \\n \\n
\\n
\\n
\\n \\n \\n\\n
Загрузите скан 3-й страницы паспорта владельца ТС (с фотографией)
\\n
\\n \\n \\n
\\n \\n\\n
Загрузите скан страницы регистрации (прописка)
\\n
\\n \\n \\n
\\n \\n\\n
Загрузите сканы СТС (свидетельства о регистрации ТС) с двух сторон.
Если отсутствует загрузите ПТС
\\n
Сторона 1
\\n
\\n \\n \\n
\\n
Сторона 2
\\n
\\n \\n \\n
\\n \\n
\\n \\n \\n
\\n \\n
\\n \\n \\n
\\n
\\n\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/view/modal/agreements-modal/agreements-modal.component.html\n// module id = ./src/app/view/modal/agreements-modal/agreements-modal.component.html\n// module chunks = main","import { Component, ViewChild, OnInit, OnDestroy } from '@angular/core';\nimport { FormGroup, FormBuilder, Validators } from '@angular/forms';\nimport { Subject } from 'rxjs/Subject';\nimport 'rxjs/add/operator/takeUntil';\n\n/**Models */\nimport { Device, Agreements } from '@models';\n\n/*Services */\nimport { DevicesService } from '@services/http/devices.service';\nimport { StateService } from '@services/state.service';\nimport { TariffService } from '@services/tariff.services';\nimport { CachedDataService } from '@services/data/cached-data.service';\n/*Plugins */\nimport { BsModalComponent } from 'ng2-bs3-modal';\n\ndeclare var swal: any;\n\n\n@Component({\n // tslint:disable-next-line:component-selector\n selector: 'agreements-modal',\n templateUrl: './agreements-modal.component.html'\n})\n\nexport class AgreementsModalComponent implements OnDestroy {\n\n @ViewChild('agreementsModal') agreementsModal: BsModalComponent;\n private ngUnsubscribe: Subject = new Subject();\nagreementMinuteTimerShow = 1;\n currentDevice: Device;\n currentDeviceId: string;\n currentAgreements:Agreements;\n currentStep: number = 1;\n intervalTimer;\n isOpenModal = false;\n uploadedFiles = {\n passportScan: null,\n passportSecondScan: null,\n registrationScan: null,\n registrationSecondScan: null\n };\n trySubmit = false;\n btnText = {\n default: \"Отправить\",\n load: \"Загрузка...\",\n text: \"Отправить\"\n }\n\n\n constructor(\n private stateService: StateService,\n private tariffService: TariffService,\n private cachedDataService: CachedDataService\n ) {\n this.stateService.initAgreementsModalObservable\n .takeUntil(this.ngUnsubscribe)\n .subscribe((deviceId) => {\n //при добавлении девайса\n this.clearAgreementTimer();\n this.currentDeviceId = deviceId;\n this.initModalTImer();\n });\n this.stateService.showAgreementsModalObservable\n .takeUntil(this.ngUnsubscribe)\n .subscribe((deviceId) => {\n this.currentDeviceId = deviceId;\n this.open();\n });\n this.stateService.removeAgreementsObservable\n .takeUntil(this.ngUnsubscribe)\n .subscribe((deviceId) => {\n this.removeAgreements(deviceId)\n });\n \n this.stateService.currentDeviceObservable\n .takeUntil(this.ngUnsubscribe)\n .subscribe(device => {\n this.currentDevice = device;\n \n if(this.currentDevice.isTariffAgreementCompleted == false){\n this.currentDeviceId = device.id;\n this.initModalTImer();\n }\n });\n }\n initModalTImer(){\n let agreementTimer = this.cachedDataService.getCurrentAgreementTimer();\n if(this.isOpenModal){\n //Если уже открыт - значит сбрасываем таймер и пропускаем открытие \n this.setAgreementTimer();\n return false;\n }\n if(!agreementTimer){\n this.open();\n this.setAgreementTimer()\n \n }else{\n this.getDiffMinutes(parseInt(agreementTimer))\n // добавить проверку, прошло ли 6 минут с последнего показа\n }\n console.log(\"initagreements\")\n }\n getDiffMinutes(agreementTimer: number){\n let minutesDifference = (new Date().getTime() - new Date(agreementTimer).getTime())/1000/60;\n console.log(minutesDifference)\n if(minutesDifference>=this.agreementMinuteTimerShow){\n this.open();\n this.setAgreementTimer();\n }\n }\n clearAgreementTimer(){\n clearInterval(this.intervalTimer);\n this.cachedDataService.clearCurrentAgreementTimer()\n }\n setAgreementTimer(){\n if(this.intervalTimer){\n clearInterval(this.intervalTimer);\n }\n this.intervalTimer = setInterval(()=>{\n this.initModalTImer();\n },1000*60*180)\n this.cachedDataService.setCurrentAgreementTimer((new Date().getTime()).toString())\n }\n\n removeAgreements(deviceId: string){\n //добавить удаление конкретного договора для конкретного устройства \n this.clearAgreementTimer();\n }\n\n open() {\n this.currentStep = 1;\n this.isOpenModal = true;\n this.getAgreements();\n this.agreementsModal.open();\n }\n getAgreements(){\n this.tariffService.getAgreements(this.currentDeviceId)\n .subscribe(response => {\n let startString = \"ДОГОВОР\";\n let endString =\"\\r\\n\";\n let agreementText = response.text.split(startString)[1];\n agreementText = agreementText.split(endString)[0];\n \n \n this.currentAgreements = {\n id:response.id,\n code:response.code,\n text:agreementText,\n status: response.status\n }\n },\n error => {\n swal({\n type: 'error',\n title: 'Ошибка',\n text: 'Ошибка при загрузке договора, попробуйте позже.',\n showConfirmButton: false,\n timer: 3000,\n });\n console.log(error)\n })\n }\n acceptAgreements(){\n this.currentStep++;\n }\n cancelAgreements(){\n swal({\n text: 'Необходимо принять договор и отправить данные фото со сроком не более 3 дней. Вы уверены что хотите прервать загрузку? ',\n type: 'question',\n showCancelButton: true,\n confirmButtonColor: '#d33',\n cancelButtonColor: '#23518d',\n confirmButtonText: 'Прервать и продолжить позже',\n cancelButtonText: 'Продолжить'\n }).then((result) => {\n if (result.value) {\n this.isOpenModal = false;\n this.agreementsModal.close();\n }\n });\n\n }\n uploadFileEvent(file, type: string){\n console.log(file)\n this.uploadedFiles[type] = file;\n console.log(this.uploadedFiles)\n }\n submit(){\n this.trySubmit = true;\n if( !this.uploadedFiles.passportScan || \n !this.uploadedFiles.passportSecondScan || \n !this.uploadedFiles.registrationScan || \n !this.uploadedFiles.registrationSecondScan){\n return false;\n }\n this.btnText.text = this.btnText.load;\n\n this.tariffService.sendAgreements(\n this.currentAgreements.id,\n this.uploadedFiles.passportScan,\n this.uploadedFiles.passportSecondScan,\n this.uploadedFiles.registrationScan,\n this.uploadedFiles.registrationSecondScan)\n .subscribe(response => {\n this.btnText.text = this.btnText.default;\n swal({\n type: 'success',\n text: 'Документы загружены',\n showConfirmButton: false,\n timer: 2000,\n });\n this.clearAgreementTimer();\n this.stateService.agreementsCompletedSubject.next(this.currentDeviceId);\n \n this.close();\n },\n error => {\n this.btnText.text = this.btnText.default;\n swal({\n type: 'error',\n title: 'Ошибка',\n text: 'Команда не выполнена, попробуйте позже.',\n showConfirmButton: false,\n timer: 3000,\n });\n })\n }\n close() {\n this.isOpenModal = false;\n this.agreementsModal.close();\n }\n ngOnDestroy() {\n this.ngUnsubscribe.next();\n this.ngUnsubscribe.complete();\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/view/modal/agreements-modal/agreements-modal.component.ts","module.exports = \"\\n \\n

Номер телефона

\\n
\\n \\n
\\n
\\n \\n \\n\\n\\n \\n
\\n
{{errorMessage}}
\\n
\\n \\n \\n
\\n
\\n
\\n\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/view/modal/change-device-phone/change-device-phone-modal.component.html\n// module id = ./src/app/view/modal/change-device-phone/change-device-phone-modal.component.html\n// module chunks = main","import { Component, ViewChild } from '@angular/core';\nimport { Subject } from 'rxjs/Subject';\nimport 'rxjs/add/operator/takeUntil';\n\n/*Services */\nimport { ObjectsService } from '@services/http/objects.service';\nimport { StateService } from '@services/state.service';\nimport { DevicesService } from '@services/http/devices.service';\n\n/*Models*/\nimport { Device } from '@models/device';\n\n\n/*Plugins */\nimport { BsModalComponent } from 'ng2-bs3-modal';\ndeclare var swal: any;\n\n@Component({\n // tslint:disable-next-line:component-selector\n selector: 'change-device-phone-modal',\n templateUrl: './change-device-phone-modal.component.html'\n})\n\nexport class ChangeDevicePhoneModalComponent {\n private ngUnsubscribe: Subject = new Subject();\n @ViewChild('changeDevicePhoneModal') changeDevicePhoneModal: BsModalComponent;\n\n devicePhoneModel;\n\n errorMessage;\n currentDevice: Device;\n btnText: any = {\n text: 'Обновить',\n defaultText: 'Обновить',\n loadText: 'Обработка..'\n };\n trySend = false;\n\n constructor(\n private objectsService: ObjectsService,\n private stateService: StateService,\n private devicesService: DevicesService\n ) {\n this.currentDevice = this.stateService.currentDevice;\n\n this.stateService.currentDeviceObservable\n .takeUntil(this.ngUnsubscribe)\n .subscribe(device => {\n this.currentDevice = device;\n });\n }\n submit() {\n this.trySend = true;\n if (!this.devicePhoneModel) {\n return false;\n }\n this.btnText.text = this.btnText.loadText;\n\n\n this.devicesService.updatePhone(this.currentDevice.id, this.devicePhoneModel.replace(/\\D/g, ''), this.currentDevice.phones[0].id)\n .subscribe(response => {\n this.trySend = false;\n this.close();\n this.stateService.updateDevicePhoneSubject.next(this.devicePhoneModel.replace(/\\D/g, ''));\n swal({\n type: 'success',\n text: 'Номер телефона изменен',\n showConfirmButton: false,\n timer: 3000,\n });\n },\n error => {\n let errorMessage = 'Ошибка, повторите позже';\n if (error.error) {\n error = error.error;\n }\n if (error.errorMessage && error.errorMessage.length > 0) {\n errorMessage = error.errorMessage;\n }\n this.errorMessage = errorMessage;\n this.trySend = false;\n this.btnText.text = this.btnText.defaultText;\n }\n );\n }\n\n onChange(event) {\n this.devicePhoneModel = event;\n }\n\n open() {\n this.errorMessage = null;\n this.devicePhoneModel = undefined;\n this.changeDevicePhoneModal.open();\n }\n\n close() {\n this.changeDevicePhoneModal.close();\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/view/modal/change-device-phone/change-device-phone-modal.component.ts","module.exports = \"\\n \\n

Марка и модель транспортного средства

\\n
\\n \\n
\\n
\\n \\n \\n
\\n
{{errorMessage}}
\\n
\\n \\n \\n
\\n
\\n
\\n\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/view/modal/change-object-name/change-object-name-modal.component.html\n// module id = ./src/app/view/modal/change-object-name/change-object-name-modal.component.html\n// module chunks = main","import { Component, ViewChild } from '@angular/core';\nimport { Subject } from 'rxjs/Subject';\nimport 'rxjs/add/operator/takeUntil';\n\n/*Services */\nimport { ObjectsService } from '@services/http/objects.service';\nimport { StateService } from '@services/state.service';\n\n/*Models*/\nimport { ObservableObject } from '@models/observable-object';\n\n\n/*Plugins */\nimport { BsModalComponent } from 'ng2-bs3-modal';\ndeclare var swal: any;\n\n@Component({\n // tslint:disable-next-line:component-selector\n selector: 'change-object-name-modal',\n templateUrl: './change-object-name-modal.component.html'\n})\n\nexport class ChangeObjectNameModalComponent {\n private ngUnsubscribe: Subject = new Subject();\n @ViewChild('changeObjectNameModal') changeObjectNameModal: BsModalComponent;\n\n objectNameModel;\n\n errorMessage;\n observableObject: ObservableObject;\n btnText: any = {\n text: 'Обновить',\n defaultText: 'Обновить',\n loadText: 'Обработка..'\n };\n trySend = false;\n\n constructor(\n private objectsService: ObjectsService,\n private stateService: StateService,\n ) {\n this.stateService.observableObjectObservable\n .takeUntil(this.ngUnsubscribe)\n .subscribe(object => {\n this.observableObject = object;\n });\n }\n submit() {\n this.trySend = true;\n if (!this.objectNameModel) {\n return false;\n }\n this.btnText.text = this.btnText.loadText;\n\n this.objectsService.changeObject(\n this.objectNameModel,\n this.observableObject.observableObjectType,\n this.observableObject.extra,\n this.observableObject.id)\n .subscribe(response => {\n this.observableObject.name = this.objectNameModel;\n\n this.stateService.setCurrentObject(this.observableObject);\n\n this.close();\n swal({\n type: 'success',\n text: 'Марка и модель изменена',\n showConfirmButton: false,\n timer: 3000,\n });\n },\n error => {\n let errorMessage = 'Ошибка, повторите позже';\n if (error.error) {\n error = error.error;\n }\n if (error.errorMessage && error.errorMessage.length > 0) {\n errorMessage = error.errorMessage;\n }\n this.errorMessage = errorMessage;\n this.trySend = false;\n this.btnText.text = this.btnText.defaultText;\n }\n );\n }\n\n open() {\n this.errorMessage = null;\n this.objectNameModel = undefined;\n this.changeObjectNameModal.open();\n }\n\n close() {\n this.changeObjectNameModal.close();\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/view/modal/change-object-name/change-object-name-modal.component.ts","module.exports = \"\\n \\n

Подтверждение удаления аккаунта

\\n
\\n \\n

Вы действительно хотите удалить Ваш аккаунт? Это действие нельзя будет отменить

\\n
\\n \\n \\n \\n \\n
\\n\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/view/modal/confirm-deleting-modal/confirm-deleting-modal.component.html\n// module id = ./src/app/view/modal/confirm-deleting-modal/confirm-deleting-modal.component.html\n// module chunks = main","import {Component, OnDestroy, ViewChild} from '@angular/core';\nimport { Subject } from 'rxjs/Subject';\nimport 'rxjs/add/operator/takeUntil';\n\n/*Services */\nimport { ObjectsService } from '@services/http/objects.service';\nimport { StateService } from '@services/state.service';\n\n/*Models*/\nimport { ObservableObject } from '@models/observable-object';\n\n\n/*Plugins */\nimport { BsModalComponent } from 'ng2-bs3-modal';\nimport {ScreenService} from \"@services\";\ndeclare var swal: any;\n\n@Component({\n // tslint:disable-next-line:component-selector\n selector: 'confirm-deleting-modal',\n templateUrl: './confirm-deleting-modal.component.html'\n})\n\nexport class ConfirmDeletingModalComponent implements OnDestroy {\n ngOnDestroy(): void {\n\n }\n\n private ngUnsubscribe: Subject = new Subject();\n @ViewChild('confirmDeletingModal') dialog: BsModalComponent;\n\n\n errorMessage;\n observableObject: ObservableObject;\n btnText: any = {\n text: 'Обновить',\n defaultText: 'Обновить',\n loadText: 'Обработка..'\n };\n trySend = false;\n\n constructor(\n private objectsService: ObjectsService,\n private stateService: StateService,\n private screenService: ScreenService,\n ) {\n }\n\n confirm(result) {\n this.dialog.close(result);\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/view/modal/confirm-deleting-modal/confirm-deleting-modal.component.ts","module.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
{{errorMessage}}
\\n

\\n \\n
\\n
\\n\\n
\\n
\\n\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/view/modal/feedback-modal/feedback-modal.component.html\n// module id = ./src/app/view/modal/feedback-modal/feedback-modal.component.html\n// module chunks = main","import { Component, ViewChild, ElementRef, OnInit } from '@angular/core';\nimport { BsModalComponent, BsModalService } from 'ng2-bs3-modal';\nimport { FormGroup, FormBuilder, Validators } from '@angular/forms';\nimport { AuthService } from '@services/http/auth.service';\nimport { CachedDataService } from '@services/data/cached-data.service';\nimport { User } from '@models/user';\nimport { regexValidators } from '../../../validator';\n@Component({\n selector: 'feedback-modal',\n templateUrl: './feedback-modal.component.html'\n})\n\nexport class FeedbackComponent implements OnInit {\n\n @ViewChild('feedbackModal')\n feedbackModal: BsModalComponent;\n public user = new User;\n public isAuth = false;\n errorMessage: string = null;\n feedBackForm: FormGroup;\n isSend = false;\n formSubmitAttempt = false;\n isOpen = false;\n trySend = false;\n btnText: any = {\n text: \"Отправить\",\n defaultText: \"Отправить\",\n loadText: \"Обработка..\"\n };\n\n maskSettings = {\n mask: regexValidators.phone,\n guide: true,\n showMask: false\n };\n\n constructor(\n private cachedDataService: CachedDataService,\n private authService: AuthService,\n private formBuilder: FormBuilder) {\n cachedDataService.updateUserStatus.subscribe(() => {\n this.isAuth = this.cachedDataService.isAuth();\n this.user = this.cachedDataService.getCurrentUser();\n });\n this.isAuth = this.cachedDataService.isAuth();\n this.user = this.cachedDataService.getCurrentUser();\n }\n\n ngOnInit() {\n this.initForm();\n }\n initForm() {\n this.isOpen = false;\n this.isSend = false;\n this.formSubmitAttempt = false;\n this.feedBackForm = this.formBuilder.group({\n name: [null, [Validators.required]],\n email: [null, [Validators.required, Validators.pattern(regexValidators.email)]],\n text: [null, [Validators.required]],\n numberSim: [null, [Validators.required]],\n modelAlarm: [null, [Validators.required]],\n loginAlarm: [null, [Validators.required]],\n environments: [null]\n });\n }\n open() {\n this.isOpen = true;\n this.errorMessage = null;\n this.feedBackForm.reset();\n if (this.isAuth) {\n this.feedBackForm.controls['name'].clearValidators();\n this.feedBackForm.controls['name'].setErrors(null);\n this.feedBackForm.controls['email'].clearValidators();\n this.feedBackForm.controls['email'].setErrors(null);\n } else {\n\n this.feedBackForm.controls['numberSim'].setErrors(null);\n this.feedBackForm.controls['numberSim'].clearValidators();\n\n this.feedBackForm.controls['modelAlarm'].setErrors(null);\n this.feedBackForm.controls['modelAlarm'].clearValidators();\n\n this.feedBackForm.controls['loginAlarm'].setErrors(null);\n this.feedBackForm.controls['loginAlarm'].clearValidators();\n }\n\n this.feedbackModal.open();\n }\n isFieldValid(field: string) {\n if (!this.isOpen) {\n return false;\n }\n return (!this.feedBackForm.get(field).valid && this.feedBackForm.get(field).touched) ||\n (this.feedBackForm.get(field).untouched && this.formSubmitAttempt);\n }\n send() {\n if (this.trySend) {\n return false;\n }\n this.formSubmitAttempt = true;\n if (this.feedBackForm.invalid) {\n const controls = this.feedBackForm.controls;\n Object.keys(controls)\n .forEach(controlName => controls[controlName].markAsTouched());\n return;\n }\n\n this.btnText.text = this.btnText.loadText;\n this.trySend = true;\n let body = null;\n if (this.isAuth) {\n let text = '';\n text += `Номер сим-карты в авто: ${this.feedBackForm.value.numberSim}, `;\n text += `Модель сигнализации: ${this.feedBackForm.value.modelAlarm}, `;\n text += `Логин к сигнализации :${this.feedBackForm.value.loginAlarm}, `;\n text += `Сообщение :${this.feedBackForm.value.text}`;\n body = {\n name: this.user.fullName,\n text: text,\n contacts: {\n email: this.user.email,\n phone: this.user.phoneNumber,\n fullName: this.user.fullName,\n userName: this.user.userName,\n },\n environments: {\n info: window.navigator.userAgent\n }\n\n };\n } else {\n body = {\n name: this.feedBackForm.value.name,\n text: this.feedBackForm.value.text,\n contacts: {\n email: this.feedBackForm.value.email\n },\n environments: {\n info: window.navigator.userAgent\n }\n };\n }\n this.authService.helpRequest(body)\n .then(() => {\n this.btnText.text = this.btnText.defaultText;\n this.isSend = true;\n this.trySend = false;\n this.feedBackForm.reset();\n setTimeout(() => {\n this.feedbackModal.close();\n }, 5000);\n })\n .catch((error: any) => {\n this.trySend = false;\n this.btnText.text = this.btnText.defaultText;\n if (error.error.errorMessage.length) {\n this.errorMessage = error.error.errorMessage;\n }\n });\n }\n focusMask() {\n\n if (!this.feedBackForm.controls['numberSim'].value || this.feedBackForm.controls['numberSim'].value.length === 0) {\n setTimeout(() => {\n this.feedBackForm.controls['numberSim'].setValue(' ');\n }, 50);\n }\n }\n onBlurMaskPhone() {\n if (this.feedBackForm.controls['numberSim'].value.indexOf('_') >= 0 || this.feedBackForm.controls['numberSim'].value.length === 1) {\n this.feedBackForm.controls['numberSim'].setValue('');\n }\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/view/modal/feedback-modal/feedback-modal.component.ts","export * from './add-object-modal/add-object.component';\nexport * from './feedback-modal/feedback-modal.component';\nexport * from './select-object-modal/select-object-modal.component';\nexport * from './settings-modal/settings-modal.component';\nexport * from './tariff-modal/tariff-modal.component';\nexport * from './update-password-modal/update-password-modal.component';\nexport * from './change-object-name/change-object-name-modal.component';\nexport * from './change-device-phone/change-device-phone-modal.component';\nexport * from './profile-modal/profile-modal.component';\nexport * from './send-capcha/send-capcha.component';\nexport * from './share-device-modal/share-device-modal.component';\nexport * from './share-device-confirm-modal/share-device-confirm-modal.component';\nexport * from './share-device-cancel-modal/share-device-cancel-modal.component';\nexport * from './service-order-modal/service-order-modal.component';\nexport * from './agreements-modal/agreements-modal.component';\nexport * from './confirm-deleting-modal/confirm-deleting-modal.component';\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/view/modal/index.ts","module.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 (GMT -12:00) Эниветок, Кваджалейн \\n (GMT -11:00) Остров Мидуэй, Самоа \\n (GMT -10:00) Гавайи \\n (GMT -9:00) Аляска \\n (GMT -8:00) Тихоокеанское время (США и Канада) \\n (GMT -7:00) Горное время (США и Канада) \\n (GMT -6:00) Центральное время (США и Канада), Мехико\\n (GMT -5:00) Восточное время (США и Канада), Богота, Лима\\n (GMT -4:00) Атлантическое время (Канада), Каракас, Ла-Пас\\n (GMT -3:00) Бразилия, Буэнос-Айрес, Джорджтаун \\n (GMT -2:00) Срединно-Атлантического \\n (GMT -1:00 час) Азорские острова, острова Зеленого Мыса\\n (GMT) Время Западной Европе, Лондон, Лиссабон, Касабланка \\n (GMT +1:00 час) Брюссель, Копенгаген, Мадрид, Париж \\n (GMT +2:00) Киев, Калининград, Южная Африка\\n (GMT +3:00) Москва, Санкт-Петербург, Багдад, Эр-Рияд \\n (GMT +4:00) Баку, Тбилиси, Абу-Даби, Мускат \\n (GMT +5:00) Екатеринбург, Исламабад, Карачи, Ташкент\\n (GMT +6:00) Алматы, Дакке, Коломбо \\n (GMT +7:00) Бангкок, Ханой, Джакарта\\n (GMT +8:00) Пекин, Перт, Сингапур, Гонконг\\n (GMT +9:00) Якутск, Токио, Сеул, Осака, Саппоро \\n (GMT +10:00) Владивосток, Восточная Австралия, Гуам\\n (GMT +11:00) Магадан, Соломоновы острова, Новая Каледония\\n (GMT +12:00) Камчатка, Окленд, Веллингтон, Фиджи \\n \\n
\\n
\\n Удалить аккаунт\\n
\\n\\n
{{errorMessage}}
\\n
\\n\\n \\n \\n
\\n\\n\\n\\n
\\n
\\n\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/view/modal/profile-modal/profile-modal.component.html\n// module id = ./src/app/view/modal/profile-modal/profile-modal.component.html\n// module chunks = main","\n\nimport { Component, OnInit, ViewChild } from '@angular/core';\nimport { FormGroup, FormBuilder, Validators } from '@angular/forms';\n\n/*Services*/\nimport { CachedDataService } from '@services/data/cached-data.service';\nimport { ScreenService } from '@services/screen.service';\nimport { UserService } from '@services/http/user.service';\n\n/*Models */\nimport { User } from '@models/user';\n\nimport { regexValidators } from '../../../validator';\n\nimport { BsModalComponent } from 'ng2-bs3-modal';\nimport {Router} from \"@angular/router\";\ndeclare var swal: any;\n\n\n@Component({\n selector: 'app-profile-modal',\n templateUrl: './profile-modal.component.html'\n})\n\nexport class ProfileModalComponent implements OnInit {\n\n @ViewChild('profileModal') profileModal: BsModalComponent;\n userForm: FormGroup;\n currentUser: User;\n trySend = false;\n\n errorMessage = '';\n\n btnText = {\n text: 'Сохранить',\n default: 'Сохранить',\n loadText: 'Сохранение..'\n };\n constructor(\n private cachedDataService: CachedDataService,\n private formBuilder: FormBuilder,\n private screenService: ScreenService,\n private userService: UserService,\n private router: Router) {\n }\n\n ngOnInit() {\n this.screenService.isShowLoader = false;\n }\n\n initForm() {\n this.userForm = this.formBuilder.group({\n FullName: ['', [Validators.required]],\n Email: ['', [Validators.required, Validators.pattern(regexValidators.email)]],\n PhoneNumber: [''],\n Id: '',\n dateTimeOffset: ''\n });\n }\n\n submit() {\n if (this.trySend) {\n return false;\n }\n\n if (this.userForm.invalid) {\n const controls = this.userForm.controls;\n Object.keys(controls)\n .forEach(controlName => controls[controlName].markAsTouched());\n return;\n }\n\n this.trySend = true;\n this.btnText.text = this.btnText.loadText;\n\n this.userService.updateUserInfo(\n this.userForm.value.FullName,\n this.userForm.value.Email,\n this.userForm.value.Id,\n this.userForm.value.dateTimeOffset)\n .subscribe(\n response => {\n this.trySend = false;\n this.currentUser.fullName = this.userForm.value.FullName;\n this.currentUser.email = this.userForm.value.Email;\n this.cachedDataService.setCurrentUser(response);\n this.currentUser = this.cachedDataService.getCurrentUser();\n this.close();\n swal({\n type: 'success',\n text: 'Данные обновлены',\n showConfirmButton: false,\n timer: 3000,\n });\n this.errorMessage = null;\n },\n error => {\n this.trySend = false;\n this.btnText.text = this.btnText.default;\n if (error.error.errorMessage.length) {\n this.errorMessage = error.error.errorMessage;\n } else {\n const errors = error.error.modelState;\n // tslint:disable-next-line:forin\n for (error in errors) {\n this.userForm.controls[errors[error].field.toLowerCase()].setErrors({ 'error': errors[error].errors });\n }\n }\n });\n }\n\n\n navigateToAccountDeleting() {\n this.router.navigate(['/account-delete']);\n this.close()\n }\n open() {\n this.btnText.text = this.btnText.default;\n this.errorMessage = null;\n this.currentUser = this.cachedDataService.getCurrentUser();\n this.initForm();\n if (this.currentUser.fullName) {\n this.userForm.controls['FullName'].setValue(this.currentUser.fullName);\n }\n if (this.currentUser.email) {\n this.userForm.controls['Email'].setValue(this.currentUser.email);\n }\n if (this.currentUser.phoneNumber) {\n this.userForm.controls['PhoneNumber'].setValue(this.currentUser.phoneNumber);\n }\n\n if (this.currentUser.dateTimeOffset) {\n this.userForm.controls['dateTimeOffset'].setValue(this.currentUser.dateTimeOffset);\n }\n\n this.userForm.controls['Id'].setValue(this.currentUser.id);\n\n this.profileModal.open();\n }\n\n close() {\n this.profileModal.close();\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/view/modal/profile-modal/profile-modal.component.ts","module.exports = \"\\n \\n

Выберите устройство

\\n
\\n \\n
\\n
\\n
\\n
\\n
\\n
{{object.name}}
\\n
\\n \\n\\n
\\n
\\n
\\n Нет объектов для выбора\\n
\\n\\n
\\n
\\n\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/view/modal/select-object-modal/select-object-modal.component.html\n// module id = ./src/app/view/modal/select-object-modal/select-object-modal.component.html\n// module chunks = main","import { Component,ViewChild,OnInit } from '@angular/core';\nimport { BsModalComponent, BsModalService } from 'ng2-bs3-modal';\nimport { ObservableObjectsService } from '@services/http/observable-objects.service';\nimport { ObservableObject } from '@models/observable-object';\nimport { CachedDataService, AppService } from '@services';\n\n@Component({\n selector:'select-object-modal',\n templateUrl:'./select-object-modal.component.html'\n})\n\nexport class selectObjectComponent implements OnInit{\n @ViewChild('selectObjectModal')\n selectObjectModal: BsModalComponent;\n observableObjects: ObservableObject[];\n disabledClose:boolean = false;\n backdrop: string | boolean = true;\n constructor(\n private modalservice: BsModalService,\n private observableObjectsService: ObservableObjectsService,\n private cachedDataService: CachedDataService,\n private appService: AppService) {\n \n }\n ngOnInit() {\n this.getObject()\n this.observableObjects = this.cachedDataService.getObservableObjects(); ;\n }\n getObject(){\n this.observableObjectsService.getAll().subscribe(response => {\n this.observableObjects = this.appService.filterObjects(response);\n this.cachedDataService.setObservableObjects(this.observableObjects);\n }, error => console.log('from component error', error));\n }\n \n\n getObjectType(extra:string){\n return this.observableObjectsService.getObjectType(extra);\n }\n open(disabled?,objectId?){\n if(disabled){\n this.disabledClose = true;\n this.backdrop = \"static\";\n }else{\n this.disabledClose = false;\n this.backdrop = true;\n }\n if(objectId){\n this.observableObjects = this.observableObjects.filter(object => object.id == this.cachedDataService.getCurrentObject().id)\n }else{\n let objects = this.cachedDataService.getObservableObjects();\n\n objects.map(object=>{\n if(object.devices.length>1){\n object.devices = this.sortArrayDown(object.devices)\n }\n })\n this.observableObjects = objects;\n }\n\n \n \n this.selectObjectModal.open();\n }\n close(){\n this.selectObjectModal.close();\n }\n\n sortArrayDown(array){\n\t\treturn array.sort((obj1, obj2) => {\n\t\t\tif (obj1.created > obj2.created) {\n\t\t\t\treturn 1;\n\t\t\t}\n\t\t\n\t\t\tif (obj1.created < obj2.created) {\n\t\t\t\treturn -1;\n\t\t\t}\n\t\t\n\t\t\treturn 0;\n\t\t});\n\t}\n}\n\n\n// WEBPACK FOOTER //\n// ./src/app/view/modal/select-object-modal/select-object-modal.component.ts","module.exports = \"\\n \\n

Провайдер запрашивает дополнительное действие для продолжения

\\n
\\n \\n\\n \\n
\\n
\\n
\\n \\n \\n \\n
\\n
\\n \\n \\n \\n Это поле обязательно для заполнения\\n
\\n
{{errorMessage}}
\\n \\n
\\n
\\n
\\n\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/view/modal/send-capcha/send-capcha.component.html\n// module id = ./src/app/view/modal/send-capcha/send-capcha.component.html\n// module chunks = main","import { Component, ViewChild, OnDestroy } from '@angular/core';\nimport { Subject } from 'rxjs/Subject';\nimport 'rxjs/add/operator/takeUntil';\n\n/*Service */\nimport { StateService } from '@services';\nimport { DevicesService } from '@services/http/devices.service';\n\n/*Plugins */\nimport { BsModalComponent } from 'ng2-bs3-modal';\n\n/*Models */\nimport { CaptchaError, CaptchaItem, Device } from '@models';\n\n@Component({\n // tslint:disable-next-line:component-selector\n selector: 'send-capcha-modal',\n templateUrl: './send-capcha.component.html'\n})\n\nexport class SendCapchaModalComponent implements OnDestroy {\n\n @ViewChild('sendCapchaModal') sendCapchaModal: BsModalComponent;\n capchaCodeModel: string;\n passwordModel: string;\n currentDevice: Device;\n errorMessage: string;;\n private ngUnsubscribe: Subject = new Subject();\n capcha = {\n capchaId: null,\n capchaUri: null\n };\n btnText = {\n text: 'Продолжить',\n defaultText: 'Продолжить',\n loadText: 'Обработка..'\n };\n captchaError: CaptchaError;\n trySubmit = false;\n showPasswordParam =false;\n constructor(private stateService: StateService, private devicesService: DevicesService) {\n\n this.stateService.needSendCaptchaObservable\n .takeUntil(this.ngUnsubscribe)\n .subscribe((captchaError: CaptchaError) => {\n this.captchaError = captchaError;\n this.open();\n });\n\n this.stateService.currentDeviceObservable\n .takeUntil(this.ngUnsubscribe)\n .subscribe(device => {\n this.currentDevice = device;\n });\n }\n\n open() {\n this.trySubmit = false;\n this.showPasswordParam = false\n this.capchaCodeModel = null;\n this.passwordModel = null;\n this.errorMessage = null;\n this.sendCapchaModal.open();\n }\n submit() {\n this.trySubmit = true;\n this.errorMessage = null;\n if (!this.capchaCodeModel || !this.passwordModel) {\n return false;\n }\n const body: CaptchaItem = {\n capchaId: this.captchaError.capchaId,\n capchaCode: this.capchaCodeModel\n };\n\n this.devicesService.updatePassword(\n this.passwordModel,\n null,\n this.currentDevice.providerAccountId,\n true,\n this.captchaError.capchaId,\n this.capchaCodeModel\n )\n .subscribe(response => {\n this.trySubmit = false;\n this.btnText.text = this.btnText.defaultText;\n\n this.stateService.loadState();\n this.close();\n },\n error => {\n\n let errorMessage = 'Ошибка, проверьте корректность данных или повторите позже';\n if (error.error) {\n error = error.error;\n }\n if (error.capchaId && error.capchaUri) {\n this.captchaError.capchaId = error.capchaId;\n this.captchaError.capchaUri = error.capchaUri;\n\n }\n if (error.errorMessage && error.errorMessage.length > 0) {\n errorMessage = error.errorMessage;\n\n } else if(error.message && error.message.length > 0){\n errorMessage = error.message;\n }\n this.errorMessage = errorMessage;\n this.trySubmit = false;\n this.btnText.text = this.btnText.defaultText;\n }\n );\n }\n\n close() {\n this.sendCapchaModal.close();\n }\n showPassword(){\n this.showPasswordParam = ! this.showPasswordParam;\n }\n ngOnDestroy() {\n this.ngUnsubscribe.next();\n this.ngUnsubscribe.complete();\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/view/modal/send-capcha/send-capcha.component.ts","module.exports = \"\\n \\n

Заявка на услугу

\\n
\\n \\n \\n
\\n
\\n \\n \\n {{tarif.observableObjectName}} ({{tarif.number}})\\n \\n
\\n
\\n \\n \\n \\n
\\n
{{currentService.parameters.roamingPriceText}}
\\n
{{selectedDayDiff}} ₽
\\n
*{{currentService.parameters.roamingWarningText}}
\\n \\n
\\n
\\n
{{errorText}}
\\n \\n \\n
\\n \\n
\\n
\\n\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/view/modal/service-order-modal/service-order-modal.component.html\n// module id = ./src/app/view/modal/service-order-modal/service-order-modal.component.html\n// module chunks = main","module.exports = \".order-price {\\n margin: 10px 0; }\\n .order-price__title {\\n font-size: 15px; }\\n .order-price__price {\\n color: #0081C9;\\n font-size: 21px;\\n margin: 10px 0; }\\n .order-price__info {\\n font-size: 12px; }\\n\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/view/modal/service-order-modal/service-order-modal.component.scss\n// module id = ./src/app/view/modal/service-order-modal/service-order-modal.component.scss\n// module chunks = main","import { Component, ViewChild, OnInit, Output, EventEmitter} from '@angular/core';\nimport { BsModalComponent } from 'ng2-bs3-modal';\nimport { IMyDrpOptions, IMyDateRangeModel } from 'mydaterangepicker';\nimport * as moment from 'moment';\n/*Services */\nimport { TariffService, AppService } from '@services';\nimport { Tariff, ServicesParameters, Service } from '@models';\n\n/*Config*/\nimport { CONFIG } from '../../../config';\n@Component({\n // tslint:disable-next-line:component-selector\n selector: 'service-order-modal',\n templateUrl: './service-order-modal.component.html',\n\tstyleUrls: ['./service-order-modal.component.scss']\n})\n\nexport class ServiceOrderModalComponent implements OnInit {\n submitForm = false;\n selectedDayDiff: number;\n @ViewChild('tariffModal') tariffModal: BsModalComponent;\n\tprivate maxRangeDay: number;\n\t@Output() onSendOrder = new EventEmitter();\n public myDateRangePickerOptions: IMyDrpOptions = {\n dateFormat: 'dd.mm.yyyy',\n selectBeginDateTxt: 'Выберите начало периода',\n selectEndDateTxt: 'Выберите конец периода',\n showSelectDateText: true,\n monthSelector: true,\n showClearDateRangeBtn: false,\n editableDateRangeField: false,\n openSelectorOnInputClick: true,\n showClearBtn: true,\n showApplyBtn: false,\n yearSelector: false,\n disableSince: { year: 0, month: 0, day: 0 },\n dayLabels: CONFIG.dayLabels,\n monthLabels: CONFIG.monthLabels\n };\n\tmodelDateRange;\n tariffList: Array;\n serviceName: string;\n paymentUrl = null;\n errorText = null;\n selectedTarif: Tariff;\n currentService: Service;\n constructor(\n\t private tariffService: TariffService,\n\t private appService: AppService\n ) {}\n\n ngOnInit() {\n this.initDateRange();\n }\n\n open(tariffList: Array, service:Service) {\n\t\tthis.currentService = service;\n\t\tif(this.currentService.serviceType==\"freezing\" && this.currentService.parameters.maxFreezeInDays){\n\t\t\tthis.maxRangeDay = parseInt(this.currentService.parameters.maxFreezeInDays)\n\t\t}else{\n\t\t\tthis.maxRangeDay = null;\n\t\t}\n\t\tthis.selectedTarif = null;\n\t\tthis.paymentUrl = null;\n\t\tthis.modelDateRange = null;\n\t\tthis.initDateRange();\n\t\tthis.tariffList = tariffList;\n\t\tthis.errorText = null;\n\t\tthis.selectedDayDiff = null;\n\t\tthis.tariffModal.open();\n \n }\n\n initDateRange() {\n\t\tconst date = new Date();\n\t\tconst copy = this.getCopyOfOptions();\n\t\tcopy.disableUntil = {\n\t\t year: date.getFullYear(),\n\t\t month: date.getMonth() + 1,\n\t\t day: date.getDate()\n\t\t};\n\t\n\t\tthis.myDateRangePickerOptions = copy;\n\t}\n onDateRangeChanged(event?: IMyDateRangeModel) {\n console.log(event)\n this.modelDateRange = {\n beginDate:null,\n endDate: null\n }\n\t\tthis.modelDateRange.beginDate = event.beginDate;\n\t\tthis.modelDateRange.endDate = event.endDate;\n\t\tconst fromMoment = moment.utc({\n\t\t year: this.modelDateRange.beginDate.year,\n\t\t month: this.modelDateRange.beginDate.month - 1,\n\t\t date: this.modelDateRange.beginDate.day\n\t\t});\n\t\n\t\tconst toMoment = moment.utc({\n\t\t year: this.modelDateRange.endDate.year,\n\t\t month: this.modelDateRange.endDate.month - 1,\n\t\t date: this.modelDateRange.endDate.day\n \t});\n \tlet daysDiff = Math.abs(fromMoment.diff(toMoment, 'days'))+1;\n \n \tthis.selectedDayDiff = parseInt(this.currentService.parameters.roamingRatePerDay)*daysDiff;\n }\n sendOrder(){\n console.log( this.modelDateRange)\n if(this.submitForm){\n return false;\n }\n this.errorText =null;\n if( !this.selectedTarif){\n this.errorText = \"Укажите номер SIM-карты\";\n return false;\n }\n if( !this.modelDateRange){\n this.errorText = \"Выберите период оказания услуги\";\n return false;\n }\n this.submitForm = true;\n const fromMoment = moment.utc({\n\t\t year: this.modelDateRange.beginDate.year,\n\t\t month: this.modelDateRange.beginDate.month - 1,\n\t\t date: this.modelDateRange.beginDate.day\n\t\t});\n\t\n\t\tconst toMoment = moment.utc({\n\t\t year: this.modelDateRange.endDate.year,\n\t\t month: this.modelDateRange.endDate.month - 1,\n\t\t date: this.modelDateRange.endDate.day\n\t\t});\n\t\n\t\tconst userDateTimeOffset = this.appService.userTimezoneOffset();\n\t\tconst from = moment(fromMoment).startOf('day').unix() + (userDateTimeOffset * 60 * 60);\n\t\t//const from = fromMoment.startOf('day').subtract(userDateTimeOffset, 'h').unix();\n\t\tconst to = toMoment.endOf('day').subtract(userDateTimeOffset, 'h').unix();\n\n\n const copy = this.getCopyOfOptions();\n copy.disableSince = {\n\t\t\tyear: 0,\n\t\t\tmonth: 0,\n\t\t\tday:0,\n\t\t};\n\t\tthis.myDateRangePickerOptions = copy;\n\n console.log(from,to)\n console.log(this.selectedTarif)\n console.log(this.currentService.serviceType)\n\n this.serviceOrder(this.selectedTarif.number, this.currentService.serviceType,from, to);\n }\n serviceOrder(number: string, serviceType: string, startServiceDate: number, endServiceDate: number) {\n this.tariffService.seriveceOrder(number, serviceType, startServiceDate, endServiceDate)\n .subscribe( response => {\n\t\tconsole.log(response)\n\t\tthis.onSendOrder.emit()\n if ( response.paymentUri && response.paymentUri.length > 0) {\n this.paymentUrl = response.paymentUri;\n }else{\n this.close()\n }\n \n this.submitForm = false;\n },\n error => {\n this.submitForm = false;\n let errorTariff = 'Ошибка при отправке заявки';\n if (error.error.errorMessage) {\n errorTariff = error.error.errorMessage;\n }\n this.errorText = errorTariff;\n console.log(error);\n });\n }\n\n \n onDateSelected(event) {\n if(this.maxRangeDay){\n const selectedDay = new Date(event.date.year, event.date.month - 1, event.date.day);\n\n const date = this.addDays(selectedDay, this.maxRangeDay);\n const copy = this.getCopyOfOptions();\n copy.disableSince = {\n year: date.getFullYear(),\n month: date.getMonth() + 1,\n day: date.getDate(),\n };\n\n this.myDateRangePickerOptions = copy;\n }\n \n }\n \n\taddDays(date, days) {\n\t\tconst result = new Date(date);\n\t\tresult.setDate(result.getDate() + days);\n\t\treturn result;\n \t}\n \tclickPay(){\n \tthis.close()\n \t}\n\n\tgetCopyOfOptions(): IMyDrpOptions {\n\t\treturn JSON.parse(JSON.stringify(this.myDateRangePickerOptions));\n \t}\n \n \tclose() {\n\t\tthis.onSendOrder.emit()\n \tthis.tariffModal.close();\n \t}\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/view/modal/service-order-modal/service-order-modal.component.ts","module.exports = \"\\n \\n

Настройки

\\n
\\n \\n
\\n \\n Загрузка...\\n \\n \\n \\n
    \\n
  • \\n {{template.title}}\\n
  • \\n\\n\\n \\n
\\n
\\n \\n \\n \\n \\n 0\\\">\\n \\n \\n \\n \\n\\n\\n\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n 0\\\">\\n \\n \\n \\n\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n\\n \\n \\n \\n \\n \\n \\n \\n
{{section.title}}
{{section_item.name}}\\n \\n \\n \\n {{value.name}}\\n \\n \\n \\n\\n\\n \\n
{{template.title}}
{{setting.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
Сcode
\\n \\n
\\n \\n
\\n \\n
\\n
\\n Таймеры\\n
\\n \\n \\n
\\n \\n
\\n
\\n
\\n
\\n
\\n Таймеры\\n
\\n \\n \\n\\n
\\n \\n
\\n
\\n
\\n
\\n
\\n
\\n\\n\\n \\n
\\n
\\n \\n
\\n
\\n
\\n\\n\\n\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/view/modal/settings-modal/settings-modal.component.html\n// module id = ./src/app/view/modal/settings-modal/settings-modal.component.html\n// module chunks = main","import { Component, ViewChild, OnDestroy } from '@angular/core';\nimport { Subject } from 'rxjs/Subject';\nimport 'rxjs/add/operator/takeUntil';\nimport { Router, NavigationEnd } from '@angular/router';\n\n/*Services */\nimport { StateService, CommandsService, SettingsService, CachedDataService, AuthService, DevicesService, AppService } from '@services';\n\n/*Models */\nimport { Device } from '@models/device';\nimport { ObservableObject } from '@models/observable-object';\n\n/*Plugins */\nimport { BsModalComponent } from 'ng2-bs3-modal';\n\nimport { SettingTemplateNodeItem } from \"@models\"\n\ndeclare var swal: any;\n\n@Component({\n // tslint:disable-next-line:component-selector\n selector: 'settings-modal',\n templateUrl: './settings-modal.component.html'\n})\n\nexport class SettingsComponent implements OnDestroy {\n @ViewChild('settingsComponent') settingsComponent: BsModalComponent;\n @ViewChild('changeObjectNameModal') changeObjectNameModal;\n @ViewChild('changeDevicePhoneModal') changeDevicePhoneModal;\n\n private ngUnsubscribe: Subject = new Subject();\n\n public newCommandsGroup: Array = [];\n public editCommandsGroup: Array = [];\n public cCode: string = null;\n public ifLoadCommand = false;\n public currentDevice: Device;\n ifChangeTimer = false;\n ifShowCcode = false;\n ifLoading = false;\n settingsTemplate: Array = [];\n currentSettingsValue;\n currentTemplate;\n newSettingsSet = [];\n timersListAll;\n timersListTime;\n timersListTemp;\n canShowTime = true;\n conditionParametrs = [];\n submitForm = false;\n ifCurrentPandora = false;\n observableObject: ObservableObject;\n\n phoneNumberModel;\n currentTimersSupport:Array<\n {\n groupId: string;\n type: string;\n }\n >\n constructor(\n private commandsService: CommandsService,\n private settingsService: SettingsService,\n private stateService: StateService,\n private cachedDataService: CachedDataService,\n private authService: AuthService,\n private appService: AppService,\n private devicesService: DevicesService,\n private router: Router\n ) {\n\n router.events.subscribe(event => {\n if (event instanceof NavigationEnd && event.url.indexOf('online') < 0) {\n this.close();\n }\n });\n\n this.cCode = this.cachedDataService.getCcode();\n this.observableObject = this.cachedDataService.getCurrentObject();\n\n\n\n this.currentDevice = this.stateService.currentDevice;\n console.log(this.currentDevice)\n this.checkIfShowCcode();\n\n this.stateService.currentDeviceObservable\n .takeUntil(this.ngUnsubscribe)\n .subscribe(device => {\n this.ifLoading = false;\n this.currentDevice = device;\n this.settingsTemplate = [];\n this.currentSettingsValue = null;\n this.checkIfShowCcode();\n this.checkIfShowTimer();\n });\n\n this.settingsService.openSettingsObservable\n .takeUntil(this.ngUnsubscribe)\n .subscribe((value) => {\n this.open(value);\n });\n\n this.commandsService.ifLoadCommandObservable\n .takeUntil(this.ngUnsubscribe)\n .subscribe(value => {\n this.ifLoadCommand = value;\n });\n\n this.stateService.updateDevicePhoneObservable\n .takeUntil(this.ngUnsubscribe)\n .subscribe(number => {\n this.currentDevice.phones[0].number = number;\n });\n\n this.commandsService.getCommandsGroupObservable\n .takeUntil(this.ngUnsubscribe)\n .subscribe(() => {\n this.loadCommandsGroups();\n });\n\n this.stateService.observableObjectObservable\n .takeUntil(this.ngUnsubscribe)\n .subscribe(object => {\n this.observableObject = object;\n });\n\n }\n getTimers() {\n this.settingsService.getTimers(this.currentDevice.id, this.currentDevice.provider).subscribe(response => {\n this.timersListAll = response;\n this.timersListTime = this.timersListAll.filter(timer => timer.type === 'time');\n this.timersListTemp = this.timersListAll.filter(timer => timer.type === 'temperature');\n });\n }\n getSettings(ifOpenCommand) {\n this.ifLoading = true;\n this.settingsService.getSettings(this.currentDevice.id, this.currentDevice.provider).subscribe((result) => {\n console.log(JSON.stringify(result))\n this.settingsTemplate = [];\n this.conditionParametrs = [];\n if (result && result.settingsTemplate) {\n /*temp array to exclude duplicate */\n // const tempArray = [];\n this.settingsTemplate = result.settingsTemplate.nodes.filter(item=>item.type==\"category\");\n result.settingsTemplate.nodes.filter(item=>item.type==\"section\").map(item=>{\n let parent= this.settingsTemplate.filter(parentItem=>parentItem.id== item.parentId)[0];\n if(parent){\n if(! parent.sections){\n parent.sections = []\n }\n\n parent.sections.push(item)\n \n }\n\n })\n\n console.log(this.settingsTemplate)\n this.currentSettingsValue = result.settings;\n this.currentTimersSupport = result.settingsTemplate.timersSupport\n \n\n\n result.settingsTemplate.parameters.map(parametr => {\n // if (parametr.settingsTemplateParametersGroup && tempArray.indexOf(parametr.settingsTemplateParametersGroup.id) < 0) {\n // /*if not yet added */\n // tempArray.push(parametr.settingsTemplateParametersGroup.id);\n // parametr.settingsTemplateParametersGroup['items'] = [];\n // this.settingsTemplate.push(parametr.settingsTemplateParametersGroup);\n // }\n\n // if (parametr.condition) {\n // /*Если этот параметр может выключаться */\n\n // /*По дефолту всегда выключаем переключаемые параметры */\n // parametr['disabled'] = false;\n\n\n // if (!this.conditionParametrs.filter(item => item.code === parametr.condition.code).length) {\n // /* Если ранее не добавлялл переключатель параметров */\n // const data = {\n // code: parametr.condition.code,\n // value: parametr.condition.value,\n // };\n\n // const conditionValue = this.currentSettingsValue.filter(item => item.code === parametr.condition.code)[0];\n // if (conditionValue) {\n // /*Если значение переключателя пришло с бека */\n // data.value = conditionValue.value;\n // }\n\n // this.conditionParametrs.push(data);\n // }\n // }\n\n\n });\n\n\n /*sorted by order */\n this.settingsTemplate = this.appService.sortedArray(this.settingsTemplate, 'order');\n this.settingsTemplate.map(category=>{\n if(category.sections){\n category.sections = this.appService.sortedArray(category.sections, 'order');\n }\n })\n\n result.settingsTemplate.parameters.map(parametr => {\n\n /*Добавляем значения */\n const item = this.currentSettingsValue.filter(value => value.code === parametr.code)[0];\n\n if (!item || !item.value) {\n // не пришло значение - значит не выводим полей вообще\n return;\n }\n parametr.valueArray = item;\n\n /*Добавляем значения */\n\n /*Находим текущую категорию настроек */\n let currentTemplate;\n this.settingsTemplate.map(category=>{\n if(category.id==parametr.settingsTemplateNodeId){\n currentTemplate = category;\n return;\n }else if(category.sections && category.sections.length){\n category.sections.map(section=>{\n if(section.id==parametr.settingsTemplateNodeId){\n currentTemplate = section;\n return;\n }\n })\n }\n })\n // = this.settingsTemplate.filter(item => item.id === parametr.settingsTemplateNodeId)[0];\n\n if (parametr.code) {\n\n if (parametr.valueInverse) {\n \n parametr.valueArray['initialValue'] = parseFloat(parametr.valueArray.value.toString());\n parametr.valueArray.value = (parseFloat(parametr.maxValue) - parseFloat(parametr.valueArray.initialValue.toString())) + parseFloat(parametr.minValue.toString());\n\n }\n\n if (parametr.valueFactor) {\n parametr.minValue = (parseFloat(parametr.minValue) * parametr.valueFactor).toFixed(2);\n parametr.maxValue = (parseFloat(parametr.maxValue) * parametr.valueFactor).toFixed(2);\n parametr.valueArray.value = (parseFloat(parametr.valueArray.value.toString()) * parametr.valueFactor).toFixed(2);\n }\n\n // if (parametr.condition) {\n // const currentCondition = this.conditionParametrs.filter(condition => condition.code === parametr.condition.code)[0];\n\n // if (parametr.disabledValue && parametr.disabledValue === parametr.valueArray.value) {\n // currentCondition.value = 'false';\n // parametr['disabled'] = true;\n // }\n // if (!parametr.disabledValue) {\n // /*Если нет значения для выключения, значит параметр пришел с бека */\n // if (currentCondition.value === 'false') {\n // parametr['disabled'] = true;\n // }\n // }\n\n // }\n if(!currentTemplate['items']){\n currentTemplate['items'] = []\n }\n currentTemplate['items'].push(parametr);\n }\n\n\n });\n\n\n\n this.settingsTemplate.map((template, index) => {\n\n\n if (!template.items || !template.items.length) {\n this.settingsTemplate.splice(index, 1);\n return;\n }\n\n template.items = this.appService.sortedArray(template.items, 'order');\n\n // template.items.map(item => {\n // if (!item.valueArray) {\n // /*Если это выключатель и у него нет значения с бека - добавляем ему значение */\n // const condition = this.conditionParametrs.filter(param => param.code === item.code)[0];\n // if (condition) {\n // item['valueArray'] = condition;\n // }\n // }\n\n // });\n\n });\n\n }\n\n\n /*push last template */\n this.settingsTemplate.push({\n id: 'fab',\n title: 'Управление быстрыми командами (FAB)'\n });\n this.settingsTemplate.unshift({\n id: 'auth',\n title: 'Авторизация'\n });\n\n\n /*Select first is active */\n if (ifOpenCommand) {\n this.currentTemplate = this.settingsTemplate[this.settingsTemplate.length - 1];\n } else {\n this.currentTemplate = this.settingsTemplate[0];\n }\n \n this.ifLoading = false;\n\n }, (error) => {\n let errorMessage = 'Ошибка, попробуйте позже';\n if (error && error.error.errorMessage && error.error.errorMessage.length) {\n errorMessage = error.error.errorMessage;\n }\n swal({\n type: 'error',\n text: errorMessage,\n showConfirmButton: true\n });\n \n this.ifLoading = false;\n this.close()\n });\n }\n\n\n\n checkIfShowCcode() {\n if (this.currentDevice && this.currentDevice.provider.toLowerCase() === 'magicsystems') {\n this.ifShowCcode = true;\n } else {\n this.ifShowCcode = false;\n }\n }\n\n checkIfShowTimer() {\n if (this.currentDevice.provider.toLowerCase() === 'magicsystems' || this.currentDevice.provider.toLowerCase() === 'pandora') {\n this.canShowTime = true;\n } else {\n this.canShowTime = false;\n }\n\n if (this.currentDevice.provider.toLowerCase() === 'pandora') {\n this.ifCurrentPandora = true;\n } else {\n this.ifCurrentPandora = false;\n }\n }\n\n reset() {\n this.timersListAll = null;\n this.timersListTime = null;\n this.timersListTemp = null;\n this.settingsTemplate = [];\n // this.editCommandsGroup = null;\n\n }\n\n selectTab(value) {\n this.currentTemplate = value;\n }\n\n loadCommandsGroups() {\n\n const selectedGroupCommand = this.cachedDataService.getSelectedGroupCommand();\n this.newCommandsGroup = JSON.parse(JSON.stringify(this.commandsService.commandsGroup));\n if (selectedGroupCommand) {\n /*load selected group command */\n this.newCommandsGroup.map((command) => {\n selectedGroupCommand.map((selectCommand) => {\n if (command.key === selectCommand.key) {\n command.checked = selectCommand.checked;\n }\n });\n });\n }\n this.editCommandsGroup = JSON.parse(JSON.stringify(this.newCommandsGroup));\n }\n\n open(ifOpenCommand) {\n /*copy the data model so that it does not change before clicking on the button*/\n if (!this.ifLoading) {\n if (this.canShowTime) {\n this.getTimers();\n }\n\n this.getSettings(ifOpenCommand);\n if (!this.newCommandsGroup.length) {\n this.ifLoadCommand = true;\n this.commandsService.getCommand();\n } else {\n this.editCommandsGroup = JSON.parse(JSON.stringify(this.newCommandsGroup));\n }\n this.newSettingsSet = [];\n }\n\n this.settingsComponent.open();\n }\n\n close() {\n this.ifChangeTimer = false;\n this.settingsComponent.close();\n }\n\n save() {\n\n\n\n\n /*save selected group commands on click save button */\n if (this.submitForm) {\n return;\n }\n this.cachedDataService.setCcode(this.cCode);\n this.stateService.addCcodeEvent.emit();\n this.newCommandsGroup = JSON.parse(JSON.stringify(this.editCommandsGroup));\n this.saveComandsGroups(this.newCommandsGroup);\n this.commandsService.getCommandsGroupSubject.next(this.newCommandsGroup);\n\n\n if (this.timersListTime && this.timersListTemp && this.canShowTime) {\n const ifShowAlert = this.newSettingsSet.length === 0 && this.ifChangeTimer;\n this.saveTimer(ifShowAlert);\n }\n\n\n\n // if (this.phoneNumberModel !== this.currentDevice.phones[0].number) {\n\n\n // }\n\n if (!this.newSettingsSet.length) {\n this.submitForm = false;\n this.close();\n return;\n }\n this.submitForm = true;\n\n\n if (this.newSettingsSet.length) {\n this.settingsService.saveSettings(this.currentDevice.id, this.newSettingsSet).subscribe(\n response => {\n this.submitForm = false;\n if (this.newSettingsSet.length || this.ifChangeTimer) {\n setTimeout(() => {\n swal({\n type: 'success',\n text: 'В течении нескольких минут настройки будут сохранены.',\n showConfirmButton: false,\n timer: 3000,\n });\n }, 500);\n this.close();\n }\n\n }, error => {\n this.submitForm = false;\n let errorMessage = 'Ошибка, попробуйте позже';\n if (error.error && error.error.errorMessage && error.error.errorMessage.length) {\n errorMessage = error.error.errorMessage;\n }\n swal({\n type: 'error',\n text: errorMessage,\n showConfirmButton: true\n });\n }\n );\n\n }\n }\n saveTimer(ifShowAlert) {\n\n Array.prototype.push.apply(this.timersListTime, this.timersListTemp);\n\n this.settingsService.setTimers(this.currentDevice.id, this.timersListTime).subscribe(response => {\n if (ifShowAlert) {\n setTimeout(() => {\n swal({\n type: 'success',\n text: 'В течении нескольких минут таймеры будут сохранены.',\n showConfirmButton: false,\n timer: 3000,\n });\n }, 500);\n this.close();\n }\n\n }, error => {\n let errorMessage = 'Ошибка, при сохранении таймеров';\n if (error.error && error.error.errorMessage && error.error.errorMessage.length) {\n errorMessage = error.error.errorMessage;\n }\n swal({\n type: 'error',\n text: errorMessage,\n showConfirmButton: true\n });\n });\n\n }\n\n saveComandsGroups(saveGgroups) {\n /*cashed selected group commands */\n const currentGroups = this.cachedDataService.getSelectedGroupCommand();\n let writeArray = [];\n if (currentGroups) {\n /*ih has selected */\n saveGgroups.map((group) => {\n const currentHasSave = currentGroups.filter(selectedGroup => selectedGroup.key === group.key);\n\n if (!currentHasSave.length && group.checked) {\n /*if new group and is she checked */\n currentGroups.push(group);\n } else {\n if (!group.checked) {\n /*delete group from current */\n const index = currentGroups.indexOf(currentHasSave[0], 0);\n if (index > -1) {\n currentGroups.splice(index, 1);\n }\n }\n }\n });\n writeArray = currentGroups;\n } else {\n /*if no selected, write new commands */\n writeArray = saveGgroups.filter((command) => command.checked);\n }\n if (!writeArray.length) {\n /*if noe commands - delete drom localStorage */\n\n this.cachedDataService.clearSelectedGroupCommand();\n\n } else {\n /*if has commands */\n this.cachedDataService.setSelectedGroupCommand(writeArray);\n }\n }\n changeSettingsValue(event, type, valueArray, setting?) {\n\n let value;\n\n const array = {\n code: null,\n value: null\n };\n if (type === 'range') {\n value = event.from;\n } else if (type === 'checkbox') {\n value = event.target.checked;\n }else if(type===\"list\"){\n value = valueArray.value;\n \n }else if(type===\"phone\"){\n value = event.replace(/\\D/g, '')\n } else if(type===\"bitmask\"){\n value = event;\n }\n valueArray.value = value;\n // const condition = this.conditionParametrs.filter(param => param.code === valueArray.code)[0];\n // let conditionSettingData;\n\n\n\n\n\n // if (condition) {\n // /*if checkbox has condition */\n\n // this.settingsTemplate.map(setting => {\n // if (setting.items) {\n // setting.items.map(item => {\n // if (item.condition && item.condition.code === condition.code) {\n // /*Проходимся по настройкам и выключаем все параметры*/\n // item['disabled'] = !value;\n // conditionSettingData = item;\n // }\n // });\n // }\n\n // });\n // array.code = conditionSettingData.valueArray.code;\n\n\n // const conditionFromApi = this.currentSettingsValue.filter(item => item.code === valueArray.code)[0];\n\n // if (conditionFromApi) {\n // /*Если значение этого параметра пришло с бека, тогда отправляем его же */\n // array.code = valueArray.code;\n // array.value = valueArray.value;\n // } else {\n // /*Если значение этого параметра не пришло с бека, отправляем значения не из выключателя а из выключаемого*/\n // if (value) {\n // /*Если включили - изначально передаем минимальное значение */\n // array.value = conditionSettingData.minValue;\n // } else {\n // /*Если выключили - тода передаем значение из disabledValue */\n // array.value = parseFloat(conditionSettingData.disabledValue);\n // }\n // }\n\n\n // } else {\n\n array.code = valueArray.code;\n array.value = valueArray.value;\n //}\n\n if (setting && setting.valueInverse && setting.type === 'Range') {\n array.value = (setting.maxValue - value) + setting.minValue;\n }\n\n if (setting && setting.valueFactor && setting.type === 'Range') {\n array.value = value / setting.valueFactor;\n }\n\n if (this.newSettingsSet && this.newSettingsSet.filter(item => item.code === array.code).length) {\n this.newSettingsSet.filter(item => item.code === array.code)[0].value = typeof array.value === 'string' ? array.value : JSON.stringify(array.value);\n } else {\n array.value = typeof array.value === 'string' ? array.value : JSON.stringify(array.value)\n this.newSettingsSet.push(array);\n }\n }\n\n onAddTimer(event) {\n this.ifChangeTimer = true;\n if (event.type === 'time') {\n this.timersListTime.push(event);\n this.timersListTime = this.timersListTime.slice(0);\n } else {\n this.timersListTemp.push(event);\n this.timersListTemp = this.timersListTemp.slice(0);\n }\n }\n\n onDeleteTimer(timersList, type) {\n this.ifChangeTimer = true;\n if (type === 'time') {\n this.timersListTime = timersList;\n } else {\n this.timersListTemp = timersList;\n }\n }\n\n myOnChange(event, setting) {\n const range = document.getElementsByClassName('range-' + setting + '-js')[0];\n if (range.classList.contains('range-showMinMax')) {\n range.classList.remove('range-showMinMax--max');\n range.classList.remove('range-showMinMax--min');\n if (parseFloat(event.from) === event.max) {\n range.classList.add('range-showMinMax--max');\n }\n if (parseFloat(event.from) === event.min) {\n range.classList.add('range-showMinMax--min');\n }\n }\n\n }\n getPhoneValue(){\n if(this.currentDevice.phones && this.currentDevice.phones.length){\n return this.currentDevice.phones.filter(phone => phone.usageType == \"main\")[0].number;\n }else{\n return ''\n }\n }\n changePassword() {\n this.authService.userUpdatePasswordSubject.next();\n }\n\n onChangeUsername(event) {\n this.phoneNumberModel = event;\n }\n\n changeObjectName() {\n this.changeObjectNameModal.open();\n }\n\n changeDevicePhone() {\n this.changeDevicePhoneModal.open();\n }\n checkTimerSupport(templateId: string){\n if(!this.currentTimersSupport){\n return false;\n }\n return this.currentTimersSupport.filter(item=>item.groupId==templateId).length>0;\n }\n\n ngOnDestroy() {\n this.ngUnsubscribe.next();\n this.ngUnsubscribe.complete();\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/view/modal/settings-modal/settings-modal.component.ts","module.exports = \"\\n \\n

Отменить заявку

\\n
\\n \\n
\\n
\\n
\\n\\n
\\n \\n
\\n
{{errorMessage}}
\\n
\\n
\\n \\n\\n \\n\\n
\\n \\n
\\n\\n\\n\\n
\\n
\\n\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/view/modal/share-device-cancel-modal/share-device-cancel-modal.component.html\n// module id = ./src/app/view/modal/share-device-cancel-modal/share-device-cancel-modal.component.html\n// module chunks = main","import { Component, ViewChild,Input, OnInit } from '@angular/core';\n/*Plugins */\nimport { BsModalComponent } from 'ng2-bs3-modal';\n\n/*Services*/\nimport { ShareDeviceService, ObservableObjectsService } from \"@services\"\n\nimport { Device, ShareRequest, ObservableObject } from '@models';\n\nimport { ObjectsService } from '@services/http/objects.service';\n\nimport { CachedDataService } from '@services/data/cached-data.service';\n\nimport { CONFIG } from '../../../config';\ndeclare var swal: any;\n\n@Component({\n selector: 'app-share-device-cancel-modal',\n templateUrl: './share-device-cancel-modal.component.html'\n})\n\nexport class ShareDeviceCancelModalComponent implements OnInit {\n\n @ViewChild('shareDeviceModal') shareDeviceModal: BsModalComponent;\n currentRequest: ShareRequest;\n errorMessage: string;\n trySubmit = false;\n btnText: any = {\n text: 'Отменить',\n defaultText: 'Отменить',\n loadText: 'Отмена..'\n };\n\n observableObjects: ObservableObject[];\n\n constructor(private shareDeviceService: ShareDeviceService, private objectsService: ObjectsService, private cachedDataService: CachedDataService, private observableObjectsService: ObservableObjectsService){}\n\n\n ngOnInit(){\n \n }\n initForm(){\n }\n \n\n\tsubmit(){\n\t\tthis.trySubmit = true;\n \n\n this.shareDeviceService.confirmShareDevice(this.currentRequest.deviceId, this.currentRequest.slaveUserId,\"declined\")\n .subscribe(response => {\n this.shareDeviceService.updateRequestsSubject.next(null)\n this.btnText.text = this.btnText.defaultText;\n this.trySubmit = false;\n this.btnText.text = this.btnText.defaultText;\n\n swal({\n type: 'success',\n text: 'Заявка отменена',\n showConfirmButton: false,\n timer: 3000,\n });\n this.close();\n },\n error => {\n this.btnText.text = this.btnText.defaultText;\n let errorMessage = 'Ошибка, повторите позже';\n if (error.error && error.error.errorMessage) {\n errorMessage = error.error.errorMessage;\n }\n this.errorMessage = errorMessage;\n this.trySubmit = false;\n this.btnText.text = this.btnText.defaultText;\n }\n );\n\n\n \n\t\tthis.btnText.text = this.btnText.loadText;\n\t\tthis.errorMessage = null;\n\t}\n\n \topen(request: ShareRequest) {\n\t\tthis.initForm();\n\t\tthis.currentRequest = request;\n\t\tthis.shareDeviceModal.open();\n\t}\n\n\tclose() {\n\t\tthis.shareDeviceModal.close();\n\t}\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/view/modal/share-device-cancel-modal/share-device-cancel-modal.component.ts","module.exports = \"\\n \\n

Добавления устройства

\\n
\\n \\n
\\n
\\n
\\n\\n \\n \\n
\\n
\\n \\n \\n
Это поле обязательно для заполнения
\\n
\\n
\\n \\n \\n \\n
\\n
\\n
{{errorMessage}}
\\n
\\n \\n \\n
\\n\\n\\n\\n
\\n
\\n\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/view/modal/share-device-confirm-modal/share-device-confirm-modal.component.html\n// module id = ./src/app/view/modal/share-device-confirm-modal/share-device-confirm-modal.component.html\n// module chunks = main","import { Component, ViewChild,Input, OnInit } from '@angular/core';\n/*Plugins */\nimport { BsModalComponent } from 'ng2-bs3-modal';\n\n/*Services*/\nimport { ShareDeviceService, ObservableObjectsService } from \"@services\"\n\nimport { Device, ShareRequest, ObservableObject } from '@models';\n\nimport { ObjectsService } from '@services/http/objects.service';\n\nimport { CachedDataService, AppService } from '@services';\n\nimport { CONFIG } from '../../../config';\ndeclare var swal: any;\n\n@Component({\n selector: 'app-share-device-confirm-modal',\n templateUrl: './share-device-confirm-modal.component.html'\n})\n\nexport class ShareDeviceConfirmModalComponent implements OnInit {\n\n @ViewChild('shareDeviceModal') shareDeviceModal: BsModalComponent;\n currentRequest: ShareRequest;\n errorMessage: string;\n newObjectNameModal: string;\n typeAddModel = \"new\";\n trySubmit = false;\n extraType = CONFIG.extra;\n observableObjectIdModel;\n btnText: any = {\n text: 'Подвердить',\n defaultText: 'Подвердить',\n loadText: 'Подверждение..'\n };\n\n observableObjects: ObservableObject[];\n\n constructor(private shareDeviceService: ShareDeviceService, private objectsService: ObjectsService, private cachedDataService: CachedDataService, private observableObjectsService: ObservableObjectsService, private appService: AppService){}\n\n\n ngOnInit(){\n\n if(!this.cachedDataService.isAuth())\n return;\n\n\tthis.getObservableObjects()\n }\n initForm(){\n this.newObjectNameModal = null;\n\tthis.typeAddModel = \"new\";\n\tthis.observableObjectIdModel = null\n }\n\n onChangeType(){\n console.log(this.typeAddModel)\n }\n\n\tsubmit(){\n\t\tthis.trySubmit = true;\n\t\tif(this.typeAddModel === \"new\"){\n\t\t\tif(!this.newObjectNameModal || !this.newObjectNameModal.length){\n\t\t\t\treturn false;\n\t\t\t}\n\t\t\tthis.createNewObject()\n\t\t}else{\n\t\t\tthis.addDeviceToObject(this.observableObjectIdModel)\n\t\t}\n\t\tthis.btnText.text = this.btnText.loadText;\n\t\tthis.errorMessage = null;\n\t}\n\n\tcreateNewObject(){\n\t\tthis.objectsService.addObject(\n\t\t\tthis.newObjectNameModal,\n\t\t\t'Transport',\n\t\t\tthis.extraType.car,\n\t\t\tthis.cachedDataService.currentUserId)\n\t\t\t\t.subscribe(response => {\n\t\t\t\t\tconsole.log(response)\n\t\t\t\t\tthis.addDeviceToObject(response.id)\n\t\t\t\t},\n\t\t\t\terror => {\n\t\t\t\t\tthis.btnText.text = this.btnText.defaultText;\n\t\t\t\t\tlet errorMessage = 'Ошибка, повторите позже';\n\t\t\t\t\tif (error.error && error.error.errorMessage) {\n\t\t\t\t\t\terrorMessage = error.error.errorMessage;\n\t\t\t\t\t}\n\t\t\t\t\tthis.errorMessage = errorMessage;\n\t\t\t\t\tthis.trySubmit = false;\n\t\t\t\t\tthis.btnText.text = this.btnText.defaultText;\n\t\t\t\t}\n\t\t\t);\n\t}\n\n\taddDeviceToObject(objectId?){\n\t\tthis.shareDeviceService.confirmShareDevice(this.currentRequest.deviceId, this.currentRequest.slaveUserId,\"confirmed\",null, objectId ? objectId : \"test\" )\n\t\t.subscribe(response => {\n\t\t\t\tthis.shareDeviceService.updateRequestsSubject.next(null)\n\t\t\t\tthis.btnText.text = this.btnText.defaultText;\n\t\t\t\tthis.trySubmit = false;\n\t\t\t\tthis.btnText.text = this.btnText.defaultText;\n\n\t\t\t\tswal({\n\t\t\t\t\ttype: 'success',\n\t\t\t\t\ttext: 'Устройство добавлено',\n\t\t\t\t\tshowConfirmButton: false,\n\t\t\t\t\ttimer: 3000,\n\t\t\t\t});\n\t\t\t\tthis.getObservableObjects()\n\t\t\t\tthis.close();\n\t\t\t},\n\t\t\terror => {\n\t\t\t\tthis.btnText.text = this.btnText.defaultText;\n\t\t\t\tlet errorMessage = 'Ошибка, повторите позже';\n\t\t\t\tif (error.error && error.error.errorMessage) {\n\t\t\t\t\terrorMessage = error.error.errorMessage;\n\t\t\t\t}\n\t\t\t\tthis.errorMessage = errorMessage;\n\t\t\t\tthis.trySubmit = false;\n\t\t\t\tthis.btnText.text = this.btnText.defaultText;\n\t\t\t}\n\t\t);\n\t}\n\n\n\tgetObservableObjects(){\n\n\t\tthis.observableObjectsService.getAll()\n\t\t\t.subscribe(response => {\n\t\t\t\tif(response && response.length){\n\t\t\t\t\tthis.observableObjects = this.appService.filterObjects(response);\n\t\t\t\t\tthis.cachedDataService.setObservableObjects(this.observableObjects);\n\t\t\t\t\tthis.observableObjects = this.cachedDataService.getObservableObjects();\n\t\t\t\t}else{\n\t\t\t\t\tthis.observableObjects = null;\n\t\t\t\t}\n\n\t\t\t}, error =>{\n\t\t\t\tconsole.log('from component error', error)\n\t\t\t});\n\n\t }\n\n \topen(request: ShareRequest) {\n\t\tthis.initForm();\n\t\tthis.currentRequest = request;\n\t\tthis.shareDeviceModal.open();\n\t}\n\n\tclose() {\n\t\tthis.shareDeviceModal.close();\n\t}\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/view/modal/share-device-confirm-modal/share-device-confirm-modal.component.ts","module.exports = \"\\n \\n

Расшарить устройство

\\n
\\n \\n\\n
\\n
\\n \\n \\n \\n \\n
\\n \\n \\n
\\n
{{errorMessage}}
\\n
\\n\\n \\n \\n
\\n
\\n
\\n\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/view/modal/share-device-modal/share-device-modal.component.html\n// module id = ./src/app/view/modal/share-device-modal/share-device-modal.component.html\n// module chunks = main","import { Component, ViewChild,Input, OnInit } from '@angular/core';\n/*Plugins */\nimport { BsModalComponent } from 'ng2-bs3-modal';\n\n/*Services*/\nimport { ShareDeviceService } from \"@services\"\n\nimport { Device } from '@models';\n\n\n\ndeclare var swal: any;\n\n@Component({\n selector: 'app-share-device-modal',\n templateUrl: './share-device-modal.component.html'\n})\n\nexport class ShareDeviceModalComponent implements OnInit {\n\n @ViewChild('shareDeviceModal') shareDeviceModal: BsModalComponent;\n currentDevice: Device;\n \n phoneModel: string;\n errorMessage: string;\n \n deviceId: string;\n ifShowPopup = false;\n accessList = [\n {\n name:\"Стандартный доступ\",\n id: \"baseAccess\"\n },\n {\n name:\"Полный доступ\",\n id: \"fullAccess\"\n }\n \n ]\n accessModel = this.accessList[0].id;\n btnText: any = {\n text: 'Отправить',\n defaultText: 'Отправить',\n loadText: 'Отправление..'\n };\n\n trySubmit = false;\n\n\n constructor(private shareDeviceService: ShareDeviceService){}\n\n\n ngOnInit(){\n this.initForm()\n }\n open(device: Device) {\n this.initForm()\n console.log(this.phoneModel)\n this.currentDevice = device;\n this.ifShowPopup = true;\n this.shareDeviceModal.open();\n }\n initForm(){\n this.accessModel = this.accessList[0].id;\n this.phoneModel = null;\n this.ifShowPopup = false;\n this.errorMessage = null;\n }\n close() {\n this.shareDeviceModal.close();\n \n }\n\n submit(){\n this.trySubmit = true;\n if(!this.phoneModel){\n return;\n }\n this.errorMessage = null;\n this.btnText.text = this.btnText.loadText;\n this.shareDeviceService.shareDevice(this.phoneModel.replace(/\\D/g, ''),this.currentDevice.id,this.accessModel)\n .subscribe(response => {\n this.trySubmit = false;\n this.btnText.text = this.btnText.defaultText;\n\n this.shareDeviceService.updateRequestsSubject.next(null)\n swal({\n type: 'success',\n text: 'Доступ отправлен',\n showConfirmButton: false,\n timer: 3000,\n });\n \n this.close();\n },\n error => {\n \n console.log(error)\n let errorMessage = 'Ошибка, проверьте корректность данных или повторите позже';\n if (error.error && error.error.errorMessage) {\n errorMessage = error.error.errorMessage;\n }\n \n this.errorMessage = errorMessage;\n this.trySubmit = false;\n this.btnText.text = this.btnText.defaultText;\n console.log(error.type);\n }\n );\n\n }\n\n onChangePhone(value) {\n this.trySubmit = false;\n this.phoneModel = value;\n //this.addObjectForm.controls['phonenumber'].setValue(value);\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/view/modal/share-device-modal/share-device-modal.component.ts","module.exports = \"\\n \\n

Продление тарифа

\\n
\\n \\n
\\n
\\n Получение ссылки на продление тарифа...\\n
\\n
\\n
\\n {{errorText}}\\n
\\n Перейти к оплате\\n
\\n
\\n\\n\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/view/modal/tariff-modal/tariff-modal.component.html\n// module id = ./src/app/view/modal/tariff-modal/tariff-modal.component.html\n// module chunks = main","import { Component, ViewChild, OnInit} from '@angular/core';\nimport { BsModalComponent } from 'ng2-bs3-modal';\n\n/*Services */\nimport { TariffService } from '@services/tariff.services';\nimport { Tariff } from '@models';\n\n@Component({\n // tslint:disable-next-line:component-selector\n selector: 'tariff-modal',\n templateUrl: './tariff-modal.component.html'\n})\n\nexport class TariffModalComponent implements OnInit {\n\n @ViewChild('tariffModal') tariffModal: BsModalComponent;\n paymentUrl = null;\n errorText = null;\n constructor(\n private tariffService: TariffService\n ) {}\n\n ngOnInit() {\n\n }\n\n open(tariff: Array) {\n this.errorText = null;\n this.paymentUrl = null;\n this.tariffModal.open();\n this.getPaymentUrl(tariff);\n }\n getPaymentUrl(tariff: Array) {\n this.tariffService.getTariffUrlPayment(tariff)\n .subscribe( response => {\n if ( response.paymentUri && response.paymentUri.length > 0) {\n this.paymentUrl = response.paymentUri;\n }\n },\n error => {\n let errorTariff = 'Ошибка при получении ссылки на оплату тарифа.';\n if (error.error.errorMessage) {\n errorTariff = error.error.errorMessage;\n }\n this.errorText = errorTariff;\n console.log(error);\n });\n }\n close() {\n this.tariffModal.close();\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/view/modal/tariff-modal/tariff-modal.component.ts","module.exports = \"\\n \\n

{{showClose ? \\\"Изменение пароля\\\" : \\\"Необходимо обновить пароль\\\" }}

\\n
\\n \\n

Уважаемый пользователь, у Вас изменен пароль на устройстве у провайдера, если хотите продолжать пользоваться системой, введите измененный пароль.

\\n \\n
\\n
\\n
\\n \\n \\n \\n
\\n
\\n
\\n \\n \\n \\n
\\n
\\n
\\n \\n \\n \\n
\\n\\n
{{errorMessage}}
\\n
\\n\\n \\n \\n
\\n
\\n
\\n\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/view/modal/update-password-modal/update-password-modal.component.html\n// module id = ./src/app/view/modal/update-password-modal/update-password-modal.component.html\n// module chunks = main","import { Component, ViewChild, OnInit, OnDestroy } from '@angular/core';\nimport { FormGroup, FormBuilder, Validators } from '@angular/forms';\nimport { Subject } from 'rxjs/Subject';\nimport 'rxjs/add/operator/takeUntil';\n\n/**Models */\nimport { Device } from '@models/device';\n\n/*Services */\nimport { StateService } from '@services/state.service';\nimport { DevicesService } from '@services/http/devices.service';\nimport { AuthService } from '@services/http/auth.service';\nimport { CachedDataService } from '@services/data/cached-data.service';\n\n/*Plugins */\nimport { BsModalComponent } from 'ng2-bs3-modal';\n\ndeclare var swal: any;\n\n\n@Component({\n // tslint:disable-next-line:component-selector\n selector: 'update-password-modal',\n templateUrl: './update-password-modal.component.html'\n})\n\nexport class UpdatePasswordModalComponent implements OnDestroy {\n\n @ViewChild('updatePasswordModal') updatePasswordModal: BsModalComponent;\n private ngUnsubscribe: Subject = new Subject();\n updatePasswordForm: FormGroup;\n currentDevice: Device;\n paymentUrl = null;\n errorText = null;\n trySend = false;\n ifShowOnce = false;\n errorMessage;\n \n showClose = true;\n showPasswordParam =false;\n\n btnText: any = {\n text: 'Обновить',\n defaultText: 'Обновить',\n loadText: 'Обработка..'\n };\n\n constructor(\n private stateService: StateService,\n private formBuilder: FormBuilder,\n private devicesService: DevicesService,\n private authService: AuthService,\n private cachedDataService: CachedDataService,\n ) {\n this.authService.needUpdatePasswordObservable\n .takeUntil(this.ngUnsubscribe)\n .subscribe(() => {\n if (!this.ifShowOnce) {\n this.ifShowOnce = true;\n this.showClose = false;\n this.cachedDataService.needUpdatePassword = true;\n this.open();\n\n }\n });\n this.authService.userUpdatePasswordSubject\n .takeUntil(this.ngUnsubscribe)\n .subscribe(() => {\n this.showClose = true;\n this.cachedDataService.needUpdatePassword = false;\n this.open();\n });\n\n this.stateService.currentDeviceObservable\n .takeUntil(this.ngUnsubscribe)\n .subscribe(device => {\n this.currentDevice = device;\n\n });\n }\n\n\n\n initForm() {\n if(this.cachedDataService.needUpdatePassword){\n this.updatePasswordForm = this.formBuilder.group({\n newPassword: ['', [Validators.required]],\n newPasswordCheck: ['', [Validators.required]],\n ProviderAccountId: [''],\n isLocal: true\n });\n }else{\n this.updatePasswordForm = this.formBuilder.group({\n oldPassword: ['', [Validators.required]],\n newPassword: ['', [Validators.required]],\n newPasswordCheck: ['', [Validators.required]],\n ProviderAccountId: [''],\n isLocal: false\n });\n }\n this.updatePasswordForm.controls['ProviderAccountId'].setValue(this.currentDevice.providerAccountId);\n }\n\n submit() {\n if (this.trySend) {\n return false;\n }\n this.errorMessage = null;\n if (this.updatePasswordForm.invalid) {\n const controls = this.updatePasswordForm.controls;\n Object.keys(controls)\n .forEach(controlName => controls[controlName].markAsTouched());\n return;\n }\n\n if (this.updatePasswordForm.value.newPassword !== this.updatePasswordForm.value.newPasswordCheck) {\n this.errorMessage = 'Подтверждение не совпадает с паролем';\n return false;\n }\n this.trySend = true;\n this.btnText.text = this.btnText.loadText;\n\n this.devicesService.updatePassword(\n this.updatePasswordForm.value.newPassword,\n this.cachedDataService.needUpdatePassword ? null : this.updatePasswordForm.value.oldPassword,\n this.updatePasswordForm.value.ProviderAccountId,\n this.updatePasswordForm.value.isLocal,\n )\n .subscribe(response => {\n this.trySend = false;\n this.btnText.text = this.btnText.defaultText;\n\n this.ifShowOnce = false;\n if (!this.cachedDataService.needUpdatePassword) {\n swal({\n type: 'success',\n text: 'Пароль изменен',\n showConfirmButton: false,\n timer: 3000,\n });\n }else{\n this.stateService.loadState();\n }\n this.close();\n },\n error => {\n\n let errorMessage = 'Ошибка, проверьте корректность данных или повторите позже';\n if (error.error) {\n error = error.error;\n }\n if (error.capchaId && error.capchaUri) {\n\n } else if (error.errorMessage && error.errorMessage.length > 0) {\n errorMessage = error.errorMessage;\n\n }\n this.errorMessage = errorMessage;\n this.trySend = false;\n this.btnText.text = this.btnText.defaultText;\n console.log(error.type);\n }\n );\n }\n open() {\n this.initForm();\n this.updatePasswordModal.open();\n }\n\n close() {\n this.updatePasswordModal.close();\n }\n showPassword(){\n this.showPasswordParam = ! this.showPasswordParam;\n }\n\n ngOnDestroy() {\n this.ngUnsubscribe.next();\n this.ngUnsubscribe.complete();\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/view/modal/update-password-modal/update-password-modal.component.ts","module.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 {{ getLastStateTime() }}\\n \\n
\\n\\n
\\n 1 || (observableObjects[0].devices && observableObjects[0].devices.length>1)\\\" class=\\\"hover\\\"\\n (click)=\\\"selectObject()\\\">\\n {{currentObservableObject.name}} ( {{ currentDevice.login }} )\\n \\n \\n {{currentObservableObject.name}} ( {{ currentDevice.login }} )\\n \\n
\\n
\\n
\\n
\\n\\n\\n\\n \\n\\n\\n\\n \\n\\n \\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/view/online/online.component.html\n// module id = ./src/app/view/online/online.component.html\n// module chunks = main","module.exports = \".car-status.is-hidden img {\\n height: 0px; }\\n\\nhtml,\\nbody,\\n#map_canvas {\\n height: 100%;\\n width: 100%;\\n margin: 0px; }\\n\\n.car-status img.is-hidden {\\n height: 0px;\\n width: 0px;\\n display: none; }\\n\\n.is-hidden {\\n display: none; }\\n\\n.car-status div.is-hidden {\\n height: 0px;\\n width: 0px;\\n display: none; }\\n\\n.personal-info {\\n position: absolute;\\n top: 0;\\n top: 58px;\\n background: #e2e2e2a3;\\n left: 420px;\\n padding: 15px; }\\n\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/view/online/online.component.scss\n// module id = ./src/app/view/online/online.component.scss\n// module chunks = main","import { Component, OnInit, ViewChild, OnDestroy } from '@angular/core';\nimport { ActivatedRoute, Router, NavigationEnd } from '@angular/router';\nimport { Subject } from 'rxjs/Subject';\nimport 'rxjs/add/operator/takeUntil';\n\n/*Services*/\nimport { ScreenService, StateService, ObservableObjectsService, DevicesService, CachedDataService, AppService } from '@services';\n\n/*Models*/\nimport { ObservableObject, Device, DeviceState } from '@models';\n\n/*Config */\nimport { CONFIG } from './../../config';\n\n@Component({\n selector: 'app-online',\n templateUrl: './online.component.html',\n styleUrls: ['./online.component.scss']\n})\n\nexport class OnlineComponent implements OnInit, OnDestroy {\n @ViewChild('selectObjectModal') selectObjectModal;\n @ViewChild('gmap') gmapElement: any;\n\n currentObservableObject: ObservableObject;\n currentDevice: Device;\n currentObject: ObservableObject;\n state: DeviceState;\n currentDeviceId;\n currentObjectId;\n observableObjects: Array;\n isSyncState = false;\n isLoadData = true;\n ifLoadDevice = true;\n ifWatchAnotherUser = false;\n\n private routerEventsSubscribe;\n private ngUnsubscribe: Subject = new Subject();\n private UpdateTimer;\n private UpdateTimerInterval = CONFIG.intervalUpdateState;\n\n constructor(\n private cachedDataService: CachedDataService,\n private activeRoute: ActivatedRoute,\n private router: Router,\n public screenService: ScreenService,\n private stateService: StateService,\n private observableObjectsService: ObservableObjectsService,\n private devicesService: DevicesService,\n private appService: AppService) {\n\n this.activeRoute.params.subscribe(params => {\n /*open modal select device */\n this.observableObjectsService.getAll()\n .subscribe(response => {\n this.observableObjects = this.appService.filterObjects(response);\n this.cachedDataService.setObservableObjects(this.observableObjects);\n if (this.observableObjects.length) {\n if (!params['deviceId'] || !params['objectId']) {\n /*if has object, select device */\n if(!this.cachedDataService.needUpdatePassword){\n setTimeout(() => {\n this.selectObjectModal.open(true);\n }, 100);\n }\n } else {\n this.currentDeviceId = params['deviceId'];\n this.cachedDataService.setCurrentDeviceId(this.currentDeviceId);\n }\n } else {\n /*if no object */\n this.router.navigate(['/personal']);\n }\n\n },\n error => {\n console.log('from component error', error);\n }\n );\n });\n }\n\n\n\n\n ngOnInit() {\n this.screenService.isDataLoadingSubject.next(true);\n this.screenService.isShowLoader = false;\n this.stateService.autoUpdatePositionSubject.next(true);\n\n this.observableObjects = this.cachedDataService.getObservableObjects();\n\n this.stateService.observableObjectObservable\n .takeUntil(this.ngUnsubscribe)\n .subscribe(object => {\n this.currentObservableObject = object;\n });\n this.stateService.currentDeviceObservable\n .takeUntil(this.ngUnsubscribe)\n .subscribe(device => {\n this.currentDevice = device;\n });\n this.stateService.stateObservable\n .takeUntil(this.ngUnsubscribe)\n .subscribe(state => {\n this.state = state;\n this.upDateTimerSet();\n });\n this.screenService.isDataLoadingObservable\n .takeUntil(this.ngUnsubscribe)\n .subscribe(value => {\n this.isLoadData = value;\n });\n this.stateService.isSyncStateObservable\n .takeUntil(this.ngUnsubscribe)\n .subscribe(value => {\n this.isSyncState = value;\n });\n\n this.routerEventsSubscribe = this.router.events\n .subscribe(event => {\n if (event instanceof NavigationEnd) {\n if (this.activeRoute.snapshot.params['deviceId'] && this.currentDevice) {\n if (this.activeRoute.snapshot.params['deviceId'] !== this.currentDevice.id) {\n this.setupCurrenDevice();\n } else {\n this.stateService.loadState();\n }\n }\n }\n });\n\n this.screenService.initMap(this.gmapElement.nativeElement);\n this.setupCurrenDevice();\n }\n\n getLastStateTime() {\n return this.stateService.getLastStateTime();\n }\n\n setupCurrenDevice() {\n this.screenService.isDataLoadingSubject.next(true);\n\n this.currentDeviceId = this.activeRoute.snapshot.params['deviceId'];\n this.currentObjectId = this.activeRoute.snapshot.params['objectId'];\n\n if (!this.currentDeviceId || !this.currentObjectId) {\n this.router.navigate(['/online']);\n return;\n }\n this.ifLoadDevice = true;\n\n this.getObject();\n\n }\n\n getObject() {\n // this.stateService.currentDeviceSubject.next(null);\n this.observableObjectsService.getObjectById(this.currentObjectId)\n .subscribe(response => {\n if (response) {\n this.currentObject = response;\n this.cachedDataService.currentUserId = this.currentObject.user.id;\n this.cachedDataService.ifWatchAnotherUser = this.checkIsWatchAnotherUser();\n this.ifWatchAnotherUser = this.cachedDataService.ifWatchAnotherUser;\n this.getDevice();\n } else {\n this.ifLoadDevice = false;\n this.router.navigate(['/online']);\n }\n },\n error => {\n this.ifLoadDevice = false;\n this.router.navigate(['/online']);\n console.log('from component error', error);\n }\n );\n }\n\n checkIsWatchAnotherUser(): boolean {\n return this.observableObjects.filter(object => object.id === this.currentObject.id)[0] === undefined;\n }\n getDevice() {\n this.devicesService.getDeivesByObjectId(this.currentObject.id)\n .subscribe(response => {\n if (response && response.data.length) {\n const device = response.data.filter(x => x.id === this.currentDeviceId)[0];\n if (device) {\n\n this.currentDevice = device;\n this.stateService.setCurrentObject(this.currentObject);\n this.stateService.setCurrentDevice(this.currentDevice);\n\n this.cachedDataService.setCurrentDevice(this.currentDevice);\n this.stateService.loadState();\n } else {\n this.router.navigate(['/online']);\n }\n\n } else {\n this.router.navigate(['/online']);\n }\n this.ifLoadDevice = false;\n },\n error => {\n this.ifLoadDevice = false;\n this.router.navigate(['/online']);\n console.log('from component error', error);\n }\n );\n }\n\n syncState() {\n this.stateService.syncState(true);\n }\n\n selectObject() {\n this.selectObjectModal.open();\n }\n\n upDateTimerSet(customInterval?) {\n if (this.UpdateTimer != null) {\n clearTimeout(this.UpdateTimer);\n this.UpdateTimer = null;\n }\n this.UpdateTimer = setInterval(() => {\n if (!this.ifLoadDevice) {\n this.stateService.syncState(true);\n }\n }, customInterval ? customInterval : this.UpdateTimerInterval);\n }\n\n triggerState() {\n this.screenService.isStateHidden = !this.screenService.isStateHidden;\n this.screenService.triggerStateSubject.next(this.screenService.isStateHidden);\n }\n\n ngOnDestroy() {\n this.routerEventsSubscribe.unsubscribe();\n this.ngUnsubscribe.next();\n this.ngUnsubscribe.complete();\n clearTimeout(this.UpdateTimer);\n this.UpdateTimer = null;\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/view/online/online.component.ts","module.exports = \"
\\n \\n
\\n
\\n Вы находитесь в режиме просмотра устройств пользователя.\\n Вернуться\\n к списку своих устройств.\\n
\\n
\\n
\\n\\n
\\n

\\n Название объекта\\n {{observableObject.name}}\\n

\\n \\n
\\n
\\n
\\n \\n \\n
\\n {{device.tariff.error}}\\n
\\n
\\n\\n\\n
\\n Номер\\n

{{device.mainPhone}}

\\n
\\n \\n
\\n Название тарифа\\n

{{device.tariff.tariff}}

\\n
\\n
\\n Дата окончания\\n

{{device.tariff.dateFormat}}

\\n
\\n \\n
\\n
\\n
\\n
x
\\n\\n
\\n\\n
\\n


\\n У вас пока нет прикрепленных автомобилей.\\n

\\n\\n \\n
\\n
\\n\\n\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/view/personal/personal.component.html\n// module id = ./src/app/view/personal/personal.component.html\n// module chunks = main","module.exports = \".object-info {\\n background: #fff;\\n border-radius: 2px;\\n margin: 15px 0;\\n -webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);\\n box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);\\n position: relative;\\n font-size: 12px;\\n line-height: 18px;\\n color: #CCCCCC; }\\n .object-info__delete {\\n position: absolute;\\n right: 10px;\\n top: 10px;\\n width: 20px;\\n height: 20px;\\n cursor: pointer; }\\n .object-info__object {\\n padding: 30px 20px 30px 110px;\\n background-position: left 20px center;\\n background-repeat: no-repeat;\\n background-size: 70px; }\\n .object-info__object--car {\\n background-image: url(\\\"/assets/images/bmw-image.png\\\"); }\\n .object-info__object--moto {\\n background-image: url(\\\"/assets/images/moto_blue.png\\\"); }\\n .object-info p {\\n display: block;\\n margin: 0;\\n color: #255B70;\\n font-size: 14px;\\n line-height: 18px;\\n width: 100%; }\\n .object-info p a {\\n color: #255B70; }\\n .devices-list__name-container {\\n text-align: left;\\n display: -webkit-box;\\n display: -ms-flexbox;\\n display: flex;\\n -webkit-box-align: center;\\n -ms-flex-align: center;\\n align-items: center; }\\n .devices-list__name-container .share-btn {\\n cursor: pointer;\\n margin: 0 10px; }\\n .devices-list__item {\\n display: -webkit-box;\\n display: -ms-flexbox;\\n display: flex;\\n -webkit-box-pack: justify;\\n -ms-flex-pack: justify;\\n justify-content: space-between;\\n -webkit-box-align: center;\\n -ms-flex-align: center;\\n align-items: center;\\n border-top: 1px solid #ECECEC;\\n padding: 19px 20px;\\n min-height: 76px; }\\n .devices-list__item > div {\\n width: 20%;\\n min-width: 20%;\\n text-align: center; }\\n .devices-list__item > div.date {\\n text-align: right; }\\n .devices-list__item .error-field {\\n width: 80%;\\n text-align: left; }\\n @media (max-width: 767px) {\\n .devices-list__item {\\n -webkit-box-orient: vertical;\\n -webkit-box-direction: normal;\\n -ms-flex-direction: column;\\n flex-direction: column;\\n text-align: center;\\n padding: 10px 20px; }\\n .devices-list__item div {\\n margin-bottom: 15px;\\n width: 100%; } }\\n .personal-info {\\n padding: 10px 30px;\\n text-align: center; }\\n\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/view/personal/personal.component.scss\n// module id = ./src/app/view/personal/personal.component.scss\n// module chunks = main","import { Component, OnInit, ViewChild, EventEmitter, OnDestroy } from '@angular/core';\nimport { ActivatedRoute, Router, NavigationEnd } from '@angular/router';\nimport { ObservableObject } from '@models/observable-object';\n\nimport { Subject } from 'rxjs/Subject';\n/*Services */\nimport { ScreenService } from '@services/screen.service';\nimport { ObjectsService } from '@services/http/objects.service';\nimport { CachedDataService } from '@services/data/cached-data.service';\nimport { ObservableObjectsService } from '@services/http/observable-objects.service';\nimport { TariffService } from '@services/tariff.services';\nimport { StateService } from '@services/state.service';\n\nimport { Device } from '@models';\nimport { ShareDeviceService, AppService } from '@services';\n\n@Component({\n selector: 'app-personal',\n templateUrl: './personal.component.html',\n styleUrls: ['./personal.component.scss']\n})\n\nexport class PersonalComponent implements OnInit, OnDestroy {\n @ViewChild('addObjectMenu') addObjectMenu;\n @ViewChild('tariffModal') tariffModal;\n @ViewChild('shareModal') shareModal;\n\n isFirstInit = true;\n curentUser;\n tariffs;\n observableObjects: ObservableObject[];\n urlUserId;\n\n private ngUnsubscribe: Subject = new Subject();\n constructor(\n private cachedDataService: CachedDataService,\n private observableObjectsService: ObservableObjectsService,\n private screenService: ScreenService,\n private objectsService: ObjectsService,\n private tariffService: TariffService,\n private router: Router,\n private activeRoute: ActivatedRoute,\n private shareDeviceService: ShareDeviceService,\n private appService: AppService,\n private stateService: StateService) {\n objectsService.updateObjects\n .takeUntil(this.ngUnsubscribe)\n .subscribe(() => {\n this.getObject();\n this.getTariffs();\n });\n this.shareDeviceService.updateRequestsObservable\n .takeUntil(this.ngUnsubscribe)\n .subscribe(respone => {\n this.getObject();\n this.getTariffs();\n });\n this.stateService.agreementsCompletedObservable\n .takeUntil(this.ngUnsubscribe)\n .subscribe(deviceId => {\n this.getObject();\n this.getTariffs();\n });\n this.curentUser = this.cachedDataService.getCurrentUser();\n\n this.activeRoute.params.subscribe(params => {\n this.observableObjects = null;\n if (params['userId']) {\n this.urlUserId = params['userId'];\n this.cachedDataService.currentUserId = this.urlUserId;\n this.getObject();\n this.getTariffs();\n } else {\n this.router.navigate(['/personal', this.curentUser.id]);\n }\n\n });\n\n\n }\n\n ngOnInit() {\n\n // this.getObject();\n // this.getTariffs();\n\n }\n getTariffs() {\n this.tariffService.getInfoSim(this.urlUserId)\n .subscribe(response => {\n if (response.data && response.data.length) {\n this.tariffs = response.data;\n if (this.observableObjects && this.observableObjects.length > 0) {\n this.getDevicesTariffs();\n }\n }\n },\n error => {\n console.log(error);\n }\n );\n }\n \n\n getObject() {\n console.log(this.urlUserId);\n this.observableObjectsService.getAllByUser(this.urlUserId)\n .subscribe(response => {\n this.screenService.isShowLoader = false;\n this.observableObjects = this.appService.filterObjects(response.data);\n if (!this.observableObjects.length) {\n if (this.isFirstInit) {\n this.addObjectMenu.showObjectAdd('Car');\n this.isFirstInit = false;\n }\n } else {\n this.observableObjects.map(object => {\n if (object.extra && object.extra.indexOf('Moto') >= 0) {\n object.type = 'moto';\n } else {\n object.type = 'car';\n }\n object.devices.map(device => {\n const mainPhone = device.phones.filter(item => item.usageType === 'main')[0];\n if (mainPhone) {\n device.mainPhone = mainPhone.number;\n }\n if(device.isTariffAgreementCompleted==false){\n this.stateService.initAgreementsModalSubject.next(device.id);\n }\n });\n });\n if (this.tariffs && this.tariffs.length > 0) {\n this.getDevicesTariffs();\n }\n this.cachedDataService.setObservableObjects(this.observableObjects);\n }\n console.log(this.observableObjects)\n }, error => {\n if (this.urlUserId !== this.curentUser.id) {\n this.router.navigate(['/personal', this.curentUser.id]);\n }\n console.log('from component error', error);\n });\n }\n\n getDevicesTariffs() {\n this.observableObjects.map(object => {\n object.devices.map(device => {\n device['tariff'] = this.tariffService.getTariff(this.tariffs, device, this.urlUserId);\n });\n });\n console.log(this.observableObjects)\n }\n\n openTariffModal(tariff) {\n this.tariffModal.open([tariff]);\n }\n\n deleteObject(observableObject: ObservableObject) {\n if (confirm('Удалить авто из списка?')) {\n this.objectsService.deleteObject(observableObject.id).subscribe(response => {\n observableObject.devices.map(item=>{\n //если удалили устройство по кторому договор не принят. убираем его из таймера\n if(!item.isTariffAgreementCompleted){\n this.stateService.removeAgreementsSubject.next(item.id)\n }\n });\n this.objectsService.updateObjects.emit();\n this.getObject();\n }, error => console.log('from component error', error));\n }\n }\n\n openShareDeviceModal(device: Device){\n this.shareModal.open(device)\n }\n acceptAgreements(device: Device){\n this.stateService.showAgreementsModalSubject.next(device.id);\n }\n\n ngOnDestroy() {\n this.ngUnsubscribe.next();\n this.ngUnsubscribe.complete();\n }\n \n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/view/personal/personal.component.ts","module.exports = \"\\n
\\n\\t
\\n\\t\\t
\\n\\t\\t\\t
    \\n\\t\\t\\t\\t
  • Статистика
  • \\n\\t\\t\\t\\t
  • Качество вождения
  • \\n\\t\\t\\t
\\n\\t\\t
\\n\\t\\t
\\n\\t\\t\\t
\\n\\t\\t\\t\\t\\n\\t\\t\\t\\t\\n\\t\\t\\t
\\n\\t\\t\\t
Нет данных для отображения.
\\n\\t\\t\\t
\\n\\t\\t\\t\\t\\n\\t\\t\\t\\t\\n\\t\\t\\t
\\n\\t\\t
\\n\\t\\t\\n\\n\\t\\t
\\n\\t\\t\\t\\n\\t\\t
\\n\\t
\\n
\\n\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/view/reports/reports.component.html\n// module id = ./src/app/view/reports/reports.component.html\n// module chunks = main","import { Component, OnInit, OnDestroy } from '@angular/core';\nimport { Subject } from 'rxjs/Subject';\nimport 'rxjs/add/operator/takeUntil';\n\n/*Services */\nimport { StateService, ScreenService, DevicesService, AppService } from '@services';\n\n/*Models */\nimport { Device, StatsTrack } from '@models';\n\n/*Plugins */\nimport { IMyDrpOptions, IMyDateRangeModel } from 'mydaterangepicker';\nimport * as moment from 'moment';\n\n\n/*Config*/\nimport { CONFIG } from '@config';\n\n@Component({\n selector: 'app-reports',\n templateUrl: './reports.component.html'\n})\n\nexport class ReportsComponent implements OnInit, OnDestroy {\n private ngUnsubscribe: Subject = new Subject();\n private currentDevice: Device;\n\n\n myDateRangePickerOptions: IMyDrpOptions = {\n dateFormat: 'dd.mm.yyyy',\n selectBeginDateTxt: 'Выберите начало периода',\n selectEndDateTxt: 'Выберите конец периода',\n showSelectDateText: true,\n monthSelector: true,\n showClearDateRangeBtn: false,\n editableDateRangeField: false,\n openSelectorOnInputClick: true,\n showClearBtn: false,\n showApplyBtn: false,\n yearSelector: false,\n disableSince: { year: 0, month: 0, day: 0 },\n disableUntil: { year: 0, month: 0, day: 0 },\n dayLabels: CONFIG.dayLabels,\n monthLabels: CONFIG.monthLabels\n };\n modelDateRange;\n statsTrackList: Array;\n groupPEriodStatsModel = 'day';\n activeTabId = 1;\n isStarline = false;\n\n constructor(\n private devicesService: DevicesService,\n private stateService: StateService,\n public screenService: ScreenService,\n private appService: AppService\n ) {\n this.screenService.isDataLoadingSubject.next(true);\n }\n\n ngOnInit() {\n document.getElementById('sidebar-container').classList.add('info--minimal-height');\n this.screenService.isStateHidden = true;\n this.stateService.currentDeviceObservable\n .takeUntil(this.ngUnsubscribe)\n .subscribe(device => {\n this.currentDevice = device;\n if(this.currentDevice.provider.toLowerCase() === \"starline\"){\n this.isStarline = true;\n }else{\n this.isStarline = false;\n }\n this.initDateRange();\n });\n }\n\n getStatistic(fromDate: number, toDate: number) {\n this.devicesService.getStatsTrack(this.currentDevice.id, fromDate, toDate)\n .subscribe(response => {\n if (response && response.length) {\n this.appService.parseDateReportsStat(response);\n this.statsTrackList = response;\n console.log(this.statsTrackList);\n this.stateService.toggleGraphStatsSubject.next(this.statsTrackList);\n } else {\n this.statsTrackList = null;\n }\n\n\n this.screenService.isDataLoadingSubject.next(false);\n }, errors => {\n this.screenService.isDataLoadingSubject.next(false);\n console.log(errors);\n });\n }\n\n\n\n updateListStats(statsTrackList: Array) {\n // console.log(statsTrackList);\n // const data = this.getChartsData(statsTrackList, 'distance');\n // console.log(data);\n this.stateService.toggleGraphStatsSubject.next(statsTrackList);\n // this.showChart(data);\n }\n\n\n\n initDateRange() {\n const date = new Date();\n const copy = this.getCopyOfOptions();\n\n const dateTomorrow = this.addDays(date, 1);\n\n copy.disableSince = {\n year: dateTomorrow.getFullYear(),\n month: dateTomorrow.getMonth() + 1,\n day: dateTomorrow.getDate(),\n };\n\n copy.disableUntil = {\n year: date.getFullYear() - 1,\n month: date.getMonth() + 1,\n day: date.getDate() - 1\n };\n\n this.myDateRangePickerOptions = copy;\n\n const firstDayMonth = new Date(date.getFullYear(), date.getMonth(), 1);\n\n this.modelDateRange = {\n beginDate: {\n year: firstDayMonth.getFullYear(),\n month: firstDayMonth.getMonth() + 1,\n day: firstDayMonth.getDate(),\n },\n endDate: {\n year: date.getFullYear(),\n month: date.getMonth() + 1,\n day: date.getDate(),\n }\n };\n this.onDateRangeChanged();\n }\n\n\n onDateRangeChanged(event?: IMyDateRangeModel) {\n if (event) {\n this.modelDateRange.beginDate = event.beginDate;\n this.modelDateRange.endDate = event.endDate;\n }\n\n const fromMoment = moment.utc({\n year: this.modelDateRange.beginDate.year,\n month: this.modelDateRange.beginDate.month - 1,\n date: this.modelDateRange.beginDate.day\n });\n\n const toMoment = moment.utc({\n year: this.modelDateRange.endDate.year,\n month: this.modelDateRange.endDate.month - 1,\n date: this.modelDateRange.endDate.day\n });\n\n const from = fromMoment.startOf('day').unix();\n const to = toMoment.endOf('day').unix();\n\n this.getStatistic(from, to);\n }\n\n getCopyOfOptions(): IMyDrpOptions {\n return JSON.parse(JSON.stringify(this.myDateRangePickerOptions));\n }\n\n addDays(date, days) {\n const result = new Date(date);\n result.setDate(result.getDate() + days);\n return result;\n }\n\n\n\n onClickTab(tabId: number){\n if(tabId==2){\n this.stateService.toggleGraphStatsSubject.next(false);\n }else{\n this.stateService.toggleGraphStatsSubject.next(this.statsTrackList);\n }\n this.activeTabId = tabId;\n }\n\n\n ngOnDestroy() {\n this.ngUnsubscribe.next();\n this.ngUnsubscribe.complete();\n document.getElementById('sidebar-container').classList.remove('info--minimal-height');\n this.stateService.toggleGraphStatsSubject.next(false);\n }\n}\n\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/view/reports/reports.component.ts","module.exports = \"\\n
\\n
\\n
\\n
    \\n
    К списку услуг
    \\n
  • {{selectedService.title}}
  • \\n
  • Услуги
  • \\n
\\n
\\n\\n
\\n\\n
Загрузка...
\\n
\\n\\n \\n
Создать заявку
\\n
Получение тарифов...
\\n
\\n
Получение заявок...
\\n
У вас нет заявок по данной услуге
\\n
\\n\\n
\\n
\\n \\n
\\n
\\n
Номер
\\n {{order.number}}\\n
\\n
\\n
Период
\\n {{order.fromFormat}} {{order.toFormat}}\\n
\\n
\\n
Статус
\\n {{order.statusText}}\\n
\\n
\\n
\\n
\\n
\\n\\n
\\n \\n \\n
\\n \\n
Создать заявку
\\n
Получение тарифов...
\\n
\\n
Получение заявок...
\\n
У вас нет заявок по данной услуге
\\n
\\n\\n
\\n
\\n \\n
\\n
\\n
Номер
\\n {{order.number}}\\n
\\n
\\n
Период
\\n {{order.fromFormat}} {{order.toFormat}}\\n
\\n
\\n
Статус
\\n {{order.statusText}}\\n
\\n
\\n
\\n
\\n
\\n\\n
\\n \\n \\n
\\n \\n \\n
\\n
\\n \\n
Продлить
\\n
\\n
\\n
\\n {{tarif.observableObjectName}}\\n \\n
\\n
\\n
\\n
Номер
\\n {{tarif.number}}\\n
\\n
\\n
Название тарифа
\\n {{tarif.tariff}}\\n
\\n
\\n
Дата окончания
\\n {{tarif.dateFormat}}\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n Нет услуг для отображения\\n
\\n
\\n
\\n
{{service.title}}
\\n
{{service.description}}
\\n
\\n
\\n
\\n
\\n \\n
\\n
\\n
\\n\\n\\n\\n\\n\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/view/services/services.component.html\n// module id = ./src/app/view/services/services.component.html\n// module chunks = main","module.exports = \".back-to-service {\\n position: absolute;\\n left: 15px;\\n color: #CCCCCC;\\n z-index: 1;\\n cursor: pointer; }\\n\\n.services-list__row {\\n -webkit-transition: all 0.3s ease 0s;\\n transition: all 0.3s ease 0s;\\n border-top: none;\\n border-right: none;\\n border-left: none;\\n -o-border-image: initial;\\n border-image: initial;\\n border-bottom: 1px solid #e4e4e4;\\n padding: 6px 0px;\\n color: #255b78;\\n font-size: 13px;\\n line-height: 16px;\\n text-align: left;\\n cursor: pointer;\\n margin-bottom: 10px; }\\n\\n.services-list__row:hover {\\n background: #eeeeee; }\\n\\n.services-list__title {\\n font-weight: 700;\\n margin-bottom: 5px;\\n line-height: 14px;\\n font-size: 12px;\\n color: #255B70;\\n text-transform: uppercase; }\\n\\n.services-list__description {\\n font-size: 13px;\\n line-height: 16px;\\n color: gray; }\\n\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/view/services/services.component.scss\n// module id = ./src/app/view/services/services.component.scss\n// module chunks = main","import { Component, OnDestroy, OnInit, ViewChild } from '@angular/core';\nimport { Subject } from 'rxjs/Subject';\nimport 'rxjs/add/operator/takeUntil';\n\n/*Services*/\nimport { ServicesService, StateService, ScreenService, TariffService, CachedDataService } from '@services';\n\n/*Models */\nimport { Device, Service, Tariff, ObservableObject, OrderItem } from '@models';\n\n/*Plugins */\nimport * as moment from 'moment';\n\n\n/*Config*/\nimport { CONFIG } from '../../config';\n\n@Component({\n selector: 'app-services',\n templateUrl: './services.component.html',\n styleUrls: ['./services.component.scss']\n})\n\nexport class ServicesComponent implements OnInit, OnDestroy{\n @ViewChild('tariffModal') tariffModal;\n @ViewChild('serviceOrderModal') serviceOrderModal;\n servicesList: Array;\n selectedService: Service;\n curentUser;\n tariffList: Array;\n ifLoadingData = false;\n observableObjects: Array;\n ordersList: Array = null;\n private ngUnsubscribe: Subject = new Subject();\n private currentDevice: Device;\n private intervalGetOrders= null;\n\n constructor(private servicesService: ServicesService, private stateService: StateService, private screenService: ScreenService, private tariffService: TariffService, private cachedDataService: CachedDataService){\n this.stateService.currentDeviceObservable\n .takeUntil(this.ngUnsubscribe)\n .subscribe(device => {\n this.currentDevice = device;\n this.getServices();\n });\n this.curentUser = this.cachedDataService.getCurrentUser();\n this.observableObjects = this.cachedDataService.getObservableObjects();\n \n }\n\n ngOnInit(){\n this.screenService.isStateHidden = true;\n }\n\n getServices() {\n\n \n this.servicesService.getServices(this.currentDevice.id)\n .subscribe(response => {\n if(response && response.length){\n this.servicesList = response\n }else{\n this.servicesList = [];\n }\n \n console.log(response)\n this.screenService.isDataLoadingSubject.next(false);\n },\n error => {\n alert(\"Ошибка, попробуйте позже\")\n this.servicesList = [];\n this.screenService.isDataLoadingSubject.next(false);\n console.log(error);\n }\n );\n }\n selectService(service: Service){\n this.selectedService = service;\n this.ifLoadingData = true;\n switch (service.serviceType) {\n case 'prolongation': {\n this.getTarifs();\n break;\n }\n case 'osago': {\n this.ifLoadingData = false;\n setTimeout(()=>{\n this.loadScriptOsago(this.selectedService.parameters.osagoWidgetJsContent);\n })\n \n break;\n }\n case 'freezing': {\n console.log(this.observableObjects)\n this.getTarifs();\n this.getSerivecesOrders();\n this.ifLoadingData = false;\n \n \n break;\n }\n case \"roaming\": {\n this.getTarifs();\n this.getSerivecesOrders();\n this.ifLoadingData = false;\n \n \n break;\n }\n }\n }\n\n loadScriptOsago(url: string) {\n \n\n const script = document.createElement('script');\n script.innerHTML = '';\n\n\n \n let urlArray = url.replace(\"\", \"\").split(\" \");\n urlArray.map(item=>{\n let itemArray = item.replace(/'/g, \"\").split(\"=\");\n if(itemArray[0]==\"src\"){\n script.src = itemArray[1];\n script.async = false;\n script.defer = true;\n }else{\n if(itemArray[0]==\"data-aff_sub2\"){\n itemArray[1]=JSON.stringify([this.cachedDataService.getCurrentUser().id])\n }\n if(itemArray[0]==\"data-size\"){\n itemArray[1]=\"356\";\n }\n script.setAttribute(itemArray[0], itemArray[1]);\n }\n \n });\n document.getElementById('osago-container').appendChild(script);\n }\n\n getTarifs(){\n this.tariffService.getInfoSim(this.curentUser.id)\n .subscribe(response => {\n if (response.data && response.data.length) {\n this.tariffList = [];\n response.data.map(tarif=>{\n //добавляем для выбора\n tarif.selected = false;\n })\n \n \n \n this.observableObjects.map(object => {\n object.devices.map(device => {\n //перебираем все устройства и находим у кого есть тариф\n if(this.tariffService.getTariff(response.data, device)){\n let tariff: Tariff = this.tariffService.getTariff(response.data, device);\n tariff = JSON.parse(JSON.stringify(tariff))\n\n //добавляем название устройства в тариф для вывода\n tariff[\"observableObjectName\"] = object.name;\n this.tariffList.push(tariff)\n }\n });\n });\n if( this.selectedService.serviceType==\"freezing\"){\n //this.serviceSendTarifModal.open(this.tariffList)\n }\n }else{\n alert(\"Ошибка при получении тарифов\")\n }\n\n this.ifLoadingData = false;\n },\n error => {\n this.ifLoadingData = false;\n alert(\"Ошибка при получении тарифов\")\n console.log(error);\n }\n );\n }\n getSerivecesOrders(notRunInterval?:boolean){\n this.tariffService.getSerivecesOrders(this.selectedService.serviceType, this.curentUser.id)\n .subscribe(response => {\n if(response && response.data && response.data.length){\n response.data.map(item=>{\n if(item.startServiceDate){\n item[\"fromFormat\"] = moment(item.startServiceDate*1000).format('DD.MM.YYYY');\n }\n if(item.endServiceDate){\n item[\"toFormat\"] = moment(item.endServiceDate*1000).format('DD.MM.YYYY');\n }\n \n \n item.statusText = CONFIG.orderStatus[item.clientStatus] ? CONFIG.orderStatus[item.clientStatus] : item.clientStatus\n if(!notRunInterval){\n this.startUpdateOrder()\n }\n \n \n })\n console.log(response.data)\n this.ordersList = response.data;\n }else{\n this.ordersList = [];\n }\n console.log(response)\n },\n error => {\n this.ifLoadingData = false;\n alert(\"Ошибка при запросе заявок, попробуйте позже\")\n console.log(error);\n }\n );\n }\n startUpdateOrder(){\n if (this.intervalGetOrders && this.intervalGetOrders != null) {\n clearInterval(this.intervalGetOrders);\n }\n this.intervalGetOrders = setInterval(()=> {\n this.getSerivecesOrders()\n }, 5000);\n }\n ifHasSelectedObject(list: Array){\n if(list && list.filter(item=>item.selected).length){\n return true;\n }else{\n return false;\n }\n }\n\n openTariffModal() {\n this.tariffModal.open(this.tariffList.filter(tariff=>tariff.selected));\n }\n\n openSendOrderModal(){\n this.serviceOrderModal.open(this.tariffList, this.selectedService);\n }\n\n clearService(){\n this.ifLoadingData = false;\n this.tariffList = null;\n this.selectedService = null;\n if (this.intervalGetOrders && this.intervalGetOrders != null) {\n clearInterval(this.intervalGetOrders);\n }\n }\n ngOnDestroy(){\n if (this.intervalGetOrders && this.intervalGetOrders != null) {\n clearInterval(this.intervalGetOrders);\n }\n }\n}\n\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/view/services/services.component.ts","module.exports = \"
\\n \\n
\\n \\n
\\n

Список заявок на шаринг

\\n
\\n \\n

Загрузка...

\\n
\\n \\n

\\n У вас пока нет доступных заявок.\\n

\\n
\\n
\\n
\\n \\n {{request.deviceName}}\\n \\n \\n \\n
\\n Добавить устройство\\n Отменить заявку\\n
\\n
\\n
\\n \\n
\\n \\n
\\n \\n
\\n
\\n \\n\\n\\n\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/view/share-requests/share-requests.component.html\n// module id = ./src/app/view/share-requests/share-requests.component.html\n// module chunks = main","import { Component, OnInit, ViewChild, OnDestroy} from '@angular/core';\nimport { Subject } from 'rxjs/Subject';\nimport { ShareDeviceService, CachedDataService } from '@services';\n\nimport { ShareRequest, ObservableObject } from \"@models\";\n\nimport { } from \"@models\";\n@Component({\n selector: 'app-share-requests',\n templateUrl: './share-requests.component.html'\n})\n\nexport class ShareRequestsComponent implements OnInit, OnDestroy {\n shareRequestsList = null;\n ifLoading = true;\n\n curentUser;\n private ngUnsubscribe: Subject = new Subject();\n @ViewChild('shareDeviceConfirm') shareDeviceConfirm;\n @ViewChild('shareDeviceCancel') shareDeviceCancel;\n \n\n constructor(private shareDeviceService: ShareDeviceService, private cachedDataService: CachedDataService){\n this.curentUser = this.cachedDataService.getCurrentUser();\n\n this.shareDeviceService.updateRequestsObservable\n .takeUntil(this.ngUnsubscribe)\n .subscribe(respone => {\n\t this.getShareDevice();\n });\n }\n\n ngOnInit(){\n\t this.getShareDevice();\n\t \n }\n getShareDevice(){\n this.shareDeviceService.getShareDevice()\n .subscribe(response => {\n if(response && response.length){\n this.shareRequestsList = response.filter(item=>item.status.toLowerCase()==\"sent\")\n }else{\n this.shareRequestsList = null;\n }\n this.ifLoading = false;\n },\n error => {\n this.ifLoading = false;\n console.log(error);\n }\n );\n }\n\n openConfirmShare(request: ShareRequest){\n this.shareDeviceConfirm.open(request);\n }\n openCancelShare(request: ShareRequest){\n this.shareDeviceCancel.open(request);\n }\n \n \n ngOnDestroy() {\n this.ngUnsubscribe.next();\n this.ngUnsubscribe.complete();\n }\n}\n\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/view/share-requests/share-requests.component.ts","module.exports = \".car-status.is-hidden img {\\n height: 0px;\\n}\\n\\nhtml, body, #map_canvas {\\n height: 100%;\\n width: 100%;\\n margin: 0px;\\n}\\n\\n#map_canvas {\\n position: fixed !important;\\n}\\n\\n.car-status img.is-hidden {\\n height: 0px;\\n width: 0px;\\n display: none;\\n}\\n\\n.is-hidden {\\n display: none;\\n}\\n\\n.car-status div.is-hidden {\\n height: 0px;\\n width: 0px;\\n display: none;\\n}\\n\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/view/state/state.component.css\n// module id = ./src/app/view/state/state.component.css\n// module chunks = main","module.exports = \"
\\n
\\n
\\n
\\n \\n \\n {{chart.title}}\\n
\\n \\n
\\n
\\n
\\n
\\n \\n \\n\\n
\\n

Нет данных за выбранный период.

\\n
\\n\\n\\n\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/view/state/state.component.html\n// module id = ./src/app/view/state/state.component.html\n// module chunks = main","import { Component, OnInit, ViewChild, OnDestroy, AfterViewInit } from '@angular/core';\nimport { Subject } from 'rxjs/Subject';\nimport 'rxjs/add/operator/takeUntil';\n\n/*Services*/\nimport { StateService, ScreenService, DevicesService, CachedDataService, AppService } from '@services';\n\n/*Models*/\nimport { DeviceState, Device } from '@models';\n\n/*Plugin*/\nimport { Chart, Highcharts } from 'angular-highcharts';\nimport { IMyDrpOptions, IMyDateRangeModel } from 'mydaterangepicker';\nimport { OwlCarousel } from 'ngx-owl-carousel';\nimport * as moment from 'moment';\ndeclare var $: any;\n\n/*Config*/\nimport { CONFIG } from '../../config';\n\n\n@Component({\n selector: 'app-state',\n templateUrl: './state.component.html',\n styleUrls: ['./state.component.css']\n})\n\nexport class StateComponent implements OnInit, OnDestroy, AfterViewInit {\n @ViewChild('owlTabGraph') owlTabGraph: OwlCarousel;\n chart: Chart;\n fromDate: any;\n toDate: any;\n charts;\n selectedChart;\n state: DeviceState;\n public isLoadData = false;\n public currentDevice: Device;\n private currentDate: any;\n private maxRangeDay = 30;\n public ifHasChartResult = false;\n public sliderChartsTabOptions: any;\n private ngUnsubscribe: Subject = new Subject();\n\n public myDateRangePickerOptions: IMyDrpOptions = {\n dateFormat: 'dd.mm.yyyy',\n selectBeginDateTxt: 'Выберите начало периода',\n selectEndDateTxt: 'Выберите конец периода',\n showSelectDateText: true,\n monthSelector: true,\n showClearDateRangeBtn: false,\n editableDateRangeField: false,\n openSelectorOnInputClick: true,\n showClearBtn: false,\n showApplyBtn: false,\n yearSelector: false,\n disableSince: { year: 0, month: 0, day: 0 },\n dayLabels: CONFIG.dayLabels,\n monthLabels: CONFIG.monthLabels\n };\n\n public modelDateRange: any = {\n beginDate: { year: 2018, month: 7, day: 9 },\n endDate: { year: 2018, month: 7, day: 19 }\n };\n\n constructor(\n private devicesService: DevicesService,\n private stateService: StateService,\n private screenService: ScreenService,\n private cachedDataService: CachedDataService,\n private appService: AppService) {\n\n Highcharts.setOptions({\n lang: {\n shortMonths: [\n 'янв', 'фев', 'мар', 'апр',\n 'мая', 'июня', 'июля', 'авг',\n 'сен', 'окт', 'ноя', 'дек'\n ]\n }\n });\n\n this.charts = [\n { type: 'voltage', title: 'Напряжение', units: 'V', id: 'voltage' },\n { type: 'fuel', title: 'Топливо', units: 'Л', id: 'fuel' },\n { type: 'reserved', title: 'Доп. питание', units: 'V', id: 'reservedVoltage' },\n { type: 'balance', title: 'Баланс', units: 'Р', id: 'balance' },\n { type: 'cJ', title: 't двигателя', units: '℃', id: 'temperatureEngine' },\n { type: 'cC', title: 'Пробег', units: 'Км', id: 'mileage' },\n { type: 'cH', title: 'Обороты', units: 'Rpm', id: 'rpm' },\n ];\n\n this.sliderChartsTabOptions = {\n dots: false,\n navigation: true,\n nav: true,\n navText: ['', ''],\n navClass: ['car-details-tabs-prev', 'car-details-tabs-next'],\n loop: false,\n lazyLoad: false,\n responsive: {\n 0: { items: 3 },\n 600: { items: 3 },\n 1000: { items: 3 }\n }\n };\n\n this.stateService.currentDeviceObservable\n .takeUntil(this.ngUnsubscribe)\n .subscribe(device => {\n this.currentDevice = device;\n if (this.currentDevice.provider.toLowerCase() === 'magicsystems') {\n if (this.currentDevice.deviceType !== 'beacon') {\n this.initGraph();\n }\n }\n });\n this.stateService.stateObservable\n .takeUntil(this.ngUnsubscribe)\n .subscribe(state => {\n this.state = state;\n this.screenService.isDataLoadingSubject.next(false);\n });\n\n this.screenService.isDataLoadingObservable\n .takeUntil(this.ngUnsubscribe)\n .subscribe(value => {\n this.isLoadData = value;\n });\n }\n\n ngOnInit() {\n this.stateService.autoUpdatePositionSubject.next(true);\n this.screenService.isStateHidden = false;\n }\n\n ngAfterViewInit() {\n const that = this;\n $(document).on('click', '.car-ind-list .item.cursor', (event) => {\n if (event.target.dataset.id) {\n that.showGraphState(event.target.dataset.id);\n }\n });\n }\n\n initGraph() {\n this.selectedChart = this.charts[0];\n const currentMoment = moment();\n this.fromDate = { date: { year: currentMoment.year(), month: currentMoment.month() + 1, day: currentMoment.date() } };\n this.toDate = { date: { year: currentMoment.year(), month: currentMoment.month() + 1, day: currentMoment.date() } };\n this.updateChart(this.fromDate.date, this.toDate.date);\n this.initDateRange();\n }\n\n checkIfStateHasGraph(id) {\n if (this.currentDevice.provider.toLowerCase() === 'magicsystems') {\n return this.charts.filter(chart => chart.id === id).length;\n } else {\n return false;\n }\n }\n\n showGraphState(id) {\n if (this.checkIfStateHasGraph(id) && this.owlTabGraph) {\n this.owlTabGraph.to([this.charts.indexOf(this.charts.filter(chart => chart.id === id)[0]), 200]);\n this.updatedSelectedChart(this.charts.filter(chart => chart.id === id)[0]);\n\n }\n }\n\n private initDateRange() {\n const date = new Date();\n this.currentDate = {\n year: date.getFullYear(),\n month: date.getMonth() + 1,\n day: date.getDate(),\n };\n this.modelDateRange.beginDate = this.currentDate;\n this.modelDateRange.endDate = this.currentDate;\n this.onDateRangeChanged();\n }\n\n onDateRangeChanged(event?: IMyDateRangeModel) {\n const copy = this.getCopyOfOptions();\n copy.disableSince = {\n year: this.currentDate.year,\n month: this.currentDate.month,\n day: this.currentDate.day + 1\n };\n this.myDateRangePickerOptions = copy;\n if (event) {\n this.fromDate.date = event.beginDate;\n this.toDate.date = event.endDate;\n this.updateChart(event.beginDate, event.endDate);\n }\n\n }\n\n onDateSelected(event) {\n const selectedDay = new Date(event.date.year, event.date.month - 1, event.date.day);\n const nowDate = new Date();\n const delta = nowDate.getTime() - selectedDay.getTime();\n const deltaDay = Math.floor(delta / 1000 / 60 / 60 / 24);\n const copy = this.getCopyOfOptions();\n if (deltaDay < (this.maxRangeDay - 1)) {\n const date = this.addDays(selectedDay, deltaDay + 1);\n copy.disableSince = {\n year: date.getFullYear(),\n month: date.getMonth() + 1,\n day: date.getDate(),\n };\n } else {\n copy.disableSince = {\n year: event.date.year,\n month: event.date.month,\n day: event.date.day + this.maxRangeDay\n };\n }\n this.myDateRangePickerOptions = copy;\n }\n\n\n updatedSelectedChart(chart?) {\n this.selectedChart = chart;\n this.updateChart(this.fromDate.date, this.toDate.date);\n this.showChart(true);\n }\n\n updateChart(fromDate, toDate) {\n\n const userDateTimeOffset = this.appService.userTimezoneOffset();\n\n const fromMoment = moment.utc({ year: fromDate.year, month: fromDate.month - 1, date: fromDate.day });\n const toMoment = moment.utc({ year: toDate.year, month: toDate.month - 1, date: toDate.day });\n\n const from = fromMoment.startOf('day').subtract(userDateTimeOffset, 'h').unix();\n const to = toMoment.endOf('day').subtract(userDateTimeOffset, 'h').unix();\n\n this.devicesService.getHistory(this.currentDevice.id, this.selectedChart.type, from, to).subscribe(result => {\n this.screenService.isDataLoadingSubject.next(false);\n if (result.length) {\n this.ifHasChartResult = true;\n\n const data = result.map(statItem => [(statItem.time + (userDateTimeOffset * 60 * 60)) * 1000, parseFloat(statItem.value.toString().replace(\",\",\".\")) ]);\n\n this.showChart(data);\n } else {\n this.ifHasChartResult = false;\n }\n\n });\n }\n\n showChart(data) {\n const selectedChart = this.selectedChart;\n this.chart = new Chart({\n chart: {\n type: 'area'\n },\n tooltip: {\n formatter: function () {\n return Highcharts.dateFormat('%e %b %Y %H:%M', this.x) + '
' +\n this.series.name + ', ' + this.y + ' ' + selectedChart.units + '';\n }\n },\n plotOptions: {\n area: {\n fillColor: {\n linearGradient: {\n x1: 0,\n y1: 0,\n x2: 0,\n y2: 1\n },\n stops: [\n [0, Highcharts.getOptions().colors[0]]\n ]\n },\n marker: {\n radius: 2\n },\n lineWidth: 1,\n states: {\n hover: {\n lineWidth: 3\n }\n },\n threshold: null\n }\n },\n xAxis: {\n type: 'datetime',\n dateTimeLabelFormats: {\n day: '%e %b'\n }\n },\n yAxis: {\n title: { text: '' }\n },\n title: { style: { 'display': 'none' } },\n credits: {\n enabled: false\n },\n legend: {\n enabled: false\n },\n series: [\n {\n name: this.selectedChart.title,\n data: data\n }\n ]\n });\n\n }\n\n getCopyOfOptions(): IMyDrpOptions {\n return JSON.parse(JSON.stringify(this.myDateRangePickerOptions));\n }\n addDays(date, days) {\n const result = new Date(date);\n result.setDate(result.getDate() + days);\n return result;\n }\n\n ngOnDestroy() {\n this.ngUnsubscribe.next();\n this.ngUnsubscribe.complete();\n }\n\n}\n\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/view/state/state.component.ts","module.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 {{track.startTimestamp * 1000 | date:\\\"HH:mm:ss\\\"}} - {{track.finishTimestamp * 1000 | date:\\\"HH:mm:ss\\\"}}\\n
\\n
\\n \\n {{track.startAddress}} - {{track.finishAddress}}\\n \\n \\n Определение адреса...\\n \\n
\\n
{{track.distance.toFixed(1)}} km
\\n
{{track.speed | number:\\\"1.0-2\\\"}} km/h
\\n
\\n
\\n \\n
\\n
\\n
1\\\">\\n

\\n Результаты с\\n {{pager.currentPage}} по {{pager.pages.length}}\\n

\\n \\n \\n
\\n
\\n
\\n\\n
\\n
\\n
\\n\\n\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/view/tracks/tracks.component.html\n// module id = ./src/app/view/tracks/tracks.component.html\n// module chunks = main","import { Component, OnInit, ViewChild, OnDestroy } from '@angular/core';\nimport { Subject } from 'rxjs/Subject';\nimport 'rxjs/add/operator/takeUntil';\n\n/*Services */\nimport { DevicesService, CachedDataService, ScreenService, StateService, AppService } from '@services';\n\n\n/*Models */\nimport { Device } from '@models/device';\n\nimport { Pager } from '../../shared/pager';\n\n\n/*Models */\nimport { Track } from '@models/track';\n\n/*Plugins */\nimport { IMyDpOptions } from 'mydatepicker';\nimport { IMyDrpOptions, IMyDateRangeModel } from 'mydaterangepicker';\nimport { OwlCarousel } from 'ngx-owl-carousel';\nimport * as moment from 'moment';\n\n/*Config */\nimport { CONFIG } from '../../config';\n\n\n@Component({\n selector: 'app-tracks',\n templateUrl: './tracks.component.html'\n})\n\nexport class TracksComponent implements OnInit, OnDestroy {\n @ViewChild('tracksSlider') tracksSlider: OwlCarousel;\n private ngUnsubscribe: Subject = new Subject();\n public tracks: Track[];\n public selectedTrack: Track;\n private currentDevice: Device;\n public selectedDate;\n public pager: Pager;\n public isLoadData = true;\n private currentDate: any;\n trackFindAddressCurrentIndex;\n fromDate: any;\n toDate: any;\n statisticData;\n public myDatePickerOptions: IMyDpOptions = {\n dateFormat: 'dd.mm.yyyy',\n monthSelector: true,\n editableDateField: false,\n showClearDateBtn: false,\n openSelectorOnInputClick: true,\n showTodayBtn: false,\n yearSelector: false,\n disableSince: { year: 0, month: 0, day: 0 },\n dayLabels: CONFIG.dayLabels,\n monthLabels: CONFIG.monthLabels\n };\n\n constructor(\n private devicesService: DevicesService,\n private cachedDataService: CachedDataService,\n private stateService: StateService,\n public screenService: ScreenService,\n private appService: AppService\n ) {\n this.screenService.isDataLoadingSubject.next(true);\n this.pager = new Pager(8);\n\n }\n\n ngOnInit() {\n this.stateService.autoUpdatePositionSubject.next(false);\n this.screenService.isStateHidden = true;\n\n this.screenService.isDataLoadingObservable\n .takeUntil(this.ngUnsubscribe)\n .subscribe(value => {\n this.isLoadData = value;\n });\n this.stateService.currentDeviceObservable\n .takeUntil(this.ngUnsubscribe)\n .subscribe(device => {\n this.currentDevice = device;\n this.init();\n this.getStatistic();\n });\n\n }\n getStatistic() {\n this.devicesService.getStatsTrack(this.currentDevice.id, 1553126400, 1556011483)\n .subscribe(response => {\n console.log(response);\n }, errors => {\n console.log(errors);\n });\n }\n\n init() {\n this.screenService.removeMarker();\n this.initDate();\n this.updateTracks();\n }\n\n\n updateTracks() {\n const userDateTimeOffset = this.appService.userTimezoneOffset();\n const date = this.selectedDate.date;\n const fromMoment = moment.utc({ year: date.year, month: date.month - 1, date: date.day });\n const toMoment = moment.utc({ year: date.year, month: date.month - 1, date: date.day });\n const from = fromMoment.startOf('day').subtract(userDateTimeOffset, 'h').unix();\n const to = toMoment.endOf('day').subtract(userDateTimeOffset, 'h').unix();\n\n\n this.devicesService.getTracks(this.currentDevice.id, from, to).subscribe(result => {\n if(result && result.length){\n result.map(track=>{\n track.startLatitude = parseFloat(track.startLatitude.toString().replace(\",\",\".\"))\n track.finishLatitude = parseFloat(track.finishLatitude.toString().replace(\",\",\".\"))\n track.startLongitude = parseFloat(track.startLongitude.toString().replace(\",\",\".\"))\n track.finishLongitude = parseFloat(track.finishLongitude.toString().replace(\",\",\".\"))\n\n track.distance = parseFloat(track.distance.toString().replace(\",\",\".\"))\n track.speed = parseFloat(track.speed.toString().replace(\",\",\".\"))\n track.items.map(item=>{\n item.latitude = parseFloat(item.latitude.toString().replace(\",\",\".\"))\n item.longitude = parseFloat(item.longitude.toString().replace(\",\",\".\"))\n })\n })\n }\n this.tracks = result;\n this.pager.pages = null;\n\n if (this.tracks.length) {\n this.pager.toFirstSlide(this.tracksSlider);\n this.pager.setData(JSON.parse(JSON.stringify(this.tracks)));\n this.screenService.cleanTracksData();\n const that = this;\n setTimeout(() => {\n\n that.screenService.showAllTracks(that.tracks);\n }, 300);\n\n this.trackFindAddress();\n } else {\n this.screenService.cleanTracksData();\n }\n this.screenService.isDataLoadingSubject.next(false);\n\n\n\n\n });\n }\n\n\n\n trackFindAddress() {\n this.trackFindAddressCurrentIndex = -1;\n this.trackFindAddressNext();\n }\n\n trackFindAddressNext() {\n if (!this.tracks) {\n return;\n }\n const track = this.tracks[++this.trackFindAddressCurrentIndex];\n if (track) {\n this.trackFindAddressProcess(track);\n }\n }\n\n\n public trackFindAddressProcess(track) {\n this.screenService.trackGetAddress(track.startLatitude, track.startLongitude, (address) => {\n track.startAddress = address;\n this.screenService.trackGetAddress(track.finishLatitude, track.finishLongitude, (address) => {\n track.finishAddress = address;\n if (track.startAddress && track.finishAddress) {\n this.trackFindAddressNext();\n this.pager.updateDataTrack(track);\n } else {\n const that = this;\n setTimeout(function () {\n that.trackFindAddressCurrentIndex--;\n that.trackFindAddressNext();\n }, 3000);\n }\n });\n });\n }\n\n\n\n\n onDateChanged(dateChangedEvent) {\n this.screenService.isDataLoadingSubject.next(true);\n this.selectedDate = dateChangedEvent;\n this.updateTracks();\n }\n\n selectTrack(track) {\n this.selectedTrack = track;\n this.screenService.showSingleTrack(track);\n }\n\n showAllTracks() {\n this.selectedTrack = null;\n if (this.tracks && this.tracks.length) {\n this.screenService.showAllTracks(this.tracks);\n }\n }\n private initDate() {\n const currentMoment = moment();\n this.currentDate = {\n year: currentMoment.year(),\n month: currentMoment.month() + 1,\n day: currentMoment.date(),\n };\n\n this.selectedDate = {\n date: this.currentDate\n };\n const today = new Date(currentMoment.year(), currentMoment.month(), currentMoment.date());\n const tomorrow = new Date(new Date().setHours(0, 0, 0, 0));\n\n tomorrow.setDate(today.getDate() + 1);\n\n const copy = this.getCopyOfOptions();\n copy.disableSince = {\n year: tomorrow.getFullYear(),\n month: tomorrow.getMonth() + 1,\n day: tomorrow.getDate(),\n };\n this.myDatePickerOptions = copy;\n }\n\n\n /*Statistic */\n getCopyOfOptions() {\n return JSON.parse(JSON.stringify(this.myDatePickerOptions));\n }\n\n ngOnDestroy() {\n this.screenService.isDataLoadingSubject.next(true);\n this.ngUnsubscribe.next();\n this.ngUnsubscribe.complete();\n this.stateService.autoUpdatePositionSubject.next(true);\n this.screenService.cleanTracksData();\n }\n}\n\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/view/tracks/tracks.component.ts","module.exports = [{\"name\":\"Нападение/Опасность для водителя\",\"id\":1,\"icon\":\"e_sos\"},{\"name\":\"Экстренный вызов\",\"id\":2,\"icon\":\"e_sos\"},{\"name\":\"Авария\",\"id\":3,\"icon\":\"e_sos\"},{\"name\":\"Тревога общая\",\"id\":4,\"icon\":\"e_inner_zone\"},{\"name\":\"Сбой доставки SMS\",\"id\":6,\"icon\":\"e_gsm_fail\"},{\"name\":\"Предупреждение\",\"id\":10,\"icon\":\"e_card_id\"},{\"name\":\"Тревога по датчику наклона\",\"id\":11,\"icon\":\"e_tilt\"},{\"name\":\"Тревога по зажиганию\",\"id\":12,\"icon\":\"e_inner_zone\"},{\"name\":\"Тревога по движению\",\"id\":13,\"icon\":\"e_inner_zone\"},{\"name\":\"Тревога удар\",\"id\":14,\"icon\":\"e_light_shock\"},{\"name\":\"Тревога удар сильный\",\"id\":21,\"icon\":\"e_heavy_shock\"},{\"name\":\"Тревога тормоз\",\"id\":22,\"icon\":\"e_inner_zone\"},{\"name\":\"Тревога ручник\",\"id\":23,\"icon\":\"e_inner_zone\"},{\"name\":\"Отключение питания системы\",\"id\":16,\"icon\":\"e_main_power_off\"},{\"name\":\"Высокое напряжение АКБ\",\"id\":17,\"icon\":\"e_card_id\"},{\"name\":\"Низкое напряжение АКБ\",\"id\":18,\"icon\":\"e_main_power_off\"},{\"name\":\"Подбор пароля\",\"id\":19,\"icon\":\"e_command\"},{\"name\":\"Выключение важных датчиков\",\"id\":20,\"icon\":\"e_alarm_input2\"},{\"name\":\"Низкий заряд метки\",\"id\":25,\"icon\":\"e_card_out\"},{\"name\":\"Тревога вход\",\"id\":26,\"icon\":\"e_alarm_input2\"},{\"name\":\"Останов двигателя\",\"id\":101,\"icon\":\"e_motor_stop\"},{\"name\":\"Запуск двигателя\",\"id\":102,\"icon\":\"e_motor_start\"},{\"name\":\"Блокировка двигателя\",\"id\":103,\"icon\":\"e_inner_zone\"},{\"name\":\"Включение предпускового подогревателя\",\"id\":104,\"icon\":\"e_motor_start\"},{\"name\":\"Выключение предпускового подогревателя\",\"id\":105,\"icon\":\"e_motor_stop\"},{\"name\":\"Зажигание включено\",\"id\":106,\"icon\":\"e_ignition_on\"},{\"name\":\"Зажиганию выключено\",\"id\":107,\"icon\":\"e_ignition_off\"},{\"name\":\"Неудачная попытка запуска двигателя\",\"id\":108,\"icon\":\"e_motor_error\"},{\"name\":\"Постановка под охрану\",\"id\":201,\"icon\":\"e_guard_on\"},{\"name\":\"Снятие с охраны\",\"id\":202,\"icon\":\"e_guard_off\"},{\"name\":\"Включение активной охраны\",\"id\":203,\"icon\":\"e_guard_on\"},{\"name\":\"Выключение активной охраны\",\"id\":204,\"icon\":\"e_guard_off\"},{\"name\":\"Включение тревоги\",\"id\":205,\"icon\":\"event_icon\"},{\"name\":\"Выключение тревоги\",\"id\":206,\"icon\":\"event_icon\"},{\"name\":\"Метка обнаружена\",\"id\":207,\"icon\":\"e_card_id\"},{\"name\":\"Метка потеряна\",\"id\":208,\"icon\":\"e_card_out\"},{\"name\":\"Включение режима ТО\",\"id\":301,\"icon\":\"e_valet_on\"},{\"name\":\"Выключение режима ТО\",\"id\":302,\"icon\":\"e_valet_off\"},{\"name\":\"Включение трекинга\",\"id\":303,\"icon\":\"e_trace_start\"},{\"name\":\"Выключение трекинга\",\"id\":304,\"icon\":\"e_trace_stop\"},{\"name\":\"Начало маршрута\",\"id\":305,\"icon\":\"e_trace_start\"},{\"name\":\"Точка маршрута\",\"id\":306,\"icon\":\"e_trace\"},{\"name\":\"Конец маршрута\",\"id\":307,\"icon\":\"e_trace_stop\"},{\"name\":\"Открыт багажник\",\"id\":501,\"icon\":\"e_boot_open\"},{\"name\":\"Закрыт багажник\",\"id\":502,\"icon\":\"e_boot_close\"},{\"name\":\"Тревога багажник\",\"id\":503,\"icon\":\"e_alarm_boot\"},{\"name\":\"Открыт капот\",\"id\":504,\"icon\":\"e_hood_open\"},{\"name\":\"Закрыт капот\",\"id\":505,\"icon\":\"e_hood_close\"},{\"name\":\"Тревога капот\",\"id\":506,\"icon\":\"e_alarm_input1\"},{\"name\":\"Открыта дверь\",\"id\":507,\"icon\":\"e_doors_open\"},{\"name\":\"Закрыта дверь\",\"id\":508,\"icon\":\"e_doors_close\"},{\"name\":\"Тревога дверь\",\"id\":509,\"icon\":\"e_alarm_door\"},{\"name\":\"Тормоз нажат\",\"id\":511,\"icon\":\"e_brake\"},{\"name\":\"Тормоз отпущен\",\"id\":512,\"icon\":\"e_brake\"},{\"name\":\"Открыт ЦЗ\",\"id\":513,\"icon\":\"e_doors_open\"},{\"name\":\"Закрыт ЦЗ\",\"id\":514,\"icon\":\"e_doors_close\"},{\"name\":\"Включение авторизации по метке (свободные руки)\",\"id\":515,\"icon\":\"e_lockopen1\"},{\"name\":\"Выключение авторизации по метке (свободные руки)\",\"id\":516,\"icon\":\"e_lockclose1\"},{\"name\":\"Вход включен\",\"id\":517,\"icon\":\"e_input1_on\"},{\"name\":\"Вход выключен\",\"id\":518,\"icon\":\"e_input1_off\"},{\"name\":\"Ошибка\",\"id\":609,\"icon\":\"e_valet_on\"},{\"name\":\"Потеря координат GPS\",\"id\":601,\"icon\":\"e_gps_fail\"},{\"name\":\"Восстановление GPS\",\"id\":602,\"icon\":\"e_gps_recover\"},{\"name\":\"GSM-связь пропала\",\"id\":603,\"icon\":\"e_gsm_fail\"},{\"name\":\"GSM-связь восстановлена\",\"id\":604,\"icon\":\"e_gsm_recover\"},{\"name\":\"Интерент пропал\",\"id\":605,\"icon\":\"e_gprs_off\"},{\"name\":\"Интернет восстановлен\",\"id\":606,\"icon\":\"e_gprs_on\"},{\"name\":\"Изменение настроек системы\",\"id\":607,\"icon\":\"e_settings\"},{\"name\":\"Сервисное сообщение\",\"id\":701,\"icon\":\"event_icon\"},{\"name\":\"Команда не обработана\",\"id\":702,\"icon\":\"event_icon\"},{\"name\":\"Заправка\",\"id\":703,\"icon\":\"event_icon\"},{\"name\":\"Состояние автомобиля изменение режима охраны\",\"id\":704,\"icon\":\"event_icon\"},{\"name\":\"Неровность дороги/удар\",\"id\":705,\"icon\":\"e_tilt\"},{\"name\":\"Замена SIM\",\"id\":706,\"icon\":\"event_icon\"},{\"name\":\"Вход в зону\",\"id\":710,\"icon\":\"e_zone_in\"},{\"name\":\"Выход из зоны\",\"id\":711,\"icon\":\"e_zone_out\"},{\"name\":\"Вход в систему\",\"id\":707,\"icon\":\"event_icon\"},{\"name\":\"Производственный тест\",\"id\":708,\"icon\":\"event_icon\"},{\"name\":\"SMS\",\"id\":709,\"icon\":\"e_user_sms\"},{\"name\":\"Вызов\",\"id\":712,\"icon\":\"e_voice\"},{\"name\":\"Ввод\",\"id\":713,\"icon\":\"e_command\"},{\"name\":\"Доп сообщение\",\"id\":714,\"icon\":\"event_icon\"},{\"name\":\"Изменение температуры\",\"id\":715,\"icon\":\"e_temperature\"},{\"name\":\"Сброс\",\"id\":716,\"icon\":\"e_reset\"}]\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/assets/json/icon-mapping.json\n// module id = ./src/assets/json/icon-mapping.json\n// module chunks = main","export const environment = {\n production: true,\n apiUri: 'https://api.ugona.net/api/',\n info: null\n};\n\n\n\n// WEBPACK FOOTER //\n// ./src/environments/environment.ts","import { enableProdMode } from '@angular/core';\nimport { platformBrowserDynamic } from '@angular/platform-browser-dynamic';\n\nimport { AppModule } from 'app/app.module';\nimport { environment } from '@environments';\n\nif (environment.production) {\n enableProdMode();\n}\n\nplatformBrowserDynamic()\n .bootstrapModule(AppModule)\n .catch(err => console.log(err));\n\n\n\n// WEBPACK FOOTER //\n// ./src/main.ts"],"sourceRoot":"webpack:///"}