{"version":3,"sources":["webpack:///./src/$_lazy_route_resource lazy namespace object","webpack:///./src/app/app-routing.module.ts","webpack:///./src/app/app.component.html","webpack:///./src/app/app.component.less","webpack:///./src/app/app.component.ts","webpack:///./src/app/app.module.ts","webpack:///./src/app/components/pages/admin/admin-service-partners/create/admin-service-partner-create.component.html","webpack:///./src/app/components/pages/admin/admin-service-partners/create/admin-service-partner-create.component.less","webpack:///./src/app/components/pages/admin/admin-service-partners/create/admin-service-partner-create.component.ts","webpack:///./src/app/components/pages/admin/admin-service-partners/details/admin-service-partner-details.component.html","webpack:///./src/app/components/pages/admin/admin-service-partners/details/admin-service-partner-details.component.less","webpack:///./src/app/components/pages/admin/admin-service-partners/details/admin-service-partner-details.component.ts","webpack:///./src/app/components/pages/admin/admin-service-partners/list/admin-service-partners.component.html","webpack:///./src/app/components/pages/admin/admin-service-partners/list/admin-service-partners.component.less","webpack:///./src/app/components/pages/admin/admin-service-partners/list/admin-service-partners.component.ts","webpack:///./src/app/components/pages/admin/cms/css-js/admin-cms-css-js.component.html","webpack:///./src/app/components/pages/admin/cms/css-js/admin-cms-css-js.component.less","webpack:///./src/app/components/pages/admin/cms/css-js/admin-cms-css-js.component.ts","webpack:///./src/app/components/pages/admin/cms/files/list/admin-cms-files-list.component.html","webpack:///./src/app/components/pages/admin/cms/files/list/admin-cms-files-list.component.less","webpack:///./src/app/components/pages/admin/cms/files/list/admin-cms-files-list.component.ts","webpack:///./src/app/components/pages/admin/cms/pages/details/admin-cms-pages-details.component.html","webpack:///./src/app/components/pages/admin/cms/pages/details/admin-cms-pages-details.component.less","webpack:///./src/app/components/pages/admin/cms/pages/details/admin-cms-pages-details.component.ts","webpack:///./src/app/components/pages/admin/cms/pages/details/admin-cms-preview-dialog.component.ts","webpack:///./src/app/components/pages/admin/cms/pages/list/admin-cms-pages-list.component.html","webpack:///./src/app/components/pages/admin/cms/pages/list/admin-cms-pages-list.component.less","webpack:///./src/app/components/pages/admin/cms/pages/list/admin-cms-pages-list.component.ts","webpack:///./src/app/components/pages/admin/cms/settings/list/admin-cms-settings-list.component.html","webpack:///./src/app/components/pages/admin/cms/settings/list/admin-cms-settings-list.component.less","webpack:///./src/app/components/pages/admin/cms/settings/list/admin-cms-settings-list.component.ts","webpack:///./src/app/components/pages/admin/invoice/create/admin-invoice-create.component.html","webpack:///./src/app/components/pages/admin/invoice/create/admin-invoice-create.component.less","webpack:///./src/app/components/pages/admin/invoice/create/admin-invoice-create.component.ts","webpack:///./src/app/components/pages/admin/invoice/details/admin-invoice-details.component.html","webpack:///./src/app/components/pages/admin/invoice/details/admin-invoice-details.component.less","webpack:///./src/app/components/pages/admin/invoice/details/admin-invoice-details.component.ts","webpack:///./src/app/components/pages/admin/invoice/list/admin-invoice-list.component.html","webpack:///./src/app/components/pages/admin/invoice/list/admin-invoice-list.component.less","webpack:///./src/app/components/pages/admin/invoice/list/admin-invoice-list.component.ts","webpack:///./src/app/components/pages/admin/repair-center/assignment-test/admin-repair-center-assignment.component.html","webpack:///./src/app/components/pages/admin/repair-center/assignment-test/admin-repair-center-assignment.component.less","webpack:///./src/app/components/pages/admin/repair-center/assignment-test/admin-repair-center-assignment.component.ts","webpack:///./src/app/components/pages/admin/repair-center/details/admin-repair-center-details.component.html","webpack:///./src/app/components/pages/admin/repair-center/details/admin-repair-center-details.component.less","webpack:///./src/app/components/pages/admin/repair-center/details/admin-repair-center-details.component.ts","webpack:///./src/app/components/pages/admin/repair-center/list/admin-repair-center-list.component.html","webpack:///./src/app/components/pages/admin/repair-center/list/admin-repair-center-list.component.less","webpack:///./src/app/components/pages/admin/repair-center/list/admin-repair-center-list.component.ts","webpack:///./src/app/components/pages/admin/repair-order/details/admin-repair-order-details.component.html","webpack:///./src/app/components/pages/admin/repair-order/details/admin-repair-order-details.component.less","webpack:///./src/app/components/pages/admin/repair-order/details/admin-repair-order-details.component.ts","webpack:///./src/app/components/pages/admin/repair-order/list/admin-repair-order-list.component.html","webpack:///./src/app/components/pages/admin/repair-order/list/admin-repair-order-list.component.less","webpack:///./src/app/components/pages/admin/repair-order/list/admin-repair-order-list.component.ts","webpack:///./src/app/components/pages/public/cms-public-page/cms-public-page.component.ts","webpack:///./src/app/components/pages/public/index/index.component.html","webpack:///./src/app/components/pages/public/index/index.component.less","webpack:///./src/app/components/pages/public/index/index.component.ts","webpack:///./src/app/components/pages/public/one-pager/one-pager.component.html","webpack:///./src/app/components/pages/public/one-pager/one-pager.component.less","webpack:///./src/app/components/pages/public/one-pager/one-pager.component.ts","webpack:///./src/app/components/pages/public/register/confirm-email/confirm-email.component.html","webpack:///./src/app/components/pages/public/register/confirm-email/confirm-email.component.less","webpack:///./src/app/components/pages/public/register/confirm-email/confirm-email.component.ts","webpack:///./src/app/components/pages/public/register/form/register-form.component.html","webpack:///./src/app/components/pages/public/register/form/register-form.component.less","webpack:///./src/app/components/pages/public/register/form/register-form.component.ts","webpack:///./src/app/components/pages/public/register/success/register-success.component.html","webpack:///./src/app/components/pages/public/register/success/register-success.component.less","webpack:///./src/app/components/pages/public/register/success/register-success.component.ts","webpack:///./src/app/components/pages/public/reset-password/reset-password.component.html","webpack:///./src/app/components/pages/public/reset-password/reset-password.component.less","webpack:///./src/app/components/pages/public/reset-password/reset-password.component.ts","webpack:///./src/app/components/pages/public/search/search.component.html","webpack:///./src/app/components/pages/public/search/search.component.less","webpack:///./src/app/components/pages/public/search/search.component.ts","webpack:///./src/app/components/pages/repair-center/dashboard/repair-center-dashboard.component.html","webpack:///./src/app/components/pages/repair-center/dashboard/repair-center-dashboard.component.less","webpack:///./src/app/components/pages/repair-center/dashboard/repair-center-dashboard.component.ts","webpack:///./src/app/components/pages/repair-center/invoice/list/repair-center-invoice-list.component.html","webpack:///./src/app/components/pages/repair-center/invoice/list/repair-center-invoice-list.component.less","webpack:///./src/app/components/pages/repair-center/invoice/list/repair-center-invoice-list.component.ts","webpack:///./src/app/components/pages/repair-center/repair-order/details/repair-center-order-details.component.html","webpack:///./src/app/components/pages/repair-center/repair-order/details/repair-center-order-details.component.less","webpack:///./src/app/components/pages/repair-center/repair-order/details/repair-center-order-details.component.ts","webpack:///./src/app/components/pages/repair-center/repair-order/list/repair-center-order-list.component.html","webpack:///./src/app/components/pages/repair-center/repair-order/list/repair-center-order-list.component.less","webpack:///./src/app/components/pages/repair-center/repair-order/list/repair-center-order-list.component.ts","webpack:///./src/app/components/pages/repair-center/repair-order/process/image-upload/repair-center-order-process-image-upload.component.html","webpack:///./src/app/components/pages/repair-center/repair-order/process/image-upload/repair-center-order-process-image-upload.component.less","webpack:///./src/app/components/pages/repair-center/repair-order/process/image-upload/repair-center-order-process-image-upload.component.ts","webpack:///./src/app/components/pages/repair-center/repair-order/process/repair-center-order-process.component.html","webpack:///./src/app/components/pages/repair-center/repair-order/process/repair-center-order-process.component.less","webpack:///./src/app/components/pages/repair-center/repair-order/process/repair-center-order-process.component.ts","webpack:///./src/app/components/pages/service-partner/dashboard/service-partner-dashboard.component.html","webpack:///./src/app/components/pages/service-partner/dashboard/service-partner-dashboard.component.less","webpack:///./src/app/components/pages/service-partner/dashboard/service-partner-dashboard.component.ts","webpack:///./src/app/components/pages/service-partner/invoice/list/service-partner-invoice-list.component.html","webpack:///./src/app/components/pages/service-partner/invoice/list/service-partner-invoice-list.component.less","webpack:///./src/app/components/pages/service-partner/invoice/list/service-partner-invoice-list.component.ts","webpack:///./src/app/components/pages/service-partner/order/form/service-partner-order-form.component.html","webpack:///./src/app/components/pages/service-partner/order/form/service-partner-order-form.component.less","webpack:///./src/app/components/pages/service-partner/order/form/service-partner-order-form.component.ts","webpack:///./src/app/components/pages/service-partner/order/packaging/service-partner-order-packaging.component.html","webpack:///./src/app/components/pages/service-partner/order/packaging/service-partner-order-packaging.component.less","webpack:///./src/app/components/pages/service-partner/order/packaging/service-partner-order-packaging.component.ts","webpack:///./src/app/components/pages/service-partner/order/pickup/service-partner-order-pickup.component.html","webpack:///./src/app/components/pages/service-partner/order/pickup/service-partner-order-pickup.component.less","webpack:///./src/app/components/pages/service-partner/order/pickup/service-partner-order-pickup.component.ts","webpack:///./src/app/components/pages/service-partner/order/success/service-partner-order-success.component.html","webpack:///./src/app/components/pages/service-partner/order/success/service-partner-order-success.component.less","webpack:///./src/app/components/pages/service-partner/order/success/service-partner-order-success.component.ts","webpack:///./src/app/components/pages/service-partner/repair-order/details/service-partner-order-details.component.html","webpack:///./src/app/components/pages/service-partner/repair-order/details/service-partner-order-details.component.less","webpack:///./src/app/components/pages/service-partner/repair-order/details/service-partner-order-details.component.ts","webpack:///./src/app/components/pages/service-partner/repair-order/list/service-partner-order-list.component.html","webpack:///./src/app/components/pages/service-partner/repair-order/list/service-partner-order-list.component.less","webpack:///./src/app/components/pages/service-partner/repair-order/list/service-partner-order-list.component.ts","webpack:///./src/app/components/pages/service-partner/settings/service-partner-settings.component.html","webpack:///./src/app/components/pages/service-partner/settings/service-partner-settings.component.less","webpack:///./src/app/components/pages/service-partner/settings/service-partner-settings.component.ts","webpack:///./src/app/components/ui/cms-page/cms-page.component.html","webpack:///./src/app/components/ui/cms-page/cms-page.component.less","webpack:///./src/app/components/ui/cms-page/cms-page.component.ts","webpack:///./src/app/components/ui/collapsable/collapsable.component.html","webpack:///./src/app/components/ui/collapsable/collapsable.component.less","webpack:///./src/app/components/ui/collapsable/collapsable.component.ts","webpack:///./src/app/components/ui/dialogs/confirm-dialog.component.ts","webpack:///./src/app/components/ui/dialogs/general-confirm-dialog.component.ts","webpack:///./src/app/components/ui/dialogs/message-dialog/message-dialog.component.ts","webpack:///./src/app/components/ui/dialogs/multi-label-viewer.component.ts","webpack:///./src/app/components/ui/dialogs/newsletter-dialog.component.ts","webpack:///./src/app/components/ui/dialogs/price-list-request-dialog.component.ts","webpack:///./src/app/components/ui/dialogs/print-dialog-repair-center.component.ts","webpack:///./src/app/components/ui/dialogs/ral-color-picker-dialog.component.ts","webpack:///./src/app/components/ui/dialogs/select-partner-dialog/select-partner-dialog.component.html","webpack:///./src/app/components/ui/dialogs/select-partner-dialog/select-partner-dialog.component.ts","webpack:///./src/app/components/ui/dialogs/viewer-dialog.component.ts","webpack:///./src/app/components/ui/filter-inputs/filter-inputfield/filter-inputfield.component.html","webpack:///./src/app/components/ui/filter-inputs/filter-inputfield/filter-inputfield.component.less","webpack:///./src/app/components/ui/filter-inputs/filter-inputfield/filter-inputfield.component.ts","webpack:///./src/app/components/ui/filter-inputs/filter-inputselect/filter-inputselect.component.html","webpack:///./src/app/components/ui/filter-inputs/filter-inputselect/filter-inputselect.component.less","webpack:///./src/app/components/ui/filter-inputs/filter-inputselect/filter-inputselect.component.ts","webpack:///./src/app/components/ui/filter-inputs/util/filter-base.ts","webpack:///./src/app/components/ui/filter-inputs/util/filter-trash/filter-trash.component.html","webpack:///./src/app/components/ui/filter-inputs/util/filter-trash/filter-trash.component.less","webpack:///./src/app/components/ui/filter-inputs/util/filter-trash/filter-trash.component.ts","webpack:///./src/app/components/ui/filter/filter.component.html","webpack:///./src/app/components/ui/filter/filter.component.less","webpack:///./src/app/components/ui/filter/filter.component.ts","webpack:///./src/app/components/ui/footer/footer-public/footer-public.component.html","webpack:///./src/app/components/ui/footer/footer-public/footer-public.component.less","webpack:///./src/app/components/ui/footer/footer-public/footer-public.component.ts","webpack:///./src/app/components/ui/grid/grid.component.html","webpack:///./src/app/components/ui/grid/grid.component.ts","webpack:///./src/app/components/ui/inputs/imageselect/imageselect.component.html","webpack:///./src/app/components/ui/inputs/imageselect/imageselect.component.less","webpack:///./src/app/components/ui/inputs/imageselect/imageselect.component.ts","webpack:///./src/app/components/ui/inputs/inputcurrencyfield/inputcurrencyfield.component.html","webpack:///./src/app/components/ui/inputs/inputcurrencyfield/inputcurrencyfield.component.less","webpack:///./src/app/components/ui/inputs/inputcurrencyfield/inputcurrencyfield.component.ts","webpack:///./src/app/components/ui/inputs/inputfield/inputfield.component.html","webpack:///./src/app/components/ui/inputs/inputfield/inputfield.component.less","webpack:///./src/app/components/ui/inputs/inputfield/inputfield.component.ts","webpack:///./src/app/components/ui/inputs/inputnumberfield/inputnumberfield.component.html","webpack:///./src/app/components/ui/inputs/inputnumberfield/inputnumberfield.component.less","webpack:///./src/app/components/ui/inputs/inputnumberfield/inputnumberfield.component.ts","webpack:///./src/app/components/ui/inputs/inputselect/inputselect.component.html","webpack:///./src/app/components/ui/inputs/inputselect/inputselect.component.less","webpack:///./src/app/components/ui/inputs/inputselect/inputselect.component.ts","webpack:///./src/app/components/ui/inputs/inputselectenum/inputselectenum.component.html","webpack:///./src/app/components/ui/inputs/inputselectenum/inputselectenum.component.less","webpack:///./src/app/components/ui/inputs/inputselectenum/inputselectenum.component.ts","webpack:///./src/app/components/ui/navbars/navbar-public/navbar-public.component.html","webpack:///./src/app/components/ui/navbars/navbar-public/navbar-public.component.less","webpack:///./src/app/components/ui/navbars/navbar-public/navbar-public.component.ts","webpack:///./src/app/components/ui/register-form-frac/register-form-frac.component.html","webpack:///./src/app/components/ui/register-form-frac/register-form-frac.component.less","webpack:///./src/app/components/ui/register-form-frac/register-form-frac.component.ts","webpack:///./src/app/config.ts","webpack:///./src/app/model/address.model.ts","webpack:///./src/app/model/cms-block.model.ts","webpack:///./src/app/model/cms-page.model.ts","webpack:///./src/app/model/invoice.model.ts","webpack:///./src/app/model/repair-center.model.ts","webpack:///./src/app/model/repair-order.model.ts","webpack:///./src/app/model/service-partner.model.ts","webpack:///./src/app/model/user.model.ts","webpack:///./src/app/pipes/amount.pipe.ts","webpack:///./src/app/pipes/camel-case.pipe.ts","webpack:///./src/app/pipes/date.pipe.ts","webpack:///./src/app/pipes/dateIf.pipe.ts","webpack:///./src/app/pipes/order-id.pipe.ts","webpack:///./src/app/pipes/sanitizeHtml.pipe.ts","webpack:///./src/app/pipes/secure.pipe.ts","webpack:///./src/app/service/cms.service.ts","webpack:///./src/app/service/enum.service.ts","webpack:///./src/app/service/feedback.service.ts","webpack:///./src/app/service/invoice.service.ts","webpack:///./src/app/service/printer.service.ts","webpack:///./src/app/service/repair-center.service.ts","webpack:///./src/app/service/repair-order.service.ts","webpack:///./src/app/service/service-partner.service.ts","webpack:///./src/app/service/settings.service.ts","webpack:///./src/app/service/user.service.ts","webpack:///./src/app/util/auth-http-interceptor.ts","webpack:///./src/app/util/auth.guard.ts","webpack:///./src/environments/environment.ts","webpack:///./src/main.ts"],"names":[],"mappings":"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","file":"main.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 = \"./src/$$_lazy_route_resource lazy recursive\";","import { NgModule } from '@angular/core';\nimport { Routes, RouterModule } from '@angular/router';\nimport { IndexComponent } from 'src/app/components/pages/public/index/index.component';\nimport { RegisterFormComponent } from 'src/app/components/pages/public/register/form/register-form.component';\nimport { RegisterSuccessComponent } from 'src/app/components/pages/public/register/success/register-success.component';\nimport { AuthGuard } from 'src/app/util/auth.guard';\nimport { ServicePartnerOrderFormComponent } from 'src/app/components/pages/service-partner/order/form/service-partner-order-form.component';\nimport { ServicePartnerOrderSuccessComponent } from 'src/app/components/pages/service-partner/order/success/service-partner-order-success.component';\nimport { RepairCenterDashboardComponent } from 'src/app/components/pages/repair-center/dashboard/repair-center-dashboard.component';\nimport { RepairCenterOrderProcessComponent } from 'src/app/components/pages/repair-center/repair-order/process/repair-center-order-process.component';\nimport { RepairCenterOrderListComponent } from 'src/app/components/pages/repair-center/repair-order/list/repair-center-order-list.component';\nimport { RepairCenterOrderDetailsComponent } from 'src/app/components/pages/repair-center/repair-order/details/repair-center-order-details.component';\nimport { AdminRepairOrderListComponent } from 'src/app/components/pages/admin/repair-order/list/admin-repair-order-list.component';\nimport { AdminRepairOrderDetailsComponent } from 'src/app/components/pages/admin/repair-order/details/admin-repair-order-details.component';\nimport { AdminInvoiceListComponent } from 'src/app/components/pages/admin/invoice/list/admin-invoice-list.component';\nimport { AdminInvoiceDetailsComponent } from 'src/app/components/pages/admin/invoice/details/admin-invoice-details.component';\nimport { ServicePartnerOrderListComponent } from 'src/app/components/pages/service-partner/repair-order/list/service-partner-order-list.component';\nimport { ServicePartnerOrderDetailsComponent } from 'src/app/components/pages/service-partner/repair-order/details/service-partner-order-details.component';\nimport { ServicePartnerInvoiceListComponent } from 'src/app/components/pages/service-partner/invoice/list/service-partner-invoice-list.component';\nimport { SearchComponent } from 'src/app/components/pages/public/search/search.component';\nimport { ServicePartnerSettingsComponent } from 'src/app/components/pages/service-partner/settings/service-partner-settings.component';\nimport { ResetPasswordComponent } from 'src/app/components/pages/public/reset-password/reset-password.component';\nimport { ConfirmEmailComponent } from 'src/app/components/pages/public/register/confirm-email/confirm-email.component';\nimport { AdminServicePartnersComponent } from 'src/app/components/pages/admin/admin-service-partners/list/admin-service-partners.component';\nimport { AdminServicePartnerDetailsComponent } from 'src/app/components/pages/admin/admin-service-partners/details/admin-service-partner-details.component';\nimport { ServicePartnerOrderPackagingComponent } from 'src/app/components/pages/service-partner/order/packaging/service-partner-order-packaging.component';\nimport { ServicePartnerOrderPickupComponent } from 'src/app/components/pages/service-partner/order/pickup/service-partner-order-pickup.component';\nimport { AdminServicePartnerCreateComponent } from 'src/app/components/pages/admin/admin-service-partners/create/admin-service-partner-create.component';\nimport { AdminCmsPagesListComponent } from './components/pages/admin/cms/pages/list/admin-cms-pages-list.component';\nimport { AdminCmsPagesDetailsComponent } from './components/pages/admin/cms/pages/details/admin-cms-pages-details.component';\nimport { CmsPublicPageComponent } from './components/pages/public/cms-public-page/cms-public-page.component';\nimport { AdminCmsSettingsListComponent } from './components/pages/admin/cms/settings/list/admin-cms-settings-list.component';\nimport { AdminCmsFilesListComponent } from './components/pages/admin/cms/files/list/admin-cms-files-list.component';\nimport { AdminCmsCssJsComponent } from './components/pages/admin/cms/css-js/admin-cms-css-js.component';\nimport { AdminRepairCenterListComponent } from 'src/app/components/pages/admin/repair-center/list/admin-repair-center-list.component';\nimport { AdminRepairCenterDetailsComponent } from 'src/app/components/pages/admin/repair-center/details/admin-repair-center-details.component';\nimport { AdminInvoiceCreateComponent } from 'src/app/components/pages/admin/invoice/create/admin-invoice-create.component';\nimport { RepairCenterInvoiceListComponent } from 'src/app/components/pages/repair-center/invoice/list/repair-center-invoice-list.component';\nimport { ServicePartnerDashboardComponent } from './components/pages/service-partner/dashboard/service-partner-dashboard.component';\nimport { AdminRepairCenterAssignmentComponent } from './components/pages/admin/repair-center/assignment-test/admin-repair-center-assignment.component';\n\nconst routes: Routes = [\n { path: '', component: IndexComponent },\n { path: 'servicepartner-suche', component: SearchComponent },\n { path: 'reset-password', component: ResetPasswordComponent },\n { path: 'confirm-email', component: ConfirmEmailComponent },\n { \n path: 'register', \n children: [\n { path: 'form', component: RegisterFormComponent },\n { path: 'success', component: RegisterSuccessComponent },\n ]\n },\n //agbs should be accessible before logging in\n { path: 'service-partner/agb', component:CmsPublicPageComponent},\n { \n path: 'service-partner',\n canActivate: [AuthGuard],\n data: { roles: ['service-partner'] },\n children: [\n {\n path: 'dashboard',\n component: ServicePartnerDashboardComponent\n },\n { \n path: 'order',\n children: [\n { path: 'form', component: ServicePartnerOrderFormComponent },\n { path: 'success/:id', component: ServicePartnerOrderSuccessComponent },\n { path: 'success', component: ServicePartnerOrderSuccessComponent },\n { path: 'packaging', component: ServicePartnerOrderPackagingComponent },\n { path: 'pickup', component: ServicePartnerOrderPickupComponent },\n ]\n },\n {\n path: 'repair-orders',\n children: [\n { path: 'list/:state', component:ServicePartnerOrderListComponent },\n { path: 'details/:id', component:ServicePartnerOrderDetailsComponent },\n ]\n },\n {\n path: 'invoices',\n children: [\n { path: 'list', component: ServicePartnerInvoiceListComponent },\n ]\n },\n { path: 'settings', component: ServicePartnerSettingsComponent },\n { path: '**', component: CmsPublicPageComponent },\n ]\n },\n {\n path: 'repair-center',\n canActivate: [AuthGuard],\n data: { roles: ['repair-center'] },\n children: [\n { path: 'dashboard', component: RepairCenterDashboardComponent },\n {\n path: 'repair-orders',\n children: [\n { path: 'process/:id', component:RepairCenterOrderProcessComponent },\n { path: 'list/:state', component:RepairCenterOrderListComponent },\n { path: 'details/:id', component:RepairCenterOrderDetailsComponent },\n ]\n },\n {\n path: 'invoices',\n children: [\n { path: 'list', component: RepairCenterInvoiceListComponent },\n ]\n }\n ]\n },\n { \n path: 'admin',\n canActivate: [AuthGuard],\n data: { roles: ['admin'] },\n children: [\n { \n path: 'service-partners',\n children: [\n { path: 'list/:state', component: AdminServicePartnersComponent },\n { path: 'details/:id', component: AdminServicePartnerDetailsComponent },\n { path: 'create', component: AdminServicePartnerCreateComponent },\n ] \n },\n {\n path: 'repair-orders',\n children: [\n { path: 'list/:state', component:AdminRepairOrderListComponent },\n { path: 'details/:id', component:AdminRepairOrderDetailsComponent },\n ]\n },\n {\n path: 'invoices',\n children: [\n { path: 'list/:state', component:AdminInvoiceListComponent },\n { path: 'details/:ident', component:AdminInvoiceDetailsComponent },\n { path: 'create', component: AdminInvoiceCreateComponent },\n ]\n },\n {\n path: 'repair-centers',\n children: [\n { path: 'list', component: AdminRepairCenterListComponent },\n { path: 'details', component: AdminRepairCenterDetailsComponent },\n { path: 'details/:id', component: AdminRepairCenterDetailsComponent },\n { path: 'assignment', component: AdminRepairCenterAssignmentComponent}\n ]\n },\n {\n path: 'cms',\n children: [\n { \n path: 'pages',\n children: [\n { path: 'list', component: AdminCmsPagesListComponent },\n { path: 'details', component: AdminCmsPagesDetailsComponent },\n { path: 'details/:ident', component: AdminCmsPagesDetailsComponent },\n { path: 'details/:ident/:ident2', component: AdminCmsPagesDetailsComponent },\n ]\n },\n { path: 'css-js', component: AdminCmsCssJsComponent },\n {\n path: 'settings',\n children: [\n { path: 'list', component: AdminCmsSettingsListComponent },\n ]\n },\n {\n path: 'files',\n children: [\n { path: 'list', component: AdminCmsFilesListComponent },\n ]\n }\n ]\n }\n ]\n },\n { path: '**', component: CmsPublicPageComponent },\n];\n\n@NgModule({\n imports: [RouterModule.forRoot(routes, {scrollPositionRestoration: 'enabled'})],\n exports: [RouterModule]\n})\nexport class AppRoutingModule { }\n","module.exports = \"
\\n
\\n
\\n
\\n Diese Website verwendet Cookies, um Ihnen den bestmöglichen Service zu gewährleisten. \\n Wenn Sie auf der Seite weitersurfen oder auf OK klicken, stimmen Sie der Cookie-Nutzung \\n zu. Weitere Infos dazu finden Sie in unserer Datenschutzbestimmung.\\n OK\\n
\\n
\\n
\\n
\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n
\\n
\\n
\\n
\\n \\n
\\n \\n
\\n

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

\\n © 2021 Felgenhero GmbH – Alle Rechte vorbehalten\\n

\\n
\\n
\\n
\\n
\\n\\n\"","module.exports = \"nav.navbar {\\n background-color: white;\\n}\\n.navbar-toggler {\\n border: none;\\n}\\n.flex-md-equal > * {\\n flex: 1;\\n}\\n@media (min-width: 992px) {\\n #navbarSupportedContent {\\n display: block !important;\\n }\\n #navbarSupportedContent a.nav-link {\\n display: inline-block;\\n }\\n}\\n.fh-nav {\\n position: relative;\\n display: block;\\n text-align: right;\\n}\\n.fh-nav .logo {\\n position: absolute;\\n top: 0;\\n left: 0;\\n padding: 0 !important;\\n margin: 0;\\n margin-left: 16px;\\n width: 8em;\\n}\\n@media (max-width: 991px) {\\n .fh-nav .logo {\\n width: 7em;\\n }\\n}\\n.fh-nav .logo img {\\n width: 100%;\\n}\\n.fh-nav #navbarSupportedContent {\\n flex-flow: row-reverse;\\n}\\n.fh-nav a {\\n text-transform: uppercase;\\n color: black;\\n margin-left: 1em;\\n margin-right: 1em;\\n margin-top: 0.5em;\\n margin-bottom: 0.5em;\\n font-weight: bold;\\n}\\n@media (max-width: 991px) {\\n .fh-nav a {\\n margin-right: 0;\\n padding-right: 0;\\n }\\n}\\n.fh-nav a.dropdown-item {\\n margin-left: 0;\\n margin-right: 0;\\n}\\n.fh-nav a.dropdown-item:active {\\n background-color: #be1822;\\n color: white;\\n}\\n.fh-footer {\\n background: linear-gradient(to bottom, #f8f8fa 0%, #f8f8fa 30%, #fff 30%, #fff 100%);\\n}\\n.fh-footer .the-hero {\\n text-align: left;\\n}\\n@media (max-width: 767px) {\\n .fh-footer .the-hero {\\n text-align: center;\\n }\\n}\\n.fh-footer a {\\n color: black;\\n padding-left: 0.5em;\\n padding-right: 0.5em;\\n}\\n.fh-footer .social-media {\\n text-align: right;\\n}\\n.fh-footer .links {\\n text-align: center;\\n}\\n.copyright {\\n background-color: black;\\n}\\n.copyright p {\\n color: white;\\n font-size: 80%;\\n text-align: right;\\n padding: 0.5em;\\n margin: 0;\\n}\\n.cookieHint {\\n position: fixed;\\n bottom: 0;\\n width: 100%;\\n background-color: rgba(0, 0, 0, 0.7);\\n color: white;\\n padding: 0.2em;\\n z-index: 1000;\\n}\\n.cookieHint a {\\n color: white;\\n text-decoration: underline;\\n}\\n.cookieHint a:hover {\\n color: white;\\n}\\n.cookieHint a.accept {\\n text-decoration: none;\\n border: 1px solid white;\\n border-radius: 0.2em;\\n padding: 0.2em;\\n padding-left: 0.5em;\\n padding-right: 0.5em;\\n float: right;\\n cursor: pointer;\\n}\\n.cookieHint a.accept:hover {\\n background-color: rgba(255, 255, 255, 0.3);\\n}\\n\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9hcHAtdWkvc3JjL2FwcC9hcHAuY29tcG9uZW50Lmxlc3MiLCJzcmMvYXBwL2FwcC5jb21wb25lbnQubGVzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtFQUNJLHVCQUFBO0FDQ0o7QURFQTtFQUNJLFlBQUE7QUNBSjtBREdBO0VBR0UsT0FBQTtBQ0RGO0FESUE7RUFDSTtJQUNJLHlCQUFBO0VDRk47RURDRTtJQUlRLHFCQUFBO0VDRlY7QUFDRjtBRE1BO0VBQ0ksa0JBQUE7RUFDQSxjQUFBO0VBQ0EsaUJBQUE7QUNKSjtBRENBO0VBTVEsa0JBQUE7RUFDQSxNQUFBO0VBQ0EsT0FBQTtFQUNBLHFCQUFBO0VBQ0EsU0FBQTtFQUNBLGlCQUFBO0VBQ0EsVUFBQTtBQ0pSO0FES1E7RUFBQTtJQUNJLFVBQUE7RUNGVjtBQUNGO0FEYkE7RUFrQlksV0FBQTtBQ0ZaO0FEaEJBO0VBdUJRLHNCQUFBO0FDSlI7QURuQkE7RUEyQlEseUJBQUE7RUFDQSxZQUFBO0VBQ0EsZ0JBQUE7RUFDQSxpQkFBQTtFQUNBLGlCQUFBO0VBQ0Esb0JBQUE7RUFDQSxpQkFBQTtBQ0xSO0FET1E7RUFBQTtJQUNJLGVBQUE7SUFDQSxnQkFBQTtFQ0pWO0FBQ0Y7QURsQ0E7RUEwQ1EsY0FBQTtFQUNBLGVBQUE7QUNMUjtBRE9RO0VBQ0kseUJBQUE7RUFDQSxZQUFBO0FDTFo7QURVQTtFQUNJLG9GQUFBO0FDUko7QURPQTtFQUlRLGdCQUFBO0FDUlI7QURVUTtFQUFBO0lBQ0ksa0JBQUE7RUNQVjtBQUNGO0FEREE7RUFZUSxZQUFBO0VBQ0EsbUJBQUE7RUFDQSxvQkFBQTtBQ1JSO0FETkE7RUFrQlEsaUJBQUE7QUNUUjtBRFRBO0VBc0JRLGtCQUFBO0FDVlI7QURjQTtFQUNJLHVCQUFBO0FDWko7QURXQTtFQUlRLFlBQUE7RUFDQSxjQUFBO0VBQ0EsaUJBQUE7RUFDQSxjQUFBO0VBQ0EsU0FBQTtBQ1pSO0FEZ0JBO0VBQ0ksZUFBQTtFQUNBLFNBQUE7RUFDQSxXQUFBO0VBQ0Esb0NBQUE7RUFDQSxZQUFBO0VBQ0EsY0FBQTtFQUNBLGFBQUE7QUNkSjtBRE9BO0VBVVEsWUFBQTtFQUNBLDBCQUFBO0FDZFI7QURnQlE7RUFDSSxZQUFBO0FDZFo7QURBQTtFQW1CUSxxQkFBQTtFQUNBLHVCQUFBO0VBQ0Esb0JBQUE7RUFDQSxjQUFBO0VBQ0EsbUJBQUE7RUFDQSxvQkFBQTtFQUNBLFlBQUE7RUFDQSxlQUFBO0FDaEJSO0FEa0JRO0VBQ0ksMENBQUE7QUNoQloiLCJmaWxlIjoic3JjL2FwcC9hcHAuY29tcG9uZW50Lmxlc3MiLCJzb3VyY2VzQ29udGVudCI6WyJuYXYubmF2YmFyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbn1cblxuLm5hdmJhci10b2dnbGVyIHtcbiAgICBib3JkZXI6IG5vbmU7XG59XG5cbi5mbGV4LW1kLWVxdWFsID4gKiB7XG4gIC1tcy1mbGV4OiAxO1xuICAtd2Via2l0LWJveC1mbGV4OiAxO1xuICBmbGV4OiAxO1xufVxuXG5AbWVkaWEobWluLXdpZHRoOiA5OTJweCkge1xuICAgICNuYXZiYXJTdXBwb3J0ZWRDb250ZW50IHtcbiAgICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcblxuICAgICAgICBhLm5hdi1saW5rIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmZoLW5hdiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyBcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcblxuICAgIC5sb2dvIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBtYXJnaW4tbGVmdDogMTZweDtcbiAgICAgICAgd2lkdGg6IDhlbTtcbiAgICAgICAgQG1lZGlhKG1heC13aWR0aDogOTkxcHgpIHtcbiAgICAgICAgICAgIHdpZHRoOiA3ZW07XG4gICAgICAgIH1cbiAgICBcbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgI25hdmJhclN1cHBvcnRlZENvbnRlbnQge1xuICAgICAgICBmbGV4LWZsb3c6IHJvdy1yZXZlcnNlO1xuICAgIH1cblxuICAgIGEge1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBjb2xvcjogYmxhY2s7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxZW07XG4gICAgICAgIG1hcmdpbi1yaWdodDogMWVtO1xuICAgICAgICBtYXJnaW4tdG9wOiAwLjVlbTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMC41ZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuXG4gICAgICAgIEBtZWRpYShtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgYS5kcm9wZG93bi1pdGVtIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDtcblxuICAgICAgICAmOmFjdGl2ZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYmUxODIyO1xuICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uZmgtZm9vdGVyIHtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAjZjhmOGZhIDAlLCNmOGY4ZmEgMzAlLCNmZmYgMzAlLCNmZmYgMTAwJSk7XG5cbiAgICAudGhlLWhlcm8ge1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuXG4gICAgICAgIEBtZWRpYShtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBhIHtcbiAgICAgICAgY29sb3I6IGJsYWNrO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuNWVtO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjVlbTtcbiAgICB9XG5cbiAgICAuc29jaWFsLW1lZGlhIHtcbiAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgfVxuXG4gICAgLmxpbmtzIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cbn1cblxuLmNvcHlyaWdodCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogYmxhY2s7XG5cbiAgICBwIHtcbiAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICBmb250LXNpemU6IDgwJTtcbiAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgIHBhZGRpbmc6IDAuNWVtO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgfVxufVxuXG4uY29va2llSGludCB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIGJvdHRvbTogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNyk7XG4gICAgY29sb3I6IHdoaXRlO1xuICAgIHBhZGRpbmc6IDAuMmVtO1xuICAgIHotaW5kZXg6IDEwMDA7XG5cbiAgICBhIHtcbiAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGEuYWNjZXB0IHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB3aGl0ZTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMC4yZW07XG4gICAgICAgIHBhZGRpbmc6IDAuMmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuNWVtO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjVlbTtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMyk7XG4gICAgICAgIH1cbiAgICB9XG59IiwibmF2Lm5hdmJhciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xufVxuLm5hdmJhci10b2dnbGVyIHtcbiAgYm9yZGVyOiBub25lO1xufVxuLmZsZXgtbWQtZXF1YWwgPiAqIHtcbiAgLW1zLWZsZXg6IDE7XG4gIC13ZWJraXQtYm94LWZsZXg6IDE7XG4gIGZsZXg6IDE7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgI25hdmJhclN1cHBvcnRlZENvbnRlbnQge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbiAgI25hdmJhclN1cHBvcnRlZENvbnRlbnQgYS5uYXYtbGluayB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB9XG59XG4uZmgtbmF2IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG4uZmgtbmF2IC5sb2dvIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgbWFyZ2luOiAwO1xuICBtYXJnaW4tbGVmdDogMTZweDtcbiAgd2lkdGg6IDhlbTtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAuZmgtbmF2IC5sb2dvIHtcbiAgICB3aWR0aDogN2VtO1xuICB9XG59XG4uZmgtbmF2IC5sb2dvIGltZyB7XG4gIHdpZHRoOiAxMDAlO1xufVxuLmZoLW5hdiAjbmF2YmFyU3VwcG9ydGVkQ29udGVudCB7XG4gIGZsZXgtZmxvdzogcm93LXJldmVyc2U7XG59XG4uZmgtbmF2IGEge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBjb2xvcjogYmxhY2s7XG4gIG1hcmdpbi1sZWZ0OiAxZW07XG4gIG1hcmdpbi1yaWdodDogMWVtO1xuICBtYXJnaW4tdG9wOiAwLjVlbTtcbiAgbWFyZ2luLWJvdHRvbTogMC41ZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gIC5maC1uYXYgYSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gIH1cbn1cbi5maC1uYXYgYS5kcm9wZG93bi1pdGVtIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIG1hcmdpbi1yaWdodDogMDtcbn1cbi5maC1uYXYgYS5kcm9wZG93bi1pdGVtOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNiZTE4MjI7XG4gIGNvbG9yOiB3aGl0ZTtcbn1cbi5maC1mb290ZXIge1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAjZjhmOGZhIDAlLCAjZjhmOGZhIDMwJSwgI2ZmZiAzMCUsICNmZmYgMTAwJSk7XG59XG4uZmgtZm9vdGVyIC50aGUtaGVybyB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLmZoLWZvb3RlciAudGhlLWhlcm8ge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxufVxuLmZoLWZvb3RlciBhIHtcbiAgY29sb3I6IGJsYWNrO1xuICBwYWRkaW5nLWxlZnQ6IDAuNWVtO1xuICBwYWRkaW5nLXJpZ2h0OiAwLjVlbTtcbn1cbi5maC1mb290ZXIgLnNvY2lhbC1tZWRpYSB7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuLmZoLWZvb3RlciAubGlua3Mge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4uY29weXJpZ2h0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogYmxhY2s7XG59XG4uY29weXJpZ2h0IHAge1xuICBjb2xvcjogd2hpdGU7XG4gIGZvbnQtc2l6ZTogODAlO1xuICB0ZXh0LWFsaWduOiByaWdodDtcbiAgcGFkZGluZzogMC41ZW07XG4gIG1hcmdpbjogMDtcbn1cbi5jb29raWVIaW50IHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBib3R0b206IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNyk7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgcGFkZGluZzogMC4yZW07XG4gIHotaW5kZXg6IDEwMDA7XG59XG4uY29va2llSGludCBhIHtcbiAgY29sb3I6IHdoaXRlO1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cbi5jb29raWVIaW50IGE6aG92ZXIge1xuICBjb2xvcjogd2hpdGU7XG59XG4uY29va2llSGludCBhLmFjY2VwdCB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgYm9yZGVyOiAxcHggc29saWQgd2hpdGU7XG4gIGJvcmRlci1yYWRpdXM6IDAuMmVtO1xuICBwYWRkaW5nOiAwLjJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjVlbTtcbiAgcGFkZGluZy1yaWdodDogMC41ZW07XG4gIGZsb2F0OiByaWdodDtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuLmNvb2tpZUhpbnQgYS5hY2NlcHQ6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMyk7XG59XG4iXX0= */\"","import { Component } from '@angular/core';\nimport { UserService } from 'src/app/service/user.service';\nimport { TranslateService } from '@ngx-translate/core';\nimport { Router, NavigationEnd } from '@angular/router';\n\n@Component({\n selector: 'app-root',\n templateUrl: './app.component.html',\n styleUrls: ['./app.component.less']\n})\nexport class AppComponent {\n title = 'frontend';\n isCollapsed = true;\n\n cookieHintAccepted = false;\n\n constructor(\n public userService:UserService,\n private _translate: TranslateService,\n router:Router,\n ) {\n _translate.setDefaultLang('de');\n\n router.events.subscribe((val) => {\n if(val instanceof NavigationEnd) {\n this.isCollapsed = true;\n }\n });\n\n let store:string = localStorage.getItem(\"cookieHintAccepted\");\n if(store) {\n try { \n this.cookieHintAccepted = JSON.parse(store).accepted;\n } catch(exc) {\n // do nothing\n }\n }\n }\n\n acceptCookieHint():void {\n this.cookieHintAccepted = true;\n localStorage.setItem(\"cookieHintAccepted\", JSON.stringify({accepted: true}));\n }\n}\n","import { BrowserModule } from '@angular/platform-browser';\nimport { NgModule } from '@angular/core';\n\nimport { AppRoutingModule } from './app-routing.module';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { HttpClient, HttpClientModule } from '@angular/common/http';\nimport { TranslateLoader, TranslateModule } from '@ngx-translate/core';\nimport { TranslateHttpLoader } from '@ngx-translate/http-loader';\nimport { BsDropdownModule } from 'ngx-bootstrap/dropdown';\nimport { TooltipModule } from 'ngx-bootstrap/tooltip';\nimport { ModalModule } from 'ngx-bootstrap/modal';\nimport { CollapseModule } from 'ngx-bootstrap/collapse';\nimport { AngularFontAwesomeModule } from 'angular-font-awesome';\nimport { AgmCoreModule } from '@agm/core';\nimport { AppComponent } from './app.component';\nimport { IndexComponent } from './components/pages/public/index/index.component';\nimport { RegisterFormComponent } from './components/pages/public/register/form/register-form.component';\nimport { RegisterSuccessComponent } from './components/pages/public/register/success/register-success.component';\nimport { GridComponent, GridRowComponent, GridDataComponent, GridHeaderComponent } from 'src/app/components/ui/grid/grid.component';\nimport { HTTP_INTERCEPTORS } from '@angular/common/http';\nimport { AuthHttpInterceptor } from 'src/app/util/auth-http-interceptor';\nimport { InputfieldComponent } from 'src/app/components/ui/inputs/inputfield/inputfield.component';\nimport { InputselectComponent } from 'src/app/components/ui/inputs/inputselect/inputselect.component';\nimport { \n CollapsableComponent, \n CollapsableHeaderComponent, \n CollapsableContentComponent, \n} from './components/ui/collapsable/collapsable.component';\nimport { FilterInputfieldComponent } from './components/ui/filter-inputs/filter-inputfield/filter-inputfield.component';\nimport { FilterInputselectComponent } from './components/ui/filter-inputs/filter-inputselect/filter-inputselect.component';\nimport { FilterTrashComponent } from './components/ui/filter-inputs/util/filter-trash/filter-trash.component';\nimport { FilterComponent } from './components/ui/filter/filter.component';\nimport { DatePipe } from './pipes/date.pipe';\nimport { DateIfPipe } from './pipes/dateIf.pipe';\nimport { SecurePipe } from './pipes/secure.pipe';\nimport { CamelCasePipe } from './pipes/camel-case.pipe';\nimport { InputselectenumComponent } from './components/ui/inputs/inputselectenum/inputselectenum.component';\nimport { ServicePartnerOrderFormComponent } from 'src/app/components/pages/service-partner/order/form/service-partner-order-form.component';\nimport { ServicePartnerOrderSuccessComponent } from 'src/app/components/pages/service-partner/order/success/service-partner-order-success.component';\nimport { RepairCenterDashboardComponent } from 'src/app/components/pages/repair-center/dashboard/repair-center-dashboard.component';\nimport { RepairCenterOrderProcessComponent } from 'src/app/components/pages/repair-center/repair-order/process/repair-center-order-process.component';\nimport { RepairCenterOrderProcessImageUploadComponent } from 'src/app/components/pages/repair-center/repair-order/process/image-upload/repair-center-order-process-image-upload.component';\nimport { RepairCenterOrderListComponent } from 'src/app/components/pages/repair-center/repair-order/list/repair-center-order-list.component';\nimport { RepairCenterOrderDetailsComponent } from 'src/app/components/pages/repair-center/repair-order/details/repair-center-order-details.component';\nimport { MessageDialogComponent } from 'src/app/components/ui/dialogs/message-dialog/message-dialog.component';\nimport { AdminRepairOrderListComponent } from 'src/app/components/pages/admin/repair-order/list/admin-repair-order-list.component';\nimport { AdminRepairOrderDetailsComponent } from 'src/app/components/pages/admin/repair-order/details/admin-repair-order-details.component';\nimport { AdminInvoiceListComponent } from 'src/app/components/pages/admin/invoice/list/admin-invoice-list.component';\nimport { AmountPipe } from 'src/app/pipes/amount.pipe';\nimport { AdminInvoiceDetailsComponent } from 'src/app/components/pages/admin/invoice/details/admin-invoice-details.component';\nimport { ServicePartnerOrderListComponent } from 'src/app/components/pages/service-partner/repair-order/list/service-partner-order-list.component';\nimport { ServicePartnerOrderDetailsComponent } from 'src/app/components/pages/service-partner/repair-order/details/service-partner-order-details.component';\nimport { ServicePartnerInvoiceListComponent } from 'src/app/components/pages/service-partner/invoice/list/service-partner-invoice-list.component';\nimport { SearchComponent } from 'src/app/components/pages/public/search/search.component';\nimport { GOOGLE_MAPS_API_KEY } from 'src/app/config';\nimport { ServicePartnerSettingsComponent } from 'src/app/components/pages/service-partner/settings/service-partner-settings.component';\nimport { ResetPasswordComponent } from 'src/app/components/pages/public/reset-password/reset-password.component';\nimport { ConfirmEmailComponent } from 'src/app/components/pages/public/register/confirm-email/confirm-email.component';\nimport { AdminServicePartnersComponent } from 'src/app/components/pages/admin/admin-service-partners/list/admin-service-partners.component';\nimport { OrderIdPipe } from 'src/app/pipes/order-id.pipe';\nimport { ConfirmDialogComponent } from 'src/app/components/ui/dialogs/confirm-dialog.component';\nimport { AdminServicePartnerDetailsComponent } from 'src/app/components/pages/admin/admin-service-partners/details/admin-service-partner-details.component';\nimport { ImageselectComponent } from 'src/app/components/ui/inputs/imageselect/imageselect.component';\nimport { ServicePartnerOrderPackagingComponent } from 'src/app/components/pages/service-partner/order/packaging/service-partner-order-packaging.component';\nimport { ServicePartnerOrderPickupComponent } from 'src/app/components/pages/service-partner/order/pickup/service-partner-order-pickup.component';\nimport { ViewerDialogComponent } from 'src/app/components/ui/dialogs/viewer-dialog.component';\nimport { CmsPageComponent } from 'src/app/components/ui/cms-page/cms-page.component';\nimport { SanitizeHtmlPipe } from 'src/app/pipes/sanitizeHtml.pipe';\nimport { RegisterFormFracComponent } from 'src/app/components/ui/register-form-frac/register-form-frac.component';\nimport { AdminServicePartnerCreateComponent } from 'src/app/components/pages/admin/admin-service-partners/create/admin-service-partner-create.component';\nimport { AdminRepairCenterDetailsComponent } from 'src/app/components/pages/admin/repair-center/details/admin-repair-center-details.component';\nimport { AdminCmsPagesListComponent } from './components/pages/admin/cms/pages/list/admin-cms-pages-list.component';\nimport { AdminCmsPagesDetailsComponent } from './components/pages/admin/cms/pages/details/admin-cms-pages-details.component';\nimport { AdminCmsPreviewDialogComponent } from './components/pages/admin/cms/pages/details/admin-cms-preview-dialog.component';\nimport { CmsPublicPageComponent } from './components/pages/public/cms-public-page/cms-public-page.component';\nimport { AdminCmsSettingsListComponent } from './components/pages/admin/cms/settings/list/admin-cms-settings-list.component';\nimport { AdminCmsFilesListComponent } from './components/pages/admin/cms/files/list/admin-cms-files-list.component';\nimport { AdminCmsCssJsComponent } from './components/pages/admin/cms/css-js/admin-cms-css-js.component';\nimport { AdminRepairCenterListComponent } from 'src/app/components/pages/admin/repair-center/list/admin-repair-center-list.component';\nimport { InputnumberfieldComponent } from 'src/app/components/ui/inputs/inputnumberfield/inputnumberfield.component';\nimport { AdminInvoiceCreateComponent } from 'src/app/components/pages/admin/invoice/create/admin-invoice-create.component';\nimport { SelectPartnerDialogComponent } from 'src/app/components/ui/dialogs/select-partner-dialog/select-partner-dialog.component';\nimport { InputcurrencyfieldComponent } from 'src/app/components/ui/inputs/inputcurrencyfield/inputcurrencyfield.component';\nimport { RepairCenterInvoiceListComponent } from 'src/app/components/pages/repair-center/invoice/list/repair-center-invoice-list.component';\nimport { PrintDialogRepairCenterComponent } from 'src/app/components/ui/dialogs/print-dialog-repair-center.component';\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\nimport { MatProgressSpinnerModule, MatSpinner } from '@angular/material/progress-spinner';\nimport { MatSnackBarModule } from '@angular/material/snack-bar';\nimport { ErrorComponent } from './service/feedback.service';\nimport { OnePagerComponent } from './components/pages/public/one-pager/one-pager.component';\nimport { NavbarPublicComponent } from './components/ui/navbars/navbar-public/navbar-public.component';\nimport { FooterPublicComponent } from './components/ui/footer/footer-public/footer-public.component';\nimport { ServicePartnerDashboardComponent } from './components/pages/service-partner/dashboard/service-partner-dashboard.component';\nimport { AdminRepairCenterAssignmentComponent } from './components/pages/admin/repair-center/assignment-test/admin-repair-center-assignment.component';\nimport { PriceListRequestDialogComponent } from 'src/app/components/ui/dialogs/price-list-request-dialog.component';\nimport { NewsletterDialogComponent } from 'src/app/components/ui/dialogs/newsletter-dialog.component';\nimport { GeneralConfirmDialogComponent } from './components/ui/dialogs/general-confirm-dialog.component';\nimport { MultiLabelViewerComponent } from './components/ui/dialogs/multi-label-viewer.component';\nimport { RalColorPickerDialogComponent } from './components/ui/dialogs/ral-color-picker-dialog.component';\n\n@NgModule({\n declarations: [\n AppComponent,\n ResetPasswordComponent,\n ConfirmEmailComponent,\n IndexComponent,\n SearchComponent,\n RegisterFormComponent,\n InputfieldComponent,\n InputnumberfieldComponent,\n InputcurrencyfieldComponent,\n ServicePartnerOrderFormComponent,\n ServicePartnerOrderSuccessComponent,\n ServicePartnerOrderPackagingComponent,\n ServicePartnerOrderPickupComponent,\n InputselectComponent,\n ImageselectComponent,\n RegisterSuccessComponent,\n AdminServicePartnersComponent,\n GridComponent,\n GridRowComponent,\n GridDataComponent,\n GridHeaderComponent,\n AdminServicePartnerDetailsComponent,\n CollapsableComponent,\n CollapsableHeaderComponent,\n CollapsableContentComponent,\n FilterInputfieldComponent,\n FilterInputselectComponent,\n FilterTrashComponent,\n FilterComponent,\n AdminRepairOrderListComponent,\n AdminRepairOrderDetailsComponent,\n AdminInvoiceListComponent,\n AdminInvoiceDetailsComponent,\n AdminInvoiceCreateComponent,\n AdminServicePartnerCreateComponent,\n AdminRepairCenterListComponent,\n AdminRepairCenterDetailsComponent,\n DatePipe,\n DateIfPipe,\n SecurePipe,\n CamelCasePipe,\n AmountPipe,\n OrderIdPipe,\n SanitizeHtmlPipe,\n InputselectenumComponent,\n RepairCenterDashboardComponent,\n RepairCenterOrderProcessComponent,\n RepairCenterOrderProcessImageUploadComponent,\n RepairCenterOrderListComponent,\n RepairCenterOrderDetailsComponent,\n RepairCenterInvoiceListComponent,\n AdminRepairCenterAssignmentComponent,\n ServicePartnerOrderListComponent,\n ServicePartnerOrderDetailsComponent,\n ServicePartnerInvoiceListComponent,\n ServicePartnerSettingsComponent,\n ServicePartnerDashboardComponent,\n MessageDialogComponent,\n ConfirmDialogComponent,\n ViewerDialogComponent,\n PrintDialogRepairCenterComponent,\n SelectPartnerDialogComponent,\n CmsPageComponent,\n RegisterFormFracComponent,\n AdminCmsPagesListComponent,\n AdminCmsPagesDetailsComponent,\n AdminCmsPreviewDialogComponent,\n CmsPublicPageComponent,\n AdminCmsSettingsListComponent,\n AdminCmsFilesListComponent,\n AdminCmsCssJsComponent,\n ErrorComponent,\n OnePagerComponent,\n NavbarPublicComponent,\n FooterPublicComponent,\n PriceListRequestDialogComponent,\n NewsletterDialogComponent,\n GeneralConfirmDialogComponent,\n MultiLabelViewerComponent,\n RalColorPickerDialogComponent\n ],\n imports: [\n BrowserModule,\n FormsModule,\n ReactiveFormsModule,\n HttpClientModule,\n TranslateModule.forRoot({\n loader: {\n provide: TranslateLoader,\n useFactory: HttpLoaderFactory,\n deps: [HttpClient]\n }\n }),\n AngularFontAwesomeModule,\n BsDropdownModule.forRoot(),\n TooltipModule.forRoot(),\n ModalModule.forRoot(),\n CollapseModule.forRoot(),\n AgmCoreModule.forRoot({\n apiKey: GOOGLE_MAPS_API_KEY,\n }),\n AppRoutingModule,\n BrowserAnimationsModule,\n MatProgressSpinnerModule,\n MatSnackBarModule,\n ],\n providers: [\n {\n provide: HTTP_INTERCEPTORS,\n useClass: AuthHttpInterceptor,\n multi: true\n }\n ],\n bootstrap: [AppComponent],\n entryComponents: [\n MessageDialogComponent,\n ConfirmDialogComponent,\n ViewerDialogComponent,\n PrintDialogRepairCenterComponent,\n SelectPartnerDialogComponent,\n AdminCmsPreviewDialogComponent,\n ErrorComponent,\n PriceListRequestDialogComponent,\n NewsletterDialogComponent,\n GeneralConfirmDialogComponent,\n MultiLabelViewerComponent,\n RalColorPickerDialogComponent\n ]\n})\nexport class AppModule { }\n\nexport function HttpLoaderFactory(http: HttpClient) {\n return new TranslateHttpLoader(http);\n}\n","module.exports = \"
\\n \\n
\"","module.exports = \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvcGFnZXMvYWRtaW4vYWRtaW4tc2VydmljZS1wYXJ0bmVycy9jcmVhdGUvYWRtaW4tc2VydmljZS1wYXJ0bmVyLWNyZWF0ZS5jb21wb25lbnQubGVzcyJ9 */\"","import { Component, OnInit, ViewChild } from '@angular/core';\nimport { REST_SERVER } from 'src/app/config';\nimport { ServicePartnerService } from 'src/app/service/service-partner.service';\nimport { GridComponent } from 'src/app/components/ui/grid/grid.component';\nimport { ActivatedRoute } from '@angular/router';\nimport { ServicePartner } from 'src/app/model/service-partner.model';\nimport { ConfirmDialogComponent } from 'src/app/components/ui/dialogs/confirm-dialog.component';\nimport { BsModalService, BsModalRef } from 'ngx-bootstrap/modal';\n\n@Component({\n selector: 'app-admin-service-partner-create',\n templateUrl: './admin-service-partner-create.component.html',\n styleUrls: ['./admin-service-partner-create.component.less']\n})\nexport class AdminServicePartnerCreateComponent implements OnInit {\n\n ngOnInit() {\n }\n}\n","module.exports = \"
\\n
\\n
\\n
\\n

Kundendaten Nr. {{ servicePartner && servicePartner.id }}

\\n
\\n
\\n
\\n
\\n \\n \\n \\n
\\n
\\n
\\n
\\n \\n \\n {{ ('service_partner_' + row.key) | camelCase | translate }}\\n {{ ('' + (row.value === null ? '' : row.value)) | dateIf | translate }}\\n \\n \\n
\\n
\\n
\\n
\\n
\\n
\\n\\n
\\n
\\n
\\n

Dateien

\\n \\n \\n \\n {{ extractFilename(row) }}\\n \\n \\n \\n\\n

Auf Karte anzeigen

\\n  Auf Karte anzeigen\\n \\n
\\n
\\n

Aktuelle Aufträge

\\n \\n \\n #\\n Auftragsdatum\\n Anzahl beschädigter Felgen\\n Felgen Art\\n Felgen Zoll\\n \\n Aktionen\\n \\n \\n {{ row | orderId }}\\n {{ row.orderDate | date }}\\n {{ row.rimCount }}\\n {{ row.rimVarnish }}\\n {{ row.rimDiameter }}\\n \\n \\n
\\n \\n \\n
\\n
\\n
\\n
\\n
\\n
\\n
\"","module.exports = \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvcGFnZXMvYWRtaW4vYWRtaW4tc2VydmljZS1wYXJ0bmVycy9kZXRhaWxzL2FkbWluLXNlcnZpY2UtcGFydG5lci1kZXRhaWxzLmNvbXBvbmVudC5sZXNzIn0= */\"","import { Component, OnInit } from '@angular/core';\nimport { ActivatedRoute } from '@angular/router';\nimport { Subscription } from 'rxjs/internal/Subscription';\nimport { ServicePartnerService } from 'src/app/service/service-partner.service';\nimport { REST_SERVER } from 'src/app/config';\nimport { UserService } from 'src/app/service/user.service';\nimport { ConfirmDialogComponent } from 'src/app/components/ui/dialogs/confirm-dialog.component';\nimport { BsModalService, BsModalRef } from 'ngx-bootstrap/modal';\nimport { Location } from '@angular/common';\n\n@Component({\n selector: 'app-admin-service-partner-details',\n templateUrl: './admin-service-partner-details.component.html',\n styleUrls: ['./admin-service-partner-details.component.less']\n})\nexport class AdminServicePartnerDetailsComponent implements OnInit {\n\n servicePartnerData = [];\n \n currentOrdersFilterJson:string = null;\n\n public servicePartner = null;\n public servicePartnerFiles = [];\n\n constructor(\n activatedRoute:ActivatedRoute,\n private _servicePartnerService:ServicePartnerService,\n private _userService:UserService,\n private _modalService:BsModalService,\n private _location:Location,\n ) { \n activatedRoute.params.subscribe(params => {\n this._loadServicePartner(params.id);\n this._loadServicePartnerFiles(params.id);\n this.currentOrdersFilterJson = JSON.stringify({\n where: {\n servicePartnerId: {\n eq: params.id\n }\n }\n });\n });\n }\n\n ngOnInit() {\n }\n\n private async _loadServicePartner(id:number):Promise {\n this.servicePartner = await this._servicePartnerService.load(id);\n let servicePartnerData = [];\n let servicePartner:any = {...this.servicePartner};\n delete servicePartner.phone;\n delete servicePartner.lat;\n delete servicePartner.lng;\n delete servicePartner.displayOnMap;\n delete servicePartner.confirmEmailKey;\n delete servicePartner.user;\n servicePartner.state = 'service_partner_state_' + servicePartner.state.toLowerCase();\n let deliveryAddress = {...servicePartner.deliveryAddress};\n delete servicePartner.deliveryAddress;\n let invoiceAddress = {...servicePartner.invoiceAddress};\n delete servicePartner.invoiceAddress;\n\n for(let key in servicePartner) {\n let item = { key, value: servicePartner[key] };\n servicePartnerData.push(item);\n }\n \n delete deliveryAddress.id;\n delete deliveryAddress.name;\n deliveryAddress.contact = deliveryAddress.contactFirstName + \" \" + deliveryAddress.contactLastName;\n delete deliveryAddress.contactFirstName;\n delete deliveryAddress.contactLastName;\n for(let key in deliveryAddress) {\n let item = { key: `deliveryAddress_${key}`, value: deliveryAddress[key] };\n servicePartnerData.push(item);\n }\n delete invoiceAddress.id;\n delete invoiceAddress.name;\n invoiceAddress.contact = invoiceAddress.contactFirstName + \" \" + invoiceAddress.contactLastName;\n delete invoiceAddress.contactFirstName;\n delete invoiceAddress.contactLastName;\n for(let key in invoiceAddress) {\n let item = { key: `invoiceAddress_${key}`, value: invoiceAddress[key] };\n servicePartnerData.push(item);\n }\n this.servicePartnerData = servicePartnerData;\n }\n\n private async _loadServicePartnerFiles(id:number):Promise {\n this.servicePartnerFiles = await this._servicePartnerService.getDocumentNames(id);\n }\n\n getBaseUrlOrders():string {\n return REST_SERVER + \"/repair-orders\";\n }\n\n extractFilename(filename:string) {\n return decodeURIComponent(filename);\n }\n\n calcDocumentDownloadHref(filename):string {\n let token:string = this._userService.token;\n return `${REST_SERVER}/service-partners/${this.servicePartner.id}/documents/${filename}?access_token=${token}`;\n }\n\n deleteDocument(filename):void {\n let initialState = {\n title: \"Dokument löschen\",\n msg: `Wollen Sie dieses Dokument wirklich löschen?`,\n }\n let ref:BsModalRef = this._modalService.show(ConfirmDialogComponent, {initialState});\n ref.content.onClose.subscribe(async result => {\n if(result) {\n await this._servicePartnerService.deleteDocument(this.servicePartner.id, filename);\n this._loadServicePartnerFiles(this.servicePartner.id);\n }\n });\n }\n\n handleFileSelect(evt):void {\n let files:File[] = evt.target.files;\n if(files.length > 0) {\n let file:File = files[0];\n \n var reader = new FileReader();\n \n // Closure to capture the file information.\n reader.onload = async (evt:any) => {\n let data:ArrayBuffer = evt.target.result;\n await this._servicePartnerService.addDocument(this.servicePartner.id, file.name, file.type, data);\n this._loadServicePartnerFiles(this.servicePartner.id);\n };\n\n // Read in the image file as a data URL.\n reader.readAsArrayBuffer(file);\n }\n }\n\n goBack() {\n this._location.back();\n }\n\n public async activateServicePartner():Promise {\n await this._servicePartnerService.activate(this.servicePartner);\n this._loadServicePartner(this.servicePartner.id);\n }\n\n public async denyServicePartner():Promise {\n await this._servicePartnerService.denyActivation(this.servicePartner);\n this._loadServicePartner(this.servicePartner.id);\n }\n\n public async saveDisplayOnMap():Promise {\n this._servicePartnerService.saveDisplayOnMap(this.servicePartner.id, this.servicePartner.displayOnMap);\n }\n}\n","module.exports = \"
\\n \\n \\n #\\n Firmenname\\n Ansprechpartner\\n E-Mail-Adresse\\n \\n Ort\\n letzter Login\\n Status\\n Aktionen\\n \\n \\n {{ row.id }}\\n {{ row.name }}\\n {{ row.invoiceAddress && (row.invoiceAddress.contactFirstName + \\\" \\\" + row.invoiceAddress.contactLastName) }}\\n {{ row.user && row.user.email }}\\n \\n {{ row.invoiceAddress && row.invoiceAddress.city }}\\n {{ row.user && getFormatedLoginDate(row) }}\\n {{ ('service_partner_state_' + row.state.toLowerCase()) | translate }}\\n \\n
\\n \\n \\n
\\n
\\n
\\n
\\n
\"","module.exports = \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvcGFnZXMvYWRtaW4vYWRtaW4tc2VydmljZS1wYXJ0bmVycy9saXN0L2FkbWluLXNlcnZpY2UtcGFydG5lcnMuY29tcG9uZW50Lmxlc3MifQ== */\"","import { Component, OnInit, ViewChild } from '@angular/core';\nimport { REST_SERVER } from 'src/app/config';\nimport { ServicePartnerService } from 'src/app/service/service-partner.service';\nimport { GridComponent } from 'src/app/components/ui/grid/grid.component';\nimport { ActivatedRoute } from '@angular/router';\nimport { ServicePartner } from 'src/app/model/service-partner.model';\nimport { ConfirmDialogComponent } from 'src/app/components/ui/dialogs/confirm-dialog.component';\nimport { BsModalService, BsModalRef } from 'ngx-bootstrap/modal';\n\nenum ServicePartnerActions {\n ACTIVATE,\n DENY_ACTIVATION,\n DELETE,\n}\n\n@Component({\n selector: 'app-admin-service-partners',\n templateUrl: './admin-service-partners.component.html',\n styleUrls: ['./admin-service-partners.component.less']\n})\nexport class AdminServicePartnersComponent implements OnInit {\n\n @ViewChild('grid') private _grid:GridComponent;\n\n public loadingGrid:boolean = false;\n public totalCnt:number = 0;\n public title:string = '';\n public state:string = '';\n\n public selectionStatus = [\n { key: \"status_active\", val: \"Aktiv\" }, \n { key: \"status_inactive\", val: \"Inaktiv\" },\n ]\n\n filterDesc = {\n email: {\n type: \"string\",\n comp: \"like\",\n label: \"E-Mail\",\n },\n name: {\n type: \"string\",\n comp: \"like\",\n label: \"Firmenname\",\n },\n state: {\n value: \"ACTIVE\",\n comp: \"eq\",\n },\n }\n\n constructor(\n activatedRoute:ActivatedRoute,\n private _servicePartnerService:ServicePartnerService,\n private _modalService:BsModalService,\n ) { \n activatedRoute.params.subscribe(params => {\n this.state = params.state;\n let filterDesc:any = {...this.filterDesc};\n delete(filterDesc.state);\n\n if(params.state === 'new') {\n filterDesc.state = {\n value: [\"NEW\", \"EMAIL_CONFIRMED\"],\n comp: \"inq\",\n };\n this.title = 'Unbezahlte Rechnungen';\n } else if(params.state === 'denied') {\n filterDesc.state = {\n value: \"ACTIVATION_DENIED\",\n comp: \"eq\",\n }\n this.title = 'Abgelehnte Anfragen';\n } else if(params.state === 'active') {\n filterDesc.state = {\n value: \"ACTIVE\",\n comp: \"eq\",\n };\n this.title = 'Bezahlte Rechnungen';\n } \n this.filterDesc = filterDesc;\n });\n }\n\n ngOnInit() {\n }\n\n public getBaseUrl():string {\n return REST_SERVER + \"/service-partners\";\n }\n\n public getActionsForServicePartner(servicePartner:ServicePartner):any {\n let result = [];\n if(servicePartner.state === 'EMAIL_CONFIRMED') {\n result.push({ key: ServicePartnerActions.ACTIVATE, val: 'Kunde freigeben' });\n result.push({ key: ServicePartnerActions.DENY_ACTIVATION, val: 'Kunde ablehnen' });\n } else if(servicePartner.state === 'ACTIVATION_DENIED') {\n result.push({ key: ServicePartnerActions.ACTIVATE, val: 'Kunde freigeben' });\n }\n result.push({ key: ServicePartnerActions.DELETE, val: 'Kunde löschen'});\n return result;\n }\n\n public async actionSelected(servicePartner, action):Promise {\n switch(action.key) {\n case ServicePartnerActions.ACTIVATE:\n await this._servicePartnerService.activate(servicePartner);\n this._grid.update();\n break;\n case ServicePartnerActions.DENY_ACTIVATION:\n await this._servicePartnerService.denyActivation(servicePartner);\n this._grid.update();\n break;\n case ServicePartnerActions.DELETE:\n let initialState = {\n title: \"Kunden löschen\",\n msg: `Wollen Sie diesen Kunden wirklich löschen?`,\n }\n let ref:BsModalRef = this._modalService.show(ConfirmDialogComponent, {initialState});\n ref.content.onClose.subscribe(async result => {\n if(result) {\n await this._servicePartnerService.deleteServicePartner(servicePartner);\n this._grid.update();\n }\n });\n break;\n }\n }\n\n public getFormatedLoginDate(data:any):string\n {\n if(data.user.lastLogin)\n {\n let dateTest: Date = new Date(data.user.lastLogin);\n return dateTest.toLocaleDateString('de-DE', {day: 'numeric', month: 'short', year: 'numeric', hour:'numeric', minute: 'numeric'});\n } else \n {\n return \"kein login\";\n }\n }\n}\n","module.exports = \"
\\n
\\n
\\n
\\n
\\n \\n

CSS

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

JS

\\n
\\n
\\n
\\n \\n
\\n
\\n
\\n
\\n
\\n
\"","module.exports = \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvcGFnZXMvYWRtaW4vY21zL2Nzcy1qcy9hZG1pbi1jbXMtY3NzLWpzLmNvbXBvbmVudC5sZXNzIn0= */\"","import { Component, OnInit } from '@angular/core';\nimport { Router, ActivatedRoute } from '@angular/router';\nimport { Location } from '@angular/common';\nimport { Subscription } from 'rxjs/internal/Subscription';\nimport { CmsService } from 'src/app/service/cms.service';\nimport { BsModalService, BsModalRef } from 'ngx-bootstrap/modal';\nimport { REST_SERVER } from 'src/app/config';\n\n@Component({\n selector: 'app-admin-cms-css-js',\n templateUrl: './admin-cms-css-js.component.html',\n styleUrls: ['./admin-cms-css-js.component.less']\n})\nexport class AdminCmsCssJsComponent implements OnInit {\n\n expanded:any = {};\n showHtml:any = {};\n\n css:string = '';\n js:string = '';\n\n currentOrdersFilterJson:string = null;\n\n public servicePartner = null;\n servicePartnerData = [];\n\n constructor(\n activatedRoute:ActivatedRoute,\n private _location:Location,\n private _cmsService:CmsService,\n private _modalService: BsModalService,\n ) { \n activatedRoute.params.subscribe((params) => {\n this._loadCss();\n this._loadJs();\n });\n }\n\n private async _loadCss():Promise {\n this.css = await this._cmsService.loadAdminCss();\n }\n\n private async _loadJs():Promise {\n this.js = await this._cmsService.loadAdminJs();\n }\n\n ngOnInit() {\n }\n\n\n async saveCss():Promise {\n await this._cmsService.saveAdminCss(this.css);\n }\n\n async saveJs():Promise {\n await this._cmsService.saveAdminJs(this.js);\n }\n}\n","module.exports = \"
\\n
\\n
\\n
\\n

Dateien

\\n
\\n
\\n
\\n
\\n \\n
\\n
\\n\\n \\n \\n Dateiname\\n Pfad\\n \\n \\n \\n {{ row }}\\n {{ calcDisplayPath(row) }}\\n \\n\\n \\n \\n \\n\\n
\\n
\\n
\\n
\"","module.exports = \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvcGFnZXMvYWRtaW4vY21zL2ZpbGVzL2xpc3QvYWRtaW4tY21zLWZpbGVzLWxpc3QuY29tcG9uZW50Lmxlc3MifQ== */\"","import { Component, OnInit, ViewChild } from '@angular/core';\nimport { REST_SERVER } from 'src/app/config';\nimport { Router } from '@angular/router';\nimport { RepairOrder } from 'src/app/model/repair-order.model';\nimport { CmsService } from 'src/app/service/cms.service';\nimport { GridComponent } from 'src/app/components/ui/grid/grid.component';\nimport { BsModalService, BsModalRef } from 'ngx-bootstrap/modal';\nimport { ConfirmDialogComponent } from '../../../../../ui/dialogs/confirm-dialog.component';\n\nenum RepairOrderActions {\n CREATE_INVOICE\n};\n\n@Component({\n selector: 'app-cms-files-list',\n templateUrl: './admin-cms-files-list.component.html',\n styleUrls: ['./admin-cms-files-list.component.less']\n})\nexport class AdminCmsFilesListComponent implements OnInit {\n @ViewChild('grid') private _grid:GridComponent;\n\n public loadingGrid:boolean = false;\n public totalCnt:number = 0;\n public title:string = '';\n public state:string = '';\n\n public selectionStatus = [\n { key: \"status_active\", val: \"Aktiv\" }, \n { key: \"status_inactive\", val: \"Inaktiv\" },\n ]\n\n filterDesc = {};\n\n constructor(\n private _cmsService:CmsService,\n private _router:Router,\n private _modalService: BsModalService,\n ) { \n \n }\n\n ngOnInit() {\n }\n\n public getBaseUrl():string {\n return REST_SERVER + \"/cms/admin/files\";\n }\n\n public calcPath(row):string {\n return `${REST_SERVER}/cms/files/` + encodeURIComponent(row);\n }\n\n public calcDisplayPath(row):string {\n return '###api_url###/cms/files/' + encodeURIComponent(row);\n }\n\n handleFileSelect(evt):void {\n let files:File[] = evt.target.files;\n if(files.length > 0) {\n let file:File = files[0];\n \n var reader = new FileReader();\n \n // Closure to capture the file information.\n reader.onload = async (evt:any) => {\n let data:ArrayBuffer = evt.target.result;\n await this._cmsService.uploadFile(file.name, file.type, data);\n this._grid.update();\n };\n\n // Read in the image file as a data URL.\n reader.readAsArrayBuffer(file);\n }\n }\n\n deleteFile(filename):void {\n let initialState = {\n title: \"Datei löschen\",\n msg: `Wollen Sie wirklich die Daten ${filename} löschen?`,\n }\n let ref:BsModalRef = this._modalService.show(ConfirmDialogComponent, {initialState});\n ref.content.onClose.subscribe(async result => {\n if(result) {\n await this._cmsService.deleteFile(filename);\n this._grid.update();\n }\n });\n }\n}\n","module.exports = \"
\\n
\\n
\\n
\\n

Seite /{{ cmsPage.path }}

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

{{ block.key }}

\\n
\\n
\\n
\\n
\\n
\\n \\n
\\n
\\n
\\n
\\n  \\n
\\n
\\n
\\n
\\n  \\n
\\n
\\n
\\n
\\n \\n \\n
\\n
\\n
\\n \\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\"","module.exports = \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvcGFnZXMvYWRtaW4vY21zL3BhZ2VzL2RldGFpbHMvYWRtaW4tY21zLXBhZ2VzLWRldGFpbHMuY29tcG9uZW50Lmxlc3MifQ== */\"","import { Component, OnInit } from '@angular/core';\nimport { Router, ActivatedRoute } from '@angular/router';\nimport { Location } from '@angular/common';\nimport { Subscription } from 'rxjs/internal/Subscription';\nimport { CmsService } from 'src/app/service/cms.service';\nimport { BsModalService, BsModalRef } from 'ngx-bootstrap/modal';\nimport { CmsPage } from '../../../../../../model/cms-page.model';\nimport { CmsBlock } from '../../../../../../model/cms-block.model';\nimport { AdminCmsPreviewDialogComponent } from './admin-cms-preview-dialog.component';\nimport { ConfirmDialogComponent } from '../../../../../ui/dialogs/confirm-dialog.component';\nimport { REST_SERVER } from 'src/app/config';\n\n@Component({\n selector: 'app-admin-cms-pages-details',\n templateUrl: './admin-cms-pages-details.component.html',\n styleUrls: ['./admin-cms-pages-details.component.less']\n})\nexport class AdminCmsPagesDetailsComponent implements OnInit {\n\n pageIdent:string;\n cmsPage:CmsPage = new CmsPage();\n settings:any = {};\n\n expanded:any = {};\n showHtml:any = {};\n\n currentOrdersFilterJson:string = null;\n\n public servicePartner = null;\n servicePartnerData = [];\n\n constructor(\n activatedRoute:ActivatedRoute,\n private _location:Location,\n private _cmsService:CmsService,\n private _modalService: BsModalService,\n ) { \n activatedRoute.params.subscribe((params) => {\n this.pageIdent = params.ident;\n if(params.ident2) {\n this.pageIdent += '/' + params.ident2;\n }\n this.loadCurrentPage();\n this._loadSettings();\n });\n }\n\n async loadCurrentPage():Promise {\n this.cmsPage = await this._cmsService.loadAdmin(this.pageIdent);\n }\n\n async _loadSettings():Promise {\n this.settings = await this._cmsService.loadSettingsDict();\n }\n\n ngOnInit() {\n }\n\n swapBlocks(a:number, b:number):void {\n let first = Math.min(a, b);\n let second = Math.max(a, b);\n\n let removed = this.cmsPage.blocks.splice(second, 1);\n removed = this.cmsPage.blocks.splice(first, 1, ...removed);\n this.cmsPage.blocks.splice(second, 0, ...removed);\n }\n\n addBlock():void {\n let newBlock = new CmsBlock();\n newBlock.key = \"neuer-block\";\n newBlock.html = \"

Text

\";\n this.cmsPage.blocks.unshift(newBlock);\n }\n\n deleteBlock(idx:number):void {\n this.cmsPage.blocks.splice(idx, 1);\n }\n\n preview():void {\n let previewPage:CmsPage = {...this.cmsPage};\n let previewBlocks:CmsBlock[] = [];\n for(let block of previewPage.blocks) {\n if(block.active) {\n let previewBlock = {...block};\n previewBlock.html = previewBlock.html.replace(/###([a-zA-Z0-9_]+?)###/g, (substring, key) => {\n return this.settings[key];\n });\n previewBlocks.push(previewBlock);\n }\n }\n previewPage.blocks = previewBlocks;\n\n let initialState = {\n cmsPage: previewPage,\n //path: this.calcAinDownloadHref(),\n //msg: \"Bitte ausdrucken und jeder einzelnen Felge beilegen\",\n }\n this._modalService.show(AdminCmsPreviewDialogComponent, {initialState, class: 'modal-xl'});\n }\n\n async save():Promise {\n await this._cmsService.saveAdmin(this.cmsPage);\n }\n\n reset():void {\n let initialState = {\n title: \"Änderungen verwerfen\",\n msg: `Wollen Sie wirklich alle Änderungen an dieser Seite verwerfen?`,\n }\n let ref:BsModalRef = this._modalService.show(ConfirmDialogComponent, {initialState});\n ref.content.onClose.subscribe(async result => {\n if(result) {\n await this.loadCurrentPage();\n }\n });\n }\n\n assembleWysiwyg(idx:number):string {\n let html = this.cmsPage.blocks[idx].html;\n html = html.replace(/###api_url###/g, REST_SERVER);\n return html;\n }\n\n updateWysiwyg(idx:number, evt):void {\n let newHtml = evt.target.innerHTML;\n newHtml = newHtml.replace(new RegExp(REST_SERVER, 'g'), '###api_url###');\n this.cmsPage.blocks[idx].html = newHtml;\n //console.log(idx, evt, newHtml);\n }\n \n calcPageId():string {\n let result:string = 'page';\n if(this.cmsPage && this.cmsPage.path) {\n result += '-' + this.cmsPage.path.replace(/\\//g, '-');\n }\n return result;\n }\n}\n","import { Component, OnInit } from '@angular/core';\nimport { BsModalRef } from 'ngx-bootstrap/modal';\nimport { Subject } from 'rxjs';\nimport { DomSanitizer, SafeUrl } from '@angular/platform-browser';\nimport { CmsPage } from '../../../../../../model/cms-page.model';\n\n@Component({\n selector: 'admin-cms-preview-dialog',\n template: `\n
\n

{{cmsPage.title}}

\n \n
\n
\n \n
\n
\n \n
\n `\n })\n \n export class AdminCmsPreviewDialogComponent implements OnInit {\n closeBtnName: string = \"OK\";\n path:string;\n cmsPage:CmsPage;\n\n public onClose: Subject = new Subject();\n \n constructor(public bsModalRef: BsModalRef, \n private _sanitizer:DomSanitizer) {}\n \n ngOnInit() {\n \n }\n\n public onConfirm(): void {\n this.onClose.next();\n this.bsModalRef.hide();\n }\n\n get sanitizedPath() {\n return this._sanitizer.bypassSecurityTrustResourceUrl(this.path);\n } \n }","module.exports = \"
\\n
\\n
\\n
\\n

{{ title }}

\\n
\\n
\\n
\\n
\\n  \\n
\\n
\\n\\n \\n \\n Pfad\\n Titel\\n Aktionen\\n \\n \\n {{ row.path }}\\n {{ row.title }}\\n \\n
\\n \\n \\n
\\n
\\n
\\n
\\n\\n
\\n
\\n
\\n
\"","module.exports = \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvcGFnZXMvYWRtaW4vY21zL3BhZ2VzL2xpc3QvYWRtaW4tY21zLXBhZ2VzLWxpc3QuY29tcG9uZW50Lmxlc3MifQ== */\"","import { Component, OnInit, ViewChild } from '@angular/core';\nimport { REST_SERVER } from 'src/app/config';\nimport { Router } from '@angular/router';\nimport { RepairOrder } from 'src/app/model/repair-order.model';\nimport { InvoiceService } from 'src/app/service/invoice.service';\nimport { GridComponent } from 'src/app/components/ui/grid/grid.component';\nimport { ConfirmDialogComponent } from 'src/app/components/ui/dialogs/confirm-dialog.component';\nimport { BsModalService, BsModalRef } from 'ngx-bootstrap/modal';\nimport { CmsPage } from 'src/app/model/cms-page.model';\nimport { CmsService } from 'src/app/service/cms.service';\n\nenum CmsPageActions {\n DELETE\n};\n\n@Component({\n selector: 'app-cms-pages-list',\n templateUrl: './admin-cms-pages-list.component.html',\n styleUrls: ['./admin-cms-pages-list.component.less']\n})\nexport class AdminCmsPagesListComponent implements OnInit {\n @ViewChild('grid') private _grid:GridComponent;\n\n public loadingGrid:boolean = false;\n public totalCnt:number = 0;\n public title:string = '';\n public state:string = '';\n\n public selectionStatus = [\n { key: \"status_active\", val: \"Aktiv\" }, \n { key: \"status_inactive\", val: \"Inaktiv\" },\n ]\n\n filterDesc = {};\n\n constructor(\n private _invoiceService:InvoiceService,\n private _router:Router,\n private _modalService:BsModalService,\n private _cmsService:CmsService,\n ) { \n \n }\n\n ngOnInit() {\n }\n\n public getBaseUrl():string {\n return REST_SERVER + \"/cms/admin/pages\";\n }\n\n public getActionsForRepairOrder(repairOrder:RepairOrder) {\n let result = [];\n if(!repairOrder.invoiceIdent) {\n result.push({ key: CmsPageActions.DELETE, val: 'Seite löschen' });\n }\n return result;\n }\n\n public async actionSelected(cmsPage:CmsPage, action):Promise {\n switch(action.key) {\n case CmsPageActions.DELETE:\n let initialState = {\n title: \"Seite löschen\",\n msg: `Wollen Sie wirklich diese Seite löschen?`,\n }\n let ref:BsModalRef = this._modalService.show(ConfirmDialogComponent, {initialState});\n ref.content.onClose.subscribe(async result => {\n if(result) {\n await this._cmsService.deletePage(cmsPage);\n this._grid.update();\n }\n });\n break;\n }\n }\n\n public newPage() {\n this._router.navigate([\"/admin/cms/pages/details\"]);\n }\n}\n","module.exports = \"
\\n
\\n
\\n
\\n

Einstellungen

\\n
\\n
\\n\\n \\n \\n Bezeichnung\\n Code\\n Wert\\n \\n \\n \\n {{ row.desc }}\\n {{ row.key }}\\n \\n \\n\\n \\n \\n \\n\\n
\\n
\\n
\\n
\"","module.exports = \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvcGFnZXMvYWRtaW4vY21zL3NldHRpbmdzL2xpc3QvYWRtaW4tY21zLXNldHRpbmdzLWxpc3QuY29tcG9uZW50Lmxlc3MifQ== */\"","import { Component, OnInit, ViewChild } from '@angular/core';\nimport { REST_SERVER } from 'src/app/config';\nimport { Router } from '@angular/router';\nimport { RepairOrder } from 'src/app/model/repair-order.model';\nimport { CmsService } from 'src/app/service/cms.service';\nimport { GridComponent } from 'src/app/components/ui/grid/grid.component';\n\nenum RepairOrderActions {\n CREATE_INVOICE\n};\n\n@Component({\n selector: 'app-cms-settings-list',\n templateUrl: './admin-cms-settings-list.component.html',\n styleUrls: ['./admin-cms-settings-list.component.less']\n})\nexport class AdminCmsSettingsListComponent implements OnInit {\n @ViewChild('grid') private _grid:GridComponent;\n\n public loadingGrid:boolean = false;\n public totalCnt:number = 0;\n public title:string = '';\n public state:string = '';\n\n public selectionStatus = [\n { key: \"status_active\", val: \"Aktiv\" }, \n { key: \"status_inactive\", val: \"Inaktiv\" },\n ]\n\n filterDesc = {};\n\n constructor(\n private _cmsService:CmsService,\n private _router:Router,\n ) { \n \n }\n\n ngOnInit() {\n }\n\n public getBaseUrl():string {\n return REST_SERVER + \"/cms/admin/settings\";\n }\n\n public saveSetting(setting) {\n this._cmsService.saveSetting(setting);\n }\n}\n","module.exports = \"
\\n \\n\\n
\\n
\\n
\\n
\\n
\\n

Art

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

Empfänger

\\n
\\n
\\n
\\n
\\n
    0\\\" class=\\\"errors\\\">\\n
  • {{ err }}
  • \\n
\\n
\\n
\\n
\\n
\\n \\n
\\n
\\n
\\n
\\n \\n
\\n
\\n
\\n
\\n \\n
\\n
\\n \\n
\\n
\\n
\\n
\\n \\n
\\n
\\n \\n
\\n
\\n
\\n
\\n \\n
\\n
\\n \\n
\\n
\\n
\\n
\\n
\\n
\\n\\n
\\n
\\n
\\n
\\n

Posten

\\n
\\n
\\n
\\n
\\n \\n
\\n
\\n \\n
\\n
\\n \\n
\\n
\\n \\n
\\n
\\n
\\n
\\n \\n
\\n
\\n
\\n
\\n \\n
\\n
\\n
\\n
\\n \\n
\\n
\\n
\\n
\\n \\n
\\n
\\n
\\n
\\n
\\n
\\n\\n
\\n \\n
\\n
\\n
\"","module.exports = \".jumbotron.main {\\n background-image: url('/assets/img/login.jpg');\\n width: 100%;\\n min-height: 20vw;\\n background-position: top center;\\n border-radius: 0;\\n background-position-y: 60%;\\n}\\n.jumbotron.main .jumbotron-text {\\n margin-top: 7vw;\\n}\\n.jumbotron.main .jumbotron-text h1 {\\n text-transform: uppercase;\\n font-size: 200%;\\n color: #be1822;\\n}\\n@media (max-width: 767px) {\\n .jumbotron.main .jumbotron-text h1 {\\n font-size: 150%;\\n }\\n}\\n.block.bg {\\n background-color: #f8f8fa;\\n}\\n.block h2 {\\n text-transform: uppercase;\\n font-size: 150%;\\n color: #be1822;\\n}\\n@media (min-width: 768px) {\\n #frame {\\n width: 70%;\\n margin-left: auto;\\n margin-right: auto;\\n }\\n}\\n.card {\\n border: none;\\n border-radius: unset;\\n box-shadow: 0px 0px 30px 0px rgba(0, 0, 0, 0.2);\\n}\\n.card .card-header {\\n background-color: #f8f8fa;\\n border: none;\\n padding: 1.5em;\\n}\\n.card .card-header h4 {\\n text-transform: uppercase;\\n text-align: left;\\n color: #000000;\\n font-weight: bold !important;\\n font-size: 120%;\\n}\\n.card .card-body {\\n padding: 3em;\\n}\\n.errors {\\n background-color: #ffcccc;\\n color: red;\\n font-weight: bold;\\n list-style-type: none;\\n}\\n#droparea {\\n padding: 2em;\\n text-align: center;\\n border: 1px solid #be1822;\\n}\\n#droparea label {\\n cursor: pointer;\\n}\\n#droparea.dragging {\\n background-color: #fadbdd;\\n}\\n#filelist {\\n background-color: #efb4ba;\\n padding: 0.3em;\\n text-decoration: underline;\\n list-style-type: none;\\n}\\n#fileSelector {\\n width: 0.1px;\\n height: 0.1px;\\n opacity: 0;\\n overflow: hidden;\\n z-index: -1;\\n position: absolute;\\n}\\n\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9hcHAtdWkvc3JjL2FwcC9jb21wb25lbnRzL3BhZ2VzL2FkbWluL2ludm9pY2UvY3JlYXRlL2FkbWluLWludm9pY2UtY3JlYXRlLmNvbXBvbmVudC5sZXNzIiwic3JjL2FwcC9jb21wb25lbnRzL3BhZ2VzL2FkbWluL2ludm9pY2UvY3JlYXRlL2FkbWluLWludm9pY2UtY3JlYXRlLmNvbXBvbmVudC5sZXNzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0VBQ0UsOENBQUE7RUFDQSxXQUFBO0VBQ0EsZ0JBQUE7RUFDQSwrQkFBQTtFQUNBLGdCQUFBO0VBQ0EsMEJBQUE7QUNDRjtBRFBBO0VBU00sZUFBQTtBQ0NOO0FEVkE7RUFZVSx5QkFBQTtFQUNBLGVBQUE7RUFDQSxjQUFBO0FDQ1Y7QURDVTtFQUFBO0lBQ0ksZUFBQTtFQ0VaO0FBQ0Y7QURJRTtFQUNJLHlCQUFBO0FDRk47QURBQTtFQU1NLHlCQUFBO0VBQ0EsZUFBQTtFQUNBLGNBQUE7QUNITjtBRFFFO0VBQUE7SUFDRSxVQUFBO0lBQ0EsaUJBQUE7SUFDQSxrQkFBQTtFQ0xGO0FBQ0Y7QURRQTtFQUNFLFlBQUE7RUFDQSxvQkFBQTtFQUNBLCtDQUFBO0FDTkY7QURHQTtFQU1NLHlCQUFBO0VBQ0EsWUFBQTtFQUNBLGNBQUE7QUNOTjtBREZBO0VBV1UseUJBQUE7RUFDQSxnQkFBQTtFQUNBLGNBQUE7RUFDQSw0QkFBQTtFQUNBLGVBQUE7QUNOVjtBRFRBO0VBb0JNLFlBQUE7QUNSTjtBRFlBO0VBQ0UseUJBQUE7RUFDQSxVQUFBO0VBQ0EsaUJBQUE7RUFDQSxxQkFBQTtBQ1ZGO0FEYUE7RUFDRSxZQUFBO0VBQ0Esa0JBQUE7RUFDQSx5QkFBQTtBQ1hGO0FEUUE7RUFNSSxlQUFBO0FDWEo7QURjRTtFQUNFLHlCQUFBO0FDWko7QURnQkE7RUFDRSx5QkFBQTtFQUNBLGNBQUE7RUFDQSwwQkFBQTtFQUNBLHFCQUFBO0FDZEY7QURpQkE7RUFDRSxZQUFBO0VBQ0EsYUFBQTtFQUNBLFVBQUE7RUFDQSxnQkFBQTtFQUNBLFdBQUE7RUFDQSxrQkFBQTtBQ2ZGIiwiZmlsZSI6InNyYy9hcHAvY29tcG9uZW50cy9wYWdlcy9hZG1pbi9pbnZvaWNlL2NyZWF0ZS9hZG1pbi1pbnZvaWNlLWNyZWF0ZS5jb21wb25lbnQubGVzcyIsInNvdXJjZXNDb250ZW50IjpbIi5qdW1ib3Ryb24ubWFpbiB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnL2Fzc2V0cy9pbWcvbG9naW4uanBnJyk7XG4gIHdpZHRoOiAxMDAlO1xuICBtaW4taGVpZ2h0OiAyMHZ3O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgY2VudGVyO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IDYwJTtcblxuICAuanVtYm90cm9uLXRleHQge1xuICAgICAgbWFyZ2luLXRvcDogN3Z3O1xuXG4gICAgICBoMSB7XG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICBmb250LXNpemU6IDIwMCU7XG4gICAgICAgICAgY29sb3I6ICNiZTE4MjI7XG5cbiAgICAgICAgICBAbWVkaWEobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAgICAgICBmb250LXNpemU6IDE1MCU7XG4gICAgICAgICAgfVxuICAgICAgfVxuICB9XG59XG5cbi5ibG9jayB7XG4gICYuYmcge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjhmYTtcbiAgfVxuXG4gIGgyIHtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBmb250LXNpemU6IDE1MCU7XG4gICAgICBjb2xvcjogI2JlMTgyMjtcbiAgfVxufVxuXG4jZnJhbWUge1xuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICB3aWR0aDogNzAlOyBcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIH1cbn1cblxuLmNhcmQge1xuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IHVuc2V0O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDMwcHggMHB4IHJnYmEoMCwgMCwgMCwgMC4yKTsgICAgXG5cbiAgLmNhcmQtaGVhZGVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmOGY4ZmE7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICBwYWRkaW5nOiAxLjVlbTtcblxuICAgICAgaDQge1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICBjb2xvcjogIzAwMDAwMDtcbiAgICAgICAgICBmb250LXdlaWdodDogYm9sZCAhaW1wb3J0YW50O1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTIwJTtcbiAgICAgIH1cbiAgfVxuXG4gIC5jYXJkLWJvZHkge1xuICAgICAgcGFkZGluZzogM2VtO1xuICB9XG59XG5cbi5lcnJvcnMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGVuKCNmZjAwMDAsIDQwJSk7XG4gIGNvbG9yOiByZWQ7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG59XG5cbiNkcm9wYXJlYSB7XG4gIHBhZGRpbmc6IDJlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBib3JkZXI6IDFweCBzb2xpZCAjYmUxODIyO1xuXG4gIGxhYmVsIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cblxuICAmLmRyYWdnaW5nIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGVuKCNiZTE4MjIsIDUwJSk7XG4gIH1cbn1cblxuI2ZpbGVsaXN0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VmYjRiYTtcbiAgcGFkZGluZzogMC4zZW07XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG59XG5cbiNmaWxlU2VsZWN0b3Ige1xuICB3aWR0aDogMC4xcHg7XG4gIGhlaWdodDogMC4xcHg7XG4gIG9wYWNpdHk6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHotaW5kZXg6IC0xO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG59IiwiLmp1bWJvdHJvbi5tYWluIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcvYXNzZXRzL2ltZy9sb2dpbi5qcGcnKTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1pbi1oZWlnaHQ6IDIwdnc7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IHRvcCBjZW50ZXI7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQtcG9zaXRpb24teTogNjAlO1xufVxuLmp1bWJvdHJvbi5tYWluIC5qdW1ib3Ryb24tdGV4dCB7XG4gIG1hcmdpbi10b3A6IDd2dztcbn1cbi5qdW1ib3Ryb24ubWFpbiAuanVtYm90cm9uLXRleHQgaDEge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LXNpemU6IDIwMCU7XG4gIGNvbG9yOiAjYmUxODIyO1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5qdW1ib3Ryb24ubWFpbiAuanVtYm90cm9uLXRleHQgaDEge1xuICAgIGZvbnQtc2l6ZTogMTUwJTtcbiAgfVxufVxuLmJsb2NrLmJnIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjhmYTtcbn1cbi5ibG9jayBoMiB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtc2l6ZTogMTUwJTtcbiAgY29sb3I6ICNiZTE4MjI7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgI2ZyYW1lIHtcbiAgICB3aWR0aDogNzAlO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgfVxufVxuLmNhcmQge1xuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IHVuc2V0O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDMwcHggMHB4IHJnYmEoMCwgMCwgMCwgMC4yKTtcbn1cbi5jYXJkIC5jYXJkLWhlYWRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmOGY4ZmE7XG4gIGJvcmRlcjogbm9uZTtcbiAgcGFkZGluZzogMS41ZW07XG59XG4uY2FyZCAuY2FyZC1oZWFkZXIgaDQge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBjb2xvcjogIzAwMDAwMDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQgIWltcG9ydGFudDtcbiAgZm9udC1zaXplOiAxMjAlO1xufVxuLmNhcmQgLmNhcmQtYm9keSB7XG4gIHBhZGRpbmc6IDNlbTtcbn1cbi5lcnJvcnMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZjY2NjO1xuICBjb2xvcjogcmVkO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xufVxuI2Ryb3BhcmVhIHtcbiAgcGFkZGluZzogMmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNiZTE4MjI7XG59XG4jZHJvcGFyZWEgbGFiZWwge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG4jZHJvcGFyZWEuZHJhZ2dpbmcge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmFkYmRkO1xufVxuI2ZpbGVsaXN0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VmYjRiYTtcbiAgcGFkZGluZzogMC4zZW07XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG59XG4jZmlsZVNlbGVjdG9yIHtcbiAgd2lkdGg6IDAuMXB4O1xuICBoZWlnaHQ6IDAuMXB4O1xuICBvcGFjaXR5OiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB6LWluZGV4OiAtMTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xufVxuIl19 */\"","import { Component, OnInit, Input, ViewChild, ElementRef } from '@angular/core';\nimport { Router, ActivatedRoute } from '@angular/router';\nimport { HttpClient } from '@angular/common/http';\nimport { REST_SERVER } from 'src/app/config';\nimport { Address } from 'src/app/model/address.model';\nimport { BsModalService, BsModalRef } from 'ngx-bootstrap/modal';\nimport { Invoice, InvoiceItem } from 'src/app/model/invoice.model';\nimport { SelectPartnerDialogComponent, SelectPartnerResult } from 'src/app/components/ui/dialogs/select-partner-dialog/select-partner-dialog.component';\nimport { ServicePartner } from 'src/app/model/service-partner.model';\nimport { InvoiceService } from 'src/app/service/invoice.service';\nimport { UserService } from 'src/app/service/user.service';\nimport { ViewerDialogComponent } from 'src/app/components/ui/dialogs/viewer-dialog.component';\n\n@Component({\n selector: 'app-admin-invoice-create',\n templateUrl: './admin-invoice-create.component.html',\n styleUrls: ['./admin-invoice-create.component.less']\n})\nexport class AdminInvoiceCreateComponent implements OnInit {\n\n public sendingInvoice:boolean;\n public success:boolean;\n invoice = new Invoice();\n public editErrors:string[] = [];\n @ViewChild(\"editForm\") editForm;\n @ViewChild('editErrorsDisplay') editErrorsDisplay:ElementRef;\n\n constructor(\n private _modalService:BsModalService,\n private _invoiceService:InvoiceService,\n private _userService:UserService,\n private _router:Router,\n ) { \n this.invoice.address = new Address();\n this.invoice.items = [];\n this.invoice.items.push(new InvoiceItem());\n this.invoice.items[0].count = 1;\n }\n\n ngOnInit() {\n }\n\n async onEdit():Promise {\n this.editErrors = [];\n let success:boolean = false;\n this.sendingInvoice = true;\n try {\n this.invoice = await this._invoiceService.createInvoice(this.invoice);\n this.openInvoicePdf();\n //await this._repairCenterService.save(this.repairCenter);\n success = true;\n } catch(exc) {\n console.log(exc);\n let code = exc.error && exc.error.error && exc.error.error.code;\n if(code === 'EMAIL_ALREADY_EXISTS') {\n this.editErrors.push(\"Die E-Mail-Adresse wird bereits verwendet\");\n } else {\n this.editErrors.push(\"Unbekannter Fehler\");\n }\n this.editErrorsDisplay.nativeElement.scrollIntoView(true);\n //window.scroll(0,0);\n }\n this.sendingInvoice = false;\n \n }\n\n canSubmit():boolean {\n let result:boolean = true;\n result = result && this.editForm.form.valid;\n result = result && !this.sendingInvoice;\n result = result && !this.invoice.ident;\n return result;\n }\n\n selectPartner():void {\n let initialState = {};\n let ref:BsModalRef = this._modalService.show(SelectPartnerDialogComponent, {initialState, class: 'modal-lg'});\n ref.content.onClose.subscribe((result:SelectPartnerResult) => {\n if(result && result.success) {\n //await this._servicePartnerService.deleteServicePartner(servicePartner);\n if(result.servicePartner) {\n this.invoice.address = {...result.servicePartner.invoiceAddress};\n this.invoice.servicePartner = result.servicePartner;\n } else if(result.repairCenter) {\n this.invoice.address = {...result.repairCenter.deliveryAddress};\n this.invoice.repairCenter = result.repairCenter;\n }\n }\n });\n }\n\n calcInvoiceDownloadHref():string {\n let token:string = this._userService.token;\n return `${REST_SERVER}/invoices/${this.invoice.ident}/pdf/invoice?access_token=${token}`;\n }\n\n openInvoicePdf() {\n let initialState = {\n title: `Rechnung / Gutschrift ${this.invoice.ident}`,\n path: this.calcInvoiceDownloadHref(),\n msg: \"\",\n }\n let ref:BsModalRef = this._modalService.show(ViewerDialogComponent, {initialState, class: 'modal-lg', ignoreBackdropClick: true, keyboard: false});\n ref.content.onClose.subscribe((result) => {\n //console.log(\"dialog closed\");\n this._router.navigate(['admin', 'invoices', 'list', 'new']);\n });\n }\n\n generateRepairCenterCredits() {\n this._invoiceService.generateRepairCenterCredits();\n }\n}\n","module.exports = \"
\\n
\\n
\\n
\\n

Rechnung Nr. {{ invoiceIdent }}

\\n
\\n
\\n
\\n
\\n \\n \\n {{ ('invoice_' + row.key) | camelCase | translate }}\\n {{ ('' + (row.value === null ? '' : row.value)) | dateIf | translate }}\\n \\n \\n
\\n
\\n
\\n
\\n \\n \\n #\\n Beschreibung\\n Menge\\n Einzel EUR\\n Gesamt EUR\\n \\n \\n {{ row.orderIdx }}\\n {{ row.description }}\\n {{ row.count }}\\n {{ row.amountSingleNet | amount }}\\n {{ row.amountNet | amount }}\\n \\n \\n
\\n
\\n \\n
\\n
\\n
\"","module.exports = \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvcGFnZXMvYWRtaW4vaW52b2ljZS9kZXRhaWxzL2FkbWluLWludm9pY2UtZGV0YWlscy5jb21wb25lbnQubGVzcyJ9 */\"","import { Component, OnInit } from '@angular/core';\nimport { Router, ActivatedRoute } from '@angular/router';\nimport { Location } from '@angular/common';\nimport { Subscription } from 'rxjs/internal/Subscription';\nimport { ServicePartnerService } from 'src/app/service/service-partner.service';\nimport { REST_SERVER } from 'src/app/config';\nimport { RepairOrderService } from 'src/app/service/repair-order.service';\nimport { BsModalService, BsModalRef } from 'ngx-bootstrap/modal';\nimport { RepairOrder } from 'src/app/model/repair-order.model';\nimport { MessageDialogComponent } from 'src/app/components/ui/dialogs/message-dialog/message-dialog.component';\nimport { Invoice } from 'src/app/model/invoice.model';\nimport { InvoiceService } from 'src/app/service/invoice.service';\nimport { UserService } from 'src/app/service/user.service';\nimport { AmountPipe } from 'src/app/pipes/amount.pipe';\n\n@Component({\n selector: 'app-admin-invoice-details',\n templateUrl: './admin-invoice-details.component.html',\n styleUrls: ['./admin-invoice-details.component.less']\n})\nexport class AdminInvoiceDetailsComponent implements OnInit {\n\n invoiceIdent:string;\n invoice:Invoice;\n invoiceData = [];\n invoiceItems = [];\n\n currentOrdersFilterJson:string = null;\n\n public servicePartner = null;\n\n constructor(\n activatedRoute:ActivatedRoute,\n private _location:Location,\n private _invoiceService:InvoiceService,\n private _modalService: BsModalService,\n private _userService:UserService,\n ) { \n activatedRoute.params.subscribe((params) => {\n this.invoiceIdent = params.ident;\n this.loadCurrentInvoice();\n });\n }\n\n async loadCurrentInvoice():Promise {\n this.invoice = await this._invoiceService.load(this.invoiceIdent);\n if(!this.invoice) {\n let initialState = {\n title: \"Fehler\",\n msg: `Rechnung Nr. ${this.invoiceIdent} wurde nicht gefunden`,\n }\n let ref:BsModalRef = this._modalService.show(MessageDialogComponent, {initialState});\n ref.content.onClose.subscribe(result => {\n this._location.back();\n });\n }\n\n this.invoiceItems = this.invoice.items;\n let invoiceData = [];\n let invoice:any = {...this.invoice};\n delete invoice.cnt;\n delete invoice.year;\n invoice.recipient = invoice.address.name;\n delete invoice.servicePartner;\n delete invoice.repairCenter;\n delete invoice.address;\n delete invoice.items;\n if(!invoice.dunning0Date) {\n delete invoice.dunning0Date;\n }\n if(!invoice.dunning1Date) {\n delete invoice.dunning1Date;\n }\n if(!invoice.dunning2Date) {\n delete invoice.dunning2Date;\n }\n /*\n delete repairOrder.servicePartnerReference;\n delete repairOrder.servicePartner;\n delete repairOrder.servicePartnerId;\n */\n invoice.type = 'invoice_type_' + invoice.type.toLowerCase();\n invoice.state = 'invoice_state_' + invoice.state.toLowerCase();\n let amountPipe:AmountPipe = new AmountPipe();\n invoice.amountNet = amountPipe.transform(invoice.amountNet) + ' €';\n invoice.amountVat = amountPipe.transform(invoice.amountVat) + ' €';\n invoice.amountTotal = amountPipe.transform(invoice.amountTotal) + ' €';\n for(let key in invoice) {\n let item = { key, value: invoice[key] };\n invoiceData.push(item);\n }\n this.invoiceData = invoiceData;\n }\n\n ngOnInit() {\n }\n\n calcInvoiceDownloadHref():string {\n let token:string = this._userService.token;\n return REST_SERVER + '/invoices/' + this.invoiceIdent + '/pdf/invoice?access_token=' + token;\n }\n\n calcDunning0DownloadHref():string {\n let token:string = this._userService.token;\n return REST_SERVER + '/invoices/' + this.invoiceIdent + '/pdf/dunning0?access_token=' + token;\n }\n\n calcDunning1DownloadHref():string {\n let token:string = this._userService.token;\n return REST_SERVER + '/invoices/' + this.invoiceIdent + '/pdf/dunning1?access_token=' + token;\n }\n\n calcDunning2DownloadHref():string {\n let token:string = this._userService.token;\n return REST_SERVER + '/invoices/' + this.invoiceIdent + '/pdf/dunning2?access_token=' + token;\n }\n}\n","module.exports = \"
\\n
\\n
\\n
\\n

{{ title }}

\\n
\\n
\\n
\\n \\n \\n
\\n\\n \\n \\n #\\n Rechnungsdatum\\n Auftrags­nummer\\n Empfänger\\n Tage unbezahlt\\n Summe\\n Status\\n Aktionen\\n \\n \\n {{ row.ident }}\\n {{ row.invoiceDate | date }}\\n {{ row.repairOrderId }}\\n {{ row.address.name }}\\n {{ dateDiff(row.paymentDate ? row.paymentDate : null, row.invoiceDate) }}\\n {{ row.amountTotal | amount }}€\\n {{ ('INVOICE_STATE_' + row.state).toLowerCase() | translate }}\\n \\n
0\\\" class=\\\"btn-group\\\" dropdown>\\n \\n \\n
\\n
\\n
\\n
\\n\\n
\\n
\\n
\\n
\"","module.exports = \".invoice-buttons button {\\n margin: 10px;\\n}\\n\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9hcHAtdWkvc3JjL2FwcC9jb21wb25lbnRzL3BhZ2VzL2FkbWluL2ludm9pY2UvbGlzdC9hZG1pbi1pbnZvaWNlLWxpc3QuY29tcG9uZW50Lmxlc3MiLCJzcmMvYXBwL2NvbXBvbmVudHMvcGFnZXMvYWRtaW4vaW52b2ljZS9saXN0L2FkbWluLWludm9pY2UtbGlzdC5jb21wb25lbnQubGVzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtFQUdRLFlBQUE7QUNEUiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvcGFnZXMvYWRtaW4vaW52b2ljZS9saXN0L2FkbWluLWludm9pY2UtbGlzdC5jb21wb25lbnQubGVzcyIsInNvdXJjZXNDb250ZW50IjpbIi5pbnZvaWNlLWJ1dHRvbnNcbntcbiAgICBidXR0b257XG4gICAgICAgIG1hcmdpbjogMTBweDtcbiAgICB9XG59IiwiLmludm9pY2UtYnV0dG9ucyBidXR0b24ge1xuICBtYXJnaW46IDEwcHg7XG59XG4iXX0= */\"","import { Component, OnInit, ViewChild } from '@angular/core';\nimport { REST_SERVER } from 'src/app/config';\nimport { ActivatedRoute } from '@angular/router';\nimport { RepairOrder } from 'src/app/model/repair-order.model';\nimport { InvoiceService } from 'src/app/service/invoice.service';\nimport { GridComponent } from 'src/app/components/ui/grid/grid.component';\nimport { Invoice } from 'src/app/model/invoice.model';\nimport { BsModalService, BsModalRef } from 'ngx-bootstrap/modal';\nimport { GeneralConfirmDialogComponent } from 'src/app/components/ui/dialogs/general-confirm-dialog.component';\n\nenum InvoiceAction {\n BOOK_PAYMENT,\n};\n\n@Component({\n selector: 'app-admin-invoice-list',\n templateUrl: './admin-invoice-list.component.html',\n styleUrls: ['./admin-invoice-list.component.less']\n})\nexport class AdminInvoiceListComponent implements OnInit {\n @ViewChild('grid') private _grid:GridComponent;\n\n public loadingGrid:boolean = false;\n public totalCnt:number = 0;\n public title:string = '';\n public state:string = '';\n\n public selectionStatus = [\n { key: \"status_active\", val: \"Aktiv\" }, \n { key: \"status_inactive\", val: \"Inaktiv\" },\n ]\n\n filterDesc = {\n ident: {\n type: \"string\",\n comp: \"like\",\n label: \"Re.-nr.\",\n },\n state: {\n value: \"NONE\",\n comp: \"eq\",\n },\n invoiceDate: {\n value: new Date(1970, 0, 1),\n comp: \"lt\",\n },\n }\n\n constructor(\n activatedRoute:ActivatedRoute,\n private _invoiceService:InvoiceService,\n private _modalService: BsModalService\n ) { \n activatedRoute.params.subscribe(params => {\n this.state = params.state;\n let filterDesc = {...this.filterDesc};\n delete(filterDesc.state);\n delete(filterDesc.invoiceDate);\n\n if(params.state === 'new') {\n filterDesc.state = {\n value: \"PAYED\",\n comp: \"neq\",\n };\n this.title = 'Unbezahlte Rechnungen';\n } else if(params.state === 'payed') {\n filterDesc.state = {\n value: \"PAYED\",\n comp: \"eq\",\n };\n this.title = 'Bezahlte Rechnungen';\n } else if(params.state === 'dunning0') {\n filterDesc.state = {\n value: \"DUNNING_LEVEL_0\",\n comp: \"eq\",\n };\n this.title = 'Zahlungserinnerungen';\n } else if(params.state === 'dunning1') {\n filterDesc.state = {\n value: \"DUNNING_LEVEL_1\",\n comp: \"eq\",\n };\n this.title = 'Mahnung I';\n } else if(params.state === 'dunning2') {\n filterDesc.state = {\n value: \"DUNNING_LEVEL_2\",\n comp: \"eq\",\n };\n this.title = 'Mahnung I';\n } else if(params.state === 'overdue') {\n filterDesc.state = {\n value: \"PAYED\",\n comp: \"neq\",\n };\n let now:Date = new Date();\n let date:Date = new Date(now.getFullYear(), now.getMonth(), now.getDate() - 7);\n filterDesc.invoiceDate = {\n value: date,\n comp: \"lt\",\n };\n this.title = 'Überfällige Rechnungen';\n }\n this.filterDesc = filterDesc;\n });\n }\n\n ngOnInit() {\n }\n\n public dateDiff(dateA, dateB):number {\n if(!dateA) {\n dateA = new Date();\n }\n if(!dateA.getFullYear) {\n dateA = new Date(dateA);\n }\n if(!dateB.getFullYear) {\n dateB = new Date(dateB);\n }\n let dateA0 = new Date(dateA.getFullYear(), dateA.getMonth(), dateA.getDate());\n let dateB0 = new Date(dateB.getFullYear(), dateB.getMonth(), dateB.getDate());\n let diff:number = dateA0.valueOf() - dateB0.valueOf();\n return diff / (1000 * 60 * 60 * 24);\n }\n\n public getBaseUrl():string {\n return REST_SERVER + \"/invoices\";\n }\n\n public getActionsForInvoice(invoice:Invoice) {\n let result = [];\n if(invoice.state !== \"PAYED\") {\n result.push({ key: InvoiceAction.BOOK_PAYMENT, val: 'Zahlungseingang' });\n }\n return result;\n }\n\n public async actionSelected(invoice:Invoice, action):Promise {\n switch(action.key) {\n case InvoiceAction.BOOK_PAYMENT:\n await this._invoiceService.markInvoicePayed(invoice);\n this._grid.update();\n break;\n }\n }\n\n createDunnings() {\n \n let initialState = {\n title: \"Mahnungen erstellen\",\n msg: \"Möchten Sie Mahnungen für alle offenen Rechnungen erstellen?\",\n }\n let ref: BsModalRef = this._modalService.show(GeneralConfirmDialogComponent, {initialState});\n ref.content.event.subscribe(() => this._invoiceService.createDunnings());\n }\n\n generateRepairCenterCredits() {\n this._invoiceService.generateRepairCenterCredits();\n }\n\n generateServicePartnerInvoices() {\n \n let initialState = {\n title: \"Rechnugnen erstellen\",\n msg: \"Möchten Sie Rechnungen für alle abgeschlossenen Aufträge erstellen?\"\n }\n let ref: BsModalRef = this._modalService.show(GeneralConfirmDialogComponent, {initialState});\n ref.content.event.subscribe(() => this._invoiceService.generateServicePartnerInvoices());\n }\n}\n","module.exports = \"
\\n \\n
\\n
\\n
\\n
\\n
\\n
\\n \\n

Reperaturcenter Zuornungstest

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

Auf dieser Seite kann die Konfiguration der Reperaturcenter-Zuornungen gestestet werden.\\n Dabei werden keine echten Aufträge erstellt, der Prozess wird ledigich simuliert.\\n

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

Ist der ServicePartner ein Logistiker?

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

Lackierung der Felge

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

    ServicePartner ist {{result.isLog == true? '' : 'kein'}} Logistiker /   Felge: {{result.varnish}}
    \\n Wird Zugeordnet: {{result.repCenter}}\\n

    \\n
  • \\n
\\n \\n
\\n
\\n
\\n
\\n
\\n
\\n
\"","module.exports = \".inner-container {\\n padding-top: 3em;\\n}\\n@media (min-width: 768px) {\\n .inner-container:not(.fw) {\\n width: 90%;\\n }\\n}\\n.card {\\n border: none;\\n border-radius: unset;\\n box-shadow: 0px 0px 30px 0px rgba(0, 0, 0, 0.2);\\n margin-top: 15px;\\n margin-bottom: 15px;\\n}\\n.card .card-header {\\n position: relative;\\n background-color: #f8f8fa;\\n border: none;\\n padding: 1.5em;\\n}\\n.card .card-header h4 {\\n text-transform: uppercase;\\n text-align: left;\\n color: #000000;\\n font-weight: bold !important;\\n font-size: 120%;\\n}\\n.card .card-header .headicon {\\n position: absolute;\\n right: 1em;\\n height: 3em;\\n top: 1em;\\n}\\n.card .card-body {\\n padding: 3em;\\n}\\n#logistician-box {\\n margin: auto;\\n}\\n#logistician-box label {\\n margin-right: 20px;\\n}\\n#button-container {\\n margin-top: 30px;\\n margin-bottom: 30px;\\n}\\n#info-text {\\n margin: 20px 30px;\\n}\\n\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9hcHAtdWkvc3JjL2FwcC9jb21wb25lbnRzL3BhZ2VzL2FkbWluL3JlcGFpci1jZW50ZXIvYXNzaWdubWVudC10ZXN0L2FkbWluLXJlcGFpci1jZW50ZXItYXNzaWdubWVudC5jb21wb25lbnQubGVzcyIsInNyYy9hcHAvY29tcG9uZW50cy9wYWdlcy9hZG1pbi9yZXBhaXItY2VudGVyL2Fzc2lnbm1lbnQtdGVzdC9hZG1pbi1yZXBhaXItY2VudGVyLWFzc2lnbm1lbnQuY29tcG9uZW50Lmxlc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0E7RUFDSSxnQkFBQTtBQ0FKO0FER1E7RUFBQTtJQUNJLFVBQUE7RUNBVjtBQUNGO0FESUE7RUFDSSxZQUFBO0VBQ0Esb0JBQUE7RUFDQSwrQ0FBQTtFQUNBLGdCQUFBO0VBQ0EsbUJBQUE7QUNGSjtBREhBO0VBUVEsa0JBQUE7RUFDQSx5QkFBQTtFQUVBLFlBQUE7RUFDQSxjQUFBO0FDSFI7QURUQTtFQWVZLHlCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxjQUFBO0VBQ0EsNEJBQUE7RUFDQSxlQUFBO0FDSFo7QURoQkE7RUF1Qlksa0JBQUE7RUFDQSxVQUFBO0VBQ0EsV0FBQTtFQUNBLFFBQUE7QUNKWjtBRHRCQTtFQStCUSxZQUFBO0FDTlI7QURVQTtFQUNJLFlBQUE7QUNSSjtBRE9BO0VBSVEsa0JBQUE7QUNSUjtBRFlBO0VBRUksZ0JBQUE7RUFDQSxtQkFBQTtBQ1hKO0FEY0E7RUFDSSxpQkFBQTtBQ1pKIiwiZmlsZSI6InNyYy9hcHAvY29tcG9uZW50cy9wYWdlcy9hZG1pbi9yZXBhaXItY2VudGVyL2Fzc2lnbm1lbnQtdGVzdC9hZG1pbi1yZXBhaXItY2VudGVyLWFzc2lnbm1lbnQuY29tcG9uZW50Lmxlc3MiLCJzb3VyY2VzQ29udGVudCI6WyJcbi5pbm5lci1jb250YWluZXIge1xuICAgIHBhZGRpbmctdG9wOiAzZW07XG5cbiAgICAmOm5vdCguZncpIHtcbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgICAgICB3aWR0aDogOTAlO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uY2FyZCB7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJvcmRlci1yYWRpdXM6IHVuc2V0O1xuICAgIGJveC1zaGFkb3c6IDBweCAwcHggMzBweCAwcHggcmdiYSgwLCAwLCAwLCAwLjIpOyAgICBcbiAgICBtYXJnaW4tdG9wOiAxNXB4O1xuICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG5cbiAgICAuY2FyZC1oZWFkZXIge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmOGY4ZmE7XG5cbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBwYWRkaW5nOiAxLjVlbTtcblxuICAgICAgICBoNCB7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgIGNvbG9yOiAjMDAwMDAwO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTIwJTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5oZWFkaWNvbiB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICByaWdodDogMWVtO1xuICAgICAgICAgICAgaGVpZ2h0OiAzZW07XG4gICAgICAgICAgICB0b3A6IDFlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5jYXJkLWJvZHkge1xuICAgICAgICBwYWRkaW5nOiAzZW07XG4gICAgfVxufVxuXG4jbG9naXN0aWNpYW4tYm94e1xuICAgIG1hcmdpbjogYXV0bztcblxuICAgIGxhYmVse1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG4gICAgfVxufVxuXG4jYnV0dG9uLWNvbnRhaW5lcntcblxuICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbn1cblxuI2luZm8tdGV4dCB7XG4gICAgbWFyZ2luOiAyMHB4IDMwcHg7XG59XG5cblxuXG4iLCIuaW5uZXItY29udGFpbmVyIHtcbiAgcGFkZGluZy10b3A6IDNlbTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuaW5uZXItY29udGFpbmVyOm5vdCguZncpIHtcbiAgICB3aWR0aDogOTAlO1xuICB9XG59XG4uY2FyZCB7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogdW5zZXQ7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMzBweCAwcHggcmdiYSgwLCAwLCAwLCAwLjIpO1xuICBtYXJnaW4tdG9wOiAxNXB4O1xuICBtYXJnaW4tYm90dG9tOiAxNXB4O1xufVxuLmNhcmQgLmNhcmQtaGVhZGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOGZhO1xuICBib3JkZXI6IG5vbmU7XG4gIHBhZGRpbmc6IDEuNWVtO1xufVxuLmNhcmQgLmNhcmQtaGVhZGVyIGg0IHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgY29sb3I6ICMwMDAwMDA7XG4gIGZvbnQtd2VpZ2h0OiBib2xkICFpbXBvcnRhbnQ7XG4gIGZvbnQtc2l6ZTogMTIwJTtcbn1cbi5jYXJkIC5jYXJkLWhlYWRlciAuaGVhZGljb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAxZW07XG4gIGhlaWdodDogM2VtO1xuICB0b3A6IDFlbTtcbn1cbi5jYXJkIC5jYXJkLWJvZHkge1xuICBwYWRkaW5nOiAzZW07XG59XG4jbG9naXN0aWNpYW4tYm94IHtcbiAgbWFyZ2luOiBhdXRvO1xufVxuI2xvZ2lzdGljaWFuLWJveCBsYWJlbCB7XG4gIG1hcmdpbi1yaWdodDogMjBweDtcbn1cbiNidXR0b24tY29udGFpbmVyIHtcbiAgbWFyZ2luLXRvcDogMzBweDtcbiAgbWFyZ2luLWJvdHRvbTogMzBweDtcbn1cbiNpbmZvLXRleHQge1xuICBtYXJnaW46IDIwcHggMzBweDtcbn1cbiJdfQ== */\"","import { Component, Inject, OnInit } from '@angular/core';\nimport { PrinterService } from 'src/app/service/printer.service';\nimport { DOCUMENT} from '@angular/common';\nimport { RepairOrder } from 'src/app/model/repair-order.model';\nimport { RepairOrderService } from 'src/app/service/repair-order.service';\n\n@Component({\n selector: 'app-admin-repair-center-assignment',\n templateUrl: './admin-repair-center-assignment.component.html',\n styleUrls: ['./admin-repair-center-assignment.component.less']\n \n})\nexport class AdminRepairCenterAssignmentComponent implements OnInit {\n\n orderModel:RepairOrder = new RepairOrder();\n isLogistician: boolean = false;\n\n results = [\n /*{isLog: true, repCenter: \"viech1\"},*/\n ]\n\n constructor(\n private _printerService:PrinterService,\n private _repairOrderService: RepairOrderService,\n @Inject(DOCUMENT) private document: Document\n ){}\n\n ngOnInit(){}\n\n async testPrinter()\n { \n this._printerService.testPrinter();\n }\n\n async onCreateOrder()\n { \n console.log(\"Input Test\" + this.isLogistician);\n console.log(\"Input Test\" + this.orderModel);\n \n let result = await this._repairOrderService.testRepairCenterAssignment({\n 'isLogistician': this.isLogistician,\n 'rimVarnish': this.orderModel.rimVarnish\n });\n //alert(result.repCenter);\n \n let varnishTransl:any = {\n silver: \"lackiert\",\n colored: \"glanzgedreht/bicolor\",\n polish: \"glanzgedreht/poliert\",\n luxury: \"luxus\",\n };\n\n let translatedVarnish = varnishTransl[this.orderModel.rimVarnish];\n\n this.results.unshift({\n isLog: this.isLogistician, \n varnish: translatedVarnish,\n repCenter:result.repCenter,\n });\n }\n}","module.exports = \"
\\n
\\n
\\n
\\n
\\n
\\n

Stammdaten

\\n
\\n
\\n
\\n
\\n
    0\\\" class=\\\"errors\\\">\\n
  • {{ err }}
  • \\n
\\n
\\n
\\n
\\n
\\n \\n
\\n
\\n
\\n
\\n \\n
\\n
\\n \\n
\\n
\\n
\\n
\\n \\n
\\n
\\n \\n
\\n
\\n
\\n
\\n \\n
\\n
\\n \\n
\\n
\\n
\\n
\\n \\n
\\n
\\n \\n
\\n
\\n \\n
\\n
\\n
\\n
\\n\\n
\\n
\\n
\\n
\\n

Kapazitäten

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

Preise

\\n
\\n
\\n
\\n
\\n
\\n \\n \\n
\\n
\\n \\n
\\n
\\n \\n \\n
\\n
\\n \\n
\\n
\\n \\n \\n
\\n
\\n \\n
\\n
\\n \\n \\n
\\n
\\n \\n \\n
\\n
\\n
\\n
\\n
\\n\\n
\\n \\n
\\n
\\n
\"","module.exports = \".jumbotron.main {\\n background-image: url('/assets/img/login.jpg');\\n width: 100%;\\n min-height: 20vw;\\n background-position: top center;\\n border-radius: 0;\\n background-position-y: 60%;\\n}\\n.jumbotron.main .jumbotron-text {\\n margin-top: 7vw;\\n}\\n.jumbotron.main .jumbotron-text h1 {\\n text-transform: uppercase;\\n font-size: 200%;\\n color: #be1822;\\n}\\n@media (max-width: 767px) {\\n .jumbotron.main .jumbotron-text h1 {\\n font-size: 150%;\\n }\\n}\\n.block.bg {\\n background-color: #f8f8fa;\\n}\\n.block h2 {\\n text-transform: uppercase;\\n font-size: 150%;\\n color: #be1822;\\n}\\n@media (min-width: 768px) {\\n #frame {\\n width: 70%;\\n margin-left: auto;\\n margin-right: auto;\\n }\\n}\\n.card {\\n border: none;\\n border-radius: unset;\\n box-shadow: 0px 0px 30px 0px rgba(0, 0, 0, 0.2);\\n}\\n.card .card-header {\\n background-color: #f8f8fa;\\n border: none;\\n padding: 1.5em;\\n}\\n.card .card-header h4 {\\n text-transform: uppercase;\\n text-align: left;\\n color: #000000;\\n font-weight: bold !important;\\n font-size: 120%;\\n}\\n.card .card-body {\\n padding: 3em;\\n}\\n.errors {\\n background-color: #ffcccc;\\n color: red;\\n font-weight: bold;\\n list-style-type: none;\\n}\\n#droparea {\\n padding: 2em;\\n text-align: center;\\n border: 1px solid #be1822;\\n}\\n#droparea label {\\n cursor: pointer;\\n}\\n#droparea.dragging {\\n background-color: #fadbdd;\\n}\\n#filelist {\\n background-color: #efb4ba;\\n padding: 0.3em;\\n text-decoration: underline;\\n list-style-type: none;\\n}\\n#fileSelector {\\n width: 0.1px;\\n height: 0.1px;\\n opacity: 0;\\n overflow: hidden;\\n z-index: -1;\\n position: absolute;\\n}\\n\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9hcHAtdWkvc3JjL2FwcC9jb21wb25lbnRzL3BhZ2VzL2FkbWluL3JlcGFpci1jZW50ZXIvZGV0YWlscy9hZG1pbi1yZXBhaXItY2VudGVyLWRldGFpbHMuY29tcG9uZW50Lmxlc3MiLCJzcmMvYXBwL2NvbXBvbmVudHMvcGFnZXMvYWRtaW4vcmVwYWlyLWNlbnRlci9kZXRhaWxzL2FkbWluLXJlcGFpci1jZW50ZXItZGV0YWlscy5jb21wb25lbnQubGVzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtFQUNFLDhDQUFBO0VBQ0EsV0FBQTtFQUNBLGdCQUFBO0VBQ0EsK0JBQUE7RUFDQSxnQkFBQTtFQUNBLDBCQUFBO0FDQ0Y7QURQQTtFQVNNLGVBQUE7QUNDTjtBRFZBO0VBWVUseUJBQUE7RUFDQSxlQUFBO0VBQ0EsY0FBQTtBQ0NWO0FEQ1U7RUFBQTtJQUNJLGVBQUE7RUNFWjtBQUNGO0FESUU7RUFDSSx5QkFBQTtBQ0ZOO0FEQUE7RUFNTSx5QkFBQTtFQUNBLGVBQUE7RUFDQSxjQUFBO0FDSE47QURRRTtFQUFBO0lBQ0UsVUFBQTtJQUNBLGlCQUFBO0lBQ0Esa0JBQUE7RUNMRjtBQUNGO0FEUUE7RUFDRSxZQUFBO0VBQ0Esb0JBQUE7RUFDQSwrQ0FBQTtBQ05GO0FER0E7RUFNTSx5QkFBQTtFQUNBLFlBQUE7RUFDQSxjQUFBO0FDTk47QURGQTtFQVdVLHlCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxjQUFBO0VBQ0EsNEJBQUE7RUFDQSxlQUFBO0FDTlY7QURUQTtFQW9CTSxZQUFBO0FDUk47QURZQTtFQUNFLHlCQUFBO0VBQ0EsVUFBQTtFQUNBLGlCQUFBO0VBQ0EscUJBQUE7QUNWRjtBRGFBO0VBQ0UsWUFBQTtFQUNBLGtCQUFBO0VBQ0EseUJBQUE7QUNYRjtBRFFBO0VBTUksZUFBQTtBQ1hKO0FEY0U7RUFDRSx5QkFBQTtBQ1pKO0FEZ0JBO0VBQ0UseUJBQUE7RUFDQSxjQUFBO0VBQ0EsMEJBQUE7RUFDQSxxQkFBQTtBQ2RGO0FEaUJBO0VBQ0UsWUFBQTtFQUNBLGFBQUE7RUFDQSxVQUFBO0VBQ0EsZ0JBQUE7RUFDQSxXQUFBO0VBQ0Esa0JBQUE7QUNmRiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvcGFnZXMvYWRtaW4vcmVwYWlyLWNlbnRlci9kZXRhaWxzL2FkbWluLXJlcGFpci1jZW50ZXItZGV0YWlscy5jb21wb25lbnQubGVzcyIsInNvdXJjZXNDb250ZW50IjpbIi5qdW1ib3Ryb24ubWFpbiB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnL2Fzc2V0cy9pbWcvbG9naW4uanBnJyk7XG4gIHdpZHRoOiAxMDAlO1xuICBtaW4taGVpZ2h0OiAyMHZ3O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgY2VudGVyO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IDYwJTtcblxuICAuanVtYm90cm9uLXRleHQge1xuICAgICAgbWFyZ2luLXRvcDogN3Z3O1xuXG4gICAgICBoMSB7XG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICBmb250LXNpemU6IDIwMCU7XG4gICAgICAgICAgY29sb3I6ICNiZTE4MjI7XG5cbiAgICAgICAgICBAbWVkaWEobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAgICAgICBmb250LXNpemU6IDE1MCU7XG4gICAgICAgICAgfVxuICAgICAgfVxuICB9XG59XG5cbi5ibG9jayB7XG4gICYuYmcge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjhmYTtcbiAgfVxuXG4gIGgyIHtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBmb250LXNpemU6IDE1MCU7XG4gICAgICBjb2xvcjogI2JlMTgyMjtcbiAgfVxufVxuXG4jZnJhbWUge1xuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICB3aWR0aDogNzAlOyBcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIH1cbn1cblxuLmNhcmQge1xuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IHVuc2V0O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDMwcHggMHB4IHJnYmEoMCwgMCwgMCwgMC4yKTsgICAgXG5cbiAgLmNhcmQtaGVhZGVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmOGY4ZmE7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICBwYWRkaW5nOiAxLjVlbTtcblxuICAgICAgaDQge1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICBjb2xvcjogIzAwMDAwMDtcbiAgICAgICAgICBmb250LXdlaWdodDogYm9sZCAhaW1wb3J0YW50O1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTIwJTtcbiAgICAgIH1cbiAgfVxuXG4gIC5jYXJkLWJvZHkge1xuICAgICAgcGFkZGluZzogM2VtO1xuICB9XG59XG5cbi5lcnJvcnMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGVuKCNmZjAwMDAsIDQwJSk7XG4gIGNvbG9yOiByZWQ7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG59XG5cbiNkcm9wYXJlYSB7XG4gIHBhZGRpbmc6IDJlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBib3JkZXI6IDFweCBzb2xpZCAjYmUxODIyO1xuXG4gIGxhYmVsIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cblxuICAmLmRyYWdnaW5nIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGVuKCNiZTE4MjIsIDUwJSk7XG4gIH1cbn1cblxuI2ZpbGVsaXN0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VmYjRiYTtcbiAgcGFkZGluZzogMC4zZW07XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG59XG5cbiNmaWxlU2VsZWN0b3Ige1xuICB3aWR0aDogMC4xcHg7XG4gIGhlaWdodDogMC4xcHg7XG4gIG9wYWNpdHk6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHotaW5kZXg6IC0xO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG59IiwiLmp1bWJvdHJvbi5tYWluIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcvYXNzZXRzL2ltZy9sb2dpbi5qcGcnKTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1pbi1oZWlnaHQ6IDIwdnc7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IHRvcCBjZW50ZXI7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQtcG9zaXRpb24teTogNjAlO1xufVxuLmp1bWJvdHJvbi5tYWluIC5qdW1ib3Ryb24tdGV4dCB7XG4gIG1hcmdpbi10b3A6IDd2dztcbn1cbi5qdW1ib3Ryb24ubWFpbiAuanVtYm90cm9uLXRleHQgaDEge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LXNpemU6IDIwMCU7XG4gIGNvbG9yOiAjYmUxODIyO1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5qdW1ib3Ryb24ubWFpbiAuanVtYm90cm9uLXRleHQgaDEge1xuICAgIGZvbnQtc2l6ZTogMTUwJTtcbiAgfVxufVxuLmJsb2NrLmJnIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjhmYTtcbn1cbi5ibG9jayBoMiB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtc2l6ZTogMTUwJTtcbiAgY29sb3I6ICNiZTE4MjI7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgI2ZyYW1lIHtcbiAgICB3aWR0aDogNzAlO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgfVxufVxuLmNhcmQge1xuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IHVuc2V0O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDMwcHggMHB4IHJnYmEoMCwgMCwgMCwgMC4yKTtcbn1cbi5jYXJkIC5jYXJkLWhlYWRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmOGY4ZmE7XG4gIGJvcmRlcjogbm9uZTtcbiAgcGFkZGluZzogMS41ZW07XG59XG4uY2FyZCAuY2FyZC1oZWFkZXIgaDQge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBjb2xvcjogIzAwMDAwMDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQgIWltcG9ydGFudDtcbiAgZm9udC1zaXplOiAxMjAlO1xufVxuLmNhcmQgLmNhcmQtYm9keSB7XG4gIHBhZGRpbmc6IDNlbTtcbn1cbi5lcnJvcnMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZjY2NjO1xuICBjb2xvcjogcmVkO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xufVxuI2Ryb3BhcmVhIHtcbiAgcGFkZGluZzogMmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNiZTE4MjI7XG59XG4jZHJvcGFyZWEgbGFiZWwge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG4jZHJvcGFyZWEuZHJhZ2dpbmcge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmFkYmRkO1xufVxuI2ZpbGVsaXN0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VmYjRiYTtcbiAgcGFkZGluZzogMC4zZW07XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG59XG4jZmlsZVNlbGVjdG9yIHtcbiAgd2lkdGg6IDAuMXB4O1xuICBoZWlnaHQ6IDAuMXB4O1xuICBvcGFjaXR5OiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB6LWluZGV4OiAtMTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xufVxuIl19 */\"","import { Component, OnInit, Input, ViewChild, ElementRef } from '@angular/core';\nimport { ServicePartnerService } from 'src/app/service/service-partner.service';\nimport { Router, ActivatedRoute } from '@angular/router';\nimport { HttpClient } from '@angular/common/http';\nimport { REST_SERVER } from 'src/app/config';\nimport { Address } from 'src/app/model/address.model';\nimport { User } from 'src/app/model/user.model';\nimport { RepairCenter } from 'src/app/model/repair-center.model';\nimport { RepairCenterService } from 'src/app/service/repair-center.service';\n\n@Component({\n selector: 'app-admin-repair-center-details',\n templateUrl: './admin-repair-center-details.component.html',\n styleUrls: ['./admin-repair-center-details.component.less']\n})\nexport class AdminRepairCenterDetailsComponent implements OnInit {\n\n public sendingRegistration:boolean;\n public success:boolean;\n repairCenter = new RepairCenter();\n public editErrors:string[] = [];\n @ViewChild(\"editForm\") editForm;\n @ViewChild('editErrorsDisplay') editErrorsDisplay:ElementRef;\n\n constructor(\n private _router:Router,\n private _repairCenterService:RepairCenterService,\n private _http:HttpClient,\n activatedRoute:ActivatedRoute,\n ) { \n this.repairCenter.deliveryAddress = new Address();\n this.repairCenter.user = new User();\n\n activatedRoute.params.subscribe((params) => {\n let repairCenterId = parseInt(params.id);\n if(repairCenterId) {\n this._loadRepairCenter(repairCenterId);\n }\n });\n }\n\n ngOnInit() {\n }\n\n private async _loadRepairCenter(repairCenterId:number):Promise {\n this.repairCenter = await this._repairCenterService.load(repairCenterId);\n }\n\n async onEdit():Promise {\n this.editErrors = [];\n let success:boolean = false;\n this.repairCenter.deliveryAddress.name = this.repairCenter.name;\n this.sendingRegistration = true;\n try {\n await this._repairCenterService.save(this.repairCenter);\n //let res = await this._http.post(REST_SERVER + this.restPath, this.servicePartner).toPromise();\n success = true;\n } catch(exc) {\n console.log(exc);\n let code = exc.error && exc.error.error && exc.error.error.code;\n if(code === 'EMAIL_ALREADY_EXISTS') {\n this.editErrors.push(\"Die E-Mail-Adresse wird bereits verwendet\");\n } else {\n this.editErrors.push(\"Unbekannter Fehler\");\n }\n this.editErrorsDisplay.nativeElement.scrollIntoView(true);\n //window.scroll(0,0);\n }\n this.sendingRegistration = false;\n if(success) {\n this._router.navigate(['admin', 'repair-centers', 'list']);\n }\n }\n\n canSubmit():boolean {\n let result:boolean = true;\n result = result && this.editForm.form.valid;\n result = result && !this.sendingRegistration;\n return result;\n }\n}\n","module.exports = \"
\\n \\n \\n #\\n Prio\\n Firmenname\\n Ansprechpartner\\n E-Mail-Adresse\\n Kapazitäten\\n Auslastung\\n Aktionen\\n \\n \\n {{ row.id }}\\n {{ row.priority }}\\n {{ row.name }}\\n {{ row.deliveryAddress && (row.deliveryAddress.contactFirstName + \\\" \\\" + row.deliveryAddress.contactLastName) }}\\n {{ row.user && row.user.email }}\\n {{ row.capacitySilver + \\\" | \\\" + row.capacityColored + \\\" | \\\" + row.capacityPolish + \\\" | \\\" + row.capacityLuxury }}\\n \\n = row.capacitySilver ? 'bold' : 'normal'}\\\">\\n {{ row.pendingRepairOrdersSilver }}\\n |\\n = row.capacityColored ? 'bold' : 'normal'}\\\">\\n {{ row.pendingRepairOrdersColored }}\\n |\\n = row.capacityPolish ? 'bold' : 'normal'}\\\">\\n {{ row.pendingRepairOrdersPolish }}\\n |\\n = row.capacityLuxury ? 'bold' : 'normal'}\\\">\\n {{ row.pendingRepairOrdersLuxury }}\\n \\n \\n \\n
\\n \\n \\n
\\n
\\n
\\n
\\n
\"","module.exports = \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvcGFnZXMvYWRtaW4vcmVwYWlyLWNlbnRlci9saXN0L2FkbWluLXJlcGFpci1jZW50ZXItbGlzdC5jb21wb25lbnQubGVzcyJ9 */\"","import { Component, OnInit, ViewChild } from '@angular/core';\nimport { REST_SERVER } from 'src/app/config';\nimport { ServicePartnerService } from 'src/app/service/service-partner.service';\nimport { GridComponent } from 'src/app/components/ui/grid/grid.component';\nimport { ActivatedRoute } from '@angular/router';\nimport { ServicePartner } from 'src/app/model/service-partner.model';\nimport { ConfirmDialogComponent } from 'src/app/components/ui/dialogs/confirm-dialog.component';\nimport { BsModalService, BsModalRef } from 'ngx-bootstrap/modal';\nimport { RepairCenterService } from 'src/app/service/repair-center.service';\nimport { RepairCenter } from 'src/app/model/repair-center.model';\n\nenum RepairCenterActions {\n INCREASE_PRIORITY,\n DECREASE_PRIORITY,\n //DELETE,\n}\n\n@Component({\n selector: 'app-admin-repair-center-list',\n templateUrl: './admin-repair-center-list.component.html',\n styleUrls: ['./admin-repair-center-list.component.less']\n})\nexport class AdminRepairCenterListComponent implements OnInit {\n\n @ViewChild('grid') private _grid:GridComponent;\n\n public loadingGrid:boolean = false;\n public totalCnt:number = 0;\n public title:string = '';\n public state:string = '';\n\n filterDesc = {\n email: {\n type: \"string\",\n comp: \"like\",\n label: \"E-Mail\",\n },\n name: {\n type: \"string\",\n comp: \"like\",\n label: \"Firmenname\",\n },\n }\n\n constructor(\n activatedRoute:ActivatedRoute,\n private _servicePartnerService:ServicePartnerService,\n private _repairCenterService:RepairCenterService,\n ) { \n activatedRoute.params.subscribe(params => {\n this.state = params.state;\n let filterDesc:any = {...this.filterDesc};\n delete(filterDesc.state);\n });\n }\n\n ngOnInit() {\n }\n\n public getBaseUrl():string {\n return REST_SERVER + \"/repair-centers\";\n }\n\n public getActionsForServicePartner(servicePartner:ServicePartner):any {\n let result = [];\n result.push({key: RepairCenterActions.INCREASE_PRIORITY, val: 'Priorität erhöhen'});\n result.push({key: RepairCenterActions.DECREASE_PRIORITY, val: 'Priorität verringern'});\n return result;\n }\n\n public async actionSelected(repairCenter:RepairCenter, action):Promise {\n switch(action.key) {\n case RepairCenterActions.INCREASE_PRIORITY:\n await this._repairCenterService.increasePriority(repairCenter);\n this._grid.update();\n break;\n case RepairCenterActions.DECREASE_PRIORITY:\n await this._repairCenterService.decreasePriority(repairCenter);\n this._grid.update();\n break;\n }\n }\n}\n","module.exports = \"
\\n
\\n
\\n
\\n

Auftrag Nr. {{ repairOrder | orderId }}

\\n
\\n
\\n
\\n
\\n \\n \\n {{ ('repair_order_' + row.key) | camelCase | translate }}\\n {{ ('' + (row.value === null ? '' : row.value)) | dateIf | translate }}\\n \\n \\n
\\n
\\n
\\n
\\n
\\n
0\\\">\\n
\\n
\\n
\\n

Bilder vor der Aufbereitung

\\n
\\n
\\n
\\n
\\n \\n
\\n
\\n
\\n
\\n
\\n
0\\\">\\n
\\n
\\n
\\n

Bilder nach der Aufbereitung

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

Kundendaten Nr. {{ servicePartner && servicePartner.id }}

\\n
\\n
\\n
\\n \\n
\\n
\\n
\\n \\n \\n {{ ('service_partner_' + row.key) | camelCase | translate }}\\n {{ ('' + (row.value === null ? '' : row.value)) | dateIf | translate }}\\n \\n \\n
\\n
\\n
\\n
\\n
\"","module.exports = \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvcGFnZXMvYWRtaW4vcmVwYWlyLW9yZGVyL2RldGFpbHMvYWRtaW4tcmVwYWlyLW9yZGVyLWRldGFpbHMuY29tcG9uZW50Lmxlc3MifQ== */\"","import { Component, OnInit } from '@angular/core';\nimport { Router, ActivatedRoute } from '@angular/router';\nimport { Location } from '@angular/common';\nimport { Subscription } from 'rxjs/internal/Subscription';\nimport { ServicePartnerService } from 'src/app/service/service-partner.service';\nimport { REST_SERVER } from 'src/app/config';\nimport { RepairOrderService } from 'src/app/service/repair-order.service';\nimport { BsModalService, BsModalRef } from 'ngx-bootstrap/modal';\nimport { RepairOrder } from 'src/app/model/repair-order.model';\nimport { MessageDialogComponent } from 'src/app/components/ui/dialogs/message-dialog/message-dialog.component';\n\n@Component({\n selector: 'app-admin-repair-order-details',\n templateUrl: './admin-repair-order-details.component.html',\n styleUrls: ['./admin-repair-order-details.component.less']\n})\nexport class AdminRepairOrderDetailsComponent implements OnInit {\n\n orderId:number;\n repairOrder:RepairOrder;\n repairOrderData = [];\n imageNamesBefore:string[] = [];\n imageNamesAfter:string[] = [];\n\n currentOrdersFilterJson:string = null;\n\n public servicePartner = null;\n servicePartnerData = [];\n\n constructor(\n activatedRoute:ActivatedRoute,\n private _location:Location,\n private _repairOrderService:RepairOrderService,\n private _servicePartnerService:ServicePartnerService,\n private _modalService: BsModalService,\n ) { \n activatedRoute.params.subscribe((params) => {\n this.orderId = parseInt(params.id);\n this.loadCurrentOrder();\n });\n }\n\n async loadCurrentOrder():Promise {\n this.repairOrder = await this._repairOrderService.load(this.orderId);\n if(!this.repairOrder) {\n let initialState = {\n title: \"Fehler\",\n msg: `Auftrag Nr. ${this.orderId} wurde nicht gefunden`,\n }\n let ref:BsModalRef = this._modalService.show(MessageDialogComponent, {initialState});\n ref.content.onClose.subscribe(result => {\n this._location.back();\n });\n }\n\n let repairOrderData = [];\n let repairOrder:any = {...this.repairOrder};\n //delete repairOrder.servicePartnerMessage;\n delete repairOrder.servicePartner;\n delete repairOrder.servicePartnerId;\n delete repairOrder.rimDiameter;\n delete repairOrder.rimWithTires;\n repairOrder.state = 'repair_state_' + repairOrder.state.toLowerCase();\n repairOrder.rimVarnish = 'rim_varnish_' + repairOrder.rimVarnish.toLowerCase();\n //repairOrder.rimWithTires = 'rim_with_tires_' + repairOrder.rimWithTires;\n if(repairOrder.repairResult) {\n repairOrder.repairResult = 'repair_result_' + repairOrder.repairResult.toLowerCase();\n }\n for(let key in repairOrder) {\n let item = { key, value: repairOrder[key] };\n repairOrderData.push(item);\n }\n this.repairOrderData = repairOrderData;\n\n this._updateImages();\n\n this._loadServicePartner();\n }\n\n private async _loadServicePartner():Promise {\n this.servicePartner = await this._servicePartnerService.load((this.repairOrder).servicePartnerId);\n let servicePartnerData = [];\n let servicePartner:any = {...this.servicePartner};\n delete servicePartner.phone;\n delete servicePartner.lat;\n delete servicePartner.lng;\n delete servicePartner.displayOnMap;\n delete servicePartner.confirmEmailKey;\n delete servicePartner.user;\n servicePartner.state = 'service_partner_state_' + servicePartner.state.toLowerCase();\n delete servicePartner.deliveryAddress;\n delete servicePartner.invoiceAddress;\n\n for(let key in servicePartner) {\n let item = { key, value: servicePartner[key] };\n servicePartnerData.push(item);\n }\n \n this.servicePartnerData = servicePartnerData;\n }\n\n private async _updateImages():Promise {\n if(this.repairOrder) {\n this.imageNamesBefore = await this._repairOrderService.getAbsoluteImageNames(this.repairOrder, true);\n this.imageNamesAfter = await this._repairOrderService.getAbsoluteImageNames(this.repairOrder, false);\n }\n }\n\n ngOnInit() {\n }\n\n getBaseUrlOrders():string {\n return REST_SERVER + \"/repair-orders\";\n }\n}\n","module.exports = \"
\\n
\\n
\\n
\\n

{{ title }}

\\n
\\n
\\n\\n \\n \\n #\\n Auftragsdatum\\n SP\\n Anzahl beschädigter Felgen\\n Service Partner Referenz\\n Felgen Art\\n Status\\n Rechnung\\n Aktionen\\n \\n \\n {{ row | orderId }}\\n {{ row.orderDate | date }}\\n {{ row.servicePartnerId }}\\n {{ row.rimCount }}\\n {{ row.servicePartnerReference }}\\n {{ ('RIM_VARNISH_' + row.rimVarnish).toLowerCase() | translate }}\\n {{ ('REPAIR_STATE_' + row.state).toLowerCase() | translate }}\\n \\n {{ row.invoiceIdent }}\\n \\n \\n
\\n \\n \\n
\\n
\\n
\\n
\\n\\n
\\n
\\n
\\n
\"","module.exports = \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvcGFnZXMvYWRtaW4vcmVwYWlyLW9yZGVyL2xpc3QvYWRtaW4tcmVwYWlyLW9yZGVyLWxpc3QuY29tcG9uZW50Lmxlc3MifQ== */\"","import { Component, OnInit, ViewChild } from '@angular/core';\nimport { REST_SERVER } from 'src/app/config';\nimport { ActivatedRoute } from '@angular/router';\nimport { RepairOrder } from 'src/app/model/repair-order.model';\nimport { InvoiceService } from 'src/app/service/invoice.service';\nimport { RepairOrderService } from 'src/app/service/repair-order.service';\nimport { GridComponent } from 'src/app/components/ui/grid/grid.component';\n\nenum RepairOrderActions {\n CREATE_INVOICE,\n CANCEL,\n};\n\n@Component({\n selector: 'app-admin-repair-order-list',\n templateUrl: './admin-repair-order-list.component.html',\n styleUrls: ['./admin-repair-order-list.component.less']\n})\nexport class AdminRepairOrderListComponent implements OnInit {\n @ViewChild('grid') private _grid:GridComponent;\n\n public loadingGrid:boolean = false;\n public totalCnt:number = 0;\n public title:string = '';\n public state:string = '';\n\n public selectionStatus = [\n { key: \"status_active\", val: \"Aktiv\" }, \n { key: \"status_inactive\", val: \"Inaktiv\" },\n ]\n\n filterDesc = {\n id: {\n type: \"string\",\n comp: \"eq\",\n label: \"Auftragsnr.\",\n },\n rimCount: {\n type: \"string\",\n comp: \"eq\",\n label: \"Anz. Felgen\",\n },\n state: {\n value: \"NONE\",\n comp: \"eq\",\n }\n }\n\n constructor(\n activatedRoute:ActivatedRoute,\n private _invoiceService:InvoiceService,\n private _repairOrderService:RepairOrderService,\n ) { \n activatedRoute.params.subscribe(params => {\n this.state = params.state;\n let filterDesc = {...this.filterDesc};\n filterDesc.state = {...this.filterDesc.state};\n if(params.state === 'new') {\n filterDesc.state.value = \"NEW\";\n this.title = 'Eingehende Aufträge';\n } else if(params.state === 'progress') {\n filterDesc.state.value = \"REPAIR_IN_PROGRESS\";\n this.title = 'Aufträge in Bearbeitung';\n } else if(params.state === 'finished') {\n filterDesc.state.value = \"REPAIR_FINISHED\";\n this.title = 'Aufträge in Rücklieferung';\n } else if(params.state === 'canceled') {\n filterDesc.state.value = \"CANCELED\";\n this.title = 'Stornierte Aufträge';\n }\n console.log(\"Filter: \" + filterDesc.state.value);\n this.filterDesc = filterDesc;\n });\n }\n\n ngOnInit() {\n }\n\n public getBaseUrl():string {\n return REST_SERVER + \"/repair-orders\";\n }\n\n public getActionsForRepairOrder(repairOrder:RepairOrder) {\n let result = [];\n if(repairOrder.state == 'REPAIR_FINISHED' && !repairOrder.invoiceIdent) {\n result.push({ key: RepairOrderActions.CREATE_INVOICE, val: 'Rechnung erstellen' });\n }\n if(repairOrder.state == 'NEW') {\n result.push({ key: RepairOrderActions.CANCEL, val: 'Auftrag stornieren' });\n }\n return result;\n }\n\n public async actionSelected(repairOrder:RepairOrder, action):Promise {\n switch(action.key) {\n case RepairOrderActions.CREATE_INVOICE:\n await this._invoiceService.createInvoiceForRepairOrder(repairOrder);\n this._grid.update();\n break;\n\n case RepairOrderActions.CANCEL:\n await this._repairOrderService.cancelOrder(repairOrder);\n break;\n }\n }\n}\n","import { Component, OnInit } from '@angular/core';\nimport { Title, Meta } from '@angular/platform-browser';\nimport { Router, ActivatedRoute, ChildActivationEnd } from '@angular/router';\nimport { filter, take } from 'rxjs/operators';\n\n@Component({\n selector: 'app-cms-public-page',\n template: `\n \n `,\n})\nexport class CmsPublicPageComponent {\n\n path:string;\n\n constructor(\n router:Router,\n activatedRoute:ActivatedRoute,\n ) { \n activatedRoute.params.subscribe(params => {\n\n });\n\n router.events.pipe(\n filter(event => event instanceof ChildActivationEnd)\n ).subscribe(event=> {\n const url:string = (event).snapshot['_routerState'].url;\n console.log(\"Change url\", url);\n this.path = url.substr(1);\n });\n }\n\n}\n","module.exports = \"\\n\\n\\n\"","module.exports = \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvcGFnZXMvcHVibGljL2luZGV4L2luZGV4LmNvbXBvbmVudC5sZXNzIn0= */\"","import { Component, OnInit } from '@angular/core';\nimport { Router } from '@angular/router';\nimport { HttpClient } from '@angular/common/http';\nimport { Title, Meta } from '@angular/platform-browser';\n\n@Component({\n selector: 'app-index',\n templateUrl: './index.component.html',\n styleUrls: ['./index.component.less']\n})\nexport class IndexComponent {\n constructor(\n ) {\n \n }\n\n ngOnInit() {\n\n }\n\n ngOnDestroy() {\n }\n\n}\n","module.exports = \"\\n\\n
\\n
\\n
\\n
\\n \\n
\\n
\\n
\\n

Kompetente & fachgerechte Felgenauf­bereitung

\\n

vom Kratzer bis zur vollständig überarbeiteten Felge

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

SO FUNKTIONIERT’S

\\n

Schritt für Schritt zu Ihrer optisch einwandfrei aufbereiteten Felge

\\n
\\n
\\n
\\n
\\n \\\"Card\\n
\\n
Felge beschädigt?
Wie ärgerlich!
\\n

FelgenHero bietet Ihnen eine schnelle und\\n fachgerechte Lösung zur optischen Felgenaufbereitung.\\n

\\n \\n
\\n
\\n
\\n \\\"Card\\n
\\n
ServicePartner finden
\\n

Auf FelgenHero finden Sie mit Ihren Zugangsdaten den für Sie optimalen ServicePartner in Ihrer Nähe.

\\n \\n
\\n
\\n
\\n \\\"Card\\n
\\n
Felgenaufbereitung
buchen
\\n

Buchen Sie Ihre Felgenaufbereitung ganz einfach bei Ihrem\\n FelgenHero ServicePartner, mit dem Sie einen Aufbereitungsvertrag schließen.

\\n \\n
\\n
\\n
\\n \\\"Card\\n
\\n
Nach ca. 12 Werktagen Felge(n) zurück
\\n

Nach ca. 12 Werktagen sind Ihre Felge(n) wieder wie neu und zurück vom FelgenHero ServicePartner. Abholung und Lieferung ist im Service inbegriffen.

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

{{headlineLoginText}}

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

Zum\\n Login

\\n
\\n
\\n
\\n\\n
\\n
\\n
\\n Wir haben eine E-Mail zum Zurücksetzen des Passworts an\\n geschickt. Bitte überprüfen Sie Ihren Posteingang!\\n
\\n
\\n
\\n
\\n
\\n
\\n

Neu bei FelgenHero?

\\n
\\n
\\n
\\n
\\n Einfach registrieren und ServicePartner von FelgenHero werden. Verhelfen Sie den Autofahrern\\n und ihren Felgen zu neuem Glanz!\\n
\\n
\\n Jetzt ServicePartner werden\\n
\\n
\\n
\\n
\\n
\\n\\n
\\n \\n
\\n\\n
\\n
\\n
\\n
\\n
\\n

fair – kompetent – zuverlässig – schnell

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

Ist Ihre Alufelge auch betroffen?

\\n

Nach Expertenschätzungen sind auf Deutschlands Straßen rund\\n 31 Millionen beschädigter Leichtmetallräder unterwegs.

\\n

Über FelgenHero erhalten Sie Kontakt zu ServicePartnern,\\n die Ihnen eine optisch einwandfreie Aufbereitung stringent\\n nach allen gesetzlichen Vorgaben ermöglichen.\\n

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

Einwandfreie AUFBEREITUNGSQUALITÄT

\\n

Die ServicePartner sorgen zusammen mit qualifizierten Deutschen Reparaturbetrieben für eine einwandfreie Aufbereitungsqualität. \\n Diese erfahrenen Experten kommen\\n direkt aus der Leichtmetall-Fertigung eines namhaften Räderherstellers.\\n Um das in dieser Form deutschlandweit einmalige Aufbereitungs-Konzept umzusetzen,\\n wird mit modernsten Maschinen und Techniken gearbeitet.\\n

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

Sicherstellung aller bekannten Vorgaben zur Felgenaufbereitung

\\n

Die von uns überprüften Reparaturbetriebe die Einhaltung aller heute bekannten Vorgaben zur Felgenaufbereitung sicher, \\n wie sie federführend der Fachausschuss Fahrzeugtechnik (FKT) des\\n Verbands Deutscher Maschinen und Anlagenbau e.V. (VDMA) in einem Grundsatzpapier\\n zusammengefasst hat. Den Bedingungen des Bundesverkehrsministeriums, die\\n vom FKT-Sonderausschuss Reifen & Räder in der genannten Verlautbarung\\n dokumentiert werden, wird bei der Instandsetzung zu 100% entsprochen.\\n

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

Safety First

\\n

Es können keine Höhen- und Seitenschläge der Felge sowie Beschädigungen, \\n die 1 mm Beschädigungstiefe im Grundmaterial überschreiten, instandgesetzt bzw. aufbereitet werden. \\n Die Felge wird nicht erwärmt, rückverformt oder mit einem Sandstrahlgerät bearbeitet, \\n um unnötige Gefahren von vornherein auszuschließen.\\n

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

Sie haben Fragen? Gerne!

\\n

Kontaktieren Sie unseren FelgenHero Support per\\n Telefon oder E-Mail\\n

\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
+49 (0)8638 98160 1518
info@felgenhero.com
\\n

Mo–Fr, von 08.00 bis 18.00 Uhr

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

Mein FelgenHero Newsletter

\\n

Ich möchte zukünftig von FelgenHero über Neuerungen, exklusive Aktionen \\n und aktuelle Trends zum Thema Felge per E-Mail informiert werden.
\\n Diese Einwilligung kann jederzeit am Ende jeder E-Mail \\n widerrufen werden.\\n \\n

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

\\n Vielen Dank! Wir haben Ihre Anmeldung für unseren Newsletter erhalten.\\n Bitte prüfen Sie Ihr E-Mail-Postfach, um die E-Mail-Adresse zu bestätigen.\\n

\\n
\\n
\\n
\\n
\\n\\n \\n\"","module.exports = \".card {\\n border: none;\\n}\\ninput[type=\\\"text\\\"],\\ninput[type=\\\"password\\\"] {\\n border-radius: 0;\\n border: none;\\n box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.15) !important;\\n}\\n.subtitle {\\n font-size: 140%;\\n}\\n.section-sideImg h2 {\\n text-transform: uppercase;\\n color: #be1822;\\n font-weight: 600;\\n font-size: 170%;\\n}\\n.section-sideImg p {\\n font-size: 120%;\\n}\\n/*jumbotron --------------------------------------------------------------------------------*/\\n#index-jumbotron .container {\\n margin: 0 0 0 0;\\n max-width: 100%;\\n padding: 0 0 0 0;\\n}\\n.jumbotron-text .row {\\n padding: 0;\\n margin: 0;\\n}\\n.jumbotron-text p {\\n color: #222;\\n padding: 0.5rem;\\n}\\n.jumbotron-text #title-box {\\n margin-bottom: 10px;\\n}\\n.jumbotron-text #title-box #title {\\n padding: 0.7rem;\\n}\\n.jumbotron-text #title-box #title h1 {\\n margin: 0;\\n}\\n#index-jumbotron .container {\\n background-image: url('/api/cms/files/title_mirrored.jpg');\\n border-radius: 0;\\n background-repeat: no-repeat;\\n background-size: cover;\\n max-height: 700px;\\n min-height: 600px;\\n background-position: center bottom;\\n}\\n#index-jumbotron .jumbotron-text {\\n padding: 3rem;\\n}\\n#index-jumbotron h1 {\\n text-transform: uppercase;\\n font-size: 200%;\\n color: #be1822;\\n font-weight: 500;\\n line-height: 1.2;\\n}\\n#index-jumbotron p {\\n font-size: 120%;\\n}\\n#badge {\\n text-align: right;\\n padding-right: 5em;\\n padding-bottom: 2em;\\n}\\n#badge img {\\n width: 25%;\\n}\\n@media (max-width: 767.98px) {\\n #index-jumbotron .jumbotron-text {\\n padding: 2rem;\\n }\\n #index-jumbotron #title {\\n max-width: 100%;\\n flex: 0 0 100%;\\n text-align: center;\\n }\\n #index-jumbotron #title h1 {\\n color: red;\\n font-weight: 800;\\n font-size: 160%;\\n padding-bottom: 20px;\\n }\\n #index-jumbotron #title h1 span {\\n background-color: aliceblue;\\n }\\n #index-jumbotron #title p {\\n color: white;\\n font-weight: 600;\\n background-color: #222;\\n }\\n #index-jumbotron #badge {\\n padding-right: 0em;\\n padding-bottom: 1em;\\n }\\n #index-jumbotron #badge img {\\n width: 50%;\\n }\\n}\\n/*So gehts ------------------------------------------------------------------------- */\\n#felge-beschaedigt .container {\\n max-width: 80%;\\n margin: auto;\\n margin: 0 0 0 0;\\n max-width: 100%;\\n padding: 0 0 0 0;\\n}\\n#felge-beschaedigt .container h2 {\\n text-transform: uppercase;\\n color: #be1822;\\n font-weight: 600;\\n font-size: 170%;\\n}\\n#felge-beschaedigt h5 {\\n font-weight: 600;\\n}\\n#felge-beschaedigt .subtitle {\\n font-size: 120%;\\n}\\n/*section felge-beschädigt*/\\n#felge-beschaedigt .card {\\n border: none;\\n}\\n#felge-beschaedigt .icon {\\n max-width: 2vw;\\n position: absolute;\\n top: 50%;\\n right: 0px;\\n z-index: 100;\\n opacity: 0.5;\\n}\\n#felge-beschaedigt .card-text {\\n font-size: smaller;\\n}\\n#felge-beschaedigt .card-img-top {\\n width: 80%;\\n margin: auto;\\n}\\n@media (max-width: 767.98px) {\\n #felge-beschaedigt .container .row {\\n max-width: 90%;\\n margin: auto;\\n }\\n #felge-beschaedigt .card h5 {\\n text-align: center;\\n }\\n}\\n/*login section -------------------------------------------------------------------- */\\n#index-login {\\n background: #f5f5f5;\\n}\\n#index-login #register-card a {\\n color: #f5f5f5;\\n}\\n#index-login .container {\\n max-width: 80%;\\n margin: auto;\\n}\\n#index-login .card-body {\\n padding: 2rem 5rem;\\n}\\n#index-login .card {\\n padding: 0;\\n box-shadow: 0px 0px 40px 0px rgb(100 100 100);\\n}\\n#index-login .card-header {\\n text-align: center;\\n text-transform: uppercase;\\n color: #be1822;\\n border-bottom: none;\\n}\\n@media (max-width: 767.98px) {\\n #index-login .card-body {\\n padding: 2rem 3rem;\\n }\\n}\\n/*fair section -------------------------------------------------------------------- */\\n@media (max-width: 767.98px) {\\n #fair-competent p {\\n font-size: 120% !important;\\n }\\n}\\n#fair-competent .container {\\n height: 300px;\\n margin: 0 0 0 0;\\n max-width: 100%;\\n padding: 0 0 0 0;\\n}\\n#fair-competent .row {\\n position: relative;\\n top: 35%;\\n font-size: 130%;\\n}\\n#fair-competent .jumbotron.fair-competent {\\n background-image: url('/api/cms/files/fair-competent.jpg');\\n background-size: cover;\\n width: 100%;\\n background-position: top center;\\n border-radius: 0;\\n height: 100%;\\n}\\n#fair-competent .jumbotron.fair-competent p {\\n text-transform: uppercase;\\n color: white;\\n text-align: center;\\n font-size: 200%;\\n font-weight: 500;\\n line-height: 1.2;\\n}\\n/*Leistung section -------------------------------------------------------------------- */\\n.section-sideImg {\\n padding: 3rem;\\n}\\n.section-sideImg .container {\\n max-width: 80%;\\n margin: auto;\\n}\\n#reparaturqualitaet {\\n background-color: #f0f0f0;\\n}\\n#safety-first {\\n background-color: #f0f0f0;\\n}\\n@media (max-width: 767.98px) {\\n .section-sideImg .container {\\n padding: 0 0;\\n max-width: 100%;\\n }\\n .section-sideImg h2 {\\n font-size: 130%;\\n }\\n .section-sideImg p {\\n font-size: smaller;\\n }\\n}\\n/*Kontakt section -------------------------------------------------------------------- */\\n#kontakt {\\n padding: 3rem;\\n /*background-color: rgb(240,240,240);*/\\n}\\n#kontakt .container {\\n max-width: 80%;\\n margin: auto;\\n}\\n#kontakt .container h2 {\\n text-transform: uppercase;\\n color: #be1822;\\n font-weight: 600;\\n font-size: 170%;\\n}\\n#kontakt .container #btnSubscribeNewsletter {\\n width: 100%;\\n}\\n@media (max-width: 767.98px) {\\n #kontakt .container {\\n padding-left: 0;\\n padding-right: 0;\\n max-width: 100%;\\n }\\n}\\n\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9hcHAtdWkvc3JjL2FwcC9jb21wb25lbnRzL3BhZ2VzL3B1YmxpYy9vbmUtcGFnZXIvb25lLXBhZ2VyLmNvbXBvbmVudC5sZXNzIiwic3JjL2FwcC9jb21wb25lbnRzL3BhZ2VzL3B1YmxpYy9vbmUtcGFnZXIvb25lLXBhZ2VyLmNvbXBvbmVudC5sZXNzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBO0VBQ0ksWUFBQTtBQ0FKO0FER0E7O0VBRUksZ0JBQUE7RUFDQSxZQUFBO0VBQ0EsMkRBQUE7QUNESjtBRElBO0VBQ0ksZUFBQTtBQ0ZKO0FES0E7RUFHUSx5QkFBQTtFQUNBLGNBQUE7RUFDQSxnQkFBQTtFQUNBLGVBQUE7QUNMUjtBRERBO0VBVVEsZUFBQTtBQ05SO0FBQ0EsNkZBQTZGO0FEVzdGO0VBQ0ksZUFBQTtFQUNBLGVBQUE7RUFDQSxnQkFBQTtBQ1RKO0FEWUE7RUFDSSxVQUFBO0VBQ0EsU0FBQTtBQ1ZKO0FEYUE7RUFDSSxXQUFBO0VBQ0EsZUFBQTtBQ1hKO0FEY0E7RUFDSSxtQkFBQTtBQ1pKO0FEZUE7RUFDSSxlQUFBO0FDYko7QURnQkE7RUFDSSxTQUFBO0FDZEo7QURpQkE7RUFDSSwwREFBQTtFQUNBLGdCQUFBO0VBQ0EsNEJBQUE7RUFDQSxzQkFBQTtFQUNBLGlCQUFBO0VBQ0EsaUJBQUE7RUFDQSxrQ0FBQTtBQ2ZKO0FEb0JBO0VBRUksYUFBQTtBQ25CSjtBRHNCQTtFQUNJLHlCQUFBO0VBQ0EsZUFBQTtFQUNBLGNBQUE7RUFDQSxnQkFBQTtFQUNBLGdCQUFBO0FDcEJKO0FEdUJBO0VBQ0ksZUFBQTtBQ3JCSjtBRHdCQTtFQUVJLGlCQUFBO0VBQ0Esa0JBQUE7RUFDQSxtQkFBQTtBQ3ZCSjtBRG1CQTtFQVFRLFVBQUE7QUN4QlI7QUQ0QkE7RUFFSTtJQUtRLGFBQUE7RUMvQlY7RUQwQkU7SUFVUSxlQUFBO0lBQ0EsY0FBQTtJQUNBLGtCQUFBO0VDakNWO0VEcUJFO0lBZVksVUFBQTtJQUNBLGdCQUFBO0lBQ0EsZUFBQTtJQU1BLG9CQUFBO0VDdENkO0VEZUU7SUFvQmdCLDJCQUFBO0VDaENsQjtFRFlFO0lBMkJZLFlBQUE7SUFDQSxnQkFBQTtJQUNBLHNCQUFBO0VDcENkO0VET0U7SUFtQ1Esa0JBQUE7SUFDQSxtQkFBQTtFQ3ZDVjtFREdFO0lBdUNZLFVBQUE7RUN2Q2Q7QUFDRjtBQUNBLHNGQUFzRjtBRDhDdEY7RUFHUSxjQUFBO0VBQ0EsWUFBQTtFQUNBLGVBQUE7RUFDQSxlQUFBO0VBQ0EsZ0JBQUE7QUM5Q1I7QUR1Q0E7RUFVWSx5QkFBQTtFQUNBLGNBQUE7RUFDQSxnQkFBQTtFQUNBLGVBQUE7QUM5Q1o7QURpQ0E7RUFrQlEsZ0JBQUE7QUNoRFI7QUQ4QkE7RUFzQlEsZUFBQTtBQ2pEUjtBQUNBLDJCQUEyQjtBRHdEM0I7RUFDSSxZQUFBO0FDdERKO0FEeURBO0VBQ0ksY0FBQTtFQUNBLGtCQUFBO0VBQ0EsUUFBQTtFQUNBLFVBQUE7RUFDQSxZQUFBO0VBQ0EsWUFBQTtBQ3ZESjtBRDBEQTtFQUNJLGtCQUFBO0FDeERKO0FEMkRBO0VBQ0ksVUFBQTtFQUNBLFlBQUE7QUN6REo7QUQ0REE7RUFFSTtJQU1ZLGNBQUE7SUFDQSxZQUFBO0VDaEVkO0VEeURFO0lBZVksa0JBQUE7RUNyRWQ7QUFDRjtBQUNBLHNGQUFzRjtBRDJFdEY7RUFDSSxtQkFBQTtBQ3pFSjtBRHdFQTtFQUtZLGNBQUE7QUMxRVo7QUQrRUE7RUFDSSxjQUFBO0VBQ0EsWUFBQTtBQzdFSjtBRGlGQTtFQUNJLGtCQUFBO0FDL0VKO0FEa0ZBO0VBQ0ksVUFBQTtFQUNBLDZDQUFBO0FDaEZKO0FEbUZBO0VBQ0ksa0JBQUE7RUFDQSx5QkFBQTtFQUNBLGNBQUE7RUFDQSxtQkFBQTtBQ2pGSjtBRHFGQTtFQUVJO0lBSVEsa0JBQUE7RUN2RlY7QUFDRjtBQUNBLHFGQUFxRjtBRCtGckY7RUFFSTtJQUlRLDBCQUFBO0VDakdWO0FBQ0Y7QURxR0E7RUFDSSxhQUFBO0VBQ0EsZUFBQTtFQUNBLGVBQUE7RUFDQSxnQkFBQTtBQ25HSjtBRHNHQTtFQUNJLGtCQUFBO0VBQ0EsUUFBQTtFQUNBLGVBQUE7QUNwR0o7QUR1R0E7RUFDSSwwREFBQTtFQUNBLHNCQUFBO0VBQ0EsV0FBQTtFQUNBLCtCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxZQUFBO0FDckdKO0FEd0dBO0VBQ0kseUJBQUE7RUFDQSxZQUFBO0VBQ0Esa0JBQUE7RUFDQSxlQUFBO0VBQ0EsZ0JBQUE7RUFDQSxnQkFBQTtBQ3RHSjtBQUNBLHlGQUF5RjtBRDRHekY7RUFDSSxhQUFBO0FDMUdKO0FENkdBO0VBQ0ksY0FBQTtFQUNBLFlBQUE7QUMzR0o7QUQrR0E7RUFDSSx5QkFBQTtBQzdHSjtBRGdIQTtFQUNJLHlCQUFBO0FDOUdKO0FEaUhBO0VBRUk7SUFJUSxZQUFBO0lBQ0EsZUFBQTtFQ25IVjtFRDhHRTtJQVVRLGVBQUE7RUNySFY7RUQyR0U7SUFlUSxrQkFBQTtFQ3ZIVjtBQUNGO0FBQ0Esd0ZBQXdGO0FENEh4RjtFQUNJLGFBQUE7RUMxSEYsc0NBQXNDO0FBQ3hDO0FEd0hBO0VBS1EsY0FBQTtFQUNBLFlBQUE7QUMxSFI7QURvSEE7RUFTWSx5QkFBQTtFQUNBLGNBQUE7RUFDQSxnQkFBQTtFQUNBLGVBQUE7QUMxSFo7QUQ4R0E7RUFnQlksV0FBQTtBQzNIWjtBRGdJQTtFQUVJO0lBSVEsZUFBQTtJQUNBLGdCQUFBO0lBQ0EsZUFBQTtFQ2xJVjtBQUNGIiwiZmlsZSI6InNyYy9hcHAvY29tcG9uZW50cy9wYWdlcy9wdWJsaWMvb25lLXBhZ2VyL29uZS1wYWdlci5jb21wb25lbnQubGVzcyIsInNvdXJjZXNDb250ZW50IjpbIlxuLmNhcmQge1xuICAgIGJvcmRlcjpub25lO1xufVxuXG5pbnB1dFt0eXBlPVwidGV4dFwiXSxcbmlucHV0W3R5cGU9XCJwYXNzd29yZFwiXSB7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYm94LXNoYWRvdzogMHB4IDBweCAxMHB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMTUpICFpbXBvcnRhbnQ7XG59XG5cbi5zdWJ0aXRsZXtcbiAgICBmb250LXNpemU6IDE0MCU7XG59XG5cbi5zZWN0aW9uLXNpZGVJbWd7XG5cbiAgICBoMiB7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGNvbG9yOiAjYmUxODIyO1xuICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICBmb250LXNpemU6IDE3MCU7XG4gICAgfVxuICAgIFxuICAgIHB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTIwJTtcbiAgICB9XG59XG5cbi8qanVtYm90cm9uIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuI2luZGV4LWp1bWJvdHJvbiAuY29udGFpbmVyIHtcbiAgICBtYXJnaW46IDAgMCAwIDA7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmc6IDAgMCAwIDA7XG59XG5cbi5qdW1ib3Ryb24tdGV4dCAucm93e1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luOiAwO1xufVxuXG4uanVtYm90cm9uLXRleHQgcCB7XG4gICAgY29sb3I6ICMyMjI7XG4gICAgcGFkZGluZzogMC41cmVtO1xufVxuXG4uanVtYm90cm9uLXRleHQgI3RpdGxlLWJveCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbn1cblxuLmp1bWJvdHJvbi10ZXh0ICN0aXRsZS1ib3ggI3RpdGxlIHtcbiAgICBwYWRkaW5nOiAwLjdyZW07XG59XG5cbi5qdW1ib3Ryb24tdGV4dCAjdGl0bGUtYm94ICN0aXRsZSBoMSB7XG4gICAgbWFyZ2luOiAwO1xufVxuXG4jaW5kZXgtanVtYm90cm9uIC5jb250YWluZXIge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnL2FwaS9jbXMvZmlsZXMvdGl0bGVfbWlycm9yZWQuanBnJyk7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgbWF4LWhlaWdodDogNzAwcHg7XG4gICAgbWluLWhlaWdodDogNjAwcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGJvdHRvbTtcbiAgICBcbn1cblxuXG4jaW5kZXgtanVtYm90cm9uIC5qdW1ib3Ryb24tdGV4dCB7XG5cbiAgICBwYWRkaW5nOiAzcmVtO1xufVxuXG4jaW5kZXgtanVtYm90cm9uIGgxIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGZvbnQtc2l6ZTogMjAwJTtcbiAgICBjb2xvcjogI2JlMTgyMjtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG59XG5cbiNpbmRleC1qdW1ib3Ryb24gcCB7XG4gICAgZm9udC1zaXplOiAxMjAlO1xufVxuXG4jYmFkZ2VcbntcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICBwYWRkaW5nLXJpZ2h0OiA1ZW07XG4gICAgcGFkZGluZy1ib3R0b206IDJlbTtcblxuICAgIGltZyBcbiAgICB7XG4gICAgICAgIHdpZHRoOiAyNSU7XG4gICAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIFxue1xuICAgICNpbmRleC1qdW1ib3Ryb25cbiAgICB7ICAgXG4gICAgICAgIFxuICAgICAgICAuanVtYm90cm9uLXRleHQgXG4gICAgICAgIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDJyZW07XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgICN0aXRsZVxuICAgICAgICB7ICAgXG4gICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIGgxIFxuICAgICAgICAgICAgeyAgIFxuICAgICAgICAgICAgICAgIGNvbG9yOiByZWQ7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE2MCU7XG4gICAgICAgICAgICAgICAgc3BhbiBcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGFsaWNlYmx1ZTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHAgXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzIyMjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICNiYWRnZSBcbiAgICAgICAgeyAgIFxuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMGVtO1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDFlbTtcbiAgICAgICAgICAgIGltZyBcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIFxuICAgIH1cbn1cblxuLypTbyBnZWh0cyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbiNmZWxnZS1iZXNjaGFlZGlndHtcblxuICAgIC5jb250YWluZXJ7XG4gICAgICAgIG1heC13aWR0aDogODAlO1xuICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgIG1hcmdpbjogMCAwIDAgMDtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICBwYWRkaW5nOiAwIDAgMCAwO1xuXG4gICAgICAgIGgye1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgIGNvbG9yOiAjYmUxODIyO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTcwJTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGg1IHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICB9XG5cbiAgICAuc3VidGl0bGV7XG4gICAgICAgIGZvbnQtc2l6ZTogMTIwJTtcbiAgICB9XG59XG5cblxuXG5cbi8qc2VjdGlvbiBmZWxnZS1iZXNjaMOkZGlndCovXG4jZmVsZ2UtYmVzY2hhZWRpZ3QgLmNhcmQge1xuICAgIGJvcmRlcjogbm9uZTtcbn1cblxuI2ZlbGdlLWJlc2NoYWVkaWd0IC5pY29uIHtcbiAgICBtYXgtd2lkdGg6IDJ2dztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgcmlnaHQ6IDBweDtcbiAgICB6LWluZGV4OiAxMDA7XG4gICAgb3BhY2l0eTogMC41O1xufVxuXG4jZmVsZ2UtYmVzY2hhZWRpZ3QgLmNhcmQtdGV4dCB7XG4gICAgZm9udC1zaXplOiBzbWFsbGVyO1xufVxuXG4jZmVsZ2UtYmVzY2hhZWRpZ3QgLmNhcmQtaW1nLXRvcCB7XG4gICAgd2lkdGg6IDgwJTtcbiAgICBtYXJnaW46IGF1dG87XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkgXG57XG4gICAgI2ZlbGdlLWJlc2NoYWVkaWd0XG4gICAge1xuICAgICAgICAuY29udGFpbmVyXG4gICAgICAgIHtcbiAgICAgICAgICAgIC5yb3cgXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiA5MCU7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmNhcmQgXG4gICAgICAgIHtcbiAgICAgICAgICAgIGg1IFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLypsb2dpbiBzZWN0aW9uIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbiNpbmRleC1sb2dpbiB7XG4gICAgYmFja2dyb3VuZDogcmdiKDI0NSwgMjQ1LCAyNDUpO1xuXG4gICAgI3JlZ2lzdGVyLWNhcmR7XG4gICAgICAgIGEge1xuICAgICAgICAgICAgY29sb3I6cmdiKDI0NSwgMjQ1LCAyNDUpO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4jaW5kZXgtbG9naW4gLmNvbnRhaW5lcntcbiAgICBtYXgtd2lkdGg6IDgwJTtcbiAgICBtYXJnaW46IGF1dG87XG4gICAgXG59XG5cbiNpbmRleC1sb2dpbiAuY2FyZC1ib2R5IHtcbiAgICBwYWRkaW5nOiAycmVtIDVyZW07XG59XG5cbiNpbmRleC1sb2dpbiAuY2FyZCB7XG4gICAgcGFkZGluZzogMDtcbiAgICBib3gtc2hhZG93OiAwcHggMHB4IDQwcHggMHB4IHJnYigxMDAgMTAwIDEwMCk7XG59XG5cbiNpbmRleC1sb2dpbiAuY2FyZC1oZWFkZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGNvbG9yOiAjYmUxODIyO1xuICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG59XG5cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSBcbntcbiAgICAjaW5kZXgtbG9naW4gXG4gICAge1xuICAgICAgICAuY2FyZC1ib2R5IFxuICAgICAgICB7XG4gICAgICAgICAgICBwYWRkaW5nOiAycmVtIDNyZW07XG4gICAgICAgIH1cbiAgICB9XG59XG5cblxuXG5cbi8qZmFpciBzZWN0aW9uIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkgXG57XG4gICAgI2ZhaXItY29tcGV0ZW50IFxuICAgIHtcbiAgICAgICAgcCBcbiAgICAgICAge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxMjAlICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbiNmYWlyLWNvbXBldGVudCAuY29udGFpbmVyIHtcbiAgICBoZWlnaHQ6IDMwMHB4O1xuICAgIG1hcmdpbjogMCAwIDAgMDtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZzogMCAwIDAgMDtcbn1cblxuI2ZhaXItY29tcGV0ZW50IC5yb3cge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IDM1JTtcbiAgICBmb250LXNpemU6IDEzMCU7XG59XG5cbiNmYWlyLWNvbXBldGVudCAuanVtYm90cm9uLmZhaXItY29tcGV0ZW50IHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy9hcGkvY21zL2ZpbGVzL2ZhaXItY29tcGV0ZW50LmpwZycpO1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogdG9wIGNlbnRlcjtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIGhlaWdodDogMTAwJTtcbn1cblxuI2ZhaXItY29tcGV0ZW50IC5qdW1ib3Ryb24uZmFpci1jb21wZXRlbnQgcCB7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBjb2xvcjogd2hpdGU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGZvbnQtc2l6ZTogMjAwJTtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG59XG5cblxuXG4vKkxlaXN0dW5nIHNlY3Rpb24gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLnNlY3Rpb24tc2lkZUltZyB7XG4gICAgcGFkZGluZzogM3JlbTtcbn1cblxuLnNlY3Rpb24tc2lkZUltZyAuY29udGFpbmVye1xuICAgIG1heC13aWR0aDogODAlO1xuICAgIG1hcmdpbjogYXV0bztcbiAgICBcbn1cblxuI3JlcGFyYXR1cnF1YWxpdGFldCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDI0MCwyNDAsMjQwKTtcbn1cblxuI3NhZmV0eS1maXJzdCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDI0MCwyNDAsMjQwKTtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSBcbntcbiAgICAuc2VjdGlvbi1zaWRlSW1nIFxuICAgIHtcbiAgICAgICAgLmNvbnRhaW5lciBcbiAgICAgICAge1xuICAgICAgICAgICAgcGFkZGluZzogMCAwO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICB9XG5cbiAgICAgICAgaDIgXG4gICAgICAgIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTMwJTtcbiAgICAgICAgfVxuXG4gICAgICAgIHAgXG4gICAgICAgIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogc21hbGxlcjtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLypLb250YWt0IHNlY3Rpb24gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuI2tvbnRha3Qge1xuICAgIHBhZGRpbmc6IDNyZW07XG4gICAgLypiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjQwLDI0MCwyNDApOyovXG5cbiAgICAuY29udGFpbmVye1xuICAgICAgICBtYXgtd2lkdGg6IDgwJTtcbiAgICAgICAgbWFyZ2luOiBhdXRvO1xuXG4gICAgICAgIGgye1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgIGNvbG9yOiAjYmUxODIyO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTcwJTtcbiAgICAgICAgfVxuXG4gICAgICAgICNidG5TdWJzY3JpYmVOZXdzbGV0dGVyIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIFxue1xuICAgICNrb250YWt0IFxuICAgIHtcbiAgICAgICAgLmNvbnRhaW5lciBcbiAgICAgICAge1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi5jYXJkIHtcbiAgYm9yZGVyOiBub25lO1xufVxuaW5wdXRbdHlwZT1cInRleHRcIl0sXG5pbnB1dFt0eXBlPVwicGFzc3dvcmRcIl0ge1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBib3JkZXI6IG5vbmU7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMTBweCAwcHggcmdiYSgwLCAwLCAwLCAwLjE1KSAhaW1wb3J0YW50O1xufVxuLnN1YnRpdGxlIHtcbiAgZm9udC1zaXplOiAxNDAlO1xufVxuLnNlY3Rpb24tc2lkZUltZyBoMiB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGNvbG9yOiAjYmUxODIyO1xuICBmb250LXdlaWdodDogNjAwO1xuICBmb250LXNpemU6IDE3MCU7XG59XG4uc2VjdGlvbi1zaWRlSW1nIHAge1xuICBmb250LXNpemU6IDEyMCU7XG59XG4vKmp1bWJvdHJvbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4jaW5kZXgtanVtYm90cm9uIC5jb250YWluZXIge1xuICBtYXJnaW46IDAgMCAwIDA7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMCAwIDAgMDtcbn1cbi5qdW1ib3Ryb24tdGV4dCAucm93IHtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwO1xufVxuLmp1bWJvdHJvbi10ZXh0IHAge1xuICBjb2xvcjogIzIyMjtcbiAgcGFkZGluZzogMC41cmVtO1xufVxuLmp1bWJvdHJvbi10ZXh0ICN0aXRsZS1ib3gge1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xufVxuLmp1bWJvdHJvbi10ZXh0ICN0aXRsZS1ib3ggI3RpdGxlIHtcbiAgcGFkZGluZzogMC43cmVtO1xufVxuLmp1bWJvdHJvbi10ZXh0ICN0aXRsZS1ib3ggI3RpdGxlIGgxIHtcbiAgbWFyZ2luOiAwO1xufVxuI2luZGV4LWp1bWJvdHJvbiAuY29udGFpbmVyIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcvYXBpL2Ntcy9maWxlcy90aXRsZV9taXJyb3JlZC5qcGcnKTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgbWF4LWhlaWdodDogNzAwcHg7XG4gIG1pbi1oZWlnaHQ6IDYwMHB4O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgYm90dG9tO1xufVxuI2luZGV4LWp1bWJvdHJvbiAuanVtYm90cm9uLXRleHQge1xuICBwYWRkaW5nOiAzcmVtO1xufVxuI2luZGV4LWp1bWJvdHJvbiBoMSB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtc2l6ZTogMjAwJTtcbiAgY29sb3I6ICNiZTE4MjI7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG59XG4jaW5kZXgtanVtYm90cm9uIHAge1xuICBmb250LXNpemU6IDEyMCU7XG59XG4jYmFkZ2Uge1xuICB0ZXh0LWFsaWduOiByaWdodDtcbiAgcGFkZGluZy1yaWdodDogNWVtO1xuICBwYWRkaW5nLWJvdHRvbTogMmVtO1xufVxuI2JhZGdlIGltZyB7XG4gIHdpZHRoOiAyNSU7XG59XG5AbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgI2luZGV4LWp1bWJvdHJvbiAuanVtYm90cm9uLXRleHQge1xuICAgIHBhZGRpbmc6IDJyZW07XG4gIH1cbiAgI2luZGV4LWp1bWJvdHJvbiAjdGl0bGUge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbiAgI2luZGV4LWp1bWJvdHJvbiAjdGl0bGUgaDEge1xuICAgIGNvbG9yOiByZWQ7XG4gICAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgICBmb250LXNpemU6IDE2MCU7XG4gICAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gIH1cbiAgI2luZGV4LWp1bWJvdHJvbiAjdGl0bGUgaDEgc3BhbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogYWxpY2VibHVlO1xuICB9XG4gICNpbmRleC1qdW1ib3Ryb24gI3RpdGxlIHAge1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMyMjI7XG4gIH1cbiAgI2luZGV4LWp1bWJvdHJvbiAjYmFkZ2Uge1xuICAgIHBhZGRpbmctcmlnaHQ6IDBlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMWVtO1xuICB9XG4gICNpbmRleC1qdW1ib3Ryb24gI2JhZGdlIGltZyB7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxufVxuLypTbyBnZWh0cyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4jZmVsZ2UtYmVzY2hhZWRpZ3QgLmNvbnRhaW5lciB7XG4gIG1heC13aWR0aDogODAlO1xuICBtYXJnaW46IGF1dG87XG4gIG1hcmdpbjogMCAwIDAgMDtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwIDAgMCAwO1xufVxuI2ZlbGdlLWJlc2NoYWVkaWd0IC5jb250YWluZXIgaDIge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBjb2xvcjogI2JlMTgyMjtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgZm9udC1zaXplOiAxNzAlO1xufVxuI2ZlbGdlLWJlc2NoYWVkaWd0IGg1IHtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cbiNmZWxnZS1iZXNjaGFlZGlndCAuc3VidGl0bGUge1xuICBmb250LXNpemU6IDEyMCU7XG59XG4vKnNlY3Rpb24gZmVsZ2UtYmVzY2jDpGRpZ3QqL1xuI2ZlbGdlLWJlc2NoYWVkaWd0IC5jYXJkIHtcbiAgYm9yZGVyOiBub25lO1xufVxuI2ZlbGdlLWJlc2NoYWVkaWd0IC5pY29uIHtcbiAgbWF4LXdpZHRoOiAydnc7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHJpZ2h0OiAwcHg7XG4gIHotaW5kZXg6IDEwMDtcbiAgb3BhY2l0eTogMC41O1xufVxuI2ZlbGdlLWJlc2NoYWVkaWd0IC5jYXJkLXRleHQge1xuICBmb250LXNpemU6IHNtYWxsZXI7XG59XG4jZmVsZ2UtYmVzY2hhZWRpZ3QgLmNhcmQtaW1nLXRvcCB7XG4gIHdpZHRoOiA4MCU7XG4gIG1hcmdpbjogYXV0bztcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAjZmVsZ2UtYmVzY2hhZWRpZ3QgLmNvbnRhaW5lciAucm93IHtcbiAgICBtYXgtd2lkdGg6IDkwJTtcbiAgICBtYXJnaW46IGF1dG87XG4gIH1cbiAgI2ZlbGdlLWJlc2NoYWVkaWd0IC5jYXJkIGg1IHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbn1cbi8qbG9naW4gc2VjdGlvbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuI2luZGV4LWxvZ2luIHtcbiAgYmFja2dyb3VuZDogI2Y1ZjVmNTtcbn1cbiNpbmRleC1sb2dpbiAjcmVnaXN0ZXItY2FyZCBhIHtcbiAgY29sb3I6ICNmNWY1ZjU7XG59XG4jaW5kZXgtbG9naW4gLmNvbnRhaW5lciB7XG4gIG1heC13aWR0aDogODAlO1xuICBtYXJnaW46IGF1dG87XG59XG4jaW5kZXgtbG9naW4gLmNhcmQtYm9keSB7XG4gIHBhZGRpbmc6IDJyZW0gNXJlbTtcbn1cbiNpbmRleC1sb2dpbiAuY2FyZCB7XG4gIHBhZGRpbmc6IDA7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggNDBweCAwcHggcmdiKDEwMCAxMDAgMTAwKTtcbn1cbiNpbmRleC1sb2dpbiAuY2FyZC1oZWFkZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGNvbG9yOiAjYmUxODIyO1xuICBib3JkZXItYm90dG9tOiBub25lO1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gICNpbmRleC1sb2dpbiAuY2FyZC1ib2R5IHtcbiAgICBwYWRkaW5nOiAycmVtIDNyZW07XG4gIH1cbn1cbi8qZmFpciBzZWN0aW9uIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5AbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgI2ZhaXItY29tcGV0ZW50IHAge1xuICAgIGZvbnQtc2l6ZTogMTIwJSAhaW1wb3J0YW50O1xuICB9XG59XG4jZmFpci1jb21wZXRlbnQgLmNvbnRhaW5lciB7XG4gIGhlaWdodDogMzAwcHg7XG4gIG1hcmdpbjogMCAwIDAgMDtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwIDAgMCAwO1xufVxuI2ZhaXItY29tcGV0ZW50IC5yb3cge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogMzUlO1xuICBmb250LXNpemU6IDEzMCU7XG59XG4jZmFpci1jb21wZXRlbnQgLmp1bWJvdHJvbi5mYWlyLWNvbXBldGVudCB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnL2FwaS9jbXMvZmlsZXMvZmFpci1jb21wZXRlbnQuanBnJyk7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIHdpZHRoOiAxMDAlO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgY2VudGVyO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBoZWlnaHQ6IDEwMCU7XG59XG4jZmFpci1jb21wZXRlbnQgLmp1bWJvdHJvbi5mYWlyLWNvbXBldGVudCBwIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgY29sb3I6IHdoaXRlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZvbnQtc2l6ZTogMjAwJTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgbGluZS1oZWlnaHQ6IDEuMjtcbn1cbi8qTGVpc3R1bmcgc2VjdGlvbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLnNlY3Rpb24tc2lkZUltZyB7XG4gIHBhZGRpbmc6IDNyZW07XG59XG4uc2VjdGlvbi1zaWRlSW1nIC5jb250YWluZXIge1xuICBtYXgtd2lkdGg6IDgwJTtcbiAgbWFyZ2luOiBhdXRvO1xufVxuI3JlcGFyYXR1cnF1YWxpdGFldCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmMGYwZjA7XG59XG4jc2FmZXR5LWZpcnN0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YwZjBmMDtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAuc2VjdGlvbi1zaWRlSW1nIC5jb250YWluZXIge1xuICAgIHBhZGRpbmc6IDAgMDtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cbiAgLnNlY3Rpb24tc2lkZUltZyBoMiB7XG4gICAgZm9udC1zaXplOiAxMzAlO1xuICB9XG4gIC5zZWN0aW9uLXNpZGVJbWcgcCB7XG4gICAgZm9udC1zaXplOiBzbWFsbGVyO1xuICB9XG59XG4vKktvbnRha3Qgc2VjdGlvbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuI2tvbnRha3Qge1xuICBwYWRkaW5nOiAzcmVtO1xuICAvKmJhY2tncm91bmQtY29sb3I6IHJnYigyNDAsMjQwLDI0MCk7Ki9cbn1cbiNrb250YWt0IC5jb250YWluZXIge1xuICBtYXgtd2lkdGg6IDgwJTtcbiAgbWFyZ2luOiBhdXRvO1xufVxuI2tvbnRha3QgLmNvbnRhaW5lciBoMiB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGNvbG9yOiAjYmUxODIyO1xuICBmb250LXdlaWdodDogNjAwO1xuICBmb250LXNpemU6IDE3MCU7XG59XG4ja29udGFrdCAuY29udGFpbmVyICNidG5TdWJzY3JpYmVOZXdzbGV0dGVyIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5AbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgI2tvbnRha3QgLmNvbnRhaW5lciB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG59XG4iXX0= */\"","import { Component, OnInit } from '@angular/core';\nimport { NgZone } from '@angular/core';\nimport { Router } from '@angular/router';\nimport { FeedbackService } from 'src/app/service/feedback.service';\nimport { UserService } from 'src/app/service/user.service';\nimport { REST_SERVER } from '../../../../config';\nimport { User } from '../../../../model/user.model';\n\nimport { BsModalService } from 'ngx-bootstrap/modal';\nimport { NewsletterDialogComponent } from 'src/app/components/ui/dialogs/newsletter-dialog.component';\n\n@Component({\n selector: 'app-one-pager',\n templateUrl: './one-pager.component.html',\n styleUrls: ['./one-pager.component.less']\n})\nexport class OnePagerComponent implements OnInit {\n\n email: string = '';\n password: string = '';\n emailResetPw: string ='';\n\n headlineLoginText: string = 'Anmeldung';\n\n currentState: LoginDisplayState;\n\n constructor(\n private _ngZone:NgZone,\n private _feedbackService:FeedbackService,\n private _userService:UserService,\n private _router:Router,\n private _modalService:BsModalService\n ) { }\n\n private _loginPages = {\n \"service-partner\": [\"service-partner\", \"dashboard\"],\n \"admin\": [\"admin\", \"service-partners\", \"list\", \"active\"],\n \"repair-center\": [\"repair-center\", \"dashboard\"],\n };\n\n ngOnInit() {\n\n \n let user:User = this._userService.user;\n if(user && user.role) {\n\n this._router.navigate(this._loginPages[user.role]);\n }\n\n\n let scriptPath: string = `${REST_SERVER}/cms/js`;\n\n let scripts: HTMLCollectionOf = document.getElementsByTagName(\"script\");\n let found: boolean = false;\n for (let i = 0; i < scripts.length; i++) {\n let script = scripts[i];\n if (script.getAttribute(\"src\") === scriptPath) {\n found = true;\n break;\n }\n }\n\n if (!found) {\n let head = document.getElementsByTagName('head')[0];\n let script = document.createElement(\"script\");\n script.setAttribute(\"src\", scriptPath);\n head.appendChild(script);\n }\n\n this.currentState = LoginDisplayState.LoginForm;\n }\n\n\n async onLogin(): Promise {\n this._ngZone.run(async () => {\n try {\n let loginModel = new User();\n loginModel.email = this.email;\n loginModel.password = this.password;\n var loginResult: any = await this._userService.login(loginModel);\n } catch (exc) {\n\n this._feedbackService.showError(\"Login fehlerhaft, bitte Email-Passwort Kombination prüfen\");\n }\n });\n }\n\n async onRequestNewPassword():Promise {\n\n const email : any = this.emailResetPw;\n this._ngZone.run(async () => {\n try {\n await this._userService.forgotPassword({ email });\n\n } catch(exc) {\n this._feedbackService.showError(\"Passwort konnte nicht zurückgesetzt werden. Bitte überprüfen Sie ob eine bereits registrierte Email angegeben wurde.\");\n }\n });\n\n this.currentState = LoginDisplayState.PwResetSend;\n }\n\n showForm(){\n\n const form: any = document.querySelector('app-register-form');\n form.classList.add('show');\n\n function scrollToElement(pageElement) {\n var positionX = 0,\n positionY = 0;\n\n while (pageElement != null) {\n positionX += pageElement.offsetLeft;\n positionY += pageElement.offsetTop;\n pageElement = pageElement.offsetParent;\n window.scrollTo(positionX, positionY);\n }\n }\n\n var pageElement = document.getElementById(\"sp-register-form\");\n scrollToElement(pageElement);\n }\n\n forgotPassword(){\n this.headlineLoginText = 'Passwort Vergessen';\n this.currentState = LoginDisplayState.ForgotPwForm;\n }\n\n backToLogin(){\n this.headlineLoginText = 'Anmeldung';\n this.currentState = LoginDisplayState.LoginForm;\n }\n\n showNewsletterForm() {\n this._modalService.show(NewsletterDialogComponent, {class: 'modal-lg'});\n }\n\n}\n\nenum LoginDisplayState {\n\n LoginForm = 1,\n ForgotPwForm = 2,\n PwResetSend = 3\n}\n","module.exports = \"
\\n
\\n
\\n
\\n
\\n

Account aktivieren

\\n
\\n
\\n
\\n
\\n E-Mail-Adresse wird geprüft …\\n
\\n
\\n
\\n
\\n
\\n
\\n

Account aktivieren

\\n
\\n
\\n
\\n
\\n Vielen Dank! Wir werden Ihre Daten prüfen und Sie benachrichtigen,\\n sobald Ihr Account freigeschaltet ist.\\n
\\n
\\n
\\n
\\n
\\n
\\n
\"","module.exports = \"input {\\n border-radius: 0;\\n margin-bottom: 0.5em;\\n}\\ninput::-moz-placeholder {\\n text-align: center;\\n}\\ninput::placeholder {\\n text-align: center;\\n}\\n.btn {\\n border-radius: 0;\\n}\\n.btn.btn-primary {\\n background-color: #be1822;\\n border-color: #be1822;\\n text-transform: uppercase;\\n}\\n.block.bg {\\n background-color: #f8f8fa;\\n}\\n.block h2 {\\n text-transform: uppercase;\\n font-size: 150%;\\n color: #be1822;\\n}\\n.card {\\n border: none;\\n border-radius: unset;\\n box-shadow: 0px 0px 30px 0px rgba(0, 0, 0, 0.2);\\n}\\n.card .card-header {\\n background-color: #f8f8fa;\\n border: none;\\n padding: 1.5em;\\n}\\n.card .card-header h4 {\\n text-transform: uppercase;\\n text-align: center;\\n color: #be1822;\\n}\\n.card .card-body {\\n padding: 3em;\\n}\\n\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9hcHAtdWkvc3JjL2FwcC9jb21wb25lbnRzL3BhZ2VzL3B1YmxpYy9yZWdpc3Rlci9jb25maXJtLWVtYWlsL2NvbmZpcm0tZW1haWwuY29tcG9uZW50Lmxlc3MiLCJzcmMvYXBwL2NvbXBvbmVudHMvcGFnZXMvcHVibGljL3JlZ2lzdGVyL2NvbmZpcm0tZW1haWwvY29uZmlybS1lbWFpbC5jb21wb25lbnQubGVzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtFQUNJLGdCQUFBO0VBQ0Esb0JBQUE7QUNDSjtBRENJO0VBQ0ksa0JBQUE7QUNDUjtBREZJO0VBQ0ksa0JBQUE7QUNDUjtBREdBO0VBQ0ksZ0JBQUE7QUNESjtBREdJO0VBQ0kseUJBQUE7RUFDQSxxQkFBQTtFQUNBLHlCQUFBO0FDRFI7QURNSTtFQUNJLHlCQUFBO0FDSlI7QURFQTtFQU1RLHlCQUFBO0VBQ0EsZUFBQTtFQUNBLGNBQUE7QUNMUjtBRFNBO0VBQ0ksWUFBQTtFQUNBLG9CQUFBO0VBQ0EsK0NBQUE7QUNQSjtBRElBO0VBTVEseUJBQUE7RUFDQSxZQUFBO0VBQ0EsY0FBQTtBQ1BSO0FEREE7RUFXWSx5QkFBQTtFQUNBLGtCQUFBO0VBQ0EsY0FBQTtBQ1BaO0FETkE7RUFrQlEsWUFBQTtBQ1RSIiwiZmlsZSI6InNyYy9hcHAvY29tcG9uZW50cy9wYWdlcy9wdWJsaWMvcmVnaXN0ZXIvY29uZmlybS1lbWFpbC9jb25maXJtLWVtYWlsLmNvbXBvbmVudC5sZXNzIiwic291cmNlc0NvbnRlbnQiOlsiaW5wdXQge1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMC41ZW07XG5cbiAgICAmOjpwbGFjZWhvbGRlciB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG59XG5cbi5idG4ge1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG5cbiAgICAmLmJ0bi1wcmltYXJ5IHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2JlMTgyMjtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjYmUxODIyO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIH1cbn1cblxuLmJsb2NrIHtcbiAgICAmLmJnIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjhmYTtcbiAgICB9XG5cbiAgICBoMiB7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGZvbnQtc2l6ZTogMTUwJTtcbiAgICAgICAgY29sb3I6ICNiZTE4MjI7XG4gICAgfVxufVxuXG4uY2FyZCB7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJvcmRlci1yYWRpdXM6IHVuc2V0O1xuICAgIGJveC1zaGFkb3c6IDBweCAwcHggMzBweCAwcHggcmdiYSgwLCAwLCAwLCAwLjIpOyAgICBcblxuICAgIC5jYXJkLWhlYWRlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmOGY4ZmE7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgcGFkZGluZzogMS41ZW07XG5cbiAgICAgICAgaDQge1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIGNvbG9yOiAjYmUxODIyO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmNhcmQtYm9keSB7XG4gICAgICAgIHBhZGRpbmc6IDNlbTtcbiAgICB9XG59IiwiaW5wdXQge1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwLjVlbTtcbn1cbmlucHV0OjpwbGFjZWhvbGRlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi5idG4ge1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuLmJ0bi5idG4tcHJpbWFyeSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNiZTE4MjI7XG4gIGJvcmRlci1jb2xvcjogI2JlMTgyMjtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cbi5ibG9jay5iZyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmOGY4ZmE7XG59XG4uYmxvY2sgaDIge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LXNpemU6IDE1MCU7XG4gIGNvbG9yOiAjYmUxODIyO1xufVxuLmNhcmQge1xuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IHVuc2V0O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDMwcHggMHB4IHJnYmEoMCwgMCwgMCwgMC4yKTtcbn1cbi5jYXJkIC5jYXJkLWhlYWRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmOGY4ZmE7XG4gIGJvcmRlcjogbm9uZTtcbiAgcGFkZGluZzogMS41ZW07XG59XG4uY2FyZCAuY2FyZC1oZWFkZXIgaDQge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGNvbG9yOiAjYmUxODIyO1xufVxuLmNhcmQgLmNhcmQtYm9keSB7XG4gIHBhZGRpbmc6IDNlbTtcbn1cbiJdfQ== */\"","import { Component, OnInit } from '@angular/core';\nimport { ActivatedRoute } from '@angular/router';\nimport { UserService } from 'src/app/service/user.service';\nimport { ServicePartnerService } from 'src/app/service/service-partner.service';\n\n@Component({\n selector: 'app-confirm-email',\n templateUrl: './confirm-email.component.html',\n styleUrls: ['./confirm-email.component.less']\n})\nexport class ConfirmEmailComponent implements OnInit {\n\n sending:boolean = false;\n confirmEmailCompleted:boolean = false;\n\n constructor(\n activatedRoute:ActivatedRoute,\n private _servicePartnerService:ServicePartnerService,\n ) { \n activatedRoute.queryParams.subscribe(params => {\n //this.changePasswordModel.key = params.key;\n this.onConfirmEmail(params.key)\n });\n }\n\n ngOnInit() {\n }\n\n async onConfirmEmail(key:string) {\n this.sending = true;\n try {\n await this._servicePartnerService.confirmEmail({key});\n } catch(exc) {\n // login failed\n }\n this.sending = false;\n this.confirmEmailCompleted = true;\n }\n\n}\n","module.exports = \"\\n\\n
\\n
\\n
\\n
\\n
\\n

Jetzt ServicePartner werden

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

\\n Sie wollen auch ein FelgenHero ServicePartner werden?\\n

\\n

\\n Sehr gerne, wir freuen uns auf Sie!
\\n\\n Füllen Sie einfach untenstehendes Formular aus und laden Sie \\n entweder eine Gewerbeanmeldung oder einen Handelsregisterauszug hoch.\\n

\\n

\\n ACHTUNG: Eine Registrierung ist nur für Gewerbetreibende \\n mit Hauptgewerbe „Automotive“ möglich – dies dient \\n dem Interesse aller Kunden.\\n

\\n

\\n Unsere Preisliste können Sie unter folgendem Link anfordern: Preisliste\\n

\\n
\\n
\\n \\n
\\n
\\n
\\n
\\n
\"","module.exports = \".jumbotron.main {\\n background-image: url('/assets/img/login.jpg');\\n width: 100%;\\n min-height: 20vw;\\n background-position: top center;\\n border-radius: 0;\\n background-position-y: 60%;\\n}\\n.jumbotron.main .jumbotron-text {\\n margin-top: 7vw;\\n}\\n.jumbotron.main .jumbotron-text h1 {\\n text-transform: uppercase;\\n font-size: 200%;\\n color: #be1822;\\n}\\n@media (max-width: 767px) {\\n .jumbotron.main .jumbotron-text h1 {\\n font-size: 150%;\\n }\\n}\\n.container {\\n width: 100%;\\n max-width: 1800px;\\n padding: 0;\\n}\\n.block {\\n padding-top: 0 !important;\\n}\\n.block.bg {\\n background-color: #f5f5f5;\\n}\\n.block h2 {\\n text-transform: uppercase;\\n font-size: 150%;\\n color: #be1822;\\n}\\n@media (min-width: 768px) {\\n #frame {\\n width: 100%;\\n margin-left: auto;\\n margin-right: auto;\\n }\\n}\\n.card {\\n border: none;\\n border-radius: unset;\\n box-shadow: 0px 0px 30px 0px rgba(0, 0, 0, 0.2);\\n margin: 0px 40px;\\n}\\n.card .card-header {\\n background-color: #f8f8fa;\\n border: none;\\n padding: 1.5em;\\n}\\n.card .card-header h4 {\\n text-transform: uppercase;\\n text-align: left;\\n color: #000000;\\n font-weight: bold !important;\\n font-size: 120%;\\n}\\n.card .card-body {\\n padding: 1em 3em;\\n}\\n.errors {\\n background-color: #ffcccc;\\n color: red;\\n font-weight: bold;\\n list-style-type: none;\\n}\\n#droparea {\\n padding: 2em;\\n text-align: center;\\n border: 1px solid #be1822;\\n}\\n#droparea label {\\n cursor: pointer;\\n}\\n#droparea.dragging {\\n background-color: #fadbdd;\\n}\\n#filelist {\\n background-color: #efb4ba;\\n padding: 0.3em;\\n text-decoration: underline;\\n list-style-type: none;\\n}\\n#fileSelector {\\n width: 0.1px;\\n height: 0.1px;\\n opacity: 0;\\n overflow: hidden;\\n z-index: -1;\\n position: absolute;\\n}\\n.sp-form-intro {\\n padding: 0 200px;\\n text-align: center;\\n}\\n.sp-form-intro h4 {\\n text-align: center;\\n margin-bottom: 1em;\\n}\\n.sp-form-intro .hint {\\n font-size: smaller;\\n}\\n@media (max-width: 767.98px) {\\n .sp-form-intro {\\n padding: 0 0;\\n }\\n}\\n\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9hcHAtdWkvc3JjL2FwcC9jb21wb25lbnRzL3BhZ2VzL3B1YmxpYy9yZWdpc3Rlci9mb3JtL3JlZ2lzdGVyLWZvcm0uY29tcG9uZW50Lmxlc3MiLCJzcmMvYXBwL2NvbXBvbmVudHMvcGFnZXMvcHVibGljL3JlZ2lzdGVyL2Zvcm0vcmVnaXN0ZXItZm9ybS5jb21wb25lbnQubGVzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtFQUNFLDhDQUFBO0VBQ0EsV0FBQTtFQUNBLGdCQUFBO0VBQ0EsK0JBQUE7RUFDQSxnQkFBQTtFQUNBLDBCQUFBO0FDQ0Y7QURQQTtFQVNNLGVBQUE7QUNDTjtBRFZBO0VBWVUseUJBQUE7RUFDQSxlQUFBO0VBQ0EsY0FBQTtBQ0NWO0FEQ1U7RUFBQTtJQUNJLGVBQUE7RUNFWjtBQUNGO0FER0E7RUFDRSxXQUFBO0VBQ0EsaUJBQUE7RUFDQSxVQUFBO0FDREY7QURJQTtFQUVFLHlCQUFBO0FDSEY7QURJRTtFQUNJLHlCQUFBO0FDRk47QURGQTtFQVFNLHlCQUFBO0VBQ0EsZUFBQTtFQUNBLGNBQUE7QUNITjtBRFFFO0VBQUE7SUFDRSxXQUFBO0lBQ0EsaUJBQUE7SUFDQSxrQkFBQTtFQ0xGO0FBQ0Y7QURRQTtFQUNFLFlBQUE7RUFDQSxvQkFBQTtFQUNBLCtDQUFBO0VBRUEsZ0JBQUE7QUNQRjtBREVBO0VBUU0seUJBQUE7RUFDQSxZQUFBO0VBQ0EsY0FBQTtBQ1BOO0FESEE7RUFhVSx5QkFBQTtFQUNBLGdCQUFBO0VBQ0EsY0FBQTtFQUNBLDRCQUFBO0VBQ0EsZUFBQTtBQ1BWO0FEVkE7RUFzQk0sZ0JBQUE7QUNUTjtBRGFBO0VBQ0UseUJBQUE7RUFDQSxVQUFBO0VBQ0EsaUJBQUE7RUFDQSxxQkFBQTtBQ1hGO0FEY0E7RUFDRSxZQUFBO0VBQ0Esa0JBQUE7RUFDQSx5QkFBQTtBQ1pGO0FEU0E7RUFNSSxlQUFBO0FDWko7QURlRTtFQUNFLHlCQUFBO0FDYko7QURpQkE7RUFDRSx5QkFBQTtFQUNBLGNBQUE7RUFDQSwwQkFBQTtFQUNBLHFCQUFBO0FDZkY7QURrQkE7RUFDRSxZQUFBO0VBQ0EsYUFBQTtFQUNBLFVBQUE7RUFDQSxnQkFBQTtFQUNBLFdBQUE7RUFDQSxrQkFBQTtBQ2hCRjtBRG1CQTtFQUVFLGdCQUFBO0VBQ0Esa0JBQUE7QUNsQkY7QURlQTtFQU1JLGtCQUFBO0VBQ0Esa0JBQUE7QUNsQko7QURXQTtFQVVJLGtCQUFBO0FDbEJKO0FEdUJBO0VBRUU7SUFFRSxZQUFBO0VDdkJGO0FBQ0YiLCJmaWxlIjoic3JjL2FwcC9jb21wb25lbnRzL3BhZ2VzL3B1YmxpYy9yZWdpc3Rlci9mb3JtL3JlZ2lzdGVyLWZvcm0uY29tcG9uZW50Lmxlc3MiLCJzb3VyY2VzQ29udGVudCI6WyIuanVtYm90cm9uLm1haW4ge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy9hc3NldHMvaW1nL2xvZ2luLmpwZycpO1xuICB3aWR0aDogMTAwJTtcbiAgbWluLWhlaWdodDogMjB2dztcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogdG9wIGNlbnRlcjtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbi15OiA2MCU7XG5cbiAgLmp1bWJvdHJvbi10ZXh0IHtcbiAgICAgIG1hcmdpbi10b3A6IDd2dztcblxuICAgICAgaDEge1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgZm9udC1zaXplOiAyMDAlO1xuICAgICAgICAgIGNvbG9yOiAjYmUxODIyO1xuXG4gICAgICAgICAgQG1lZGlhKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAxNTAlO1xuICAgICAgICAgIH1cbiAgICAgIH1cbiAgfVxufVxuXG4uY29udGFpbmVye1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxODAwcHg7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi5ibG9jayB7XG5cbiAgcGFkZGluZy10b3A6IDAgIWltcG9ydGFudDtcbiAgJi5iZyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjVmNWY1O1xuICB9XG5cbiAgaDIge1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGZvbnQtc2l6ZTogMTUwJTtcbiAgICAgIGNvbG9yOiAjYmUxODIyO1xuICB9XG59XG5cbiNmcmFtZSB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIHdpZHRoOiAxMDAlOyBcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIH1cbn1cblxuLmNhcmQge1xuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IHVuc2V0O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDMwcHggMHB4IHJnYmEoMCwgMCwgMCwgMC4yKTsgICAgXG5cbiAgbWFyZ2luOiAwcHggNDBweDtcblxuICAuY2FyZC1oZWFkZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjhmYTtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgIHBhZGRpbmc6IDEuNWVtO1xuXG4gICAgICBoNCB7XG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgIGNvbG9yOiAjMDAwMDAwO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkICFpbXBvcnRhbnQ7XG4gICAgICAgICAgZm9udC1zaXplOiAxMjAlO1xuICAgICAgfVxuICB9XG5cbiAgLmNhcmQtYm9keSB7XG4gICAgICBwYWRkaW5nOiAxZW0gM2VtO1xuICB9XG59XG5cbi5lcnJvcnMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGVuKCNmZjAwMDAsIDQwJSk7XG4gIGNvbG9yOiByZWQ7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG59XG5cbiNkcm9wYXJlYSB7XG4gIHBhZGRpbmc6IDJlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBib3JkZXI6IDFweCBzb2xpZCAjYmUxODIyO1xuXG4gIGxhYmVsIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cblxuICAmLmRyYWdnaW5nIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGVuKCNiZTE4MjIsIDUwJSk7XG4gIH1cbn1cblxuI2ZpbGVsaXN0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VmYjRiYTtcbiAgcGFkZGluZzogMC4zZW07XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG59XG5cbiNmaWxlU2VsZWN0b3Ige1xuICB3aWR0aDogMC4xcHg7XG4gIGhlaWdodDogMC4xcHg7XG4gIG9wYWNpdHk6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHotaW5kZXg6IC0xO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG59XG5cbi5zcC1mb3JtLWludHJve1xuXG4gIHBhZGRpbmc6MCAyMDBweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gIGg0e1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBtYXJnaW4tYm90dG9tOiAxZW07XG4gIH1cbiAgLmhpbnR7XG4gICAgZm9udC1zaXplOiBzbWFsbGVyO1xuXG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSBcbntcbiAgLnNwLWZvcm0taW50cm8gXG4gIHtcbiAgICBwYWRkaW5nOiAwIDA7XG4gIH1cblxuICAuY2FyZC1ib2R5IFxuICB7XG4gICAgLy9wYWRkaW5nOiAxZW0gMWVtO1xuICB9XG59IiwiLmp1bWJvdHJvbi5tYWluIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcvYXNzZXRzL2ltZy9sb2dpbi5qcGcnKTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1pbi1oZWlnaHQ6IDIwdnc7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IHRvcCBjZW50ZXI7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQtcG9zaXRpb24teTogNjAlO1xufVxuLmp1bWJvdHJvbi5tYWluIC5qdW1ib3Ryb24tdGV4dCB7XG4gIG1hcmdpbi10b3A6IDd2dztcbn1cbi5qdW1ib3Ryb24ubWFpbiAuanVtYm90cm9uLXRleHQgaDEge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LXNpemU6IDIwMCU7XG4gIGNvbG9yOiAjYmUxODIyO1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5qdW1ib3Ryb24ubWFpbiAuanVtYm90cm9uLXRleHQgaDEge1xuICAgIGZvbnQtc2l6ZTogMTUwJTtcbiAgfVxufVxuLmNvbnRhaW5lciB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDE4MDBweDtcbiAgcGFkZGluZzogMDtcbn1cbi5ibG9jayB7XG4gIHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQ7XG59XG4uYmxvY2suYmcge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjVmNWY1O1xufVxuLmJsb2NrIGgyIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC1zaXplOiAxNTAlO1xuICBjb2xvcjogI2JlMTgyMjtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAjZnJhbWUge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgfVxufVxuLmNhcmQge1xuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IHVuc2V0O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDMwcHggMHB4IHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgbWFyZ2luOiAwcHggNDBweDtcbn1cbi5jYXJkIC5jYXJkLWhlYWRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmOGY4ZmE7XG4gIGJvcmRlcjogbm9uZTtcbiAgcGFkZGluZzogMS41ZW07XG59XG4uY2FyZCAuY2FyZC1oZWFkZXIgaDQge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBjb2xvcjogIzAwMDAwMDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQgIWltcG9ydGFudDtcbiAgZm9udC1zaXplOiAxMjAlO1xufVxuLmNhcmQgLmNhcmQtYm9keSB7XG4gIHBhZGRpbmc6IDFlbSAzZW07XG59XG4uZXJyb3JzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmY2NjYztcbiAgY29sb3I6IHJlZDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbn1cbiNkcm9wYXJlYSB7XG4gIHBhZGRpbmc6IDJlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBib3JkZXI6IDFweCBzb2xpZCAjYmUxODIyO1xufVxuI2Ryb3BhcmVhIGxhYmVsIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuI2Ryb3BhcmVhLmRyYWdnaW5nIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZhZGJkZDtcbn1cbiNmaWxlbGlzdCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlZmI0YmE7XG4gIHBhZGRpbmc6IDAuM2VtO1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xufVxuI2ZpbGVTZWxlY3RvciB7XG4gIHdpZHRoOiAwLjFweDtcbiAgaGVpZ2h0OiAwLjFweDtcbiAgb3BhY2l0eTogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgei1pbmRleDogLTE7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbn1cbi5zcC1mb3JtLWludHJvIHtcbiAgcGFkZGluZzogMCAyMDBweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuLnNwLWZvcm0taW50cm8gaDQge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbi1ib3R0b206IDFlbTtcbn1cbi5zcC1mb3JtLWludHJvIC5oaW50IHtcbiAgZm9udC1zaXplOiBzbWFsbGVyO1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gIC5zcC1mb3JtLWludHJvIHtcbiAgICBwYWRkaW5nOiAwIDA7XG4gIH1cbn1cbiJdfQ== */\"","import { Component, OnInit, ViewChild, ElementRef } from '@angular/core';\nimport { ServicePartnerService } from 'src/app/service/service-partner.service';\nimport { Router } from '@angular/router';\nimport { ServicePartner } from '../../../../../model/service-partner.model';\nimport { Address } from '../../../../../model/address.model';\nimport { User } from '../../../../../model/user.model';\n\nimport { BsModalService } from 'ngx-bootstrap/modal';\nimport { PriceListRequestDialogComponent } from 'src/app/components/ui/dialogs/price-list-request-dialog.component';\n\n@Component({\n selector: 'app-register-form',\n templateUrl: './register-form.component.html',\n styleUrls: ['./register-form.component.less']\n})\nexport class RegisterFormComponent {\n constructor(private _modalService:BsModalService){ }\n\n showRequestForm(){\n let initialState = {\n title: \"\",\n msg: \"\",\n }\n this._modalService.show(PriceListRequestDialogComponent, {initialState, class: 'modal-lg'});\n }\n}\n","module.exports = \"
\\n
\\n \\n
\\n
\\n \\n
\\n
\\n
\\n
\\n
\\n

Vielen Dank!

\\n
\\n
\\n
\\n
\\n Wir haben Ihre Registrierung erhalten. Sie erhalten eine E-Mail, sobald wir Ihre\\n Angaben geprüft und Ihren Account freigeschaltet haben.\\n
\\n
\\n
\\n
\\n
\"","module.exports = \".btn {\\n border-radius: 0;\\n border: none;\\n box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.15);\\n text-transform: uppercase;\\n}\\n.btn.btn-primary {\\n background-color: #be1822;\\n border-color: #be1822;\\n}\\n.jumbotron.main {\\n background-image: url('/assets/img/login.jpg');\\n width: 100%;\\n min-height: 20vw;\\n background-position: top center;\\n border-radius: 0;\\n background-position-y: 60%;\\n}\\n.jumbotron.main .jumbotron-text {\\n margin-top: 7vw;\\n}\\n.jumbotron.main .jumbotron-text h1 {\\n text-transform: uppercase;\\n font-size: 200%;\\n color: #be1822;\\n}\\n@media (max-width: 767px) {\\n .jumbotron.main .jumbotron-text h1 {\\n font-size: 150%;\\n }\\n}\\n.block.bg {\\n background-color: #f8f8fa;\\n}\\n.block h2 {\\n text-transform: uppercase;\\n font-size: 150%;\\n color: #be1822;\\n}\\n@media (min-width: 768px) {\\n #frame {\\n width: 70%;\\n margin-left: auto;\\n margin-right: auto;\\n }\\n}\\n.card {\\n border: none;\\n border-radius: unset;\\n box-shadow: 0px 0px 30px 0px rgba(0, 0, 0, 0.2);\\n}\\n.card .card-header {\\n background-color: #f8f8fa;\\n border: none;\\n padding: 1.5em;\\n}\\n.card .card-header h4 {\\n text-transform: uppercase;\\n text-align: left;\\n color: #000000;\\n font-weight: bold !important;\\n font-size: 120%;\\n}\\n.card .card-body {\\n padding: 3em;\\n}\\n\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9hcHAtdWkvc3JjL2FwcC9jb21wb25lbnRzL3BhZ2VzL3B1YmxpYy9yZWdpc3Rlci9zdWNjZXNzL3JlZ2lzdGVyLXN1Y2Nlc3MuY29tcG9uZW50Lmxlc3MiLCJzcmMvYXBwL2NvbXBvbmVudHMvcGFnZXMvcHVibGljL3JlZ2lzdGVyL3N1Y2Nlc3MvcmVnaXN0ZXItc3VjY2Vzcy5jb21wb25lbnQubGVzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtFQUNJLGdCQUFBO0VBQ0EsWUFBQTtFQUNBLGdEQUFBO0VBQ0EseUJBQUE7QUNDSjtBRENJO0VBQ0kseUJBQUE7RUFDQSxxQkFBQTtBQ0NSO0FER0U7RUFDRSw4Q0FBQTtFQUNBLFdBQUE7RUFDQSxnQkFBQTtFQUNBLCtCQUFBO0VBQ0EsZ0JBQUE7RUFDQSwwQkFBQTtBQ0RKO0FETEU7RUFTTSxlQUFBO0FDRFI7QURSRTtFQVlVLHlCQUFBO0VBQ0EsZUFBQTtFQUNBLGNBQUE7QUNEWjtBREdZO0VBQUE7SUFDSSxlQUFBO0VDQWQ7QUFDRjtBRE1JO0VBQ0kseUJBQUE7QUNKUjtBREVFO0VBTU0seUJBQUE7RUFDQSxlQUFBO0VBQ0EsY0FBQTtBQ0xSO0FEVUk7RUFBQTtJQUNFLFVBQUE7SUFDQSxpQkFBQTtJQUNBLGtCQUFBO0VDUEo7QUFDRjtBRFVFO0VBQ0UsWUFBQTtFQUNBLG9CQUFBO0VBQ0EsK0NBQUE7QUNSSjtBREtFO0VBTU0seUJBQUE7RUFDQSxZQUFBO0VBQ0EsY0FBQTtBQ1JSO0FEQUU7RUFXVSx5QkFBQTtFQUNBLGdCQUFBO0VBQ0EsY0FBQTtFQUNBLDRCQUFBO0VBQ0EsZUFBQTtBQ1JaO0FEUEU7RUFvQk0sWUFBQTtBQ1ZSIiwiZmlsZSI6InNyYy9hcHAvY29tcG9uZW50cy9wYWdlcy9wdWJsaWMvcmVnaXN0ZXIvc3VjY2Vzcy9yZWdpc3Rlci1zdWNjZXNzLmNvbXBvbmVudC5sZXNzIiwic291cmNlc0NvbnRlbnQiOlsiLmJ0biB7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYm94LXNoYWRvdzogMHB4IDBweCAxMHB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIFxuICAgICYuYnRuLXByaW1hcnkge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYmUxODIyO1xuICAgICAgICBib3JkZXItY29sb3I6ICNiZTE4MjI7XG4gICAgfVxuICB9XG4gIFxuICAuanVtYm90cm9uLm1haW4ge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnL2Fzc2V0cy9pbWcvbG9naW4uanBnJyk7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWluLWhlaWdodDogMjB2dztcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgY2VudGVyO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbi15OiA2MCU7XG4gIFxuICAgIC5qdW1ib3Ryb24tdGV4dCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDd2dztcbiAgXG4gICAgICAgIGgxIHtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICBmb250LXNpemU6IDIwMCU7XG4gICAgICAgICAgICBjb2xvcjogI2JlMTgyMjtcbiAgXG4gICAgICAgICAgICBAbWVkaWEobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTUwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgfVxuICBcbiAgLmJsb2NrIHtcbiAgICAmLmJnIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjhmYTtcbiAgICB9XG4gIFxuICAgIGgyIHtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgZm9udC1zaXplOiAxNTAlO1xuICAgICAgICBjb2xvcjogI2JlMTgyMjtcbiAgICB9XG4gIH1cbiAgXG4gICNmcmFtZSB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICB3aWR0aDogNzAlOyBcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIH1cbiAgfVxuICBcbiAgLmNhcmQge1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBib3JkZXItcmFkaXVzOiB1bnNldDtcbiAgICBib3gtc2hhZG93OiAwcHggMHB4IDMwcHggMHB4IHJnYmEoMCwgMCwgMCwgMC4yKTsgICAgXG4gIFxuICAgIC5jYXJkLWhlYWRlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmOGY4ZmE7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgcGFkZGluZzogMS41ZW07XG4gIFxuICAgICAgICBoNCB7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgIGNvbG9yOiAjMDAwMDAwO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTIwJTtcbiAgICAgICAgfVxuICAgIH1cbiAgXG4gICAgLmNhcmQtYm9keSB7XG4gICAgICAgIHBhZGRpbmc6IDNlbTtcbiAgICB9XG4gIH0iLCIuYnRuIHtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYm9yZGVyOiBub25lO1xuICBib3gtc2hhZG93OiAwcHggMHB4IDEwcHggMHB4IHJnYmEoMCwgMCwgMCwgMC4xNSk7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG4uYnRuLmJ0bi1wcmltYXJ5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2JlMTgyMjtcbiAgYm9yZGVyLWNvbG9yOiAjYmUxODIyO1xufVxuLmp1bWJvdHJvbi5tYWluIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcvYXNzZXRzL2ltZy9sb2dpbi5qcGcnKTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1pbi1oZWlnaHQ6IDIwdnc7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IHRvcCBjZW50ZXI7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQtcG9zaXRpb24teTogNjAlO1xufVxuLmp1bWJvdHJvbi5tYWluIC5qdW1ib3Ryb24tdGV4dCB7XG4gIG1hcmdpbi10b3A6IDd2dztcbn1cbi5qdW1ib3Ryb24ubWFpbiAuanVtYm90cm9uLXRleHQgaDEge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LXNpemU6IDIwMCU7XG4gIGNvbG9yOiAjYmUxODIyO1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5qdW1ib3Ryb24ubWFpbiAuanVtYm90cm9uLXRleHQgaDEge1xuICAgIGZvbnQtc2l6ZTogMTUwJTtcbiAgfVxufVxuLmJsb2NrLmJnIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjhmYTtcbn1cbi5ibG9jayBoMiB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtc2l6ZTogMTUwJTtcbiAgY29sb3I6ICNiZTE4MjI7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgI2ZyYW1lIHtcbiAgICB3aWR0aDogNzAlO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgfVxufVxuLmNhcmQge1xuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IHVuc2V0O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDMwcHggMHB4IHJnYmEoMCwgMCwgMCwgMC4yKTtcbn1cbi5jYXJkIC5jYXJkLWhlYWRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmOGY4ZmE7XG4gIGJvcmRlcjogbm9uZTtcbiAgcGFkZGluZzogMS41ZW07XG59XG4uY2FyZCAuY2FyZC1oZWFkZXIgaDQge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBjb2xvcjogIzAwMDAwMDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQgIWltcG9ydGFudDtcbiAgZm9udC1zaXplOiAxMjAlO1xufVxuLmNhcmQgLmNhcmQtYm9keSB7XG4gIHBhZGRpbmc6IDNlbTtcbn1cbiJdfQ== */\"","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-register-success',\n templateUrl: './register-success.component.html',\n styleUrls: ['./register-success.component.less']\n})\nexport class RegisterSuccessComponent implements OnInit {\n\n constructor() { }\n\n ngOnInit() {\n }\n\n}\n","module.exports = \"
\\n
\\n
\\n
\\n
\\n

Neues Passwort setzen

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

Passwort geändert

\\n
\\n
\\n
\\n
\\n Sie können sich jetzt wieder mit Ihrem neuen Passwort einloggen.\\n
\\n
\\n Jetzt einloggen\\n
\\n
\\n
\\n
\\n
\"","module.exports = \"input {\\n border-radius: 0;\\n margin-bottom: 0.5em;\\n}\\ninput::-moz-placeholder {\\n text-align: center;\\n}\\ninput::placeholder {\\n text-align: center;\\n}\\n.btn {\\n border-radius: 0;\\n}\\n.btn.btn-primary {\\n background-color: #be1822;\\n border-color: #be1822;\\n text-transform: uppercase;\\n}\\n.block.bg {\\n background-color: #f8f8fa;\\n}\\n.block h2 {\\n text-transform: uppercase;\\n font-size: 150%;\\n color: #be1822;\\n}\\n.card {\\n border: none;\\n border-radius: unset;\\n box-shadow: 0px 0px 30px 0px rgba(0, 0, 0, 0.2);\\n}\\n.card .card-header {\\n background-color: #f8f8fa;\\n border: none;\\n padding: 1.5em;\\n}\\n.card .card-header h4 {\\n text-transform: uppercase;\\n text-align: center;\\n color: #be1822;\\n}\\n.card .card-body {\\n padding: 3em;\\n}\\n\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9hcHAtdWkvc3JjL2FwcC9jb21wb25lbnRzL3BhZ2VzL3B1YmxpYy9yZXNldC1wYXNzd29yZC9yZXNldC1wYXNzd29yZC5jb21wb25lbnQubGVzcyIsInNyYy9hcHAvY29tcG9uZW50cy9wYWdlcy9wdWJsaWMvcmVzZXQtcGFzc3dvcmQvcmVzZXQtcGFzc3dvcmQuY29tcG9uZW50Lmxlc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7RUFDSSxnQkFBQTtFQUNBLG9CQUFBO0FDQ0o7QURDSTtFQUNJLGtCQUFBO0FDQ1I7QURGSTtFQUNJLGtCQUFBO0FDQ1I7QURHQTtFQUNJLGdCQUFBO0FDREo7QURHSTtFQUNJLHlCQUFBO0VBQ0EscUJBQUE7RUFDQSx5QkFBQTtBQ0RSO0FETUk7RUFDSSx5QkFBQTtBQ0pSO0FERUE7RUFNUSx5QkFBQTtFQUNBLGVBQUE7RUFDQSxjQUFBO0FDTFI7QURTQTtFQUNJLFlBQUE7RUFDQSxvQkFBQTtFQUNBLCtDQUFBO0FDUEo7QURJQTtFQU1RLHlCQUFBO0VBQ0EsWUFBQTtFQUNBLGNBQUE7QUNQUjtBRERBO0VBV1kseUJBQUE7RUFDQSxrQkFBQTtFQUNBLGNBQUE7QUNQWjtBRE5BO0VBa0JRLFlBQUE7QUNUUiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvcGFnZXMvcHVibGljL3Jlc2V0LXBhc3N3b3JkL3Jlc2V0LXBhc3N3b3JkLmNvbXBvbmVudC5sZXNzIiwic291cmNlc0NvbnRlbnQiOlsiaW5wdXQge1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMC41ZW07XG5cbiAgICAmOjpwbGFjZWhvbGRlciB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG59XG5cbi5idG4ge1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG5cbiAgICAmLmJ0bi1wcmltYXJ5IHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2JlMTgyMjtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjYmUxODIyO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIH1cbn1cblxuLmJsb2NrIHtcbiAgICAmLmJnIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjhmYTtcbiAgICB9XG5cbiAgICBoMiB7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGZvbnQtc2l6ZTogMTUwJTtcbiAgICAgICAgY29sb3I6ICNiZTE4MjI7XG4gICAgfVxufVxuXG4uY2FyZCB7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJvcmRlci1yYWRpdXM6IHVuc2V0O1xuICAgIGJveC1zaGFkb3c6IDBweCAwcHggMzBweCAwcHggcmdiYSgwLCAwLCAwLCAwLjIpOyAgICBcblxuICAgIC5jYXJkLWhlYWRlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmOGY4ZmE7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgcGFkZGluZzogMS41ZW07XG5cbiAgICAgICAgaDQge1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIGNvbG9yOiAjYmUxODIyO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmNhcmQtYm9keSB7XG4gICAgICAgIHBhZGRpbmc6IDNlbTtcbiAgICB9XG59IiwiaW5wdXQge1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwLjVlbTtcbn1cbmlucHV0OjpwbGFjZWhvbGRlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi5idG4ge1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuLmJ0bi5idG4tcHJpbWFyeSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNiZTE4MjI7XG4gIGJvcmRlci1jb2xvcjogI2JlMTgyMjtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cbi5ibG9jay5iZyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmOGY4ZmE7XG59XG4uYmxvY2sgaDIge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LXNpemU6IDE1MCU7XG4gIGNvbG9yOiAjYmUxODIyO1xufVxuLmNhcmQge1xuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IHVuc2V0O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDMwcHggMHB4IHJnYmEoMCwgMCwgMCwgMC4yKTtcbn1cbi5jYXJkIC5jYXJkLWhlYWRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmOGY4ZmE7XG4gIGJvcmRlcjogbm9uZTtcbiAgcGFkZGluZzogMS41ZW07XG59XG4uY2FyZCAuY2FyZC1oZWFkZXIgaDQge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGNvbG9yOiAjYmUxODIyO1xufVxuLmNhcmQgLmNhcmQtYm9keSB7XG4gIHBhZGRpbmc6IDNlbTtcbn1cbiJdfQ== */\"","import { Component, OnInit } from '@angular/core';\nimport { ActivatedRoute } from '@angular/router';\nimport { UserService } from 'src/app/service/user.service';\n\n@Component({\n selector: 'app-reset-password',\n templateUrl: './reset-password.component.html',\n styleUrls: ['./reset-password.component.less']\n})\nexport class ResetPasswordComponent implements OnInit {\n\n changePasswordModel = {\n password: '',\n key: '',\n }\n passwordCheck:string = '';\n sending:boolean = false;\n changePasswordCompleted:boolean = false;\n\n constructor(\n activatedRoute:ActivatedRoute,\n private _userService:UserService,\n ) { \n activatedRoute.queryParams.subscribe(params => {\n this.changePasswordModel.key = params.key;\n });\n }\n\n ngOnInit() {\n }\n\n async onChangePassword() {\n this.sending = true;\n try {\n await this._userService.changePassword(this.changePasswordModel);\n } catch(exc) {\n // login failed\n }\n this.sending = false;\n this.changePasswordCompleted = true;\n }\n\n}\n","module.exports = \"\\n\\n
\\n
\\n
\\n
\\n

FelgenHero ServicePartner in Ihrer Nähe

\\n
\\n
\\n
\\n
\\n {{ roundDist(servicePartner.dist) }}km\\n {{servicePartner.name}}
\\n {{servicePartner.deliveryAddress.street}}
\\n {{servicePartner.deliveryAddress.zipCode}} {{servicePartner.deliveryAddress.city}}
\\n
\\n
\\n
\\n
\\n\\n
\\n
\\n
\\n
\\n
\\n \\n \\n \\n {{servicePartner.name}}
\\n {{servicePartner.deliveryAddress.street}}
\\n {{servicePartner.deliveryAddress.zipCode}} {{servicePartner.deliveryAddress.city}}
\\n
\\n
\\n
\\n
\\n

FelgenHero ServicePartner in Ihrer Nähe

\\n \\n
\\n
\\n {{ roundDist(servicePartner.dist) }}km\\n {{servicePartner.name}}
\\n {{servicePartner.deliveryAddress.street}}
\\n {{servicePartner.deliveryAddress.zipCode}} {{servicePartner.deliveryAddress.city}}
\\n
\\n
\\n \\n
\\n
\\n
\\n
\\n
\\n
\"","module.exports = \"agm-map {\\n height: 55vw;\\n}\\n.resultBox {\\n position: absolute;\\n top: 2em;\\n left: 2em;\\n background-color: white;\\n padding: 1em;\\n width: 22em;\\n height: calc(50vw - 4em);\\n box-shadow: 0 2px 7px 1px rgba(0, 0, 0, 0.3);\\n}\\n.resultBox h2 {\\n border-bottom: 1px solid black;\\n padding-bottom: 1em;\\n font-size: 120%;\\n height: 4em;\\n}\\n.resultBox .scrollContainer {\\n overflow-y: scroll;\\n padding: 1em;\\n position: absolute;\\n width: 100%;\\n left: 0;\\n height: calc(100% - 7em);\\n}\\n.resultBox .servicePartnerInfo {\\n margin-left: -1em;\\n margin-right: -1em;\\n padding: 1em;\\n}\\n.servicePartnerInfo.selected {\\n background-color: #f0f0f0;\\n}\\n.servicePartnerInfo.col-md-12 {\\n margin-top: 1em;\\n}\\n\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9hcHAtdWkvc3JjL2FwcC9jb21wb25lbnRzL3BhZ2VzL3B1YmxpYy9zZWFyY2gvc2VhcmNoLmNvbXBvbmVudC5sZXNzIiwic3JjL2FwcC9jb21wb25lbnRzL3BhZ2VzL3B1YmxpYy9zZWFyY2gvc2VhcmNoLmNvbXBvbmVudC5sZXNzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBO0VBQ0ksWUFBQTtBQ0FKO0FER0E7RUFDSSxrQkFBQTtFQUNBLFFBQUE7RUFDQSxTQUFBO0VBQ0EsdUJBQUE7RUFDQSxZQUFBO0VBQ0EsV0FBQTtFQUNBLHdCQUFBO0VBQ0EsNENBQUE7QUNESjtBRFBBO0VBV1EsOEJBQUE7RUFDQSxtQkFBQTtFQUNBLGVBQUE7RUFDQSxXQUFBO0FDRFI7QURiQTtFQWtCUSxrQkFBQTtFQUNBLFlBQUE7RUFDQSxrQkFBQTtFQUNBLFdBQUE7RUFDQSxPQUFBO0VBQ0Esd0JBQUE7QUNGUjtBRHJCQTtFQTJCUSxpQkFBQTtFQUNBLGtCQUFBO0VBQ0EsWUFBQTtBQ0hSO0FET0E7RUFDSSx5QkFBQTtBQ0xKO0FEUUE7RUFDSSxlQUFBO0FDTkoiLCJmaWxlIjoic3JjL2FwcC9jb21wb25lbnRzL3BhZ2VzL3B1YmxpYy9zZWFyY2gvc2VhcmNoLmNvbXBvbmVudC5sZXNzIiwic291cmNlc0NvbnRlbnQiOlsiXG5hZ20tbWFwIHtcbiAgICBoZWlnaHQ6IDU1dnc7XG59XG5cbi5yZXN1bHRCb3gge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDJlbTtcbiAgICBsZWZ0OiAyZW07XG4gICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgcGFkZGluZzogMWVtO1xuICAgIHdpZHRoOiAyMmVtO1xuICAgIGhlaWdodDogY2FsYyg1MHZ3IC0gNGVtKTtcbiAgICBib3gtc2hhZG93OiAwIDJweCA3cHggMXB4IHJnYmEoMCwwLDAsMC4zKTtcblxuICAgIGgyIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIGJsYWNrO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMWVtO1xuICAgICAgICBmb250LXNpemU6IDEyMCU7XG4gICAgICAgIGhlaWdodDogNGVtO1xuICAgIH1cblxuICAgIC5zY3JvbGxDb250YWluZXIge1xuICAgICAgICBvdmVyZmxvdy15OiBzY3JvbGw7IFxuICAgICAgICBwYWRkaW5nOiAxZW07IFxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7IFxuICAgICAgICB3aWR0aDogMTAwJTsgXG4gICAgICAgIGxlZnQ6IDA7IFxuICAgICAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDdlbSk7XG4gICAgfVxuXG4gICAgLnNlcnZpY2VQYXJ0bmVySW5mbyB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtMWVtO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IC0xZW07XG4gICAgICAgIHBhZGRpbmc6IDFlbTtcbiAgICB9XG59XG5cbi5zZXJ2aWNlUGFydG5lckluZm8uc2VsZWN0ZWQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmMGYwZjA7XG59XG5cbi5zZXJ2aWNlUGFydG5lckluZm8uY29sLW1kLTEyIHtcbiAgICBtYXJnaW4tdG9wOiAxZW07XG59IiwiYWdtLW1hcCB7XG4gIGhlaWdodDogNTV2dztcbn1cbi5yZXN1bHRCb3gge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMmVtO1xuICBsZWZ0OiAyZW07XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICBwYWRkaW5nOiAxZW07XG4gIHdpZHRoOiAyMmVtO1xuICBoZWlnaHQ6IGNhbGMoNTB2dyAtIDRlbSk7XG4gIGJveC1zaGFkb3c6IDAgMnB4IDdweCAxcHggcmdiYSgwLCAwLCAwLCAwLjMpO1xufVxuLnJlc3VsdEJveCBoMiB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCBibGFjaztcbiAgcGFkZGluZy1ib3R0b206IDFlbTtcbiAgZm9udC1zaXplOiAxMjAlO1xuICBoZWlnaHQ6IDRlbTtcbn1cbi5yZXN1bHRCb3ggLnNjcm9sbENvbnRhaW5lciB7XG4gIG92ZXJmbG93LXk6IHNjcm9sbDtcbiAgcGFkZGluZzogMWVtO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMDAlO1xuICBsZWZ0OiAwO1xuICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDdlbSk7XG59XG4ucmVzdWx0Qm94IC5zZXJ2aWNlUGFydG5lckluZm8ge1xuICBtYXJnaW4tbGVmdDogLTFlbTtcbiAgbWFyZ2luLXJpZ2h0OiAtMWVtO1xuICBwYWRkaW5nOiAxZW07XG59XG4uc2VydmljZVBhcnRuZXJJbmZvLnNlbGVjdGVkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YwZjBmMDtcbn1cbi5zZXJ2aWNlUGFydG5lckluZm8uY29sLW1kLTEyIHtcbiAgbWFyZ2luLXRvcDogMWVtO1xufVxuIl19 */\"","import { Component, OnInit, ViewChild, ElementRef } from '@angular/core';\nimport { HttpClient } from '@angular/common/http';\nimport { GOOGLE_MAPS_API_KEY } from 'src/app/config';\nimport { ServicePartnerService } from 'src/app/service/service-partner.service';\nimport { Router, ActivatedRoute } from '@angular/router/';\nimport { Title, Meta } from '@angular/platform-browser';\n\n@Component({\n selector: 'app-search',\n templateUrl: './search.component.html',\n styleUrls: ['./search.component.less']\n})\nexport class SearchComponent implements OnInit {\n\n @ViewChild('map') mapElem:ElementRef;\n\n lat:number = 51.1840819;\n lng:number = 10.2377557;\n zoom:number = 6;\n\n searchZip:string = '';\n searchZipInput:string = '';\n\n iconUrl:string = '/assets/img/mapmarker_sm.png';\n servicePartners = [];\n servicePartnersSorted = null;\n selectedServicePartner = null;\n\n constructor(\n private _http:HttpClient,\n private _servicePartnerService:ServicePartnerService,\n activatedRoute:ActivatedRoute,\n private _router:Router,\n private _titleService: Title,\n private _metaService:Meta,\n ) {\n activatedRoute.queryParams.subscribe((params) => {\n this.searchZip = params.q;\n if(this.searchZip) {\n this.performSearch();\n }\n });\n }\n\n ngOnInit() {\n this._titleService.setTitle(\"FelgenHero – Felgenreparatur ServicePartner Suche\");\n this._metaService.addTag({name: 'description', content: 'Finden Sie Ihren FelgenHero ServicePartner in der Nähe. Einfache Postleitzahlen-Suche. Felgenaufbereitung vor Ort beim ServicePartner buchen.'});\n\n this._loadServicePartners();\n }\n\n ngOnDestroy() {\n this._titleService.setTitle(\"FelgenHero – Professionelle Felgenreparatur\");\n this._metaService.removeTag('name = \"description\"');\n }\n\n private async _loadServicePartners():Promise {\n this.servicePartners = await this._servicePartnerService.loadAll({\n where: {\n lat: {\n neq: null,\n }\n }\n });\n if(this.searchZip) {\n this._fillResultList();\n }\n }\n\n doSearch() {\n this._router.navigate(['/servicepartner-suche'], { queryParams: { q: this.searchZip }});\n }\n\n async performSearch() {\n let url:string = `https://maps.googleapis.com/maps/api/geocode/json?address=${this.searchZip},Deutschland&key=${GOOGLE_MAPS_API_KEY}`;\n let result = await this._http.get(url).toPromise();\n\n if(result.status === 'OK' && result.results.length > 0) {\n let location = result.results[0].geometry.location;\n this.lat = location.lat;\n this.lng = location.lng;\n this.zoom = 11;\n\n this._fillResultList();\n }\n\n this.mapElem.nativeElement.scrollIntoView({ behavior: 'smooth' });\n }\n\n private _fillResultList() {\n let servicePartnersClone = [...this.servicePartners];\n servicePartnersClone.map(servicePartner => {\n servicePartner.dist = this.distance(this.lat, this.lng, servicePartner.lat, servicePartner.lng);\n });\n servicePartnersClone.sort((a, b) => {\n if(a.dist == b.dist) {\n return 0;\n } else if(a.dist < b.dist) {\n return -1;\n } else {\n return 1;\n }\n });\n servicePartnersClone = servicePartnersClone.splice(0, 5);\n this.servicePartnersSorted = servicePartnersClone;\n }\n\n distance(lat1:number, lon1:number, lat2:number, lon2:number) {\n if ((lat1 == lat2) && (lon1 == lon2)) {\n return 0;\n }\n else {\n var radlat1 = Math.PI * lat1/180;\n var radlat2 = Math.PI * lat2/180;\n var theta = lon1-lon2;\n var radtheta = Math.PI * theta/180;\n var dist = Math.sin(radlat1) * Math.sin(radlat2) + Math.cos(radlat1) * Math.cos(radlat2) * Math.cos(radtheta);\n if (dist > 1) {\n dist = 1;\n }\n dist = Math.acos(dist);\n dist = dist * 180/Math.PI;\n dist = dist * 60 * 1.1515;\n dist = dist * 1.609344;\n //if (unit==\"N\") { dist = dist * 0.8684 }\n return dist;\n }\n }\n\n roundDist(dist:number):string {\n return (Math.round(dist * 10) / 10).toFixed(1).replace(\".\", \",\");\n }\n\n selectServicePartnerFocus(servicePartner) {\n this.selectedServicePartner = servicePartner;\n this.lat = servicePartner.lat;\n this.lng = servicePartner.lng;\n }\n\n}\n","module.exports = \"
\\n
\\n \\n
\\n
\\n\\n
\\n
\\n
\\n
\\n
\\n

\\n Willkommen {{ username }},\\n

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

Neue Felge registrieren

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

Sie haben 2 Möglichkeiten einen Reparaturauftrag für eine Felge zu erstellen:

\\n\\n
    \\n
  1. Mit der DHL-Sendungsnummer:
    \\n Scannen Sie den Barcode vom Sendelabel oder tippen Sie die Sendungsnummer in das nachfolgende Feld
    \\n

    Beispiel für Sendungsnummer: 22220104000305414C

    \\n
  2. \\n
  3. Mit der Felgenhero-Auftragsnummer:
    \\n Tippen Sie die Felgenhero-Auftragsnummer in das nachfolgende Feld
    \\n

    Beispiel für Auftragsnummer: A000123

    \\n
  4. \\n
\\n\\n

Beide Nummern finden Sie auf dem DHL-Label

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

Auftrag abschließen

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

Die Aufbereitung einer Felge ist beendet? Hier können Sie den Auftrag abschließen und die Rücksendung veranlassen.

\\n

Falls die Refenznummern aus ihrem internen System an die Felgenhero Plattform angebunden sind, können Sie darüber einen\\n fertigen Reperaturauftrag abschließen und die Rücksendung veranlassen. (Das kann zum Beispiel diejenige Nummer sein, welche vor Beginn des Aufbereitungsvorgangs in die\\n Felge eingraviert wurde)

\\n

Alternativ können Sie auch hier die Felgenhero-Auftragsnummer eingeben

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

Aufträge

\\n
\\n \\n
\\n
\\n
\\n
\"","module.exports = \".jumbotron.main {\\n background-image: url('/assets/img/home-service-partner.jpg');\\n width: 100%;\\n min-height: 15vw;\\n background-position: top center;\\n border-radius: 0;\\n background-position-y: 60%;\\n}\\n.jumbotron.main .jumbotron-text {\\n margin-top: 7vw;\\n}\\n.jumbotron.main .jumbotron-text h1 {\\n text-transform: uppercase;\\n font-size: 200%;\\n color: #be1822;\\n}\\n@media (max-width: 767px) {\\n .jumbotron.main .jumbotron-text h1 {\\n font-size: 150%;\\n }\\n}\\n.block.bg {\\n background-color: #f8f8fa;\\n}\\n.block h2 {\\n text-transform: uppercase;\\n font-size: 150%;\\n color: #be1822;\\n}\\n@media (min-width: 768px) {\\n .inner-container {\\n width: 60%;\\n }\\n}\\n.card {\\n border: none;\\n border-radius: unset;\\n box-shadow: 0px 0px 30px 0px rgba(0, 0, 0, 0.2);\\n margin-top: 15px;\\n margin-bottom: 15px;\\n}\\n.card .card-header {\\n position: relative;\\n background-color: #f8f8fa;\\n border: none;\\n padding: 1.5em;\\n}\\n.card .card-header h4 {\\n text-transform: uppercase;\\n text-align: left;\\n color: #000000;\\n font-weight: bold !important;\\n font-size: 120%;\\n}\\n.card .card-header .headicon {\\n position: absolute;\\n right: 1em;\\n height: 3em;\\n top: 1em;\\n}\\n.barcode {\\n height: calc(1.5em + 2px + 0.75rem);\\n width: calc((1.5em + 2px + 0.75rem) * 1.4);\\n position: relative;\\n top: -1px;\\n margin-right: 1.5em;\\n box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.15);\\n}\\napp-inputfield {\\n flex: unset;\\n display: inline-block;\\n width: calc(100% - 1.5em -(1.5em + 2px + 0.75rem) * 1.4);\\n}\\n#orderFinishInput {\\n flex: auto;\\n display: inline-block;\\n width: inherit;\\n}\\n.rc-dashboard-button {\\n background-color: #be1822 !important;\\n cursor: pointer;\\n}\\n.rc-dashboard-button h4 {\\n color: #f8f8fa !important;\\n text-align: center !important;\\n}\\n\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9hcHAtdWkvc3JjL2FwcC9jb21wb25lbnRzL3BhZ2VzL3JlcGFpci1jZW50ZXIvZGFzaGJvYXJkL3JlcGFpci1jZW50ZXItZGFzaGJvYXJkLmNvbXBvbmVudC5sZXNzIiwic3JjL2FwcC9jb21wb25lbnRzL3BhZ2VzL3JlcGFpci1jZW50ZXIvZGFzaGJvYXJkL3JlcGFpci1jZW50ZXItZGFzaGJvYXJkLmNvbXBvbmVudC5sZXNzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0VBQ0ksNkRBQUE7RUFDQSxXQUFBO0VBQ0EsZ0JBQUE7RUFDQSwrQkFBQTtFQUNBLGdCQUFBO0VBQ0EsMEJBQUE7QUNDSjtBRFBBO0VBU1EsZUFBQTtBQ0NSO0FEVkE7RUFZWSx5QkFBQTtFQUNBLGVBQUE7RUFDQSxjQUFBO0FDQ1o7QURDWTtFQUFBO0lBQ0ksZUFBQTtFQ0VkO0FBQ0Y7QURJQTtFQUNJLHlCQUFBO0FDRko7QURBQTtFQU1JLHlCQUFBO0VBQ0EsZUFBQTtFQUNBLGNBQUE7QUNISjtBRFFJO0VBQUE7SUFDSSxVQUFBO0VDTE47QUFDRjtBRFFBO0VBQ0ksWUFBQTtFQUNBLG9CQUFBO0VBQ0EsK0NBQUE7RUFDQSxnQkFBQTtFQUNBLG1CQUFBO0FDTko7QURDQTtFQVFRLGtCQUFBO0VBQ0EseUJBQUE7RUFFQSxZQUFBO0VBQ0EsY0FBQTtBQ1BSO0FETEE7RUFlWSx5QkFBQTtFQUNBLGdCQUFBO0VBQ0EsY0FBQTtFQUNBLDRCQUFBO0VBQ0EsZUFBQTtBQ1BaO0FEWkE7RUF1Qlksa0JBQUE7RUFDQSxVQUFBO0VBQ0EsV0FBQTtFQUNBLFFBQUE7QUNSWjtBRGFBO0VBQ0ksbUNBQUE7RUFDQSwwQ0FBQTtFQUNBLGtCQUFBO0VBQ0EsU0FBQTtFQUNBLG1CQUFBO0VBQ0EsZ0RBQUE7QUNYSjtBRGNBO0VBQ0ksV0FBQTtFQUNBLHFCQUFBO0VBQ0Esd0RBQUE7QUNaSjtBRGVBO0VBQ0ksVUFBQTtFQUNBLHFCQUFBO0VBQ0EsY0FBQTtBQ2JKO0FEZ0JBO0VBQ0ksb0NBQUE7RUFDQSxlQUFBO0FDZEo7QURZQTtFQUtRLHlCQUFBO0VBQ0EsNkJBQUE7QUNkUiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvcGFnZXMvcmVwYWlyLWNlbnRlci9kYXNoYm9hcmQvcmVwYWlyLWNlbnRlci1kYXNoYm9hcmQuY29tcG9uZW50Lmxlc3MiLCJzb3VyY2VzQ29udGVudCI6WyIuanVtYm90cm9uLm1haW4ge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnL2Fzc2V0cy9pbWcvaG9tZS1zZXJ2aWNlLXBhcnRuZXIuanBnJyk7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWluLWhlaWdodDogMTV2dztcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgY2VudGVyO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbi15OiA2MCU7XG4gICAgXG4gICAgLmp1bWJvdHJvbi10ZXh0IHtcbiAgICAgICAgbWFyZ2luLXRvcDogN3Z3O1xuICAgIFxuICAgICAgICBoMSB7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgZm9udC1zaXplOiAyMDAlO1xuICAgICAgICAgICAgY29sb3I6ICNiZTE4MjI7XG4gICAgXG4gICAgICAgICAgICBAbWVkaWEobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTUwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmJsb2NrIHtcbiYuYmcge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmOGY4ZmE7XG59XG5cbmgyIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGZvbnQtc2l6ZTogMTUwJTtcbiAgICBjb2xvcjogI2JlMTgyMjtcbn1cbn1cblxuLmlubmVyLWNvbnRhaW5lciB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgIHdpZHRoOiA2MCU7XG4gICAgfVxufVxuXG4uY2FyZCB7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJvcmRlci1yYWRpdXM6IHVuc2V0O1xuICAgIGJveC1zaGFkb3c6IDBweCAwcHggMzBweCAwcHggcmdiYSgwLCAwLCAwLCAwLjIpOyAgICBcbiAgICBtYXJnaW4tdG9wOiAxNXB4O1xuICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG5cbiAgICAuY2FyZC1oZWFkZXIge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmOGY4ZmE7XG5cbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBwYWRkaW5nOiAxLjVlbTtcblxuICAgICAgICBoNCB7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgIGNvbG9yOiAjMDAwMDAwO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTIwJTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5oZWFkaWNvbiB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICByaWdodDogMWVtO1xuICAgICAgICAgICAgaGVpZ2h0OiAzZW07XG4gICAgICAgICAgICB0b3A6IDFlbTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmJhcmNvZGUge1xuICAgIGhlaWdodDogY2FsYygxLjVlbSArIDJweCArIDAuNzVyZW0pO1xuICAgIHdpZHRoOiBjYWxjKCgxLjVlbSArIDJweCArIDAuNzVyZW0pICogMS40KTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAtMXB4O1xuICAgIG1hcmdpbi1yaWdodDogMS41ZW07XG4gICAgYm94LXNoYWRvdzogMHB4IDBweCAxMHB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xufVxuXG5hcHAtaW5wdXRmaWVsZCB7XG4gICAgZmxleDogdW5zZXQ7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxLjVlbSAtKDEuNWVtICsgMnB4ICsgMC43NXJlbSkgKiAxLjQpO1xufVxuXG4jb3JkZXJGaW5pc2hJbnB1dCB7XG4gICAgZmxleDphdXRvO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogaW5oZXJpdDtcbn1cblxuLnJjLWRhc2hib2FyZC1idXR0b24ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNiZTE4MjIgIWltcG9ydGFudDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICBoNHtcbiAgICAgICAgY29sb3I6ICNmOGY4ZmEgIWltcG9ydGFudDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIFxufSIsIi5qdW1ib3Ryb24ubWFpbiB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnL2Fzc2V0cy9pbWcvaG9tZS1zZXJ2aWNlLXBhcnRuZXIuanBnJyk7XG4gIHdpZHRoOiAxMDAlO1xuICBtaW4taGVpZ2h0OiAxNXZ3O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgY2VudGVyO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IDYwJTtcbn1cbi5qdW1ib3Ryb24ubWFpbiAuanVtYm90cm9uLXRleHQge1xuICBtYXJnaW4tdG9wOiA3dnc7XG59XG4uanVtYm90cm9uLm1haW4gLmp1bWJvdHJvbi10ZXh0IGgxIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC1zaXplOiAyMDAlO1xuICBjb2xvcjogI2JlMTgyMjtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAuanVtYm90cm9uLm1haW4gLmp1bWJvdHJvbi10ZXh0IGgxIHtcbiAgICBmb250LXNpemU6IDE1MCU7XG4gIH1cbn1cbi5ibG9jay5iZyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmOGY4ZmE7XG59XG4uYmxvY2sgaDIge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LXNpemU6IDE1MCU7XG4gIGNvbG9yOiAjYmUxODIyO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5pbm5lci1jb250YWluZXIge1xuICAgIHdpZHRoOiA2MCU7XG4gIH1cbn1cbi5jYXJkIHtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItcmFkaXVzOiB1bnNldDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAzMHB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMik7XG4gIG1hcmdpbi10b3A6IDE1cHg7XG4gIG1hcmdpbi1ib3R0b206IDE1cHg7XG59XG4uY2FyZCAuY2FyZC1oZWFkZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmOGY4ZmE7XG4gIGJvcmRlcjogbm9uZTtcbiAgcGFkZGluZzogMS41ZW07XG59XG4uY2FyZCAuY2FyZC1oZWFkZXIgaDQge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBjb2xvcjogIzAwMDAwMDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQgIWltcG9ydGFudDtcbiAgZm9udC1zaXplOiAxMjAlO1xufVxuLmNhcmQgLmNhcmQtaGVhZGVyIC5oZWFkaWNvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDFlbTtcbiAgaGVpZ2h0OiAzZW07XG4gIHRvcDogMWVtO1xufVxuLmJhcmNvZGUge1xuICBoZWlnaHQ6IGNhbGMoMS41ZW0gKyAycHggKyAwLjc1cmVtKTtcbiAgd2lkdGg6IGNhbGMoKDEuNWVtICsgMnB4ICsgMC43NXJlbSkgKiAxLjQpO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogLTFweDtcbiAgbWFyZ2luLXJpZ2h0OiAxLjVlbTtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAxMHB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xufVxuYXBwLWlucHV0ZmllbGQge1xuICBmbGV4OiB1bnNldDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogY2FsYygxMDAlIC0gMS41ZW0gLSgxLjVlbSArIDJweCArIDAuNzVyZW0pICogMS40KTtcbn1cbiNvcmRlckZpbmlzaElucHV0IHtcbiAgZmxleDogYXV0bztcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogaW5oZXJpdDtcbn1cbi5yYy1kYXNoYm9hcmQtYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2JlMTgyMiAhaW1wb3J0YW50O1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG4ucmMtZGFzaGJvYXJkLWJ1dHRvbiBoNCB7XG4gIGNvbG9yOiAjZjhmOGZhICFpbXBvcnRhbnQ7XG4gIHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50O1xufVxuIl19 */\"","import { Component, OnInit, ViewChild } from '@angular/core';\nimport { Router } from '@angular/router';\nimport { User } from 'src/app/model/user.model';\nimport { UserService } from 'src/app/service/user.service';\nimport { RepairOrderService} from 'src/app/service/repair-order.service';\nimport { FeedbackService } from 'src/app/service/feedback.service';\n\n@Component({\n selector: 'app-repair-center-dashboard',\n templateUrl: './repair-center-dashboard.component.html',\n styleUrls: ['./repair-center-dashboard.component.less']\n})\nexport class RepairCenterDashboardComponent implements OnInit {\n\n orderId:string;\n \n searchStringNewOrder:string;\n searchStringRepairedOrder:string;\n\n orderIdRegex = /^A(\\d{6})\\-\\d{8}$/;\n @ViewChild('orderIdInput') orderIdInput;\n\n showingNewRimSection : boolean;\n showingFinishOrderSection : boolean;\n\n constructor(\n private _router:Router,\n private _userService:UserService,\n private _repairOrderService:RepairOrderService,\n private _feedbackService:FeedbackService,\n ) { \n \n }\n\n ngOnInit() {\n this.orderIdInput.setFocus();\n }\n\n isOrderIdValid():boolean {\n return !!/^\\d+$/.exec(this.orderId) || !!this.orderIdRegex.exec(this.orderId);\n }\n\n async process() {\n\n let checkedString : string;\n\n if(this.searchStringNewOrder)\n {\n checkedString = this.checkSearchStringNewOrder(this.searchStringNewOrder);\n console.log(checkedString);\n\n //if string was a sendingNr get the order with its filter\n let repairOrder = await this._repairOrderService.loadForRepairCenterFiltered({ where: { shippingOrderSend: { eq: checkedString } } }, this._userService.user.repairCenterId);\n if (repairOrder.length > 0) {\n //use shippingId\n this.orderId = repairOrder[0].id;\n } else {\n //use orderId\n this.orderId = checkedString;\n }\n \n } else if (this.searchStringRepairedOrder)\n {\n \n checkedString = this.checkSearchStringRepairedOrder(this.searchStringRepairedOrder);\n this.orderId = checkedString;\n console.log(checkedString);\n }\n\n if(!this.orderId)\n {\n this._feedbackService.showError(\"Falsches Auftragsformat. Bitte Hinweistext lesen\");\n return;\n }\n \n this._router.navigate(['repair-center', 'repair-orders', 'process', this.orderId]);\n }\n\n get username():string {\n let user:User = this._userService.user;\n return `${user.firstName} ${user.lastName}`;\n }\n\n checkSearchStringNewOrder(searchString:string)\n { \n //check if felgenheroId was used\n let regEx = /^A(\\d{6})/;\n let match = regEx.exec(searchString);\n \n if(match)\n { \n //remove zeros\n let outstring = match[1].replace(/^0+/,''); \n return outstring;\n } \n\n // check if it could be a sendingNr\n regEx = /^[0-9].+$/\n match = regEx.exec(searchString);\n\n if(match)\n {\n return match[0];\n }\n\n //with this construct you can stil find orders without specifiing the full id with A000 etc.\n //but instead only use the 'real' id after the trailing zeros \n }\n\n checkSearchStringRepairedOrder(searchString: string)\n { \n let outstring:string;\n\n //check if repairCenter code was used\n let regEx = /^[A-Z]{3}10(.+)$/;\n let match = regEx.exec(searchString);\n if(match)\n {\n outstring = match[1];\n //felgenheroID is left \n } else\n {\n outstring = searchString;\n }\n\n //check if felgenheroId was used\n regEx = /^A(\\d{6})/;\n match = regEx.exec(outstring);\n \n if(match)\n { \n //remove zeros\n let outstring = match[1].replace(/^0+/,''); \n return outstring;\n } \n\n //for now also allow raw (only digits no trainling zeros) version of orderID\n regEx = /^[0-9].+$/\n match = regEx.exec(searchString);\n\n if(match)\n {\n let outstring = match[0].replace(/^0+/,''); \n return outstring;\n }\n \n }\n\n showNewRimSection() {\n\n this.showingFinishOrderSection = false;\n\n if(this.showingNewRimSection) \n {\n this.showingNewRimSection = false;\n } else {\n this.showingNewRimSection = true;\n }\n }\n\n showRepairedRimSection() {\n\n this.showingNewRimSection = false;\n\n if(this.showingFinishOrderSection)\n {\n this.showingFinishOrderSection = false;\n } else {\n this.showingFinishOrderSection = true;\n }\n }\n\n}\n","module.exports = \"
\\n
\\n \\n
\\n
\\n\\n
\\n
\\n
\\n
\\n
\\n
\\n \\n

Rechnungen

\\n
\\n
\\n\\n \\n \\n #\\n Rechnungsdatum\\n Summe\\n Status\\n \\n \\n {{ row.ident }}\\n {{ row.invoiceDate | date }}\\n {{ row.amountTotal | amount }}€\\n {{ ('INVOICE_STATE_' + row.state).toLowerCase() | translate }}\\n \\n \\n\\n
\\n
\\n
\\n
\\n
\\n
\"","module.exports = \".jumbotron.main {\\n background-image: url('/assets/img/invoices.jpg');\\n width: 100%;\\n min-height: 15vw;\\n background-position: top center;\\n border-radius: 0;\\n background-position-y: 60%;\\n}\\n.inner-container {\\n padding-top: 3em;\\n}\\n@media (min-width: 768px) {\\n .inner-container {\\n width: 80%;\\n }\\n}\\n.card {\\n border: none;\\n border-radius: unset;\\n box-shadow: 0px 0px 30px 0px rgba(0, 0, 0, 0.2);\\n margin-top: 15px;\\n margin-bottom: 15px;\\n}\\n.card .card-header {\\n position: relative;\\n background-color: #f8f8fa;\\n border: none;\\n padding: 1.5em;\\n}\\n.card .card-header h4 {\\n text-transform: uppercase;\\n text-align: left;\\n color: #000000;\\n font-weight: bold !important;\\n font-size: 120%;\\n}\\n.card .card-header .headicon {\\n position: absolute;\\n right: 1em;\\n height: 3em;\\n top: 1em;\\n}\\n.card .card-body {\\n padding: 3em;\\n}\\n\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9hcHAtdWkvc3JjL2FwcC9jb21wb25lbnRzL3BhZ2VzL3JlcGFpci1jZW50ZXIvaW52b2ljZS9saXN0L3JlcGFpci1jZW50ZXItaW52b2ljZS1saXN0LmNvbXBvbmVudC5sZXNzIiwic3JjL2FwcC9jb21wb25lbnRzL3BhZ2VzL3JlcGFpci1jZW50ZXIvaW52b2ljZS9saXN0L3JlcGFpci1jZW50ZXItaW52b2ljZS1saXN0LmNvbXBvbmVudC5sZXNzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0VBQ0ksaURBQUE7RUFDQSxXQUFBO0VBQ0EsZ0JBQUE7RUFDQSwrQkFBQTtFQUNBLGdCQUFBO0VBQ0EsMEJBQUE7QUNDSjtBREVBO0VBQ0ksZ0JBQUE7QUNBSjtBRENJO0VBQUE7SUFDSSxVQUFBO0VDRU47QUFDRjtBRENBO0VBQ0ksWUFBQTtFQUNBLG9CQUFBO0VBQ0EsK0NBQUE7RUFDQSxnQkFBQTtFQUNBLG1CQUFBO0FDQ0o7QUROQTtFQVFRLGtCQUFBO0VBQ0EseUJBQUE7RUFFQSxZQUFBO0VBQ0EsY0FBQTtBQ0FSO0FEWkE7RUFlWSx5QkFBQTtFQUNBLGdCQUFBO0VBQ0EsY0FBQTtFQUNBLDRCQUFBO0VBQ0EsZUFBQTtBQ0FaO0FEbkJBO0VBdUJZLGtCQUFBO0VBQ0EsVUFBQTtFQUNBLFdBQUE7RUFDQSxRQUFBO0FDRFo7QUR6QkE7RUErQlEsWUFBQTtBQ0hSIiwiZmlsZSI6InNyYy9hcHAvY29tcG9uZW50cy9wYWdlcy9yZXBhaXItY2VudGVyL2ludm9pY2UvbGlzdC9yZXBhaXItY2VudGVyLWludm9pY2UtbGlzdC5jb21wb25lbnQubGVzcyIsInNvdXJjZXNDb250ZW50IjpbIi5qdW1ib3Ryb24ubWFpbiB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcvYXNzZXRzL2ltZy9pbnZvaWNlcy5qcGcnKTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtaW4taGVpZ2h0OiAxNXZ3O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IHRvcCBjZW50ZXI7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IDYwJTtcbn1cblxuLmlubmVyLWNvbnRhaW5lciB7XG4gICAgcGFkZGluZy10b3A6IDNlbTtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgd2lkdGg6IDgwJTtcbiAgICB9XG59XG5cbi5jYXJkIHtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYm9yZGVyLXJhZGl1czogdW5zZXQ7XG4gICAgYm94LXNoYWRvdzogMHB4IDBweCAzMHB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMik7ICAgIFxuICAgIG1hcmdpbi10b3A6IDE1cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMTVweDtcblxuICAgIC5jYXJkLWhlYWRlciB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjhmYTtcblxuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIHBhZGRpbmc6IDEuNWVtO1xuXG4gICAgICAgIGg0IHtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgY29sb3I6ICMwMDAwMDA7XG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxMjAlO1xuICAgICAgICB9XG5cbiAgICAgICAgLmhlYWRpY29uIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHJpZ2h0OiAxZW07XG4gICAgICAgICAgICBoZWlnaHQ6IDNlbTtcbiAgICAgICAgICAgIHRvcDogMWVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmNhcmQtYm9keSB7XG4gICAgICAgIHBhZGRpbmc6IDNlbTtcbiAgICB9XG59IiwiLmp1bWJvdHJvbi5tYWluIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcvYXNzZXRzL2ltZy9pbnZvaWNlcy5qcGcnKTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1pbi1oZWlnaHQ6IDE1dnc7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IHRvcCBjZW50ZXI7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQtcG9zaXRpb24teTogNjAlO1xufVxuLmlubmVyLWNvbnRhaW5lciB7XG4gIHBhZGRpbmctdG9wOiAzZW07XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmlubmVyLWNvbnRhaW5lciB7XG4gICAgd2lkdGg6IDgwJTtcbiAgfVxufVxuLmNhcmQge1xuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IHVuc2V0O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDMwcHggMHB4IHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgbWFyZ2luLXRvcDogMTVweDtcbiAgbWFyZ2luLWJvdHRvbTogMTVweDtcbn1cbi5jYXJkIC5jYXJkLWhlYWRlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjhmYTtcbiAgYm9yZGVyOiBub25lO1xuICBwYWRkaW5nOiAxLjVlbTtcbn1cbi5jYXJkIC5jYXJkLWhlYWRlciBoNCB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGNvbG9yOiAjMDAwMDAwO1xuICBmb250LXdlaWdodDogYm9sZCAhaW1wb3J0YW50O1xuICBmb250LXNpemU6IDEyMCU7XG59XG4uY2FyZCAuY2FyZC1oZWFkZXIgLmhlYWRpY29uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMWVtO1xuICBoZWlnaHQ6IDNlbTtcbiAgdG9wOiAxZW07XG59XG4uY2FyZCAuY2FyZC1ib2R5IHtcbiAgcGFkZGluZzogM2VtO1xufVxuIl19 */\"","import { Component, OnInit, ViewChild } from '@angular/core';\nimport { REST_SERVER } from 'src/app/config';\nimport { ActivatedRoute } from '@angular/router';\nimport { RepairOrder } from 'src/app/model/repair-order.model';\nimport { InvoiceService } from 'src/app/service/invoice.service';\nimport { GridComponent } from 'src/app/components/ui/grid/grid.component';\nimport { Invoice } from 'src/app/model/invoice.model';\nimport { UserService } from 'src/app/service/user.service';\nimport { ViewerDialogComponent } from 'src/app/components/ui/dialogs/viewer-dialog.component';\nimport { BsModalService, BsModalRef } from 'ngx-bootstrap/modal';\n\nenum InvoiceAction {\n BOOK_PAYMENT,\n};\n\n@Component({\n selector: 'app-repair-center-invoice-list',\n templateUrl: './repair-center-invoice-list.component.html',\n styleUrls: ['./repair-center-invoice-list.component.less']\n})\nexport class RepairCenterInvoiceListComponent implements OnInit {\n @ViewChild('grid') private _grid:GridComponent;\n\n public loadingGrid:boolean = false;\n public totalCnt:number = 0;\n public title:string = '';\n public state:string = '';\n\n filterDesc = {\n ident: {\n type: \"string\",\n comp: \"like\",\n label: \"Re.-nr.\",\n },\n }\n\n constructor(\n activatedRoute:ActivatedRoute,\n private _invoiceService:InvoiceService,\n private _userService:UserService,\n private _modalService:BsModalService,\n ) { \n \n }\n\n ngOnInit() {\n }\n\n public getBaseUrl():string {\n let repairCenterId:number = this._userService.user.repairCenterId;\n return `${REST_SERVER}/repair-centers/${repairCenterId}/invoices`;\n }\n\n calcInvoiceDownloadHref(invoice:Invoice):string {\n let repairCenterId:number = this._userService.user.repairCenterId;\n let token:string = this._userService.token;\n return `${REST_SERVER}/repair-centers/${repairCenterId}/invoices/${invoice.ident}?access_token=${token}`;\n }\n\n openInvoicePdf(invoice:Invoice) {\n let initialState = {\n title: `Abrechnung ${invoice.ident}`,\n path: this.calcInvoiceDownloadHref(invoice),\n msg: \"\",\n }\n let ref:BsModalRef = this._modalService.show(ViewerDialogComponent, {initialState, class: 'modal-lg', ignoreBackdropClick: true, keyboard: false});\n }\n}\n","module.exports = \"
\\n
\\n \\n
\\n
\\n \\n
\\n
\\n
\\n
\\n
\\n
\\n \\n

Auftragsdetails – Nr. {{ repairOrder | orderId }}

\\n
\\n
\\n
\\n
\\n \\n \\n {{ ('repair_order_' + row.key) | camelCase | translate }}\\n {{ ('' + (row.value === null ? '' : row.value)) | dateIf | translate }}\\n \\n \\n
\\n
\\n \\n
\\n
\\n
\\n\\n\\n
0\\\">\\n
\\n
\\n \\n

Bilder vor der Aufbereitung

\\n
\\n
\\n
\\n
\\n \\n
\\n
\\n
\\n
\\n
\\n
0\\\">\\n
\\n
\\n \\n

Bilder nach der Aufbereitung

\\n
\\n
\\n
\\n
\\n \\n
\\n
\\n
\\n
\\n
\\n
\\n
\"","module.exports = \".jumbotron.main {\\n background-image: url('/assets/img/repair-orders.jpg');\\n width: 100%;\\n min-height: 15vw;\\n background-position: top center;\\n border-radius: 0;\\n background-position-y: 60%;\\n}\\n.inner-container {\\n padding-top: 3em;\\n}\\n@media (min-width: 768px) {\\n .inner-container {\\n width: 60%;\\n }\\n}\\n.card {\\n border: none;\\n border-radius: unset;\\n box-shadow: 0px 0px 30px 0px rgba(0, 0, 0, 0.2);\\n margin-top: 15px;\\n margin-bottom: 15px;\\n}\\n.card .card-header {\\n position: relative;\\n background-color: #f8f8fa;\\n border: none;\\n padding: 1.5em;\\n}\\n.card .card-header h4 {\\n text-transform: uppercase;\\n text-align: left;\\n color: #000000;\\n font-weight: bold !important;\\n font-size: 120%;\\n}\\n.card .card-header .headicon {\\n position: absolute;\\n right: 1em;\\n height: 3em;\\n top: 1em;\\n}\\n.card .card-body {\\n padding: 3em;\\n}\\n\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9hcHAtdWkvc3JjL2FwcC9jb21wb25lbnRzL3BhZ2VzL3JlcGFpci1jZW50ZXIvcmVwYWlyLW9yZGVyL2RldGFpbHMvcmVwYWlyLWNlbnRlci1vcmRlci1kZXRhaWxzLmNvbXBvbmVudC5sZXNzIiwic3JjL2FwcC9jb21wb25lbnRzL3BhZ2VzL3JlcGFpci1jZW50ZXIvcmVwYWlyLW9yZGVyL2RldGFpbHMvcmVwYWlyLWNlbnRlci1vcmRlci1kZXRhaWxzLmNvbXBvbmVudC5sZXNzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0VBQ0ksc0RBQUE7RUFDQSxXQUFBO0VBQ0EsZ0JBQUE7RUFDQSwrQkFBQTtFQUNBLGdCQUFBO0VBQ0EsMEJBQUE7QUNDSjtBREVBO0VBQ0ksZ0JBQUE7QUNBSjtBRENJO0VBQUE7SUFDSSxVQUFBO0VDRU47QUFDRjtBRENBO0VBQ0ksWUFBQTtFQUNBLG9CQUFBO0VBQ0EsK0NBQUE7RUFDQSxnQkFBQTtFQUNBLG1CQUFBO0FDQ0o7QUROQTtFQVFRLGtCQUFBO0VBQ0EseUJBQUE7RUFFQSxZQUFBO0VBQ0EsY0FBQTtBQ0FSO0FEWkE7RUFlWSx5QkFBQTtFQUNBLGdCQUFBO0VBQ0EsY0FBQTtFQUNBLDRCQUFBO0VBQ0EsZUFBQTtBQ0FaO0FEbkJBO0VBdUJZLGtCQUFBO0VBQ0EsVUFBQTtFQUNBLFdBQUE7RUFDQSxRQUFBO0FDRFo7QUR6QkE7RUErQlEsWUFBQTtBQ0hSIiwiZmlsZSI6InNyYy9hcHAvY29tcG9uZW50cy9wYWdlcy9yZXBhaXItY2VudGVyL3JlcGFpci1vcmRlci9kZXRhaWxzL3JlcGFpci1jZW50ZXItb3JkZXItZGV0YWlscy5jb21wb25lbnQubGVzcyIsInNvdXJjZXNDb250ZW50IjpbIi5qdW1ib3Ryb24ubWFpbiB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcvYXNzZXRzL2ltZy9yZXBhaXItb3JkZXJzLmpwZycpO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1pbi1oZWlnaHQ6IDE1dnc7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogdG9wIGNlbnRlcjtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb24teTogNjAlO1xufVxuXG4uaW5uZXItY29udGFpbmVyIHtcbiAgICBwYWRkaW5nLXRvcDogM2VtO1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICB3aWR0aDogNjAlO1xuICAgIH1cbn1cblxuLmNhcmQge1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBib3JkZXItcmFkaXVzOiB1bnNldDtcbiAgICBib3gtc2hhZG93OiAwcHggMHB4IDMwcHggMHB4IHJnYmEoMCwgMCwgMCwgMC4yKTsgICAgXG4gICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuXG4gICAgLmNhcmQtaGVhZGVyIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOGZhO1xuXG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgcGFkZGluZzogMS41ZW07XG5cbiAgICAgICAgaDQge1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICBjb2xvcjogIzAwMDAwMDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBmb250LXNpemU6IDEyMCU7XG4gICAgICAgIH1cblxuICAgICAgICAuaGVhZGljb24ge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgcmlnaHQ6IDFlbTtcbiAgICAgICAgICAgIGhlaWdodDogM2VtO1xuICAgICAgICAgICAgdG9wOiAxZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuY2FyZC1ib2R5IHtcbiAgICAgICAgcGFkZGluZzogM2VtO1xuICAgIH1cbn0iLCIuanVtYm90cm9uLm1haW4ge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy9hc3NldHMvaW1nL3JlcGFpci1vcmRlcnMuanBnJyk7XG4gIHdpZHRoOiAxMDAlO1xuICBtaW4taGVpZ2h0OiAxNXZ3O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgY2VudGVyO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IDYwJTtcbn1cbi5pbm5lci1jb250YWluZXIge1xuICBwYWRkaW5nLXRvcDogM2VtO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5pbm5lci1jb250YWluZXIge1xuICAgIHdpZHRoOiA2MCU7XG4gIH1cbn1cbi5jYXJkIHtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItcmFkaXVzOiB1bnNldDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAzMHB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMik7XG4gIG1hcmdpbi10b3A6IDE1cHg7XG4gIG1hcmdpbi1ib3R0b206IDE1cHg7XG59XG4uY2FyZCAuY2FyZC1oZWFkZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmOGY4ZmE7XG4gIGJvcmRlcjogbm9uZTtcbiAgcGFkZGluZzogMS41ZW07XG59XG4uY2FyZCAuY2FyZC1oZWFkZXIgaDQge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBjb2xvcjogIzAwMDAwMDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQgIWltcG9ydGFudDtcbiAgZm9udC1zaXplOiAxMjAlO1xufVxuLmNhcmQgLmNhcmQtaGVhZGVyIC5oZWFkaWNvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDFlbTtcbiAgaGVpZ2h0OiAzZW07XG4gIHRvcDogMWVtO1xufVxuLmNhcmQgLmNhcmQtYm9keSB7XG4gIHBhZGRpbmc6IDNlbTtcbn1cbiJdfQ== */\"","import { Component, OnInit } from '@angular/core';\nimport { Router, ActivatedRoute } from '@angular/router';\nimport { Location } from '@angular/common';\nimport { Subscription } from 'rxjs/internal/Subscription';\nimport { ServicePartnerService } from 'src/app/service/service-partner.service';\nimport { REST_SERVER } from 'src/app/config';\nimport { RepairOrderService } from 'src/app/service/repair-order.service';\nimport { BsModalService, BsModalRef } from 'ngx-bootstrap/modal';\nimport { RepairOrder } from 'src/app/model/repair-order.model';\nimport { MessageDialogComponent } from 'src/app/components/ui/dialogs/message-dialog/message-dialog.component';\nimport { OrderIdPipe } from 'src/app/pipes/order-id.pipe';\nimport { UserService } from 'src/app/service/user.service';\n\n@Component({\n selector: 'app-repair-center-order-details',\n templateUrl: './repair-center-order-details.component.html',\n styleUrls: ['./repair-center-order-details.component.less']\n})\nexport class RepairCenterOrderDetailsComponent implements OnInit {\n\n orderId:number;\n repairOrder:RepairOrder;\n repairOrderData = [];\n imageNamesBefore:string[] = [];\n imageNamesAfter:string[] = [];\n\n currentOrdersFilterJson:string = null;\n\n public servicePartner = null;\n\n constructor(\n activatedRoute:ActivatedRoute,\n private _location:Location,\n private _repairOrderService:RepairOrderService,\n private _modalService: BsModalService,\n private _userService:UserService,\n ) { \n activatedRoute.params.subscribe((params) => {\n this.orderId = parseInt(params.id);\n this.loadCurrentOrder();\n });\n }\n\n async loadCurrentOrder():Promise {\n this.repairOrder = await this._repairOrderService.loadForRepairCenter(\n this.orderId, this._userService.user.repairCenterId);\n if(!this.repairOrder) {\n let initialState = {\n title: \"Fehler\",\n msg: `Auftrag Nr. ${this.orderId} wurde nicht gefunden`,\n }\n let ref:BsModalRef = this._modalService.show(MessageDialogComponent, {initialState});\n ref.content.onClose.subscribe(result => {\n this._location.back();\n });\n }\n\n let repairOrderData = [];\n let repairOrder:any = {...this.repairOrder};\n //delete repairOrder.servicePartnerMessage;\n delete repairOrder.servicePartner;\n delete repairOrder.servicePartnerId;\n delete repairOrder.invoiceIdent;\n delete repairOrder.repairCenterId;\n delete repairOrder.rimDiameter;\n delete repairOrder.rimWithTires;\n //delete repairOrder.servicePartnerReference;\n let orderIdPipe:OrderIdPipe = new OrderIdPipe();\n repairOrder.id = orderIdPipe.transform(repairOrder);\n repairOrder.state = 'repair_state_' + repairOrder.state.toLowerCase();\n repairOrder.rimVarnish = 'rim_varnish_' + repairOrder.rimVarnish.toLowerCase();\n //repairOrder.rimWithTires = 'rim_with_tires_' + repairOrder.rimWithTires;\n if(repairOrder.repairResult) {\n repairOrder.repairResult = 'repair_result_' + repairOrder.repairResult.toLowerCase();\n }\n for(let key in repairOrder) {\n let item = { key, value: repairOrder[key] };\n repairOrderData.push(item);\n }\n this.repairOrderData = repairOrderData;\n\n this._updateImages();\n }\n\n private async _updateImages():Promise {\n if(this.repairOrder) {\n let repairCenterId = this._userService.user.repairCenterId;\n this.imageNamesBefore = await this._repairOrderService.getAbsoluteImageNamesForRepairCenter(this.repairOrder, repairCenterId, true);\n this.imageNamesAfter = await this._repairOrderService.getAbsoluteImageNamesForRepairCenter(this.repairOrder, repairCenterId, false);\n }\n }\n\n ngOnInit() {\n }\n\n goBack() {\n this._location.back();\n }\n}\n","module.exports = \"
\\n
\\n \\n
\\n
\\n \\n
\\n
\\n
\\n
\\n
\\n
\\n \\n

{{ title }}

\\n
\\n
\\n \\n \\n \\n #\\n Auftragsdatum\\n Anzahl Felgen\\n Service Partner Referenz\\n Felgenart\\n Status\\n Abrechnung\\n \\n \\n {{ row | orderId }}\\n {{ row.orderDate | date }}\\n {{ row.rimCount }}\\n {{ row.servicePartnerReference }}\\n {{ ('rim_varnish_' + row.rimVarnish) | translate }}\\n {{ ('REPAIR_STATE_' + row.state).toLowerCase() | translate }}\\n {{ row.creditIdent }}\\n \\n \\n \\n
\\n
\\n
\\n
\\n
\\n
\"","module.exports = \".jumbotron.main {\\n background-image: url('/assets/img/repair-orders.jpg');\\n width: 100%;\\n min-height: 15vw;\\n background-position: top center;\\n border-radius: 0;\\n background-position-y: 60%;\\n}\\n.inner-container {\\n padding-top: 3em;\\n}\\n@media (min-width: 768px) {\\n .inner-container:not(.fw) {\\n width: 90%;\\n }\\n}\\n.card {\\n border: none;\\n border-radius: unset;\\n box-shadow: 0px 0px 30px 0px rgba(0, 0, 0, 0.2);\\n margin-top: 15px;\\n margin-bottom: 15px;\\n}\\n.card .card-header {\\n position: relative;\\n background-color: #f8f8fa;\\n border: none;\\n padding: 1.5em;\\n}\\n.card .card-header h4 {\\n text-transform: uppercase;\\n text-align: left;\\n color: #000000;\\n font-weight: bold !important;\\n font-size: 120%;\\n}\\n.card .card-header .headicon {\\n position: absolute;\\n right: 1em;\\n height: 3em;\\n top: 1em;\\n}\\n.card .card-body {\\n padding: 3em;\\n}\\n.btn-download {\\n border-radius: 0;\\n border: none;\\n box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.15);\\n background-color: #be1822;\\n border-color: #be1822;\\n color: white;\\n width: 1.5em;\\n height: 1.5em;\\n display: inline-block;\\n border-radius: 50%;\\n}\\n\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9hcHAtdWkvc3JjL2FwcC9jb21wb25lbnRzL3BhZ2VzL3JlcGFpci1jZW50ZXIvcmVwYWlyLW9yZGVyL2xpc3QvcmVwYWlyLWNlbnRlci1vcmRlci1saXN0LmNvbXBvbmVudC5sZXNzIiwic3JjL2FwcC9jb21wb25lbnRzL3BhZ2VzL3JlcGFpci1jZW50ZXIvcmVwYWlyLW9yZGVyL2xpc3QvcmVwYWlyLWNlbnRlci1vcmRlci1saXN0LmNvbXBvbmVudC5sZXNzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0VBQ0ksc0RBQUE7RUFDQSxXQUFBO0VBQ0EsZ0JBQUE7RUFDQSwrQkFBQTtFQUNBLGdCQUFBO0VBQ0EsMEJBQUE7QUNDSjtBREVBO0VBQ0ksZ0JBQUE7QUNBSjtBREdRO0VBQUE7SUFDSSxVQUFBO0VDQVY7QUFDRjtBRElBO0VBQ0ksWUFBQTtFQUNBLG9CQUFBO0VBQ0EsK0NBQUE7RUFDQSxnQkFBQTtFQUNBLG1CQUFBO0FDRko7QURIQTtFQVFRLGtCQUFBO0VBQ0EseUJBQUE7RUFFQSxZQUFBO0VBQ0EsY0FBQTtBQ0hSO0FEVEE7RUFlWSx5QkFBQTtFQUNBLGdCQUFBO0VBQ0EsY0FBQTtFQUNBLDRCQUFBO0VBQ0EsZUFBQTtBQ0haO0FEaEJBO0VBdUJZLGtCQUFBO0VBQ0EsVUFBQTtFQUNBLFdBQUE7RUFDQSxRQUFBO0FDSlo7QUR0QkE7RUErQlEsWUFBQTtBQ05SO0FEVUE7RUFFSSxnQkFBQTtFQUNBLFlBQUE7RUFDQSxnREFBQTtFQUNBLHlCQUFBO0VBQ0EscUJBQUE7RUFDQSxZQUFBO0VBQ0EsWUFBQTtFQUNBLGFBQUE7RUFDQSxxQkFBQTtFQUNBLGtCQUFBO0FDVEoiLCJmaWxlIjoic3JjL2FwcC9jb21wb25lbnRzL3BhZ2VzL3JlcGFpci1jZW50ZXIvcmVwYWlyLW9yZGVyL2xpc3QvcmVwYWlyLWNlbnRlci1vcmRlci1saXN0LmNvbXBvbmVudC5sZXNzIiwic291cmNlc0NvbnRlbnQiOlsiLmp1bWJvdHJvbi5tYWluIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy9hc3NldHMvaW1nL3JlcGFpci1vcmRlcnMuanBnJyk7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWluLWhlaWdodDogMTV2dztcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgY2VudGVyO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbi15OiA2MCU7XG59XG5cbi5pbm5lci1jb250YWluZXIge1xuICAgIHBhZGRpbmctdG9wOiAzZW07XG5cbiAgICAmOm5vdCguZncpIHtcbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgICAgICB3aWR0aDogOTAlO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uY2FyZCB7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJvcmRlci1yYWRpdXM6IHVuc2V0O1xuICAgIGJveC1zaGFkb3c6IDBweCAwcHggMzBweCAwcHggcmdiYSgwLCAwLCAwLCAwLjIpOyAgICBcbiAgICBtYXJnaW4tdG9wOiAxNXB4O1xuICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG5cbiAgICAuY2FyZC1oZWFkZXIge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmOGY4ZmE7XG5cbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBwYWRkaW5nOiAxLjVlbTtcblxuICAgICAgICBoNCB7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgIGNvbG9yOiAjMDAwMDAwO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTIwJTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5oZWFkaWNvbiB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICByaWdodDogMWVtO1xuICAgICAgICAgICAgaGVpZ2h0OiAzZW07XG4gICAgICAgICAgICB0b3A6IDFlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5jYXJkLWJvZHkge1xuICAgICAgICBwYWRkaW5nOiAzZW07XG4gICAgfVxufVxuXG4uYnRuLWRvd25sb2FkIHtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYm94LXNoYWRvdzogMHB4IDBweCAxMHB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNiZTE4MjI7XG4gICAgYm9yZGVyLWNvbG9yOiAjYmUxODIyO1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgICB3aWR0aDogMS41ZW07XG4gICAgaGVpZ2h0OiAxLjVlbTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xufSIsIi5qdW1ib3Ryb24ubWFpbiB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnL2Fzc2V0cy9pbWcvcmVwYWlyLW9yZGVycy5qcGcnKTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1pbi1oZWlnaHQ6IDE1dnc7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IHRvcCBjZW50ZXI7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQtcG9zaXRpb24teTogNjAlO1xufVxuLmlubmVyLWNvbnRhaW5lciB7XG4gIHBhZGRpbmctdG9wOiAzZW07XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmlubmVyLWNvbnRhaW5lcjpub3QoLmZ3KSB7XG4gICAgd2lkdGg6IDkwJTtcbiAgfVxufVxuLmNhcmQge1xuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IHVuc2V0O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDMwcHggMHB4IHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgbWFyZ2luLXRvcDogMTVweDtcbiAgbWFyZ2luLWJvdHRvbTogMTVweDtcbn1cbi5jYXJkIC5jYXJkLWhlYWRlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjhmYTtcbiAgYm9yZGVyOiBub25lO1xuICBwYWRkaW5nOiAxLjVlbTtcbn1cbi5jYXJkIC5jYXJkLWhlYWRlciBoNCB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGNvbG9yOiAjMDAwMDAwO1xuICBmb250LXdlaWdodDogYm9sZCAhaW1wb3J0YW50O1xuICBmb250LXNpemU6IDEyMCU7XG59XG4uY2FyZCAuY2FyZC1oZWFkZXIgLmhlYWRpY29uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMWVtO1xuICBoZWlnaHQ6IDNlbTtcbiAgdG9wOiAxZW07XG59XG4uY2FyZCAuY2FyZC1ib2R5IHtcbiAgcGFkZGluZzogM2VtO1xufVxuLmJ0bi1kb3dubG9hZCB7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAxMHB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYmUxODIyO1xuICBib3JkZXItY29sb3I6ICNiZTE4MjI7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgd2lkdGg6IDEuNWVtO1xuICBoZWlnaHQ6IDEuNWVtO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbn1cbiJdfQ== */\"","import { Component, OnInit } from '@angular/core';\nimport { REST_SERVER } from 'src/app/config';\nimport { ActivatedRoute } from '@angular/router';\nimport { UserService } from 'src/app/service/user.service';\n\n@Component({\n selector: 'app-repair-center-order-list',\n templateUrl: './repair-center-order-list.component.html',\n styleUrls: ['./repair-center-order-list.component.less']\n})\nexport class RepairCenterOrderListComponent implements OnInit {\n public loadingGrid:boolean = false;\n public totalCnt:number = 0;\n public title:string = '';\n public icon:string = '';\n public state:string;\n\n public selectionStatus = [\n { key: \"status_active\", val: \"Aktiv\" }, \n { key: \"status_inactive\", val: \"Inaktiv\" },\n ]\n\n filterDesc = {\n id: {\n type: \"string\",\n comp: \"orderId\",\n label: \"Auftragsnr.\",\n },\n rimCount: {\n type: \"string\",\n comp: \"eq\",\n label: \"Anz. Felgen\",\n },\n creditIdent: {\n type: \"string\",\n comp: \"like\",\n label: \"Abrechnung Nr.\",\n },\n state: {\n value: \"NONE\",\n comp: \"eq\",\n },\n }\n\n constructor(\n activatedRoute:ActivatedRoute,\n private _userService:UserService,\n ) { \n activatedRoute.params.subscribe(params => {\n this.state = params.state;\n let filterDesc = {...this.filterDesc};\n filterDesc.state = {...this.filterDesc.state};\n if(params.state === 'new') {\n filterDesc.state.value = \"NEW\";\n this.title = 'Aktuelle Aufträge';\n this.icon = 'incoming-repair-orders';\n } else if(params.state === 'progress') {\n filterDesc.state.value = \"REPAIR_IN_PROGRESS\";\n this.title = 'Aufträge in Bearbeitung';\n this.icon = 'repair-orders-in-progress';\n } else if(params.state === 'finished') {\n filterDesc.state.value = \"REPAIR_FINISHED\";\n this.title = 'Aufträge in Rücklieferung';\n this.icon = 'repair-orders-delivery';\n } else if(params.state === 'canceled') {\n filterDesc.state.value = \"CANCELED\";\n this.title = 'Stornierte Aufträge';\n this.icon = 'current-repair-orders';\n }\n this.filterDesc = filterDesc;\n });\n }\n\n ngOnInit() {\n }\n\n public getBaseUrl():string {\n let repairCenterId:number = this._userService.user.repairCenterId;\n return `${REST_SERVER}/repair-centers/${repairCenterId}/repair-orders`;\n }\n}\n","module.exports = \"
\\n
\\n
\\n

Bilder hochladen

\\n
\\n
\\n
\\n
\\n \\n
\\n
\\n Bitte fotografieren Sie die beschädigte Felge mit Hilfe der Felgenbox\\n
\\n
\\n Bitte fotografieren Sie die reparierten Felge mit Hilfe der Felgenbox\\n
\\n
\\n
\\n
\\n \\n
\\n
\\n
\\n \\n
\\n
\\n
\\n
\\n \\n \\n
\\n
\\n
\\n
\\n \\n \\n
\\n
\\n
\\n
\\n
\\n \"","module.exports = \".card {\\n border: none;\\n border-radius: unset;\\n box-shadow: 0px 0px 30px 0px rgba(0, 0, 0, 0.2);\\n margin-top: 15px;\\n margin-bottom: 15px;\\n}\\n.card .card-header {\\n position: relative;\\n background-color: #f8f8fa;\\n border: none;\\n padding: 1.5em;\\n}\\n.card .card-header h4 {\\n text-transform: uppercase;\\n text-align: left;\\n color: #000000;\\n font-weight: bold !important;\\n font-size: 120%;\\n}\\n.card .card-header .headicon {\\n position: absolute;\\n right: 1em;\\n height: 3em;\\n top: 1em;\\n}\\nfa.deleteButton {\\n color: white;\\n font-size: 150%;\\n cursor: pointer;\\n display: inline-block;\\n background-color: #be1822;\\n width: 1.5em;\\n height: 1.5em;\\n text-align: center;\\n position: absolute;\\n right: 0;\\n top: 0;\\n}\\n#uploadFile {\\n width: 0.1px;\\n height: 0.1px;\\n opacity: 0;\\n overflow: hidden;\\n z-index: -1;\\n position: absolute;\\n}\\n.placeholder {\\n position: absolute;\\n display: flex;\\n border: 1px solid black;\\n width: 100%;\\n height: 100%;\\n text-align: center;\\n /*padding-top: 25%;*/\\n top: 0;\\n left: 0;\\n /*cursor: pointer;*/\\n}\\n.btn-upload {\\n font-size: 200%;\\n border-radius: 0;\\n border: none;\\n box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.15);\\n background-color: #be1822;\\n border-color: #be1822;\\n color: white;\\n width: 2em;\\n height: 2em;\\n display: inline-block;\\n border-radius: 50%;\\n pointer-events: none;\\n padding: 0.25em;\\n}\\n.btn-upload fa {\\n position: relative;\\n top: 0.05em;\\n}\\n\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9hcHAtdWkvc3JjL2FwcC9jb21wb25lbnRzL3BhZ2VzL3JlcGFpci1jZW50ZXIvcmVwYWlyLW9yZGVyL3Byb2Nlc3MvaW1hZ2UtdXBsb2FkL3JlcGFpci1jZW50ZXItb3JkZXItcHJvY2Vzcy1pbWFnZS11cGxvYWQuY29tcG9uZW50Lmxlc3MiLCJzcmMvYXBwL2NvbXBvbmVudHMvcGFnZXMvcmVwYWlyLWNlbnRlci9yZXBhaXItb3JkZXIvcHJvY2Vzcy9pbWFnZS11cGxvYWQvcmVwYWlyLWNlbnRlci1vcmRlci1wcm9jZXNzLWltYWdlLXVwbG9hZC5jb21wb25lbnQubGVzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtFQUNJLFlBQUE7RUFDQSxvQkFBQTtFQUNBLCtDQUFBO0VBQ0EsZ0JBQUE7RUFDQSxtQkFBQTtBQ0NKO0FETkE7RUFRUSxrQkFBQTtFQUNBLHlCQUFBO0VBRUEsWUFBQTtFQUNBLGNBQUE7QUNBUjtBRFpBO0VBZVkseUJBQUE7RUFDQSxnQkFBQTtFQUNBLGNBQUE7RUFDQSw0QkFBQTtFQUNBLGVBQUE7QUNBWjtBRG5CQTtFQXVCWSxrQkFBQTtFQUNBLFVBQUE7RUFDQSxXQUFBO0VBQ0EsUUFBQTtBQ0RaO0FETUE7RUFDSSxZQUFBO0VBQ0EsZUFBQTtFQUNBLGVBQUE7RUFDQSxxQkFBQTtFQUNBLHlCQUFBO0VBQ0EsWUFBQTtFQUNBLGFBQUE7RUFDQSxrQkFBQTtFQUNBLGtCQUFBO0VBQ0EsUUFBQTtFQUNBLE1BQUE7QUNKSjtBRE9BO0VBQ0ksWUFBQTtFQUNBLGFBQUE7RUFDQSxVQUFBO0VBQ0EsZ0JBQUE7RUFDQSxXQUFBO0VBQ0Esa0JBQUE7QUNMSjtBRFFBO0VBQ0ksa0JBQUE7RUFDQSxhQUFBO0VBQ0EsdUJBQUE7RUFDQSxXQUFBO0VBQ0EsWUFBQTtFQUNBLGtCQUFBO0VDTkYsb0JBQW9CO0VEUWxCLE1BQUE7RUFDQSxPQUFBO0VDTkYsbUJBQW1CO0FBQ3JCO0FEU0E7RUFDSSxlQUFBO0VBRUEsZ0JBQUE7RUFDQSxZQUFBO0VBQ0EsZ0RBQUE7RUFDQSx5QkFBQTtFQUNBLHFCQUFBO0VBQ0EsWUFBQTtFQUNBLFVBQUE7RUFDQSxXQUFBO0VBQ0EscUJBQUE7RUFDQSxrQkFBQTtFQUNBLG9CQUFBO0VBQ0EsZUFBQTtBQ1JKO0FETkE7RUFpQlEsa0JBQUE7RUFDQSxXQUFBO0FDUlIiLCJmaWxlIjoic3JjL2FwcC9jb21wb25lbnRzL3BhZ2VzL3JlcGFpci1jZW50ZXIvcmVwYWlyLW9yZGVyL3Byb2Nlc3MvaW1hZ2UtdXBsb2FkL3JlcGFpci1jZW50ZXItb3JkZXItcHJvY2Vzcy1pbWFnZS11cGxvYWQuY29tcG9uZW50Lmxlc3MiLCJzb3VyY2VzQ29udGVudCI6WyIuY2FyZCB7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJvcmRlci1yYWRpdXM6IHVuc2V0O1xuICAgIGJveC1zaGFkb3c6IDBweCAwcHggMzBweCAwcHggcmdiYSgwLCAwLCAwLCAwLjIpOyAgICBcbiAgICBtYXJnaW4tdG9wOiAxNXB4O1xuICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG5cbiAgICAuY2FyZC1oZWFkZXIge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmOGY4ZmE7XG5cbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBwYWRkaW5nOiAxLjVlbTtcblxuICAgICAgICBoNCB7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgIGNvbG9yOiAjMDAwMDAwO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTIwJTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5oZWFkaWNvbiB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICByaWdodDogMWVtO1xuICAgICAgICAgICAgaGVpZ2h0OiAzZW07XG4gICAgICAgICAgICB0b3A6IDFlbTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuZmEuZGVsZXRlQnV0dG9uIHtcbiAgICBjb2xvcjogd2hpdGU7XG4gICAgZm9udC1zaXplOiAxNTAlO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2JlMTgyMjtcbiAgICB3aWR0aDogMS41ZW07XG4gICAgaGVpZ2h0OiAxLjVlbTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAwO1xuICAgIHRvcDogMDtcbn1cblxuI3VwbG9hZEZpbGUge1xuICAgIHdpZHRoOiAwLjFweDtcbiAgICBoZWlnaHQ6IDAuMXB4O1xuICAgIG9wYWNpdHk6IDA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB6LWluZGV4OiAtMTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG59XG5cbi5wbGFjZWhvbGRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYm9yZGVyOiAxcHggc29saWQgYmxhY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAvKnBhZGRpbmctdG9wOiAyNSU7Ki9cbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICAvKmN1cnNvcjogcG9pbnRlcjsqL1xufVxuXG4uYnRuLXVwbG9hZCB7XG4gICAgZm9udC1zaXplOiAyMDAlO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBib3gtc2hhZG93OiAwcHggMHB4IDEwcHggMHB4IHJnYmEoMCwgMCwgMCwgMC4xNSk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2JlMTgyMjtcbiAgICBib3JkZXItY29sb3I6ICNiZTE4MjI7XG4gICAgY29sb3I6IHdoaXRlO1xuICAgIHdpZHRoOiAyZW07XG4gICAgaGVpZ2h0OiAyZW07XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBwYWRkaW5nOiAwLjI1ZW07XG5cbiAgICBmYSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgdG9wOiAwLjA1ZW07XG4gICAgfVxufSIsIi5jYXJkIHtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItcmFkaXVzOiB1bnNldDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAzMHB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMik7XG4gIG1hcmdpbi10b3A6IDE1cHg7XG4gIG1hcmdpbi1ib3R0b206IDE1cHg7XG59XG4uY2FyZCAuY2FyZC1oZWFkZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmOGY4ZmE7XG4gIGJvcmRlcjogbm9uZTtcbiAgcGFkZGluZzogMS41ZW07XG59XG4uY2FyZCAuY2FyZC1oZWFkZXIgaDQge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBjb2xvcjogIzAwMDAwMDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQgIWltcG9ydGFudDtcbiAgZm9udC1zaXplOiAxMjAlO1xufVxuLmNhcmQgLmNhcmQtaGVhZGVyIC5oZWFkaWNvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDFlbTtcbiAgaGVpZ2h0OiAzZW07XG4gIHRvcDogMWVtO1xufVxuZmEuZGVsZXRlQnV0dG9uIHtcbiAgY29sb3I6IHdoaXRlO1xuICBmb250LXNpemU6IDE1MCU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYmUxODIyO1xuICB3aWR0aDogMS41ZW07XG4gIGhlaWdodDogMS41ZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgdG9wOiAwO1xufVxuI3VwbG9hZEZpbGUge1xuICB3aWR0aDogMC4xcHg7XG4gIGhlaWdodDogMC4xcHg7XG4gIG9wYWNpdHk6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHotaW5kZXg6IC0xO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG59XG4ucGxhY2Vob2xkZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGJvcmRlcjogMXB4IHNvbGlkIGJsYWNrO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIC8qcGFkZGluZy10b3A6IDI1JTsqL1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIC8qY3Vyc29yOiBwb2ludGVyOyovXG59XG4uYnRuLXVwbG9hZCB7XG4gIGZvbnQtc2l6ZTogMjAwJTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYm9yZGVyOiBub25lO1xuICBib3gtc2hhZG93OiAwcHggMHB4IDEwcHggMHB4IHJnYmEoMCwgMCwgMCwgMC4xNSk7XG4gIGJhY2tncm91bmQtY29sb3I6ICNiZTE4MjI7XG4gIGJvcmRlci1jb2xvcjogI2JlMTgyMjtcbiAgY29sb3I6IHdoaXRlO1xuICB3aWR0aDogMmVtO1xuICBoZWlnaHQ6IDJlbTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBwYWRkaW5nOiAwLjI1ZW07XG59XG4uYnRuLXVwbG9hZCBmYSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAwLjA1ZW07XG59XG4iXX0= */\"","import { Component, OnInit, Input, Output, EventEmitter } from '@angular/core';\nimport { Router, ActivatedRoute } from '@angular/router';\nimport { RepairOrderService } from 'src/app/service/repair-order.service';\nimport { RepairOrder } from 'src/app/model/repair-order.model';\nimport { BsModalService, BsModalRef } from 'ngx-bootstrap/modal';\nimport { MessageDialogComponent } from 'src/app/components/ui/dialogs/message-dialog/message-dialog.component';\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\nimport { UserService } from 'src/app/service/user.service';\nimport { REST_SERVER } from 'src/app/config';\n\n@Component({\n selector: 'app-repair-center-order-process-image-upload',\n templateUrl: './repair-center-order-process-image-upload.component.html',\n styleUrls: ['./repair-center-order-process-image-upload.component.less']\n})\nexport class RepairCenterOrderProcessImageUploadComponent implements OnInit {\n\n @Input() before:boolean = true;\n private _repairOrder:RepairOrder;\n imageNames:string[] = [];\n missingImageNames:string[] = [];\n hoverImage = {};\n private _updateImagesInterval = null;\n @Output() ready:EventEmitter = new EventEmitter();\n takingPhoto:boolean = false;\n\n constructor(\n private _repairOrderService:RepairOrderService,\n private _userService:UserService,\n private _http:HttpClient,\n ) { \n }\n\n ngOnInit() {\n this._updateImages();\n }\n\n ngOnDestroy() {\n clearInterval(this._updateImagesInterval);\n }\n\n async takePhoto() {\n this.takingPhoto = true;\n let server:string = REST_SERVER;\n if(server.startsWith('/')) {\n let url = location.href;\n let m = /(https?:\\/\\/.*?)\\//.exec(url);\n server = m[1] + server;;\n }\n let state = this.before ? 'before' : 'after';\n let uploadUrl = `${server}/repair-centers/${this._userService.user.repairCenterId}/repair-orders/${this._repairOrder.id}/images/${state}`;\n uploadUrl = encodeURIComponent(uploadUrl);\n\n await this._http.get(`https://localhost:8080/take-photo?uploadUrl=${uploadUrl}`).toPromise();\n this._updateImages();\n this.takingPhoto = false;\n }\n\n @Input()\n set repairOrder(repairOrder:RepairOrder) {\n this._repairOrder = repairOrder;\n this._updateImages();\n }\n\n get repairOrder():RepairOrder {\n return this._repairOrder;\n }\n\n private async _updateImages():Promise {\n if(this.repairOrder) {\n this.imageNames = await this._repairOrderService.getAbsoluteImageNamesForRepairCenter(\n this.repairOrder, this._userService.user.repairCenterId, this.before);\n //let reqImgCnt:number = this.repairOrder.rimCount;\n let reqImgCnt:number = 1;\n //let missingImgCnt:number = this.imageNames.length - reqImgCnt;\n this.missingImageNames = [];\n for(let i = this.imageNames.length + 1; i <= reqImgCnt; i++) {\n this.missingImageNames.push(`Felge ${i}`);\n }\n this.ready.emit(this.imageNames.length === reqImgCnt);\n }\n }\n \n handleFileSelect(evt):void {\n let files:File[] = evt.target.files; // FileList object\n if(files.length > 0) {\n let file:File = files[0];\n\n let type:string = file.type;\n \n if (!file.type.match('image.*')) {\n return;\n }\n\n var reader = new FileReader();\n \n // Closure to capture the file information.\n reader.onload = async (evt:any) => {\n let data:ArrayBuffer = evt.target.result;\n await this._repairOrderService.uploadImageForRepairCenter(\n this.repairOrder, type, data, this.before, this._userService.user.repairCenterId);\n await this._updateImages();\n };\n\n // Read in the image file as a data URL.\n reader.readAsArrayBuffer(file);\n }\n }\n\n public async deleteImage(filename:string):Promise {\n await this._repairOrderService.deleteImage(this.repairOrder, filename);\n await this._updateImages();\n }\n}\n","module.exports = \"
\\n
\\n \\n
\\n
\\n\\n
\\n
\\n
\\n
\\n
\\n
\\n \\n

Auftragsbearbeitung Nr. {{ repairOrder | orderId }}

\\n
\\n
\\n
\\n
= 0 ? 'active' : '']\\\" class=\\\"col-2\\\">Bilder
\\n
= 1 ? 'active' : '']\\\" class=\\\"col-2 text-truncate\\\">Referenz Nr.
\\n
= 2 ? 'active' : '']\\\" class=\\\"col-2\\\">Bearbeitung
\\n
= 3 ? 'active' : '']\\\" class=\\\"col-2\\\">Bilder
\\n
= 4 ? 'active' : '']\\\" class=\\\"col-2\\\">Rückversand
\\n
= 5 ? 'active' : '']\\\" class=\\\"col-2\\\">Abschluss
\\n
\\n\\n
\\n
\\n
\\n \\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n \\n \\n
\\n
\\n
\\n

Referenznummer verknüpfen

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

\\n Falls Sie die eine Anbindung ihrer Referenznummer an die Felgenhero Plattform wünschen, nutzen\\n Sie bitte im weiteren Verlauf der Aufbereitung die folgende Identifikationsnummer für die Felge.\\n (Zum Beispiel zum Eingravieren für die spätere Zuordnung)\\n

\\n\\n

{{this.repairOrderCode}}

\\n\\n

\\n Alternativ merken Sie sich bitte die Felgenhero Auftragsnummer um nach der Reperaur eine\\n Zuordnung zu ermöglichen\\n

\\n

{{this.felgenheroOrderCode}}

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

Auftragsstatus und Zusammenfassung

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

Auftrag:

\\n

{{this.repairOrderCode}}

\\n

Felgenhero-ID: {{this.felgenheroOrderCode}}

\\n\\n

Status: Wird Repariert

\\n
\\n\\n
\\n \\n
\\n
\\n Die Bearbeitung dieses Auftrags wurde am \\n {{ repairOrder.repairStartDate | date }}\\n gestartet.\\n
\\n
\\n
\\n
\\n
\\n \\n
\\n
\\n
\\n\\n
\\n
\\n Mitteilung des ServicePartners:\\n
\\n

{{repairOrder.servicePartnerMessage}}

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

Reperatur abgeschlossen?

\\n

Klicken Sie auf folgende Schaltfläche sobald die Felge fertig repariert ist und Sie den Rückversand einleiten möchten

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

Rückversand-Label

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

\\n Drucken Sie jetzt den Versandaufkleber für den Rückversand aus\\n

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

Auftragsabschluss

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

\\n Auftrag abgeschlossen\\n

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

Falls Aufbereitung nicht möglich

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

\\n Bitte geben Sie an, aus welchem Grund die Aufbereitung nicht möglich ist:\\n

\\n \\n \\n \\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\"","module.exports = \".jumbotron.main {\\n background-image: url('/assets/img/home-service-partner.jpg');\\n width: 100%;\\n min-height: 15vw;\\n background-position: top center;\\n border-radius: 0;\\n background-position-y: 60%;\\n}\\n.jumbotron.main .jumbotron-text {\\n margin-top: 7vw;\\n}\\n.jumbotron.main .jumbotron-text h1 {\\n text-transform: uppercase;\\n font-size: 200%;\\n color: #be1822;\\n}\\n@media (max-width: 767px) {\\n .jumbotron.main .jumbotron-text h1 {\\n font-size: 150%;\\n }\\n}\\n.block.bg {\\n background-color: #f8f8fa;\\n}\\n.block h2 {\\n text-transform: uppercase;\\n font-size: 150%;\\n color: #be1822;\\n}\\n@media (min-width: 768px) {\\n .inner-container {\\n /*width: 80%;*/\\n }\\n}\\n.card {\\n border: none;\\n border-radius: unset;\\n box-shadow: 0px 0px 30px 0px rgba(0, 0, 0, 0.2);\\n margin-top: 15px;\\n margin-bottom: 15px;\\n}\\n.card .card-header {\\n position: relative;\\n background-color: #f8f8fa;\\n border: none;\\n padding: 1.5em;\\n}\\n.card .card-header h4 {\\n text-transform: uppercase;\\n text-align: left;\\n color: #000000;\\n font-weight: bold !important;\\n font-size: 120%;\\n}\\n.card .card-header .headicon {\\n position: absolute;\\n right: 1em;\\n height: 3em;\\n top: 1em;\\n}\\n.card .card-body {\\n padding: 3em;\\n}\\n.progress {\\n margin: 20px auto 20px auto;\\n}\\n.progress .progress-bar {\\n background-color: #333;\\n}\\n.progressbar {\\n margin: auto;\\n font-size: 1.35vw;\\n color: #808080;\\n text-transform: uppercase;\\n}\\n.progressbar div {\\n text-align: center;\\n}\\n.progressbar div img {\\n width: 5em;\\n display: block;\\n margin-left: auto;\\n margin-right: auto;\\n opacity: 0.5;\\n}\\n.progressbar div.active {\\n color: black;\\n}\\n.progressbar div.active img {\\n opacity: 1;\\n}\\n.progressbar div.active:before,\\n.progressbar div.active:after,\\n.progressbar div.active .dot {\\n background: black;\\n}\\n.progressbar .col-2 {\\n padding: 0 5px 0 5px ;\\n}\\n.finishedText {\\n background-color: #efb4ba;\\n text-align: center;\\n font-weight: bold;\\n padding: 0.2em;\\n margin-top: 0.5em;\\n}\\n\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9hcHAtdWkvc3JjL2FwcC9jb21wb25lbnRzL3BhZ2VzL3JlcGFpci1jZW50ZXIvcmVwYWlyLW9yZGVyL3Byb2Nlc3MvcmVwYWlyLWNlbnRlci1vcmRlci1wcm9jZXNzLmNvbXBvbmVudC5sZXNzIiwic3JjL2FwcC9jb21wb25lbnRzL3BhZ2VzL3JlcGFpci1jZW50ZXIvcmVwYWlyLW9yZGVyL3Byb2Nlc3MvcmVwYWlyLWNlbnRlci1vcmRlci1wcm9jZXNzLmNvbXBvbmVudC5sZXNzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0VBQ0ksNkRBQUE7RUFDQSxXQUFBO0VBQ0EsZ0JBQUE7RUFDQSwrQkFBQTtFQUNBLGdCQUFBO0VBQ0EsMEJBQUE7QUNDSjtBRFBBO0VBU1EsZUFBQTtBQ0NSO0FEVkE7RUFZWSx5QkFBQTtFQUNBLGVBQUE7RUFDQSxjQUFBO0FDQ1o7QURDWTtFQUFBO0lBQ0ksZUFBQTtFQ0VkO0FBQ0Y7QURJQTtFQUNJLHlCQUFBO0FDRko7QURBQTtFQU1JLHlCQUFBO0VBQ0EsZUFBQTtFQUNBLGNBQUE7QUNISjtBRFFJO0VBQUE7SUNMQSxjQUFjO0VBQ2hCO0FBQ0Y7QURRQTtFQUNJLFlBQUE7RUFDQSxvQkFBQTtFQUNBLCtDQUFBO0VBQ0EsZ0JBQUE7RUFDQSxtQkFBQTtBQ05KO0FEQ0E7RUFRUSxrQkFBQTtFQUNBLHlCQUFBO0VBRUEsWUFBQTtFQUNBLGNBQUE7QUNQUjtBRExBO0VBZVkseUJBQUE7RUFDQSxnQkFBQTtFQUNBLGNBQUE7RUFDQSw0QkFBQTtFQUNBLGVBQUE7QUNQWjtBRFpBO0VBdUJZLGtCQUFBO0VBQ0EsVUFBQTtFQUNBLFdBQUE7RUFDQSxRQUFBO0FDUlo7QURsQkE7RUErQlEsWUFBQTtBQ1ZSO0FEY0E7RUFDSSwyQkFBQTtBQ1pKO0FEV0E7RUFJUSxzQkFBQTtBQ1pSO0FEZ0JBO0VBRUksWUFBQTtFQUNBLGlCQUFBO0VBQ0EsY0FBQTtFQUNBLHlCQUFBO0FDZko7QURVQTtFQWVRLGtCQUFBO0FDdEJSO0FET0E7RUFTWSxVQUFBO0VBQ0EsY0FBQTtFQUNBLGlCQUFBO0VBQ0Esa0JBQUE7RUFDQSxZQUFBO0FDYlo7QURpQlE7RUFDSSxZQUFBO0FDZlo7QURjUTtFQUdRLFVBQUE7QUNkaEI7QURnQlk7OztFQUNJLGlCQUFBO0FDWmhCO0FEWEE7RUE2QlEscUJBQUE7QUNmUjtBRG9CQTtFQUNJLHlCQUFBO0VBQ0Esa0JBQUE7RUFDQSxpQkFBQTtFQUNBLGNBQUE7RUFDQSxpQkFBQTtBQ2xCSiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvcGFnZXMvcmVwYWlyLWNlbnRlci9yZXBhaXItb3JkZXIvcHJvY2Vzcy9yZXBhaXItY2VudGVyLW9yZGVyLXByb2Nlc3MuY29tcG9uZW50Lmxlc3MiLCJzb3VyY2VzQ29udGVudCI6WyIuanVtYm90cm9uLm1haW4ge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnL2Fzc2V0cy9pbWcvaG9tZS1zZXJ2aWNlLXBhcnRuZXIuanBnJyk7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWluLWhlaWdodDogMTV2dztcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgY2VudGVyO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbi15OiA2MCU7XG4gICAgXG4gICAgLmp1bWJvdHJvbi10ZXh0IHtcbiAgICAgICAgbWFyZ2luLXRvcDogN3Z3O1xuICAgIFxuICAgICAgICBoMSB7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgZm9udC1zaXplOiAyMDAlO1xuICAgICAgICAgICAgY29sb3I6ICNiZTE4MjI7XG4gICAgXG4gICAgICAgICAgICBAbWVkaWEobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTUwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmJsb2NrIHtcbiYuYmcge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmOGY4ZmE7XG59XG5cbmgyIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGZvbnQtc2l6ZTogMTUwJTtcbiAgICBjb2xvcjogI2JlMTgyMjtcbn1cbn1cblxuLmlubmVyLWNvbnRhaW5lciB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgIC8qd2lkdGg6IDgwJTsqL1xuICAgIH1cbn1cblxuLmNhcmQge1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBib3JkZXItcmFkaXVzOiB1bnNldDtcbiAgICBib3gtc2hhZG93OiAwcHggMHB4IDMwcHggMHB4IHJnYmEoMCwgMCwgMCwgMC4yKTsgICAgXG4gICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuXG4gICAgLmNhcmQtaGVhZGVyIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOGZhO1xuXG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgcGFkZGluZzogMS41ZW07XG5cbiAgICAgICAgaDQge1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICBjb2xvcjogIzAwMDAwMDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBmb250LXNpemU6IDEyMCU7XG4gICAgICAgIH1cblxuICAgICAgICAuaGVhZGljb24ge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgcmlnaHQ6IDFlbTtcbiAgICAgICAgICAgIGhlaWdodDogM2VtO1xuICAgICAgICAgICAgdG9wOiAxZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuY2FyZC1ib2R5IHtcbiAgICAgICAgcGFkZGluZzogM2VtO1xuICAgIH1cbn1cblxuLnByb2dyZXNzIHtcbiAgICBtYXJnaW46IDIwcHggYXV0byAyMHB4IGF1dG87XG4gICAgXG4gICAgLnByb2dyZXNzLWJhciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IzMzMztcbiAgICB9XG59XG5cbi5wcm9ncmVzc2JhciB7XG5cbiAgICBtYXJnaW46IGF1dG87XG4gICAgZm9udC1zaXplOiAxLjM1dnc7XG4gICAgY29sb3I6IGxpZ2h0ZW4oYmxhY2ssIDUwJSk7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblxuICAgIGRpdntcbiAgICAgICAgaW1ne1xuICAgICAgICAgICAgd2lkdGg6IDVlbTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICAgICAgICBvcGFjaXR5OiAwLjU7XG4gICAgICAgIH1cbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgIGNvbG9yOiBibGFjaztcbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICY6YmVmb3JlLCAmOmFmdGVyLCAuZG90IHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBibGFjaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5jb2wtMiB7XG4gICAgICAgIHBhZGRpbmc6IDAgNXB4IDAgNXB4IDtcbiAgICB9XG4gICBcbn0gXG5cbi5maW5pc2hlZFRleHQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlZmI0YmE7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIHBhZGRpbmc6IDAuMmVtO1xuICAgIG1hcmdpbi10b3A6IDAuNWVtO1xufSIsIi5qdW1ib3Ryb24ubWFpbiB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnL2Fzc2V0cy9pbWcvaG9tZS1zZXJ2aWNlLXBhcnRuZXIuanBnJyk7XG4gIHdpZHRoOiAxMDAlO1xuICBtaW4taGVpZ2h0OiAxNXZ3O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgY2VudGVyO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IDYwJTtcbn1cbi5qdW1ib3Ryb24ubWFpbiAuanVtYm90cm9uLXRleHQge1xuICBtYXJnaW4tdG9wOiA3dnc7XG59XG4uanVtYm90cm9uLm1haW4gLmp1bWJvdHJvbi10ZXh0IGgxIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC1zaXplOiAyMDAlO1xuICBjb2xvcjogI2JlMTgyMjtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAuanVtYm90cm9uLm1haW4gLmp1bWJvdHJvbi10ZXh0IGgxIHtcbiAgICBmb250LXNpemU6IDE1MCU7XG4gIH1cbn1cbi5ibG9jay5iZyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmOGY4ZmE7XG59XG4uYmxvY2sgaDIge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LXNpemU6IDE1MCU7XG4gIGNvbG9yOiAjYmUxODIyO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5pbm5lci1jb250YWluZXIge1xuICAgIC8qd2lkdGg6IDgwJTsqL1xuICB9XG59XG4uY2FyZCB7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogdW5zZXQ7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMzBweCAwcHggcmdiYSgwLCAwLCAwLCAwLjIpO1xuICBtYXJnaW4tdG9wOiAxNXB4O1xuICBtYXJnaW4tYm90dG9tOiAxNXB4O1xufVxuLmNhcmQgLmNhcmQtaGVhZGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOGZhO1xuICBib3JkZXI6IG5vbmU7XG4gIHBhZGRpbmc6IDEuNWVtO1xufVxuLmNhcmQgLmNhcmQtaGVhZGVyIGg0IHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgY29sb3I6ICMwMDAwMDA7XG4gIGZvbnQtd2VpZ2h0OiBib2xkICFpbXBvcnRhbnQ7XG4gIGZvbnQtc2l6ZTogMTIwJTtcbn1cbi5jYXJkIC5jYXJkLWhlYWRlciAuaGVhZGljb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAxZW07XG4gIGhlaWdodDogM2VtO1xuICB0b3A6IDFlbTtcbn1cbi5jYXJkIC5jYXJkLWJvZHkge1xuICBwYWRkaW5nOiAzZW07XG59XG4ucHJvZ3Jlc3Mge1xuICBtYXJnaW46IDIwcHggYXV0byAyMHB4IGF1dG87XG59XG4ucHJvZ3Jlc3MgLnByb2dyZXNzLWJhciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzMzM7XG59XG4ucHJvZ3Jlc3NiYXIge1xuICBtYXJnaW46IGF1dG87XG4gIGZvbnQtc2l6ZTogMS4zNXZ3O1xuICBjb2xvcjogIzgwODA4MDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cbi5wcm9ncmVzc2JhciBkaXYge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4ucHJvZ3Jlc3NiYXIgZGl2IGltZyB7XG4gIHdpZHRoOiA1ZW07XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBvcGFjaXR5OiAwLjU7XG59XG4ucHJvZ3Jlc3NiYXIgZGl2LmFjdGl2ZSB7XG4gIGNvbG9yOiBibGFjaztcbn1cbi5wcm9ncmVzc2JhciBkaXYuYWN0aXZlIGltZyB7XG4gIG9wYWNpdHk6IDE7XG59XG4ucHJvZ3Jlc3NiYXIgZGl2LmFjdGl2ZTpiZWZvcmUsXG4ucHJvZ3Jlc3NiYXIgZGl2LmFjdGl2ZTphZnRlcixcbi5wcm9ncmVzc2JhciBkaXYuYWN0aXZlIC5kb3Qge1xuICBiYWNrZ3JvdW5kOiBibGFjaztcbn1cbi5wcm9ncmVzc2JhciAuY29sLTIge1xuICBwYWRkaW5nOiAwIDVweCAwIDVweCA7XG59XG4uZmluaXNoZWRUZXh0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VmYjRiYTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgcGFkZGluZzogMC4yZW07XG4gIG1hcmdpbi10b3A6IDAuNWVtO1xufVxuIl19 */\"","import { Component, OnInit } from '@angular/core';\nimport { Location } from '@angular/common';\nimport { Router, ActivatedRoute } from '@angular/router';\nimport { RepairOrderService } from 'src/app/service/repair-order.service';\nimport { RepairOrder } from 'src/app/model/repair-order.model';\nimport { BsModalService, BsModalRef } from 'ngx-bootstrap/modal';\nimport { MessageDialogComponent } from 'src/app/components/ui/dialogs/message-dialog/message-dialog.component';\nimport { HttpClient } from '@angular/common/http';\nimport { ConfirmDialogComponent } from 'src/app/components/ui/dialogs/confirm-dialog.component';\nimport { UserService } from 'src/app/service/user.service';\nimport { ViewerDialogComponent } from 'src/app/components/ui/dialogs/viewer-dialog.component';\nimport { PrintDialogRepairCenterComponent } from 'src/app/components/ui/dialogs/print-dialog-repair-center.component';\nimport { FeedbackService } from 'src/app/service/feedback.service';\nimport { RepairCenter } from 'src/app/model/repair-center.model';\nimport { RepairCenterService } from 'src/app/service/repair-center.service';\n\n@Component({\n selector: 'app-repair-center-order-process',\n templateUrl: './repair-center-order-process.component.html',\n styleUrls: ['./repair-center-order-process.component.less']\n})\nexport class RepairCenterOrderProcessComponent implements OnInit {\n\n orderId:number;\n repairOrder:RepairOrder;\n step:number = -1;\n notRepairable:boolean = false;\n notRepairableReason:string = null;\n imageNames:string[] = [];\n\n fakePrinting:boolean = false;\n repairOrderCreated:boolean = false;\n\n _tires:boolean = null;\n\n ready:boolean = true;\n\n repairOrderCode:string;\n felgenheroOrderCode:string;\n\n constructor(\n private _location:Location,\n activatedRoute:ActivatedRoute,\n private _repairOrderService:RepairOrderService,\n private _modalService: BsModalService,\n private _http:HttpClient,\n private _userService:UserService,\n private _feedbackService:FeedbackService,\n private _repairCenterService: RepairCenterService,\n ) { \n activatedRoute.params.subscribe((params) => {\n this.orderId = parseInt(params.id);\n this.loadCurrentOrder();\n });\n }\n\n ngOnInit() {\n\n }\n\n async loadCurrentOrder():Promise {\n try {\n this.repairOrder = await this._repairOrderService.loadForRepairCenter(\n this.orderId, this._userService.user.repairCenterId);\n } catch(exc) {\n console.error(exc);\n }\n\n //repairOrder not found\n if(!this.repairOrder) {\n let initialState = {\n title: \"Fehler\",\n msg: `Auftrag Nr. ${this.orderId} wurde nicht gefunden`,\n }\n let ref:BsModalRef = this._modalService.show(MessageDialogComponent, {initialState});\n ref.content.onClose.subscribe(result => {\n this._location.back();\n });\n return;\n }\n\n //repairOrder cancelled\n if(this.repairOrder.state === \"CANCELED\") {\n let initialState = {\n title: \"Fehler\",\n msg: `Auftrag Nr. ${this.orderId} wurde storniert. Falls Sie die Felgen zu diesem Auftrag trotzdem erhalten haben, wenden Sie sich bitte an unseren Support.`,\n }\n let ref:BsModalRef = this._modalService.show(MessageDialogComponent, {initialState});\n ref.content.onClose.subscribe(result => {\n this._location.back();\n });\n return;\n }\n\n this.step = 0;\n if(this.repairOrder.state === \"REPAIR_IN_PROGRESS\") {\n this.step = 2;\n } else if(this.repairOrder.state === \"REPAIR_FINISHED\") {\n this.step = 5;\n }\n\n this._updateImages();\n\n await this.generateFelgenheroCode()\n await this.generateRepcenterOrderCode();\n }\n\n private async _updateImages():Promise {\n if(this.repairOrder) {\n this.imageNames = await this._repairOrderService.getAbsoluteImageNamesForRepairCenter(\n this.repairOrder, this._userService.user.repairCenterId, true);\n }\n }\n\n private async recordWorkStart():Promise {\n this.repairOrder = await this._repairOrderService.recordWorkStart(\n this.repairOrder, this.tires, this._userService.user.repairCenterId);\n }\n\n private async recordWorkFinished(success:boolean, notRepairableReason:string):Promise {\n this.repairOrder = await this._repairOrderService.recordWorkFinished(\n this.repairOrder, success, notRepairableReason, this._userService.user.repairCenterId);\n }\n\n private async setNotRepairable():Promise {\n let initialState = {\n title: \"Bearbeitung beenden\",\n msg: `Wollen Sie diesen Auftrag wirklich als nicht reparierbar zurückgeben?`,\n }\n let ref:BsModalRef = this._modalService.show(ConfirmDialogComponent, {initialState});\n ref.content.onClose.subscribe(async result => {\n if(result) {\n this.notRepairable = true;\n if(this.step < 4) {\n this.ready = false;\n await this.recordWorkStart();\n //await this.recordWorkFinished(!this.notRepairable, this.notRepairableReason);\n this.step = 4;\n } else {\n this.nextStep();\n }\n }\n });\n }\n\n public async nextStep():Promise {\n if(this.step === 1) {\n await this.recordWorkStart();\n } else if(this.step === 4) {\n await this.recordWorkFinished(!this.notRepairable, this.notRepairableReason);\n }\n\n this.step++;\n\n if(this.step === 1) {\n this.ready = true;\n await this.generateFelgenheroCode()\n await this.generateRepcenterOrderCode();\n } else if(this.step === 2) {\n this._updateImages();\n await this.generateFelgenheroCode()\n await this.generateRepcenterOrderCode();\n } else if(this.step === 4) {\n this.ready = false;\n this.createShippingOrder(this.repairOrder.id);\n } \n }\n\n public getNextLabel():string {\n let result:string = 'Weiter';\n if(this.step === 0) {\n result = \"Zur Referenznummer\";\n } else if(this.step === 1) {\n result = 'Bearbeitung starten';\n } else if(this.step === 2) {\n result = 'Bearbeitung abschließen';\n } else if(this.step === 3) {\n result = 'Rückversand vorbereiten';\n } else if(this.step === 4) {\n result = 'Auftrag abschließen';\n }\n return result;\n }\n\n private _waitFakePrinting():Promise {\n return new Promise((resolve, reject) => {\n setTimeout(resolve, 5000);\n })\n }\n\n public async createShippingOrder(repairOrderId:number):Promise {\n try {\n await this._repairOrderService.createShippingOrderRepairCenter(repairOrderId);\n this.repairOrderCreated = true;\n } catch (error) {\n console.log(error);\n this._feedbackService.showError(\"Versand-Auftrag konnte nicht erstellt werden\");\n }\n }\n\n public async printLabel():Promise {\n \n let initialState = {\n title: \"Versandlabel\",\n msg: \"Bitte Label auf dem Paket anbringen\",\n path: await this.getShippingLabelHref(),\n }\n this._modalService.show(PrintDialogRepairCenterComponent, {initialState, class: 'modal-lg'});\n\n await this._waitFakePrinting();\n\n this.fakePrinting = false;\n this.ready = true;\n }\n\n async getShippingLabelHref():Promise {\n return await this._repairOrderService.getShippingLabelHrefRepairCenter(this.repairOrder.id);\n }\n \n set tires(tires:boolean) {\n this.ready = true;\n this._tires = tires;\n }\n\n get tires():boolean {\n return this._tires;\n }\n\n async generateFelgenheroCode(): Promise {\n //generate the order code for this repairCenter\n this.felgenheroOrderCode = 'A' + this.repairOrder.id.toString().padStart(6, '0');\n }\n\n async generateRepcenterOrderCode(): Promise {\n //this is a temporary sollution\n \n //load the repcenter abbreviation\n const repairCenterId : number = this._userService.user.repairCenterId;\n const repairCenter : RepairCenter = await this._repairCenterService.load(repairCenterId);\n\n //We use the REP prefix in case the repaircenter has no abbreviation set\n const repCenterCode : string = repairCenter.abbreviation ? repairCenter.abbreviation : 'REP';\n \n //generate the order code for this repairCenter\n let repCenterCodeTemp = repCenterCode + \"10\" + this.felgenheroOrderCode;\n console.log(repCenterCodeTemp);\n this.repairOrderCode = repCenterCodeTemp;\n }\n}\n","module.exports = \"
\\n
\\n\\n
\\n
\\n\\n
\\n
\\n
\\n
\\n

\\n Willkommen {{user.firstName}},\\n

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

Neuer Reparaturauftrag

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

Aufträge – Rechnungen

\\n
\\n
\\n
\\n
\\n \\n
\\n Aktuelle Aufträge
ansehen\\n \\n
\\n
\\n \\n
\\n Aufträge in
Bearbeitung aufrufen\\n \\n
\\n
\\n \\n
\\n Abgeschlossene
Aufträge aufrufen\\n \\n
\\n \\n
\\n
\\n
\\n
\\n\\n \\n\\n
\\n
\\n
\\n

Lieferadresse

\\n \\n
\\n
\\n
\\n
\\n {{servicePartner.deliveryAddress.name}}
\\n {{servicePartner.deliveryAddress.contactFirstName + \\\" \\\" + servicePartner.deliveryAddress.contactLastName}}
\\n {{servicePartner.deliveryAddress.street + \\\" \\\"}}\\n {{servicePartner.deliveryAddress.streetNr}}
\\n {{servicePartner.deliveryAddress.zipCode + \\\" \\\" + servicePartner.deliveryAddress.city}}
\\n
\\n E-Mail: {{servicePartner.deliveryAddress.contactEmail}}\\n \\n
\\n
\\n
\\n
\\n
\\n
\\n

Rechnungsadresse

\\n \\n
\\n
\\n
\\n
\\n {{servicePartner.invoiceAddress.name}}
\\n {{servicePartner.invoiceAddress.contactFirstName + \\\" \\\" + servicePartner.invoiceAddress.contactLastName}}
\\n {{servicePartner.invoiceAddress.street + \\\" \\\"}}\\n {{servicePartner.invoiceAddress.streetNr}}
\\n {{servicePartner.invoiceAddress.zipCode + \\\" \\\" + servicePartner.invoiceAddress.city}}
\\n
\\n
\\n \\n
\\n
\\n
\\n
\\n
\\n
\\n
\"","module.exports = \".jumbotron.main {\\n background-image: url('/api/cms/files/home-service-partner.jpg');\\n background-size: 100% auto;\\n width: 100%;\\n min-height: 15vw;\\n background-position: top center;\\n border-radius: 0;\\n background-position-y: 60%;\\n}\\n@media (min-width: 768px) {\\n .inner-container {\\n width: 80%;\\n }\\n}\\n.card:not(.cms) {\\n border: none;\\n border-radius: unset;\\n box-shadow: 0px 0px 30px 0px rgba(0, 0, 0, 0.2);\\n margin-top: 15px;\\n margin-bottom: 15px;\\n}\\n.card:not(.cms) .card-header {\\n position: relative;\\n background-color: #f8f8fa;\\n border: none;\\n padding: 1.5em;\\n}\\n.card:not(.cms) .card-header h4 {\\n text-transform: uppercase;\\n text-align: left;\\n color: #000000;\\n font-weight: bold !important;\\n font-size: 120%;\\n}\\n.card:not(.cms) .card-header .headicon {\\n position: absolute;\\n right: 1em;\\n height: 3em;\\n top: 1em;\\n}\\n#newRepairOrder .card-header {\\n background-color: #be1822;\\n}\\n#newRepairOrder .card-header h4 {\\n color: white;\\n}\\n.icon {\\n height: 3em;\\n}\\n#infoPdf a {\\n color: #be1822;\\n cursor: pointer;\\n}\\n#infoPdf a:hover {\\n text-decoration: underline;\\n}\\n\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9hcHAtdWkvc3JjL2FwcC9jb21wb25lbnRzL3BhZ2VzL3NlcnZpY2UtcGFydG5lci9kYXNoYm9hcmQvc2VydmljZS1wYXJ0bmVyLWRhc2hib2FyZC5jb21wb25lbnQubGVzcyIsInNyYy9hcHAvY29tcG9uZW50cy9wYWdlcy9zZXJ2aWNlLXBhcnRuZXIvZGFzaGJvYXJkL3NlcnZpY2UtcGFydG5lci1kYXNoYm9hcmQuY29tcG9uZW50Lmxlc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7RUFDSSxnRUFBQTtFQUNBLDBCQUFBO0VBQ0EsV0FBQTtFQUNBLGdCQUFBO0VBQ0EsK0JBQUE7RUFDQSxnQkFBQTtFQUNBLDBCQUFBO0FDQ0o7QURFQTtFQUNJO0lBQ0ksVUFBQTtFQ0FOO0FBQ0Y7QURHQTtFQUNJLFlBQUE7RUFDQSxvQkFBQTtFQUNBLCtDQUFBO0VBQ0EsZ0JBQUE7RUFDQSxtQkFBQTtBQ0RKO0FESUE7RUFDSSxrQkFBQTtFQUNBLHlCQUFBO0VBRUEsWUFBQTtFQUNBLGNBQUE7QUNISjtBRE1BO0VBQ0kseUJBQUE7RUFDQSxnQkFBQTtFQUNBLGNBQUE7RUFDQSw0QkFBQTtFQUNBLGVBQUE7QUNKSjtBRE9BO0VBQ0ksa0JBQUE7RUFDQSxVQUFBO0VBQ0EsV0FBQTtFQUNBLFFBQUE7QUNMSjtBRFFBO0VBQ0kseUJBQUE7QUNOSjtBRFNBO0VBQ0ksWUFBQTtBQ1BKO0FEVUE7RUFDSSxXQUFBO0FDUko7QURXQTtFQUVRLGNBQUE7RUFDQSxlQUFBO0FDVlI7QURPQTtFQVFRLDBCQUFBO0FDWlIiLCJmaWxlIjoic3JjL2FwcC9jb21wb25lbnRzL3BhZ2VzL3NlcnZpY2UtcGFydG5lci9kYXNoYm9hcmQvc2VydmljZS1wYXJ0bmVyLWRhc2hib2FyZC5jb21wb25lbnQubGVzcyIsInNvdXJjZXNDb250ZW50IjpbIi5qdW1ib3Ryb24ubWFpbiB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcvYXBpL2Ntcy9maWxlcy9ob21lLXNlcnZpY2UtcGFydG5lci5qcGcnKTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgYXV0bztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtaW4taGVpZ2h0OiAxNXZ3O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IHRvcCBjZW50ZXI7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IDYwJTtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLmlubmVyLWNvbnRhaW5lciB7XG4gICAgICAgIHdpZHRoOiA4MCU7XG4gICAgfVxufVxuXG4uY2FyZDpub3QoLmNtcykge1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBib3JkZXItcmFkaXVzOiB1bnNldDtcbiAgICBib3gtc2hhZG93OiAwcHggMHB4IDMwcHggMHB4IHJnYmEoMCwgMCwgMCwgMC4yKTsgICAgXG4gICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xufVxuXG4uY2FyZDpub3QoLmNtcykgLmNhcmQtaGVhZGVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjhmYTtcblxuICAgIGJvcmRlcjogbm9uZTtcbiAgICBwYWRkaW5nOiAxLjVlbTtcbn1cblxuLmNhcmQ6bm90KC5jbXMpIC5jYXJkLWhlYWRlciBoNCB7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIGNvbG9yOiAjMDAwMDAwO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkICFpbXBvcnRhbnQ7XG4gICAgZm9udC1zaXplOiAxMjAlO1xufVxuXG4uY2FyZDpub3QoLmNtcykgLmNhcmQtaGVhZGVyIC5oZWFkaWNvbiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAxZW07XG4gICAgaGVpZ2h0OiAzZW07XG4gICAgdG9wOiAxZW07XG59XG5cbiNuZXdSZXBhaXJPcmRlciAuY2FyZC1oZWFkZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNiZTE4MjI7XG59XG5cbiNuZXdSZXBhaXJPcmRlciAuY2FyZC1oZWFkZXIgaDQge1xuICAgIGNvbG9yOiB3aGl0ZTtcbn1cblxuLmljb24ge1xuICAgIGhlaWdodDogM2VtO1xufVxuXG4jaW5mb1BkZiB7XG4gICAgYSB7XG4gICAgICAgIGNvbG9yOiNiZTE4MjI7IFxuICAgICAgICBjdXJzb3I6cG9pbnRlcjtcbiAgICAgICAgXG4gICAgfVxuXG4gICAgYTpob3ZlciB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgIH1cbn0iLCIuanVtYm90cm9uLm1haW4ge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy9hcGkvY21zL2ZpbGVzL2hvbWUtc2VydmljZS1wYXJ0bmVyLmpwZycpO1xuICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgYXV0bztcbiAgd2lkdGg6IDEwMCU7XG4gIG1pbi1oZWlnaHQ6IDE1dnc7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IHRvcCBjZW50ZXI7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQtcG9zaXRpb24teTogNjAlO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5pbm5lci1jb250YWluZXIge1xuICAgIHdpZHRoOiA4MCU7XG4gIH1cbn1cbi5jYXJkOm5vdCguY21zKSB7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogdW5zZXQ7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMzBweCAwcHggcmdiYSgwLCAwLCAwLCAwLjIpO1xuICBtYXJnaW4tdG9wOiAxNXB4O1xuICBtYXJnaW4tYm90dG9tOiAxNXB4O1xufVxuLmNhcmQ6bm90KC5jbXMpIC5jYXJkLWhlYWRlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjhmYTtcbiAgYm9yZGVyOiBub25lO1xuICBwYWRkaW5nOiAxLjVlbTtcbn1cbi5jYXJkOm5vdCguY21zKSAuY2FyZC1oZWFkZXIgaDQge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBjb2xvcjogIzAwMDAwMDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQgIWltcG9ydGFudDtcbiAgZm9udC1zaXplOiAxMjAlO1xufVxuLmNhcmQ6bm90KC5jbXMpIC5jYXJkLWhlYWRlciAuaGVhZGljb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAxZW07XG4gIGhlaWdodDogM2VtO1xuICB0b3A6IDFlbTtcbn1cbiNuZXdSZXBhaXJPcmRlciAuY2FyZC1oZWFkZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYmUxODIyO1xufVxuI25ld1JlcGFpck9yZGVyIC5jYXJkLWhlYWRlciBoNCB7XG4gIGNvbG9yOiB3aGl0ZTtcbn1cbi5pY29uIHtcbiAgaGVpZ2h0OiAzZW07XG59XG4jaW5mb1BkZiBhIHtcbiAgY29sb3I6ICNiZTE4MjI7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbiNpbmZvUGRmIGE6aG92ZXIge1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cbiJdfQ== */\"","import { Component, OnInit } from '@angular/core';\nimport { ServicePartner } from 'src/app/model/service-partner.model';\nimport { UserService } from 'src/app/service/user.service';\nimport { ServicePartnerService } from 'src/app/service/service-partner.service';\n\n@Component({\n selector: 'app-service-partner-dashboard',\n templateUrl: './service-partner-dashboard.component.html',\n styleUrls: ['./service-partner-dashboard.component.less']\n\n})\nexport class ServicePartnerDashboardComponent implements OnInit {\n\n servicePartner: any;\n user: any;\n\n constructor(\n private _userService: UserService,\n private _servicePartnerService: ServicePartnerService\n ){}\n \n ngOnInit() {\n \n this.user = this._userService.user;\n this.loadServicePartner();\n }\n\n async loadServicePartner()\n { \n this.servicePartner = await this._servicePartnerService.load(this.user.servicePartnerId);\n }\n\n openInfoPdf(){\n window.open(\"assets/InfoblattFelgenaufbereitung2021-05.pdf\", '_blank');\n }\n\n}","module.exports = \"
\\n
\\n \\n
\\n
\\n\\n
\\n
\\n
\\n
\\n
\\n
\\n \\n

Rechnungen

\\n
\\n
\\n\\n \\n \\n #\\n Rechnungsdatum\\n Auftragsnummer\\n Summe\\n Status\\n \\n \\n {{ row.ident }}\\n {{ row.invoiceDate | date }}\\n {{ row.repairOrderId }}\\n {{ row.amountTotal | amount }}€\\n {{ ('INVOICE_STATE_' + row.state).toLowerCase() | translate }}\\n \\n \\n\\n
\\n
\\n
\\n
\\n
\\n
\"","module.exports = \".jumbotron.main {\\n background-image: url('/assets/img/invoices.jpg');\\n width: 100%;\\n min-height: 15vw;\\n background-position: top center;\\n border-radius: 0;\\n background-position-y: 60%;\\n}\\n.inner-container {\\n padding-top: 3em;\\n}\\n@media (min-width: 768px) {\\n .inner-container {\\n width: 80%;\\n }\\n}\\n.card {\\n border: none;\\n border-radius: unset;\\n box-shadow: 0px 0px 30px 0px rgba(0, 0, 0, 0.2);\\n margin-top: 15px;\\n margin-bottom: 15px;\\n}\\n.card .card-header {\\n position: relative;\\n background-color: #f8f8fa;\\n border: none;\\n padding: 1.5em;\\n}\\n.card .card-header h4 {\\n text-transform: uppercase;\\n text-align: left;\\n color: #000000;\\n font-weight: bold !important;\\n font-size: 120%;\\n}\\n.card .card-header .headicon {\\n position: absolute;\\n right: 1em;\\n height: 3em;\\n top: 1em;\\n}\\n.card .card-body {\\n padding: 3em;\\n}\\n\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9hcHAtdWkvc3JjL2FwcC9jb21wb25lbnRzL3BhZ2VzL3NlcnZpY2UtcGFydG5lci9pbnZvaWNlL2xpc3Qvc2VydmljZS1wYXJ0bmVyLWludm9pY2UtbGlzdC5jb21wb25lbnQubGVzcyIsInNyYy9hcHAvY29tcG9uZW50cy9wYWdlcy9zZXJ2aWNlLXBhcnRuZXIvaW52b2ljZS9saXN0L3NlcnZpY2UtcGFydG5lci1pbnZvaWNlLWxpc3QuY29tcG9uZW50Lmxlc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7RUFDSSxpREFBQTtFQUNBLFdBQUE7RUFDQSxnQkFBQTtFQUNBLCtCQUFBO0VBQ0EsZ0JBQUE7RUFDQSwwQkFBQTtBQ0NKO0FERUE7RUFDSSxnQkFBQTtBQ0FKO0FEQ0k7RUFBQTtJQUNJLFVBQUE7RUNFTjtBQUNGO0FEQ0E7RUFDSSxZQUFBO0VBQ0Esb0JBQUE7RUFDQSwrQ0FBQTtFQUNBLGdCQUFBO0VBQ0EsbUJBQUE7QUNDSjtBRE5BO0VBUVEsa0JBQUE7RUFDQSx5QkFBQTtFQUVBLFlBQUE7RUFDQSxjQUFBO0FDQVI7QURaQTtFQWVZLHlCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxjQUFBO0VBQ0EsNEJBQUE7RUFDQSxlQUFBO0FDQVo7QURuQkE7RUF1Qlksa0JBQUE7RUFDQSxVQUFBO0VBQ0EsV0FBQTtFQUNBLFFBQUE7QUNEWjtBRHpCQTtFQStCUSxZQUFBO0FDSFIiLCJmaWxlIjoic3JjL2FwcC9jb21wb25lbnRzL3BhZ2VzL3NlcnZpY2UtcGFydG5lci9pbnZvaWNlL2xpc3Qvc2VydmljZS1wYXJ0bmVyLWludm9pY2UtbGlzdC5jb21wb25lbnQubGVzcyIsInNvdXJjZXNDb250ZW50IjpbIi5qdW1ib3Ryb24ubWFpbiB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcvYXNzZXRzL2ltZy9pbnZvaWNlcy5qcGcnKTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtaW4taGVpZ2h0OiAxNXZ3O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IHRvcCBjZW50ZXI7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IDYwJTtcbn1cblxuLmlubmVyLWNvbnRhaW5lciB7XG4gICAgcGFkZGluZy10b3A6IDNlbTtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgd2lkdGg6IDgwJTtcbiAgICB9XG59XG5cbi5jYXJkIHtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYm9yZGVyLXJhZGl1czogdW5zZXQ7XG4gICAgYm94LXNoYWRvdzogMHB4IDBweCAzMHB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMik7ICAgIFxuICAgIG1hcmdpbi10b3A6IDE1cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMTVweDtcblxuICAgIC5jYXJkLWhlYWRlciB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjhmYTtcblxuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIHBhZGRpbmc6IDEuNWVtO1xuXG4gICAgICAgIGg0IHtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgY29sb3I6ICMwMDAwMDA7XG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxMjAlO1xuICAgICAgICB9XG5cbiAgICAgICAgLmhlYWRpY29uIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHJpZ2h0OiAxZW07XG4gICAgICAgICAgICBoZWlnaHQ6IDNlbTtcbiAgICAgICAgICAgIHRvcDogMWVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmNhcmQtYm9keSB7XG4gICAgICAgIHBhZGRpbmc6IDNlbTtcbiAgICB9XG59IiwiLmp1bWJvdHJvbi5tYWluIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcvYXNzZXRzL2ltZy9pbnZvaWNlcy5qcGcnKTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1pbi1oZWlnaHQ6IDE1dnc7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IHRvcCBjZW50ZXI7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQtcG9zaXRpb24teTogNjAlO1xufVxuLmlubmVyLWNvbnRhaW5lciB7XG4gIHBhZGRpbmctdG9wOiAzZW07XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmlubmVyLWNvbnRhaW5lciB7XG4gICAgd2lkdGg6IDgwJTtcbiAgfVxufVxuLmNhcmQge1xuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IHVuc2V0O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDMwcHggMHB4IHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgbWFyZ2luLXRvcDogMTVweDtcbiAgbWFyZ2luLWJvdHRvbTogMTVweDtcbn1cbi5jYXJkIC5jYXJkLWhlYWRlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjhmYTtcbiAgYm9yZGVyOiBub25lO1xuICBwYWRkaW5nOiAxLjVlbTtcbn1cbi5jYXJkIC5jYXJkLWhlYWRlciBoNCB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGNvbG9yOiAjMDAwMDAwO1xuICBmb250LXdlaWdodDogYm9sZCAhaW1wb3J0YW50O1xuICBmb250LXNpemU6IDEyMCU7XG59XG4uY2FyZCAuY2FyZC1oZWFkZXIgLmhlYWRpY29uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMWVtO1xuICBoZWlnaHQ6IDNlbTtcbiAgdG9wOiAxZW07XG59XG4uY2FyZCAuY2FyZC1ib2R5IHtcbiAgcGFkZGluZzogM2VtO1xufVxuIl19 */\"","import { Component, OnInit, ViewChild } from '@angular/core';\nimport { REST_SERVER } from 'src/app/config';\nimport { ActivatedRoute } from '@angular/router';\nimport { RepairOrder } from 'src/app/model/repair-order.model';\nimport { InvoiceService } from 'src/app/service/invoice.service';\nimport { GridComponent } from 'src/app/components/ui/grid/grid.component';\nimport { Invoice } from 'src/app/model/invoice.model';\nimport { UserService } from 'src/app/service/user.service';\n\nenum InvoiceAction {\n BOOK_PAYMENT,\n};\n\n@Component({\n selector: 'app-service-partner-invoice-list',\n templateUrl: './service-partner-invoice-list.component.html',\n styleUrls: ['./service-partner-invoice-list.component.less']\n})\nexport class ServicePartnerInvoiceListComponent implements OnInit {\n @ViewChild('grid') private _grid:GridComponent;\n\n public loadingGrid:boolean = false;\n public totalCnt:number = 0;\n public title:string = '';\n public state:string = '';\n\n public selectionStatus = [\n { key: \"status_active\", val: \"Aktiv\" }, \n { key: \"status_inactive\", val: \"Inaktiv\" },\n ]\n\n filterDesc = {\n ident: {\n type: \"string\",\n comp: \"like\",\n label: \"Re.-nr.\",\n },\n }\n\n constructor(\n activatedRoute:ActivatedRoute,\n private _invoiceService:InvoiceService,\n private _userService:UserService,\n ) { \n \n }\n\n ngOnInit() {\n }\n\n public getBaseUrl():string {\n let servicePartnerId:number = this._userService.user.servicePartnerId;\n return `${REST_SERVER}/service-partners/${servicePartnerId}/invoices`;\n }\n\n calcInvoiceDownloadHref(invoice:Invoice):string {\n let servicePartnerId = this._userService.user.servicePartnerId;\n let token:string = this._userService.token;\n return `${REST_SERVER}/service-partners/${servicePartnerId}/invoices/${invoice.ident}?access_token=${token}`;\n }\n}\n","module.exports = \"
\\n
\\n \\n
\\n
\\n\\n
\\n
\\n
\\n
\\n
\\n
\\n \\n

Neuer Reparaturauftrag

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

Anzahl beschädigter Felgen

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

Wichtiger Hinweis: Bitte legen Sie einen neuen Reparaturauftrag stets pro Fahrzeug an.

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

Aufbereitung der Felge

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

Bitte geben Sie eine Referenznummer für den Auftrag aus ihrem System ein. \\n Das kann z.B. eine Zuordnung zu einem Fahrzeug oder Kunden sein (KfZ-Kennzeichen, Kundennummer, interne\\n Auftragsnummer). Auf diese Weise können Sie bei der Rücksendung der Felgen feststellen, zu welchem\\n Fahrzeug sie gehören.

\\n
\\n \\n \\n
\\n \\n
\\n\\n
\\n
\\n \\n \\n
\\n
\\n \\n
\\n
\\n RAL-Farbauswahl\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n \\n
\\n \\n
\\n \\n
\\n
\\n \\n
\\n
\\n
\\n
\\n \\n \\n
\\n
\\n \\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n

Preise

\\n
\\n
\\n
\\n
\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
Gesamtpreis netto{{ priceData.priceTotalNet | amount }} €
MwSt{{ priceData.priceTotalVat | amount }} €
Gesamtpreis brutto{{ priceData.priceTotalGross | amount }} €
\\n
\\n
\\n
\\n
\\n
\\n \\n
\\n
\\n \\n \\n
\\n
\\n \\n
\\n \\n
\\n
\\n
\\n
\\n
\\n
\"","module.exports = \".jumbotron.main {\\n background-image: url('/assets/img/repair-orders.jpg');\\n width: 100%;\\n min-height: 15vw;\\n background-position: top center;\\n border-radius: 0;\\n background-position-y: 60%;\\n}\\n.inner-container {\\n padding-top: 3em;\\n}\\n@media (min-width: 768px) {\\n .inner-container:not(.fw) {\\n width: 90%;\\n }\\n}\\n.card {\\n border: none;\\n border-radius: unset;\\n box-shadow: 0px 0px 30px 0px rgba(0, 0, 0, 0.2);\\n margin-top: 15px;\\n margin-bottom: 15px;\\n}\\n.card .card-header {\\n position: relative;\\n background-color: #f8f8fa;\\n border: none;\\n padding: 1.5em;\\n}\\n.card .card-header h4 {\\n text-transform: uppercase;\\n text-align: left;\\n color: #000000;\\n font-weight: bold !important;\\n font-size: 120%;\\n}\\n.card .card-header .headicon {\\n position: absolute;\\n right: 1em;\\n height: 3em;\\n top: 1em;\\n}\\n.card .card-body {\\n padding: 3em;\\n}\\n.priceTable {\\n width: 100%;\\n}\\n.priceTable td {\\n padding-top: 0.3em;\\n padding-bottom: 0.3em;\\n}\\n.priceTable td:nth-child(2) {\\n text-align: right;\\n}\\n.legalBox {\\n box-shadow: 0px 0px 30px 0px rgba(0, 0, 0, 0.2);\\n padding: 1em;\\n height: 100%;\\n /*line-height: 2.5em;*/\\n padding-top: 3em;\\n}\\n.legalBox .checkbox {\\n position: relative;\\n margin-left: 1em;\\n padding: 0;\\n}\\n.legalBox .checkbox input[type=checkbox] {\\n display: none;\\n}\\n.legalBox .checkbox label {\\n padding-left: 22px;\\n cursor: pointer;\\n}\\n.legalBox .checkbox label::before {\\n content: \\\"\\\";\\n position: absolute;\\n display: inline-block;\\n height: 16px;\\n width: 16px;\\n box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.15);\\n top: 3px;\\n left: 0;\\n cursor: pointer;\\n}\\n.legalBox .checkbox label::after {\\n content: \\\"\\\";\\n position: absolute;\\n display: inline-block;\\n height: 6px;\\n width: 9px;\\n border-left: 2px solid;\\n border-bottom: 2px solid;\\n transform: rotate(-45deg);\\n left: 4px;\\n top: 7px;\\n cursor: pointer;\\n}\\n.legalBox .checkbox input[type=\\\"checkbox\\\"] + label::after {\\n content: none;\\n}\\n.legalBox .checkbox input[type=\\\"checkbox\\\"]:checked + label::after {\\n content: \\\"\\\";\\n}\\n#legalbox-container {\\n height: 100%;\\n}\\n#workInProgress-overlay {\\n position: absolute;\\n top: 0;\\n left: 0;\\n width: 100%;\\n height: 100%;\\n background-color: rgba(0, 0, 0, 0.2);\\n text-align: center;\\n line-height: 300px;\\n font-size: 3em;\\n color: #be1822;\\n font-weight: bold;\\n}\\n#input-refnum input {\\n border: #be1822 3px solid;\\n}\\n#input-refnum p {\\n font-size: smaller;\\n}\\n#card-rim-count-hint {\\n text-align: center;\\n padding: 1em 2em;\\n}\\n#ral-color-picker {\\n width: 70%;\\n padding-left: 10px;\\n cursor: pointer;\\n}\\n#ral-color-picker:hover {\\n background-color: #DDD;\\n}\\n\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9hcHAtdWkvc3JjL2FwcC9jb21wb25lbnRzL3BhZ2VzL3NlcnZpY2UtcGFydG5lci9vcmRlci9mb3JtL3NlcnZpY2UtcGFydG5lci1vcmRlci1mb3JtLmNvbXBvbmVudC5sZXNzIiwic3JjL2FwcC9jb21wb25lbnRzL3BhZ2VzL3NlcnZpY2UtcGFydG5lci9vcmRlci9mb3JtL3NlcnZpY2UtcGFydG5lci1vcmRlci1mb3JtLmNvbXBvbmVudC5sZXNzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0VBQ0ksc0RBQUE7RUFDQSxXQUFBO0VBQ0EsZ0JBQUE7RUFDQSwrQkFBQTtFQUNBLGdCQUFBO0VBQ0EsMEJBQUE7QUNDSjtBREVBO0VBQ0ksZ0JBQUE7QUNBSjtBREdRO0VBQUE7SUFDSSxVQUFBO0VDQVY7QUFDRjtBRElBO0VBQ0ksWUFBQTtFQUNBLG9CQUFBO0VBQ0EsK0NBQUE7RUFDQSxnQkFBQTtFQUNBLG1CQUFBO0FDRko7QURIQTtFQVFRLGtCQUFBO0VBQ0EseUJBQUE7RUFFQSxZQUFBO0VBQ0EsY0FBQTtBQ0hSO0FEVEE7RUFlWSx5QkFBQTtFQUNBLGdCQUFBO0VBQ0EsY0FBQTtFQUNBLDRCQUFBO0VBQ0EsZUFBQTtBQ0haO0FEaEJBO0VBdUJZLGtCQUFBO0VBQ0EsVUFBQTtFQUNBLFdBQUE7RUFDQSxRQUFBO0FDSlo7QUR0QkE7RUErQlEsWUFBQTtBQ05SO0FEVUE7RUFDSSxXQUFBO0FDUko7QURPQTtFQUlRLGtCQUFBO0VBQ0EscUJBQUE7QUNSUjtBRFVRO0VBQ0ksaUJBQUE7QUNSWjtBRGFBO0VBQ0ksK0NBQUE7RUFDQSxZQUFBO0VBRUEsWUFBQTtFQ1pGLHNCQUFzQjtFRGNwQixnQkFBQTtBQ1pKO0FETUE7RUFTUSxrQkFBQTtFQUNBLGdCQUFBO0VBQ0EsVUFBQTtBQ1pSO0FEQ0E7RUFjWSxhQUFBO0FDWlo7QURGQTtFQWtCWSxrQkFBQTtFQUNBLGVBQUE7QUNiWjtBRE5BO0VBdUJZLFdBQUE7RUFDQSxrQkFBQTtFQUNBLHFCQUFBO0VBQ0EsWUFBQTtFQUNBLFdBQUE7RUFDQSxnREFBQTtFQUNBLFFBQUE7RUFDQSxPQUFBO0VBQ0EsZUFBQTtBQ2RaO0FEakJBO0VBbUNZLFdBQUE7RUFDQSxrQkFBQTtFQUNBLHFCQUFBO0VBRUEsV0FBQTtFQUNBLFVBQUE7RUFDQSxzQkFBQTtFQUNBLHdCQUFBO0VBRUEseUJBQUE7RUFFQSxTQUFBO0VBQ0EsUUFBQTtFQUVBLGVBQUE7QUNuQlo7QUQ5QkE7RUFxRFksYUFBQTtBQ3BCWjtBRGpDQTtFQXlEWSxXQUFBO0FDckJaO0FEMEJBO0VBQ0ksWUFBQTtBQ3hCSjtBRDJCQTtFQUNJLGtCQUFBO0VBQ0EsTUFBQTtFQUNBLE9BQUE7RUFDQSxXQUFBO0VBQ0EsWUFBQTtFQUNBLG9DQUFBO0VBQ0Esa0JBQUE7RUFDQSxrQkFBQTtFQUNBLGNBQUE7RUFDQSxjQUFBO0VBQ0EsaUJBQUE7QUN6Qko7QUQ0QkE7RUFHUSx5QkFBQTtBQzVCUjtBRHlCQTtFQU9RLGtCQUFBO0FDN0JSO0FEaUNBO0VBQ0ksa0JBQUE7RUFDQSxnQkFBQTtBQy9CSjtBRG1DQTtFQUNJLFVBQUE7RUFDQSxrQkFBQTtFQUNBLGVBQUE7QUNqQ0o7QURvQ0E7RUFDSSxzQkFBQTtBQ2xDSiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvcGFnZXMvc2VydmljZS1wYXJ0bmVyL29yZGVyL2Zvcm0vc2VydmljZS1wYXJ0bmVyLW9yZGVyLWZvcm0uY29tcG9uZW50Lmxlc3MiLCJzb3VyY2VzQ29udGVudCI6WyIuanVtYm90cm9uLm1haW4ge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnL2Fzc2V0cy9pbWcvcmVwYWlyLW9yZGVycy5qcGcnKTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtaW4taGVpZ2h0OiAxNXZ3O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IHRvcCBjZW50ZXI7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IDYwJTtcbn1cblxuLmlubmVyLWNvbnRhaW5lciB7XG4gICAgcGFkZGluZy10b3A6IDNlbTtcblxuICAgICY6bm90KC5mdykge1xuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgICAgIHdpZHRoOiA5MCU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5jYXJkIHtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYm9yZGVyLXJhZGl1czogdW5zZXQ7XG4gICAgYm94LXNoYWRvdzogMHB4IDBweCAzMHB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMik7ICAgIFxuICAgIG1hcmdpbi10b3A6IDE1cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMTVweDtcblxuICAgIC5jYXJkLWhlYWRlciB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjhmYTtcblxuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIHBhZGRpbmc6IDEuNWVtO1xuXG4gICAgICAgIGg0IHtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgY29sb3I6ICMwMDAwMDA7XG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxMjAlO1xuICAgICAgICB9XG5cbiAgICAgICAgLmhlYWRpY29uIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHJpZ2h0OiAxZW07XG4gICAgICAgICAgICBoZWlnaHQ6IDNlbTtcbiAgICAgICAgICAgIHRvcDogMWVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmNhcmQtYm9keSB7XG4gICAgICAgIHBhZGRpbmc6IDNlbTtcbiAgICB9XG59XG5cbi5wcmljZVRhYmxlIHtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgIHRkIHsgXG4gICAgICAgIHBhZGRpbmctdG9wOiAwLjNlbTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDAuM2VtO1xuXG4gICAgICAgICY6bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ubGVnYWxCb3gge1xuICAgIGJveC1zaGFkb3c6IDBweCAwcHggMzBweCAwcHggcmdiYSgwLCAwLCAwLCAwLjIpO1xuICAgIHBhZGRpbmc6IDFlbTtcbiAgICAvL21hcmdpbi10b3A6IDFlbTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgLypsaW5lLWhlaWdodDogMi41ZW07Ki9cbiAgICBwYWRkaW5nLXRvcDogM2VtO1xuXG4gICAgLmNoZWNrYm94IHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBtYXJnaW4tbGVmdDogMWVtO1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgIGlucHV0W3R5cGU9Y2hlY2tib3hdIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDIycHg7XG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIH1cblxuICAgICAgICBsYWJlbDo6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBoZWlnaHQ6IDE2cHg7XG4gICAgICAgICAgICB3aWR0aDogMTZweDtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDBweCAwcHggMTBweCAwcHggcmdiYSgwLCAwLCAwLCAwLjE1KTtcbiAgICAgICAgICAgIHRvcDogM3B4O1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgfVxuXG4gICAgICAgIGxhYmVsOjphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBcbiAgICAgICAgICAgIGhlaWdodDogNnB4O1xuICAgICAgICAgICAgd2lkdGg6IDlweDtcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAycHggc29saWQ7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAycHggc29saWQ7XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG5cbiAgICAgICAgICAgIGxlZnQ6IDRweDtcbiAgICAgICAgICAgIHRvcDogN3B4O1xuXG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIH1cblxuICAgICAgICBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0gKyBsYWJlbDo6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogbm9uZTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOmNoZWNrZWQgKyBsYWJlbDo6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuI2xlZ2FsYm94LWNvbnRhaW5lciB7XG4gICAgaGVpZ2h0OiAxMDAlO1xufVxuXG4jd29ya0luUHJvZ3Jlc3Mtb3ZlcmxheSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMik7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGxpbmUtaGVpZ2h0OiAzMDBweDtcbiAgICBmb250LXNpemU6IDNlbTtcbiAgICBjb2xvcjogI2JlMTgyMjtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuI2lucHV0LXJlZm51bSB7XG4gICAgXG4gICAgaW5wdXQge1xuICAgICAgICBib3JkZXI6ICNiZTE4MjIgM3B4IHNvbGlkO1xuICAgIH1cblxuICAgIHAge1xuICAgICAgICBmb250LXNpemU6IHNtYWxsZXI7XG4gICAgfVxufVxuXG4jY2FyZC1yaW0tY291bnQtaGludCB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHBhZGRpbmc6IDFlbSAyZW07XG4gICAgXG59XG5cbiNyYWwtY29sb3ItcGlja2VyIHtcbiAgICB3aWR0aDogNzAlO1xuICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbiNyYWwtY29sb3ItcGlja2VyOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiNEREQ7XG59IiwiLmp1bWJvdHJvbi5tYWluIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcvYXNzZXRzL2ltZy9yZXBhaXItb3JkZXJzLmpwZycpO1xuICB3aWR0aDogMTAwJTtcbiAgbWluLWhlaWdodDogMTV2dztcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogdG9wIGNlbnRlcjtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbi15OiA2MCU7XG59XG4uaW5uZXItY29udGFpbmVyIHtcbiAgcGFkZGluZy10b3A6IDNlbTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuaW5uZXItY29udGFpbmVyOm5vdCguZncpIHtcbiAgICB3aWR0aDogOTAlO1xuICB9XG59XG4uY2FyZCB7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogdW5zZXQ7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMzBweCAwcHggcmdiYSgwLCAwLCAwLCAwLjIpO1xuICBtYXJnaW4tdG9wOiAxNXB4O1xuICBtYXJnaW4tYm90dG9tOiAxNXB4O1xufVxuLmNhcmQgLmNhcmQtaGVhZGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOGZhO1xuICBib3JkZXI6IG5vbmU7XG4gIHBhZGRpbmc6IDEuNWVtO1xufVxuLmNhcmQgLmNhcmQtaGVhZGVyIGg0IHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgY29sb3I6ICMwMDAwMDA7XG4gIGZvbnQtd2VpZ2h0OiBib2xkICFpbXBvcnRhbnQ7XG4gIGZvbnQtc2l6ZTogMTIwJTtcbn1cbi5jYXJkIC5jYXJkLWhlYWRlciAuaGVhZGljb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAxZW07XG4gIGhlaWdodDogM2VtO1xuICB0b3A6IDFlbTtcbn1cbi5jYXJkIC5jYXJkLWJvZHkge1xuICBwYWRkaW5nOiAzZW07XG59XG4ucHJpY2VUYWJsZSB7XG4gIHdpZHRoOiAxMDAlO1xufVxuLnByaWNlVGFibGUgdGQge1xuICBwYWRkaW5nLXRvcDogMC4zZW07XG4gIHBhZGRpbmctYm90dG9tOiAwLjNlbTtcbn1cbi5wcmljZVRhYmxlIHRkOm50aC1jaGlsZCgyKSB7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuLmxlZ2FsQm94IHtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAzMHB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMik7XG4gIHBhZGRpbmc6IDFlbTtcbiAgaGVpZ2h0OiAxMDAlO1xuICAvKmxpbmUtaGVpZ2h0OiAyLjVlbTsqL1xuICBwYWRkaW5nLXRvcDogM2VtO1xufVxuLmxlZ2FsQm94IC5jaGVja2JveCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLWxlZnQ6IDFlbTtcbiAgcGFkZGluZzogMDtcbn1cbi5sZWdhbEJveCAuY2hlY2tib3ggaW5wdXRbdHlwZT1jaGVja2JveF0ge1xuICBkaXNwbGF5OiBub25lO1xufVxuLmxlZ2FsQm94IC5jaGVja2JveCBsYWJlbCB7XG4gIHBhZGRpbmctbGVmdDogMjJweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuLmxlZ2FsQm94IC5jaGVja2JveCBsYWJlbDo6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGhlaWdodDogMTZweDtcbiAgd2lkdGg6IDE2cHg7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMTBweCAwcHggcmdiYSgwLCAwLCAwLCAwLjE1KTtcbiAgdG9wOiAzcHg7XG4gIGxlZnQ6IDA7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbi5sZWdhbEJveCAuY2hlY2tib3ggbGFiZWw6OmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGhlaWdodDogNnB4O1xuICB3aWR0aDogOXB4O1xuICBib3JkZXItbGVmdDogMnB4IHNvbGlkO1xuICBib3JkZXItYm90dG9tOiAycHggc29saWQ7XG4gIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gIGxlZnQ6IDRweDtcbiAgdG9wOiA3cHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbi5sZWdhbEJveCAuY2hlY2tib3ggaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdICsgbGFiZWw6OmFmdGVyIHtcbiAgY29udGVudDogbm9uZTtcbn1cbi5sZWdhbEJveCAuY2hlY2tib3ggaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOmNoZWNrZWQgKyBsYWJlbDo6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xufVxuI2xlZ2FsYm94LWNvbnRhaW5lciB7XG4gIGhlaWdodDogMTAwJTtcbn1cbiN3b3JrSW5Qcm9ncmVzcy1vdmVybGF5IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBsaW5lLWhlaWdodDogMzAwcHg7XG4gIGZvbnQtc2l6ZTogM2VtO1xuICBjb2xvcjogI2JlMTgyMjtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG4jaW5wdXQtcmVmbnVtIGlucHV0IHtcbiAgYm9yZGVyOiAjYmUxODIyIDNweCBzb2xpZDtcbn1cbiNpbnB1dC1yZWZudW0gcCB7XG4gIGZvbnQtc2l6ZTogc21hbGxlcjtcbn1cbiNjYXJkLXJpbS1jb3VudC1oaW50IHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nOiAxZW0gMmVtO1xufVxuI3JhbC1jb2xvci1waWNrZXIge1xuICB3aWR0aDogNzAlO1xuICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbiNyYWwtY29sb3ItcGlja2VyOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0RERDtcbn1cbiJdfQ== */\"","import { Component, OnInit, ViewEncapsulation } from '@angular/core';\nimport { RepairOrder } from 'src/app/model/repair-order.model';\nimport { RepairOrderService } from 'src/app/service/repair-order.service';\nimport { Router, ActivatedRoute } from '@angular/router';\nimport { SettingsService } from 'src/app/service/settings.service';\nimport { FeedbackService } from 'src/app/service/feedback.service';\nimport { BsModalService, BsModalRef } from 'ngx-bootstrap/modal';\nimport { RalColorPickerDialogComponent } from 'src/app/components/ui/dialogs/ral-color-picker-dialog.component';\n\n@Component({\n selector: 'app-service-partner-order-form',\n templateUrl: './service-partner-order-form.component.html',\n styleUrls: ['./service-partner-order-form.component.less'],\n encapsulation: ViewEncapsulation.None\n})\nexport class ServicePartnerOrderFormComponent implements OnInit {\n\n sendingOrder:boolean = false;\n orderModel:RepairOrder = new RepairOrder();\n private _settings:any;\n acceptBusinessTerms:boolean;\n acceptDataProtection:boolean;\n private _priceData = {\n pricePerRimNet: 0,\n priceTotalNet: 0,\n priceTotalVat: 0,\n priceTotalGross: 0,\n }\n previousOrder:any;\n\n tooltipsVarnish:string[] = [\n 'schön und zeitlos, immer noch am verbreitetsten',\n 'schwarze oder graue Farbtöne beispielsweise können je nach Hersteller sehr unterschiedlich sein. FelgenHero verwendet deshalb nur Originallacke! ',\n 'sehr hochwertig, der regenbogenartige Schimmer des Aluminiums wird durch das Glanzdrehen sichtbar',\n 'die High-End Klasse, hochwertiges individuelles Design und beste Qualität'\n ];\n\n constructor(\n private activatedRoute:ActivatedRoute,\n private _router:Router,\n private _repairOrderService:RepairOrderService,\n private _settingsService:SettingsService,\n private _feedbackService:FeedbackService,\n private _modalService:BsModalService\n ) { }\n\n async ngOnInit() {\n this._settings = await this._settingsService.getServicePartnerSettingsDict();\n\n const orderParam = this.activatedRoute.snapshot.paramMap.get('currentOrder');\n this.previousOrder = JSON.parse(orderParam);\n \n //user requested another rim with same parameters\n if(this.previousOrder != null) {\n this.orderModel.rimDiameter = this.previousOrder.rimDiameter;\n this.orderModel.rimVarnish = this.previousOrder.rimVarnish;\n this.orderModel.rimWithTires = this.previousOrder.rimWithTires;\n this.orderModel.servicePartnerReference = this.previousOrder.servicePartnerReference;\n this.acceptBusinessTerms = this.previousOrder.acceptBusinessTerms;\n this.acceptDataProtection = this.previousOrder.acceptDataProtection;\n }\n //set here to trigger the price calculation\n this.orderModel.rimDiameter = 17;\n }\n\n async onCreateOrder():Promise {\n this.sendingOrder = true;\n\n this.orderModel.rimWithTires = false;\n\n let repairOrders = [];\n let newRepairOrder;\n let ordersCreated = 0;\n\n while(ordersCreated < this.orderModel.rimCount)\n {\n try {\n newRepairOrder = await this._repairOrderService.createRepairOrder(this.orderModel);\n ordersCreated = repairOrders.push(newRepairOrder);\n } catch (error)\n {\n this._feedbackService.showError(error.error.message);\n this.resetForm();\n return;\n }\n }\n \n this.sendingOrder = false;\n\n let ordersJson = {};\n repairOrders.map((currentOrder, index) => {\n ordersJson[index] = {\n \"id\": currentOrder.id,\n \"rimDiameter\": this.orderModel.rimDiameter,\n \"rimVarnish\": this.orderModel.rimVarnish,\n \"rimWithTires\": this.orderModel.rimWithTires,\n \"servicePartnerReference\": this.orderModel.servicePartnerReference,\n \"acceptBusinessTerms\": this.acceptBusinessTerms,\n \"acceptDataProtection\": this.acceptDataProtection\n }\n })\n\n console.log(ordersJson);\n console.log(Object.keys(ordersJson).length);\n\n this._router.navigate(['service-partner', 'order', 'success', {currentOrder: JSON.stringify(ordersJson)}]);\n }\n\n resetForm() {\n this.sendingOrder = false;\n }\n\n get priceData() {\n let key = `price_${this.orderModel.rimVarnish}_${this.orderModel.rimDiameter}_b2b_net`;\n //console.log(\"Checking key: \", key, this.prices);\n if(this._settings && this._settings[key]) {\n let price = Math.round(parseFloat(this._settings[key].value.replace(',', '.')) * 100);\n let priceWithTires = 0;\n if(this.orderModel.rimWithTires) {\n priceWithTires = Math.round(parseFloat(this._settings['price_tires_b2b_net'].value.replace(',', '.')) * 100);\n }\n this._priceData.pricePerRimNet = (price + priceWithTires);\n this._priceData.priceTotalNet = (price + priceWithTires) * (this.orderModel.rimCount ? this.orderModel.rimCount : 1);\n this._priceData.priceTotalVat = Math.floor(this._priceData.priceTotalNet * 0.19);\n this._priceData.priceTotalGross = Math.floor(this._priceData.priceTotalNet * 1.19);\n //console.log(\"Price found: \", this.prices[key]);\n }\n return this._priceData;\n }\n\n showColorPicker()\n {\n let ref: BsModalRef = this._modalService.show(RalColorPickerDialogComponent, {class: 'modal-lg'});\n ref.content.event.subscribe((data) => this.orderModel.servicePartnerMessage = data.colorString);\n }\n}\n","module.exports = \"
\\n
\\n \\n
\\n
\\n\\n
\\n
\\n
\\n
\\n
\\n
\\n

Verpackungsleitfaden

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

\\n Um eine schnelle Aufbereitung und Retournierung\\n zu gewährleisten, halten Sie sich bitte an folgende Verpackungsrichtlinen:\\n

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


Verpackung im Felgenkarton

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

1.

\\n

\\n Legen Sie Ihre Felge in einen Felgenkarton\\n

\\n
\\n
\\n

2.

\\n

\\n Verschließen Sie den Felgenkarton mit Klebeband\\n

\\n
\\n
\\n

3.

\\n

\\n Kleben Sie das ausgedruckte Versand-Label auf den Felgenkarton\\n

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

Alles korrekt und sorgfältig verpackt?

\\n

1\\\" style=\\\"font-weight: bold; color: #be1822\\\">Wichtig: JEDE Felge muss einzeln verpackt und mit einem Versandlabel versehen werden.

\\n
\\n
\\n \\n
\\n
\\n
\\n
\\n
\\n
\"","module.exports = \".jumbotron.main {\\n background-image: url('/assets/img/repair-orders.jpg');\\n width: 100%;\\n min-height: 15vw;\\n background-position: top center;\\n border-radius: 0;\\n background-position-y: 60%;\\n}\\n.inner-container {\\n padding-top: 3em;\\n}\\n@media (min-width: 768px) {\\n .inner-container {\\n width: 80%;\\n }\\n}\\n.card {\\n border: none;\\n border-radius: unset;\\n box-shadow: 0px 0px 30px 0px rgba(0, 0, 0, 0.2);\\n margin-top: 15px;\\n margin-bottom: 15px;\\n}\\n.card .card-header {\\n position: relative;\\n background-color: #f8f8fa;\\n border: none;\\n padding: 1.5em;\\n}\\n.card .card-header h4 {\\n text-transform: uppercase;\\n text-align: left;\\n color: #000000;\\n font-weight: bold !important;\\n font-size: 120%;\\n}\\n.card .card-header .headicon {\\n position: absolute;\\n right: 1em;\\n height: 3em;\\n top: 1em;\\n}\\n.card .card-body {\\n padding: 3em;\\n}\\nhr {\\n margin-top: 2em;\\n margin-bottom: 2em;\\n border-top: 1.5px solid #be1824;\\n}\\n.barcode {\\n height: calc(2em + 2px + 0.75rem);\\n width: calc((2em + 2px + 0.75rem) * 1.4);\\n position: relative;\\n top: -1px;\\n box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.15);\\n}\\n\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9hcHAtdWkvc3JjL2FwcC9jb21wb25lbnRzL3BhZ2VzL3NlcnZpY2UtcGFydG5lci9vcmRlci9wYWNrYWdpbmcvc2VydmljZS1wYXJ0bmVyLW9yZGVyLXBhY2thZ2luZy5jb21wb25lbnQubGVzcyIsInNyYy9hcHAvY29tcG9uZW50cy9wYWdlcy9zZXJ2aWNlLXBhcnRuZXIvb3JkZXIvcGFja2FnaW5nL3NlcnZpY2UtcGFydG5lci1vcmRlci1wYWNrYWdpbmcuY29tcG9uZW50Lmxlc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7RUFDSSxzREFBQTtFQUNBLFdBQUE7RUFDQSxnQkFBQTtFQUNBLCtCQUFBO0VBQ0EsZ0JBQUE7RUFDQSwwQkFBQTtBQ0NKO0FERUE7RUFDSSxnQkFBQTtBQ0FKO0FERUk7RUFBQTtJQUNJLFVBQUE7RUNDTjtBQUNGO0FERUE7RUFDSSxZQUFBO0VBQ0Esb0JBQUE7RUFDQSwrQ0FBQTtFQUNBLGdCQUFBO0VBQ0EsbUJBQUE7QUNBSjtBRExBO0VBUVEsa0JBQUE7RUFDQSx5QkFBQTtFQUVBLFlBQUE7RUFDQSxjQUFBO0FDRFI7QURYQTtFQWVZLHlCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxjQUFBO0VBQ0EsNEJBQUE7RUFDQSxlQUFBO0FDRFo7QURsQkE7RUF1Qlksa0JBQUE7RUFDQSxVQUFBO0VBQ0EsV0FBQTtFQUNBLFFBQUE7QUNGWjtBRHhCQTtFQStCUSxZQUFBO0FDSlI7QURRQTtFQUNJLGVBQUE7RUFDQSxrQkFBQTtFQUNBLCtCQUFBO0FDTko7QURTQTtFQUNJLGlDQUFBO0VBQ0Esd0NBQUE7RUFDQSxrQkFBQTtFQUNBLFNBQUE7RUFDQSxnREFBQTtBQ1BKIiwiZmlsZSI6InNyYy9hcHAvY29tcG9uZW50cy9wYWdlcy9zZXJ2aWNlLXBhcnRuZXIvb3JkZXIvcGFja2FnaW5nL3NlcnZpY2UtcGFydG5lci1vcmRlci1wYWNrYWdpbmcuY29tcG9uZW50Lmxlc3MiLCJzb3VyY2VzQ29udGVudCI6WyIuanVtYm90cm9uLm1haW4ge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnL2Fzc2V0cy9pbWcvcmVwYWlyLW9yZGVycy5qcGcnKTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtaW4taGVpZ2h0OiAxNXZ3O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IHRvcCBjZW50ZXI7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IDYwJTtcbn1cblxuLmlubmVyLWNvbnRhaW5lciB7XG4gICAgcGFkZGluZy10b3A6IDNlbTtcblxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICB3aWR0aDogODAlO1xuICAgIH1cbn1cblxuLmNhcmQge1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBib3JkZXItcmFkaXVzOiB1bnNldDtcbiAgICBib3gtc2hhZG93OiAwcHggMHB4IDMwcHggMHB4IHJnYmEoMCwgMCwgMCwgMC4yKTsgICAgXG4gICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuXG4gICAgLmNhcmQtaGVhZGVyIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOGZhO1xuXG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgcGFkZGluZzogMS41ZW07XG5cbiAgICAgICAgaDQge1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICBjb2xvcjogIzAwMDAwMDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBmb250LXNpemU6IDEyMCU7XG4gICAgICAgIH1cblxuICAgICAgICAuaGVhZGljb24ge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgcmlnaHQ6IDFlbTtcbiAgICAgICAgICAgIGhlaWdodDogM2VtO1xuICAgICAgICAgICAgdG9wOiAxZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuY2FyZC1ib2R5IHtcbiAgICAgICAgcGFkZGluZzogM2VtO1xuICAgIH1cbn1cblxuaHIge1xuICAgIG1hcmdpbi10b3A6IDJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAyZW07XG4gICAgYm9yZGVyLXRvcDogMS41cHggc29saWQgI2JlMTgyNDtcbn1cblxuLmJhcmNvZGUge1xuICAgIGhlaWdodDogY2FsYygyZW0gKyAycHggKyAwLjc1cmVtKTtcbiAgICB3aWR0aDogY2FsYygoMmVtICsgMnB4ICsgMC43NXJlbSkgKiAxLjQpO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IC0xcHg7XG4gICAgYm94LXNoYWRvdzogMHB4IDBweCAxMHB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xufSIsIi5qdW1ib3Ryb24ubWFpbiB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnL2Fzc2V0cy9pbWcvcmVwYWlyLW9yZGVycy5qcGcnKTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1pbi1oZWlnaHQ6IDE1dnc7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IHRvcCBjZW50ZXI7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQtcG9zaXRpb24teTogNjAlO1xufVxuLmlubmVyLWNvbnRhaW5lciB7XG4gIHBhZGRpbmctdG9wOiAzZW07XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmlubmVyLWNvbnRhaW5lciB7XG4gICAgd2lkdGg6IDgwJTtcbiAgfVxufVxuLmNhcmQge1xuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IHVuc2V0O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDMwcHggMHB4IHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgbWFyZ2luLXRvcDogMTVweDtcbiAgbWFyZ2luLWJvdHRvbTogMTVweDtcbn1cbi5jYXJkIC5jYXJkLWhlYWRlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjhmYTtcbiAgYm9yZGVyOiBub25lO1xuICBwYWRkaW5nOiAxLjVlbTtcbn1cbi5jYXJkIC5jYXJkLWhlYWRlciBoNCB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGNvbG9yOiAjMDAwMDAwO1xuICBmb250LXdlaWdodDogYm9sZCAhaW1wb3J0YW50O1xuICBmb250LXNpemU6IDEyMCU7XG59XG4uY2FyZCAuY2FyZC1oZWFkZXIgLmhlYWRpY29uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMWVtO1xuICBoZWlnaHQ6IDNlbTtcbiAgdG9wOiAxZW07XG59XG4uY2FyZCAuY2FyZC1ib2R5IHtcbiAgcGFkZGluZzogM2VtO1xufVxuaHIge1xuICBtYXJnaW4tdG9wOiAyZW07XG4gIG1hcmdpbi1ib3R0b206IDJlbTtcbiAgYm9yZGVyLXRvcDogMS41cHggc29saWQgI2JlMTgyNDtcbn1cbi5iYXJjb2RlIHtcbiAgaGVpZ2h0OiBjYWxjKDJlbSArIDJweCArIDAuNzVyZW0pO1xuICB3aWR0aDogY2FsYygoMmVtICsgMnB4ICsgMC43NXJlbSkgKiAxLjQpO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogLTFweDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAxMHB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xufVxuIl19 */\"","import { Component, OnInit } from '@angular/core';\nimport { RepairOrder } from 'src/app/model/repair-order.model';\nimport { RepairOrderService } from 'src/app/service/repair-order.service';\nimport { ActivatedRoute, Router } from '@angular/router';\nimport { UserService } from 'src/app/service/user.service';\nimport { REST_SERVER } from 'src/app/config';\n\n@Component({\n selector: 'app-service-partner-order-packaging',\n templateUrl: './service-partner-order-packaging.component.html',\n styleUrls: ['./service-partner-order-packaging.component.less']\n})\nexport class ServicePartnerOrderPackagingComponent implements OnInit {\n\n sendingOrder:boolean = false;\n orderId:number = 0;\n currentOrders:any;\n\n constructor(\n private _router:Router,\n private activatedRoute: ActivatedRoute,\n ) { \n \n }\n\n ngOnInit() {\n const orderParam = this.activatedRoute.snapshot.paramMap.get('currentOrders');\n this.currentOrders = JSON.parse(orderParam);\n }\n\n goToPickup() {\n this._router.navigate(['service-partner', 'order', 'pickup', {currentOrders: JSON.stringify(this.currentOrders)}]);\n }\n\n\n}\n","module.exports = \"
\\n
\\n \\n
\\n
\\n\\n
\\n
\\n
\\n
\\n
\\n
\\n

Abholung

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

\\n
\\n Unser Logistikpartner ist auf dem Weg zu Ihnen!\\n

\\n
\\n
\\n \\n \\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n \\n
\\n
\\n
\\n
\\n neue Felge\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\"","module.exports = \".jumbotron.main {\\n background-image: url('/assets/img/repair-orders.jpg');\\n width: 100%;\\n min-height: 15vw;\\n background-position: top center;\\n border-radius: 0;\\n background-position-y: 60%;\\n}\\n.inner-container {\\n padding-top: 3em;\\n}\\n@media (min-width: 768px) {\\n .inner-container {\\n width: 80%;\\n }\\n}\\n.card {\\n border: none;\\n border-radius: unset;\\n box-shadow: 0px 0px 30px 0px rgba(0, 0, 0, 0.2);\\n margin-top: 15px;\\n margin-bottom: 15px;\\n}\\n.card .card-header {\\n position: relative;\\n background-color: #f8f8fa;\\n border: none;\\n padding: 1.5em;\\n}\\n.card .card-header h4 {\\n text-transform: uppercase;\\n text-align: left;\\n color: #000000;\\n font-weight: bold !important;\\n font-size: 120%;\\n}\\n.card .card-header .headicon {\\n position: absolute;\\n right: 1em;\\n height: 3em;\\n top: 1em;\\n}\\n.card .card-body {\\n padding: 3em;\\n}\\nhr {\\n margin-top: 2em;\\n margin-bottom: 2em;\\n border-top: 1.5px solid #be1824;\\n}\\n.barcode {\\n height: calc(2em + 2px + 0.75rem);\\n width: calc((2em + 2px + 0.75rem) * 1.4);\\n position: relative;\\n top: -1px;\\n box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.15);\\n}\\n\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9hcHAtdWkvc3JjL2FwcC9jb21wb25lbnRzL3BhZ2VzL3NlcnZpY2UtcGFydG5lci9vcmRlci9waWNrdXAvc2VydmljZS1wYXJ0bmVyLW9yZGVyLXBpY2t1cC5jb21wb25lbnQubGVzcyIsInNyYy9hcHAvY29tcG9uZW50cy9wYWdlcy9zZXJ2aWNlLXBhcnRuZXIvb3JkZXIvcGlja3VwL3NlcnZpY2UtcGFydG5lci1vcmRlci1waWNrdXAuY29tcG9uZW50Lmxlc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7RUFDSSxzREFBQTtFQUNBLFdBQUE7RUFDQSxnQkFBQTtFQUNBLCtCQUFBO0VBQ0EsZ0JBQUE7RUFDQSwwQkFBQTtBQ0NKO0FERUE7RUFDSSxnQkFBQTtBQ0FKO0FERUk7RUFBQTtJQUNJLFVBQUE7RUNDTjtBQUNGO0FERUE7RUFDSSxZQUFBO0VBQ0Esb0JBQUE7RUFDQSwrQ0FBQTtFQUNBLGdCQUFBO0VBQ0EsbUJBQUE7QUNBSjtBRExBO0VBUVEsa0JBQUE7RUFDQSx5QkFBQTtFQUVBLFlBQUE7RUFDQSxjQUFBO0FDRFI7QURYQTtFQWVZLHlCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxjQUFBO0VBQ0EsNEJBQUE7RUFDQSxlQUFBO0FDRFo7QURsQkE7RUF1Qlksa0JBQUE7RUFDQSxVQUFBO0VBQ0EsV0FBQTtFQUNBLFFBQUE7QUNGWjtBRHhCQTtFQStCUSxZQUFBO0FDSlI7QURRQTtFQUNJLGVBQUE7RUFDQSxrQkFBQTtFQUNBLCtCQUFBO0FDTko7QURTQTtFQUNJLGlDQUFBO0VBQ0Esd0NBQUE7RUFDQSxrQkFBQTtFQUNBLFNBQUE7RUFDQSxnREFBQTtBQ1BKIiwiZmlsZSI6InNyYy9hcHAvY29tcG9uZW50cy9wYWdlcy9zZXJ2aWNlLXBhcnRuZXIvb3JkZXIvcGlja3VwL3NlcnZpY2UtcGFydG5lci1vcmRlci1waWNrdXAuY29tcG9uZW50Lmxlc3MiLCJzb3VyY2VzQ29udGVudCI6WyIuanVtYm90cm9uLm1haW4ge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnL2Fzc2V0cy9pbWcvcmVwYWlyLW9yZGVycy5qcGcnKTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtaW4taGVpZ2h0OiAxNXZ3O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IHRvcCBjZW50ZXI7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IDYwJTtcbn1cblxuLmlubmVyLWNvbnRhaW5lciB7XG4gICAgcGFkZGluZy10b3A6IDNlbTtcblxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICB3aWR0aDogODAlO1xuICAgIH1cbn1cblxuLmNhcmQge1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBib3JkZXItcmFkaXVzOiB1bnNldDtcbiAgICBib3gtc2hhZG93OiAwcHggMHB4IDMwcHggMHB4IHJnYmEoMCwgMCwgMCwgMC4yKTsgICAgXG4gICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuXG4gICAgLmNhcmQtaGVhZGVyIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOGZhO1xuXG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgcGFkZGluZzogMS41ZW07XG5cbiAgICAgICAgaDQge1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICBjb2xvcjogIzAwMDAwMDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBmb250LXNpemU6IDEyMCU7XG4gICAgICAgIH1cblxuICAgICAgICAuaGVhZGljb24ge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgcmlnaHQ6IDFlbTtcbiAgICAgICAgICAgIGhlaWdodDogM2VtO1xuICAgICAgICAgICAgdG9wOiAxZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuY2FyZC1ib2R5IHtcbiAgICAgICAgcGFkZGluZzogM2VtO1xuICAgIH1cbn1cblxuaHIge1xuICAgIG1hcmdpbi10b3A6IDJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAyZW07XG4gICAgYm9yZGVyLXRvcDogMS41cHggc29saWQgI2JlMTgyNDtcbn1cblxuLmJhcmNvZGUge1xuICAgIGhlaWdodDogY2FsYygyZW0gKyAycHggKyAwLjc1cmVtKTtcbiAgICB3aWR0aDogY2FsYygoMmVtICsgMnB4ICsgMC43NXJlbSkgKiAxLjQpO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IC0xcHg7XG4gICAgYm94LXNoYWRvdzogMHB4IDBweCAxMHB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xufSIsIi5qdW1ib3Ryb24ubWFpbiB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnL2Fzc2V0cy9pbWcvcmVwYWlyLW9yZGVycy5qcGcnKTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1pbi1oZWlnaHQ6IDE1dnc7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IHRvcCBjZW50ZXI7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQtcG9zaXRpb24teTogNjAlO1xufVxuLmlubmVyLWNvbnRhaW5lciB7XG4gIHBhZGRpbmctdG9wOiAzZW07XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmlubmVyLWNvbnRhaW5lciB7XG4gICAgd2lkdGg6IDgwJTtcbiAgfVxufVxuLmNhcmQge1xuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IHVuc2V0O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDMwcHggMHB4IHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgbWFyZ2luLXRvcDogMTVweDtcbiAgbWFyZ2luLWJvdHRvbTogMTVweDtcbn1cbi5jYXJkIC5jYXJkLWhlYWRlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjhmYTtcbiAgYm9yZGVyOiBub25lO1xuICBwYWRkaW5nOiAxLjVlbTtcbn1cbi5jYXJkIC5jYXJkLWhlYWRlciBoNCB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGNvbG9yOiAjMDAwMDAwO1xuICBmb250LXdlaWdodDogYm9sZCAhaW1wb3J0YW50O1xuICBmb250LXNpemU6IDEyMCU7XG59XG4uY2FyZCAuY2FyZC1oZWFkZXIgLmhlYWRpY29uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMWVtO1xuICBoZWlnaHQ6IDNlbTtcbiAgdG9wOiAxZW07XG59XG4uY2FyZCAuY2FyZC1ib2R5IHtcbiAgcGFkZGluZzogM2VtO1xufVxuaHIge1xuICBtYXJnaW4tdG9wOiAyZW07XG4gIG1hcmdpbi1ib3R0b206IDJlbTtcbiAgYm9yZGVyLXRvcDogMS41cHggc29saWQgI2JlMTgyNDtcbn1cbi5iYXJjb2RlIHtcbiAgaGVpZ2h0OiBjYWxjKDJlbSArIDJweCArIDAuNzVyZW0pO1xuICB3aWR0aDogY2FsYygoMmVtICsgMnB4ICsgMC43NXJlbSkgKiAxLjQpO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogLTFweDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAxMHB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xufVxuIl19 */\"","import { Component, OnInit } from '@angular/core';\nimport { RepairOrder } from 'src/app/model/repair-order.model';\nimport { RepairOrderService } from 'src/app/service/repair-order.service';\nimport { ActivatedRoute, Router } from '@angular/router';\nimport { UserService } from 'src/app/service/user.service';\nimport { REST_SERVER } from 'src/app/config';\n\n@Component({\n selector: 'app-service-partner-order-pickup',\n templateUrl: './service-partner-order-pickup.component.html',\n styleUrls: ['./service-partner-order-pickup.component.less']\n})\nexport class ServicePartnerOrderPickupComponent implements OnInit {\n\n currentOrders:any;\n\n constructor(\n private activatedRoute:ActivatedRoute,\n private _router:Router,\n ) { }\n\n ngOnInit() {\n const orderParam = this.activatedRoute.snapshot.paramMap.get('currentOrders');\n this.currentOrders = JSON.parse(orderParam);\n }\n\n recordAnotherRim() {\n this._router.navigate(['service-partner', 'order', 'form', {currentOrder: JSON.stringify(this.currentOrders[0])}]);\n }\n\n}\n","module.exports = \"
\\n
\\n \\n
\\n
\\n\\n
\\n
\\n
\\n
\\n
\\n
\\n

Reparaturauftrag

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

Vielen Dank für Ihren Auftrag zur Felgeninstandsetzung via FelgenHero!

\\n \\n

\\n In Kürze erhalten Sie Ihre
\\n Auftragsbestätigung per E-Mail.\\n

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

Versand-Label Gedruckt?

\\n

\\n Haben Sie das Versand-Label\\n ausgedruckt? Falls nicht klicken Sie hier:\\n

\\n
\\n
\\n
\\n
\\n\\n
1\\\" class=\\\"row\\\">\\n
\\n

Versand-Label Gedruckt?

\\n

Wichtig: Bitte drucken Sie für JEDE Felge ein Label

\\n

\\n Haben Sie die Versand-Label\\n ausgedruckt? Falls nicht klicken Sie hier:\\n

\\n
\\n
\\n
\\n
\\n\\n \\n
\\n
\\n
\\n
\\n
\\n
\"","module.exports = \".jumbotron.main {\\n background-image: url('/assets/img/repair-orders.jpg');\\n width: 100%;\\n min-height: 15vw;\\n background-position: top center;\\n border-radius: 0;\\n background-position-y: 60%;\\n}\\n.inner-container {\\n padding-top: 3em;\\n}\\n@media (min-width: 768px) {\\n .inner-container {\\n width: 80%;\\n }\\n}\\n.card {\\n border: none;\\n border-radius: unset;\\n box-shadow: 0px 0px 30px 0px rgba(0, 0, 0, 0.2);\\n margin-top: 15px;\\n margin-bottom: 15px;\\n}\\n.card .card-header {\\n position: relative;\\n background-color: #f8f8fa;\\n border: none;\\n padding: 1.5em;\\n}\\n.card .card-header h4 {\\n text-transform: uppercase;\\n text-align: left;\\n color: #000000;\\n font-weight: bold !important;\\n font-size: 120%;\\n}\\n.card .card-header .headicon {\\n position: absolute;\\n right: 1em;\\n height: 3em;\\n top: 1em;\\n}\\n.card .card-body {\\n padding: 3em;\\n}\\nhr {\\n margin-top: 2em;\\n margin-bottom: 2em;\\n border-top: 1.5px solid #be1824;\\n}\\n.barcode {\\n height: calc(2em + 2px + 0.75rem);\\n width: calc((2em + 2px + 0.75rem) * 1.4);\\n position: relative;\\n top: -1px;\\n box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.15);\\n cursor: pointer;\\n}\\n\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9hcHAtdWkvc3JjL2FwcC9jb21wb25lbnRzL3BhZ2VzL3NlcnZpY2UtcGFydG5lci9vcmRlci9zdWNjZXNzL3NlcnZpY2UtcGFydG5lci1vcmRlci1zdWNjZXNzLmNvbXBvbmVudC5sZXNzIiwic3JjL2FwcC9jb21wb25lbnRzL3BhZ2VzL3NlcnZpY2UtcGFydG5lci9vcmRlci9zdWNjZXNzL3NlcnZpY2UtcGFydG5lci1vcmRlci1zdWNjZXNzLmNvbXBvbmVudC5sZXNzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0VBQ0ksc0RBQUE7RUFDQSxXQUFBO0VBQ0EsZ0JBQUE7RUFDQSwrQkFBQTtFQUNBLGdCQUFBO0VBQ0EsMEJBQUE7QUNDSjtBREVBO0VBQ0ksZ0JBQUE7QUNBSjtBREVJO0VBQUE7SUFDSSxVQUFBO0VDQ047QUFDRjtBREVBO0VBQ0ksWUFBQTtFQUNBLG9CQUFBO0VBQ0EsK0NBQUE7RUFDQSxnQkFBQTtFQUNBLG1CQUFBO0FDQUo7QURMQTtFQVFRLGtCQUFBO0VBQ0EseUJBQUE7RUFFQSxZQUFBO0VBQ0EsY0FBQTtBQ0RSO0FEWEE7RUFlWSx5QkFBQTtFQUNBLGdCQUFBO0VBQ0EsY0FBQTtFQUNBLDRCQUFBO0VBQ0EsZUFBQTtBQ0RaO0FEbEJBO0VBdUJZLGtCQUFBO0VBQ0EsVUFBQTtFQUNBLFdBQUE7RUFDQSxRQUFBO0FDRlo7QUR4QkE7RUErQlEsWUFBQTtBQ0pSO0FEUUE7RUFDSSxlQUFBO0VBQ0Esa0JBQUE7RUFDQSwrQkFBQTtBQ05KO0FEU0E7RUFDSSxpQ0FBQTtFQUNBLHdDQUFBO0VBQ0Esa0JBQUE7RUFDQSxTQUFBO0VBQ0EsZ0RBQUE7RUFDQSxlQUFBO0FDUEoiLCJmaWxlIjoic3JjL2FwcC9jb21wb25lbnRzL3BhZ2VzL3NlcnZpY2UtcGFydG5lci9vcmRlci9zdWNjZXNzL3NlcnZpY2UtcGFydG5lci1vcmRlci1zdWNjZXNzLmNvbXBvbmVudC5sZXNzIiwic291cmNlc0NvbnRlbnQiOlsiLmp1bWJvdHJvbi5tYWluIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy9hc3NldHMvaW1nL3JlcGFpci1vcmRlcnMuanBnJyk7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWluLWhlaWdodDogMTV2dztcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgY2VudGVyO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbi15OiA2MCU7XG59XG5cbi5pbm5lci1jb250YWluZXIge1xuICAgIHBhZGRpbmctdG9wOiAzZW07XG5cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgd2lkdGg6IDgwJTtcbiAgICB9XG59XG5cbi5jYXJkIHtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYm9yZGVyLXJhZGl1czogdW5zZXQ7XG4gICAgYm94LXNoYWRvdzogMHB4IDBweCAzMHB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMik7ICAgIFxuICAgIG1hcmdpbi10b3A6IDE1cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMTVweDtcblxuICAgIC5jYXJkLWhlYWRlciB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjhmYTtcblxuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIHBhZGRpbmc6IDEuNWVtO1xuXG4gICAgICAgIGg0IHtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgY29sb3I6ICMwMDAwMDA7XG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxMjAlO1xuICAgICAgICB9XG5cbiAgICAgICAgLmhlYWRpY29uIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHJpZ2h0OiAxZW07XG4gICAgICAgICAgICBoZWlnaHQ6IDNlbTtcbiAgICAgICAgICAgIHRvcDogMWVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmNhcmQtYm9keSB7XG4gICAgICAgIHBhZGRpbmc6IDNlbTtcbiAgICB9XG59XG5cbmhyIHtcbiAgICBtYXJnaW4tdG9wOiAyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMmVtO1xuICAgIGJvcmRlci10b3A6IDEuNXB4IHNvbGlkICNiZTE4MjQ7XG59XG5cbi5iYXJjb2RlIHtcbiAgICBoZWlnaHQ6IGNhbGMoMmVtICsgMnB4ICsgMC43NXJlbSk7XG4gICAgd2lkdGg6IGNhbGMoKDJlbSArIDJweCArIDAuNzVyZW0pICogMS40KTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAtMXB4O1xuICAgIGJveC1zaGFkb3c6IDBweCAwcHggMTBweCAwcHggcmdiYSgwLCAwLCAwLCAwLjE1KTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG59IiwiLmp1bWJvdHJvbi5tYWluIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcvYXNzZXRzL2ltZy9yZXBhaXItb3JkZXJzLmpwZycpO1xuICB3aWR0aDogMTAwJTtcbiAgbWluLWhlaWdodDogMTV2dztcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogdG9wIGNlbnRlcjtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbi15OiA2MCU7XG59XG4uaW5uZXItY29udGFpbmVyIHtcbiAgcGFkZGluZy10b3A6IDNlbTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuaW5uZXItY29udGFpbmVyIHtcbiAgICB3aWR0aDogODAlO1xuICB9XG59XG4uY2FyZCB7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogdW5zZXQ7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMzBweCAwcHggcmdiYSgwLCAwLCAwLCAwLjIpO1xuICBtYXJnaW4tdG9wOiAxNXB4O1xuICBtYXJnaW4tYm90dG9tOiAxNXB4O1xufVxuLmNhcmQgLmNhcmQtaGVhZGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOGZhO1xuICBib3JkZXI6IG5vbmU7XG4gIHBhZGRpbmc6IDEuNWVtO1xufVxuLmNhcmQgLmNhcmQtaGVhZGVyIGg0IHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgY29sb3I6ICMwMDAwMDA7XG4gIGZvbnQtd2VpZ2h0OiBib2xkICFpbXBvcnRhbnQ7XG4gIGZvbnQtc2l6ZTogMTIwJTtcbn1cbi5jYXJkIC5jYXJkLWhlYWRlciAuaGVhZGljb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAxZW07XG4gIGhlaWdodDogM2VtO1xuICB0b3A6IDFlbTtcbn1cbi5jYXJkIC5jYXJkLWJvZHkge1xuICBwYWRkaW5nOiAzZW07XG59XG5ociB7XG4gIG1hcmdpbi10b3A6IDJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMmVtO1xuICBib3JkZXItdG9wOiAxLjVweCBzb2xpZCAjYmUxODI0O1xufVxuLmJhcmNvZGUge1xuICBoZWlnaHQ6IGNhbGMoMmVtICsgMnB4ICsgMC43NXJlbSk7XG4gIHdpZHRoOiBjYWxjKCgyZW0gKyAycHggKyAwLjc1cmVtKSAqIDEuNCk7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAtMXB4O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDEwcHggMHB4IHJnYmEoMCwgMCwgMCwgMC4xNSk7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbiJdfQ== */\"","import { Component, OnInit } from '@angular/core';\nimport { RepairOrder } from 'src/app/model/repair-order.model';\nimport { RepairOrderService } from 'src/app/service/repair-order.service';\nimport { ActivatedRoute, Router } from '@angular/router';\nimport { UserService } from 'src/app/service/user.service';\nimport { REST_SERVER } from 'src/app/config';\nimport { BsModalService } from 'ngx-bootstrap/modal';\nimport { ViewerDialogComponent } from 'src/app/components/ui/dialogs/viewer-dialog.component';\nimport { PrintDialogRepairCenterComponent } from 'src/app/components/ui/dialogs/print-dialog-repair-center.component';\nimport { MultiLabelViewerComponent } from 'src/app/components/ui/dialogs/multi-label-viewer.component';\n\n@Component({\n selector: 'app-service-partner-order-success',\n templateUrl: './service-partner-order-success.component.html',\n styleUrls: ['./service-partner-order-success.component.less']\n})\nexport class ServicePartnerOrderSuccessComponent implements OnInit {\n\n sendingOrder:boolean = false;\n orderId:number = 0;\n currentOrder:any;\n orders:any = [];\n\n constructor(\n private activatedRoute:ActivatedRoute,\n private _repairOrderService:RepairOrderService,\n private _userService:UserService,\n private _modalService:BsModalService,\n private _router:Router,\n ) { }\n\n ngOnInit() {\n const orderParam = this.activatedRoute.snapshot.paramMap.get('currentOrder');\n \n this.orders = Object.values(JSON.parse(orderParam));\n\n this.decideShippingLabelWindow();\n }\n\n calcAinDownloadHref():string {\n let servicePartnerId = this._userService.user.servicePartnerId;\n let token:string = this._userService.token;\n\n this.orderId = this.currentOrder.id;\n return `${REST_SERVER}/service-partners/${servicePartnerId}/repair-orders/${this.orderId}/cover-letter?access_token=${token}`;\n }\n\n async getShippingLabelHref(order: any):Promise {\n \n return await this._repairOrderService.getShippingLabelHrefServicePartner(order.id);\n }\n\n async getAllShippingLabelHrefs(): Promise {\n \n let labelHrefs = [];\n\n for(let order of this.orders)\n {\n labelHrefs.push(await this.getShippingLabelHref(order));\n }\n\n return labelHrefs;\n }\n\n async openShippingLabel() {\n\n let initialState = {\n title: \"Versandlabel\",\n msg: \"Bitte Label auf dem Paket anbringen\",\n path: await this.getShippingLabelHref(this.orders[0]),\n }\n this._modalService.show(ViewerDialogComponent, {initialState, class: 'modal-lg'});\n }\n\n async openMultiShippingLabelView() {\n let initialState = {\n title: \"Versandlabel\",\n paths: await this.getAllShippingLabelHrefs(),\n }\n this._modalService.show(MultiLabelViewerComponent, {initialState, class: 'modal-lg'});\n }\n\n goToPackaging(){\n this._router.navigate(['service-partner', 'order', 'packaging', {currentOrders: JSON.stringify(this.orders)}]);\n }\n\n decideShippingLabelWindow()\n {\n if(this.orders.length > 1)\n {\n this.openMultiShippingLabelView();\n } else \n {\n this.openShippingLabel();\n }\n }\n\n} \n","module.exports = \"
\\n
\\n \\n
\\n
\\n\\n
\\n
\\n
\\n
\\n
\\n
\\n \\n

Auftragsdetails – Nr. {{ repairOrder | orderId }}

\\n
\\n
\\n
\\n
\\n \\n \\n {{ ('repair_order_' + row.key) | camelCase | translate }}\\n {{ ('' + (row.value === null ? '' : row.value)) | dateIf | translate }}\\n \\n \\n
\\n
\\n \\n
\\n
\\n
\\n
0\\\">\\n
\\n
\\n \\n

Bilder vor der Aufbereitung

\\n
\\n
\\n
\\n
\\n \\n
\\n
\\n
\\n
\\n
\\n
0\\\">\\n
\\n
\\n \\n

Bilder nach der Aufbereitung

\\n
\\n
\\n
\\n
\\n \\n
\\n
\\n
\\n
\\n
\\n
\\n
\"","module.exports = \".jumbotron.main {\\n background-image: url('/assets/img/repair-orders.jpg');\\n width: 100%;\\n min-height: 15vw;\\n background-position: top center;\\n border-radius: 0;\\n background-position-y: 60%;\\n}\\n.inner-container {\\n padding-top: 3em;\\n}\\n@media (min-width: 768px) {\\n .inner-container {\\n width: 60%;\\n }\\n}\\n.card {\\n border: none;\\n border-radius: unset;\\n box-shadow: 0px 0px 30px 0px rgba(0, 0, 0, 0.2);\\n margin-top: 15px;\\n margin-bottom: 15px;\\n}\\n.card .card-header {\\n position: relative;\\n background-color: #f8f8fa;\\n border: none;\\n padding: 1.5em;\\n}\\n.card .card-header h4 {\\n text-transform: uppercase;\\n text-align: left;\\n color: #000000;\\n font-weight: bold !important;\\n font-size: 120%;\\n}\\n.card .card-header .headicon {\\n position: absolute;\\n right: 1em;\\n height: 3em;\\n top: 1em;\\n}\\n.card .card-body {\\n padding: 3em;\\n}\\n\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9hcHAtdWkvc3JjL2FwcC9jb21wb25lbnRzL3BhZ2VzL3NlcnZpY2UtcGFydG5lci9yZXBhaXItb3JkZXIvZGV0YWlscy9zZXJ2aWNlLXBhcnRuZXItb3JkZXItZGV0YWlscy5jb21wb25lbnQubGVzcyIsInNyYy9hcHAvY29tcG9uZW50cy9wYWdlcy9zZXJ2aWNlLXBhcnRuZXIvcmVwYWlyLW9yZGVyL2RldGFpbHMvc2VydmljZS1wYXJ0bmVyLW9yZGVyLWRldGFpbHMuY29tcG9uZW50Lmxlc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7RUFDSSxzREFBQTtFQUNBLFdBQUE7RUFDQSxnQkFBQTtFQUNBLCtCQUFBO0VBQ0EsZ0JBQUE7RUFDQSwwQkFBQTtBQ0NKO0FERUE7RUFDSSxnQkFBQTtBQ0FKO0FEQ0k7RUFBQTtJQUNJLFVBQUE7RUNFTjtBQUNGO0FEQ0E7RUFDSSxZQUFBO0VBQ0Esb0JBQUE7RUFDQSwrQ0FBQTtFQUNBLGdCQUFBO0VBQ0EsbUJBQUE7QUNDSjtBRE5BO0VBUVEsa0JBQUE7RUFDQSx5QkFBQTtFQUVBLFlBQUE7RUFDQSxjQUFBO0FDQVI7QURaQTtFQWVZLHlCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxjQUFBO0VBQ0EsNEJBQUE7RUFDQSxlQUFBO0FDQVo7QURuQkE7RUF1Qlksa0JBQUE7RUFDQSxVQUFBO0VBQ0EsV0FBQTtFQUNBLFFBQUE7QUNEWjtBRHpCQTtFQStCUSxZQUFBO0FDSFIiLCJmaWxlIjoic3JjL2FwcC9jb21wb25lbnRzL3BhZ2VzL3NlcnZpY2UtcGFydG5lci9yZXBhaXItb3JkZXIvZGV0YWlscy9zZXJ2aWNlLXBhcnRuZXItb3JkZXItZGV0YWlscy5jb21wb25lbnQubGVzcyIsInNvdXJjZXNDb250ZW50IjpbIi5qdW1ib3Ryb24ubWFpbiB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcvYXNzZXRzL2ltZy9yZXBhaXItb3JkZXJzLmpwZycpO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1pbi1oZWlnaHQ6IDE1dnc7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogdG9wIGNlbnRlcjtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb24teTogNjAlO1xufVxuXG4uaW5uZXItY29udGFpbmVyIHtcbiAgICBwYWRkaW5nLXRvcDogM2VtO1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICB3aWR0aDogNjAlO1xuICAgIH1cbn1cblxuLmNhcmQge1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBib3JkZXItcmFkaXVzOiB1bnNldDtcbiAgICBib3gtc2hhZG93OiAwcHggMHB4IDMwcHggMHB4IHJnYmEoMCwgMCwgMCwgMC4yKTsgICAgXG4gICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuXG4gICAgLmNhcmQtaGVhZGVyIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOGZhO1xuXG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgcGFkZGluZzogMS41ZW07XG5cbiAgICAgICAgaDQge1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICBjb2xvcjogIzAwMDAwMDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBmb250LXNpemU6IDEyMCU7XG4gICAgICAgIH1cblxuICAgICAgICAuaGVhZGljb24ge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgcmlnaHQ6IDFlbTtcbiAgICAgICAgICAgIGhlaWdodDogM2VtO1xuICAgICAgICAgICAgdG9wOiAxZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuY2FyZC1ib2R5IHtcbiAgICAgICAgcGFkZGluZzogM2VtO1xuICAgIH1cbn0iLCIuanVtYm90cm9uLm1haW4ge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy9hc3NldHMvaW1nL3JlcGFpci1vcmRlcnMuanBnJyk7XG4gIHdpZHRoOiAxMDAlO1xuICBtaW4taGVpZ2h0OiAxNXZ3O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgY2VudGVyO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IDYwJTtcbn1cbi5pbm5lci1jb250YWluZXIge1xuICBwYWRkaW5nLXRvcDogM2VtO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5pbm5lci1jb250YWluZXIge1xuICAgIHdpZHRoOiA2MCU7XG4gIH1cbn1cbi5jYXJkIHtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItcmFkaXVzOiB1bnNldDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAzMHB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMik7XG4gIG1hcmdpbi10b3A6IDE1cHg7XG4gIG1hcmdpbi1ib3R0b206IDE1cHg7XG59XG4uY2FyZCAuY2FyZC1oZWFkZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmOGY4ZmE7XG4gIGJvcmRlcjogbm9uZTtcbiAgcGFkZGluZzogMS41ZW07XG59XG4uY2FyZCAuY2FyZC1oZWFkZXIgaDQge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBjb2xvcjogIzAwMDAwMDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQgIWltcG9ydGFudDtcbiAgZm9udC1zaXplOiAxMjAlO1xufVxuLmNhcmQgLmNhcmQtaGVhZGVyIC5oZWFkaWNvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDFlbTtcbiAgaGVpZ2h0OiAzZW07XG4gIHRvcDogMWVtO1xufVxuLmNhcmQgLmNhcmQtYm9keSB7XG4gIHBhZGRpbmc6IDNlbTtcbn1cbiJdfQ== */\"","import { Component, OnInit } from '@angular/core';\nimport { Router, ActivatedRoute } from '@angular/router';\nimport { Location } from '@angular/common';\nimport { Subscription } from 'rxjs/internal/Subscription';\nimport { ServicePartnerService } from 'src/app/service/service-partner.service';\nimport { REST_SERVER } from 'src/app/config';\nimport { RepairOrderService } from 'src/app/service/repair-order.service';\nimport { BsModalService, BsModalRef } from 'ngx-bootstrap/modal';\nimport { RepairOrder } from 'src/app/model/repair-order.model';\nimport { MessageDialogComponent } from 'src/app/components/ui/dialogs/message-dialog/message-dialog.component';\nimport { UserService } from 'src/app/service/user.service';\nimport { OrderIdPipe } from 'src/app/pipes/order-id.pipe';\n\n@Component({\n selector: 'app-service-partner-order-details',\n templateUrl: './service-partner-order-details.component.html',\n styleUrls: ['./service-partner-order-details.component.less']\n})\nexport class ServicePartnerOrderDetailsComponent implements OnInit {\n\n orderId:number;\n repairOrder:RepairOrder;\n repairOrderData = [];\n imageNamesBefore:string[] = [];\n imageNamesAfter:string[] = [];\n\n currentOrdersFilterJson:string = null;\n\n public servicePartner = null;\n\n constructor(\n activatedRoute:ActivatedRoute,\n private _location:Location,\n private _repairOrderService:RepairOrderService,\n private _modalService: BsModalService,\n private _userService:UserService,\n ) { \n activatedRoute.params.subscribe((params) => {\n this.orderId = parseInt(params.id);\n this.loadCurrentOrder();\n });\n }\n\n async loadCurrentOrder():Promise {\n let servicePartnerId:number = this._userService.user.servicePartnerId;\n this.repairOrder = await this._repairOrderService.loadForServicePartner(servicePartnerId, this.orderId);\n if(!this.repairOrder) {\n let initialState = {\n title: \"Fehler\",\n msg: `Auftrag Nr. ${this.orderId} wurde nicht gefunden`,\n }\n let ref:BsModalRef = this._modalService.show(MessageDialogComponent, {initialState});\n ref.content.onClose.subscribe(result => {\n this._location.back();\n });\n }\n\n let repairOrderData = [];\n let repairOrder:any = {...this.repairOrder};\n //delete repairOrder.servicePartnerReference;\n //delete repairOrder.servicePartnerMessage;\n delete repairOrder.servicePartner;\n delete repairOrder.servicePartnerId;\n delete repairOrder.invoiceIdent;\n delete repairOrder.repairCenterId;\n delete repairOrder.rimDiameter;\n delete repairOrder.rimWithTires;\n let orderIdPipe:OrderIdPipe = new OrderIdPipe();\n repairOrder.id = orderIdPipe.transform(repairOrder);\n repairOrder.state = 'repair_state_' + repairOrder.state.toLowerCase();\n repairOrder.rimVarnish = 'rim_varnish_' + repairOrder.rimVarnish.toLowerCase();\n //repairOrder.rimWithTires = 'rim_with_tires_' + repairOrder.rimWithTires;\n if(repairOrder.repairResult) {\n repairOrder.repairResult = 'repair_result_' + repairOrder.repairResult.toLowerCase();\n }\n for(let key in repairOrder) {\n let item = { key, value: repairOrder[key] };\n repairOrderData.push(item);\n }\n this.repairOrderData = repairOrderData;\n\n this._updateImages();\n }\n\n private async _updateImages():Promise {\n if(this.repairOrder) {\n this.imageNamesBefore = await this._repairOrderService.getAbsoluteImageNamesForServicePartner(\n this.repairOrder, this._userService.user.servicePartnerId, true);\n this.imageNamesAfter = await this._repairOrderService.getAbsoluteImageNamesForServicePartner(\n this.repairOrder, this._userService.user.servicePartnerId, false);\n }\n }\n\n ngOnInit() {\n }\n\n getBaseUrlOrders():string {\n return REST_SERVER + \"/repair-orders\";\n }\n\n goBack() {\n this._location.back();\n }\n}\n","module.exports = \"
\\n
\\n \\n
\\n
\\n\\n
\\n
\\n
\\n
\\n
\\n
\\n \\n

{{ title }}

\\n
\\n
\\n\\n \\n \\n #\\n Auftragsdatum\\n Anzahl Felgen\\n Referenznr.\\n Felgenart\\n Status\\n Label
Download
\\n Rechnung
Download
\\n
\\n \\n {{ row | orderId }}\\n {{ row.orderDate | date }}\\n {{ row.rimCount }}\\n {{ row.servicePartnerReference }}\\n {{ ('rim_varnish_' + row.rimVarnish) | translate }}\\n {{ ('REPAIR_STATE_' + row.state).toLowerCase() | translate }}\\n \\n \\n \\n \\n \\n \\n \\n
\\n\\n
\\n
\\n
\\n
\\n
\\n
\"","module.exports = \".jumbotron.main {\\n background-image: url('/assets/img/repair-orders.jpg');\\n width: 100%;\\n min-height: 15vw;\\n background-position: top center;\\n border-radius: 0;\\n background-position-y: 60%;\\n}\\n.inner-container {\\n padding-top: 3em;\\n}\\n@media (min-width: 768px) {\\n .inner-container:not(.fw) {\\n width: 90%;\\n }\\n}\\n.card {\\n border: none;\\n border-radius: unset;\\n box-shadow: 0px 0px 30px 0px rgba(0, 0, 0, 0.2);\\n margin-top: 15px;\\n margin-bottom: 15px;\\n}\\n.card .card-header {\\n position: relative;\\n background-color: #f8f8fa;\\n border: none;\\n padding: 1.5em;\\n}\\n.card .card-header h4 {\\n text-transform: uppercase;\\n text-align: left;\\n color: #000000;\\n font-weight: bold !important;\\n font-size: 120%;\\n}\\n.card .card-header .headicon {\\n position: absolute;\\n right: 1em;\\n height: 3em;\\n top: 1em;\\n}\\n.card .card-body {\\n padding: 3em;\\n}\\n.btn-download {\\n border-radius: 0;\\n border: none;\\n box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.15);\\n background-color: #be1822;\\n border-color: #be1822;\\n color: white !important;\\n width: 1.5em;\\n height: 1.5em;\\n display: inline-block;\\n border-radius: 50%;\\n cursor: pointer;\\n}\\n\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9hcHAtdWkvc3JjL2FwcC9jb21wb25lbnRzL3BhZ2VzL3NlcnZpY2UtcGFydG5lci9yZXBhaXItb3JkZXIvbGlzdC9zZXJ2aWNlLXBhcnRuZXItb3JkZXItbGlzdC5jb21wb25lbnQubGVzcyIsInNyYy9hcHAvY29tcG9uZW50cy9wYWdlcy9zZXJ2aWNlLXBhcnRuZXIvcmVwYWlyLW9yZGVyL2xpc3Qvc2VydmljZS1wYXJ0bmVyLW9yZGVyLWxpc3QuY29tcG9uZW50Lmxlc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7RUFDSSxzREFBQTtFQUNBLFdBQUE7RUFDQSxnQkFBQTtFQUNBLCtCQUFBO0VBQ0EsZ0JBQUE7RUFDQSwwQkFBQTtBQ0NKO0FERUE7RUFDSSxnQkFBQTtBQ0FKO0FER1E7RUFBQTtJQUNJLFVBQUE7RUNBVjtBQUNGO0FESUE7RUFDSSxZQUFBO0VBQ0Esb0JBQUE7RUFDQSwrQ0FBQTtFQUNBLGdCQUFBO0VBQ0EsbUJBQUE7QUNGSjtBREhBO0VBUVEsa0JBQUE7RUFDQSx5QkFBQTtFQUVBLFlBQUE7RUFDQSxjQUFBO0FDSFI7QURUQTtFQWVZLHlCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxjQUFBO0VBQ0EsNEJBQUE7RUFDQSxlQUFBO0FDSFo7QURoQkE7RUF1Qlksa0JBQUE7RUFDQSxVQUFBO0VBQ0EsV0FBQTtFQUNBLFFBQUE7QUNKWjtBRHRCQTtFQStCUSxZQUFBO0FDTlI7QURVQTtFQUVJLGdCQUFBO0VBQ0EsWUFBQTtFQUNBLGdEQUFBO0VBQ0EseUJBQUE7RUFDQSxxQkFBQTtFQUNBLHVCQUFBO0VBQ0EsWUFBQTtFQUNBLGFBQUE7RUFDQSxxQkFBQTtFQUNBLGtCQUFBO0VBQ0EsZUFBQTtBQ1RKIiwiZmlsZSI6InNyYy9hcHAvY29tcG9uZW50cy9wYWdlcy9zZXJ2aWNlLXBhcnRuZXIvcmVwYWlyLW9yZGVyL2xpc3Qvc2VydmljZS1wYXJ0bmVyLW9yZGVyLWxpc3QuY29tcG9uZW50Lmxlc3MiLCJzb3VyY2VzQ29udGVudCI6WyIuanVtYm90cm9uLm1haW4ge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnL2Fzc2V0cy9pbWcvcmVwYWlyLW9yZGVycy5qcGcnKTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtaW4taGVpZ2h0OiAxNXZ3O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IHRvcCBjZW50ZXI7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IDYwJTtcbn1cblxuLmlubmVyLWNvbnRhaW5lciB7XG4gICAgcGFkZGluZy10b3A6IDNlbTtcblxuICAgICY6bm90KC5mdykge1xuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgICAgIHdpZHRoOiA5MCU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5jYXJkIHtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYm9yZGVyLXJhZGl1czogdW5zZXQ7XG4gICAgYm94LXNoYWRvdzogMHB4IDBweCAzMHB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMik7ICAgIFxuICAgIG1hcmdpbi10b3A6IDE1cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMTVweDtcblxuICAgIC5jYXJkLWhlYWRlciB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjhmYTtcblxuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIHBhZGRpbmc6IDEuNWVtO1xuXG4gICAgICAgIGg0IHtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgY29sb3I6ICMwMDAwMDA7XG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxMjAlO1xuICAgICAgICB9XG5cbiAgICAgICAgLmhlYWRpY29uIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHJpZ2h0OiAxZW07XG4gICAgICAgICAgICBoZWlnaHQ6IDNlbTtcbiAgICAgICAgICAgIHRvcDogMWVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmNhcmQtYm9keSB7XG4gICAgICAgIHBhZGRpbmc6IDNlbTtcbiAgICB9XG59XG5cbi5idG4tZG93bmxvYWQge1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBib3gtc2hhZG93OiAwcHggMHB4IDEwcHggMHB4IHJnYmEoMCwgMCwgMCwgMC4xNSk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2JlMTgyMjtcbiAgICBib3JkZXItY29sb3I6ICNiZTE4MjI7XG4gICAgY29sb3I6IHdoaXRlICFpbXBvcnRhbnQ7XG4gICAgd2lkdGg6IDEuNWVtO1xuICAgIGhlaWdodDogMS41ZW07XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG59IiwiLmp1bWJvdHJvbi5tYWluIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcvYXNzZXRzL2ltZy9yZXBhaXItb3JkZXJzLmpwZycpO1xuICB3aWR0aDogMTAwJTtcbiAgbWluLWhlaWdodDogMTV2dztcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogdG9wIGNlbnRlcjtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbi15OiA2MCU7XG59XG4uaW5uZXItY29udGFpbmVyIHtcbiAgcGFkZGluZy10b3A6IDNlbTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuaW5uZXItY29udGFpbmVyOm5vdCguZncpIHtcbiAgICB3aWR0aDogOTAlO1xuICB9XG59XG4uY2FyZCB7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogdW5zZXQ7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMzBweCAwcHggcmdiYSgwLCAwLCAwLCAwLjIpO1xuICBtYXJnaW4tdG9wOiAxNXB4O1xuICBtYXJnaW4tYm90dG9tOiAxNXB4O1xufVxuLmNhcmQgLmNhcmQtaGVhZGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOGZhO1xuICBib3JkZXI6IG5vbmU7XG4gIHBhZGRpbmc6IDEuNWVtO1xufVxuLmNhcmQgLmNhcmQtaGVhZGVyIGg0IHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgY29sb3I6ICMwMDAwMDA7XG4gIGZvbnQtd2VpZ2h0OiBib2xkICFpbXBvcnRhbnQ7XG4gIGZvbnQtc2l6ZTogMTIwJTtcbn1cbi5jYXJkIC5jYXJkLWhlYWRlciAuaGVhZGljb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAxZW07XG4gIGhlaWdodDogM2VtO1xuICB0b3A6IDFlbTtcbn1cbi5jYXJkIC5jYXJkLWJvZHkge1xuICBwYWRkaW5nOiAzZW07XG59XG4uYnRuLWRvd25sb2FkIHtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYm9yZGVyOiBub25lO1xuICBib3gtc2hhZG93OiAwcHggMHB4IDEwcHggMHB4IHJnYmEoMCwgMCwgMCwgMC4xNSk7XG4gIGJhY2tncm91bmQtY29sb3I6ICNiZTE4MjI7XG4gIGJvcmRlci1jb2xvcjogI2JlMTgyMjtcbiAgY29sb3I6IHdoaXRlICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiAxLjVlbTtcbiAgaGVpZ2h0OiAxLjVlbTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbiJdfQ== */\"","import { Component, OnInit } from '@angular/core';\nimport { REST_SERVER } from 'src/app/config';\nimport { ActivatedRoute } from '@angular/router';\nimport { UserService } from 'src/app/service/user.service';\nimport { RepairOrder } from 'src/app/model/repair-order.model';\nimport { BsModalRef, BsModalService } from 'ngx-bootstrap/modal';\nimport { ViewerDialogComponent } from 'src/app/components/ui/dialogs/viewer-dialog.component';\nimport { RepairOrderService } from 'src/app/service/repair-order.service';\n\n@Component({\n selector: 'app-service-partner-order-list',\n templateUrl: './service-partner-order-list.component.html',\n styleUrls: ['./service-partner-order-list.component.less']\n})\nexport class ServicePartnerOrderListComponent implements OnInit {\n public loadingGrid:boolean = false;\n public totalCnt:number = 0;\n public title:string = '';\n public icon:string = '';\n public state:string;\n\n public selectionStatus = [\n { key: \"status_active\", val: \"Aktiv\" }, \n { key: \"status_inactive\", val: \"Inaktiv\" },\n ]\n\n filterDesc = {\n id: {\n type: \"string\",\n comp: \"orderId\",\n label: \"Auftragsnr.\",\n },\n rimCount: {\n type: \"string\",\n comp: \"eq\",\n label: \"Anz. Felgen\",\n },\n state: {\n value: \"NONE\",\n comp: \"eq\",\n }\n }\n\n constructor(\n activatedRoute:ActivatedRoute,\n private _userService:UserService,\n private _modalService:BsModalService,\n private _repairOrderService:RepairOrderService\n ) { \n activatedRoute.params.subscribe(params => {\n this.state = params.state;\n let filterDesc = {...this.filterDesc};\n filterDesc.state = {...this.filterDesc.state};\n if(params.state === 'new') {\n filterDesc.state.value = \"NEW\";\n this.title = 'Aktuelle Aufträge';\n this.icon = 'current-repair-orders';\n } else if(params.state === 'progress') {\n filterDesc.state.value = \"REPAIR_IN_PROGRESS\";\n this.title = 'Aufträge in Bearbeitung';\n this.icon = 'repair-orders-in-progress';\n } else if(params.state === 'finished') {\n filterDesc.state.value = \"REPAIR_FINISHED\";\n this.title = 'Abgeschlossene Aufträge';\n this.icon = 'completed-repair-orders';\n } else if(params.state === 'canceled') {\n filterDesc.state.value = \"CANCELED\";\n this.title = 'Stornierte Aufträge';\n this.icon = 'current-repair-orders';\n }\n this.filterDesc = filterDesc;\n });\n }\n\n ngOnInit() {\n }\n\n public getBaseUrl():string {\n let servicePartnerId = this._userService.user.servicePartnerId;\n return `${REST_SERVER}/service-partners/${servicePartnerId}/repair-orders`;\n }\n\n calcInvoiceDownloadHref(repairOrder:RepairOrder):string {\n let servicePartnerId = this._userService.user.servicePartnerId;\n let token:string = this._userService.token;\n return `${REST_SERVER}/service-partners/${servicePartnerId}/invoices/${repairOrder.invoiceIdent}?access_token=${token}`;\n }\n\n calcAinDownloadHref(repairOrder:RepairOrder):string {\n let servicePartnerId = this._userService.user.servicePartnerId;\n let token:string = this._userService.token;\n return `${REST_SERVER}/service-partners/${servicePartnerId}/repair-orders/${repairOrder.id}/cover-letter?access_token=${token}`;\n }\n\n async getShippingLabelHref(repairOrder:RepairOrder):Promise {\n return await this._repairOrderService.getShippingLabelHrefServicePartner(repairOrder.id);\n }\n\n async openShippingLabel(repairOrder) {\n let initialState = {\n title: \"AuftragsIdentifikationsNummer\",\n path: await this.getShippingLabelHref(repairOrder),\n msg: \"Bitte ausdrucken und jeder einzelnen Felge beilegen\",\n }\n let ref:BsModalRef = this._modalService.show(ViewerDialogComponent, {initialState, class: 'modal-lg'});\n }\n}\n","module.exports = \"
\\n
\\n \\n
\\n
\\n\\n
\\n
\\n
\\n
\\n
\\n
\\n

Kontaktdaten pflegen

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

\\n Speichern erfolgreich\\n

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

Abholadresse

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

Ansprechpartner

\\n \\n
\\n
\\n
\\n
\\n Aufbereitung\\n
\\n
\\n
\\n
\\n \\n
\\n
\\n \\n
\\n
\\n
\\n
\\n \\n
\\n
\\n \\n
\\n
\\n
\\n
\\n Buchhaltung\\n
\\n
\\n
\\n
\\n \\n
\\n
\\n \\n
\\n
\\n
\\n
\\n \\n
\\n
\\n \\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n

Rechnungsadresse

\\n \\n
\\n
\\n
\\n
\\n \\n
\\n
\\n \\n
\\n
\\n
\\n
\\n \\n
\\n
\\n \\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n \\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n\\n\\n\"","module.exports = \".jumbotron.main {\\n background-image: url('/assets/img/contact.jpg');\\n width: 100%;\\n min-height: 15vw;\\n background-position: top center;\\n border-radius: 0;\\n}\\n@media (min-width: 768px) {\\n .inner-container {\\n width: 60%;\\n }\\n}\\n.card {\\n border: none;\\n border-radius: unset;\\n box-shadow: 0px 0px 30px 0px rgba(0, 0, 0, 0.2);\\n margin-top: 15px;\\n margin-bottom: 15px;\\n}\\n.card .card-header {\\n position: relative;\\n background-color: #f8f8fa;\\n border: none;\\n padding: 1.5em;\\n}\\n.card .card-header h4 {\\n text-transform: uppercase;\\n text-align: left;\\n color: #000000;\\n font-weight: bold !important;\\n font-size: 120%;\\n}\\n.card .card-header .headicon {\\n position: absolute;\\n right: 1em;\\n height: 3em;\\n top: 1em;\\n}\\n.saveSuccess {\\n background-color: #efb4ba;\\n text-align: center;\\n font-weight: bold;\\n padding: 0.2em;\\n margin-top: 0.5em;\\n}\\n\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9hcHAtdWkvc3JjL2FwcC9jb21wb25lbnRzL3BhZ2VzL3NlcnZpY2UtcGFydG5lci9zZXR0aW5ncy9zZXJ2aWNlLXBhcnRuZXItc2V0dGluZ3MuY29tcG9uZW50Lmxlc3MiLCJzcmMvYXBwL2NvbXBvbmVudHMvcGFnZXMvc2VydmljZS1wYXJ0bmVyL3NldHRpbmdzL3NlcnZpY2UtcGFydG5lci1zZXR0aW5ncy5jb21wb25lbnQubGVzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtFQUNJLGdEQUFBO0VBQ0EsV0FBQTtFQUNBLGdCQUFBO0VBQ0EsK0JBQUE7RUFDQSxnQkFBQTtBQ0NKO0FER0k7RUFBQTtJQUNJLFVBQUE7RUNBTjtBQUNGO0FER0E7RUFDSSxZQUFBO0VBQ0Esb0JBQUE7RUFDQSwrQ0FBQTtFQUNBLGdCQUFBO0VBQ0EsbUJBQUE7QUNESjtBREpBO0VBUVEsa0JBQUE7RUFDQSx5QkFBQTtFQUVBLFlBQUE7RUFDQSxjQUFBO0FDRlI7QURWQTtFQWVZLHlCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxjQUFBO0VBQ0EsNEJBQUE7RUFDQSxlQUFBO0FDRlo7QURqQkE7RUF1Qlksa0JBQUE7RUFDQSxVQUFBO0VBQ0EsV0FBQTtFQUNBLFFBQUE7QUNIWjtBRFFBO0VBQ0kseUJBQUE7RUFDQSxrQkFBQTtFQUNBLGlCQUFBO0VBQ0EsY0FBQTtFQUNBLGlCQUFBO0FDTkoiLCJmaWxlIjoic3JjL2FwcC9jb21wb25lbnRzL3BhZ2VzL3NlcnZpY2UtcGFydG5lci9zZXR0aW5ncy9zZXJ2aWNlLXBhcnRuZXItc2V0dGluZ3MuY29tcG9uZW50Lmxlc3MiLCJzb3VyY2VzQ29udGVudCI6WyIuanVtYm90cm9uLm1haW4ge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnL2Fzc2V0cy9pbWcvY29udGFjdC5qcGcnKTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtaW4taGVpZ2h0OiAxNXZ3O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IHRvcCBjZW50ZXI7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbn1cblxuLmlubmVyLWNvbnRhaW5lciB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgIHdpZHRoOiA2MCU7XG4gICAgfVxufVxuXG4uY2FyZCB7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJvcmRlci1yYWRpdXM6IHVuc2V0O1xuICAgIGJveC1zaGFkb3c6IDBweCAwcHggMzBweCAwcHggcmdiYSgwLCAwLCAwLCAwLjIpOyAgICBcbiAgICBtYXJnaW4tdG9wOiAxNXB4O1xuICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG5cbiAgICAuY2FyZC1oZWFkZXIge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmOGY4ZmE7XG5cbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBwYWRkaW5nOiAxLjVlbTtcblxuICAgICAgICBoNCB7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgIGNvbG9yOiAjMDAwMDAwO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTIwJTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5oZWFkaWNvbiB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICByaWdodDogMWVtO1xuICAgICAgICAgICAgaGVpZ2h0OiAzZW07XG4gICAgICAgICAgICB0b3A6IDFlbTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnNhdmVTdWNjZXNzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWZiNGJhO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBwYWRkaW5nOiAwLjJlbTtcbiAgICBtYXJnaW4tdG9wOiAwLjVlbTtcbn0iLCIuanVtYm90cm9uLm1haW4ge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy9hc3NldHMvaW1nL2NvbnRhY3QuanBnJyk7XG4gIHdpZHRoOiAxMDAlO1xuICBtaW4taGVpZ2h0OiAxNXZ3O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgY2VudGVyO1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5pbm5lci1jb250YWluZXIge1xuICAgIHdpZHRoOiA2MCU7XG4gIH1cbn1cbi5jYXJkIHtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItcmFkaXVzOiB1bnNldDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAzMHB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMik7XG4gIG1hcmdpbi10b3A6IDE1cHg7XG4gIG1hcmdpbi1ib3R0b206IDE1cHg7XG59XG4uY2FyZCAuY2FyZC1oZWFkZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmOGY4ZmE7XG4gIGJvcmRlcjogbm9uZTtcbiAgcGFkZGluZzogMS41ZW07XG59XG4uY2FyZCAuY2FyZC1oZWFkZXIgaDQge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBjb2xvcjogIzAwMDAwMDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQgIWltcG9ydGFudDtcbiAgZm9udC1zaXplOiAxMjAlO1xufVxuLmNhcmQgLmNhcmQtaGVhZGVyIC5oZWFkaWNvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDFlbTtcbiAgaGVpZ2h0OiAzZW07XG4gIHRvcDogMWVtO1xufVxuLnNhdmVTdWNjZXNzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VmYjRiYTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgcGFkZGluZzogMC4yZW07XG4gIG1hcmdpbi10b3A6IDAuNWVtO1xufVxuIl19 */\"","import { Component, OnInit, ViewChild, ElementRef } from '@angular/core';\nimport { REST_SERVER } from 'src/app/config';\nimport { Router } from '@angular/router';\nimport { BsModalService, BsModalRef } from 'ngx-bootstrap/modal';\nimport { MessageDialogComponent } from 'src/app/components/ui/dialogs/message-dialog/message-dialog.component';\nimport { RepairOrder } from 'src/app/model/repair-order.model';\nimport { InvoiceService } from 'src/app/service/invoice.service';\nimport { GridComponent } from 'src/app/components/ui/grid/grid.component';\nimport { Invoice } from 'src/app/model/invoice.model';\nimport { Address } from 'src/app/model/address.model';\nimport { UserService } from 'src/app/service/user.service';\nimport { ServicePartnerService } from 'src/app/service/service-partner.service';\n\nenum InvoiceAction {\n BOOK_PAYMENT,\n};\n\n@Component({\n selector: 'app-service-partner-settings',\n templateUrl: './service-partner-settings.component.html',\n styleUrls: ['./service-partner-settings.component.less']\n})\nexport class ServicePartnerSettingsComponent {\n\n public sendingSettings:boolean;\n public success:boolean;\n public passwordCheck:string = \"\";\n @ViewChild(\"formTop\") formTop:ElementRef = null;\n\n settings = {\n deliveryAddress: new Address(),\n invoiceAddress: new Address(),\n phone: \"\",\n email:\"\",\n displayOnMap: false,\n };\n\n pswds = {\n oldPswd: \"\",\n newPswd: \"\"\n }\n\n constructor(\n\t private _router:Router,\n private _servicePartnerService:ServicePartnerService,\n private _userService:UserService,\n ) {\n this._loadServicePartnerSettings();\n }\n\n private async _loadServicePartnerSettings():Promise {\n let servicePartnerId:number = this._userService.user.servicePartnerId;\n this.settings = await this._servicePartnerService.loadSettings(servicePartnerId);\n \n }\n\n async changePswd():Promise {\n this.sendingSettings = true;\n var result = await this._userService.changePassword(this.pswds);\n this.sendingSettings = false;\n //this._router.navigate(['settings', 'success']);\n console.log(result);\n }\n\n async saveSettings():Promise {\n this.sendingSettings = true;\n let servicePartnerId:number = this._userService.user.servicePartnerId;\n await this._servicePartnerService.saveSettings(servicePartnerId, this.settings);\n /*\n if(this.pswds.newPswd != \"\" && this.pswds.oldPswd != \"\") {\n let result = await this._userService.savePassword(this.pswds);\n console.log(result);\n }\n */\n this.sendingSettings = false;\n \n this._loadServicePartnerSettings();\n this.success = true;\n this.formTop.nativeElement.scrollIntoView({ behavior: 'smooth' });\n setTimeout(() => {\n this.success = false; \n }, 3000);\n }\n}\n","module.exports = \"
\\n
\\n
\\n
\"","module.exports = \".block.bg {\\n background-color: #f8f8fa;\\n}\\n\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9hcHAtdWkvc3JjL2FwcC9jb21wb25lbnRzL3VpL2Ntcy1wYWdlL2Ntcy1wYWdlLmNvbXBvbmVudC5sZXNzIiwic3JjL2FwcC9jb21wb25lbnRzL3VpL2Ntcy1wYWdlL2Ntcy1wYWdlLmNvbXBvbmVudC5sZXNzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNJO0VBQ0kseUJBQUE7QUNBUiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvdWkvY21zLXBhZ2UvY21zLXBhZ2UuY29tcG9uZW50Lmxlc3MiLCJzb3VyY2VzQ29udGVudCI6WyIuYmxvY2sge1xuICAgICYuYmcge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOGZhO1xuICAgIH1cbn0iLCIuYmxvY2suYmcge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOGZhO1xufVxuIl19 */\"","import { Component, OnInit, Input, forwardRef } from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { CmsService } from 'src/app/service/cms.service';\nimport { CmsBlock } from 'src/app/model/cms-block.model';\nimport { CmsPage } from 'src/app/model/cms-page.model';\nimport { Router } from '@angular/router';\nimport { NgZone } from '@angular/core';\nimport { REST_SERVER } from '../../../config';\nimport { UserService } from '../../../service/user.service';\nimport { User } from '../../../model/user.model';\nimport { ServicePartner } from 'src/app/model/service-partner.model';\nimport { ServicePartnerService } from 'src/app/service/service-partner.service';\nimport { Title, Meta } from '@angular/platform-browser';\nimport { HttpClient } from '@angular/common/http';\nimport { FeedbackService} from 'src/app/service/feedback.service';\n\n@Component({\n selector: 'app-cms-page',\n templateUrl: './cms-page.component.html',\n styleUrls: ['./cms-page.component.less'],\n})\nexport class CmsPageComponent {\n\n private static _cache:any = {};\n\n @Input() page:CmsPage;\n private _pageIdent:string;\n\n constructor(\n private _cmsService:CmsService,\n private _userService:UserService,\n private _servicePartnerService:ServicePartnerService,\n private _router:Router,\n private _ngZone:NgZone,\n private _titleService:Title,\n private _metaService:Meta,\n private _http:HttpClient,\n private _feedbackService:FeedbackService,\n ) {\n \n }\n\n ngOnInit():void {\n let windowAny:any = window;\n windowAny.cmsComponent = this;\n\n let scriptPath:string = `${REST_SERVER}/cms/js`;\n\n //console.log(\"Searching script tag\");\n let scripts:HTMLCollectionOf = document.getElementsByTagName(\"script\");\n let found:boolean = false;\n for(let i = 0; i < scripts.length; i++) {\n let script = scripts[i];\n if(script.getAttribute(\"src\") === scriptPath) {\n found = true;\n break;\n }\n }\n\n if(!found) {\n let head = document.getElementsByTagName('head')[0];\n let script = document.createElement(\"script\");\n script.setAttribute(\"src\", scriptPath);\n head.appendChild(script);\n }\n\n //load global stylesheet\n let stylesheetPath:string = `${REST_SERVER}/cms/css`;\n this.loadStyleSheet(stylesheetPath);\n\n //load page specific stylesheet\n stylesheetPath = `${REST_SERVER}/cms/css/${this._pageIdent}`;\n\n this.loadStyleSheet(stylesheetPath);\n }\n\n ngOnDestroy() {\n let windowAny:any = window;\n if(windowAny.cmsComponent === this) {\n windowAny.cmsComponent = null;\n }\n\n this._titleService.setTitle(\"FelgenHero – Professionelle Felgenaufbereitung\");\n this._metaService.removeTag('name = \"description\"');\n }\n\n @Input() \n set pageIdent(pageIdent:string) {\n this._pageIdent = pageIdent;\n (async ():Promise => {\n if(this._pageIdent && CmsPageComponent._cache[pageIdent]) {\n this.page = CmsPageComponent._cache[pageIdent];\n } else if(this._pageIdent) {\n await this._loadPage(this._pageIdent);\n }\n this._titleService.setTitle(this.page.title);\n this._metaService.addTag({name: 'description', content: this.page.description});\n \n setTimeout(() => {\n let windowAny:any = window as any;\n if(windowAny.cmsPageChanged) {\n windowAny.cmsPageChanged(pageIdent);\n }\n }, 0);\n })();\n }\n\n get pageIdent():string {\n return this._pageIdent;\n }\n\n getPageId():string {\n let result:string = 'page';\n if(this.page && this.page.path) {\n result += \"-\" + this.page.path.replace(/\\//g, '-');\n }\n return result;\n }\n\n private async _loadPage(pageIdent:string):Promise {\n //console.log(\"Loading page\", pageIdent);\n this.page = await this._cmsService.load(pageIdent);\n CmsPageComponent._cache[pageIdent] = this.page;\n }\n\n public searchServicePartner() {\n this._ngZone.run(() => {\n let zip = (document.getElementById(\"zipSearch\")).value;\n \n if(zip.length == 5) {\n this._router.navigate(['/servicepartner-suche'], { queryParams: { q: zip }});\n }\n });\n }\n\n async onLogin(email, password):Promise {\n this._ngZone.run(async () => {\n try {\n let loginModel = new User();\n loginModel.email = email;\n loginModel.password = password;\n var loginResult:any = await this._userService.login(loginModel);\n } catch(exc) {\n \n this._feedbackService.showError(\"Login fehlerhaft, bitte Email-Passwort Kombination prüfen\");\n }\n });\n }\n\n async onRequestNewPassword(email):Promise {\n await this._ngZone.run(async () => {\n try {\n await this._userService.forgotPassword({ email });\n\n } catch(exc) {\n this._feedbackService.showError(\"Passwort konnte nicht zurückgesetzt werden. Bitte überprüfen Sie ob eine bereits registrierte Email angegeben wurde.\");\n throw \"error\";\n }\n });\n }\n\n navigate(path):void {\n this._ngZone.run(async () => {\n this._router.navigate([path]);\n });\n }\n\n async loadUser():Promise {\n return this._userService.user;\n }\n\n async loadServicePartner():Promise {\n let user:User = this._userService.user;\n return await this._servicePartnerService.load((user).servicePartnerId);\n }\n\n async placeOrderMarketingMaterial(orderFlyerBox:boolean, orderFlyers:boolean):Promise {\n let servicePartnerId:number = this._userService.user.servicePartnerId;\n await this._servicePartnerService.placeMarketingMaterialOrder(servicePartnerId, orderFlyerBox, orderFlyers);\n //this.orderPlaced = true;\n }\n\n async subscribeNewsletter(newsletterEmail):Promise {\n let subscriptionData = {\n recipient: {\n email: newsletterEmail,\n }, \n lists: [],\n captcha: {},\n };\n await this._http.post('https://api.newsletter2go.com/forms/submit/t0x41u5f-goy4eymv-q2g?type=subscribe', subscriptionData).toPromise();\n }\n \n loadStyleSheet(stylesheetPath) \n { \n let stylesheets:HTMLCollectionOf = document.getElementsByTagName(\"link\");\n let found:boolean = false;\n for(let i = 0; i < stylesheets.length; i++) {\n let stylesheet = stylesheets[i];\n if(stylesheet.getAttribute(\"href\") === stylesheetPath) {\n found = true;\n break;\n }\n }\n\n if(!found) {\n let head = document.getElementsByTagName('head')[0];\n let stylesheet = document.createElement('link');\n stylesheet.setAttribute('rel', 'stylesheet');\n stylesheet.setAttribute('href', stylesheetPath);\n head.appendChild(stylesheet);\n }\n }\n}\n","module.exports = \"
\\n
\\n \\n
\\n \\n \\n
\\n
\\n
\\n\"","module.exports = \".card-header {\\n padding: 0;\\n}\\n\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9hcHAtdWkvc3JjL2FwcC9jb21wb25lbnRzL3VpL2NvbGxhcHNhYmxlL2NvbGxhcHNhYmxlLmNvbXBvbmVudC5sZXNzIiwic3JjL2FwcC9jb21wb25lbnRzL3VpL2NvbGxhcHNhYmxlL2NvbGxhcHNhYmxlLmNvbXBvbmVudC5sZXNzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0VBQ0ksVUFBQTtBQ0NKIiwiZmlsZSI6InNyYy9hcHAvY29tcG9uZW50cy91aS9jb2xsYXBzYWJsZS9jb2xsYXBzYWJsZS5jb21wb25lbnQubGVzcyIsInNvdXJjZXNDb250ZW50IjpbIi5jYXJkLWhlYWRlciB7XG4gICAgcGFkZGluZzogMDtcbn0iLCIuY2FyZC1oZWFkZXIge1xuICBwYWRkaW5nOiAwO1xufVxuIl19 */\"","import { Component, OnInit, Input } from '@angular/core';\n\n@Component({\n selector: 'app-collapsable-header',\n template: ``\n})\nexport class CollapsableHeaderComponent { \n\n}\n\n@Component({\n selector: 'app-collapsable-content',\n template: ``\n})\nexport class CollapsableContentComponent { \n\n}\n\n@Component({\n selector: 'app-collapsable',\n templateUrl: './collapsable.component.html',\n styleUrls: ['./collapsable.component.less']\n})\nexport class CollapsableComponent implements OnInit {\n\n @Input() collapsed:boolean = false;\n\n constructor() { }\n\n ngOnInit() {\n }\n\n}\n","import { Component, OnInit } from '@angular/core';\nimport { BsModalRef } from 'ngx-bootstrap/modal';\nimport { Subject } from 'rxjs';\n\n@Component({\n selector: 'modal-content',\n template: `\n
\n

{{title}}

\n \n
\n
\n {{msg}}\n
\n
\n \n \n
\n `\n })\n \n export class ConfirmDialogComponent implements OnInit {\n title: string;\n msg:string;\n\n public onClose: Subject = new Subject();\n \n constructor(public bsModalRef: BsModalRef) {}\n \n ngOnInit() {\n \n }\n\n public close(result:boolean): void {\n this.onClose.next(result);\n this.bsModalRef.hide();\n }\n }","import { Component, EventEmitter, OnInit } from \"@angular/core\";\nimport { BsModalRef } from \"ngx-bootstrap/modal\";\n\n@Component({\n selector: 'modal-content',\n template: `\n
\n

{{title}}

\n
\n\n
\n {{msg}}\n
\n\n
\n \n \n
\n `\n })\n\n export class GeneralConfirmDialogComponent implements OnInit {\n\n title:string;\n msg:string;\n public event: EventEmitter = new EventEmitter();\n\n constructor(public _bsModalRef: BsModalRef) {}\n\n ngOnInit() {\n \n }\n\n confirm() {\n this.event.emit();\n setTimeout(\n () => this._bsModalRef.hide(),\n 1000\n )\n }\n\n close()\n {\n this._bsModalRef.hide();\n }\n }\n ","import { Component, OnInit } from '@angular/core';\nimport { BsModalRef } from 'ngx-bootstrap/modal';\nimport { Subject } from 'rxjs';\n\n@Component({\n selector: 'modal-content',\n template: `\n
\n

{{title}}

\n \n
\n
\n {{msg}}\n
\n
\n \n
\n `\n })\n \n export class MessageDialogComponent implements OnInit {\n title: string;\n closeBtnName: string = \"OK\";\n msg:string;\n\n public onClose: Subject = new Subject();\n \n constructor(public bsModalRef: BsModalRef) {}\n \n ngOnInit() {\n \n }\n\n public onConfirm(): void {\n this.onClose.next();\n this.bsModalRef.hide();\n }\n }","import { Component, OnInit } from '@angular/core';\nimport { BsModalRef } from 'ngx-bootstrap/modal';\nimport { Subject } from 'rxjs';\nimport { DomSanitizer, SafeUrl } from '@angular/platform-browser';\nimport { HttpClient } from '@angular/common/http';\nimport * as internal from 'assert';\n\n@Component({\n selector: 'modal-content',\n styles: [`\n iframe {\n width: 100%; height: 40em;\n background: url('data:image/svg+xml;charset=utf-8,Bitte warten ...') 0px 0px no-repeat;\n border: 1px solid gray;\n }`,\n `.nextLabel { width: 40px;}`,\n `.nextLabel img { width: 100%;}`,\n `#numHint { margin: 0 20px; display: inline; font-size: larger}`,\n `#multiLabelHeader { margin: 30px 0px;}`,\n `#multiLabelControls { display: inline; float: right;}`,\n `#labelInfo { display: inline; font-size: larger; font-weight: bold;}`,\n ],\n template: `\n
\n

{{title}}

\n \n
\n
\n\n
\n
\n Drucken Sie jetzt Label Nr: {{currentLabelIndex + 1}}\n
\n
\n \n
{{currentLabelIndex + 1}}/{{amountLabels}}
\n \n
\n
\n\n \n\n
\n
\n \n \n \n
\n `\n })\n \n export class MultiLabelViewerComponent implements OnInit {\n title: string;\n \n closeBtnName: string = \"OK\";\n printBrowserBtnName: string = \"mit Browser Drucken\";\n switchTest: string = \"wechsel testen\";\n paths:any\n path:string;\n\n currentLabelIndex: number;\n amountLabels: number;\n\n html:string;\n\n public onClose: Subject = new Subject();\n \n constructor(\n public bsModalRef: BsModalRef, \n private _sanitizer:DomSanitizer,\n private _http:HttpClient,) {}\n \n ngOnInit() {\n console.log(this.paths);\n this.path = this.paths[0];\n\n this.amountLabels = this.paths.length;\n this.currentLabelIndex = 0;\n \n\n (async () => {\n await this.getHtml();\n await this.setLabelUrl()\n })();\n }\n\n async getHtml() {\n this.html = await this._http.get('./assets/labelDisplay.html', {responseType: 'text'}).toPromise();\n }\n\n async setLabelUrl() {\n \n let pathPrefix = window.location.protocol + \"//\" + window.location.host;\n this.html = this.html.replace('@@LABELURL@@', pathPrefix + this.path);\n }\n\n get labelHtml() {\n return this._sanitizer.bypassSecurityTrustHtml(this.html);\n }\n\n public async onPrintInBrowser(): Promise {\n\n const iframeWindow = document.querySelector(\"iframe\").contentWindow;\n iframeWindow.print();\n }\n\n public onConfirm(): void {\n this.onClose.next();\n this.bsModalRef.hide();\n }\n\n get sanitizedPath() {\n \n return this._sanitizer.bypassSecurityTrustResourceUrl(this.path);\n } \n\n nextLabel()\n {\n this.currentLabelIndex ++;\n this.showCurrentLabel();\n }\n\n previousLabel()\n {\n this.currentLabelIndex --;\n this.showCurrentLabel();\n }\n\n async showCurrentLabel()\n { \n this.path = this.paths[this.currentLabelIndex];\n\n await this.getHtml();\n await this.setLabelUrl()\n }\n }","import { Component, OnInit } from '@angular/core';\nimport { BsModalRef } from 'ngx-bootstrap/modal';\nimport { UserService } from 'src/app/service/user.service';\n\n@Component({\n selector: 'modal-content',\n template: `\n
\n

Newsletter

\n \n
\n\n
\n

Melden Sie sich bei unserem Newsletter an un verpassen Sie keine Neuigkeit rund um Felgenhero.\n Selbstverständlich können Sie sich jederzeit wieder abmelden.

\n \n \n \n
\n \n \n
\n
\n \n
\n\n
\n \n
\n `,\n styles: ['.row { margin: 0 0} input { margin: 0 10px } textarea { margin: 0 10px } .modal-footer {margin-top:20px; border-top:none}']\n})\n\nexport class NewsletterDialogComponent {\n\n firstName : string = '';\n lastName : string = '';\n email : string = '';\n\n constructor(\n public bsModalRef: BsModalRef,\n private _userService:UserService,\n ) {}\n\n sendRequest()\n {\n //alert(this.companyName);\n\n let recipientData = {\n 'firstName': this.firstName,\n 'lastName': this.lastName,\n 'email': this.email,\n };\n\n this._userService.addRecipientToNewsletter(recipientData);\n\n this.bsModalRef.hide();\n }\n\n}\n","import { Component, OnInit } from '@angular/core';\nimport { BsModalRef } from 'ngx-bootstrap/modal';\nimport { Subject } from 'rxjs';\nimport { ServicePartnerService } from 'src/app/service/service-partner.service';\n\n@Component({\n selector: 'modal-content',\n template: `\n
\n

Preisliste anfordern

\n \n
\n\n
\n

Bitte geben Sie uns einige Informationen über sich. Sobald wir diese geprüft haben, senden\n wir Ihnen eine Email mit unserer aktuellen Preisliste zu.

\n \n \n
\n \n
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n \n
\n\n
\n \n
\n `,\n styles: ['.row { margin: 0 0} input { margin: 0 10px } textarea { margin: 0 10px }']\n})\n\nexport class PriceListRequestDialogComponent implements OnInit {\n\n companyName : string = '';\n firstName : string = '';\n lastName : string = '';\n street : string = '';\n streetNr : string = '';\n postCode : string = '';\n city : string = '';\n email : string = '';\n phone : string = '';\n note : string = '';\n \n constructor(\n public bsModalRef: BsModalRef,\n private _servicePartnerService: ServicePartnerService,\n ) {}\n\n ngOnInit() {\n\n }\n\n sendRequest()\n {\n //alert(this.companyName);\n\n let personalData = {\n 'companyName': this.companyName,\n 'firstName': this.firstName,\n 'lastName': this.lastName,\n 'street': this.street,\n 'streetNr': this.streetNr,\n 'postCode': this.postCode,\n 'city': this.city,\n 'email': this.email,\n 'phone': this.phone,\n 'note': this.note,\n };\n\n this._servicePartnerService.requestPricelist(personalData);\n\n this.bsModalRef.hide();\n }\n\n close()\n {\n this.bsModalRef.hide();\n }\n}","import { Component, OnInit } from '@angular/core';\nimport { BsModalRef } from 'ngx-bootstrap/modal';\nimport { Subject } from 'rxjs';\nimport { DomSanitizer, SafeUrl } from '@angular/platform-browser';\nimport { PrinterService } from 'src/app/service/printer.service';\nimport { FeedbackService } from 'src/app/service/feedback.service';\nimport { HttpClient } from '@angular/common/http';\n\n@Component({\n selector: 'modal-content',\n styles: [`\n iframe {\n width: 100%; height: 40em;\n background: url('data:image/svg+xml;charset=utf-8,Bitte warten ...') 0px 0px no-repeat;\n border: 1px solid gray;\n }\n mat-spinner {\n margin: auto;\n }\n #print-message {\n margin: 50px 0 50px 0;\n }\n #print-message p {\n text-align: center;\n font-size: larger;\n }\n `],\n template: `\n
\n

{{title}}

\n \n
\n
\n

Verbindung zum Drucker wird hergestellt

\n \n
\n
\n

{{ msg }}

\n \n
\n
\n

Label wird gedruckt, bitte warten...

\n \n
\n
\n \n \n \n
\n `\n })\n \n export class PrintDialogRepairCenterComponent implements OnInit {\n title: string;\n msg: string = '';\n closeBtnName: string = \"OK\";\n printBtnName: string = \"mit Box-Drucker drucken\";\n printBrowserBtnName: string = \"mit Browser Drucken\";\n path:string;\n isBoxPrinterAvailable:boolean = false;\n loading: boolean = false;\n printing: boolean = false;\n\n html:string;\n\n public onClose: Subject = new Subject();\n \n constructor(\n public bsModalRef: BsModalRef, \n private _sanitizer:DomSanitizer,\n private _printerService:PrinterService,\n private _feedbackService:FeedbackService,\n private _http:HttpClient,\n ) {}\n \n ngOnInit() {\n\n (async () => {\n await this.checkPrinter();\n await this.getHtml();\n await this.setLabelUrl()\n console.log(this.html);\n })();\n\n }\n\n async getHtml() {\n this.html = await this._http.get('./assets/labelDisplay.html', {responseType: 'text'}).toPromise();\n }\n\n get labelHtml() {\n return this._sanitizer.bypassSecurityTrustHtml(this.html);\n }\n\n async setLabelUrl() {\n let pathPrefix = window.location.protocol + \"//\" + window.location.host;\n this.html = this.html.replace('@@LABELURL@@', pathPrefix + this.path);\n }\n\n async checkPrinter() {\n /*this.loading = true;\n\n if (await this._printerService.checkBoxPrinter() == 200) {\n \n this.isBoxPrinterAvailable = true;\n \n //toolbar=0 added to remove print option, since we want to provide a custom print option\n //This is rather hacky and might not work on all browsers\n this.path += \"#toolbar=0\";\n this.loading = false;\n\n console.log(\"printer is accessible\");\n } else {\n //should only be the case for a timeout from the printer app, then we still\n //want to provide the default iframe toolbar\n this.loading = false;\n console.log(\"Printer not accessible\");\n this._feedbackService.showError(\"Drucker nicht erreichbar\");\n }*/\n this.isBoxPrinterAvailable = true;\n }\n\n public async onPrintLabel(): Promise {\n\n this.printing = true;\n try {\n await this._printerService.printShippingLabel(this.path);\n } catch(err) {\n this._feedbackService.showError(err);\n } finally {\n this.printing = false;\n }\n }\n\n public async onPrintInBrowser(): Promise {\n\n const iframeWindow = document.querySelector(\"iframe\").contentWindow;\n iframeWindow.print();\n }\n\n public onConfirm(): void {\n this.onClose.next();\n this.bsModalRef.hide();\n }\n\n get sanitizedPath() {\n return this._sanitizer.bypassSecurityTrustResourceUrl(this.path);\n } \n }","import { Component, EventEmitter, OnInit } from '@angular/core';\nimport { BsModalRef } from 'ngx-bootstrap/modal';\nimport { UserService } from 'src/app/service/user.service';\n\n@Component({\n selector: 'modal-content',\n template: `\n
\n

RAL-Farben

\n \n
\n\n
\n

Suchen Sie die gewünschte RAL Farbe heraus. Bei der Auftragserstellung wird diese dem aufbereitenden Betrieb mitgeteilt

\n\n\n
\n
\n RAL 000 15 00\n
Tintenschwarz
Ink black
\n
\n
\n RAL 000 20 00\n
Schieferschwarz
Slate black
\n
\n
\n RAL 000 25 00\n
Onyxschwarz
Onyx black
\n
\n
\n RAL 000 30 00\n
Mittelschwarz
Medium black
\n
\n
\n RAL 000 35 00\n
Brikettgrau
Briquette grey
\n
\n
\n RAL 000 40 00\n
Dunkelgrau
Dark grey
\n
\n
\n RAL 000 45 00\n
Architekturgrau
Architecture grey
\n
\n
\n RAL 000 50 00\n
Stahlgrau
Steel grey
\n
\n
\n RAL 000 55 00\n
Mittelgrau
Medium grey
\n
\n
\n RAL 000 60 00\n
Aschgrau
Ash grey
\n
\n
\n RAL 000 65 00\n
Mörtelgrau
Mortar grey
\n
\n
\n RAL 000 70 00\n
Leichtgrau
Light grey
\n
\n
\n RAL 000 75 00\n
Marmorgrau
Marble grey
\n
\n
\n RAL 000 80 00\n
Nebelgrau
Foggy grey
\n
\n
\n RAL 000 85 00\n
Schattenweiß
Shadow white
\n
\n
\n RAL 000 90 00\n
Winterweiß
Winter white
\n
\n
\n RAL 010 20 10\n
Wengeschwarz
Wenge black
\n
\n
\n RAL 010 20 15\n
Kirschenschwarz
Cherry black
\n
\n
\n RAL 010 20 20\n
Dunkelmahagoni
Dark mahogany
\n
\n
\n RAL 010 20 25\n
Rostrot
Rusty red
\n
\n
\n RAL 010 30 10\n
Holzschwarzrot
Laurel nut rusty brown
\n
\n
\n RAL 010 30 15\n
Nachtmauve
Night mauve
\n
\n
\n RAL 010 30 20\n
Rosigbraun
Pinkish brown
\n
\n
\n RAL 010 30 25\n
Kastanienrot
Chestnut red
\n
\n
\n RAL 010 30 30\n
Lederrot
Leather red
\n
\n
\n RAL 010 30 35\n
Anthrazitrot
Anthracite red
\n
\n
\n RAL 010 30 40\n
Braunmagenta
Brown magenta
\n
\n
\n RAL 010 30 44\n
Atlasrot
Atlas red
\n
\n
\n RAL 010 40 10\n
Caputmortuumgraurot
Caput mortuum grey red
\n
\n
\n RAL 010 40 15\n
Rostbraun
Rust brown
\n
\n
\n RAL 010 40 20\n
Abendrot
Sunset red
\n
\n
\n RAL 010 40 25\n
Mineralrot
Mineral red
\n
\n
\n RAL 010 40 30\n
Trübmagenta
Dull magenta
\n
\n
\n RAL 010 40 35\n
Samtrot
Velvet red
\n
\n
\n RAL 010 40 40\n
Algenrot
Algae red
\n
\n
\n RAL 010 40 45\n
Himbeereisrot
Raspberry ice cream red
\n
\n
\n RAL 010 40 50\n
Fuchsiarot
Fuchsia red
\n
\n
\n RAL 010 40 53\n
Urrot
Primal red
\n
\n
\n RAL 010 50 10\n
Altmahagoni
Old mahogany
\n
\n
\n RAL 010 50 15\n
Trübaltrosa
Dull dusky pink
\n
\n
\n RAL 010 50 20\n
Backsteinrot
Brickwork red
\n
\n
\n RAL 010 50 25\n
Mattkarmin
Matte carmine
\n
\n
\n RAL 010 50 30\n
Marmorrot
Marble red
\n
\n
\n RAL 010 50 35\n
Geranienrot
Geranium red
\n
\n
\n RAL 010 50 40\n
Schieferrosa
Slate pink
\n
\n
\n RAL 010 50 45\n
Tulipanrot
Tulip red
\n
\n
\n RAL 010 50 50\n
Lichtrot
Vibrant red
\n
\n
\n RAL 010 60 10\n
Fliedergrau
Lilac grey
\n
\n
\n RAL 010 60 15\n
Eisorchideenrot
Ice orchid red
\n
\n
\n RAL 010 60 20\n
Kalkrosa
Lime pink
\n
\n
\n RAL 010 60 25\n
Lippenstiftrosa
Lipstick pink
\n
\n
\n RAL 010 60 30\n
Japankoralle
Japanese coral
\n
\n
\n RAL 010 60 35\n
Rosenrot
Rose red
\n
\n
\n RAL 010 60 40\n
Erdbeershakerot
Strawberry milkshake red
\n
\n
\n RAL 010 60 45\n
Leuchtendrosa
Luminous pink
\n
\n
\n RAL 010 70 10\n
Blassmauve
Pale mauve
\n
\n
\n RAL 010 70 15\n
Puderrosé
Powder rose
\n
\n
\n RAL 010 70 20\n
Silberrosé
Silver rose
\n
\n
\n RAL 010 70 25\n
Flamingorosa
Flamingo pink
\n
\n
\n RAL 010 70 30\n
Kirschblütenrosa
Cherry blossom pink
\n
\n
\n RAL 010 70 35\n
Babyrosa
Baby pink
\n
\n
\n RAL 010 80 10\n
Schlammpink
Mud pink
\n
\n
\n RAL 010 80 15\n
Eispink
Ice hot pink
\n
\n
\n RAL 010 80 20\n
Pastellrosa
Pastel pink
\n
\n
\n RAL 010 85 05\n
Perlrosé
Pearl rose
\n
\n
\n RAL 010 85 10\n
Lachsrosé
Salmon rose
\n
\n
\n RAL 010 85 15\n
Milchshakerosa
Milkshake pink
\n
\n
\n RAL 010 85 20\n
Inkarnatrosé
Carnation pink
\n
\n
\n RAL 010 90 05\n
Rosécreme
Rose cream
\n
\n
\n RAL 010 90 10\n
Hellapricot
Light apricot
\n
\n
\n RAL 010 93 05\n
Weißrötlich
White-red
\n
\n
\n RAL 020 20 05\n
Tiefbraun
Deep brown
\n
\n
\n RAL 020 20 10\n
Nachtröte
Night red
\n
\n
\n RAL 020 20 20\n
Dunkelrotbraun
Dark red brown
\n
\n
\n RAL 020 20 29\n
Burgunderrot
Burgundy
\n
\n
\n RAL 020 30 05\n
Rhodonitbraun
Rhodonite brown
\n
\n
\n RAL 020 30 10\n
Budapesterbraun
Budapest brown
\n
\n
\n RAL 020 30 20\n
Kremlrot
Kremlin red
\n
\n
\n RAL 020 30 30\n
Kristalldunkelrot
Crystal dark red
\n
\n
\n RAL 020 30 40\n
Amaranthblüte
Amaranth blossom
\n
\n
\n RAL 020 30 48\n
Vogelkirschenrot
Sweet cherry red
\n
\n
\n RAL 020 40 05\n
Graubräunlich
Greyish brown
\n
\n
\n RAL 020 40 10\n
Nussbaumbraun
Nut brown
\n
\n
\n RAL 020 40 20\n
Antikrot
Antique red
\n
\n
\n RAL 020 40 30\n
Hermosarosa
Hermosa pink
\n
\n
\n RAL 020 40 40\n
Oktoberrot
October red
\n
\n
\n RAL 020 40 50\n
Knallrot
Bright red
\n
\n
\n RAL 020 50 05\n
Zirkongrau
Zircon grey
\n
\n
\n RAL 020 50 10\n
Sandsteinrotgrau
Sandstone red grey
\n
\n
\n RAL 020 50 20\n
Rotgrau
Red grey
\n
\n
\n RAL 020 50 30\n
Venezianerrot
Venetian red
\n
\n
\n RAL 020 50 40\n
Schwedenkleerot
Alsike clover red
\n
\n
\n RAL 020 50 50\n
Flammenrot
Flame red
\n
\n
\n RAL 020 50 58\n
Preiselbeerenrot
Lingonberry red
\n
\n
\n RAL 020 60 05\n
Kugeldistelgraurosé
Globe thistle grey rose
\n
\n
\n RAL 020 60 10\n
Blechrosa
Tin pink
\n
\n
\n RAL 020 60 20\n
Retrorosa
Retro pink
\n
\n
\n RAL 020 60 30\n
Begonienrostrosé
Begonia rusty rose
\n
\n
\n RAL 020 60 40\n
Lotusrot
Lotus red
\n
\n
\n RAL 020 70 05\n
Fashionmauve
Fashion mauve
\n
\n
\n RAL 020 70 10\n
Turmalinmauve
Tourmaline mauve
\n
\n
\n RAL 020 70 20\n
Rosenholzapricot
Rosewood apricot
\n
\n
\n RAL 020 70 30\n
Markerrosa
Marker pink
\n
\n
\n RAL 020 80 05\n
Auroragrau
Aurora grey
\n
\n
\n RAL 020 80 10\n
Quarzrosé
Quartz rose
\n
\n
\n RAL 020 80 20\n
Marzipanrosa
Marzipan pink
\n
\n
\n RAL 020 85 05\n
Mandelblütenrosa
Almond blossom pink
\n
\n
\n RAL 020 85 10\n
Lachscreme
Salmon cream
\n
\n
\n RAL 020 85 20\n
Elegantlichtrosé
Elegant light rose
\n
\n
\n RAL 020 90 05\n
Muschelweiß
Mussel white
\n
\n
\n RAL 020 90 10\n
Pfirsichcreme
Peach cream
\n
\n
\n RAL 020 93 05\n
Blütenweiß
Blossom white
\n
\n
\n RAL 030 30 10\n
Laurelnussrostbraun
Laurel nut rusty brown
\n
\n
\n RAL 030 30 20\n
Herbstlaubrot
Autumn leaf red
\n
\n
\n RAL 030 30 30\n
Macorefurnierrot
Macore veneer red
\n
\n
\n RAL 030 30 40\n
Karmesinrot
Crimson red
\n
\n
\n RAL 030 30 45\n
Blutrot
Blood red
\n
\n
\n RAL 030 40 10\n
Torfrotbraun
Peat red brown
\n
\n
\n RAL 030 40 20\n
Moosbeerenrot
Cranberry red
\n
\n
\n RAL 030 40 30\n
Backsteinbraun
Brick brown
\n
\n
\n RAL 030 40 40\n
Scharfrot
Spicy red
\n
\n
\n RAL 030 40 50\n
Hibiskusrot
Hibiscus red
\n
\n
\n RAL 030 40 60\n
Kaiserkirschenrot
Emperor cherry red
\n
\n
\n RAL 030 50 10\n
Erdrot
Earth red
\n
\n
\n RAL 030 50 20\n
Terracottarotbraun
Terracotta red brown
\n
\n
\n RAL 030 50 30\n
Lehmrot
Clay red
\n
\n
\n RAL 030 50 40\n
Zinnoberrot
Vermilion red
\n
\n
\n RAL 030 50 50\n
Ahornrot
Maple red
\n
\n
\n RAL 030 50 60\n
Hollandrot
Holland red
\n
\n
\n RAL 030 60 10\n
Sturmröte
Storm red
\n
\n
\n RAL 030 60 20\n
Wüstenrot
Desert red
\n
\n
\n RAL 030 60 30\n
Antikrosa
Antique pink
\n
\n
\n RAL 030 60 40\n
Helltomate
Light tomato
\n
\n
\n RAL 030 60 50\n
Kalypsorot
Calypso red
\n
\n
\n RAL 030 70 10\n
Floridagrau
Florida grey
\n
\n
\n RAL 030 70 20\n
Trübapricot
Dull apricot
\n
\n
\n RAL 030 70 30\n
Lachsrosarot
Salmon pink red
\n
\n
\n RAL 030 70 40\n
Flamingorot
Flamingo red
\n
\n
\n RAL 030 80 10\n
Salzrosa
Salt pink
\n
\n
\n RAL 030 80 20\n
Magnolienrosa
Magnolia pink
\n
\n
\n RAL 030 85 05\n
Mandelcreme
Almond cream
\n
\n
\n RAL 030 85 10\n
Softeisrosé
Soft ice rose
\n
\n
\n RAL 030 85 20\n
Pfirsichrot
Peach red
\n
\n
\n RAL 030 90 05\n
Antikweiß
Antique white
\n
\n
\n RAL 030 90 10\n
Hochzeitsrosa
Wedding pink
\n
\n
\n RAL 030 93 05\n
Pergamentweiß
Parchment white
\n
\n
\n RAL 040 20 19\n
Wildbraun
Wild brown
\n
\n
\n RAL 040 30 05\n
Basaltschwarz
Basalt black
\n
\n
\n RAL 040 30 10\n
Kaviarschwarz
Caviar black
\n
\n
\n RAL 040 30 20\n
Kaffeebraun
Coffee brown
\n
\n
\n RAL 040 30 30\n
Wurzelbraun
Root brown
\n
\n
\n RAL 040 30 40\n
Korrosionsrot
Corrosion red
\n
\n
\n RAL 040 40 05\n
Aschbraun
Ash brown
\n
\n
\n RAL 040 40 10\n
Somalibraun
Somali brown
\n
\n
\n RAL 040 40 20\n
Vandyckbraun
Vandyck brown
\n
\n
\n RAL 040 40 30\n
Maronenbraun
Chestnut brown
\n
\n
\n RAL 040 40 40\n
Ziegelrot
Brick red
\n
\n
\n RAL 040 40 50\n
Hennarot
Henna red
\n
\n
\n RAL 040 40 60\n
Kupferrot
Copper red
\n
\n
\n RAL 040 40 67\n
Chinarot
China red
\n
\n
\n RAL 040 50 05\n
Nomadengrau
Nomad grey
\n
\n
\n RAL 040 50 10\n
Umbrasand
Umbra sand
\n
\n
\n RAL 040 50 20\n
Achatbraun
Agate brown
\n
\n
\n RAL 040 50 30\n
Rostfarben
Rust coloured
\n
\n
\n RAL 040 50 40\n
Ameisenrot
Ant red
\n
\n
\n RAL 040 50 50\n
Englischrot
English red
\n
\n
\n RAL 040 50 60\n
Fuchsrot
Fox red
\n
\n
\n RAL 040 50 70\n
Pompejirot
Pompeii red
\n
\n
\n RAL 040 60 05\n
Warmgrau
Warm grey
\n
\n
\n RAL 040 60 10\n
Hellkaramell
Light caramel
\n
\n
\n RAL 040 60 20\n
Sienagelblich
Sienna yellow
\n
\n
\n RAL 040 60 30\n
Zedernrot
Cedar red
\n
\n
\n RAL 040 60 40\n
Terraorange
Terra orange
\n
\n
\n RAL 040 60 50\n
Mandarinorange
Mandarin orange
\n
\n
\n RAL 040 60 60\n
Korallenorange
Coral orange
\n
\n
\n RAL 040 70 05\n
Passepartoutgrau
Passepartout grey
\n
\n
\n RAL 040 70 10\n
Mohairmauve
Mohair mauve
\n
\n
\n RAL 040 70 20\n
Sanftsiena
Soft sienna
\n
\n
\n RAL 040 70 30\n
Industrierosé
Industrial rose
\n
\n
\n RAL 040 70 40\n
Aprikosenrot
Apricot red
\n
\n
\n RAL 040 70 50\n
Fruchtrot
Fruit red
\n
\n
\n RAL 040 80 05\n
Naturseidegrau
Natural silk grey
\n
\n
\n RAL 040 80 10\n
Thulitrosé
Thulite rose
\n
\n
\n RAL 040 80 20\n
Krapporange
Madder orange
\n
\n
\n RAL 040 80 30\n
Naturapricot
Nature apricot
\n
\n
\n RAL 040 85 05 \n
Pandoragrau
Pandora grey
\n
\n
\n RAL 040 85 10\n
Feinalabaster
Fine alabaster
\n
\n
\n RAL 040 85 20\n
Zartsüßapricot
Delicate sweet apricot
\n
\n
\n RAL 040 90 05\n
Saharalichtrot
Sahara light red
\n
\n
\n RAL 040 90 10\n
Zartrosé
Delicate rose
\n
\n
\n RAL 040 93 05\n
Naturweiß
Natural white
\n
\n
\n RAL 050 20 10\n
Granitbraun
Granite brown
\n
\n
\n RAL 050 20 16\n
Nachtbraun
Night brown
\n
\n
\n RAL 050 30 10\n
Obsidianbraun
Obsidian brown
\n
\n
\n RAL 050 30 20\n
Tropenholzbraun
Tropical wood brown
\n
\n
\n RAL 050 30 30\n
Tabakbraun
Tobacco brown
\n
\n
\n RAL 050 30 36\n
Palisanderbraun
Rosewood brown
\n
\n
\n RAL 050 40 10\n
Mokkaschwarz
Mocha black
\n
\n
\n RAL 050 40 20\n
Florentinerbraun
Florentine brown
\n
\n
\n RAL 050 40 30\n
Currybraun
Curry brown
\n
\n
\n RAL 050 40 40\n
Madeirabraun
Madeira brown
\n
\n
\n RAL 050 40 50\n
Herbstrot
Autumn red
\n
\n
\n RAL 050 50 10\n
Teakholzbraun
Teakwood brown
\n
\n
\n RAL 050 50 20\n
Milchkaffeebraun
Milk coffee brown
\n
\n
\n RAL 050 50 30\n
Goldbraun
Golden brown
\n
\n
\n RAL 050 50 40\n
Kupfermetallrot
Copper-metal red
\n
\n
\n RAL 050 50 50\n
Goldlackbraun
Gold varnish brown
\n
\n
\n RAL 050 50 60\n
Tizianrot
Titian red
\n
\n
\n RAL 050 50 70\n
Mohnrot
Poppy red
\n
\n
\n RAL 050 50 78\n
Persischorange
Persian orange
\n
\n
\n RAL 050 60 10\n
Ecruocker
Ecru ochre
\n
\n
\n RAL 050 60 20\n
Karamellbraun
Caramel brown
\n
\n
\n RAL 050 60 30\n
Mittelbraun
Medium brown
\n
\n
\n RAL 050 60 40\n
Apricotbraun
Apricot brown
\n
\n
\n RAL 050 60 50\n
Orangegelb
Orange yellow
\n
\n
\n RAL 050 60 60\n
Kamelrot
Camel red
\n
\n
\n RAL 050 60 70\n
Karottenorange
Carrot orange
\n
\n
\n RAL 050 60 80\n
Gerberarot
Gerbera red
\n
\n
\n RAL 050 70 10\n
Bambusbeige
Bamboo beige
\n
\n
\n RAL 050 70 20\n
Bernsteingrau
Amber grey
\n
\n
\n RAL 050 70 30\n
Sienaocker
Sienna ochre
\n
\n
\n RAL 050 70 40\n
Amberhellorange
Light amber orange
\n
\n
\n RAL 050 70 50\n
Melonenrot
Melon red
\n
\n
\n RAL 050 70 60\n
Mangoorange
Mango orange
\n
\n
\n RAL 050 80 10\n
Blasssiena
Pale sienna
\n
\n
\n RAL 050 80 20\n
Sanftorange
Soft orange
\n
\n
\n RAL 050 80 30\n
Fahlorange
Pallid orange
\n
\n
\n RAL 050 85 05\n
Meersand
Ocean sand
\n
\n
\n RAL 050 85 10\n
Reinbeige
Pure beige
\n
\n
\n RAL 050 85 20\n
Biscuitcreme
Biscuit cream
\n
\n
\n RAL 050 90 05\n
Eierschalenweiß
Eggshell white
\n
\n
\n RAL 050 90 10\n
Hellpfirsichrosé
Light peach rose
\n
\n
\n RAL 050 93 05\n
Tüllweiß
Tulle white
\n
\n
\n RAL 060 20 05\n
Industrieschwarz
Industrial black
\n
\n
\n RAL 060 30 05\n
Karosseriegrau
Vehicle body grey
\n
\n
\n RAL 060 30 10\n
Nutriafellbraun
Nutria fur brown
\n
\n
\n RAL 060 30 20\n
Torfbraun
Peat brown
\n
\n
\n RAL 060 30 27\n
Zinnsteinbraun
Cassiterite brown
\n
\n
\n RAL 060 40 05\n
Zinkgrau
Zinc grey
\n
\n
\n RAL 060 40 10\n
Mooreichengrau
Moor oak grey
\n
\n
\n RAL 060 40 20\n
Kaffeebohnenbraun
Coffee bean brown
\n
\n
\n RAL 060 40 30\n
Brasilbraun
Brazilian brown
\n
\n
\n RAL 060 40 40\n
Platanenbraun
Plane brown
\n
\n
\n RAL 060 50 05\n
Chinchillagrau
Chinchilla grey
\n
\n
\n RAL 060 50 10\n
Sandsteingrau
Sandstone grey
\n
\n
\n RAL 060 50 20\n
Champignonbraun
Mushroom brown
\n
\n
\n RAL 060 50 30\n
Senfbraun
Mustard brown
\n
\n
\n RAL 060 50 40\n
Kamelbraun
Camel brown
\n
\n
\n RAL 060 50 50\n
Dattelfruchtbraun
Date fruit brown
\n
\n
\n RAL 060 50 60\n
Rüsterbraunrot
Elm brown red
\n
\n
\n RAL 060 50 70\n
Trockenlehm
Dry clay
\n
\n
\n RAL 060 60 05\n
Estrichgrau
Screed grey
\n
\n
\n RAL 060 60 10\n
Eichenbraun
Oak brown
\n
\n
\n RAL 060 60 20\n
Topashellocker
Light topaz ochre
\n
\n
\n RAL 060 60 30\n
Cognacbraun
Cognac brown
\n
\n
\n RAL 060 60 40\n
Ahornsirupbraun
Maple syrup brown
\n
\n
\n RAL 060 60 50\n
Kurkumarot
Turmeric red
\n
\n
\n RAL 060 60 60\n
Bitterorange
Bitter orange
\n
\n
\n RAL 060 60 70\n
Goldorange
Gold orange
\n
\n
\n RAL 060 60 80\n
Akzentorange
Accent orange
\n
\n
\n RAL 060 70 05\n
Zementgreige
Cement greige
\n
\n
\n RAL 060 70 10\n
Kittgrau
Putty grey
\n
\n
\n RAL 060 70 20\n
Erdnusscreme
Peanut butter
\n
\n
\n RAL 060 70 30\n
Pfirsichgelb
Peach yellow
\n
\n
\n RAL 060 70 40\n
Kerzengelb
Candle yellow
\n
\n
\n RAL 060 70 50\n
Topasgelb
Topaz yellow
\n
\n
\n RAL 060 70 60\n
Melonenorange
Melon orange
\n
\n
\n RAL 060 70 70\n
Indischgelb
Indian yellow
\n
\n
\n RAL 060 80 05\n
Chamoishellbeige
Light chamois beige
\n
\n
\n RAL 060 80 10\n
Sanftgreige
Soft greige
\n
\n
\n RAL 060 80 20\n
Keksbeige
Biscuit beige
\n
\n
\n RAL 060 80 30\n
Mildorange
Mild orange
\n
\n
\n RAL 060 80 40\n
Apricotorange
Apricot orange
\n
\n
\n RAL 060 85 05\n
Champagnerrosé
Champagne rose
\n
\n
\n RAL 060 85 10\n
Maismehlbeige
Cornmeal beige
\n
\n
\n RAL 060 85 20\n
Teiggelb
Dough yellow
\n
\n
\n RAL 060 85 30\n
Safranhellorange
Light saffron orange
\n
\n
\n RAL 060 90 05\n
Kornweiß
Grain white
\n
\n
\n RAL 060 90 10\n
Vanillecreme
Vanilla cream
\n
\n
\n RAL 060 90 15\n
Aprikosencreme
Apricot cream
\n
\n
\n RAL 060 93 05\n
Wollweiß
Wool white
\n
\n
\n RAL 070 30 10 \n
Mineralbraun
Mineral brown
\n
\n
\n RAL 070 30 20\n
Buchenbraun
Beech brown
\n
\n
\n RAL 070 40 10\n
Nerzfellbraun
Mink brown
\n
\n
\n RAL 070 40 20\n
Elsbeerenbraun
Huckleberry brown
\n
\n
\n RAL 070 40 30\n
Ackerbraun
Arable brown
\n
\n
\n RAL 070 40 40\n
Herbstgold
Autumn gold
\n
\n
\n RAL 070 50 10\n
Sarukgrau
Saruk grey
\n
\n
\n RAL 070 50 20\n
Aschgold
Ash gold
\n
\n
\n RAL 070 50 30\n
Löwenmähnenblond
Lion's mane blonde
\n
\n
\n RAL 070 50 40\n
Altgold
Antique gold
\n
\n
\n RAL 070 50 50\n
Bühnengold
Stage gold
\n
\n
\n RAL 070 50 55\n
Theatergold
Theatre gold
\n
\n
\n RAL 070 60 10\n
Hellmahagoni
Light mahogany
\n
\n
\n RAL 070 60 20\n
Dunkelblond
Dark blond
\n
\n
\n RAL 070 60 30\n
Eichenhellbraun
Light oak brown
\n
\n
\n RAL 070 60 40\n
Kornbraun
Grain brown
\n
\n
\n RAL 070 60 50\n
Schlammgelb
Mud yellow
\n
\n
\n RAL 070 60 60\n
Senfgelb
Mustard yellow
\n
\n
\n RAL 070 60 70\n
Sanddorngelbbraun
Sea buckthorn yellow brown
\n
\n
\n RAL 070 60 75\n
Herbstlauborange
Autumn leaf orange
\n
\n
\n RAL 070 70 10\n
Ingwergraugelb
Ginger grey yellow
\n
\n
\n RAL 070 70 20\n
Eschehellbraun
Light ash brown
\n
\n
\n RAL 070 70 30\n
Goldbeige
Golden beige
\n
\n
\n RAL 070 70 40\n
Dechantsbirnengelb
Dechant pear yellow
\n
\n
\n RAL 070 70 50\n
Honigwabengelb
Honeycomb yellow
\n
\n
\n RAL 070 70 60\n
Ginstergelborange
Gorse yellow orange
\n
\n
\n RAL 070 70 70\n
Neapelgelb
Naples yellow
\n
\n
\n RAL 070 70 80\n
Safrangold
Saffron gold
\n
\n
\n RAL 070 80 10\n
Flachsbeige
Flax beige
\n
\n
\n RAL 070 80 20\n
Butterblumengelb
Buttercup yellow
\n
\n
\n RAL 070 80 30\n
Goldhaferfarben
Golden oat coloured
\n
\n
\n RAL 070 80 40\n
Aprikosengelb
Apricot yellow
\n
\n
\n RAL 070 80 50\n
Warmapricot
Warm apricot
\n
\n
\n RAL 070 80 60\n
Goldregengelb
Golden rain yellow
\n
\n
\n RAL 070 85 05\n
Mandelkernbeige
Almond beige
\n
\n
\n RAL 070 85 10\n
Silberdistelbeige
Silver thistle beige
\n
\n
\n RAL 070 85 20\n
Sandelholzbeige
Sandalwood beige
\n
\n
\n RAL 070 85 30\n
Haarblond
Hair blonde
\n
\n
\n RAL 070 90 05\n
Offwhite
Off white
\n
\n
\n RAL 070 90 10\n
Hellmais
Light corn
\n
\n
\n RAL 070 90 20\n
Kreidegelb
Chalk yellow
\n
\n
\n RAL 070 93 05\n
Anemonenweiß
Anemone white
\n
\n
\n RAL 075 40 10\n
Baumrindenbraun
Tree bark brown
\n
\n
\n RAL 075 40 20\n
Kümmelfruchtbraun
Caraway brown
\n
\n
\n RAL 075 40 30\n
Borkenbraun
Bark brown
\n
\n
\n RAL 075 40 38\n
Eidechsenbraun
Lizard brown
\n
\n
\n RAL 075 50 10\n
Roggenteigbraun
Rye dough brown
\n
\n
\n RAL 075 50 20\n
Chinazimt
China cinnamon
\n
\n
\n RAL 075 50 30\n
Chamottegelb
Grog yellow
\n
\n
\n RAL 075 50 40\n
Bernsteinbraun
Amber brown
\n
\n
\n RAL 075 50 50\n
Zimtbraun
Cinnamon brown
\n
\n
\n RAL 075 50 58\n
Kreuzkümmelocker
Cumin ochre
\n
\n
\n RAL 075 60 10\n
Kittgelb
Putty yellow
\n
\n
\n RAL 075 60 20\n
Walnussschalenbraun
Walnut shell brown
\n
\n
\n RAL 075 60 30\n
Lehmocker
Clay ochre
\n
\n
\n RAL 075 60 40\n
Funchalgelb
Funchal yellow
\n
\n
\n RAL 075 60 50\n
Mangobraun
Mango brown
\n
\n
\n RAL 075 60 60\n
Kurkumabraun
Turmeric brown
\n
\n
\n RAL 075 60 70\n
Bambusbraun
Bamboo brown
\n
\n
\n RAL 075 70 10\n
Flachsfasergrau
Flax fibre grey
\n
\n
\n RAL 075 70 20\n
Kürbishellbraun
Light pumpkin brown
\n
\n
\n RAL 075 70 30\n
Golddistelgelb
Golden thistle yellow
\n
\n
\n RAL 075 70 40\n
Backsteingelb
Brick yellow
\n
\n
\n RAL 075 70 50\n
Bambustiefgelb
Deep bamboo yellow
\n
\n
\n RAL 075 70 60\n
Intensivgelb
Intense yellow
\n
\n
\n RAL 075 70 70\n
Kürbisgelb
Pumpkin yellow
\n
\n
\n RAL 075 70 80\n
Herbstgelb
Autumn yellow
\n
\n
\n RAL 075 80 10\n
Kalkbeige
Chalk beige
\n
\n
\n RAL 075 80 20\n
Hellweizengelb
Light corn yellow
\n
\n
\n RAL 075 80 30\n
Dunkelgelb
Dark yellow
\n
\n
\n RAL 075 80 40\n
Eschengelb
Ash yellow
\n
\n
\n RAL 075 80 50\n
Orientgelb
Orient yellow
\n
\n
\n RAL 075 80 60\n
Kutschengelb
Carriage yellow
\n
\n
\n RAL 075 85 10\n
Seerosenweiß
Water lily white
\n
\n
\n RAL 075 85 20\n
Bananeneiscreme
Banana ice cream
\n
\n
\n RAL 075 85 30\n
Ahornbeige
Maple beige
\n
\n
\n RAL 075 85 40\n
Goldrutengelb
Goldenrod yellow
\n
\n
\n RAL 075 90 10\n
Süßspeisecreme
Dessert cream
\n
\n
\n RAL 075 90 20\n
Butterweiß
Butter white
\n
\n
\n RAL 075 93 05\n
Vanilleweiß
Vanilla white
\n
\n
\n RAL 080 20 05\n
Nachtbraunschwarz
Night brown black
\n
\n
\n RAL 080 20 10\n
Vanilleschotenbraun
Vanilla bean brown
\n
\n
\n RAL 080 30 05\n
Erdschwarz
Earth black
\n
\n
\n RAL 080 30 10\n
Olivschwarz
Olive black
\n
\n
\n RAL 080 30 20\n
Nelkengelbbraun
Clove yellow brown
\n
\n
\n RAL 080 30 26\n
Raucheichenbraun
Smoked oak brown
\n
\n
\n RAL 080 40 05\n
Bürograu
Office grey
\n
\n
\n RAL 080 40 10\n
Steinbraun
Stone brown
\n
\n
\n RAL 080 40 20\n
Pimentkornbraun
Pimento grain brown
\n
\n
\n RAL 080 40 30\n
Ockergrün
Ochre green
\n
\n
\n RAL 080 40 40\n
Herbstlaubbraun
Autumn leaf brown
\n
\n
\n RAL 080 50 05\n
Dämmergrau
Dusk grey
\n
\n
\n RAL 080 50 10\n
Roggenbraun
Rye brown
\n
\n
\n RAL 080 50 20\n
Graugelb
Greyish yellow
\n
\n
\n RAL 080 50 30\n
Chiligrün
Chili green
\n
\n
\n RAL 080 50 40\n
Schmutzgelb
Dirt yellow
\n
\n
\n RAL 080 50 50\n
Gamsgelb
Chamois yellow
\n
\n
\n RAL 080 60 05\n
Flanellgrau
Flannel grey
\n
\n
\n RAL 080 60 10\n
Hellkhaki
Light khaki
\n
\n
\n RAL 080 60 20\n
Dinkelkornbraun
Spelt grain brown
\n
\n
\n RAL 080 60 30\n
Goldquarzocker
Golden quartz ochre
\n
\n
\n RAL 080 60 40\n
Bambusgelb
Bamboo yellow
\n
\n
\n RAL 080 60 50\n
Messinggelb
Brass yellow
\n
\n
\n RAL 080 60 60\n
Feigensenfgelb
Fig mustard yellow
\n
\n
\n RAL 080 60 70\n
Gelbgold
Yellow gold
\n
\n
\n RAL 080 70 05\n
Knoblauchbeige
Garlic beige
\n
\n
\n RAL 080 70 10\n
Feingreige
Fine greige
\n
\n
\n RAL 080 70 20\n
Gelbbraun
Yellow brown
\n
\n
\n RAL 080 70 30\n
Senfkornbeige
Mustard seed beige
\n
\n
\n RAL 080 70 40\n
Diamantgelb
Diamond yellow
\n
\n
\n RAL 080 70 50\n
Antikmessing
Antique brass
\n
\n
\n RAL 080 70 60\n
Zucchinigelb
Courgette yellow
\n
\n
\n RAL 080 70 70\n
Grapefruitgelb
Grapefruit yellow
\n
\n
\n RAL 080 70 80\n
Sonnenblumengelb
Sunflower yellow
\n
\n
\n RAL 080 70 88\n
Arnikagelb
Arnica yellow
\n
\n
\n RAL 080 80 05\n
Glimmerhellgrau
Micaceous light grey
\n
\n
\n RAL 080 80 10\n
Pastellsand
Pastel sand
\n
\n
\n RAL 080 80 20\n
Naturreisbeige
Natural rice beige
\n
\n
\n RAL 080 80 30\n
Gelbbeige
Yellow beige
\n
\n
\n RAL 080 80 40\n
Strohgelb
Straw yellow
\n
\n
\n RAL 080 80 50\n
Mirabellengelb
Mirabelle yellow
\n
\n
\n RAL 080 80 60\n
Vollgelb
Full yellow
\n
\n
\n RAL 080 80 70\n
Birnengelb
Pear yellow
\n
\n
\n RAL 080 80 80\n
Brandgelb
Fire yellow
\n
\n
\n RAL 080 80 90\n
Sommergelb
Summer yellow
\n
\n
\n RAL 080 85 05\n
Weizenmehlweiß
Wheat flour white
\n
\n
\n RAL 080 85 10\n
Zwiebelweiß
Onion white
\n
\n
\n RAL 080 85 20\n
Nashibirnenbeige
Nashi pear beige
\n
\n
\n RAL 080 85 30\n
Vespagelb
Vespa yellow
\n
\n
\n RAL 080 85 40\n
Blätterteiggelb
Puff pastry yellow
\n
\n
\n RAL 080 90 05\n
Japanweiß
Japanese white
\n
\n
\n RAL 080 90 10\n
Champignonweiß
Mushroom white
\n
\n
\n RAL 080 90 20\n
Macadamiabeige
Macadamia beige
\n
\n
\n RAL 080 90 30\n
Meerrettichgelb
Horseradish yellow
\n
\n
\n RAL 080 93 05\n
Milchsternweiß
Milk star white
\n
\n
\n RAL 085 40 10\n
Mineralgrün
Mineral green
\n
\n
\n RAL 085 40 20\n
Khakigrün
Khaki green
\n
\n
\n RAL 085 40 30\n
Moosbraun
Moss brown
\n
\n
\n RAL 085 50 10\n
Korianderocker
Coriander ochre
\n
\n
\n RAL 085 50 20\n
Pyritschiefergrün
Pyrite slate green
\n
\n
\n RAL 085 50 30\n
Sepiagelb
Sepia yellow
\n
\n
\n RAL 085 50 40\n
Sumpfgrün
Marshy green
\n
\n
\n RAL 085 50 50\n
Honiggelbgrün
Honey yellow green
\n
\n
\n RAL 085 60 10\n
Mattoliv
Matte olive
\n
\n
\n RAL 085 60 20\n
Teichgrün
Pond green
\n
\n
\n RAL 085 60 30\n
Holzgrün
Wood green
\n
\n
\n RAL 085 60 40\n
Flechtengrün
Lichen green
\n
\n
\n RAL 085 60 50\n
Mineralumbra
Mineral umber
\n
\n
\n RAL 085 60 60\n
Lodengelb
Loden yellow
\n
\n
\n RAL 085 70 10\n
Naturbastgreige
Raffia greige
\n
\n
\n RAL 085 70 20\n
Feldspatgrau
Feldspar grey
\n
\n
\n RAL 085 70 30\n
Heugelb
Hay yellow
\n
\n
\n RAL 085 70 40\n
Winterbirnenbeige
Winter pear beige
\n
\n
\n RAL 085 70 50\n
Herbstapfelgelb
Autumn apple yellow
\n
\n
\n RAL 085 70 60\n
Pitmastonbirnengelb
Pitmaston pear yellow
\n
\n
\n RAL 085 70 70\n
Strohblumengelb
Immortelle yellow
\n
\n
\n RAL 085 70 75\n
Goldberyllgelb
Golden beryl yellow
\n
\n
\n RAL 085 80 10\n
Samtbeige
Velvet beige
\n
\n
\n RAL 085 80 20\n
Mineralbeige
Mineral beige
\n
\n
\n RAL 085 80 30\n
Mondscheingelb
Moonlight yellow
\n
\n
\n RAL 085 80 40\n
Tafelbirnengelb
Table pear yellow
\n
\n
\n RAL 085 80 50\n
Fruchtgelb
Fruit yellow
\n
\n
\n RAL 085 80 60\n
Adonisröschengelb
Adonis rose yellow
\n
\n
\n RAL 085 80 70\n
Berberitzengelb
Barberry yellow
\n
\n
\n RAL 085 80 80\n
Löwenzahngelb
Dandelion yellow
\n
\n
\n RAL 085 80 85\n
Dekorgelb
Decor yellow
\n
\n
\n RAL 085 85 10\n
Alabasterweiß
Alabaster white
\n
\n
\n RAL 085 85 20\n
Hellblond
Light blond
\n
\n
\n RAL 085 85 30\n
Weidenblütengelb
Willow-flower yellow
\n
\n
\n RAL 085 85 40\n
Ingwerhellgelb
Light ginger yellow
\n
\n
\n RAL 085 90 10\n
Tulpenweiß
Tulip white
\n
\n
\n RAL 085 90 20\n
Alpenbeerengelb
Alpine berry yellow
\n
\n
\n RAL 085 90 30\n
Porzellanerdengelb
China clay yellow
\n
\n
\n RAL 085 93 05\n
Altweiß
Vintage white
\n
\n
\n RAL 090 30 10\n
Limonitbraun
Limonite brown
\n
\n
\n RAL 090 30 20\n
Borkengrün
Bark green
\n
\n
\n RAL 090 40 10\n
Wackersteinbraun
Boulder brown
\n
\n
\n RAL 090 40 20\n
Pflaumengrün
Plum green
\n
\n
\n RAL 090 40 30\n
Weinblättergrün
Vine leaf green
\n
\n
\n RAL 090 50 10\n
Graphitgraugrün
Graphite grey green
\n
\n
\n RAL 090 50 20\n
Pestogrün
Pesto green
\n
\n
\n RAL 090 50 30\n
Riesenkaktusgrün
Giant cactus green
\n
\n
\n RAL 090 50 40\n
Auberginengrün
Aubergine green
\n
\n
\n RAL 090 60 10\n
Austerngrau
Oyster grey
\n
\n
\n RAL 090 60 20\n
Manzanillaoliv
Manzanilla olive
\n
\n
\n RAL 090 60 30\n
Tarnoliv
Camouflage olive
\n
\n
\n RAL 090 60 40\n
Lorbeergrün
Laurel green
\n
\n
\n RAL 090 60 50\n
Fahlgrün
Faint green
\n
\n
\n RAL 090 60 60\n
Titanitgelb
Titanite yellow
\n
\n
\n RAL 090 70 10\n
Staubgelb
Dusty yellow
\n
\n
\n RAL 090 70 20\n
Barbadosbeige
Barbados beige
\n
\n
\n RAL 090 70 30\n
Rhabarberblattgrün
Rhubarb leaf green
\n
\n
\n RAL 090 70 40\n
Igelkaktusgelbgrün
Hedgehog cactus yellow green
\n
\n
\n RAL 090 70 50\n
Stachelbeergelb
Gooseberry yellow
\n
\n
\n RAL 090 70 60\n
Knospengrün
Bud green
\n
\n
\n RAL 090 70 70\n
Birkenkätzchengelb
Catkin yellow
\n
\n
\n RAL 090 70 80\n
Prehnitgelb
Prehnite yellow
\n
\n
\n RAL 090 80 10\n
Hellbeige
Light beige
\n
\n
\n RAL 090 80 20\n
Champagnerbeige
Champagne beige
\n
\n
\n RAL 090 80 30\n
Zitronensorbetgelb
Lemon sorbet yellow
\n
\n
\n RAL 090 80 40\n
Blütengelb
Blossom yellow
\n
\n
\n RAL 090 80 50\n
Tasmanhoniggelb
Tasman honey yellow
\n
\n
\n RAL 090 80 60\n
Neugelb
New yellow
\n
\n
\n RAL 090 80 70\n
Fashiongelb
Fashion yellow
\n
\n
\n RAL 090 80 80\n
Plakatgelb
Poster yellow
\n
\n
\n RAL 090 80 90\n
Kontrastgelb
Contrasting yellow
\n
\n
\n RAL 090 85 05\n
Pfefferweiß
Pepper white
\n
\n
\n RAL 090 85 10\n
Paellanaturweiß
Paella natural white
\n
\n
\n RAL 090 85 20\n
Cidregelb
Cider yellow
\n
\n
\n RAL 090 85 30\n
Palmzuckergelb
Palm sugar yellow
\n
\n
\n RAL 090 85 40\n
Märzgelb
March yellow
\n
\n
\n RAL 090 85 50\n
Pirolgelb
Oriole yellow
\n
\n
\n RAL 090 90 05\n
Marzipanweiß
Marzipan white
\n
\n
\n RAL 090 90 10\n
Primelweiß
Primrose white
\n
\n
\n RAL 090 90 20\n
Cremegelb
Cream yellow
\n
\n
\n RAL 090 90 30\n
Wachsgelb
Wax yellow
\n
\n
\n RAL 090 90 40\n
Zitronencreme
Lemon cream
\n
\n
\n RAL 090 90 50\n
Tigergelb
Tiger yellow
\n
\n
\n RAL 090 90 60\n
Sonnenröschengelb
Sunrose yellow
\n
\n
\n RAL 090 93 05\n
Sahneweiß
Cream white
\n
\n
\n RAL 095 40 10\n
Schattengrün
Shady green
\n
\n
\n RAL 095 40 20\n
Waldgrün
Forest green
\n
\n
\n RAL 095 40 30\n
Bohnengrün
Bean green
\n
\n
\n RAL 095 50 10\n
Stumpfoliv
Dull olive
\n
\n
\n RAL 095 50 20\n
Kohlgrün
Cabbage green
\n
\n
\n RAL 095 50 30\n
Kaperngrün
Caper green
\n
\n
\n RAL 095 50 40\n
Gartensalatgrün
Garden lettuce green
\n
\n
\n RAL 095 50 50\n
Artischockengrün
Artichoke green
\n
\n
\n RAL 095 60 10\n
Bleichgrüngrau
Pale green grey
\n
\n
\n RAL 095 60 20\n
Blassgrün
Pale green
\n
\n
\n RAL 095 60 30\n
Zypressengrün
Cypress green
\n
\n
\n RAL 095 60 40\n
Traubengrün
Grape green
\n
\n
\n RAL 095 60 50\n
Stachelbeergrün
Gooseberry green
\n
\n
\n RAL 095 60 60\n
Guavenfruchtgrün
Guava green
\n
\n
\n RAL 095 60 70\n
Romanescogrün
Romaine green
\n
\n
\n RAL 095 70 10\n
Sandgrau
Sand grey
\n
\n
\n RAL 095 70 20\n
Krokodilgrün
Crocodile green
\n
\n
\n RAL 095 70 30\n
Chicoréegrün
Chicory green
\n
\n
\n RAL 095 70 40\n
Bananengrün
Banana green
\n
\n
\n RAL 095 70 50\n
Sternfruchtgelbgrün
Star fruit yellow green
\n
\n
\n RAL 095 70 60\n
Papayagelbgrün
Papaya yellow green
\n
\n
\n RAL 095 70 70\n
Bronzegrün
Bronze green
\n
\n
\n RAL 095 80 10\n
Saphirlichtgelb
Sapphire light yellow
\n
\n
\n RAL 095 80 20\n
Blassoliv
Pale olive
\n
\n
\n RAL 095 80 30\n
Spargelgelb
Asparagus yellow
\n
\n
\n RAL 095 80 40\n
Erbsengrün
Pea green
\n
\n
\n RAL 095 80 50\n
Williamsbirnengelb
Williams pear yellow
\n
\n
\n RAL 095 80 60\n
Grünlichgelb
Greenish yellow
\n
\n
\n RAL 095 80 70\n
Mimosengelb
Mimosa yellow
\n
\n
\n RAL 095 80 80\n
Sorbetgelb
Sorbet yellow
\n
\n
\n RAL 095 85 10\n
Schwarzwurzelweiß
Salsify white
\n
\n
\n RAL 095 85 20\n
Trübhellgelb
Dull light yellow
\n
\n
\n RAL 095 85 30\n
Blattgelb
Leaf yellow
\n
\n
\n RAL 095 85 40\n
Naturgelb
Natural yellow
\n
\n
\n RAL 095 85 50\n
Sportgelb
Sport yellow
\n
\n
\n RAL 095 90 10\n
Atlasweiß
Atlas white
\n
\n
\n RAL 095 90 20\n
Perlgelb
Pearl yellow
\n
\n
\n RAL 095 90 30\n
Zitroneneisgelb
Lemon ice cream yellow
\n
\n
\n RAL 095 90 40\n
Frischgelb
Fresh yellow
\n
\n
\n RAL 095 90 50\n
Leuchtendgelb
Luminescent yellow
\n
\n
\n RAL 095 90 59\n
Dynamischgelb
Dynamic yellow
\n
\n
\n RAL 095 93 05\n
Kreppseidenweiß
Crepe silk white
\n
\n
\n RAL 100 20 05\n
Nachtgrün
Night green
\n
\n
\n RAL 100 30 05\n
Vulkansteingrün
Volcanic stone green
\n
\n
\n RAL 100 30 10\n
Zinnobergrün
Vermilion green
\n
\n
\n RAL 100 30 20\n
Uniformgrün
Uniform green
\n
\n
\n RAL 100 40 05\n
Taubengrau
Doves grey
\n
\n
\n RAL 100 40 10\n
Schlickgrün
Slick green
\n
\n
\n RAL 100 40 20\n
Brokkoligrün
Broccoli green
\n
\n
\n RAL 100 40 30\n
Hochwaldgrün
High forest green
\n
\n
\n RAL 100 40 40\n
Rosenkohlgrün
Brussels sprout green
\n
\n
\n RAL 100 50 05\n
Waldbodenkhaki
Forest floor khaki
\n
\n
\n RAL 100 50 10\n
Kiebitzgraugrün
Lapwing grey green
\n
\n
\n RAL 100 50 20\n
Grünspechtoliv
Green woodpecker olive
\n
\n
\n RAL 100 50 30\n
Steppengrün
Steppe green
\n
\n
\n RAL 100 50 40\n
Faiencegrün
Faience green
\n
\n
\n RAL 100 50 50\n
Werkzeuggrün
Tool green
\n
\n
\n RAL 100 60 05\n
Rauchgraugrün
Smoky grey green
\n
\n
\n RAL 100 60 10\n
Olivingrau
Olivine grey
\n
\n
\n RAL 100 60 20\n
Grauspechtgrün
Grey-headed woodpecker green
\n
\n
\n RAL 100 60 30\n
Kardamomgrün
Cardamom green
\n
\n
\n RAL 100 60 40\n
Salatgrün
Lettuce green
\n
\n
\n RAL 100 60 50\n
Artnouveaugrün
Art Nouveau green
\n
\n
\n RAL 100 60 60\n
Smoothiegrün
Smoothie green
\n
\n
\n RAL 100 70 05\n
Rauchweiß
Smoky white
\n
\n
\n RAL 100 70 10\n
Anisgraugelb
Anise grey yellow
\n
\n
\n RAL 100 70 20\n
Sandbraun
Sand brown
\n
\n
\n RAL 100 70 30\n
Hippiegrün
Hippie green
\n
\n
\n RAL 100 70 40\n
Lindgrün
Linden green
\n
\n
\n RAL 100 70 50\n
Dillgrün
Dill green
\n
\n
\n RAL 100 70 60\n
Neugrün
New green
\n
\n
\n RAL 100 80 05\n
Naturgrau
Natural grey
\n
\n
\n RAL 100 80 10\n
Blassbeige
Pale beige
\n
\n
\n RAL 100 80 20\n
Weichgrün
Soft green
\n
\n
\n RAL 100 80 30\n
Silbergrün
Silver green
\n
\n
\n RAL 100 80 40\n
Märztulpengrün
March tulip green
\n
\n
\n RAL 100 80 50\n
Leichtoliv
Light olive
\n
\n
\n RAL 100 80 60\n
Reklamegrün
Advertisement green
\n
\n
\n RAL 100 80 70\n
LEDgrün
LED green
\n
\n
\n RAL 100 80 80\n
Märzgrün
March green
\n
\n
\n RAL 100 85 05\n
Sellerieweiß
Celery white
\n
\n
\n RAL 100 85 10\n
Palmherzencreme
Palm heart cream
\n
\n
\n RAL 100 85 20\n
Beigegrün
Beige green
\n
\n
\n RAL 100 85 30\n
Kristallgelb
Crystal yellow
\n
\n
\n RAL 100 90 05\n
Brillantgelb
Brilliant yellow
\n
\n
\n RAL 100 90 10\n
Holunderweiß
Elderberry white
\n
\n
\n RAL 100 90 20\n
Designercremegelb
Designer cream yellow
\n
\n
\n RAL 100 90 30\n
Buchsbaumgelb
Boxwood yellow
\n
\n
\n RAL 100 90 40\n
Primelgelb
Primrose yellow
\n
\n
\n RAL 100 90 50\n
Frühlingsgelb
Spring yellow
\n
\n
\n RAL 100 93 05\n
Nebelweiß
Fog white
\n
\n
\n RAL 110 20 10\n
Metallbaugrün
Metal construction green
\n
\n
\n RAL 110 30 10\n
Dunkelolivgrün
Dark olive green
\n
\n
\n RAL 110 30 20\n
Norialgenschwarzgrün
Nori seaweed green
\n
\n
\n RAL 110 40 10\n
Stumpfgrün
Stump green
\n
\n
\n RAL 110 40 20\n
Antikgrün
Antique green
\n
\n
\n RAL 110 40 30\n
Gärtnergrün
Gardener green
\n
\n
\n RAL 110 40 40\n
Kirchnergrün
Kirchner green
\n
\n
\n RAL 110 50 10\n
Novembergrün
November green
\n
\n
\n RAL 110 50 20\n
Alexandritgrün
Alexandrite green
\n
\n
\n RAL 110 50 30\n
Pflanzengrün
Plant green
\n
\n
\n RAL 110 50 40\n
Reifegrün
Ripe green
\n
\n
\n RAL 110 50 50\n
Portugalgrün
Portuguese green
\n
\n
\n RAL 110 50 55\n
Flaggengrün
Flag green
\n
\n
\n RAL 110 60 10\n
Graugrün
Grey green
\n
\n
\n RAL 110 60 20\n
Erbsenschotengrün
Peapod green
\n
\n
\n RAL 110 60 30\n
Indischgrün
Indian green
\n
\n
\n RAL 110 60 40\n
Blatterbsengrün
Winterpea green
\n
\n
\n RAL 110 60 50\n
Airlinegrün
Airline green
\n
\n
\n RAL 110 60 60\n
Waldmeistergrün
Woodruff green
\n
\n
\n RAL 110 60 65\n
Ampelgrün
Traffic light green
\n
\n
\n RAL 110 70 10\n
Chinateegrün
Chinese tea green
\n
\n
\n RAL 110 70 20\n
Wandgrün
Wall green
\n
\n
\n RAL 110 70 30\n
Wasabigrün
Wasabi green
\n
\n
\n RAL 110 70 40\n
Aprilgrün
April green
\n
\n
\n RAL 110 70 50\n
Delaunaygrün
Delaunay green
\n
\n
\n RAL 110 70 60\n
Limettengrün
Lime green
\n
\n
\n RAL 110 70 70\n
Chlorophyllgrün
Chlorophyll green
\n
\n
\n RAL 110 70 77\n
Markergrün
Marker green
\n
\n
\n RAL 110 80 10\n
Frühlingsgrau
Spring grey
\n
\n
\n RAL 110 80 20\n
Minzeisgrün
Mint ice green
\n
\n
\n RAL 110 80 30\n
Lenzgrün
Springtide green
\n
\n
\n RAL 110 80 40\n
Limettensorbetgrün
Lime sorbet green
\n
\n
\n RAL 110 80 50\n
Ostergrün
Easter green
\n
\n
\n RAL 110 80 60\n
Clowngrün
Clown green
\n
\n
\n RAL 110 80 70\n
Saftgrün
Juice green
\n
\n
\n RAL 110 85 10\n
Veltlinerweiß
Veltliner white
\n
\n
\n RAL 110 85 20\n
Kohlrabigrün
Kohlrabi green
\n
\n
\n RAL 110 85 30\n
Burgundergrau
Burgundy grey
\n
\n
\n RAL 110 85 40\n
Wachsgrün
Wax green
\n
\n
\n RAL 110 85 50\n
Sprossengrün
Sprout green
\n
\n
\n RAL 110 90 05\n
Baumwollweiß
Cotton white
\n
\n
\n RAL 110 90 10\n
Farnhellgrün
Light fern green
\n
\n
\n RAL 110 90 20\n
Lilienduftgrün
Lily scent green
\n
\n
\n RAL 110 90 30\n
Kiwieisgrün
Kiwi ice cream green
\n
\n
\n RAL 110 90 40\n
Limettensaftgrün
Lime juice green
\n
\n
\n RAL 110 93 05\n
Bastweiß
Raffia white
\n
\n
\n RAL 110 96 02\n
Waschweiß
Laundry white
\n
\n
\n RAL 120 30 05\n
Racinggrün
Racing green
\n
\n
\n RAL 120 30 10\n
Landhausgrün
Country house green
\n
\n
\n RAL 120 30 20\n
Avocadodunkelgrün
Avocado dark green
\n
\n
\n RAL 120 40 05\n
Englischgrün
English green
\n
\n
\n RAL 120 40 10\n
Mandelgrün
Almond green
\n
\n
\n RAL 120 40 20\n
Kaktusgrün
Cactus green
\n
\n
\n RAL 120 40 30\n
Basilikumgrün
Basil green
\n
\n
\n RAL 120 40 40\n
Paprikagrün
Pepper green
\n
\n
\n RAL 120 50 05\n
Rauchgrün
Smoke green
\n
\n
\n RAL 120 50 10\n
Samtgrüngrau
Velvet green grey
\n
\n
\n RAL 120 50 20\n
Papageiengrün
Parrot green
\n
\n
\n RAL 120 50 30\n
Quarzgrün
Quartz green
\n
\n
\n RAL 120 50 40\n
Heckengrün
Hedge green
\n
\n
\n RAL 120 50 50\n
Birkenblattgrün
Birch leaf green
\n
\n
\n RAL 120 60 05\n
Bläulichgrau
Bluish grey
\n
\n
\n RAL 120 60 10\n
Lavendelblattgrün
Lavender leaf green
\n
\n
\n RAL 120 60 20\n
Mostbirnengrün
Cider pear green
\n
\n
\n RAL 120 60 30\n
Vesuviangrün
Vesuvian green
\n
\n
\n RAL 120 60 40\n
Bambusgrasgrün
Bamboo grass green
\n
\n
\n RAL 120 60 50\n
Aloeveragrün
Aloe vera green
\n
\n
\n RAL 120 60 60\n
Mambagrün
Mamba green
\n
\n
\n RAL 120 60 63\n
Leuchtendgrün
Luminescent green
\n
\n
\n RAL 120 70 05\n
Lorbeergrau
Laurel grey
\n
\n
\n RAL 120 70 10\n
Nilgrün
Nile green
\n
\n
\n RAL 120 70 20\n
Filigrangrün
Filigree green
\n
\n
\n RAL 120 70 30\n
Serpentingrün
Serpentine green
\n
\n
\n RAL 120 70 40\n
Birkenhellgrün
Light birch green
\n
\n
\n RAL 120 70 50\n
Waldrebengrün
Clematis green
\n
\n
\n RAL 120 70 60\n
Turmalingrün
Tourmaline green
\n
\n
\n RAL 120 70 70\n
Cocktailgrün
Cocktail green
\n
\n
\n RAL 120 70 75\n
Brillantgrün
Brilliant green
\n
\n
\n RAL 120 80 05\n
Staubgrün
Dust green
\n
\n
\n RAL 120 80 10\n
Jugendstilgrün
Modern Style green
\n
\n
\n RAL 120 80 20\n
Avocadocreme
Avocado cream
\n
\n
\n RAL 120 80 30\n
Naturgrün
Natural green
\n
\n
\n RAL 120 80 40\n
Sommergrün
Summer green
\n
\n
\n RAL 120 80 50\n
Modegrün
Fashion green
\n
\n
\n RAL 120 80 60\n
Neongrün
Neon green
\n
\n
\n RAL 120 85 05\n
Kreidegrün
Chalk green
\n
\n
\n RAL 120 85 10 \n
Federleichtgrün
Light feather green
\n
\n
\n RAL 120 85 20\n
Seegrün
Lake green
\n
\n
\n RAL 120 85 30\n
Aquagrün
Aqua green
\n
\n
\n RAL 120 90 05\n
Maiglöckchenweiß
Lily of the valley white
\n
\n
\n RAL 120 90 10\n
Hellpistazie
Pale pistachio
\n
\n
\n RAL 120 90 20\n
Kiwisorbetgrün
Kiwi sorbet green
\n
\n
\n RAL 120 90 30\n
Eiskaltgrün
Ice-cold green
\n
\n
\n RAL 120 93 05\n
Hauchweißgrün
Touch of white green
\n
\n
\n RAL 130 30 10\n
Aramealgengrün
Arame seaweed green
\n
\n
\n RAL 130 30 20\n
Seetanggrün
Kelp green
\n
\n
\n RAL 130 40 10\n
Sanftoliv
Soft olive
\n
\n
\n RAL 130 40 20\n
Alpenseegrün
Alpine lake green
\n
\n
\n RAL 130 40 30\n
Edelsteingrün
Gemstone green
\n
\n
\n RAL 130 50 10\n
Dubuffetgrün
Dubuffet green
\n
\n
\n RAL 130 50 20\n
Spanischgrün
Spanish green
\n
\n
\n RAL 130 50 30\n
Algengrün
Algae green
\n
\n
\n RAL 130 50 40\n
Peperonigrün
Hot pepper green
\n
\n
\n RAL 130 50 50\n
Smaragdklargrün
Emerald clear green
\n
\n
\n RAL 130 60 10\n
Salbeimattgrün
Matte sage green
\n
\n
\n RAL 130 60 20\n
Altgrün
Old green
\n
\n
\n RAL 130 60 30\n
Erbsauberginengrün
Pea aubergine green
\n
\n
\n RAL 130 60 40\n
Grashüpfergrün
Grasshopper green
\n
\n
\n RAL 130 60 50\n
Parisergrün
Parisian green
\n
\n
\n RAL 130 60 60\n
Urgrün
Primal green
\n
\n
\n RAL 130 70 10\n
Kalkgrün
Limestone green
\n
\n
\n RAL 130 70 20\n
Seifengrün
Soap green
\n
\n
\n RAL 130 70 30\n
Aquarellgrün
Watercolour green
\n
\n
\n RAL 130 70 40\n
Vangoghgrün
Vangogh green
\n
\n
\n RAL 130 70 50\n
Apfelgrün
Apple green
\n
\n
\n RAL 130 70 60\n
Ultragrün
Ultra green
\n
\n
\n RAL 130 80 10\n
Jadehellgrün
Jade light green
\n
\n
\n RAL 130 80 20\n
Emaillegrün
Enamel green
\n
\n
\n RAL 130 80 30\n
Pastellgrün
Pastel green
\n
\n
\n RAL 130 80 40\n
Jasmingrün
Jasmine green
\n
\n
\n RAL 130 80 50\n
Kristallgrün
Crystal green
\n
\n
\n RAL 130 85 05\n
Traubenölgrün
Grape oil green
\n
\n
\n RAL 130 85 10\n
Duchamplichtgrün
Duchamp light green
\n
\n
\n RAL 130 85 20\n
Bleichhellgrün
Pallid light green
\n
\n
\n RAL 130 85 30\n
Viridingrün
Viridine green
\n
\n
\n RAL 130 90 05\n
Silberpappelweiß
Silver poplar white
\n
\n
\n RAL 130 90 10\n
Mediterrangrün
Mediterranean green
\n
\n
\n RAL 130 90 20\n
Frühlingsgrün
Spring green
\n
\n
\n RAL 130 93 05\n
Bohnenweiß
Bean white
\n
\n
\n RAL 140 20 05\n
Melanitschwarzgrün
Melanite black green
\n
\n
\n RAL 140 20 10\n
Gebirgsgrün
Mountain range green
\n
\n
\n RAL 140 20 20\n
Bayrischgrün
Bavarian green
\n
\n
\n RAL 140 30 05\n
Schwarzwaldgrün
Black Forest green
\n
\n
\n RAL 140 30 10\n
Kupferkiesgrün
Copper pyrite green
\n
\n
\n RAL 140 30 20\n
Brennnesselgrün
Nettle green
\n
\n
\n RAL 140 30 30\n
Edelkastaniengrün
Chestnut green
\n
\n
\n RAL 140 30 40\n
Förstergrün
Ranger green
\n
\n
\n RAL 140 40 05\n
Steingrün
Stone green
\n
\n
\n RAL 140 40 10\n
Lodengrün
Loden green
\n
\n
\n RAL 140 40 20\n
Akaziengrün
Acacia green
\n
\n
\n RAL 140 40 30\n
Pfaugrün
Peacock green
\n
\n
\n RAL 140 40 40\n
Radikalgrün
Radical green
\n
\n
\n RAL 140 40 50\n
Brasilgrün
Brazilian green
\n
\n
\n RAL 140 50 05\n
Silberahorngrün
Silver maple green
\n
\n
\n RAL 140 50 10\n
Edeltannengrün
Fir spruce green
\n
\n
\n RAL 140 50 20\n
Silberweidengrün
Silver willow green
\n
\n
\n RAL 140 50 30\n
Wandergrün
Rambling green
\n
\n
\n RAL 140 50 40\n
Guineagrün
Guinean green
\n
\n
\n RAL 140 50 50\n
Bergwiesengrün
Mountain meadow green
\n
\n
\n RAL 140 50 60\n
Temperamentgrün
Temperamental green
\n
\n
\n RAL 140 60 05\n
Camouflagegrün
Camouflage green
\n
\n
\n RAL 140 60 10\n
Silberlindengrau
Silver linden grey
\n
\n
\n RAL 140 60 20\n
Spinatgrün
Spinach green
\n
\n
\n RAL 140 60 30\n
Schwarzdorngrün
Blackthorn green
\n
\n
\n RAL 140 60 40\n
Frischgrün
Fresh green
\n
\n
\n RAL 140 60 50\n
Petersiliengrün
Parsley green
\n
\n
\n RAL 140 60 60\n
Oreganogrün
Oregano green
\n
\n
\n RAL 140 60 70\n
Ballongrün
Balloon green
\n
\n
\n RAL 140 70 05\n
Ginkgogrün
Ginkgo green
\n
\n
\n RAL 140 70 10\n
Wermutgrün
Wormwood green
\n
\n
\n RAL 140 70 20\n
Taugrün
Dew green
\n
\n
\n RAL 140 70 30\n
Anisblattgrün
Aniseed leaf green
\n
\n
\n RAL 140 70 40\n
Sauergrün
Sour green
\n
\n
\n RAL 140 70 50\n
Acidgrün
Acid green
\n
\n
\n RAL 140 70 60\n
Dropsgrün
Drop green
\n
\n
\n RAL 140 80 05\n
Weidengrün
Willow green
\n
\n
\n RAL 140 80 10\n
Pastellgraugrün
Pastel grey green
\n
\n
\n RAL 140 80 20\n
Giopontigrün
Gio Ponti green
\n
\n
\n RAL 140 80 30\n
Entspannungsgrün
Relaxation green
\n
\n
\n RAL 140 80 40\n
Dentistgrün
Dentist green
\n
\n
\n RAL 140 85 05\n
Taubnesselweiß
Deadnettle white
\n
\n
\n RAL 140 85 10\n
Lauchweiß
Leek white
\n
\n
\n RAL 140 85 20\n
Kalkschiefer
Limestone slate
\n
\n
\n RAL 140 85 30\n
Minzcocktailgrün
Mint cocktail green
\n
\n
\n RAL 140 90 05\n
Rosmarinweiß
Rosemary white
\n
\n
\n RAL 140 90 10\n
Hauchgrün
Touch of green
\n
\n
\n RAL 140 93 05\n
Kastanienweiß
Chestnut white
\n
\n
\n RAL 150 30 10\n
Thymiangrün
Thyme green
\n
\n
\n RAL 150 30 20\n
Moselgrün
Moselle green
\n
\n
\n RAL 150 30 30\n
Berggrün
Mountain green
\n
\n
\n RAL 150 40 10\n
Filzgrün
Felt green
\n
\n
\n RAL 150 40 20\n
Prallgrün
Firm green
\n
\n
\n RAL 150 40 30\n
Genevergrün
Genever green
\n
\n
\n RAL 150 40 40\n
Tintengrün
Ink green
\n
\n
\n RAL 150 40 50\n
Irlandgrün
Ireland green
\n
\n
\n RAL 150 50 10\n
Salbeigrüngrau
Sage green grey
\n
\n
\n RAL 150 50 20\n
Koreaminze
Korean mint
\n
\n
\n RAL 150 50 30\n
Feldgrün
Field green
\n
\n
\n RAL 150 50 40\n
Selleriegrün
Celery green
\n
\n
\n RAL 150 50 50\n
Sattgrün
Rich green
\n
\n
\n RAL 150 50 60\n
Kaltgrün
Cold green
\n
\n
\n RAL 150 60 10\n
Spitzkohlgrün
Pointed cabbage green
\n
\n
\n RAL 150 60 20\n
Orientgrün
Orient green
\n
\n
\n RAL 150 60 30\n
Rosmaringrün
Rosemary green
\n
\n
\n RAL 150 60 40\n
Mosaikgrün
Mosaic green
\n
\n
\n RAL 150 60 50\n
Flummigrün
Bouncy ball green
\n
\n
\n RAL 150 60 60\n
Energiegrün
Energy green
\n
\n
\n RAL 150 70 10\n
Teegrün
Tea green
\n
\n
\n RAL 150 70 20\n
Liebermanngrün
Liebermann green
\n
\n
\n RAL 150 70 30\n
Wachstuchgrün
Oilcloth green
\n
\n
\n RAL 150 70 40\n
Jadesteingrün
Jade stone green
\n
\n
\n RAL 150 70 50\n
Grünspanfarben
Verdigris coloured
\n
\n
\n RAL 150 80 10\n
Organzagrün
Organza green
\n
\n
\n RAL 150 80 20\n
Pastellminzgrün
Pastel mint green
\n
\n
\n RAL 150 80 30\n
Knallgrün
Bright green
\n
\n
\n RAL 150 80 40\n
Perlmuttgrün
Mother-of-pearl green
\n
\n
\n RAL 150 85 05\n
Spargelweiß
Asparagus white
\n
\n
\n RAL 150 85 10\n
Transparentweiß
Transparent white
\n
\n
\n RAL 150 85 20\n
Bleichgrün
Pallid green
\n
\n
\n RAL 150 90 05\n
Mineralweiß
Mineral white
\n
\n
\n RAL 150 90 10\n
Alabastergrün
Alabaster green
\n
\n
\n RAL 150 93 05\n
Quarkweiß
Quark white
\n
\n
\n RAL 160 20 05\n
Beryllschwarzgrün
Beryl black green
\n
\n
\n RAL 160 20 10\n
Schalmuschelgrün
Mussel green
\n
\n
\n RAL 160 20 15\n
Kürbisgrünschwarz
Pumpkin green black
\n
\n
\n RAL 160 20 20\n
Opulentgrün
Opulent green
\n
\n
\n RAL 160 30 05\n
Sattoliv
Rich olive
\n
\n
\n RAL 160 30 10\n
Exklusivgrün
Exclusive green
\n
\n
\n RAL 160 30 15\n
Blattgrün
Leaf green
\n
\n
\n RAL 160 30 20\n
Bergminze
Mountain mint
\n
\n
\n RAL 160 30 25\n
Ordnungsgrün
Order green
\n
\n
\n RAL 160 30 30\n
Trollgrün
Troll green
\n
\n
\n RAL 160 30 35\n
Spieltischgrün
Card table green
\n
\n
\n RAL 160 30 40\n
Zitronenmelissengrün
Lemon balm green
\n
\n
\n RAL 160 40 05\n
Jaspisgrün
Jasper green
\n
\n
\n RAL 160 40 10\n
Sibirischgrün
Siberian green
\n
\n
\n RAL 160 40 15\n
Gurkengrün
Cucumber green
\n
\n
\n RAL 160 40 20\n
Serbischgrün
Serbian green
\n
\n
\n RAL 160 40 25\n
Schwarzkiefergrün
Black pine green
\n
\n
\n RAL 160 40 30\n
Kürbisgrün
Pumpkin green
\n
\n
\n RAL 160 40 35\n
Jademuschelgrün
Jade mussel green
\n
\n
\n RAL 160 40 40\n
Kleegrün
Clover green
\n
\n
\n RAL 160 40 45\n
Froschgrün
Frog green
\n
\n
\n RAL 160 40 50\n
Universalgrün
Universal green
\n
\n
\n RAL 160 40 55\n
Säuleneichengrün
Column of oak green
\n
\n
\n RAL 160 50 05\n
Arktisflechtengrün
Arctic lichen green
\n
\n
\n RAL 160 50 10\n
Atlaszedergrün
Atlas cedar green
\n
\n
\n RAL 160 50 15\n
Steinzypressengrün
Stone cypress green
\n
\n
\n RAL 160 50 20\n
Wacholdergrün
Juniper green
\n
\n
\n RAL 160 50 25\n
Sportplatzgrün
Sports field green
\n
\n
\n RAL 160 50 30\n
Freizeitgrün
Leisure green
\n
\n
\n RAL 160 50 35\n
Adamingrün
Adamite green
\n
\n
\n RAL 160 50 40\n
Metallgrün
Metallic green
\n
\n
\n RAL 160 50 45\n
Vitalgrün
Vital green
\n
\n
\n RAL 160 50 50\n
Golfgrün
Golf green
\n
\n
\n RAL 160 50 55\n
Islandgrün
Iceland green
\n
\n
\n RAL 160 50 60\n
Echttürkis
Real turquoise
\n
\n
\n RAL 160 60 05\n
Sandsteingraugrün
Sandstone grey green
\n
\n
\n RAL 160 60 10\n
Schiefergrün
Slate green
\n
\n
\n RAL 160 60 15\n
Mildgrün
Mild green
\n
\n
\n RAL 160 60 20\n
Douglasiengrün
Douglas fir green
\n
\n
\n RAL 160 60 25\n
Praxisgrün
Practice green
\n
\n
\n RAL 160 60 30\n
Memphisgrün
Memphis green
\n
\n
\n RAL 160 60 35\n
Werbegrün
Advertising green
\n
\n
\n RAL 160 60 40\n
Jägergrün
Hunter green
\n
\n
\n RAL 160 60 45\n
Linoleumgrün
Linoleum green
\n
\n
\n RAL 160 60 50\n
Sittichgrün
Parakeet green
\n
\n
\n RAL 160 60 55\n
Smaragdhellgrün
Emerald light green
\n
\n
\n RAL 160 60 58\n
Alhambragrün
Alhambra green
\n
\n
\n RAL 160 70 05\n
Grünlichgrau
Greenish grey
\n
\n
\n RAL 160 70 10\n
Schwachgrün
Weak green
\n
\n
\n RAL 160 70 15\n
Andeerschiefer
Andean slate
\n
\n
\n RAL 160 70 20\n
Keramikgrün
Ceramic green
\n
\n
\n RAL 160 70 25\n
Wassergrün
Water green
\n
\n
\n RAL 160 70 30\n
Bergseegrün
Mountain lake green
\n
\n
\n RAL 160 70 35\n
Amerikanischgrün
American green
\n
\n
\n RAL 160 70 40\n
Technotürkis
Techno turquoise
\n
\n
\n RAL 160 70 45\n
Grellgrün
Garish green
\n
\n
\n RAL 160 70 50\n
Malachitgrün
Malachite green
\n
\n
\n RAL 160 80 05\n
Nebelgrün
Fog green
\n
\n
\n RAL 160 80 10\n
Jademattgrün
Matte jade green
\n
\n
\n RAL 160 80 15\n
Sonnengrün
Sun yellow
\n
\n
\n RAL 160 80 20\n
Federngrün
Feather green
\n
\n
\n RAL 160 80 25\n
Mentholgrün
Menthol green
\n
\n
\n RAL 160 80 30\n
Seidengrün
Silk green
\n
\n
\n RAL 160 85 05\n
Leichtgrün
Light green
\n
\n
\n RAL 160 85 10\n
Glimmergrün
Micaceous green
\n
\n
\n RAL 160 85 15\n
Mondsteingrün
Moonstone green
\n
\n
\n RAL 160 90 05\n
Aquarellweiß
Watercolour white
\n
\n
\n RAL 160 90 10\n
Mondscheingrün
Moonlight green
\n
\n
\n RAL 160 90 15\n
Gletscherwassergrün
Glacial water green
\n
\n
\n RAL 160 93 05\n
Bergkristallsilber
Mountain crystal silver
\n
\n
\n RAL 170 20 10\n
Tiefgrün
Deep green
\n
\n
\n RAL 170 20 15\n
Intensivgrün
Intense green
\n
\n
\n RAL 170 20 20\n
Wagengrün
Coach green
\n
\n
\n RAL 170 20 25\n
Offroadgrün
Off-road green
\n
\n
\n RAL 170 30 10\n
Granatschwarzgrün
Garnet black green
\n
\n
\n RAL 170 30 15\n
Dunkelgrün
Dark green
\n
\n
\n RAL 170 30 20\n
Distelgrün
Thistle green
\n
\n
\n RAL 170 30 25\n
Himbeerblattgrün
Raspberry leaf green
\n
\n
\n RAL 170 30 30\n
Chrysokolldunkelgrün
Chrysocolla dark green
\n
\n
\n RAL 170 30 35\n
Trappergrün
Trapper green
\n
\n
\n RAL 170 30 40\n
Permanentgrün
Permanent green
\n
\n
\n RAL 170 40 10\n
Chalcedongrün
Chalcedony green
\n
\n
\n RAL 170 40 15\n
Schlossgrün
Palace green
\n
\n
\n RAL 170 40 20\n
Breitwegerichgrün
Plantain green
\n
\n
\n RAL 170 40 25\n
Erzgebirgsgrün
Ore mountains green
\n
\n
\n RAL 170 40 30\n
Traktorgrün
Tractor green
\n
\n
\n RAL 170 40 35\n
Viktoriagrün
Victoria green
\n
\n
\n RAL 170 40 40\n
Gerätegrün
Device green
\n
\n
\n RAL 170 40 45\n
Umweltgrün
Environmental green
\n
\n
\n RAL 170 40 50\n
Vegangrün
Vegan green
\n
\n
\n RAL 170 50 10\n
Rödelerzgrün
Bournonite green
\n
\n
\n RAL 170 50 15\n
Fuchsitgrün
Fuchsite green
\n
\n
\n RAL 170 50 20\n
Brombeerblattgrün
Blackberry leaf green
\n
\n
\n RAL 170 50 25\n
Turmalinblau
Tourmaline blue
\n
\n
\n RAL 170 50 30\n
Traumgrün
Dream green
\n
\n
\n RAL 170 50 35\n
Akzentgrünblau
Accent green blue
\n
\n
\n RAL 170 50 40\n
Spektralgrün
Spectral green
\n
\n
\n RAL 170 50 45\n
Stockentengrün
Mallard green
\n
\n
\n RAL 170 50 50\n
Chagallgrün
Chagall green
\n
\n
\n RAL 170 50 55\n
Absinthtürkis
Absinthe turquoise
\n
\n
\n RAL 170 60 10\n
Quantumgrün
Quantum green
\n
\n
\n RAL 170 60 15\n
Bitterkleegrün
Bitter clover green
\n
\n
\n RAL 170 60 20\n
Cyperngrün
Cyprus green
\n
\n
\n RAL 170 60 25\n
Saftiggrün
Succulent green
\n
\n
\n RAL 170 60 30\n
Lebendiggrün
Vibrant green
\n
\n
\n RAL 170 60 35\n
Klimtgrün
Klimt green
\n
\n
\n RAL 170 60 40\n
Persischgrün
Persian green
\n
\n
\n RAL 170 60 45\n
Sportgrün
Sport green
\n
\n
\n RAL 170 60 50\n
Aktivgrün
Active green
\n
\n
\n RAL 170 70 10\n
Liebstöckelgrün
Lovage green
\n
\n
\n RAL 170 70 15\n
Chrysopalhellgrün
Chrysopal light green
\n
\n
\n RAL 170 70 20\n
Quellgrün
Source green
\n
\n
\n RAL 170 70 25\n
Orientmosaikgrün
Orient mosaic green
\n
\n
\n RAL 170 70 30\n
Minzkaltgrün
Mint cold green
\n
\n
\n RAL 170 70 35\n
Emeraldgrün
Emerald green
\n
\n
\n RAL 170 70 40\n
Expressionismusgrün
Expressionism green
\n
\n
\n RAL 170 80 10\n
Fluoritblau
Fluorite blue
\n
\n
\n RAL 170 80 15\n
Schwimmbadgrün
Swimming pool green
\n
\n
\n RAL 170 80 20\n
Himmelgrün
Sky green
\n
\n
\n RAL 170 80 25\n
Larimargrün
Larimar green
\n
\n
\n RAL 170 85 05\n
Silikathelltürkis
Silicate light turquoise
\n
\n
\n RAL 170 85 10\n
Topasgrün
Topaz green
\n
\n
\n RAL 170 85 15\n
Kühlschrankgrün
Refrigerator green
\n
\n
\n RAL 170 85 20\n
Kristallglasgrün
Crystal glass green
\n
\n
\n RAL 170 90 05\n
Kristallsalzweiß
Crystal salt white
\n
\n
\n RAL 170 90 10\n
Türkisweiß
Turquoise white
\n
\n
\n RAL 170 93 05\n
Schneekristallgrün
Snow crystal green
\n
\n
\n RAL 180 20 05\n
Pechgrün
Pitch green
\n
\n
\n RAL 180 20 10\n
Lackgrün
Lacquer green
\n
\n
\n RAL 180 20 15\n
Zaungrün
Fence green
\n
\n
\n RAL 180 20 20\n
Myrtengrün
Myrtle green
\n
\n
\n RAL 180 30 05\n
Amazonasgrün
Amazon green
\n
\n
\n RAL 180 30 10\n
Sattgrautürkis
Rich grey turquoise
\n
\n
\n RAL 180 30 15\n
Tafelgrün
Blackboard green
\n
\n
\n RAL 180 30 20\n
Schwedengrün
Swedish green
\n
\n
\n RAL 180 30 25\n
Fjordgrün
Fjord green
\n
\n
\n RAL 180 30 30\n
Stadtgrün
Urban green
\n
\n
\n RAL 180 30 35\n
Dschungelgrün
Jungle green
\n
\n
\n RAL 180 40 05\n
Erdgrün
Earth green
\n
\n
\n RAL 180 40 10\n
Kiefergrün
Pine green
\n
\n
\n RAL 180 40 15\n
Forstgrün
Forest greenery
\n
\n
\n RAL 180 40 20\n
Meergrün
Sea green
\n
\n
\n RAL 180 40 25\n
Eukalyptusgrün
Eucalyptus green
\n
\n
\n RAL 180 40 30\n
Efeufrischgrün
Fresh ivy green
\n
\n
\n RAL 180 40 35\n
Chrysokollmittelgrün
Chrysocolla medium green
\n
\n
\n RAL 180 40 40\n
Plakatgrün
Poster green
\n
\n
\n RAL 180 40 45\n
Petroldunkelgrün
Teal dark green
\n
\n
\n RAL 180 50 05\n
Dämmergrün
Dusk green
\n
\n
\n RAL 180 50 10\n
Erquickungsgrün
Refreshing green
\n
\n
\n RAL 180 50 15\n
Stumpftürkis
Dull turquoise
\n
\n
\n RAL 180 50 20\n
Azuritwassergrün
Azurite water green
\n
\n
\n RAL 180 50 25\n
Kupfermineralgrün
Copper mineral green
\n
\n
\n RAL 180 50 30\n
Glasgrün
Glass green
\n
\n
\n RAL 180 50 35\n
Sommertürkis
Summer turquoise
\n
\n
\n RAL 180 50 40\n
Weihnachtsgrün
Christmas green
\n
\n
\n RAL 180 50 45\n
Industrietürkis
Industrial turquoise
\n
\n
\n RAL 180 50 50\n
Ozeangrün
Ocean green
\n
\n
\n RAL 180 60 05\n
Marmorgrüngrau
Marble green-grey
\n
\n
\n RAL 180 60 10\n
Kachelgrün
Tile green
\n
\n
\n RAL 180 60 15\n
Kupferdachgrün
Copper roof green
\n
\n
\n RAL 180 60 20\n
Salbeigrün
Sage green
\n
\n
\n RAL 180 60 25\n
Petrolgrün
Petrol green
\n
\n
\n RAL 180 60 30\n
Dioptasgrün
Dioptase green
\n
\n
\n RAL 180 60 35\n
Stempelkissengrün
Stamp pad green
\n
\n
\n RAL 180 60 40\n
Leuchttürkis
Light turquoise
\n
\n
\n RAL 180 60 45\n
Karibikgrün
Caribbean green
\n
\n
\n RAL 180 60 50\n
Brillanttürkis
Brilliant turquoise
\n
\n
\n RAL 180 70 05\n
Feldspatsilber
Feldspar silver
\n
\n
\n RAL 180 70 10\n
Grazilgrün
Delicate green
\n
\n
\n RAL 180 70 15\n
Silikatgrün
Silicate green
\n
\n
\n RAL 180 70 20\n
Mintbonbongrün
Mint bonbon green
\n
\n
\n RAL 180 70 25\n
Gletschergrün
Glacial green
\n
\n
\n RAL 180 70 30\n
Badtürkis
Bath turquoise
\n
\n
\n RAL 180 70 35\n
Bergseeazur
Mountain lake azure
\n
\n
\n RAL 180 70 40\n
Reincyan
Pure cyan
\n
\n
\n RAL 180 80 05\n
Aragonitweiß
Aragonite white
\n
\n
\n RAL 180 80 10\n
Lichtpetrol
Light teal
\n
\n
\n RAL 180 80 15\n
Whirlpoolgrün
Whirlpool green
\n
\n
\n RAL 180 80 20\n
Opaltürkis
Opal turquoise
\n
\n
\n RAL 180 80 25\n
Caprihellgrün
Light Capri green
\n
\n
\n RAL 180 80 30\n
Zarttürkis
Tender turquoise
\n
\n
\n RAL 180 85 05\n
Meerdunstgrau
Sea haze grey
\n
\n
\n RAL 180 85 10\n
Feuerlandmeergrün
Tierra del Fuego sea green
\n
\n
\n RAL 180 85 15\n
Bergseehelltürkis
Pale mountain lake turquoise
\n
\n
\n RAL 180 85 20\n
Korallgrün
Coral green
\n
\n
\n RAL 180 90 05\n
Transparentgrün
Transparent green
\n
\n
\n RAL 180 90 10\n
Eiswassergrün
Ice water green
\n
\n
\n RAL 180 93 05\n
Arktisweiß
Arctic white
\n
\n
\n RAL 190 20 20\n
Nachttürkis
Night turquoise
\n
\n
\n RAL 190 30 15\n
Kutschengrün
Carriage green
\n
\n
\n RAL 190 30 20\n
Lattenzaungrün
Stockade green
\n
\n
\n RAL 190 30 25\n
Aktionsgrün
Action green
\n
\n
\n RAL 190 30 30\n
Myrtentiefgrün
Myrtle deep green
\n
\n
\n RAL 190 30 35\n
Planktongrün
Plankton green
\n
\n
\n RAL 190 40 10\n
Schlammgrün
Mud green
\n
\n
\n RAL 190 40 15\n
Moorteichgrün
Moor pond green
\n
\n
\n RAL 190 40 20\n
Üppiggrün
Lush green
\n
\n
\n RAL 190 40 25\n
Schmetterlingsgrün
Butterfly green
\n
\n
\n RAL 190 40 30\n
Modeblau
Fashion blue
\n
\n
\n RAL 190 40 35\n
Officeblaugrün
Office blue green
\n
\n
\n RAL 190 40 40\n
Leguangrün
Iguana green
\n
\n
\n RAL 190 40 45\n
Dunkelpetrol
Dark teal
\n
\n
\n RAL 190 50 10\n
Sturmgrün
Storm green
\n
\n
\n RAL 190 50 15\n
Dunkeltürkis
Dark turquoise
\n
\n
\n RAL 190 50 20\n
Tannenblau
Fir blue
\n
\n
\n RAL 190 50 25\n
Apatitblau
Apatite blue
\n
\n
\n RAL 190 50 30\n
Ägyptischgrün
Egyptian green
\n
\n
\n RAL 190 50 35\n
Schmucktürkis
Ornamental turquoise
\n
\n
\n RAL 190 50 40\n
Lidschattentürkis
Eyeshadow turquoise
\n
\n
\n RAL 190 50 45\n
Klartürkis
Clear turquoise
\n
\n
\n RAL 190 60 10\n
Dezenttürkis
Subtle turquoise
\n
\n
\n RAL 190 60 15\n
Hellgrünspan
Pale verdigris
\n
\n
\n RAL 190 60 20\n
Gänseteichgrün
Goose pond green
\n
\n
\n RAL 190 60 25\n
Turmalintürkis
Tourmaline turquoise
\n
\n
\n RAL 190 60 30\n
Baltikgrün
Baltic green
\n
\n
\n RAL 190 60 35\n
Keramikbleutürkis
Ceramic blue turquoise
\n
\n
\n RAL 190 60 40\n
Baltiktürkis
Baltic turquoise
\n
\n
\n RAL 190 60 45\n
Tirolitblaugrün
Tyrolite blue-green
\n
\n
\n RAL 190 70 10\n
Marmorgrün
Marble green
\n
\n
\n RAL 190 70 15\n
Jadegrün
Jade green
\n
\n
\n RAL 190 70 20\n
Quellwassertürkis
Spring water turquoise
\n
\n
\n RAL 190 70 25\n
Floridatürkis
Florida turquoise
\n
\n
\n RAL 190 70 30\n
Hygienegrün
Hygiene green
\n
\n
\n RAL 190 70 35\n
Arktisgrün
Arctic green
\n
\n
\n RAL 190 80 10\n
Andenopalgrün
Andean opal green
\n
\n
\n RAL 190 80 15\n
Kalttürkis
Cold turquoise
\n
\n
\n RAL 190 80 20\n
Petroleumblau
Teal blue
\n
\n
\n RAL 190 80 25\n
Poolgrün
Pool green
\n
\n
\n RAL 190 85 05\n
Morgentauweiß
Morning dew white
\n
\n
\n RAL 190 85 10\n
Badesalzgrün
Bath salt green
\n
\n
\n RAL 190 85 15\n
Capriwasserblau
Capri water blue
\n
\n
\n RAL 190 85 20\n
Horizontblau
Horizon blue
\n
\n
\n RAL 190 90 05\n
Kaltweiß
Cool white
\n
\n
\n RAL 190 90 10\n
Quellblau
Source blue
\n
\n
\n RAL 190 93 05\n
Ägyptischweiß
Egyptian white
\n
\n
\n RAL 200 20 05\n
Tarngrün
Concealed green
\n
\n
\n RAL 200 20 10\n
Dunkelkiefergrün
Dark pine green
\n
\n
\n RAL 200 20 15\n
Dachziegelgrün
Roof tile green
\n
\n
\n RAL 200 20 20\n
Buschgrün
Shrub green
\n
\n
\n RAL 200 20 23\n
Zollgrün
Customs green
\n
\n
\n RAL 200 30 05\n
Finsternisgrün
Darkness green
\n
\n
\n RAL 200 30 10\n
Baumrindengrün
Tree bark green
\n
\n
\n RAL 200 30 15\n
Hornblendegrün
Hornblende green
\n
\n
\n RAL 200 30 20\n
Malachitblautürkis
Malachite blue turquoise
\n
\n
\n RAL 200 30 25\n
Antiktürkis
Antique turquoise
\n
\n
\n RAL 200 30 30\n
Wolltürkis
Wool turquoise
\n
\n
\n RAL 200 30 33\n
Eisdunkeltürkis
Ice dark turquoise
\n
\n
\n RAL 200 40 05\n
Kalkspatgraugrün
Calcite grey green
\n
\n
\n RAL 200 40 10\n
Brochantitgrün
Brochantite green
\n
\n
\n RAL 200 40 15\n
Eisenkiesgrün
Pyrite green
\n
\n
\n RAL 200 40 20\n
Alpendämmerblau
Dusky alpine blue
\n
\n
\n RAL 200 40 25\n
Badgrün
Bath green
\n
\n
\n RAL 200 40 30\n
Mayablau
Mayan blue
\n
\n
\n RAL 200 40 35\n
Byzantinischblau
Byzantine blue
\n
\n
\n RAL 200 40 40\n
Aktivtürkis
Active turquoise
\n
\n
\n RAL 200 50 05\n
Nordgrau
North grey
\n
\n
\n RAL 200 50 10\n
Augengrau
Eye grey
\n
\n
\n RAL 200 50 15\n
Nickelerzgrün
Nickel ore green
\n
\n
\n RAL 200 50 20\n
Gischtgrün
Seafoam green
\n
\n
\n RAL 200 50 25\n
Kandinskytürkis
Kandinsky turquoise
\n
\n
\n RAL 200 50 30\n
Karibiktürkis
Caribbean turquoise
\n
\n
\n RAL 200 50 35\n
Brunnenblau
Well blue
\n
\n
\n RAL 200 50 40\n
Industrieblau
Industrial blue
\n
\n
\n RAL 200 50 45\n
Indiablau
India blue
\n
\n
\n RAL 200 60 05\n
Schattengrau
Shady grey
\n
\n
\n RAL 200 60 10\n
Nordkapgrau
North Cape grey
\n
\n
\n RAL 200 60 15\n
Waidindigo
Woad indigo
\n
\n
\n RAL 200 60 20\n
Jugendstiltürkis
Art nouveau turquoise
\n
\n
\n RAL 200 60 25\n
Kühlboxeistürkis
Coolbox ice turquoise
\n
\n
\n RAL 200 60 30\n
Aquamarinblau
Aquamarine blue
\n
\n
\n RAL 200 60 35\n
Arktisblau
Arctic blue
\n
\n
\n RAL 200 60 40\n
Wachsstiftblau
Wax crayon blue
\n
\n
\n RAL 200 70 05\n
Prinzengrau
Prince grey
\n
\n
\n RAL 200 70 10\n
Calcitblau
Calcite blue
\n
\n
\n RAL 200 70 15\n
Kaltfrontgrün
Cold front green
\n
\n
\n RAL 200 70 20\n
Eisvogeltürkis
Kingfisher turquoise
\n
\n
\n RAL 200 70 25\n
Frischbleu
Fresh soft blue
\n
\n
\n RAL 200 80 05\n
Chinalichtgrün
China light green
\n
\n
\n RAL 200 80 10\n
Barockkalkbleu
Baroque chalk soft blue
\n
\n
\n RAL 200 80 15\n
Eisboutiquetürkis
Ice boutique turquoise
\n
\n
\n RAL 200 80 20\n
Sommerbleu
Summer soft blue
\n
\n
\n RAL 200 80 25\n
Bergseeblau
Mountain lake blue
\n
\n
\n RAL 200 85 05\n
Bastlichtgrau
Raffia light grey
\n
\n
\n RAL 200 85 10\n
Kaltlufttürkis
Cold air turquoise
\n
\n
\n RAL 200 85 15\n
Frosthellbleu
Frosty soft blue
\n
\n
\n RAL 200 85 20\n
Eiskristallblau
Ice crystal blue
\n
\n
\n RAL 200 90 05\n
Frostgrün
Frosty green
\n
\n
\n RAL 200 90 10\n
Frostweißblau
Frosty white blue
\n
\n
\n RAL 200 93 05\n
Klirrendweiß
Chilly white
\n
\n
\n RAL 210 30 10\n
Graphitschwarzgrün
Graphite black green
\n
\n
\n RAL 210 30 15\n
Stockentenblau
Mallard blue
\n
\n
\n RAL 210 30 20\n
Transportergrün
Transporter green
\n
\n
\n RAL 210 30 25\n
Tiefatlantikblau
Deep Atlantic blue
\n
\n
\n RAL 210 30 30\n
Kaliblau
Kali blue
\n
\n
\n RAL 210 40 10\n
Leinengrau
Linen grey
\n
\n
\n RAL 210 40 15\n
Chinagrünblau
China green blue
\n
\n
\n RAL 210 40 20\n
Dämmerblau
Dusk blue
\n
\n
\n RAL 210 40 25\n
Hosenblau
Trouser blue
\n
\n
\n RAL 210 40 30\n
Indigoblau
Indigo blue
\n
\n
\n RAL 210 40 35\n
Kaltblau
Cold blue
\n
\n
\n RAL 210 40 38\n
Marienblau
Mary blue
\n
\n
\n RAL 210 50 10\n
Uniformgrüngrau
Uniform green grey
\n
\n
\n RAL 210 50 15\n
Labradoritgrün
Labradorite green
\n
\n
\n RAL 210 50 20\n
Emailleantikgrün
Enamel antique green
\n
\n
\n RAL 210 50 25\n
Cranachblau
Cranach blue
\n
\n
\n RAL 210 50 30\n
Chinablau
China blue
\n
\n
\n RAL 210 50 35\n
Gletscherblau
Glacier blue
\n
\n
\n RAL 210 50 40\n
Curaçaoblau
Cura�ao blue
\n
\n
\n RAL 210 50 45\n
Atlantikblau
Atlantic blue
\n
\n
\n RAL 210 60 10\n
Aschblau
Ash blue
\n
\n
\n RAL 210 60 15\n
Baltikblau
Baltic blue
\n
\n
\n RAL 210 60 20\n
Strandblau
Beach blue
\n
\n
\n RAL 210 60 25\n
Basilikablau
Basilica blue
\n
\n
\n RAL 210 60 30\n
Donaublau
Danube blue
\n
\n
\n RAL 210 60 35\n
Altdorferhimmelblau
Altdorf sky blue
\n
\n
\n RAL 210 60 40\n
Grellblau
Garish blue
\n
\n
\n RAL 210 70 10\n
Sturmgrau
Storm grey
\n
\n
\n RAL 210 70 15\n
Persischblau
Persian blue
\n
\n
\n RAL 210 70 20\n
Aquablau
Aqua blue
\n
\n
\n RAL 210 70 25\n
Maritimbleu
Maritime soft blue
\n
\n
\n RAL 210 70 30\n
Bergblau
Mountain blue
\n
\n
\n RAL 210 70 35\n
Weitsichtblau
Panorama blue
\n
\n
\n RAL 210 80 10\n
Türkisgrau
Turquoise grey
\n
\n
\n RAL 210 80 15\n
Delphinblau
Dolphin blue
\n
\n
\n RAL 210 80 20\n
Duftblau
Aroma blue
\n
\n
\n RAL 210 80 25\n
Knallbleu
Vibrant soft blue
\n
\n
\n RAL 210 85 05\n
Siestaweiß
Siesta white
\n
\n
\n RAL 210 85 10\n
Mintblau
Mint blue
\n
\n
\n RAL 210 85 15\n
Feinblau
Fine blue
\n
\n
\n RAL 210 85 20\n
Blassblau
Pale blue
\n
\n
\n RAL 210 90 05\n
Tüllbleu
Tulle soft blue
\n
\n
\n RAL 210 90 10\n
Antarktisblau
Antarctic blue
\n
\n
\n RAL 220 20 05\n
Navyschwarz
Navy black
\n
\n
\n RAL 220 20 10\n
Indigokarmin
Indigo carmine
\n
\n
\n RAL 220 20 15\n
Künstlerblau
Artist blue
\n
\n
\n RAL 220 20 20\n
Naturindigo
Natural indigo
\n
\n
\n RAL 220 30 05\n
Pandaschwarz
Panda black
\n
\n
\n RAL 220 30 10\n
Pallasitblau
Pallasite blue
\n
\n
\n RAL 220 30 15\n
Orkangrünblau
Hurricane green blue
\n
\n
\n RAL 220 30 20\n
Aquarellblau
Watercolour blue
\n
\n
\n RAL 220 30 25\n
Korallenblau
Coral blue
\n
\n
\n RAL 220 30 30\n
Sandelholzblau
Sandalwood grey blue
\n
\n
\n RAL 220 40 05\n
Limousinengraublau
Limousine grey blue
\n
\n
\n RAL 220 40 10\n
Korundblau
Corundum blue
\n
\n
\n RAL 220 40 15\n
Kittelblau
Smock blue
\n
\n
\n RAL 220 40 20\n
Beizeblau
Mordant blue
\n
\n
\n RAL 220 40 25\n
Baumwollindigo
Cotton indigo
\n
\n
\n RAL 220 40 30\n
Fjordblau
Fjord blue
\n
\n
\n RAL 220 40 35\n
Azurgrünblau
Azure green blue
\n
\n
\n RAL 220 40 40\n
Cyanblau
Cyan blue
\n
\n
\n RAL 220 50 05\n
Winterwolkengrau
Winter cloud grey
\n
\n
\n RAL 220 50 10\n
Kadettgrau
Cadet grey
\n
\n
\n RAL 220 50 15\n
Holbeinblaugrau
Holbein blue grey
\n
\n
\n RAL 220 50 20\n
Schattenblau
Shady blue
\n
\n
\n RAL 220 50 25\n
Frescoblau
Fresco blue
\n
\n
\n RAL 220 50 30\n
Handwerkerblau
Craftsman blue
\n
\n
\n RAL 220 50 35\n
Markerblau
Marker blue
\n
\n
\n RAL 220 50 40\n
Spielzeugblau
Toy blue
\n
\n
\n RAL 220 60 05\n
Tiefseegrau
Deep sea grey
\n
\n
\n RAL 220 60 10\n
Kachelblau
Tile blue
\n
\n
\n RAL 220 60 15\n
Morgenblau
Morning blue
\n
\n
\n RAL 220 60 20\n
Frostblau
Frost blue
\n
\n
\n RAL 220 60 25\n
Sommertürkisblau
Summer turquoise blue
\n
\n
\n RAL 220 60 30\n
Fischerblau
Fischer blue
\n
\n
\n RAL 220 60 35\n
Planetblau
Planet blue
\n
\n
\n RAL 220 60 40\n
Januarblau
January blue
\n
\n
\n RAL 220 70 05\n
Temperiertgrau
Tempered grey
\n
\n
\n RAL 220 70 10\n
Mohairbleugrau
Mohair soft blue grey
\n
\n
\n RAL 220 70 15\n
Küchenblau
Kitchen blue
\n
\n
\n RAL 220 70 20\n
Gastronomieblau
Culinary blue
\n
\n
\n RAL 220 70 25\n
Blousonblau
Blouson blue
\n
\n
\n RAL 220 70 30\n
Gebirgsblau
Mountain range blue
\n
\n
\n RAL 220 70 35\n
Ferienblau
Holiday blue
\n
\n
\n RAL 220 80 05\n
Pastellblau
Pastel blue
\n
\n
\n RAL 220 80 10\n
Klinischbleu
Clinical soft blue
\n
\n
\n RAL 220 80 15\n
Kinderbleu
Children�s soft blue
\n
\n
\n RAL 220 80 20\n
Turmalinwasserblau
Tourmaline water blue
\n
\n
\n RAL 220 80 25\n
Frischblau
Fresh blue
\n
\n
\n RAL 220 85 05\n
Transparentbleu
Transparent blue
\n
\n
\n RAL 220 85 10\n
Eisscherbenbleu
Ice shard soft blue
\n
\n
\n RAL 220 85 15\n
Polarblau
Polar blue
\n
\n
\n RAL 220 90 05\n
Kaltlichtbleu
Cold soft blue
\n
\n
\n RAL 220 90 10\n
Vollmondgrau
Full moon grey
\n
\n
\n RAL 230 20 10\n
Erzblauschwarz
Ore bluish black
\n
\n
\n RAL 230 20 15\n
Firmamentblau
Firmanent blue
\n
\n
\n RAL 230 20 20\n
Preußischblau
Prussian blue
\n
\n
\n RAL 230 30 10\n
Galenitblau
Galenite blue
\n
\n
\n RAL 230 30 15\n
Beerenblaugrün
Berry blue green
\n
\n
\n RAL 230 30 20\n
Petroldunkelblau
Teal dark blue
\n
\n
\n RAL 230 30 25\n
Gewitterblau
Thunderstorm blue
\n
\n
\n RAL 230 40 10\n
Zapfengrünblau
Cone green blue
\n
\n
\n RAL 230 40 15\n
Wacholderbeerenblau
Juniper berry blue
\n
\n
\n RAL 230 40 20\n
Sterntauchertürkis
Loon turquoise
\n
\n
\n RAL 230 40 25\n
Werkstattblau
Workshop blue
\n
\n
\n RAL 230 40 30\n
Pilotenblau
Pilot blue
\n
\n
\n RAL 230 40 35\n
Tintenblau
Ink blue
\n
\n
\n RAL 230 40 40\n
Technoblau
Techno blue
\n
\n
\n RAL 230 50 10\n
Kiesgraublau
Gravel grey blue
\n
\n
\n RAL 230 50 15\n
Fichtenblau
Spruce blue
\n
\n
\n RAL 230 50 20\n
Freizeitblau
Casual blue
\n
\n
\n RAL 230 50 25\n
Vergissmeinnichtblau
Forget-me-not blue
\n
\n
\n RAL 230 50 30\n
Zirkonblau
Zircon blue
\n
\n
\n RAL 230 50 35\n
Lagunenblau
Lagoon blue
\n
\n
\n RAL 230 50 40\n
Azorenblau
Azores blue
\n
\n
\n RAL 230 60 10\n
Eisvogelgrau
Kingfisher grey
\n
\n
\n RAL 230 60 15\n
Silbertannenblau
Silver fir blue
\n
\n
\n RAL 230 60 20\n
Pyjamablau
Pyjama blue
\n
\n
\n RAL 230 60 25\n
Sternblütenblau
Starflower blue
\n
\n
\n RAL 230 60 30\n
Sportblau
Sports blue
\n
\n
\n RAL 230 60 35\n
Griechischblau
Greek blue
\n
\n
\n RAL 230 60 40\n
Alpenblau
Alpine blue
\n
\n
\n RAL 230 70 10\n
Eismövengraublau
Ice gull grey blue
\n
\n
\n RAL 230 70 15\n
Distelblütenbleu
Thistleblossom soft blue
\n
\n
\n RAL 230 70 20\n
Tennisblau
Tennis blue
\n
\n
\n RAL 230 70 25\n
Oldtimerblau
Vintage blue
\n
\n
\n RAL 230 70 30\n
Fitnessblau
Fitness blue
\n
\n
\n RAL 230 80 10\n
Bleichblau
Pallid blue
\n
\n
\n RAL 230 80 15\n
Alpenmorgenblau
Alpine morning blue
\n
\n
\n RAL 230 80 20\n
Hellblau
Light blue
\n
\n
\n RAL 230 85 05\n
Polarkaltbleu
Polar soft blue
\n
\n
\n RAL 230 85 10\n
Waschpulverweiß
Washing powder white
\n
\n
\n RAL 230 85 15\n
Himalayaweißblau
Himalaya white blue
\n
\n
\n RAL 230 85 20\n
Atmosphärenbleu
Atmospheric soft blue
\n
\n
\n RAL 230 90 05\n
Strahlendweiß
Brilliant white
\n
\n
\n RAL 240 20 05\n
Nachtschattenblau
Nightshade blue
\n
\n
\n RAL 240 20 10\n
Holunderschwarz
Elderberry black
\n
\n
\n RAL 240 20 15\n
Metallblau
Metal blue
\n
\n
\n RAL 240 20 20\n
Krähenbeerenblau
Crowberry blue
\n
\n
\n RAL 240 20 22\n
Sattblau
Rich blue
\n
\n
\n RAL 240 30 05\n
Diamantgrau
Diamond grey
\n
\n
\n RAL 240 30 10\n
Schmutzblau
Dirty blue
\n
\n
\n RAL 240 30 15\n
Tiefseeblau
Deep sea blue
\n
\n
\n RAL 240 30 20\n
Lasuritblau
Lasurite blue
\n
\n
\n RAL 240 30 25\n
Arbeitsblau
Work blue
\n
\n
\n RAL 240 30 30\n
Schmucksteinblau
Gemstone blue
\n
\n
\n RAL 240 30 35\n
Kapitänsblau
Captain blue
\n
\n
\n RAL 240 40 05\n
Blauanthrazit
Blue anthracite
\n
\n
\n RAL 240 40 10\n
Schwarzdornblau
Blackthorn blue
\n
\n
\n RAL 240 40 15\n
Celesteblau
Celeste blue
\n
\n
\n RAL 240 40 20\n
Jeansblau
Denim blue
\n
\n
\n RAL 240 40 25\n
Orientblau
Orient blue
\n
\n
\n RAL 240 40 30\n
Matrosenblau
Sailor blue
\n
\n
\n RAL 240 40 35\n
Steinblau
Stone blue
\n
\n
\n RAL 240 40 40\n
Reinbleu
Pure light blue
\n
\n
\n RAL 240 50 05\n
Rauchblau
Smoky blue
\n
\n
\n RAL 240 50 10\n
Werkzeugblau
Tool blue
\n
\n
\n RAL 240 50 15\n
Technikblau
Technical blue
\n
\n
\n RAL 240 50 20\n
Coelinblau
Coelin blue
\n
\n
\n RAL 240 50 25\n
Grönlandblau
Greenland blue
\n
\n
\n RAL 240 50 30\n
Sommerblau
Summer blue
\n
\n
\n RAL 240 50 35\n
Werbeblau
Advertising blue
\n
\n
\n RAL 240 50 40\n
Tuschblau
Indian inc blue
\n
\n
\n RAL 240 60 05\n
Brieftaubenblau
Carrier pigeon blue
\n
\n
\n RAL 240 60 10\n
Vogelblau
Bird blue
\n
\n
\n RAL 240 60 15\n
Architekturblau
Architecture blue
\n
\n
\n RAL 240 60 20\n
Hemdblau
Shirt blue
\n
\n
\n RAL 240 60 25\n
Stahlhellblau
Steel light blue
\n
\n
\n RAL 240 60 30\n
Märchenblau
Fairytale blue
\n
\n
\n RAL 240 60 35\n
Prinzessblau
Princess blue
\n
\n
\n RAL 240 60 40\n
Klarblau
Clear blue
\n
\n
\n RAL 240 70 05\n
Wäscheblau
Laundry blue
\n
\n
\n RAL 240 70 10\n
Augenblau
Eye blue
\n
\n
\n RAL 240 70 15\n
Bermudablau
Bermuda blue
\n
\n
\n RAL 240 70 20\n
Meerblau
Sea blue
\n
\n
\n RAL 240 70 25\n
Madonnablau
Madonna blue
\n
\n
\n RAL 240 70 30\n
Karibikblau
Caribbean blue
\n
\n
\n RAL 240 80 05\n
Dunstblau
Hazy blue
\n
\n
\n RAL 240 80 10\n
Topashellbleu
Light topaz soft blue
\n
\n
\n RAL 240 80 15\n
Babyblau
Baby blue
\n
\n
\n RAL 240 80 20\n
Kristallblau
Crystal blue
\n
\n
\n RAL 240 85 05\n
Eisgrau
Ice grey
\n
\n
\n RAL 240 85 10\n
Luftblau
Air blue
\n
\n
\n RAL 240 85 15\n
Pariserblau
Paris blue
\n
\n
\n RAL 240 90 05\n
Bleuweiß
Soft blue white
\n
\n
\n RAL 240 90 10\n
Kalkbleu
Chalky blue white
\n
\n
\n RAL 250 20 20\n
Kosmosblau
Cosmos blue
\n
\n
\n RAL 250 20 25\n
Dunkeljeansblau
Dark denim blue
\n
\n
\n RAL 250 30 15\n
Schwarzwaldblau
Black Forest blue
\n
\n
\n RAL 250 30 20\n
Schwalbenblau
Swallow blue
\n
\n
\n RAL 250 30 25\n
Marinedunkelblau
Navy dark blue
\n
\n
\n RAL 250 30 30\n
Pompejiblau
Pompeii blue
\n
\n
\n RAL 250 40 10\n
Trekkingblau
Trekking blue
\n
\n
\n RAL 250 40 15\n
Stahlblaugrau
Steel blue grey
\n
\n
\n RAL 250 40 20\n
Beerenblau
Berry blue
\n
\n
\n RAL 250 40 25\n
Leinenblau
Linen blue
\n
\n
\n RAL 250 40 30\n
Poolblau
Pool blue
\n
\n
\n RAL 250 40 35\n
Eisvogelblau
Kingfisher blue
\n
\n
\n RAL 250 40 40\n
Europablau
Europe blue
\n
\n
\n RAL 250 50 10\n
Metallgrau
Metal grey
\n
\n
\n RAL 250 50 15\n
Titanblau
Titanium blue
\n
\n
\n RAL 250 50 20\n
Mallorcablau
Mallorca blue
\n
\n
\n RAL 250 50 25\n
Linoleumblau
Linoleum blue
\n
\n
\n RAL 250 50 30\n
Prominentblau
Prominent blue
\n
\n
\n RAL 250 50 35\n
Türkischblau
Turkish blue
\n
\n
\n RAL 250 50 40\n
Urblau
Primal blue
\n
\n
\n RAL 250 60 10\n
Vogelblaugrau
Bird blue grey
\n
\n
\n RAL 250 60 15\n
Sanftblau
Gentle blue
\n
\n
\n RAL 250 60 20\n
Aragonitblau
Aragonite blue
\n
\n
\n RAL 250 60 25\n
Perlblau
Pearl blue
\n
\n
\n RAL 250 60 30\n
Topasblau
Topaz blue
\n
\n
\n RAL 250 60 35\n
Stratosblau
Stratos blue
\n
\n
\n RAL 250 60 40\n
Bauwerkblau
Structural blue
\n
\n
\n RAL 250 70 10\n
Nebelblau
Foggy blue
\n
\n
\n RAL 250 70 15\n
Kreideblau
Chalk blue
\n
\n
\n RAL 250 70 20\n
Mittelblau
Medium blue
\n
\n
\n RAL 250 70 25\n
Wiesenblütenblau
Meadow blossom blue
\n
\n
\n RAL 250 70 30\n
Ginsterfalterblau
Broom butterfly blue
\n
\n
\n RAL 250 80 10\n
Hellcyan
Light cyan
\n
\n
\n RAL 250 80 15\n
Himalayablau
Himalaya blue
\n
\n
\n RAL 250 80 20\n
Samtblau
Velvet blue
\n
\n
\n RAL 250 85 05\n
Weißblau
White blue
\n
\n
\n RAL 250 85 10\n
Waschmittelbleu
Washing powder soft blue
\n
\n
\n RAL 250 85 15\n
Diamantbleu
Diamond soft blue
\n
\n
\n RAL 250 90 05\n
Eisweiß
Ice white
\n
\n
\n RAL 260 20 05\n
Blauschwarz
Blue-black
\n
\n
\n RAL 260 20 10\n
Natoblau
Nato blue
\n
\n
\n RAL 260 20 15\n
Anzugblau
Suit blue
\n
\n
\n RAL 260 20 20\n
Halitblau
Halite blue
\n
\n
\n RAL 260 30 05\n
Bergentengrau
Alpine duck grey
\n
\n
\n RAL 260 30 10\n
Bronzeblau
Bronze blue
\n
\n
\n RAL 260 30 15\n
Berlinerblau
Berlin blue
\n
\n
\n RAL 260 30 20\n
Frankreichblau
French blue
\n
\n
\n RAL 260 30 25\n
Tansanitblau
Tanzanite blue
\n
\n
\n RAL 260 30 30\n
Opalblau
Opal blue
\n
\n
\n RAL 260 30 35\n
Königsblau
Royal blue
\n
\n
\n RAL 260 40 05\n
Schwedenblau
Swedish blue
\n
\n
\n RAL 260 40 10\n
Schotenblau
Sheet blue
\n
\n
\n RAL 260 40 15\n
Zwetschgenblau
Plum blue
\n
\n
\n RAL 260 40 20\n
Kadettblau
Cadet blue
\n
\n
\n RAL 260 40 25\n
Emailleblau
Enamel blue
\n
\n
\n RAL 260 40 30\n
Kopenhagenerblau
Copenhagen blue
\n
\n
\n RAL 260 40 35\n
Bauhausblau
Bauhaus blue
\n
\n
\n RAL 260 40 40\n
Marineblau
Navy blue
\n
\n
\n RAL 260 40 45\n
LEDblau
LED blue
\n
\n
\n RAL 260 50 05\n
Spitzbergenblau
Spitsbergen blue
\n
\n
\n RAL 260 50 10\n
Zypressengraublau
Cypress grey blue
\n
\n
\n RAL 260 50 15\n
Mahonienbeerenblau
Mahonia berry blue
\n
\n
\n RAL 260 50 20\n
Kröpperblau
Doves blue
\n
\n
\n RAL 260 50 25\n
Biedermeierblau
Biedermeier blue
\n
\n
\n RAL 260 50 30\n
Pekingblau
Beijing blue
\n
\n
\n RAL 260 50 35\n
Vermeerblau
Vermeer blue
\n
\n
\n RAL 260 50 40\n
Porzellanblau
Meissen blue
\n
\n
\n RAL 260 60 05\n
Seehundgrau
Seal grey
\n
\n
\n RAL 260 60 10\n
Diopsidblau
Diopside blue
\n
\n
\n RAL 260 60 15\n
Nordlandblau
Nordland blue
\n
\n
\n RAL 260 60 20\n
Moorbeerenblau
Cranberry blue
\n
\n
\n RAL 260 60 25\n
Lupinenblau
Lupine blue
\n
\n
\n RAL 260 60 30\n
Sadebeerenbleu
Blueberry soft blue
\n
\n
\n RAL 260 60 35\n
Leuchtendblau
Brilliant blue
\n
\n
\n RAL 260 70 05\n
Nordlichtgrau
Northern light grey
\n
\n
\n RAL 260 70 10\n
Sturmvogelblaugrau
Petrel blue grey
\n
\n
\n RAL 260 70 15\n
Nordlandhellblau
Nordland light blue
\n
\n
\n RAL 260 70 20\n
Mattblau
Matte blue
\n
\n
\n RAL 260 70 25\n
Pazifikblau
Pacific blue
\n
\n
\n RAL 260 80 05\n
Lichtblaugrau
Light blue grey
\n
\n
\n RAL 260 80 10\n
Puderbleu
Powder soft blue
\n
\n
\n RAL 260 80 15\n
Windblau
Wind blue
\n
\n
\n RAL 260 85 05\n
Satinweiß
Satin white
\n
\n
\n RAL 260 85 10\n
Meeresbrisengrün
Sea breeze green
\n
\n
\n RAL 260 90 05\n
Milchblau
Milk blue
\n
\n
\n RAL 270 20 20\n
Krähenschwarzblau
Crow black blue
\n
\n
\n RAL 270 20 25\n
Indigoschwarz
Indigo black
\n
\n
\n RAL 270 20 29\n
Kraftblau
Effervescent blue
\n
\n
\n RAL 270 30 15\n
Mitternachtsblau
Midnight blue
\n
\n
\n RAL 270 30 20\n
Dunkelblau
Dark blue
\n
\n
\n RAL 270 30 25\n
Traubenblau
Grape blue
\n
\n
\n RAL 270 30 30\n
Mediciblau
Medici blue
\n
\n
\n RAL 270 30 35\n
Kolibriblau
Kolibri blue
\n
\n
\n RAL 270 30 40\n
Prinzenblau
Prince blue
\n
\n
\n RAL 270 40 15\n
Zinngrau
Pewter grey
\n
\n
\n RAL 270 40 20\n
Salonblau
Parlour blue
\n
\n
\n RAL 270 40 25\n
Funktionsblau
Functional blue
\n
\n
\n RAL 270 40 30\n
Schminkblau
Make-up blue
\n
\n
\n RAL 270 40 35\n
Lapislazuliblau
Lapis lazuli blue
\n
\n
\n RAL 270 40 40\n
Zauberblau
Magic blue
\n
\n
\n RAL 270 50 10\n
Brokatblau
Brocade blue
\n
\n
\n RAL 270 50 15\n
Edelblau
Noble blue
\n
\n
\n RAL 270 50 20\n
Delfterblau
Delft blue
\n
\n
\n RAL 270 50 25\n
Cocktailblau
Cocktail blue
\n
\n
\n RAL 270 50 30\n
Salbeiblütenblau
Sage blossom blue
\n
\n
\n RAL 270 50 35\n
Wienerblau
Viennese blue
\n
\n
\n RAL 270 50 40\n
Kornblumenblau
Cornflower blue
\n
\n
\n RAL 270 60 10\n
Fantasiegrau
Fantasy grey
\n
\n
\n RAL 270 60 15\n
Fliederblau
Lilac blue
\n
\n
\n RAL 270 60 20\n
Lavendelblau
Lavender blue
\n
\n
\n RAL 270 60 25\n
Ritterspornblau
Delphinium blue
\n
\n
\n RAL 270 60 30\n
Lidschattenblau
Eyeshadow blue
\n
\n
\n RAL 270 60 35\n
Argusfalterblau
Butterfly blue
\n
\n
\n RAL 270 70 10\n
Federbleu
Feather soft blue
\n
\n
\n RAL 270 70 15\n
Satinbleu
Satin soft blue
\n
\n
\n RAL 270 70 20\n
Engelblau
Angel blue
\n
\n
\n RAL 270 70 25\n
Knabenblau
Boy blue
\n
\n
\n RAL 270 80 10\n
Perlhellbleu
Light pearl soft blue
\n
\n
\n RAL 270 80 15\n
Retinableu
Retina soft blue
\n
\n
\n RAL 270 85 05\n
Engelshaarsilber
Angel hair silver
\n
\n
\n RAL 270 85 10\n
Perlmuttsilber
Mother-of-pearl silver
\n
\n
\n RAL 270 85 15\n
Muranobleu
Murano soft blue
\n
\n
\n RAL 270 90 05\n
Bleichweiß
Bleached white
\n
\n
\n RAL 280 20 05\n
Granitschwarz
Granite black
\n
\n
\n RAL 280 20 10\n
Diamantschwarz
Diamond black
\n
\n
\n RAL 280 20 15\n
Krähenschwarz
Crow black
\n
\n
\n RAL 280 20 20\n
Manganschwarz
Manganese black
\n
\n
\n RAL 280 20 25\n
Elitenblau
Elite blue
\n
\n
\n RAL 280 20 30\n
Ambassadorblau
Ambassador blue
\n
\n
\n RAL 280 30 05\n
Smokingnachtblau
Smoking night blue
\n
\n
\n RAL 280 30 10\n
Meteoritschwarzblau
Meteorite black blue
\n
\n
\n RAL 280 30 15\n
Kohlesteinblau
Anthracite blue
\n
\n
\n RAL 280 30 20\n
Granatsteinblau
Garnet stone blue
\n
\n
\n RAL 280 30 25\n
Wasserstoffblau
Hydrogen blue
\n
\n
\n RAL 280 30 30\n
Tiefblau
Deep blue
\n
\n
\n RAL 280 30 35\n
Theaterblau
Theatre blue
\n
\n
\n RAL 280 30 40\n
Plakatblau
Poster blue
\n
\n
\n RAL 280 40 05\n
Galeriegrau
Gallery grey
\n
\n
\n RAL 280 40 10\n
Wildlederindigo
Suede indigo
\n
\n
\n RAL 280 40 15\n
Dunkellavendel
Dark lavender
\n
\n
\n RAL 280 40 20\n
Sternenhimmelblau
Starry sky blue
\n
\n
\n RAL 280 40 25\n
Indigomarineblau
Indigo navy blue
\n
\n
\n RAL 280 40 30\n
Abendblau
Evening blue
\n
\n
\n RAL 280 40 35\n
Portugalblau
Portuguese blue
\n
\n
\n RAL 280 40 40\n
Neptunblau
Neptune blue
\n
\n
\n RAL 280 40 45\n
Hyazinthenblau
Hyacinth blue
\n
\n
\n RAL 280 50 05\n
Nobelgrau
Noble grey
\n
\n
\n RAL 280 50 10\n
Eisblaugrau
Ice blue grey
\n
\n
\n RAL 280 50 15\n
Granitblau
Granite blue
\n
\n
\n RAL 280 50 20\n
Lavendellila
Lavender mauve
\n
\n
\n RAL 280 50 25\n
Kostümblau
Costume blue
\n
\n
\n RAL 280 50 30\n
Helllila
Light mauve
\n
\n
\n RAL 280 50 35\n
Saphirschimmerblau
Sapphire shimmer blue
\n
\n
\n RAL 280 50 40\n
Divenviolett
Diva violet
\n
\n
\n RAL 280 60 05\n
Tüllgrau
Tulle grey
\n
\n
\n RAL 280 60 10\n
Süßlavendel
Sweet lavender
\n
\n
\n RAL 280 60 15\n
Marmorblau
Marble blue
\n
\n
\n RAL 280 60 20\n
Nebelviolett
Misty violet
\n
\n
\n RAL 280 60 25\n
Opalviolett
Opal violet
\n
\n
\n RAL 280 60 30\n
Persischviolett
Persian violet
\n
\n
\n RAL 280 60 35\n
Organzaviolett
Organza violet
\n
\n
\n RAL 280 70 05\n
Taupegrau
Taupe grey
\n
\n
\n RAL 280 70 10\n
Tüllviolett
Tulle violet
\n
\n
\n RAL 280 70 15\n
Sandglöckchenviola
Foxflower viola
\n
\n
\n RAL 280 70 20\n
Fliederduftbleu
Lilac scent soft blue
\n
\n
\n RAL 280 70 25\n
Asterblütenblau
Aster flower blue
\n
\n
\n RAL 280 80 05\n
Violaeisgrau
Viola ice grey
\n
\n
\n RAL 280 80 10\n
Hyazinthenweißbleu
Hyacinth white soft blue
\n
\n
\n RAL 280 80 15\n
Veilchenduftbleu
Violet scent soft blue
\n
\n
\n RAL 280 85 05\n
Kieselbleuweiß
Pebble soft blue white
\n
\n
\n RAL 280 85 10\n
Schmuckweiß
Jewellery white
\n
\n
\n RAL 280 90 05\n
Lilaweiß
Mauve white
\n
\n
\n RAL 280 93 05\n
Porzellanweiß
Porcelain white
\n
\n
\n RAL 290 20 10\n
Spinellsteinschwarz
Spinel stone black
\n
\n
\n RAL 290 20 15\n
Schwarzviolett
Black violet
\n
\n
\n RAL 290 20 20\n
Tropennachtblau
Tropical night blue
\n
\n
\n RAL 290 20 25\n
Indigoviolett
Indigo violet
\n
\n
\n RAL 290 20 30\n
Ultramarinviolett
Ultramarine violet
\n
\n
\n RAL 290 20 35\n
Trollingerblau
Schiava blue
\n
\n
\n RAL 290 30 10\n
Flintsteinblau
Flintstone blue
\n
\n
\n RAL 290 30 15\n
Spinellschwarz
Spinel black
\n
\n
\n RAL 290 30 20\n
Kirchenblau
Church blue
\n
\n
\n RAL 290 30 25\n
Finsternisblau
Gloomy blue
\n
\n
\n RAL 290 30 30\n
Lembergerblau
Lviv blue
\n
\n
\n RAL 290 30 35\n
Britischlila
British mauve
\n
\n
\n RAL 290 30 40\n
Amtsviolett
Official violet
\n
\n
\n RAL 290 40 10\n
Sturmtaucherschwarz
Shearwater black
\n
\n
\n RAL 290 40 15\n
Achatviolett
Agate violet
\n
\n
\n RAL 290 40 20\n
Tieflavendel
Deep lavender
\n
\n
\n RAL 290 40 25\n
Dämmerungslila
Dusk mauve
\n
\n
\n RAL 290 40 30\n
Reichviolett
Rich violet
\n
\n
\n RAL 290 40 35\n
Zwiebelschalenblau
Onion skin blue
\n
\n
\n RAL 290 40 40\n
Schwertlilienblau
Iris blue
\n
\n
\n RAL 290 40 45\n
Veilchenblau
Violet blue
\n
\n
\n RAL 290 50 10\n
Aschlila
Ash mauve
\n
\n
\n RAL 290 50 15\n
Sturmlila
Stormy mauve
\n
\n
\n RAL 290 50 20\n
Seidenkrepplila
Silk crepe mauve
\n
\n
\n RAL 290 50 25\n
Hyazinthenlila
Hyacinth mauve
\n
\n
\n RAL 290 50 30\n
Bergblumenlila
Mountain flower mauve
\n
\n
\n RAL 290 50 35\n
Chalcedonviolett
Chalcedony violet
\n
\n
\n RAL 290 50 40\n
Gladiolenblau
Gladiola blue
\n
\n
\n RAL 290 60 10\n
Lavendelblütengrau
Lavender blossom grey
\n
\n
\n RAL 290 60 15\n
Grazilviolett
Delicate violet
\n
\n
\n RAL 290 60 20\n
Opernlila
Opera mauve
\n
\n
\n RAL 290 60 25\n
Bleulavendel
Soft blue lavender
\n
\n
\n RAL 290 60 30\n
Plisseelila
Pleated mauve
\n
\n
\n RAL 290 60 35\n
Echtlavendel
True lavender
\n
\n
\n RAL 290 70 10\n
Cremeviolett
Cream violet
\n
\n
\n RAL 290 70 15\n
Glyzinienhellbleu
Wisteria light soft blue
\n
\n
\n RAL 290 70 20\n
Blütenlila
Blossom mauve
\n
\n
\n RAL 290 70 25\n
Sorbeteislila
Sorbet ice mauve
\n
\n
\n RAL 290 80 10\n
Tulipanbleu
Tulip soft blue
\n
\n
\n RAL 290 80 15\n
Blasslila
Pale lilac
\n
\n
\n RAL 290 85 05\n
Kalklila
Limestone mauve
\n
\n
\n RAL 290 85 10\n
Orchideenweiß
Orchid white
\n
\n
\n RAL 290 90 05\n
Violettweiß
Violet white
\n
\n
\n RAL 290 93 05\n
Fliederweiß
Lilac white
\n
\n
\n RAL 300 20 05\n
Nachtschwarz
Night black
\n
\n
\n RAL 300 20 10\n
Reiherblau
Heron blue
\n
\n
\n RAL 300 20 15\n
Violaschwarz
Viola black
\n
\n
\n RAL 300 20 20\n
Brombeerschwarz
Blackberry black
\n
\n
\n RAL 300 20 25\n
Kardinallila
Cardinal mauve
\n
\n
\n RAL 300 20 30\n
Zeremonienpurpur
Ceremonial purple
\n
\n
\n RAL 300 30 05\n
Nachtgrau
Night grey
\n
\n
\n RAL 300 30 10\n
Trauerviolett
Mourning violet
\n
\n
\n RAL 300 30 15\n
Clubgrau
Club grey
\n
\n
\n RAL 300 30 20\n
Maulbeerlilaschwarz
Mulberry mauve black
\n
\n
\n RAL 300 30 25\n
Abendlila
Evening mauve
\n
\n
\n RAL 300 30 30\n
Opernblau
Opera blue
\n
\n
\n RAL 300 30 35\n
Tiefviolett
Deep violet
\n
\n
\n RAL 300 30 40\n
Salbeiviolett
Sage violet
\n
\n
\n RAL 300 40 05\n
Barockgrau
Baroque grey
\n
\n
\n RAL 300 40 10\n
Gobelinlila
Gobelin mauve
\n
\n
\n RAL 300 40 15\n
Orchideengrau
Orchid grey
\n
\n
\n RAL 300 40 20\n
Altlila
Old mauve
\n
\n
\n RAL 300 40 25\n
Parmalila
Parma mauve
\n
\n
\n RAL 300 40 30\n
Wollviolett
Wool violet
\n
\n
\n RAL 300 40 35\n
Edelpurpur
Fine purple
\n
\n
\n RAL 300 40 40\n
Clematisblau
Clematis blue
\n
\n
\n RAL 300 40 45\n
Krönungsblau
Coronation blue
\n
\n
\n RAL 300 50 05\n
Falkengrau
Hawk grey
\n
\n
\n RAL 300 50 10\n
Veilchengrau
Violet grey
\n
\n
\n RAL 300 50 15\n
Auerhahnlila
Capercaillie mauve
\n
\n
\n RAL 300 50 20\n
Pariserviolett
Parisian violet
\n
\n
\n RAL 300 50 25\n
Tulpenviolett
Tulip violet
\n
\n
\n RAL 300 50 30\n
Spielzeuglila
Toy mauve
\n
\n
\n RAL 300 50 35\n
Winterzeitlila
Wintertime mauve
\n
\n
\n RAL 300 50 40\n
Klarlila
Clear mauve
\n
\n
\n RAL 300 60 05\n
Rebhuhngrau
Partridge grey
\n
\n
\n RAL 300 60 10\n
Rosengrau
Rose grey
\n
\n
\n RAL 300 60 15\n
Antikviola
Antique viola
\n
\n
\n RAL 300 60 20\n
Ritterspornviolett
Larkspur violet
\n
\n
\n RAL 300 60 25\n
Seidenflieder
Silk lilac
\n
\n
\n RAL 300 60 30\n
Heliotroplila
Heliotropic mauve
\n
\n
\n RAL 300 60 35\n
Amethystgrau
Amethyst grey
\n
\n
\n RAL 300 70 05\n
Samtgrau
Velvet grey
\n
\n
\n RAL 300 70 10\n
Morgendunstgrau
Morning mist grey
\n
\n
\n RAL 300 70 15\n
Lidschattenviola
Eyeshadow viola
\n
\n
\n RAL 300 70 20\n
Lavendelviolett
Lavender violet
\n
\n
\n RAL 300 70 25\n
Pinklavendel
Pink lavender
\n
\n
\n RAL 300 80 05\n
Dunstlila
Hazy mauve
\n
\n
\n RAL 300 80 10\n
Blassviolett
Pale violet
\n
\n
\n RAL 300 80 15\n
Eislila
Ice mauve
\n
\n
\n RAL 300 85 05\n
Zartviola
Delicate viola
\n
\n
\n RAL 300 85 10\n
Puderviolaweiß
Powder viola white
\n
\n
\n RAL 300 90 05\n
Lasurweiß
Translucent white
\n
\n
\n RAL 310 20 20\n
Obsidianlavaschwarz
Obsidian lava black
\n
\n
\n RAL 310 20 25\n
Operettenlila
Operetta mauve
\n
\n
\n RAL 310 20 30\n
Machtviolett
Powerful violet
\n
\n
\n RAL 310 30 15\n
Dunkelgraulila
Dark grey mauve
\n
\n
\n RAL 310 30 20\n
Machtlila
Powerful mauve
\n
\n
\n RAL 310 30 25\n
Englischviolett
English violet
\n
\n
\n RAL 310 30 30\n
Kristallpurpur
Crystal purple
\n
\n
\n RAL 310 30 35\n
Prägnantviolett
Succinct violet
\n
\n
\n RAL 310 30 40\n
Lodenpurpur
Loden purple
\n
\n
\n RAL 310 40 10\n
Dunkelpink
Dark pink
\n
\n
\n RAL 310 40 15\n
Schleierviolett
Violet haze
\n
\n
\n RAL 310 40 20\n
Indigorot
Indigo red
\n
\n
\n RAL 310 40 25\n
Charoitviolett
Charoite violet
\n
\n
\n RAL 310 40 30\n
Königspurpur
Royal purple
\n
\n
\n RAL 310 40 35\n
Magentaveilchen
Magenta violet
\n
\n
\n RAL 310 40 40\n
Purlila
Pure mauve
\n
\n
\n RAL 310 50 10\n
Trüblila
Dull mauve
\n
\n
\n RAL 310 50 15\n
Batikflieder
Batik lilac
\n
\n
\n RAL 310 50 20\n
Provenceviolett
Provence violet
\n
\n
\n RAL 310 50 25\n
Baronesslila
Baroness mauve
\n
\n
\n RAL 310 50 30\n
Bitterviolett
Bitter violet
\n
\n
\n RAL 310 50 35\n
Violettrosé
Violet rose
\n
\n
\n RAL 310 50 40\n
Orchideenlila
Orchid mauve
\n
\n
\n RAL 310 60 10\n
Dezentlila
Gentle mauve
\n
\n
\n RAL 310 60 15\n
Rauchlila
Smoky mauve
\n
\n
\n RAL 310 60 20\n
Safranblütenlila
Saffron blossom mauve
\n
\n
\n RAL 310 60 25\n
Kokettpink
Flirty pink
\n
\n
\n RAL 310 60 30\n
Pfingstrosenlila
Peony mauve
\n
\n
\n RAL 310 60 35\n
Lilapurpur
Lilac purple
\n
\n
\n RAL 310 70 10\n
Amorphrosé
Amorphous rose
\n
\n
\n RAL 310 70 15\n
Transparentlila
Transparent mauve
\n
\n
\n RAL 310 70 20\n
Blaurosa
Blue pink
\n
\n
\n RAL 310 70 25\n
Glasviolett
Glass violet
\n
\n
\n RAL 310 80 10\n
Puderviola
Powder viola
\n
\n
\n RAL 310 80 15\n
Orchideenviolett
Orchid violet
\n
\n
\n RAL 310 85 05\n
Feenrosa
Fairy pink
\n
\n
\n RAL 310 85 10\n
Tricotfliederweiß
Tricot lilac white
\n
\n
\n RAL 310 90 05\n
Mauerblümchenweiß
Wallflower white
\n
\n
\n RAL 320 20 05\n
Lavaschwarz
Lava black
\n
\n
\n RAL 320 20 10\n
Obsidianrot
Obsidian red
\n
\n
\n RAL 320 20 15\n
Spinellviolett
Spinel violet
\n
\n
\n RAL 320 20 20\n
Auberginenlila
Aubergine mauve
\n
\n
\n RAL 320 20 25\n
Dunkelpurpur
Dark purple
\n
\n
\n RAL 320 30 05\n
Violettschwarz
Violet black
\n
\n
\n RAL 320 30 10\n
Steinviolett
Stone violet
\n
\n
\n RAL 320 30 15\n
Amethystdunkelviolett
Amethyst dark violet
\n
\n
\n RAL 320 30 20\n
Dunkelbrombeer
Dark blackberry
\n
\n
\n RAL 320 30 25\n
Purpuritviolett
Purpurite violet
\n
\n
\n RAL 320 30 30\n
Zwetschgenlila
Damson mauve
\n
\n
\n RAL 320 30 35\n
Traubenpurpur
Grape purple
\n
\n
\n RAL 320 30 37\n
Loungeviolett
Lounge violet
\n
\n
\n RAL 320 40 05\n
Schieferlila
Slate mauve
\n
\n
\n RAL 320 40 10\n
Olivinbasalt
Olivine basalt
\n
\n
\n RAL 320 40 15\n
Antikgrau
Antique grey
\n
\n
\n RAL 320 40 20\n
Basilikumlila
Basil mauve
\n
\n
\n RAL 320 40 25\n
Gladiolenviolett
Gladiola violet
\n
\n
\n RAL 320 40 30\n
Krautblütenviolett
Cabbage blossom violet
\n
\n
\n RAL 320 40 35\n
Fliederviolett
Lilac violet
\n
\n
\n RAL 320 40 40\n
Veilchenpurpur
Violet purple
\n
\n
\n RAL 320 50 05\n
Grauviolett
Grey violet
\n
\n
\n RAL 320 50 10\n
Britischgrauviolett
British grey mauve
\n
\n
\n RAL 320 50 15\n
Parmagrau
Parma grey
\n
\n
\n RAL 320 50 20\n
Alpenveilchen
Cyclamen
\n
\n
\n RAL 320 50 25\n
Poesielila
Poetry mauve
\n
\n
\n RAL 320 50 30\n
Violagrau
Viola grey
\n
\n
\n RAL 320 50 35\n
Astervioletta
Aster violetta
\n
\n
\n RAL 320 50 40\n
Empireviolett
Empire violet
\n
\n
\n RAL 320 60 05\n
Aragonitgrau
Aragonite grey
\n
\n
\n RAL 320 60 10\n
Kreideviolett
Chalk violet
\n
\n
\n RAL 320 60 15\n
Amethystgrauviolett
Amethyst grey violet
\n
\n
\n RAL 320 60 20\n
Wunderveilchen
Wonder violet
\n
\n
\n RAL 320 60 25\n
Nachtschattenviolett
Nightshade violet
\n
\n
\n RAL 320 60 30\n
Lobbylila
Lobby lilac
\n
\n
\n RAL 320 60 35\n
Sorbetbrombeer
Blackberry sorbet
\n
\n
\n RAL 320 70 05\n
Holundergrau
Elderberry grey
\n
\n
\n RAL 320 70 10\n
Glockenblumenviolett
Bellflower violet
\n
\n
\n RAL 320 70 15\n
Quarzviolett
Quartz violet
\n
\n
\n RAL 320 70 20\n
Strandflieder
Beach lilac
\n
\n
\n RAL 320 70 25\n
Fliederpink
Lilac pink
\n
\n
\n RAL 320 80 05\n
Hellviolett
Light violet
\n
\n
\n RAL 320 80 10\n
Amethysthellviolett
Amethyst light violet
\n
\n
\n RAL 320 80 15\n
Kosmetiklila
Cosmetic mauve
\n
\n
\n RAL 320 85 05\n
Brombeercreme
Blackberry cream
\n
\n
\n RAL 320 85 10\n
Ametrinquarz
Ametrine quartz
\n
\n
\n RAL 320 90 05\n
Apatitrosa
Apatite pink
\n
\n
\n RAL 330 20 20\n
Tiefgrundlila
Profound mauve
\n
\n
\n RAL 330 20 25\n
Opulentlila
Opulent mauve
\n
\n
\n RAL 330 30 15\n
Korinthenviolett
Currant violet
\n
\n
\n RAL 330 30 20\n
Mexikanischpurpur
Mexican purple
\n
\n
\n RAL 330 30 25\n
Parmapflaumenrot
Parma plum red
\n
\n
\n RAL 330 30 30\n
Intensivpurpur
Intense purple
\n
\n
\n RAL 330 30 35\n
Opulentpurpur
Opulent purple
\n
\n
\n RAL 330 30 40\n
Intensivlila
Intense mauve
\n
\n
\n RAL 330 40 10\n
Patinaviolett
Patina violet
\n
\n
\n RAL 330 40 15\n
Dunkelpurpurgrau
Dark purple grey
\n
\n
\n RAL 330 40 20\n
Amaranthrot
Amaranth red
\n
\n
\n RAL 330 40 25\n
Tiefmagenta
Deep magenta
\n
\n
\n RAL 330 40 30\n
Phloxblumenviolett
Phloxflower violet
\n
\n
\n RAL 330 40 35\n
Distellila
Thistle mauve
\n
\n
\n RAL 330 40 40\n
Visionarot
Visiona red
\n
\n
\n RAL 330 40 45\n
Purpuritrot
Purpurite red
\n
\n
\n RAL 330 50 10\n
Jutegrau
Burlap grey
\n
\n
\n RAL 330 50 15\n
Saphirrosa
Sapphire pink
\n
\n
\n RAL 330 50 20\n
Prachtnelkenlila
Dianthus mauve
\n
\n
\n RAL 330 50 25\n
Kristallrosa
Crystal pink
\n
\n
\n RAL 330 50 30\n
Tulipanviolett
Tulipan violet
\n
\n
\n RAL 330 50 35\n
Violettrot
Violet red
\n
\n
\n RAL 330 50 40\n
Orchideenpurpur
Orchid purple
\n
\n
\n RAL 330 60 10\n
Greigeviolett
Greige violet
\n
\n
\n RAL 330 60 15\n
Vesuvianviolett
Vesuvian violet
\n
\n
\n RAL 330 60 20\n
Enzianviolett
Gentian violet
\n
\n
\n RAL 330 60 25\n
Gründerzeitpink
Wilhelminian pink
\n
\n
\n RAL 330 60 30\n
Bühnenlila
Stage mauve
\n
\n
\n RAL 330 60 35\n
Pfingstnelkenlila
Cheddar pink mauve
\n
\n
\n RAL 330 60 40\n
Colomborotlila
Colombo red mauve
\n
\n
\n RAL 330 70 10\n
Nebelrosa
Mist pink
\n
\n
\n RAL 330 70 15\n
Lauchblütenpink
Leek blossom pink
\n
\n
\n RAL 330 70 20\n
Erdbeerrosa
Strawberry pink
\n
\n
\n RAL 330 70 25\n
Purpurrosa
Purple pink
\n
\n
\n RAL 330 70 30\n
Kleeblütenrosa
Clover pink
\n
\n
\n RAL 330 80 10\n
Purpurweiß
Purple white
\n
\n
\n RAL 330 80 15\n
Lieblichrosa
Lovely pink
\n
\n
\n RAL 330 80 20\n
Designerrosa
Designer pink
\n
\n
\n RAL 330 85 05\n
Hellmagnolienrosé
Light magnolia rose
\n
\n
\n RAL 330 85 10\n
Himbeerrosa
Raspberry pink
\n
\n
\n RAL 330 85 15\n
Himmlischrosa
Heavenly pink
\n
\n
\n RAL 330 90 05\n
Delikatessweiß
Delicacy white
\n
\n
\n RAL 340 20 05\n
Lakritzschwarz
Liquorice black
\n
\n
\n RAL 340 20 10\n
Mangostanoviolett
Mangosteen violet
\n
\n
\n RAL 340 20 15\n
Sitterrot
Sitter red
\n
\n
\n RAL 340 20 20\n
Saftviolett
Juice violet
\n
\n
\n RAL 340 20 25\n
Prestigelila
Prestige mauve
\n
\n
\n RAL 340 30 05\n
Apfelkrautschwarz
Apple herb black
\n
\n
\n RAL 340 30 10\n
Passionsfruchtlila
Passionfruit mauve
\n
\n
\n RAL 340 30 15\n
Dunkelfeigenviolett
Dark fig violet
\n
\n
\n RAL 340 30 20\n
Rubinviolett
Ruby violet
\n
\n
\n RAL 340 30 25\n
Brombeertiefrot
Blackberry deep red
\n
\n
\n RAL 340 30 30\n
Tiefrot
Deep red
\n
\n
\n RAL 340 30 35\n
Samtlila
Velvet mauve
\n
\n
\n RAL 340 30 38\n
Waldfruchtrot
Forest fruit red
\n
\n
\n RAL 340 40 05\n
Lilabraun
Mauve brown
\n
\n
\n RAL 340 40 10\n
Spinellgrau
Spinel grey
\n
\n
\n RAL 340 40 15\n
Erdbraunviolett
Earth brown violet
\n
\n
\n RAL 340 40 20\n
Dahlienmattrot
Dahlia matte red
\n
\n
\n RAL 340 40 25\n
Brokatviolett
Brocade violet
\n
\n
\n RAL 340 40 30\n
Krappmagenta
Madder magenta
\n
\n
\n RAL 340 40 35\n
Clublila
Club mauve
\n
\n
\n RAL 340 40 40\n
Kirschrot
Cherry red
\n
\n
\n RAL 340 40 45\n
Magentarot
Magenta red
\n
\n
\n RAL 340 50 05\n
Jubiläumsgrau
Jubilee grey
\n
\n
\n RAL 340 50 10\n
Portweinrot
Port wine red
\n
\n
\n RAL 340 50 15\n
Rohgranatviola
Raw garnet viola
\n
\n
\n RAL 340 50 20\n
Kreuzblumenrot
Milkwort red
\n
\n
\n RAL 340 50 25\n
Rostmagenta
Rust magenta
\n
\n
\n RAL 340 50 30\n
Himbeergeleerot
Raspberry jelly red
\n
\n
\n RAL 340 50 35\n
Fingerhutrot
Thimble red
\n
\n
\n RAL 340 50 40\n
Cyclamonrot
Cyclamen red
\n
\n
\n RAL 340 50 45\n
Brillantkarmin
Brilliant carmine
\n
\n
\n RAL 340 60 05\n
Erikarotgrau
Heather red grey
\n
\n
\n RAL 340 60 10\n
Pianomauve
Piano mauve
\n
\n
\n RAL 340 60 15\n
Abendrosa
Evening pink
\n
\n
\n RAL 340 60 20\n
Caprimodepink
Capri fashion pink
\n
\n
\n RAL 340 60 25\n
Antikpink
Antique hot pink
\n
\n
\n RAL 340 60 30\n
Wangenrot
Cheek red
\n
\n
\n RAL 340 60 35\n
Malvenblütenpink
Hollyhock blossom pink
\n
\n
\n RAL 340 60 40\n
Bischofsrot
Bishop red
\n
\n
\n RAL 340 70 05\n
Lilagrau
Mauve grey
\n
\n
\n RAL 340 70 10\n
Buchweizenlila
Buckwheat mauve
\n
\n
\n RAL 340 70 15\n
Malvenrosa
Hollyhock pink
\n
\n
\n RAL 340 70 20\n
Idyllenrosa
Idyllic pink
\n
\n
\n RAL 340 70 25\n
Windenblütenpink
Morning glory pink
\n
\n
\n RAL 340 70 30\n
Softfuchsia
Soft fuschia
\n
\n
\n RAL 340 70 35\n
Prallpink
Firm pink
\n
\n
\n RAL 340 80 05\n
Pianograurosé
Piano grey rose
\n
\n
\n RAL 340 80 10\n
Minzblütenrosé
Mint blossom rose
\n
\n
\n RAL 340 80 15\n
Skandalrosé
Scandalous rose
\n
\n
\n RAL 340 80 20\n
Bonbonrosa
Bonbon rose
\n
\n
\n RAL 340 85 05\n
Erdbeercreme
Strawberry cream
\n
\n
\n RAL 340 85 10\n
Hellflamingopink
Light flamingo pink
\n
\n
\n RAL 340 85 15\n
Lacklila
Lacquer mauve
\n
\n
\n RAL 340 90 05\n
Rosenweiß
Rose white
\n
\n
\n RAL 340 93 05\n
Kleiderrosa
Dress pink
\n
\n
\n RAL 350 20 10\n
Glühweinrot
Mulled wine red
\n
\n
\n RAL 350 20 15\n
Sanftrot
Soft red
\n
\n
\n RAL 350 20 20\n
Sternrubin
Star ruby
\n
\n
\n RAL 350 20 25\n
Chilischwarzrot
Chilli black red
\n
\n
\n RAL 350 20 30\n
Tulpenbaumpurpur
Tulip poplar purple
\n
\n
\n RAL 350 30 10\n
Sperlinggraurot
Sparrow grey red
\n
\n
\n RAL 350 30 15\n
Kieselrot
Siliceous red
\n
\n
\n RAL 350 30 20\n
Likörrot
Liqueur red
\n
\n
\n RAL 350 30 25\n
Weingummirot
Wine gummy red
\n
\n
\n RAL 350 30 30\n
Burlatrot
Burlat red
\n
\n
\n RAL 350 30 35\n
Bordeauxrot
Bordeaux red
\n
\n
\n RAL 350 30 40\n
Trockenblumenpurpur
Dried flower purple
\n
\n
\n RAL 350 40 10\n
Auberginengrau
Aubergine grey
\n
\n
\n RAL 350 40 15\n
Schlafmohnmauve
Opium mauve
\n
\n
\n RAL 350 40 20\n
Graukarmin
Grey carmine
\n
\n
\n RAL 350 40 25\n
Nektarrot
Nectar red
\n
\n
\n RAL 350 40 30\n
Dunkelrosé
Dark rose
\n
\n
\n RAL 350 40 35\n
Bonbonrot
Bonbon red
\n
\n
\n RAL 350 40 40\n
Zyclamenrot
Cyclamen red
\n
\n
\n RAL 350 40 45\n
Puderrot
Powder red
\n
\n
\n RAL 350 40 50\n
Krapprot
Madder red
\n
\n
\n RAL 350 50 10\n
Unschuldsrosa
Innocent pink
\n
\n
\n RAL 350 50 15\n
Stumpfviolett
Blunt violet
\n
\n
\n RAL 350 50 20\n
Korundrot
Corundum red
\n
\n
\n RAL 350 50 25\n
Batikpink
Batik pink
\n
\n
\n RAL 350 50 30\n
Beryllrot
Beryl red
\n
\n
\n RAL 350 50 35\n
Hochrot
Crimson
\n
\n
\n RAL 350 50 40\n
Krapprosa
Madder rose
\n
\n
\n RAL 350 50 45\n
Signalpink
Signal pink
\n
\n
\n RAL 350 50 50\n
Nagellackpink
Nail polish pink
\n
\n
\n RAL 350 60 10\n
Jugendstilviolett
Art Nouveau violet
\n
\n
\n RAL 350 60 15\n
Mohairrosa
Mohair pink
\n
\n
\n RAL 350 60 20\n
Heideblumenviolett
Heather violet
\n
\n
\n RAL 350 60 25\n
Heidekrautrosé
Heather rose
\n
\n
\n RAL 350 60 30\n
Venetianerrosa
Venetian pink
\n
\n
\n RAL 350 60 35\n
Dolomitrot
Dolomite red
\n
\n
\n RAL 350 60 40\n
Kamelienrosa
Camellia pink
\n
\n
\n RAL 350 60 45\n
Persischrosa
Persian pink
\n
\n
\n RAL 350 70 10\n
Kaltrosa
Cold pink
\n
\n
\n RAL 350 70 15\n
Schattenrosa
Shady pink
\n
\n
\n RAL 350 70 20\n
Grasnelkenrosa
Lady�s cushions pink
\n
\n
\n RAL 350 70 25\n
Korallenrosa
Coral pink
\n
\n
\n RAL 350 70 30\n
Technorosa
Techno pink
\n
\n
\n RAL 350 70 35\n
Kaugummipink
Chewing gum pink
\n
\n
\n RAL 350 80 10\n
Magnolienweiß
Magnolia white
\n
\n
\n RAL 350 80 15\n
Frühlingsrosa
Spring pink
\n
\n
\n RAL 350 80 20\n
Hellpink
Light pink
\n
\n
\n RAL 350 85 05\n
Elfenweiß
Fairy white
\n
\n
\n RAL 350 85 10\n
Orchideenrosé
Orchid rose
\n
\n
\n RAL 350 85 15\n
Blasspink
Pale pink
\n
\n
\n RAL 350 90 05\n
Lichtrosé
Light rose
\n
\n
\n RAL 350 90 10\n
Windröschenweiß
Ranuncula white
\n
\n
\n RAL 350 93 05\n
Clichyweiß
Clichy white
\n
\n
\n RAL 360 20 15\n
Piermontsteinrot
Piermont stone red
\n
\n
\n RAL 360 30 05\n
Rußrot
Soot red
\n
\n
\n RAL 360 30 10\n
Pfefferkornrot
Peppercorn red
\n
\n
\n RAL 360 30 15\n
Primitivoweinrot
Zinfandel red
\n
\n
\n RAL 360 30 20\n
Artdecorot
Art deco red
\n
\n
\n RAL 360 30 25\n
Klinkerrot
Clinker red
\n
\n
\n RAL 360 30 30\n
Kirschsaftrot
Cherry juice red
\n
\n
\n RAL 360 30 35\n
Schlossrot
Palace red
\n
\n
\n RAL 360 30 40\n
Glutrot
Ember red
\n
\n
\n RAL 360 40 05\n
Röstschwarz
Roasted black
\n
\n
\n RAL 360 40 10\n
Mokkabraun
Mocha brown
\n
\n
\n RAL 360 40 15\n
Rubingrau
Ruby grey
\n
\n
\n RAL 360 40 20\n
Barockrot
Baroque red
\n
\n
\n RAL 360 40 25\n
Rauschrot
Frenzied red
\n
\n
\n RAL 360 40 30\n
Johannisbeerrot
Redcurrant
\n
\n
\n RAL 360 40 35\n
Orientpink
Orient pink
\n
\n
\n RAL 360 40 40\n
Auroramagenta
Aurora magenta
\n
\n
\n RAL 360 40 45\n
Kardinalrot
Cardinal red
\n
\n
\n RAL 360 40 50\n
Salonrot
Parlour red
\n
\n
\n RAL 360 50 05\n
Bimssteingrau
Pumice grey
\n
\n
\n RAL 360 50 10\n
Tresterrot
Pomace red
\n
\n
\n RAL 360 50 15\n
Abendpurpur
Evening crimson
\n
\n
\n RAL 360 50 20\n
Kupferrosa
Copper pink
\n
\n
\n RAL 360 50 25\n
Jugendstilrosa
Art Nouveau pink
\n
\n
\n RAL 360 50 30\n
Kosmetikrot
Cosmetic red
\n
\n
\n RAL 360 50 35\n
Indischpink
Indian pink
\n
\n
\n RAL 360 50 40\n
Kirroyalrosé
Kir royale rose
\n
\n
\n RAL 360 50 45\n
Hahnenkammrot
Cockscomb red
\n
\n
\n RAL 360 50 50\n
Persischrot
Persian red
\n
\n
\n RAL 360 60 05\n
Aschrosa
Ash pink
\n
\n
\n RAL 360 60 10\n
Majolikamauve
Majolica mauve
\n
\n
\n RAL 360 60 15\n
Feigenfruchtlila
Fig fruit mauve
\n
\n
\n RAL 360 60 20\n
Edelflieder
Noble lilac
\n
\n
\n RAL 360 60 25\n
Hellrot
Light red
\n
\n
\n RAL 360 70 05\n
Teeblütenrosa
Tea blossom pink
\n
\n
\n RAL 360 70 10\n
Quarzrosa
Quartz pink
\n
\n
\n RAL 360 70 15\n
Opalinrosa
Opaline pink
\n
\n
\n RAL 360 80 05\n
Perlmuttrosa
Mother-of-pearl pink
\n
\n
\n RAL 360 80 10\n
Venezianerrosa
Venetian pink
\n
\n
\n RAL 360 80 15\n
Seifenrosa
Soap pink
\n
\n
\n RAL 360 85 05\n
Theaterpuderrosé
Theatre powder rose
\n
\n
\n RAL 360 85 10\n
Lotusrosa
Lotus pink
\n
\n
\n RAL 360 90 05\n
Eisrosa
Ice pink
\n
\n
\n RAL 360 90 10\n
Tortencreme
Cake frosting
\n
\n
\n RAL 360 93 05\n
Pfeilkrautweiß
Arrowhead white
\n
\n
\n \n `,\n styles: [\n '.row { margin: 0 0} input { margin: 0 10px } textarea { margin: 0 10px } .modal-footer {margin-top:20px; border-top:none}',\n '.subtext {pointer-events: none;}',\n '.farben {display: flex; flex-wrap:wrap;}',\n `.farbe {\n flex-direction:column;\n width: 120px;\n height: 120px;\n margin: 0 10px 10px 10px;\n color: #FFF;\n display: flex;\n text-align:center;\n justify-content: center;\n font-size: smaller; \n font-weight: bold;\n cursor: pointer;\n }`,\n `.dark {\n color: #111;\n }`]\n})\n\n\nexport class RalColorPickerDialogComponent {\n\n firstName : string = '';\n lastName : string = '';\n email : string = '';\n\n public event: EventEmitter = new EventEmitter();\n\n constructor(\n public bsModalRef: BsModalRef,\n ) {}\n\n test(event: any)\n { \n this.event.emit({colorString: event.target.textContent});\n this.bsModalRef.hide();\n }\n\n}\n","module.exports = \"
\\n

Partner auswählen

\\n\\n
\\n
\\n \\n\\n \\n \\n #\\n Firmenname\\n Straße / Nr\\n PLZ\\n Ort\\n Aktionen\\n \\n \\n {{ row.id }}\\n {{ row.name }}\\n {{ row.invoiceAddress && row.invoiceAddress.street }}\\n {{ row.invoiceAddress && row.invoiceAddress.zipCode }}\\n {{ row.invoiceAddress && row.invoiceAddress.city }}\\n \\n \\n \\n \\n \\n\\n \\n \\n #\\n Firmenname\\n Straße / Nr\\n PLZ\\n Ort\\n Aktionen\\n \\n \\n {{ row.id }}\\n {{ row.name }}\\n {{ row.deliveryAddress && row.deliveryAddress.street }}\\n {{ row.deliveryAddress && row.deliveryAddress.zipCode }}\\n {{ row.deliveryAddress && row.deliveryAddress.city }}\\n \\n \\n \\n \\n \\n\\n\\n
\\n
\\n\\n
\"","import { Component, OnInit } from '@angular/core';\nimport { BsModalRef } from 'ngx-bootstrap/modal';\nimport { Subject } from 'rxjs';\nimport { ServicePartner } from 'src/app/model/service-partner.model';\nimport { RepairCenter } from 'src/app/model/repair-center.model';\nimport { REST_SERVER } from 'src/app/config';\n\nexport class SelectPartnerResult {\n success:boolean;\n servicePartner:ServicePartner;\n repairCenter:RepairCenter;\n}\n\n@Component({\n selector: 'select-partner-dialog',\n templateUrl: './select-partner-dialog.component.html'\n })\n \n export class SelectPartnerDialogComponent implements OnInit {\n title: string;\n closeBtnName: string = \"OK\";\n msg:string;\n\n servicePartnerFilterDesc = {\n name: {\n type: \"string\",\n comp: \"like\",\n label: \"Firmenname\",\n },\n }\n\n partnerType:string = \"servicePartner\";\n\n public onClose: Subject = new Subject();\n \n constructor(public bsModalRef: BsModalRef) {}\n \n ngOnInit() {\n \n }\n\n public getServicePartnerBaseUrl():string {\n return REST_SERVER + \"/service-partners\";\n }\n\n public getRepairCenterBaseUrl():string {\n return REST_SERVER + \"/repair-centers\";\n }\n\n public selectServicePartner(servicePartner:ServicePartner):void {\n let result = new SelectPartnerResult();\n result.success = true;\n result.servicePartner = servicePartner;\n this.onClose.next(result);\n this.bsModalRef.hide();\n }\n\n public selectRepairCenter(repairCenter:RepairCenter):void {\n let result = new SelectPartnerResult();\n result.success = true;\n result.repairCenter = repairCenter;\n this.onClose.next(result);\n this.bsModalRef.hide();\n }\n\n public onCancel():void {\n let result = new SelectPartnerResult();\n result.success = false;\n this.onClose.next(result);\n this.bsModalRef.hide();\n }\n }","import { Component, OnInit } from '@angular/core';\nimport { BsModalRef } from 'ngx-bootstrap/modal';\nimport { Subject } from 'rxjs';\nimport { DomSanitizer, SafeUrl } from '@angular/platform-browser';\nimport { HttpClient } from '@angular/common/http';\n\n@Component({\n selector: 'modal-content',\n styles: [`\n iframe {\n width: 100%; height: 40em;\n background: url('data:image/svg+xml;charset=utf-8,Bitte warten ...') 0px 0px no-repeat;\n border: 1px solid gray;\n }\n `],\n template: `\n
\n

{{title}}

\n \n
\n
\n

{{ msg }}

\n \n
\n
\n \n \n
\n `\n })\n \n export class ViewerDialogComponent implements OnInit {\n title: string;\n msg: string = '';\n closeBtnName: string = \"OK\";\n printBrowserBtnName: string = \"mit Browser Drucken\";\n path:string;\n\n html:string;\n\n public onClose: Subject = new Subject();\n \n constructor(\n public bsModalRef: BsModalRef, \n private _sanitizer:DomSanitizer,\n private _http:HttpClient,) {}\n \n ngOnInit() {\n console.log(this.path);\n\n (async () => {\n await this.getHtml();\n await this.setLabelUrl()\n })();\n }\n\n async getHtml() {\n this.html = await this._http.get('./assets/labelDisplay.html', {responseType: 'text'}).toPromise();\n }\n\n async setLabelUrl() {\n \n let pathPrefix = window.location.protocol + \"//\" + window.location.host;\n this.html = this.html.replace('@@LABELURL@@', pathPrefix + this.path);\n }\n\n get labelHtml() {\n return this._sanitizer.bypassSecurityTrustHtml(this.html);\n }\n\n public async onPrintInBrowser(): Promise {\n\n const iframeWindow = document.querySelector(\"iframe\").contentWindow;\n iframeWindow.print();\n }\n\n public onConfirm(): void {\n this.onClose.next();\n this.bsModalRef.hide();\n }\n\n get sanitizedPath() {\n \n return this._sanitizer.bypassSecurityTrustResourceUrl(this.path);\n } \n }","module.exports = \"
\\n
\\n \\n
\\n \\n
\"","module.exports = \"button.btn {\\n border-radius: 0;\\n border: none;\\n box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.15);\\n}\\n\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9hcHAtdWkvc3JjL2FwcC9jb21wb25lbnRzL3VpL2ZpbHRlci1pbnB1dHMvZmlsdGVyLWlucHV0ZmllbGQvZmlsdGVyLWlucHV0ZmllbGQuY29tcG9uZW50Lmxlc3MiLCJzcmMvYXBwL2NvbXBvbmVudHMvdWkvZmlsdGVyLWlucHV0cy9maWx0ZXItaW5wdXRmaWVsZC9maWx0ZXItaW5wdXRmaWVsZC5jb21wb25lbnQubGVzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtFQUNJLGdCQUFBO0VBQ0EsWUFBQTtFQUNBLGdEQUFBO0FDQ0oiLCJmaWxlIjoic3JjL2FwcC9jb21wb25lbnRzL3VpL2ZpbHRlci1pbnB1dHMvZmlsdGVyLWlucHV0ZmllbGQvZmlsdGVyLWlucHV0ZmllbGQuY29tcG9uZW50Lmxlc3MiLCJzb3VyY2VzQ29udGVudCI6WyJidXR0b24uYnRuIHtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBib3gtc2hhZG93OiAwcHggMHB4IDEwcHggMHB4IHJnYmEoMCwgMCwgMCwgMC4xNSk7XG59IiwiYnV0dG9uLmJ0biB7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAxMHB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xufVxuIl19 */\"","import { Component, OnInit, Input, forwardRef } from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { FilterBase } from 'src/app/components/ui/filter-inputs/util/filter-base';\n\n@Component({\n selector: 'app-filter-inputfield',\n templateUrl: './filter-inputfield.component.html',\n styleUrls: ['./filter-inputfield.component.less'],\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => FilterInputfieldComponent),\n multi: true\n }\n ],\n})\nexport class FilterInputfieldComponent implements OnInit, ControlValueAccessor {\n\n @Input() placeholder:string;\n\n private _value:string;\n\n private _onChange = (value: string) => {};\n private _onTouched = () => {};\n\n constructor() { }\n\n ngOnInit() {\n }\n\n get value():string {\n return this._value;\n }\n\n set value(value: string) {\n if(value != this._value) {\n this._value = value;\n this._onChange(value);\n }\n }\n\n writeValue(value: string):void {\n this.value = value;\n }\n\n registerOnChange(onChange: (value: string) => void):void {\n this._onChange = onChange;\n }\n\n registerOnTouched(onTouched: () => void):void {\n this._onTouched = onTouched;\n }\n\n onTouched():void {\n this._onTouched();\n }\n}\n","module.exports = \"
\\n
\\n \\n
\\n \\n
\\n\"","module.exports = \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvdWkvZmlsdGVyLWlucHV0cy9maWx0ZXItaW5wdXRzZWxlY3QvZmlsdGVyLWlucHV0c2VsZWN0LmNvbXBvbmVudC5sZXNzIn0= */\"","import { Component, OnInit, Input, forwardRef } from '@angular/core';\nimport { FilterBase } from 'src/app/components/ui/filter-inputs/util/filter-base';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\n\n@Component({\n selector: 'app-filter-inputselect',\n templateUrl: './filter-inputselect.component.html',\n styleUrls: ['./filter-inputselect.component.less'],\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => FilterInputselectComponent),\n multi: true\n }\n ],\n})\nexport class FilterInputselectComponent extends FilterBase {\n\n @Input() items = [];\n\n ngOnInit() {\n }\n\n}\n","import { Component, OnInit, Input, forwardRef } from '@angular/core';\nimport { ControlValueAccessor } from '@angular/forms';\n\nexport class FilterBase implements OnInit, ControlValueAccessor {\n \n @Input() label:string;\n \n private _value:string;\n \n private _onChange = (value: string) => {};\n private _onTouched = () => {};\n \n constructor() { }\n \n ngOnInit() {\n }\n \n get value():string {\n return this._value;\n }\n \n set value(value: string) {\n if(value != this._value) {\n this._value = value;\n this._onChange(value);\n }\n }\n \n writeValue(value: string):void {\n this.value = value;\n }\n \n registerOnChange(onChange: (value: string) => void):void {\n this._onChange = onChange;\n }\n \n registerOnTouched(onTouched: () => void):void {\n this._onTouched = onTouched;\n }\n \n onTouched():void {\n this._onTouched();\n }\n \n }","module.exports = \"\\n\"","module.exports = \"button {\\n vertical-align: top;\\n border-radius: 0;\\n border: none;\\n box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.15);\\n}\\n\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9hcHAtdWkvc3JjL2FwcC9jb21wb25lbnRzL3VpL2ZpbHRlci1pbnB1dHMvdXRpbC9maWx0ZXItdHJhc2gvZmlsdGVyLXRyYXNoLmNvbXBvbmVudC5sZXNzIiwic3JjL2FwcC9jb21wb25lbnRzL3VpL2ZpbHRlci1pbnB1dHMvdXRpbC9maWx0ZXItdHJhc2gvZmlsdGVyLXRyYXNoLmNvbXBvbmVudC5sZXNzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0VBQ0ksbUJBQUE7RUFFQSxnQkFBQTtFQUNBLFlBQUE7RUFDQSxnREFBQTtBQ0FKIiwiZmlsZSI6InNyYy9hcHAvY29tcG9uZW50cy91aS9maWx0ZXItaW5wdXRzL3V0aWwvZmlsdGVyLXRyYXNoL2ZpbHRlci10cmFzaC5jb21wb25lbnQubGVzcyIsInNvdXJjZXNDb250ZW50IjpbImJ1dHRvbiB7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcblxuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJveC1zaGFkb3c6IDBweCAwcHggMTBweCAwcHggcmdiYSgwLCAwLCAwLCAwLjE1KTtcbn0iLCJidXR0b24ge1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBib3JkZXI6IG5vbmU7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMTBweCAwcHggcmdiYSgwLCAwLCAwLCAwLjE1KTtcbn1cbiJdfQ== */\"","import { Component, OnInit, Input, Output, EventEmitter } from '@angular/core';\n\n@Component({\n selector: 'app-filter-trash',\n templateUrl: './filter-trash.component.html',\n styleUrls: ['./filter-trash.component.less']\n})\nexport class FilterTrashComponent implements OnInit {\n\n @Input() disabled:boolean = false;\n @Output() click:EventEmitter = new EventEmitter();\n\n constructor() { }\n\n ngOnInit() {\n }\n\n}\n","module.exports = \"
\\n
\\n Filter\\n
\\n \\n \\n \\n \\n
\"","module.exports = \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvdWkvZmlsdGVyL2ZpbHRlci5jb21wb25lbnQubGVzcyJ9 */\"","import { Component, OnInit, Input, forwardRef } from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n\n@Component({\n selector: 'app-filter',\n templateUrl: './filter.component.html',\n styleUrls: ['./filter.component.less'],\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => FilterComponent),\n multi: true\n }\n ],\n})\nexport class FilterComponent implements OnInit, ControlValueAccessor {\n\n filterChangeWaitTimeout = null;\n\n public selectionStatus = [\n { key: \"status_active\", val: \"Aktiv\" }, \n { key: \"status_inactive\", val: \"Inaktiv\" },\n ]\n\n filter = {\n status: null,\n email: null,\n name: null,\n }\n\n @Input() filterDesc = {};\n\n filterJson:string = null;\n\n private _lastFilterRows = null;\n\n private _value:any = {};\n \n private _onChange = (value: string) => {};\n private _onTouched = () => {};\n\n public filterRows = null;\n\n constructor() {}\n\n ngOnInit() {\n let result:any = [];\n let idx = 0;\n for(let key in this.filterDesc) {\n if(key !== 'state')\n {\n if(idx % 3 == 0) {\n result.push([]);\n }\n this.filterDesc[key].key = key;\n result[result.length - 1].push(this.filterDesc[key]);\n idx++;\n }\n }\n this.filterRows = result;\n }\n\n get value():any {\n return this._value;\n }\n\n set value(value: any) {\n if(value != this._value) {\n this._value = value;\n this._onChange(value);\n }\n }\n\n setFilterValue(key:string, value:string):void {\n if(this._value) {\n this._value[key] = value;\n this._onChange(this._value);\n } else {\n console.error(\"Value is null!\");\n }\n }\n\n getFilterValue(key:string):string {\n return this._value ? this._value[key] : null;\n }\n\n writeValue(value: string):void {\n this.value = value;\n }\n\n registerOnChange(onChange: (value: string) => void):void {\n this._onChange = onChange;\n }\n\n registerOnTouched(onTouched: () => void):void {\n this._onTouched = onTouched;\n }\n}\n","module.exports = \"
\\n
\\n
\\n
\\n \\n
\\n
\\n \\n \\n
\\n\\n
\\n

\\n © 2022 Felgenhero GmbH – Alle Rechte vorbehalten\\n

\\n
\\n \\n
\\n
\\n
\\n\"","module.exports = \"#footer .container {\\n background-color: black;\\n height: 100px;\\n margin: 0 0 0 0;\\n max-width: 100%;\\n padding: 0 0 0 0;\\n}\\n#footer .row {\\n height: 100%;\\n}\\n#footer .the-hero img {\\n position: absolute;\\n top: -50px;\\n left: 50px;\\n width: 128px;\\n}\\n.footer-contact h2 {\\n text-transform: uppercase;\\n font-size: 100%;\\n font-weight: bold;\\n color: #be1822;\\n}\\n.footer-contact p {\\n margin: 0;\\n}\\n.footer-links li {\\n display: inline;\\n margin-left: 10px;\\n}\\n.footer-links a {\\n color: white;\\n font-size: 100%;\\n}\\n.copyright p {\\n color: white;\\n font-size: 80%;\\n text-align: right;\\n padding: 0.5em;\\n margin: 0;\\n}\\n@media (max-width: 767.98px) {\\n #footer img {\\n width: 64px !important;\\n top: 0px !important;\\n left: 30px !important;\\n }\\n #footer .footer-links {\\n text-align: center;\\n font-size: small;\\n }\\n}\\n\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9hcHAtdWkvc3JjL2FwcC9jb21wb25lbnRzL3VpL2Zvb3Rlci9mb290ZXItcHVibGljL2Zvb3Rlci1wdWJsaWMuY29tcG9uZW50Lmxlc3MiLCJzcmMvYXBwL2NvbXBvbmVudHMvdWkvZm9vdGVyL2Zvb3Rlci1wdWJsaWMvZm9vdGVyLXB1YmxpYy5jb21wb25lbnQubGVzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtFQUNJLHVCQUFBO0VBQ0EsYUFBQTtFQUNBLGVBQUE7RUFDQSxlQUFBO0VBQ0EsZ0JBQUE7QUNDSjtBREVBO0VBQ0ksWUFBQTtBQ0FKO0FER0E7RUFDSSxrQkFBQTtFQUNBLFVBQUE7RUFDQSxVQUFBO0VBQ0EsWUFBQTtBQ0RKO0FES0E7RUFDSSx5QkFBQTtFQUNBLGVBQUE7RUFDQSxpQkFBQTtFQUNBLGNBQUE7QUNISjtBRE1BO0VBQ0ksU0FBQTtBQ0pKO0FET0E7RUFDSSxlQUFBO0VBQ0EsaUJBQUE7QUNMSjtBRFFBO0VBQ0ksWUFBQTtFQUNBLGVBQUE7QUNOSjtBRFdBO0VBQ0ksWUFBQTtFQUNBLGNBQUE7RUFDQSxpQkFBQTtFQUNBLGNBQUE7RUFDQSxTQUFBO0FDVEo7QURZQTtFQUVJO0lBSVEsc0JBQUE7SUFDQSxtQkFBQTtJQUNBLHFCQUFBO0VDZFY7RURRRTtJQVdRLGtCQUFBO0lBQ0EsZ0JBQUE7RUNoQlY7QUFDRiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvdWkvZm9vdGVyL2Zvb3Rlci1wdWJsaWMvZm9vdGVyLXB1YmxpYy5jb21wb25lbnQubGVzcyIsInNvdXJjZXNDb250ZW50IjpbIiNmb290ZXIgLmNvbnRhaW5lcntcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBibGFjaztcbiAgICBoZWlnaHQ6IDEwMHB4O1xuICAgIG1hcmdpbjogMCAwIDAgMDtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZzogMCAwIDAgMDtcbn1cblxuI2Zvb3RlciAucm93IHtcbiAgICBoZWlnaHQ6IDEwMCU7XG59XG5cbiNmb290ZXIgLnRoZS1oZXJvIGltZ3tcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAtNTBweDtcbiAgICBsZWZ0OiA1MHB4O1xuICAgIHdpZHRoOiAxMjhweDtcbiAgICBcbn1cblxuLmZvb3Rlci1jb250YWN0IGgye1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC1zaXplOiAxMDAlO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGNvbG9yOiAjYmUxODIyO1xufVxuXG4uZm9vdGVyLWNvbnRhY3QgcHtcbiAgICBtYXJnaW46IDA7XG59XG5cbi5mb290ZXItbGlua3MgbGkge1xuICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICBtYXJnaW4tbGVmdDogMTBweDtcbn1cblxuLmZvb3Rlci1saW5rcyBhe1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgICBmb250LXNpemU6IDEwMCU7XG59XG5cblxuXG4uY29weXJpZ2h0IHAge1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgICBmb250LXNpemU6IDgwJTtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICBwYWRkaW5nOiAwLjVlbTtcbiAgICBtYXJnaW46IDA7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkgXG57XG4gICAgI2Zvb3RlciBcbiAgICB7XG4gICAgICAgIGltZyBcbiAgICAgICAge1xuICAgICAgICAgICAgd2lkdGg6IDY0cHggIWltcG9ydGFudDtcbiAgICAgICAgICAgIHRvcDogMHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBsZWZ0OiAzMHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cblxuICAgICAgICAuZm9vdGVyLWxpbmtzIFxuICAgICAgICB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBmb250LXNpemU6IHNtYWxsO1xuICAgICAgICB9XG4gICAgfVxufSIsIiNmb290ZXIgLmNvbnRhaW5lciB7XG4gIGJhY2tncm91bmQtY29sb3I6IGJsYWNrO1xuICBoZWlnaHQ6IDEwMHB4O1xuICBtYXJnaW46IDAgMCAwIDA7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMCAwIDAgMDtcbn1cbiNmb290ZXIgLnJvdyB7XG4gIGhlaWdodDogMTAwJTtcbn1cbiNmb290ZXIgLnRoZS1oZXJvIGltZyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAtNTBweDtcbiAgbGVmdDogNTBweDtcbiAgd2lkdGg6IDEyOHB4O1xufVxuLmZvb3Rlci1jb250YWN0IGgyIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC1zaXplOiAxMDAlO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgY29sb3I6ICNiZTE4MjI7XG59XG4uZm9vdGVyLWNvbnRhY3QgcCB7XG4gIG1hcmdpbjogMDtcbn1cbi5mb290ZXItbGlua3MgbGkge1xuICBkaXNwbGF5OiBpbmxpbmU7XG4gIG1hcmdpbi1sZWZ0OiAxMHB4O1xufVxuLmZvb3Rlci1saW5rcyBhIHtcbiAgY29sb3I6IHdoaXRlO1xuICBmb250LXNpemU6IDEwMCU7XG59XG4uY29weXJpZ2h0IHAge1xuICBjb2xvcjogd2hpdGU7XG4gIGZvbnQtc2l6ZTogODAlO1xuICB0ZXh0LWFsaWduOiByaWdodDtcbiAgcGFkZGluZzogMC41ZW07XG4gIG1hcmdpbjogMDtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAjZm9vdGVyIGltZyB7XG4gICAgd2lkdGg6IDY0cHggIWltcG9ydGFudDtcbiAgICB0b3A6IDBweCAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IDMwcHggIWltcG9ydGFudDtcbiAgfVxuICAjZm9vdGVyIC5mb290ZXItbGlua3Mge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBmb250LXNpemU6IHNtYWxsO1xuICB9XG59XG4iXX0= */\"","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-footer-public',\n templateUrl: './footer-public.component.html',\n styleUrls: ['./footer-public.component.less']\n})\nexport class FooterPublicComponent implements OnInit {\n\n constructor() { }\n\n ngOnInit() {\n }\n\n}\n","module.exports = \"
\\n \\n

\\n   \\n   \\n {{ curPage }} / {{ pageCnt }}  \\n   \\n \\n

\\n
\\n
\\n \\n \\n \\n \\n
\\n
\\n
\"","import { Component, OnInit, ContentChild, TemplateRef, ViewChild, Input, Output, EventEmitter } from '@angular/core';\nimport { HttpClient } from '@angular/common/http';\nimport { Subject } from 'rxjs';\n\nenum GridSortOrder {\n NONE,\n ASC,\n DESC,\n}\n\nexport class GridSortService {\n sortSubject:Subject = new Subject();\n\n setSorting(key:string, order:GridSortOrder):void {\n this.sortSubject.next({ key, order });\n }\n}\n\n@Component({\n selector: 'app-grid-row',\n styles: [`:host {\n display: table-row;\n }`],\n template: ''\n})\nexport class GridRowComponent {\n\n}\n\n@Component({\n selector: 'app-grid-data',\n styles: [`:host {\n padding: 6px 24px;\n padding-left: 1em;\n display: table-cell;\n }`,\n `\n [app-grid-header] :host {\n font-weight: bold;\n }\n `,\n `app-grid-row:nth-child(odd) :host {\n background-color: #f8f8fa;\n }`],\n template: ''\n})\nexport class GridDataComponent {\n\n}\n\n@Component({\n selector: 'app-grid-header',\n styles: [`:host {\n padding: 6px 24px;\n padding-left: 1em;\n display: table-cell;\n font-weight: bold;\n }`,\n `fa {\n opacity: 0.5;\n }`,\n `fa:hover, fa.active {\n opacity: 1; \n }`,\n `app-grid-row:nth-child(odd) :host {\n background-color: #f8f8fa;\n }`],\n template: `\n
\n \n \n \n \n `\n\n })\n export class GridHeaderComponent {\n @Input() sortKey:string = null;\n active:GridSortOrder = GridSortOrder.NONE;\n\n constructor(public gridSortService:GridSortService) {\n gridSortService.sortSubject.subscribe(sorting => {\n const { key, order } = sorting;\n if(key === this.sortKey) {\n this.active = order;\n } else {\n this.active = GridSortOrder.NONE;\n }\n });\n }\n\n isAscActive():boolean {\n return this.active === GridSortOrder.ASC;\n }\n\n isDescActive():boolean {\n return this.active === GridSortOrder.DESC;\n }\n\n sortAsc():void {\n this.gridSortService.setSorting(this.sortKey, GridSortOrder.ASC);\n }\n\n sortDesc():void {\n this.gridSortService.setSorting(this.sortKey, GridSortOrder.DESC);\n }\n }\n\n@Component({\n selector: 'app-grid',\n templateUrl: './grid.component.html',\n styles: [\n `img.paginationIcon {\n height: 0.9em; \n cursor: pointer;\n }`,\n `img.paginationIcon.disabled {\n display: none;\n }\n `,\n ],\n providers: [\n GridSortService\n ]\n})\nexport class GridComponent {\n @ContentChild('appGridContent') gridContent:TemplateRef; \n @Input() itemsPerPage:number = 10;\n private _url:string;\n filterObj:any = {};\n private _filterJson:string = \"\";\n @Output('loading') loadingEmitter:EventEmitter = new EventEmitter();\n @Output() totalCnt:EventEmitter = new EventEmitter();\n private _filterDesc;\n \n private _filterChangeWaitTimeout = null;\n\n pageCnt:number = 0;\n curPage:number = 1;\t\n _loading:boolean = false;\t\n\n @Input() items = [];\n @Input() pagination:boolean = true;\n\n private _orderStr:string = null;\n\n private _loadKey:any = null;\n\t\t\n constructor(public http:HttpClient, \n gridSortService:GridSortService) {\n \n gridSortService.sortSubject.subscribe(sorting => {\n const { key, order } = sorting;\n this._orderStr = key + \" \" + GridSortOrder[order];\n this._updateFilterJson();\n });\n }\n\n ngOnInit() {\n //this.load(1);\n }\n\n @Input()\n public set url(url:string) {\n this._url = url;\n this.update();\n }\n\n public get url():string {\n return this._url;\n }\n\n @Input()\n public set filterJson(filterJson:string) {\n this._filterJson = filterJson;\n this.update();\n }\n\n public get filterJson():string {\n return this._filterJson;\n }\n\n @Input()\n public set filterDesc(filterDesc) {\n this._filterDesc = filterDesc;\n this._updateFilterJson();\n }\n\n public get filterDesc() {\n return this._filterDesc;\n }\n\n public update() {\n if(this._url != null) { \n this.load();\n }\n }\n\n private set loading(loading:boolean) {\n this._loading = loading;\n this.loadingEmitter.emit(loading);\n }\n\n private get loading():boolean { \n return this._loading;\n }\n\n public async loadPage(page):Promise {\n this.curPage = page;\n this._updateFilterJson();\n await this.load();\n }\n\n public async load():Promise {\n if(!this._url) {\n return;\n }\n this.loading = true;\n var url:string = this._url;\n var params:any = {}; //Object.assign({}, this.params);\n if(this._filterJson) {\n params.filter = this._filterJson;\n }\n /*\n params.page = page;\n params.itemsPerPage = this.itemsPerPage;\n */\n var kv:string[] = [];\n for(var key in params) {\n kv.push(key + \"=\" + encodeURIComponent(params[key]));\n }\n var queryString:string = kv.join(\"&\");\n if(queryString.length > 0) {\n var sep:string = url.indexOf('?') >= 0 ? '&' : '?';\n url += sep + queryString;\n }\n console.log(\"Url: \" + url);\n\n // load key is used to check whether load result is for the\n // last load triggered or whether another load call \n // was issued inbetween\n let loadKey = {};\n this._loadKey = loadKey;\n let res:any = await this.http.get(url, { observe: 'response' }).toPromise();\n if(this._loadKey === loadKey) {\n //console.log(res.headers.get('x-total-cnt'));\n let totalCnt = res.headers.get('x-total-cnt');\n this.pageCnt = Math.max(1, Math.ceil(totalCnt / this.itemsPerPage));\n this.items = res.body;\n }\n //console.log(res);\n };\n\n selectPage(page:number) {\n this.curPage = page;\n if(this.curPage <= 0) {\n this.curPage = 1;\n }\n if(this.curPage > this.pageCnt) {\n this.curPage = this.pageCnt;\n }\n \n this._updateFilterJson();\n this.load();\n };\n\n prevPage() {\n this.selectPage(this.curPage - 1);\n };\t\n\n nextPage() {\n this.selectPage(this.curPage + 1);\n };\n\n firstPage() {\n this.selectPage(1);\n }\n\n lastPage() {\n this.selectPage(this.pageCnt);\n }\n\n private _updateFilterJson():void {\n let filterObj:any = {};\n filterObj.where = {};\n for(let key in this.filterDesc) {\n var comp:string = this.filterDesc[key].comp;\n var val:string = this.filterDesc[key].value;\n if(!val && this.filterObj[key]) {\n val = this.filterObj[key];\n }\n if(val) {\n if(comp == \"like\") {\n val = \"%\" + val + \"%\";\n }\n if(comp == 'orderId') {\n comp = 'eq';\n val = val.replace(/A/i, '');\n val = val.replace(/^0+/, '');\n val = val.replace(/-\\d*$/, '');\n //let m = /A?0*(\\d+)(\\-\\d*)?/.exec(val);\n //console.log(m);\n console.log(\"val\", val);\n val = `${parseInt(val)}`;\n }\n }\n if(val) {\n filterObj.where[key] = {}\n filterObj.where[key][comp] = val;\n }\n }\n if(this._orderStr) {\n filterObj.order = this._orderStr;\n }\n filterObj.limit = this.itemsPerPage;\n filterObj.skip = (this.curPage - 1) * this.itemsPerPage;\n this._filterJson = JSON.stringify(filterObj);\n this.update();\n }\n \n public filterChanged():void {\n clearTimeout(this._filterChangeWaitTimeout);\n this._filterChangeWaitTimeout = setTimeout(() => {\n this._updateFilterJson();\n }, 500);\n }\n\n \n}","module.exports = \"\\n\\n
\\n
\\n
\\n \\n
\\n
\\n \\n
\\n {{ tooltips[i] }}\\n
\\n
\\n
\\n
\\n
\\n\"","module.exports = \":host {\\n flex: 1;\\n padding: 0px;\\n}\\ninput[type=radio] {\\n box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.15);\\n}\\n.item {\\n flex: 1;\\n position: relative;\\n}\\n.item .fh-tooltip {\\n display: none;\\n position: absolute;\\n left: 50%;\\n border: 1px solid black;\\n padding: 0.5em;\\n background: white;\\n top: 0;\\n font-size: 80%;\\n pointer-events: none;\\n width: 75%;\\n z-index: 100;\\n text-align: left;\\n}\\n.item:hover .fh-tooltip {\\n display: block;\\n}\\n\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9hcHAtdWkvc3JjL2FwcC9jb21wb25lbnRzL3VpL2lucHV0cy9pbWFnZXNlbGVjdC9pbWFnZXNlbGVjdC5jb21wb25lbnQubGVzcyIsInNyYy9hcHAvY29tcG9uZW50cy91aS9pbnB1dHMvaW1hZ2VzZWxlY3QvaW1hZ2VzZWxlY3QuY29tcG9uZW50Lmxlc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7RUFDSSxPQUFBO0VBQ0EsWUFBQTtBQ0NKO0FERUE7RUFDSSxnREFBQTtBQ0FKO0FER0E7RUFDSSxPQUFBO0VBQ0Esa0JBQUE7QUNESjtBRERBO0VBS1EsYUFBQTtFQUNBLGtCQUFBO0VBQ0EsU0FBQTtFQUNBLHVCQUFBO0VBQ0EsY0FBQTtFQUNBLGlCQUFBO0VBQ0EsTUFBQTtFQUNBLGNBQUE7RUFDQSxvQkFBQTtFQUNBLFVBQUE7RUFDQSxZQUFBO0VBQ0EsZ0JBQUE7QUNEUjtBRElJO0VBQ0ksY0FBQTtBQ0ZSIiwiZmlsZSI6InNyYy9hcHAvY29tcG9uZW50cy91aS9pbnB1dHMvaW1hZ2VzZWxlY3QvaW1hZ2VzZWxlY3QuY29tcG9uZW50Lmxlc3MiLCJzb3VyY2VzQ29udGVudCI6WyI6aG9zdCB7XG4gICAgZmxleDogMTtcbiAgICBwYWRkaW5nOiAwcHg7XG59XG5cbmlucHV0W3R5cGU9cmFkaW9dIHtcbiAgICBib3gtc2hhZG93OiAwcHggMHB4IDEwcHggMHB4IHJnYmEoMCwgMCwgMCwgMC4xNSk7XG59XG5cbi5pdGVtIHtcbiAgICBmbGV4OiAxOyBcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAuZmgtdG9vbHRpcCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCBibGFjaztcbiAgICAgICAgcGFkZGluZzogMC41ZW07XG4gICAgICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGZvbnQtc2l6ZTogODAlO1xuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgd2lkdGg6IDc1JTtcbiAgICAgICAgei1pbmRleDogMTAwO1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIH1cblxuICAgICY6aG92ZXIgLmZoLXRvb2x0aXAge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG59IiwiOmhvc3Qge1xuICBmbGV4OiAxO1xuICBwYWRkaW5nOiAwcHg7XG59XG5pbnB1dFt0eXBlPXJhZGlvXSB7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMTBweCAwcHggcmdiYSgwLCAwLCAwLCAwLjE1KTtcbn1cbi5pdGVtIHtcbiAgZmxleDogMTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLml0ZW0gLmZoLXRvb2x0aXAge1xuICBkaXNwbGF5OiBub25lO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDUwJTtcbiAgYm9yZGVyOiAxcHggc29saWQgYmxhY2s7XG4gIHBhZGRpbmc6IDAuNWVtO1xuICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgdG9wOiAwO1xuICBmb250LXNpemU6IDgwJTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIHdpZHRoOiA3NSU7XG4gIHotaW5kZXg6IDEwMDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cbi5pdGVtOmhvdmVyIC5maC10b29sdGlwIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4iXX0= */\"","import { Component, OnInit, Input, forwardRef } from '@angular/core';\nimport { EnumService } from 'src/app/service/enum.service';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n\n@Component({\n selector: 'app-imageselect',\n templateUrl: './imageselect.component.html',\n styleUrls: ['./imageselect.component.less'],\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => ImageselectComponent),\n multi: true\n }\n ],\n})\nexport class ImageselectComponent implements OnInit, ControlValueAccessor {\n\n private static _idCnt = 1;\n\n public id:string;\n\n @Input() icon;\n @Input() label;\n @Input() name;\n @Input(\"enum\") enumKey;\n @Input() inline:boolean = false;\n @Input() labels:[];\n @Input() tooltips:null;\n @Input() horizontal:boolean = false;\n\n private _enum = [];\n\n private _value:string = null;\n \n private _onChange = (value: string) => {};\n private _onTouched = () => {};\n\n constructor(\n public enumService:EnumService\n ) { \n this.id = 'imgselect-' + ImageselectComponent._idCnt++;\n }\n\n ngOnInit() {\n console.log(\"tooltips\", this.tooltips);\n }\n\n get items() {\n if(this._enum.length == 0 && !this.enumService.isLoading()) {\n this._enum = [];\n let elems:string[] = this.enumService.getEnum(this.enumKey);\n for(let elem of elems) {\n this._enum.push({ key: elem, val: this.enumKey + \"_\" + elem });\n }\n }\n return this._enum;\n }\n\n set value(value: string) {\n if(value != this._value) {\n this._value = value;\n this._onChange(value);\n }\n }\n\n get value():string {\n return this._value;\n }\n\n writeValue(value: string):void {\n this.value = value;\n }\n\n registerOnChange(onChange: (value: string) => void):void {\n this._onChange = onChange;\n }\n\n registerOnTouched(onTouched: () => void):void {\n this._onTouched = onTouched;\n }\n\n}\n","module.exports = \"\"","module.exports = \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvdWkvaW5wdXRzL2lucHV0Y3VycmVuY3lmaWVsZC9pbnB1dGN1cnJlbmN5ZmllbGQuY29tcG9uZW50Lmxlc3MifQ== */\"","import { \n Component, \n OnInit, \n Input, \n Output, \n EventEmitter, \n ViewChild, \n ElementRef, \n forwardRef } from '@angular/core';\nimport { ControlValueAccessor, Validator, FormControl, NG_VALUE_ACCESSOR, NG_VALIDATORS } from '@angular/forms';\n\n@Component({\n selector: 'app-inputcurrencyfield',\n templateUrl: './inputcurrencyfield.component.html',\n styleUrls: ['./inputcurrencyfield.component.less'],\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => InputcurrencyfieldComponent),\n multi: true,\n },\n {\n provide: NG_VALIDATORS,\n useExisting: forwardRef(() => InputcurrencyfieldComponent),\n multi: true,\n }\n ],\n})\nexport class InputcurrencyfieldComponent implements OnInit, ControlValueAccessor, Validator {\n\n @Input() placeholder:string;\n @Input() type:string = \"text\";\n @Input() valid:boolean = true;\n @Input() inline:boolean = false;\n @Input() readonly:boolean = false;\n @Output() focus:EventEmitter = new EventEmitter();\n @ViewChild('input') input:ElementRef;\n private _value:string = \"0,00\";\n\n private _onChange = (value: number) => {};\n private _onTouched = () => {};\n\n constructor() { }\n\n ngOnInit() {\n\n }\n \n get value():string {\n return this._value;\n }\n\n set value(value: string) {\n if(value === null) {\n value = \"0\";\n }\n if(value !== this._value) {\n this._value = value;\n let intValue:number = Math.round(parseFloat(value.replace(\",\", \".\")) * 100);\n console.log(\"Int value\", intValue);\n this._onChange(intValue);\n }\n }\n\n isValueNumber():boolean {\n return (\"\" + parseInt(this.value)) == this.value;\n }\n\n writeValue(value: number):void {\n console.log(\"Writing value\", value);\n if(value == null) {\n value = 0;\n }\n if(\"\" + value == \"NaN\") {\n value = 0;\n }\n this.value = (value / 100).toFixed(2).replace(\".\", \",\");\n }\n\n registerOnChange(onChange: (value: number) => void):void {\n this._onChange = onChange;\n }\n\n registerOnTouched(onTouched: () => void):void {\n this._onTouched = onTouched;\n }\n\n onTouched():void {\n this.focus.emit();\n this._onTouched();\n }\n\n setFocus():void {\n this.input.nativeElement.focus();\n }\n\n format():void {\n let intValue:number = Math.round(parseFloat(this.value.replace(\",\", \".\")) * 100);\n this.value = (intValue / 100).toFixed(2).replace(\".\", \",\");\n }\n\n public validate(c:FormControl) {\n return null;\n /*\n let match:boolean = this._value.match(/^\\d+|\\d+,|\\d+,\\d{1,2}|,\\d{1,2}$/);\n console.log(\"Matching\", match);\n return match ? null : {\n currencyParseError: {\n valid: false,\n }\n };\n */\n }\n\n}\n","module.exports = \"
\\n
\\n \\n
\\n
\"","module.exports = \":host {\\n flex: 1;\\n padding: 0px;\\n height: 50px;\\n /*\\n & > div {\\n padding-right: 7.5px;\\n padding-left: 7.5px;\\n }\\n */\\n}\\n.input-group input {\\n border-radius: 0;\\n border: none;\\n box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.15) !important;\\n margin-bottom: 0.5em;\\n}\\n.input-group input:focus {\\n border: 1px solid #be1822;\\n}\\n.input-group input::-moz-placeholder {\\n text-align: left;\\n}\\n.input-group input::placeholder {\\n text-align: left;\\n}\\n.inline label {\\n width: 35%;\\n vertical-align: top;\\n position: relative;\\n top: 0.3rem;\\n}\\n.inline div.input-group {\\n width: 95%;\\n}\\n\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9hcHAtdWkvc3JjL2FwcC9jb21wb25lbnRzL3VpL2lucHV0cy9pbnB1dGZpZWxkL2lucHV0ZmllbGQuY29tcG9uZW50Lmxlc3MiLCJzcmMvYXBwL2NvbXBvbmVudHMvdWkvaW5wdXRzL2lucHV0ZmllbGQvaW5wdXRmaWVsZC5jb21wb25lbnQubGVzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtFQUNJLE9BQUE7RUFDQSxZQUFBO0VBQ0EsWUFBQTtFQ0NGOzs7OztLQUtHO0FBQ0w7QURHQTtFQUVRLGdCQUFBO0VBQ0EsWUFBQTtFQUNBLDJEQUFBO0VBQ0Esb0JBQUE7QUNGUjtBRElRO0VBQ0kseUJBQUE7QUNGWjtBREtRO0VBQ0ksZ0JBQUE7QUNIWjtBREVRO0VBQ0ksZ0JBQUE7QUNIWjtBRFFBO0VBRVEsVUFBQTtFQUNBLG1CQUFBO0VBQ0Esa0JBQUE7RUFDQSxXQUFBO0FDUFI7QURFQTtFQVNRLFVBQUE7QUNSUiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvdWkvaW5wdXRzL2lucHV0ZmllbGQvaW5wdXRmaWVsZC5jb21wb25lbnQubGVzcyIsInNvdXJjZXNDb250ZW50IjpbIjpob3N0IHtcbiAgICBmbGV4OiAxO1xuICAgIHBhZGRpbmc6IDBweDtcbiAgICBoZWlnaHQ6IDUwcHg7XG4gICAgXG4gICAgLypcbiAgICAmID4gZGl2IHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogNy41cHg7XG4gICAgICAgIHBhZGRpbmctbGVmdDogNy41cHg7XG4gICAgfVxuICAgICovXG59XG5cbi5pbnB1dC1ncm91cCB7XG4gICAgaW5wdXQge1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIGJveC1zaGFkb3c6IDBweCAwcHggMTBweCAwcHggcmdiYSgwLCAwLCAwLCAwLjE1KSAhaW1wb3J0YW50O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjVlbTtcbiAgICBcbiAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjYmUxODIyO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAmOjpwbGFjZWhvbGRlciB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uaW5saW5lIHtcbiAgICBsYWJlbCB7XG4gICAgICAgIHdpZHRoOiAzNSU7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgdG9wOiAwLjNyZW07XG4gICAgfVxuXG4gICAgZGl2LmlucHV0LWdyb3VwIHtcbiAgICAgICAgd2lkdGg6IDk1JTtcbiAgICB9XG59IiwiOmhvc3Qge1xuICBmbGV4OiAxO1xuICBwYWRkaW5nOiAwcHg7XG4gIGhlaWdodDogNTBweDtcbiAgLypcbiAgICAmID4gZGl2IHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogNy41cHg7XG4gICAgICAgIHBhZGRpbmctbGVmdDogNy41cHg7XG4gICAgfVxuICAgICovXG59XG4uaW5wdXQtZ3JvdXAgaW5wdXQge1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBib3JkZXI6IG5vbmU7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMTBweCAwcHggcmdiYSgwLCAwLCAwLCAwLjE1KSAhaW1wb3J0YW50O1xuICBtYXJnaW4tYm90dG9tOiAwLjVlbTtcbn1cbi5pbnB1dC1ncm91cCBpbnB1dDpmb2N1cyB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNiZTE4MjI7XG59XG4uaW5wdXQtZ3JvdXAgaW5wdXQ6OnBsYWNlaG9sZGVyIHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cbi5pbmxpbmUgbGFiZWwge1xuICB3aWR0aDogMzUlO1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogMC4zcmVtO1xufVxuLmlubGluZSBkaXYuaW5wdXQtZ3JvdXAge1xuICB3aWR0aDogOTUlO1xufVxuIl19 */\"","import { \n Component, \n OnInit, \n Input, \n Output, \n EventEmitter, \n ViewChild, \n ElementRef, \n forwardRef } from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n\n@Component({\n selector: 'app-inputfield',\n templateUrl: './inputfield.component.html',\n styleUrls: ['./inputfield.component.less'],\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => InputfieldComponent),\n multi: true\n }\n ],\n})\nexport class InputfieldComponent implements OnInit, ControlValueAccessor {\n\n @Input() placeholder:string;\n @Input() type:string = \"text\";\n @Input() valid:boolean = true;\n @Input() inline:boolean = false;\n @Input() readonly:boolean = false;\n @Input(\"ngStyle\") style:any = {};\n @Output() focus:EventEmitter = new EventEmitter();\n @ViewChild('input') input:ElementRef;\n\n private _value:string = \"\";\n\n private _onChange = (value: string) => {};\n private _onTouched = () => {};\n\n constructor() { }\n\n ngOnInit() {\n\n }\n\n /*\n get valid():boolean {\n return this._valid;\n }\n */\n\n get value():string {\n return this._value;\n }\n\n set value(value: string) {\n if(value === null) {\n value = \"\";\n }\n if(value != this._value) {\n this._value = value;\n this._onChange(value);\n }\n }\n\n writeValue(value: string):void {\n this.value = value;\n }\n\n registerOnChange(onChange: (value: string) => void):void {\n this._onChange = onChange;\n }\n\n registerOnTouched(onTouched: () => void):void {\n this._onTouched = onTouched;\n }\n\n onTouched():void {\n this.focus.emit();\n this._onTouched();\n }\n\n setFocus():void {\n this.input.nativeElement.focus();\n }\n\n}\n","module.exports = \"\"","module.exports = \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvdWkvaW5wdXRzL2lucHV0bnVtYmVyZmllbGQvaW5wdXRudW1iZXJmaWVsZC5jb21wb25lbnQubGVzcyJ9 */\"","import { \n Component, \n OnInit, \n Input, \n Output, \n EventEmitter, \n ViewChild, \n ElementRef, \n forwardRef } from '@angular/core';\nimport { ControlValueAccessor, Validator, FormControl, NG_VALUE_ACCESSOR, NG_VALIDATORS } from '@angular/forms';\n\n@Component({\n selector: 'app-inputnumberfield',\n templateUrl: './inputnumberfield.component.html',\n styleUrls: ['./inputnumberfield.component.less'],\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => InputnumberfieldComponent),\n multi: true,\n },\n {\n provide: NG_VALIDATORS,\n useExisting: forwardRef(() => InputnumberfieldComponent),\n multi: true,\n }\n ],\n})\nexport class InputnumberfieldComponent implements OnInit, ControlValueAccessor, Validator {\n\n @Input() placeholder:string;\n @Input() type:string = \"text\";\n @Input() valid:boolean = true;\n @Input() inline:boolean = false;\n @Input() readonly:boolean = false;\n @Output() focus:EventEmitter = new EventEmitter();\n @ViewChild('input') input:ElementRef;\n private _value:number = 0;\n\n private _onChange = (value: number) => {};\n private _onTouched = () => {};\n\n constructor() { }\n\n ngOnInit() {\n\n }\n \n get value():number {\n return this._value;\n }\n\n set value(value: number) {\n if(value === null) {\n value = 0;\n }\n if(value !== this._value) {\n this._value = value;\n this._onChange(value);\n }\n }\n\n isValueNumber():boolean {\n return (\"\" + parseInt(\"\" + this.value)) == \"\" + this.value;\n }\n\n writeValue(value: number):void {\n this.value = value;\n }\n\n registerOnChange(onChange: (value: number) => void):void {\n this._onChange = onChange;\n }\n\n registerOnTouched(onTouched: () => void):void {\n this._onTouched = onTouched;\n }\n\n onTouched():void {\n this.focus.emit();\n this._onTouched();\n }\n\n setFocus():void {\n this.input.nativeElement.focus();\n }\n\n public validate(c:FormControl) {\n return this.isValueNumber() ? null : {\n numberParseError: {\n valid: false,\n }\n };\n }\n\n}\n","module.exports = \"
\\n
\\n
\\n \\n \\n
\\n
\\n
\"","module.exports = \":host {\\n flex: 1;\\n padding: 0px;\\n}\\n:host > div {\\n padding-right: 15px;\\n padding-left: 15px;\\n}\\n.input-group .btn-group {\\n width: 100%;\\n}\\n.input-group .btn-group button {\\n border: 1px solid gray;\\n}\\n.input-group .btn-group ul {\\n width: 100%;\\n}\\n.inline label {\\n width: 35%;\\n vertical-align: top;\\n position: relative;\\n top: 0.3rem;\\n}\\n.inline div.input-group {\\n width: 65%;\\n display: inline-block;\\n}\\nbutton {\\n text-transform: unset;\\n text-align: left;\\n}\\nbutton::after {\\n content: unset;\\n}\\n\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9hcHAtdWkvc3JjL2FwcC9jb21wb25lbnRzL3VpL2lucHV0cy9pbnB1dHNlbGVjdC9pbnB1dHNlbGVjdC5jb21wb25lbnQubGVzcyIsInNyYy9hcHAvY29tcG9uZW50cy91aS9pbnB1dHMvaW5wdXRzZWxlY3QvaW5wdXRzZWxlY3QuY29tcG9uZW50Lmxlc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7RUFDSSxPQUFBO0VBQ0EsWUFBQTtBQ0NKO0FEQ0k7RUFDSSxtQkFBQTtFQUNBLGtCQUFBO0FDQ1I7QURHQTtFQUVRLFdBQUE7QUNGUjtBREFBO0VBS1ksc0JBQUE7QUNGWjtBREhBO0VBU1ksV0FBQTtBQ0haO0FEUUE7RUFFUSxVQUFBO0VBQ0EsbUJBQUE7RUFDQSxrQkFBQTtFQUNBLFdBQUE7QUNQUjtBREVBO0VBU1EsVUFBQTtFQUNBLHFCQUFBO0FDUlI7QURZQTtFQUNJLHFCQUFBO0VBQ0EsZ0JBQUE7QUNWSjtBRFlJO0VBQ0ksY0FBQTtBQ1ZSIiwiZmlsZSI6InNyYy9hcHAvY29tcG9uZW50cy91aS9pbnB1dHMvaW5wdXRzZWxlY3QvaW5wdXRzZWxlY3QuY29tcG9uZW50Lmxlc3MiLCJzb3VyY2VzQ29udGVudCI6WyI6aG9zdCB7XG4gICAgZmxleDogMTtcbiAgICBwYWRkaW5nOiAwcHg7XG4gICAgXG4gICAgJiA+IGRpdiB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMTVweDtcbiAgICB9XG59XG5cbi5pbnB1dC1ncm91cCB7XG4gICAgLmJ0bi1ncm91cCB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgIGJ1dHRvbiB7XG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCBncmF5O1xuICAgICAgICB9XG5cbiAgICAgICAgdWwge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5pbmxpbmUge1xuICAgIGxhYmVsIHtcbiAgICAgICAgd2lkdGg6IDM1JTtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB0b3A6IDAuM3JlbTtcbiAgICB9XG5cbiAgICBkaXYuaW5wdXQtZ3JvdXAge1xuICAgICAgICB3aWR0aDogNjUlO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxufVxuXG5idXR0b24ge1xuICAgIHRleHQtdHJhbnNmb3JtOiB1bnNldDtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiB1bnNldDtcbiAgICB9XG59IiwiOmhvc3Qge1xuICBmbGV4OiAxO1xuICBwYWRkaW5nOiAwcHg7XG59XG46aG9zdCA+IGRpdiB7XG4gIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG4gIHBhZGRpbmctbGVmdDogMTVweDtcbn1cbi5pbnB1dC1ncm91cCAuYnRuLWdyb3VwIHtcbiAgd2lkdGg6IDEwMCU7XG59XG4uaW5wdXQtZ3JvdXAgLmJ0bi1ncm91cCBidXR0b24ge1xuICBib3JkZXI6IDFweCBzb2xpZCBncmF5O1xufVxuLmlucHV0LWdyb3VwIC5idG4tZ3JvdXAgdWwge1xuICB3aWR0aDogMTAwJTtcbn1cbi5pbmxpbmUgbGFiZWwge1xuICB3aWR0aDogMzUlO1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogMC4zcmVtO1xufVxuLmlubGluZSBkaXYuaW5wdXQtZ3JvdXAge1xuICB3aWR0aDogNjUlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5idXR0b24ge1xuICB0ZXh0LXRyYW5zZm9ybTogdW5zZXQ7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG5idXR0b246OmFmdGVyIHtcbiAgY29udGVudDogdW5zZXQ7XG59XG4iXX0= */\"","import { Component, OnInit, Input, forwardRef } from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n\n@Component({\n selector: 'app-inputselect',\n templateUrl: './inputselect.component.html',\n styleUrls: ['./inputselect.component.less'],\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => InputselectComponent),\n multi: true\n }\n ],\n})\nexport class InputselectComponent implements OnInit, ControlValueAccessor {\n\n @Input() icon;\n @Input() label;\n @Input() loading:boolean = false;\n @Input() inline:boolean = false;\n\n selectedItem = null;\n\n private _value:string = null;\n private _items;\n \n private _onChange = (value: string) => {};\n private _onTouched = () => {};\n\n constructor() {\n }\n\n ngOnInit() {\n }\n\n selectItem(item) {\n this.value = item.key;\n }\n\n @Input()\n get items() {\n return this._items;\n }\n\n set items(items) {\n console.log(\"Setting items\", items);\n this._items = items;\n this.value = this.value;\n }\n\n get value():string {\n return this._value;\n }\n\n set value(value: string) {\n var item = this.items.find((item) => { return item.key == value });\n /*\n if(item == null) {\n value = null;\n }\n */\n\n if(value != this._value) {\n this._value = value;\n this.selectedItem = item;\n this._onChange(value);\n }\n }\n\n writeValue(value: string):void {\n this.value = value;\n }\n\n registerOnChange(onChange: (value: string) => void):void {\n this._onChange = onChange;\n }\n\n registerOnTouched(onTouched: () => void):void {\n this._onTouched = onTouched;\n }\n\n}\n","module.exports = \"\\n\"","module.exports = \":host {\\n flex: 1;\\n padding: 0px;\\n}\\n\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9hcHAtdWkvc3JjL2FwcC9jb21wb25lbnRzL3VpL2lucHV0cy9pbnB1dHNlbGVjdGVudW0vaW5wdXRzZWxlY3RlbnVtLmNvbXBvbmVudC5sZXNzIiwic3JjL2FwcC9jb21wb25lbnRzL3VpL2lucHV0cy9pbnB1dHNlbGVjdGVudW0vaW5wdXRzZWxlY3RlbnVtLmNvbXBvbmVudC5sZXNzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0VBQ0ksT0FBQTtFQUNBLFlBQUE7QUNDSiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvdWkvaW5wdXRzL2lucHV0c2VsZWN0ZW51bS9pbnB1dHNlbGVjdGVudW0uY29tcG9uZW50Lmxlc3MiLCJzb3VyY2VzQ29udGVudCI6WyI6aG9zdCB7XG4gICAgZmxleDogMTtcbiAgICBwYWRkaW5nOiAwcHg7XG59IiwiOmhvc3Qge1xuICBmbGV4OiAxO1xuICBwYWRkaW5nOiAwcHg7XG59XG4iXX0= */\"","import { Component, OnInit, Input, forwardRef } from '@angular/core';\nimport { EnumService } from 'src/app/service/enum.service';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n\n@Component({\n selector: 'app-inputselectenum',\n templateUrl: './inputselectenum.component.html',\n styleUrls: ['./inputselectenum.component.less'],\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => InputselectenumComponent),\n multi: true\n }\n ],\n})\nexport class InputselectenumComponent implements OnInit, ControlValueAccessor {\n\n @Input() icon;\n @Input() label;\n @Input(\"enum\") enumKey;\n @Input() inline:boolean = false;\n\n private _enum = [];\n\n private _value:string = null;\n \n private _onChange = (value: string) => {};\n private _onTouched = () => {};\n\n constructor(\n public enumService:EnumService\n ) { }\n\n ngOnInit() {\n }\n\n get items() {\n if(this._enum.length == 0 && !this.enumService.isLoading()) {\n this._enum = [];\n let elems:string[] = this.enumService.getEnum(this.enumKey);\n for(let elem of elems) {\n this._enum.push({ key: elem, val: this.enumKey + \"_\" + elem });\n }\n }\n return this._enum;\n }\n\n get value():string {\n return this._value;\n }\n\n set value(value: string) {\n if(value != this._value) {\n this._value = value;\n this._onChange(value);\n }\n }\n\n writeValue(value: string):void {\n this.value = value;\n }\n\n registerOnChange(onChange: (value: string) => void):void {\n this._onChange = onChange;\n }\n\n registerOnTouched(onTouched: () => void):void {\n this._onTouched = onTouched;\n }\n\n}\n","module.exports = \"\"","module.exports = \"#onePager-nav .container {\\n margin: 0 0 0 0;\\n max-width: 100%;\\n padding: 0 0 0 0;\\n}\\n#onePager-nav {\\n max-height: 100px;\\n margin-right: 50px;\\n width: 100%;\\n background-color: rgba(20, 20, 20, 0.65) !important;\\n padding-top: 0;\\n padding-bottom: 0;\\n}\\nnav p {\\n padding: 0;\\n margin: 0;\\n}\\n.navbar-brand {\\n margin-left: 10px;\\n}\\n#onePager-nav a span {\\n cursor: pointer;\\n color: white;\\n}\\n#onePager-nav #logo {\\n width: 120px;\\n}\\n.navbar-brand img {\\n width: 140px;\\n}\\n.nav-contact {\\n text-align: end;\\n margin: auto 1rem;\\n}\\n.nav-contact div {\\n display: inline;\\n}\\n.nav-contact p {\\n display: inline;\\n margin-left: 10px;\\n color: #CCC;\\n}\\n.nav-contact a {\\n margin-left: 20px;\\n font-weight: 800;\\n text-transform: uppercase;\\n color: white;\\n}\\n\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9hcHAtdWkvc3JjL2FwcC9jb21wb25lbnRzL3VpL25hdmJhcnMvbmF2YmFyLXB1YmxpYy9uYXZiYXItcHVibGljLmNvbXBvbmVudC5sZXNzIiwic3JjL2FwcC9jb21wb25lbnRzL3VpL25hdmJhcnMvbmF2YmFyLXB1YmxpYy9uYXZiYXItcHVibGljLmNvbXBvbmVudC5sZXNzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0VBQ0ksZUFBQTtFQUNBLGVBQUE7RUFDQSxnQkFBQTtBQ0NKO0FERUE7RUFDSSxpQkFBQTtFQUNBLGtCQUFBO0VBQ0EsV0FBQTtFQUNBLG1EQUFBO0VBQ0EsY0FBQTtFQUNBLGlCQUFBO0FDQUo7QURHQTtFQUNJLFVBQUE7RUFDQSxTQUFBO0FDREo7QURJQTtFQUNJLGlCQUFBO0FDRko7QURNQTtFQUNJLGVBQUE7RUFDQSxZQUFBO0FDSko7QURPQTtFQUNJLFlBQUE7QUNMSjtBRFVBO0VBQ0ksWUFBQTtBQ1JKO0FEV0E7RUFDSSxlQUFBO0VBQ0EsaUJBQUE7QUNUSjtBRGFBO0VBQ0ksZUFBQTtBQ1hKO0FEY0E7RUFDSSxlQUFBO0VBQ0EsaUJBQUE7RUFDQSxXQUFBO0FDWko7QURlQTtFQUNJLGlCQUFBO0VBQ0EsZ0JBQUE7RUFDQSx5QkFBQTtFQUNBLFlBQUE7QUNiSiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvdWkvbmF2YmFycy9uYXZiYXItcHVibGljL25hdmJhci1wdWJsaWMuY29tcG9uZW50Lmxlc3MiLCJzb3VyY2VzQ29udGVudCI6WyIjb25lUGFnZXItbmF2IC5jb250YWluZXJ7XG4gICAgbWFyZ2luOiAwIDAgMCAwO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nOiAwIDAgMCAwO1xufVxuXG4jb25lUGFnZXItbmF2IHtcbiAgICBtYXgtaGVpZ2h0OiAxMDBweDtcbiAgICBtYXJnaW4tcmlnaHQ6IDUwcHg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyMCwgMjAsIDIwLCAwLjY1KSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xufVxuXG5uYXYgcCB7XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXJnaW46IDA7XG59XG5cbi5uYXZiYXItYnJhbmQge1xuICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuXG59XG5cbiNvbmVQYWdlci1uYXYgYSBzcGFue1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBjb2xvcjogd2hpdGU7XG59XG5cbiNvbmVQYWdlci1uYXYgI2xvZ28ge1xuICAgIHdpZHRoOiAxMjBweDtcbn1cblxuXG5cbi5uYXZiYXItYnJhbmQgaW1nIHtcbiAgICB3aWR0aDogMTQwcHg7XG59XG5cbi5uYXYtY29udGFjdCB7XG4gICAgdGV4dC1hbGlnbjogZW5kO1xuICAgIG1hcmdpbjogYXV0byAxcmVtO1xuICAgIFxufVxuXG4ubmF2LWNvbnRhY3QgZGl2IHtcbiAgICBkaXNwbGF5OiBpbmxpbmU7XG59XG5cbi5uYXYtY29udGFjdCBwe1xuICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICBjb2xvcjogI0NDQztcbn1cblxuLm5hdi1jb250YWN0IGF7XG4gICAgbWFyZ2luLWxlZnQ6IDIwcHg7XG4gICAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGNvbG9yOiB3aGl0ZTtcbn0iLCIjb25lUGFnZXItbmF2IC5jb250YWluZXIge1xuICBtYXJnaW46IDAgMCAwIDA7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMCAwIDAgMDtcbn1cbiNvbmVQYWdlci1uYXYge1xuICBtYXgtaGVpZ2h0OiAxMDBweDtcbiAgbWFyZ2luLXJpZ2h0OiA1MHB4O1xuICB3aWR0aDogMTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyMCwgMjAsIDIwLCAwLjY1KSAhaW1wb3J0YW50O1xuICBwYWRkaW5nLXRvcDogMDtcbiAgcGFkZGluZy1ib3R0b206IDA7XG59XG5uYXYgcCB7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbn1cbi5uYXZiYXItYnJhbmQge1xuICBtYXJnaW4tbGVmdDogMTBweDtcbn1cbiNvbmVQYWdlci1uYXYgYSBzcGFuIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjb2xvcjogd2hpdGU7XG59XG4jb25lUGFnZXItbmF2ICNsb2dvIHtcbiAgd2lkdGg6IDEyMHB4O1xufVxuLm5hdmJhci1icmFuZCBpbWcge1xuICB3aWR0aDogMTQwcHg7XG59XG4ubmF2LWNvbnRhY3Qge1xuICB0ZXh0LWFsaWduOiBlbmQ7XG4gIG1hcmdpbjogYXV0byAxcmVtO1xufVxuLm5hdi1jb250YWN0IGRpdiB7XG4gIGRpc3BsYXk6IGlubGluZTtcbn1cbi5uYXYtY29udGFjdCBwIHtcbiAgZGlzcGxheTogaW5saW5lO1xuICBtYXJnaW4tbGVmdDogMTBweDtcbiAgY29sb3I6ICNDQ0M7XG59XG4ubmF2LWNvbnRhY3QgYSB7XG4gIG1hcmdpbi1sZWZ0OiAyMHB4O1xuICBmb250LXdlaWdodDogODAwO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBjb2xvcjogd2hpdGU7XG59XG4iXX0= */\"","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-navbar-public',\n templateUrl: './navbar-public.component.html',\n styleUrls: ['./navbar-public.component.less']\n})\nexport class NavbarPublicComponent implements OnInit {\n\n constructor() { }\n\n ngOnInit() {\n }\n\n scroll(targetId: string){\n\n const elem = document.getElementById(targetId);\n elem.scrollIntoView({behavior:\"smooth\"});\n }\n\n}\n","module.exports = \"
\\n
\\n
\\n
    0\\\" class=\\\"errors\\\">\\n
  • {{ err }}
  • \\n
\\n
\\n
\\n\\n
\\n
\\n
\\n \\n
\\n

Als Serviceparter registieren

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

Gewerbenachweis hochladen

\\n
\\n
\\n

\\n Es ist der Upload von JPEG- oder PDF-Dateien möglich.
\\n (Maximal 3 Dateien, maximal 1MB pro Datei)\\n

\\n
    \\n
  • {{ err }}
  • \\n
\\n
\\n \\n

\\n Datei per Drag and Drop hinzufügen\\n

\\n
    0\\\" id=\\\"filelist\\\">\\n
  • {{ fn }}
  • \\n
\\n

oder

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

Hiermit akzeptiere ich die allgemeinen Geschäftsbedingungen für Serviceparter

\\n
\\n\\n
\\n \\n
\\n
\"","module.exports = \".jumbotron.main {\\n background-image: url('/assets/img/login.jpg');\\n width: 100%;\\n min-height: 20vw;\\n background-position: top center;\\n border-radius: 0;\\n background-position-y: 60%;\\n}\\n.jumbotron.main .jumbotron-text {\\n margin-top: 7vw;\\n}\\n.jumbotron.main .jumbotron-text h1 {\\n text-transform: uppercase;\\n font-size: 200%;\\n color: #be1822;\\n}\\n@media (max-width: 767px) {\\n .jumbotron.main .jumbotron-text h1 {\\n font-size: 150%;\\n }\\n}\\n.block.bg {\\n background-color: #f8f8fa;\\n}\\n.block h2 {\\n text-transform: uppercase;\\n font-size: 150%;\\n color: #be1822;\\n}\\n@media (min-width: 768px) {\\n #frame {\\n width: 70%;\\n margin-left: auto;\\n margin-right: auto;\\n }\\n}\\n.card {\\n border: none;\\n border-radius: unset;\\n box-shadow: 0px 0px 30px 0px rgba(0, 0, 0, 0.2);\\n}\\n.card .card-header {\\n background-color: #f8f8fa;\\n border: none;\\n padding: 1.5em;\\n}\\n.card .card-header h4 {\\n text-transform: uppercase;\\n text-align: left;\\n color: #000000;\\n font-weight: bold !important;\\n font-size: 120%;\\n}\\n.card .card-body {\\n padding: 3em;\\n}\\n.errors {\\n background-color: #ffcccc;\\n color: red;\\n font-weight: bold;\\n list-style-type: none;\\n}\\n#droparea {\\n padding: 2em;\\n text-align: center;\\n border: 1px solid #be1822;\\n}\\n#droparea label {\\n cursor: pointer;\\n}\\n#droparea.dragging {\\n background-color: #fadbdd;\\n}\\n#filelist {\\n background-color: #efb4ba;\\n padding: 0.3em;\\n text-decoration: underline;\\n list-style-type: none;\\n}\\n#fileSelector {\\n width: 0.1px;\\n height: 0.1px;\\n opacity: 0;\\n overflow: hidden;\\n z-index: -1;\\n position: absolute;\\n}\\n.sp-register-form-confirm {\\n text-align: center;\\n font-size: smaller;\\n}\\n.sp-register-form-confirm p {\\n margin: 1em auto;\\n}\\n.sp-upload {\\n height: 100%;\\n}\\n.sp-form-card {\\n height: 100%;\\n}\\n.sp-form-card .row {\\n margin: 5px 5px;\\n}\\n@media (max-width: 767.98px) {\\n .card-body {\\n padding: 1.25rem !important;\\n }\\n}\\n\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9hcHAtdWkvc3JjL2FwcC9jb21wb25lbnRzL3VpL3JlZ2lzdGVyLWZvcm0tZnJhYy9yZWdpc3Rlci1mb3JtLWZyYWMuY29tcG9uZW50Lmxlc3MiLCJzcmMvYXBwL2NvbXBvbmVudHMvdWkvcmVnaXN0ZXItZm9ybS1mcmFjL3JlZ2lzdGVyLWZvcm0tZnJhYy5jb21wb25lbnQubGVzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtFQUNFLDhDQUFBO0VBQ0EsV0FBQTtFQUNBLGdCQUFBO0VBQ0EsK0JBQUE7RUFDQSxnQkFBQTtFQUNBLDBCQUFBO0FDQ0Y7QURQQTtFQVNNLGVBQUE7QUNDTjtBRFZBO0VBWVUseUJBQUE7RUFDQSxlQUFBO0VBQ0EsY0FBQTtBQ0NWO0FEQ1U7RUFBQTtJQUNJLGVBQUE7RUNFWjtBQUNGO0FESUU7RUFDSSx5QkFBQTtBQ0ZOO0FEQUE7RUFNTSx5QkFBQTtFQUNBLGVBQUE7RUFDQSxjQUFBO0FDSE47QURRRTtFQUFBO0lBQ0UsVUFBQTtJQUNBLGlCQUFBO0lBQ0Esa0JBQUE7RUNMRjtBQUNGO0FEUUE7RUFDRSxZQUFBO0VBQ0Esb0JBQUE7RUFDQSwrQ0FBQTtBQ05GO0FER0E7RUFNTSx5QkFBQTtFQUNBLFlBQUE7RUFDQSxjQUFBO0FDTk47QURGQTtFQVdVLHlCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxjQUFBO0VBQ0EsNEJBQUE7RUFDQSxlQUFBO0FDTlY7QURUQTtFQW9CTSxZQUFBO0FDUk47QURZQTtFQUNFLHlCQUFBO0VBQ0EsVUFBQTtFQUNBLGlCQUFBO0VBQ0EscUJBQUE7QUNWRjtBRGFBO0VBQ0UsWUFBQTtFQUNBLGtCQUFBO0VBQ0EseUJBQUE7QUNYRjtBRFFBO0VBTUksZUFBQTtBQ1hKO0FEY0U7RUFDRSx5QkFBQTtBQ1pKO0FEZ0JBO0VBQ0UseUJBQUE7RUFDQSxjQUFBO0VBQ0EsMEJBQUE7RUFDQSxxQkFBQTtBQ2RGO0FEaUJBO0VBQ0UsWUFBQTtFQUNBLGFBQUE7RUFDQSxVQUFBO0VBQ0EsZ0JBQUE7RUFDQSxXQUFBO0VBQ0Esa0JBQUE7QUNmRjtBRGtCQTtFQUNFLGtCQUFBO0VBQ0Esa0JBQUE7QUNoQkY7QURjQTtFQUtJLGdCQUFBO0FDaEJKO0FEb0JBO0VBQ0UsWUFBQTtBQ2xCRjtBRHFCQTtFQUVFLFlBQUE7QUNwQkY7QURrQkE7RUFLSSxlQUFBO0FDcEJKO0FEeUJBO0VBRUU7SUFFRSwyQkFBQTtFQ3pCRjtBQUNGIiwiZmlsZSI6InNyYy9hcHAvY29tcG9uZW50cy91aS9yZWdpc3Rlci1mb3JtLWZyYWMvcmVnaXN0ZXItZm9ybS1mcmFjLmNvbXBvbmVudC5sZXNzIiwic291cmNlc0NvbnRlbnQiOlsiLmp1bWJvdHJvbi5tYWluIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcvYXNzZXRzL2ltZy9sb2dpbi5qcGcnKTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1pbi1oZWlnaHQ6IDIwdnc7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IHRvcCBjZW50ZXI7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQtcG9zaXRpb24teTogNjAlO1xuXG4gIC5qdW1ib3Ryb24tdGV4dCB7XG4gICAgICBtYXJnaW4tdG9wOiA3dnc7XG5cbiAgICAgIGgxIHtcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMjAwJTtcbiAgICAgICAgICBjb2xvcjogI2JlMTgyMjtcblxuICAgICAgICAgIEBtZWRpYShtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTUwJTtcbiAgICAgICAgICB9XG4gICAgICB9XG4gIH1cbn1cblxuLmJsb2NrIHtcbiAgJi5iZyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOGZhO1xuICB9XG5cbiAgaDIge1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGZvbnQtc2l6ZTogMTUwJTtcbiAgICAgIGNvbG9yOiAjYmUxODIyO1xuICB9XG59XG5cbiNmcmFtZSB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIHdpZHRoOiA3MCU7IFxuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgfVxufVxuXG4uY2FyZCB7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogdW5zZXQ7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMzBweCAwcHggcmdiYSgwLCAwLCAwLCAwLjIpOyAgICBcblxuICAuY2FyZC1oZWFkZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjhmYTtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgIHBhZGRpbmc6IDEuNWVtO1xuXG4gICAgICBoNCB7XG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgIGNvbG9yOiAjMDAwMDAwO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkICFpbXBvcnRhbnQ7XG4gICAgICAgICAgZm9udC1zaXplOiAxMjAlO1xuICAgICAgfVxuICB9XG5cbiAgLmNhcmQtYm9keSB7XG4gICAgICBwYWRkaW5nOiAzZW07XG4gIH1cbn1cblxuLmVycm9ycyB7XG4gIGJhY2tncm91bmQtY29sb3I6IGxpZ2h0ZW4oI2ZmMDAwMCwgNDAlKTtcbiAgY29sb3I6IHJlZDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbn1cblxuI2Ryb3BhcmVhIHtcbiAgcGFkZGluZzogMmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNiZTE4MjI7XG5cbiAgbGFiZWwge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxuXG4gICYuZHJhZ2dpbmcge1xuICAgIGJhY2tncm91bmQtY29sb3I6IGxpZ2h0ZW4oI2JlMTgyMiwgNTAlKTtcbiAgfVxufVxuXG4jZmlsZWxpc3Qge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWZiNGJhO1xuICBwYWRkaW5nOiAwLjNlbTtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbn1cblxuI2ZpbGVTZWxlY3RvciB7XG4gIHdpZHRoOiAwLjFweDtcbiAgaGVpZ2h0OiAwLjFweDtcbiAgb3BhY2l0eTogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgei1pbmRleDogLTE7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbn1cblxuLnNwLXJlZ2lzdGVyLWZvcm0tY29uZmlybSB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC1zaXplOiBzbWFsbGVyO1xuICBcbiAgcHtcbiAgICBtYXJnaW46IDFlbSBhdXRvO1xuICB9XG59XG5cbi5zcC11cGxvYWR7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuLnNwLWZvcm0tY2FyZCB7XG5cbiAgaGVpZ2h0OiAxMDAlO1xuXG4gIC5yb3d7XG4gICAgbWFyZ2luOiA1cHggNXB4O1xuICB9XG4gIFxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpXG57XG4gIC5jYXJkLWJvZHkgXG4gIHtcbiAgICBwYWRkaW5nOiAxLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cbn0iLCIuanVtYm90cm9uLm1haW4ge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy9hc3NldHMvaW1nL2xvZ2luLmpwZycpO1xuICB3aWR0aDogMTAwJTtcbiAgbWluLWhlaWdodDogMjB2dztcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogdG9wIGNlbnRlcjtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbi15OiA2MCU7XG59XG4uanVtYm90cm9uLm1haW4gLmp1bWJvdHJvbi10ZXh0IHtcbiAgbWFyZ2luLXRvcDogN3Z3O1xufVxuLmp1bWJvdHJvbi5tYWluIC5qdW1ib3Ryb24tdGV4dCBoMSB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtc2l6ZTogMjAwJTtcbiAgY29sb3I6ICNiZTE4MjI7XG59XG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLmp1bWJvdHJvbi5tYWluIC5qdW1ib3Ryb24tdGV4dCBoMSB7XG4gICAgZm9udC1zaXplOiAxNTAlO1xuICB9XG59XG4uYmxvY2suYmcge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOGZhO1xufVxuLmJsb2NrIGgyIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC1zaXplOiAxNTAlO1xuICBjb2xvcjogI2JlMTgyMjtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAjZnJhbWUge1xuICAgIHdpZHRoOiA3MCU7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICB9XG59XG4uY2FyZCB7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogdW5zZXQ7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMzBweCAwcHggcmdiYSgwLCAwLCAwLCAwLjIpO1xufVxuLmNhcmQgLmNhcmQtaGVhZGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjhmYTtcbiAgYm9yZGVyOiBub25lO1xuICBwYWRkaW5nOiAxLjVlbTtcbn1cbi5jYXJkIC5jYXJkLWhlYWRlciBoNCB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGNvbG9yOiAjMDAwMDAwO1xuICBmb250LXdlaWdodDogYm9sZCAhaW1wb3J0YW50O1xuICBmb250LXNpemU6IDEyMCU7XG59XG4uY2FyZCAuY2FyZC1ib2R5IHtcbiAgcGFkZGluZzogM2VtO1xufVxuLmVycm9ycyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmNjY2M7XG4gIGNvbG9yOiByZWQ7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG59XG4jZHJvcGFyZWEge1xuICBwYWRkaW5nOiAyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYm9yZGVyOiAxcHggc29saWQgI2JlMTgyMjtcbn1cbiNkcm9wYXJlYSBsYWJlbCB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbiNkcm9wYXJlYS5kcmFnZ2luZyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmYWRiZGQ7XG59XG4jZmlsZWxpc3Qge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWZiNGJhO1xuICBwYWRkaW5nOiAwLjNlbTtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbn1cbiNmaWxlU2VsZWN0b3Ige1xuICB3aWR0aDogMC4xcHg7XG4gIGhlaWdodDogMC4xcHg7XG4gIG9wYWNpdHk6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHotaW5kZXg6IC0xO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG59XG4uc3AtcmVnaXN0ZXItZm9ybS1jb25maXJtIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBmb250LXNpemU6IHNtYWxsZXI7XG59XG4uc3AtcmVnaXN0ZXItZm9ybS1jb25maXJtIHAge1xuICBtYXJnaW46IDFlbSBhdXRvO1xufVxuLnNwLXVwbG9hZCB7XG4gIGhlaWdodDogMTAwJTtcbn1cbi5zcC1mb3JtLWNhcmQge1xuICBoZWlnaHQ6IDEwMCU7XG59XG4uc3AtZm9ybS1jYXJkIC5yb3cge1xuICBtYXJnaW46IDVweCA1cHg7XG59XG5AbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgLmNhcmQtYm9keSB7XG4gICAgcGFkZGluZzogMS4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG59XG4iXX0= */\"","import { Component, OnInit, Input, ViewChild, ElementRef } from '@angular/core';\nimport { ServicePartnerService } from 'src/app/service/service-partner.service';\nimport { Router } from '@angular/router';\nimport { ServicePartner } from '../../../model/service-partner.model';\nimport { Address } from '../../../model/address.model';\nimport { User } from '../../../model/user.model';\nimport { HttpClient } from '@angular/common/http';\nimport { REST_SERVER } from 'src/app/config';\n\n@Component({\n selector: 'app-register-form-frac',\n templateUrl: './register-form-frac.component.html',\n styleUrls: ['./register-form-frac.component.less']\n})\nexport class RegisterFormFracComponent implements OnInit {\n\n @Input() requiresProof:boolean = true;\n @Input() requiresPassword:boolean = true;\n @Input() createButtonCaption:string = \"Jetzt ServicePartner werden\";\n @Input() restPath:string = '/service-partners/register';\n @Input() redirectSuccess:string[] = ['register', 'success'];\n public sendingRegistration:boolean;\n public success:boolean;\n public passwordCheck:string = \"\";\n public dragging:boolean = false;\n servicePartner = new ServicePartner();\n public fileErrors:string[] = [];\n public registrationErrors:string[] = [];\n @ViewChild(\"registerOrderForm\") registerOrderForm;\n @ViewChild('registrationErrorsDisplay') registrationErrorsDisplay:ElementRef;\n\n constructor(\n private _router:Router,\n private _servicePartnerService:ServicePartnerService,\n private _http:HttpClient,\n ) { \n this.servicePartner.invoiceAddress = new Address();\n this.servicePartner.user = new User();\n }\n\n ngOnInit() {\n }\n\n async onRegister():Promise {\n this.registrationErrors = [];\n let success:boolean = false;\n this.servicePartner.invoiceAddress.name = this.servicePartner.name;\n //this.servicePartner.invoiceAddress.contact = this.servicePartner.user.firstName + \" \" + this.servicePartner.user.lastName;\n this.servicePartner.deliveryAddress = {...this.servicePartner.invoiceAddress};\n this.sendingRegistration = true;\n try {\n let res = await this._http.post(REST_SERVER + this.restPath, this.servicePartner).toPromise();\n success = true;\n } catch(exc) {\n console.log(exc);\n let code = exc.error && exc.error.error && exc.error.error.code;\n if(code === 'EMAIL_ALREADY_EXISTS') {\n this.registrationErrors.push(\"Die E-Mail-Adresse wird bereits verwendet\");\n } else {\n this.registrationErrors.push(\"Unbekannter Fehler\");\n }\n this.registrationErrorsDisplay.nativeElement.scrollIntoView(true);\n //window.scroll(0,0);\n }\n this.sendingRegistration = false;\n if(success) {\n const url = this._router.createUrlTree(['register', 'success']);\n window.open(url.toString(), '_blank');\n\n //this._router.navigate(this.redirectSuccess);\n }\n }\n\n get servicePartnerJson():string {\n return JSON.stringify(this.servicePartner);\n }\n\n async dropFile(evt):Promise {\n evt.preventDefault();\n this.dragging = false;\n console.log(evt.dataTransfer.items);\n let files:File[] = [];\n for(let item of evt.dataTransfer.items) {\n files.push(item.getAsFile());\n }\n this._readFiles(files);\n }\n\n dragFile(evt) {\n evt.preventDefault();\n this.dragging = true;\n }\n\n dragFileEnded(evt) {\n evt.preventDefault();\n this.dragging = false;\n }\n\n private _readSingleFile(file:File):Promise {\n return new Promise((resolve, reject) => {\n var reader = new FileReader();\n \n // Closure to capture the file information.\n reader.onload = async (evt:any) => {\n let data:ArrayBuffer = evt.target.result;\n resolve(data);\n };\n\n // Read in the image file as a data URL.\n reader.readAsArrayBuffer(file);\n });\n }\n\n private async _readFiles(files:File[]) {\n this.fileErrors = [];\n let spAny:any = this.servicePartner;\n for(let file of files) {\n let type:string = file.type;\n if(spAny.files && spAny.files.length >= 3) {\n break;\n }\n if(spAny.files && spAny.files.filter(existing => existing.filename === file.name).length > 0) {\n this.fileErrors.push(`Datei ${file.name} bereits hinzugefügt`);\n continue;\n }\n if(!file.type.match('image/jpeg') && !file.type.match('application/pdf')) {\n this.fileErrors.push(`Die Datei ${file.name} hat nicht den richtigen Typ`);\n continue;\n }\n if(file.size > 1024 * 1024) {\n this.fileErrors.push(`Die Datei ${file.name} ist zu groß`);\n continue;\n }\n let data:ArrayBuffer = await this._readSingleFile(file);\n if(!spAny.files) {\n spAny.files = [];\n }\n let arr:any = new Uint8Array(data);\n let base64:string = btoa(\n arr.reduce((data, byte) => data + String.fromCharCode(byte), '')\n )\n spAny.files.push({\n filename: file.name,\n data: base64,\n });\n }\n }\n\n getFilenames():string[] {\n let result = [];\n let spAny:any = this.servicePartner;\n if(spAny.files) {\n result = spAny.files.map(f => f.filename);\n }\n return result;\n }\n\n handleFileSelect(evt):void {\n let files:File[] = evt.target.files;\n this._readFiles(files);\n }\n\n removeFile(idx):void {\n let spAny:any = this.servicePartner;\n spAny.files.splice(idx, 1);\n }\n\n canSubmit():boolean {\n let result:boolean = true;\n result = result && ((this.servicePartner.user.password === this.passwordCheck) || !this.requiresPassword);\n result = result && this.registerOrderForm.form.valid;\n let spAny:any = this.servicePartner;\n result = result && ((spAny.files && spAny.files.length > 0) || !this.requiresProof);\n result = result && !this.sendingRegistration;\n return result;\n }\n}\n","export const REST_SERVER = \"/api\";\nexport const GOOGLE_MAPS_API_KEY = \"AIzaSyDCgJhGeGX2ZaT-A8gSVfyCS-ySsHXCSR0\";\n","export class Address {\n name:string;\n contactFirstName:string;\n contactLastName:string;\n contactEmail:string;\n contactPhone:string;\n street:string;\n streetNr:string;\n zipCode:string;\n city:string;\n}","export class CmsBlock {\n id:number;\n key:string;\n html:string;\n orderIdx:number;\n background:boolean;\n active:boolean;\n}","import { CmsBlock } from \"./cms-block.model\";\n\nexport class CmsPage {\n id:number;\n path:string;\n title:string;\n description:string;\n blocks:CmsBlock[];\n active:boolean;\n}","import { ServicePartner } from 'src/app/model/service-partner.model';\nimport { Address } from 'src/app/model/address.model';\nimport { RepairOrder } from 'src/app/model/repair-order.model';\nimport { RepairCenter } from 'src/app/model/repair-center.model';\n\nexport class InvoiceItem {\n description:string;\n amountSingleNet:number;\n amountNet:number;\n count:number;\n}\n\nexport class Invoice {\n ident:string;\n type:string;\n state:string;\n address:Address\n servicePartner:ServicePartner;\n repairCenter:RepairCenter;\n repairOrder:RepairOrder;\n date:string;\n amountNet:number;\n amountVat:number;\n amountTotal:number;\n items:InvoiceItem[];\n}","import { Address } from './address.model';\nimport { User } from './user.model';\n\nexport class RepairCenter {\n id: number;\n name: string;\n deliveryAddress:Address;\n user:User;\n phone:string;\n capacitySilver:number;\n capacityColored:number;\n capacityPolish:number;\n capacityLuxury:number;\n pendingRepairOrdersSilver:number;\n pendingRepairOrdersColored:number;\n pendingRepairOrdersPolish:number;\n pendingRepairOrdersLuxury:number;\n priceSilver17:number;\n priceSilver18:number;\n priceColored17:number;\n priceColored18:number;\n pricePolish17:number;\n pricePolish18:number;\n priceLuxury17:number;\n priceLuxury18:number;\n priceMounting:number;\n priority:number;\n abbreviation: string;\n}","import { ServicePartner } from 'src/app/model/service-partner.model';\n\n\nexport class RepairOrder {\n id?: number;\n servicePartner:ServicePartner;\n orderDate:string;\n rimCount:number;\n rimDiameter:number;\n rimVarnish:string;\n rimWithTires:boolean;\n servicePartnerReference:string;\n servicePartnerMessage:string;\n state:string;\n repairResult:string;\n invoiceIdent:string;\n}","import { Address } from \"./address.model\";\nimport { User } from \"./user.model\";\n\nexport class ServicePartner {\n id:number;\n name:string;\n deliveryAddress:Address;\n invoiceAddress:Address;\n user:User;\n phone:string;\n state:string;\n isLogistician:boolean;\n}","export class User {\n\n email:string;\n password:string;\n salutation:string;\n firstName:string;\n lastName:string;\n role:string;\n activated:boolean;\n lastLogin:string;\n}","import { Pipe, PipeTransform } from '@angular/core';\n\n@Pipe({\n name: 'amount'\n})\nexport class AmountPipe implements PipeTransform {\n\n transform(value:number, args?: any): any {\n let euro = Math.floor(value / 100);\n let cent = value % 100;\n //console.log(euro, cent, (\"00\" + cent).substr(-2));\n return euro + \",\" + (\"00\" + cent).substr(-2);\n }\n\n}","import { Pipe, PipeTransform } from '@angular/core';\n\n@Pipe({\n name: 'camelCase'\n})\nexport class CamelCasePipe implements PipeTransform {\n\n transform(value: any, args?: any): any {\n let result = value;\n if(value && value.replace) {\n console.log(value);\n result = value.replace(/[A-Z]/g, arg => (\"_\" + arg.toLowerCase()));\n }\n return result;\n }\n\n}","import { Pipe, PipeTransform } from '@angular/core';\n\n@Pipe({\n name: 'date'\n})\nexport class DatePipe implements PipeTransform {\n\n transform(value: any, args?: any): any {\n var d:Date = new Date(value);\n var result:string = \"\";\n result += (\"00\" + d.getDate()).substr(-2) + \".\";\n result += (\"00\" + (d.getMonth() + 1)).substr(-2) + \".\";\n result += d.getFullYear(); /*+ \" \";\n result += (\"00\" + d.getHours()).substr(-2) + \":\";\n result += (\"00\" + d.getMinutes()).substr(-2) + \":\";\n result += (\"00\" + d.getSeconds()).substr(-2);*/\n return result;\n }\n\n}\n","import { Pipe, PipeTransform } from '@angular/core';\n\n@Pipe({\n name: 'dateIf'\n})\nexport class DateIfPipe implements PipeTransform {\n\n transform(value:any, args?: any): any {\n var result:string = value;\n if(value && value.match && value.match(/\\d{4}\\-\\d{2}\\-\\d{2}T\\d{2}:\\d{2}:\\d{2}\\.\\d{3}Z/)) {\n result = '';\n var d:Date = new Date(value);\n result += (\"00\" + d.getDate()).substr(-2) + \".\";\n result += (\"00\" + (d.getMonth() + 1)).substr(-2) + \".\";\n result += d.getFullYear() + \" \";\n result += (\"00\" + d.getHours()).substr(-2) + \":\";\n result += (\"00\" + d.getMinutes()).substr(-2) + \":\";\n result += (\"00\" + d.getSeconds()).substr(-2);\n }\n return result;\n }\n\n}\n","import { Pipe, PipeTransform } from '@angular/core';\nimport { RepairOrder } from 'src/app/model/repair-order.model';\n\n@Pipe({\n name: 'orderId'\n})\nexport class OrderIdPipe implements PipeTransform {\n\n transform(repairOrder:RepairOrder, args?: any): any {\n if(!repairOrder) {\n return '';\n }\n let result = 'A';\n result += ('000000' + repairOrder.id).substr(-6);\n result += '-';\n let date = new Date(repairOrder.orderDate);\n result += date.getFullYear();\n result += (\"00\" + (date.getMonth() + 1)).substr(-2);\n result += (\"00\" + date.getDate()).substr(-2);\n return result;\n }\n\n}","import { Pipe, PipeTransform, SecurityContext } from '@angular/core';\nimport { DomSanitizer } from '@angular/platform-browser';\n\n@Pipe({\n name: 'sanitizeHtml'\n})\nexport class SanitizeHtmlPipe implements PipeTransform {\n constructor(private sanitizer: DomSanitizer) { }\n transform(value: any): any {\n return this.sanitizer.bypassSecurityTrustHtml(value);\n }\n}","import { Pipe, PipeTransform } from '@angular/core';\nimport { HttpClient } from '@angular/common/http';\nimport { Observable } from 'rxjs';\nimport { DomSanitizer, SafeUrl } from '@angular/platform-browser';\n\n@Pipe({\n name: 'secure'\n})\nexport class SecurePipe implements PipeTransform {\n\n constructor(private http: HttpClient, private _sanitizer: DomSanitizer) { }\n\n transform(url: string) {\n let sanitizer = this._sanitizer;\n return new Observable((observer) => {\n // This is a tiny blank image\n observer.next('data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==');\n\n // The next and error callbacks from the observer\n const {next, error} = observer;\n\n this.http.get(url, {responseType: 'blob'}).subscribe(response => {\n const reader = new FileReader();\n reader.readAsDataURL(response);\n reader.onloadend = function() {\n let result:SafeUrl = sanitizer.bypassSecurityTrustUrl(reader.result);\n observer.next(result);\n };\n });\n\n return {unsubscribe() { }};\n });\n }\n}","import { CmsPage } from 'src/app/model/cms-page.model';\nimport { CmsBlock } from 'src/app/model/cms-block.model';\nimport { REST_SERVER } from 'src/app/config';\nimport { Injectable } from '@angular/core';\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class CmsService {\n\n constructor(\n private _http:HttpClient,\n ) { }\n\n async load(pageIdent:string):Promise {\n return await this._http.get(`${REST_SERVER}/cms/page/${pageIdent}`).toPromise();\n }\n\n async loadAdmin(pageIdent:string):Promise {\n return await this._http.get(`${REST_SERVER}/cms/admin/page/${pageIdent}`).toPromise();\n }\n\n async saveAdmin(page:CmsPage):Promise {\n await this._http.put(`${REST_SERVER}/cms/admin/page/${page.path}`, page).toPromise();\n }\n\n async deletePage(page:CmsPage):Promise {\n await this._http.delete(`${REST_SERVER}/cms/admin/page/${page.path}`).toPromise();\n }\n\n async loadSettingsDict():Promise {\n let settings:any[] = (await this._http.get(`${REST_SERVER}/cms/admin/settings`).toPromise());\n let result:any = {};\n for(let s of settings) {\n result[s.key] = s.value;\n }\n return result;\n }\n\n async loadCss():Promise {\n return (await this._http.get(`${REST_SERVER}/cms/css`, {responseType: 'text'}).toPromise());\n }\n\n async loadAdminCss():Promise {\n return (await this._http.get(`${REST_SERVER}/cms/admin/css`, {responseType: 'text'}).toPromise());\n }\n\n async saveAdminCss(css:string):Promise {\n await this._http.put(`${REST_SERVER}/cms/admin/css`, css).toPromise();\n }\n\n async loadJs():Promise {\n return (await this._http.get(`${REST_SERVER}/cms/js`, {responseType: 'text'}).toPromise());\n }\n\n async loadAdminJs():Promise {\n return (await this._http.get(`${REST_SERVER}/cms/admin/js`, {responseType: 'text'}).toPromise());\n }\n\n async saveAdminJs(js:string):Promise {\n await this._http.put(`${REST_SERVER}/cms/admin/js`, js).toPromise();\n }\n\n async saveSetting(setting):Promise {\n await this._http.put(`${REST_SERVER}/cms/admin/settings/${setting.id}`, setting).toPromise();\n }\n\n public async uploadFile(filename:string, type:string, data:ArrayBuffer):Promise {\n const httpOptions = {\n headers: new HttpHeaders({\n 'Content-Type': type,\n })\n };\n filename = encodeURIComponent(filename);\n await this._http.put(`${REST_SERVER}/cms/admin/files/${filename}`, data, httpOptions).toPromise();\n }\n \n public async deleteFile(filename):Promise {\n await this._http.delete(`${REST_SERVER}/cms/admin/files/${filename}`).toPromise();\n }\n\n}","import { Injectable } from '@angular/core';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class EnumService {\n\n private _enums = null;\n\n constructor() { \n setTimeout(() => {\n this._enums = {\n rim_count: [1, 2, 3, 4],\n rim_diameter: [17, 18],\n rim_with_tires: [\n false, true\n ],\n rim_varnish: [\n \"silver\",\n \"colored\",\n \"polish\",\n \"luxury\",\n ],\n yes_no: [\n 'yes',\n 'no',\n ],\n salutation: [\n 'mr',\n 'mrs',\n ],\n notRepairableReason: [\n 'outOfRoundRadially',\n 'outOfRoundLaterally',\n 'moreThan1mm',\n ],\n invoiceType: [\n 'invoice',\n 'credit',\n ],\n partnerType: [\n 'servicePartner',\n 'repairCenter',\n ],\n };\n }, 1);\n }\n\n isLoading():boolean {\n return !this._enums;\n }\n\n getEnum(key:string):string[] {\n let result:string[] = [];\n if(this._enums && key in this._enums) {\n result = this._enums[key];\n }\n return result;\n }\n\n}\n","import { MatSnackBar, MAT_SNACK_BAR_DATA} from '@angular/material/snack-bar';\nimport {Component, Inject, Injectable} from '@angular/core';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class FeedbackService {\n\n constructor(\n private _snackBar:MatSnackBar,\n ) {}\n\n showError(message:string) {\n this._snackBar.openFromComponent(\n ErrorComponent,\n { \n data: message,\n duration: 5000,\n panelClass: ['error-snackbar']\n }\n )\n }\n\n\n}\n\n@Component({\n selector:'snack-bar-error',\n styles: [\n `\n .error-title {\n color: red;\n text-align:center;\n }\n \n `\n ],\n template: `\n
\n

Fehler :

\n
\n
\n

{{message}}

\n
\n `\n})\nexport class ErrorComponent {\n constructor(@Inject(MAT_SNACK_BAR_DATA) public message: string) {}\n}","import { Injectable } from '@angular/core';\nimport { REST_SERVER } from 'src/app/config';\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\nimport { RepairOrder } from 'src/app/model/repair-order.model';\nimport { Invoice } from 'src/app/model/invoice.model';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class InvoiceService {\n constructor(\n private _http:HttpClient,\n ) { }\n\n async createInvoice(invoice:Invoice):Promise {\n return await this._http.post(`${REST_SERVER}/invoices`, invoice).toPromise();\n }\n\n async createInvoiceForRepairOrder(repairOrder:RepairOrder):Promise {\n return await this._http.post(`${REST_SERVER}/repair-orders/${repairOrder.id}/invoice`, {}).toPromise();\n }\n\n async markInvoicePayed(invoice:Invoice):Promise {\n return await this._http.post(`${REST_SERVER}/invoices/${invoice.ident}/process/payed`, {}).toPromise();\n }\n\n async load(invoiceIdent:string):Promise {\n return await this._http.get(`${REST_SERVER}/invoices/${invoiceIdent}`).toPromise();\n }\n\n async createDunnings():Promise {\n await this._http.post(`${REST_SERVER}/invoices/dunnings`, {}).toPromise();\n }\n\n /* async generateRepairCenterCredits():Promise {\n await this._http.post(`${REST_SERVER}/system/generate-repair-center-credits`, {}).toPromise();\n } */\n\n async generateRepairCenterCredits():Promise {\n await this._http.post(`${REST_SERVER}/invoices/repair-center-credits`, {}).toPromise();\n }\n\n async generateServicePartnerInvoices():Promise {\n await this._http.post(`${REST_SERVER}/invoices/service-partner-invoices`, {}).toPromise();\n }\n}","import { HttpClient } from '@angular/common/http';\nimport { Injectable, Inject } from '@angular/core';\nimport { DOCUMENT} from '@angular/common';\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class PrinterService {\n\n constructor(\n private _http:HttpClient,\n @Inject(DOCUMENT) private document: Document\n ) {}\n\n async checkBoxPrinter():Promise {\n\n let response;\n try {\n response = await this._http.get(`https://localhost:9043/ping`, { responseType: 'json' }).toPromise();\n return response.status;\n } catch(err) {\n console.log(err);\n }\n }\n\n async printShippingLabel(pathToLabel: string) {\n\n let responseLabel;\n let responsePrinter;\n\n try {\n responseLabel = await this._http.get(pathToLabel, { responseType: 'arraybuffer' }).toPromise();\n } catch(err) {\n console.log(\"Label for printing not accessible\");\n throw \"Versandlabel nicht verfügbar\";\n }\n \n try {\n //responsePrinter = await this._http.post(`https://localhost:9043/print`, responseLabel).toPromise();\n //encode Base64\n var binary = '';\n var bytes = new Uint8Array(responseLabel);\n var len = bytes.byteLength;\n for (var i = 0; i < len; i++) {\n binary += String.fromCharCode(bytes[i]);\n }\n\n let encoded: string = window.btoa(binary);\n\n this.document.location.href = 'fhprint://print?data=' + encoded;\n\n } catch (err) {\n console.log(\"Printing not successfull. Check printer or file format\");\n throw \"Drucken fehlgeschlagen. Bitte Drucker überprüfen\";\n }\n \n }\n\n async testPrinter()\n { \n let labelPath : string = '/api/repair-centers/1/repair-orders/497/shipping_label?access_token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6NCwic2FsdXRhdGlvbiI6bnVsbCwiZmlyc3ROYW1lIjoiTWVtbyIsImxhc3ROYW1lIjoiQ2lsaW5naXIiLCJlbWFpbCI6InJjQHRlc3QuY29tIiwicm9sZSI6InJlcGFpci1jZW50ZXIiLCJhY3RpdmF0ZWQiOnRydWUsInJlc2V0UGFzc3dvcmRLZXkiOm51bGwsInJlcGFpckNlbnRlcklkIjoxLCJpYXQiOjE2MjE5NDgyMzcsImV4cCI6MTYyMTk1MDAzN30.x9UjnJwnT4svLl46CeaFQ2i5hrtBO8YGHKcyFOmyMDw';\n let responseLabel = await this._http.get(labelPath, { responseType: 'arraybuffer' }).toPromise();\n\n //encode Base64\n var binary = '';\n var bytes = new Uint8Array( responseLabel );\n var len = bytes.byteLength;\n for (var i = 0; i < len; i++) {\n binary += String.fromCharCode( bytes[ i ] );\n }\n\n let encoded : string = window.btoa(binary);\n\n console.log(encoded);\n alert(\"Mops\");\n\n this.document.location.href = 'fhprint://print?data=' + encoded;\n }\n\n}\n\n\n","import { Injectable } from '@angular/core';\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\nimport { REST_SERVER } from 'src/app/config';\nimport { RepairCenter } from '../model/repair-center.model';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class RepairCenterService {\n\n constructor(\n private _http:HttpClient\n ) { }\n\n public async load(id:number):Promise {\n return await this._http.get(`${REST_SERVER}/repair-centers/${id}`).toPromise();\n }\n\n public async save(repairCenter:RepairCenter):Promise {\n if(repairCenter.id) {\n await this._http.put(`${REST_SERVER}/repair-centers/${repairCenter.id}`, repairCenter).toPromise();\n } else {\n await this._http.post(`${REST_SERVER}/repair-centers`, repairCenter).toPromise();\n }\n }\n\n public async increasePriority(repairCenter:RepairCenter):Promise {\n await this._http.post(`${REST_SERVER}/repair-centers/${repairCenter.id}/increase-priority`, {}).toPromise();\n }\n\n public async decreasePriority(repairCenter:RepairCenter):Promise {\n await this._http.post(`${REST_SERVER}/repair-centers/${repairCenter.id}/decrease-priority`, {}).toPromise();\n }\n}\n","import { Injectable } from '@angular/core';\nimport { REST_SERVER } from 'src/app/config';\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\nimport { RepairOrder } from 'src/app/model/repair-order.model';\nimport { UserService } from './user.service';\nimport { ServicePartner } from 'src/app/model/service-partner.model';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class RepairOrderService {\n\n constructor(\n private _http:HttpClient,\n private _userService:UserService,\n ) { }\n\n public async load(id:number):Promise {\n return await this._http.get(`${REST_SERVER}/repair-orders/${id}`).toPromise();\n }\n\n public async loadForRepairCenter(id:number, repairCenterId:number):Promise {\n return await this._http.get(`${REST_SERVER}/repair-centers/${repairCenterId}/repair-orders/${id}`).toPromise();\n }\n\n public async loadForRepairCenterFiltered(filter:any, repairCenterId:number):Promise {\n let filterStr:string = encodeURIComponent(JSON.stringify(filter));\n return await this._http.get(`${REST_SERVER}/repair-centers/${repairCenterId}/repair-orders/?filter=${filterStr}`).toPromise();\n }\n\n public async loadForServicePartner(servicePartnerId:number, id:number):Promise {\n let res = null;\n try {\n res = await this._http.get(`${REST_SERVER}/service-partners/${servicePartnerId}/repair-orders/${id}`).toPromise();\n } catch(exc) {\n console.error(exc);\n }\n return res;\n }\n\n public async createRepairOrder(repairOrder:RepairOrder):Promise {\n let user = this._userService.user;\n let newRepairOrder : RepairOrder;\n try {\n newRepairOrder = await this._http.post(REST_SERVER + \"/service-partners/\" + user.servicePartnerId\n + \"/repair-orders\", repairOrder).toPromise();\n return newRepairOrder;\n } catch(error)\n {\n throw error.error;\n }\n \n }\n\n public async cancelOrder(repairOrder:RepairOrder) :Promise {\n await this._http.post(\n `${REST_SERVER}/admin/repair-orders/${repairOrder.id}/cancel`,{}\n ).toPromise();\n }\n\n public async recordWorkStart(repairOrder:RepairOrder, withTires:boolean, repairCenterId:number):Promise {\n return (await this._http.post(\n `${REST_SERVER}/repair-centers/${repairCenterId}/repair-orders/${repairOrder.id}/process/start-work`, \n { withTires }).toPromise());\n }\n\n public async recordWorkFinished(repairOrder:RepairOrder, success:boolean, notRepairableReason:string, repairCenterId:number):Promise {\n return (await this._http.post(\n `${REST_SERVER}/repair-centers/${repairCenterId}/repair-orders/${repairOrder.id}/process/finish-work`, { success, notRepairableReason }).toPromise());\n }\n\n public async uploadImage(repairOrder:RepairOrder, type:string, data:ArrayBuffer, before:boolean):Promise {\n const httpOptions = {\n headers: new HttpHeaders({\n 'Content-Type': type,\n })\n };\n let state:string = before ? 'before' : 'after';\n let res = await this._http.post(`${REST_SERVER}/repair-orders/${repairOrder.id}/images/${state}`, data, httpOptions).toPromise();\n console.log(\"Upload completed\", data);\n }\n\n public async uploadImageForRepairCenter(\n repairOrder:RepairOrder, type:string, data:ArrayBuffer, before:boolean, repairCenterId:number):Promise {\n const httpOptions = {\n headers: new HttpHeaders({\n 'Content-Type': type,\n })\n };\n let state:string = before ? 'before' : 'after';\n let res = await this._http.post(`${REST_SERVER}/repair-centers/${repairCenterId}/repair-orders/${repairOrder.id}/images/${state}`, data, httpOptions).toPromise();\n console.log(\"Upload completed\", data);\n }\n\n public async deleteImage(repairOrder:RepairOrder, path:string):Promise {\n let res = await this._http.delete(path).toPromise();\n }\n\n public async getImageNames(repairOrder:RepairOrder, before:boolean):Promise {\n let state = before ? 'before' : 'after';\n let res:any = await this._http.get(`${REST_SERVER}/repair-orders/${repairOrder.id}/images/${state}`).toPromise();\n return res.images;\n }\n\n public async getImageNamesForServicePartner(repairOrder:RepairOrder, servicePartnerId:number, before:boolean):Promise {\n let state = before ? 'before' : 'after';\n let res:any = await this._http.get(`${REST_SERVER}/service-partners/${servicePartnerId}/repair-orders/${repairOrder.id}/images/${state}`).toPromise();\n return res.images;\n }\n\n public async getImageNamesForRepairCenter(repairOrder:RepairOrder, repairCenterId:number, before:boolean):Promise {\n let state = before ? 'before' : 'after';\n let res:any = await this._http.get(`${REST_SERVER}/repair-centers/${repairCenterId}/repair-orders/${repairOrder.id}/images/${state}`).toPromise();\n return res.images;\n }\n\n public async getAbsoluteImageNames(repairOrder:RepairOrder, before:boolean):Promise {\n let filenames:string[] = await this.getImageNames(repairOrder, before);\n let state = before ? 'before' : 'after';\n let result:string[] = [];\n for(let filename of filenames) {\n result.push(`${REST_SERVER}/repair-orders/${repairOrder.id}/images/${state}/${filename}`);\n }\n return result;\n }\n\n public async getAbsoluteImageNamesForServicePartner(repairOrder:RepairOrder, servicePartnerId:number, before:boolean):Promise {\n let filenames:string[] = await this.getImageNamesForServicePartner(repairOrder, servicePartnerId, before);\n let state = before ? 'before' : 'after';\n let result:string[] = [];\n for(let filename of filenames) {\n result.push(`${REST_SERVER}/service-partners/${servicePartnerId}/repair-orders/${repairOrder.id}/images/${state}/${filename}`);\n }\n return result;\n }\n\n public async getAbsoluteImageNamesForRepairCenter(repairOrder:RepairOrder, repairCenterId:number, before:boolean):Promise {\n let filenames:string[] = await this.getImageNamesForRepairCenter(repairOrder, repairCenterId, before);\n let result:string[] = [];\n for(let filename of filenames) {\n let state:string = before ? 'before' : 'after';\n result.push(`${REST_SERVER}/repair-centers/${repairCenterId}/repair-orders/${repairOrder.id}/images/${state}/${filename}`);\n }\n return result;\n }\n\n public async getLabelReturn(repairOrder:RepairOrder):Promise {\n let res = await this._http.get('/assets/label.pdf', { responseType: 'blob' }).toPromise();\n console.log(res);\n return res;\n }\n\n public async createShippingOrderRepairCenter(repairOrderId:number):Promise {\n let user = this._userService.user;\n return await this._http.post(REST_SERVER + \n \"/repair-centers/\" + user.repairCenterId +\n \"/repair-orders/\" + repairOrderId + \n \"/create_shipping_order\", repairOrderId).toPromise();\n }\n\n public async getShippingLabelHrefServicePartner(repairOrderId:number):Promise {\n let servicePartnerId = this._userService.user.servicePartnerId;\n let token:string = this._userService.token;\n return `${REST_SERVER}/service-partners/${servicePartnerId}/repair-orders/${repairOrderId}/shipping_label?access_token=${token}`;\n }\n\n public async getShippingLabelHrefRepairCenter(repairOrderId:number):Promise {\n let repairCenterId = this._userService.user.repairCenterId;\n let token:string = this._userService.token;\n return `${REST_SERVER}/repair-centers/${repairCenterId}/repair-orders/${repairOrderId}/shipping_label?access_token=${token}`;\n }\n\n public async testRepairCenterAssignment(config?:any):Promise {\n const headers = {'content-type': 'application/json'};\n //let configStr:string = encodeURIComponent(JSON.stringify(config));\n\n let configStr = {'name':'test'};\n let result = await this._http.post(\n `${REST_SERVER}/repair-orders/testAssignment`, \n config, \n {headers }).toPromise();\n \n return result;\n }\n}\n","import { Injectable } from '@angular/core';\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\nimport { REST_SERVER } from 'src/app/config';\nimport { ServicePartner } from '../model/service-partner.model';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ServicePartnerService {\n\n constructor(\n private _http:HttpClient\n ) { }\n\n public async deleteServicePartner(servicePartner:ServicePartner):Promise {\n await this._http.delete(`${REST_SERVER}/service-partners/${servicePartner.id}`).toPromise();\n }\n\n public async confirmEmail(confirmEmailData:any):Promise {\n await this._http.post(REST_SERVER + '/service-partners/confirm-email', confirmEmailData).toPromise();\n }\n\n public async loadAll(filter = {}):Promise {\n let filterStr:string = encodeURIComponent(JSON.stringify(filter));\n return await this._http.get(`${REST_SERVER}/service-partners/public?filter=${filterStr}`).toPromise();\n }\n\n public async load(id:number):Promise {\n return await this._http.get(REST_SERVER + '/service-partners/' + id).toPromise();\n }\n\n public async getDocumentNames(id:number):Promise {\n let res:any = await this._http.get(`${REST_SERVER}/service-partners/${id}/documents`).toPromise();\n return res.documents;\n }\n\n public async deleteDocument(servicePartnerId:number, filename:string):Promise {\n filename = encodeURIComponent(filename);\n await this._http.delete(`${REST_SERVER}/service-partners/${servicePartnerId}/documents/${filename}`).toPromise();\n }\n\n public async addDocument(servicePartnerId:number, filename:string, type:string, data:ArrayBuffer):Promise {\n const httpOptions = {\n headers: new HttpHeaders({\n 'Content-Type': type,\n })\n };\n filename = encodeURIComponent(filename);\n await this._http.put(`${REST_SERVER}/service-partners/${servicePartnerId}/documents/${filename}`, data, httpOptions).toPromise();\n } \n\n public async getAbsoluteDocumentNames(id:number):Promise {\n let filenames:string[] = await this.getDocumentNames(id);\n let result:string[] = [];\n for(let filename of filenames) {\n result.push(`${REST_SERVER}/repair-orders/${id}/images/${filename}`);\n }\n return result;\n }\n\n public async loadSettings(id:number):Promise {\n return await this._http.get(`${REST_SERVER}/service-partners/${id}/settings`).toPromise();\n }\n\n public async saveSettings(id:number, settings:any):Promise {\n return await this._http.post(`${REST_SERVER}/service-partners/${id}/settings`, settings).toPromise();\n }\n\n public async saveDisplayOnMap(id:number, displayOnMap:boolean):Promise {\n return await this._http.post(`${REST_SERVER}/service-partners/${id}/settings/displayOnMap`, {displayOnMap}).toPromise();\n }\n\n public async activate(servicePartner):Promise {\n await this._http.post(REST_SERVER + '/service-partners/' + servicePartner.id + '/activate', {}).toPromise();\n }\n\n public async denyActivation(servicePartner):Promise {\n await this._http.post(REST_SERVER + '/service-partners/' + servicePartner.id + '/deny-activation', {}).toPromise();\n }\n\n public async placeMarketingMaterialOrder(servicePartnerId:number, orderFlyerBox:boolean, orderFlyers:boolean) {\n await this._http.post(`${REST_SERVER}/service-partners/${servicePartnerId}/place-marketing-material-order`, {orderFlyerBox, orderFlyers}).toPromise();\n }\n\n public async requestPricelist(personalData: any): Promise {\n const headers = {'content-type': 'application/json'};\n let result = await this._http.post(\n `${REST_SERVER}/service-partners/requestPricelist`,\n personalData,\n {headers}\n ).toPromise();\n }\n}\n","import { Injectable } from '@angular/core';\nimport { REST_SERVER } from 'src/app/config';\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\nimport { RepairOrder } from 'src/app/model/repair-order.model';\nimport { Subject, BehaviorSubject } from 'rxjs';\nimport { Setting } from 'src/app/model/setting.model';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class SettingsService {\n private priceSubject:BehaviorSubject = new BehaviorSubject([]);\n\n constructor(\n private _http:HttpClient,\n ) { \n \n }\n\n async getServicePartnerSettingsDict():Promise {\n let result = {};\n let settings:Setting[] = await this._http.get(REST_SERVER + \"/cms/service-partner/settings\").toPromise();\n for(let setting of settings) {\n result[setting.key] = setting;\n }\n return result;\n }\n}","import { Injectable } from '@angular/core';\nimport { User } from 'src/app/model/user.model';\nimport { HttpClient } from '@angular/common/http';\nimport { Router } from '@angular/router';\nimport { REST_SERVER } from 'src/app/config';\nimport { FeedbackService } from './feedback.service';\n\nconst STORAGE_KEY_TOKEN:string = \"token\";\n\n@Injectable({\n providedIn: 'root'\n})\nexport class UserService {\n\n private _user = null;\n private _token = null;\n private _redirectAfterLogin = null;\n\n private _loginPages = {\n \"service-partner\": [\"service-partner\", \"dashboard\"],\n \"admin\": [\"admin\", \"service-partners\", \"list\", \"active\"],\n \"repair-center\": [\"repair-center\", \"dashboard\"],\n };\n\n constructor(\n private _router:Router,\n private _http:HttpClient,\n private _feedbackService: FeedbackService,\n ) { \n var token:string = null;\n let m = /access_token=(.*?)(&.*)?$/.exec(location.href);\n if(m) {\n token = m[1];\n localStorage.setItem(STORAGE_KEY_TOKEN, token);\n }\n if(!token) {\n token = localStorage.getItem(STORAGE_KEY_TOKEN);\n }\n \n this._token = token;\n if(token) {\n //console.log(\"Token found\");\n this._user = this._parseJwt(token);\n this._setRefreshTimeout();\n if(this.getValidUser()) {\n setTimeout(() => this.refreshToken(), 0);\n }\n }\n }\n\n private _setRefreshTimeout():void {\n setTimeout(() => this.refreshToken(), 5 * 60 * 1000);\n }\n\n public async login(user:User):Promise {\n let httpResponse:any = await this._http.post(REST_SERVER + \"/login\", user).toPromise();\n\n let token:string = httpResponse.token;\n \n localStorage.setItem(STORAGE_KEY_TOKEN, token);\n\n this._token = token;\n this._user = this._parseJwt(token);\n //console.log(\"User\", this._user);\n\n var role:string = this._user.role;\n if(this._redirectAfterLogin) {\n this._router.navigateByUrl(this._redirectAfterLogin);\n this._redirectAfterLogin = null;\n } else {\n this._router.navigate(this._loginPages[role]);\n }\n\n this._setRefreshTimeout();\n \n return { success: true };\n }\n\n public async load(id:number):Promise {\n let res = null;\n try {\n res = await this._http.get(REST_SERVER + '/users/' + id).toPromise();\n } catch(exc) {\n console.error(exc);\n }\n return res;\n }\n \n public async forgotPassword(forgotPasswordData:any):Promise {\n const result:any = await this._http.post(REST_SERVER + \"/forgot-password\", forgotPasswordData).toPromise(); \n if(!result.userFound) {\n throw \"Password reset failed. Most likely caused by wrong email\";\n } \n }\n\n public async changePassword(changePasswordData:any):Promise {\n await this._http.post(REST_SERVER + \"/change-password\", changePasswordData).toPromise(); \n return { success: true };\n }\n\n private async refreshToken() {\n let httpResponse:any = await this._http.post(REST_SERVER + \"/refresh\", {}).toPromise();\n \n let token:string = httpResponse.token;\n \n localStorage.setItem(STORAGE_KEY_TOKEN, token);\n\n this._token = token;\n\n this._setRefreshTimeout();\n }\n\n public logout():void {\n this._token = null;\n this._user = null;\n localStorage.removeItem(STORAGE_KEY_TOKEN);\n this._router.navigate([\"/\"]);\n }\n\n public ensureRole(roles:string[], url:string):boolean {\n var result:boolean = false;\n let user = this.getValidUser();\n if(user && roles.indexOf(user.role) >= 0) {\n result = true;\n } else {\n this._redirectAfterLogin = url;\n this._router.navigate(['/login']);\n result = false;\n }\n return result;\n }\n\n private getValidUser() {\n //console.log(\"Checking if user is valid\");\n if(this._user && new Date().valueOf() / 1000 > this._user.exp) {\n console.log(\"User expired\", this._user);\n this._user = null;\n }\n if(this._user && this._user.role === 'repair-center' && !this._user.repairCenterId) {\n this._user.repairCenterId = 1;\n }\n return this._user;\n }\n\n public hasRole(role:string):boolean {\n let user = this.getValidUser();\n return user && user.role == role;\n }\n \n private _b64DecodeUnicode(str) {\n // Going backwards: from bytestream, to percent-encoding, to original string.\n return decodeURIComponent(atob(str).split('').map(function(c) {\n return '%' + ('00' + c.charCodeAt(0).toString(16)).slice(-2);\n }).join(''));\n }\n\n private _parseJwt(token):void {\n var base64Url = token.split('.')[1];\n var base64 = base64Url.replace('-', '+').replace('_', '/');\n var decoded = this._b64DecodeUnicode(base64);\n return JSON.parse(decoded);\n }\n\n public get user() {\n return this.getValidUser();\n }\n\n public get token():string {\n return this._token;\n }\n\n public async savePassword(pswds:any):Promise {\n return { success: (await this._http.post(REST_SERVER + \"/users/\" + this._user.id\n + \"/settings/password\", pswds).toPromise()) };\n }\n\n public async addRecipientToNewsletter(recipientData : any): Promise{\n const headers = {'content-type': 'application/json'};\n try {\n let result = await this._http.post(\n `${REST_SERVER}/newsLetterRecipient`,\n recipientData,\n {headers}\n ).toPromise();\n } catch (error) {\n this._feedbackService.showError(\"Email ungültig oder bereits in der Newsletter-Liste vorhanden\");\n }\n \n }\n\n}","import { Injectable } from '@angular/core';\nimport {\n HttpRequest,\n HttpHandler,\n HttpEvent,\n HttpInterceptor\n} from '@angular/common/http';\nimport { UserService } from 'src/app/service/user.service';\nimport { Observable } from 'rxjs';\nimport { REST_SERVER } from 'src/app/config';\n\n@Injectable()\nexport class AuthHttpInterceptor implements HttpInterceptor {\n\n constructor(\n private _userService:UserService\n ) {}\n\n intercept(request: HttpRequest, next: HttpHandler): Observable> {\n if(request.url.startsWith(REST_SERVER)) {\n var token:string = this._userService.token;\n if(token) {\n request = request.clone({\n setHeaders: {\n Authorization: `Bearer ${token}`\n }\n });\n }\n }\n\n return next.handle(request);\n }\n}","import { Injectable } from '@angular/core';\nimport { ActivatedRouteSnapshot, RouterStateSnapshot, UrlTree } from '@angular/router';\nimport { Observable } from 'rxjs';\nimport { CanActivate } from '@angular/router';\nimport { UserService } from 'src/app/service/user.service';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class AuthGuard implements CanActivate {\n constructor(\n private _userService:UserService\n ) { }\n\n canActivate(\n route: ActivatedRouteSnapshot,\n state: RouterStateSnapshot): boolean {\n\n let url: string = state.url;\n let roles = route.data[\"roles\"] as string[];\n\n return this._userService.ensureRole(roles, url);\n }\n}\n","// This file can be replaced during build by using the `fileReplacements` array.\n// `ng build --prod` replaces `environment.ts` with `environment.prod.ts`.\n// The list of file replacements can be found in `angular.json`.\n\nexport const environment = {\n production: false\n};\n\n/*\n * For easier debugging in development mode, you can import the following file\n * to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`.\n *\n * This import should be commented out in production mode because it will have a negative impact\n * on performance if an error is thrown.\n */\n// import 'zone.js/dist/zone-error'; // Included with Angular CLI.\n","import { enableProdMode } from '@angular/core';\nimport { platformBrowserDynamic } from '@angular/platform-browser-dynamic';\n\nimport { AppModule } from './app/app.module';\nimport { environment } from './environments/environment';\n\nif (environment.production) {\n enableProdMode();\n}\n\nplatformBrowserDynamic().bootstrapModule(AppModule)\n .catch(err => console.error(err));\n"],"sourceRoot":""}