{"version":3,"sources":["./$_lazy_route_resource lazy namespace object","./node_modules/moment/locale sync ^\\.\\/.*$","./src/app/app.component.html","./src/app/categories/category-list/category-list.component.html","./src/app/controls/organization-filter/organization-filter.component.html","./src/app/dashboards/dashboard-filters/dashboard-filters.component.html","./src/app/dashboards/dashboard-frameless/dashboard-frameless.component.html","./src/app/dashboards/dashboard/dashboard.component.html","./src/app/logout/logout.component.html","./src/app/navbar/navbar.component.html","./src/app/products/product-create/product-create.component.html","./src/app/products/product-edit/product-edit.component.html","./src/app/products/product-filter/product-filter.component.html","./src/app/products/product-list/product-list.component.html","./src/app/sidebar/sidebar.component.html","./src/app/technical-applications/technical-application-category-selection/technical-application-category-selection.component.html","./src/app/technical-applications/technical-application-create/technical-application-create.component.html","./src/app/technical-applications/technical-application-edit/technical-application-edit.component.html","./src/app/technical-applications/technical-application-form/technical-application-form.component.html","./src/app/technical-applications/technical-application-list/technical-application-list.component.html","./src/app/technical-applications/technical-application-select-image/technical-application-select-image.component.html","./src/app/user/user-add/user-add.component.html","./src/app/user/user-app-features/user-app-features.component.html","./src/app/user/user-bulk-import/user-bulk-import.component.html","./src/app/user/user-change-password/user-change-password.component.html","./src/app/user/user-edit/user-edit.component.html","./src/app/user/user-list/user-list.component.html","./src/app/user/user-roles/user-roles.component.html","./src/app/welcome/welcome.component.html","./src/app/api/add-technical-application-model.ts","./src/app/api/add-user-request-model.ts","./src/app/api/auth.interceptor.ts","./src/app/api/categories.service.ts","./src/app/api/category-model.ts","./src/app/api/create-product-request-model.ts","./src/app/api/dashboard.service.ts","./src/app/api/features.service.ts","./src/app/api/image.service.ts","./src/app/api/product-model.ts","./src/app/api/products.service.ts","./src/app/api/roles.service.ts","./src/app/api/technical-application-model.ts","./src/app/api/technical-application.service.ts","./src/app/api/update-technical-application-model.ts","./src/app/api/user-info.service.ts","./src/app/api/user-model.ts","./src/app/api/users.service.ts","./src/app/app-routing.module.ts","./src/app/app.component.scss","./src/app/app.component.ts","./src/app/app.module.ts","./src/app/categories/categories-routing.module.ts","./src/app/categories/categories.module.ts","./src/app/categories/category-list/category-list.component.scss","./src/app/categories/category-list/category-list.component.ts","./src/app/controls/controls.module.ts","./src/app/controls/organization-filter/organization-filter.component.scss","./src/app/controls/organization-filter/organization-filter.component.ts","./src/app/controls/progress.service.ts","./src/app/dashboards/dashboard-filters/dashboard-filters.component.scss","./src/app/dashboards/dashboard-filters/dashboard-filters.component.ts","./src/app/dashboards/dashboard-frameless/dashboard-frameless.component.scss","./src/app/dashboards/dashboard-frameless/dashboard-frameless.component.ts","./src/app/dashboards/dashboard/dashboard.component.scss","./src/app/dashboards/dashboard/dashboard.component.ts","./src/app/dashboards/dashboards-routing.module.ts","./src/app/dashboards/dashboards.module.ts","./src/app/logout/logout.component.scss","./src/app/logout/logout.component.ts","./src/app/navbar/navbar.component.scss","./src/app/navbar/navbar.component.ts","./src/app/products/product-create/product-create.component.scss","./src/app/products/product-create/product-create.component.ts","./src/app/products/product-edit/product-edit.component.scss","./src/app/products/product-edit/product-edit.component.ts","./src/app/products/product-filter/brand-view-model.ts","./src/app/products/product-filter/category-view-model.ts","./src/app/products/product-filter/product-filter-changed-event.ts","./src/app/products/product-filter/product-filter.component.scss","./src/app/products/product-filter/product-filter.component.ts","./src/app/products/product-list/product-list.component.scss","./src/app/products/product-list/product-list.component.ts","./src/app/products/product-list/product-view-model.ts","./src/app/products/product-resolver.ts","./src/app/products/products-routing.module.ts","./src/app/products/products.module.ts","./src/app/security/auth.guard.ts","./src/app/security/is-admin.guard.ts","./src/app/services/filter-storage.service.ts","./src/app/sidebar/sidebar.component.scss","./src/app/sidebar/sidebar.component.ts","./src/app/technical-applications/category.service.ts","./src/app/technical-applications/icon.service.ts","./src/app/technical-applications/technical-application-category-selection/technical-application-category-selection.component.scss","./src/app/technical-applications/technical-application-category-selection/technical-application-category-selection.component.ts","./src/app/technical-applications/technical-application-create/technical-application-create.component.scss","./src/app/technical-applications/technical-application-create/technical-application-create.component.ts","./src/app/technical-applications/technical-application-edit/technical-application-edit.component.scss","./src/app/technical-applications/technical-application-edit/technical-application-edit.component.ts","./src/app/technical-applications/technical-application-form/technical-application-form.component.scss","./src/app/technical-applications/technical-application-form/technical-application-form.component.ts","./src/app/technical-applications/technical-application-list/technical-application-list.component.scss","./src/app/technical-applications/technical-application-list/technical-application-list.component.ts","./src/app/technical-applications/technical-application-list/technical-application-view-model.ts","./src/app/technical-applications/technical-application-select-image/technical-application-select-image.component.scss","./src/app/technical-applications/technical-application-select-image/technical-application-select-image.component.ts","./src/app/technical-applications/technical-application.resolver.ts","./src/app/technical-applications/technical-applications-routing.module.ts","./src/app/technical-applications/technical-applications.module.ts","./src/app/technical-applications/validator.service.ts","./src/app/user/user-add/user-add.component.scss","./src/app/user/user-add/user-add.component.ts","./src/app/user/user-app-features/user-app-feature-model.ts","./src/app/user/user-app-features/user-app-features.component.scss","./src/app/user/user-app-features/user-app-features.component.ts","./src/app/user/user-bulk-import/user-bulk-import.component.scss","./src/app/user/user-bulk-import/user-bulk-import.component.ts","./src/app/user/user-change-password/user-change-password.component.scss","./src/app/user/user-change-password/user-change-password.component.ts","./src/app/user/user-edit/user-edit.component.scss","./src/app/user/user-edit/user-edit.component.ts","./src/app/user/user-list/user-list.component.scss","./src/app/user/user-list/user-list.component.ts","./src/app/user/user-list/user-view-model.ts","./src/app/user/user-resolver.ts","./src/app/user/user-roles/user-roles.component.scss","./src/app/user/user-roles/user-roles.component.ts","./src/app/user/user-routing.module.ts","./src/app/user/user.module.ts","./src/app/welcome/welcome.component.scss","./src/app/welcome/welcome.component.ts","./src/environments/environment.ts","./src/main.ts"],"names":[],"mappings":";;;;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAE;AACF;AACA,4CAA4C,WAAW;AACvD;AACA;AACA,wE;;;;;;;;;;;ACZA;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-es2015.js","sourcesContent":["function webpackEmptyAsyncContext(req) {\n\t// Here Promise.resolve().then() is used instead of new Promise() to prevent\n\t// uncaught exception popping up in devtools\n\treturn Promise.resolve().then(function() {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t});\n}\nwebpackEmptyAsyncContext.keys = function() { return []; };\nwebpackEmptyAsyncContext.resolve = webpackEmptyAsyncContext;\nmodule.exports = webpackEmptyAsyncContext;\nwebpackEmptyAsyncContext.id = \"./$$_lazy_route_resource lazy recursive\";","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-SG\": \"./node_modules/moment/locale/en-SG.js\",\n\t\"./en-SG.js\": \"./node_modules/moment/locale/en-SG.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\"./ga\": \"./node_modules/moment/locale/ga.js\",\n\t\"./ga.js\": \"./node_modules/moment/locale/ga.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-ch\": \"./node_modules/moment/locale/it-ch.js\",\n\t\"./it-ch.js\": \"./node_modules/moment/locale/it-ch.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\"./ku\": \"./node_modules/moment/locale/ku.js\",\n\t\"./ku.js\": \"./node_modules/moment/locale/ku.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};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = \"./node_modules/moment/locale sync recursive ^\\\\.\\\\/.*$\";","module.exports = \"\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n Copyright © Suretint Technologies, LLC 2019\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n\"","module.exports = \"
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

MFC & Brands

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Show only selected brands\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n
Matt sent you a friend request
\\r\\n
\\r\\n \\r\\n
Hey, wanna dress up as wizards and ride our hoverboards?
\\r\\n
\\r\\n
\\r\\n\\r\\n\"","module.exports = \"
\\r\\n
\\r\\n
Organization:
\\r\\n
\\r\\n
\\r\\n {{selectedOrganization?.name}}\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\"","module.exports = \"
\\r\\n
\\r\\n
Organization:
\\r\\n
\\r\\n
\\r\\n \\r\\n {{selectedOrganization?.name}}\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\"","module.exports = \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\"","module.exports = \"
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\"","module.exports = \"
\\r\\n
Ready to Leave?
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n Select \\\"Logout\\\" below if you are ready to end your current session.\\r\\n
\\r\\n
\\r\\n \\r\\n Logout\\r\\n
\\r\\n\"","module.exports = \"\\r\\n\"","module.exports = \"
\\r\\n
\\r\\n
\\r\\n

New Product Details

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\"","module.exports = \"
\\r\\n
\\r\\n
\\r\\n

Edit Product Details

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n

No image

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\"","module.exports = \"
\\r\\n
\\r\\n
Manufacturer:
\\r\\n
\\r\\n
\\r\\n \\r\\n {{selectedBrand?.name}}\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
Brand:
\\r\\n
\\r\\n
\\r\\n \\r\\n {{selectedCategory?.category?.name}}\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\"","module.exports = \"
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n

Products

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n {{data.baseValidated ? 'Yes' : 'No'}}\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n
Matt sent you a friend request
\\r\\n
\\r\\n \\r\\n
Hey, wanna dress up as wizards and ride our hoverboards?
\\r\\n
\\r\\n
\\r\\n\"","module.exports = \"\\r\\n \\r\\n\"","module.exports = \"
\\r\\n

Change password

\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n {{data.name}}\\r\\n {{data.description}}\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n\"","module.exports = \"
\\r\\n
\\r\\n
\\r\\n

Create Technical Application

\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\"","module.exports = \"
\\r\\n
\\r\\n
\\r\\n

Edit Technical Application

\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\"","module.exports = \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\"","module.exports = \"
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n

Technical Applications

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\"","module.exports = \"
\\r\\n

Change password

\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n {{data.title}}\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n\"","module.exports = \"
\\r\\n
\\r\\n
\\r\\n

New User Details

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\"","module.exports = \"

Permissions:

\\r\\n
\\r\\n
\\r\\n
{{f.feature.name}}
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\"","module.exports = \"
\\r\\n
\\r\\n
\\r\\n

Import users to {{organization.name}}

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n Sample file\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\"","module.exports = \"
\\r\\n

Change password

\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n\"","module.exports = \"
\\r\\n
\\r\\n
\\r\\n

Edit User Details

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\"","module.exports = \"\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n

Users

\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\"","module.exports = \"\\r\\n\"","module.exports = \"

Hi, nice to see you here!

\\r\\n\"","import {ITechnicalApplicationEditModel} from './i-technical-application-edit-model';\r\nimport {TechnicalApplicationCategoryModel} from './technical-application-category-model';\r\nimport {ImageModel} from './image-model';\r\n\r\nexport class AddTechnicalApplicationModel implements ITechnicalApplicationEditModel {\r\n static build(category: TechnicalApplicationCategoryModel, icon: ImageModel) {\r\n const result = new AddTechnicalApplicationModel();\r\n result.calc = category.calc;\r\n result.categoryId = category.id;\r\n result.defaultRatio = '1:1';\r\n result.state = 'A';\r\n result.virginHair = 'N';\r\n result.wet = 'N';\r\n result.iconURL = icon.url;\r\n result.maxSize = 0;\r\n result.minSize = 0;\r\n result.foilCount = 0;\r\n return result;\r\n }\r\n\r\n executorId:\tstring;\r\n id:\tstring;\r\n name:\tstring;\r\n categoryId:\tstring;\r\n minSize:\tnumber;\r\n maxSize: number;\r\n iconURL: string;\r\n defaultRatio:\tstring;\r\n foilCount: number;\r\n wet: string;\r\n virginHair:\tstring;\r\n state:\tstring;\r\n calc:\tstring;\r\n}\r\n","export class AddUserRequestModel {\r\n firstName: string;\r\n lastName: string;\r\n email: string;\r\n pwd: string;\r\n roleId: number;\r\n appFeatures: string;\r\n rptFeatures: string;\r\n externalID: string;\r\n executorId: string;\r\n}\r\n","import {Injectable} from '@angular/core';\r\nimport {\r\n HttpErrorResponse,\r\n HttpEvent,\r\n HttpHandler,\r\n HttpInterceptor,\r\n HttpRequest,\r\n HttpResponse\r\n} from '@angular/common/http';\r\nimport {Observable, throwError} from 'rxjs';\r\nimport {catchError, map} from 'rxjs/operators';\r\n\r\n@Injectable()\r\nexport class AuthInterceptor implements HttpInterceptor {\r\n shownMessage = false;\r\n\r\n intercept(request: HttpRequest, next: HttpHandler): Observable> {\r\n return next\r\n .handle(request)\r\n .pipe(\r\n catchError((error: HttpErrorResponse) => {\r\n if (error.status === 401) {\r\n if (!this.shownMessage) {\r\n this.shownMessage = true;\r\n alert('Your session is expired');\r\n window.location.href = '/api/account/logout';\r\n }\r\n }\r\n\r\n return throwError(error);\r\n })\r\n );\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport {HttpClient} from '@angular/common/http';\r\nimport {Observable, of} from 'rxjs';\r\nimport {ListResponse} from './list-response';\r\nimport {CategoryModel} from './category-model';\r\nimport {MainCategoryModel} from './main-category-model';\r\nimport {ActivateCategoryRequestModel} from './activate-category-request-model';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class CategoriesService {\r\n constructor(private httpClient: HttpClient) { }\r\n\r\n public get(organizationId: string): Observable> {\r\n return this.httpClient.get>(`/api/organizations/${organizationId}/categories`);\r\n }\r\n\r\n public getMain(): Observable> {\r\n return this.httpClient.get>(`/api/maincategories`);\r\n }\r\n\r\n public activate(organizationId: string, request: ActivateCategoryRequestModel): Observable {\r\n request.executorId = 'notemptystring';\r\n return this.httpClient.post(`/api/organizations/${organizationId}/categories/activate`, request);\r\n }\r\n\r\n public deactivate(organizationId: string, categoryId: string): Observable {\r\n return this.httpClient.post(`/api/organizations/${organizationId}/categories/${categoryId}/deactivate`, null);\r\n }\r\n}\r\n","export class CategoryModel {\r\n id:\tstring;\r\n baseID:\tstring;\r\n brandID:\tstring;\r\n name:\tstring;\r\n state:\tstring;\r\n lastModDate:\tstring;\r\n}\r\n","export class CreateProductRequestModel {\r\n executorId: string;\r\n categoryId: string;\r\n type: string;\r\n name: string;\r\n calc: string;\r\n size: number;\r\n imageUrl: string;\r\n uniqueCode: string;\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport {Observable, of} from 'rxjs';\r\nimport {HttpClient} from '@angular/common/http';\r\nimport {DashboardConfigurationModel} from './dashboard-configuration-model';\r\nimport {DashboardUrlModel} from './dashboard-url-model';\r\nimport {OrganizationData, UserInfoModel} from './user-info-model';\r\nimport {map} from 'rxjs/operators';\r\nimport {DashboardOrganizationsResponse} from './dashboard-organizations-response';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class DashboardService {\r\n private organizations: DashboardOrganizationsResponse;\r\n\r\n constructor(private httpClient: HttpClient) { }\r\n\r\n public getOrganizations(): Observable {\r\n if (this.organizations != null) {\r\n return of(this.organizations);\r\n }\r\n\r\n return this.httpClient.get('api/dashboards/organizations').pipe(map(x => {\r\n this.organizations = x;\r\n return x;\r\n }));;\r\n }\r\n\r\n public getList(): Observable {\r\n return this.httpClient.get('api/dashboards');\r\n }\r\n\r\n public getUrl(dashboardCode: string): Observable {\r\n return this.httpClient.get(`api/dashboards/${dashboardCode}/url`);\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport {HttpClient} from '@angular/common/http';\r\nimport {Observable, of} from 'rxjs';\r\nimport {map} from 'rxjs/operators';\r\nimport {FeatureModel} from './feature-model';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class FeaturesService {\r\n private features: FeatureModel[];\r\n\r\n constructor(private httpClient: HttpClient) { }\r\n\r\n public get(): Observable {\r\n if (this.features != null) {\r\n return of(this.features);\r\n }\r\n\r\n return this.httpClient.get('api/features')\r\n .pipe(map(x => {\r\n this.features = x;\r\n return x;\r\n }));\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport {HttpClient} from '@angular/common/http';\r\nimport {Observable} from 'rxjs';\r\nimport {ListResponse} from './list-response';\r\nimport {ImageModel} from './image-model';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ImageService {\r\n\r\n constructor(private httpClient: HttpClient) { }\r\n\r\n public getIcons(organizationId: string): Observable> {\r\n return this.httpClient.get>(\r\n `api/organizations/${organizationId}/images/icons`);\r\n }\r\n}\r\n","export class ProductModel {\r\n id: string;\r\n baseID: string;\r\n calc: string;\r\n categoryID: string;\r\n categoryName: string;\r\n categoryBaseId: string;\r\n brandName: string;\r\n density: string;\r\n name: string;\r\n organizationID: string;\r\n pType: string;\r\n size: number;\r\n state: string;\r\n isCanister: boolean;\r\n lastModDate: string;\r\n baseValidated: boolean;\r\n baseImageUrl: string;\r\n baseUniqueCode: string;\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport {HttpClient} from '@angular/common/http';\r\nimport {Observable} from 'rxjs';\r\nimport {ListResponse} from './list-response';\r\nimport {ProductModel} from './product-model';\r\nimport {UpdateProductRequestModel} from './update-product-request-model';\r\nimport {CreateProductRequestModel} from './create-product-request-model';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ProductsService {\r\n constructor(private httpClient: HttpClient) { }\r\n\r\n public get(organizationId: string, categoryId: string): Observable> {\r\n return this.httpClient.get>(\r\n `/api/organizations/${organizationId}/products?categoryId=${categoryId}`);\r\n }\r\n\r\n public getOne(organizationId: string, itemId: string): Observable {\r\n return this.httpClient.get(\r\n `/api/organizations/${organizationId}/products/${itemId}`);\r\n }\r\n\r\n public activate(organizationId: string, productId: string): Observable {\r\n return this.httpClient.post(`/api/organizations/${organizationId}/products/${productId}/activate`, null);\r\n }\r\n\r\n public deactivate(organizationId: string, productId: string): Observable {\r\n return this.httpClient.post(`/api/organizations/${organizationId}/products/${productId}/deactivate`, null);\r\n }\r\n\r\n public create(organizationId: string, request: CreateProductRequestModel): Observable {\r\n return this.httpClient.post(`/api/organizations/${organizationId}/products`, request);\r\n }\r\n\r\n public update(organizationId: string, productId: string, request: UpdateProductRequestModel): Observable {\r\n return this.httpClient.put(`/api/organizations/${organizationId}/products/${productId}`, request);\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport {HttpClient} from '@angular/common/http';\r\nimport {Observable, of} from 'rxjs';\r\nimport {map} from 'rxjs/operators';\r\nimport {RoleModel} from './role-model';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class RolesService {\r\n private roles: RoleModel[];\r\n\r\n constructor(private httpClient: HttpClient) { }\r\n\r\n public get(): Observable {\r\n if (this.roles != null) {\r\n return of(this.roles);\r\n }\r\n\r\n return this.httpClient.get('api/roles')\r\n .pipe(map(x => {\r\n this.roles = x;\r\n return x;\r\n }));\r\n }\r\n}\r\n","export class TechnicalApplicationModel {\r\n id:\tstring;\r\n name:\tstring;\r\n categoryId:\tstring;\r\n minSize:\tnumber;\r\n maxSize:\tnumber;\r\n iconURL:\tstring;\r\n defaultRatio:\tstring;\r\n foilCount: number;\r\n wet:\tstring;\r\n virginHair:\tstring;\r\n state:\tstring;\r\n calc:\tstring;\r\n lastModByID: string;\r\n lastModDate:\tstring;\r\n dispenseCount:\tnumber;\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport {Observable} from 'rxjs';\r\nimport {HttpClient} from '@angular/common/http';\r\nimport {TechnicalApplicationModel} from './technical-application-model';\r\nimport {ListResponse} from './list-response';\r\nimport {TechnicalApplicationCategoryModel} from './technical-application-category-model';\r\nimport {AddTechnicalApplicationModel} from './add-technical-application-model';\r\nimport {UpdateTechnicalApplicationModel} from './update-technical-application-model';\r\nimport {map} from 'rxjs/operators';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class TechnicalApplicationService {\r\n constructor(private httpClient: HttpClient) { }\r\n\r\n public getList(organizationId: string): Observable> {\r\n return this.httpClient.get>(\r\n `api/organizations/${organizationId}/technicalApplications`);\r\n }\r\n\r\n public getCategoryList(organizationId: string): Observable> {\r\n return this.httpClient.get>(\r\n `api/organizations/${organizationId}/technicalApplications/categories`);\r\n }\r\n\r\n public add(organizationId: string, request: AddTechnicalApplicationModel): Observable {\r\n request.executorId = '...';\r\n return this.httpClient.post(\r\n `api/organizations/${organizationId}/technicalApplications`,\r\n request);\r\n }\r\n\r\n public update(organizationId: string, itemId: string, request: UpdateTechnicalApplicationModel): Observable {\r\n request.executorId = '...';\r\n return this.httpClient.put(\r\n `api/organizations/${organizationId}/technicalApplications/${itemId}`,\r\n request);\r\n }\r\n\r\n getOne(organizationId: string, itemId: string): Observable {\r\n return this.getList(organizationId).pipe(map(list => {\r\n return list.data.filter(x => x.id === itemId)[0];\r\n }));\r\n }\r\n}\r\n","import {ITechnicalApplicationEditModel} from './i-technical-application-edit-model';\r\n\r\nexport class UpdateTechnicalApplicationModel implements ITechnicalApplicationEditModel {\r\n executorId:\tstring;\r\n name:\tstring;\r\n categoryId:\tstring;\r\n minSize: number;\r\n maxSize:\tnumber;\r\n iconURL:\tstring;\r\n defaultRatio:\tstring;\r\n foilCount:\tnumber;\r\n wet:\tstring;\r\n virginHair:\tstring;\r\n state:\tstring;\r\n calc: string;\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport {HttpClient} from '@angular/common/http';\r\nimport {UserInfoModel} from './user-info-model';\r\nimport {Observable, of} from 'rxjs';\r\nimport {map} from 'rxjs/operators';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class UserInfoService {\r\n private userInfo: UserInfoModel;\r\n\r\n constructor(private httpClient: HttpClient) { }\r\n\r\n public get(): Observable {\r\n if (this.userInfo != null) {\r\n return of(this.userInfo);\r\n }\r\n\r\n return this.httpClient.get('api/account/userinfo')\r\n .pipe(map(x => {\r\n this.userInfo = x;\r\n return x;\r\n }));\r\n }\r\n\r\n public async ping(): Promise {\r\n // console.log('ping');\r\n // debugger;\r\n try {\r\n return await this.httpClient.get('api/account/ping', {observe: 'response'})\r\n .pipe(map(x => {\r\n console.log(x);\r\n return x.status === 200;\r\n })).toPromise();\r\n } catch (e) {\r\n return false;\r\n }\r\n }\r\n\r\n public async extendSession(): Promise {\r\n try {\r\n return await this.httpClient.get('api/account/ExtendSession', {observe: 'response'})\r\n .pipe(map(x => {\r\n console.log(x);\r\n return x.status === 200;\r\n })).toPromise();\r\n } catch (e) {\r\n return false;\r\n }\r\n }\r\n}\r\n","export class UserModel {\r\n constructor(o: UserModel) {\r\n this.id = o.id;\r\n this.roleID = o.roleID;\r\n this.roleName = o.roleName;\r\n this.defaultOrgID = o.defaultOrgID;\r\n this.defaultOrgName = o.defaultOrgName;\r\n this.firstName = o.firstName;\r\n this.lastName = o.lastName;\r\n this.email = o.email;\r\n this.allowedLocations = o.allowedLocations;\r\n this.rptFeatures = o.rptFeatures;\r\n this.appFeatures = o.appFeatures;\r\n this.state = o.state;\r\n this.lastModDate = o.lastModDate;\r\n this.createDate = o.createDate;\r\n this.externalID = o.externalID;\r\n }\r\n\r\n id: string;\r\n roleID: number;\r\n roleName: string;\r\n defaultOrgID: string;\r\n defaultOrgName: string;\r\n firstName: string;\r\n lastName: string;\r\n email: string;\r\n allowedLocations: string[];\r\n rptFeatures: string;\r\n appFeatures: string;\r\n state: string;\r\n lastModDate: Date;\r\n createDate: Date;\r\n externalID: string;\r\n\r\n get active(): boolean {\r\n return this.state === 'A';\r\n }\r\n\r\n set active(value: boolean) {\r\n this.state = value ? 'A' : 'R';\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport {HttpClient} from '@angular/common/http';\r\nimport {Observable, of} from 'rxjs';\r\nimport {map} from 'rxjs/operators';\r\nimport {UserListResponse} from './user-list-response';\r\nimport {UpdateUserRequestModel} from './update-user-request-model';\r\nimport {UserModel} from './user-model';\r\nimport {AddUserRequestModel} from './add-user-request-model';\r\nimport {ChangePasswordRequestModel} from './change-password-request-model';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class UsersService {\r\n\r\n constructor(private httpClient: HttpClient) { }\r\n\r\n public getList(organizationId: string): Observable {\r\n return this.httpClient.get(`/api/organizations/${organizationId}/users`);\r\n }\r\n\r\n public getOne(organizationId: string, userId: string): Observable {\r\n return this.httpClient.get(`/api/organizations/${organizationId}/users/${userId}`);\r\n }\r\n\r\n public update(organizationId: string, userId: string, request: UpdateUserRequestModel): Observable {\r\n return this.httpClient.put(`/api/organizations/${organizationId}/users/${userId}`, request);\r\n }\r\n\r\n public add(organizationId: string, request: AddUserRequestModel): Observable {\r\n return this.httpClient.post(`/api/organizations/${organizationId}/users`, request);\r\n }\r\n\r\n public deactivate(organizationId: string, userId: string): Observable {\r\n return this.httpClient.post(`/api/organizations/${organizationId}/users/${userId}/deactivate`, null);\r\n }\r\n\r\n public activate(organizationId: string, userId: string): Observable {\r\n return this.httpClient.post(`/api/organizations/${organizationId}/users/${userId}/activate`, null);\r\n }\r\n\r\n public changePassword(organizationId: string, userId: string, request: ChangePasswordRequestModel): Observable {\r\n request.executorId = 'XXX';\r\n return this.httpClient.post(`/api/organizations/${organizationId}/users/${userId}/changePassword`, request);\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { Routes, RouterModule } from '@angular/router';\r\nimport {WelcomeComponent} from './welcome/welcome.component';\r\nimport {AuthGuard} from './security/auth.guard';\r\n\r\nconst routes: Routes = [\r\n {\r\n path: '',\r\n canActivate: [AuthGuard],\r\n children: [\r\n {path: '', component: WelcomeComponent}\r\n ]\r\n }\r\n];\r\n\r\n@NgModule({\r\n imports: [RouterModule.forRoot(routes)],\r\n exports: [RouterModule]\r\n})\r\nexport class AppRoutingModule { }\r\n","module.exports = \".wrapper-full-height {\\n height: calc(100vh);\\n}\\n\\n.content-wrapper-hide-ui {\\n padding: initial !important;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvQzpcXHdcXHN1cmV0aW50XFxQb3J0YWxcXFJlcG9ydGluZ1BvcnRhbC9zcmNcXGFwcFxcYXBwLmNvbXBvbmVudC5zY3NzIiwic3JjL2FwcC9hcHAuY29tcG9uZW50LnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7RUFDRSxtQkFBQTtBQ0NGOztBREVBO0VBQ0UsMkJBQUE7QUNDRiIsImZpbGUiOiJzcmMvYXBwL2FwcC5jb21wb25lbnQuc2NzcyIsInNvdXJjZXNDb250ZW50IjpbIi53cmFwcGVyLWZ1bGwtaGVpZ2h0IHtcclxuICBoZWlnaHQ6IGNhbGMoMTAwdmgpO1xyXG59XHJcblxyXG4uY29udGVudC13cmFwcGVyLWhpZGUtdWkge1xyXG4gIHBhZGRpbmc6IGluaXRpYWwgIWltcG9ydGFudDtcclxufVxyXG4iLCIud3JhcHBlci1mdWxsLWhlaWdodCB7XG4gIGhlaWdodDogY2FsYygxMDB2aCk7XG59XG5cbi5jb250ZW50LXdyYXBwZXItaGlkZS11aSB7XG4gIHBhZGRpbmc6IGluaXRpYWwgIWltcG9ydGFudDtcbn0iXX0= */\"","import {AfterViewInit, Component, OnInit} from '@angular/core';\r\nimport {DashboardService} from './api/dashboard.service';\r\nimport {DashboardConfigurationModel} from './api/dashboard-configuration-model';\r\nimport {ActivatedRoute, Router} from '@angular/router';\r\nimport { createSpinner } from '@syncfusion/ej2-popups';\r\nimport {UserInfoService} from './api/user-info.service';\r\nimport * as $ from 'jquery';\r\n\r\n@Component({\r\n selector: 'app-root',\r\n templateUrl: './app.component.html',\r\n styleUrls: ['./app.component.scss']\r\n})\r\nexport class AppComponent implements OnInit, AfterViewInit {\r\n title = 'Portal';\r\n dashboards: DashboardConfigurationModel[];\r\n private hideUI = true;\r\n\r\n constructor(private dashboardService: DashboardService,\r\n private router: Router,\r\n private activatedRoute: ActivatedRoute,\r\n private userInfoService: UserInfoService) { }\r\n\r\n async ngOnInit() {\r\n this.initPings();\r\n this.initSessionExtension();\r\n\r\n this.activatedRoute.queryParams.subscribe((params: {hideUI: boolean}) => {\r\n this.hideUI = params.hideUI || false;\r\n console.log(this.hideUI, params);\r\n });\r\n\r\n try\r\n {\r\n const dashboardList = await this.dashboardService.getList().toPromise();\r\n this.dashboards = dashboardList.filter(d => d.visible);\r\n } catch(e) {\r\n alert('Try ro refresh the page: ' + e.error.message);\r\n console.error(e);\r\n }\r\n\r\n return ;\r\n\r\n if (this.dashboards.length > 0) {\r\n await this.router.navigate(['dashboard', this.dashboards[0].dashboardName]);\r\n }\r\n }\r\n\r\n ngAfterViewInit() {\r\n // createSpinner() method is used to create spinner\r\n createSpinner({\r\n // Specify the target for the spinner to show\r\n target: document.getElementById('wrapper')\r\n });\r\n }\r\n\r\n private initPings() {\r\n setInterval(() => {\r\n this.userInfoService.ping().then(() => console.log('ping'));\r\n }, 5000);\r\n }\r\n\r\n private initSessionExtension() {\r\n let lastActivityTime = new Date();\r\n\r\n $(() => {\r\n $('*').bind('mousemove click mouseup mousedown keydown keypress keyup submit change mouseenter scroll resize dblclick', () => {\r\n lastActivityTime = new Date();\r\n });\r\n });\r\n\r\n setInterval(() => {\r\n const now = new Date();\r\n const diff = now.getTime() - lastActivityTime.getTime();\r\n const mins = Math.floor(diff / (1000 * 60));\r\n\r\n if (mins > 1) {\r\n return;\r\n }\r\n\r\n this.userInfoService.extendSession().then(() => console.log('extendSession'));\r\n }, 10000);\r\n }\r\n}\r\n","import { BrowserModule } from '@angular/platform-browser';\r\nimport { NgModule } from '@angular/core';\r\n\r\nimport { AppRoutingModule } from './app-routing.module';\r\nimport { AppComponent } from './app.component';\r\nimport { NavbarComponent } from './navbar/navbar.component';\r\nimport { HttpClientModule } from '@angular/common/http';\r\nimport { SidebarComponent } from './sidebar/sidebar.component';\r\nimport {NgbModule} from '@ng-bootstrap/ng-bootstrap';\r\nimport { DateRangePickerModule } from '@syncfusion/ej2-angular-calendars';\r\nimport { WelcomeComponent } from './welcome/welcome.component';\r\nimport {UserModule} from './user/user.module';\r\nimport {CategoriesModule} from './categories/categories.module';\r\nimport {TechnicalApplicationsModule} from './technical-applications/technical-applications.module';\r\nimport { LogoutComponent } from './logout/logout.component';\r\nimport {DashboardsModule} from './dashboards/dashboards.module';\r\nimport {ProductsModule} from './products/products.module';\r\nimport { HTTP_INTERCEPTORS } from '@angular/common/http';\r\nimport {AuthInterceptor} from './api/auth.interceptor';\r\n@NgModule({\r\n declarations: [\r\n AppComponent,\r\n NavbarComponent,\r\n SidebarComponent,\r\n WelcomeComponent,\r\n LogoutComponent\r\n ],\r\n imports: [\r\n BrowserModule,\r\n AppRoutingModule,\r\n HttpClientModule,\r\n NgbModule,\r\n DateRangePickerModule,\r\n UserModule,\r\n CategoriesModule,\r\n TechnicalApplicationsModule,\r\n DashboardsModule,\r\n ProductsModule\r\n ],\r\n providers: [\r\n { provide: HTTP_INTERCEPTORS, useClass: AuthInterceptor, multi: true }\r\n ],\r\n bootstrap: [AppComponent],\r\n entryComponents: [LogoutComponent]\r\n})\r\nexport class AppModule { }\r\n","import { NgModule } from '@angular/core';\r\nimport { Routes, RouterModule } from '@angular/router';\r\nimport {CategoryListComponent} from './category-list/category-list.component';\r\n\r\n\r\nconst routes: Routes = [{\r\n path: 'categories',\r\n children: [\r\n { path: '', component: CategoryListComponent}\r\n ]\r\n}];\r\n\r\n@NgModule({\r\n imports: [RouterModule.forChild(routes)],\r\n exports: [RouterModule]\r\n})\r\nexport class CategoriesRoutingModule { }\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\n\r\nimport { CategoriesRoutingModule } from './categories-routing.module';\r\nimport { CategoryListComponent } from './category-list/category-list.component';\r\nimport {ListViewModule, VirtualizationService} from '@syncfusion/ej2-angular-lists';\r\nimport {ControlsModule} from '../controls/controls.module';\r\nimport { ToastModule } from '@syncfusion/ej2-angular-notifications';\r\nimport {FormsModule} from '@angular/forms';\r\nimport {SwitchModule} from '@syncfusion/ej2-angular-buttons';\r\n\r\n@NgModule({\r\n declarations: [CategoryListComponent],\r\n imports: [\r\n CommonModule,\r\n CategoriesRoutingModule,\r\n ListViewModule,\r\n ControlsModule,\r\n ToastModule,\r\n FormsModule,\r\n SwitchModule\r\n ],\r\n providers: [\r\n VirtualizationService\r\n ]\r\n})\r\nexport class CategoriesModule { }\r\n","module.exports = \".flex-fill {\\n -webkit-box-flex: 1;\\n flex: 1 1 auto;\\n}\\n\\n.grid-container {\\n overflow: auto;\\n height: calc(100vh - 80px - 230px);\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvY2F0ZWdvcmllcy9jYXRlZ29yeS1saXN0L0M6XFx3XFxzdXJldGludFxcUG9ydGFsXFxSZXBvcnRpbmdQb3J0YWwvc3JjXFxhcHBcXGNhdGVnb3JpZXNcXGNhdGVnb3J5LWxpc3RcXGNhdGVnb3J5LWxpc3QuY29tcG9uZW50LnNjc3MiLCJzcmMvYXBwL2NhdGVnb3JpZXMvY2F0ZWdvcnktbGlzdC9jYXRlZ29yeS1saXN0LmNvbXBvbmVudC5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0VBQ0UsbUJBQUE7VUFBQSxjQUFBO0FDQ0Y7O0FERUE7RUFDRSxjQUFBO0VBQ0Esa0NBQUE7QUNDRiIsImZpbGUiOiJzcmMvYXBwL2NhdGVnb3JpZXMvY2F0ZWdvcnktbGlzdC9jYXRlZ29yeS1saXN0LmNvbXBvbmVudC5zY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLmZsZXgtZmlsbCB7XHJcbiAgZmxleDogMSAxIGF1dG87XHJcbn1cclxuXHJcbi5ncmlkLWNvbnRhaW5lciB7XHJcbiAgb3ZlcmZsb3c6YXV0bztcclxuICBoZWlnaHQ6Y2FsYygxMDB2aCAtIDgwcHggLSAyMzBweCk7XHJcbn1cclxuIiwiLmZsZXgtZmlsbCB7XG4gIGZsZXg6IDEgMSBhdXRvO1xufVxuXG4uZ3JpZC1jb250YWluZXIge1xuICBvdmVyZmxvdzogYXV0bztcbiAgaGVpZ2h0OiBjYWxjKDEwMHZoIC0gODBweCAtIDIzMHB4KTtcbn0iXX0= */\"","import {Component, OnInit, ViewChild} from '@angular/core';\r\nimport {CategoriesService} from '../../api/categories.service';\r\nimport {FilterStorageService} from '../../services/filter-storage.service';\r\nimport {CategoryModel} from '../../api/category-model';\r\nimport {MainCategoryModel} from '../../api/main-category-model';\r\nimport {ProgressService} from '../../controls/progress.service';\r\nimport {CategoryViewModel} from '../category-view-model';\r\nimport {ListViewComponent, SelectEventArgs} from '@syncfusion/ej2-angular-lists';\r\nimport {ToastComponent} from '@syncfusion/ej2-angular-notifications';\r\n\r\n@Component({\r\n selector: 'app-category-list',\r\n templateUrl: './category-list.component.html',\r\n styleUrls: ['./category-list.component.scss']\r\n})\r\nexport class CategoryListComponent implements OnInit {\r\n\r\n private categoriesService: CategoriesService;\r\n private categories: CategoryModel[];\r\n private mainCategories: MainCategoryModel[];\r\n\r\n public allItems: CategoryViewModel[] = [];\r\n public filteredItems: CategoryViewModel[] = [];\r\n\r\n public fields: object = {\r\n groupBy: 'brandName',\r\n tooltip: 'text',\r\n text: 'text',\r\n isChecked: 'active',\r\n enabled: 'enabled',\r\n sortBy: 'brandName asc' };\r\n\r\n @ViewChild('listView', {static: true}) listView: ListViewComponent;\r\n @ViewChild('toast', {static: true}) toast: ToastComponent;\r\n public position = { X: 'Right' };\r\n textFilter: string;\r\n showActiveOnly = false;\r\n\r\n constructor(categoriesService: CategoriesService,\r\n private filters: FilterStorageService,\r\n private progress: ProgressService) {\r\n this.categoriesService = categoriesService;\r\n }\r\n\r\n async ngOnInit() {\r\n await this.reloadList();\r\n }\r\n\r\n private initializeItems() {\r\n this.allItems = [];\r\n this.filteredItems = [];\r\n\r\n function buildVm(mc: MainCategoryModel): CategoryViewModel {\r\n return {\r\n id: mc.id,\r\n text: mc.name,\r\n brandName: mc.brandName,\r\n active: false\r\n };\r\n }\r\n\r\n const allItems = this.mainCategories\r\n .filter(mc => mc.state === 'A')\r\n .map(mc => buildVm(mc));\r\n\r\n this.updateActiveState(allItems);\r\n\r\n this.allItems = allItems.sort((v1, v2) => (v1.brandName + v1.text) > (v2.brandName + v2.text) ? 1 : -1);\r\n\r\n this.filteredItems = this.allItems;\r\n }\r\n\r\n private updateActiveState(list: CategoryViewModel[]) {\r\n const activeMainCategoryIds = new Set(this.categories\r\n .filter(c => c.state === 'A')\r\n .map(c => c.baseID));\r\n\r\n for(const mc of list) {\r\n mc.active = activeMainCategoryIds.has(mc.id);\r\n }\r\n }\r\n\r\n async reloadList() {\r\n this.progress.show();\r\n\r\n try {\r\n const categoriesP = this.categoriesService.get(this.filters.getSelectedOrganization().id).toPromise();\r\n const mainCategoriesP = this.categoriesService.getMain().toPromise();\r\n\r\n const results = await Promise.all([categoriesP, mainCategoriesP]);\r\n\r\n this.categories = results[0].data;\r\n this.mainCategories = results[1].data;\r\n\r\n if (results[0].total > results[0].data.length) {\r\n throw new Error('Load all categories');\r\n }\r\n\r\n if (results[1].total > results[1].data.length) {\r\n throw new Error('Load all main categories');\r\n }\r\n\r\n this.initializeItems();\r\n } finally {\r\n this.progress.hide();\r\n }\r\n }\r\n\r\n async onSelectItem($event: SelectEventArgs) {\r\n const typedData: any = $event.data;\r\n const mc: CategoryViewModel = typedData;\r\n const isChecked = $event.isChecked;\r\n\r\n this.listView.disableItem($event.item);\r\n\r\n try {\r\n if (isChecked) {\r\n await this.activate(mc);\r\n } else {\r\n await this.deactivate(mc);\r\n }\r\n } finally {\r\n this.listView.enableItem($event.item);\r\n }\r\n }\r\n\r\n private async activate(mainCategory: CategoryViewModel) {\r\n const vm = this.allItems.filter(x => x.id === mainCategory.id)[0];\r\n try {\r\n this.showToast('In progress', `Activating - ${mainCategory.text}`);\r\n\r\n const result = await this.categoriesService.activate(\r\n this.filters.getSelectedOrganization().id,\r\n {mainCategoryId: mainCategory.id}\r\n ).toPromise();\r\n\r\n this.showToast('Done', `Activated - ${result.name}`);\r\n\r\n if (this.categories.filter(c => c.baseID === result.baseID)) {\r\n return ;\r\n }\r\n\r\n this.categories.push(result);\r\n vm.active = true;\r\n } catch (e) {\r\n this.showToast('Error', `Activating - ${mainCategory.text}. Error - ${e.error.message}`);\r\n }\r\n }\r\n\r\n private showToast(title: string, message: string) {\r\n this.toast.show({\r\n timeOut: 5000,\r\n showCloseButton: true,\r\n title,\r\n content: message\r\n });\r\n }\r\n\r\n private async deactivate(mainCategory: CategoryViewModel) {\r\n const vm = this.allItems.filter(x => x.id === mainCategory.id)[0];\r\n this.showToast('In progress', `Deactivating - ${mainCategory.text}`);\r\n\r\n try {\r\n const category = this.categories.filter(c => c.baseID === mainCategory.id)[0];\r\n\r\n await this.categoriesService.deactivate(\r\n this.filters.getSelectedOrganization().id,\r\n category.id\r\n ).toPromise();\r\n this.showToast('Done', `Deactivated - ${category.name}`);\r\n vm.active = false;\r\n } catch (e) {\r\n this.showToast('Error', `Deactivating - ${mainCategory.text}. Error - ${e.error.message}`);\r\n }\r\n }\r\n\r\n applyFilter() {\r\n const textFilter = (this.textFilter || '').trim().toLowerCase();\r\n const showActiveOnly = this.showActiveOnly;\r\n console.log(textFilter, showActiveOnly);\r\n\r\n let result = this.allItems;\r\n\r\n if (textFilter.length > 0) {\r\n result = result.filter(c => {\r\n if (c.brandName.toLowerCase().includes(textFilter)) { return true; }\r\n if (c.text.toLowerCase().includes(textFilter)) { return true; }\r\n\r\n return false;\r\n });\r\n\r\n /* if (result.length === 0) {\r\n result = this.allItems;\r\n this.showToast('Filtering', `No results for the filter: ${textFilter}`);\r\n }*/\r\n }\r\n\r\n if (showActiveOnly) {\r\n result = result.filter(c => c.active);\r\n }\r\n\r\n this.filteredItems = result;\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport {OrganizationFilterComponent} from './organization-filter/organization-filter.component';\r\nimport {NgbModule} from '@ng-bootstrap/ng-bootstrap';\r\n\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n OrganizationFilterComponent\r\n ],\r\n exports: [\r\n OrganizationFilterComponent\r\n ],\r\n imports: [\r\n CommonModule,\r\n NgbModule\r\n ]\r\n})\r\nexport class ControlsModule { }\r\n","module.exports = \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbnRyb2xzL29yZ2FuaXphdGlvbi1maWx0ZXIvb3JnYW5pemF0aW9uLWZpbHRlci5jb21wb25lbnQuc2NzcyJ9 */\"","import {Component, EventEmitter, Input, OnInit, Output} from '@angular/core';\r\nimport {OrganizationData} from '../../api/user-info-model';\r\nimport {UserInfoService} from '../../api/user-info.service';\r\nimport {FilterStorageService} from '../../services/filter-storage.service';\r\n\r\n@Component({\r\n selector: 'app-organization-filter',\r\n templateUrl: './organization-filter.component.html',\r\n styleUrls: ['./organization-filter.component.scss']\r\n})\r\nexport class OrganizationFilterComponent implements OnInit {\r\n @Output()\r\n filtersChanged: EventEmitter = new EventEmitter();\r\n\r\n organizations: OrganizationData[] = [];\r\n selectedOrganization: OrganizationData = null;\r\n\r\n constructor(private userInfoService: UserInfoService,\r\n private filterStorage: FilterStorageService) { }\r\n\r\n async ngOnInit() {\r\n const user = await this.userInfoService.get().toPromise();\r\n this.organizations = user.allowedOrganizations;\r\n\r\n const selectedOrganization = this.tryToFindSelectedOrganization(this.organizations);\r\n if (selectedOrganization == null) {\r\n this.changeLocation(user.defaultOrganizationId);\r\n } else {\r\n this.selectedOrganization = selectedOrganization;\r\n }\r\n }\r\n\r\n tryToFindSelectedOrganization(organizationList: OrganizationData[]) {\r\n const organization = this.filterStorage.getSelectedOrganization();\r\n\r\n if (organization == null) { return null; }\r\n\r\n if (organizationList.filter(o => o.id === organization.id).length > 0) {\r\n return organization;\r\n }\r\n\r\n return null;\r\n }\r\n\r\n changeLocation(organizationId: string) {\r\n const organization = this.organizations.filter(o => {\r\n return o.id === organizationId;\r\n })[0];\r\n\r\n this.filterStorage.saveSelectedOrganization(organization.id, organization.name);\r\n this.selectedOrganization = organization;\r\n\r\n this.emitEvent();\r\n }\r\n\r\n private emitEvent() {\r\n this.filtersChanged.emit(true);\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { showSpinner, hideSpinner } from '@syncfusion/ej2-popups';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ProgressService {\r\n\r\n constructor() { }\r\n\r\n show() {\r\n showSpinner(document.getElementById('wrapper')) ;\r\n }\r\n\r\n hide() {\r\n hideSpinner(document.getElementById('wrapper'));\r\n }\r\n}\r\n","module.exports = \".e-range-picker {\\n color: white;\\n}\\n\\n.e-range-picker .e-range-icon {\\n color: white;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvZGFzaGJvYXJkcy9kYXNoYm9hcmQtZmlsdGVycy9DOlxcd1xcc3VyZXRpbnRcXFBvcnRhbFxcUmVwb3J0aW5nUG9ydGFsL3NyY1xcYXBwXFxkYXNoYm9hcmRzXFxkYXNoYm9hcmQtZmlsdGVyc1xcZGFzaGJvYXJkLWZpbHRlcnMuY29tcG9uZW50LnNjc3MiLCJzcmMvYXBwL2Rhc2hib2FyZHMvZGFzaGJvYXJkLWZpbHRlcnMvZGFzaGJvYXJkLWZpbHRlcnMuY29tcG9uZW50LnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7RUFDRSxZQUFBO0FDQ0Y7O0FERUE7RUFDRSxZQUFBO0FDQ0YiLCJmaWxlIjoic3JjL2FwcC9kYXNoYm9hcmRzL2Rhc2hib2FyZC1maWx0ZXJzL2Rhc2hib2FyZC1maWx0ZXJzLmNvbXBvbmVudC5zY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLmUtcmFuZ2UtcGlja2VyIHtcclxuICBjb2xvcjogd2hpdGU7XHJcbn1cclxuXHJcbi5lLXJhbmdlLXBpY2tlciAuZS1yYW5nZS1pY29uIHtcclxuICBjb2xvcjogd2hpdGU7XHJcbn1cclxuIiwiLmUtcmFuZ2UtcGlja2VyIHtcbiAgY29sb3I6IHdoaXRlO1xufVxuXG4uZS1yYW5nZS1waWNrZXIgLmUtcmFuZ2UtaWNvbiB7XG4gIGNvbG9yOiB3aGl0ZTtcbn0iXX0= */\"","import {Component, EventEmitter, Input, OnInit, Output, AfterViewInit} from '@angular/core';\r\nimport {OrganizationData} from '../../api/user-info-model';\r\nimport {FilterStorageService} from '../../services/filter-storage.service';\r\nimport * as moment from 'moment';\r\nimport {DashboardService} from '../../api/dashboard.service';\r\n\r\n@Component({\r\n selector: 'app-dashboard-filters',\r\n templateUrl: './dashboard-filters.component.html',\r\n styleUrls: ['./dashboard-filters.component.scss']\r\n})\r\nexport class DashboardFiltersComponent implements OnInit, AfterViewInit {\r\n @Output()\r\n filtersChanged: EventEmitter = new EventEmitter();\r\n\r\n @Input()\r\n hideDatePicker = true;\r\n\r\n organizations: OrganizationData[] = [];\r\n selectedOrganization: OrganizationData = null;\r\n start: Date;\r\n end: Date;\r\n dateRanges: Array<{ label: string, start: Date, end: Date }>;\r\n private initialized = false;\r\n\r\n constructor(private filterStorage: FilterStorageService,\r\n private dashboardService: DashboardService) { }\r\n\r\n async ngOnInit() {\r\n this.initRanges();\r\n\r\n try{\r\n const organizations = await this.dashboardService.getOrganizations().toPromise();\r\n this.organizations = organizations.organizations;\r\n\r\n const selectedOrganization = this.tryToFindSelectedOrganization(this.organizations);\r\n if (selectedOrganization == null) {\r\n this.changeLocation(organizations.defaultOrganizationId);\r\n } else {\r\n this.selectedOrganization = selectedOrganization;\r\n }\r\n\r\n const selectedRange = this.filterStorage.getSelectedRange();\r\n this.start = selectedRange.start;\r\n this.end = selectedRange.end;\r\n } catch (e) {\r\n alert(\"Try ro refresh the page: \" + e.error.message);\r\n console.error(e);\r\n }\r\n }\r\n\r\n tryToFindSelectedOrganization(organizationList: OrganizationData[]) {\r\n const organization = this.filterStorage.getSelectedOrganization();\r\n\r\n if (organization == null) { return null; }\r\n\r\n if (organizationList.filter(o => o.id === organization.id).length > 0) {\r\n return organization;\r\n }\r\n\r\n return null;\r\n }\r\n\r\n changeLocation(organizationId: string) {\r\n const organization = this.organizations.filter(o => {\r\n return o.id === organizationId;\r\n })[0];\r\n\r\n this.filterStorage.saveSelectedOrganization(organization.id, organization.name);\r\n this.selectedOrganization = organization;\r\n\r\n this.emitEvent();\r\n }\r\n\r\n private initRanges() {\r\n this.dateRanges =\r\n [\r\n {label: 'Last 7 Days', start: moment().subtract(6, 'days').toDate(), end: moment().toDate()},\r\n // tslint:disable-next-line:max-line-length\r\n {label: 'Last Week', start: moment().subtract(1, 'week').startOf('week').toDate(), end: moment().subtract(1, 'week').endOf('week').toDate() },\r\n {label: 'Week To Date', start: moment().startOf('week').toDate(), end: moment().toDate()},\r\n {label: 'This Month', start: moment().startOf('month').toDate(), end: moment().endOf('month').toDate()},\r\n // tslint:disable-next-line:max-line-length\r\n {label: 'Last Month', start: moment().subtract(1, 'month').startOf('month').toDate(), end: moment().subtract(1, 'month').endOf('month').toDate() },\r\n {label: 'Quarter To Date', start: moment().startOf('quarter').toDate(), end: moment().endOf('quarter').toDate()},\r\n {label: 'Year To Date', start: moment().startOf('year').toDate(), end: moment().endOf('year').toDate()}\r\n ];\r\n }\r\n\r\n rangeChanged($event: any) {\r\n this.filterStorage.saveSelectedRange(this.start, this.end);\r\n this.emitEvent();\r\n }\r\n\r\n private emitEvent() {\r\n if (!this.initialized) { return; }\r\n\r\n this.filtersChanged.emit(true);\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n setTimeout(() => {\r\n this.initialized = true;\r\n }, 200);\r\n }\r\n}\r\n","module.exports = \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2Rhc2hib2FyZHMvZGFzaGJvYXJkLWZyYW1lbGVzcy9kYXNoYm9hcmQtZnJhbWVsZXNzLmNvbXBvbmVudC5zY3NzIn0= */\"","import {Component, HostBinding, OnDestroy, OnInit} from '@angular/core';\r\nimport {Subscription} from 'rxjs';\r\nimport {DashboardUrlModel} from '../../api/dashboard-url-model';\r\nimport {ActivatedRoute} from '@angular/router';\r\nimport {FilterStorageService} from '../../services/filter-storage.service';\r\nimport {DashboardService} from '../../api/dashboard.service';\r\nimport * as $ from 'jquery';\r\nimport * as moment from 'moment';\r\n\r\ndeclare let QuickSightEmbedding: any;\r\n\r\n@Component({\r\n selector: 'app-dashboard-frameless',\r\n templateUrl: './dashboard-frameless.component.html',\r\n styleUrls: ['./dashboard-frameless.component.scss']\r\n})\r\nexport class DashboardFramelessComponent implements OnInit, OnDestroy {\r\n private dashboardName: string;\r\n private dashboard: DashboardUrlModel;\r\n\r\n @HostBinding('class') class = 'w-100 h-100';\r\n private organizationId: string;\r\n private startDate: string;\r\n private endDate: string;\r\n\r\n constructor(private route: ActivatedRoute,\r\n private filtersStorage: FilterStorageService,\r\n private dashboardService: DashboardService) { }\r\n\r\n ngOnInit() {\r\n this.route.params.subscribe(params => {\r\n this.dashboardName = params.dashboardName;\r\n this.resetDashboard();\r\n const _ = this.renderDashboard();\r\n });\r\n\r\n this.route.queryParams.subscribe((params: {organizationId: string, startDate: string, endDate: string}) => {\r\n this.organizationId = params.organizationId;\r\n this.startDate = params.startDate;\r\n this.endDate = params.endDate;\r\n const _ = this.renderDashboard();\r\n });\r\n }\r\n\r\n ngOnDestroy() {\r\n }\r\n\r\n async renderDashboard() {\r\n if (this.organizationId == null) { return ; }\r\n if (this.dashboardName == null) { return ; }\r\n\r\n if (this.dashboard == null) {\r\n try {\r\n this.dashboard = await this.dashboardService.getUrl(this.dashboardName).toPromise();\r\n } catch (e) {\r\n alert('Try ro refresh the page: ' + e.error.message);\r\n console.error(e);\r\n return;\r\n }\r\n }\r\n\r\n const containerDiv = document.getElementById('widgetContainer');\r\n $('#widgetContainer').empty();\r\n\r\n console.log(this.organizationId, this.startDate, this.endDate, moment(this.startDate), moment(this.endDate));\r\n\r\n const options = {\r\n url: this.dashboard.url,\r\n container: containerDiv,\r\n parameters: {\r\n OrganizationID: this.organizationId,\r\n StartDate: moment(this.startDate),\r\n EndDate: moment(this.endDate)\r\n },\r\n height: 'AutoFit',\r\n loadingHeight: '100%',\r\n width: '100%',\r\n style: 'border: none;'\r\n\r\n };\r\n\r\n const dashboard = QuickSightEmbedding.embedDashboard(options);\r\n dashboard.on('error', this.dashboardOnError);\r\n dashboard.on('load', this.dashboardOnLoad());\r\n setTimeout(() => {\r\n $('iframe').prop('frameborder', 0);\r\n }, 0);\r\n }\r\n\r\n dashboardOnError(arg) {\r\n console.error(arg);\r\n this.dashboard = null;\r\n const _ = this.renderDashboard();\r\n }\r\n\r\n dashboardOnLoad() {\r\n // do nothing\r\n }\r\n\r\n private resetDashboard() {\r\n this.dashboard = null;\r\n }\r\n}\r\n","module.exports = \".flex-1 {\\n -webkit-box-flex: 1;\\n flex: 1;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvZGFzaGJvYXJkcy9kYXNoYm9hcmQvQzpcXHdcXHN1cmV0aW50XFxQb3J0YWxcXFJlcG9ydGluZ1BvcnRhbC9zcmNcXGFwcFxcZGFzaGJvYXJkc1xcZGFzaGJvYXJkXFxkYXNoYm9hcmQuY29tcG9uZW50LnNjc3MiLCJzcmMvYXBwL2Rhc2hib2FyZHMvZGFzaGJvYXJkL2Rhc2hib2FyZC5jb21wb25lbnQuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtFQUNFLG1CQUFBO1VBQUEsT0FBQTtBQ0NGIiwiZmlsZSI6InNyYy9hcHAvZGFzaGJvYXJkcy9kYXNoYm9hcmQvZGFzaGJvYXJkLmNvbXBvbmVudC5zY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLmZsZXgtMSB7XHJcbiAgZmxleDogMTtcclxufVxyXG4iLCIuZmxleC0xIHtcbiAgZmxleDogMTtcbn0iXX0= */\"","import {Component, HostBinding, OnDestroy, OnInit} from '@angular/core';\r\nimport {ActivatedRoute} from '@angular/router';\r\nimport {Subscription} from 'rxjs';\r\nimport {FilterStorageService} from '../../services/filter-storage.service';\r\nimport * as $ from 'jquery';\r\nimport {DashboardService} from '../../api/dashboard.service';\r\nimport {DashboardUrlModel} from '../../api/dashboard-url-model';\r\nimport {ProgressService} from '../../controls/progress.service';\r\n\r\ndeclare let QuickSightEmbedding: any;\r\n\r\n@Component({\r\n selector: 'app-dashboard',\r\n templateUrl: './dashboard.component.html',\r\n styleUrls: ['./dashboard.component.scss']\r\n})\r\nexport class DashboardComponent implements OnInit, OnDestroy {\r\n private sub: Subscription;\r\n private dashboardName: string;\r\n private dashboard: DashboardUrlModel;\r\n\r\n @HostBinding('class') class = 'w-100 h-100';\r\n private sub2: Subscription;\r\n private firstAccess = true;\r\n\r\n constructor(private route: ActivatedRoute,\r\n private filtersStorage: FilterStorageService,\r\n private dashboardService: DashboardService,\r\n private progressService: ProgressService) { }\r\n\r\n ngOnInit() {\r\n this.sub = this.route.params.subscribe(params => {\r\n this.dashboardName = params.dashboardName;\r\n this.resetDashboard();\r\n const _ = this.renderDashboard();\r\n });\r\n\r\n this.sub2 = this.route.queryParams.subscribe((params: {d: number}) => {\r\n if (this.firstAccess) {\r\n this.firstAccess = false;\r\n return;\r\n }\r\n\r\n console.log('renderDashboard');\r\n const _ = this.renderDashboard();\r\n });\r\n }\r\n\r\n ngOnDestroy() {\r\n this.sub.unsubscribe();\r\n this.sub2.unsubscribe();\r\n }\r\n\r\n async renderDashboard() {\r\n this.progressService.show();\r\n if (this.dashboardName == null) {\r\n this.progressService.hide();\r\n return;\r\n }\r\n\r\n if (this.dashboard == null) {\r\n try {\r\n this.dashboard = await this.dashboardService.getUrl(this.dashboardName).toPromise();\r\n } catch (e) {\r\n alert('Try ro refresh the page: ' + e.error.message);\r\n console.error(e);\r\n this.progressService.hide();\r\n return;\r\n }\r\n }\r\n\r\n const containerDiv = document.getElementById('widgetContainer');\r\n $('#widgetContainer').empty();\r\n\r\n const org = this.filtersStorage.getSelectedOrganization();\r\n\r\n if (org == null) { return; }\r\n\r\n const dates = this.filtersStorage.getSelectedRange();\r\n\r\n const options = {\r\n url: this.dashboard.url,\r\n container: containerDiv,\r\n parameters: {\r\n OrganizationID: org.id,\r\n StartDate: dates.start,\r\n EndDate: dates.end\r\n },\r\n height: 'AutoFit',\r\n loadingHeight: '100%',\r\n width: '100%',\r\n style: 'border: none;'\r\n\r\n };\r\n\r\n console.log(options);\r\n\r\n const dashboard = QuickSightEmbedding.embedDashboard(options);\r\n dashboard.on('error', this.dashboardOnError);\r\n dashboard.on('load', this.dashboardOnLoad());\r\n setTimeout(() => {\r\n $('iframe').prop('frameborder', 0);\r\n const frame = $('iframe');\r\n frame.on('load', () => this.checkFrameForError(frame[0]));\r\n }, 0);\r\n }\r\n\r\n dashboardOnError(arg) {\r\n console.error(arg);\r\n this.dashboard = null;\r\n const _ = this.renderDashboard();\r\n }\r\n\r\n dashboardOnLoad() {\r\n // do nothing\r\n }\r\n\r\n private resetDashboard() {\r\n this.dashboard = null;\r\n }\r\n\r\n private checkFrameForError(frame: any) {\r\n console.log(frame);\r\n console.log('iframe loaded');\r\n\r\n this.progressService.hide();\r\n\r\n let f = () => {};\r\n\r\n let i = 0;\r\n f = () => setTimeout(() => {\r\n if (frame.contentDocument == null) {\r\n // OK\r\n console.log('iframe frame.contentDocument == null');\r\n if (i++ < 3) { f(); }\r\n return;\r\n }\r\n console.log('iframe frame.contentDocument != null');\r\n if (frame.contentDocument.URL == null) {\r\n // OK\r\n console.log('iframe frame.contentDocument.URL == null');\r\n return;\r\n }\r\n console.log('iframe frame.contentDocument.URL != null');\r\n if (frame.contentDocument.URL === 'about:blank') {\r\n // error happened\r\n console.log('iframe error happened');\r\n const _ = this.renderDashboard();\r\n return;\r\n }\r\n\r\n console.log('frame - ' + frame.contentDocument.URL);\r\n }, 2000);\r\n f();\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { Routes, RouterModule } from '@angular/router';\r\nimport {DashboardComponent} from './dashboard/dashboard.component';\r\nimport {DashboardFramelessComponent} from './dashboard-frameless/dashboard-frameless.component';\r\n\r\n\r\nconst routes: Routes = [\r\n {path: 'dashboard/:dashboardName', component: DashboardComponent},\r\n {path: 'dashboard-frameless/:dashboardName', component: DashboardFramelessComponent},\r\n];\r\n\r\n@NgModule({\r\n imports: [RouterModule.forChild(routes)],\r\n exports: [RouterModule]\r\n})\r\nexport class DashboardsRoutingModule { }\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport {DashboardsRoutingModule} from './dashboards-routing.module';\r\nimport {DashboardComponent} from './dashboard/dashboard.component';\r\nimport {DashboardFiltersComponent} from './dashboard-filters/dashboard-filters.component';\r\nimport {DashboardFramelessComponent} from './dashboard-frameless/dashboard-frameless.component';\r\nimport {DateRangePickerModule} from '@syncfusion/ej2-angular-calendars';\r\nimport {NgbModule} from '@ng-bootstrap/ng-bootstrap';\r\n\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n DashboardComponent,\r\n DashboardFiltersComponent,\r\n DashboardFramelessComponent\r\n ],\r\n imports: [\r\n CommonModule,\r\n DashboardsRoutingModule,\r\n DateRangePickerModule,\r\n NgbModule,\r\n ]\r\n})\r\nexport class DashboardsModule { }\r\n","module.exports = \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2xvZ291dC9sb2dvdXQuY29tcG9uZW50LnNjc3MifQ== */\"","import { Component, OnInit } from '@angular/core';\r\nimport {NgbActiveModal, NgbModal} from '@ng-bootstrap/ng-bootstrap';\r\n\r\n@Component({\r\n selector: 'app-logout',\r\n templateUrl: './logout.component.html',\r\n styleUrls: ['./logout.component.scss']\r\n})\r\nexport class LogoutComponent implements OnInit {\r\n constructor(public activeModal: NgbActiveModal) {}\r\n\r\n ngOnInit() {\r\n }\r\n\r\n}\r\n","module.exports = \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL25hdmJhci9uYXZiYXIuY29tcG9uZW50LnNjc3MifQ== */\"","import {Component, Inject, OnInit, Renderer2} from '@angular/core';\r\nimport {UserInfoService} from '../api/user-info.service';\r\nimport {UserInfoModel} from '../api/user-info-model';\r\nimport {DOCUMENT} from '@angular/common';\r\n// tslint:disable-next-line:import-spacing\r\nimport {TechnicalApplicationSelectImageComponent}\r\nfrom '../technical-applications/technical-application-select-image/technical-application-select-image.component';\r\nimport {NgbModal} from '@ng-bootstrap/ng-bootstrap';\r\nimport {LogoutComponent} from \"../logout/logout.component\";\r\n\r\n@Component({\r\n selector: 'app-navbar',\r\n templateUrl: './navbar.component.html',\r\n styleUrls: ['./navbar.component.scss']\r\n})\r\nexport class NavbarComponent implements OnInit {\r\n private userInfo: UserInfoModel;\r\n\r\n constructor(private userInfoService: UserInfoService,\r\n @Inject(DOCUMENT) private document: Document,\r\n private renderer: Renderer2,\r\n private modalService: NgbModal) { }\r\n\r\n async ngOnInit() {\r\n this.userInfo = await this.userInfoService.get().toPromise();\r\n }\r\n\r\n public toggleSidebar() {\r\n this.toggleSidebarClass();\r\n this.toggleBodyClass();\r\n }\r\n\r\n private toggleBodyClass() {\r\n const className = 'sidebar-toggled';\r\n\r\n if (this.document.body.classList.contains(className)) {\r\n this.renderer.removeClass(this.document.body, className);\r\n } else {\r\n this.renderer.addClass(this.document.body, className);\r\n }\r\n }\r\n\r\n private toggleSidebarClass() {\r\n const sidebarId = 'sidebar';\r\n const className = 'toggled';\r\n\r\n const element = this.document.getElementById(sidebarId);\r\n if (element.classList.contains(className)) {\r\n this.renderer.removeClass(element, className);\r\n } else {\r\n this.renderer.addClass(element, className);\r\n }\r\n }\r\n\r\n logout() {\r\n const modalRef = this.modalService.open(LogoutComponent);\r\n const component: LogoutComponent = modalRef.componentInstance;\r\n }\r\n}\r\n","module.exports = \".ta-icon-v2 {\\n width: 200px;\\n height: 200px;\\n border: 1px solid gray;\\n background-repeat: no-repeat;\\n background-position: 50% 0px;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvcHJvZHVjdHMvcHJvZHVjdC1jcmVhdGUvQzpcXHdcXHN1cmV0aW50XFxQb3J0YWxcXFJlcG9ydGluZ1BvcnRhbC9zcmNcXGFwcFxccHJvZHVjdHNcXHByb2R1Y3QtY3JlYXRlXFxwcm9kdWN0LWNyZWF0ZS5jb21wb25lbnQuc2NzcyIsInNyYy9hcHAvcHJvZHVjdHMvcHJvZHVjdC1jcmVhdGUvcHJvZHVjdC1jcmVhdGUuY29tcG9uZW50LnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7RUFDRSxZQUFBO0VBQ0EsYUFBQTtFQUNBLHNCQUFBO0VBQ0EsNEJBQUE7RUFDQSw0QkFBQTtBQ0NGIiwiZmlsZSI6InNyYy9hcHAvcHJvZHVjdHMvcHJvZHVjdC1jcmVhdGUvcHJvZHVjdC1jcmVhdGUuY29tcG9uZW50LnNjc3MiLCJzb3VyY2VzQ29udGVudCI6WyIudGEtaWNvbi12MiB7XHJcbiAgd2lkdGg6IDIwMHB4O1xyXG4gIGhlaWdodDogMjAwcHg7XHJcbiAgYm9yZGVyOiAxcHggc29saWQgZ3JheTtcclxuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gIGJhY2tncm91bmQtcG9zaXRpb246IDUwJSAwcHg7XHJcbn1cclxuIiwiLnRhLWljb24tdjIge1xuICB3aWR0aDogMjAwcHg7XG4gIGhlaWdodDogMjAwcHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkIGdyYXk7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDUwJSAwcHg7XG59Il19 */\"","import {Component, OnDestroy, OnInit} from '@angular/core';\r\nimport {ActivatedRoute, Router} from '@angular/router';\r\nimport {FilterStorageService} from '../../services/filter-storage.service';\r\nimport {CreateProductRequestModel} from '../../api/create-product-request-model';\r\nimport {ProductsService} from '../../api/products.service';\r\nimport {ProgressService} from '../../controls/progress.service';\r\nimport {Subscription} from 'rxjs';\r\nimport {FileItem, FileUploader, ParsedResponseHeaders} from 'ng2-file-upload';\r\nimport * as $ from 'jquery';\r\n\r\n@Component({\r\n selector: 'app-product-create',\r\n templateUrl: './product-create.component.html',\r\n styleUrls: ['./product-create.component.scss']\r\n})\r\nexport class ProductCreateComponent implements OnInit, OnDestroy {\r\n\r\n constructor(private route: ActivatedRoute,\r\n private router: Router,\r\n private products: ProductsService,\r\n private progress: ProgressService,\r\n private filters: FilterStorageService) { }\r\n item: CreateProductRequestModel;\r\n private sub1: Subscription;\r\n types = ['Ingredient', 'Developer', 'Additive'];\r\n\r\n public uploader: FileUploader;\r\n\r\n public hasBaseDropZoneOver = false;\r\n\r\n ngOnInit() {\r\n this.item = new CreateProductRequestModel();\r\n this.sub1 = this.route.queryParams.subscribe((params: {categoryId: string}) => {\r\n console.log('categoryId', params);\r\n this.item.categoryId = params.categoryId;\r\n this.item.executorId = 'notemptystring';\r\n this.item.calc = 'X*1';\r\n this.item.size = 1;\r\n });\r\n\r\n this.uploader = new FileUploader({url: `/api/images`});\r\n this.uploader.onSuccessItem = (item: FileItem, response: string, status: number, headers: ParsedResponseHeaders) => {\r\n return this.onSuccessItem(item, response, status, headers);\r\n };\r\n this.uploader.onErrorItem = (item: FileItem, response: string, status: number, headers: ParsedResponseHeaders) => {\r\n return this.onErrorItem(item, response, status, headers);\r\n };\r\n }\r\n\r\n fileSelected($event: File[]) {\r\n this.progress.show();\r\n this.uploader.uploadAll();\r\n }\r\n\r\n private onSuccessItem(item: FileItem, response: string, status: number, headers: ParsedResponseHeaders) {\r\n this.progress.hide();\r\n this.item.imageUrl = JSON.parse(response).result;\r\n }\r\n\r\n private onErrorItem(item: FileItem, response: string, status: number, headers: ParsedResponseHeaders) {\r\n // $('#reset-file-uploader').click();\r\n this.progress.hide();\r\n const messageResponse = JSON.parse(response);\r\n\r\n if (messageResponse.message != null) {\r\n alert(messageResponse.message);\r\n return;\r\n }\r\n }\r\n\r\n public fileOverBase(e: boolean): void {\r\n this.hasBaseDropZoneOver = e;\r\n console.log(e);\r\n }\r\n\r\n async saveData() {\r\n if (!this.validate()) {\r\n return ;\r\n }\r\n\r\n this.progress.show();\r\n\r\n try {\r\n await this.products.create(this.filters.getSelectedOrganization().id, this.item).toPromise();\r\n this.goBack();\r\n } catch (e) {\r\n alert(e.error.message);\r\n console.error(e);\r\n } finally {\r\n this.progress.hide();\r\n }\r\n }\r\n\r\n private validate() {\r\n if (this.item.categoryId == null) {\r\n alert('Category is not specified');\r\n return false;\r\n }\r\n\r\n if (this.item.name == null || this.item.name.trim() === '') {\r\n alert('Specify name');\r\n return false;\r\n }\r\n\r\n if (this.item.uniqueCode == null) {\r\n alert('UPC/EIN is not specified');\r\n return false;\r\n }\r\n\r\n if (this.item.type == null) {\r\n alert('Type is not specified');\r\n return false;\r\n }\r\n\r\n if (this.item.size < 1) {\r\n alert('Size should be 1 or greater');\r\n return false;\r\n }\r\n\r\n return true;\r\n }\r\n\r\n goBack() {\r\n this.router.navigate(['..'], {relativeTo: this.route});\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.sub1.unsubscribe();\r\n }\r\n}\r\n","module.exports = \".ta-icon-v2 {\\n width: 200px;\\n height: 200px;\\n border: 1px solid gray;\\n background-repeat: no-repeat;\\n background-position: 50% 0px;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvcHJvZHVjdHMvcHJvZHVjdC1lZGl0L0M6XFx3XFxzdXJldGludFxcUG9ydGFsXFxSZXBvcnRpbmdQb3J0YWwvc3JjXFxhcHBcXHByb2R1Y3RzXFxwcm9kdWN0LWVkaXRcXHByb2R1Y3QtZWRpdC5jb21wb25lbnQuc2NzcyIsInNyYy9hcHAvcHJvZHVjdHMvcHJvZHVjdC1lZGl0L3Byb2R1Y3QtZWRpdC5jb21wb25lbnQuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtFQUNFLFlBQUE7RUFDQSxhQUFBO0VBQ0Esc0JBQUE7RUFDQSw0QkFBQTtFQUNBLDRCQUFBO0FDQ0YiLCJmaWxlIjoic3JjL2FwcC9wcm9kdWN0cy9wcm9kdWN0LWVkaXQvcHJvZHVjdC1lZGl0LmNvbXBvbmVudC5zY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLnRhLWljb24tdjIge1xyXG4gIHdpZHRoOiAyMDBweDtcclxuICBoZWlnaHQ6IDIwMHB4O1xyXG4gIGJvcmRlcjogMXB4IHNvbGlkIGdyYXk7XHJcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCUgMHB4O1xyXG59XHJcbiIsIi50YS1pY29uLXYyIHtcbiAgd2lkdGg6IDIwMHB4O1xuICBoZWlnaHQ6IDIwMHB4O1xuICBib3JkZXI6IDFweCBzb2xpZCBncmF5O1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCUgMHB4O1xufSJdfQ== */\"","import { Component, OnInit } from '@angular/core';\r\nimport {ActivatedRoute, Router} from '@angular/router';\r\nimport {FilterStorageService} from '../../services/filter-storage.service';\r\nimport {UpdateProductRequestModel} from '../../api/update-product-request-model';\r\nimport {ProductModel} from '../../api/product-model';\r\nimport {ProductsService} from '../../api/products.service';\r\nimport {ProgressService} from '../../controls/progress.service';\r\n\r\n@Component({\r\n selector: 'app-product-edit',\r\n templateUrl: './product-edit.component.html',\r\n styleUrls: ['./product-edit.component.scss']\r\n})\r\nexport class ProductEditComponent implements OnInit {\r\n item: UpdateProductRequestModel;\r\n routeItem: ProductModel;\r\n\r\n constructor(private route: ActivatedRoute,\r\n private router: Router,\r\n private products: ProductsService,\r\n private filters: FilterStorageService,\r\n private progress: ProgressService) { }\r\n\r\n ngOnInit() {\r\n this.route.data\r\n .subscribe((data: { product: ProductModel }) => {\r\n console.log(data);\r\n this.routeItem = data.product;\r\n this.item = {\r\n executorId: 'notemptystring',\r\n name: this.routeItem.name,\r\n size: this.routeItem.size\r\n };\r\n });\r\n }\r\n\r\n async saveData() {\r\n if (!this.validate()) {\r\n return ;\r\n }\r\n\r\n this.progress.show();\r\n\r\n try {\r\n await this.products.update(this.filters.getSelectedOrganization().id, this.routeItem.id, this.item).toPromise();\r\n this.goBack();\r\n } catch (e) {\r\n alert(e.error.message);\r\n console.error(e);\r\n } finally {\r\n this.progress.hide();\r\n }\r\n }\r\n\r\n goBack() {\r\n this.router.navigate(['..'], {relativeTo: this.route});\r\n }\r\n\r\n private validate() {\r\n if (this.item.size < 1) {\r\n alert('Size should be 1 or greater');\r\n return false;\r\n }\r\n\r\n if (this.item.name == null || this.item.name.trim() === '') {\r\n alert('Specify name');\r\n return false;\r\n }\r\n\r\n return true;\r\n }\r\n}\r\n","export class BrandViewModel {\r\n constructor(\r\n public id: string,\r\n public name: string\r\n ) {\r\n }\r\n}\r\n","import {CategoryModel} from '../../api/category-model';\r\n\r\nexport class CategoryViewModel {\r\n constructor(public category: CategoryModel) {\r\n }\r\n}\r\n","export class ProductFilterChangedEvent {\r\n constructor(public categoryId: string) {\r\n }\r\n}\r\n","module.exports = \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL3Byb2R1Y3RzL3Byb2R1Y3QtZmlsdGVyL3Byb2R1Y3QtZmlsdGVyLmNvbXBvbmVudC5zY3NzIn0= */\"","import {Component, EventEmitter, OnInit, Output} from '@angular/core';\r\nimport {ProductFilterChangedEvent} from './product-filter-changed-event';\r\nimport {CategoriesService} from '../../api/categories.service';\r\nimport {FilterStorageService} from '../../services/filter-storage.service';\r\nimport {BrandViewModel} from './brand-view-model';\r\nimport {CategoryViewModel} from './category-view-model';\r\n\r\n@Component({\r\n selector: 'app-product-filter',\r\n templateUrl: './product-filter.component.html',\r\n styleUrls: ['./product-filter.component.scss']\r\n})\r\nexport class ProductFilterComponent implements OnInit {\r\n @Output()\r\n filtersChanged: EventEmitter = new EventEmitter();\r\n public brands: BrandViewModel[] = [];\r\n private allCategories: CategoryViewModel[] = [];\r\n public visibleCategories: CategoryViewModel[] = [];\r\n public selectedBrand: BrandViewModel;\r\n public selectedCategory: CategoryViewModel;\r\n\r\n constructor(\r\n private categoryApi: CategoriesService,\r\n private filters: FilterStorageService\r\n ) { }\r\n\r\n async ngOnInit() {\r\n const categoryListPromise = this.categoryApi.get(this.filters.getSelectedOrganization().id).toPromise();\r\n const mainCategoryListPromise = this.categoryApi.getMain().toPromise();\r\n\r\n const promiseResult = await Promise.all([categoryListPromise, mainCategoryListPromise]);\r\n\r\n const categoryList = promiseResult[0];\r\n const mainCategoryList = promiseResult[1];\r\n\r\n const brands: Map = new Map();\r\n\r\n const activeCategories = categoryList\r\n .data\r\n .filter(x => x.state === 'A');\r\n\r\n const categoryVms: CategoryViewModel[] = [];\r\n\r\n for (const c of activeCategories) {\r\n if (!brands.has(c.brandID)) {\r\n const mainCategory = mainCategoryList.data.filter(x => x.id === c.baseID)[0];\r\n\r\n if (mainCategory == null) {\r\n console.error('main category is not found for', c);\r\n continue;\r\n }\r\n\r\n brands.set(c.brandID, new BrandViewModel(c.brandID, mainCategory.brandName));\r\n }\r\n\r\n categoryVms.push(new CategoryViewModel(c));\r\n }\r\n\r\n this.brands = Array.from(brands.values()).sort((a, b) => {\r\n if (a.name > b.name) {\r\n return 1;\r\n }\r\n if (b.name > a.name) {\r\n return -1;\r\n }\r\n return 0;\r\n });\r\n console.log(this.brands, brands);\r\n this.allCategories = categoryVms.sort((a, b) => {\r\n if (a.category.name > b.category.name) {\r\n return 1;\r\n }\r\n if (b.category.name > a.category.name) {\r\n return -1;\r\n }\r\n return 0;\r\n });\r\n\r\n this.selectBrand(this.brands[0]);\r\n }\r\n\r\n public resetFilters() {\r\n this.selectedBrand = null;\r\n this.selectedCategory = null;\r\n this.filtersChanged.emit(new ProductFilterChangedEvent(null));\r\n }\r\n\r\n selectBrand(o: BrandViewModel) {\r\n this.selectedBrand = o;\r\n this.visibleCategories = this.allCategories.filter(x => x.category.brandID === o.id);\r\n\r\n this.selectCategory(this.visibleCategories[0]);\r\n }\r\n\r\n selectCategory(o: CategoryViewModel) {\r\n this.selectedCategory = o;\r\n this.filtersChanged.emit(new ProductFilterChangedEvent(o.category.id));\r\n }\r\n}\r\n","module.exports = \".red-text {\\n color: red;\\n}\\n\\n.green-text {\\n color: green;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvcHJvZHVjdHMvcHJvZHVjdC1saXN0L0M6XFx3XFxzdXJldGludFxcUG9ydGFsXFxSZXBvcnRpbmdQb3J0YWwvc3JjXFxhcHBcXHByb2R1Y3RzXFxwcm9kdWN0LWxpc3RcXHByb2R1Y3QtbGlzdC5jb21wb25lbnQuc2NzcyIsInNyYy9hcHAvcHJvZHVjdHMvcHJvZHVjdC1saXN0L3Byb2R1Y3QtbGlzdC5jb21wb25lbnQuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtFQUNFLFVBQUE7QUNDRjs7QURFQTtFQUNFLFlBQUE7QUNDRiIsImZpbGUiOiJzcmMvYXBwL3Byb2R1Y3RzL3Byb2R1Y3QtbGlzdC9wcm9kdWN0LWxpc3QuY29tcG9uZW50LnNjc3MiLCJzb3VyY2VzQ29udGVudCI6WyIucmVkLXRleHQge1xyXG4gIGNvbG9yOiByZWQ7XHJcbn1cclxuXHJcbi5ncmVlbi10ZXh0IHtcclxuICBjb2xvcjogZ3JlZW47XHJcbn1cclxuIiwiLnJlZC10ZXh0IHtcbiAgY29sb3I6IHJlZDtcbn1cblxuLmdyZWVuLXRleHQge1xuICBjb2xvcjogZ3JlZW47XG59Il19 */\"","import {Component, OnInit, ViewChild} from '@angular/core';\r\nimport {ProductFilterChangedEvent} from '../product-filter/product-filter-changed-event';\r\nimport {FilterStorageService} from '../../services/filter-storage.service';\r\nimport {ActivatedRoute, Router} from '@angular/router';\r\nimport {NgbModal} from '@ng-bootstrap/ng-bootstrap';\r\nimport {ProgressService} from '../../controls/progress.service';\r\nimport {ProductViewModel} from './product-view-model';\r\nimport {ProductsService} from '../../api/products.service';\r\nimport { ClickEventArgs } from '@syncfusion/ej2-navigations/toolbar';\r\nimport {ToastComponent} from '@syncfusion/ej2-angular-notifications';\r\n\r\n@Component({\r\n selector: 'app-product-list',\r\n templateUrl: './product-list.component.html',\r\n styleUrls: ['./product-list.component.scss']\r\n})\r\nexport class ProductListComponent implements OnInit {\r\n private categoryId: string;\r\n\r\n constructor(private filterStorage: FilterStorageService,\r\n private products: ProductsService,\r\n private router: Router,\r\n private route: ActivatedRoute,\r\n private modalService: NgbModal,\r\n private progress: ProgressService) {\r\n this.commands = [ { text: 'Add', tooltipText: 'Add', prefixIcon: 'e-add', id: 'customadd' } ];\r\n }\r\n list: ProductViewModel[];\r\n visibleItems: ProductViewModel[];\r\n commands: any[];\r\n textFilter = '';\r\n\r\n @ViewChild('toast', {static: true}) toast: ToastComponent;\r\n public position = { X: 'Right' };\r\n\r\n async categorySelected($event: ProductFilterChangedEvent) {\r\n console.log($event);\r\n this.textFilter = '';\r\n this.reloadList($event.categoryId);\r\n }\r\n\r\n toolbar($event: ClickEventArgs) {\r\n if ($event.item.id === 'customadd') {\r\n this.add();\r\n }\r\n }\r\n\r\n add() {\r\n if (!this.categoryId) { return; }\r\n this.router.navigate(['add'], {relativeTo: this.route, queryParams: {categoryId: this.categoryId}});\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n async reloadList(categoryId: string) {\r\n this.categoryId = categoryId;\r\n this.list = [];\r\n\r\n if (categoryId == null || categoryId.trim() === '') { return; }\r\n\r\n this.progress.show();\r\n const organization = this.filterStorage.getSelectedOrganization();\r\n if (organization != null) {\r\n const response = await this.products.get(organization.id, categoryId).toPromise();\r\n this.list = response.data.map(x => new ProductViewModel(x));\r\n }\r\n\r\n this.textFilter = '';\r\n this.applyFilter();\r\n this.progress.hide();\r\n }\r\n\r\n applyFilter() {\r\n const textFilter = (this.textFilter || '').trim().toLowerCase();\r\n let result = this.list;\r\n\r\n if (textFilter.length > 0) {\r\n result = result.filter(c => {\r\n return c.product.name.toLowerCase().includes(textFilter);\r\n });\r\n }\r\n this.visibleItems = result;\r\n }\r\n\r\n edit(data: ProductViewModel) {\r\n this.router.navigate([data.product.id], {relativeTo: this.route});\r\n }\r\n\r\n async stateChanged(data: ProductViewModel) {\r\n console.log(data);\r\n this.progress.show();\r\n const organizationId = this.filterStorage.getSelectedOrganization().id;\r\n try {\r\n if (data.state) {\r\n await this.products.activate(organizationId, data.product.id).toPromise();\r\n this.showToast('In progress', `Activated - ${data.product.name}`);\r\n } else {\r\n await this.products.deactivate(organizationId, data.product.id).toPromise();\r\n this.showToast('In progress', `Deactivated - ${data.product.name}`);\r\n }\r\n } catch (e) {\r\n alert(e.error.message);\r\n console.error(e);\r\n } finally {\r\n this.progress.hide();\r\n }\r\n }\r\n\r\n private showToast(title: string, message: string) {\r\n this.toast.show({\r\n timeOut: 5000,\r\n showCloseButton: true,\r\n title,\r\n content: message\r\n });\r\n }\r\n}\r\n","import {ProductModel} from '../../api/product-model';\r\n\r\nexport class ProductViewModel {\r\n constructor(public product: ProductModel) {\r\n this.calc = product.calc;\r\n this.name = product.name;\r\n this.pType = product.pType;\r\n this.size = product.size;\r\n this.state = product.state === 'A';\r\n this.isCanister = product.isCanister;\r\n this.baseValidated = product.baseValidated;\r\n this.baseImageUrl = product.baseImageUrl;\r\n this.baseUniqueCode = product.baseUniqueCode;\r\n }\r\n\r\n calc: string;\r\n name: string;\r\n pType: string;\r\n size: number;\r\n state: boolean;\r\n isCanister: boolean;\r\n baseValidated: boolean;\r\n baseImageUrl: string;\r\n baseUniqueCode: string;\r\n}\r\n","import {ActivatedRouteSnapshot, Resolve, RouterStateSnapshot} from '@angular/router';\r\nimport {Observable} from 'rxjs';\r\nimport {FilterStorageService} from '../services/filter-storage.service';\r\nimport {Injectable} from '@angular/core';\r\nimport {ProductModel} from '../api/product-model';\r\nimport {ProductsService} from '../api/products.service';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ProductResolver implements Resolve {\r\n constructor(private products: ProductsService,\r\n private filtersService: FilterStorageService) {\r\n }\r\n resolve(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): Observable | Promise | ProductModel {\r\n const itemId = route.params.itemId;\r\n return this.products.getOne(this.filtersService.getSelectedOrganization().id, itemId);\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { Routes, RouterModule } from '@angular/router';\r\nimport {ProductListComponent} from './product-list/product-list.component';\r\nimport {ProductCreateComponent} from './product-create/product-create.component';\r\nimport {ProductEditComponent} from './product-edit/product-edit.component';\r\nimport {ProductResolver} from './product-resolver';\r\n\r\n\r\nconst routes: Routes = [\r\n {\r\n path: 'products',\r\n children: [\r\n {path: '', component: ProductListComponent},\r\n {path: 'add', component: ProductCreateComponent},\r\n {\r\n path: ':itemId',\r\n component: ProductEditComponent,\r\n resolve: {\r\n product: ProductResolver\r\n }\r\n },\r\n ]\r\n }\r\n];\r\n\r\n@NgModule({\r\n imports: [RouterModule.forChild(routes)],\r\n exports: [RouterModule]\r\n})\r\nexport class ProductsRoutingModule { }\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\n\r\nimport { ProductsRoutingModule } from './products-routing.module';\r\nimport { ProductListComponent } from './product-list/product-list.component';\r\nimport { ProductCreateComponent } from './product-create/product-create.component';\r\nimport { ProductEditComponent } from './product-edit/product-edit.component';\r\nimport { ProductFilterComponent } from './product-filter/product-filter.component';\r\nimport {GridModule} from '@syncfusion/ej2-angular-grids';\r\nimport {DateRangePickerModule} from '@syncfusion/ej2-angular-calendars';\r\nimport {NgbModule} from '@ng-bootstrap/ng-bootstrap';\r\nimport {SwitchModule} from '@syncfusion/ej2-angular-buttons';\r\nimport {FormsModule} from '@angular/forms';\r\nimport {ControlsModule} from '../controls/controls.module';\r\nimport {ListViewModule} from '@syncfusion/ej2-angular-lists';\r\nimport {ToastModule} from '@syncfusion/ej2-angular-notifications';\r\nimport {FileUploadModule} from 'ng2-file-upload';\r\n\r\n\r\n@NgModule({\r\n declarations: [ProductListComponent, ProductCreateComponent, ProductEditComponent, ProductFilterComponent],\r\n imports: [\r\n CommonModule,\r\n ProductsRoutingModule,\r\n GridModule,\r\n DateRangePickerModule,\r\n NgbModule,\r\n SwitchModule,\r\n FormsModule,\r\n ControlsModule,\r\n ListViewModule,\r\n ToastModule,\r\n FileUploadModule\r\n ]\r\n})\r\nexport class ProductsModule { }\r\n","import { Injectable } from '@angular/core';\r\nimport { CanActivate, ActivatedRouteSnapshot, RouterStateSnapshot, UrlTree } from '@angular/router';\r\nimport { Observable } from 'rxjs';\r\nimport {UserInfoService} from '../api/user-info.service';\r\nimport {map} from 'rxjs/operators';\r\nimport {UserInfoModel} from '../api/user-info-model';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class AuthGuard implements CanActivate {\r\n\r\n constructor(private userInfoService: UserInfoService){}\r\n\r\n canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot)\r\n : Observable | Promise | boolean | UrlTree {\r\n\r\n console.log('IsAdminGuard#canActivate called');\r\n return this.userInfoService.get()\r\n // preload user data\r\n .pipe(map(x => true));\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport {ActivatedRouteSnapshot, CanActivate, RouterStateSnapshot, UrlTree} from '@angular/router';\r\nimport { Observable } from 'rxjs';\r\nimport {UserInfoService} from '../api/user-info.service';\r\nimport {UserInfoModel} from '../api/user-info-model';\r\nimport {map} from 'rxjs/operators';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class IsAdminGuard implements CanActivate {\r\n\r\n constructor(private userInfoService: UserInfoService){}\r\n\r\n canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot)\r\n : Observable | Promise | boolean | UrlTree {\r\n\r\n console.log('IsAdminGuard#canActivate called');\r\n return this.userInfoService.get()\r\n .pipe(map(x => x.isAdmin));\r\n }\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport {OrganizationData} from '../api/user-info-model';\r\nimport * as moment from 'moment';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class FilterStorageService {\r\n\r\n constructor() { }\r\n\r\n saveSelectedOrganization(organizationId: string, organizationName: string) {\r\n const o: OrganizationData = {\r\n id: organizationId,\r\n name: organizationName\r\n };\r\n sessionStorage.setItem('selectedOrganization', JSON.stringify(o));\r\n }\r\n\r\n getSelectedOrganization(): OrganizationData {\r\n const rawItem = sessionStorage.getItem('selectedOrganization');\r\n if (rawItem == null) { return null; }\r\n return JSON.parse(rawItem);\r\n }\r\n\r\n getSelectedRange(): {start: Date, end: Date} {\r\n const rawItem = sessionStorage.getItem('selectedRange');\r\n\r\n if (rawItem == null) {\r\n const start = moment().subtract(1, 'week').startOf('week');\r\n const end = moment().subtract(1, 'week').endOf('week');\r\n return { start: start.toDate(), end: end.toDate() };\r\n }\r\n\r\n const result = JSON.parse(rawItem);\r\n result.start = moment(result.start).toDate();\r\n result.end = moment(result.end).toDate();\r\n return result;\r\n }\r\n\r\n saveSelectedRange(start: Date, end: Date) {\r\n sessionStorage.setItem('selectedRange',\r\n JSON.stringify({\r\n start,\r\n end\r\n }));\r\n }\r\n}\r\n","module.exports = \".sidebar li span {\\n padding-left: 5px;\\n}\\n\\na.submenu-link {\\n margin-left: 25px;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvc2lkZWJhci9DOlxcd1xcc3VyZXRpbnRcXFBvcnRhbFxcUmVwb3J0aW5nUG9ydGFsL3NyY1xcYXBwXFxzaWRlYmFyXFxzaWRlYmFyLmNvbXBvbmVudC5zY3NzIiwic3JjL2FwcC9zaWRlYmFyL3NpZGViYXIuY29tcG9uZW50LnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7RUFDRSxpQkFBQTtBQ0NGOztBREVBO0VBQ0UsaUJBQUE7QUNDRiIsImZpbGUiOiJzcmMvYXBwL3NpZGViYXIvc2lkZWJhci5jb21wb25lbnQuc2NzcyIsInNvdXJjZXNDb250ZW50IjpbIi5zaWRlYmFyIGxpIHNwYW4ge1xyXG4gIHBhZGRpbmctbGVmdDogNXB4O1xyXG59XHJcblxyXG5hLnN1Ym1lbnUtbGluayB7XHJcbiAgbWFyZ2luLWxlZnQ6IDI1cHg7XHJcbn1cclxuIiwiLnNpZGViYXIgbGkgc3BhbiB7XG4gIHBhZGRpbmctbGVmdDogNXB4O1xufVxuXG5hLnN1Ym1lbnUtbGluayB7XG4gIG1hcmdpbi1sZWZ0OiAyNXB4O1xufSJdfQ== */\"","import {Component, Input, OnInit} from '@angular/core';\r\nimport {DashboardConfigurationModel} from '../api/dashboard-configuration-model';\r\nimport {UserInfoService} from '../api/user-info.service';\r\nimport {UserInfoModel} from '../api/user-info-model';\r\nimport {Router} from \"@angular/router\";\r\n\r\n@Component({\r\n selector: 'app-sidebar',\r\n templateUrl: './sidebar.component.html',\r\n styleUrls: ['./sidebar.component.scss']\r\n})\r\nexport class SidebarComponent implements OnInit {\r\n public hideUtillities = true;\r\n\r\n\r\n constructor(private userInfoService: UserInfoService,\r\n private router: Router) { }\r\n\r\n @Input()\r\n public dashboards: DashboardConfigurationModel[] = [];\r\n user: UserInfoModel;\r\n\r\n async ngOnInit() {\r\n this.user = await this.userInfoService.get().toPromise();\r\n }\r\n\r\n openDashboard(d: DashboardConfigurationModel) {\r\n console.log(d);\r\n this.router.navigate(['dashboard', d.dashboardName], {queryParams: {d: new Date().getTime()}});\r\n }\r\n\r\n toggleHideUtillities() {\r\n this.hideUtillities = !this.hideUtillities;\r\n console.log(\"this.hideUtillities=\" + this.hideUtillities);\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport {NgbModal} from '@ng-bootstrap/ng-bootstrap';\r\nimport {ProgressService} from '../controls/progress.service';\r\nimport {FilterStorageService} from '../services/filter-storage.service';\r\nimport {TechnicalApplicationCategoryModel} from '../api/technical-application-category-model';\r\nimport {TechnicalApplicationCategorySelectionComponent} from './technical-application-category-selection/technical-application-category-selection.component';\r\nimport {TechnicalApplicationService} from '../api/technical-application.service';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class CategoryService {\r\n\r\n constructor(\r\n private modalService: NgbModal,\r\n private progress: ProgressService,\r\n private filters: FilterStorageService,\r\n private apps: TechnicalApplicationService\r\n ) { }\r\n\r\n async selectCategory(): Promise {\r\n const modalRef = this.modalService.open(TechnicalApplicationCategorySelectionComponent);\r\n const component: TechnicalApplicationCategorySelectionComponent = modalRef.componentInstance;\r\n\r\n try {\r\n this.progress.show();\r\n\r\n const images = await this.apps.getCategoryList(this.filters.getSelectedOrganization().id).toPromise();\r\n component.list = images.data.filter(x => x.state === 'A');\r\n } finally {\r\n this.progress.hide();\r\n }\r\n\r\n const result = await modalRef.result;\r\n\r\n if (result === 0) { return null; }\r\n\r\n return result;\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport {TechnicalApplicationSelectImageComponent} from './technical-application-select-image/technical-application-select-image.component';\r\nimport {NgbModal} from '@ng-bootstrap/ng-bootstrap';\r\nimport {ImageService} from '../api/image.service';\r\nimport {ProgressService} from '../controls/progress.service';\r\nimport {FilterStorageService} from '../services/filter-storage.service';\r\nimport {ImageModel} from '../api/image-model';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class IconService {\r\n\r\n constructor(\r\n private modalService: NgbModal,\r\n private progress: ProgressService,\r\n private filters: FilterStorageService,\r\n private images: ImageService\r\n ) { }\r\n\r\n async selectImage(): Promise {\r\n const modalRef = this.modalService.open(TechnicalApplicationSelectImageComponent);\r\n const component: TechnicalApplicationSelectImageComponent = modalRef.componentInstance;\r\n\r\n try {\r\n this.progress.show();\r\n\r\n const images = await this.images.getIcons(this.filters.getSelectedOrganization().id).toPromise();\r\n component.imageList = images.data;\r\n } finally {\r\n this.progress.hide();\r\n }\r\n\r\n const result = await modalRef.result;\r\n\r\n if (result === 0) { return null; }\r\n\r\n return result;\r\n }\r\n}\r\n","module.exports = \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL3RlY2huaWNhbC1hcHBsaWNhdGlvbnMvdGVjaG5pY2FsLWFwcGxpY2F0aW9uLWNhdGVnb3J5LXNlbGVjdGlvbi90ZWNobmljYWwtYXBwbGljYXRpb24tY2F0ZWdvcnktc2VsZWN0aW9uLmNvbXBvbmVudC5zY3NzIn0= */\"","import { Component, OnInit } from '@angular/core';\r\nimport {TechnicalApplicationCategoryModel} from '../../api/technical-application-category-model';\r\nimport {NgbActiveModal} from '@ng-bootstrap/ng-bootstrap';\r\n\r\n@Component({\r\n selector: 'app-technical-application-category-selection',\r\n templateUrl: './technical-application-category-selection.component.html',\r\n styleUrls: ['./technical-application-category-selection.component.scss']\r\n})\r\nexport class TechnicalApplicationCategorySelectionComponent implements OnInit {\r\n list: TechnicalApplicationCategoryModel[];\r\n\r\n constructor(public activeModal: NgbActiveModal) {}\r\n\r\n ngOnInit() {\r\n }\r\n\r\n onSelect($event: any) {\r\n this.activeModal.close($event.data);\r\n }\r\n}\r\n","module.exports = \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL3RlY2huaWNhbC1hcHBsaWNhdGlvbnMvdGVjaG5pY2FsLWFwcGxpY2F0aW9uLWNyZWF0ZS90ZWNobmljYWwtYXBwbGljYXRpb24tY3JlYXRlLmNvbXBvbmVudC5zY3NzIn0= */\"","import {AfterViewInit, Component, OnInit} from '@angular/core';\r\nimport {ActivatedRoute, Router} from '@angular/router';\r\nimport {TechnicalApplicationService} from '../../api/technical-application.service';\r\nimport {FilterStorageService} from '../../services/filter-storage.service';\r\nimport {ProgressService} from '../../controls/progress.service';\r\nimport {ValidatorService} from '../validator.service';\r\nimport {IconService} from '../icon.service';\r\nimport {AddTechnicalApplicationModel} from '../../api/add-technical-application-model';\r\nimport {CategoryService} from '../category.service';\r\n\r\n@Component({\r\n selector: 'app-technical-application-create',\r\n templateUrl: './technical-application-create.component.html',\r\n styleUrls: ['./technical-application-create.component.scss']\r\n})\r\nexport class TechnicalApplicationCreateComponent implements OnInit, AfterViewInit {\r\n private item: AddTechnicalApplicationModel = new AddTechnicalApplicationModel();\r\n\r\n constructor(private route: ActivatedRoute,\r\n private router: Router,\r\n private apps: TechnicalApplicationService,\r\n private filters: FilterStorageService,\r\n private progress: ProgressService,\r\n private validator: ValidatorService,\r\n private iconService: IconService,\r\n private categoryService: CategoryService\r\n ) { }\r\n\r\n ngOnInit() {\r\n\r\n }\r\n\r\n async saveData() {\r\n\r\n if (!this.validator.validate(this.item)){\r\n return ;\r\n }\r\n\r\n this.progress.show();\r\n\r\n try {\r\n await this.apps.add(this.filters.getSelectedOrganization().id, this.item).toPromise();\r\n this.goBack();\r\n } catch (e) {\r\n alert(e.error.message);\r\n console.error(e);\r\n } finally {\r\n this.progress.hide();\r\n }\r\n }\r\n\r\n goBack() {\r\n this.router.navigate(['..'], {relativeTo: this.route});\r\n }\r\n\r\n async ngAfterViewInit() {\r\n try {\r\n const category = await this.categoryService.selectCategory();\r\n if (category == null) {\r\n this.goBack();\r\n return;\r\n }\r\n const icon = await this.iconService.selectImage();\r\n if (icon == null) {\r\n this.goBack();\r\n return;\r\n }\r\n\r\n this.item = AddTechnicalApplicationModel.build(category, icon);\r\n } catch (e) {\r\n console.error(e);\r\n this.goBack();\r\n }\r\n }\r\n\r\n async changeImage() {\r\n const icon = await this.iconService.selectImage();\r\n this.item.iconURL = icon.url;\r\n }\r\n}\r\n","module.exports = \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL3RlY2huaWNhbC1hcHBsaWNhdGlvbnMvdGVjaG5pY2FsLWFwcGxpY2F0aW9uLWVkaXQvdGVjaG5pY2FsLWFwcGxpY2F0aW9uLWVkaXQuY29tcG9uZW50LnNjc3MifQ== */\"","import { Component, OnInit } from '@angular/core';\r\nimport {UpdateTechnicalApplicationModel} from '../../api/update-technical-application-model';\r\nimport {ActivatedRoute, Router} from '@angular/router';\r\nimport {FilterStorageService} from '../../services/filter-storage.service';\r\nimport {TechnicalApplicationService} from '../../api/technical-application.service';\r\nimport {TechnicalApplicationModel} from '../../api/technical-application-model';\r\nimport {ProgressService} from '../../controls/progress.service';\r\nimport {ValidatorService} from '../validator.service';\r\nimport {IconService} from '../icon.service';\r\n\r\n@Component({\r\n selector: 'app-technical-application-edit',\r\n templateUrl: './technical-application-edit.component.html',\r\n styleUrls: ['./technical-application-edit.component.scss']\r\n})\r\nexport class TechnicalApplicationEditComponent implements OnInit {\r\n private item: UpdateTechnicalApplicationModel;\r\n private routeItem: TechnicalApplicationModel;\r\n\r\n constructor(private route: ActivatedRoute,\r\n private router: Router,\r\n private apps: TechnicalApplicationService,\r\n private filters: FilterStorageService,\r\n private progress: ProgressService,\r\n private validator: ValidatorService,\r\n private iconService: IconService\r\n ) { }\r\n\r\n ngOnInit() {\r\n this.route.data\r\n .subscribe((data: { item: TechnicalApplicationModel }) => {\r\n console.log(data);\r\n this.routeItem = data.item;\r\n const i = this.routeItem;\r\n this.item = {\r\n executorId: 'notemptystring',\r\n state: i.state,\r\n wet: i.wet,\r\n foilCount: i.foilCount,\r\n minSize: i.minSize,\r\n maxSize: i.maxSize,\r\n name: i.name,\r\n virginHair: i.virginHair,\r\n iconURL: i.iconURL,\r\n defaultRatio: i.defaultRatio,\r\n categoryId: i.categoryId,\r\n calc: i.calc\r\n };\r\n });\r\n }\r\n\r\n async saveData() {\r\n\r\n if (!this.validator.validate(this.item)){\r\n return ;\r\n }\r\n\r\n this.progress.show();\r\n\r\n try {\r\n await this.apps.update(this.filters.getSelectedOrganization().id, this.routeItem.id, this.item).toPromise();\r\n this.goBack();\r\n } catch (e) {\r\n alert(e.error.message);\r\n console.error(e);\r\n } finally {\r\n this.progress.hide();\r\n }\r\n }\r\n\r\n goBack() {\r\n this.router.navigate(['../..'], {relativeTo: this.route});\r\n }\r\n\r\n async changeImage() {\r\n const icon = await this.iconService.selectImage();\r\n this.item.iconURL = icon.url;\r\n }\r\n}\r\n","module.exports = \".ta-icon-v2 {\\n width: 110px;\\n height: 110px;\\n border-radius: 50%;\\n border: 1px solid gray;\\n background-repeat: no-repeat;\\n background-position: 50% 0px;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvdGVjaG5pY2FsLWFwcGxpY2F0aW9ucy90ZWNobmljYWwtYXBwbGljYXRpb24tZm9ybS9DOlxcd1xcc3VyZXRpbnRcXFBvcnRhbFxcUmVwb3J0aW5nUG9ydGFsL3NyY1xcYXBwXFx0ZWNobmljYWwtYXBwbGljYXRpb25zXFx0ZWNobmljYWwtYXBwbGljYXRpb24tZm9ybVxcdGVjaG5pY2FsLWFwcGxpY2F0aW9uLWZvcm0uY29tcG9uZW50LnNjc3MiLCJzcmMvYXBwL3RlY2huaWNhbC1hcHBsaWNhdGlvbnMvdGVjaG5pY2FsLWFwcGxpY2F0aW9uLWZvcm0vdGVjaG5pY2FsLWFwcGxpY2F0aW9uLWZvcm0uY29tcG9uZW50LnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7RUFDRSxZQUFBO0VBQ0EsYUFBQTtFQUNBLGtCQUFBO0VBQ0Esc0JBQUE7RUFDQSw0QkFBQTtFQUNBLDRCQUFBO0FDQ0YiLCJmaWxlIjoic3JjL2FwcC90ZWNobmljYWwtYXBwbGljYXRpb25zL3RlY2huaWNhbC1hcHBsaWNhdGlvbi1mb3JtL3RlY2huaWNhbC1hcHBsaWNhdGlvbi1mb3JtLmNvbXBvbmVudC5zY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLnRhLWljb24tdjIge1xyXG4gIHdpZHRoOiAxMTBweDtcclxuICBoZWlnaHQ6IDExMHB4O1xyXG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICBib3JkZXI6IDFweCBzb2xpZCBncmF5O1xyXG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDBweDtcclxufVxyXG4iLCIudGEtaWNvbi12MiB7XG4gIHdpZHRoOiAxMTBweDtcbiAgaGVpZ2h0OiAxMTBweDtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBib3JkZXI6IDFweCBzb2xpZCBncmF5O1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCUgMHB4O1xufSJdfQ== */\"","import {Component, EventEmitter, Input, OnInit, Output} from '@angular/core';\r\nimport {ITechnicalApplicationEditModel} from '../../api/i-technical-application-edit-model';\r\nimport {UpdateTechnicalApplicationModel} from '../../api/update-technical-application-model';\r\n\r\n@Component({\r\n selector: 'app-technical-application-form',\r\n templateUrl: './technical-application-form.component.html',\r\n styleUrls: ['./technical-application-form.component.scss']\r\n})\r\nexport class TechnicalApplicationFormComponent implements OnInit {\r\n\r\n @Input() item: ITechnicalApplicationEditModel = new UpdateTechnicalApplicationModel();\r\n @Output()\r\n changeImage = new EventEmitter();\r\n\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n get wet(): boolean {\r\n return this.item.wet === 'Y';\r\n }\r\n\r\n set wet(value: boolean) {\r\n this.item.wet = value ? 'Y' : 'N';\r\n }\r\n\r\n get active(): boolean {\r\n return this.item.state === 'A';\r\n }\r\n\r\n set active(value: boolean) {\r\n this.item.state = value ? 'A' : 'R';\r\n }\r\n}\r\n","module.exports = \".ta-icon {\\n height: 100px;\\n width: 100px;\\n border-radius: 50%;\\n border: 1px solid gray;\\n}\\n\\n.ta-icon-v2 {\\n width: 70px;\\n height: 70px;\\n border-radius: 50%;\\n border: 1px solid gray;\\n background-repeat: no-repeat;\\n background-size: auto 70px;\\n background-position: 50% 5px;\\n}\\n\\n.grid-container {\\n overflow: auto;\\n height: calc(100vh - 190px);\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvdGVjaG5pY2FsLWFwcGxpY2F0aW9ucy90ZWNobmljYWwtYXBwbGljYXRpb24tbGlzdC9DOlxcd1xcc3VyZXRpbnRcXFBvcnRhbFxcUmVwb3J0aW5nUG9ydGFsL3NyY1xcYXBwXFx0ZWNobmljYWwtYXBwbGljYXRpb25zXFx0ZWNobmljYWwtYXBwbGljYXRpb24tbGlzdFxcdGVjaG5pY2FsLWFwcGxpY2F0aW9uLWxpc3QuY29tcG9uZW50LnNjc3MiLCJzcmMvYXBwL3RlY2huaWNhbC1hcHBsaWNhdGlvbnMvdGVjaG5pY2FsLWFwcGxpY2F0aW9uLWxpc3QvdGVjaG5pY2FsLWFwcGxpY2F0aW9uLWxpc3QuY29tcG9uZW50LnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7RUFDRSxhQUFBO0VBQ0EsWUFBQTtFQUNBLGtCQUFBO0VBQ0Esc0JBQUE7QUNDRjs7QURFQTtFQUNFLFdBQUE7RUFDQSxZQUFBO0VBQ0Esa0JBQUE7RUFDQSxzQkFBQTtFQUNBLDRCQUFBO0VBQ0EsMEJBQUE7RUFDQSw0QkFBQTtBQ0NGOztBREVBO0VBQ0UsY0FBQTtFQUNBLDJCQUFBO0FDQ0YiLCJmaWxlIjoic3JjL2FwcC90ZWNobmljYWwtYXBwbGljYXRpb25zL3RlY2huaWNhbC1hcHBsaWNhdGlvbi1saXN0L3RlY2huaWNhbC1hcHBsaWNhdGlvbi1saXN0LmNvbXBvbmVudC5zY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLnRhLWljb24ge1xyXG4gIGhlaWdodDogMTAwcHg7XHJcbiAgd2lkdGg6IDEwMHB4O1xyXG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICBib3JkZXI6IDFweCBzb2xpZCBncmF5OztcclxufVxyXG5cclxuLnRhLWljb24tdjIge1xyXG4gIHdpZHRoOiA3MHB4O1xyXG4gIGhlaWdodDogNzBweDtcclxuICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgYm9yZGVyOiAxcHggc29saWQgZ3JheTtcclxuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gIGJhY2tncm91bmQtc2l6ZTogYXV0byA3MHB4O1xyXG4gIGJhY2tncm91bmQtcG9zaXRpb246IDUwJSA1cHg7XHJcbn1cclxuXHJcbi5ncmlkLWNvbnRhaW5lciB7XHJcbiAgb3ZlcmZsb3c6YXV0bztcclxuICBoZWlnaHQ6Y2FsYygxMDB2aCAtIDE5MHB4KTtcclxufVxyXG4iLCIudGEtaWNvbiB7XG4gIGhlaWdodDogMTAwcHg7XG4gIHdpZHRoOiAxMDBweDtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBib3JkZXI6IDFweCBzb2xpZCBncmF5O1xufVxuXG4udGEtaWNvbi12MiB7XG4gIHdpZHRoOiA3MHB4O1xuICBoZWlnaHQ6IDcwcHg7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgYm9yZGVyOiAxcHggc29saWQgZ3JheTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiBhdXRvIDcwcHg7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDUwJSA1cHg7XG59XG5cbi5ncmlkLWNvbnRhaW5lciB7XG4gIG92ZXJmbG93OiBhdXRvO1xuICBoZWlnaHQ6IGNhbGMoMTAwdmggLSAxOTBweCk7XG59Il19 */\"","import { Component, OnInit } from '@angular/core';\r\nimport {FilterStorageService} from '../../services/filter-storage.service';\r\nimport {ActivatedRoute, Router} from '@angular/router';\r\nimport {NgbModal} from '@ng-bootstrap/ng-bootstrap';\r\nimport {ProgressService} from '../../controls/progress.service';\r\nimport {TechnicalApplicationService} from '../../api/technical-application.service';\r\nimport {TechnicalApplicationViewModel} from './technical-application-view-model';\r\nimport { ClickEventArgs } from '@syncfusion/ej2-navigations/toolbar';\r\nimport { ToolbarItems } from '@syncfusion/ej2-angular-grids';\r\n\r\n@Component({\r\n selector: 'app-technical-application-list',\r\n templateUrl: './technical-application-list.component.html',\r\n styleUrls: ['./technical-application-list.component.scss']\r\n})\r\nexport class TechnicalApplicationListComponent implements OnInit {\r\n list: TechnicalApplicationViewModel[];\r\n visibleItems: TechnicalApplicationViewModel[];\r\n commands: any[];\r\n textFilter: string = '';\r\n\r\n constructor(private filterStorage: FilterStorageService,\r\n private taService: TechnicalApplicationService,\r\n private router: Router,\r\n private route: ActivatedRoute,\r\n private modalService: NgbModal,\r\n private progress: ProgressService) {\r\n this.commands = [ { text: 'Add', tooltipText: 'Add', prefixIcon: 'e-add', id: 'customadd' } ];\r\n }\r\n\r\n toolbar($event: ClickEventArgs) {\r\n if ($event.item.id === 'customadd') {\r\n this.add();\r\n }\r\n }\r\n\r\n add() {\r\n this.router.navigate(['add'], {relativeTo: this.route});\r\n }\r\n\r\n async ngOnInit() {\r\n try {\r\n this.progress.show();\r\n this.reloadList();\r\n } finally {\r\n this.progress.hide();\r\n }\r\n }\r\n\r\n async reloadList() {\r\n this.list = [];\r\n const organization = this.filterStorage.getSelectedOrganization();\r\n if (organization != null) {\r\n const response = await this.taService.getList(organization.id).toPromise();\r\n this.list = response.data.map(x => new TechnicalApplicationViewModel(x));\r\n }\r\n\r\n this.textFilter = '';\r\n this.applyFilter();\r\n }\r\n\r\n applyFilter() {\r\n const textFilter = (this.textFilter || '').trim().toLowerCase();\r\n let result = this.list;\r\n\r\n if (textFilter.length > 0) {\r\n result = result.filter(c => {\r\n if (c.name.toLowerCase().includes(textFilter)) { return true; }\r\n\r\n return false;\r\n });\r\n }\r\n this.visibleItems = result;\r\n }\r\n\r\n edit(data: TechnicalApplicationViewModel) {\r\n const _ = this.router.navigate(['edit', data.id], {relativeTo: this.route});\r\n }\r\n\r\n changePicture(data: TechnicalApplicationViewModel) {\r\n console.log('changePicture');\r\n }\r\n}\r\n","import {TechnicalApplicationModel} from '../../api/technical-application-model';\r\n\r\nexport class TechnicalApplicationViewModel {\r\n id:\tstring;\r\n name:\tstring;\r\n categoryId:\tstring;\r\n minSize:\tnumber;\r\n maxSize:\tnumber;\r\n iconURL:\tstring;\r\n defaultRatio:\tstring;\r\n foilCount: number;\r\n virginHair:\tstring;\r\n calc:\tstring;\r\n lastModByID: string;\r\n lastModDate:\tstring;\r\n private wetValue: boolean;\r\n private activeValue: boolean;\r\n\r\n constructor(item: TechnicalApplicationModel) {\r\n this.id = item.id;\r\n this.name = item.name;\r\n this.categoryId = item.categoryId;\r\n this.minSize = item.minSize;\r\n this.maxSize = item.maxSize;\r\n this.iconURL = item.iconURL;\r\n this.defaultRatio = item.defaultRatio;\r\n this.foilCount = item.foilCount;\r\n this.virginHair = item.virginHair;\r\n this.calc = item.calc;\r\n this.lastModByID = item.lastModByID;\r\n this.lastModDate = item.lastModDate;\r\n this.wetValue = item.wet === 'Y';\r\n this.activeValue = item.state === 'A';\r\n }\r\n}\r\n","module.exports = \".ta-icon-v2 {\\n background-repeat: no-repeat;\\n background-size: auto 40px;\\n background-position: 50% 5px;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvdGVjaG5pY2FsLWFwcGxpY2F0aW9ucy90ZWNobmljYWwtYXBwbGljYXRpb24tc2VsZWN0LWltYWdlL0M6XFx3XFxzdXJldGludFxcUG9ydGFsXFxSZXBvcnRpbmdQb3J0YWwvc3JjXFxhcHBcXHRlY2huaWNhbC1hcHBsaWNhdGlvbnNcXHRlY2huaWNhbC1hcHBsaWNhdGlvbi1zZWxlY3QtaW1hZ2VcXHRlY2huaWNhbC1hcHBsaWNhdGlvbi1zZWxlY3QtaW1hZ2UuY29tcG9uZW50LnNjc3MiLCJzcmMvYXBwL3RlY2huaWNhbC1hcHBsaWNhdGlvbnMvdGVjaG5pY2FsLWFwcGxpY2F0aW9uLXNlbGVjdC1pbWFnZS90ZWNobmljYWwtYXBwbGljYXRpb24tc2VsZWN0LWltYWdlLmNvbXBvbmVudC5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0VBQ0UsNEJBQUE7RUFDQSwwQkFBQTtFQUNBLDRCQUFBO0FDQ0YiLCJmaWxlIjoic3JjL2FwcC90ZWNobmljYWwtYXBwbGljYXRpb25zL3RlY2huaWNhbC1hcHBsaWNhdGlvbi1zZWxlY3QtaW1hZ2UvdGVjaG5pY2FsLWFwcGxpY2F0aW9uLXNlbGVjdC1pbWFnZS5jb21wb25lbnQuc2NzcyIsInNvdXJjZXNDb250ZW50IjpbIi50YS1pY29uLXYyIHtcclxuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gIGJhY2tncm91bmQtc2l6ZTogYXV0byA0MHB4O1xyXG4gIGJhY2tncm91bmQtcG9zaXRpb246IDUwJSA1cHg7XHJcbn1cclxuIiwiLnRhLWljb24tdjIge1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IGF1dG8gNDBweDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDVweDtcbn0iXX0= */\"","import { Component, OnInit } from '@angular/core';\r\nimport {NgbActiveModal} from '@ng-bootstrap/ng-bootstrap';\r\nimport {ImageModel} from '../../api/image-model';\r\n\r\n@Component({\r\n selector: 'app-technical-application-select-image',\r\n templateUrl: './technical-application-select-image.component.html',\r\n styleUrls: ['./technical-application-select-image.component.scss']\r\n})\r\nexport class TechnicalApplicationSelectImageComponent implements OnInit {\r\n imageList: ImageModel[];\r\n constructor(public activeModal: NgbActiveModal) {}\r\n\r\n ngOnInit() {\r\n }\r\n\r\n onSelect($event: any) {\r\n this.activeModal.close($event.data);\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport {ActivatedRouteSnapshot, Resolve, RouterStateSnapshot} from '@angular/router';\r\nimport {Observable} from 'rxjs';\r\nimport {TechnicalApplicationService} from '../api/technical-application.service';\r\nimport {TechnicalApplicationModel} from '../api/technical-application-model';\r\nimport {FilterStorageService} from '../services/filter-storage.service';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class TechnicalApplicationResolver implements Resolve {\r\n constructor(private api: TechnicalApplicationService,\r\n private filtersService: FilterStorageService) {\r\n }\r\n\r\n resolve(route: ActivatedRouteSnapshot, state: RouterStateSnapshot):\r\n Observable | Promise | TechnicalApplicationModel {\r\n const itemId = route.params.itemId;\r\n return this.api.getOne(this.filtersService.getSelectedOrganization().id, itemId);\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { Routes, RouterModule } from '@angular/router';\r\nimport {IsAdminGuard} from '../security/is-admin.guard';\r\nimport {TechnicalApplicationListComponent} from './technical-application-list/technical-application-list.component';\r\nimport {TechnicalApplicationEditComponent} from './technical-application-edit/technical-application-edit.component';\r\nimport {TechnicalApplicationResolver} from './technical-application.resolver';\r\nimport {TechnicalApplicationCreateComponent} from './technical-application-create/technical-application-create.component';\r\n\r\n\r\nconst routes: Routes = [\r\n {\r\n path: 'technicalapplications',\r\n children: [\r\n {path: '', component: TechnicalApplicationListComponent},\r\n {\r\n path: 'edit/:itemId',\r\n component: TechnicalApplicationEditComponent,\r\n resolve: {\r\n item: TechnicalApplicationResolver\r\n }\r\n },\r\n {path: 'add', component: TechnicalApplicationCreateComponent}\r\n ],\r\n canActivate: [IsAdminGuard]\r\n },\r\n];\r\n\r\n@NgModule({\r\n imports: [RouterModule.forChild(routes)],\r\n exports: [RouterModule]\r\n})\r\nexport class TechnicalApplicationsRoutingModule { }\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { TechnicalApplicationListComponent } from './technical-application-list/technical-application-list.component';\r\nimport {EditService, GridModule, SortService, ToolbarService} from '@syncfusion/ej2-angular-grids';\r\nimport {DateRangePickerModule} from '@syncfusion/ej2-angular-calendars';\r\nimport {NgbModule} from '@ng-bootstrap/ng-bootstrap';\r\nimport {SwitchModule} from '@syncfusion/ej2-angular-buttons';\r\nimport {FormsModule} from '@angular/forms';\r\nimport {ControlsModule} from '../controls/controls.module';\r\nimport {TechnicalApplicationsRoutingModule} from './technical-applications-routing.module';\r\nimport { TechnicalApplicationEditComponent } from './technical-application-edit/technical-application-edit.component';\r\nimport { TechnicalApplicationSelectImageComponent }\r\nfrom './technical-application-select-image/technical-application-select-image.component';\r\nimport {ListViewModule} from '@syncfusion/ej2-angular-lists';\r\nimport { TechnicalApplicationFormComponent } from './technical-application-form/technical-application-form.component';\r\nimport { TechnicalApplicationCreateComponent } from './technical-application-create/technical-application-create.component';\r\nimport { TechnicalApplicationCategorySelectionComponent }\r\nfrom './technical-application-category-selection/technical-application-category-selection.component';\r\n\r\n@NgModule({\r\n declarations: [\r\n TechnicalApplicationListComponent,\r\n TechnicalApplicationEditComponent,\r\n TechnicalApplicationSelectImageComponent,\r\n TechnicalApplicationFormComponent,\r\n TechnicalApplicationCreateComponent,\r\n TechnicalApplicationCategorySelectionComponent],\r\n imports: [\r\n TechnicalApplicationsRoutingModule,\r\n CommonModule,\r\n GridModule,\r\n DateRangePickerModule,\r\n NgbModule,\r\n SwitchModule,\r\n FormsModule,\r\n ControlsModule,\r\n ListViewModule,\r\n ],\r\n providers: [\r\n ToolbarService,\r\n EditService,\r\n SortService\r\n ],\r\n entryComponents: [\r\n TechnicalApplicationSelectImageComponent,\r\n TechnicalApplicationCategorySelectionComponent\r\n ]\r\n})\r\nexport class TechnicalApplicationsModule { }\r\n","import { Injectable } from '@angular/core';\r\nimport {ITechnicalApplicationEditModel} from '../api/i-technical-application-edit-model';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ValidatorService {\r\n\r\n constructor() { }\r\n\r\n validate(item: ITechnicalApplicationEditModel): boolean {\r\n if (item.name === null || item.name.trim() === '' || item.name.length > 200) {\r\n alert('Name length should be between 1 and 200 characters');\r\n return false;\r\n }\r\n\r\n if (item.minSize < 1) {\r\n alert('Min value should be greater or equal to 1');\r\n return false;\r\n }\r\n\r\n if (item.minSize >= item.maxSize) {\r\n alert('Max value should be greater than Min value');\r\n return false;\r\n }\r\n\r\n return true;\r\n }\r\n}\r\n","module.exports = \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL3VzZXIvdXNlci1hZGQvdXNlci1hZGQuY29tcG9uZW50LnNjc3MifQ== */\"","import { Component, OnInit } from '@angular/core';\r\nimport {ActivatedRoute, Router} from '@angular/router';\r\nimport {UsersService} from '../../api/users.service';\r\nimport {FilterStorageService} from '../../services/filter-storage.service';\r\nimport {AddUserRequestModel} from '../../api/add-user-request-model';\r\nimport { showSpinner, hideSpinner } from '@syncfusion/ej2-popups';\r\n\r\n@Component({\r\n selector: 'app-user-add',\r\n templateUrl: './user-add.component.html',\r\n styleUrls: ['./user-add.component.scss']\r\n})\r\nexport class UserAddComponent implements OnInit {\r\n user: AddUserRequestModel;\r\n\r\n constructor(private route: ActivatedRoute,\r\n private router: Router,\r\n private users: UsersService,\r\n private filters: FilterStorageService) { }\r\n\r\n ngOnInit() {\r\n this.user = new AddUserRequestModel();\r\n this.user.appFeatures = '[SCALE,BASE,PHONE,EMAIL,PHOTO,ALLGUESTS,SOCIAL]';\r\n }\r\n\r\n async saveData() {\r\n if (!this.user.roleId){\r\n alert('Select role');\r\n return ;\r\n }\r\n\r\n showSpinner(document.getElementById('wrapper')) ;\r\n\r\n this.user.executorId = 'notemptystring';\r\n\r\n try {\r\n await this.users.add(this.filters.getSelectedOrganization().id, this.user).toPromise();\r\n this.goBack();\r\n } catch (e) {\r\n alert(e.error.message);\r\n console.error(e);\r\n } finally {\r\n hideSpinner(document.getElementById('wrapper'));\r\n }\r\n }\r\n\r\n goBack() {\r\n this.router.navigate(['..'], {relativeTo: this.route});\r\n }\r\n}\r\n","import {FeatureModel} from '../../api/feature-model';\r\n\r\nexport class UserAppFeatureModel {\r\n feature: FeatureModel;\r\n\r\n // tslint:disable-next-line:variable-name\r\n private _allowed = false;\r\n\r\n get allowed(): boolean {\r\n return this._allowed;\r\n }\r\n\r\n set allowed(value: boolean) {\r\n const oldValue = this._allowed;\r\n\r\n if (oldValue === value) { return; }\r\n\r\n this._allowed = value;\r\n\r\n if (this.allowedOnChange) {\r\n this.allowedOnChange();\r\n }\r\n }\r\n allowedOnChange?: () => void;\r\n}\r\n","module.exports = \".gray-background {\\n background: lightgray;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvdXNlci91c2VyLWFwcC1mZWF0dXJlcy9DOlxcd1xcc3VyZXRpbnRcXFBvcnRhbFxcUmVwb3J0aW5nUG9ydGFsL3NyY1xcYXBwXFx1c2VyXFx1c2VyLWFwcC1mZWF0dXJlc1xcdXNlci1hcHAtZmVhdHVyZXMuY29tcG9uZW50LnNjc3MiLCJzcmMvYXBwL3VzZXIvdXNlci1hcHAtZmVhdHVyZXMvdXNlci1hcHAtZmVhdHVyZXMuY29tcG9uZW50LnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7RUFDRSxxQkFBQTtBQ0NGIiwiZmlsZSI6InNyYy9hcHAvdXNlci91c2VyLWFwcC1mZWF0dXJlcy91c2VyLWFwcC1mZWF0dXJlcy5jb21wb25lbnQuc2NzcyIsInNvdXJjZXNDb250ZW50IjpbIi5ncmF5LWJhY2tncm91bmQge1xyXG4gIGJhY2tncm91bmQ6IGxpZ2h0Z3JheTtcclxufVxyXG4iLCIuZ3JheS1iYWNrZ3JvdW5kIHtcbiAgYmFja2dyb3VuZDogbGlnaHRncmF5O1xufSJdfQ== */\"","import {Component, EventEmitter, Input, OnInit, Output} from '@angular/core';\r\nimport {UserAppFeatureModel} from './user-app-feature-model';\r\nimport {FeatureModel} from '../../api/feature-model';\r\nimport {FeaturesService} from '../../api/features.service';\r\n\r\n@Component({\r\n selector: 'app-user-app-features',\r\n templateUrl: './user-app-features.component.html',\r\n styleUrls: ['./user-app-features.component.scss']\r\n})\r\nexport class UserAppFeaturesComponent implements OnInit {\r\n\r\n @Input()\r\n get features(): string {\r\n return this._features;\r\n }\r\n\r\n set features(value: string) {\r\n this._features = value;\r\n this.featuresChange.emit(this._features);\r\n this.fillFeatureList();\r\n console.log(value);\r\n }\r\n\r\n constructor(private featureService: FeaturesService) { }\r\n\r\n featureList: UserAppFeatureModel[] = [];\r\n allFeatures: FeatureModel[] = [];\r\n // tslint:disable-next-line:variable-name\r\n private _features: string;\r\n\r\n @Output() featuresChange: EventEmitter = new EventEmitter();\r\n\r\n // tslint:disable-next-line:variable-name\r\n private __allowedChangeInProcess__ = false;\r\n\r\n async ngOnInit() {\r\n this.featureList = [];\r\n this.allFeatures = await this.featureService.get().toPromise();\r\n this.fillFeatureList();\r\n }\r\n\r\n private buildFeaturesString(): string {\r\n const result = this.featureList\r\n .filter(x => x.allowed)\r\n .map(x => x.feature.code)\r\n .join(', ');\r\n return `[${result}]`;\r\n }\r\n\r\n private fillFeatureList() {\r\n // tslint:disable-next-line:no-debugger\r\n // debugger;\r\n if (this.allFeatures.length === 0) { return; }\r\n\r\n this.featureList = this.allFeatures.map(f => {\r\n const vm = new UserAppFeatureModel();\r\n vm.feature = f;\r\n\r\n if (this._features != null) {\r\n if (this._features.includes(f.code)) {\r\n vm.allowed = true;\r\n }\r\n }\r\n\r\n vm.allowedOnChange = () => this.onAllowedChanged(vm);\r\n\r\n return vm;\r\n });\r\n }\r\n\r\n private onAllowedChanged(vm: UserAppFeatureModel) {\r\n if (this.__allowedChangeInProcess__) { return; }\r\n\r\n this.__allowedChangeInProcess__ = true;\r\n\r\n if (vm.allowed && vm.feature.group != null) {\r\n const otherGroupItems = this.featureList\r\n .filter(fvm => fvm.allowed)\r\n .filter(fvm => fvm.feature.group === vm.feature.group)\r\n .filter(fvm => fvm.feature.code !== vm.feature.code);\r\n\r\n for (const fvm of otherGroupItems) {\r\n fvm.allowed = false;\r\n }\r\n }\r\n\r\n this.features = this.buildFeaturesString();\r\n this.__allowedChangeInProcess__ = false;\r\n }\r\n}\r\n","module.exports = \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL3VzZXIvdXNlci1idWxrLWltcG9ydC91c2VyLWJ1bGstaW1wb3J0LmNvbXBvbmVudC5zY3NzIn0= */\"","import { Component, OnInit } from '@angular/core';\r\nimport {FileItem, FileUploader, ParsedResponseHeaders} from 'ng2-file-upload';\r\nimport {FilterStorageService} from '../../services/filter-storage.service';\r\nimport {ProgressService} from '../../controls/progress.service';\r\nimport * as $ from 'jquery';\r\nimport {ActivatedRoute, Router} from '@angular/router';\r\nimport {OrganizationData} from '../../api/user-info-model';\r\n\r\n@Component({\r\n selector: 'app-user-bulk-import',\r\n templateUrl: './user-bulk-import.component.html',\r\n styleUrls: ['./user-bulk-import.component.scss']\r\n})\r\nexport class UserBulkImportComponent implements OnInit {\r\n\r\n public uploader: FileUploader;\r\n private organization: OrganizationData;\r\n\r\n constructor(private filters: FilterStorageService,\r\n private progress: ProgressService,\r\n private router: Router,\r\n private route: ActivatedRoute) { }\r\n\r\n public hasBaseDropZoneOver = false;\r\n\r\n public fileOverBase(e: boolean): void {\r\n this.hasBaseDropZoneOver = e;\r\n console.log(e);\r\n }\r\n\r\n ngOnInit() {\r\n this.organization = this.filters.getSelectedOrganization();\r\n this.uploader = new FileUploader({url: `/api/organizations/${this.organization.id}/users/bulkinsert/1`});\r\n this.uploader.onSuccessItem = (item: FileItem, response: string, status: number, headers: ParsedResponseHeaders) => {\r\n return this.onSuccessItem(item, response, status, headers);\r\n };\r\n this.uploader.onErrorItem = (item: FileItem, response: string, status: number, headers: ParsedResponseHeaders) => {\r\n return this.onErrorItem(item, response, status, headers);\r\n };\r\n }\r\n\r\n fileSelected($event: File[]) {\r\n this.progress.show();\r\n this.uploader.uploadAll();\r\n }\r\n\r\n private onSuccessItem(item: FileItem, response: string, status: number, headers: ParsedResponseHeaders) {\r\n this.progress.hide();\r\n alert('Successfully uploaded');\r\n this.router.navigate(['..'], {relativeTo: this.route});\r\n }\r\n\r\n private onErrorItem(item: FileItem, response: string, status: number, headers: ParsedResponseHeaders) {\r\n $('#reset-file-uploader').click();\r\n this.progress.hide();\r\n const messageResponse = JSON.parse(response);\r\n\r\n if (messageResponse.message != null) {\r\n alert(messageResponse.message);\r\n return;\r\n }\r\n }\r\n}\r\n","module.exports = \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL3VzZXIvdXNlci1jaGFuZ2UtcGFzc3dvcmQvdXNlci1jaGFuZ2UtcGFzc3dvcmQuY29tcG9uZW50LnNjc3MifQ== */\"","import {Component, Input, OnInit} from '@angular/core';\r\nimport {NgbActiveModal} from '@ng-bootstrap/ng-bootstrap';\r\nimport {UserModel} from '../../api/user-model';\r\nimport { showSpinner, hideSpinner } from '@syncfusion/ej2-popups';\r\nimport {UsersService} from '../../api/users.service';\r\nimport {FilterStorageService} from '../../services/filter-storage.service';\r\n\r\n@Component({\r\n selector: 'app-user-change-password',\r\n templateUrl: './user-change-password.component.html',\r\n styleUrls: ['./user-change-password.component.scss']\r\n})\r\nexport class UserChangePasswordComponent implements OnInit {\r\n @Input() user: UserModel;\r\n @Input() newPassword: string;\r\n @Input() confirmPassword: string;\r\n\r\n constructor(public activeModal: NgbActiveModal,\r\n private users: UsersService,\r\n private filters: FilterStorageService) {}\r\n\r\n ngOnInit() {\r\n }\r\n\r\n async savePassword() {\r\n showSpinner(document.getElementById('wrapper')) ;\r\n\r\n this.activeModal.close();\r\n\r\n try {\r\n await this.users.changePassword(this.filters.getSelectedOrganization().id, this.user.id, {password: this.newPassword}).toPromise();\r\n alert(`Password has been changed for - ${this.user.firstName} ${this.user.lastName}`);\r\n } catch (e) {\r\n alert(e.error.message);\r\n console.error(e);\r\n } finally {\r\n hideSpinner(document.getElementById('wrapper'));\r\n }\r\n }\r\n}\r\n","module.exports = \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL3VzZXIvdXNlci1lZGl0L3VzZXItZWRpdC5jb21wb25lbnQuc2NzcyJ9 */\"","import { Component, OnInit } from '@angular/core';\r\nimport {UserModel} from '../../api/user-model';\r\nimport {ActivatedRoute, Router} from '@angular/router';\r\nimport { showSpinner, hideSpinner } from '@syncfusion/ej2-popups';\r\nimport {UsersService} from '../../api/users.service';\r\nimport {FilterStorageService} from '../../services/filter-storage.service';\r\nimport {UpdateUserRequestModel} from '../../api/update-user-request-model';\r\n\r\n@Component({\r\n selector: 'app-user-edit',\r\n templateUrl: './user-edit.component.html',\r\n styleUrls: ['./user-edit.component.scss']\r\n})\r\nexport class UserEditComponent implements OnInit {\r\n user: UpdateUserRequestModel;\r\n routeUser: UserModel;\r\n\r\n constructor(private route: ActivatedRoute,\r\n private router: Router,\r\n private users: UsersService,\r\n private filters: FilterStorageService) { }\r\n\r\n ngOnInit() {\r\n this.route.data\r\n .subscribe((data: { user: UserModel }) => {\r\n console.log(data);\r\n this.routeUser = data.user;\r\n this.user = {\r\n executorId: 'notemptystring',\r\n appFeatures: this.routeUser.appFeatures,\r\n externalId: this.routeUser.externalID,\r\n firstName: this.routeUser.firstName,\r\n lastName: this.routeUser.lastName,\r\n roleId: this.routeUser.roleID,\r\n rptFeatures: this.routeUser.rptFeatures,\r\n };\r\n });\r\n }\r\n\r\n async saveData() {\r\n showSpinner(document.getElementById('wrapper')) ;\r\n\r\n try {\r\n await this.users.update(this.filters.getSelectedOrganization().id, this.routeUser.id, this.user).toPromise();\r\n this.goBack();\r\n } catch (e) {\r\n alert(e.error.message);\r\n console.error(e);\r\n } finally {\r\n hideSpinner(document.getElementById('wrapper'));\r\n }\r\n }\r\n\r\n goBack() {\r\n this.router.navigate(['../..'], {relativeTo: this.route});\r\n }\r\n}\r\n","module.exports = \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL3VzZXIvdXNlci1saXN0L3VzZXItbGlzdC5jb21wb25lbnQuc2NzcyJ9 */\"","import { Component, OnInit, AfterViewInit } from '@angular/core';\r\nimport {FilterStorageService} from '../../services/filter-storage.service';\r\nimport {UsersService} from '../../api/users.service';\r\nimport {ActivatedRoute, Router} from '@angular/router';\r\nimport { ClickEventArgs } from '@syncfusion/ej2-navigations/toolbar';\r\nimport {UserChangePasswordComponent} from '../user-change-password/user-change-password.component';\r\nimport {NgbModal} from '@ng-bootstrap/ng-bootstrap';\r\nimport {UserViewModel} from './user-view-model';\r\nimport {ProgressService} from '../../controls/progress.service';\r\n\r\n@Component({\r\n selector: 'app-user-list',\r\n templateUrl: './user-list.component.html',\r\n styleUrls: ['./user-list.component.scss']\r\n})\r\nexport class UserListComponent implements OnInit, AfterViewInit {\r\n list: UserViewModel[];\r\n commands: any;\r\n\r\n constructor(private filterStorage: FilterStorageService,\r\n private usersService: UsersService,\r\n private router: Router,\r\n private route: ActivatedRoute,\r\n private modalService: NgbModal,\r\n private progress: ProgressService) { }\r\n\r\n ngOnInit() {\r\n // indicator doesn't work first time\r\n this.reloadList();\r\n this.commands = [\r\n { text: 'Add', tooltipText: 'Add', prefixIcon: 'e-add', id: 'customadd' },\r\n { text: 'Import', tooltipText: 'upload file with users', prefixIcon: 'e-add', id: 'customimport' }\r\n ];\r\n }\r\n\r\n async reloadList() {\r\n this.list = [];\r\n const organization = this.filterStorage.getSelectedOrganization();\r\n if (organization != null) {\r\n const response = await this.usersService.getList(organization.id).toPromise();\r\n this.list = response.data.map(x => new UserViewModel(x));\r\n }\r\n }\r\n\r\n edit(data: UserViewModel) {\r\n const _ = this.router.navigate(['edit', data.id], {relativeTo: this.route});\r\n }\r\n\r\n add() {\r\n this.router.navigate(['add'], {relativeTo: this.route});\r\n }\r\n\r\n toolbar($event: ClickEventArgs) {\r\n console.log($event);\r\n\r\n if ($event.item.id === 'customadd') {\r\n this.add();\r\n }\r\n\r\n if ($event.item.id === 'customimport') {\r\n this.router.navigate(['import'], {relativeTo: this.route});\r\n }\r\n }\r\n\r\n async deactivateUser(data: UserViewModel) {\r\n this.progress.show();\r\n\r\n try {\r\n await this.usersService.deactivate(this.filterStorage.getSelectedOrganization().id, data.id).toPromise();\r\n // this.reloadList();\r\n } catch (e) {\r\n alert(e.error.message);\r\n console.error(e);\r\n } finally {\r\n this.progress.hide();\r\n }\r\n }\r\n\r\n async activateUser(data: UserViewModel) {\r\n this.progress.show();\r\n\r\n try {\r\n await this.usersService.activate(this.filterStorage.getSelectedOrganization().id, data.id).toPromise();\r\n // this.reloadList();\r\n } catch (e) {\r\n alert(e.error.message);\r\n console.error(e);\r\n } finally {\r\n this.progress.hide();\r\n }\r\n }\r\n\r\n changePassword(data: UserViewModel) {\r\n const modalRef = this.modalService.open(UserChangePasswordComponent);\r\n modalRef.componentInstance.user = data;\r\n }\r\n\r\n activeChanged(data: UserViewModel) {\r\n if (data.active) {\r\n this.activateUser(data);\r\n } else {\r\n this.deactivateUser(data);\r\n }\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n }\r\n}\r\n","import {UserModel} from '../../api/user-model';\r\n\r\nexport class UserViewModel {\r\n constructor(o: UserModel) {\r\n this.id = o.id;\r\n this.roleID = o.roleID;\r\n this.roleName = o.roleName;\r\n this.defaultOrgID = o.defaultOrgID;\r\n this.defaultOrgName = o.defaultOrgName;\r\n this.firstName = o.firstName;\r\n this.lastName = o.lastName;\r\n this.email = o.email;\r\n this.allowedLocations = o.allowedLocations;\r\n this.rptFeatures = o.rptFeatures;\r\n this.appFeatures = o.appFeatures;\r\n this.state = o.state;\r\n this.lastModDate = o.lastModDate;\r\n this.createDate = o.createDate;\r\n this.externalID = o.externalID;\r\n this.active = this.state === 'A';\r\n }\r\n\r\n id: string;\r\n roleID: number;\r\n roleName: string;\r\n defaultOrgID: string;\r\n defaultOrgName: string;\r\n firstName: string;\r\n lastName: string;\r\n email: string;\r\n allowedLocations: string[];\r\n rptFeatures: string;\r\n appFeatures: string;\r\n state: string;\r\n lastModDate: Date;\r\n createDate: Date;\r\n externalID: string;\r\n active: boolean;\r\n}\r\n","import {ActivatedRouteSnapshot, Resolve, RouterStateSnapshot} from '@angular/router';\r\nimport {UserModel} from '../api/user-model';\r\nimport {Observable} from 'rxjs';\r\nimport {UsersService} from '../api/users.service';\r\nimport {FilterStorageService} from '../services/filter-storage.service';\r\nimport {concatMap, filter, map} from 'rxjs/operators';\r\nimport {Injectable} from '@angular/core';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class UserResolver implements Resolve {\r\n constructor(private usersService: UsersService,\r\n private filtersService: FilterStorageService) {\r\n }\r\n resolve(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): Observable | Promise | UserModel {\r\n const userId = route.params.userId;\r\n return this.usersService.getOne(this.filtersService.getSelectedOrganization().id, userId);\r\n }\r\n}\r\n","module.exports = \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL3VzZXIvdXNlci1yb2xlcy91c2VyLXJvbGVzLmNvbXBvbmVudC5zY3NzIn0= */\"","import {Component, EventEmitter, Input, OnInit, Output} from '@angular/core';\r\nimport {RoleModel} from '../../api/role-model';\r\nimport {RolesService} from '../../api/roles.service';\r\n\r\n@Component({\r\n selector: 'app-user-roles',\r\n templateUrl: './user-roles.component.html',\r\n styleUrls: ['./user-roles.component.scss']\r\n})\r\nexport class UserRolesComponent implements OnInit {\r\n // tslint:disable-next-line:variable-name\r\n private _roleId: number;\r\n @Input()\r\n get roleId(): number {\r\n return this._roleId;\r\n }\r\n\r\n set roleId(value: number) {\r\n this._roleId = value;\r\n this.roleIdChange.emit(value);\r\n }\r\n\r\n @Output() roleIdChange: EventEmitter = new EventEmitter();\r\n\r\n roles: RoleModel[] = [];\r\n\r\n constructor(private rolesService: RolesService) { }\r\n\r\n async ngOnInit() {\r\n this.roles = [];\r\n this.roles = (await this.rolesService.get().toPromise());\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { Routes, RouterModule } from '@angular/router';\r\nimport {UserListComponent} from './user-list/user-list.component';\r\nimport {UserAddComponent} from './user-add/user-add.component';\r\nimport {UserEditComponent} from './user-edit/user-edit.component';\r\nimport {IsAdminGuard} from '../security/is-admin.guard';\r\nimport {UserResolver} from './user-resolver';\r\nimport {UserBulkImportComponent} from './user-bulk-import/user-bulk-import.component';\r\n\r\n\r\nconst routes: Routes = [\r\n {\r\n path: 'users',\r\n children: [\r\n {path: '', component: UserListComponent},\r\n {path: 'import', component: UserBulkImportComponent},\r\n {path: 'add', component: UserAddComponent},\r\n {\r\n path: 'edit/:userId',\r\n component: UserEditComponent,\r\n resolve: {\r\n user: UserResolver\r\n }},\r\n ],\r\n canActivate: [IsAdminGuard]\r\n },\r\n];\r\n\r\n@NgModule({\r\n imports: [RouterModule.forChild(routes)],\r\n exports: [RouterModule]\r\n})\r\nexport class UserRoutingModule { }\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\n\r\nimport { UserRoutingModule } from './user-routing.module';\r\nimport {UserListComponent} from './user-list/user-list.component';\r\nimport {UserAddComponent} from './user-add/user-add.component';\r\nimport {UserEditComponent} from './user-edit/user-edit.component';\r\nimport {GridModule, ToolbarService} from '@syncfusion/ej2-angular-grids';\r\nimport { DateRangePickerModule } from '@syncfusion/ej2-angular-calendars';\r\nimport {NgbModule} from '@ng-bootstrap/ng-bootstrap';\r\nimport { SwitchModule } from '@syncfusion/ej2-angular-buttons';\r\nimport { UserRolesComponent } from './user-roles/user-roles.component';\r\nimport { UserAppFeaturesComponent } from './user-app-features/user-app-features.component';\r\nimport {FormsModule} from '@angular/forms';\r\nimport { UserChangePasswordComponent } from './user-change-password/user-change-password.component';\r\nimport {ControlsModule} from '../controls/controls.module';\r\nimport { UserBulkImportComponent } from './user-bulk-import/user-bulk-import.component';\r\nimport { FileUploadModule } from 'ng2-file-upload';\r\n\r\n@NgModule({\r\n declarations: [\r\n UserListComponent,\r\n UserAddComponent,\r\n UserEditComponent,\r\n UserRolesComponent,\r\n UserAppFeaturesComponent,\r\n UserChangePasswordComponent,\r\n UserBulkImportComponent\r\n ],\r\n imports: [\r\n CommonModule,\r\n UserRoutingModule,\r\n GridModule,\r\n DateRangePickerModule,\r\n NgbModule,\r\n SwitchModule,\r\n FormsModule,\r\n ControlsModule,\r\n FileUploadModule\r\n ],\r\n providers: [\r\n ToolbarService\r\n ],\r\n entryComponents: [\r\n UserChangePasswordComponent\r\n ]\r\n})\r\nexport class UserModule { }\r\n","module.exports = \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL3dlbGNvbWUvd2VsY29tZS5jb21wb25lbnQuc2NzcyJ9 */\"","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-welcome',\r\n templateUrl: './welcome.component.html',\r\n styleUrls: ['./welcome.component.scss']\r\n})\r\nexport class WelcomeComponent implements OnInit {\r\n\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n}\r\n","// This file can be replaced during build by using the `fileReplacements` array.\r\n// `ng build --prod` replaces `environment.ts` with `environment.prod.ts`.\r\n// The list of file replacements can be found in `angular.json`.\r\n\r\nexport const environment = {\r\n production: false\r\n};\r\n\r\n/*\r\n * For easier debugging in development mode, you can import the following file\r\n * to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`.\r\n *\r\n * This import should be commented out in production mode because it will have a negative impact\r\n * on performance if an error is thrown.\r\n */\r\n// import 'zone.js/dist/zone-error'; // Included with Angular CLI.\r\n","import { enableProdMode } from '@angular/core';\r\nimport { platformBrowserDynamic } from '@angular/platform-browser-dynamic';\r\n\r\nimport { AppModule } from './app/app.module';\r\nimport { environment } from './environments/environment';\r\n\r\nif (environment.production) {\r\n enableProdMode();\r\n}\r\n\r\nplatformBrowserDynamic().bootstrapModule(AppModule)\r\n .catch(err => console.error(err));\r\n"],"sourceRoot":""}