fabrikantencore 2.0.7 → 2.0.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2020/fabrikantencore.mjs +5 -0
- package/esm2020/public_api.mjs +4 -0
- package/esm2020/src/app/modules/fabrikantencore/beheer/components/beheer-categories/beheer-categories.component.mjs +38 -0
- package/esm2020/src/app/modules/fabrikantencore/beheer/components/beheer-connect-category-dialog/beheer-connect-category-dialog.component.mjs +77 -0
- package/esm2020/src/app/modules/fabrikantencore/beheer/components/beheer-display-ebo/beheer-display-ebo.component.mjs +28 -0
- package/esm2020/src/app/modules/fabrikantencore/beheer/components/beheer-ebo-koppel/beheer-ebo-koppel/beheer-ebo-koppel.component.mjs +116 -0
- package/esm2020/src/app/modules/fabrikantencore/beheer/components/beheer-filters/beheer-filters.component.mjs +15 -0
- package/esm2020/src/app/modules/fabrikantencore/beheer/components/beheer-import-sets/beheer-import-sets-dialog/beheer-import-sets-dialog.component.mjs +52 -0
- package/esm2020/src/app/modules/fabrikantencore/beheer/components/beheer-import-sets/beheer-import-sets-ebo/beheer-import-sets-ebo.component.mjs +90 -0
- package/esm2020/src/app/modules/fabrikantencore/beheer/components/beheer-import-sets/beheer-import-sets-eigenschap/beheer-import-sets-eigenschap.component.mjs +30 -0
- package/esm2020/src/app/modules/fabrikantencore/beheer/components/beheer-import-sets/beheer-import-sets.component.mjs +74 -0
- package/esm2020/src/app/modules/fabrikantencore/beheer/components/beheer-inlog/beheer-inlog.component.mjs +44 -0
- package/esm2020/src/app/modules/fabrikantencore/beheer/components/beheer-main/beheer-main.component.mjs +16 -0
- package/esm2020/src/app/modules/fabrikantencore/beheer/components/beheer-nav/beheer-nav.component.mjs +47 -0
- package/esm2020/src/app/modules/fabrikantencore/beheer/components/beheer-products/beheer-products-bcbproduct/beheer-products-bcbproduct.component.mjs +54 -0
- package/esm2020/src/app/modules/fabrikantencore/beheer/components/beheer-products/beheer-products-connect-manyname-dialog/beheer-products-connect-manyname-dialog.component.mjs +221 -0
- package/esm2020/src/app/modules/fabrikantencore/beheer/components/beheer-products/beheer-products-connect-rangeinput/beheer-products-connect-rangeinput.component.mjs +106 -0
- package/esm2020/src/app/modules/fabrikantencore/beheer/components/beheer-products/beheer-products-ebo/beheer-products-ebo.component.mjs +114 -0
- package/esm2020/src/app/modules/fabrikantencore/beheer/components/beheer-products/beheer-products-eigenschap/beheer-products-eigenschap.component.mjs +131 -0
- package/esm2020/src/app/modules/fabrikantencore/beheer/components/beheer-products/beheer-products-eigenschap-bereik/beheer-products-eigenschap-bereik.component.mjs +16 -0
- package/esm2020/src/app/modules/fabrikantencore/beheer/components/beheer-products/beheer-products-koppel-filteroption-dailog/beheer-products-koppel-filteroption-dailog.component.mjs +157 -0
- package/esm2020/src/app/modules/fabrikantencore/beheer/components/beheer-products/beheer-products-product/beheer-products-product.component.mjs +28 -0
- package/esm2020/src/app/modules/fabrikantencore/beheer/components/beheer-products/beheer-products.component.mjs +151 -0
- package/esm2020/src/app/modules/fabrikantencore/beheer/components/beheer-searchproducts/beheer-searchproducts-koppel-dialog/beheer-searchproducts-koppel-dialog.component.mjs +89 -0
- package/esm2020/src/app/modules/fabrikantencore/beheer/components/beheer-searchproducts/beheer-searchproducts.component.mjs +299 -0
- package/esm2020/src/app/modules/fabrikantencore/beheer/components/beheer-settings/beheer-settings-options/beheer-settings-options.component.mjs +24 -0
- package/esm2020/src/app/modules/fabrikantencore/beheer/components/beheer-settings/beheer-settings-string/beheer-settings-string.component.mjs +24 -0
- package/esm2020/src/app/modules/fabrikantencore/beheer/components/beheer-settings/beheer-settings.component.mjs +25 -0
- package/esm2020/src/app/modules/fabrikantencore/beheer/components/beheer-translate/beheer-translate.component.mjs +114 -0
- package/esm2020/src/app/modules/fabrikantencore/beheer/components/beheer-users/beheer-users.component.mjs +15 -0
- package/esm2020/src/app/modules/fabrikantencore/components/fab-bcb-product/fab-bcb-product.component.mjs +14 -0
- package/esm2020/src/app/modules/fabrikantencore/components/fab-breadcrumb/fab-breadcrumb.component.mjs +59 -0
- package/esm2020/src/app/modules/fabrikantencore/components/fab-categories/fab-categories.component.mjs +32 -0
- package/esm2020/src/app/modules/fabrikantencore/components/fab-category-tile/fab-category-tile.component.mjs +42 -0
- package/esm2020/src/app/modules/fabrikantencore/components/fab-filter/fab-filter.component.mjs +59 -0
- package/esm2020/src/app/modules/fabrikantencore/components/fab-filters/fab-filters.component.mjs +45 -0
- package/esm2020/src/app/modules/fabrikantencore/components/fab-filters-input/fab-filters-input.component.mjs +26 -0
- package/esm2020/src/app/modules/fabrikantencore/components/fab-filters-overview/fab-filters-overview.component.mjs +32 -0
- package/esm2020/src/app/modules/fabrikantencore/components/fab-flag/fab-flag.component.mjs +16 -0
- package/esm2020/src/app/modules/fabrikantencore/components/fab-header/fab-header.component.mjs +40 -0
- package/esm2020/src/app/modules/fabrikantencore/components/fab-language-select/fab-language-select.component.mjs +24 -0
- package/esm2020/src/app/modules/fabrikantencore/components/fab-loader/fab-loader.component.mjs +15 -0
- package/esm2020/src/app/modules/fabrikantencore/components/fab-product/fab-product-bestek/fab-product-bestek.component.mjs +66 -0
- package/esm2020/src/app/modules/fabrikantencore/components/fab-product/fab-product-info/fab-product-info-photo/fab-product-info-photo.component.mjs +30 -0
- package/esm2020/src/app/modules/fabrikantencore/components/fab-product/fab-product-info/fab-product-info-photo-dialog/fab-product-info-photo-dialog.component.mjs +21 -0
- package/esm2020/src/app/modules/fabrikantencore/components/fab-product/fab-product-info/fab-product-info.component.mjs +41 -0
- package/esm2020/src/app/modules/fabrikantencore/components/fab-product/fab-product.component.mjs +83 -0
- package/esm2020/src/app/modules/fabrikantencore/components/fab-product-select/fab-product-select.component.mjs +64 -0
- package/esm2020/src/app/modules/fabrikantencore/components/fab-product-tile/fab-product-tile.component.mjs +40 -0
- package/esm2020/src/app/modules/fabrikantencore/components/fab-range-input/fab-range-input.component.mjs +82 -0
- package/esm2020/src/app/modules/fabrikantencore/components/fab-start/fab-start.component.mjs +28 -0
- package/esm2020/src/app/modules/fabrikantencore/components/fab-svg-viewer/fab-svg-viewer.component.mjs +83 -0
- package/esm2020/src/app/modules/fabrikantencore/components/fab-webgl-viewer/fab-webgl-viewer.component.mjs +89 -0
- package/esm2020/src/app/modules/fabrikantencore/fabrikantencore.module.mjs +372 -0
- package/esm2020/src/app/modules/fabrikantencore/helpers/auth.guard.mjs +29 -0
- package/esm2020/src/app/modules/fabrikantencore/helpers/basic-auth.interceptor.mjs +26 -0
- package/esm2020/src/app/modules/fabrikantencore/helpers/error.interceptor.mjs +27 -0
- package/esm2020/src/app/modules/fabrikantencore/services/authentication.service.mjs +47 -0
- package/esm2020/src/app/modules/fabrikantencore/services/bestek.service.mjs +106 -0
- package/esm2020/src/app/modules/fabrikantencore/services/fabrikanten.service.mjs +493 -0
- package/esm2020/src/app/modules/fabrikantencore/services/importsets.service.mjs +114 -0
- package/esm2020/src/app/modules/fabrikantencore/services/mobile.service.mjs +35 -0
- package/esm2020/src/app/modules/fabrikantencore/services/navigate.service.mjs +32 -0
- package/esm2020/src/app/modules/fabrikantencore/services/photo.service.mjs +98 -0
- package/esm2020/src/app/modules/fabrikantencore/services/products.service.mjs +231 -0
- package/esm2020/src/app/modules/fabrikantencore/services/projectsetting.service.mjs +77 -0
- package/esm2020/src/app/modules/fabrikantencore/services/svg.service.mjs +70 -0
- package/esm2020/src/app/modules/fabrikantencore/services/translate.service.mjs +268 -0
- package/esm2020/src/app/modules/fabrikantencore/services/webgl.service.mjs +60 -0
- package/esm2020/src/app/modules/fabrikantencore/swagger/SwaggerClient.mjs +8025 -0
- package/fesm2015/fabrikantencore.mjs +12802 -0
- package/fesm2015/fabrikantencore.mjs.map +1 -0
- package/fesm2020/fabrikantencore.mjs +12717 -0
- package/fesm2020/fabrikantencore.mjs.map +1 -0
- package/index.d.ts +5 -0
- package/package.json +23 -11
- package/{public_api.ts → public_api.d.ts} +3 -3
- package/src/app/modules/fabrikantencore/beheer/components/beheer-categories/beheer-categories.component.d.ts +13 -0
- package/src/app/modules/fabrikantencore/beheer/components/beheer-connect-category-dialog/beheer-connect-category-dialog.component.d.ts +22 -0
- package/src/app/modules/fabrikantencore/beheer/components/beheer-display-ebo/beheer-display-ebo.component.d.ts +11 -0
- package/src/app/modules/fabrikantencore/beheer/components/beheer-ebo-koppel/beheer-ebo-koppel/beheer-ebo-koppel.component.d.ts +22 -0
- package/src/app/modules/fabrikantencore/beheer/components/beheer-filters/beheer-filters.component.d.ts +8 -0
- package/src/app/modules/fabrikantencore/beheer/components/beheer-import-sets/beheer-import-sets-dialog/beheer-import-sets-dialog.component.d.ts +17 -0
- package/src/app/modules/fabrikantencore/beheer/components/beheer-import-sets/beheer-import-sets-ebo/beheer-import-sets-ebo.component.d.ts +29 -0
- package/src/app/modules/fabrikantencore/beheer/components/beheer-import-sets/beheer-import-sets-eigenschap/beheer-import-sets-eigenschap.component.d.ts +14 -0
- package/src/app/modules/fabrikantencore/beheer/components/beheer-import-sets/beheer-import-sets.component.d.ts +23 -0
- package/src/app/modules/fabrikantencore/beheer/components/beheer-inlog/beheer-inlog.component.d.ts +21 -0
- package/src/app/modules/fabrikantencore/beheer/components/beheer-main/beheer-main.component.d.ts +8 -0
- package/src/app/modules/fabrikantencore/beheer/components/beheer-nav/beheer-nav.component.d.ts +19 -0
- package/src/app/modules/fabrikantencore/beheer/components/beheer-products/beheer-products-bcbproduct/beheer-products-bcbproduct.component.d.ts +17 -0
- package/src/app/modules/fabrikantencore/beheer/components/beheer-products/beheer-products-connect-manyname-dialog/beheer-products-connect-manyname-dialog.component.d.ts +38 -0
- package/src/app/modules/fabrikantencore/beheer/components/beheer-products/beheer-products-connect-rangeinput/beheer-products-connect-rangeinput.component.d.ts +32 -0
- package/src/app/modules/fabrikantencore/beheer/components/beheer-products/beheer-products-ebo/beheer-products-ebo.component.d.ts +31 -0
- package/src/app/modules/fabrikantencore/beheer/components/beheer-products/beheer-products-eigenschap/beheer-products-eigenschap.component.d.ts +25 -0
- package/src/app/modules/fabrikantencore/beheer/components/beheer-products/beheer-products-eigenschap-bereik/beheer-products-eigenschap-bereik.component.d.ts +10 -0
- package/src/app/modules/fabrikantencore/beheer/components/beheer-products/beheer-products-koppel-filteroption-dailog/beheer-products-koppel-filteroption-dailog.component.d.ts +36 -0
- package/src/app/modules/fabrikantencore/beheer/components/beheer-products/beheer-products-product/beheer-products-product.component.d.ts +14 -0
- package/src/app/modules/fabrikantencore/beheer/components/beheer-products/beheer-products.component.d.ts +26 -0
- package/src/app/modules/fabrikantencore/beheer/components/beheer-searchproducts/beheer-searchproducts-koppel-dialog/beheer-searchproducts-koppel-dialog.component.d.ts +23 -0
- package/src/app/modules/fabrikantencore/beheer/components/beheer-searchproducts/beheer-searchproducts.component.d.ts +41 -0
- package/src/app/modules/fabrikantencore/beheer/components/beheer-settings/beheer-settings-options/beheer-settings-options.component.d.ts +12 -0
- package/src/app/modules/fabrikantencore/beheer/components/beheer-settings/beheer-settings-string/beheer-settings-string.component.d.ts +12 -0
- package/src/app/modules/fabrikantencore/beheer/components/beheer-settings/beheer-settings.component.d.ts +11 -0
- package/src/app/modules/fabrikantencore/beheer/components/beheer-translate/beheer-translate.component.d.ts +21 -0
- package/src/app/modules/fabrikantencore/beheer/components/beheer-users/beheer-users.component.d.ts +8 -0
- package/src/app/modules/fabrikantencore/components/fab-bcb-product/fab-bcb-product.component.d.ts +8 -0
- package/src/app/modules/fabrikantencore/components/fab-breadcrumb/fab-breadcrumb.component.d.ts +21 -0
- package/src/app/modules/fabrikantencore/components/fab-categories/fab-categories.component.d.ts +15 -0
- package/src/app/modules/fabrikantencore/components/fab-category-tile/fab-category-tile.component.d.ts +20 -0
- package/src/app/modules/fabrikantencore/components/fab-filter/fab-filter.component.d.ts +22 -0
- package/src/app/modules/fabrikantencore/components/fab-filters/fab-filters.component.d.ts +21 -0
- package/src/app/modules/fabrikantencore/components/fab-filters-input/fab-filters-input.component.d.ts +14 -0
- package/src/app/modules/fabrikantencore/components/fab-filters-overview/fab-filters-overview.component.d.ts +12 -0
- package/src/app/modules/fabrikantencore/components/fab-flag/fab-flag.component.d.ts +9 -0
- package/src/app/modules/fabrikantencore/components/fab-header/fab-header.component.d.ts +17 -0
- package/src/app/modules/fabrikantencore/components/fab-language-select/fab-language-select.component.d.ts +13 -0
- package/src/app/modules/fabrikantencore/components/fab-loader/fab-loader.component.d.ts +8 -0
- package/src/app/modules/fabrikantencore/components/fab-product/fab-product-bestek/fab-product-bestek.component.d.ts +29 -0
- package/src/app/modules/fabrikantencore/components/fab-product/fab-product-info/fab-product-info-photo/fab-product-info-photo.component.d.ts +13 -0
- package/src/app/modules/fabrikantencore/components/fab-product/fab-product-info/fab-product-info-photo-dialog/fab-product-info-photo-dialog.component.d.ts +12 -0
- package/src/app/modules/fabrikantencore/components/fab-product/fab-product-info/fab-product-info.component.d.ts +17 -0
- package/src/app/modules/fabrikantencore/components/fab-product/fab-product.component.d.ts +30 -0
- package/src/app/modules/fabrikantencore/components/fab-product-select/fab-product-select.component.d.ts +25 -0
- package/src/app/modules/fabrikantencore/components/fab-product-tile/fab-product-tile.component.d.ts +22 -0
- package/src/app/modules/fabrikantencore/components/fab-range-input/fab-range-input.component.d.ts +23 -0
- package/src/app/modules/fabrikantencore/components/fab-start/fab-start.component.d.ts +15 -0
- package/src/app/modules/fabrikantencore/components/fab-svg-viewer/fab-svg-viewer.component.d.ts +29 -0
- package/src/app/modules/fabrikantencore/components/fab-webgl-viewer/fab-webgl-viewer.component.d.ts +25 -0
- package/src/app/modules/fabrikantencore/fabrikantencore.module.d.ts +80 -0
- package/src/app/modules/fabrikantencore/helpers/auth.guard.d.ts +11 -0
- package/src/app/modules/fabrikantencore/helpers/basic-auth.interceptor.d.ts +11 -0
- package/src/app/modules/fabrikantencore/helpers/error.interceptor.d.ts +11 -0
- package/src/app/modules/fabrikantencore/services/authentication.service.d.ts +16 -0
- package/src/app/modules/fabrikantencore/services/bestek.service.d.ts +19 -0
- package/src/app/modules/fabrikantencore/services/fabrikanten.service.d.ts +59 -0
- package/src/app/modules/fabrikantencore/services/importsets.service.d.ts +22 -0
- package/src/app/modules/fabrikantencore/services/mobile.service.d.ts +15 -0
- package/src/app/modules/fabrikantencore/services/navigate.service.d.ts +13 -0
- package/src/app/modules/fabrikantencore/services/photo.service.d.ts +20 -0
- package/src/app/modules/fabrikantencore/services/products.service.d.ts +29 -0
- package/src/app/modules/fabrikantencore/services/projectsetting.service.d.ts +19 -0
- package/src/app/modules/fabrikantencore/services/svg.service.d.ts +22 -0
- package/src/app/modules/fabrikantencore/services/translate.service.d.ts +44 -0
- package/src/app/modules/fabrikantencore/services/webgl.service.d.ts +19 -0
- package/src/app/modules/fabrikantencore/swagger/SwaggerClient.d.ts +2061 -0
- package/.browserslistrc +0 -16
- package/.editorconfig +0 -16
- package/.vscode/extensions.json +0 -4
- package/.vscode/launch.json +0 -20
- package/.vscode/tasks.json +0 -42
- package/angular.json +0 -112
- package/karma.conf.js +0 -44
- package/ng-package.json +0 -6
- package/src/app/app-routing.module.ts +0 -10
- package/src/app/app.component.html +0 -1
- package/src/app/app.component.scss +0 -8
- package/src/app/app.component.spec.ts +0 -35
- package/src/app/app.component.ts +0 -10
- package/src/app/app.module.ts +0 -22
- package/src/app/modules/fabrikantencore/beheer/components/beheer-categories/beheer-categories.component.html +0 -44
- package/src/app/modules/fabrikantencore/beheer/components/beheer-categories/beheer-categories.component.scss +0 -11
- package/src/app/modules/fabrikantencore/beheer/components/beheer-categories/beheer-categories.component.spec.ts +0 -23
- package/src/app/modules/fabrikantencore/beheer/components/beheer-categories/beheer-categories.component.ts +0 -38
- package/src/app/modules/fabrikantencore/beheer/components/beheer-connect-category-dialog/beheer-connect-category-dialog.component.html +0 -46
- package/src/app/modules/fabrikantencore/beheer/components/beheer-connect-category-dialog/beheer-connect-category-dialog.component.scss +0 -0
- package/src/app/modules/fabrikantencore/beheer/components/beheer-connect-category-dialog/beheer-connect-category-dialog.component.spec.ts +0 -23
- package/src/app/modules/fabrikantencore/beheer/components/beheer-connect-category-dialog/beheer-connect-category-dialog.component.ts +0 -79
- package/src/app/modules/fabrikantencore/beheer/components/beheer-display-ebo/beheer-display-ebo.component.html +0 -11
- package/src/app/modules/fabrikantencore/beheer/components/beheer-display-ebo/beheer-display-ebo.component.scss +0 -8
- package/src/app/modules/fabrikantencore/beheer/components/beheer-display-ebo/beheer-display-ebo.component.spec.ts +0 -23
- package/src/app/modules/fabrikantencore/beheer/components/beheer-display-ebo/beheer-display-ebo.component.ts +0 -33
- package/src/app/modules/fabrikantencore/beheer/components/beheer-ebo-koppel/beheer-ebo-koppel/beheer-ebo-koppel.component.html +0 -58
- package/src/app/modules/fabrikantencore/beheer/components/beheer-ebo-koppel/beheer-ebo-koppel/beheer-ebo-koppel.component.scss +0 -18
- package/src/app/modules/fabrikantencore/beheer/components/beheer-ebo-koppel/beheer-ebo-koppel/beheer-ebo-koppel.component.spec.ts +0 -23
- package/src/app/modules/fabrikantencore/beheer/components/beheer-ebo-koppel/beheer-ebo-koppel/beheer-ebo-koppel.component.ts +0 -127
- package/src/app/modules/fabrikantencore/beheer/components/beheer-filters/beheer-filters.component.html +0 -1
- package/src/app/modules/fabrikantencore/beheer/components/beheer-filters/beheer-filters.component.scss +0 -0
- package/src/app/modules/fabrikantencore/beheer/components/beheer-filters/beheer-filters.component.spec.ts +0 -23
- package/src/app/modules/fabrikantencore/beheer/components/beheer-filters/beheer-filters.component.ts +0 -15
- package/src/app/modules/fabrikantencore/beheer/components/beheer-import-sets/beheer-import-sets-dialog/beheer-import-sets-dialog.component.html +0 -12
- package/src/app/modules/fabrikantencore/beheer/components/beheer-import-sets/beheer-import-sets-dialog/beheer-import-sets-dialog.component.scss +0 -0
- package/src/app/modules/fabrikantencore/beheer/components/beheer-import-sets/beheer-import-sets-dialog/beheer-import-sets-dialog.component.spec.ts +0 -23
- package/src/app/modules/fabrikantencore/beheer/components/beheer-import-sets/beheer-import-sets-dialog/beheer-import-sets-dialog.component.ts +0 -48
- package/src/app/modules/fabrikantencore/beheer/components/beheer-import-sets/beheer-import-sets-ebo/beheer-import-sets-ebo.component.html +0 -33
- package/src/app/modules/fabrikantencore/beheer/components/beheer-import-sets/beheer-import-sets-ebo/beheer-import-sets-ebo.component.scss +0 -60
- package/src/app/modules/fabrikantencore/beheer/components/beheer-import-sets/beheer-import-sets-ebo/beheer-import-sets-ebo.component.spec.ts +0 -23
- package/src/app/modules/fabrikantencore/beheer/components/beheer-import-sets/beheer-import-sets-ebo/beheer-import-sets-ebo.component.ts +0 -99
- package/src/app/modules/fabrikantencore/beheer/components/beheer-import-sets/beheer-import-sets-ebo/beheer-import-sets-opbouw.component.html +0 -20
- package/src/app/modules/fabrikantencore/beheer/components/beheer-import-sets/beheer-import-sets-ebo/beheer-import-sets-opbouw.component.scss +0 -38
- package/src/app/modules/fabrikantencore/beheer/components/beheer-import-sets/beheer-import-sets-ebo/beheer-import-sets-opbouw.component.spec.ts +0 -23
- package/src/app/modules/fabrikantencore/beheer/components/beheer-import-sets/beheer-import-sets-ebo/beheer-import-sets-opbouw.component.ts +0 -0
- package/src/app/modules/fabrikantencore/beheer/components/beheer-import-sets/beheer-import-sets-eigenschap/beheer-import-sets-eigenschap.component.html +0 -8
- package/src/app/modules/fabrikantencore/beheer/components/beheer-import-sets/beheer-import-sets-eigenschap/beheer-import-sets-eigenschap.component.scss +0 -31
- package/src/app/modules/fabrikantencore/beheer/components/beheer-import-sets/beheer-import-sets-eigenschap/beheer-import-sets-eigenschap.component.spec.ts +0 -23
- package/src/app/modules/fabrikantencore/beheer/components/beheer-import-sets/beheer-import-sets-eigenschap/beheer-import-sets-eigenschap.component.ts +0 -33
- package/src/app/modules/fabrikantencore/beheer/components/beheer-import-sets/beheer-import-sets.component.html +0 -92
- package/src/app/modules/fabrikantencore/beheer/components/beheer-import-sets/beheer-import-sets.component.scss +0 -50
- package/src/app/modules/fabrikantencore/beheer/components/beheer-import-sets/beheer-import-sets.component.spec.ts +0 -23
- package/src/app/modules/fabrikantencore/beheer/components/beheer-import-sets/beheer-import-sets.component.ts +0 -73
- package/src/app/modules/fabrikantencore/beheer/components/beheer-inlog/beheer-inlog.component.html +0 -42
- package/src/app/modules/fabrikantencore/beheer/components/beheer-inlog/beheer-inlog.component.scss +0 -44
- package/src/app/modules/fabrikantencore/beheer/components/beheer-inlog/beheer-inlog.component.spec.ts +0 -23
- package/src/app/modules/fabrikantencore/beheer/components/beheer-inlog/beheer-inlog.component.ts +0 -43
- package/src/app/modules/fabrikantencore/beheer/components/beheer-main/beheer-main.component.css +0 -0
- package/src/app/modules/fabrikantencore/beheer/components/beheer-main/beheer-main.component.html +0 -1
- package/src/app/modules/fabrikantencore/beheer/components/beheer-main/beheer-main.component.spec.ts +0 -25
- package/src/app/modules/fabrikantencore/beheer/components/beheer-main/beheer-main.component.ts +0 -17
- package/src/app/modules/fabrikantencore/beheer/components/beheer-nav/beheer-nav.component.html +0 -41
- package/src/app/modules/fabrikantencore/beheer/components/beheer-nav/beheer-nav.component.scss +0 -34
- package/src/app/modules/fabrikantencore/beheer/components/beheer-nav/beheer-nav.component.spec.ts +0 -23
- package/src/app/modules/fabrikantencore/beheer/components/beheer-nav/beheer-nav.component.ts +0 -49
- package/src/app/modules/fabrikantencore/beheer/components/beheer-products/beheer-products-bcbproduct/beheer-products-bcbproduct.component.html +0 -42
- package/src/app/modules/fabrikantencore/beheer/components/beheer-products/beheer-products-bcbproduct/beheer-products-bcbproduct.component.scss +0 -41
- package/src/app/modules/fabrikantencore/beheer/components/beheer-products/beheer-products-bcbproduct/beheer-products-bcbproduct.component.spec.ts +0 -23
- package/src/app/modules/fabrikantencore/beheer/components/beheer-products/beheer-products-bcbproduct/beheer-products-bcbproduct.component.ts +0 -49
- package/src/app/modules/fabrikantencore/beheer/components/beheer-products/beheer-products-connect-manyname-dialog/beheer-products-connect-manyname-dialog.component.html +0 -56
- package/src/app/modules/fabrikantencore/beheer/components/beheer-products/beheer-products-connect-manyname-dialog/beheer-products-connect-manyname-dialog.component.scss +0 -29
- package/src/app/modules/fabrikantencore/beheer/components/beheer-products/beheer-products-connect-manyname-dialog/beheer-products-connect-manyname-dialog.component.spec.ts +0 -23
- package/src/app/modules/fabrikantencore/beheer/components/beheer-products/beheer-products-connect-manyname-dialog/beheer-products-connect-manyname-dialog.component.ts +0 -253
- package/src/app/modules/fabrikantencore/beheer/components/beheer-products/beheer-products-connect-rangeinput/beheer-products-connect-rangeinput.component.html +0 -44
- package/src/app/modules/fabrikantencore/beheer/components/beheer-products/beheer-products-connect-rangeinput/beheer-products-connect-rangeinput.component.scss +0 -7
- package/src/app/modules/fabrikantencore/beheer/components/beheer-products/beheer-products-connect-rangeinput/beheer-products-connect-rangeinput.component.spec.ts +0 -23
- package/src/app/modules/fabrikantencore/beheer/components/beheer-products/beheer-products-connect-rangeinput/beheer-products-connect-rangeinput.component.ts +0 -114
- package/src/app/modules/fabrikantencore/beheer/components/beheer-products/beheer-products-ebo/beheer-products-ebo.component.html +0 -41
- package/src/app/modules/fabrikantencore/beheer/components/beheer-products/beheer-products-ebo/beheer-products-ebo.component.scss +0 -47
- package/src/app/modules/fabrikantencore/beheer/components/beheer-products/beheer-products-ebo/beheer-products-ebo.component.spec.ts +0 -23
- package/src/app/modules/fabrikantencore/beheer/components/beheer-products/beheer-products-ebo/beheer-products-ebo.component.ts +0 -131
- package/src/app/modules/fabrikantencore/beheer/components/beheer-products/beheer-products-ebo/beheer-products-opbouw.component.html +0 -16
- package/src/app/modules/fabrikantencore/beheer/components/beheer-products/beheer-products-ebo/beheer-products-opbouw.component.scss +0 -51
- package/src/app/modules/fabrikantencore/beheer/components/beheer-products/beheer-products-ebo/beheer-products-opbouw.component.spec.ts +0 -23
- package/src/app/modules/fabrikantencore/beheer/components/beheer-products/beheer-products-ebo/beheer-products-opbouw.component.ts +0 -0
- package/src/app/modules/fabrikantencore/beheer/components/beheer-products/beheer-products-eigenschap/beheer-products-eigenschap.component.html +0 -64
- package/src/app/modules/fabrikantencore/beheer/components/beheer-products/beheer-products-eigenschap/beheer-products-eigenschap.component.scss +0 -41
- package/src/app/modules/fabrikantencore/beheer/components/beheer-products/beheer-products-eigenschap/beheer-products-eigenschap.component.spec.ts +0 -23
- package/src/app/modules/fabrikantencore/beheer/components/beheer-products/beheer-products-eigenschap/beheer-products-eigenschap.component.ts +0 -147
- package/src/app/modules/fabrikantencore/beheer/components/beheer-products/beheer-products-eigenschap-bereik/beheer-products-eigenschap-bereik.component.html +0 -5
- package/src/app/modules/fabrikantencore/beheer/components/beheer-products/beheer-products-eigenschap-bereik/beheer-products-eigenschap-bereik.component.scss +0 -7
- package/src/app/modules/fabrikantencore/beheer/components/beheer-products/beheer-products-eigenschap-bereik/beheer-products-eigenschap-bereik.component.spec.ts +0 -23
- package/src/app/modules/fabrikantencore/beheer/components/beheer-products/beheer-products-eigenschap-bereik/beheer-products-eigenschap-bereik.component.ts +0 -18
- package/src/app/modules/fabrikantencore/beheer/components/beheer-products/beheer-products-koppel-filteroption-dailog/beheer-products-koppel-filteroption-dailog.component.html +0 -97
- package/src/app/modules/fabrikantencore/beheer/components/beheer-products/beheer-products-koppel-filteroption-dailog/beheer-products-koppel-filteroption-dailog.component.scss +0 -11
- package/src/app/modules/fabrikantencore/beheer/components/beheer-products/beheer-products-koppel-filteroption-dailog/beheer-products-koppel-filteroption-dailog.component.spec.ts +0 -23
- package/src/app/modules/fabrikantencore/beheer/components/beheer-products/beheer-products-koppel-filteroption-dailog/beheer-products-koppel-filteroption-dailog.component.ts +0 -187
- package/src/app/modules/fabrikantencore/beheer/components/beheer-products/beheer-products-product/beheer-products-product.component.html +0 -26
- package/src/app/modules/fabrikantencore/beheer/components/beheer-products/beheer-products-product/beheer-products-product.component.scss +0 -15
- package/src/app/modules/fabrikantencore/beheer/components/beheer-products/beheer-products-product/beheer-products-product.component.spec.ts +0 -23
- package/src/app/modules/fabrikantencore/beheer/components/beheer-products/beheer-products-product/beheer-products-product.component.ts +0 -23
- package/src/app/modules/fabrikantencore/beheer/components/beheer-products/beheer-products.component.html +0 -99
- package/src/app/modules/fabrikantencore/beheer/components/beheer-products/beheer-products.component.scss +0 -85
- package/src/app/modules/fabrikantencore/beheer/components/beheer-products/beheer-products.component.spec.ts +0 -23
- package/src/app/modules/fabrikantencore/beheer/components/beheer-products/beheer-products.component.ts +0 -172
- package/src/app/modules/fabrikantencore/beheer/components/beheer-searchproducts/beheer-searchproducts-koppel-dialog/beheer-searchproducts-koppel-dialog.component.html +0 -45
- package/src/app/modules/fabrikantencore/beheer/components/beheer-searchproducts/beheer-searchproducts-koppel-dialog/beheer-searchproducts-koppel-dialog.component.scss +0 -14
- package/src/app/modules/fabrikantencore/beheer/components/beheer-searchproducts/beheer-searchproducts-koppel-dialog/beheer-searchproducts-koppel-dialog.component.spec.ts +0 -23
- package/src/app/modules/fabrikantencore/beheer/components/beheer-searchproducts/beheer-searchproducts-koppel-dialog/beheer-searchproducts-koppel-dialog.component.ts +0 -89
- package/src/app/modules/fabrikantencore/beheer/components/beheer-searchproducts/beheer-searchproducts.component.html +0 -119
- package/src/app/modules/fabrikantencore/beheer/components/beheer-searchproducts/beheer-searchproducts.component.scss +0 -69
- package/src/app/modules/fabrikantencore/beheer/components/beheer-searchproducts/beheer-searchproducts.component.spec.ts +0 -23
- package/src/app/modules/fabrikantencore/beheer/components/beheer-searchproducts/beheer-searchproducts.component.ts +0 -346
- package/src/app/modules/fabrikantencore/beheer/components/beheer-settings/beheer-settings-options/beheer-settings-options.component.html +0 -38
- package/src/app/modules/fabrikantencore/beheer/components/beheer-settings/beheer-settings-options/beheer-settings-options.component.scss +0 -30
- package/src/app/modules/fabrikantencore/beheer/components/beheer-settings/beheer-settings-options/beheer-settings-options.component.spec.ts +0 -23
- package/src/app/modules/fabrikantencore/beheer/components/beheer-settings/beheer-settings-options/beheer-settings-options.component.ts +0 -19
- package/src/app/modules/fabrikantencore/beheer/components/beheer-settings/beheer-settings-string/beheer-settings-string.component.html +0 -40
- package/src/app/modules/fabrikantencore/beheer/components/beheer-settings/beheer-settings-string/beheer-settings-string.component.scss +0 -30
- package/src/app/modules/fabrikantencore/beheer/components/beheer-settings/beheer-settings-string/beheer-settings-string.component.spec.ts +0 -23
- package/src/app/modules/fabrikantencore/beheer/components/beheer-settings/beheer-settings-string/beheer-settings-string.component.ts +0 -19
- package/src/app/modules/fabrikantencore/beheer/components/beheer-settings/beheer-settings.component.html +0 -31
- package/src/app/modules/fabrikantencore/beheer/components/beheer-settings/beheer-settings.component.scss +0 -30
- package/src/app/modules/fabrikantencore/beheer/components/beheer-settings/beheer-settings.component.spec.ts +0 -23
- package/src/app/modules/fabrikantencore/beheer/components/beheer-settings/beheer-settings.component.ts +0 -17
- package/src/app/modules/fabrikantencore/beheer/components/beheer-translate/beheer-translate.component.html +0 -142
- package/src/app/modules/fabrikantencore/beheer/components/beheer-translate/beheer-translate.component.scss +0 -15
- package/src/app/modules/fabrikantencore/beheer/components/beheer-translate/beheer-translate.component.spec.ts +0 -23
- package/src/app/modules/fabrikantencore/beheer/components/beheer-translate/beheer-translate.component.ts +0 -120
- package/src/app/modules/fabrikantencore/beheer/components/beheer-users/beheer-users.component.html +0 -1
- package/src/app/modules/fabrikantencore/beheer/components/beheer-users/beheer-users.component.scss +0 -0
- package/src/app/modules/fabrikantencore/beheer/components/beheer-users/beheer-users.component.spec.ts +0 -23
- package/src/app/modules/fabrikantencore/beheer/components/beheer-users/beheer-users.component.ts +0 -15
- package/src/app/modules/fabrikantencore/components/fab-bcb-product/fab-bcb-product.component.html +0 -1
- package/src/app/modules/fabrikantencore/components/fab-bcb-product/fab-bcb-product.component.scss +0 -0
- package/src/app/modules/fabrikantencore/components/fab-bcb-product/fab-bcb-product.component.spec.ts +0 -23
- package/src/app/modules/fabrikantencore/components/fab-bcb-product/fab-bcb-product.component.ts +0 -15
- package/src/app/modules/fabrikantencore/components/fab-breadcrumb/fab-breadcrumb.component.html +0 -45
- package/src/app/modules/fabrikantencore/components/fab-breadcrumb/fab-breadcrumb.component.scss +0 -64
- package/src/app/modules/fabrikantencore/components/fab-breadcrumb/fab-breadcrumb.component.spec.ts +0 -23
- package/src/app/modules/fabrikantencore/components/fab-breadcrumb/fab-breadcrumb.component.ts +0 -60
- package/src/app/modules/fabrikantencore/components/fab-button/fab-button.component.html +0 -5
- package/src/app/modules/fabrikantencore/components/fab-button/fab-button.component.scss +0 -89
- package/src/app/modules/fabrikantencore/components/fab-button/fab-button.component.spec.ts +0 -23
- package/src/app/modules/fabrikantencore/components/fab-button/fab-button.component.ts +0 -20
- package/src/app/modules/fabrikantencore/components/fab-categories/fab-categories.component.html +0 -10
- package/src/app/modules/fabrikantencore/components/fab-categories/fab-categories.component.scss +0 -16
- package/src/app/modules/fabrikantencore/components/fab-categories/fab-categories.component.spec.ts +0 -23
- package/src/app/modules/fabrikantencore/components/fab-categories/fab-categories.component.ts +0 -30
- package/src/app/modules/fabrikantencore/components/fab-category-tile/fab-category-tile.component.html +0 -10
- package/src/app/modules/fabrikantencore/components/fab-category-tile/fab-category-tile.component.scss +0 -38
- package/src/app/modules/fabrikantencore/components/fab-category-tile/fab-category-tile.component.spec.ts +0 -23
- package/src/app/modules/fabrikantencore/components/fab-category-tile/fab-category-tile.component.ts +0 -46
- package/src/app/modules/fabrikantencore/components/fab-category-tile/no-photo.png +0 -0
- package/src/app/modules/fabrikantencore/components/fab-filter/fab-filter.component.html +0 -24
- package/src/app/modules/fabrikantencore/components/fab-filter/fab-filter.component.scss +0 -57
- package/src/app/modules/fabrikantencore/components/fab-filter/fab-filter.component.spec.ts +0 -23
- package/src/app/modules/fabrikantencore/components/fab-filter/fab-filter.component.ts +0 -63
- package/src/app/modules/fabrikantencore/components/fab-filters/fab-filters.component.html +0 -23
- package/src/app/modules/fabrikantencore/components/fab-filters/fab-filters.component.scss +0 -44
- package/src/app/modules/fabrikantencore/components/fab-filters/fab-filters.component.spec.ts +0 -25
- package/src/app/modules/fabrikantencore/components/fab-filters/fab-filters.component.ts +0 -41
- package/src/app/modules/fabrikantencore/components/fab-filters-input/fab-filters-input.component.html +0 -13
- package/src/app/modules/fabrikantencore/components/fab-filters-input/fab-filters-input.component.scss +0 -16
- package/src/app/modules/fabrikantencore/components/fab-filters-input/fab-filters-input.component.spec.ts +0 -23
- package/src/app/modules/fabrikantencore/components/fab-filters-input/fab-filters-input.component.ts +0 -23
- package/src/app/modules/fabrikantencore/components/fab-filters-overview/fab-filters-overview.component.html +0 -4
- package/src/app/modules/fabrikantencore/components/fab-filters-overview/fab-filters-overview.component.scss +0 -0
- package/src/app/modules/fabrikantencore/components/fab-filters-overview/fab-filters-overview.component.spec.ts +0 -23
- package/src/app/modules/fabrikantencore/components/fab-filters-overview/fab-filters-overview.component.ts +0 -32
- package/src/app/modules/fabrikantencore/components/fab-flag/fab-flag.component.html +0 -1
- package/src/app/modules/fabrikantencore/components/fab-flag/fab-flag.component.scss +0 -2143
- package/src/app/modules/fabrikantencore/components/fab-flag/fab-flag.component.spec.ts +0 -23
- package/src/app/modules/fabrikantencore/components/fab-flag/fab-flag.component.ts +0 -17
- package/src/app/modules/fabrikantencore/components/fab-header/fab-header.component.html +0 -6
- package/src/app/modules/fabrikantencore/components/fab-header/fab-header.component.scss +0 -13
- package/src/app/modules/fabrikantencore/components/fab-header/fab-header.component.spec.ts +0 -23
- package/src/app/modules/fabrikantencore/components/fab-header/fab-header.component.ts +0 -38
- package/src/app/modules/fabrikantencore/components/fab-language-select/fab-language-select.component.html +0 -5
- package/src/app/modules/fabrikantencore/components/fab-language-select/fab-language-select.component.scss +0 -8
- package/src/app/modules/fabrikantencore/components/fab-language-select/fab-language-select.component.spec.ts +0 -23
- package/src/app/modules/fabrikantencore/components/fab-language-select/fab-language-select.component.ts +0 -21
- package/src/app/modules/fabrikantencore/components/fab-loader/fab-loader.component.html +0 -3
- package/src/app/modules/fabrikantencore/components/fab-loader/fab-loader.component.scss +0 -7
- package/src/app/modules/fabrikantencore/components/fab-loader/fab-loader.component.spec.ts +0 -23
- package/src/app/modules/fabrikantencore/components/fab-loader/fab-loader.component.ts +0 -15
- package/src/app/modules/fabrikantencore/components/fab-product/fab-product-bestek/fab-product-bestek.component.html +0 -68
- package/src/app/modules/fabrikantencore/components/fab-product/fab-product-bestek/fab-product-bestek.component.scss +0 -99
- package/src/app/modules/fabrikantencore/components/fab-product/fab-product-bestek/fab-product-bestek.component.spec.ts +0 -23
- package/src/app/modules/fabrikantencore/components/fab-product/fab-product-bestek/fab-product-bestek.component.ts +0 -76
- package/src/app/modules/fabrikantencore/components/fab-product/fab-product-info/fab-product-info-photo/fab-product-info-photo.component.html +0 -15
- package/src/app/modules/fabrikantencore/components/fab-product/fab-product-info/fab-product-info-photo/fab-product-info-photo.component.scss +0 -24
- package/src/app/modules/fabrikantencore/components/fab-product/fab-product-info/fab-product-info-photo/fab-product-info-photo.component.spec.ts +0 -23
- package/src/app/modules/fabrikantencore/components/fab-product/fab-product-info/fab-product-info-photo/fab-product-info-photo.component.ts +0 -26
- package/src/app/modules/fabrikantencore/components/fab-product/fab-product-info/fab-product-info-photo-dialog/fab-product-info-photo-dialog.component.html +0 -15
- package/src/app/modules/fabrikantencore/components/fab-product/fab-product-info/fab-product-info-photo-dialog/fab-product-info-photo-dialog.component.scss +0 -20
- package/src/app/modules/fabrikantencore/components/fab-product/fab-product-info/fab-product-info-photo-dialog/fab-product-info-photo-dialog.component.spec.ts +0 -23
- package/src/app/modules/fabrikantencore/components/fab-product/fab-product-info/fab-product-info-photo-dialog/fab-product-info-photo-dialog.component.ts +0 -17
- package/src/app/modules/fabrikantencore/components/fab-product/fab-product-info/fab-product-info.component.html +0 -17
- package/src/app/modules/fabrikantencore/components/fab-product/fab-product-info/fab-product-info.component.scss +0 -13
- package/src/app/modules/fabrikantencore/components/fab-product/fab-product-info/fab-product-info.component.spec.ts +0 -23
- package/src/app/modules/fabrikantencore/components/fab-product/fab-product-info/fab-product-info.component.ts +0 -40
- package/src/app/modules/fabrikantencore/components/fab-product/fab-product.component.html +0 -54
- package/src/app/modules/fabrikantencore/components/fab-product/fab-product.component.scss +0 -57
- package/src/app/modules/fabrikantencore/components/fab-product/fab-product.component.spec.ts +0 -23
- package/src/app/modules/fabrikantencore/components/fab-product/fab-product.component.ts +0 -86
- package/src/app/modules/fabrikantencore/components/fab-product-select/fab-product-select.component.html +0 -43
- package/src/app/modules/fabrikantencore/components/fab-product-select/fab-product-select.component.scss +0 -65
- package/src/app/modules/fabrikantencore/components/fab-product-select/fab-product-select.component.spec.ts +0 -23
- package/src/app/modules/fabrikantencore/components/fab-product-select/fab-product-select.component.ts +0 -63
- package/src/app/modules/fabrikantencore/components/fab-product-tile/fab-product-tile.component.html +0 -7
- package/src/app/modules/fabrikantencore/components/fab-product-tile/fab-product-tile.component.scss +0 -34
- package/src/app/modules/fabrikantencore/components/fab-product-tile/fab-product-tile.component.spec.ts +0 -23
- package/src/app/modules/fabrikantencore/components/fab-product-tile/fab-product-tile.component.ts +0 -45
- package/src/app/modules/fabrikantencore/components/fab-range-input/fab-range-input.component.html +0 -10
- package/src/app/modules/fabrikantencore/components/fab-range-input/fab-range-input.component.scss +0 -3
- package/src/app/modules/fabrikantencore/components/fab-range-input/fab-range-input.component.spec.ts +0 -23
- package/src/app/modules/fabrikantencore/components/fab-range-input/fab-range-input.component.ts +0 -95
- package/src/app/modules/fabrikantencore/components/fab-start/fab-start.component.html +0 -7
- package/src/app/modules/fabrikantencore/components/fab-start/fab-start.component.scss +0 -24
- package/src/app/modules/fabrikantencore/components/fab-start/fab-start.component.spec.ts +0 -23
- package/src/app/modules/fabrikantencore/components/fab-start/fab-start.component.ts +0 -26
- package/src/app/modules/fabrikantencore/components/fab-svg-viewer/fab-svg-viewer.component.html +0 -124
- package/src/app/modules/fabrikantencore/components/fab-svg-viewer/fab-svg-viewer.component.scss +0 -92
- package/src/app/modules/fabrikantencore/components/fab-svg-viewer/fab-svg-viewer.component.spec.ts +0 -23
- package/src/app/modules/fabrikantencore/components/fab-svg-viewer/fab-svg-viewer.component.ts +0 -86
- package/src/app/modules/fabrikantencore/components/fab-webgl-viewer/fab-webgl-viewer.component.html +0 -108
- package/src/app/modules/fabrikantencore/components/fab-webgl-viewer/fab-webgl-viewer.component.scss +0 -79
- package/src/app/modules/fabrikantencore/components/fab-webgl-viewer/fab-webgl-viewer.component.spec.ts +0 -23
- package/src/app/modules/fabrikantencore/components/fab-webgl-viewer/fab-webgl-viewer.component.ts +0 -103
- package/src/app/modules/fabrikantencore/fabrikantencore.module.spec.ts +0 -13
- package/src/app/modules/fabrikantencore/fabrikantencore.module.ts +0 -260
- package/src/app/modules/fabrikantencore/helpers/auth.guard.ts +0 -28
- package/src/app/modules/fabrikantencore/helpers/basic-auth.interceptor.ts +0 -24
- package/src/app/modules/fabrikantencore/helpers/error.interceptor.ts +0 -24
- package/src/app/modules/fabrikantencore/services/authentication.service.ts +0 -55
- package/src/app/modules/fabrikantencore/services/bestek.service.ts +0 -126
- package/src/app/modules/fabrikantencore/services/fabrikanten.service.ts +0 -624
- package/src/app/modules/fabrikantencore/services/importsets.service.ts +0 -136
- package/src/app/modules/fabrikantencore/services/mobile.service.ts +0 -41
- package/src/app/modules/fabrikantencore/services/navigate.service.ts +0 -32
- package/src/app/modules/fabrikantencore/services/photo.service.ts +0 -121
- package/src/app/modules/fabrikantencore/services/products.service.ts +0 -276
- package/src/app/modules/fabrikantencore/services/projectsetting.service.ts +0 -90
- package/src/app/modules/fabrikantencore/services/svg.service.ts +0 -84
- package/src/app/modules/fabrikantencore/services/translate.service.ts +0 -331
- package/src/app/modules/fabrikantencore/services/webgl.service.ts +0 -72
- package/src/app/modules/fabrikantencore/swagger/SwaggerClient.ts +0 -9706
- package/src/assets/.gitkeep +0 -0
- package/src/assets/bouwconnect-achtergrond.png +0 -0
- package/src/assets/flags/1x1/ac.svg +0 -76
- package/src/assets/flags/1x1/ad.svg +0 -148
- package/src/assets/flags/1x1/ae.svg +0 -6
- package/src/assets/flags/1x1/af.svg +0 -81
- package/src/assets/flags/1x1/ag.svg +0 -14
- package/src/assets/flags/1x1/ai.svg +0 -758
- package/src/assets/flags/1x1/al.svg +0 -5
- package/src/assets/flags/1x1/am.svg +0 -5
- package/src/assets/flags/1x1/ao.svg +0 -13
- package/src/assets/flags/1x1/aq.svg +0 -5
- package/src/assets/flags/1x1/ar.svg +0 -32
- package/src/assets/flags/1x1/as.svg +0 -73
- package/src/assets/flags/1x1/at.svg +0 -6
- package/src/assets/flags/1x1/au.svg +0 -8
- package/src/assets/flags/1x1/aw.svg +0 -186
- package/src/assets/flags/1x1/ax.svg +0 -18
- package/src/assets/flags/1x1/az.svg +0 -8
- package/src/assets/flags/1x1/ba.svg +0 -12
- package/src/assets/flags/1x1/bb.svg +0 -6
- package/src/assets/flags/1x1/bd.svg +0 -4
- package/src/assets/flags/1x1/be.svg +0 -7
- package/src/assets/flags/1x1/bf.svg +0 -7
- package/src/assets/flags/1x1/bg.svg +0 -7
- package/src/assets/flags/1x1/bh.svg +0 -4
- package/src/assets/flags/1x1/bi.svg +0 -15
- package/src/assets/flags/1x1/bj.svg +0 -14
- package/src/assets/flags/1x1/bl.svg +0 -7
- package/src/assets/flags/1x1/bm.svg +0 -97
- package/src/assets/flags/1x1/bn.svg +0 -36
- package/src/assets/flags/1x1/bo.svg +0 -678
- package/src/assets/flags/1x1/bq.svg +0 -5
- package/src/assets/flags/1x1/br.svg +0 -45
- package/src/assets/flags/1x1/bs.svg +0 -13
- package/src/assets/flags/1x1/bt.svg +0 -89
- package/src/assets/flags/1x1/bv.svg +0 -13
- package/src/assets/flags/1x1/bw.svg +0 -7
- package/src/assets/flags/1x1/by.svg +0 -22
- package/src/assets/flags/1x1/bz.svg +0 -145
- package/src/assets/flags/1x1/ca.svg +0 -4
- package/src/assets/flags/1x1/cc.svg +0 -19
- package/src/assets/flags/1x1/cd.svg +0 -12
- package/src/assets/flags/1x1/cefta.svg +0 -13
- package/src/assets/flags/1x1/cf.svg +0 -15
- package/src/assets/flags/1x1/cg.svg +0 -12
- package/src/assets/flags/1x1/ch.svg +0 -9
- package/src/assets/flags/1x1/ci.svg +0 -7
- package/src/assets/flags/1x1/ck.svg +0 -9
- package/src/assets/flags/1x1/cl.svg +0 -13
- package/src/assets/flags/1x1/cm.svg +0 -15
- package/src/assets/flags/1x1/cn.svg +0 -11
- package/src/assets/flags/1x1/co.svg +0 -7
- package/src/assets/flags/1x1/cp.svg +0 -7
- package/src/assets/flags/1x1/cr.svg +0 -7
- package/src/assets/flags/1x1/cu.svg +0 -13
- package/src/assets/flags/1x1/cv.svg +0 -13
- package/src/assets/flags/1x1/cw.svg +0 -14
- package/src/assets/flags/1x1/cx.svg +0 -15
- package/src/assets/flags/1x1/cy.svg +0 -6
- package/src/assets/flags/1x1/cz.svg +0 -5
- package/src/assets/flags/1x1/de.svg +0 -5
- package/src/assets/flags/1x1/dg.svg +0 -129
- package/src/assets/flags/1x1/dj.svg +0 -13
- package/src/assets/flags/1x1/dk.svg +0 -5
- package/src/assets/flags/1x1/dm.svg +0 -152
- package/src/assets/flags/1x1/do.svg +0 -6745
- package/src/assets/flags/1x1/dz.svg +0 -5
- package/src/assets/flags/1x1/ea.svg +0 -547
- package/src/assets/flags/1x1/ec.svg +0 -138
- package/src/assets/flags/1x1/ee.svg +0 -7
- package/src/assets/flags/1x1/eg.svg +0 -38
- package/src/assets/flags/1x1/eh.svg +0 -11
- package/src/assets/flags/1x1/er.svg +0 -13
- package/src/assets/flags/1x1/es-ct.svg +0 -4
- package/src/assets/flags/1x1/es-ga.svg +0 -187
- package/src/assets/flags/1x1/es.svg +0 -547
- package/src/assets/flags/1x1/et.svg +0 -14
- package/src/assets/flags/1x1/eu.svg +0 -28
- package/src/assets/flags/1x1/fi.svg +0 -5
- package/src/assets/flags/1x1/fj.svg +0 -123
- package/src/assets/flags/1x1/fk.svg +0 -89
- package/src/assets/flags/1x1/fm.svg +0 -11
- package/src/assets/flags/1x1/fo.svg +0 -12
- package/src/assets/flags/1x1/fr.svg +0 -7
- package/src/assets/flags/1x1/ga.svg +0 -7
- package/src/assets/flags/1x1/gb-eng.svg +0 -5
- package/src/assets/flags/1x1/gb-nir.svg +0 -131
- package/src/assets/flags/1x1/gb-sct.svg +0 -4
- package/src/assets/flags/1x1/gb-wls.svg +0 -9
- package/src/assets/flags/1x1/gb.svg +0 -7
- package/src/assets/flags/1x1/gd.svg +0 -27
- package/src/assets/flags/1x1/ge.svg +0 -6
- package/src/assets/flags/1x1/gf.svg +0 -7
- package/src/assets/flags/1x1/gg.svg +0 -9
- package/src/assets/flags/1x1/gh.svg +0 -6
- package/src/assets/flags/1x1/gi.svg +0 -32
- package/src/assets/flags/1x1/gl.svg +0 -4
- package/src/assets/flags/1x1/gm.svg +0 -9
- package/src/assets/flags/1x1/gn.svg +0 -7
- package/src/assets/flags/1x1/gp.svg +0 -7
- package/src/assets/flags/1x1/gq.svg +0 -23
- package/src/assets/flags/1x1/gr.svg +0 -16
- package/src/assets/flags/1x1/gs.svg +0 -132
- package/src/assets/flags/1x1/gt.svg +0 -220
- package/src/assets/flags/1x1/gu.svg +0 -23
- package/src/assets/flags/1x1/gw.svg +0 -15
- package/src/assets/flags/1x1/gy.svg +0 -9
- package/src/assets/flags/1x1/hk.svg +0 -30
- package/src/assets/flags/1x1/hm.svg +0 -8
- package/src/assets/flags/1x1/hn.svg +0 -18
- package/src/assets/flags/1x1/hr.svg +0 -56
- package/src/assets/flags/1x1/ht.svg +0 -116
- package/src/assets/flags/1x1/hu.svg +0 -7
- package/src/assets/flags/1x1/ic.svg +0 -7
- package/src/assets/flags/1x1/id.svg +0 -4
- package/src/assets/flags/1x1/ie.svg +0 -7
- package/src/assets/flags/1x1/il.svg +0 -14
- package/src/assets/flags/1x1/im.svg +0 -36
- package/src/assets/flags/1x1/in.svg +0 -25
- package/src/assets/flags/1x1/io.svg +0 -129
- package/src/assets/flags/1x1/iq.svg +0 -10
- package/src/assets/flags/1x1/ir.svg +0 -219
- package/src/assets/flags/1x1/is.svg +0 -12
- package/src/assets/flags/1x1/it.svg +0 -7
- package/src/assets/flags/1x1/je.svg +0 -44
- package/src/assets/flags/1x1/jm.svg +0 -8
- package/src/assets/flags/1x1/jo.svg +0 -16
- package/src/assets/flags/1x1/jp.svg +0 -11
- package/src/assets/flags/1x1/ke.svg +0 -23
- package/src/assets/flags/1x1/kg.svg +0 -15
- package/src/assets/flags/1x1/kh.svg +0 -61
- package/src/assets/flags/1x1/ki.svg +0 -36
- package/src/assets/flags/1x1/km.svg +0 -16
- package/src/assets/flags/1x1/kn.svg +0 -14
- package/src/assets/flags/1x1/kp.svg +0 -15
- package/src/assets/flags/1x1/kr.svg +0 -17
- package/src/assets/flags/1x1/kw.svg +0 -13
- package/src/assets/flags/1x1/ky.svg +0 -109
- package/src/assets/flags/1x1/kz.svg +0 -23
- package/src/assets/flags/1x1/la.svg +0 -12
- package/src/assets/flags/1x1/lb.svg +0 -15
- package/src/assets/flags/1x1/lc.svg +0 -8
- package/src/assets/flags/1x1/li.svg +0 -43
- package/src/assets/flags/1x1/lk.svg +0 -22
- package/src/assets/flags/1x1/lr.svg +0 -14
- package/src/assets/flags/1x1/ls.svg +0 -8
- package/src/assets/flags/1x1/lt.svg +0 -7
- package/src/assets/flags/1x1/lu.svg +0 -5
- package/src/assets/flags/1x1/lv.svg +0 -6
- package/src/assets/flags/1x1/ly.svg +0 -13
- package/src/assets/flags/1x1/ma.svg +0 -4
- package/src/assets/flags/1x1/mc.svg +0 -6
- package/src/assets/flags/1x1/md.svg +0 -71
- package/src/assets/flags/1x1/me.svg +0 -118
- package/src/assets/flags/1x1/mf.svg +0 -7
- package/src/assets/flags/1x1/mg.svg +0 -7
- package/src/assets/flags/1x1/mh.svg +0 -8
- package/src/assets/flags/1x1/mk.svg +0 -5
- package/src/assets/flags/1x1/ml.svg +0 -7
- package/src/assets/flags/1x1/mm.svg +0 -10
- package/src/assets/flags/1x1/mn.svg +0 -14
- package/src/assets/flags/1x1/mo.svg +0 -9
- package/src/assets/flags/1x1/mp.svg +0 -86
- package/src/assets/flags/1x1/mq.svg +0 -7
- package/src/assets/flags/1x1/mr.svg +0 -6
- package/src/assets/flags/1x1/ms.svg +0 -25
- package/src/assets/flags/1x1/mt.svg +0 -50
- package/src/assets/flags/1x1/mu.svg +0 -8
- package/src/assets/flags/1x1/mv.svg +0 -6
- package/src/assets/flags/1x1/mw.svg +0 -15
- package/src/assets/flags/1x1/mx.svg +0 -378
- package/src/assets/flags/1x1/my.svg +0 -7
- package/src/assets/flags/1x1/mz.svg +0 -21
- package/src/assets/flags/1x1/na.svg +0 -16
- package/src/assets/flags/1x1/nc.svg +0 -12
- package/src/assets/flags/1x1/ne.svg +0 -6
- package/src/assets/flags/1x1/nf.svg +0 -11
- package/src/assets/flags/1x1/ng.svg +0 -6
- package/src/assets/flags/1x1/ni.svg +0 -129
- package/src/assets/flags/1x1/nl.svg +0 -5
- package/src/assets/flags/1x1/no.svg +0 -7
- package/src/assets/flags/1x1/np.svg +0 -19
- package/src/assets/flags/1x1/nr.svg +0 -12
- package/src/assets/flags/1x1/nu.svg +0 -10
- package/src/assets/flags/1x1/nz.svg +0 -36
- package/src/assets/flags/1x1/om.svg +0 -115
- package/src/assets/flags/1x1/pa.svg +0 -13
- package/src/assets/flags/1x1/pe.svg +0 -244
- package/src/assets/flags/1x1/pf.svg +0 -18
- package/src/assets/flags/1x1/pg.svg +0 -16
- package/src/assets/flags/1x1/ph.svg +0 -8
- package/src/assets/flags/1x1/pk.svg +0 -15
- package/src/assets/flags/1x1/pl.svg +0 -6
- package/src/assets/flags/1x1/pm.svg +0 -7
- package/src/assets/flags/1x1/pn.svg +0 -53
- package/src/assets/flags/1x1/pr.svg +0 -13
- package/src/assets/flags/1x1/ps.svg +0 -15
- package/src/assets/flags/1x1/pt.svg +0 -57
- package/src/assets/flags/1x1/pw.svg +0 -11
- package/src/assets/flags/1x1/py.svg +0 -156
- package/src/assets/flags/1x1/qa.svg +0 -4
- package/src/assets/flags/1x1/re.svg +0 -7
- package/src/assets/flags/1x1/ro.svg +0 -7
- package/src/assets/flags/1x1/rs.svg +0 -296
- package/src/assets/flags/1x1/ru.svg +0 -7
- package/src/assets/flags/1x1/rw.svg +0 -13
- package/src/assets/flags/1x1/sa.svg +0 -26
- package/src/assets/flags/1x1/sb.svg +0 -13
- package/src/assets/flags/1x1/sc.svg +0 -7
- package/src/assets/flags/1x1/sd.svg +0 -13
- package/src/assets/flags/1x1/se.svg +0 -4
- package/src/assets/flags/1x1/sg.svg +0 -13
- package/src/assets/flags/1x1/sh.svg +0 -76
- package/src/assets/flags/1x1/si.svg +0 -18
- package/src/assets/flags/1x1/sj.svg +0 -7
- package/src/assets/flags/1x1/sk.svg +0 -9
- package/src/assets/flags/1x1/sl.svg +0 -12
- package/src/assets/flags/1x1/sm.svg +0 -73
- package/src/assets/flags/1x1/sn.svg +0 -8
- package/src/assets/flags/1x1/so.svg +0 -11
- package/src/assets/flags/1x1/sr.svg +0 -6
- package/src/assets/flags/1x1/ss.svg +0 -8
- package/src/assets/flags/1x1/st.svg +0 -16
- package/src/assets/flags/1x1/sv.svg +0 -594
- package/src/assets/flags/1x1/sx.svg +0 -56
- package/src/assets/flags/1x1/sy.svg +0 -6
- package/src/assets/flags/1x1/sz.svg +0 -34
- package/src/assets/flags/1x1/ta.svg +0 -76
- package/src/assets/flags/1x1/tc.svg +0 -50
- package/src/assets/flags/1x1/td.svg +0 -7
- package/src/assets/flags/1x1/tf.svg +0 -15
- package/src/assets/flags/1x1/tg.svg +0 -14
- package/src/assets/flags/1x1/th.svg +0 -7
- package/src/assets/flags/1x1/tj.svg +0 -26
- package/src/assets/flags/1x1/tk.svg +0 -5
- package/src/assets/flags/1x1/tl.svg +0 -13
- package/src/assets/flags/1x1/tm.svg +0 -202
- package/src/assets/flags/1x1/tn.svg +0 -13
- package/src/assets/flags/1x1/to.svg +0 -10
- package/src/assets/flags/1x1/tr.svg +0 -8
- package/src/assets/flags/1x1/tt.svg +0 -7
- package/src/assets/flags/1x1/tv.svg +0 -9
- package/src/assets/flags/1x1/tw.svg +0 -32
- package/src/assets/flags/1x1/tz.svg +0 -15
- package/src/assets/flags/1x1/ua.svg +0 -6
- package/src/assets/flags/1x1/ug.svg +0 -30
- package/src/assets/flags/1x1/um.svg +0 -15
- package/src/assets/flags/1x1/un.svg +0 -16
- package/src/assets/flags/1x1/us.svg +0 -10
- package/src/assets/flags/1x1/uy.svg +0 -28
- package/src/assets/flags/1x1/uz.svg +0 -30
- package/src/assets/flags/1x1/va.svg +0 -479
- package/src/assets/flags/1x1/vc.svg +0 -8
- package/src/assets/flags/1x1/ve.svg +0 -26
- package/src/assets/flags/1x1/vg.svg +0 -63
- package/src/assets/flags/1x1/vi.svg +0 -28
- package/src/assets/flags/1x1/vn.svg +0 -11
- package/src/assets/flags/1x1/vu.svg +0 -21
- package/src/assets/flags/1x1/wf.svg +0 -7
- package/src/assets/flags/1x1/ws.svg +0 -7
- package/src/assets/flags/1x1/xk.svg +0 -8
- package/src/assets/flags/1x1/xx.svg +0 -4
- package/src/assets/flags/1x1/ye.svg +0 -7
- package/src/assets/flags/1x1/yt.svg +0 -7
- package/src/assets/flags/1x1/za.svg +0 -17
- package/src/assets/flags/1x1/zm.svg +0 -27
- package/src/assets/flags/1x1/zw.svg +0 -21
- package/src/assets/flags/4x3/ac.svg +0 -76
- package/src/assets/flags/4x3/ad.svg +0 -150
- package/src/assets/flags/4x3/ae.svg +0 -6
- package/src/assets/flags/4x3/af.svg +0 -81
- package/src/assets/flags/4x3/ag.svg +0 -14
- package/src/assets/flags/4x3/ai.svg +0 -758
- package/src/assets/flags/4x3/al.svg +0 -5
- package/src/assets/flags/4x3/am.svg +0 -5
- package/src/assets/flags/4x3/ao.svg +0 -13
- package/src/assets/flags/4x3/aq.svg +0 -5
- package/src/assets/flags/4x3/ar.svg +0 -32
- package/src/assets/flags/4x3/as.svg +0 -72
- package/src/assets/flags/4x3/at.svg +0 -6
- package/src/assets/flags/4x3/au.svg +0 -8
- package/src/assets/flags/4x3/aw.svg +0 -186
- package/src/assets/flags/4x3/ax.svg +0 -18
- package/src/assets/flags/4x3/az.svg +0 -8
- package/src/assets/flags/4x3/ba.svg +0 -12
- package/src/assets/flags/4x3/bb.svg +0 -6
- package/src/assets/flags/4x3/bd.svg +0 -4
- package/src/assets/flags/4x3/be.svg +0 -7
- package/src/assets/flags/4x3/bf.svg +0 -7
- package/src/assets/flags/4x3/bg.svg +0 -7
- package/src/assets/flags/4x3/bh.svg +0 -4
- package/src/assets/flags/4x3/bi.svg +0 -15
- package/src/assets/flags/4x3/bj.svg +0 -14
- package/src/assets/flags/4x3/bl.svg +0 -7
- package/src/assets/flags/4x3/bm.svg +0 -97
- package/src/assets/flags/4x3/bn.svg +0 -36
- package/src/assets/flags/4x3/bo.svg +0 -676
- package/src/assets/flags/4x3/bq.svg +0 -5
- package/src/assets/flags/4x3/br.svg +0 -45
- package/src/assets/flags/4x3/bs.svg +0 -13
- package/src/assets/flags/4x3/bt.svg +0 -89
- package/src/assets/flags/4x3/bv.svg +0 -13
- package/src/assets/flags/4x3/bw.svg +0 -7
- package/src/assets/flags/4x3/by.svg +0 -20
- package/src/assets/flags/4x3/bz.svg +0 -145
- package/src/assets/flags/4x3/ca.svg +0 -4
- package/src/assets/flags/4x3/cc.svg +0 -19
- package/src/assets/flags/4x3/cd.svg +0 -5
- package/src/assets/flags/4x3/cefta.svg +0 -13
- package/src/assets/flags/4x3/cf.svg +0 -15
- package/src/assets/flags/4x3/cg.svg +0 -12
- package/src/assets/flags/4x3/ch.svg +0 -9
- package/src/assets/flags/4x3/ci.svg +0 -7
- package/src/assets/flags/4x3/ck.svg +0 -9
- package/src/assets/flags/4x3/cl.svg +0 -13
- package/src/assets/flags/4x3/cm.svg +0 -15
- package/src/assets/flags/4x3/cn.svg +0 -11
- package/src/assets/flags/4x3/co.svg +0 -7
- package/src/assets/flags/4x3/cp.svg +0 -7
- package/src/assets/flags/4x3/cr.svg +0 -7
- package/src/assets/flags/4x3/cu.svg +0 -13
- package/src/assets/flags/4x3/cv.svg +0 -13
- package/src/assets/flags/4x3/cw.svg +0 -14
- package/src/assets/flags/4x3/cx.svg +0 -15
- package/src/assets/flags/4x3/cy.svg +0 -6
- package/src/assets/flags/4x3/cz.svg +0 -5
- package/src/assets/flags/4x3/de.svg +0 -5
- package/src/assets/flags/4x3/dg.svg +0 -129
- package/src/assets/flags/4x3/dj.svg +0 -13
- package/src/assets/flags/4x3/dk.svg +0 -5
- package/src/assets/flags/4x3/dm.svg +0 -152
- package/src/assets/flags/4x3/do.svg +0 -6745
- package/src/assets/flags/4x3/dz.svg +0 -5
- package/src/assets/flags/4x3/ea.svg +0 -544
- package/src/assets/flags/4x3/ec.svg +0 -138
- package/src/assets/flags/4x3/ee.svg +0 -7
- package/src/assets/flags/4x3/eg.svg +0 -38
- package/src/assets/flags/4x3/eh.svg +0 -16
- package/src/assets/flags/4x3/er.svg +0 -8
- package/src/assets/flags/4x3/es-ct.svg +0 -4
- package/src/assets/flags/4x3/es-ga.svg +0 -187
- package/src/assets/flags/4x3/es.svg +0 -544
- package/src/assets/flags/4x3/et.svg +0 -14
- package/src/assets/flags/4x3/eu.svg +0 -28
- package/src/assets/flags/4x3/fi.svg +0 -5
- package/src/assets/flags/4x3/fj.svg +0 -120
- package/src/assets/flags/4x3/fk.svg +0 -90
- package/src/assets/flags/4x3/fm.svg +0 -11
- package/src/assets/flags/4x3/fo.svg +0 -12
- package/src/assets/flags/4x3/fr.svg +0 -7
- package/src/assets/flags/4x3/ga.svg +0 -7
- package/src/assets/flags/4x3/gb-eng.svg +0 -5
- package/src/assets/flags/4x3/gb-nir.svg +0 -132
- package/src/assets/flags/4x3/gb-sct.svg +0 -4
- package/src/assets/flags/4x3/gb-wls.svg +0 -9
- package/src/assets/flags/4x3/gb.svg +0 -7
- package/src/assets/flags/4x3/gd.svg +0 -27
- package/src/assets/flags/4x3/ge.svg +0 -6
- package/src/assets/flags/4x3/gf.svg +0 -7
- package/src/assets/flags/4x3/gg.svg +0 -9
- package/src/assets/flags/4x3/gh.svg +0 -6
- package/src/assets/flags/4x3/gi.svg +0 -32
- package/src/assets/flags/4x3/gl.svg +0 -4
- package/src/assets/flags/4x3/gm.svg +0 -14
- package/src/assets/flags/4x3/gn.svg +0 -7
- package/src/assets/flags/4x3/gp.svg +0 -7
- package/src/assets/flags/4x3/gq.svg +0 -23
- package/src/assets/flags/4x3/gr.svg +0 -16
- package/src/assets/flags/4x3/gs.svg +0 -133
- package/src/assets/flags/4x3/gt.svg +0 -220
- package/src/assets/flags/4x3/gu.svg +0 -23
- package/src/assets/flags/4x3/gw.svg +0 -13
- package/src/assets/flags/4x3/gy.svg +0 -9
- package/src/assets/flags/4x3/hk.svg +0 -30
- package/src/assets/flags/4x3/hm.svg +0 -8
- package/src/assets/flags/4x3/hn.svg +0 -18
- package/src/assets/flags/4x3/hr.svg +0 -58
- package/src/assets/flags/4x3/ht.svg +0 -116
- package/src/assets/flags/4x3/hu.svg +0 -7
- package/src/assets/flags/4x3/ic.svg +0 -7
- package/src/assets/flags/4x3/id.svg +0 -4
- package/src/assets/flags/4x3/ie.svg +0 -7
- package/src/assets/flags/4x3/il.svg +0 -14
- package/src/assets/flags/4x3/im.svg +0 -36
- package/src/assets/flags/4x3/in.svg +0 -25
- package/src/assets/flags/4x3/io.svg +0 -129
- package/src/assets/flags/4x3/iq.svg +0 -10
- package/src/assets/flags/4x3/ir.svg +0 -219
- package/src/assets/flags/4x3/is.svg +0 -12
- package/src/assets/flags/4x3/it.svg +0 -7
- package/src/assets/flags/4x3/je.svg +0 -45
- package/src/assets/flags/4x3/jm.svg +0 -8
- package/src/assets/flags/4x3/jo.svg +0 -16
- package/src/assets/flags/4x3/jp.svg +0 -11
- package/src/assets/flags/4x3/ke.svg +0 -23
- package/src/assets/flags/4x3/kg.svg +0 -15
- package/src/assets/flags/4x3/kh.svg +0 -61
- package/src/assets/flags/4x3/ki.svg +0 -36
- package/src/assets/flags/4x3/km.svg +0 -16
- package/src/assets/flags/4x3/kn.svg +0 -14
- package/src/assets/flags/4x3/kp.svg +0 -15
- package/src/assets/flags/4x3/kr.svg +0 -24
- package/src/assets/flags/4x3/kw.svg +0 -13
- package/src/assets/flags/4x3/ky.svg +0 -109
- package/src/assets/flags/4x3/kz.svg +0 -23
- package/src/assets/flags/4x3/la.svg +0 -12
- package/src/assets/flags/4x3/lb.svg +0 -15
- package/src/assets/flags/4x3/lc.svg +0 -8
- package/src/assets/flags/4x3/li.svg +0 -43
- package/src/assets/flags/4x3/lk.svg +0 -22
- package/src/assets/flags/4x3/lr.svg +0 -14
- package/src/assets/flags/4x3/ls.svg +0 -8
- package/src/assets/flags/4x3/lt.svg +0 -7
- package/src/assets/flags/4x3/lu.svg +0 -5
- package/src/assets/flags/4x3/lv.svg +0 -6
- package/src/assets/flags/4x3/ly.svg +0 -13
- package/src/assets/flags/4x3/ma.svg +0 -4
- package/src/assets/flags/4x3/mc.svg +0 -6
- package/src/assets/flags/4x3/md.svg +0 -70
- package/src/assets/flags/4x3/me.svg +0 -116
- package/src/assets/flags/4x3/mf.svg +0 -7
- package/src/assets/flags/4x3/mg.svg +0 -7
- package/src/assets/flags/4x3/mh.svg +0 -7
- package/src/assets/flags/4x3/mk.svg +0 -5
- package/src/assets/flags/4x3/ml.svg +0 -7
- package/src/assets/flags/4x3/mm.svg +0 -12
- package/src/assets/flags/4x3/mn.svg +0 -14
- package/src/assets/flags/4x3/mo.svg +0 -9
- package/src/assets/flags/4x3/mp.svg +0 -86
- package/src/assets/flags/4x3/mq.svg +0 -7
- package/src/assets/flags/4x3/mr.svg +0 -6
- package/src/assets/flags/4x3/ms.svg +0 -33
- package/src/assets/flags/4x3/mt.svg +0 -49
- package/src/assets/flags/4x3/mu.svg +0 -8
- package/src/assets/flags/4x3/mv.svg +0 -6
- package/src/assets/flags/4x3/mw.svg +0 -10
- package/src/assets/flags/4x3/mx.svg +0 -382
- package/src/assets/flags/4x3/my.svg +0 -7
- package/src/assets/flags/4x3/mz.svg +0 -21
- package/src/assets/flags/4x3/na.svg +0 -16
- package/src/assets/flags/4x3/nc.svg +0 -13
- package/src/assets/flags/4x3/ne.svg +0 -6
- package/src/assets/flags/4x3/nf.svg +0 -9
- package/src/assets/flags/4x3/ng.svg +0 -6
- package/src/assets/flags/4x3/ni.svg +0 -129
- package/src/assets/flags/4x3/nl.svg +0 -5
- package/src/assets/flags/4x3/no.svg +0 -7
- package/src/assets/flags/4x3/np.svg +0 -14
- package/src/assets/flags/4x3/nr.svg +0 -12
- package/src/assets/flags/4x3/nu.svg +0 -10
- package/src/assets/flags/4x3/nz.svg +0 -36
- package/src/assets/flags/4x3/om.svg +0 -115
- package/src/assets/flags/4x3/pa.svg +0 -14
- package/src/assets/flags/4x3/pe.svg +0 -244
- package/src/assets/flags/4x3/pf.svg +0 -19
- package/src/assets/flags/4x3/pg.svg +0 -9
- package/src/assets/flags/4x3/ph.svg +0 -6
- package/src/assets/flags/4x3/pk.svg +0 -15
- package/src/assets/flags/4x3/pl.svg +0 -6
- package/src/assets/flags/4x3/pm.svg +0 -7
- package/src/assets/flags/4x3/pn.svg +0 -53
- package/src/assets/flags/4x3/pr.svg +0 -13
- package/src/assets/flags/4x3/ps.svg +0 -15
- package/src/assets/flags/4x3/pt.svg +0 -57
- package/src/assets/flags/4x3/pw.svg +0 -11
- package/src/assets/flags/4x3/py.svg +0 -157
- package/src/assets/flags/4x3/qa.svg +0 -4
- package/src/assets/flags/4x3/re.svg +0 -7
- package/src/assets/flags/4x3/ro.svg +0 -7
- package/src/assets/flags/4x3/rs.svg +0 -292
- package/src/assets/flags/4x3/ru.svg +0 -7
- package/src/assets/flags/4x3/rw.svg +0 -13
- package/src/assets/flags/4x3/sa.svg +0 -26
- package/src/assets/flags/4x3/sb.svg +0 -13
- package/src/assets/flags/4x3/sc.svg +0 -7
- package/src/assets/flags/4x3/sd.svg +0 -13
- package/src/assets/flags/4x3/se.svg +0 -4
- package/src/assets/flags/4x3/sg.svg +0 -13
- package/src/assets/flags/4x3/sh.svg +0 -76
- package/src/assets/flags/4x3/si.svg +0 -18
- package/src/assets/flags/4x3/sj.svg +0 -7
- package/src/assets/flags/4x3/sk.svg +0 -9
- package/src/assets/flags/4x3/sl.svg +0 -7
- package/src/assets/flags/4x3/sm.svg +0 -75
- package/src/assets/flags/4x3/sn.svg +0 -8
- package/src/assets/flags/4x3/so.svg +0 -11
- package/src/assets/flags/4x3/sr.svg +0 -6
- package/src/assets/flags/4x3/ss.svg +0 -8
- package/src/assets/flags/4x3/st.svg +0 -16
- package/src/assets/flags/4x3/sv.svg +0 -594
- package/src/assets/flags/4x3/sx.svg +0 -56
- package/src/assets/flags/4x3/sy.svg +0 -6
- package/src/assets/flags/4x3/sz.svg +0 -34
- package/src/assets/flags/4x3/ta.svg +0 -76
- package/src/assets/flags/4x3/tc.svg +0 -50
- package/src/assets/flags/4x3/td.svg +0 -7
- package/src/assets/flags/4x3/tf.svg +0 -15
- package/src/assets/flags/4x3/tg.svg +0 -14
- package/src/assets/flags/4x3/th.svg +0 -7
- package/src/assets/flags/4x3/tj.svg +0 -22
- package/src/assets/flags/4x3/tk.svg +0 -5
- package/src/assets/flags/4x3/tl.svg +0 -13
- package/src/assets/flags/4x3/tm.svg +0 -205
- package/src/assets/flags/4x3/tn.svg +0 -13
- package/src/assets/flags/4x3/to.svg +0 -10
- package/src/assets/flags/4x3/tr.svg +0 -8
- package/src/assets/flags/4x3/tt.svg +0 -5
- package/src/assets/flags/4x3/tv.svg +0 -9
- package/src/assets/flags/4x3/tw.svg +0 -34
- package/src/assets/flags/4x3/tz.svg +0 -13
- package/src/assets/flags/4x3/ua.svg +0 -6
- package/src/assets/flags/4x3/ug.svg +0 -30
- package/src/assets/flags/4x3/um.svg +0 -15
- package/src/assets/flags/4x3/un.svg +0 -16
- package/src/assets/flags/4x3/us.svg +0 -10
- package/src/assets/flags/4x3/uy.svg +0 -28
- package/src/assets/flags/4x3/uz.svg +0 -30
- package/src/assets/flags/4x3/va.svg +0 -479
- package/src/assets/flags/4x3/vc.svg +0 -8
- package/src/assets/flags/4x3/ve.svg +0 -26
- package/src/assets/flags/4x3/vg.svg +0 -63
- package/src/assets/flags/4x3/vi.svg +0 -28
- package/src/assets/flags/4x3/vn.svg +0 -11
- package/src/assets/flags/4x3/vu.svg +0 -21
- package/src/assets/flags/4x3/wf.svg +0 -7
- package/src/assets/flags/4x3/ws.svg +0 -7
- package/src/assets/flags/4x3/xk.svg +0 -8
- package/src/assets/flags/4x3/xx.svg +0 -4
- package/src/assets/flags/4x3/ye.svg +0 -7
- package/src/assets/flags/4x3/yt.svg +0 -7
- package/src/assets/flags/4x3/za.svg +0 -17
- package/src/assets/flags/4x3/zm.svg +0 -27
- package/src/assets/flags/4x3/zw.svg +0 -21
- package/src/environments/environment.prod.ts +0 -3
- package/src/environments/environment.ts +0 -16
- package/src/favicon.ico +0 -0
- package/src/index.html +0 -16
- package/src/main.ts +0 -12
- package/src/polyfills.ts +0 -53
- package/src/styles.scss +0 -39
- package/src/test.ts +0 -26
- package/src/webgl/WebGLQuery.min.js +0 -6
- package/src/webgl/WebGLViewerLight.min.js +0 -89
- package/src/webgl/gl-matrix.min.js +0 -47
- package/tsconfig.app.json +0 -15
- package/tsconfig.json +0 -33
- package/tsconfig.spec.json +0 -18
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fabrikantencore.mjs","sources":["../../src/app/modules/fabrikantencore/swagger/SwaggerClient.ts","../../src/app/modules/fabrikantencore/services/authentication.service.ts","../../src/app/modules/fabrikantencore/helpers/basic-auth.interceptor.ts","../../src/app/modules/fabrikantencore/helpers/error.interceptor.ts","../../src/app/modules/fabrikantencore/helpers/auth.guard.ts","../../src/app/modules/fabrikantencore/beheer/components/beheer-nav/beheer-nav.component.ts","../../src/app/modules/fabrikantencore/beheer/components/beheer-nav/beheer-nav.component.html","../../src/app/modules/fabrikantencore/beheer/components/beheer-main/beheer-main.component.ts","../../src/app/modules/fabrikantencore/beheer/components/beheer-main/beheer-main.component.html","../../src/app/modules/fabrikantencore/components/fab-loader/fab-loader.component.ts","../../src/app/modules/fabrikantencore/components/fab-loader/fab-loader.component.html","../../src/app/modules/fabrikantencore/beheer/components/beheer-inlog/beheer-inlog.component.ts","../../src/app/modules/fabrikantencore/beheer/components/beheer-inlog/beheer-inlog.component.html","../../src/app/modules/fabrikantencore/services/mobile.service.ts","../../src/app/modules/fabrikantencore/services/bestek.service.ts","../../src/app/modules/fabrikantencore/services/navigate.service.ts","../../src/app/modules/fabrikantencore/services/translate.service.ts","../../src/app/modules/fabrikantencore/services/webgl.service.ts","../../src/app/modules/fabrikantencore/services/svg.service.ts","../../src/app/modules/fabrikantencore/services/fabrikanten.service.ts","../../src/app/modules/fabrikantencore/components/fab-filter/fab-filter.component.ts","../../src/app/modules/fabrikantencore/components/fab-filter/fab-filter.component.html","../../src/app/modules/fabrikantencore/components/fab-range-input/fab-range-input.component.ts","../../src/app/modules/fabrikantencore/components/fab-range-input/fab-range-input.component.html","../../src/app/modules/fabrikantencore/components/fab-filters-input/fab-filters-input.component.ts","../../src/app/modules/fabrikantencore/components/fab-filters-input/fab-filters-input.component.html","../../src/app/modules/fabrikantencore/services/photo.service.ts","../../src/app/modules/fabrikantencore/components/fab-product/fab-product-info/fab-product-info-photo-dialog/fab-product-info-photo-dialog.component.ts","../../src/app/modules/fabrikantencore/components/fab-product/fab-product-info/fab-product-info-photo-dialog/fab-product-info-photo-dialog.component.html","../../src/app/modules/fabrikantencore/components/fab-product/fab-product-info/fab-product-info-photo/fab-product-info-photo.component.ts","../../src/app/modules/fabrikantencore/components/fab-product/fab-product-info/fab-product-info-photo/fab-product-info-photo.component.html","../../src/app/modules/fabrikantencore/components/fab-product/fab-product-info/fab-product-info.component.ts","../../src/app/modules/fabrikantencore/components/fab-product/fab-product-info/fab-product-info.component.html","../../src/app/modules/fabrikantencore/components/fab-product/fab-product-bestek/fab-product-bestek.component.ts","../../src/app/modules/fabrikantencore/components/fab-product/fab-product-bestek/fab-product-bestek.component.html","../../src/app/modules/fabrikantencore/components/fab-breadcrumb/fab-breadcrumb.component.ts","../../src/app/modules/fabrikantencore/components/fab-breadcrumb/fab-breadcrumb.component.html","../../src/app/modules/fabrikantencore/components/fab-flag/fab-flag.component.ts","../../src/app/modules/fabrikantencore/components/fab-flag/fab-flag.component.html","../../src/app/modules/fabrikantencore/components/fab-language-select/fab-language-select.component.ts","../../src/app/modules/fabrikantencore/components/fab-language-select/fab-language-select.component.html","../../src/app/modules/fabrikantencore/components/fab-header/fab-header.component.ts","../../src/app/modules/fabrikantencore/components/fab-header/fab-header.component.html","../../src/app/modules/fabrikantencore/components/fab-webgl-viewer/fab-webgl-viewer.component.ts","../../src/app/modules/fabrikantencore/components/fab-webgl-viewer/fab-webgl-viewer.component.html","../../src/app/modules/fabrikantencore/components/fab-svg-viewer/fab-svg-viewer.component.ts","../../src/app/modules/fabrikantencore/components/fab-svg-viewer/fab-svg-viewer.component.html","../../src/app/modules/fabrikantencore/components/fab-product/fab-product.component.ts","../../src/app/modules/fabrikantencore/components/fab-product/fab-product.component.html","../../src/app/modules/fabrikantencore/components/fab-product-tile/fab-product-tile.component.ts","../../src/app/modules/fabrikantencore/components/fab-product-tile/fab-product-tile.component.html","../../src/app/modules/fabrikantencore/components/fab-product-select/fab-product-select.component.ts","../../src/app/modules/fabrikantencore/components/fab-product-select/fab-product-select.component.html","../../src/app/modules/fabrikantencore/components/fab-filters-overview/fab-filters-overview.component.ts","../../src/app/modules/fabrikantencore/components/fab-filters-overview/fab-filters-overview.component.html","../../src/app/modules/fabrikantencore/components/fab-filters/fab-filters.component.ts","../../src/app/modules/fabrikantencore/components/fab-filters/fab-filters.component.html","../../src/app/modules/fabrikantencore/services/projectsetting.service.ts","../../src/app/modules/fabrikantencore/services/importsets.service.ts","../../src/app/modules/fabrikantencore/services/products.service.ts","../../src/app/modules/fabrikantencore/beheer/components/beheer-users/beheer-users.component.ts","../../src/app/modules/fabrikantencore/beheer/components/beheer-users/beheer-users.component.html","../../src/app/modules/fabrikantencore/beheer/components/beheer-products/beheer-products-product/beheer-products-product.component.ts","../../src/app/modules/fabrikantencore/beheer/components/beheer-products/beheer-products-product/beheer-products-product.component.html","../../src/app/modules/fabrikantencore/beheer/components/beheer-display-ebo/beheer-display-ebo.component.ts","../../src/app/modules/fabrikantencore/beheer/components/beheer-display-ebo/beheer-display-ebo.component.html","../../src/app/modules/fabrikantencore/beheer/components/beheer-products/beheer-products-connect-manyname-dialog/beheer-products-connect-manyname-dialog.component.ts","../../src/app/modules/fabrikantencore/beheer/components/beheer-products/beheer-products-connect-manyname-dialog/beheer-products-connect-manyname-dialog.component.html","../../src/app/modules/fabrikantencore/beheer/components/beheer-products/beheer-products-koppel-filteroption-dailog/beheer-products-koppel-filteroption-dailog.component.ts","../../src/app/modules/fabrikantencore/beheer/components/beheer-products/beheer-products-koppel-filteroption-dailog/beheer-products-koppel-filteroption-dailog.component.html","../../src/app/modules/fabrikantencore/beheer/components/beheer-products/beheer-products-connect-rangeinput/beheer-products-connect-rangeinput.component.ts","../../src/app/modules/fabrikantencore/beheer/components/beheer-products/beheer-products-connect-rangeinput/beheer-products-connect-rangeinput.component.html","../../src/app/modules/fabrikantencore/beheer/components/beheer-products/beheer-products-eigenschap-bereik/beheer-products-eigenschap-bereik.component.ts","../../src/app/modules/fabrikantencore/beheer/components/beheer-products/beheer-products-eigenschap-bereik/beheer-products-eigenschap-bereik.component.html","../../src/app/modules/fabrikantencore/beheer/components/beheer-products/beheer-products-eigenschap/beheer-products-eigenschap.component.ts","../../src/app/modules/fabrikantencore/beheer/components/beheer-products/beheer-products-eigenschap/beheer-products-eigenschap.component.html","../../src/app/modules/fabrikantencore/beheer/components/beheer-products/beheer-products-ebo/beheer-products-ebo.component.ts","../../src/app/modules/fabrikantencore/beheer/components/beheer-products/beheer-products-ebo/beheer-products-ebo.component.html","../../src/app/modules/fabrikantencore/beheer/components/beheer-products/beheer-products-ebo/beheer-products-opbouw.component.html","../../src/app/modules/fabrikantencore/beheer/components/beheer-products/beheer-products-bcbproduct/beheer-products-bcbproduct.component.ts","../../src/app/modules/fabrikantencore/beheer/components/beheer-products/beheer-products-bcbproduct/beheer-products-bcbproduct.component.html","../../src/app/modules/fabrikantencore/beheer/components/beheer-products/beheer-products.component.ts","../../src/app/modules/fabrikantencore/beheer/components/beheer-products/beheer-products.component.html","../../src/app/modules/fabrikantencore/beheer/components/beheer-filters/beheer-filters.component.ts","../../src/app/modules/fabrikantencore/beheer/components/beheer-filters/beheer-filters.component.html","../../src/app/modules/fabrikantencore/beheer/components/beheer-settings/beheer-settings-options/beheer-settings-options.component.ts","../../src/app/modules/fabrikantencore/beheer/components/beheer-settings/beheer-settings-options/beheer-settings-options.component.html","../../src/app/modules/fabrikantencore/beheer/components/beheer-settings/beheer-settings-string/beheer-settings-string.component.ts","../../src/app/modules/fabrikantencore/beheer/components/beheer-settings/beheer-settings-string/beheer-settings-string.component.html","../../src/app/modules/fabrikantencore/beheer/components/beheer-settings/beheer-settings.component.ts","../../src/app/modules/fabrikantencore/beheer/components/beheer-settings/beheer-settings.component.html","../../src/app/modules/fabrikantencore/beheer/components/beheer-searchproducts/beheer-searchproducts-koppel-dialog/beheer-searchproducts-koppel-dialog.component.ts","../../src/app/modules/fabrikantencore/beheer/components/beheer-searchproducts/beheer-searchproducts-koppel-dialog/beheer-searchproducts-koppel-dialog.component.html","../../src/app/modules/fabrikantencore/beheer/components/beheer-searchproducts/beheer-searchproducts.component.ts","../../src/app/modules/fabrikantencore/beheer/components/beheer-searchproducts/beheer-searchproducts.component.html","../../src/app/modules/fabrikantencore/beheer/components/beheer-import-sets/beheer-import-sets-dialog/beheer-import-sets-dialog.component.ts","../../src/app/modules/fabrikantencore/beheer/components/beheer-import-sets/beheer-import-sets-dialog/beheer-import-sets-dialog.component.html","../../src/app/modules/fabrikantencore/beheer/components/beheer-import-sets/beheer-import-sets-eigenschap/beheer-import-sets-eigenschap.component.ts","../../src/app/modules/fabrikantencore/beheer/components/beheer-import-sets/beheer-import-sets-eigenschap/beheer-import-sets-eigenschap.component.html","../../src/app/modules/fabrikantencore/beheer/components/beheer-import-sets/beheer-import-sets-ebo/beheer-import-sets-ebo.component.ts","../../src/app/modules/fabrikantencore/beheer/components/beheer-import-sets/beheer-import-sets-ebo/beheer-import-sets-ebo.component.html","../../src/app/modules/fabrikantencore/beheer/components/beheer-import-sets/beheer-import-sets-ebo/beheer-import-sets-opbouw.component.html","../../src/app/modules/fabrikantencore/beheer/components/beheer-import-sets/beheer-import-sets.component.ts","../../src/app/modules/fabrikantencore/beheer/components/beheer-import-sets/beheer-import-sets.component.html","../../src/app/modules/fabrikantencore/components/fab-bcb-product/fab-bcb-product.component.ts","../../src/app/modules/fabrikantencore/components/fab-bcb-product/fab-bcb-product.component.html","../../src/app/modules/fabrikantencore/beheer/components/beheer-connect-category-dialog/beheer-connect-category-dialog.component.ts","../../src/app/modules/fabrikantencore/beheer/components/beheer-connect-category-dialog/beheer-connect-category-dialog.component.html","../../src/app/modules/fabrikantencore/beheer/components/beheer-ebo-koppel/beheer-ebo-koppel/beheer-ebo-koppel.component.ts","../../src/app/modules/fabrikantencore/beheer/components/beheer-ebo-koppel/beheer-ebo-koppel/beheer-ebo-koppel.component.html","../../src/app/modules/fabrikantencore/beheer/components/beheer-categories/beheer-categories.component.ts","../../src/app/modules/fabrikantencore/beheer/components/beheer-categories/beheer-categories.component.html","../../src/app/modules/fabrikantencore/components/fab-start/fab-start.component.ts","../../src/app/modules/fabrikantencore/components/fab-start/fab-start.component.html","../../src/app/modules/fabrikantencore/components/fab-category-tile/fab-category-tile.component.ts","../../src/app/modules/fabrikantencore/components/fab-category-tile/fab-category-tile.component.html","../../src/app/modules/fabrikantencore/components/fab-categories/fab-categories.component.ts","../../src/app/modules/fabrikantencore/components/fab-categories/fab-categories.component.html","../../src/app/modules/fabrikantencore/beheer/components/beheer-translate/beheer-translate.component.ts","../../src/app/modules/fabrikantencore/beheer/components/beheer-translate/beheer-translate.component.html","../../src/app/modules/fabrikantencore/fabrikantencore.module.ts","../../fabrikantencore.ts"],"sourcesContent":["//----------------------\r\n// <auto-generated>\r\n// Generated using the NSwag toolchain v13.16.1.0 (NJsonSchema v10.7.2.0 (Newtonsoft.Json v13.0.0.0)) (http://NSwag.org)\r\n// </auto-generated>\r\n//----------------------\r\n\r\n/* tslint:disable */\r\n/* eslint-disable */\r\n// ReSharper disable InconsistentNaming\r\n\r\nimport { mergeMap as _observableMergeMap, catchError as _observableCatch } from 'rxjs/operators';\r\nimport { Observable, throwError as _observableThrow, of as _observableOf } from 'rxjs';\r\nimport { Injectable, Inject, Optional, InjectionToken } from '@angular/core';\r\nimport { HttpClient, HttpHeaders, HttpResponse, HttpResponseBase } from '@angular/common/http';\r\n\r\nexport const API_BASE_URL = new InjectionToken<string>('API_BASE_URL');\r\n\r\n@Injectable()\r\nexport class CategoriesApiClient {\r\n private http: HttpClient;\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\r\n this.http = http;\r\n this.baseUrl = baseUrl !== undefined && baseUrl !== null ? baseUrl : \"\";\r\n }\r\n\r\n getCategoriesViewModel(): Observable<CategoriesViewModel> {\r\n let url_ = this.baseUrl + \"/api/categories/getcategoriesviewmodel\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetCategoriesViewModel(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetCategoriesViewModel(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable<CategoriesViewModel>;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable<CategoriesViewModel>;\r\n }));\r\n }\r\n\r\n protected processGetCategoriesViewModel(response: HttpResponseBase): Observable<CategoriesViewModel> {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = CategoriesViewModel.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n getCategoriesOverview(): Observable<CategoriesOverviewViewModel> {\r\n let url_ = this.baseUrl + \"/api/categories/getcategoriesoverview\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetCategoriesOverview(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetCategoriesOverview(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable<CategoriesOverviewViewModel>;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable<CategoriesOverviewViewModel>;\r\n }));\r\n }\r\n\r\n protected processGetCategoriesOverview(response: HttpResponseBase): Observable<CategoriesOverviewViewModel> {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = CategoriesOverviewViewModel.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n createCategory(pCreateCategoryRequest: CreateCategoryRequest): Observable<CreateCategoryResponse> {\r\n let url_ = this.baseUrl + \"/api/categories/createcategory\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(pCreateCategoryRequest);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processCreateCategory(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processCreateCategory(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable<CreateCategoryResponse>;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable<CreateCategoryResponse>;\r\n }));\r\n }\r\n\r\n protected processCreateCategory(response: HttpResponseBase): Observable<CreateCategoryResponse> {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = CreateCategoryResponse.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n}\r\n\r\n@Injectable()\r\nexport class EBOKoppelApiClient {\r\n private http: HttpClient;\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\r\n this.http = http;\r\n this.baseUrl = baseUrl !== undefined && baseUrl !== null ? baseUrl : \"\";\r\n }\r\n\r\n getEBOKoppelViewModel(pEBOConnectRequestModel: EBOConnectRequestModel): Observable<EBOKoppelViewModel> {\r\n let url_ = this.baseUrl + \"/api/ebokoppel/getebokoppelviewmodel\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(pEBOConnectRequestModel);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetEBOKoppelViewModel(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetEBOKoppelViewModel(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable<EBOKoppelViewModel>;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable<EBOKoppelViewModel>;\r\n }));\r\n }\r\n\r\n protected processGetEBOKoppelViewModel(response: HttpResponseBase): Observable<EBOKoppelViewModel> {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = EBOKoppelViewModel.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n koppelEBOOptie(pKoppelEBOOptieRequest: KoppelEBOOptieRequest): Observable<KoppelEBOOptieResponse> {\r\n let url_ = this.baseUrl + \"/api/ebokoppel/koppelebooptie\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(pKoppelEBOOptieRequest);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processKoppelEBOOptie(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processKoppelEBOOptie(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable<KoppelEBOOptieResponse>;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable<KoppelEBOOptieResponse>;\r\n }));\r\n }\r\n\r\n protected processKoppelEBOOptie(response: HttpResponseBase): Observable<KoppelEBOOptieResponse> {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = KoppelEBOOptieResponse.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n connectEBODOCategory(pConnectEBOCategoryRequest: ConnectEBODOCategoryRequest): Observable<ConnectEBODOCategoryResponse> {\r\n let url_ = this.baseUrl + \"/api/ebokoppel/connectebodocategory\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(pConnectEBOCategoryRequest);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processConnectEBODOCategory(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processConnectEBODOCategory(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable<ConnectEBODOCategoryResponse>;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable<ConnectEBODOCategoryResponse>;\r\n }));\r\n }\r\n\r\n protected processConnectEBODOCategory(response: HttpResponseBase): Observable<ConnectEBODOCategoryResponse> {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = ConnectEBODOCategoryResponse.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n}\r\n\r\n@Injectable()\r\nexport class FabrikantenApiClient {\r\n private http: HttpClient;\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\r\n this.http = http;\r\n this.baseUrl = baseUrl !== undefined && baseUrl !== null ? baseUrl : \"\";\r\n }\r\n\r\n getFabrikantenViewModel(pFabrikantenRequestModel: FabrikantenRequestModel): Observable<FabrikantenViewModel> {\r\n let url_ = this.baseUrl + \"/api/fabrikanten/getfabrikantenviewmodel\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(pFabrikantenRequestModel);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetFabrikantenViewModel(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetFabrikantenViewModel(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable<FabrikantenViewModel>;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable<FabrikantenViewModel>;\r\n }));\r\n }\r\n\r\n protected processGetFabrikantenViewModel(response: HttpResponseBase): Observable<FabrikantenViewModel> {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = FabrikantenViewModel.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n getFabrikantenBestekViewModel(pFabrikantenBestekRequestModel: FabrikantenBestekRequestModel): Observable<FabrikantenBestekViewModel> {\r\n let url_ = this.baseUrl + \"/api/fabrikanten/getfabrikantenbestekviewmodel\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(pFabrikantenBestekRequestModel);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetFabrikantenBestekViewModel(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetFabrikantenBestekViewModel(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable<FabrikantenBestekViewModel>;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable<FabrikantenBestekViewModel>;\r\n }));\r\n }\r\n\r\n protected processGetFabrikantenBestekViewModel(response: HttpResponseBase): Observable<FabrikantenBestekViewModel> {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = FabrikantenBestekViewModel.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n getFabrikanten3DViewModel(pFabrikanten3DRequestModel: Fabrikanten3DRequestModel): Observable<Fabrikanten3DViewModel> {\r\n let url_ = this.baseUrl + \"/api/fabrikanten/getfabrikanten3dviewmodel\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(pFabrikanten3DRequestModel);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetFabrikanten3DViewModel(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetFabrikanten3DViewModel(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable<Fabrikanten3DViewModel>;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable<Fabrikanten3DViewModel>;\r\n }));\r\n }\r\n\r\n protected processGetFabrikanten3DViewModel(response: HttpResponseBase): Observable<Fabrikanten3DViewModel> {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = Fabrikanten3DViewModel.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n getFabrikantenSVGViewModel(pFabrikantenSVGRequestModel: FabrikantenSVGRequestModel): Observable<FabrikantenSVGViewModel> {\r\n let url_ = this.baseUrl + \"/api/fabrikanten/getfabrikantensvgviewmodel\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(pFabrikantenSVGRequestModel);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetFabrikantenSVGViewModel(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetFabrikantenSVGViewModel(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable<FabrikantenSVGViewModel>;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable<FabrikantenSVGViewModel>;\r\n }));\r\n }\r\n\r\n protected processGetFabrikantenSVGViewModel(response: HttpResponseBase): Observable<FabrikantenSVGViewModel> {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = FabrikantenSVGViewModel.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n getFabrikantenFileViewModel(pFabrikantenFileRequestModel: FabrikantenFileRequestModel): Observable<FabrikantenFileViewModel> {\r\n let url_ = this.baseUrl + \"/api/fabrikanten/getfabrikantenfileviewmodel\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(pFabrikantenFileRequestModel);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetFabrikantenFileViewModel(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetFabrikantenFileViewModel(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable<FabrikantenFileViewModel>;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable<FabrikantenFileViewModel>;\r\n }));\r\n }\r\n\r\n protected processGetFabrikantenFileViewModel(response: HttpResponseBase): Observable<FabrikantenFileViewModel> {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = FabrikantenFileViewModel.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n getBCBLink(pBCBLinkRequestModel: BCBLinkRequestModel): Observable<BCBLinkResponseModel> {\r\n let url_ = this.baseUrl + \"/api/fabrikanten/getbcblink\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(pBCBLinkRequestModel);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetBCBLink(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetBCBLink(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable<BCBLinkResponseModel>;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable<BCBLinkResponseModel>;\r\n }));\r\n }\r\n\r\n protected processGetBCBLink(response: HttpResponseBase): Observable<BCBLinkResponseModel> {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = BCBLinkResponseModel.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n resetCache(): Observable<void> {\r\n let url_ = this.baseUrl + \"/api/fabrikanten/resetcache\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processResetCache(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processResetCache(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable<void>;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable<void>;\r\n }));\r\n }\r\n\r\n protected processResetCache(response: HttpResponseBase): Observable<void> {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n setRangeInput(pSetRangeInputRequest: SetRangeInputRequest): Observable<void> {\r\n let url_ = this.baseUrl + \"/api/fabrikanten/setrangeinput\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(pSetRangeInputRequest);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processSetRangeInput(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processSetRangeInput(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable<void>;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable<void>;\r\n }));\r\n }\r\n\r\n protected processSetRangeInput(response: HttpResponseBase): Observable<void> {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n selectFilterOption(pSelectFilterOptionRequest: SelectFilterOptionRequest): Observable<void> {\r\n let url_ = this.baseUrl + \"/api/fabrikanten/selectfilteroption\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(pSelectFilterOptionRequest);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processSelectFilterOption(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processSelectFilterOption(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable<void>;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable<void>;\r\n }));\r\n }\r\n\r\n protected processSelectFilterOption(response: HttpResponseBase): Observable<void> {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n selectCategory(pSelectCategoryRequest: SelectCategoryRequest): Observable<void> {\r\n let url_ = this.baseUrl + \"/api/fabrikanten/selectcategory\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(pSelectCategoryRequest);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processSelectCategory(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processSelectCategory(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable<void>;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable<void>;\r\n }));\r\n }\r\n\r\n protected processSelectCategory(response: HttpResponseBase): Observable<void> {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n resetFilterSelection(pResetFilterRequest: ResetFilterRequest): Observable<void> {\r\n let url_ = this.baseUrl + \"/api/fabrikanten/resetfilterselection\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(pResetFilterRequest);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processResetFilterSelection(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processResetFilterSelection(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable<void>;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable<void>;\r\n }));\r\n }\r\n\r\n protected processResetFilterSelection(response: HttpResponseBase): Observable<void> {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n resetCategoryLayerSelection(pResetCategoryLayerRequest: ResetCategoryLayerRequest): Observable<void> {\r\n let url_ = this.baseUrl + \"/api/fabrikanten/resetcategorylayerselection\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(pResetCategoryLayerRequest);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processResetCategoryLayerSelection(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processResetCategoryLayerSelection(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable<void>;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable<void>;\r\n }));\r\n }\r\n\r\n protected processResetCategoryLayerSelection(response: HttpResponseBase): Observable<void> {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n resetAllFilters(pResetAllFiltersRequest: ResetAllFiltersRequest): Observable<void> {\r\n let url_ = this.baseUrl + \"/api/fabrikanten/resetallfilters\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(pResetAllFiltersRequest);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processResetAllFilters(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processResetAllFilters(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable<void>;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable<void>;\r\n }));\r\n }\r\n\r\n protected processResetAllFilters(response: HttpResponseBase): Observable<void> {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n resetAllCategories(pResetAllCategoriesRequest: ResetAllCategoriesRequest): Observable<void> {\r\n let url_ = this.baseUrl + \"/api/fabrikanten/resetallcategories\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(pResetAllCategoriesRequest);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processResetAllCategories(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processResetAllCategories(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable<void>;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable<void>;\r\n }));\r\n }\r\n\r\n protected processResetAllCategories(response: HttpResponseBase): Observable<void> {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n selectProduct(pSelectProductRequest: SelectProductRequest): Observable<void> {\r\n let url_ = this.baseUrl + \"/api/fabrikanten/selectproduct\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(pSelectProductRequest);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processSelectProduct(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processSelectProduct(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable<void>;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable<void>;\r\n }));\r\n }\r\n\r\n protected processSelectProduct(response: HttpResponseBase): Observable<void> {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n removeProductSelection(pRemoveProductSelectionRequest: RemoveProductSelectionRequest): Observable<void> {\r\n let url_ = this.baseUrl + \"/api/fabrikanten/removeproductselection\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(pRemoveProductSelectionRequest);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processRemoveProductSelection(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processRemoveProductSelection(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable<void>;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable<void>;\r\n }));\r\n }\r\n\r\n protected processRemoveProductSelection(response: HttpResponseBase): Observable<void> {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n}\r\n\r\n@Injectable()\r\nexport class FiltersApiClient {\r\n private http: HttpClient;\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\r\n this.http = http;\r\n this.baseUrl = baseUrl !== undefined && baseUrl !== null ? baseUrl : \"\";\r\n }\r\n\r\n getFiltersViewModel(): Observable<FiltersViewModel> {\r\n let url_ = this.baseUrl + \"/api/filters/getfiltersviewmodel\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetFiltersViewModel(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetFiltersViewModel(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable<FiltersViewModel>;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable<FiltersViewModel>;\r\n }));\r\n }\r\n\r\n protected processGetFiltersViewModel(response: HttpResponseBase): Observable<FiltersViewModel> {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = FiltersViewModel.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n getRangeInputsViewModel(): Observable<RangeInputsViewModel> {\r\n let url_ = this.baseUrl + \"/api/filters/getrangeinputsviewmodel\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetRangeInputsViewModel(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetRangeInputsViewModel(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable<RangeInputsViewModel>;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable<RangeInputsViewModel>;\r\n }));\r\n }\r\n\r\n protected processGetRangeInputsViewModel(response: HttpResponseBase): Observable<RangeInputsViewModel> {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = RangeInputsViewModel.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n createFilter(pCreateFilterRequest: CreateFilterRequest): Observable<CreateFilterResponse> {\r\n let url_ = this.baseUrl + \"/api/filters/createfilter\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(pCreateFilterRequest);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processCreateFilter(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processCreateFilter(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable<CreateFilterResponse>;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable<CreateFilterResponse>;\r\n }));\r\n }\r\n\r\n protected processCreateFilter(response: HttpResponseBase): Observable<CreateFilterResponse> {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = CreateFilterResponse.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n createFilterOption(pCreateFilterOptionRequest: CreateFilterOptionRequest): Observable<CreateFilterOptionResponse> {\r\n let url_ = this.baseUrl + \"/api/filters/createfilteroption\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(pCreateFilterOptionRequest);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processCreateFilterOption(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processCreateFilterOption(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable<CreateFilterOptionResponse>;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable<CreateFilterOptionResponse>;\r\n }));\r\n }\r\n\r\n protected processCreateFilterOption(response: HttpResponseBase): Observable<CreateFilterOptionResponse> {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = CreateFilterOptionResponse.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n}\r\n\r\n@Injectable()\r\nexport class ImportApiClient {\r\n private http: HttpClient;\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\r\n this.http = http;\r\n this.baseUrl = baseUrl !== undefined && baseUrl !== null ? baseUrl : \"\";\r\n }\r\n\r\n getBCBImportSetsViewModel(): Observable<BCBImportSetsViewModel> {\r\n let url_ = this.baseUrl + \"/api/import/getbcbimportsetsviewmodel\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetBCBImportSetsViewModel(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetBCBImportSetsViewModel(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable<BCBImportSetsViewModel>;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable<BCBImportSetsViewModel>;\r\n }));\r\n }\r\n\r\n protected processGetBCBImportSetsViewModel(response: HttpResponseBase): Observable<BCBImportSetsViewModel> {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = BCBImportSetsViewModel.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n openBCBProduct(pBCBImportOpenRequest: BCBImportOpenRequest): Observable<BCBImportOpenResponse> {\r\n let url_ = this.baseUrl + \"/api/import/openbcbproduct\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(pBCBImportOpenRequest);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processOpenBCBProduct(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processOpenBCBProduct(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable<BCBImportOpenResponse>;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable<BCBImportOpenResponse>;\r\n }));\r\n }\r\n\r\n protected processOpenBCBProduct(response: HttpResponseBase): Observable<BCBImportOpenResponse> {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = BCBImportOpenResponse.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n openEBO(pBCBImportOpenTempRequest: BCBImportOpenTempRequest): Observable<BCBImportOpenResponse> {\r\n let url_ = this.baseUrl + \"/api/import/openebo\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(pBCBImportOpenTempRequest);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processOpenEBO(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processOpenEBO(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable<BCBImportOpenResponse>;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable<BCBImportOpenResponse>;\r\n }));\r\n }\r\n\r\n protected processOpenEBO(response: HttpResponseBase): Observable<BCBImportOpenResponse> {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = BCBImportOpenResponse.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n importBCBProduct(pBCBImportProductRequest: BCBImportProductRequest): Observable<BCBImportProductResponse> {\r\n let url_ = this.baseUrl + \"/api/import/importbcbproduct\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(pBCBImportProductRequest);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processImportBCBProduct(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processImportBCBProduct(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable<BCBImportProductResponse>;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable<BCBImportProductResponse>;\r\n }));\r\n }\r\n\r\n protected processImportBCBProduct(response: HttpResponseBase): Observable<BCBImportProductResponse> {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = BCBImportProductResponse.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n saveImportSet(pSaveImportSetRequest: SaveImportSetRequest): Observable<void> {\r\n let url_ = this.baseUrl + \"/api/import/saveimportset\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(pSaveImportSetRequest);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processSaveImportSet(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processSaveImportSet(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable<void>;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable<void>;\r\n }));\r\n }\r\n\r\n protected processSaveImportSet(response: HttpResponseBase): Observable<void> {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n changeImportSet(pChangeImportSetRequest: ChangeImportSetRequest): Observable<void> {\r\n let url_ = this.baseUrl + \"/api/import/changeimportset\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(pChangeImportSetRequest);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processChangeImportSet(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processChangeImportSet(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable<void>;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable<void>;\r\n }));\r\n }\r\n\r\n protected processChangeImportSet(response: HttpResponseBase): Observable<void> {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n}\r\n\r\n@Injectable()\r\nexport class ProductsApiClient {\r\n private http: HttpClient;\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\r\n this.http = http;\r\n this.baseUrl = baseUrl !== undefined && baseUrl !== null ? baseUrl : \"\";\r\n }\r\n\r\n getProductsViewModel(pProductsViewModelRequest: ProductsViewModelRequest): Observable<ProductsViewModel> {\r\n let url_ = this.baseUrl + \"/api/products/getproductsviewmodel\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(pProductsViewModelRequest);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetProductsViewModel(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetProductsViewModel(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable<ProductsViewModel>;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable<ProductsViewModel>;\r\n }));\r\n }\r\n\r\n protected processGetProductsViewModel(response: HttpResponseBase): Observable<ProductsViewModel> {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = ProductsViewModel.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n getProductViewModel(pGetProductRequest: GetProductRequest): Observable<ProductViewModel> {\r\n let url_ = this.baseUrl + \"/api/products/getproductviewmodel\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(pGetProductRequest);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetProductViewModel(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetProductViewModel(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable<ProductViewModel>;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable<ProductViewModel>;\r\n }));\r\n }\r\n\r\n protected processGetProductViewModel(response: HttpResponseBase): Observable<ProductViewModel> {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = ProductViewModel.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n saveProduct(pSaveProductViewModel: SaveProductViewModel): Observable<void> {\r\n let url_ = this.baseUrl + \"/api/products/saveproduct\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(pSaveProductViewModel);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processSaveProduct(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processSaveProduct(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable<void>;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable<void>;\r\n }));\r\n }\r\n\r\n protected processSaveProduct(response: HttpResponseBase): Observable<void> {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n resetImport(pResetImportRequestModel: ResetImportRequestModel): Observable<void> {\r\n let url_ = this.baseUrl + \"/api/products/resetimport\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(pResetImportRequestModel);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processResetImport(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processResetImport(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable<void>;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable<void>;\r\n }));\r\n }\r\n\r\n protected processResetImport(response: HttpResponseBase): Observable<void> {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n cleanUp(): Observable<CleanUpResponseModel> {\r\n let url_ = this.baseUrl + \"/api/products/cleanup\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processCleanUp(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processCleanUp(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable<CleanUpResponseModel>;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable<CleanUpResponseModel>;\r\n }));\r\n }\r\n\r\n protected processCleanUp(response: HttpResponseBase): Observable<CleanUpResponseModel> {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = CleanUpResponseModel.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n connectBCBEigenschapOptieFilterOptionPreview(pConnectEigenschapOptieRequest: ConnectEigenschapOptieRequest): Observable<ConnectEigenschapOptieResponse> {\r\n let url_ = this.baseUrl + \"/api/products/connectbcbeigenschapoptiefilteroptionpreview\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(pConnectEigenschapOptieRequest);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processConnectBCBEigenschapOptieFilterOptionPreview(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processConnectBCBEigenschapOptieFilterOptionPreview(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable<ConnectEigenschapOptieResponse>;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable<ConnectEigenschapOptieResponse>;\r\n }));\r\n }\r\n\r\n protected processConnectBCBEigenschapOptieFilterOptionPreview(response: HttpResponseBase): Observable<ConnectEigenschapOptieResponse> {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = ConnectEigenschapOptieResponse.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n connectBCBEigenschapOptieFilterOption(pConnectEigenschapOptieRequest: ConnectEigenschapOptieRequest): Observable<void> {\r\n let url_ = this.baseUrl + \"/api/products/connectbcbeigenschapoptiefilteroption\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(pConnectEigenschapOptieRequest);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processConnectBCBEigenschapOptieFilterOption(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processConnectBCBEigenschapOptieFilterOption(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable<void>;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable<void>;\r\n }));\r\n }\r\n\r\n protected processConnectBCBEigenschapOptieFilterOption(response: HttpResponseBase): Observable<void> {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n ignoreBCBEigenschapOptieFilterOption(pConnectEigenschapOptieRequest: ConnectEigenschapOptieRequest): Observable<void> {\r\n let url_ = this.baseUrl + \"/api/products/ignorebcbeigenschapoptiefilteroption\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(pConnectEigenschapOptieRequest);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processIgnoreBCBEigenschapOptieFilterOption(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processIgnoreBCBEigenschapOptieFilterOption(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable<void>;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable<void>;\r\n }));\r\n }\r\n\r\n protected processIgnoreBCBEigenschapOptieFilterOption(response: HttpResponseBase): Observable<void> {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n connectBCBOpbouwOptieFilterOption(pConnectOpbouwOptieRequest: ConnectOpbouwOptieRequest): Observable<void> {\r\n let url_ = this.baseUrl + \"/api/products/connectbcbopbouwoptiefilteroption\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(pConnectOpbouwOptieRequest);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processConnectBCBOpbouwOptieFilterOption(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processConnectBCBOpbouwOptieFilterOption(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable<void>;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable<void>;\r\n }));\r\n }\r\n\r\n protected processConnectBCBOpbouwOptieFilterOption(response: HttpResponseBase): Observable<void> {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n ignoreBCBOpbouwOptieFilterOption(pConnectOpbouwOptieRequest: IgnoreOpbouwOptieRequest): Observable<void> {\r\n let url_ = this.baseUrl + \"/api/products/ignorebcbopbouwoptiefilteroption\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(pConnectOpbouwOptieRequest);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processIgnoreBCBOpbouwOptieFilterOption(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processIgnoreBCBOpbouwOptieFilterOption(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable<void>;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable<void>;\r\n }));\r\n }\r\n\r\n protected processIgnoreBCBOpbouwOptieFilterOption(response: HttpResponseBase): Observable<void> {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n removeBCBOpbouwOptieFilterOption(pConnectOpbouwOptieRequest: RemoveOpbouwOptieRequest): Observable<void> {\r\n let url_ = this.baseUrl + \"/api/products/removebcbopbouwoptiefilteroption\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(pConnectOpbouwOptieRequest);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processRemoveBCBOpbouwOptieFilterOption(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processRemoveBCBOpbouwOptieFilterOption(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable<void>;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable<void>;\r\n }));\r\n }\r\n\r\n protected processRemoveBCBOpbouwOptieFilterOption(response: HttpResponseBase): Observable<void> {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n connectBCBEigenschapCategory(pConnectBCBEigenschapRequest: ConnectBCBEigenschapRequest): Observable<void> {\r\n let url_ = this.baseUrl + \"/api/products/connectbcbeigenschapcategory\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(pConnectBCBEigenschapRequest);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processConnectBCBEigenschapCategory(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processConnectBCBEigenschapCategory(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable<void>;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable<void>;\r\n }));\r\n }\r\n\r\n protected processConnectBCBEigenschapCategory(response: HttpResponseBase): Observable<void> {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n connectBCBEigenschapFilter(pConnectBCBEigenschapRequest: ConnectBCBEigenschapRequest): Observable<void> {\r\n let url_ = this.baseUrl + \"/api/products/connectbcbeigenschapfilter\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(pConnectBCBEigenschapRequest);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processConnectBCBEigenschapFilter(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processConnectBCBEigenschapFilter(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable<void>;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable<void>;\r\n }));\r\n }\r\n\r\n protected processConnectBCBEigenschapFilter(response: HttpResponseBase): Observable<void> {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n connectManyName(pConnectManyNameRequest: ConnectManyNameRequest): Observable<ConnectManyNameResponse> {\r\n let url_ = this.baseUrl + \"/api/products/connectmanyname\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(pConnectManyNameRequest);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processConnectManyName(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processConnectManyName(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable<ConnectManyNameResponse>;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable<ConnectManyNameResponse>;\r\n }));\r\n }\r\n\r\n protected processConnectManyName(response: HttpResponseBase): Observable<ConnectManyNameResponse> {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = ConnectManyNameResponse.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n connectManyNamePreview(pConnectManyPreviewRequest: ConnectManyPreviewRequest): Observable<ConnectManyPreviewResponse> {\r\n let url_ = this.baseUrl + \"/api/products/connectmanypreview\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(pConnectManyPreviewRequest);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processConnectManyNamePreview(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processConnectManyNamePreview(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable<ConnectManyPreviewResponse>;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable<ConnectManyPreviewResponse>;\r\n }));\r\n }\r\n\r\n protected processConnectManyNamePreview(response: HttpResponseBase): Observable<ConnectManyPreviewResponse> {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = ConnectManyPreviewResponse.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n connectManyEBO(pConnectManyEBORequest: ConnectManyEBORequest): Observable<void> {\r\n let url_ = this.baseUrl + \"/api/products/connectmanyebo\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(pConnectManyEBORequest);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processConnectManyEBO(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processConnectManyEBO(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable<void>;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable<void>;\r\n }));\r\n }\r\n\r\n protected processConnectManyEBO(response: HttpResponseBase): Observable<void> {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n connectManyEBOPreview(pConnectManyEBORequest: ConnectManyEBORequest): Observable<ConnectManyPreviewResponse> {\r\n let url_ = this.baseUrl + \"/api/products/connectmanyebopreview\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(pConnectManyEBORequest);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processConnectManyEBOPreview(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processConnectManyEBOPreview(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable<ConnectManyPreviewResponse>;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable<ConnectManyPreviewResponse>;\r\n }));\r\n }\r\n\r\n protected processConnectManyEBOPreview(response: HttpResponseBase): Observable<ConnectManyPreviewResponse> {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = ConnectManyPreviewResponse.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n connectManyEBODO(pConnectManyEBODORequest: ConnectManyEBODORequest): Observable<void> {\r\n let url_ = this.baseUrl + \"/api/products/connectmanyebodo\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(pConnectManyEBODORequest);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processConnectManyEBODO(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processConnectManyEBODO(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable<void>;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable<void>;\r\n }));\r\n }\r\n\r\n protected processConnectManyEBODO(response: HttpResponseBase): Observable<void> {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n connectManyEBODOPreview(pConnectManyEBODORequest: ConnectManyEBODORequest): Observable<ConnectManyPreviewResponse> {\r\n let url_ = this.baseUrl + \"/api/products/connectmanyebodopreview\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(pConnectManyEBODORequest);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processConnectManyEBODOPreview(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processConnectManyEBODOPreview(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable<ConnectManyPreviewResponse>;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable<ConnectManyPreviewResponse>;\r\n }));\r\n }\r\n\r\n protected processConnectManyEBODOPreview(response: HttpResponseBase): Observable<ConnectManyPreviewResponse> {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = ConnectManyPreviewResponse.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n connectBCBEigenschapRangeInputPreview(pConnectBCBEigenschapRangeInputRequest: ConnectBCBEigenschapRangeInputRequest): Observable<ConnectBCBEigenschapRangeInputResponse> {\r\n let url_ = this.baseUrl + \"/api/products/connectbcbeigenschaprangeinputpreview\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(pConnectBCBEigenschapRangeInputRequest);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processConnectBCBEigenschapRangeInputPreview(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processConnectBCBEigenschapRangeInputPreview(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable<ConnectBCBEigenschapRangeInputResponse>;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable<ConnectBCBEigenschapRangeInputResponse>;\r\n }));\r\n }\r\n\r\n protected processConnectBCBEigenschapRangeInputPreview(response: HttpResponseBase): Observable<ConnectBCBEigenschapRangeInputResponse> {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = ConnectBCBEigenschapRangeInputResponse.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n connectBCBEigenschapRangeInput(pConnectBCBEigenschapRangeInputRequest: ConnectBCBEigenschapRangeInputRequest): Observable<void> {\r\n let url_ = this.baseUrl + \"/api/products/connectbcbeigenschaprangeinput\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(pConnectBCBEigenschapRangeInputRequest);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processConnectBCBEigenschapRangeInput(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processConnectBCBEigenschapRangeInput(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable<void>;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable<void>;\r\n }));\r\n }\r\n\r\n protected processConnectBCBEigenschapRangeInput(response: HttpResponseBase): Observable<void> {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n}\r\n\r\n@Injectable()\r\nexport class ProjectSettingApiClient {\r\n private http: HttpClient;\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\r\n this.http = http;\r\n this.baseUrl = baseUrl !== undefined && baseUrl !== null ? baseUrl : \"\";\r\n }\r\n\r\n getProjectSettingsViewModel(): Observable<ProjectSettingsViewModel> {\r\n let url_ = this.baseUrl + \"/api/projectsettings/getprojectsettingsviewmodel\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetProjectSettingsViewModel(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetProjectSettingsViewModel(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable<ProjectSettingsViewModel>;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable<ProjectSettingsViewModel>;\r\n }));\r\n }\r\n\r\n protected processGetProjectSettingsViewModel(response: HttpResponseBase): Observable<ProjectSettingsViewModel> {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = ProjectSettingsViewModel.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n setProjectSettingModel(pSetProjectSettingRequestModel: SetProjectSettingRequestModel): Observable<SetProjectSettingResponseModel> {\r\n let url_ = this.baseUrl + \"/api/projectsettings/setprojectsettingmodel\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(pSetProjectSettingRequestModel);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processSetProjectSettingModel(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processSetProjectSettingModel(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable<SetProjectSettingResponseModel>;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable<SetProjectSettingResponseModel>;\r\n }));\r\n }\r\n\r\n protected processSetProjectSettingModel(response: HttpResponseBase): Observable<SetProjectSettingResponseModel> {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = SetProjectSettingResponseModel.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n}\r\n\r\n@Injectable()\r\nexport class SearchProductsApiClient {\r\n private http: HttpClient;\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\r\n this.http = http;\r\n this.baseUrl = baseUrl !== undefined && baseUrl !== null ? baseUrl : \"\";\r\n }\r\n\r\n getSearchResults(pSearchProductsRequestModel: SearchProductsRequestModel): Observable<SearchProductsResponseModel> {\r\n let url_ = this.baseUrl + \"/api/searchproducts/getsearchresults\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(pSearchProductsRequestModel);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetSearchResults(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetSearchResults(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable<SearchProductsResponseModel>;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable<SearchProductsResponseModel>;\r\n }));\r\n }\r\n\r\n protected processGetSearchResults(response: HttpResponseBase): Observable<SearchProductsResponseModel> {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = SearchProductsResponseModel.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n addNewProduct(pNewProductRequestModel: NewProductRequestModel): Observable<NewProductResponseModel> {\r\n let url_ = this.baseUrl + \"/api/searchproducts/addnewproduct\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(pNewProductRequestModel);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processAddNewProduct(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processAddNewProduct(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable<NewProductResponseModel>;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable<NewProductResponseModel>;\r\n }));\r\n }\r\n\r\n protected processAddNewProduct(response: HttpResponseBase): Observable<NewProductResponseModel> {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = NewProductResponseModel.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n getProductsViewModel(): Observable<GetProductsViewModel> {\r\n let url_ = this.baseUrl + \"/api/searchproducts/getproducts\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetProductsViewModel(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetProductsViewModel(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable<GetProductsViewModel>;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable<GetProductsViewModel>;\r\n }));\r\n }\r\n\r\n protected processGetProductsViewModel(response: HttpResponseBase): Observable<GetProductsViewModel> {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = GetProductsViewModel.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n koppelProducts(pKoppelProductsRequestModel: KoppelProductsRequestModel): Observable<void> {\r\n let url_ = this.baseUrl + \"/api/searchproducts/koppelproducts\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(pKoppelProductsRequestModel);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processKoppelProducts(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processKoppelProducts(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable<void>;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable<void>;\r\n }));\r\n }\r\n\r\n protected processKoppelProducts(response: HttpResponseBase): Observable<void> {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n koppelProductsKenmerk(pKoppelProductsRequestModel: KoppelProductsRequestModel): Observable<void> {\r\n let url_ = this.baseUrl + \"/api/searchproducts/koppelproductskenmerk\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(pKoppelProductsRequestModel);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processKoppelProductsKenmerk(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processKoppelProductsKenmerk(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable<void>;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable<void>;\r\n }));\r\n }\r\n\r\n protected processKoppelProductsKenmerk(response: HttpResponseBase): Observable<void> {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n}\r\n\r\n@Injectable()\r\nexport class SecurityApiClient {\r\n private http: HttpClient;\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\r\n this.http = http;\r\n this.baseUrl = baseUrl !== undefined && baseUrl !== null ? baseUrl : \"\";\r\n }\r\n\r\n authenticateUser(pLoginRequestModel: LoginRequestModel): Observable<LoginResponseModel> {\r\n let url_ = this.baseUrl + \"/api/security/authenticateuser\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(pLoginRequestModel);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processAuthenticateUser(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processAuthenticateUser(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable<LoginResponseModel>;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable<LoginResponseModel>;\r\n }));\r\n }\r\n\r\n protected processAuthenticateUser(response: HttpResponseBase): Observable<LoginResponseModel> {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = LoginResponseModel.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n getLoginIPResponseModel(): Observable<LoginIPResponseModel> {\r\n let url_ = this.baseUrl + \"/api/security/getloginipresponsemodel\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetLoginIPResponseModel(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetLoginIPResponseModel(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable<LoginIPResponseModel>;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable<LoginIPResponseModel>;\r\n }));\r\n }\r\n\r\n protected processGetLoginIPResponseModel(response: HttpResponseBase): Observable<LoginIPResponseModel> {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = LoginIPResponseModel.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n}\r\n\r\n@Injectable()\r\nexport class TranslateApiClient {\r\n private http: HttpClient;\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\r\n this.http = http;\r\n this.baseUrl = baseUrl !== undefined && baseUrl !== null ? baseUrl : \"\";\r\n }\r\n\r\n getLanguagesViewModel(): Observable<LanguagesViewModel> {\r\n let url_ = this.baseUrl + \"/api/translate/getlanguagesviewmodel\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetLanguagesViewModel(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetLanguagesViewModel(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable<LanguagesViewModel>;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable<LanguagesViewModel>;\r\n }));\r\n }\r\n\r\n protected processGetLanguagesViewModel(response: HttpResponseBase): Observable<LanguagesViewModel> {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = LanguagesViewModel.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n createLanguage(pCreateLanguageRequest: CreateLanguageRequest): Observable<void> {\r\n let url_ = this.baseUrl + \"/api/translate/createlanguage\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(pCreateLanguageRequest);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processCreateLanguage(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processCreateLanguage(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable<void>;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable<void>;\r\n }));\r\n }\r\n\r\n protected processCreateLanguage(response: HttpResponseBase): Observable<void> {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n createExport(pCreateExportRequest: CreateExportRequest): Observable<CreateExportResponse> {\r\n let url_ = this.baseUrl + \"/api/translate/createexport\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(pCreateExportRequest);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processCreateExport(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processCreateExport(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable<CreateExportResponse>;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable<CreateExportResponse>;\r\n }));\r\n }\r\n\r\n protected processCreateExport(response: HttpResponseBase): Observable<CreateExportResponse> {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = CreateExportResponse.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n readExport(pReadExportRequest: ReadExportRequest): Observable<void> {\r\n let url_ = this.baseUrl + \"/api/translate/readexport\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(pReadExportRequest);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processReadExport(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processReadExport(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable<void>;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable<void>;\r\n }));\r\n }\r\n\r\n protected processReadExport(response: HttpResponseBase): Observable<void> {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return _observableOf(null as any);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n}\r\n\r\nexport class CategoriesViewModel implements ICategoriesViewModel {\r\n categories?: CategoryViewModel[] | undefined;\r\n\r\n constructor(data?: ICategoriesViewModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n if (Array.isArray(_data[\"categories\"])) {\r\n this.categories = [] as any;\r\n for (let item of _data[\"categories\"])\r\n this.categories!.push(CategoryViewModel.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): CategoriesViewModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new CategoriesViewModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n if (Array.isArray(this.categories)) {\r\n data[\"categories\"] = [];\r\n for (let item of this.categories)\r\n data[\"categories\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ICategoriesViewModel {\r\n categories?: CategoryViewModel[] | undefined;\r\n}\r\n\r\nexport class CategoryViewModel implements ICategoryViewModel {\r\n id!: number;\r\n name?: string | undefined;\r\n layer!: number;\r\n position!: number;\r\n imagePath?: string | undefined;\r\n\r\n constructor(data?: ICategoryViewModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.name = _data[\"name\"];\r\n this.layer = _data[\"layer\"];\r\n this.position = _data[\"position\"];\r\n this.imagePath = _data[\"imagePath\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): CategoryViewModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new CategoryViewModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"name\"] = this.name;\r\n data[\"layer\"] = this.layer;\r\n data[\"position\"] = this.position;\r\n data[\"imagePath\"] = this.imagePath;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ICategoryViewModel {\r\n id: number;\r\n name?: string | undefined;\r\n layer: number;\r\n position: number;\r\n imagePath?: string | undefined;\r\n}\r\n\r\nexport class CategoriesOverviewViewModel implements ICategoriesOverviewViewModel {\r\n categories?: CategoriesOverviewCategorieViewModel[] | undefined;\r\n products?: ProductViewModel[] | undefined;\r\n\r\n constructor(data?: ICategoriesOverviewViewModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n if (Array.isArray(_data[\"categories\"])) {\r\n this.categories = [] as any;\r\n for (let item of _data[\"categories\"])\r\n this.categories!.push(CategoriesOverviewCategorieViewModel.fromJS(item));\r\n }\r\n if (Array.isArray(_data[\"products\"])) {\r\n this.products = [] as any;\r\n for (let item of _data[\"products\"])\r\n this.products!.push(ProductViewModel.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): CategoriesOverviewViewModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new CategoriesOverviewViewModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n if (Array.isArray(this.categories)) {\r\n data[\"categories\"] = [];\r\n for (let item of this.categories)\r\n data[\"categories\"].push(item.toJSON());\r\n }\r\n if (Array.isArray(this.products)) {\r\n data[\"products\"] = [];\r\n for (let item of this.products)\r\n data[\"products\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ICategoriesOverviewViewModel {\r\n categories?: CategoriesOverviewCategorieViewModel[] | undefined;\r\n products?: ProductViewModel[] | undefined;\r\n}\r\n\r\nexport class CategoriesOverviewCategorieViewModel implements ICategoriesOverviewCategorieViewModel {\r\n id!: number;\r\n layer!: number;\r\n name?: string | undefined;\r\n subCategories?: CategoriesOverviewCategorieViewModel[] | undefined;\r\n products?: ProductViewModel[] | undefined;\r\n\r\n constructor(data?: ICategoriesOverviewCategorieViewModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.layer = _data[\"layer\"];\r\n this.name = _data[\"name\"];\r\n if (Array.isArray(_data[\"subCategories\"])) {\r\n this.subCategories = [] as any;\r\n for (let item of _data[\"subCategories\"])\r\n this.subCategories!.push(CategoriesOverviewCategorieViewModel.fromJS(item));\r\n }\r\n if (Array.isArray(_data[\"products\"])) {\r\n this.products = [] as any;\r\n for (let item of _data[\"products\"])\r\n this.products!.push(ProductViewModel.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): CategoriesOverviewCategorieViewModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new CategoriesOverviewCategorieViewModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"layer\"] = this.layer;\r\n data[\"name\"] = this.name;\r\n if (Array.isArray(this.subCategories)) {\r\n data[\"subCategories\"] = [];\r\n for (let item of this.subCategories)\r\n data[\"subCategories\"].push(item.toJSON());\r\n }\r\n if (Array.isArray(this.products)) {\r\n data[\"products\"] = [];\r\n for (let item of this.products)\r\n data[\"products\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ICategoriesOverviewCategorieViewModel {\r\n id: number;\r\n layer: number;\r\n name?: string | undefined;\r\n subCategories?: CategoriesOverviewCategorieViewModel[] | undefined;\r\n products?: ProductViewModel[] | undefined;\r\n}\r\n\r\nexport class ProductViewModel implements IProductViewModel {\r\n id!: number;\r\n name?: string | undefined;\r\n position!: number;\r\n importSetId!: number;\r\n connected!: boolean;\r\n imported!: boolean;\r\n importStatus?: string | undefined;\r\n bcbProductViewModels?: BCBProductViewModel[] | undefined;\r\n\r\n constructor(data?: IProductViewModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.name = _data[\"name\"];\r\n this.position = _data[\"position\"];\r\n this.importSetId = _data[\"importSetId\"];\r\n this.connected = _data[\"connected\"];\r\n this.imported = _data[\"imported\"];\r\n this.importStatus = _data[\"importStatus\"];\r\n if (Array.isArray(_data[\"bcbProductViewModels\"])) {\r\n this.bcbProductViewModels = [] as any;\r\n for (let item of _data[\"bcbProductViewModels\"])\r\n this.bcbProductViewModels!.push(BCBProductViewModel.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): ProductViewModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ProductViewModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"name\"] = this.name;\r\n data[\"position\"] = this.position;\r\n data[\"importSetId\"] = this.importSetId;\r\n data[\"connected\"] = this.connected;\r\n data[\"imported\"] = this.imported;\r\n data[\"importStatus\"] = this.importStatus;\r\n if (Array.isArray(this.bcbProductViewModels)) {\r\n data[\"bcbProductViewModels\"] = [];\r\n for (let item of this.bcbProductViewModels)\r\n data[\"bcbProductViewModels\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IProductViewModel {\r\n id: number;\r\n name?: string | undefined;\r\n position: number;\r\n importSetId: number;\r\n connected: boolean;\r\n imported: boolean;\r\n importStatus?: string | undefined;\r\n bcbProductViewModels?: BCBProductViewModel[] | undefined;\r\n}\r\n\r\nexport class BCBProductViewModel implements IBCBProductViewModel {\r\n id!: number;\r\n productId!: number;\r\n name?: string | undefined;\r\n imported!: boolean;\r\n connected!: boolean;\r\n importStatus?: string | undefined;\r\n bcbeboViewModel?: BCBEBOViewModel | undefined;\r\n\r\n constructor(data?: IBCBProductViewModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.productId = _data[\"productId\"];\r\n this.name = _data[\"name\"];\r\n this.imported = _data[\"imported\"];\r\n this.connected = _data[\"connected\"];\r\n this.importStatus = _data[\"importStatus\"];\r\n this.bcbeboViewModel = _data[\"bcbeboViewModel\"] ? BCBEBOViewModel.fromJS(_data[\"bcbeboViewModel\"]) : <any>undefined;\r\n }\r\n }\r\n\r\n static fromJS(data: any): BCBProductViewModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new BCBProductViewModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"productId\"] = this.productId;\r\n data[\"name\"] = this.name;\r\n data[\"imported\"] = this.imported;\r\n data[\"connected\"] = this.connected;\r\n data[\"importStatus\"] = this.importStatus;\r\n data[\"bcbeboViewModel\"] = this.bcbeboViewModel ? this.bcbeboViewModel.toJSON() : <any>undefined;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IBCBProductViewModel {\r\n id: number;\r\n productId: number;\r\n name?: string | undefined;\r\n imported: boolean;\r\n connected: boolean;\r\n importStatus?: string | undefined;\r\n bcbeboViewModel?: BCBEBOViewModel | undefined;\r\n}\r\n\r\nexport class BCBEBOViewModel implements IBCBEBOViewModel {\r\n id!: number;\r\n name?: string | undefined;\r\n location?: string | undefined;\r\n connected!: boolean;\r\n open!: boolean;\r\n dOs?: BCBEBODOViewModel[] | undefined;\r\n bcbEigenschapViewModels?: BCBEigenschapViewModel[] | undefined;\r\n bcbOpbouwViewModels?: BCBOpbouwViewModel[] | undefined;\r\n\r\n constructor(data?: IBCBEBOViewModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.name = _data[\"name\"];\r\n this.location = _data[\"location\"];\r\n this.connected = _data[\"connected\"];\r\n this.open = _data[\"open\"];\r\n if (Array.isArray(_data[\"dOs\"])) {\r\n this.dOs = [] as any;\r\n for (let item of _data[\"dOs\"])\r\n this.dOs!.push(BCBEBODOViewModel.fromJS(item));\r\n }\r\n if (Array.isArray(_data[\"bcbEigenschapViewModels\"])) {\r\n this.bcbEigenschapViewModels = [] as any;\r\n for (let item of _data[\"bcbEigenschapViewModels\"])\r\n this.bcbEigenschapViewModels!.push(BCBEigenschapViewModel.fromJS(item));\r\n }\r\n if (Array.isArray(_data[\"bcbOpbouwViewModels\"])) {\r\n this.bcbOpbouwViewModels = [] as any;\r\n for (let item of _data[\"bcbOpbouwViewModels\"])\r\n this.bcbOpbouwViewModels!.push(BCBOpbouwViewModel.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): BCBEBOViewModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new BCBEBOViewModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"name\"] = this.name;\r\n data[\"location\"] = this.location;\r\n data[\"connected\"] = this.connected;\r\n data[\"open\"] = this.open;\r\n if (Array.isArray(this.dOs)) {\r\n data[\"dOs\"] = [];\r\n for (let item of this.dOs)\r\n data[\"dOs\"].push(item.toJSON());\r\n }\r\n if (Array.isArray(this.bcbEigenschapViewModels)) {\r\n data[\"bcbEigenschapViewModels\"] = [];\r\n for (let item of this.bcbEigenschapViewModels)\r\n data[\"bcbEigenschapViewModels\"].push(item.toJSON());\r\n }\r\n if (Array.isArray(this.bcbOpbouwViewModels)) {\r\n data[\"bcbOpbouwViewModels\"] = [];\r\n for (let item of this.bcbOpbouwViewModels)\r\n data[\"bcbOpbouwViewModels\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IBCBEBOViewModel {\r\n id: number;\r\n name?: string | undefined;\r\n location?: string | undefined;\r\n connected: boolean;\r\n open: boolean;\r\n dOs?: BCBEBODOViewModel[] | undefined;\r\n bcbEigenschapViewModels?: BCBEigenschapViewModel[] | undefined;\r\n bcbOpbouwViewModels?: BCBOpbouwViewModel[] | undefined;\r\n}\r\n\r\nexport class BCBEBODOViewModel implements IBCBEBODOViewModel {\r\n id!: number;\r\n doType?: string | undefined;\r\n doNaam?: string | undefined;\r\n connected!: boolean;\r\n\r\n constructor(data?: IBCBEBODOViewModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.doType = _data[\"doType\"];\r\n this.doNaam = _data[\"doNaam\"];\r\n this.connected = _data[\"connected\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): BCBEBODOViewModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new BCBEBODOViewModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"doType\"] = this.doType;\r\n data[\"doNaam\"] = this.doNaam;\r\n data[\"connected\"] = this.connected;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IBCBEBODOViewModel {\r\n id: number;\r\n doType?: string | undefined;\r\n doNaam?: string | undefined;\r\n connected: boolean;\r\n}\r\n\r\nexport class BCBEigenschapViewModel implements IBCBEigenschapViewModel {\r\n id!: number;\r\n name?: string | undefined;\r\n connected!: boolean;\r\n open!: boolean;\r\n location?: string | undefined;\r\n opties?: BCBEigenschapOptieViewModel[] | undefined;\r\n bereiken?: BCBEigenschapBereikViewModel[] | undefined;\r\n rangeInputs?: BCBEigenschapRangeInputModel[] | undefined;\r\n\r\n constructor(data?: IBCBEigenschapViewModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.name = _data[\"name\"];\r\n this.connected = _data[\"connected\"];\r\n this.open = _data[\"open\"];\r\n this.location = _data[\"location\"];\r\n if (Array.isArray(_data[\"opties\"])) {\r\n this.opties = [] as any;\r\n for (let item of _data[\"opties\"])\r\n this.opties!.push(BCBEigenschapOptieViewModel.fromJS(item));\r\n }\r\n if (Array.isArray(_data[\"bereiken\"])) {\r\n this.bereiken = [] as any;\r\n for (let item of _data[\"bereiken\"])\r\n this.bereiken!.push(BCBEigenschapBereikViewModel.fromJS(item));\r\n }\r\n if (Array.isArray(_data[\"rangeInputs\"])) {\r\n this.rangeInputs = [] as any;\r\n for (let item of _data[\"rangeInputs\"])\r\n this.rangeInputs!.push(BCBEigenschapRangeInputModel.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): BCBEigenschapViewModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new BCBEigenschapViewModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"name\"] = this.name;\r\n data[\"connected\"] = this.connected;\r\n data[\"open\"] = this.open;\r\n data[\"location\"] = this.location;\r\n if (Array.isArray(this.opties)) {\r\n data[\"opties\"] = [];\r\n for (let item of this.opties)\r\n data[\"opties\"].push(item.toJSON());\r\n }\r\n if (Array.isArray(this.bereiken)) {\r\n data[\"bereiken\"] = [];\r\n for (let item of this.bereiken)\r\n data[\"bereiken\"].push(item.toJSON());\r\n }\r\n if (Array.isArray(this.rangeInputs)) {\r\n data[\"rangeInputs\"] = [];\r\n for (let item of this.rangeInputs)\r\n data[\"rangeInputs\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IBCBEigenschapViewModel {\r\n id: number;\r\n name?: string | undefined;\r\n connected: boolean;\r\n open: boolean;\r\n location?: string | undefined;\r\n opties?: BCBEigenschapOptieViewModel[] | undefined;\r\n bereiken?: BCBEigenschapBereikViewModel[] | undefined;\r\n rangeInputs?: BCBEigenschapRangeInputModel[] | undefined;\r\n}\r\n\r\nexport class BCBEigenschapOptieViewModel implements IBCBEigenschapOptieViewModel {\r\n id!: number;\r\n name?: string | undefined;\r\n ignore!: boolean;\r\n connected!: boolean;\r\n bcbEigenschapOptieFilterOptionViewModels?: BCBEigenschapOptieFilterOptionViewModel[] | undefined;\r\n bcbEigenschapOptieCategoryViewModels?: BCBEigenschapOptieCategoryViewModel[] | undefined;\r\n\r\n constructor(data?: IBCBEigenschapOptieViewModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.name = _data[\"name\"];\r\n this.ignore = _data[\"ignore\"];\r\n this.connected = _data[\"connected\"];\r\n if (Array.isArray(_data[\"bcbEigenschapOptieFilterOptionViewModels\"])) {\r\n this.bcbEigenschapOptieFilterOptionViewModels = [] as any;\r\n for (let item of _data[\"bcbEigenschapOptieFilterOptionViewModels\"])\r\n this.bcbEigenschapOptieFilterOptionViewModels!.push(BCBEigenschapOptieFilterOptionViewModel.fromJS(item));\r\n }\r\n if (Array.isArray(_data[\"bcbEigenschapOptieCategoryViewModels\"])) {\r\n this.bcbEigenschapOptieCategoryViewModels = [] as any;\r\n for (let item of _data[\"bcbEigenschapOptieCategoryViewModels\"])\r\n this.bcbEigenschapOptieCategoryViewModels!.push(BCBEigenschapOptieCategoryViewModel.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): BCBEigenschapOptieViewModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new BCBEigenschapOptieViewModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"name\"] = this.name;\r\n data[\"ignore\"] = this.ignore;\r\n data[\"connected\"] = this.connected;\r\n if (Array.isArray(this.bcbEigenschapOptieFilterOptionViewModels)) {\r\n data[\"bcbEigenschapOptieFilterOptionViewModels\"] = [];\r\n for (let item of this.bcbEigenschapOptieFilterOptionViewModels)\r\n data[\"bcbEigenschapOptieFilterOptionViewModels\"].push(item.toJSON());\r\n }\r\n if (Array.isArray(this.bcbEigenschapOptieCategoryViewModels)) {\r\n data[\"bcbEigenschapOptieCategoryViewModels\"] = [];\r\n for (let item of this.bcbEigenschapOptieCategoryViewModels)\r\n data[\"bcbEigenschapOptieCategoryViewModels\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IBCBEigenschapOptieViewModel {\r\n id: number;\r\n name?: string | undefined;\r\n ignore: boolean;\r\n connected: boolean;\r\n bcbEigenschapOptieFilterOptionViewModels?: BCBEigenschapOptieFilterOptionViewModel[] | undefined;\r\n bcbEigenschapOptieCategoryViewModels?: BCBEigenschapOptieCategoryViewModel[] | undefined;\r\n}\r\n\r\nexport class BCBEigenschapOptieFilterOptionViewModel implements IBCBEigenschapOptieFilterOptionViewModel {\r\n id!: number;\r\n location?: string | undefined;\r\n filterOptionViewModel?: FilterOptionViewModel | undefined;\r\n\r\n constructor(data?: IBCBEigenschapOptieFilterOptionViewModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.location = _data[\"location\"];\r\n this.filterOptionViewModel = _data[\"filterOptionViewModel\"] ? FilterOptionViewModel.fromJS(_data[\"filterOptionViewModel\"]) : <any>undefined;\r\n }\r\n }\r\n\r\n static fromJS(data: any): BCBEigenschapOptieFilterOptionViewModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new BCBEigenschapOptieFilterOptionViewModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"location\"] = this.location;\r\n data[\"filterOptionViewModel\"] = this.filterOptionViewModel ? this.filterOptionViewModel.toJSON() : <any>undefined;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IBCBEigenschapOptieFilterOptionViewModel {\r\n id: number;\r\n location?: string | undefined;\r\n filterOptionViewModel?: FilterOptionViewModel | undefined;\r\n}\r\n\r\nexport class FilterOptionViewModel implements IFilterOptionViewModel {\r\n id!: number;\r\n name?: string | undefined;\r\n colour?: string | undefined;\r\n filterName?: string | undefined;\r\n\r\n constructor(data?: IFilterOptionViewModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.name = _data[\"name\"];\r\n this.colour = _data[\"colour\"];\r\n this.filterName = _data[\"filterName\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): FilterOptionViewModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new FilterOptionViewModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"name\"] = this.name;\r\n data[\"colour\"] = this.colour;\r\n data[\"filterName\"] = this.filterName;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IFilterOptionViewModel {\r\n id: number;\r\n name?: string | undefined;\r\n colour?: string | undefined;\r\n filterName?: string | undefined;\r\n}\r\n\r\nexport class BCBEigenschapOptieCategoryViewModel implements IBCBEigenschapOptieCategoryViewModel {\r\n id!: number;\r\n location?: string | undefined;\r\n categoryViewModel?: CategoryViewModel | undefined;\r\n\r\n constructor(data?: IBCBEigenschapOptieCategoryViewModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.location = _data[\"location\"];\r\n this.categoryViewModel = _data[\"categoryViewModel\"] ? CategoryViewModel.fromJS(_data[\"categoryViewModel\"]) : <any>undefined;\r\n }\r\n }\r\n\r\n static fromJS(data: any): BCBEigenschapOptieCategoryViewModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new BCBEigenschapOptieCategoryViewModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"location\"] = this.location;\r\n data[\"categoryViewModel\"] = this.categoryViewModel ? this.categoryViewModel.toJSON() : <any>undefined;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IBCBEigenschapOptieCategoryViewModel {\r\n id: number;\r\n location?: string | undefined;\r\n categoryViewModel?: CategoryViewModel | undefined;\r\n}\r\n\r\nexport class BCBEigenschapBereikViewModel implements IBCBEigenschapBereikViewModel {\r\n id!: number;\r\n typeField?: string | undefined;\r\n minimum!: number;\r\n maximum!: number;\r\n inclusiefMinimum!: boolean;\r\n inclusiefMaximum!: boolean;\r\n\r\n constructor(data?: IBCBEigenschapBereikViewModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.typeField = _data[\"typeField\"];\r\n this.minimum = _data[\"minimum\"];\r\n this.maximum = _data[\"maximum\"];\r\n this.inclusiefMinimum = _data[\"inclusiefMinimum\"];\r\n this.inclusiefMaximum = _data[\"inclusiefMaximum\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): BCBEigenschapBereikViewModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new BCBEigenschapBereikViewModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"typeField\"] = this.typeField;\r\n data[\"minimum\"] = this.minimum;\r\n data[\"maximum\"] = this.maximum;\r\n data[\"inclusiefMinimum\"] = this.inclusiefMinimum;\r\n data[\"inclusiefMaximum\"] = this.inclusiefMaximum;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IBCBEigenschapBereikViewModel {\r\n id: number;\r\n typeField?: string | undefined;\r\n minimum: number;\r\n maximum: number;\r\n inclusiefMinimum: boolean;\r\n inclusiefMaximum: boolean;\r\n}\r\n\r\nexport class BCBEigenschapRangeInputModel implements IBCBEigenschapRangeInputModel {\r\n id!: number;\r\n location?: string | undefined;\r\n rangeInputModel?: RangeInputViewModel | undefined;\r\n\r\n constructor(data?: IBCBEigenschapRangeInputModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.location = _data[\"location\"];\r\n this.rangeInputModel = _data[\"rangeInputModel\"] ? RangeInputViewModel.fromJS(_data[\"rangeInputModel\"]) : <any>undefined;\r\n }\r\n }\r\n\r\n static fromJS(data: any): BCBEigenschapRangeInputModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new BCBEigenschapRangeInputModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"location\"] = this.location;\r\n data[\"rangeInputModel\"] = this.rangeInputModel ? this.rangeInputModel.toJSON() : <any>undefined;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IBCBEigenschapRangeInputModel {\r\n id: number;\r\n location?: string | undefined;\r\n rangeInputModel?: RangeInputViewModel | undefined;\r\n}\r\n\r\nexport class RangeInputViewModel implements IRangeInputViewModel {\r\n id!: number;\r\n name?: string | undefined;\r\n\r\n constructor(data?: IRangeInputViewModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.name = _data[\"name\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): RangeInputViewModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new RangeInputViewModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"name\"] = this.name;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IRangeInputViewModel {\r\n id: number;\r\n name?: string | undefined;\r\n}\r\n\r\nexport class BCBOpbouwViewModel implements IBCBOpbouwViewModel {\r\n id!: number;\r\n name?: string | undefined;\r\n location?: string | undefined;\r\n connected!: boolean;\r\n open!: boolean;\r\n ebos?: BCBEBOViewModel[] | undefined;\r\n\r\n constructor(data?: IBCBOpbouwViewModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.name = _data[\"name\"];\r\n this.location = _data[\"location\"];\r\n this.connected = _data[\"connected\"];\r\n this.open = _data[\"open\"];\r\n if (Array.isArray(_data[\"ebos\"])) {\r\n this.ebos = [] as any;\r\n for (let item of _data[\"ebos\"])\r\n this.ebos!.push(BCBEBOViewModel.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): BCBOpbouwViewModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new BCBOpbouwViewModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"name\"] = this.name;\r\n data[\"location\"] = this.location;\r\n data[\"connected\"] = this.connected;\r\n data[\"open\"] = this.open;\r\n if (Array.isArray(this.ebos)) {\r\n data[\"ebos\"] = [];\r\n for (let item of this.ebos)\r\n data[\"ebos\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IBCBOpbouwViewModel {\r\n id: number;\r\n name?: string | undefined;\r\n location?: string | undefined;\r\n connected: boolean;\r\n open: boolean;\r\n ebos?: BCBEBOViewModel[] | undefined;\r\n}\r\n\r\nexport class CreateCategoryResponse implements ICreateCategoryResponse {\r\n success!: boolean;\r\n id!: number;\r\n\r\n constructor(data?: ICreateCategoryResponse) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.success = _data[\"success\"];\r\n this.id = _data[\"id\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): CreateCategoryResponse {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new CreateCategoryResponse();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"success\"] = this.success;\r\n data[\"id\"] = this.id;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ICreateCategoryResponse {\r\n success: boolean;\r\n id: number;\r\n}\r\n\r\nexport class CreateCategoryRequest implements ICreateCategoryRequest {\r\n name?: string | undefined;\r\n\r\n constructor(data?: ICreateCategoryRequest) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.name = _data[\"name\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): CreateCategoryRequest {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new CreateCategoryRequest();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"name\"] = this.name;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ICreateCategoryRequest {\r\n name?: string | undefined;\r\n}\r\n\r\nexport class EBOKoppelViewModel implements IEBOKoppelViewModel {\r\n eboKoppelTypeViewModels?: EBOKoppelTypeViewModel[] | undefined;\r\n\r\n constructor(data?: IEBOKoppelViewModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n if (Array.isArray(_data[\"eboKoppelTypeViewModels\"])) {\r\n this.eboKoppelTypeViewModels = [] as any;\r\n for (let item of _data[\"eboKoppelTypeViewModels\"])\r\n this.eboKoppelTypeViewModels!.push(EBOKoppelTypeViewModel.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): EBOKoppelViewModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new EBOKoppelViewModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n if (Array.isArray(this.eboKoppelTypeViewModels)) {\r\n data[\"eboKoppelTypeViewModels\"] = [];\r\n for (let item of this.eboKoppelTypeViewModels)\r\n data[\"eboKoppelTypeViewModels\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IEBOKoppelViewModel {\r\n eboKoppelTypeViewModels?: EBOKoppelTypeViewModel[] | undefined;\r\n}\r\n\r\nexport class EBOKoppelTypeViewModel implements IEBOKoppelTypeViewModel {\r\n type?: string | undefined;\r\n namen?: BCBEBODOViewModel[] | undefined;\r\n\r\n constructor(data?: IEBOKoppelTypeViewModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.type = _data[\"type\"];\r\n if (Array.isArray(_data[\"namen\"])) {\r\n this.namen = [] as any;\r\n for (let item of _data[\"namen\"])\r\n this.namen!.push(BCBEBODOViewModel.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): EBOKoppelTypeViewModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new EBOKoppelTypeViewModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"type\"] = this.type;\r\n if (Array.isArray(this.namen)) {\r\n data[\"namen\"] = [];\r\n for (let item of this.namen)\r\n data[\"namen\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IEBOKoppelTypeViewModel {\r\n type?: string | undefined;\r\n namen?: BCBEBODOViewModel[] | undefined;\r\n}\r\n\r\nexport class EBOConnectRequestModel implements IEBOConnectRequestModel {\r\n importSetId!: number;\r\n\r\n constructor(data?: IEBOConnectRequestModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.importSetId = _data[\"importSetId\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): EBOConnectRequestModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new EBOConnectRequestModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"importSetId\"] = this.importSetId;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IEBOConnectRequestModel {\r\n importSetId: number;\r\n}\r\n\r\nexport class KoppelEBOOptieResponse implements IKoppelEBOOptieResponse {\r\n\r\n constructor(data?: IKoppelEBOOptieResponse) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n }\r\n\r\n static fromJS(data: any): KoppelEBOOptieResponse {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new KoppelEBOOptieResponse();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IKoppelEBOOptieResponse {\r\n}\r\n\r\nexport class KoppelEBOOptieRequest implements IKoppelEBOOptieRequest {\r\n bcbImportSetId!: number;\r\n bcbebodoId!: number;\r\n filterOptionId!: number;\r\n\r\n constructor(data?: IKoppelEBOOptieRequest) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.bcbImportSetId = _data[\"bcbImportSetId\"];\r\n this.bcbebodoId = _data[\"bcbebodoId\"];\r\n this.filterOptionId = _data[\"filterOptionId\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): KoppelEBOOptieRequest {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new KoppelEBOOptieRequest();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"bcbImportSetId\"] = this.bcbImportSetId;\r\n data[\"bcbebodoId\"] = this.bcbebodoId;\r\n data[\"filterOptionId\"] = this.filterOptionId;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IKoppelEBOOptieRequest {\r\n bcbImportSetId: number;\r\n bcbebodoId: number;\r\n filterOptionId: number;\r\n}\r\n\r\nexport class ConnectEBODOCategoryResponse implements IConnectEBODOCategoryResponse {\r\n\r\n constructor(data?: IConnectEBODOCategoryResponse) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n }\r\n\r\n static fromJS(data: any): ConnectEBODOCategoryResponse {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ConnectEBODOCategoryResponse();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IConnectEBODOCategoryResponse {\r\n}\r\n\r\nexport class ConnectEBODOCategoryRequest implements IConnectEBODOCategoryRequest {\r\n bcbImportSetId!: number;\r\n bcbebodoId!: number;\r\n categoryId!: number;\r\n\r\n constructor(data?: IConnectEBODOCategoryRequest) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.bcbImportSetId = _data[\"bcbImportSetId\"];\r\n this.bcbebodoId = _data[\"bcbebodoId\"];\r\n this.categoryId = _data[\"categoryId\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): ConnectEBODOCategoryRequest {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ConnectEBODOCategoryRequest();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"bcbImportSetId\"] = this.bcbImportSetId;\r\n data[\"bcbebodoId\"] = this.bcbebodoId;\r\n data[\"categoryId\"] = this.categoryId;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IConnectEBODOCategoryRequest {\r\n bcbImportSetId: number;\r\n bcbebodoId: number;\r\n categoryId: number;\r\n}\r\n\r\nexport class FabrikantenViewModel implements IFabrikantenViewModel {\r\n sessionId?: string | undefined;\r\n bcbWebserviceURLBase?: string | undefined;\r\n productSelectBlockedByFilters!: boolean;\r\n categoryLayers?: FabrikantenCategoryLayerViewModel[] | undefined;\r\n filters?: FabrikantenFilterViewModel[] | undefined;\r\n rangeInputs?: FabrikantenRangeInputViewModel[] | undefined;\r\n products?: FabrikantenProductViewModel[] | undefined;\r\n selectedProduct?: FabrikantenProductViewModel | undefined;\r\n\r\n constructor(data?: IFabrikantenViewModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.sessionId = _data[\"sessionId\"];\r\n this.bcbWebserviceURLBase = _data[\"bcbWebserviceURLBase\"];\r\n this.productSelectBlockedByFilters = _data[\"productSelectBlockedByFilters\"];\r\n if (Array.isArray(_data[\"categoryLayers\"])) {\r\n this.categoryLayers = [] as any;\r\n for (let item of _data[\"categoryLayers\"])\r\n this.categoryLayers!.push(FabrikantenCategoryLayerViewModel.fromJS(item));\r\n }\r\n if (Array.isArray(_data[\"filters\"])) {\r\n this.filters = [] as any;\r\n for (let item of _data[\"filters\"])\r\n this.filters!.push(FabrikantenFilterViewModel.fromJS(item));\r\n }\r\n if (Array.isArray(_data[\"rangeInputs\"])) {\r\n this.rangeInputs = [] as any;\r\n for (let item of _data[\"rangeInputs\"])\r\n this.rangeInputs!.push(FabrikantenRangeInputViewModel.fromJS(item));\r\n }\r\n if (Array.isArray(_data[\"products\"])) {\r\n this.products = [] as any;\r\n for (let item of _data[\"products\"])\r\n this.products!.push(FabrikantenProductViewModel.fromJS(item));\r\n }\r\n this.selectedProduct = _data[\"selectedProduct\"] ? FabrikantenProductViewModel.fromJS(_data[\"selectedProduct\"]) : <any>undefined;\r\n }\r\n }\r\n\r\n static fromJS(data: any): FabrikantenViewModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new FabrikantenViewModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"sessionId\"] = this.sessionId;\r\n data[\"bcbWebserviceURLBase\"] = this.bcbWebserviceURLBase;\r\n data[\"productSelectBlockedByFilters\"] = this.productSelectBlockedByFilters;\r\n if (Array.isArray(this.categoryLayers)) {\r\n data[\"categoryLayers\"] = [];\r\n for (let item of this.categoryLayers)\r\n data[\"categoryLayers\"].push(item.toJSON());\r\n }\r\n if (Array.isArray(this.filters)) {\r\n data[\"filters\"] = [];\r\n for (let item of this.filters)\r\n data[\"filters\"].push(item.toJSON());\r\n }\r\n if (Array.isArray(this.rangeInputs)) {\r\n data[\"rangeInputs\"] = [];\r\n for (let item of this.rangeInputs)\r\n data[\"rangeInputs\"].push(item.toJSON());\r\n }\r\n if (Array.isArray(this.products)) {\r\n data[\"products\"] = [];\r\n for (let item of this.products)\r\n data[\"products\"].push(item.toJSON());\r\n }\r\n data[\"selectedProduct\"] = this.selectedProduct ? this.selectedProduct.toJSON() : <any>undefined;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IFabrikantenViewModel {\r\n sessionId?: string | undefined;\r\n bcbWebserviceURLBase?: string | undefined;\r\n productSelectBlockedByFilters: boolean;\r\n categoryLayers?: FabrikantenCategoryLayerViewModel[] | undefined;\r\n filters?: FabrikantenFilterViewModel[] | undefined;\r\n rangeInputs?: FabrikantenRangeInputViewModel[] | undefined;\r\n products?: FabrikantenProductViewModel[] | undefined;\r\n selectedProduct?: FabrikantenProductViewModel | undefined;\r\n}\r\n\r\nexport class FabrikantenCategoryLayerViewModel implements IFabrikantenCategoryLayerViewModel {\r\n layer!: number;\r\n selectedOption!: number;\r\n categories?: FabrikantenCategoryViewModel[] | undefined;\r\n\r\n constructor(data?: IFabrikantenCategoryLayerViewModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.layer = _data[\"layer\"];\r\n this.selectedOption = _data[\"selectedOption\"];\r\n if (Array.isArray(_data[\"categories\"])) {\r\n this.categories = [] as any;\r\n for (let item of _data[\"categories\"])\r\n this.categories!.push(FabrikantenCategoryViewModel.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): FabrikantenCategoryLayerViewModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new FabrikantenCategoryLayerViewModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"layer\"] = this.layer;\r\n data[\"selectedOption\"] = this.selectedOption;\r\n if (Array.isArray(this.categories)) {\r\n data[\"categories\"] = [];\r\n for (let item of this.categories)\r\n data[\"categories\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IFabrikantenCategoryLayerViewModel {\r\n layer: number;\r\n selectedOption: number;\r\n categories?: FabrikantenCategoryViewModel[] | undefined;\r\n}\r\n\r\nexport class FabrikantenCategoryViewModel implements IFabrikantenCategoryViewModel {\r\n id!: number;\r\n layer!: number;\r\n name?: string | undefined;\r\n imagePath?: string | undefined;\r\n\r\n constructor(data?: IFabrikantenCategoryViewModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.layer = _data[\"layer\"];\r\n this.name = _data[\"name\"];\r\n this.imagePath = _data[\"imagePath\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): FabrikantenCategoryViewModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new FabrikantenCategoryViewModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"layer\"] = this.layer;\r\n data[\"name\"] = this.name;\r\n data[\"imagePath\"] = this.imagePath;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IFabrikantenCategoryViewModel {\r\n id: number;\r\n layer: number;\r\n name?: string | undefined;\r\n imagePath?: string | undefined;\r\n}\r\n\r\nexport class FabrikantenFilterViewModel implements IFabrikantenFilterViewModel {\r\n id!: number;\r\n name?: string | undefined;\r\n hidden!: boolean;\r\n blocksProductSelect!: boolean;\r\n selectedOption!: number;\r\n options?: FabrikantenFilterOptionViewModel[] | undefined;\r\n\r\n constructor(data?: IFabrikantenFilterViewModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.name = _data[\"name\"];\r\n this.hidden = _data[\"hidden\"];\r\n this.blocksProductSelect = _data[\"blocksProductSelect\"];\r\n this.selectedOption = _data[\"selectedOption\"];\r\n if (Array.isArray(_data[\"options\"])) {\r\n this.options = [] as any;\r\n for (let item of _data[\"options\"])\r\n this.options!.push(FabrikantenFilterOptionViewModel.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): FabrikantenFilterViewModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new FabrikantenFilterViewModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"name\"] = this.name;\r\n data[\"hidden\"] = this.hidden;\r\n data[\"blocksProductSelect\"] = this.blocksProductSelect;\r\n data[\"selectedOption\"] = this.selectedOption;\r\n if (Array.isArray(this.options)) {\r\n data[\"options\"] = [];\r\n for (let item of this.options)\r\n data[\"options\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IFabrikantenFilterViewModel {\r\n id: number;\r\n name?: string | undefined;\r\n hidden: boolean;\r\n blocksProductSelect: boolean;\r\n selectedOption: number;\r\n options?: FabrikantenFilterOptionViewModel[] | undefined;\r\n}\r\n\r\nexport class FabrikantenFilterOptionViewModel implements IFabrikantenFilterOptionViewModel {\r\n id!: number;\r\n name?: string | undefined;\r\n colour?: string | undefined;\r\n\r\n constructor(data?: IFabrikantenFilterOptionViewModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.name = _data[\"name\"];\r\n this.colour = _data[\"colour\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): FabrikantenFilterOptionViewModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new FabrikantenFilterOptionViewModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"name\"] = this.name;\r\n data[\"colour\"] = this.colour;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IFabrikantenFilterOptionViewModel {\r\n id: number;\r\n name?: string | undefined;\r\n colour?: string | undefined;\r\n}\r\n\r\nexport class FabrikantenRangeInputViewModel implements IFabrikantenRangeInputViewModel {\r\n id!: number;\r\n name?: string | undefined;\r\n value?: string | undefined;\r\n typeField?: string | undefined;\r\n minimum!: number;\r\n maximum!: number;\r\n inclusiefMinimum!: boolean;\r\n inclusiefMaximum!: boolean;\r\n\r\n constructor(data?: IFabrikantenRangeInputViewModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.name = _data[\"name\"];\r\n this.value = _data[\"value\"];\r\n this.typeField = _data[\"typeField\"];\r\n this.minimum = _data[\"minimum\"];\r\n this.maximum = _data[\"maximum\"];\r\n this.inclusiefMinimum = _data[\"inclusiefMinimum\"];\r\n this.inclusiefMaximum = _data[\"inclusiefMaximum\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): FabrikantenRangeInputViewModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new FabrikantenRangeInputViewModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"name\"] = this.name;\r\n data[\"value\"] = this.value;\r\n data[\"typeField\"] = this.typeField;\r\n data[\"minimum\"] = this.minimum;\r\n data[\"maximum\"] = this.maximum;\r\n data[\"inclusiefMinimum\"] = this.inclusiefMinimum;\r\n data[\"inclusiefMaximum\"] = this.inclusiefMaximum;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IFabrikantenRangeInputViewModel {\r\n id: number;\r\n name?: string | undefined;\r\n value?: string | undefined;\r\n typeField?: string | undefined;\r\n minimum: number;\r\n maximum: number;\r\n inclusiefMinimum: boolean;\r\n inclusiefMaximum: boolean;\r\n}\r\n\r\nexport class FabrikantenProductViewModel implements IFabrikantenProductViewModel {\r\n id!: number;\r\n name?: string | undefined;\r\n fabrikantenBCBProductViewModels?: FabrikantenBCBProductViewModel[] | undefined;\r\n\r\n constructor(data?: IFabrikantenProductViewModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.name = _data[\"name\"];\r\n if (Array.isArray(_data[\"fabrikantenBCBProductViewModels\"])) {\r\n this.fabrikantenBCBProductViewModels = [] as any;\r\n for (let item of _data[\"fabrikantenBCBProductViewModels\"])\r\n this.fabrikantenBCBProductViewModels!.push(FabrikantenBCBProductViewModel.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): FabrikantenProductViewModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new FabrikantenProductViewModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"name\"] = this.name;\r\n if (Array.isArray(this.fabrikantenBCBProductViewModels)) {\r\n data[\"fabrikantenBCBProductViewModels\"] = [];\r\n for (let item of this.fabrikantenBCBProductViewModels)\r\n data[\"fabrikantenBCBProductViewModels\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IFabrikantenProductViewModel {\r\n id: number;\r\n name?: string | undefined;\r\n fabrikantenBCBProductViewModels?: FabrikantenBCBProductViewModel[] | undefined;\r\n}\r\n\r\nexport class FabrikantenBCBProductViewModel implements IFabrikantenBCBProductViewModel {\r\n id!: number;\r\n name?: string | undefined;\r\n description?: string | undefined;\r\n has3D!: boolean;\r\n has2D5!: boolean;\r\n snedes?: string | undefined;\r\n bcbeboViewModel?: BCBEBOViewModel | undefined;\r\n bcbProductAfbeeldingen?: FabrikantenBCBProductAfbeeldingViewModel[] | undefined;\r\n\r\n constructor(data?: IFabrikantenBCBProductViewModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.name = _data[\"name\"];\r\n this.description = _data[\"description\"];\r\n this.has3D = _data[\"has3D\"];\r\n this.has2D5 = _data[\"has2D5\"];\r\n this.snedes = _data[\"snedes\"];\r\n this.bcbeboViewModel = _data[\"bcbeboViewModel\"] ? BCBEBOViewModel.fromJS(_data[\"bcbeboViewModel\"]) : <any>undefined;\r\n if (Array.isArray(_data[\"bcbProductAfbeeldingen\"])) {\r\n this.bcbProductAfbeeldingen = [] as any;\r\n for (let item of _data[\"bcbProductAfbeeldingen\"])\r\n this.bcbProductAfbeeldingen!.push(FabrikantenBCBProductAfbeeldingViewModel.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): FabrikantenBCBProductViewModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new FabrikantenBCBProductViewModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"name\"] = this.name;\r\n data[\"description\"] = this.description;\r\n data[\"has3D\"] = this.has3D;\r\n data[\"has2D5\"] = this.has2D5;\r\n data[\"snedes\"] = this.snedes;\r\n data[\"bcbeboViewModel\"] = this.bcbeboViewModel ? this.bcbeboViewModel.toJSON() : <any>undefined;\r\n if (Array.isArray(this.bcbProductAfbeeldingen)) {\r\n data[\"bcbProductAfbeeldingen\"] = [];\r\n for (let item of this.bcbProductAfbeeldingen)\r\n data[\"bcbProductAfbeeldingen\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IFabrikantenBCBProductViewModel {\r\n id: number;\r\n name?: string | undefined;\r\n description?: string | undefined;\r\n has3D: boolean;\r\n has2D5: boolean;\r\n snedes?: string | undefined;\r\n bcbeboViewModel?: BCBEBOViewModel | undefined;\r\n bcbProductAfbeeldingen?: FabrikantenBCBProductAfbeeldingViewModel[] | undefined;\r\n}\r\n\r\nexport class FabrikantenBCBProductAfbeeldingViewModel implements IFabrikantenBCBProductAfbeeldingViewModel {\r\n id!: number;\r\n description?: string | undefined;\r\n url?: string | undefined;\r\n position!: number;\r\n hiddenOnMix!: boolean;\r\n\r\n constructor(data?: IFabrikantenBCBProductAfbeeldingViewModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.description = _data[\"description\"];\r\n this.url = _data[\"url\"];\r\n this.position = _data[\"position\"];\r\n this.hiddenOnMix = _data[\"hiddenOnMix\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): FabrikantenBCBProductAfbeeldingViewModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new FabrikantenBCBProductAfbeeldingViewModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"description\"] = this.description;\r\n data[\"url\"] = this.url;\r\n data[\"position\"] = this.position;\r\n data[\"hiddenOnMix\"] = this.hiddenOnMix;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IFabrikantenBCBProductAfbeeldingViewModel {\r\n id: number;\r\n description?: string | undefined;\r\n url?: string | undefined;\r\n position: number;\r\n hiddenOnMix: boolean;\r\n}\r\n\r\nexport class FabrikantenRequestModel implements IFabrikantenRequestModel {\r\n sessionId?: string | undefined;\r\n\r\n constructor(data?: IFabrikantenRequestModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.sessionId = _data[\"sessionId\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): FabrikantenRequestModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new FabrikantenRequestModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"sessionId\"] = this.sessionId;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IFabrikantenRequestModel {\r\n sessionId?: string | undefined;\r\n}\r\n\r\nexport class FabrikantenBestekViewModel implements IFabrikantenBestekViewModel {\r\n bestandsnaam?: string | undefined;\r\n stabu?: string | undefined;\r\n suf?: string | undefined;\r\n osfhtml?: string | undefined;\r\n vrijBestekHTML?: string | undefined;\r\n wuid?: string | undefined;\r\n\r\n constructor(data?: IFabrikantenBestekViewModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.bestandsnaam = _data[\"bestandsnaam\"];\r\n this.stabu = _data[\"stabu\"];\r\n this.suf = _data[\"suf\"];\r\n this.osfhtml = _data[\"osfhtml\"];\r\n this.vrijBestekHTML = _data[\"vrijBestekHTML\"];\r\n this.wuid = _data[\"wuid\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): FabrikantenBestekViewModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new FabrikantenBestekViewModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"bestandsnaam\"] = this.bestandsnaam;\r\n data[\"stabu\"] = this.stabu;\r\n data[\"suf\"] = this.suf;\r\n data[\"osfhtml\"] = this.osfhtml;\r\n data[\"vrijBestekHTML\"] = this.vrijBestekHTML;\r\n data[\"wuid\"] = this.wuid;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IFabrikantenBestekViewModel {\r\n bestandsnaam?: string | undefined;\r\n stabu?: string | undefined;\r\n suf?: string | undefined;\r\n osfhtml?: string | undefined;\r\n vrijBestekHTML?: string | undefined;\r\n wuid?: string | undefined;\r\n}\r\n\r\nexport class FabrikantenBestekRequestModel implements IFabrikantenBestekRequestModel {\r\n sessionId?: string | undefined;\r\n\r\n constructor(data?: IFabrikantenBestekRequestModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.sessionId = _data[\"sessionId\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): FabrikantenBestekRequestModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new FabrikantenBestekRequestModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"sessionId\"] = this.sessionId;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IFabrikantenBestekRequestModel {\r\n sessionId?: string | undefined;\r\n}\r\n\r\nexport class Fabrikanten3DViewModel implements IFabrikanten3DViewModel {\r\n wuid?: string | undefined;\r\n webGLJSON?: string | undefined;\r\n nativeRFA!: boolean;\r\n snedes?: string | undefined;\r\n\r\n constructor(data?: IFabrikanten3DViewModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.wuid = _data[\"wuid\"];\r\n this.webGLJSON = _data[\"webGLJSON\"];\r\n this.nativeRFA = _data[\"nativeRFA\"];\r\n this.snedes = _data[\"snedes\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): Fabrikanten3DViewModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new Fabrikanten3DViewModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"wuid\"] = this.wuid;\r\n data[\"webGLJSON\"] = this.webGLJSON;\r\n data[\"nativeRFA\"] = this.nativeRFA;\r\n data[\"snedes\"] = this.snedes;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IFabrikanten3DViewModel {\r\n wuid?: string | undefined;\r\n webGLJSON?: string | undefined;\r\n nativeRFA: boolean;\r\n snedes?: string | undefined;\r\n}\r\n\r\nexport class Fabrikanten3DRequestModel implements IFabrikanten3DRequestModel {\r\n sessionId?: string | undefined;\r\n\r\n constructor(data?: IFabrikanten3DRequestModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.sessionId = _data[\"sessionId\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): Fabrikanten3DRequestModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new Fabrikanten3DRequestModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"sessionId\"] = this.sessionId;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IFabrikanten3DRequestModel {\r\n sessionId?: string | undefined;\r\n}\r\n\r\nexport class FabrikantenSVGViewModel implements IFabrikantenSVGViewModel {\r\n wuid?: string | undefined;\r\n svg?: string | undefined;\r\n nativeRFA!: boolean;\r\n snedes?: string | undefined;\r\n\r\n constructor(data?: IFabrikantenSVGViewModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.wuid = _data[\"wuid\"];\r\n this.svg = _data[\"svg\"];\r\n this.nativeRFA = _data[\"nativeRFA\"];\r\n this.snedes = _data[\"snedes\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): FabrikantenSVGViewModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new FabrikantenSVGViewModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"wuid\"] = this.wuid;\r\n data[\"svg\"] = this.svg;\r\n data[\"nativeRFA\"] = this.nativeRFA;\r\n data[\"snedes\"] = this.snedes;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IFabrikantenSVGViewModel {\r\n wuid?: string | undefined;\r\n svg?: string | undefined;\r\n nativeRFA: boolean;\r\n snedes?: string | undefined;\r\n}\r\n\r\nexport class FabrikantenSVGRequestModel implements IFabrikantenSVGRequestModel {\r\n width!: number;\r\n height!: number;\r\n snede?: string | undefined;\r\n schaal?: string | undefined;\r\n sessionId?: string | undefined;\r\n\r\n constructor(data?: IFabrikantenSVGRequestModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.width = _data[\"width\"];\r\n this.height = _data[\"height\"];\r\n this.snede = _data[\"snede\"];\r\n this.schaal = _data[\"schaal\"];\r\n this.sessionId = _data[\"sessionId\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): FabrikantenSVGRequestModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new FabrikantenSVGRequestModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"width\"] = this.width;\r\n data[\"height\"] = this.height;\r\n data[\"snede\"] = this.snede;\r\n data[\"schaal\"] = this.schaal;\r\n data[\"sessionId\"] = this.sessionId;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IFabrikantenSVGRequestModel {\r\n width: number;\r\n height: number;\r\n snede?: string | undefined;\r\n schaal?: string | undefined;\r\n sessionId?: string | undefined;\r\n}\r\n\r\nexport class FabrikantenFileViewModel implements IFabrikantenFileViewModel {\r\n file?: string | undefined;\r\n data?: string | undefined;\r\n\r\n constructor(data?: IFabrikantenFileViewModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.file = _data[\"file\"];\r\n this.data = _data[\"data\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): FabrikantenFileViewModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new FabrikantenFileViewModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"file\"] = this.file;\r\n data[\"data\"] = this.data;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IFabrikantenFileViewModel {\r\n file?: string | undefined;\r\n data?: string | undefined;\r\n}\r\n\r\nexport class FabrikantenFileRequestModel implements IFabrikantenFileRequestModel {\r\n fileType?: string | undefined;\r\n model3D!: boolean;\r\n sessionId?: string | undefined;\r\n\r\n constructor(data?: IFabrikantenFileRequestModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.fileType = _data[\"fileType\"];\r\n this.model3D = _data[\"model3D\"];\r\n this.sessionId = _data[\"sessionId\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): FabrikantenFileRequestModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new FabrikantenFileRequestModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"fileType\"] = this.fileType;\r\n data[\"model3D\"] = this.model3D;\r\n data[\"sessionId\"] = this.sessionId;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IFabrikantenFileRequestModel {\r\n fileType?: string | undefined;\r\n model3D: boolean;\r\n sessionId?: string | undefined;\r\n}\r\n\r\nexport class BCBLinkResponseModel implements IBCBLinkResponseModel {\r\n url?: string | undefined;\r\n\r\n constructor(data?: IBCBLinkResponseModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.url = _data[\"url\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): BCBLinkResponseModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new BCBLinkResponseModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"url\"] = this.url;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IBCBLinkResponseModel {\r\n url?: string | undefined;\r\n}\r\n\r\nexport class BCBLinkRequestModel implements IBCBLinkRequestModel {\r\n wuid?: string | undefined;\r\n\r\n constructor(data?: IBCBLinkRequestModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.wuid = _data[\"wuid\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): BCBLinkRequestModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new BCBLinkRequestModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"wuid\"] = this.wuid;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IBCBLinkRequestModel {\r\n wuid?: string | undefined;\r\n}\r\n\r\nexport class SetRangeInputRequest implements ISetRangeInputRequest {\r\n sessionId?: string | undefined;\r\n rangeInputId!: number;\r\n value!: number;\r\n\r\n constructor(data?: ISetRangeInputRequest) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.sessionId = _data[\"sessionId\"];\r\n this.rangeInputId = _data[\"rangeInputId\"];\r\n this.value = _data[\"value\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): SetRangeInputRequest {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new SetRangeInputRequest();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"sessionId\"] = this.sessionId;\r\n data[\"rangeInputId\"] = this.rangeInputId;\r\n data[\"value\"] = this.value;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ISetRangeInputRequest {\r\n sessionId?: string | undefined;\r\n rangeInputId: number;\r\n value: number;\r\n}\r\n\r\nexport class SelectFilterOptionRequest implements ISelectFilterOptionRequest {\r\n sessionId?: string | undefined;\r\n filterId!: number;\r\n filterOptionId!: number;\r\n\r\n constructor(data?: ISelectFilterOptionRequest) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.sessionId = _data[\"sessionId\"];\r\n this.filterId = _data[\"filterId\"];\r\n this.filterOptionId = _data[\"filterOptionId\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): SelectFilterOptionRequest {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new SelectFilterOptionRequest();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"sessionId\"] = this.sessionId;\r\n data[\"filterId\"] = this.filterId;\r\n data[\"filterOptionId\"] = this.filterOptionId;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ISelectFilterOptionRequest {\r\n sessionId?: string | undefined;\r\n filterId: number;\r\n filterOptionId: number;\r\n}\r\n\r\nexport class SelectCategoryRequest implements ISelectCategoryRequest {\r\n sessionId?: string | undefined;\r\n categoryLayer!: number;\r\n categoryId!: number;\r\n\r\n constructor(data?: ISelectCategoryRequest) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.sessionId = _data[\"sessionId\"];\r\n this.categoryLayer = _data[\"categoryLayer\"];\r\n this.categoryId = _data[\"categoryId\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): SelectCategoryRequest {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new SelectCategoryRequest();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"sessionId\"] = this.sessionId;\r\n data[\"categoryLayer\"] = this.categoryLayer;\r\n data[\"categoryId\"] = this.categoryId;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ISelectCategoryRequest {\r\n sessionId?: string | undefined;\r\n categoryLayer: number;\r\n categoryId: number;\r\n}\r\n\r\nexport class ResetFilterRequest implements IResetFilterRequest {\r\n sessionId?: string | undefined;\r\n filterId!: number;\r\n\r\n constructor(data?: IResetFilterRequest) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.sessionId = _data[\"sessionId\"];\r\n this.filterId = _data[\"filterId\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): ResetFilterRequest {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ResetFilterRequest();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"sessionId\"] = this.sessionId;\r\n data[\"filterId\"] = this.filterId;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IResetFilterRequest {\r\n sessionId?: string | undefined;\r\n filterId: number;\r\n}\r\n\r\nexport class ResetCategoryLayerRequest implements IResetCategoryLayerRequest {\r\n sessionId?: string | undefined;\r\n categoryLayer!: number;\r\n\r\n constructor(data?: IResetCategoryLayerRequest) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.sessionId = _data[\"sessionId\"];\r\n this.categoryLayer = _data[\"categoryLayer\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): ResetCategoryLayerRequest {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ResetCategoryLayerRequest();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"sessionId\"] = this.sessionId;\r\n data[\"categoryLayer\"] = this.categoryLayer;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IResetCategoryLayerRequest {\r\n sessionId?: string | undefined;\r\n categoryLayer: number;\r\n}\r\n\r\nexport class ResetAllFiltersRequest implements IResetAllFiltersRequest {\r\n sessionId?: string | undefined;\r\n\r\n constructor(data?: IResetAllFiltersRequest) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.sessionId = _data[\"sessionId\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): ResetAllFiltersRequest {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ResetAllFiltersRequest();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"sessionId\"] = this.sessionId;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IResetAllFiltersRequest {\r\n sessionId?: string | undefined;\r\n}\r\n\r\nexport class ResetAllCategoriesRequest implements IResetAllCategoriesRequest {\r\n sessionId?: string | undefined;\r\n\r\n constructor(data?: IResetAllCategoriesRequest) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.sessionId = _data[\"sessionId\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): ResetAllCategoriesRequest {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ResetAllCategoriesRequest();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"sessionId\"] = this.sessionId;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IResetAllCategoriesRequest {\r\n sessionId?: string | undefined;\r\n}\r\n\r\nexport class SelectProductRequest implements ISelectProductRequest {\r\n sessionId?: string | undefined;\r\n productId!: number;\r\n\r\n constructor(data?: ISelectProductRequest) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.sessionId = _data[\"sessionId\"];\r\n this.productId = _data[\"productId\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): SelectProductRequest {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new SelectProductRequest();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"sessionId\"] = this.sessionId;\r\n data[\"productId\"] = this.productId;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ISelectProductRequest {\r\n sessionId?: string | undefined;\r\n productId: number;\r\n}\r\n\r\nexport class RemoveProductSelectionRequest implements IRemoveProductSelectionRequest {\r\n sessionId?: string | undefined;\r\n\r\n constructor(data?: IRemoveProductSelectionRequest) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.sessionId = _data[\"sessionId\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): RemoveProductSelectionRequest {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new RemoveProductSelectionRequest();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"sessionId\"] = this.sessionId;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IRemoveProductSelectionRequest {\r\n sessionId?: string | undefined;\r\n}\r\n\r\nexport class FiltersViewModel implements IFiltersViewModel {\r\n filterViewModels?: FilterViewModel[] | undefined;\r\n\r\n constructor(data?: IFiltersViewModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n if (Array.isArray(_data[\"filterViewModels\"])) {\r\n this.filterViewModels = [] as any;\r\n for (let item of _data[\"filterViewModels\"])\r\n this.filterViewModels!.push(FilterViewModel.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): FiltersViewModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new FiltersViewModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n if (Array.isArray(this.filterViewModels)) {\r\n data[\"filterViewModels\"] = [];\r\n for (let item of this.filterViewModels)\r\n data[\"filterViewModels\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IFiltersViewModel {\r\n filterViewModels?: FilterViewModel[] | undefined;\r\n}\r\n\r\nexport class FilterViewModel implements IFilterViewModel {\r\n id!: number;\r\n name?: string | undefined;\r\n filterOptionViewModels?: FilterOptionViewModel[] | undefined;\r\n\r\n constructor(data?: IFilterViewModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.name = _data[\"name\"];\r\n if (Array.isArray(_data[\"filterOptionViewModels\"])) {\r\n this.filterOptionViewModels = [] as any;\r\n for (let item of _data[\"filterOptionViewModels\"])\r\n this.filterOptionViewModels!.push(FilterOptionViewModel.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): FilterViewModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new FilterViewModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"name\"] = this.name;\r\n if (Array.isArray(this.filterOptionViewModels)) {\r\n data[\"filterOptionViewModels\"] = [];\r\n for (let item of this.filterOptionViewModels)\r\n data[\"filterOptionViewModels\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IFilterViewModel {\r\n id: number;\r\n name?: string | undefined;\r\n filterOptionViewModels?: FilterOptionViewModel[] | undefined;\r\n}\r\n\r\nexport class RangeInputsViewModel implements IRangeInputsViewModel {\r\n rangeInputs?: RangeInputViewModel[] | undefined;\r\n\r\n constructor(data?: IRangeInputsViewModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n if (Array.isArray(_data[\"rangeInputs\"])) {\r\n this.rangeInputs = [] as any;\r\n for (let item of _data[\"rangeInputs\"])\r\n this.rangeInputs!.push(RangeInputViewModel.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): RangeInputsViewModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new RangeInputsViewModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n if (Array.isArray(this.rangeInputs)) {\r\n data[\"rangeInputs\"] = [];\r\n for (let item of this.rangeInputs)\r\n data[\"rangeInputs\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IRangeInputsViewModel {\r\n rangeInputs?: RangeInputViewModel[] | undefined;\r\n}\r\n\r\nexport class CreateFilterResponse implements ICreateFilterResponse {\r\n success!: boolean;\r\n id!: number;\r\n\r\n constructor(data?: ICreateFilterResponse) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.success = _data[\"success\"];\r\n this.id = _data[\"id\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): CreateFilterResponse {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new CreateFilterResponse();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"success\"] = this.success;\r\n data[\"id\"] = this.id;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ICreateFilterResponse {\r\n success: boolean;\r\n id: number;\r\n}\r\n\r\nexport class CreateFilterRequest implements ICreateFilterRequest {\r\n name?: string | undefined;\r\n\r\n constructor(data?: ICreateFilterRequest) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.name = _data[\"name\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): CreateFilterRequest {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new CreateFilterRequest();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"name\"] = this.name;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ICreateFilterRequest {\r\n name?: string | undefined;\r\n}\r\n\r\nexport class CreateFilterOptionResponse implements ICreateFilterOptionResponse {\r\n success!: boolean;\r\n id!: number;\r\n\r\n constructor(data?: ICreateFilterOptionResponse) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.success = _data[\"success\"];\r\n this.id = _data[\"id\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): CreateFilterOptionResponse {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new CreateFilterOptionResponse();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"success\"] = this.success;\r\n data[\"id\"] = this.id;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ICreateFilterOptionResponse {\r\n success: boolean;\r\n id: number;\r\n}\r\n\r\nexport class CreateFilterOptionRequest implements ICreateFilterOptionRequest {\r\n name?: string | undefined;\r\n filterId!: number;\r\n\r\n constructor(data?: ICreateFilterOptionRequest) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.name = _data[\"name\"];\r\n this.filterId = _data[\"filterId\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): CreateFilterOptionRequest {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new CreateFilterOptionRequest();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"name\"] = this.name;\r\n data[\"filterId\"] = this.filterId;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ICreateFilterOptionRequest {\r\n name?: string | undefined;\r\n filterId: number;\r\n}\r\n\r\nexport class BCBImportSetsViewModel implements IBCBImportSetsViewModel {\r\n bcbImportSetViewModels?: BCBImportSetViewModel[] | undefined;\r\n\r\n constructor(data?: IBCBImportSetsViewModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n if (Array.isArray(_data[\"bcbImportSetViewModels\"])) {\r\n this.bcbImportSetViewModels = [] as any;\r\n for (let item of _data[\"bcbImportSetViewModels\"])\r\n this.bcbImportSetViewModels!.push(BCBImportSetViewModel.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): BCBImportSetsViewModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new BCBImportSetsViewModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n if (Array.isArray(this.bcbImportSetViewModels)) {\r\n data[\"bcbImportSetViewModels\"] = [];\r\n for (let item of this.bcbImportSetViewModels)\r\n data[\"bcbImportSetViewModels\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IBCBImportSetsViewModel {\r\n bcbImportSetViewModels?: BCBImportSetViewModel[] | undefined;\r\n}\r\n\r\nexport class BCBImportSetViewModel implements IBCBImportSetViewModel {\r\n id!: number;\r\n name?: string | undefined;\r\n bcbImportSetValueViewModels?: BCBImportSetValueViewModel[] | undefined;\r\n\r\n constructor(data?: IBCBImportSetViewModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.name = _data[\"name\"];\r\n if (Array.isArray(_data[\"bcbImportSetValueViewModels\"])) {\r\n this.bcbImportSetValueViewModels = [] as any;\r\n for (let item of _data[\"bcbImportSetValueViewModels\"])\r\n this.bcbImportSetValueViewModels!.push(BCBImportSetValueViewModel.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): BCBImportSetViewModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new BCBImportSetViewModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"name\"] = this.name;\r\n if (Array.isArray(this.bcbImportSetValueViewModels)) {\r\n data[\"bcbImportSetValueViewModels\"] = [];\r\n for (let item of this.bcbImportSetValueViewModels)\r\n data[\"bcbImportSetValueViewModels\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IBCBImportSetViewModel {\r\n id: number;\r\n name?: string | undefined;\r\n bcbImportSetValueViewModels?: BCBImportSetValueViewModel[] | undefined;\r\n}\r\n\r\nexport class BCBImportSetValueViewModel implements IBCBImportSetValueViewModel {\r\n id!: number;\r\n value?: string | undefined;\r\n\r\n constructor(data?: IBCBImportSetValueViewModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.value = _data[\"value\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): BCBImportSetValueViewModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new BCBImportSetValueViewModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"value\"] = this.value;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IBCBImportSetValueViewModel {\r\n id: number;\r\n value?: string | undefined;\r\n}\r\n\r\nexport class BCBImportOpenResponse implements IBCBImportOpenResponse {\r\n bcbeboViewModel?: BCBEBOViewModel | undefined;\r\n bcbImportOpbouwen?: BCBImportOpbouw[] | undefined;\r\n bcbImportEigenschappen?: BCBImportEigenschap[] | undefined;\r\n\r\n constructor(data?: IBCBImportOpenResponse) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.bcbeboViewModel = _data[\"bcbeboViewModel\"] ? BCBEBOViewModel.fromJS(_data[\"bcbeboViewModel\"]) : <any>undefined;\r\n if (Array.isArray(_data[\"bcbImportOpbouwen\"])) {\r\n this.bcbImportOpbouwen = [] as any;\r\n for (let item of _data[\"bcbImportOpbouwen\"])\r\n this.bcbImportOpbouwen!.push(BCBImportOpbouw.fromJS(item));\r\n }\r\n if (Array.isArray(_data[\"bcbImportEigenschappen\"])) {\r\n this.bcbImportEigenschappen = [] as any;\r\n for (let item of _data[\"bcbImportEigenschappen\"])\r\n this.bcbImportEigenschappen!.push(BCBImportEigenschap.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): BCBImportOpenResponse {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new BCBImportOpenResponse();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"bcbeboViewModel\"] = this.bcbeboViewModel ? this.bcbeboViewModel.toJSON() : <any>undefined;\r\n if (Array.isArray(this.bcbImportOpbouwen)) {\r\n data[\"bcbImportOpbouwen\"] = [];\r\n for (let item of this.bcbImportOpbouwen)\r\n data[\"bcbImportOpbouwen\"].push(item.toJSON());\r\n }\r\n if (Array.isArray(this.bcbImportEigenschappen)) {\r\n data[\"bcbImportEigenschappen\"] = [];\r\n for (let item of this.bcbImportEigenschappen)\r\n data[\"bcbImportEigenschappen\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IBCBImportOpenResponse {\r\n bcbeboViewModel?: BCBEBOViewModel | undefined;\r\n bcbImportOpbouwen?: BCBImportOpbouw[] | undefined;\r\n bcbImportEigenschappen?: BCBImportEigenschap[] | undefined;\r\n}\r\n\r\nexport class BCBImportOpbouw implements IBCBImportOpbouw {\r\n name?: string | undefined;\r\n base?: string | undefined;\r\n value?: string | undefined;\r\n open!: boolean;\r\n selected!: boolean;\r\n wizardEBOViewModels?: WizardEBOViewModel[] | undefined;\r\n\r\n constructor(data?: IBCBImportOpbouw) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.name = _data[\"name\"];\r\n this.base = _data[\"base\"];\r\n this.value = _data[\"value\"];\r\n this.open = _data[\"open\"];\r\n this.selected = _data[\"selected\"];\r\n if (Array.isArray(_data[\"wizardEBOViewModels\"])) {\r\n this.wizardEBOViewModels = [] as any;\r\n for (let item of _data[\"wizardEBOViewModels\"])\r\n this.wizardEBOViewModels!.push(WizardEBOViewModel.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): BCBImportOpbouw {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new BCBImportOpbouw();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"name\"] = this.name;\r\n data[\"base\"] = this.base;\r\n data[\"value\"] = this.value;\r\n data[\"open\"] = this.open;\r\n data[\"selected\"] = this.selected;\r\n if (Array.isArray(this.wizardEBOViewModels)) {\r\n data[\"wizardEBOViewModels\"] = [];\r\n for (let item of this.wizardEBOViewModels)\r\n data[\"wizardEBOViewModels\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IBCBImportOpbouw {\r\n name?: string | undefined;\r\n base?: string | undefined;\r\n value?: string | undefined;\r\n open: boolean;\r\n selected: boolean;\r\n wizardEBOViewModels?: WizardEBOViewModel[] | undefined;\r\n}\r\n\r\nexport class WizardEBOViewModel implements IWizardEBOViewModel {\r\n dOs?: WizardEBODOViewModel[] | undefined;\r\n name?: string | undefined;\r\n base?: string | undefined;\r\n selected!: boolean;\r\n open!: boolean;\r\n inUseBy?: string | undefined;\r\n\r\n constructor(data?: IWizardEBOViewModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n if (Array.isArray(_data[\"dOs\"])) {\r\n this.dOs = [] as any;\r\n for (let item of _data[\"dOs\"])\r\n this.dOs!.push(WizardEBODOViewModel.fromJS(item));\r\n }\r\n this.name = _data[\"name\"];\r\n this.base = _data[\"base\"];\r\n this.selected = _data[\"selected\"];\r\n this.open = _data[\"open\"];\r\n this.inUseBy = _data[\"inUseBy\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): WizardEBOViewModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new WizardEBOViewModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n if (Array.isArray(this.dOs)) {\r\n data[\"dOs\"] = [];\r\n for (let item of this.dOs)\r\n data[\"dOs\"].push(item.toJSON());\r\n }\r\n data[\"name\"] = this.name;\r\n data[\"base\"] = this.base;\r\n data[\"selected\"] = this.selected;\r\n data[\"open\"] = this.open;\r\n data[\"inUseBy\"] = this.inUseBy;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IWizardEBOViewModel {\r\n dOs?: WizardEBODOViewModel[] | undefined;\r\n name?: string | undefined;\r\n base?: string | undefined;\r\n selected: boolean;\r\n open: boolean;\r\n inUseBy?: string | undefined;\r\n}\r\n\r\nexport class WizardEBODOViewModel implements IWizardEBODOViewModel {\r\n doType?: string | undefined;\r\n doNaam?: string | undefined;\r\n\r\n constructor(data?: IWizardEBODOViewModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.doType = _data[\"doType\"];\r\n this.doNaam = _data[\"doNaam\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): WizardEBODOViewModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new WizardEBODOViewModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"doType\"] = this.doType;\r\n data[\"doNaam\"] = this.doNaam;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IWizardEBODOViewModel {\r\n doType?: string | undefined;\r\n doNaam?: string | undefined;\r\n}\r\n\r\nexport class BCBImportEigenschap implements IBCBImportEigenschap {\r\n name?: string | undefined;\r\n base?: string | undefined;\r\n value?: string | undefined;\r\n open!: boolean;\r\n selected!: boolean;\r\n\r\n constructor(data?: IBCBImportEigenschap) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.name = _data[\"name\"];\r\n this.base = _data[\"base\"];\r\n this.value = _data[\"value\"];\r\n this.open = _data[\"open\"];\r\n this.selected = _data[\"selected\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): BCBImportEigenschap {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new BCBImportEigenschap();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"name\"] = this.name;\r\n data[\"base\"] = this.base;\r\n data[\"value\"] = this.value;\r\n data[\"open\"] = this.open;\r\n data[\"selected\"] = this.selected;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IBCBImportEigenschap {\r\n name?: string | undefined;\r\n base?: string | undefined;\r\n value?: string | undefined;\r\n open: boolean;\r\n selected: boolean;\r\n}\r\n\r\nexport class BCBImportOpenRequest implements IBCBImportOpenRequest {\r\n bcbeboId!: number;\r\n\r\n constructor(data?: IBCBImportOpenRequest) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.bcbeboId = _data[\"bcbeboId\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): BCBImportOpenRequest {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new BCBImportOpenRequest();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"bcbeboId\"] = this.bcbeboId;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IBCBImportOpenRequest {\r\n bcbeboId: number;\r\n}\r\n\r\nexport class BCBImportOpenTempRequest implements IBCBImportOpenTempRequest {\r\n base?: string | undefined;\r\n bcbImportSetId!: number;\r\n dOs?: BCBImportOpenTempDORequest[] | undefined;\r\n\r\n constructor(data?: IBCBImportOpenTempRequest) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.base = _data[\"base\"];\r\n this.bcbImportSetId = _data[\"bcbImportSetId\"];\r\n if (Array.isArray(_data[\"dOs\"])) {\r\n this.dOs = [] as any;\r\n for (let item of _data[\"dOs\"])\r\n this.dOs!.push(BCBImportOpenTempDORequest.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): BCBImportOpenTempRequest {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new BCBImportOpenTempRequest();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"base\"] = this.base;\r\n data[\"bcbImportSetId\"] = this.bcbImportSetId;\r\n if (Array.isArray(this.dOs)) {\r\n data[\"dOs\"] = [];\r\n for (let item of this.dOs)\r\n data[\"dOs\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IBCBImportOpenTempRequest {\r\n base?: string | undefined;\r\n bcbImportSetId: number;\r\n dOs?: BCBImportOpenTempDORequest[] | undefined;\r\n}\r\n\r\nexport class BCBImportOpenTempDORequest implements IBCBImportOpenTempDORequest {\r\n naam?: string | undefined;\r\n type?: string | undefined;\r\n\r\n constructor(data?: IBCBImportOpenTempDORequest) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.naam = _data[\"naam\"];\r\n this.type = _data[\"type\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): BCBImportOpenTempDORequest {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new BCBImportOpenTempDORequest();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"naam\"] = this.naam;\r\n data[\"type\"] = this.type;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IBCBImportOpenTempDORequest {\r\n naam?: string | undefined;\r\n type?: string | undefined;\r\n}\r\n\r\nexport class BCBImportProductResponse implements IBCBImportProductResponse {\r\n success!: boolean;\r\n message?: string | undefined;\r\n\r\n constructor(data?: IBCBImportProductResponse) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.success = _data[\"success\"];\r\n this.message = _data[\"message\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): BCBImportProductResponse {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new BCBImportProductResponse();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"success\"] = this.success;\r\n data[\"message\"] = this.message;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IBCBImportProductResponse {\r\n success: boolean;\r\n message?: string | undefined;\r\n}\r\n\r\nexport class BCBImportProductRequest implements IBCBImportProductRequest {\r\n bcbProductId!: number;\r\n\r\n constructor(data?: IBCBImportProductRequest) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.bcbProductId = _data[\"bcbProductId\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): BCBImportProductRequest {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new BCBImportProductRequest();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"bcbProductId\"] = this.bcbProductId;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IBCBImportProductRequest {\r\n bcbProductId: number;\r\n}\r\n\r\nexport class SaveImportSetRequest implements ISaveImportSetRequest {\r\n id!: number;\r\n name?: string | undefined;\r\n\r\n constructor(data?: ISaveImportSetRequest) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.name = _data[\"name\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): SaveImportSetRequest {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new SaveImportSetRequest();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"name\"] = this.name;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ISaveImportSetRequest {\r\n id: number;\r\n name?: string | undefined;\r\n}\r\n\r\nexport class ChangeImportSetRequest implements IChangeImportSetRequest {\r\n importSetId!: number;\r\n value?: string | undefined;\r\n enabled!: boolean;\r\n\r\n constructor(data?: IChangeImportSetRequest) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.importSetId = _data[\"importSetId\"];\r\n this.value = _data[\"value\"];\r\n this.enabled = _data[\"enabled\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): ChangeImportSetRequest {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ChangeImportSetRequest();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"importSetId\"] = this.importSetId;\r\n data[\"value\"] = this.value;\r\n data[\"enabled\"] = this.enabled;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IChangeImportSetRequest {\r\n importSetId: number;\r\n value?: string | undefined;\r\n enabled: boolean;\r\n}\r\n\r\nexport class ProductsViewModel implements IProductsViewModel {\r\n productViewModels?: ProductViewModel[] | undefined;\r\n\r\n constructor(data?: IProductsViewModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n if (Array.isArray(_data[\"productViewModels\"])) {\r\n this.productViewModels = [] as any;\r\n for (let item of _data[\"productViewModels\"])\r\n this.productViewModels!.push(ProductViewModel.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): ProductsViewModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ProductsViewModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n if (Array.isArray(this.productViewModels)) {\r\n data[\"productViewModels\"] = [];\r\n for (let item of this.productViewModels)\r\n data[\"productViewModels\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IProductsViewModel {\r\n productViewModels?: ProductViewModel[] | undefined;\r\n}\r\n\r\nexport class ProductsViewModelRequest implements IProductsViewModelRequest {\r\n importSetId!: number;\r\n\r\n constructor(data?: IProductsViewModelRequest) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.importSetId = _data[\"importSetId\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): ProductsViewModelRequest {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ProductsViewModelRequest();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"importSetId\"] = this.importSetId;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IProductsViewModelRequest {\r\n importSetId: number;\r\n}\r\n\r\nexport class GetProductRequest implements IGetProductRequest {\r\n id!: number;\r\n\r\n constructor(data?: IGetProductRequest) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): GetProductRequest {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new GetProductRequest();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IGetProductRequest {\r\n id: number;\r\n}\r\n\r\nexport class SaveProductViewModel implements ISaveProductViewModel {\r\n id!: number;\r\n name?: string | undefined;\r\n position!: number;\r\n importSetId!: number;\r\n\r\n constructor(data?: ISaveProductViewModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.name = _data[\"name\"];\r\n this.position = _data[\"position\"];\r\n this.importSetId = _data[\"importSetId\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): SaveProductViewModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new SaveProductViewModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"name\"] = this.name;\r\n data[\"position\"] = this.position;\r\n data[\"importSetId\"] = this.importSetId;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ISaveProductViewModel {\r\n id: number;\r\n name?: string | undefined;\r\n position: number;\r\n importSetId: number;\r\n}\r\n\r\nexport class ResetImportRequestModel implements IResetImportRequestModel {\r\n bcbImportSetId!: number;\r\n productId!: number;\r\n bcbProductId!: number;\r\n\r\n constructor(data?: IResetImportRequestModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.bcbImportSetId = _data[\"bcbImportSetId\"];\r\n this.productId = _data[\"productId\"];\r\n this.bcbProductId = _data[\"bcbProductId\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): ResetImportRequestModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ResetImportRequestModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"bcbImportSetId\"] = this.bcbImportSetId;\r\n data[\"productId\"] = this.productId;\r\n data[\"bcbProductId\"] = this.bcbProductId;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IResetImportRequestModel {\r\n bcbImportSetId: number;\r\n productId: number;\r\n bcbProductId: number;\r\n}\r\n\r\nexport class CleanUpResponseModel implements ICleanUpResponseModel {\r\n deleteBCBEBOs!: number;\r\n deleteBCBEigenschappen!: number;\r\n deleteBCBOpbouwen!: number;\r\n\r\n constructor(data?: ICleanUpResponseModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.deleteBCBEBOs = _data[\"deleteBCBEBOs\"];\r\n this.deleteBCBEigenschappen = _data[\"deleteBCBEigenschappen\"];\r\n this.deleteBCBOpbouwen = _data[\"deleteBCBOpbouwen\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): CleanUpResponseModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new CleanUpResponseModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"deleteBCBEBOs\"] = this.deleteBCBEBOs;\r\n data[\"deleteBCBEigenschappen\"] = this.deleteBCBEigenschappen;\r\n data[\"deleteBCBOpbouwen\"] = this.deleteBCBOpbouwen;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ICleanUpResponseModel {\r\n deleteBCBEBOs: number;\r\n deleteBCBEigenschappen: number;\r\n deleteBCBOpbouwen: number;\r\n}\r\n\r\nexport class ConnectEigenschapOptieResponse implements IConnectEigenschapOptieResponse {\r\n locations?: ConnectBCBEigenschapOptieLocation[] | undefined;\r\n\r\n constructor(data?: IConnectEigenschapOptieResponse) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n if (Array.isArray(_data[\"locations\"])) {\r\n this.locations = [] as any;\r\n for (let item of _data[\"locations\"])\r\n this.locations!.push(ConnectBCBEigenschapOptieLocation.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): ConnectEigenschapOptieResponse {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ConnectEigenschapOptieResponse();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n if (Array.isArray(this.locations)) {\r\n data[\"locations\"] = [];\r\n for (let item of this.locations)\r\n data[\"locations\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IConnectEigenschapOptieResponse {\r\n locations?: ConnectBCBEigenschapOptieLocation[] | undefined;\r\n}\r\n\r\nexport class ConnectBCBEigenschapOptieLocation implements IConnectBCBEigenschapOptieLocation {\r\n location?: string | undefined;\r\n ebos?: string[] | undefined;\r\n\r\n constructor(data?: IConnectBCBEigenschapOptieLocation) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.location = _data[\"location\"];\r\n if (Array.isArray(_data[\"ebos\"])) {\r\n this.ebos = [] as any;\r\n for (let item of _data[\"ebos\"])\r\n this.ebos!.push(item);\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): ConnectBCBEigenschapOptieLocation {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ConnectBCBEigenschapOptieLocation();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"location\"] = this.location;\r\n if (Array.isArray(this.ebos)) {\r\n data[\"ebos\"] = [];\r\n for (let item of this.ebos)\r\n data[\"ebos\"].push(item);\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IConnectBCBEigenschapOptieLocation {\r\n location?: string | undefined;\r\n ebos?: string[] | undefined;\r\n}\r\n\r\nexport class ConnectEigenschapOptieRequest implements IConnectEigenschapOptieRequest {\r\n location?: string | undefined;\r\n bcbEigenschapOptieId!: number;\r\n bcbProductId!: number;\r\n filterOptionId!: number;\r\n\r\n constructor(data?: IConnectEigenschapOptieRequest) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.location = _data[\"location\"];\r\n this.bcbEigenschapOptieId = _data[\"bcbEigenschapOptieId\"];\r\n this.bcbProductId = _data[\"bcbProductId\"];\r\n this.filterOptionId = _data[\"filterOptionId\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): ConnectEigenschapOptieRequest {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ConnectEigenschapOptieRequest();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"location\"] = this.location;\r\n data[\"bcbEigenschapOptieId\"] = this.bcbEigenschapOptieId;\r\n data[\"bcbProductId\"] = this.bcbProductId;\r\n data[\"filterOptionId\"] = this.filterOptionId;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IConnectEigenschapOptieRequest {\r\n location?: string | undefined;\r\n bcbEigenschapOptieId: number;\r\n bcbProductId: number;\r\n filterOptionId: number;\r\n}\r\n\r\nexport class ConnectOpbouwOptieRequest implements IConnectOpbouwOptieRequest {\r\n bcbProductOpbouwOptieId!: number;\r\n filterOptionId!: number;\r\n\r\n constructor(data?: IConnectOpbouwOptieRequest) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.bcbProductOpbouwOptieId = _data[\"bcbProductOpbouwOptieId\"];\r\n this.filterOptionId = _data[\"filterOptionId\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): ConnectOpbouwOptieRequest {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ConnectOpbouwOptieRequest();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"bcbProductOpbouwOptieId\"] = this.bcbProductOpbouwOptieId;\r\n data[\"filterOptionId\"] = this.filterOptionId;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IConnectOpbouwOptieRequest {\r\n bcbProductOpbouwOptieId: number;\r\n filterOptionId: number;\r\n}\r\n\r\nexport class IgnoreOpbouwOptieRequest implements IIgnoreOpbouwOptieRequest {\r\n bcbProductOpbouwOptieId!: number;\r\n\r\n constructor(data?: IIgnoreOpbouwOptieRequest) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.bcbProductOpbouwOptieId = _data[\"bcbProductOpbouwOptieId\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): IgnoreOpbouwOptieRequest {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new IgnoreOpbouwOptieRequest();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"bcbProductOpbouwOptieId\"] = this.bcbProductOpbouwOptieId;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IIgnoreOpbouwOptieRequest {\r\n bcbProductOpbouwOptieId: number;\r\n}\r\n\r\nexport class RemoveOpbouwOptieRequest implements IRemoveOpbouwOptieRequest {\r\n bcbProductOpbouwOptieId!: number;\r\n\r\n constructor(data?: IRemoveOpbouwOptieRequest) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.bcbProductOpbouwOptieId = _data[\"bcbProductOpbouwOptieId\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): RemoveOpbouwOptieRequest {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new RemoveOpbouwOptieRequest();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"bcbProductOpbouwOptieId\"] = this.bcbProductOpbouwOptieId;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IRemoveOpbouwOptieRequest {\r\n bcbProductOpbouwOptieId: number;\r\n}\r\n\r\nexport class ConnectBCBEigenschapRequest implements IConnectBCBEigenschapRequest {\r\n bcbEigenschapId!: number;\r\n bcbImportSetId!: number;\r\n location?: string | undefined;\r\n\r\n constructor(data?: IConnectBCBEigenschapRequest) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.bcbEigenschapId = _data[\"bcbEigenschapId\"];\r\n this.bcbImportSetId = _data[\"bcbImportSetId\"];\r\n this.location = _data[\"location\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): ConnectBCBEigenschapRequest {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ConnectBCBEigenschapRequest();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"bcbEigenschapId\"] = this.bcbEigenschapId;\r\n data[\"bcbImportSetId\"] = this.bcbImportSetId;\r\n data[\"location\"] = this.location;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IConnectBCBEigenschapRequest {\r\n bcbEigenschapId: number;\r\n bcbImportSetId: number;\r\n location?: string | undefined;\r\n}\r\n\r\nexport class ConnectManyNameResponse implements IConnectManyNameResponse {\r\n success!: boolean;\r\n\r\n constructor(data?: IConnectManyNameResponse) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.success = _data[\"success\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): ConnectManyNameResponse {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ConnectManyNameResponse();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"success\"] = this.success;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IConnectManyNameResponse {\r\n success: boolean;\r\n}\r\n\r\nexport class ConnectManyNameRequest implements IConnectManyNameRequest {\r\n bcbProductEigenschapOptieId!: number;\r\n filterId!: number;\r\n levelsDeep!: number;\r\n\r\n constructor(data?: IConnectManyNameRequest) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.bcbProductEigenschapOptieId = _data[\"bcbProductEigenschapOptieId\"];\r\n this.filterId = _data[\"filterId\"];\r\n this.levelsDeep = _data[\"levelsDeep\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): ConnectManyNameRequest {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ConnectManyNameRequest();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"bcbProductEigenschapOptieId\"] = this.bcbProductEigenschapOptieId;\r\n data[\"filterId\"] = this.filterId;\r\n data[\"levelsDeep\"] = this.levelsDeep;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IConnectManyNameRequest {\r\n bcbProductEigenschapOptieId: number;\r\n filterId: number;\r\n levelsDeep: number;\r\n}\r\n\r\nexport class ConnectManyPreviewResponse implements IConnectManyPreviewResponse {\r\n containers?: ConnectManyPreviewContainerResponse[] | undefined;\r\n\r\n constructor(data?: IConnectManyPreviewResponse) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n if (Array.isArray(_data[\"containers\"])) {\r\n this.containers = [] as any;\r\n for (let item of _data[\"containers\"])\r\n this.containers!.push(ConnectManyPreviewContainerResponse.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): ConnectManyPreviewResponse {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ConnectManyPreviewResponse();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n if (Array.isArray(this.containers)) {\r\n data[\"containers\"] = [];\r\n for (let item of this.containers)\r\n data[\"containers\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IConnectManyPreviewResponse {\r\n containers?: ConnectManyPreviewContainerResponse[] | undefined;\r\n}\r\n\r\nexport class ConnectManyPreviewContainerResponse implements IConnectManyPreviewContainerResponse {\r\n name?: string | undefined;\r\n ebOs?: ConnectManyPreviewEBOResponse[] | undefined;\r\n\r\n constructor(data?: IConnectManyPreviewContainerResponse) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.name = _data[\"name\"];\r\n if (Array.isArray(_data[\"ebOs\"])) {\r\n this.ebOs = [] as any;\r\n for (let item of _data[\"ebOs\"])\r\n this.ebOs!.push(ConnectManyPreviewEBOResponse.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): ConnectManyPreviewContainerResponse {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ConnectManyPreviewContainerResponse();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"name\"] = this.name;\r\n if (Array.isArray(this.ebOs)) {\r\n data[\"ebOs\"] = [];\r\n for (let item of this.ebOs)\r\n data[\"ebOs\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IConnectManyPreviewContainerResponse {\r\n name?: string | undefined;\r\n ebOs?: ConnectManyPreviewEBOResponse[] | undefined;\r\n}\r\n\r\nexport class ConnectManyPreviewEBOResponse implements IConnectManyPreviewEBOResponse {\r\n ebo?: BCBEBOViewModel | undefined;\r\n count!: number;\r\n\r\n constructor(data?: IConnectManyPreviewEBOResponse) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.ebo = _data[\"ebo\"] ? BCBEBOViewModel.fromJS(_data[\"ebo\"]) : <any>undefined;\r\n this.count = _data[\"count\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): ConnectManyPreviewEBOResponse {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ConnectManyPreviewEBOResponse();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"ebo\"] = this.ebo ? this.ebo.toJSON() : <any>undefined;\r\n data[\"count\"] = this.count;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IConnectManyPreviewEBOResponse {\r\n ebo?: BCBEBOViewModel | undefined;\r\n count: number;\r\n}\r\n\r\nexport class ConnectManyPreviewRequest implements IConnectManyPreviewRequest {\r\n bcbProductEigenschapOptieId!: number;\r\n levelsDeep!: number;\r\n\r\n constructor(data?: IConnectManyPreviewRequest) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.bcbProductEigenschapOptieId = _data[\"bcbProductEigenschapOptieId\"];\r\n this.levelsDeep = _data[\"levelsDeep\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): ConnectManyPreviewRequest {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ConnectManyPreviewRequest();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"bcbProductEigenschapOptieId\"] = this.bcbProductEigenschapOptieId;\r\n data[\"levelsDeep\"] = this.levelsDeep;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IConnectManyPreviewRequest {\r\n bcbProductEigenschapOptieId: number;\r\n levelsDeep: number;\r\n}\r\n\r\nexport class ConnectManyEBORequest implements IConnectManyEBORequest {\r\n bcbProductOpbouwOptieId!: number;\r\n doType?: string | undefined;\r\n filterId!: number;\r\n levelsDeep!: number;\r\n\r\n constructor(data?: IConnectManyEBORequest) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.bcbProductOpbouwOptieId = _data[\"bcbProductOpbouwOptieId\"];\r\n this.doType = _data[\"doType\"];\r\n this.filterId = _data[\"filterId\"];\r\n this.levelsDeep = _data[\"levelsDeep\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): ConnectManyEBORequest {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ConnectManyEBORequest();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"bcbProductOpbouwOptieId\"] = this.bcbProductOpbouwOptieId;\r\n data[\"doType\"] = this.doType;\r\n data[\"filterId\"] = this.filterId;\r\n data[\"levelsDeep\"] = this.levelsDeep;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IConnectManyEBORequest {\r\n bcbProductOpbouwOptieId: number;\r\n doType?: string | undefined;\r\n filterId: number;\r\n levelsDeep: number;\r\n}\r\n\r\nexport class ConnectManyEBODORequest implements IConnectManyEBODORequest {\r\n bcbImportSetId!: number;\r\n bcbebodoId!: number;\r\n filterId!: number;\r\n\r\n constructor(data?: IConnectManyEBODORequest) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.bcbImportSetId = _data[\"bcbImportSetId\"];\r\n this.bcbebodoId = _data[\"bcbebodoId\"];\r\n this.filterId = _data[\"filterId\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): ConnectManyEBODORequest {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ConnectManyEBODORequest();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"bcbImportSetId\"] = this.bcbImportSetId;\r\n data[\"bcbebodoId\"] = this.bcbebodoId;\r\n data[\"filterId\"] = this.filterId;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IConnectManyEBODORequest {\r\n bcbImportSetId: number;\r\n bcbebodoId: number;\r\n filterId: number;\r\n}\r\n\r\nexport class ConnectBCBEigenschapRangeInputResponse implements IConnectBCBEigenschapRangeInputResponse {\r\n eigenschappen?: BCBEigenschapLocation[] | undefined;\r\n\r\n constructor(data?: IConnectBCBEigenschapRangeInputResponse) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n if (Array.isArray(_data[\"eigenschappen\"])) {\r\n this.eigenschappen = [] as any;\r\n for (let item of _data[\"eigenschappen\"])\r\n this.eigenschappen!.push(BCBEigenschapLocation.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): ConnectBCBEigenschapRangeInputResponse {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ConnectBCBEigenschapRangeInputResponse();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n if (Array.isArray(this.eigenschappen)) {\r\n data[\"eigenschappen\"] = [];\r\n for (let item of this.eigenschappen)\r\n data[\"eigenschappen\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IConnectBCBEigenschapRangeInputResponse {\r\n eigenschappen?: BCBEigenschapLocation[] | undefined;\r\n}\r\n\r\nexport class BCBEigenschapLocation implements IBCBEigenschapLocation {\r\n location?: string | undefined;\r\n eigenschappen?: string[] | undefined;\r\n\r\n constructor(data?: IBCBEigenschapLocation) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.location = _data[\"location\"];\r\n if (Array.isArray(_data[\"eigenschappen\"])) {\r\n this.eigenschappen = [] as any;\r\n for (let item of _data[\"eigenschappen\"])\r\n this.eigenschappen!.push(item);\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): BCBEigenschapLocation {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new BCBEigenschapLocation();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"location\"] = this.location;\r\n if (Array.isArray(this.eigenschappen)) {\r\n data[\"eigenschappen\"] = [];\r\n for (let item of this.eigenschappen)\r\n data[\"eigenschappen\"].push(item);\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IBCBEigenschapLocation {\r\n location?: string | undefined;\r\n eigenschappen?: string[] | undefined;\r\n}\r\n\r\nexport class ConnectBCBEigenschapRangeInputRequest implements IConnectBCBEigenschapRangeInputRequest {\r\n location?: string | undefined;\r\n rangeInput?: string | undefined;\r\n rangeInputId!: number;\r\n bcbEigenschapId!: number;\r\n bcbProductId!: number;\r\n\r\n constructor(data?: IConnectBCBEigenschapRangeInputRequest) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.location = _data[\"location\"];\r\n this.rangeInput = _data[\"rangeInput\"];\r\n this.rangeInputId = _data[\"rangeInputId\"];\r\n this.bcbEigenschapId = _data[\"bcbEigenschapId\"];\r\n this.bcbProductId = _data[\"bcbProductId\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): ConnectBCBEigenschapRangeInputRequest {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ConnectBCBEigenschapRangeInputRequest();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"location\"] = this.location;\r\n data[\"rangeInput\"] = this.rangeInput;\r\n data[\"rangeInputId\"] = this.rangeInputId;\r\n data[\"bcbEigenschapId\"] = this.bcbEigenschapId;\r\n data[\"bcbProductId\"] = this.bcbProductId;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IConnectBCBEigenschapRangeInputRequest {\r\n location?: string | undefined;\r\n rangeInput?: string | undefined;\r\n rangeInputId: number;\r\n bcbEigenschapId: number;\r\n bcbProductId: number;\r\n}\r\n\r\nexport class ProjectSettingsViewModel implements IProjectSettingsViewModel {\r\n pipelineStep?: string | undefined;\r\n pipelineSteps?: string[] | undefined;\r\n projectSettingViewModels?: ProjectSettingViewModel[] | undefined;\r\n\r\n constructor(data?: IProjectSettingsViewModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.pipelineStep = _data[\"pipelineStep\"];\r\n if (Array.isArray(_data[\"pipelineSteps\"])) {\r\n this.pipelineSteps = [] as any;\r\n for (let item of _data[\"pipelineSteps\"])\r\n this.pipelineSteps!.push(item);\r\n }\r\n if (Array.isArray(_data[\"projectSettingViewModels\"])) {\r\n this.projectSettingViewModels = [] as any;\r\n for (let item of _data[\"projectSettingViewModels\"])\r\n this.projectSettingViewModels!.push(ProjectSettingViewModel.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): ProjectSettingsViewModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ProjectSettingsViewModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"pipelineStep\"] = this.pipelineStep;\r\n if (Array.isArray(this.pipelineSteps)) {\r\n data[\"pipelineSteps\"] = [];\r\n for (let item of this.pipelineSteps)\r\n data[\"pipelineSteps\"].push(item);\r\n }\r\n if (Array.isArray(this.projectSettingViewModels)) {\r\n data[\"projectSettingViewModels\"] = [];\r\n for (let item of this.projectSettingViewModels)\r\n data[\"projectSettingViewModels\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IProjectSettingsViewModel {\r\n pipelineStep?: string | undefined;\r\n pipelineSteps?: string[] | undefined;\r\n projectSettingViewModels?: ProjectSettingViewModel[] | undefined;\r\n}\r\n\r\nexport class ProjectSettingViewModel implements IProjectSettingViewModel {\r\n name?: string | undefined;\r\n activeValue?: string | undefined;\r\n defaultValue?: string | undefined;\r\n default!: boolean;\r\n overruled!: boolean;\r\n projectSettingType!: ProjectSettingType;\r\n options?: string[] | undefined;\r\n pipelineSteps?: ProjectSettingPipelineStepViewModel[] | undefined;\r\n\r\n constructor(data?: IProjectSettingViewModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.name = _data[\"name\"];\r\n this.activeValue = _data[\"activeValue\"];\r\n this.defaultValue = _data[\"defaultValue\"];\r\n this.default = _data[\"default\"];\r\n this.overruled = _data[\"overruled\"];\r\n this.projectSettingType = _data[\"projectSettingType\"];\r\n if (Array.isArray(_data[\"options\"])) {\r\n this.options = [] as any;\r\n for (let item of _data[\"options\"])\r\n this.options!.push(item);\r\n }\r\n if (Array.isArray(_data[\"pipelineSteps\"])) {\r\n this.pipelineSteps = [] as any;\r\n for (let item of _data[\"pipelineSteps\"])\r\n this.pipelineSteps!.push(ProjectSettingPipelineStepViewModel.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): ProjectSettingViewModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ProjectSettingViewModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"name\"] = this.name;\r\n data[\"activeValue\"] = this.activeValue;\r\n data[\"defaultValue\"] = this.defaultValue;\r\n data[\"default\"] = this.default;\r\n data[\"overruled\"] = this.overruled;\r\n data[\"projectSettingType\"] = this.projectSettingType;\r\n if (Array.isArray(this.options)) {\r\n data[\"options\"] = [];\r\n for (let item of this.options)\r\n data[\"options\"].push(item);\r\n }\r\n if (Array.isArray(this.pipelineSteps)) {\r\n data[\"pipelineSteps\"] = [];\r\n for (let item of this.pipelineSteps)\r\n data[\"pipelineSteps\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IProjectSettingViewModel {\r\n name?: string | undefined;\r\n activeValue?: string | undefined;\r\n defaultValue?: string | undefined;\r\n default: boolean;\r\n overruled: boolean;\r\n projectSettingType: ProjectSettingType;\r\n options?: string[] | undefined;\r\n pipelineSteps?: ProjectSettingPipelineStepViewModel[] | undefined;\r\n}\r\n\r\nexport enum ProjectSettingType {\r\n String = 1,\r\n Options = 2,\r\n}\r\n\r\nexport class ProjectSettingPipelineStepViewModel implements IProjectSettingPipelineStepViewModel {\r\n pipelineStep?: string | undefined;\r\n value?: string | undefined;\r\n default!: boolean;\r\n\r\n constructor(data?: IProjectSettingPipelineStepViewModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.pipelineStep = _data[\"pipelineStep\"];\r\n this.value = _data[\"value\"];\r\n this.default = _data[\"default\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): ProjectSettingPipelineStepViewModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ProjectSettingPipelineStepViewModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"pipelineStep\"] = this.pipelineStep;\r\n data[\"value\"] = this.value;\r\n data[\"default\"] = this.default;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IProjectSettingPipelineStepViewModel {\r\n pipelineStep?: string | undefined;\r\n value?: string | undefined;\r\n default: boolean;\r\n}\r\n\r\nexport class SetProjectSettingResponseModel implements ISetProjectSettingResponseModel {\r\n\r\n constructor(data?: ISetProjectSettingResponseModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n }\r\n\r\n static fromJS(data: any): SetProjectSettingResponseModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new SetProjectSettingResponseModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ISetProjectSettingResponseModel {\r\n}\r\n\r\nexport class SetProjectSettingRequestModel implements ISetProjectSettingRequestModel {\r\n name?: string | undefined;\r\n value?: string | undefined;\r\n pipelineStep?: string | undefined;\r\n\r\n constructor(data?: ISetProjectSettingRequestModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.name = _data[\"name\"];\r\n this.value = _data[\"value\"];\r\n this.pipelineStep = _data[\"pipelineStep\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): SetProjectSettingRequestModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new SetProjectSettingRequestModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"name\"] = this.name;\r\n data[\"value\"] = this.value;\r\n data[\"pipelineStep\"] = this.pipelineStep;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ISetProjectSettingRequestModel {\r\n name?: string | undefined;\r\n value?: string | undefined;\r\n pipelineStep?: string | undefined;\r\n}\r\n\r\nexport class SearchProductsResponseModel implements ISearchProductsResponseModel {\r\n eboViewModels?: WizardEBOViewModel[] | undefined;\r\n\r\n constructor(data?: ISearchProductsResponseModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n if (Array.isArray(_data[\"eboViewModels\"])) {\r\n this.eboViewModels = [] as any;\r\n for (let item of _data[\"eboViewModels\"])\r\n this.eboViewModels!.push(WizardEBOViewModel.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): SearchProductsResponseModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new SearchProductsResponseModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n if (Array.isArray(this.eboViewModels)) {\r\n data[\"eboViewModels\"] = [];\r\n for (let item of this.eboViewModels)\r\n data[\"eboViewModels\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ISearchProductsResponseModel {\r\n eboViewModels?: WizardEBOViewModel[] | undefined;\r\n}\r\n\r\nexport class SearchProductsRequestModel implements ISearchProductsRequestModel {\r\n value?: string | undefined;\r\n\r\n constructor(data?: ISearchProductsRequestModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.value = _data[\"value\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): SearchProductsRequestModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new SearchProductsRequestModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"value\"] = this.value;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ISearchProductsRequestModel {\r\n value?: string | undefined;\r\n}\r\n\r\nexport class NewProductResponseModel implements INewProductResponseModel {\r\n productId!: number;\r\n\r\n constructor(data?: INewProductResponseModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.productId = _data[\"productId\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): NewProductResponseModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new NewProductResponseModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"productId\"] = this.productId;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface INewProductResponseModel {\r\n productId: number;\r\n}\r\n\r\nexport class NewProductRequestModel implements INewProductRequestModel {\r\n productName?: string | undefined;\r\n\r\n constructor(data?: INewProductRequestModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.productName = _data[\"productName\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): NewProductRequestModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new NewProductRequestModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"productName\"] = this.productName;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface INewProductRequestModel {\r\n productName?: string | undefined;\r\n}\r\n\r\nexport class GetProductsViewModel implements IGetProductsViewModel {\r\n productViewModels?: ProductViewModel2[] | undefined;\r\n\r\n constructor(data?: IGetProductsViewModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n if (Array.isArray(_data[\"productViewModels\"])) {\r\n this.productViewModels = [] as any;\r\n for (let item of _data[\"productViewModels\"])\r\n this.productViewModels!.push(ProductViewModel2.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): GetProductsViewModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new GetProductsViewModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n if (Array.isArray(this.productViewModels)) {\r\n data[\"productViewModels\"] = [];\r\n for (let item of this.productViewModels)\r\n data[\"productViewModels\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IGetProductsViewModel {\r\n productViewModels?: ProductViewModel2[] | undefined;\r\n}\r\n\r\nexport class ProductViewModel2 implements IProductViewModel2 {\r\n id!: number;\r\n name?: string | undefined;\r\n\r\n constructor(data?: IProductViewModel2) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.name = _data[\"name\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): ProductViewModel2 {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ProductViewModel2();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"name\"] = this.name;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IProductViewModel2 {\r\n id: number;\r\n name?: string | undefined;\r\n}\r\n\r\nexport class KoppelProductsRequestModel implements IKoppelProductsRequestModel {\r\n productId!: number;\r\n searchProductEBOModels?: WizardEBOViewModel[] | undefined;\r\n\r\n constructor(data?: IKoppelProductsRequestModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.productId = _data[\"productId\"];\r\n if (Array.isArray(_data[\"searchProductEBOModels\"])) {\r\n this.searchProductEBOModels = [] as any;\r\n for (let item of _data[\"searchProductEBOModels\"])\r\n this.searchProductEBOModels!.push(WizardEBOViewModel.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): KoppelProductsRequestModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new KoppelProductsRequestModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"productId\"] = this.productId;\r\n if (Array.isArray(this.searchProductEBOModels)) {\r\n data[\"searchProductEBOModels\"] = [];\r\n for (let item of this.searchProductEBOModels)\r\n data[\"searchProductEBOModels\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IKoppelProductsRequestModel {\r\n productId: number;\r\n searchProductEBOModels?: WizardEBOViewModel[] | undefined;\r\n}\r\n\r\nexport class LoginResponseModel implements ILoginResponseModel {\r\n userId!: number;\r\n userName?: string | undefined;\r\n roles?: string[] | undefined;\r\n loginSuccess!: boolean;\r\n authData?: string | undefined;\r\n\r\n constructor(data?: ILoginResponseModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.userId = _data[\"userId\"];\r\n this.userName = _data[\"userName\"];\r\n if (Array.isArray(_data[\"roles\"])) {\r\n this.roles = [] as any;\r\n for (let item of _data[\"roles\"])\r\n this.roles!.push(item);\r\n }\r\n this.loginSuccess = _data[\"loginSuccess\"];\r\n this.authData = _data[\"authData\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): LoginResponseModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new LoginResponseModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"userId\"] = this.userId;\r\n data[\"userName\"] = this.userName;\r\n if (Array.isArray(this.roles)) {\r\n data[\"roles\"] = [];\r\n for (let item of this.roles)\r\n data[\"roles\"].push(item);\r\n }\r\n data[\"loginSuccess\"] = this.loginSuccess;\r\n data[\"authData\"] = this.authData;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ILoginResponseModel {\r\n userId: number;\r\n userName?: string | undefined;\r\n roles?: string[] | undefined;\r\n loginSuccess: boolean;\r\n authData?: string | undefined;\r\n}\r\n\r\nexport class LoginRequestModel implements ILoginRequestModel {\r\n userName?: string | undefined;\r\n password?: string | undefined;\r\n\r\n constructor(data?: ILoginRequestModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.userName = _data[\"userName\"];\r\n this.password = _data[\"password\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): LoginRequestModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new LoginRequestModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"userName\"] = this.userName;\r\n data[\"password\"] = this.password;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ILoginRequestModel {\r\n userName?: string | undefined;\r\n password?: string | undefined;\r\n}\r\n\r\nexport class LoginIPResponseModel implements ILoginIPResponseModel {\r\n ipAddress?: string | undefined;\r\n fabrikantenCoreVersion?: string | undefined;\r\n\r\n constructor(data?: ILoginIPResponseModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.ipAddress = _data[\"ipAddress\"];\r\n this.fabrikantenCoreVersion = _data[\"fabrikantenCoreVersion\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): LoginIPResponseModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new LoginIPResponseModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"ipAddress\"] = this.ipAddress;\r\n data[\"fabrikantenCoreVersion\"] = this.fabrikantenCoreVersion;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ILoginIPResponseModel {\r\n ipAddress?: string | undefined;\r\n fabrikantenCoreVersion?: string | undefined;\r\n}\r\n\r\nexport class LanguagesViewModel implements ILanguagesViewModel {\r\n languages?: LanguageViewModel[] | undefined;\r\n\r\n constructor(data?: ILanguagesViewModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n if (Array.isArray(_data[\"languages\"])) {\r\n this.languages = [] as any;\r\n for (let item of _data[\"languages\"])\r\n this.languages!.push(LanguageViewModel.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): LanguagesViewModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new LanguagesViewModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n if (Array.isArray(this.languages)) {\r\n data[\"languages\"] = [];\r\n for (let item of this.languages)\r\n data[\"languages\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ILanguagesViewModel {\r\n languages?: LanguageViewModel[] | undefined;\r\n}\r\n\r\nexport class LanguageViewModel implements ILanguageViewModel {\r\n id!: number;\r\n name?: string | undefined;\r\n countryCode?: string | undefined;\r\n flag?: string | undefined;\r\n showSpecification!: boolean;\r\n categories?: TranslateKeyCategoryViewModel[] | undefined;\r\n categoryEntries?: TranslateEntryCategoryViewModel[] | undefined;\r\n productEntries?: TranslateEntryProductViewModel[] | undefined;\r\n filterEntries?: TranslateEntryFilterViewModel[] | undefined;\r\n rangeInputEntries?: TranslateEntryRangeInputViewModel[] | undefined;\r\n filterOptionEntries?: TranslateEntryFilterOptionViewModel[] | undefined;\r\n descriptionEntries?: TranslateEntryDescriptionViewModel[] | undefined;\r\n afbeeldingEntries?: TranslateEntryAfbeeldingViewModel[] | undefined;\r\n\r\n constructor(data?: ILanguageViewModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.name = _data[\"name\"];\r\n this.countryCode = _data[\"countryCode\"];\r\n this.flag = _data[\"flag\"];\r\n this.showSpecification = _data[\"showSpecification\"];\r\n if (Array.isArray(_data[\"categories\"])) {\r\n this.categories = [] as any;\r\n for (let item of _data[\"categories\"])\r\n this.categories!.push(TranslateKeyCategoryViewModel.fromJS(item));\r\n }\r\n if (Array.isArray(_data[\"categoryEntries\"])) {\r\n this.categoryEntries = [] as any;\r\n for (let item of _data[\"categoryEntries\"])\r\n this.categoryEntries!.push(TranslateEntryCategoryViewModel.fromJS(item));\r\n }\r\n if (Array.isArray(_data[\"productEntries\"])) {\r\n this.productEntries = [] as any;\r\n for (let item of _data[\"productEntries\"])\r\n this.productEntries!.push(TranslateEntryProductViewModel.fromJS(item));\r\n }\r\n if (Array.isArray(_data[\"filterEntries\"])) {\r\n this.filterEntries = [] as any;\r\n for (let item of _data[\"filterEntries\"])\r\n this.filterEntries!.push(TranslateEntryFilterViewModel.fromJS(item));\r\n }\r\n if (Array.isArray(_data[\"rangeInputEntries\"])) {\r\n this.rangeInputEntries = [] as any;\r\n for (let item of _data[\"rangeInputEntries\"])\r\n this.rangeInputEntries!.push(TranslateEntryRangeInputViewModel.fromJS(item));\r\n }\r\n if (Array.isArray(_data[\"filterOptionEntries\"])) {\r\n this.filterOptionEntries = [] as any;\r\n for (let item of _data[\"filterOptionEntries\"])\r\n this.filterOptionEntries!.push(TranslateEntryFilterOptionViewModel.fromJS(item));\r\n }\r\n if (Array.isArray(_data[\"descriptionEntries\"])) {\r\n this.descriptionEntries = [] as any;\r\n for (let item of _data[\"descriptionEntries\"])\r\n this.descriptionEntries!.push(TranslateEntryDescriptionViewModel.fromJS(item));\r\n }\r\n if (Array.isArray(_data[\"afbeeldingEntries\"])) {\r\n this.afbeeldingEntries = [] as any;\r\n for (let item of _data[\"afbeeldingEntries\"])\r\n this.afbeeldingEntries!.push(TranslateEntryAfbeeldingViewModel.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): LanguageViewModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new LanguageViewModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"name\"] = this.name;\r\n data[\"countryCode\"] = this.countryCode;\r\n data[\"flag\"] = this.flag;\r\n data[\"showSpecification\"] = this.showSpecification;\r\n if (Array.isArray(this.categories)) {\r\n data[\"categories\"] = [];\r\n for (let item of this.categories)\r\n data[\"categories\"].push(item.toJSON());\r\n }\r\n if (Array.isArray(this.categoryEntries)) {\r\n data[\"categoryEntries\"] = [];\r\n for (let item of this.categoryEntries)\r\n data[\"categoryEntries\"].push(item.toJSON());\r\n }\r\n if (Array.isArray(this.productEntries)) {\r\n data[\"productEntries\"] = [];\r\n for (let item of this.productEntries)\r\n data[\"productEntries\"].push(item.toJSON());\r\n }\r\n if (Array.isArray(this.filterEntries)) {\r\n data[\"filterEntries\"] = [];\r\n for (let item of this.filterEntries)\r\n data[\"filterEntries\"].push(item.toJSON());\r\n }\r\n if (Array.isArray(this.rangeInputEntries)) {\r\n data[\"rangeInputEntries\"] = [];\r\n for (let item of this.rangeInputEntries)\r\n data[\"rangeInputEntries\"].push(item.toJSON());\r\n }\r\n if (Array.isArray(this.filterOptionEntries)) {\r\n data[\"filterOptionEntries\"] = [];\r\n for (let item of this.filterOptionEntries)\r\n data[\"filterOptionEntries\"].push(item.toJSON());\r\n }\r\n if (Array.isArray(this.descriptionEntries)) {\r\n data[\"descriptionEntries\"] = [];\r\n for (let item of this.descriptionEntries)\r\n data[\"descriptionEntries\"].push(item.toJSON());\r\n }\r\n if (Array.isArray(this.afbeeldingEntries)) {\r\n data[\"afbeeldingEntries\"] = [];\r\n for (let item of this.afbeeldingEntries)\r\n data[\"afbeeldingEntries\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ILanguageViewModel {\r\n id: number;\r\n name?: string | undefined;\r\n countryCode?: string | undefined;\r\n flag?: string | undefined;\r\n showSpecification: boolean;\r\n categories?: TranslateKeyCategoryViewModel[] | undefined;\r\n categoryEntries?: TranslateEntryCategoryViewModel[] | undefined;\r\n productEntries?: TranslateEntryProductViewModel[] | undefined;\r\n filterEntries?: TranslateEntryFilterViewModel[] | undefined;\r\n rangeInputEntries?: TranslateEntryRangeInputViewModel[] | undefined;\r\n filterOptionEntries?: TranslateEntryFilterOptionViewModel[] | undefined;\r\n descriptionEntries?: TranslateEntryDescriptionViewModel[] | undefined;\r\n afbeeldingEntries?: TranslateEntryAfbeeldingViewModel[] | undefined;\r\n}\r\n\r\nexport class TranslateKeyCategoryViewModel implements ITranslateKeyCategoryViewModel {\r\n id!: number;\r\n name?: string | undefined;\r\n keys?: TranslateKeyViewModel[] | undefined;\r\n\r\n constructor(data?: ITranslateKeyCategoryViewModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.name = _data[\"name\"];\r\n if (Array.isArray(_data[\"keys\"])) {\r\n this.keys = [] as any;\r\n for (let item of _data[\"keys\"])\r\n this.keys!.push(TranslateKeyViewModel.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): TranslateKeyCategoryViewModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new TranslateKeyCategoryViewModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"name\"] = this.name;\r\n if (Array.isArray(this.keys)) {\r\n data[\"keys\"] = [];\r\n for (let item of this.keys)\r\n data[\"keys\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ITranslateKeyCategoryViewModel {\r\n id: number;\r\n name?: string | undefined;\r\n keys?: TranslateKeyViewModel[] | undefined;\r\n}\r\n\r\nexport class TranslateKeyViewModel implements ITranslateKeyViewModel {\r\n id!: number;\r\n name?: string | undefined;\r\n entries?: TranslateEntryViewModel[] | undefined;\r\n\r\n constructor(data?: ITranslateKeyViewModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.name = _data[\"name\"];\r\n if (Array.isArray(_data[\"entries\"])) {\r\n this.entries = [] as any;\r\n for (let item of _data[\"entries\"])\r\n this.entries!.push(TranslateEntryViewModel.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): TranslateKeyViewModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new TranslateKeyViewModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"name\"] = this.name;\r\n if (Array.isArray(this.entries)) {\r\n data[\"entries\"] = [];\r\n for (let item of this.entries)\r\n data[\"entries\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ITranslateKeyViewModel {\r\n id: number;\r\n name?: string | undefined;\r\n entries?: TranslateEntryViewModel[] | undefined;\r\n}\r\n\r\nexport class TranslateEntryViewModel implements ITranslateEntryViewModel {\r\n id!: number;\r\n value?: string | undefined;\r\n\r\n constructor(data?: ITranslateEntryViewModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.value = _data[\"value\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): TranslateEntryViewModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new TranslateEntryViewModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"value\"] = this.value;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ITranslateEntryViewModel {\r\n id: number;\r\n value?: string | undefined;\r\n}\r\n\r\nexport class TranslateEntryCategoryViewModel implements ITranslateEntryCategoryViewModel {\r\n id!: number;\r\n categoryId!: number;\r\n categoryName?: string | undefined;\r\n value?: string | undefined;\r\n\r\n constructor(data?: ITranslateEntryCategoryViewModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.categoryId = _data[\"categoryId\"];\r\n this.categoryName = _data[\"categoryName\"];\r\n this.value = _data[\"value\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): TranslateEntryCategoryViewModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new TranslateEntryCategoryViewModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"categoryId\"] = this.categoryId;\r\n data[\"categoryName\"] = this.categoryName;\r\n data[\"value\"] = this.value;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ITranslateEntryCategoryViewModel {\r\n id: number;\r\n categoryId: number;\r\n categoryName?: string | undefined;\r\n value?: string | undefined;\r\n}\r\n\r\nexport class TranslateEntryProductViewModel implements ITranslateEntryProductViewModel {\r\n id!: number;\r\n productId!: number;\r\n productName?: string | undefined;\r\n value?: string | undefined;\r\n\r\n constructor(data?: ITranslateEntryProductViewModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.productId = _data[\"productId\"];\r\n this.productName = _data[\"productName\"];\r\n this.value = _data[\"value\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): TranslateEntryProductViewModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new TranslateEntryProductViewModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"productId\"] = this.productId;\r\n data[\"productName\"] = this.productName;\r\n data[\"value\"] = this.value;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ITranslateEntryProductViewModel {\r\n id: number;\r\n productId: number;\r\n productName?: string | undefined;\r\n value?: string | undefined;\r\n}\r\n\r\nexport class TranslateEntryFilterViewModel implements ITranslateEntryFilterViewModel {\r\n id!: number;\r\n filterId!: number;\r\n filterName?: string | undefined;\r\n value?: string | undefined;\r\n\r\n constructor(data?: ITranslateEntryFilterViewModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.filterId = _data[\"filterId\"];\r\n this.filterName = _data[\"filterName\"];\r\n this.value = _data[\"value\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): TranslateEntryFilterViewModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new TranslateEntryFilterViewModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"filterId\"] = this.filterId;\r\n data[\"filterName\"] = this.filterName;\r\n data[\"value\"] = this.value;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ITranslateEntryFilterViewModel {\r\n id: number;\r\n filterId: number;\r\n filterName?: string | undefined;\r\n value?: string | undefined;\r\n}\r\n\r\nexport class TranslateEntryRangeInputViewModel implements ITranslateEntryRangeInputViewModel {\r\n id!: number;\r\n rangeInputId!: number;\r\n rangeInputName?: string | undefined;\r\n value?: string | undefined;\r\n\r\n constructor(data?: ITranslateEntryRangeInputViewModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.rangeInputId = _data[\"rangeInputId\"];\r\n this.rangeInputName = _data[\"rangeInputName\"];\r\n this.value = _data[\"value\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): TranslateEntryRangeInputViewModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new TranslateEntryRangeInputViewModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"rangeInputId\"] = this.rangeInputId;\r\n data[\"rangeInputName\"] = this.rangeInputName;\r\n data[\"value\"] = this.value;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ITranslateEntryRangeInputViewModel {\r\n id: number;\r\n rangeInputId: number;\r\n rangeInputName?: string | undefined;\r\n value?: string | undefined;\r\n}\r\n\r\nexport class TranslateEntryFilterOptionViewModel implements ITranslateEntryFilterOptionViewModel {\r\n id!: number;\r\n filterId!: number;\r\n filterOptionId!: number;\r\n filterOptionName?: string | undefined;\r\n value?: string | undefined;\r\n\r\n constructor(data?: ITranslateEntryFilterOptionViewModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.filterId = _data[\"filterId\"];\r\n this.filterOptionId = _data[\"filterOptionId\"];\r\n this.filterOptionName = _data[\"filterOptionName\"];\r\n this.value = _data[\"value\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): TranslateEntryFilterOptionViewModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new TranslateEntryFilterOptionViewModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"filterId\"] = this.filterId;\r\n data[\"filterOptionId\"] = this.filterOptionId;\r\n data[\"filterOptionName\"] = this.filterOptionName;\r\n data[\"value\"] = this.value;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ITranslateEntryFilterOptionViewModel {\r\n id: number;\r\n filterId: number;\r\n filterOptionId: number;\r\n filterOptionName?: string | undefined;\r\n value?: string | undefined;\r\n}\r\n\r\nexport class TranslateEntryDescriptionViewModel implements ITranslateEntryDescriptionViewModel {\r\n id!: number;\r\n bcbProductId!: number;\r\n productName?: string | undefined;\r\n value?: string | undefined;\r\n\r\n constructor(data?: ITranslateEntryDescriptionViewModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.bcbProductId = _data[\"bcbProductId\"];\r\n this.productName = _data[\"productName\"];\r\n this.value = _data[\"value\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): TranslateEntryDescriptionViewModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new TranslateEntryDescriptionViewModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"bcbProductId\"] = this.bcbProductId;\r\n data[\"productName\"] = this.productName;\r\n data[\"value\"] = this.value;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ITranslateEntryDescriptionViewModel {\r\n id: number;\r\n bcbProductId: number;\r\n productName?: string | undefined;\r\n value?: string | undefined;\r\n}\r\n\r\nexport class TranslateEntryAfbeeldingViewModel implements ITranslateEntryAfbeeldingViewModel {\r\n id!: number;\r\n bcbProductAfbeeldingId!: number;\r\n productName?: string | undefined;\r\n value?: string | undefined;\r\n\r\n constructor(data?: ITranslateEntryAfbeeldingViewModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.bcbProductAfbeeldingId = _data[\"bcbProductAfbeeldingId\"];\r\n this.productName = _data[\"productName\"];\r\n this.value = _data[\"value\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): TranslateEntryAfbeeldingViewModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new TranslateEntryAfbeeldingViewModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"bcbProductAfbeeldingId\"] = this.bcbProductAfbeeldingId;\r\n data[\"productName\"] = this.productName;\r\n data[\"value\"] = this.value;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ITranslateEntryAfbeeldingViewModel {\r\n id: number;\r\n bcbProductAfbeeldingId: number;\r\n productName?: string | undefined;\r\n value?: string | undefined;\r\n}\r\n\r\nexport class CreateLanguageRequest implements ICreateLanguageRequest {\r\n name?: string | undefined;\r\n countryCode?: string | undefined;\r\n\r\n constructor(data?: ICreateLanguageRequest) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.name = _data[\"name\"];\r\n this.countryCode = _data[\"countryCode\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): CreateLanguageRequest {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new CreateLanguageRequest();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"name\"] = this.name;\r\n data[\"countryCode\"] = this.countryCode;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ICreateLanguageRequest {\r\n name?: string | undefined;\r\n countryCode?: string | undefined;\r\n}\r\n\r\nexport class CreateExportResponse implements ICreateExportResponse {\r\n url?: string | undefined;\r\n\r\n constructor(data?: ICreateExportResponse) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.url = _data[\"url\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): CreateExportResponse {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new CreateExportResponse();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"url\"] = this.url;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ICreateExportResponse {\r\n url?: string | undefined;\r\n}\r\n\r\nexport class CreateExportRequest implements ICreateExportRequest {\r\n\r\n constructor(data?: ICreateExportRequest) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n }\r\n\r\n static fromJS(data: any): CreateExportRequest {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new CreateExportRequest();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ICreateExportRequest {\r\n}\r\n\r\nexport class ReadExportRequest implements IReadExportRequest {\r\n\r\n constructor(data?: IReadExportRequest) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (<any>this)[property] = (<any>data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n }\r\n\r\n static fromJS(data: any): ReadExportRequest {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ReadExportRequest();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IReadExportRequest {\r\n}\r\n\r\nexport class ApiException extends Error {\r\n override message: string;\r\n status: number;\r\n response: string;\r\n headers: { [key: string]: any; };\r\n result: any;\r\n\r\n constructor(message: string, status: number, response: string, headers: { [key: string]: any; }, result: any) {\r\n super();\r\n\r\n this.message = message;\r\n this.status = status;\r\n this.response = response;\r\n this.headers = headers;\r\n this.result = result;\r\n }\r\n\r\n protected isApiException = true;\r\n\r\n static isApiException(obj: any): obj is ApiException {\r\n return obj.isApiException === true;\r\n }\r\n}\r\n\r\nfunction throwException(message: string, status: number, response: string, headers: { [key: string]: any; }, result?: any): Observable<any> {\r\n if (result !== null && result !== undefined)\r\n return _observableThrow(result);\r\n else\r\n return _observableThrow(new ApiException(message, status, response, headers, null));\r\n}\r\n\r\nfunction blobToText(blob: any): Observable<string> {\r\n return new Observable<string>((observer: any) => {\r\n if (!blob) {\r\n observer.next(\"\");\r\n observer.complete();\r\n } else {\r\n let reader = new FileReader();\r\n reader.onload = event => {\r\n observer.next((event.target as any).result);\r\n observer.complete();\r\n };\r\n reader.readAsText(blob);\r\n }\r\n });\r\n}","import { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { BehaviorSubject, Observable } from 'rxjs';\r\nimport { map } from 'rxjs/operators';\r\n\r\nimport { SecurityApiClient, LoginRequestModel, LoginResponseModel } from '../swagger/SwaggerClient';\r\nimport { BeheerInlogComponent } from '../beheer/components/beheer-inlog/beheer-inlog.component';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class AuthenticationService {\r\n\r\n public LoadingLogin: boolean = false;\r\n\r\n private currentUserSubject: BehaviorSubject<LoginResponseModel>;\r\n public currentUser: Observable<LoginResponseModel>;\r\n\r\n constructor(private securityApiClient: SecurityApiClient) {\r\n this.currentUserSubject = new BehaviorSubject<LoginResponseModel>(JSON.parse(localStorage.getItem('currentUser') + \"\"));\r\n this.currentUser = this.currentUserSubject.asObservable();\r\n }\r\n\r\n public get currentUserValue(): LoginResponseModel {\r\n return this.currentUserSubject.value;\r\n }\r\n\r\n public login(username: string, password: string, beheer: BeheerInlogComponent, success: (beheer: BeheerInlogComponent) => void, fail: (beheer: BeheerInlogComponent, message: string) => void) {\r\n this.LoadingLogin = true;\r\n var model: LoginRequestModel = new LoginRequestModel();\r\n model.userName = username;\r\n model.password = password;\r\n\r\n this.securityApiClient.authenticateUser(model).subscribe(model => {\r\n // store user details and basic auth credentials in local storage to keep user logged in between page refreshes\r\n if (model.loginSuccess) {\r\n model.authData = window.btoa(username + ':' + password);\r\n localStorage.setItem('currentUser', JSON.stringify(model));\r\n this.currentUserSubject.next(model);\r\n\r\n success(beheer);\r\n }\r\n else {\r\n fail(beheer, \"Gebruikersnaam + wachtwoord combinatie onbekend\");\r\n }\r\n\r\n this.LoadingLogin = false;\r\n });\r\n\r\n }\r\n\r\n public logout() {\r\n // remove user from local storage to log user out\r\n localStorage.removeItem('currentUser');\r\n this.currentUserSubject.next(new LoginResponseModel());\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpRequest, HttpHandler, HttpEvent, HttpInterceptor } from '@angular/common/http';\r\nimport { Observable } from 'rxjs';\r\n\r\nimport { AuthenticationService } from '../services/authentication.service';\r\n\r\n@Injectable()\r\nexport class BasicAuthInterceptor implements HttpInterceptor {\r\n constructor(private authenticationService: AuthenticationService) { }\r\n\r\n intercept(request: HttpRequest<any>, next: HttpHandler): Observable<HttpEvent<any>> {\r\n // add authorization header with basic auth credentials if available\r\n const currentUser = this.authenticationService.currentUserValue;\r\n if (currentUser && currentUser.authData) {\r\n request = request.clone({\r\n setHeaders: {\r\n Authorization: `Basic ${currentUser.authData}`\r\n }\r\n });\r\n }\r\n\r\n return next.handle(request);\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpRequest, HttpHandler, HttpEvent, HttpInterceptor } from '@angular/common/http';\r\nimport { Observable, throwError } from 'rxjs';\r\nimport { catchError } from 'rxjs/operators';\r\n\r\nimport { AuthenticationService } from '../services/authentication.service';\r\n\r\n@Injectable()\r\nexport class ErrorInterceptor implements HttpInterceptor {\r\n constructor(private authenticationService: AuthenticationService) { }\r\n\r\n intercept(request: HttpRequest<any>, next: HttpHandler): Observable<HttpEvent<any>> {\r\n return next.handle(request).pipe(catchError(err => {\r\n if (err.status === 401) {\r\n // auto logout if 401 response returned from api\r\n this.authenticationService.logout();\r\n location.reload();\r\n }\r\n\r\n const error = err.error.message || err.statusText;\r\n return throwError(error);\r\n }))\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { Router, CanActivate, ActivatedRouteSnapshot, RouterStateSnapshot } from '@angular/router';\r\n\r\nimport { AuthenticationService } from '../services/authentication.service';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class AuthGuard implements CanActivate {\r\n constructor(\r\n private router: Router,\r\n private authenticationService: AuthenticationService\r\n ) { }\r\n\r\n canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot) {\r\n const currentUser = this.authenticationService.currentUserValue;\r\n if (currentUser && currentUser.userName != null) {\r\n // logged in so return true\r\n return true;\r\n }\r\n\r\n // not logged in so redirect to login page with the return url\r\n //this.router.navigate(['/beheer/inloggen'], { queryParams: { returnUrl: state.url } });\r\n \r\n // or without return url lol\r\n this.router.navigate(['/beheer/inloggen']);\r\n\r\n return false;\r\n }\r\n}\r\n","import { Component, OnInit, ViewEncapsulation } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { FabrikantenApiClient } from '../../../swagger/SwaggerClient';\r\nimport { AuthenticationService } from './../../../services/authentication.service'\r\n\r\n@Component({\r\n selector: 'app-beheer-nav',\r\n templateUrl: './beheer-nav.component.html',\r\n styleUrls: ['./beheer-nav.component.scss'],\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class BeheerNavComponent implements OnInit {\r\n\r\n public ResetCacheTitle: string = \"Reset Cache\";\r\n\r\n constructor(public authenticationService: AuthenticationService, private router: Router, private FabrikantenApiClient: FabrikantenApiClient) {\r\n }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n public LogOff(): void {\r\n this.authenticationService.logout();\r\n this.router.navigateByUrl('/beheer/inloggen');\r\n }\r\n\r\n public NavigateTo(name: string) {\r\n this.router.navigateByUrl('/beheer/' + name);\r\n }\r\n\r\n public IsActive(name: string): boolean {\r\n return window.location.href.toLowerCase().indexOf(name.toLowerCase()) != -1;\r\n }\r\n\r\n public ResetCache(): void {\r\n this.ResetCacheTitle = \"...\";\r\n this.FabrikantenApiClient.resetCache().subscribe(() => {\r\n this.ResetCacheTitle = \"Reset Cache\";\r\n alert('cache reset success');\r\n }, (error: Response) => {\r\n if (error.status == 400)\r\n console.log(error.json());\r\n else {\r\n console.log('An unexpected error occured');\r\n console.log(error);\r\n }\r\n });\r\n }\r\n}\r\n","<div class=\"main-block\">\n <div class=\"row\">\n <div class=\"cell left-block\">\n <button mat-raised-button (click)=\"NavigateTo('searchproducts')\" class=\"link\" [disabled]=\"IsActive('/searchproducts')\">\n Zoeken\n </button>\n <button mat-raised-button (click)=\"NavigateTo('importsets')\" class=\"link\" [disabled]=\"IsActive('/importsets')\">\n Import\n </button>\n <button mat-raised-button (click)=\"NavigateTo('products')\" class=\"link\" [disabled]=\"IsActive('/products')\">\n Products\n </button>\n <button mat-raised-button (click)=\"NavigateTo('filters')\" class=\"link\" [disabled]=\"IsActive('/filters')\">\n Filters\n </button>\n <button mat-raised-button (click)=\"NavigateTo('ebokoppel')\" class=\"link\" [disabled]=\"IsActive('/ebokoppel')\">\n EBO Koppel\n </button>\n <button mat-raised-button (click)=\"NavigateTo('categories')\" class=\"link\" [disabled]=\"IsActive('/categories')\">\n Categories\n </button>\n </div>\n <div class=\"cell right-block\">\n <button mat-raised-button (click)=\"ResetCache()\" class=\"link\">\n {{ ResetCacheTitle }}\n </button>\n <button mat-raised-button (click)=\"NavigateTo('settings')\" class=\"link\" [disabled]=\"IsActive('/settings')\">\n Settings\n </button>\n <button mat-raised-button (click)=\"NavigateTo('translate')\" class=\"link\" [disabled]=\"IsActive('/translate')\">\n Translate\n </button>\n <button mat-raised-button (click)=\"NavigateTo('users')\" class=\"link\" [disabled]=\"IsActive('/users')\">\n Users\n </button>\n <button mat-raised-button (click)=\"LogOff()\" class=\"link\">\n Uitloggen\n </button>\n </div>\n </div>\n</div>\n","import { Component, OnInit } from '@angular/core';\r\n\n@Component({\n selector: 'app-beheer-main',\n templateUrl: './beheer-main.component.html',\n styleUrls: ['./beheer-main.component.css']\n})\nexport class BeheerMainComponent implements OnInit {\n\n constructor() {\n \n }\n\n ngOnInit() {\n }\n\n}\n","<app-beheer-nav></app-beheer-nav>\r\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-fab-loader',\n templateUrl: './fab-loader.component.html',\n styleUrls: ['./fab-loader.component.scss']\n})\nexport class FabLoaderComponent implements OnInit {\n\n constructor() { }\n\n ngOnInit(): void {\n }\n\n}\n","<div class=\"main-div\">\r\n <mat-spinner></mat-spinner>\r\n</div>\r\n","import { Component, OnInit, ViewEncapsulation } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { LoginIPResponseModel, SecurityApiClient } from '../../../swagger/SwaggerClient';\r\nimport { AuthenticationService } from './../../../services/authentication.service'\r\n\r\n@Component({\r\n selector: 'app-beheer-inlog',\r\n templateUrl: './beheer-inlog.component.html',\r\n styleUrls: ['./beheer-inlog.component.scss'],\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class BeheerInlogComponent implements OnInit {\r\n\r\n public Username: string = \"\";\r\n public Password: string = \"\";\r\n\r\n public Message: string = \"\";\r\n\r\n public LoginIPResponseModel: LoginIPResponseModel;\r\n\r\n constructor(public authenticationService: AuthenticationService, public router: Router, private securityApiClient: SecurityApiClient) {\r\n\r\n this.securityApiClient.getLoginIPResponseModel().subscribe((model: LoginIPResponseModel) => {\r\n this.LoginIPResponseModel = model;\r\n });\r\n }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n public Login(): void {\r\n this.Message = \"\";\r\n this.authenticationService.login(this.Username, this.Password, this, this.Success, this.Failure);\r\n }\r\n\r\n public Success(beheer: BeheerInlogComponent): void {\r\n beheer.router.navigateByUrl('/beheer');\r\n }\r\n\r\n public Failure(beheer: BeheerInlogComponent, message: string): void {\r\n beheer.Message = message;\r\n }\r\n}\r\n","\n<div class=\"container\">\n <div class=\"inlogdialog\">\n <mat-card>\n <mat-card-content>\n <div>\n <mat-form-field appearance=\"fill\">\n <mat-label>Gebruikersnaam</mat-label>\n <input type=\"text\" [(ngModel)]=\"Username\" matInput value=\"\">\n </mat-form-field>\n </div>\n <div>\n <mat-form-field appearance=\"fill\">\n <mat-label>Wachtwoord</mat-label>\n <input type=\"password\" [(ngModel)]=\"Password\" matInput value=\"\">\n </mat-form-field>\n </div>\n\n <div class=\"button-bar\">\n <div class=\"error-box\">\n {{ Message }}\n </div>\n <button mat-raised-button (click)=\"Login()\" class=\"login-button\">\n <span *ngIf=\"!authenticationService.LoadingLogin\">\n Login\n </span>\n <span *ngIf=\"authenticationService.LoadingLogin\">\n <app-fab-loader class=\"loader\"></app-fab-loader>\n </span>\n </button>\n </div>\n <div>\n IP Address: {{ LoginIPResponseModel?.ipAddress }}\n </div>\n <div>\n FabrikantenCore: {{ LoginIPResponseModel?.fabrikantenCoreVersion }}\n </div>\n </mat-card-content>\n </mat-card>\n \n </div>\n</div>\n","import { ChangeDetectorRef, Injectable } from '@angular/core';\r\nimport { MatDrawerMode } from '@angular/material/sidenav';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class MobileService {\r\n\r\n public ScreenWidth: number;\r\n public ScreenHeight: number;\r\n\r\n public MobileInterface: boolean = false;\r\n\r\n public NavMode: MatDrawerMode = \"side\";\r\n public NavOpened: boolean = true;\r\n\r\n constructor() {\r\n }\r\n\r\n public OpenNav(): void {\r\n this.NavOpened = true;\r\n }\r\n\r\n public UpdateScreenSize(width: number, height: number, ChangeDetector: ChangeDetectorRef): void {\r\n if (this.ScreenWidth != width || this.ScreenHeight != height) {\r\n this.ScreenWidth = width;\r\n this.ScreenHeight = height;\r\n\r\n this.MobileInterface = this.ScreenWidth < 750;\r\n\r\n if (this.MobileInterface) {\r\n this.NavMode = \"over\";\r\n this.NavOpened = false;\r\n }\r\n else {\r\n this.NavMode = \"side\";\r\n this.NavOpened = true;\r\n }\r\n\r\n ChangeDetector.detectChanges();\r\n }\r\n }\r\n}\r\n","import { ChangeDetectorRef, Injectable } from '@angular/core';\r\nimport { FabrikantenApiClient, FabrikantenBestekViewModel, FabrikantenBestekRequestModel } from '../swagger/SwaggerClient';\r\nimport { Clipboard } from '@angular/cdk/clipboard';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class BestekService {\r\n\r\n public Loading: boolean = false;\r\n public TypeBestek: string = \"STABU\";\r\n\r\n public FabrikantenBestekViewModel: FabrikantenBestekViewModel;\r\n\r\n constructor(private clipboard: Clipboard, private FabrikantenApiClient: FabrikantenApiClient) {\r\n }\r\n\r\n public GetBestekTekst(): string {\r\n if (this.TypeBestek == \"STABU\") {\r\n return this.FabrikantenBestekViewModel.stabu as string;\r\n }\r\n\r\n if (this.TypeBestek == \"OSF\") {\r\n return this.FabrikantenBestekViewModel.osfhtml as string;\r\n }\r\n\r\n if (this.TypeBestek == \"Vrij\") {\r\n return this.FabrikantenBestekViewModel.vrijBestekHTML as string;\r\n }\r\n\r\n return \"\";\r\n }\r\n\r\n public DownloadBestek(data: string) {\r\n\r\n if (this.TypeBestek == \"STABU\") {\r\n this.Download(data, \".S01\");\r\n }\r\n\r\n if (this.TypeBestek == \"OSF\") {\r\n this.Download(data, \".txt\");\r\n }\r\n\r\n if (this.TypeBestek == \"Vrij\") {\r\n this.Download(data, \".txt\");\r\n }\r\n }\r\n\r\n public Download(data: string, extension: string) {\r\n var c = document.createElement(\"a\");\r\n c.download = this.FabrikantenBestekViewModel.bestandsnaam + extension;\r\n\r\n var t = new Blob([data], {\r\n type: \"text/plain\"\r\n });\r\n c.href = window.URL.createObjectURL(t);\r\n c.click();\r\n }\r\n\r\n public CopyToClipboard(str: any) {\r\n this.clipboard.copy(str);\r\n }\r\n\r\n public LoadFabrikantenBestekViewModel(sessionid: string, ChangeDetectorRef: ChangeDetectorRef): void {\r\n this.Loading = true;\r\n\r\n var request = new FabrikantenBestekRequestModel();\r\n\r\n request.sessionId = sessionid;\r\n\r\n this.FabrikantenApiClient.getFabrikantenBestekViewModel(request).subscribe((model: FabrikantenBestekViewModel) => {\r\n this.FabrikantenBestekViewModel = model;\r\n\r\n if (this.TypeBestek == \"STABU\") {\r\n if (model.stabu == undefined || model.stabu == '') {\r\n this.TypeBestek = \"\";\r\n }\r\n }\r\n\r\n if (this.TypeBestek == \"OSF\") {\r\n if (model.osfhtml == undefined || model.osfhtml == '') {\r\n this.TypeBestek = \"\";\r\n }\r\n }\r\n\r\n //if (this.TypeBestek == \"SUF\") {\r\n // if (model.suf == undefined || model.suf == '') {\r\n // this.TypeBestek = \"\";\r\n // }\r\n //}\r\n\r\n if (this.TypeBestek == \"Vrij\") {\r\n if (model.vrijBestekHTML == undefined || model.vrijBestekHTML == '') {\r\n this.TypeBestek = \"\";\r\n }\r\n }\r\n\r\n if (this.TypeBestek == \"\") {\r\n if (model.stabu != undefined && model.stabu != '') {\r\n this.TypeBestek = \"STABU\";\r\n }\r\n\r\n if (model.osfhtml != undefined && model.osfhtml != '') {\r\n this.TypeBestek = \"OSF\";\r\n }\r\n\r\n //if (model.suf != undefined && model.suf != '') {\r\n // this.TypeBestek = \"SUF\";\r\n //}\r\n\r\n if (model.vrijBestekHTML != undefined && model.vrijBestekHTML != '') {\r\n this.TypeBestek = \"Vrij\";\r\n }\r\n }\r\n\r\n this.Loading = false;\r\n }, (error: Response) => {\r\n if (error.status == 400)\r\n console.log(error.json());\r\n else {\r\n console.log('An unexpected error occured');\r\n console.log(error);\r\n }\r\n\r\n this.Loading = false;\r\n });\r\n }\r\n}\r\n","import { ChangeDetectorRef, Injectable } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\n\r\nimport { FabrikantenService } from './fabrikanten.service';\r\nimport { TranslateService } from './translate.service';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class NavigateService {\r\n\r\n public FabrikantenService: FabrikantenService | null = null;\r\n public TranslateService: TranslateService | null = null;\r\n\r\n constructor(private Router: Router) {\r\n }\r\n\r\n public RefreshPage(): void {\r\n if (this.FabrikantenService != null && this.TranslateService != null) {\r\n if (this.TranslateService.ActiveLanguage != null && this.FabrikantenService.FabrikantenViewModel != null) {\r\n if (this.FabrikantenService.ShowCategories()) {\r\n this.Router.navigate(['/', this.TranslateService.ActiveLanguage.countryCode, 'categories']);\r\n }\r\n else if (this.FabrikantenService.FabrikantenViewModel.selectedProduct != null)\r\n {\r\n this.Router.navigate(['/', this.TranslateService.ActiveLanguage.countryCode, 'product']);\r\n }\r\n else {\r\n this.Router.navigate(['/', this.TranslateService.ActiveLanguage.countryCode, 'products']);\r\n }\r\n }\r\n }\r\n }\r\n}\r\n","import { ChangeDetectorRef, Injectable } from '@angular/core';\r\nimport { ActivatedRoute } from '@angular/router';\r\n\r\nimport { LanguagesViewModel, LanguageViewModel, TranslateApiClient, TranslateKeyCategoryViewModel, TranslateKeyViewModel } from '../swagger/SwaggerClient';\r\nimport { NavigateService } from './navigate.service';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class TranslateService {\r\n\r\n private Init: boolean = false;\r\n\r\n public Loading: boolean = true;\r\n\r\n public LanguagesViewModel: LanguagesViewModel;\r\n\r\n private DesiredCountryCode: string = \"\";\r\n public ActiveLanguage: LanguageViewModel;\r\n\r\n public SelectedCategory: string = \"Common\";\r\n public Categories: Array<string>;\r\n\r\n constructor(private TranslateApiClient: TranslateApiClient, public NavigateService: NavigateService) {\r\n this.NavigateService.TranslateService = this;\r\n }\r\n\r\n public SelectLanguage(language: LanguageViewModel, ChangeDetectorRef: ChangeDetectorRef): void {\r\n this.DesiredCountryCode = language.countryCode + \"\";\r\n this.ProcessDesiredCountryCode();\r\n\r\n ChangeDetectorRef.detectChanges();\r\n }\r\n\r\n public ProcessParameters(ActivatedRoute: ActivatedRoute): void {\r\n var countrycode = ActivatedRoute.snapshot.paramMap.get(\"language\");\r\n\r\n if (countrycode != null && countrycode != \"\" && this.DesiredCountryCode != countrycode) {\r\n this.DesiredCountryCode = countrycode;\r\n this.ProcessDesiredCountryCode();\r\n }\r\n }\r\n\r\n public LoadTranslations(ChangeDetectorRef: ChangeDetectorRef): void {\r\n if (!this.Init) {\r\n this.Init = true;\r\n this.Loading = true;\r\n ChangeDetectorRef.detectChanges();\r\n\r\n this.TranslateApiClient.getLanguagesViewModel().subscribe((model: LanguagesViewModel) => {\r\n this.LanguagesViewModel = model;\r\n\r\n var cats = this.GetCategories();\r\n this.Categories = new Array<string>();\r\n\r\n for (var i = 0; i < cats.length; i++) {\r\n this.Categories.push(cats[i].name as string);\r\n }\r\n\r\n this.Categories.push(\"Categories\");\r\n this.Categories.push(\"Products\");\r\n this.Categories.push(\"Description\");\r\n this.Categories.push(\"Afbeelding\");\r\n this.Categories.push(\"Filter\");\r\n\r\n this.Loading = false;\r\n\r\n this.ProcessDesiredCountryCode();\r\n\r\n this.NavigateService.RefreshPage();\r\n\r\n ChangeDetectorRef.detectChanges();\r\n }, (error: Response) => {\r\n if (error.status == 400)\r\n alert(error.json());\r\n else {\r\n alert('An unexpected error occured');\r\n alert(error);\r\n }\r\n\r\n this.Loading = false;\r\n ChangeDetectorRef.detectChanges();\r\n });\r\n }\r\n }\r\n\r\n public ShowSpecification(): boolean {\r\n if (this.ActiveLanguage != null) {\r\n return this.ActiveLanguage.showSpecification;\r\n }\r\n\r\n return false;\r\n }\r\n\r\n public Show(): boolean {\r\n if (this.Loading) {\r\n return false;\r\n }\r\n\r\n if (this.LanguagesViewModel?.languages != null) {\r\n if (this.LanguagesViewModel.languages.length < 2) {\r\n return false;\r\n }\r\n }\r\n\r\n return true;\r\n }\r\n\r\n public GetActiveValue(category: string, key: string): string {\r\n if (this.ActiveLanguage != null) {\r\n return this.GetValue(this.ActiveLanguage, category, key);\r\n }\r\n\r\n return \"\";\r\n }\r\n\r\n public GetValue(language: LanguageViewModel, category: string, key: string): string {\r\n var catarray = language.categories;\r\n if (catarray != null) {\r\n for (var i = 0; i < catarray.length; i++) {\r\n if (catarray[i].name?.toLowerCase() == category.toLowerCase()) {\r\n\r\n var keysarray = catarray[i].keys\r\n if (keysarray != null) {\r\n for (var j = 0; j < keysarray.length; j++) {\r\n if (keysarray[j].name?.toLowerCase() == key.toLowerCase()) {\r\n var entriesarray = keysarray[j].entries;\r\n\r\n if (entriesarray != null && entriesarray.length > 0) {\r\n return entriesarray[0].value as string;\r\n }\r\n }\r\n }\r\n }\r\n }\r\n }\r\n }\r\n\r\n return category + \"-\" + key;\r\n }\r\n\r\n public GetActiveValueCategory(catId: number): string {\r\n if (this.ActiveLanguage != null) {\r\n return this.GetValueCategory(this.ActiveLanguage, catId);\r\n }\r\n\r\n return \"\";\r\n }\r\n\r\n public GetValueCategory(language: LanguageViewModel, catId: number): string {\r\n var catarray = language.categoryEntries;\r\n if (catarray != null) {\r\n for (var i = 0; i < catarray.length; i++) {\r\n if (catarray[i].categoryId == catId) {\r\n return catarray[i].value as string;\r\n }\r\n }\r\n }\r\n\r\n return \"\";\r\n }\r\n\r\n public GetActiveValueProduct(productId: number): string {\r\n if (this.ActiveLanguage != null) {\r\n return this.GetValueProduct(this.ActiveLanguage, productId);\r\n }\r\n\r\n return \"\";\r\n }\r\n\r\n public GetValueProduct(language: LanguageViewModel, productId: number): string {\r\n var prodarray = language.productEntries;\r\n if (prodarray != null) {\r\n for (var i = 0; i < prodarray.length; i++) {\r\n if (prodarray[i].productId == productId) {\r\n return prodarray[i].value as string;\r\n }\r\n }\r\n }\r\n\r\n return \"\";\r\n }\r\n\r\n public GetActiveValueRangeInput(rangeInputId: number): string {\r\n if (this.ActiveLanguage != null) {\r\n return this.GetValueRangeInput(this.ActiveLanguage, rangeInputId);\r\n }\r\n\r\n return \"\";\r\n }\r\n\r\n public GetValueRangeInput(language: LanguageViewModel, rangeInputId: number): string {\r\n var rangearray = language.rangeInputEntries;\r\n if (rangearray != null) {\r\n for (var i = 0; i < rangearray.length; i++) {\r\n if (rangearray[i].rangeInputId == rangeInputId) {\r\n return rangearray[i].value as string;\r\n }\r\n }\r\n }\r\n\r\n return \"\";\r\n }\r\n\r\n public GetActiveValueFilter(filterId: number): string {\r\n if (this.ActiveLanguage != null) {\r\n return this.GetValueFilter(this.ActiveLanguage, filterId);\r\n }\r\n\r\n return \"\";\r\n }\r\n\r\n public GetValueFilter(language: LanguageViewModel, filterId: number): string {\r\n var filterarray = language.filterEntries;\r\n if (filterarray != null) {\r\n for (var i = 0; i < filterarray.length; i++) {\r\n if (filterarray[i].filterId == filterId) {\r\n return filterarray[i].value as string;\r\n }\r\n }\r\n }\r\n\r\n return \"\";\r\n }\r\n\r\n public GetActiveValueFilterOption(filterOptionId: number): string {\r\n if (this.ActiveLanguage != null) {\r\n return this.GetValueFilterOption(this.ActiveLanguage, filterOptionId);\r\n }\r\n\r\n return \"\";\r\n }\r\n\r\n public GetValueFilterOption(language: LanguageViewModel, filterOptionId: number): string {\r\n var filterarray = language.filterOptionEntries;\r\n if (filterarray != null) {\r\n for (var i = 0; i < filterarray.length; i++) {\r\n if (filterarray[i].filterOptionId == filterOptionId) {\r\n return filterarray[i].value as string;\r\n }\r\n }\r\n }\r\n\r\n return \"\";\r\n }\r\n\r\n public GetActiveValueDescription(bcbProductId: number): string {\r\n if (this.ActiveLanguage != null) {\r\n return this.GetValueDescription(this.ActiveLanguage, bcbProductId);\r\n }\r\n\r\n return \"\";\r\n }\r\n\r\n public GetValueDescription(language: LanguageViewModel, bcbProductId: number): string {\r\n var descriptionarray = language.descriptionEntries;\r\n if (descriptionarray != null) {\r\n for (var i = 0; i < descriptionarray.length; i++) {\r\n if (descriptionarray[i].bcbProductId == bcbProductId) {\r\n return descriptionarray[i].value as string;\r\n }\r\n }\r\n }\r\n\r\n return \"\";\r\n }\r\n\r\n public GetActiveValueAfbeelding(bcbProductAfbeeldingId: number): string {\r\n if (this.ActiveLanguage != null) {\r\n return this.GetValueAfbeelding(this.ActiveLanguage, bcbProductAfbeeldingId);\r\n }\r\n\r\n return \"\";\r\n }\r\n\r\n public GetValueAfbeelding(language: LanguageViewModel, bcbProductAfbeeldingId: number): string {\r\n var afbeeldingarray = language.afbeeldingEntries;\r\n if (afbeeldingarray != null) {\r\n for (var i = 0; i < afbeeldingarray.length; i++) {\r\n if (afbeeldingarray[i].bcbProductAfbeeldingId == bcbProductAfbeeldingId) {\r\n return afbeeldingarray[i].value as string;\r\n }\r\n }\r\n }\r\n\r\n return \"\";\r\n }\r\n\r\n public GetCategories(): Array<TranslateKeyCategoryViewModel> {\r\n\r\n if (this.LanguagesViewModel?.languages != null && this.LanguagesViewModel.languages.length > 0 && this.LanguagesViewModel.languages[0].categories != null) {\r\n return this.LanguagesViewModel.languages[0].categories;\r\n }\r\n else {\r\n return new Array<TranslateKeyCategoryViewModel>();;\r\n }\r\n }\r\n\r\n public GetActiveCategorie(): TranslateKeyCategoryViewModel | null {\r\n var cats = this.GetCategories();\r\n\r\n for (var i = 0; i < cats.length; i++) {\r\n if (cats[i].name == this.SelectedCategory) {\r\n return cats[i];\r\n }\r\n }\r\n\r\n return null;\r\n }\r\n\r\n private ProcessDesiredCountryCode(): void {\r\n if (this.LanguagesViewModel?.languages != null) {\r\n if (this.DesiredCountryCode == \"\") {\r\n this.SetActiveLanguage(this.LanguagesViewModel.languages[0]);\r\n }\r\n else {\r\n for (var i = 0; i < this.LanguagesViewModel.languages.length; i++) {\r\n if (this.LanguagesViewModel.languages[i].countryCode?.toString().toLowerCase() == this.DesiredCountryCode.toLowerCase()) {\r\n this.SetActiveLanguage(this.LanguagesViewModel.languages[i]);\r\n }\r\n }\r\n }\r\n }\r\n }\r\n\r\n private SetActiveLanguage(language: LanguageViewModel): void {\r\n if (this.ActiveLanguage != language) {\r\n this.ActiveLanguage = language;\r\n\r\n this.NavigateService.RefreshPage();\r\n }\r\n }\r\n}\r\n","import { ChangeDetectorRef, Injectable } from '@angular/core';\r\nimport { FabrikantenApiClient, FabrikantenBestekViewModel, FabrikantenBestekRequestModel, BCBLinkResponseModel, BCBLinkRequestModel, Fabrikanten3DViewModel, Fabrikanten3DRequestModel } from '../swagger/SwaggerClient';\r\nimport { FabrikantenService } from './fabrikanten.service';\r\nimport { Clipboard } from '@angular/cdk/clipboard';\r\nimport { FabWebglViewerComponent } from '../components/fab-webgl-viewer/fab-webgl-viewer.component';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class WebGLService {\r\n\r\n public Loading: boolean = false;\r\n public ViewerWidth: number = 101;\r\n public ViewerHeight: number = 101;\r\n\r\n public Fabrikanten3DViewModel: Fabrikanten3DViewModel;\r\n\r\n public FabWebglViewerComponent: FabWebglViewerComponent | null = null;\r\n public FirstCheck: boolean = false;\r\n\r\n constructor(private FabrikantenApiClient: FabrikantenApiClient) {\r\n }\r\n\r\n public LoadFabrikanten3DViewModel(sessionid: string, ChangeDetectorRef: ChangeDetectorRef): void {\r\n this.Loading = true;\r\n\r\n var request = new Fabrikanten3DRequestModel();\r\n\r\n request.sessionId = sessionid;\r\n\r\n this.FabrikantenApiClient.getFabrikanten3DViewModel(request).subscribe((model: Fabrikanten3DViewModel) => {\r\n this.Fabrikanten3DViewModel = model;\r\n this.Loading = false;\r\n\r\n this.DoFirstCheck();\r\n\r\n if (this.FabWebglViewerComponent != null) {\r\n this.FabWebglViewerComponent.RefreshViewer();\r\n }\r\n }, (error: Response) => {\r\n if (error.status == 400)\r\n console.log(error.json());\r\n else {\r\n console.log('An unexpected error occured');\r\n console.log(error);\r\n }\r\n });\r\n }\r\n\r\n public DoFirstCheck(): void {\r\n if (!this.FirstCheck) {\r\n if (this.FabWebglViewerComponent != null) {\r\n this.FirstCheck = true;\r\n\r\n setTimeout(() => {\r\n if (this.FabWebglViewerComponent != null) {\r\n console.log(\"first check\");\r\n this.FabWebglViewerComponent.RefreshViewer();\r\n }\r\n }, 100);\r\n }\r\n }\r\n }\r\n\r\n public HasNativeRFA(): boolean {\r\n if (this.Fabrikanten3DViewModel != null) {\r\n return this.Fabrikanten3DViewModel.nativeRFA;\r\n }\r\n\r\n return false;\r\n }\r\n\r\n \r\n}\r\n","import { ChangeDetectorRef, Injectable } from '@angular/core';\r\nimport { FabSvgViewerComponent } from '../components/fab-svg-viewer/fab-svg-viewer.component';\r\nimport { FabrikantenApiClient, FabrikantenSVGViewModel, FabrikantenSVGRequestModel } from '../swagger/SwaggerClient';\r\nimport { FabrikantenService } from './fabrikanten.service';\r\nimport { MobileService } from './mobile.service';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class SVGService {\r\n\r\n public Loading: boolean = false;\r\n public FabrikantenSVGViewModel: FabrikantenSVGViewModel;\r\n\r\n public FabrikantenService: FabrikantenService;\r\n\r\n public ViewerWidth: number = 101;\r\n public ViewerHeight: number = 101;\r\n\r\n public Schaal: string = \"2\";\r\n public Snede: string = \"\";\r\n public Snedes: Array<string> = new Array<string>();\r\n\r\n constructor(private FabrikantenApiClient: FabrikantenApiClient) {\r\n }\r\n\r\n public LoadFabrikantenSVGViewModel(sessionid: string, ChangeDetectorRef: ChangeDetectorRef): void {\r\n this.Loading = true;\r\n ChangeDetectorRef.detectChanges();\r\n\r\n var request = new FabrikantenSVGRequestModel();\r\n\r\n request.sessionId = sessionid;\r\n\r\n request.width = this.ViewerWidth;\r\n request.height = this.ViewerHeight;\r\n request.schaal = this.Schaal;\r\n request.snede = this.Snede;\r\n\r\n console.log('get width:' + request.width + \" height: \" + request.height);\r\n\r\n this.FabrikantenApiClient.getFabrikantenSVGViewModel(request).subscribe((model: FabrikantenSVGViewModel) => {\r\n this.FabrikantenSVGViewModel = model;\r\n this.CollectSnedes();\r\n this.Loading = false;\r\n ChangeDetectorRef.detectChanges();\r\n }, (error: Response) => {\r\n if (error.status == 400)\r\n console.log(error.json());\r\n else {\r\n console.log('An unexpected error occured');\r\n console.log(error);\r\n }\r\n });\r\n }\r\n\r\n public UpdateViewerSize(width: number, height: number, ChangeDetectorRef: ChangeDetectorRef): void {\r\n if ((this.ViewerWidth != width || this.ViewerHeight != height) &&\r\n (width > 0) && (height > 0)) {\r\n this.ViewerWidth = width;\r\n this.ViewerHeight = height;\r\n\r\n if (this.FabrikantenService?.FabrikantenViewModel?.sessionId != null) {\r\n this.LoadFabrikantenSVGViewModel(this.FabrikantenService.FabrikantenViewModel.sessionId, ChangeDetectorRef);\r\n }\r\n }\r\n }\r\n\r\n public HasNativeRFA(): boolean {\r\n if (this.FabrikantenSVGViewModel != null) {\r\n return this.FabrikantenSVGViewModel.nativeRFA;\r\n }\r\n\r\n return false;\r\n }\r\n\r\n private CollectSnedes(): void {\r\n if (this.FabrikantenSVGViewModel?.snedes != null) {\r\n this.Snedes = this.FabrikantenSVGViewModel.snedes.split(\"|\");\r\n\r\n if (this.Snede == \"\" && this.Snedes.length > 0) {\r\n this.Snede = this.Snedes[0];\r\n }\r\n }\r\n }\r\n}\r\n","import { ChangeDetectorRef, Injectable } from '@angular/core';\r\n\r\nimport {\r\n FabrikantenApiClient,\r\n FabrikantenFilterViewModel,\r\n FabrikantenViewModel,\r\n SelectProductRequest,\r\n SelectFilterOptionRequest,\r\n SelectCategoryRequest,\r\n SetRangeInputRequest,\r\n ResetFilterRequest,\r\n ResetAllFiltersRequest,\r\n ResetCategoryLayerRequest,\r\n RemoveProductSelectionRequest,\r\n FabrikantenProductViewModel,\r\n FabrikantenCategoryLayerViewModel,\r\n FabrikantenRequestModel,\r\n FabrikantenCategoryViewModel,\r\n ResetAllCategoriesRequest,\r\n BCBLinkRequestModel,\r\n BCBLinkResponseModel,\r\n FabrikantenFileRequestModel,\r\n FabrikantenFileViewModel\r\n} from '../swagger/SwaggerClient';\r\nimport { BestekService } from './bestek.service';\r\nimport { NavigateService } from './navigate.service';\r\nimport { SVGService } from './svg.service';\r\nimport { TranslateService } from './translate.service';\r\nimport { WebGLService } from './webgl.service';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class FabrikantenService {\r\n private Init: boolean = false;\r\n\r\n public Loading: boolean = true;\r\n public DownloadARKEYAdomiLoading: boolean = false;\r\n public DownloadIFCLoading: boolean = false;\r\n public DownloadRevitPluginLoading: boolean = false;\r\n public Download3DAutoCADDwgLoading: boolean = false;\r\n public Download3DDxfLoading: boolean = false;\r\n public Download2DAutoCADDwgLoading: boolean = false;\r\n public Download2DDxfLoading: boolean = false;\r\n public DownloadRFALoading: boolean = false;\r\n\r\n public FabrikantenViewModel: FabrikantenViewModel;\r\n\r\n public SelectedPhoto: number = 0;\r\n\r\n private SelectedTab: string = \"Informatie\";\r\n\r\n constructor(\r\n private FabrikantenApiClient: FabrikantenApiClient,\r\n private BestekService: BestekService,\r\n private TranslateService: TranslateService,\r\n private WebGLService: WebGLService,\r\n private SVGService: SVGService,\r\n private NavigateService: NavigateService) {\r\n this.NavigateService.FabrikantenService = this;\r\n this.SVGService.FabrikantenService = this;\r\n }\r\n\r\n public ResetAllFilters(ChangeDetectorRef: ChangeDetectorRef): void {\r\n this.Loading = true;\r\n ChangeDetectorRef.detectChanges();\r\n\r\n var request = new ResetAllFiltersRequest();\r\n\r\n request.sessionId = this.FabrikantenViewModel.sessionId;\r\n\r\n this.FabrikantenApiClient.resetAllFilters(request).subscribe(() => {\r\n this.ReloadModel(ChangeDetectorRef);\r\n }, (error: Response) => {\r\n if (error.status == 400)\r\n console.log(error.json());\r\n else {\r\n console.log('An unexpected error occured');\r\n console.log(error);\r\n }\r\n\r\n this.Loading = false;\r\n ChangeDetectorRef.detectChanges();\r\n });\r\n }\r\n\r\n public SelectOption(filterid: number, filteroptionid: number, ChangeDetectorRef: ChangeDetectorRef): void {\r\n this.Loading = true;\r\n ChangeDetectorRef.detectChanges();\r\n\r\n var request = new SelectFilterOptionRequest();\r\n\r\n request.sessionId = this.FabrikantenViewModel.sessionId;\r\n request.filterOptionId = filteroptionid;\r\n request.filterId = filterid;\r\n\r\n this.FabrikantenApiClient.selectFilterOption(request).subscribe(() => {\r\n this.ReloadModel(ChangeDetectorRef);\r\n }, (error: Response) => {\r\n if (error.status == 400)\r\n console.log(error.json());\r\n else {\r\n console.log('An unexpected error occured');\r\n console.log(error);\r\n }\r\n\r\n this.Loading = false;\r\n ChangeDetectorRef.detectChanges();\r\n });\r\n }\r\n\r\n public SetRangeInput(rangeinputid: number, value: number, ChangeDetectorRef: ChangeDetectorRef): void {\r\n this.Loading = true;\r\n ChangeDetectorRef.detectChanges();\r\n\r\n var request = new SetRangeInputRequest();\r\n\r\n request.sessionId = this.FabrikantenViewModel.sessionId;\r\n request.rangeInputId = rangeinputid;\r\n request.value = value;\r\n\r\n this.FabrikantenApiClient.setRangeInput(request).subscribe(() => {\r\n this.ReloadModel(ChangeDetectorRef);\r\n }, (error: Response) => {\r\n if (error.status == 400)\r\n console.log(error.json());\r\n else {\r\n console.log('An unexpected error occured');\r\n console.log(error);\r\n }\r\n\r\n this.Loading = false;\r\n ChangeDetectorRef.detectChanges();\r\n });\r\n }\r\n\r\n public SelectCategory(category: FabrikantenCategoryViewModel, ChangeDetectorRef: ChangeDetectorRef): void {\r\n this.Loading = true;\r\n ChangeDetectorRef.detectChanges();\r\n\r\n var request = new SelectCategoryRequest();\r\n\r\n request.sessionId = this.FabrikantenViewModel.sessionId;\r\n request.categoryId = category.id;\r\n request.categoryLayer = category.layer;\r\n\r\n this.FabrikantenApiClient.selectCategory(request).subscribe(() => {\r\n this.ReloadModel(ChangeDetectorRef);\r\n }, (error: Response) => {\r\n if (error.status == 400)\r\n console.log(error.json());\r\n else {\r\n console.log('An unexpected error occured');\r\n console.log(error);\r\n }\r\n\r\n this.Loading = false;\r\n ChangeDetectorRef.detectChanges();\r\n });\r\n }\r\n\r\n public SelectProduct(product: FabrikantenProductViewModel, ChangeDetectorRef: ChangeDetectorRef): void {\r\n this.Loading = true;\r\n ChangeDetectorRef.detectChanges();\r\n\r\n var request = new SelectProductRequest();\r\n\r\n request.sessionId = this.FabrikantenViewModel.sessionId;\r\n request.productId = product.id;\r\n\r\n this.FabrikantenApiClient.selectProduct(request).subscribe(() => {\r\n this.ReloadModel(ChangeDetectorRef);\r\n }, (error: Response) => {\r\n if (error.status == 400)\r\n console.log(error.json());\r\n else {\r\n console.log('An unexpected error occured');\r\n console.log(error);\r\n }\r\n\r\n this.Loading = false;\r\n ChangeDetectorRef.detectChanges();\r\n });\r\n }\r\n\r\n public ResetSelectionFilter(filter: FabrikantenFilterViewModel, ChangeDetectorRef: ChangeDetectorRef): void {\r\n this.Loading = true;\r\n ChangeDetectorRef.detectChanges();\r\n\r\n var request = new ResetFilterRequest();\r\n request.filterId = filter.id;\r\n request.sessionId = this.FabrikantenViewModel.sessionId;\r\n\r\n this.FabrikantenApiClient.resetFilterSelection(request).subscribe(() => {\r\n this.ReloadModel(ChangeDetectorRef);\r\n }, (error: Response) => {\r\n if (error.status == 400)\r\n console.log(error.json());\r\n else {\r\n console.log('An unexpected error occured');\r\n console.log(error);\r\n }\r\n\r\n this.Loading = false;\r\n ChangeDetectorRef.detectChanges();\r\n });\r\n }\r\n\r\n public ResetAllCategories(ChangeDetectorRef: ChangeDetectorRef): void {\r\n if (this.FabrikantenViewModel != null) {\r\n this.Loading = true;\r\n\r\n var request = new ResetAllCategoriesRequest();\r\n\r\n request.sessionId = this.FabrikantenViewModel.sessionId;\r\n\r\n this.FabrikantenApiClient.resetAllCategories(request).subscribe(() => {\r\n this.ReloadModel(ChangeDetectorRef);\r\n }, (error: Response) => {\r\n if (error.status == 400)\r\n console.log(error.json());\r\n else {\r\n console.log('An unexpected error occured');\r\n console.log(error);\r\n }\r\n\r\n this.Loading = false;\r\n ChangeDetectorRef.detectChanges();\r\n });\r\n }\r\n }\r\n\r\n public ResetSelectionCategory(categorylayer: FabrikantenCategoryViewModel, ChangeDetectorRef: ChangeDetectorRef): void {\r\n this.Loading = true;\r\n ChangeDetectorRef.detectChanges();\r\n\r\n var request = new ResetCategoryLayerRequest();\r\n request.categoryLayer = categorylayer.layer;\r\n request.sessionId = this.FabrikantenViewModel.sessionId;\r\n\r\n this.FabrikantenApiClient.resetCategoryLayerSelection(request).subscribe(() => {\r\n this.ResetAllFilters(ChangeDetectorRef);\r\n }, (error: Response) => {\r\n if (error.status == 400)\r\n console.log(error.json());\r\n else {\r\n console.log('An unexpected error occured');\r\n console.log(error);\r\n }\r\n\r\n this.Loading = false;\r\n ChangeDetectorRef.detectChanges();\r\n });\r\n }\r\n\r\n public RemoveProductSelection(ChangeDetectorRef: ChangeDetectorRef): void {\r\n if (this.FabrikantenViewModel != null) {\r\n this.Loading = true;\r\n\r\n var request = new RemoveProductSelectionRequest();\r\n\r\n request.sessionId = this.FabrikantenViewModel.sessionId;\r\n\r\n this.FabrikantenApiClient.removeProductSelection(request).subscribe(() => {\r\n this.ReloadModel(ChangeDetectorRef);\r\n }, (error: Response) => {\r\n if (error.status == 400)\r\n console.log(error.json());\r\n else {\r\n console.log('An unexpected error occured');\r\n console.log(error);\r\n }\r\n\r\n this.Loading = false;\r\n ChangeDetectorRef.detectChanges();\r\n });\r\n }\r\n }\r\n\r\n public TabSelectionChanged(tab: string, ChangeDetectorRef: ChangeDetectorRef): void {\r\n this.SelectedTab = tab;\r\n\r\n this.TriggerReloads(ChangeDetectorRef);\r\n }\r\n\r\n public GetFirstOpenCategoryLayer(): FabrikantenCategoryLayerViewModel | null {\r\n var arraylayers = this.FabrikantenViewModel?.categoryLayers;\r\n\r\n if (arraylayers != null) {\r\n for (var i = 0; i < arraylayers.length; i++) {\r\n if (arraylayers[i].selectedOption == 0) {\r\n return arraylayers[i];\r\n }\r\n }\r\n }\r\n\r\n return null;\r\n }\r\n\r\n public ShowCategories(): boolean {\r\n return this.GetFirstOpenCategoryLayer() != null;\r\n }\r\n\r\n public ShowVariants(): boolean {\r\n var bcbproducts = this.FabrikantenViewModel?.selectedProduct?.fabrikantenBCBProductViewModels;\r\n\r\n if (bcbproducts != null && bcbproducts.length > 1) {\r\n return true;\r\n }\r\n\r\n return false;\r\n }\r\n\r\n public OpenBCBLink(wuid: string): void {\r\n this.Loading = true;\r\n\r\n var request = new BCBLinkRequestModel();\r\n request.wuid = wuid;\r\n\r\n this.FabrikantenApiClient.getBCBLink(request).subscribe((model: BCBLinkResponseModel) => {\r\n window.open(model.url, '_blank');\r\n\r\n this.Loading = false;\r\n }, (error: Response) => {\r\n if (error.status == 400)\r\n console.log(error.json());\r\n else {\r\n console.log('An unexpected error occured');\r\n console.log(error);\r\n }\r\n\r\n this.Loading = false;\r\n });\r\n }\r\n\r\n public ReloadModel(ChangeDetectorRef: ChangeDetectorRef) {\r\n this.Init = false;\r\n this.LoadFabrikantenViewModel(ChangeDetectorRef);\r\n }\r\n\r\n public LoadFabrikantenViewModel(ChangeDetectorRef: ChangeDetectorRef): void {\r\n if (!this.Init) {\r\n this.Init = true;\r\n this.Loading = true;\r\n ChangeDetectorRef.detectChanges();\r\n\r\n var request = new FabrikantenRequestModel();\r\n\r\n if (this.FabrikantenViewModel != null) {\r\n request.sessionId = this.FabrikantenViewModel.sessionId;\r\n }\r\n else {\r\n request.sessionId = \"\";\r\n }\r\n\r\n this.FabrikantenApiClient.getFabrikantenViewModel(request).subscribe((model: FabrikantenViewModel) => {\r\n this.FabrikantenViewModel = model;\r\n this.SelectedPhoto = 0;\r\n this.Loading = false;\r\n\r\n ChangeDetectorRef.detectChanges();\r\n this.TriggerReloads(ChangeDetectorRef);\r\n\r\n this.NavigateService.RefreshPage();\r\n }, (error: Response) => {\r\n if (error.status == 400)\r\n console.log(error.json());\r\n else {\r\n console.log('An unexpected error occured');\r\n console.log(error);\r\n }\r\n\r\n this.Loading = false;\r\n ChangeDetectorRef.detectChanges();\r\n });\r\n }\r\n }\r\n\r\n // Downloads\r\n\r\n public DownloadARKEYAdomi(): void {\r\n this.DownloadARKEYAdomiLoading = true;\r\n\r\n var request = new FabrikantenFileRequestModel();\r\n\r\n request.sessionId = this.FabrikantenViewModel.sessionId;\r\n request.fileType = \"dhg\";\r\n request.model3D = true;\r\n\r\n this.FabrikantenApiClient.getFabrikantenFileViewModel(request).subscribe((model: FabrikantenFileViewModel) => {\r\n this.StartDownload(model.data, \".dhg\");\r\n this.DownloadARKEYAdomiLoading = false;\r\n }, (error: Response) => {\r\n if (error.status == 400)\r\n console.log(error.json());\r\n else {\r\n console.log('An unexpected error occured');\r\n console.log(error);\r\n }\r\n });\r\n }\r\n\r\n public DownloadIFC(): void {\r\n this.DownloadIFCLoading = true;\r\n var request = new FabrikantenFileRequestModel();\r\n\r\n request.sessionId = this.FabrikantenViewModel.sessionId;\r\n request.fileType = \"ifc\";\r\n request.model3D = true;\r\n\r\n this.FabrikantenApiClient.getFabrikantenFileViewModel(request).subscribe((model: FabrikantenFileViewModel) => {\r\n this.StartDownload(model.data, \".ifc\");\r\n this.DownloadIFCLoading = false;\r\n }, (error: Response) => {\r\n if (error.status == 400)\r\n console.log(error.json());\r\n else {\r\n console.log('An unexpected error occured');\r\n console.log(error);\r\n }\r\n });\r\n }\r\n\r\n public DownloadRevitPlugin(): void {\r\n this.DownloadRevitPluginLoading = false;\r\n var request = new FabrikantenFileRequestModel();\r\n\r\n request.sessionId = this.FabrikantenViewModel.sessionId;\r\n request.fileType = \"hdhRevit\";\r\n request.model3D = true;\r\n\r\n this.FabrikantenApiClient.getFabrikantenFileViewModel(request).subscribe((model: FabrikantenFileViewModel) => {\r\n this.StartDownload(model.data, \".hdhRevit\");\r\n this.DownloadRevitPluginLoading = false;\r\n }, (error: Response) => {\r\n if (error.status == 400)\r\n console.log(error.json());\r\n else {\r\n console.log('An unexpected error occured');\r\n console.log(error);\r\n }\r\n });\r\n }\r\n\r\n public Download3DAutoCADDwg(): void {\r\n this.Download3DAutoCADDwgLoading = true;\r\n var request = new FabrikantenFileRequestModel();\r\n\r\n request.sessionId = this.FabrikantenViewModel.sessionId;\r\n request.fileType = \"dwg\";\r\n request.model3D = true;\r\n\r\n this.FabrikantenApiClient.getFabrikantenFileViewModel(request).subscribe((model: FabrikantenFileViewModel) => {\r\n this.StartDownload(model.data, \".dwg\");\r\n this.Download3DAutoCADDwgLoading = false;\r\n }, (error: Response) => {\r\n if (error.status == 400)\r\n console.log(error.json());\r\n else {\r\n console.log('An unexpected error occured');\r\n console.log(error);\r\n }\r\n });\r\n }\r\n\r\n public Download3DDxf(): void {\r\n this.Download3DDxfLoading = true;\r\n\r\n var request = new FabrikantenFileRequestModel();\r\n\r\n request.sessionId = this.FabrikantenViewModel.sessionId;\r\n request.fileType = \"dxf\";\r\n request.model3D = true;\r\n\r\n this.FabrikantenApiClient.getFabrikantenFileViewModel(request).subscribe((model: FabrikantenFileViewModel) => {\r\n this.StartDownload(model.data, \".dxf\");\r\n this.Download3DDxfLoading = false;\r\n }, (error: Response) => {\r\n if (error.status == 400)\r\n console.log(error.json());\r\n else {\r\n console.log('An unexpected error occured');\r\n console.log(error);\r\n }\r\n });\r\n }\r\n\r\n public Download2DAutoCADDwg(): void {\r\n this.Download2DAutoCADDwgLoading = true;\r\n var request = new FabrikantenFileRequestModel();\r\n\r\n request.sessionId = this.FabrikantenViewModel.sessionId;\r\n request.fileType = \"dwg\";\r\n request.model3D = false;\r\n\r\n this.FabrikantenApiClient.getFabrikantenFileViewModel(request).subscribe((model: FabrikantenFileViewModel) => {\r\n this.StartDownload(model.data, \".dwg\");\r\n this.Download2DAutoCADDwgLoading = false;\r\n }, (error: Response) => {\r\n if (error.status == 400)\r\n console.log(error.json());\r\n else {\r\n console.log('An unexpected error occured');\r\n console.log(error);\r\n }\r\n });\r\n }\r\n\r\n public Download2DDxf(): void {\r\n this.Download2DDxfLoading = true;\r\n\r\n var request = new FabrikantenFileRequestModel();\r\n\r\n request.sessionId = this.FabrikantenViewModel.sessionId;\r\n request.fileType = \"dxf\";\r\n request.model3D = false;\r\n\r\n this.FabrikantenApiClient.getFabrikantenFileViewModel(request).subscribe((model: FabrikantenFileViewModel) => {\r\n this.StartDownload(model.data, \".dxf\");\r\n this.Download2DDxfLoading = false;\r\n }, (error: Response) => {\r\n if (error.status == 400)\r\n console.log(error.json());\r\n else {\r\n console.log('An unexpected error occured');\r\n console.log(error);\r\n }\r\n });\r\n }\r\n\r\n public DownloadRFA(): void {\r\n this.DownloadRFALoading = true;\r\n\r\n var request = new FabrikantenFileRequestModel();\r\n\r\n request.sessionId = this.FabrikantenViewModel.sessionId;\r\n request.fileType = \"rfa\";\r\n request.model3D = false;\r\n\r\n this.FabrikantenApiClient.getFabrikantenFileViewModel(request).subscribe((model: FabrikantenFileViewModel) => {\r\n this.StartDownload(model.data, \".rfa\");\r\n this.DownloadRFALoading = false;\r\n }, (error: Response) => {\r\n if (error.status == 400)\r\n console.log(error.json());\r\n else {\r\n console.log('An unexpected error occured');\r\n console.log(error);\r\n }\r\n });\r\n }\r\n\r\n public StartDownload(data: any, extension: string): void {\r\n if (this.FabrikantenViewModel?.selectedProduct?.id != null) {\r\n var id = this.FabrikantenViewModel?.selectedProduct?.id;\r\n\r\n var arr = data;\r\n var byteArray = new Uint8Array(arr);\r\n var a = window.document.createElement('a');\r\n\r\n var filename = this.TranslateService.GetActiveValueProduct(id);\r\n filename = filename.replace(/[^a-z0-9]/gi, '_') + extension;\r\n\r\n a.href = window.URL.createObjectURL(new Blob([byteArray], { type: 'application/octet-stream' }));\r\n a.download = filename;\r\n\r\n // Append anchor to body.\r\n document.body.appendChild(a)\r\n a.click();\r\n\r\n\r\n // Remove anchor from body\r\n document.body.removeChild(a)\r\n }\r\n else {\r\n alert('error: no product selected');\r\n }\r\n }\r\n\r\n // Reloads\r\n\r\n private TriggerReloads(ChangeDetectorRef: ChangeDetectorRef): void {\r\n var array = this.FabrikantenViewModel.selectedProduct?.fabrikantenBCBProductViewModels;\r\n\r\n if (array != null && array.length == 1) {\r\n if (this.SelectedTab == \"Bestek\") {\r\n this.BestekService.LoadFabrikantenBestekViewModel(this.FabrikantenViewModel.sessionId as string, ChangeDetectorRef);\r\n }\r\n else if (this.SelectedTab == \"3D\") {\r\n this.WebGLService.LoadFabrikanten3DViewModel(this.FabrikantenViewModel.sessionId as string, ChangeDetectorRef);\r\n }\r\n else if (this.SelectedTab == \"2D\") {\r\n this.SVGService.LoadFabrikantenSVGViewModel(this.FabrikantenViewModel.sessionId as string, ChangeDetectorRef);\r\n }\r\n }\r\n }\r\n\r\n // Breadcrumb\r\n\r\n public GetSteps(): Array<FabrikantenCategoryViewModel> {\r\n var returnarray = new Array<FabrikantenCategoryViewModel>();\r\n\r\n var array = this.FabrikantenViewModel?.categoryLayers;\r\n\r\n if (array != null) {\r\n for (var i = 0; i < array.length; i++) {\r\n if (array[i].selectedOption != 0) {\r\n var options = array[i].categories;\r\n\r\n if (options != null) {\r\n for (var j = 0; j < options.length; j++) {\r\n if (options[j].id === array[i].selectedOption) {\r\n returnarray.push(options[j]);\r\n }\r\n }\r\n }\r\n }\r\n else {\r\n break;\r\n }\r\n }\r\n }\r\n\r\n return returnarray;\r\n }\r\n}\r\n","import { ChangeDetectorRef, Component, EventEmitter, Input, OnInit, Output, ViewEncapsulation } from '@angular/core';\r\nimport { FabrikantenService } from '../../services/fabrikanten.service';\r\nimport { TranslateService } from '../../services/translate.service';\r\nimport { FabrikantenFilterViewModel } from '../../swagger/SwaggerClient';\r\n\r\n@Component({\r\n selector: 'app-fab-filter',\r\n templateUrl: './fab-filter.component.html',\r\n styleUrls: ['./fab-filter.component.scss'],\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class FabFilterComponent implements OnInit {\r\n public SelectedOptionId: number;\r\n\r\n _filter: FabrikantenFilterViewModel;\r\n get filter(): FabrikantenFilterViewModel {\r\n return this._filter;\r\n }\r\n\r\n @Input() set filter(value: FabrikantenFilterViewModel) {\r\n this._filter = value;\r\n this.SelectedOptionId = this._filter.selectedOption;\r\n\r\n if (this.SelectedOptionId == 0) {\r\n var options = this._filter.options;\r\n if (options != null && options.length == 1) {\r\n this.SelectedOptionId = options[0].id;\r\n }\r\n }\r\n }\r\n\r\n @Output() filterchanged: EventEmitter<void> = new EventEmitter<void>();\r\n\r\n constructor(\r\n private FabrikantenService: FabrikantenService,\r\n public TranslateService: TranslateService,\r\n private ChangeDetectorRef: ChangeDetectorRef) { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n public SelectOption(): void {\r\n this.FabrikantenService.SelectOption(this.filter.id, this.SelectedOptionId, this.ChangeDetectorRef);\r\n }\r\n\r\n public ResetSelection(): void {\r\n this.FabrikantenService.ResetSelectionFilter(this.filter, this.ChangeDetectorRef);\r\n }\r\n\r\n public IsDisabled(): boolean {\r\n\r\n if (this.filter.selectedOption != 0) {\r\n return true;\r\n }\r\n\r\n if (this.filter.options?.length == 1) {\r\n return true;\r\n }\r\n\r\n return false;\r\n }\r\n\r\n}\r\n","<div class=\"row\" *ngIf=\"!filter.hidden\">\r\n <div class=\"select\">\r\n <mat-form-field appearance=\"fill\" class=\"full-width\">\r\n <mat-label class=\"select-mat-label\">\r\n {{ TranslateService.GetActiveValueFilter(filter.id) }}<span *ngIf=\"filter.blocksProductSelect\">*</span>\r\n </mat-label>\r\n <mat-select [(ngModel)]=\"SelectedOptionId\" (selectionChange)=\"SelectOption()\" [disabled]=\"IsDisabled()\">\r\n <mat-option *ngFor=\"let option of filter.options\" [value]=\"option.id\" class=\"select-mat-option\">\r\n <ng-container *ngIf=\"option.colour != null && option.colour != ''\">\r\n <span [ngStyle]=\"{'background-color': option.colour}\" class=\"colour-preview\">\r\n \r\n \r\n </span>\r\n </ng-container>\r\n \r\n {{ TranslateService.GetActiveValueFilterOption(option.id) }}\r\n </mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n </div>\r\n <div class=\"reset\" *ngIf=\"filter.selectedOption != 0\" (click)=\"ResetSelection()\">\r\n <mat-icon class=\"icon-position\" [inline]=\"true\">clear</mat-icon>\r\n </div>\r\n</div>\r\n","import { ChangeDetectorRef, Component, Input, OnInit } from '@angular/core';\nimport { FabrikantenService } from '../../services/fabrikanten.service';\r\nimport { TranslateService } from '../../services/translate.service';\r\nimport { FabrikantenRangeInputViewModel } from '../../swagger/SwaggerClient';\n\n@Component({\n selector: 'app-fab-range-input',\n templateUrl: './fab-range-input.component.html',\n styleUrls: ['./fab-range-input.component.scss']\n})\nexport class FabRangeInputComponent implements OnInit {\n\n //@Input() rangeinput: FabrikantenRangeInputViewModel;\n\n _rangeinput: FabrikantenRangeInputViewModel;\r\n get rangeinput(): FabrikantenRangeInputViewModel {\r\n return this._rangeinput;\r\n }\r\n\r\n @Input() set rangeinput(value: FabrikantenRangeInputViewModel) {\r\n this._rangeinput = value;\r\n\r\n this.tooltip = this.GetTranslateString();\r\n\r\n this.tooltip = this.tooltip.replace(\"{min}\", this._rangeinput.minimum.toString());\r\n this.tooltip = this.tooltip.replace(\"{max}\", this._rangeinput.maximum.toString());\r\n\r\n if (this._rangeinput.value != \"\") {\r\n this.value = parseInt(this._rangeinput.value + \"\");\r\n }\r\n }\n\n public value: number;\n\n public tooltip: string = \"\";\n\n constructor(private FabrikantenService: FabrikantenService,\n public TranslateService: TranslateService,\n private ChangeDetectorRef: ChangeDetectorRef) { }\n\n ngOnInit(): void {\n\n }\n\n public ProcessChange(): void {\n var process: boolean = true;\r\n\r\n if (this._rangeinput.inclusiefMaximum) {\r\n if (this.value > this._rangeinput.maximum) {\r\n process = false;\r\n }\r\n }\r\n\r\n if (this._rangeinput.inclusiefMinimum) {\r\n if (this.value < this._rangeinput.minimum) {\r\n process = false;\r\n }\r\n }\r\n\r\n if (process) {\r\n this.FabrikantenService.SetRangeInput(this._rangeinput.id, this.value, this.ChangeDetectorRef);\r\n }\r\n }\n\n public GetMin(): number {\n if (this._rangeinput.inclusiefMinimum) {\n return this._rangeinput.minimum;\r\n }\n\n return -1;\r\n }\n\n public GetMax(): number {\n if (this._rangeinput.inclusiefMaximum) {\n return this._rangeinput.maximum;\r\n }\n\n return -1;\r\n }\n\n private GetTranslateString(): string {\n if (!this._rangeinput.inclusiefMinimum && this._rangeinput.inclusiefMaximum) {\n return this.TranslateService.GetActiveValue(\"Common\", \"InclusiveMax\");\r\n }\n else if (this._rangeinput.inclusiefMinimum && !this._rangeinput.inclusiefMaximum) {\n return this.TranslateService.GetActiveValue(\"Common\", \"InclusiveMin\");\r\n }\n else if (this._rangeinput.inclusiefMinimum && this._rangeinput.inclusiefMaximum) {\n return this.TranslateService.GetActiveValue(\"Common\", \"InclusiveMinMax\");\r\n }\n else {\n return \"\";\r\n }\n }\n}\n","\r\n <mat-form-field appearance=\"fill\" class=\"fullwidth\">\r\n <mat-label>{{ TranslateService.GetActiveValueRangeInput(rangeinput.id) }}</mat-label>\r\n <input *ngIf=\"GetMin() == -1 && GetMax() == -1\" matInput type=\"number\" matTooltip=\"{{ tooltip }}\" [(ngModel)]=\"value\" (change)=\"ProcessChange()\">\r\n <input *ngIf=\"GetMin() != -1 && GetMax() != -1\" matInput type=\"number\" [min]=\"GetMin()\" [max]=\"GetMax()\" matTooltip=\"{{ tooltip }}\" [(ngModel)]=\"value\" (change)=\"ProcessChange()\">\r\n <input *ngIf=\"GetMin() == -1 && GetMax() != -1\" matInput type=\"number\" [max]=\"GetMax()\" matTooltip=\"{{ tooltip }}\" [(ngModel)]=\"value\" (change)=\"ProcessChange()\">\r\n <input *ngIf=\"GetMin() != -1 && GetMax() == -1\" matInput type=\"number\" [min]=\"GetMin()\" matTooltip=\"{{ tooltip }}\" [(ngModel)]=\"value\" (change)=\"ProcessChange()\">\r\n <mat-error>{{ tooltip }}</mat-error>\r\n </mat-form-field>\r\n\r\n","import { ChangeDetectorRef, Component, OnInit } from '@angular/core';\nimport { FabrikantenService } from '../../services/fabrikanten.service';\r\nimport { TranslateService } from '../../services/translate.service';\r\n\n@Component({\n selector: 'fab-filters-input',\n templateUrl: './fab-filters-input.component.html',\n styleUrls: ['./fab-filters-input.component.scss']\n})\nexport class FabFiltersInputComponent implements OnInit {\n\n constructor(\n public FabrikantenService: FabrikantenService,\n public TranslateService: TranslateService,\n public ChangeDetectorRef: ChangeDetectorRef) { }\n\n ngOnInit(): void {\n }\n\n public ResetAllFilters(): void {\r\n this.FabrikantenService.ResetAllFilters(this.ChangeDetectorRef);\r\n }\n}\n","<div class=\"filter-view-margin\">\r\n <div class=\"filter-view-header\">\r\n <div class=\"filter-view-header-h1\">\r\n <h1>{{ TranslateService.GetActiveValue(\"Common\", \"Filters\") }}</h1>\r\n </div>\r\n <div class=\"filter-view-header-reset\" (click)=\"ResetAllFilters()\">\r\n {{ TranslateService.GetActiveValue(\"Common\", \"Reset filters\") }}\r\n </div>\r\n </div>\r\n\r\n <app-fab-filter *ngFor=\"let filterviewmodel of FabrikantenService.FabrikantenViewModel.filters\" [filter]=\"filterviewmodel\"></app-fab-filter>\r\n <app-fab-range-input *ngFor=\"let rangeinputviewmodel of FabrikantenService.FabrikantenViewModel.rangeInputs\" [rangeinput]=\"rangeinputviewmodel\"></app-fab-range-input>\r\n</div>\r\n","import { Injectable } from '@angular/core';\r\nimport { FabrikantenBCBProductAfbeeldingViewModel, FabrikantenProductViewModel } from '../swagger/SwaggerClient';\r\nimport { FabrikantenService } from './fabrikanten.service';\r\nimport { TranslateService } from './translate.service';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class PhotoService {\r\n\r\n\r\n constructor(\r\n private FabrikantenService: FabrikantenService,\r\n private TranslateService: TranslateService\r\n ) {\r\n }\r\n\r\n public Left(): void {\r\n this.FabrikantenService.SelectedPhoto--;\r\n }\r\n\r\n public Right(): void {\r\n this.FabrikantenService.SelectedPhoto++;\r\n }\r\n\r\n public GetSelectedPhoto(): string {\r\n var array = this.GetPhotoArray();\r\n\r\n if (array.length == 0) {\r\n return \"\";\r\n }\r\n else {\r\n return this.FabrikantenService.FabrikantenViewModel?.bcbWebserviceURLBase as string + array[this.FabrikantenService.SelectedPhoto].url;\r\n }\r\n }\r\n\r\n public GetSelectedDescription(): string {\r\n var array = this.GetPhotoArray();\r\n\r\n if (array.length == 0) {\r\n return \"\";\r\n }\r\n else {\r\n return this.TranslateService.GetActiveValueAfbeelding(array[this.FabrikantenService.SelectedPhoto].id) + \" (\" + (this.FabrikantenService.SelectedPhoto + 1) + \"/\" + array.length + \")\";\r\n }\r\n }\r\n\r\n public ShouldDisplayLeft(): boolean {\r\n return this.FabrikantenService.SelectedPhoto != 0;\r\n }\r\n\r\n public ShouldDisplayRight(): boolean {\r\n var array = this.GetPhotoArray();\r\n\r\n return array.length != (this.FabrikantenService.SelectedPhoto + 1);\r\n }\r\n\r\n public GetPhotoCount(): number {\r\n var array = this.GetPhotoArray();\r\n\r\n return array.length;\r\n }\r\n\r\n public GetPhotoArray(): Array<FabrikantenBCBProductAfbeeldingViewModel> {\r\n return this.GetPhotoArrayProduct(this.FabrikantenService.FabrikantenViewModel?.selectedProduct);\r\n }\r\n\r\n public GetPhotoArrayProduct(product: FabrikantenProductViewModel | undefined): Array<FabrikantenBCBProductAfbeeldingViewModel> {\r\n var array = new Array<FabrikantenBCBProductAfbeeldingViewModel>();\r\n var bcbproducts = product?.fabrikantenBCBProductViewModels;\r\n\r\n if (bcbproducts != null) {\r\n for (var i = 0; i < bcbproducts.length; i++) {\r\n var afbeeldingen = bcbproducts[i].bcbProductAfbeeldingen;\r\n\r\n if (afbeeldingen != null)\r\n for (var j = 0; j < afbeeldingen.length; j++) {\r\n\r\n if (afbeeldingen[j].url != null) {\r\n var url = afbeeldingen[j].url as string;\r\n\r\n var contains = false;\r\n\r\n for (var p = 0; p < array.length; p++) {\r\n if (array[p].url == url) {\r\n contains = true;\r\n break;\r\n }\r\n }\r\n\r\n if (!contains) {\r\n if (bcbproducts.length == 1 || !afbeeldingen[j].hiddenOnMix) {\r\n array.push(afbeeldingen[j]);\r\n }\r\n }\r\n }\r\n }\r\n }\r\n }\r\n\r\n var sortedArray: FabrikantenBCBProductAfbeeldingViewModel[] = array.sort((n1, n2) => {\r\n if (n1.position > n2.position) {\r\n return 1;\r\n }\r\n\r\n if (n1.position < n2.position) {\r\n return -1;\r\n }\r\n\r\n if (n1.id > n2.id) {\r\n return 1;\r\n }\r\n\r\n if (n1.id < n2.id) {\r\n return -1;\r\n }\r\n\r\n return 0;\r\n });\r\n\r\n return sortedArray;\r\n }\r\n}\r\n","import { Component, OnInit } from '@angular/core';\nimport { MatDialogRef } from '@angular/material/dialog';\r\nimport { PhotoService } from '../../../../services/photo.service';\r\n\n@Component({\n selector: 'app-fab-product-info-photo-dialog',\n templateUrl: './fab-product-info-photo-dialog.component.html',\n styleUrls: ['./fab-product-info-photo-dialog.component.scss']\n})\nexport class FabProductInfoPhotoDialogComponent implements OnInit {\n\n constructor(public dialogRef: MatDialogRef<FabProductInfoPhotoDialogComponent>, public PhotoService: PhotoService) { }\n\n ngOnInit(): void {\n }\n\n}\n","<div class=\"image-container\">\n <div class=\"image-toolbar\">\n <div *ngIf=\"PhotoService.ShouldDisplayLeft()\" (click)=\"PhotoService.Left()\" class=\"arrow\">\n <mat-icon>arrow_back</mat-icon>\n </div>\n <div class=\"filler\">\n {{ PhotoService.GetSelectedDescription() }}\n </div>\n <div *ngIf=\"PhotoService.ShouldDisplayRight()\" (click)=\"PhotoService.Right()\" class=\"arrow\">\n <mat-icon>arrow_forward</mat-icon>\n </div>\n </div>\n\n <img class=\"image\" src=\"{{ PhotoService.GetSelectedPhoto() }}\" />\n</div>\n","import { Component, OnInit } from '@angular/core';\r\nimport { MatDialog, MatDialogConfig } from '@angular/material/dialog';\r\nimport { PhotoService } from '../../../../services/photo.service';\r\nimport { FabProductInfoPhotoDialogComponent } from '../fab-product-info-photo-dialog/fab-product-info-photo-dialog.component';\r\n\r\n@Component({\r\n selector: 'app-fab-product-info-photo',\r\n templateUrl: './fab-product-info-photo.component.html',\r\n styleUrls: ['./fab-product-info-photo.component.scss']\r\n})\r\nexport class FabProductInfoPhotoComponent implements OnInit {\r\n constructor(public PhotoService: PhotoService, public dialog: MatDialog) { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n public Open(): void {\r\n const mdc = new MatDialogConfig();\r\n\r\n mdc.position = {\r\n 'top': '100px',\r\n };\r\n\r\n var dialogRef = this.dialog.open(FabProductInfoPhotoDialogComponent, mdc);\r\n }\r\n}\r\n","<div class=\"image-container\">\n <div class=\"image-toolbar\">\n <div *ngIf=\"PhotoService.ShouldDisplayLeft()\" (click)=\"PhotoService.Left()\" class=\"arrow\">\n <mat-icon>arrow_back</mat-icon>\n </div>\n <div class=\"filler\">\n {{ PhotoService.GetSelectedDescription() }}\n </div>\n <div *ngIf=\"PhotoService.ShouldDisplayRight()\" (click)=\"PhotoService.Right()\" class=\"arrow\">\n <mat-icon>arrow_forward</mat-icon>\n </div>\n </div>\n\n <img class=\"image\" src=\"{{ PhotoService.GetSelectedPhoto() }}\" (click)=\"Open()\" />\n</div>\n","import { ChangeDetectorRef, Component, HostListener, OnInit } from '@angular/core';\r\nimport { FabrikantenService } from '../../../services/fabrikanten.service';\r\nimport { MobileService } from '../../../services/mobile.service';\r\nimport { TranslateService } from '../../../services/translate.service';\r\n\r\n@Component({\r\n selector: 'app-fab-product-info',\r\n templateUrl: './fab-product-info.component.html',\r\n styleUrls: ['./fab-product-info.component.scss']\r\n})\r\nexport class FabProductInfoComponent implements OnInit {\r\n\r\n constructor(\r\n public MobileService: MobileService,\r\n public TranslateService: TranslateService,\r\n private FabrikantenService: FabrikantenService,\r\n private ChangeDetectorRef: ChangeDetectorRef) { }\r\n\r\n ngOnInit() {\r\n this.MobileService.UpdateScreenSize(window.innerWidth, window.innerHeight, this.ChangeDetectorRef);\r\n }\r\n\r\n @HostListener('window:resize', ['$event'])\r\n onResize(event: any) {\r\n this.MobileService.UpdateScreenSize(window.innerWidth, window.innerHeight, this.ChangeDetectorRef);\r\n }\r\n\r\n public GetDescription(): string {\r\n var bcbproducts = this.FabrikantenService.FabrikantenViewModel?.selectedProduct?.fabrikantenBCBProductViewModels;\r\n\r\n if (bcbproducts != null) {\r\n for (var i = 0; i < bcbproducts.length; i++) {\r\n if (bcbproducts[i].description != null)\r\n return this.TranslateService.GetActiveValueDescription(bcbproducts[i].id);\r\n }\r\n }\r\n\r\n return \"\";\r\n }\r\n}\r\n","<div class=\"description-normal\" *ngIf=\"!MobileService.MobileInterface\">\n <div class=\"text\" [innerHTML]=\"GetDescription()\">\n\n </div>\n <div class=\"photo\">\n <app-fab-product-info-photo></app-fab-product-info-photo>\n </div>\n</div>\n\n<div class=\"mobile\" *ngIf=\"MobileService.MobileInterface\">\n <div class=\"photo\">\n <app-fab-product-info-photo></app-fab-product-info-photo>\n </div>\n <div class=\"text\" [innerHTML]=\"GetDescription()\">\n\n </div>\n</div>\n","import { Component, ElementRef, OnInit, ViewChild, ViewEncapsulation } from '@angular/core';\r\nimport { MatButtonToggleChange } from '@angular/material/button-toggle';\r\nimport { BestekService } from '../../../services/bestek.service';\r\nimport { FabrikantenService } from '../../../services/fabrikanten.service';\r\nimport { MobileService } from '../../../services/mobile.service';\r\nimport { TranslateService } from '../../../services/translate.service';\r\n\r\nimport {\r\n FabrikantenBCBProductViewModel\r\n} from '../../../swagger/SwaggerClient';\r\n\r\n@Component({\r\n selector: 'app-fab-product-bestek',\r\n templateUrl: './fab-product-bestek.component.html',\r\n styleUrls: ['./fab-product-bestek.component.scss'],\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class FabProductBestekComponent implements OnInit {\r\n\r\n @ViewChild('fabProductBestek') fabProductBestek: ElementRef;\r\n\r\n constructor(\r\n public MobileService: MobileService,\r\n public FabrikantenService: FabrikantenService,\r\n public TranslateService: TranslateService,\r\n public BestekService: BestekService) { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n public CopyToClipBoard(): void {\r\n this.BestekService.CopyToClipboard(this.fabProductBestek.nativeElement.innerText);\r\n }\r\n\r\n public DownloadBestek(): void {\r\n this.BestekService.DownloadBestek(this.fabProductBestek.nativeElement.innerText);\r\n }\r\n\r\n public OpenBCBLink(): void {\r\n this.FabrikantenService.OpenBCBLink(this.BestekService.FabrikantenBestekViewModel.wuid + \"\");\r\n }\r\n\r\n public Select(bcbproduct: FabrikantenBCBProductViewModel) {\r\n\r\n }\r\n\r\n public SelectedTabChange(event: MatButtonToggleChange) {\r\n this.BestekService.TypeBestek = event.value;\r\n }\r\n\r\n public ShowBestek(): boolean {\r\n if (!this.FabrikantenService.ShowVariants()) {\r\n if (this.BestekService.FabrikantenBestekViewModel != undefined) {\r\n return true;\r\n }\r\n }\r\n\r\n return false;\r\n }\r\n\r\n public ShowSTABU(): boolean {\r\n return this.BestekService.FabrikantenBestekViewModel?.stabu != '' && this.BestekService.FabrikantenBestekViewModel?.stabu != undefined;\r\n }\r\n\r\n public ShowSUF(): boolean {\r\n return this.BestekService.FabrikantenBestekViewModel?.suf != '' && this.BestekService.FabrikantenBestekViewModel?.suf != undefined;\r\n }\r\n\r\n public ShowOSF(): boolean {\r\n return this.BestekService.FabrikantenBestekViewModel?.osfhtml != '' && this.BestekService.FabrikantenBestekViewModel?.osfhtml != undefined;\r\n }\r\n\r\n public ShowVrij(): boolean {\r\n return this.BestekService.FabrikantenBestekViewModel?.vrijBestekHTML != '' && this.BestekService.FabrikantenBestekViewModel?.vrijBestekHTML != undefined;\r\n }\r\n}\r\n","<div class=\"main-window\">\n <div *ngIf=\"FabrikantenService.ShowVariants()\" class=\"multiplevariants\">\n {{ TranslateService.GetActiveValue(\"Common\", \"Multiple variants\") }}\n <div>\n <ul>\n <li class=\"button\" mat-stroked-button *ngFor=\"let bcbproduct of FabrikantenService.FabrikantenViewModel.selectedProduct.fabrikantenBCBProductViewModels\">\n {{ bcbproduct.name }}\n </li>\n </ul>\n </div>\n </div>\n <app-fab-loader *ngIf=\"BestekService.Loading\"></app-fab-loader>\n <div *ngIf=\"ShowBestek()\">\n <div *ngIf=\"!BestekService.Loading\">\n\n <div class=\"bestek-settings\">\n <mat-card>\n <mat-card-content>\n <div class=\"column\">\n <mat-button-toggle-group [value]=\"BestekService.TypeBestek\" (change)=\"SelectedTabChange($event)\" appearance=\"legacy\">\n <mat-button-toggle *ngIf=\"ShowSTABU()\" value=\"STABU\">{{ TranslateService.GetActiveValue(\"Common\", \"STABU\") }}</mat-button-toggle>\n <mat-button-toggle *ngIf=\"ShowOSF()\" value=\"OSF\">{{ TranslateService.GetActiveValue(\"Common\", \"OSF\") }}</mat-button-toggle>\n <mat-button-toggle *ngIf=\"ShowVrij()\" value=\"Vrij\">{{ TranslateService.GetActiveValue(\"Common\", \"Specification text\") }}</mat-button-toggle>\n </mat-button-toggle-group>\n <div>\n \n </div>\n <button mat-stroked-button class=\"toolbar-button\" (click)=\"CopyToClipBoard()\">\n <div class=\"row\">\n <div class=\"row-icon\">\n <mat-icon class=\"icon\">content_copy</mat-icon>\n </div>\n <div class=\"row-title\">\n {{ TranslateService.GetActiveValue(\"Common\", \"Clipboard\") }}\n </div>\n </div>\n </button>\n <button mat-stroked-button class=\"toolbar-button\" (click)=\"DownloadBestek()\">\n <div class=\"row\">\n <div class=\"row-icon\">\n <mat-icon class=\"icon\">file_download</mat-icon>\n </div>\n <div class=\"row-title\">\n {{ TranslateService.GetActiveValue(\"Common\", \"Download\") }}\n </div>\n </div>\n </button>\n <button mat-stroked-button class=\"toolbar-button\" (click)=\"OpenBCBLink()\">\n <div class=\"row\">\n <div class=\"row-icon\">\n <mat-icon class=\"icon\">open_in_new</mat-icon>\n </div>\n <div class=\"row-title\">\n {{ TranslateService.GetActiveValue(\"Common\", \"BCB\") }}\n </div>\n </div>\n </button>\n </div>\n </mat-card-content>\n </mat-card>\n </div>\n\n\n <div class=\"bestek-viewer\" #fabProductBestek [innerHTML]=\"BestekService.GetBestekTekst()\">\n </div>\n </div>\n </div>\n</div>\n","import { ChangeDetectorRef, Component, HostListener, Input, OnInit } from '@angular/core';\nimport { FabrikantenService } from '../../services/fabrikanten.service';\r\nimport { MobileService } from '../../services/mobile.service';\r\nimport { TranslateService } from '../../services/translate.service';\r\nimport { FabrikantenCategoryViewModel } from '../../swagger/SwaggerClient';\r\n\n@Component({\n selector: 'app-fab-breadcrumb',\n templateUrl: './fab-breadcrumb.component.html',\n styleUrls: ['./fab-breadcrumb.component.scss']\n})\nexport class FabBreadcrumbComponent implements OnInit {\n\n @Input() showfiltermenubutton: boolean;\n\n constructor(\n public MobileService: MobileService,\n public FabrikantenService: FabrikantenService,\n public TranslateService: TranslateService,\n private ChangeDetectorRef: ChangeDetectorRef) { }\n\n ngOnInit(): void {\n this.MobileService.UpdateScreenSize(window.innerWidth, window.innerHeight, this.ChangeDetectorRef);\n }\r\n\r\n @HostListener('window:resize', ['$event'])\r\n onResize(event: any) {\r\n this.MobileService.UpdateScreenSize(window.innerWidth, window.innerHeight, this.ChangeDetectorRef);\r\n }\n\n public Back(): void {\n if (this.FabrikantenService.FabrikantenViewModel.selectedProduct != null) {\n this.FabrikantenService.RemoveProductSelection(this.ChangeDetectorRef);\r\n }\n else {\n var array = this.FabrikantenService.GetSteps();\n if (array.length > 0) {\n this.UndoStep(array[array.length - 1]);\r\n }\r\n }\r\n }\n\n public UndoStep(category: FabrikantenCategoryViewModel): void {\n this.FabrikantenService.ResetSelectionCategory(category, this.ChangeDetectorRef);\r\n }\n\n public ShowBack(): boolean {\n var array = this.FabrikantenService.FabrikantenViewModel?.categoryLayers;\n\n if (array != null) {\n if (array.length > 0) {\r\n if (array[0].selectedOption == 0) {\r\n return false;\r\n }\r\n }\r\n }\n\n return true;\r\n }\n}\n","<div class=\"header\" *ngIf=\"ShowBack()\">\n <div>\n <button class=\"buttonsize\" mat-stroked-button (click)=\"Back()\">\n <div class=\"header\">\n <div class=\"header-back\">\n <mat-icon class=\"icon\">arrow_back</mat-icon>\n </div>\n <div class=\"header-title\">\n {{ TranslateService.GetActiveValue(\"Common\", \"Back\") }}\n </div>\n </div>\n </button>\n </div>\n <ng-container *ngIf=\"!MobileService.MobileInterface\">\n <ng-container *ngFor=\"let step of FabrikantenService.GetSteps()\">\n <div class=\"stepicon\">\n <mat-icon>chevron_right</mat-icon>\n </div>\n <div class=\"step\" (click)=\"UndoStep(step)\">\n {{ TranslateService.GetActiveValueCategory(step.id) }}\n </div>\n </ng-container>\n\n <ng-container *ngIf=\"this.FabrikantenService.FabrikantenViewModel?.selectedProduct != null\">\n <div class=\"stepicon\">\n <mat-icon>chevron_right</mat-icon>\n </div>\n <div class=\"step\" (click)=\"Back()\">\n <span *ngIf=\"FabrikantenService.GetSteps().length == 0\">Productconfiguratie: </span>{{ TranslateService.GetActiveValueProduct(FabrikantenService.FabrikantenViewModel?.selectedProduct?.id) }}\n </div>\n </ng-container>\n </ng-container>\n <ng-container *ngIf=\"MobileService.MobileInterface && showfiltermenubutton\">\n <button class=\"open-filters-button buttonsize\" mat-stroked-button (click)=\"MobileService.OpenNav()\">\n <div class=\"header\">\n <div class=\"header-back\">\n <mat-icon class=\"icon\">menu</mat-icon>\n </div>\n <div class=\"header-title\">\n Filtermenu\n </div>\n </div>\n </button>\n </ng-container>\n</div>\n","import { Component, Input, OnInit } from '@angular/core';\n\n@Component({\n selector: 'fab-flag',\n templateUrl: './fab-flag.component.html',\n styleUrls: ['./fab-flag.component.scss']\n})\nexport class FabFlagComponent implements OnInit {\n\n @Input() country: string;\n\n constructor() { }\n\n ngOnInit(): void {\n }\n\n}\n","<span class=\"fi fi-{{ country }}\"></span>\n","import { ChangeDetectorRef, Component, OnInit } from '@angular/core';\nimport { TranslateService } from '../../services/translate.service';\r\nimport { LanguageViewModel } from '../../swagger/SwaggerClient';\r\n\n@Component({\n selector: 'app-fab-language-select',\n templateUrl: './fab-language-select.component.html',\n styleUrls: ['./fab-language-select.component.scss']\n})\nexport class FabLanguageSelectComponent implements OnInit {\n\n constructor(public TranslateService: TranslateService, private ChangeDetectorRef: ChangeDetectorRef) { }\n\n ngOnInit(): void {\n this.TranslateService.LoadTranslations(this.ChangeDetectorRef);\n }\n\n public SelectLanguage(language: LanguageViewModel) {\n this.TranslateService.SelectLanguage(language, this.ChangeDetectorRef);\r\n }\n}\n","<div class=\"row\" *ngIf=\"TranslateService.Show()\">\n <div class=\"item\" (click)=\"SelectLanguage(language)\" *ngFor=\"let language of TranslateService.LanguagesViewModel.languages\">\n <fab-flag [country]=\"language.flag\"></fab-flag>\n </div>\n</div>\n","import { ChangeDetectorRef, Component, Input, OnInit } from '@angular/core';\nimport { FabrikantenService } from '../../services/fabrikanten.service';\nimport { TranslateService } from '../../services/translate.service';\n\n@Component({\n selector: 'app-fab-header',\n templateUrl: './fab-header.component.html',\n styleUrls: ['./fab-header.component.scss']\n})\nexport class FabHeaderComponent implements OnInit {\n\n @Input() showfiltermenubutton: boolean;\n\n constructor(public FabrikantenService: FabrikantenService, public TranslateService: TranslateService, private ChangeDetectorRef: ChangeDetectorRef) { }\n\n ngOnInit(): void {\n this.TranslateService.LoadTranslations(this.ChangeDetectorRef);\n }\n\n public ShowHeader(): boolean {\n return this.ShowBreadcrumb() || this.ShowLanguageSelect();\r\n }\n\n public ShowBreadcrumb(): boolean {\n if (this.FabrikantenService.FabrikantenViewModel?.selectedProduct == null) {\n if (this.FabrikantenService.GetSteps().length == 0) {\n return false;\r\n }\n }\n\n return true;\r\n }\n\n public ShowLanguageSelect(): boolean {\n return this.TranslateService.Show();\r\n }\n\n}\n","<div class=\"header-row\" *ngIf=\"ShowHeader()\">\r\n <app-fab-breadcrumb *ngIf=\"ShowBreadcrumb()\" [showfiltermenubutton]=\"showfiltermenubutton\"></app-fab-breadcrumb>\r\n <app-fab-language-select *ngIf=\"ShowLanguageSelect()\"></app-fab-language-select>\r\n</div>\r\n\r\n\r\n","import { AfterContentInit, AfterViewInit, ChangeDetectorRef, Component, DoCheck, ElementRef, HostListener, OnInit, ViewChild } from '@angular/core';\nimport { FabrikantenService } from '../../services/fabrikanten.service';\r\nimport { MobileService } from '../../services/mobile.service';\r\nimport { TranslateService } from '../../services/translate.service';\r\nimport { WebGLService } from '../../services/webgl.service';\r\nimport { FabrikantenApiClient, FabrikantenFileRequestModel, FabrikantenFileViewModel } from '../../swagger/SwaggerClient';\r\n\ndeclare var ModuleViewer3DLight: any;\n\n@Component({\n selector: 'app-fab-webgl-viewer',\n templateUrl: './fab-webgl-viewer.component.html',\n styleUrls: ['./fab-webgl-viewer.component.scss']\n})\nexport class FabWebglViewerComponent implements OnInit, AfterViewInit, DoCheck {\n\n public Height: string = \"calc(100% - 0px)\";\n\n @ViewChild('viewercontainer') viewercontainer: ElementRef;\n\n constructor(\n public FabrikantenService: FabrikantenService,\n public WebGLService: WebGLService,\n public TranslateService: TranslateService,\n public MobileService: MobileService,\n private ChangeDetectorRef: ChangeDetectorRef\n ) {\n this.WebGLService.FabWebglViewerComponent = this;\n\n this.RefreshViewerSize();\n }\n\n ngOnInit(): void {\n this.RefreshViewerSize();\n }\n\n ngAfterViewInit(): void {\n this.RefreshViewerSize();\r\n this.RefreshViewer();\r\n this.ChangeDetectorRef.detectChanges();\r\n }\n\n ngDoCheck(): void {\n this.RefreshViewerSize();\r\n }\n\n public OpenBCBLink(): void {\r\n this.FabrikantenService.OpenBCBLink(this.WebGLService.Fabrikanten3DViewModel.wuid + \"\");\r\n }\n\n public ShowWebGL(): boolean {\r\n if (!this.FabrikantenService.ShowVariants()) {\r\n if (this.WebGLService.Fabrikanten3DViewModel != undefined) {\r\n return true;\r\n }\r\n }\r\n\r\n return false;\r\n }\n\n public RefreshViewer(): void {\r\n if (!this.WebGLService.Loading && this.WebGLService.Fabrikanten3DViewModel != null) {\r\n var viewer = ModuleViewer3DLight.get(\"viewerCanvas\");\r\n\r\n if (viewer != null) {\r\n\r\n var belichting = viewer.belichting;\r\n belichting.toonSlagschaduw = true;\r\n belichting.slagschaduwVerzadiging = 0.5;\r\n belichting.lichtbronSterkte = 0.8;\r\n belichting.lichtSchittering = 0.333;\r\n belichting.isCameraLicht = false;\r\n belichting.omgevinglichtSterkte = 0.4;\r\n belichting.lichtval = [-1.0, 0.5, -1.2];\r\n viewer.orthografischeProjectie = false;\r\n viewer.kijkrichting = [0.50023241910093, 0.7443600526604934, -0.4423749980318723];\r\n\r\n viewer.clear();\r\n viewer.add(this.WebGLService.Fabrikanten3DViewModel.webGLJSON, function () {\r\n viewer.zetZoomGeheel();\r\n viewer.toonModel();\r\n });\r\n }\r\n }\r\n }\n\n private RefreshViewerSize(): void {\r\n if (this.viewercontainer != undefined) {\r\n\r\n var width = this.viewercontainer.nativeElement.offsetWidth - 6;\r\n var height = this.viewercontainer.nativeElement.offsetHeight - 6;\r\n\r\n if (this.WebGLService.ViewerWidth != width || this.WebGLService.ViewerHeight != height) {\r\n\r\n this.WebGLService.ViewerWidth = width;\r\n this.WebGLService.ViewerHeight = height;\r\n this.ChangeDetectorRef.detectChanges();\r\n\r\n this.RefreshViewer();\r\n }\r\n }\r\n }\n}\n","<div class=\"loader\" *ngIf=\"WebGLService.Loading\">\n <app-fab-loader></app-fab-loader>\n</div>\n\n<div class=\"main-window\">\n <div *ngIf=\"FabrikantenService.ShowVariants()\" class=\"multiplevariants\">\n {{ TranslateService.GetActiveValue(\"Common\", \"Multiple variants\") }}\n <div>\n <ul>\n <li class=\"button\" mat-stroked-button *ngFor=\"let bcbproduct of FabrikantenService.FabrikantenViewModel.selectedProduct.fabrikantenBCBProductViewModels\">\n {{ bcbproduct.name }}\n </li>\n </ul>\n </div>\n </div>\n <div *ngIf=\"ShowWebGL()\" class=\"main-window flex-col\">\n <div #viewercontainer class=\"viewer-container\">\n <canvas id=\"viewerCanvas\" class=\"viewer-canvas\" [attr.width]=\"WebGLService.ViewerWidth\" [attr.height]=\"WebGLService.ViewerHeight\"></canvas>\n </div>\n\n <div class=\"webgl-settings\">\n <mat-card>\n <mat-card-content>\n <div class=\"column\">\n <button mat-stroked-button class=\"toolbar-button rfa-button\" (click)=\"FabrikantenService.DownloadRFA()\" *ngIf=\"WebGLService.HasNativeRFA()\">\n <div class=\"row\">\n <div class=\"row-icon\">\n <mat-icon class=\"icon\">file_download</mat-icon>\n </div>\n <div class=\"row-title\">\n <span *ngIf=\"FabrikantenService.DownloadRFALoading\">...</span>\n <span *ngIf=\"!FabrikantenService.DownloadRFALoading\">{{ TranslateService.GetActiveValue(\"Common\", \"Revit\") }}</span>\n </div>\n </div>\n </button>\n <button mat-stroked-button class=\"toolbar-button arkey-adomi-button\" (click)=\"FabrikantenService.DownloadARKEYAdomi()\">\n <div class=\"row\">\n <div class=\"row-icon\">\n <mat-icon class=\"icon\">file_download</mat-icon>\n </div>\n <div class=\"row-title\">\n <span *ngIf=\"FabrikantenService.DownloadARKEYAdomiLoading\">...</span>\n <span *ngIf=\"!FabrikantenService.DownloadARKEYAdomiLoading\">{{ TranslateService.GetActiveValue(\"Common\", \"ARKEY Adomi\") }}</span>\n </div>\n </div>\n </button>\n <button mat-stroked-button class=\"toolbar-button ifc-button\" (click)=\"FabrikantenService.DownloadIFC()\">\n <div class=\"row\">\n <div class=\"row-icon\">\n <mat-icon class=\"icon\">file_download</mat-icon>\n </div>\n <div class=\"row-title\">\n <span *ngIf=\"FabrikantenService.DownloadIFCLoading\">...</span>\n <span *ngIf=\"!FabrikantenService.DownloadIFCLoading\">{{ TranslateService.GetActiveValue(\"Common\", \"IFC\") }}</span>\n </div>\n </div>\n </button>\n <!--<button mat-stroked-button class=\"toolbar-button revit-plugin-button\" (click)=\"FabrikantenService.DownloadRevitPlugin()\">\n <div class=\"row\">\n <div class=\"row-icon\">\n <mat-icon class=\"icon\">file_download</mat-icon>\n </div>\n <div class=\"row-title\">\n <span *ngIf=\"FabrikantenService.DownloadRevitPluginLoading\">...</span>\n <span *ngIf=\"!FabrikantenService.DownloadRevitPluginLoading\">{{ TranslateService.GetActiveValue(\"Common\", \"Revit (plugin)\") }}</span>\n </div>\n </div>\n </button>-->\n <button mat-stroked-button class=\"toolbar-button autocad-3d-button\" (click)=\"FabrikantenService.Download3DAutoCADDwg()\">\n <div class=\"row\">\n <div class=\"row-icon\">\n <mat-icon class=\"icon\">file_download</mat-icon>\n </div>\n <div class=\"row-title\">\n <span *ngIf=\"FabrikantenService.Download3DAutoCADDwgLoading\">...</span>\n <span *ngIf=\"!FabrikantenService.Download3DAutoCADDwgLoading\">{{ TranslateService.GetActiveValue(\"Common\", \"3D AutoCAD Dwg\") }}</span>\n </div>\n </div>\n </button>\n <button mat-stroked-button class=\"toolbar-button dxf-3d-button\" (click)=\"FabrikantenService.Download3DDxf()\">\n <div class=\"row\">\n <div class=\"row-icon\">\n <mat-icon class=\"icon\">file_download</mat-icon>\n </div>\n <div class=\"row-title\">\n <span *ngIf=\"FabrikantenService.Download3DDxfLoading\">...</span>\n <span *ngIf=\"!FabrikantenService.Download3DDxfLoading\">{{ TranslateService.GetActiveValue(\"Common\", \"3D Dxf\") }}</span>\n </div>\n </div>\n </button>\n <button mat-stroked-button class=\"toolbar-button\" (click)=\"OpenBCBLink()\">\n <div class=\"row\">\n <div class=\"row-icon\">\n <mat-icon class=\"icon\">open_in_new</mat-icon>\n </div>\n <div class=\"row-title\">\n {{ TranslateService.GetActiveValue(\"Common\", \"BCB\") }}\n </div>\n </div>\n </button>\n </div>\n </mat-card-content>\n </mat-card>\n </div>\n </div>\n</div>\n\n\n","import { AfterViewInit, ChangeDetectorRef, Component, DoCheck, ElementRef, OnChanges, OnInit, ViewChild } from '@angular/core';\nimport { DomSanitizer, SafeResourceUrl, SafeStyle, SafeUrl } from '@angular/platform-browser';\r\nimport { FabrikantenService } from '../../services/fabrikanten.service';\r\nimport { MobileService } from '../../services/mobile.service';\r\nimport { SVGService } from '../../services/svg.service';\r\nimport { TranslateService } from '../../services/translate.service';\r\n\n@Component({\n selector: 'app-fab-svg-viewer',\n templateUrl: './fab-svg-viewer.component.html',\n styleUrls: ['./fab-svg-viewer.component.scss']\n})\nexport class FabSvgViewerComponent implements OnInit, AfterViewInit, DoCheck {\n @ViewChild('svgcontainer') svgcontainer: ElementRef;\n\n private timeoutId: any;\n\n constructor(\n public FabrikantenService: FabrikantenService,\n public SVGService: SVGService,\n public TranslateService: TranslateService,\n private sanitization: DomSanitizer,\n public MobileService: MobileService,\n private ChangeDetectorRef: ChangeDetectorRef) {\n this.UpdateSize();\n }\n\n ngOnInit(): void {\n this.UpdateSize();\n }\n\n ngAfterViewInit(): void {\n this.UpdateSize();\r\n this.ChangeDetectorRef.detectChanges();\r\n }\n\n ngDoCheck(): void {\n this.UpdateSize();\r\n }\n\n public ShowSVG(): boolean {\r\n if (!this.FabrikantenService.ShowVariants()) {\r\n if (this.SVGService.FabrikantenSVGViewModel != undefined) {\r\n return true;\r\n }\r\n }\r\n\r\n return false;\r\n }\n\n public GetSafeURL(): SafeResourceUrl {\r\n return this.sanitization.bypassSecurityTrustResourceUrl(this.SVGService.FabrikantenSVGViewModel.svg + \"\");\r\n }\n\n public OpenBCBLink(): void {\r\n this.FabrikantenService.OpenBCBLink(this.SVGService.FabrikantenSVGViewModel.wuid + \"\");\r\n }\n\n public UpdateSize(): void {\r\n if (this.svgcontainer != undefined) {\r\n\r\n var width = this.svgcontainer.nativeElement.offsetWidth - 6;\r\n var height = this.svgcontainer.nativeElement.offsetHeight - 6;\r\n\r\n if (this.SVGService.ViewerWidth != width || this.SVGService.ViewerHeight != height) {\r\n clearTimeout(this.timeoutId);\r\n\r\n this.timeoutId = setTimeout(() => {\r\n this.SVGService.UpdateViewerSize(width, height, this.ChangeDetectorRef);\r\n }, 300);\r\n }\r\n }\r\n }\n\n public RefreshSnede(): void {\n if (this.FabrikantenService?.FabrikantenViewModel?.sessionId != null) {\r\n this.SVGService.LoadFabrikantenSVGViewModel(this.FabrikantenService.FabrikantenViewModel.sessionId, this.ChangeDetectorRef);\r\n }\r\n }\n\n public RefreshSchaal(): void {\n if (this.FabrikantenService?.FabrikantenViewModel?.sessionId != null) {\r\n this.SVGService.LoadFabrikantenSVGViewModel(this.FabrikantenService.FabrikantenViewModel.sessionId, this.ChangeDetectorRef);\r\n }\r\n }\n}\n","<div class=\"loader\" *ngIf=\"SVGService.Loading\">\n <app-fab-loader></app-fab-loader>\n</div>\n\n<div class=\"main-window\">\n <div *ngIf=\"FabrikantenService.ShowVariants()\" class=\"multiplevariants\">\n {{ TranslateService.GetActiveValue(\"Common\", \"Multiple variants\") }}\n <div>\n <ul>\n <li class=\"button\" mat-stroked-button *ngFor=\"let bcbproduct of FabrikantenService.FabrikantenViewModel.selectedProduct.fabrikantenBCBProductViewModels\">\n {{ bcbproduct.name }}\n </li>\n </ul>\n </div>\n </div>\n \n <div class=\"main-window flex-col\" *ngIf=\"ShowSVG()\">\n <div #svgcontainer class=\"svg-container\">\n <object class=\"svg-object\" *ngIf=\"ShowSVG()\" type=\"image/svg+xml\" [attr.data]=\"GetSafeURL()\"></object>\n </div>\n\n <div class=\"svg-settings\">\n <mat-card>\n <mat-card-content>\n <div class=\"column\">\n <mat-form-field appearance=\"fill\">\n <mat-label class=\"select-mat-label\">{{ TranslateService.GetActiveValue(\"Common\", \"Snede\") }}</mat-label>\n <mat-select [(ngModel)]=\"SVGService.Snede\" (selectionChange)=\"RefreshSnede()\">\n <mat-option *ngFor=\"let snede of SVGService.Snedes\" [value]=\"snede\">\n {{ TranslateService.GetActiveValue(\"Common\", snede) }}\n </mat-option>\n </mat-select>\n </mat-form-field>\n <mat-form-field appearance=\"fill\">\n <mat-label class=\"select-mat-label\">{{ TranslateService.GetActiveValue(\"Common\", \"Schaal\") }}</mat-label>\n <mat-select [(ngModel)]=\"SVGService.Schaal\" (selectionChange)=\"RefreshSchaal()\">\n <mat-option [value]=\"'0'\">1:1</mat-option>\n <mat-option [value]=\"'1'\">1:2</mat-option>\n <mat-option [value]=\"'2'\">1:5</mat-option>\n <mat-option [value]=\"'3'\">1:10</mat-option>\n <mat-option [value]=\"'4'\">1:20</mat-option>\n <mat-option [value]=\"'5'\">1:50</mat-option>\n <mat-option [value]=\"'6'\">1:100</mat-option>\n <mat-option [value]=\"'7'\">1:200</mat-option>\n <mat-option [value]=\"'8'\">1:500</mat-option>\n <mat-option [value]=\"'9'\">1:1000</mat-option>\n <mat-option [value]=\"'10'\">1:2000</mat-option>\n <mat-option [value]=\"'11'\">1:5000</mat-option>\n <mat-option [value]=\"'12'\">1:10000</mat-option>\n <mat-option [value]=\"'13'\">1:20000</mat-option>\n <mat-option [value]=\"'14'\">1:50000</mat-option>\n </mat-select>\n </mat-form-field>\n <button mat-stroked-button class=\"toolbar-button rfa-button\" (click)=\"FabrikantenService.DownloadRFA()\" *ngIf=\"SVGService.HasNativeRFA()\">\n <div class=\"row\">\n <div class=\"row-icon\">\n <mat-icon class=\"icon\">file_download</mat-icon>\n </div>\n <div class=\"row-title\">\n <span *ngIf=\"FabrikantenService.DownloadRFALoading\">...</span>\n <span *ngIf=\"!FabrikantenService.DownloadRFALoading\">{{ TranslateService.GetActiveValue(\"Common\", \"Revit\") }}</span>\n </div>\n </div>\n </button>\n <button mat-stroked-button class=\"toolbar-button arkey-adomi-button\" (click)=\"FabrikantenService.DownloadARKEYAdomi()\">\n <div class=\"row\">\n <div class=\"row-icon\">\n <mat-icon class=\"icon\">file_download</mat-icon>\n </div>\n <div class=\"row-title\">\n <span *ngIf=\"FabrikantenService.DownloadARKEYAdomiLoading\">...</span>\n <span *ngIf=\"!FabrikantenService.DownloadARKEYAdomiLoading\">{{ TranslateService.GetActiveValue(\"Common\", \"ARKEY Adomi\") }}</span>\n </div>\n </div>\n </button>\n <button mat-stroked-button class=\"toolbar-button ifc-button\" (click)=\"FabrikantenService.DownloadIFC()\">\n <div class=\"row\">\n <div class=\"row-icon\">\n <mat-icon class=\"icon\">file_download</mat-icon>\n </div>\n <div class=\"row-title\">\n <span *ngIf=\"FabrikantenService.DownloadIFCLoading\">...</span>\n <span *ngIf=\"!FabrikantenService.DownloadIFCLoading\">{{ TranslateService.GetActiveValue(\"Common\", \"IFC\") }}</span>\n </div>\n </div>\n </button>\n <button mat-stroked-button class=\"toolbar-button autocad-2d-button\" (click)=\"FabrikantenService.Download2DAutoCADDwg()\">\n <div class=\"row\">\n <div class=\"row-icon\">\n <mat-icon class=\"icon\">file_download</mat-icon>\n </div>\n <div class=\"row-title\">\n <span *ngIf=\"FabrikantenService.Download2DAutoCADDwgLoading\">...</span>\n <span *ngIf=\"!FabrikantenService.Download2DAutoCADDwgLoading\">{{ TranslateService.GetActiveValue(\"Common\", \"2D AutoCAD Dwg\") }}</span>\n </div>\n </div>\n </button>\n <button mat-stroked-button class=\"toolbar-button dxf-2d-button\" (click)=\"FabrikantenService.Download2DDxf()\">\n <div class=\"row\">\n <div class=\"row-icon\">\n <mat-icon class=\"icon\">file_download</mat-icon>\n </div>\n <div class=\"row-title\">\n <span *ngIf=\"FabrikantenService.Download2DDxfLoading\">...</span>\n <span *ngIf=\"!FabrikantenService.Download2DDxfLoading\">{{ TranslateService.GetActiveValue(\"Common\", \"2D Dxf\") }}</span>\n </div>\n </div>\n </button>\n <button mat-stroked-button class=\"toolbar-button\" (click)=\"OpenBCBLink()\">\n <div class=\"row\">\n <div class=\"row-icon\">\n <mat-icon class=\"icon\">open_in_new</mat-icon>\n </div>\n <div class=\"row-title\">\n {{ TranslateService.GetActiveValue(\"Common\", \"BCB\") }}\n </div>\n </div>\n </button>\n </div>\n </mat-card-content>\n </mat-card>\n </div>\n </div>\n</div>\n","import { AfterViewInit, ChangeDetectorRef, Component, ElementRef, OnInit, ViewChild, ViewEncapsulation } from '@angular/core';\r\nimport { MatTabChangeEvent } from '@angular/material/tabs';\r\nimport { ActivatedRoute } from '@angular/router';\r\nimport { BestekService } from '../../services/bestek.service';\r\nimport { FabrikantenService } from '../../services/fabrikanten.service';\r\nimport { MobileService } from '../../services/mobile.service';\r\nimport { SVGService } from '../../services/svg.service';\r\nimport { TranslateService } from '../../services/translate.service';\r\nimport { WebGLService } from '../../services/webgl.service';\r\n\r\n@Component({\r\n selector: 'app-fab-product',\r\n templateUrl: './fab-product.component.html',\r\n styleUrls: ['./fab-product.component.scss'],\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class FabProductComponent implements OnInit, AfterViewInit {\r\n\r\n public Height: string = \"100%\";\r\n\r\n @ViewChild('header') header: ElementRef;\r\n\r\n constructor(\r\n public MobileService: MobileService,\r\n public FabrikantenService: FabrikantenService,\r\n public BestekService: BestekService,\r\n public TranslateService: TranslateService,\r\n public WebGLService: WebGLService,\r\n private ActivatedRoute: ActivatedRoute,\r\n private ChangeDetectorRef: ChangeDetectorRef\r\n ) {\r\n this.TranslateService.ProcessParameters(this.ActivatedRoute);\r\n }\r\n\r\n ngOnInit(): void {\r\n this.FabrikantenService.LoadFabrikantenViewModel(this.ChangeDetectorRef);\r\n this.TranslateService.LoadTranslations(this.ChangeDetectorRef);\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n this.Height = this.GetHeight();\r\n this.ChangeDetectorRef.detectChanges();\r\n }\r\n\r\n public Back(): void {\r\n this.FabrikantenService.RemoveProductSelection(this.ChangeDetectorRef);\r\n }\r\n\r\n public SelectedTabChange(event: MatTabChangeEvent): void {\r\n this.FabrikantenService.TabSelectionChanged(event.tab.textLabel, this.ChangeDetectorRef);\r\n }\r\n\r\n public Show3D(): boolean {\r\n if (this.FabrikantenService.FabrikantenViewModel?.selectedProduct?.fabrikantenBCBProductViewModels != null) {\r\n for (var i = 0; i < this.FabrikantenService.FabrikantenViewModel.selectedProduct.fabrikantenBCBProductViewModels.length; i++) {\r\n if (this.FabrikantenService.FabrikantenViewModel.selectedProduct.fabrikantenBCBProductViewModels[i].has3D) {\r\n return true;\r\n }\r\n }\r\n }\r\n\r\n return false;\r\n }\r\n\r\n public Show2D(): boolean {\r\n if (this.FabrikantenService.FabrikantenViewModel?.selectedProduct?.fabrikantenBCBProductViewModels != null) {\r\n for (var i = 0; i < this.FabrikantenService.FabrikantenViewModel.selectedProduct.fabrikantenBCBProductViewModels.length; i++) {\r\n if (this.FabrikantenService.FabrikantenViewModel.selectedProduct.fabrikantenBCBProductViewModels[i].snedes != '') {\r\n return true;\r\n }\r\n }\r\n }\r\n\r\n return false;\r\n }\r\n\r\n private GetHeight(): string {\r\n var height = 0;\r\n\r\n if (this.header != undefined) {\r\n height += this.header.nativeElement.offsetHeight;\r\n }\r\n\r\n return \"calc(100% - \" + height + \"px)\";\r\n }\r\n}\r\n","<div *ngIf=\"FabrikantenService.Loading\" class=\"loader\">\r\n <mat-card class=\"loader-card\">\r\n <mat-card-content>\r\n <mat-spinner class=\"loader-spinner\" [diameter]=\"80\"></mat-spinner>\r\n </mat-card-content>\r\n <mat-card-subtitle class=\"loader-subtitle\">\r\n {{ TranslateService.GetActiveValue(\"Common\", \"Products loading\") }}\r\n </mat-card-subtitle>\r\n </mat-card>\r\n</div>\r\n\r\n<mat-drawer-container class=\"view-container\" *ngIf=\"FabrikantenService.FabrikantenViewModel != null\">\r\n <mat-drawer #drawer [mode]=\"MobileService.NavMode\" [(opened)]=\"MobileService.NavOpened\">\r\n <div class=\"filter-view\">\r\n <fab-filters-input></fab-filters-input>\r\n </div>\r\n </mat-drawer>\r\n <mat-drawer-content class=\"view-content\">\r\n <div #header>\r\n <app-fab-header [showfiltermenubutton]=\"true\"></app-fab-header>\r\n </div>\r\n\r\n <div [style.height]=\"Height\">\r\n <mat-tab-group class=\"view-container\" (selectedTabChange)=\"SelectedTabChange($event)\">\r\n <mat-tab label=\"Informatie\">\r\n <ng-template mat-tab-label>\r\n <span>{{ TranslateService.GetActiveValue(\"Common\", \"Information\") }}</span>\r\n </ng-template>\r\n <app-fab-product-info></app-fab-product-info>\r\n </mat-tab>\r\n <mat-tab label=\"3D\" *ngIf=\"Show3D()\">\r\n <ng-template mat-tab-label>\r\n <span>{{ TranslateService.GetActiveValue(\"Common\", \"3D\") }}</span>\r\n </ng-template>\r\n <app-fab-webgl-viewer></app-fab-webgl-viewer>\r\n </mat-tab>\r\n <mat-tab label=\"2D\" *ngIf=\"Show2D()\" style=\"height: 100%;\">\r\n <ng-template mat-tab-label>\r\n <span>{{ TranslateService.GetActiveValue(\"Common\", \"2D\") }}</span>\r\n </ng-template>\r\n <app-fab-svg-viewer></app-fab-svg-viewer>\r\n </mat-tab>\r\n <mat-tab label=\"Bestek\" *ngIf=\"TranslateService.ShowSpecification()\">\r\n <ng-template mat-tab-label>\r\n <span>{{ TranslateService.GetActiveValue(\"Common\", \"Specification\") }}</span>\r\n </ng-template>\r\n <app-fab-product-bestek></app-fab-product-bestek>\r\n </mat-tab>\r\n </mat-tab-group>\r\n </div>\r\n </mat-drawer-content>\r\n</mat-drawer-container>\r\n\r\n\r\n","import { ChangeDetectorRef, Component, Input, OnInit } from '@angular/core';\r\nimport { DomSanitizer } from '@angular/platform-browser';\r\nimport { FabrikantenService } from '../../services/fabrikanten.service';\r\nimport { TranslateService } from '../../services/translate.service';\r\nimport { PhotoService } from '../../services/photo.service';\r\nimport { FabrikantenProductViewModel } from '../../swagger/SwaggerClient';\r\n\r\n@Component({\r\n selector: 'app-fab-product-tile',\r\n templateUrl: './fab-product-tile.component.html',\r\n styleUrls: ['./fab-product-tile.component.scss']\r\n})\r\nexport class FabProductTileComponent implements OnInit {\r\n\r\n @Input() product: FabrikantenProductViewModel;\r\n\r\n constructor(\r\n public FabrikantenService: FabrikantenService,\r\n public TranslateService: TranslateService,\r\n private PhotoService: PhotoService,\r\n private sanitization: DomSanitizer,\r\n private ChangeDetectorRef: ChangeDetectorRef) { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n public Select(): void {\r\n this.FabrikantenService.SelectProduct(this.product, this.ChangeDetectorRef);\r\n }\r\n\r\n public GetPhoto(): string {\r\n var array = this.PhotoService.GetPhotoArrayProduct(this.product);\r\n\r\n if (array.length > 0) {\r\n return this.FabrikantenService.FabrikantenViewModel?.bcbWebserviceURLBase + (array[0].url as string);\r\n }\r\n\r\n return \"\";\r\n }\r\n\r\n public getSafeUrl() {\r\n return this.sanitization.bypassSecurityTrustStyle('url(\\'' + this.GetPhoto() + '\\')');\r\n }\r\n\r\n}\r\n","<mat-card class=\"tile\" (click)=\"Select()\" [style.backgroundImage]=\"getSafeUrl()\">\r\n <mat-card-title class=\"title\">\r\n {{ TranslateService.GetActiveValueProduct(product.id) }}\r\n </mat-card-title>\r\n</mat-card>\r\n\r\n\r\n","import { AfterViewInit, ChangeDetectorRef, Component, DoCheck, ElementRef, OnInit, ViewChild } from '@angular/core';\r\nimport { ActivatedRoute } from '@angular/router';\r\nimport { BestekService } from '../../services/bestek.service';\r\nimport { FabrikantenService } from '../../services/fabrikanten.service';\r\nimport { MobileService } from '../../services/mobile.service';\r\nimport { TranslateService } from '../../services/translate.service';\r\n\r\n@Component({\r\n selector: 'app-fab-product-select',\r\n templateUrl: './fab-product-select.component.html',\r\n styleUrls: ['./fab-product-select.component.scss']\r\n})\r\nexport class FabProductSelectComponent implements OnInit, AfterViewInit, DoCheck {\r\n\r\n @ViewChild('header') header: ElementRef;\r\n @ViewChild('info') info: ElementRef;\r\n\r\n public Height: string = \"100%\";\r\n\r\n constructor(\r\n public MobileService: MobileService,\r\n public FabrikantenService: FabrikantenService,\r\n public BestekService: BestekService,\r\n public TranslateService: TranslateService,\r\n private ActivatedRoute: ActivatedRoute,\r\n private ChangeDetectorRef: ChangeDetectorRef\r\n ) {\r\n this.TranslateService.ProcessParameters(this.ActivatedRoute);\r\n\r\n this.FabrikantenService.RemoveProductSelection(this.ChangeDetectorRef);\r\n }\r\n\r\n ngOnInit(): void {\r\n this.FabrikantenService.LoadFabrikantenViewModel(this.ChangeDetectorRef);\r\n this.TranslateService.LoadTranslations(this.ChangeDetectorRef);\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n this.Height = this.GetHeight();\r\n this.ChangeDetectorRef.detectChanges();\r\n }\r\n\r\n ngDoCheck(): void {\r\n if (this.Height != this.GetHeight()) {\r\n this.Height = this.GetHeight();\r\n this.ChangeDetectorRef.detectChanges();\r\n }\r\n }\r\n\r\n public GetHeight(): string {\r\n var height = 0;\r\n\r\n if (this.header != undefined) {\r\n height += this.header.nativeElement.offsetHeight;\r\n }\r\n\r\n if (this.info != undefined) {\r\n height += this.info.nativeElement.offsetHeight;\r\n }\r\n\r\n return \"calc(100% - \" + height + \"px)\";\r\n }\r\n}\r\n","<div *ngIf=\"FabrikantenService.Loading\" class=\"loader\">\r\n <mat-card class=\"loader-card\">\r\n <mat-card-content>\r\n <mat-spinner class=\"loader-spinner\" [diameter]=\"80\"></mat-spinner>\r\n </mat-card-content>\r\n <mat-card-subtitle class=\"loader-subtitle\">\r\n {{ TranslateService.GetActiveValue(\"Common\", \"Products loading\") }}\r\n </mat-card-subtitle>\r\n </mat-card>\r\n</div>\r\n\r\n<mat-drawer-container class=\"view-container\" *ngIf=\"FabrikantenService.FabrikantenViewModel != null\">\r\n <mat-drawer #drawer [mode]=\"MobileService.NavMode\" [(opened)]=\"MobileService.NavOpened\">\r\n <div class=\"filter-view\">\r\n <fab-filters-input></fab-filters-input>\r\n </div>\r\n </mat-drawer>\r\n <mat-drawer-content class=\"view-content\">\r\n <div #header>\r\n <app-fab-header [showfiltermenubutton]=\"true\"></app-fab-header>\r\n </div>\r\n\r\n <div #info class=\"header\">\r\n <div class=\"title\">\r\n <h1>{{ TranslateService.GetActiveValue(\"Common\", \"Product selection\") }}</h1>\r\n </div>\r\n <div class=\"subtitle\" *ngIf=\"!FabrikantenService.FabrikantenViewModel.productSelectBlockedByFilters\">\r\n {{ TranslateService.GetActiveValue(\"Common\", \"Product selection info\") }}\r\n </div>\r\n <div class=\"subtitle\" *ngIf=\"FabrikantenService.FabrikantenViewModel.productSelectBlockedByFilters\">\r\n {{ TranslateService.GetActiveValue(\"Common\", \"Product selection blocked\") }}\r\n </div>\r\n </div>\r\n\r\n <div [style.height]=\"Height\" *ngIf=\"!FabrikantenService.FabrikantenViewModel.productSelectBlockedByFilters\">\r\n <div class=\"main-window\">\r\n <app-fab-product-tile *ngFor=\"let product of FabrikantenService.FabrikantenViewModel.products\" [product]=\"product\"></app-fab-product-tile>\r\n </div>\r\n </div>\r\n </mat-drawer-content>\r\n</mat-drawer-container>\r\n\r\n\r\n","import { Component, OnInit } from '@angular/core';\nimport { FabrikantenService } from '../../services/fabrikanten.service';\r\n\n@Component({\n selector: 'fab-filters-overview',\n templateUrl: './fab-filters-overview.component.html',\n styleUrls: ['./fab-filters-overview.component.scss']\n})\nexport class FabFiltersOverviewComponent implements OnInit {\n\n constructor(public FabrikantenService: FabrikantenService) { }\n\n ngOnInit(): void {\n }\n\n public ShowProductSelect(): boolean {\n if (this.FabrikantenService.FabrikantenViewModel?.selectedProduct != undefined) {\n return false;\n }\n\n return true;\n }\n\n public ShowProduct(): boolean {\n if (this.FabrikantenService.FabrikantenViewModel?.selectedProduct != undefined) {\n return true;\n }\n\n return false;\n }\n\n}\n","<div>\r\n <app-fab-product-select *ngIf=\"ShowProductSelect()\"></app-fab-product-select>\r\n <app-fab-product *ngIf=\"ShowProduct()\"></app-fab-product>\r\n</div>\r\n","import { ChangeDetectorRef, Component, HostListener, OnInit, ViewEncapsulation } from '@angular/core';\r\nimport { ActivatedRoute } from '@angular/router';\r\nimport { BestekService } from '../../services/bestek.service';\r\n\r\nimport { FabrikantenService } from '../../services/fabrikanten.service';\r\nimport { MobileService } from '../../services/mobile.service';\r\nimport { TranslateService } from '../../services/translate.service';\r\n\r\n@Component({\r\n selector: 'fab-filters',\r\n templateUrl: './fab-filters.component.html',\r\n styleUrls: ['./fab-filters.component.scss']\r\n})\r\n\r\nexport class FabFiltersComponent {\r\n\r\n constructor(\r\n public MobileService: MobileService,\r\n public FabrikantenService: FabrikantenService,\r\n public BestekService: BestekService,\r\n public TranslateService: TranslateService,\r\n private ActivatedRoute: ActivatedRoute,\r\n private ChangeDetectorRef: ChangeDetectorRef) {\r\n this.TranslateService.ProcessParameters(this.ActivatedRoute);\r\n }\r\n\r\n ngOnInit() {\r\n this.MobileService.UpdateScreenSize(window.innerWidth, window.innerHeight, this.ChangeDetectorRef);\r\n this.FabrikantenService.LoadFabrikantenViewModel(this.ChangeDetectorRef);\r\n this.TranslateService.LoadTranslations(this.ChangeDetectorRef);\r\n }\r\n\r\n @HostListener('window:resize', ['$event'])\r\n onResize(event: any) {\r\n this.MobileService.UpdateScreenSize(window.innerWidth, window.innerHeight, this.ChangeDetectorRef);\r\n }\r\n\r\n public IsLoading(): boolean {\r\n return this.FabrikantenService.Loading || this.TranslateService.Loading;\r\n }\r\n}\r\n","<div *ngIf=\"FabrikantenService.Loading\" class=\"loader\">\r\n <mat-card class=\"loader-card\">\r\n <mat-card-content>\r\n <mat-spinner class=\"loader-spinner\" [diameter]=\"80\"></mat-spinner>\r\n </mat-card-content>\r\n <mat-card-subtitle class=\"loader-subtitle\">\r\n {{ TranslateService.GetActiveValue(\"Common\", \"Products loading\") }}\r\n </mat-card-subtitle>\r\n </mat-card>\r\n</div>\r\n\r\n<mat-drawer-container class=\"view-container\" *ngIf=\"FabrikantenService.FabrikantenViewModel != null\">\r\n <mat-drawer #drawer [mode]=\"MobileService.NavMode\" [(opened)]=\"MobileService.NavOpened\">\r\n <div class=\"filter-view\">\r\n <fab-filters-input></fab-filters-input>\r\n </div>\r\n </mat-drawer>\r\n <mat-drawer-content class=\"view-content\">\r\n <div class=\"product-view\">\r\n <fab-filters-overview></fab-filters-overview>\r\n </div>\r\n </mat-drawer-content>\r\n</mat-drawer-container>\r\n","import { ChangeDetectorRef, Injectable } from '@angular/core';\r\n\r\nimport { ProjectSettingApiClient, ProjectSettingsViewModel, ProjectSettingPipelineStepViewModel, ProjectSettingViewModel, SetProjectSettingRequestModel, SetProjectSettingResponseModel } from '../swagger/SwaggerClient';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class ProjectSettingService {\r\n\r\n private Init: boolean = false;\r\n\r\n public Loading: boolean = true;\r\n public ProjectSettingsViewModel: ProjectSettingsViewModel;\r\n\r\n public ChangeDetectorRef: ChangeDetectorRef | null = null;\r\n \r\n constructor(private projectSettingApiClient: ProjectSettingApiClient) {\r\n //this.LoadProjectSettings();\r\n }\r\n \r\n public Save(projectsetting: ProjectSettingViewModel) {\r\n this.Loading = true;\r\n var request = new SetProjectSettingRequestModel();\r\n\r\n request.name = projectsetting.name;\r\n request.value = projectsetting.defaultValue;\r\n request.pipelineStep = \"Default\";\r\n\r\n this.projectSettingApiClient.setProjectSettingModel(request).subscribe((model: SetProjectSettingResponseModel) => {\r\n //this.LoadProjectSettings();\r\n });\r\n }\r\n\r\n public SavePipelineStep(projectsetting: ProjectSettingViewModel, projectsettingpipe: ProjectSettingPipelineStepViewModel) {\r\n this.Loading = true;\r\n var request = new SetProjectSettingRequestModel();\r\n\r\n request.name = projectsetting.name;\r\n request.value = projectsettingpipe.value;\r\n request.pipelineStep = projectsettingpipe.pipelineStep;\r\n\r\n this.projectSettingApiClient.setProjectSettingModel(request).subscribe((model: SetProjectSettingResponseModel) => {\r\n //this.LoadProjectSettings();\r\n });\r\n }\r\n\r\n public Reset(projectsetting: ProjectSettingViewModel) {\r\n this.Loading = true;\r\n var request = new SetProjectSettingRequestModel();\r\n\r\n request.name = projectsetting.name;\r\n request.value = \"\";\r\n request.pipelineStep = \"Default\";\r\n\r\n this.projectSettingApiClient.setProjectSettingModel(request).subscribe((model: SetProjectSettingResponseModel) => {\r\n //this.LoadProjectSettings();\r\n });\r\n }\r\n\r\n public ResetPipelineStep(projectsetting: ProjectSettingViewModel, projectsettingpipe: ProjectSettingPipelineStepViewModel) {\r\n this.Loading = true;\r\n var request = new SetProjectSettingRequestModel();\r\n\r\n request.name = projectsetting.name;\r\n request.value = \"\";\r\n request.pipelineStep = projectsettingpipe.pipelineStep;\r\n\r\n this.projectSettingApiClient.setProjectSettingModel(request).subscribe((model: SetProjectSettingResponseModel) => {\r\n //this.LoadProjectSettings();\r\n });\r\n }\r\n\r\n public LoadProjectSettings(ChangeDetectorRef: ChangeDetectorRef): void {\r\n if (!this.Init) {\r\n this.Init = true;\r\n this.Loading = true;\r\n ChangeDetectorRef.detectChanges();\r\n\r\n this.projectSettingApiClient.getProjectSettingsViewModel().subscribe((model: ProjectSettingsViewModel) => {\r\n this.ProjectSettingsViewModel = model;\r\n this.Loading = false;\r\n ChangeDetectorRef.detectChanges();\r\n });\r\n }\r\n }\r\n\r\n private DetectChanges(): void {\r\n if (this.ChangeDetectorRef != null) {\r\n this.ChangeDetectorRef.detectChanges();\r\n }\r\n }\r\n}\r\n","import { ChangeDetectorRef, Injectable } from '@angular/core';\r\n\r\nimport { BCBImportEigenschap, BCBImportOpenRequest, BCBImportOpenResponse, BCBImportSetsViewModel, BCBImportSetViewModel, ChangeImportSetRequest, ImportApiClient } from '../swagger/SwaggerClient';\r\nimport { ProductsService } from './products.service';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class ImportSetsService {\r\n public LoadingImportSets: boolean = true;\r\n public LoadingOpen: boolean = false;\r\n\r\n public BCBImportSetsViewModel: BCBImportSetsViewModel;\r\n public BCBImportOpenResponse: BCBImportOpenResponse;\r\n\r\n public BCBImportSetSelected: number;\r\n\r\n public ProductsService: ProductsService | null = null;\r\n\r\n constructor(private ImportApiClient: ImportApiClient) {\r\n }\r\n\r\n public ChangeImportSetValue(value: string, enabled: boolean, ChangeDetectorRef: ChangeDetectorRef): void {\r\n this.LoadingImportSets = true;\r\n ChangeDetectorRef.detectChanges();\r\n\r\n var model = new ChangeImportSetRequest();\r\n\r\n model.importSetId = this.BCBImportSetSelected;\r\n model.value = value;\r\n model.enabled = enabled;\r\n\r\n this.ImportApiClient.changeImportSet(model).subscribe(() => {\r\n this.LoadImportSets(ChangeDetectorRef);\r\n }, (error: Response) => {\r\n if (error.status == 400)\r\n console.log(error.json());\r\n else {\r\n console.log('An unexpected error occured');\r\n console.log(error);\r\n }\r\n\r\n this.LoadingImportSets = false;\r\n ChangeDetectorRef.detectChanges();\r\n });\r\n }\r\n\r\n public Open(id: number, ChangeDetectorRef: ChangeDetectorRef): void {\r\n this.LoadingOpen = true;\r\n ChangeDetectorRef.detectChanges();\r\n\r\n var request = new BCBImportOpenRequest();\r\n\r\n request.bcbeboId = id;\r\n\r\n this.ImportApiClient.openBCBProduct(request).subscribe((model: BCBImportOpenResponse) => {\r\n this.BCBImportOpenResponse = model;\r\n this.RefreshBCBImportOpenResponse();\r\n this.LoadingOpen = false;\r\n ChangeDetectorRef.detectChanges();\r\n });\r\n }\r\n\r\n public GetActiveImportSet(): BCBImportSetViewModel {\r\n var array = this.BCBImportSetsViewModel?.bcbImportSetViewModels;\r\n if (array != null) {\r\n for (var i = 0; i < array.length; i++) {\r\n if (array[i].id == this.BCBImportSetSelected) {\r\n return array[i];\r\n }\r\n }\r\n }\r\n\r\n return new BCBImportSetViewModel();\r\n }\r\n\r\n public LoadImportSets(ChangeDetectorRef: ChangeDetectorRef): void {\r\n this.LoadingImportSets = true;\r\n ChangeDetectorRef.detectChanges();\r\n\r\n this.ImportApiClient.getBCBImportSetsViewModel().subscribe((model: BCBImportSetsViewModel) => {\r\n this.BCBImportSetsViewModel = model;\r\n\r\n if (this.BCBImportSetSelected == null) {\r\n if (this.BCBImportSetsViewModel?.bcbImportSetViewModels != null) {\r\n this.BCBImportSetSelected = this.BCBImportSetsViewModel.bcbImportSetViewModels[0].id;\r\n }\r\n }\r\n this.RefreshBCBImportOpenResponse();\r\n this.LoadingImportSets = false;\r\n ChangeDetectorRef.detectChanges();\r\n\r\n if (this.ProductsService != null) {\r\n this.ProductsService.Reload(ChangeDetectorRef);\r\n }\r\n }, (error: Response) => {\r\n if (error.status == 400)\r\n console.log(error.json());\r\n else {\r\n console.log('An unexpected error occured');\r\n console.log(error);\r\n }\r\n\r\n this.LoadingImportSets = false;\r\n ChangeDetectorRef.detectChanges();\r\n });\r\n }\r\n\r\n private RefreshBCBImportOpenResponse(): void {\r\n var arrayeigenschappen = this.BCBImportOpenResponse?.bcbImportEigenschappen;\r\n if (arrayeigenschappen != null) {\r\n for (var i = 0; i < arrayeigenschappen.length; i++) {\r\n arrayeigenschappen[i].selected = this.IsValueInSelectedImportSet(arrayeigenschappen[i].name + \"\");\r\n }\r\n }\r\n\r\n var arrayopbouw = this.BCBImportOpenResponse?.bcbImportOpbouwen;\r\n if (arrayopbouw != null) {\r\n for (var i = 0; i < arrayopbouw.length; i++) {\r\n arrayopbouw[i].selected = this.IsValueInSelectedImportSet(arrayopbouw[i].name + \"\");\r\n }\r\n }\r\n }\r\n\r\n private IsValueInSelectedImportSet(value: string): boolean {\r\n var importset = this.GetActiveImportSet()?.bcbImportSetValueViewModels;\r\n\r\n if (importset != null) {\r\n for (var i = 0; i < importset.length; i++) {\r\n if ((importset[i].value + \"\").toLowerCase() == value.toLowerCase()) {\r\n return true;\r\n }\r\n }\r\n }\r\n\r\n return false;\r\n }\r\n}\r\n","import { ChangeDetectorRef, Injectable } from '@angular/core';\r\nimport { ImportSetsService } from './importsets.service';\r\nimport { CleanUpResponseModel, ProductsApiClient, ProductsViewModel, ResetImportRequestModel, BCBProductViewModel, SaveProductViewModel, BCBImportSetsViewModel, ImportApiClient, ProductViewModel, GetProductRequest, ProductsViewModelRequest, BCBEBOViewModel, BCBEigenschapViewModel, BCBOpbouwViewModel } from '../swagger/SwaggerClient';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class ProductsService {\r\n\r\n public LoadingProducts: boolean = false;\r\n\r\n public ProductsViewModel: ProductsViewModel;\r\n\r\n public BCBProductViewModel?: BCBProductViewModel = undefined;\r\n public ProductViewModel?: ProductViewModel = undefined;\r\n\r\n public ProductSelected: number;\r\n public BCBProductSelected: number;\r\n\r\n constructor(private ProductsApiClient: ProductsApiClient, private ImportSetsService: ImportSetsService) {\r\n this.ImportSetsService.ProductsService = this;\r\n }\r\n\r\n public Loading(): boolean {\r\n return this.LoadingProducts;\r\n }\r\n\r\n public GetBCBProductsSelected(): Array<BCBProductViewModel> {\r\n var arraytemp = this.ProductsViewModel?.productViewModels;\r\n\r\n if (this.ProductSelected != null && arraytemp != null) {\r\n for (var i = 0; i < arraytemp.length; i++) {\r\n if (arraytemp[i].id == this.ProductSelected) {\r\n var arraytemp2 = arraytemp[i].bcbProductViewModels;\r\n if (arraytemp2 != null) {\r\n return arraytemp2;\r\n }\r\n }\r\n }\r\n }\r\n\r\n return new Array<BCBProductViewModel>();\r\n }\r\n\r\n public Reload(changeDetectorRef: ChangeDetectorRef): void {\r\n this.LoadProducts(changeDetectorRef);\r\n }\r\n\r\n public SaveProductViewModel(product: ProductViewModel, changeDetectorRef: ChangeDetectorRef) {\r\n var model = new SaveProductViewModel();\r\n model.id = product.id;\r\n model.name = product.name;\r\n model.position = product.position;\r\n model.importSetId = parseInt(product.importSetId.toString());\r\n\r\n this.LoadingProducts = true;\r\n changeDetectorRef.detectChanges();\r\n\r\n this.ProductsApiClient.saveProduct(model).subscribe(() => {\r\n this.LoadProducts(changeDetectorRef);\r\n }, (error: Response) => {\r\n if (error.status == 400)\r\n console.log(error.json());\r\n else {\r\n console.log('An unexpected error occured');\r\n console.log(error);\r\n }\r\n\r\n this.LoadingProducts = false;\r\n changeDetectorRef.detectChanges();\r\n });\r\n }\r\n\r\n public ResetImport(productid: number, bcbproductid: number, changeDetectorRef: ChangeDetectorRef) {\r\n var model = new ResetImportRequestModel();\r\n model.productId = productid;\r\n model.bcbProductId = bcbproductid;\r\n\r\n if (productid == -1 && bcbproductid == -1) {\r\n model.bcbImportSetId = this.ImportSetsService.BCBImportSetSelected;\r\n }\r\n\r\n this.LoadingProducts = true;\r\n changeDetectorRef.detectChanges();\r\n\r\n this.ProductsApiClient.resetImport(model).subscribe(() => {\r\n this.LoadProducts(changeDetectorRef);\r\n }, (error: Response) => {\r\n if (error.status == 400)\r\n console.log(error.json());\r\n else {\r\n console.log('An unexpected error occured');\r\n console.log(error);\r\n }\r\n\r\n this.LoadingProducts = false;\r\n changeDetectorRef.detectChanges();\r\n });\r\n }\r\n\r\n public CleanUp() {\r\n this.LoadingProducts = true;\r\n\r\n this.ProductsApiClient.cleanUp().subscribe((model: CleanUpResponseModel) => {\r\n alert(\"BCBEBO: \" + model.deleteBCBEBOs + \" BCBEigenschap: \" + model.deleteBCBEigenschappen + \" BCBOpbouw: \" + model.deleteBCBOpbouwen);\r\n this.LoadingProducts = false;\r\n }, (error: Response) => {\r\n if (error.status == 400)\r\n console.log(error.json());\r\n else {\r\n console.log('An unexpected error occured');\r\n console.log(error);\r\n }\r\n\r\n this.LoadingProducts = false;\r\n });\r\n }\r\n\r\n private LoadProducts(changeDetectorRef: ChangeDetectorRef): void {\r\n if (this.ImportSetsService.BCBImportSetSelected != undefined) {\r\n this.LoadingProducts = true;\r\n\r\n var request = new ProductsViewModelRequest();\r\n\r\n request.importSetId = this.ImportSetsService.BCBImportSetSelected;\r\n\r\n changeDetectorRef.detectChanges();\r\n\r\n this.ProductsApiClient.getProductsViewModel(request).subscribe((model: ProductsViewModel) => {\r\n this.ProductsViewModel = model;\r\n changeDetectorRef.detectChanges();\r\n\r\n var array = this.ProductsViewModel.productViewModels;\r\n\r\n if (array != null) {\r\n if (array.length > 0) {\r\n this.ProductSelected = array[0].id;\r\n\r\n var array2 = array[0].bcbProductViewModels;\r\n\r\n if (array2 != null && array2.length > 0) {\r\n this.BCBProductSelected = array2[0].id;\r\n }\r\n }\r\n\r\n if (this.BCBProductViewModel != undefined || this.ProductViewModel != undefined) {\r\n for (var i = 0; i < array.length; i++) {\r\n var arrayinner = array[i].bcbProductViewModels;\r\n\r\n if (this.ProductViewModel != undefined) {\r\n if (array[i].id == this.ProductViewModel.id) {\r\n this.ProductViewModel = array[i];\r\n }\r\n }\r\n\r\n if (this.BCBProductViewModel != undefined) {\r\n if (arrayinner != null) {\r\n for (var j = 0; j < arrayinner.length; j++) {\r\n if (arrayinner[j].id == this.BCBProductViewModel.id) {\r\n this.BCBProductViewModel = arrayinner[j];\r\n }\r\n }\r\n }\r\n }\r\n }\r\n }\r\n }\r\n\r\n this.LoadingProducts = false;\r\n changeDetectorRef.detectChanges();\r\n }, (error: Response) => {\r\n if (error.status == 400)\r\n console.log(error.json());\r\n else {\r\n console.log('An unexpected error occured');\r\n console.log(error);\r\n }\r\n\r\n this.LoadingProducts = false;\r\n changeDetectorRef.detectChanges();\r\n });\r\n }\r\n }\r\n\r\n public LoadProduct(changeDetectorRef: ChangeDetectorRef): void {\r\n if (this.ProductViewModel != null) {\r\n this.LoadingProducts = true;\r\n changeDetectorRef.detectChanges();\r\n\r\n var request = new GetProductRequest();\r\n request.id = this.ProductViewModel.id;\r\n\r\n this.ProductsApiClient.getProductViewModel(request).subscribe((model: ProductViewModel) => {\r\n this.ProductViewModel = model;\r\n\r\n if (this.BCBProductViewModel != undefined || this.ProductViewModel != undefined) {\r\n var old = this.BCBProductViewModel;\r\n\r\n var arrayinner = this.ProductViewModel.bcbProductViewModels;\r\n\r\n if (this.BCBProductViewModel != undefined) {\r\n if (arrayinner != null) {\r\n for (var j = 0; j < arrayinner.length; j++) {\r\n if (arrayinner[j].id == this.BCBProductViewModel.id) {\r\n this.BCBProductViewModel = arrayinner[j];\r\n }\r\n }\r\n }\r\n }\r\n\r\n if (this.BCBProductViewModel != null && old != null) {\r\n this.MergeBCBProductViewModel(this.BCBProductViewModel, old);\r\n }\r\n }\r\n\r\n this.LoadingProducts = false;\r\n changeDetectorRef.detectChanges();\r\n }, (error: Response) => {\r\n if (error.status == 400)\r\n console.log(error.json());\r\n else {\r\n console.log('An unexpected error occured');\r\n console.log(error);\r\n }\r\n\r\n this.LoadingProducts = false;\r\n changeDetectorRef.detectChanges();\r\n });\r\n }\r\n }\r\n\r\n private MergeBCBProductViewModel(newproduct: BCBProductViewModel, oldproduct: BCBProductViewModel) {\r\n //this.MergeBCBProductViewModelEigenschap(newproduct?.bcbProductEigenschapViewModels, oldproduct?.bcbProductEigenschapViewModels);\r\n //this.MergeBCBProductViewModelOpbouw(newproduct?.bcbProductOpbouwViewModels, oldproduct?.bcbProductOpbouwViewModels);\r\n if (newproduct?.bcbeboViewModel != null && oldproduct?.bcbeboViewModel != null) {\r\n newproduct.bcbeboViewModel.open = oldproduct.bcbeboViewModel.open;\r\n\r\n this.MergeBCBEBO(newproduct.bcbeboViewModel, oldproduct.bcbeboViewModel);\r\n }\r\n }\r\n\r\n private MergeBCBEBO(newproduct: BCBEBOViewModel, oldproduct: BCBEBOViewModel) {\r\n this.MergeBCBProductViewModelEigenschap(newproduct?.bcbEigenschapViewModels, oldproduct?.bcbEigenschapViewModels);\r\n this.MergeBCBProductViewModelOpbouw(newproduct?.bcbOpbouwViewModels, oldproduct?.bcbOpbouwViewModels);\r\n }\r\n\r\n private MergeBCBProductViewModelEigenschap(newproduct: BCBEigenschapViewModel[] | undefined, oldproduct: BCBEigenschapViewModel[] | undefined) {\r\n if (newproduct != null && oldproduct != null) {\r\n for (var j = 0; j < newproduct.length; j++) {\r\n for (var p = 0; p < oldproduct.length; p++) {\r\n if (newproduct[j].id == oldproduct[p].id) {\r\n newproduct[j].open = oldproduct[p].open;\r\n }\r\n }\r\n }\r\n }\r\n }\r\n\r\n private MergeBCBProductViewModelOpbouw(newproduct: BCBOpbouwViewModel[] | undefined, oldproduct: BCBOpbouwViewModel[] | undefined) {\r\n if (newproduct != null && oldproduct != null) {\r\n for (var j = 0; j < newproduct.length; j++) {\r\n for (var p = 0; p < oldproduct.length; p++) {\r\n if (newproduct[j].id == oldproduct[p].id) {\r\n newproduct[j].open = oldproduct[p].open;\r\n\r\n var ebosnew = newproduct[j].ebos;\r\n var ebosold = oldproduct[p].ebos;\r\n if (ebosnew != null && ebosold != null) {\r\n for (var o = 0; o < ebosnew.length; o++) {\r\n this.MergeBCBEBO(ebosnew[o], ebosold[o]);\r\n }\r\n }\r\n }\r\n }\r\n }\r\n }\r\n }\r\n}\r\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-beheer-users',\n templateUrl: './beheer-users.component.html',\n styleUrls: ['./beheer-users.component.scss']\n})\nexport class BeheerUsersComponent implements OnInit {\n\n constructor() { }\n\n ngOnInit(): void {\n }\n\n}\n","<app-beheer-nav></app-beheer-nav>\r\n","import { Component, OnInit, Input, ChangeDetectorRef } from '@angular/core';\nimport { ProductsService } from '../../../../services/products.service';\r\nimport { ProductViewModel } from '../../../../swagger/SwaggerClient';\n\n@Component({\n selector: 'app-beheer-products-product',\n templateUrl: './beheer-products-product.component.html',\n styleUrls: ['./beheer-products-product.component.scss']\n})\nexport class BeheerProductsProductComponent implements OnInit {\n\n @Input() ProductViewModel: ProductViewModel;\n\n constructor(public ProductsService: ProductsService, private ChangeDetectorRef: ChangeDetectorRef) { }\n\n public ResetImport(): void {\n this.ProductsService.ResetImport(this.ProductViewModel.id, -1, this.ChangeDetectorRef);\r\n }\n\n ngOnInit(): void {\n }\n\n}\n","<mat-card>\r\n <div class=\"product-bar\">\r\n <div class=\"product-first block\">\r\n <mat-form-field appearance=\"fill\" class=\"full-width\">\r\n <mat-label>Naam</mat-label>\r\n <input matInput [(ngModel)]=\"ProductViewModel.name\">\r\n </mat-form-field>\r\n </div>\r\n <div class=\"block\">\r\n <button mat-raised-button (click)=\"ResetImport()\">\r\n Reset Import\r\n </button>\r\n </div>\r\n <div class=\"block\">\r\n <button mat-raised-button [disabled]=\"true\">\r\n Opslaan\r\n </button>\r\n </div>\r\n <div class=\"block\">\r\n <button mat-raised-button [disabled]=\"true\">\r\n Verwijderen\r\n </button>\r\n </div>\r\n </div>\r\n</mat-card>\r\n\r\n","import { Component, Input, OnInit } from '@angular/core';\nimport { BCBEBOViewModel } from '../../../swagger/SwaggerClient';\r\n\n@Component({\n selector: 'app-beheer-display-ebo',\n templateUrl: './beheer-display-ebo.component.html',\n styleUrls: ['./beheer-display-ebo.component.scss']\n})\nexport class BeheerDisplayEboComponent implements OnInit {\n\n @Input() ebo: BCBEBOViewModel;\n\n constructor() { }\n\n ngOnInit(): void {\n }\n\n public GetText(): string {\n var text = \"\";\r\n\r\n if (this.ebo?.dOs != null) {\r\n for (var i = 0; i < this.ebo.dOs.length; i++) {\r\n if (text != \"\") {\r\n text += \" | \";\r\n }\r\n\r\n text += this.ebo.dOs[i].doNaam;\r\n }\r\n }\r\n\r\n return text;\r\n }\n}\n","<!--<div class=\"row\">\n <div class=\"flex-auto\" *ngFor=\"let do of ebo.dOs\">\n <mat-form-field class=\"full-width\" appearance=\"fill\">\n <mat-label>{{ do.doType }}</mat-label>\n <input matInput value=\"{{do.doNaam}}\" [readonly]=\"true\">\n </mat-form-field>\n </div>\n</div>-->\n<div>\n {{ GetText() }}\n</div>\n","import { ChangeDetectorRef, Component, Inject, OnInit } from '@angular/core';\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport { ImportSetsService } from '../../../../services/importsets.service';\r\nimport { ProductsService } from '../../../../services/products.service';\r\nimport { ConnectManyNameRequest, ConnectManyEBORequest, ConnectManyNameResponse, ConnectManyPreviewRequest, ConnectManyPreviewResponse, FiltersApiClient, FiltersViewModel, ProductsApiClient, ConnectManyEBODORequest } from '../../../../swagger/SwaggerClient';\r\n\n@Component({\n selector: 'app-beheer-products-connect-manyname-dialog',\n templateUrl: './beheer-products-connect-manyname-dialog.component.html',\n styleUrls: ['./beheer-products-connect-manyname-dialog.component.scss']\n})\nexport class BeheerProductsConnectManynameDialogComponent implements OnInit {\n\n public LoadingPreview: boolean = true;\n public LoadingFilters: boolean = true;\n public ConnectManyPreviewResponse: ConnectManyPreviewResponse;\n\n public FiltersViewModel: FiltersViewModel;\n\n public FilterSelected: number;\n public LevelsDeep: number = 0;\n\n public bcbproducteigenschapoptieid: number | null;\n public bcbproductopbouwoptieid: number | null;\n public bcbebodoid: number | null;\n\n constructor(\n public dialogRef: MatDialogRef<BeheerProductsConnectManynameDialogComponent>,\n @Inject(MAT_DIALOG_DATA) public data: any,\n private ProductsApiClient: ProductsApiClient,\n private ProductsService: ProductsService,\n private ImportSetsService: ImportSetsService,\n private FiltersApiClient: FiltersApiClient,\n private ChangeDetectorRef: ChangeDetectorRef) {\n this.bcbproducteigenschapoptieid = data.bcbproducteigenschapoptieid;\n this.bcbproductopbouwoptieid = data.bcbproductopbouwoptieid;\n this.bcbebodoid = data.bcbebodoid;\n this.Refresh();\n }\n\n ngOnInit(): void {\n this.LoadFilters();\n }\n\n public Connect(): void {\n if (this.bcbproducteigenschapoptieid != null) {\n var model = new ConnectManyNameRequest();\r\n model.bcbProductEigenschapOptieId = this.bcbproducteigenschapoptieid;\r\n model.levelsDeep = this.LevelsDeep;\r\n model.filterId = this.FilterSelected;\r\n\r\n this.LoadingPreview = true;\r\n\r\n this.ProductsApiClient.connectManyName(model).subscribe((model: ConnectManyNameResponse) => {\r\n this.ProductsService.LoadProduct(this.ChangeDetectorRef);\r\n this.LoadingPreview = false;\r\n this.dialogRef.close();\r\n }, (error: Response) => {\r\n if (error.status == 400)\r\n console.log(error.json());\r\n else {\r\n console.log('An unexpected error occured');\r\n console.log(error);\r\n }\r\n\r\n alert(error);\r\n\r\n this.LoadingPreview = false;\r\n });\r\n }\r\n }\n\n public ConnectType(type: string): void {\n if (this.bcbproductopbouwoptieid != null) {\n var model = new ConnectManyEBORequest();\r\n model.bcbProductOpbouwOptieId = this.bcbproductopbouwoptieid;\r\n model.doType = type;\r\n model.levelsDeep = this.LevelsDeep;\r\n model.filterId = this.FilterSelected;\r\n\r\n this.LoadingPreview = true;\r\n\r\n this.ProductsApiClient.connectManyEBO(model).subscribe(() => {\r\n this.ProductsService.LoadProduct(this.ChangeDetectorRef);\r\n this.LoadingPreview = false;\r\n this.dialogRef.close();\r\n }, (error: Response) => {\r\n if (error.status == 400)\r\n console.log(error.json());\r\n else {\r\n console.log('An unexpected error occured');\r\n console.log(error);\r\n }\r\n\r\n alert(error);\r\n\r\n this.LoadingPreview = false;\r\n });\r\n }\r\n }\n\n public ConnectEBODO(): void {\n if (this.bcbebodoid != null) {\n var model = new ConnectManyEBODORequest();\r\n model.bcbebodoId = this.bcbebodoid;\r\n model.bcbImportSetId = this.ImportSetsService.BCBImportSetSelected;\r\n model.filterId = this.FilterSelected;\r\n\r\n this.LoadingPreview = true;\r\n\r\n this.ProductsApiClient.connectManyEBODO(model).subscribe(() => {\r\n this.ProductsService.LoadProduct(this.ChangeDetectorRef);\r\n this.LoadingPreview = false;\r\n this.dialogRef.close();\r\n }, (error: Response) => {\r\n if (error.status == 400)\r\n console.log(error.json());\r\n else {\r\n console.log('An unexpected error occured');\r\n console.log(error);\r\n }\r\n\r\n alert(error);\r\n\r\n this.LoadingPreview = false;\r\n });\r\n }\r\n }\n\n public Loading(): boolean {\n return this.LoadingPreview || this.LoadingFilters;\r\n }\n\n public Refresh(): void {\n if (this.bcbproducteigenschapoptieid != null) {\n this.LoadResultEigenschap(this.bcbproducteigenschapoptieid);\r\n } else if (this.bcbproductopbouwoptieid != null) {\r\n this.LoadResultOpbouw(this.bcbproductopbouwoptieid);\r\n } else if (this.bcbebodoid != null) {\r\n this.LoadResultEBODO(this.bcbebodoid);\r\n }\r\n }\n\n public LoadResultEigenschap(id: number): void {\n var model = new ConnectManyPreviewRequest();\r\n model.bcbProductEigenschapOptieId = id;\r\n model.levelsDeep = this.LevelsDeep;\r\n\r\n this.LoadingPreview = true;\r\n\r\n this.ProductsApiClient.connectManyNamePreview(model).subscribe((model: ConnectManyPreviewResponse) => {\r\n this.ConnectManyPreviewResponse = model;\r\n this.LoadingPreview = false;\r\n }, (error: Response) => {\r\n if (error.status == 400)\r\n console.log(error.json());\r\n else {\r\n console.log('An unexpected error occured');\r\n console.log(error);\r\n }\r\n\r\n alert(error);\r\n\r\n this.LoadingPreview = false;\r\n });\r\n }\n\n public LoadResultOpbouw(id: number): void {\n var model = new ConnectManyEBORequest();\r\n model.bcbProductOpbouwOptieId = id;\r\n model.levelsDeep = this.LevelsDeep;\r\n\r\n this.LoadingPreview = true;\r\n\r\n this.ProductsApiClient.connectManyEBOPreview(model).subscribe((model: ConnectManyPreviewResponse) => {\r\n this.ConnectManyPreviewResponse = model;\r\n this.LoadingPreview = false;\r\n }, (error: Response) => {\r\n if (error.status == 400)\r\n console.log(error.json());\r\n else {\r\n console.log('An unexpected error occured');\r\n console.log(error);\r\n }\r\n\r\n alert(error);\r\n\r\n this.LoadingPreview = false;\r\n });\r\n }\n\n public LoadResultEBODO(id: number): void {\n var model = new ConnectManyEBODORequest();\r\n model.bcbebodoId = id;\r\n model.bcbImportSetId = this.ImportSetsService.BCBImportSetSelected;\r\n\r\n this.LoadingPreview = true;\r\n\r\n this.ProductsApiClient.connectManyEBODOPreview(model).subscribe((model: ConnectManyPreviewResponse) => {\r\n this.ConnectManyPreviewResponse = model;\r\n this.LoadingPreview = false;\r\n }, (error: Response) => {\r\n if (error.status == 400)\r\n console.log(error.json());\r\n else {\r\n console.log('An unexpected error occured');\r\n console.log(error);\r\n }\r\n\r\n alert(error);\r\n\r\n this.LoadingPreview = false;\r\n });\r\n }\n\n public GetConnects(): Array<string> {\n var array = new Array<string>();\r\n\r\n if (this.ConnectManyPreviewResponse?.containers != null) {\r\n if (this.ConnectManyPreviewResponse.containers.length > 0) {\r\n if (this.ConnectManyPreviewResponse.containers[0].ebOs != null) {\r\n if (this.ConnectManyPreviewResponse.containers[0].ebOs.length > 0) {\r\n if (this.ConnectManyPreviewResponse.containers[0].ebOs[0].ebo?.dOs != null) {\r\n for (var i = 0; i < this.ConnectManyPreviewResponse.containers[0].ebOs[0].ebo.dOs.length; i++) {\r\n array.push(this.ConnectManyPreviewResponse.containers[0].ebOs[0].ebo.dOs[i].doType + \"\");\r\n }\r\n }\r\n }\r\n }\r\n }\r\n }\r\n\r\n return array;\r\n }\n\n private LoadFilters(): void {\r\n this.LoadingFilters = true;\r\n\r\n this.FiltersApiClient.getFiltersViewModel().subscribe((model: FiltersViewModel) => {\r\n this.FiltersViewModel = model;\r\n this.LoadingFilters = false;\r\n }, (error: Response) => {\r\n if (error.status == 400)\r\n console.log(error.json());\r\n else {\r\n console.log('An unexpected error occured');\r\n console.log(error);\r\n }\r\n\r\n this.LoadingFilters = false;\r\n });\r\n }\n}\n","<div>\r\n <div *ngIf=\"Loading()\">\r\n <app-fab-loader></app-fab-loader>\r\n </div>\r\n <div *ngIf=\"!Loading()\">\r\n <div class=\"displayflex\" *ngIf=\"bcbebodoid == null\">\r\n <mat-form-field appearance=\"fill\" (change)=\"Refresh()\">\r\n <mat-label>Levels</mat-label>\r\n <input matInput type=\"number\" [(ngModel)]=\"LevelsDeep\">\r\n </mat-form-field>\r\n </div>\r\n\r\n <div class=\"main-content\">\r\n <div *ngFor=\"let result of ConnectManyPreviewResponse.containers\">\r\n <div class=\"container-name\">{{ result.name }}</div>\r\n <div class=\"opties optie\" >\r\n <div *ngFor=\"let ebo of result.ebOs\" class=\"displayflex\">\r\n <div >\r\n {{ ebo.count }}x\r\n </div>\r\n <app-beheer-display-ebo [ebo]=\"ebo.ebo\"></app-beheer-display-ebo>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"displayflex\">\r\n <mat-form-field appearance=\"fill\" class=\"full-width\">\r\n <mat-label>Filter</mat-label>\r\n <mat-select [(ngModel)]=\"FilterSelected\">\r\n <mat-option *ngFor=\"let filter of FiltersViewModel.filterViewModels\" [value]=\"filter.id\">\r\n {{filter.name}}\r\n </mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n\r\n <div *ngIf=\"bcbproducteigenschapoptieid != null\">\r\n <button class=\"button\" mat-raised-button (click)=\"Connect()\">\r\n Connect\r\n </button>\r\n </div>\r\n <div *ngIf=\"bcbebodoid != null\">\r\n <button class=\"button\" mat-raised-button (click)=\"ConnectEBODO()\">\r\n Connect\r\n </button>\r\n </div>\r\n <div *ngIf=\"bcbproductopbouwoptieid != null\" class=\"displayflex\">\r\n <div *ngFor=\"let type of GetConnects()\">\r\n <button class=\"button\" mat-raised-button (click)=\"ConnectType(type)\">\r\n {{ type }}\r\n </button>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n","import { Component, Inject, OnInit } from '@angular/core';\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport { ProductsService } from '../../../../services/products.service';\r\nimport { FiltersApiClient, FiltersViewModel, FilterOptionViewModel, CreateFilterOptionRequest, CreateFilterOptionResponse, CreateFilterRequest, CreateFilterResponse, ConnectEigenschapOptieRequest, ProductsApiClient, ConnectEigenschapOptieResponse } from '../../../../swagger/SwaggerClient';\r\n\n@Component({\n selector: 'app-beheer-products-koppel-filteroption-dailog',\n templateUrl: './beheer-products-koppel-filteroption-dailog.component.html',\n styleUrls: ['./beheer-products-koppel-filteroption-dailog.component.scss']\n})\nexport class BeheerProductsKoppelFilteroptionDailogComponent implements OnInit {\n\n public FiltersViewModel: FiltersViewModel;\n\n public FilterNaamNieuw: string = \"\";\n public FilterOptionNaamNieuw: string = \"\";\n\n public LoadingFilters: boolean = true;\n public LoadingOpties: boolean = true;\n public FilterSelected: number;\n public FilterOptionSelected: number;\n\n public BCBEigenschapOptieId: number;\n public Location: string;\n\n public ConnectEigenschapOptieResponse: ConnectEigenschapOptieResponse;\n\n constructor(\n public dialogRef: MatDialogRef<BeheerProductsKoppelFilteroptionDailogComponent>,\n @Inject(MAT_DIALOG_DATA) public data: any,\n private FiltersApiClient: FiltersApiClient,\n private ProductsApiClient: ProductsApiClient,\n private ProductsService: ProductsService) {\n this.BCBEigenschapOptieId = data.bcbeigenschapoptieid;\n this.Location = data.location;\n this.FilterNaamNieuw = data.suggestedfilter;\n this.FilterOptionNaamNieuw = data.suggestedoption;\n }\n\n ngOnInit(): void {\r\n this.LoadFilters();\r\n this.LoadOpties();\r\n }\r\n\r\n public handleKeyUpFilter(e: any) {\r\n if (e.keyCode === 13) {\r\n this.NieuwFilterToevoegen();\r\n }\r\n }\r\n\r\n public handleKeyUpFilterOption(e: any) {\r\n if (e.keyCode === 13) {\r\n this.NieuwFilterOptionToevoegen();\r\n }\r\n }\r\n\n public NieuwFilterToevoegen(): void {\n this.LoadingFilters = true;\r\n\r\n var requestfilter: CreateFilterRequest = new CreateFilterRequest();\r\n\r\n requestfilter.name = this.FilterNaamNieuw;\r\n\r\n this.FiltersApiClient.createFilter(requestfilter).subscribe((model: CreateFilterResponse) => {\r\n this.LoadingFilters = false;\r\n\r\n var requestfilteroption = new CreateFilterOptionRequest();\r\n\r\n requestfilteroption.filterId = model.id;\r\n requestfilteroption.name = this.FilterOptionNaamNieuw;\r\n\r\n this.FiltersApiClient.createFilterOption(requestfilteroption).subscribe((model: CreateFilterOptionResponse) => {\r\n this.LoadingFilters = false;\r\n\r\n this.dialogRef.close({ filter: null, filteroption: model.id });\r\n }, (error: Response) => {\r\n if (error.status == 400)\r\n console.log(error.json());\r\n else {\r\n console.log('An unexpected error occured');\r\n console.log(error);\r\n }\r\n\r\n this.LoadingFilters = false;\r\n });\r\n\r\n }, (error: Response) => {\r\n if (error.status == 400)\r\n console.log(error.json());\r\n else {\r\n console.log('An unexpected error occured');\r\n console.log(error);\r\n }\r\n\r\n this.LoadingFilters = false;\r\n });\r\n }\n\n public NieuwFilterOptionToevoegen(): void {\n this.LoadingFilters = true;\r\n\r\n var requestfilteroption = new CreateFilterOptionRequest();\r\n\r\n requestfilteroption.filterId = this.FilterSelected;\r\n requestfilteroption.name = this.FilterOptionNaamNieuw;\r\n\r\n this.FiltersApiClient.createFilterOption(requestfilteroption).subscribe((model: CreateFilterOptionResponse) => {\r\n this.LoadingFilters = false;\r\n\r\n this.dialogRef.close({ filter: null, filteroption: model.id });\r\n }, (error: Response) => {\r\n if (error.status == 400)\r\n console.log(error.json());\r\n else {\r\n console.log('An unexpected error occured');\r\n console.log(error);\r\n }\r\n\r\n this.LoadingFilters = false;\r\n });\r\n }\n\n public BestaandToevoegen(): void {\n this.dialogRef.close({ filter: null, filteroption: this.FilterOptionSelected });\r\n }\n\n public GetSelectedFiltersOptions(): Array<FilterOptionViewModel> {\n var array = new Array<FilterOptionViewModel>();\r\n\r\n var temparray = this.FiltersViewModel?.filterViewModels;\r\n\r\n if (temparray != null) {\r\n for (var i = 0; i < temparray.length; i++) {\r\n if (temparray[i].id == this.FilterSelected) {\r\n return temparray[i].filterOptionViewModels as Array<FilterOptionViewModel>;\r\n }\r\n }\r\n }\r\n\r\n return array;\r\n }\n\n public KoppelManyName(): void {\n this.dialogRef.close({ filter: this.FilterSelected, filteroption: null });\r\n }\n\n public Loading(): boolean {\n return this.LoadingOpties || this.LoadingFilters;\r\n }\n\n private LoadFilters(): void {\r\n this.LoadingFilters = true;\r\n\r\n this.FiltersApiClient.getFiltersViewModel().subscribe((model: FiltersViewModel) => {\r\n this.FiltersViewModel = model;\r\n this.LoadingFilters = false;\r\n }, (error: Response) => {\r\n if (error.status == 400)\r\n console.log(error.json());\r\n else {\r\n console.log('An unexpected error occured');\r\n console.log(error);\r\n }\r\n\r\n this.LoadingFilters = false;\r\n });\r\n }\n\n private LoadOpties(): void {\r\n if (this.ProductsService.BCBProductViewModel != null) {\r\n this.LoadingOpties = true;\r\n\r\n var request = new ConnectEigenschapOptieRequest();\r\n\r\n request.bcbEigenschapOptieId = this.BCBEigenschapOptieId;\r\n request.bcbProductId = this.ProductsService.BCBProductViewModel.id;\r\n request.location = this.Location;\r\n\r\n this.ProductsApiClient.connectBCBEigenschapOptieFilterOptionPreview(request).subscribe((model: ConnectEigenschapOptieResponse) => {\r\n this.ConnectEigenschapOptieResponse = model;\r\n this.LoadingOpties = false;\r\n }, (error: Response) => {\r\n alert(error);\r\n });\r\n }\r\n }\n}\n","<div *ngIf=\"Loading()\">\r\n <app-fab-loader></app-fab-loader>\r\n</div>\r\n\r\n<div *ngIf=\"!Loading()\">\r\n <mat-tab-group>\r\n <mat-tab label=\"Nieuwe filter\">\r\n <div class=\"bar\">\r\n <mat-form-field appearance=\"fill\" class=\"full-width\">\r\n <mat-label>Filter</mat-label>\r\n <input matInput [(ngModel)]=\"FilterNaamNieuw\">\r\n </mat-form-field>\r\n\r\n <mat-form-field appearance=\"fill\" class=\"full-width\">\r\n <mat-label>Optie</mat-label>\r\n <input matInput (keyup)=\"handleKeyUpFilter($event)\" [(ngModel)]=\"FilterOptionNaamNieuw\">\r\n </mat-form-field>\r\n </div>\r\n\r\n <div class=\"bar tool-bar\">\r\n <button mat-raised-button (click)=\"NieuwFilterToevoegen()\">Toevoegen</button>\r\n </div>\r\n </mat-tab>\r\n <mat-tab label=\"Nieuwe optie\">\r\n <div class=\"bar\">\r\n <mat-form-field appearance=\"fill\" class=\"full-width\">\r\n <mat-label>Filter</mat-label>\r\n <mat-select [(ngModel)]=\"FilterSelected\">\r\n <mat-option *ngFor=\"let filter of FiltersViewModel.filterViewModels\" [value]=\"filter.id\">\r\n {{filter.name}}\r\n </mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n\r\n <mat-form-field appearance=\"fill\" class=\"full-width\">\r\n <mat-label>Optie</mat-label>\r\n <input matInput (keyup)=\"handleKeyUpFilterOption($event)\" [(ngModel)]=\"FilterOptionNaamNieuw\">\r\n </mat-form-field>\r\n </div>\r\n\r\n <div class=\"bar tool-bar\">\r\n <button mat-raised-button (click)=\"NieuwFilterOptionToevoegen()\">Toevoegen</button>\r\n </div>\r\n </mat-tab>\r\n <mat-tab label=\"Bestaand\">\r\n\r\n <div class=\"bar\">\r\n <mat-form-field appearance=\"fill\" class=\"full-width\">\r\n <mat-label>Filter</mat-label>\r\n <mat-select [(ngModel)]=\"FilterSelected\">\r\n <mat-option *ngFor=\"let filter of FiltersViewModel.filterViewModels\" [value]=\"filter.id\">\r\n {{filter.name}}\r\n </mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n\r\n <mat-form-field appearance=\"fill\" class=\"full-width\">\r\n <mat-label>Optie</mat-label>\r\n <mat-select [(ngModel)]=\"FilterOptionSelected\">\r\n <mat-option *ngFor=\"let filteroption of GetSelectedFiltersOptions()\" [value]=\"filteroption.id\">\r\n {{filteroption.name}}\r\n </mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n </div>\r\n\r\n <div class=\"bar tool-bar\">\r\n <button mat-raised-button (click)=\"BestaandToevoegen()\">Toevoegen</button>\r\n </div>\r\n </mat-tab>\r\n <!--<mat-tab label=\"Many Name\">\r\n <mat-form-field appearance=\"fill\" class=\"full-width\">\r\n <mat-label>Filter</mat-label>\r\n <mat-select [(ngModel)]=\"FilterSelected\">\r\n <mat-option *ngFor=\"let filter of FiltersViewModel.filterViewModels\" [value]=\"filter.id\">\r\n {{filter.name}}\r\n </mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n\r\n <app-beheer-connect-manyname></app-beheer-connect-manyname>\r\n\r\n <div class=\"bar tool-bar\">\r\n <button mat-raised-button (click)=\"KoppelManyName()\">Koppel</button>\r\n </div>\r\n </mat-tab>-->\r\n </mat-tab-group>\r\n\r\n <div class=\"options-container\">\r\n <div *ngFor=\"let location of ConnectEigenschapOptieResponse.locations\">\r\n <b>{{ location.location }}</b>\r\n <div *ngFor=\"let ebo of location.ebos\">\r\n {{ ebo }}\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n","import { ChangeDetectorRef, Component, Inject, OnInit } from '@angular/core';\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport { ImportSetsService } from '../../../../services/importsets.service';\r\nimport { ProductsService } from '../../../../services/products.service';\r\nimport { ProductsApiClient, ConnectBCBEigenschapRangeInputRequest, FiltersApiClient, RangeInputsViewModel, ConnectBCBEigenschapRangeInputResponse } from '../../../../swagger/SwaggerClient';\r\n\n@Component({\n selector: 'app-beheer-products-connect-rangeinput',\n templateUrl: './beheer-products-connect-rangeinput.component.html',\n styleUrls: ['./beheer-products-connect-rangeinput.component.scss']\n})\nexport class BeheerProductsConnectRangeinputComponent implements OnInit {\n\n private bcbeigenschapid: number;\n private location: string;\n\n public Options: ConnectBCBEigenschapRangeInputResponse;\n\n public RangeInputsViewModel: RangeInputsViewModel;\n public RangeInputSelected: number;\n\n public RangeInputNaamNieuw: string = \"\";\n public LoadingRangeInputs: boolean = false;\n public LoadingOptions: boolean = false;\n\n constructor(\n public dialogRef: MatDialogRef<BeheerProductsConnectRangeinputComponent>,\n @Inject(MAT_DIALOG_DATA) public data: any,\n private ProductsApiClient: ProductsApiClient,\n private FiltersApiClient: FiltersApiClient,\n private ImportSetsService: ImportSetsService,\n public ProductsService: ProductsService,\n private ChangeDetectorRef: ChangeDetectorRef) {\n this.location = data.location;\n this.bcbeigenschapid = data.bcbeigenschapid;\n this.LoadRangeInput();\n this.LoadOptions();\n }\n\n ngOnInit(): void {\n }\n\n public NieuwToevoegen(): void {\n if (this.ProductsService.BCBProductViewModel != null) {\n var request = new ConnectBCBEigenschapRangeInputRequest();\r\n\r\n request.bcbEigenschapId = this.bcbeigenschapid;\r\n request.rangeInput = this.RangeInputNaamNieuw;\r\n request.rangeInputId = -1;\r\n request.bcbProductId = this.ProductsService.BCBProductViewModel?.id;\r\n request.location = this.location;\r\n\r\n this.ProductsApiClient.connectBCBEigenschapRangeInput(request).subscribe(() => {\r\n this.dialogRef.close();\r\n this.ProductsService.LoadProduct(this.ChangeDetectorRef);\r\n }, (error: Response) => {\r\n alert(error);\r\n });\r\n }\r\n }\n\n public Bestaand(): void {\n if (this.ProductsService.BCBProductViewModel != null) {\n var request = new ConnectBCBEigenschapRangeInputRequest();\r\n\r\n request.bcbEigenschapId = this.bcbeigenschapid;\r\n request.rangeInput = \"\";\r\n request.rangeInputId = this.RangeInputSelected;\r\n request.bcbProductId = this.ProductsService.BCBProductViewModel?.id;\r\n request.location = this.location;\r\n\r\n this.ProductsApiClient.connectBCBEigenschapRangeInput(request).subscribe(() => {\r\n this.dialogRef.close();\r\n this.ProductsService.LoadProduct(this.ChangeDetectorRef);\r\n }, (error: Response) => {\r\n alert(error);\r\n });\r\n }\r\n }\n\n public LoadRangeInput(): void {\r\n this.LoadingRangeInputs = true;\r\n this.FiltersApiClient.getRangeInputsViewModel().subscribe((model: RangeInputsViewModel) => {\r\n this.RangeInputsViewModel = model;\r\n this.LoadingRangeInputs = false; \r\n }, (error: Response) => {\r\n alert(error);\r\n });\r\n }\n\n public LoadOptions(): void {\r\n if (this.ProductsService.BCBProductViewModel != null) {\r\n this.LoadingOptions = true;\r\n\r\n var request = new ConnectBCBEigenschapRangeInputRequest();\r\n\r\n request.bcbEigenschapId = this.bcbeigenschapid;\r\n request.bcbProductId = this.ProductsService.BCBProductViewModel?.id;\r\n request.location = this.location;\r\n\r\n\r\n this.ProductsApiClient.connectBCBEigenschapRangeInputPreview(request).subscribe((model: ConnectBCBEigenschapRangeInputResponse) => {\r\n this.Options = model;\r\n this.LoadingOptions = false;\r\n }, (error: Response) => {\r\n alert(error);\r\n });\r\n }\r\n }\n\n public Loading(): boolean {\n return this.LoadingRangeInputs || this.LoadingOptions;\r\n }\n}\n","<div *ngIf=\"Loading()\">\r\n <app-fab-loader></app-fab-loader>\r\n</div>\r\n\r\n<div *ngIf=\"!Loading()\">\r\n <mat-tab-group>\r\n <mat-tab label=\"Nieuw\">\r\n <div class=\"bar\">\r\n <mat-form-field appearance=\"fill\" class=\"full-width\">\r\n <mat-label>Range input</mat-label>\r\n <input matInput [(ngModel)]=\"RangeInputNaamNieuw\">\r\n </mat-form-field>\r\n </div>\r\n\r\n <div class=\"bar tool-bar\">\r\n <button mat-raised-button (click)=\"NieuwToevoegen()\">Toevoegen</button>\r\n </div>\r\n </mat-tab>\r\n <mat-tab label=\"Bestaand\">\r\n <div class=\"bar\">\r\n <mat-form-field appearance=\"fill\" class=\"full-width\">\r\n <mat-label>Range Input</mat-label>\r\n <mat-select [(ngModel)]=\"RangeInputSelected\">\r\n <mat-option *ngFor=\"let range of RangeInputsViewModel.rangeInputs\" [value]=\"range.id\">\r\n {{range.name}}\r\n </mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n </div>\r\n\r\n <div class=\"bar tool-bar\">\r\n <button mat-raised-button (click)=\"Bestaand()\">Koppel</button>\r\n </div>\r\n </mat-tab>\r\n </mat-tab-group>\r\n <div class=\"options-container\">\r\n <div *ngFor=\"let fullname of Options.eigenschappen\">\r\n <b>{{ fullname.location }}</b>\r\n <div *ngFor=\"let ebo of fullname.eigenschappen\">\r\n {{ ebo }}\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n","import { Component, Input, OnInit } from '@angular/core';\nimport { BCBEigenschapBereikViewModel } from '../../../../swagger/SwaggerClient';\r\n\n@Component({\n selector: 'app-beheer-products-eigenschap-bereik',\n templateUrl: './beheer-products-eigenschap-bereik.component.html',\n styleUrls: ['./beheer-products-eigenschap-bereik.component.scss']\n})\nexport class BeheerProductsEigenschapBereikComponent implements OnInit {\n\n @Input() bereik: BCBEigenschapBereikViewModel;\n\n constructor() { }\n\n ngOnInit(): void {\n }\n\n}\n","<div class=\"container\">\n <div class=\"item\">{{ bereik.typeField }}</div>\n <div class=\"item\">Minimum: {{ bereik.minimum }} (inclusief: {{ bereik.inclusiefMinimum }})</div>\n <div class=\"item\">Maximum: {{ bereik.maximum }} (inclusief: {{ bereik.inclusiefMaximum }})</div>\n</div>\n","import { ChangeDetectorRef, Component, Input, OnInit } from '@angular/core';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { ImportSetsService } from '../../../../services/importsets.service';\r\nimport { ProductsService } from '../../../../services/products.service';\r\nimport { ProductsApiClient, ConnectBCBEigenschapRequest, ConnectManyNameRequest, ConnectManyNameResponse, ConnectEigenschapOptieResponse, BCBEigenschapViewModel, ConnectEigenschapOptieRequest } from '../../../../swagger/SwaggerClient';\r\nimport { BeheerConnectCategoryDialogComponent } from '../../beheer-connect-category-dialog/beheer-connect-category-dialog.component';\r\nimport { BeheerProductsConnectManynameDialogComponent } from '../beheer-products-connect-manyname-dialog/beheer-products-connect-manyname-dialog.component';\r\nimport { BeheerProductsConnectRangeinputComponent } from '../beheer-products-connect-rangeinput/beheer-products-connect-rangeinput.component';\r\nimport { BeheerProductsKoppelFilteroptionDailogComponent } from './../beheer-products-koppel-filteroption-dailog/beheer-products-koppel-filteroption-dailog.component';\r\n\r\n@Component({\r\n selector: 'app-beheer-products-eigenschap',\r\n templateUrl: './beheer-products-eigenschap.component.html',\r\n styleUrls: ['./beheer-products-eigenschap.component.scss']\r\n})\r\nexport class BeheerProductsEigenschapComponent implements OnInit {\r\n\r\n @Input() eigenschap: BCBEigenschapViewModel;\r\n\r\n constructor(\r\n public ImportSetsService: ImportSetsService,\r\n public ProductsService: ProductsService,\r\n public dialog: MatDialog,\r\n private ProductsApiClient: ProductsApiClient,\r\n private ChangeDetectorRef: ChangeDetectorRef) { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n public Toggle(): void {\r\n this.eigenschap.open = !this.eigenschap.open;\r\n }\r\n\r\n public Connect(id: number, filter: string, option: string): void {\r\n var dialogRef = this.dialog.open(BeheerProductsKoppelFilteroptionDailogComponent, {\r\n data: {\r\n location: this.eigenschap.location,\r\n bcbeigenschapoptieid: id,\r\n suggestedfilter: filter,\r\n suggestedoption: option\r\n }\r\n });\r\n\r\n dialogRef.afterClosed().subscribe((result: any) => {\r\n if (result != null) {\r\n if (result.filteroption != null && result.filteroption > 0) {\r\n if (this.ProductsService.BCBProductViewModel != null) {\r\n var request = new ConnectEigenschapOptieRequest();\r\n\r\n request.bcbEigenschapOptieId = id;\r\n request.filterOptionId = result.filteroption;\r\n request.bcbProductId = this.ProductsService.BCBProductViewModel.id;\r\n request.location = this.eigenschap.location;\r\n\r\n this.ProductsApiClient.connectBCBEigenschapOptieFilterOption(request).subscribe(() => {\r\n this.ProductsService.LoadProduct(this.ChangeDetectorRef);\r\n }, (error: Response) => {\r\n alert(error);\r\n });\r\n }\r\n }\r\n else if (result.filter != null) {\r\n var request2 = new ConnectManyNameRequest();\r\n\r\n request2.bcbProductEigenschapOptieId = id;\r\n request2.filterId = result.filter;\r\n\r\n this.ProductsApiClient.connectManyName(request2).subscribe((model: ConnectManyNameResponse) => {\r\n this.ProductsService.LoadProduct(this.ChangeDetectorRef);\r\n }, (error: Response) => {\r\n alert(error);\r\n });\r\n }\r\n }\r\n });\r\n }\r\n\r\n public ConnectMany(id: number): void {\r\n if (confirm(\"Weet je het zeker?\")) {\r\n var request = new ConnectBCBEigenschapRequest();\r\n\r\n request.bcbEigenschapId = this.eigenschap.id;\r\n request.bcbImportSetId = this.ImportSetsService.BCBImportSetSelected;\r\n\r\n this.ProductsApiClient.connectBCBEigenschapFilter(request).subscribe(() => {\r\n this.ProductsService.LoadProduct(this.ChangeDetectorRef);\r\n }, (error: Response) => {\r\n alert(error);\r\n });\r\n }\r\n }\r\n\r\n public Ignore(id: number): void {\r\n if (this.ProductsService.BCBProductViewModel != null) {\r\n var request = new ConnectEigenschapOptieRequest();\r\n\r\n request.bcbEigenschapOptieId = id;\r\n request.filterOptionId = -1;\r\n request.bcbProductId = this.ProductsService.BCBProductViewModel.id;\r\n request.location = this.eigenschap.location;\r\n\r\n this.ProductsApiClient.ignoreBCBEigenschapOptieFilterOption(request).subscribe(() => {\r\n this.ProductsService.LoadProduct(this.ChangeDetectorRef);\r\n }, (error: Response) => {\r\n alert(error);\r\n });\r\n }\r\n }\r\n\r\n public ConnectRange(): void {\r\n var dialogRef = this.dialog.open(BeheerProductsConnectRangeinputComponent, {\r\n data: {\r\n bcbeigenschapid: this.eigenschap.id,\r\n location: this.eigenschap.location\r\n }\r\n });\r\n }\r\n\r\n public ConnectCategory(): void {\r\n if (confirm(\"Weet je het zeker?\")) {\r\n var request = new ConnectBCBEigenschapRequest();\r\n\r\n request.bcbEigenschapId = this.eigenschap.id;\r\n request.bcbImportSetId = this.ImportSetsService.BCBImportSetSelected;\r\n\r\n this.ProductsApiClient.connectBCBEigenschapCategory(request).subscribe(() => {\r\n this.ProductsService.LoadProduct(this.ChangeDetectorRef);\r\n }, (error: Response) => {\r\n alert(error);\r\n });\r\n }\r\n }\r\n\r\n public Show(): boolean {\r\n if (this.eigenschap?.opties?.length != null &&\r\n this.eigenschap.opties.length > 0) {\r\n return true;\r\n }\r\n\r\n if (this.eigenschap?.bereiken?.length != null &&\r\n this.eigenschap.bereiken.length > 0) {\r\n return true;\r\n }\r\n\r\n return false;\r\n }\r\n}\r\n","<div class=\"container\" [ngClass]=\"{'warning': !eigenschap.connected, 'normal': eigenschap.connected}\">\r\n <div class=\"row\" (click)=\"Toggle()\">\r\n <div class=\"icon-td\">\r\n <mat-icon *ngIf=\"!eigenschap.open && Show()\">expand_more</mat-icon>\r\n <mat-icon *ngIf=\"eigenschap.open && Show()\">expand_less</mat-icon>\r\n </div>\r\n <div class=\"eigenschapcel\" colspan=\"2\">\r\n {{eigenschap?.name}}\r\n </div>\r\n </div>\r\n <div *ngIf=\"eigenschap.open\">\r\n <div *ngFor=\"let bereik of eigenschap.bereiken\" class=\"bereik\">\r\n <app-beheer-products-eigenschap-bereik [bereik]=\"bereik\"></app-beheer-products-eigenschap-bereik>\r\n </div>\r\n <div *ngIf=\"eigenschap.bereiken.length > 0 && eigenschap.rangeInputs != null\">\r\n <div *ngIf=\"eigenschap.rangeInputs.length == 0\">\r\n <button mat-raised-button (click)=\"ConnectRange()\">\r\n Range\r\n </button>\r\n </div>\r\n <div *ngFor=\"let range of eigenschap.rangeInputs\">\r\n {{ range.rangeInputModel.name }}\r\n\r\n <button mat-raised-button>\r\n Remove\r\n </button>\r\n </div>\r\n </div>\r\n <div *ngFor=\"let optie of eigenschap.opties\" [ngClass]=\"{'warning': !optie.connected}\">\r\n <div class=\"text-div\">{{ optie.name }}</div>\r\n <div>\r\n <div *ngIf=\"!optie.connected\" class=\"button-row\">\r\n <button mat-raised-button (click)=\"Connect(optie.id, eigenschap.name, optie.name)\">\r\n FilterOption\r\n </button>\r\n <button mat-raised-button (click)=\"ConnectMany(optie.id)\">\r\n FilterOptionMany\r\n </button>\r\n <button mat-raised-button (click)=\"ConnectCategory()\">\r\n Category\r\n </button>\r\n <button mat-raised-button (click)=\"Ignore(optie.id)\">\r\n Ignore\r\n </button>\r\n </div>\r\n <div *ngFor=\"let connect of optie.bcbEigenschapOptieFilterOptionViewModels\">\r\n <b>{{ connect.filterOptionViewModel.filterName }}: {{ connect.filterOptionViewModel.name }}</b> \r\n <button mat-raised-button>\r\n Remove\r\n </button>\r\n </div>\r\n <div *ngFor=\"let connect of optie.bcbEigenschapOptieCategoryViewModels\">\r\n <b>{{ connect.categoryViewModel.name }}</b> \r\n <button mat-raised-button>\r\n Remove\r\n </button>\r\n </div>\r\n <div *ngIf=\"optie.ignore\">\r\n <b>Ignore</b> \r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n","import { ChangeDetectorRef, Component, Input, OnInit } from '@angular/core';\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { ProductsService } from '../../../../services/products.service';\r\nimport { ProductsApiClient, ConnectOpbouwOptieRequest, IgnoreOpbouwOptieRequest, RemoveOpbouwOptieRequest, BCBEBOViewModel, BCBOpbouwViewModel } from '../../../../swagger/SwaggerClient';\r\nimport { BeheerProductsConnectManynameDialogComponent } from '../beheer-products-connect-manyname-dialog/beheer-products-connect-manyname-dialog.component';\r\nimport { BeheerProductsKoppelFilteroptionDailogComponent } from '../beheer-products-koppel-filteroption-dailog/beheer-products-koppel-filteroption-dailog.component';\r\n\n@Component({\n selector: 'app-beheer-products-ebo',\n templateUrl: './beheer-products-ebo.component.html',\n styleUrls: ['./beheer-products-ebo.component.scss']\n})\nexport class BeheerProductsEboComponent implements OnInit {\n\n @Input() ebo: BCBEBOViewModel;\n\n constructor(\n public dialog: MatDialog,\n private ProductsApiClient: ProductsApiClient,\n private ProductsService: ProductsService,\n private ChangeDetectorRef: ChangeDetectorRef) { }\n\n ngOnInit(): void {\n }\n\n public ConnectAv(): boolean {\n //if (this.optie.bcbOpbouwOptieViewModel?.ignore == true) {\n // return false;\r\n //}\n\n //if (this.optie.bcbOpbouwOptieViewModel?.bcbOpbouwOptieFilterOptionViewModels != null &&\n // this.optie.bcbOpbouwOptieViewModel?.bcbOpbouwOptieFilterOptionViewModels?.length > 0) {\n // return false;\r\n //}\n\n return true;\r\n }\n\n public GetConnect(): string {\n //if (this.optie.bcbOpbouwOptieViewModel?.ignore == true) {\n // return \"Ignore\";\r\n //}\n\n //if (this.optie.bcbOpbouwOptieViewModel?.bcbOpbouwOptieFilterOptionViewModels != null &&\n // this.optie.bcbOpbouwOptieViewModel?.bcbOpbouwOptieFilterOptionViewModels?.length > 0) {\n // return this.optie.bcbOpbouwOptieViewModel?.bcbOpbouwOptieFilterOptionViewModels[0].filterOption?.filterName + \": \" + this.optie.bcbOpbouwOptieViewModel?.bcbOpbouwOptieFilterOptionViewModels[0].filterOption?.name + \"\";\r\n //}\n\n return \"\";\r\n }\n\n public Connect(): void {\n var dialogRef = this.dialog.open(BeheerProductsKoppelFilteroptionDailogComponent);\r\n\r\n dialogRef.afterClosed().subscribe((result: any) => {\r\n if (result != null) {\r\n if (result.filteroption != null && result.filteroption > 0) {\r\n var request = new ConnectOpbouwOptieRequest();\r\n\r\n //request.bcbProductOpbouwOptieId = this.optie.id;\r\n request.filterOptionId = result.filteroption;\r\n\r\n this.ProductsApiClient.connectBCBOpbouwOptieFilterOption(request).subscribe(() => {\r\n this.ProductsService.LoadProduct(this.ChangeDetectorRef);\r\n }, (error: Response) => {\r\n alert(error);\r\n });\r\n }\r\n else if (result.filter != null) {\r\n alert('??');\r\n }\r\n }\r\n });\r\n }\n\n public ConnectMany(): void {\r\n var dialogRef = this.dialog.open(BeheerProductsConnectManynameDialogComponent, {\r\n data: {\r\n //bcbproductopbouwoptieid: this.optie.id\r\n }\r\n });\r\n }\n\n public Ignore(): void {\n var request = new IgnoreOpbouwOptieRequest();\r\n\r\n // request.bcbProductOpbouwOptieId = this.optie.id;\r\n\r\n this.ProductsApiClient.ignoreBCBOpbouwOptieFilterOption(request).subscribe(() => {\r\n this.ProductsService.LoadProduct(this.ChangeDetectorRef);\r\n }, (error: Response) => {\r\n alert(error);\r\n });\r\n }\n\n public Remove(): void {\n var request = new RemoveOpbouwOptieRequest();\r\n\r\n //request.bcbProductOpbouwOptieId = this.optie.id;\r\n\r\n this.ProductsApiClient.removeBCBOpbouwOptieFilterOption(request).subscribe(() => {\r\n this.ProductsService.LoadProduct(this.ChangeDetectorRef);\r\n }, (error: Response) => {\r\n alert(error);\r\n });\r\n }\n\n public Toggle(): void {\r\n this.ebo.open = !this.ebo.open;\r\n }\n}\n\n@Component({\n selector: 'app-beheer-products-opbouw',\n templateUrl: './beheer-products-opbouw.component.html',\n styleUrls: ['./beheer-products-opbouw.component.scss']\n})\nexport class BeheerProductsOpbouwComponent implements OnInit {\n\n @Input() opbouw: BCBOpbouwViewModel;\n\n constructor() { }\n\n ngOnInit(): void {\n }\n\n public Toggle(): void {\r\n this.opbouw.open = !this.opbouw.open;\r\n }\n}\n\n","<div class=\"container\" [ngClass]=\"{'warning': !ebo.connected, 'normal': ebo.connected}\">\r\n <div class=\"row\" (click)=\"Toggle()\">\r\n <div class=\"icon-td\">\r\n <mat-icon *ngIf=\"!ebo.open\">expand_more</mat-icon>\r\n <mat-icon *ngIf=\"ebo.open\">expand_less</mat-icon>\r\n </div>\r\n <div class=\"name\" colspan=\"2\">\r\n {{ ebo.name }}\r\n </div>\r\n </div>\r\n <div *ngIf=\"ebo.open\" class=\"main-block\">\r\n <!--<div class=\"displayflex\" *ngIf=\"!ebo.connected && ConnectAv()\">\r\n <button mat-raised-button (click)=\"Ignore()\">\r\n Ignore\r\n </button>\r\n <button mat-raised-button (click)=\"Connect()\">\r\n FilterOption\r\n </button>\r\n <button mat-raised-button (click)=\"ConnectMany()\">\r\n FilterOptionMany\r\n </button>\r\n </div>\r\n <div class=\"displayflex\" *ngIf=\"!ConnectAv()\">\r\n <div class=\"text\">\r\n {{ GetConnect() }}\r\n </div>\r\n <button mat-raised-button (click)=\"Remove()\">\r\n Remove\r\n </button>\r\n </div>-->\r\n\r\n <div *ngIf=\"ebo.bcbOpbouwViewModels?.length != 0\">\r\n <div class=\"title\">Opbouw</div>\r\n <app-beheer-products-opbouw *ngFor=\"let opbouw of ebo.bcbOpbouwViewModels\" [opbouw]=\"opbouw\"></app-beheer-products-opbouw>\r\n </div>\r\n <div *ngIf=\"ebo.bcbEigenschapViewModels?.length != 0\">\r\n <div class=\"title\">Eigenschap</div>\r\n <app-beheer-products-eigenschap *ngFor=\"let eigenschap of ebo.bcbEigenschapViewModels\" [eigenschap]=\"eigenschap\"></app-beheer-products-eigenschap>\r\n </div>\r\n </div>\r\n</div>\r\n","<div class=\"container\" [ngClass]=\"{'warning': !opbouw.connected, 'normal': opbouw.connected }\">\r\n <div class=\"row\" (click)=\"Toggle()\">\r\n <div class=\"icon-td\">\r\n <mat-icon *ngIf=\"!opbouw.open\">expand_more</mat-icon>\r\n <mat-icon *ngIf=\"opbouw.open\">expand_less</mat-icon>\r\n </div>\r\n <div class=\"eigenschapcel\" colspan=\"2\">\r\n {{opbouw?.name}}\r\n </div>\r\n </div>\r\n <div *ngIf=\"opbouw.open\" class=\"main-block\">\r\n <div *ngFor=\"let ebo of opbouw.ebos\" [ngClass]=\"{'warning': !ebo.connected}\">\r\n <app-beheer-products-ebo [ebo]=\"ebo\"></app-beheer-products-ebo>\r\n </div>\r\n </div>\r\n</div>\r\n","import { Component, OnInit, Input, ChangeDetectorRef } from '@angular/core';\r\nimport { ProductsService } from '../../../../services/products.service';\r\nimport { BCBProductViewModel, BCBImportProductRequest, ImportApiClient, BCBImportProductResponse } from '../../../../swagger/SwaggerClient';\r\n\r\n@Component({\r\n selector: 'app-beheer-products-bcbproduct',\r\n templateUrl: './beheer-products-bcbproduct.component.html',\r\n styleUrls: ['./beheer-products-bcbproduct.component.scss']\r\n})\r\nexport class BeheerProductsBcbproductComponent implements OnInit {\r\n\r\n @Input() BCBProductViewModel: BCBProductViewModel;\r\n\r\n public Loading: boolean = false;\r\n\r\n constructor(private ImportApiClient: ImportApiClient, public ProductsService: ProductsService, private ChangeDetectorRef: ChangeDetectorRef) { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n public ResetImport(): void {\r\n this.ProductsService.ResetImport(-1, this.BCBProductViewModel.id, this.ChangeDetectorRef);\r\n }\r\n\r\n public Import(): void {\r\n\r\n var request = new BCBImportProductRequest();\r\n\r\n request.bcbProductId = this.BCBProductViewModel.id;\r\n\r\n this.Loading = true;\r\n\r\n this.ImportApiClient.importBCBProduct(request).subscribe((model: BCBImportProductResponse) => {\r\n if (!model.success) {\r\n alert(model.message);\r\n }\r\n this.Loading = false;\r\n this.ProductsService.Reload(this.ChangeDetectorRef);\r\n }, (error: Response) => {\r\n if (error.status == 400)\r\n console.log(error.json());\r\n else {\r\n console.log('An unexpected error occured');\r\n console.log(error);\r\n }\r\n });\r\n }\r\n\r\n}\r\n","<div *ngIf=\"Loading\">\r\n <app-fab-loader></app-fab-loader>\r\n</div>\r\n<div *ngIf=\"!Loading\">\r\n <mat-card>\r\n <div class=\"product-bar\">\r\n <div class=\"product-first block\">\r\n <mat-form-field appearance=\"fill\" class=\"full-width\">\r\n <mat-label>Naam</mat-label>\r\n <input matInput [(ngModel)]=\"BCBProductViewModel.name\">\r\n </mat-form-field>\r\n </div>\r\n <div class=\"block\">\r\n <button mat-raised-button (click)=\"Import()\">\r\n Import\r\n </button>\r\n </div>\r\n <div class=\"block\">\r\n <button mat-raised-button (click)=\"ResetImport()\">\r\n Reset Import\r\n </button>\r\n </div>\r\n <div class=\"block\">\r\n <button mat-raised-button [disabled]=\"true\">\r\n Opslaan\r\n </button>\r\n </div>\r\n <div class=\"block\">\r\n <button mat-raised-button [disabled]=\"true\">\r\n Verwijderen\r\n </button>\r\n </div>\r\n </div>\r\n </mat-card>\r\n <br />\r\n <mat-card>\r\n <mat-card-content>\r\n <app-beheer-products-ebo [ebo]=\"BCBProductViewModel.bcbeboViewModel\"></app-beheer-products-ebo>\r\n </mat-card-content>\r\n </mat-card>\r\n</div>\r\n\r\n","import { ChangeDetectorRef, Component, OnInit } from '@angular/core';\r\nimport { MatSelectionList } from '@angular/material/list';\r\nimport { ProductsService } from '../../../services/products.service';\r\nimport { ImportSetsService } from '../../../services/importsets.service';\r\nimport { ProductsApiClient, ProductsViewModel, BCBProductViewModel, ProductViewModel, BCBImportProductRequest, BCBImportProductResponse, ImportApiClient, BCBImportSetsViewModel } from '../../../swagger/SwaggerClient';\r\n\r\n@Component({\r\n selector: 'app-beheer-products',\r\n templateUrl: './beheer-products.component.html',\r\n styleUrls: ['./beheer-products.component.scss']\r\n})\r\nexport class BeheerProductsComponent implements OnInit {\r\n\r\n\r\n public BCBImportSetsViewModel?: BCBImportSetsViewModel = undefined;\r\n\r\n constructor(public ProductsService: ProductsService,\r\n public ImportSetsService: ImportSetsService,\r\n private ImportApiClient: ImportApiClient,\r\n public ChangeDetectorRef: ChangeDetectorRef) {\r\n\r\n }\r\n\r\n ngOnInit(): void {\r\n this.ImportSetsService.LoadImportSets(this.ChangeDetectorRef);\r\n }\r\n\r\n public Import(): void {\r\n var products = this.ProductsService.ProductsViewModel?.productViewModels;\r\n\r\n if (products != null && products.length > 0) {\r\n for (var i = 0; i < products.length; i++) {\r\n var bcbproducts = products[i].bcbProductViewModels;\r\n\r\n if (bcbproducts != null) {\r\n products[i].importStatus = \"0/\" + bcbproducts.length;\r\n\r\n for (var j = 0; j < bcbproducts.length; j++) {\r\n bcbproducts[j].importStatus = \"X\";\r\n }\r\n }\r\n }\r\n\r\n var bcbproducts = products[0].bcbProductViewModels;\r\n\r\n if (bcbproducts != null && bcbproducts.length > 0) {\r\n this.ImportBCBProduct(bcbproducts[0]);\r\n }\r\n }\r\n }\r\n\r\n public ImportBCBProduct(bcbproduct: BCBProductViewModel): void {\r\n var request = new BCBImportProductRequest();\r\n\r\n request.bcbProductId = bcbproduct.id;\r\n\r\n this.ImportApiClient.importBCBProduct(request).subscribe((model: BCBImportProductResponse) => {\r\n if (!model.success) {\r\n alert(model.message);\r\n }\r\n else {\r\n bcbproduct.importStatus = \"V\";\r\n\r\n var next = this.GetNextBCBProduct(bcbproduct);\r\n\r\n if (next.importStatus == \"X\") {\r\n this.ImportBCBProduct(next);\r\n }\r\n else {\r\n this.ProductsService.Reload(this.ChangeDetectorRef);\r\n }\r\n }\r\n }, (error: Response) => {\r\n alert(\"import failed for id: \" + bcbproduct.id);\r\n\r\n if (error.status == 400)\r\n console.log(error.json());\r\n else {\r\n console.log('An unexpected error occured');\r\n console.log(error);\r\n }\r\n });\r\n }\r\n\r\n public ResetImport(): void {\r\n this.ProductsService.ResetImport(-1, -1, this.ChangeDetectorRef);\r\n }\r\n\r\n public CleanUp(): void {\r\n this.ProductsService.CleanUp();\r\n }\r\n\r\n public ShowBCBProducts(product: ProductViewModel): boolean {\r\n if (this.ProductsService.ProductViewModel == product) {\r\n return true;\r\n }\r\n\r\n return false;\r\n }\r\n\r\n public SelectProduct(product: ProductViewModel) {\r\n if (this.ProductsService.ProductViewModel != product) {\r\n this.ProductsService.ProductViewModel = product;\r\n this.ProductsService.BCBProductViewModel = undefined;\r\n }\r\n }\r\n\r\n public SaveProduct(product: ProductViewModel) {\r\n this.ProductsService.SaveProductViewModel(product, this.ChangeDetectorRef);\r\n }\r\n\r\n public SelectBCBProduct(bcbproduct: BCBProductViewModel) {\r\n if (this.ProductsService.BCBProductViewModel != bcbproduct) {\r\n this.ProductsService.BCBProductViewModel = bcbproduct;\r\n }\r\n else {\r\n this.ProductsService.BCBProductViewModel = undefined;\r\n }\r\n }\r\n\r\n public GetImportStatus(product: ProductViewModel): string {\r\n var text = \"\";\r\n var active = false;\r\n\r\n var bcbproducts = product.bcbProductViewModels;\r\n if (bcbproducts != null && bcbproducts.length > 0) {\r\n var count = 0;\r\n\r\n for (var i = 0; i < bcbproducts.length; i++) {\r\n if (bcbproducts[i].importStatus != \"\") {\r\n active = true;\r\n\r\n if (bcbproducts[i].importStatus != \"X\") {\r\n count++;\r\n }\r\n }\r\n }\r\n\r\n if (active) {\r\n text = count + \"/\" + bcbproducts.length;\r\n }\r\n }\r\n\r\n return text;\r\n }\r\n\r\n public GetNextBCBProduct(bcbproduct: BCBProductViewModel): BCBProductViewModel {\r\n var products = this.ProductsService.ProductsViewModel?.productViewModels;\r\n var next: BCBProductViewModel = bcbproduct;\r\n var found = false;\r\n\r\n if (products != null && products.length > 0) {\r\n for (var i = 0; i < products.length; i++) {\r\n var bcbproducts = products[i].bcbProductViewModels;\r\n\r\n if (bcbproducts != null) {\r\n for (var j = 0; j < bcbproducts.length; j++) {\r\n if (found) {\r\n return bcbproducts[j];\r\n }\r\n\r\n if (bcbproducts[j] == bcbproduct) {\r\n found = true;\r\n }\r\n }\r\n }\r\n }\r\n }\r\n\r\n return next;\r\n }\r\n}\r\n","<app-beheer-nav></app-beheer-nav>\r\n\r\n<div *ngIf=\"ProductsService.Loading() || ImportSetsService.LoadingImportSets\">\r\n <app-fab-loader></app-fab-loader>\r\n</div>\r\n<div *ngIf=\"!ProductsService.Loading() && !ImportSetsService.LoadingImportSets\" class=\"main-block\">\r\n <mat-card>\r\n <mat-card-content>\r\n <div class=\"displayflex\">\r\n <div class=\"displayflex\">\r\n <mat-form-field appearance=\"fill\">\r\n <mat-label>Import set</mat-label>\r\n <mat-select [(ngModel)]=\"ImportSetsService.BCBImportSetSelected\">\r\n <mat-option *ngFor=\"let importset of ImportSetsService.BCBImportSetsViewModel.bcbImportSetViewModels\" [value]=\"importset.id\">\r\n {{importset.name}}\r\n </mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n \r\n </div>\r\n\r\n <div>\r\n <button mat-raised-button (click)=\"ProductsService.Reload(this.ChangeDetectorRef)\">\r\n Refresh\r\n </button>\r\n </div>\r\n\r\n <div class=\"flex-auto\" style=\"text-align: right;\">\r\n <button mat-raised-button (click)=\"ResetImport()\">\r\n Reset Import\r\n </button>\r\n <button mat-raised-button (click)=\"Import()\">\r\n Import\r\n </button>\r\n <button mat-raised-button (click)=\"CleanUp()\">\r\n CleanUp\r\n </button>\r\n </div>\r\n </div>\r\n \r\n\r\n \r\n </mat-card-content>\r\n </mat-card>\r\n\r\n <div class=\"displayflex\" *ngIf=\"this.ProductsService.ProductsViewModel != undefined\">\r\n <div class=\"tree-block\">\r\n <div class=\"limiter\">\r\n <mat-card>\r\n <mat-card-content>\r\n <table class=\"full-width\">\r\n <tr class=\"table-head\">\r\n <td></td>\r\n <td>Id</td>\r\n <td>Naam</td>\r\n <td>Variants</td>\r\n <td>Importset</td>\r\n </tr>\r\n <ng-container *ngFor=\"let product of this.ProductsService.ProductsViewModel.productViewModels\">\r\n <tr (click)=\"SelectProduct(product)\" class=\"table-row\" [ngClass]=\"{'selected' : ProductsService.ProductViewModel == product, 'warning': !product.imported || !product.connected}\">\r\n <td><span class=\"importspan\">{{ GetImportStatus(product) }}</span></td>\r\n <td>{{ product.id }}</td>\r\n <td>{{ product.name }}</td>\r\n <td>{{ product.bcbProductViewModels.length }}</td>\r\n <td>\r\n <select [(ngModel)]=\"product.importSetId\" (change)=\"SaveProduct(product)\" class=\"full-width\">\r\n <option *ngFor=\"let importset of ImportSetsService.BCBImportSetsViewModel.bcbImportSetViewModels\" [value]=\"importset.id\">{{importset.name}}</option>\r\n </select>\r\n </td>\r\n </tr>\r\n <ng-container *ngIf=\"ShowBCBProducts(product)\">\r\n <tr>\r\n <td> </td>\r\n </tr>\r\n <tr *ngFor=\"let bcbproduct of ProductsService.ProductViewModel.bcbProductViewModels\" class=\"table-row\" [ngClass]=\"{'selected' : ProductsService.BCBProductViewModel == bcbproduct, 'warning': !bcbproduct.imported || !bcbproduct.connected}\" (click)=\"SelectBCBProduct(bcbproduct)\">\r\n <td><span class=\"importspan\">{{ bcbproduct.importStatus }}</span></td>\r\n <td>{{ bcbproduct.id }}</td>\r\n <td colspan=\"3\">{{ bcbproduct.name }}</td>\r\n </tr>\r\n <tr>\r\n <td> </td>\r\n </tr>\r\n </ng-container>\r\n </ng-container>\r\n </table>\r\n </mat-card-content>\r\n </mat-card>\r\n </div>\r\n </div>\r\n\r\n <div class=\"main-content\">\r\n <div class=\"limiter\">\r\n <app-beheer-products-product *ngIf=\"ProductsService.ProductViewModel != undefined && ProductsService.BCBProductViewModel == undefined\" [ProductViewModel]=\"ProductsService.ProductViewModel\"></app-beheer-products-product>\r\n <app-beheer-products-bcbproduct *ngIf=\"ProductsService.BCBProductViewModel != undefined\" [BCBProductViewModel]=\"ProductsService.BCBProductViewModel\"></app-beheer-products-bcbproduct>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n\r\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-beheer-filters',\n templateUrl: './beheer-filters.component.html',\n styleUrls: ['./beheer-filters.component.scss']\n})\nexport class BeheerFiltersComponent implements OnInit {\n\n constructor() { }\n\n ngOnInit(): void {\n }\n\n}\n","<app-beheer-nav></app-beheer-nav>\r\n","import { Component, Input, OnInit } from '@angular/core';\nimport { ProjectSettingService } from '../../../../services/projectsetting.service';\r\nimport { ProjectSettingViewModel } from '../../../../swagger/SwaggerClient';\r\n\n@Component({\n selector: 'app-beheer-settings-options',\n templateUrl: './beheer-settings-options.component.html',\n styleUrls: ['./beheer-settings-options.component.scss']\n})\nexport class BeheerSettingsOptionsComponent implements OnInit {\n\n @Input() projectsetting: ProjectSettingViewModel; \n\n constructor(public projectsettingservice: ProjectSettingService) { }\n\n ngOnInit(): void {\n }\n\n}\n","<div class=\"row\" *ngIf=\"projectsetting != null\">\r\n <div *ngIf=\"!projectsetting.default\">\r\n <button mat-raised-button (click)=\"projectsettingservice.Reset(projectsetting)\">\r\n Reset\r\n </button>\r\n </div>\r\n <div class=\"expand\">\r\n <mat-form-field appearance=\"fill\" class=\"fullwidth\">\r\n <mat-label>Default</mat-label>\r\n <mat-select [(value)]=\"projectsetting.defaultValue\" [disabled]=\"!projectsetting.default\" (selectionChange)=\"projectsettingservice.Save(projectsetting)\">\r\n <mat-option value=\"{{ option }}\" *ngFor=\"let option of projectsetting.options\">\r\n {{ option }}\r\n </mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n </div>\r\n</div>\r\n<div *ngIf=\"projectsetting != null && projectsetting.pipelineSteps != null && projectsetting.pipelineSteps.length > 0\">\r\n <div *ngFor=\"let pipeline of projectsetting.pipelineSteps\">\r\n <div class=\"row\">\r\n <div *ngIf=\"!pipeline.default\">\r\n <button mat-raised-button (click)=\"projectsettingservice.ResetPipelineStep(projectsetting, pipeline)\">\r\n Reset\r\n </button>\r\n </div>\r\n <div class=\"expand\">\r\n <mat-form-field appearance=\"fill\" class=\"fullwidth\">\r\n <mat-label>{{ pipeline.pipelineStep }}</mat-label>\r\n <mat-select [(value)]=\"pipeline.value\" [disabled]=\"!pipeline.default\" (selectionChange)=\"projectsettingservice.SavePipelineStep(projectsetting, pipeline)\">\r\n <mat-option value=\"{{ option }}\" *ngFor=\"let option of projectsetting.options\">\r\n {{ option }}\r\n </mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n","import { Component, Input, OnInit } from '@angular/core';\nimport { ProjectSettingService } from '../../../../services/projectsetting.service';\r\nimport { ProjectSettingViewModel } from '../../../../swagger/SwaggerClient';\r\n\n@Component({\n selector: 'app-beheer-settings-string',\n templateUrl: './beheer-settings-string.component.html',\n styleUrls: ['./beheer-settings-string.component.scss']\n})\nexport class BeheerSettingsStringComponent implements OnInit {\n\n @Input() projectsetting: ProjectSettingViewModel;\n\n constructor(public projectsettingservice: ProjectSettingService) { }\n\n ngOnInit(): void {\n }\n\n}\n","<div class=\"row\" *ngIf=\"projectsetting != null\">\r\n <div *ngIf=\"!projectsetting.default\">\r\n <button mat-raised-button (click)=\"projectsettingservice.Reset(projectsetting)\">\r\n Reset\r\n </button>\r\n </div>\r\n <div class=\"expand\">\r\n <mat-form-field appearance=\"fill\" class=\"fullwidth\">\r\n <mat-label>Default</mat-label>\r\n <input matInput [(ngModel)]=\"projectsetting.defaultValue\" [disabled]=\"!projectsetting.default\">\r\n </mat-form-field>\r\n </div>\r\n <div *ngIf=\"projectsetting.default\">\r\n <button mat-raised-button (click)=\"projectsettingservice.Save(projectsetting)\">\r\n Save\r\n </button>\r\n </div>\r\n</div>\r\n<div *ngIf=\"projectsetting != null && projectsetting.pipelineSteps != null && projectsetting.pipelineSteps.length > 0\">\r\n <div *ngFor=\"let pipeline of projectsetting.pipelineSteps\">\r\n <div class=\"row\">\r\n <div *ngIf=\"!pipeline.default\">\r\n <button mat-raised-button (click)=\"projectsettingservice.ResetPipelineStep(projectsetting, pipeline)\">\r\n Reset\r\n </button>\r\n </div>\r\n <div class=\"expand\">\r\n <mat-form-field appearance=\"fill\">\r\n <mat-label>{{ pipeline.pipelineStep }}</mat-label>\r\n <input matInput [(ngModel)]=\"pipeline.value\" [disabled]=\"!pipeline.default\">\r\n </mat-form-field>\r\n </div>\r\n <div *ngIf=\"pipeline.default\">\r\n <button mat-raised-button (click)=\"projectsettingservice.SavePipelineStep(projectsetting, pipeline)\">\r\n Save\r\n </button>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n","import { ChangeDetectorRef, Component, OnInit } from '@angular/core';\r\nimport { ProjectSettingService } from '../../../services/projectsetting.service';\r\n\r\n@Component({\r\n selector: 'app-beheer-settings',\r\n templateUrl: './beheer-settings.component.html',\r\n styleUrls: ['./beheer-settings.component.scss']\r\n})\r\nexport class BeheerSettingsComponent implements OnInit {\r\n\r\n constructor(public projectsettingservice: ProjectSettingService, private ChangeDetectorRef: ChangeDetectorRef) {\r\n }\r\n\r\n ngOnInit(): void {\r\n this.projectsettingservice.LoadProjectSettings(this.ChangeDetectorRef);\r\n }\r\n}\r\n","<app-beheer-nav></app-beheer-nav>\r\n\r\n<div *ngIf=\"projectsettingservice.Loading\">\r\n <app-fab-loader></app-fab-loader>\r\n</div>\r\n<div *ngIf=\"!projectsettingservice.Loading\">\r\n <div class=\"pipeline-row\">\r\n <div class=\"pipeline-block\">\r\n Pipeline step: <span class=\"pipeline-info\">{{ projectsettingservice.ProjectSettingsViewModel.pipelineStep }}</span>\r\n </div>\r\n </div>\r\n\r\n <mat-accordion>\r\n <mat-expansion-panel *ngFor=\"let projectsetting of projectsettingservice.ProjectSettingsViewModel.projectSettingViewModels\">\r\n <mat-expansion-panel-header>\r\n <mat-panel-title>\r\n {{ projectsetting.name }}\r\n </mat-panel-title>\r\n <mat-panel-description>\r\n {{ projectsetting.activeValue }}\r\n </mat-panel-description>\r\n </mat-expansion-panel-header>\r\n <div>\r\n <app-beheer-settings-string *ngIf=\"projectsetting.projectSettingType == 1\" [projectsetting]=\"projectsetting\"></app-beheer-settings-string>\r\n <app-beheer-settings-options *ngIf=\"projectsetting.projectSettingType == 2\" [projectsetting]=\"projectsetting\"></app-beheer-settings-options>\r\n \r\n </div>\r\n </mat-expansion-panel>\r\n </mat-accordion>\r\n\r\n</div>\r\n","import { Component, OnInit, Inject } from '@angular/core';\r\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport { SearchProductsApiClient, NewProductRequestModel, GetProductsViewModel } from '../../../../swagger/SwaggerClient';\r\n\r\n@Component({\r\n selector: 'app-beheer-searchproducts-koppel-dialog',\r\n templateUrl: './beheer-searchproducts-koppel-dialog.component.html',\r\n styleUrls: ['./beheer-searchproducts-koppel-dialog.component.scss']\r\n})\r\nexport class BeheerSearchproductsKoppelDialogComponent implements OnInit {\r\n public Loading: boolean = false;\r\n public NaamNieuw: string = \"\";\r\n public Suggestion: Array<string>;\r\n public GetProductsViewModel: GetProductsViewModel;\r\n public ProductSelected: number = -1;\r\n\r\n constructor(public dialogRef: MatDialogRef<BeheerSearchproductsKoppelDialogComponent>, private SearchProductsApiClient: SearchProductsApiClient, @Inject(MAT_DIALOG_DATA) public data: any) {\r\n this.Suggestion = data.suggestion;\r\n }\r\n\r\n ngOnInit(): void {\r\n this.LoadProducts();\r\n }\r\n\r\n public BestaandToevoegen(): void {\r\n this.dialogRef.close(this.ProductSelected);\r\n }\r\n\r\n public NieuwToevoegen(): void {\r\n this.Loading = true;\r\n\r\n var model: NewProductRequestModel = new NewProductRequestModel();\r\n\r\n model.productName = this.NaamNieuw;\r\n\r\n this.SearchProductsApiClient.addNewProduct(model).subscribe(model => {\r\n this.Loading = false;\r\n\r\n this.dialogRef.close(model.productId);\r\n }, (error: Response) => {\r\n if (error.status == 400)\r\n console.log(error.json());\r\n else {\r\n console.log('An unexpected error occured');\r\n console.log(error);\r\n }\r\n\r\n this.Loading = false;\r\n });\r\n }\r\n\r\n public LosKenmerk(): void {\r\n this.dialogRef.close(-2);\r\n }\r\n\r\n public handleKeyUp(e: any) {\r\n if (e.keyCode === 13) {\r\n this.NieuwToevoegen();\r\n }\r\n }\r\n\r\n private LoadProducts(): void {\r\n this.Loading = true;\r\n\r\n this.SearchProductsApiClient.getProductsViewModel().subscribe(model => {\r\n this.GetProductsViewModel = model;\r\n\r\n var array = this.GetProductsViewModel?.productViewModels;\r\n\r\n if (array != null && array.length > 0) {\r\n var id = array[0].id;\r\n if (id != null) {\r\n this.ProductSelected = id;\r\n }\r\n }\r\n\r\n this.Loading = false;\r\n }, (error: Response) => {\r\n if (error.status == 400)\r\n console.log(error.json());\r\n else {\r\n console.log('An unexpected error occured');\r\n console.log(error);\r\n }\r\n\r\n this.Loading = false;\r\n });\r\n }\r\n}\r\n","<div *ngIf=\"Loading\">\r\n <app-fab-loader></app-fab-loader>\r\n</div>\r\n\r\n<div *ngIf=\"!Loading\">\r\n <mat-tab-group>\r\n <mat-tab label=\"Nieuw\">\r\n <div class=\"bar\" *ngIf=\"Suggestion.length > 0\">\r\n <button *ngFor=\"let sugg of Suggestion\" mat-raised-button (click)=\"NaamNieuw = sugg;\">{{ sugg }}</button>\r\n </div>\r\n <div class=\"bar\">\r\n <mat-form-field appearance=\"fill\" class=\"full-width\">\r\n <mat-label>Naam</mat-label>\r\n <input matInput (keyup)=\"handleKeyUp($event)\" [(ngModel)]=\"NaamNieuw\">\r\n </mat-form-field>\r\n </div>\r\n\r\n <div class=\"bar tool-bar\">\r\n <button mat-raised-button (click)=\"NieuwToevoegen()\">Toevoegen</button>\r\n </div>\r\n </mat-tab>\r\n <mat-tab label=\"Bestaand\">\r\n\r\n <div class=\"bar\">\r\n <mat-form-field appearance=\"fill\" class=\"full-width\">\r\n <mat-label>Product</mat-label>\r\n <mat-select [(ngModel)]=\"ProductSelected\">\r\n <mat-option *ngFor=\"let product of GetProductsViewModel.productViewModels\" [value]=\"product.id\">\r\n {{product.name}}\r\n </mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n </div>\r\n\r\n <div class=\"bar tool-bar\">\r\n <button mat-raised-button (click)=\"BestaandToevoegen()\">Toevoegen</button>\r\n </div>\r\n </mat-tab>\r\n <mat-tab label=\"Los\">\r\n <div class=\"bar tool-bar\">\r\n <button mat-raised-button (click)=\"LosKenmerk()\">Kenmerk</button>\r\n </div>\r\n </mat-tab>\r\n </mat-tab-group>\r\n</div>\r\n","import { Component, OnInit, ViewEncapsulation } from '@angular/core';\r\nimport { MatSnackBar, MatSnackBarConfig } from '@angular/material/snack-bar';\r\nimport { ThemePalette } from '@angular/material/core';\r\n\r\nimport { SearchProductsApiClient, SearchProductsRequestModel, SearchProductsResponseModel, WizardEBOViewModel, KoppelProductsRequestModel } from '../../../swagger/SwaggerClient';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { BeheerSearchproductsKoppelDialogComponent } from './beheer-searchproducts-koppel-dialog/beheer-searchproducts-koppel-dialog.component';\r\n\r\n@Component({\r\n selector: 'app-beheer-searchproducts',\r\n templateUrl: './beheer-searchproducts.component.html',\r\n styleUrls: ['./beheer-searchproducts.component.scss'],\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class BeheerSearchProductsComponent implements OnInit {\r\n\r\n public Loading: boolean = false;\r\n public ZoekTerm: string = \"\";\r\n public Primary: ThemePalette = \"primary\";\r\n public SelectProducts: boolean = false;\r\n\r\n public BOT: string = \"\";\r\n public DO1Type: string = \"\";\r\n public DO1Naam: string = \"\";\r\n public DO2Type: string = \"\";\r\n public DO2Naam: string = \"\";\r\n public DO3Type: string = \"\";\r\n public DO3Naam: string = \"\";\r\n public DO4Type: string = \"\";\r\n public DO4Naam: string = \"\";\r\n public Kenmerk: string = \"\";\r\n\r\n public SearchProductsResponseModel: SearchProductsResponseModel;\r\n\r\n constructor(public dialog: MatDialog, private SearchProductsApiClient: SearchProductsApiClient, private snackBar: MatSnackBar) { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n public GetEbos(inuse: boolean): Array<WizardEBOViewModel> {\r\n if (this.SearchProductsResponseModel != null && this.SearchProductsResponseModel.eboViewModels != null) {\r\n var list = new Array<WizardEBOViewModel>();\r\n\r\n var temp = this.SearchProductsResponseModel.eboViewModels as Array<WizardEBOViewModel>;\r\n for (var i = 0; i < this.SearchProductsResponseModel.eboViewModels.length; i++) {\r\n var add = true;\r\n\r\n if (inuse) {\r\n if (this.SearchProductsResponseModel.eboViewModels[i].inUseBy == \"\") {\r\n add = false;\r\n }\r\n }\r\n else {\r\n if (this.SearchProductsResponseModel.eboViewModels[i].inUseBy != \"\") {\r\n add = false;\r\n }\r\n }\r\n\r\n if (add) {\r\n var array = this.SearchProductsResponseModel.eboViewModels[i].dOs;\r\n\r\n if (array != null) {\r\n for (var j = 0; j < array.length; j++) {\r\n var dotype = array[j].doType?.toLowerCase() + \"\";\r\n var donaam = array[j].doNaam?.toLowerCase() + \"\";\r\n\r\n if (dotype == 'bot') {\r\n if (this.BOT != \"\" && donaam.indexOf(this.BOT.toLowerCase()) == -1) {\r\n add = false;\r\n break;\r\n }\r\n }\r\n else if (dotype == 'kenmerk') {\r\n if (this.Kenmerk != \"\" && donaam.indexOf(this.Kenmerk.toLowerCase()) == -1) {\r\n add = false;\r\n break;\r\n }\r\n }\r\n else if (j == 1) {\r\n if (this.DO1Naam != \"\" && donaam.indexOf(this.DO1Naam.toLowerCase()) == -1) {\r\n add = false;\r\n break;\r\n }\r\n\r\n if (this.DO1Type != \"\" && dotype.indexOf(this.DO1Type.toLowerCase()) == -1) {\r\n add = false;\r\n break;\r\n }\r\n }\r\n else if (j == 2) {\r\n if (this.DO2Naam != \"\" && donaam.indexOf(this.DO2Naam.toLowerCase()) == -1) {\r\n add = false;\r\n break;\r\n }\r\n\r\n if (this.DO2Type != \"\" && dotype.indexOf(this.DO2Type.toLowerCase()) == -1) {\r\n add = false;\r\n break;\r\n }\r\n }\r\n else if (j == 3) {\r\n if (this.DO3Naam != \"\" && donaam.indexOf(this.DO3Naam.toLowerCase()) == -1) {\r\n add = false;\r\n break;\r\n }\r\n\r\n if (this.DO3Type != \"\" && dotype.indexOf(this.DO3Type.toLowerCase()) == -1) {\r\n add = false;\r\n break;\r\n }\r\n }\r\n else if (j == 4) {\r\n if (this.DO4Naam != \"\" && donaam.indexOf(this.DO4Naam.toLowerCase()) == -1) {\r\n add = false;\r\n break;\r\n }\r\n\r\n if (this.DO4Type != \"\" && dotype.indexOf(this.DO4Type.toLowerCase()) == -1) {\r\n add = false;\r\n break;\r\n }\r\n }\r\n }\r\n }\r\n }\r\n\r\n if (add) {\r\n list.push(this.SearchProductsResponseModel.eboViewModels[i]);\r\n }\r\n\r\n }\r\n\r\n return list;\r\n }\r\n\r\n return new Array<WizardEBOViewModel>();\r\n }\r\n\r\n public Zoek(): void {\r\n this.Loading = true;\r\n this.SelectProducts = false;\r\n\r\n var model: SearchProductsRequestModel = new SearchProductsRequestModel();\r\n\r\n model.value = this.ZoekTerm;\r\n\r\n this.SearchProductsApiClient.getSearchResults(model).subscribe(model => {\r\n this.SearchProductsResponseModel = model;\r\n this.Loading = false;\r\n this.UpdateSnackBar();\r\n }, (error: Response) => {\r\n if (error.status == 400)\r\n console.log(error.json());\r\n else {\r\n console.log('An unexpected error occured');\r\n console.log(error);\r\n }\r\n\r\n this.Loading = false;\r\n this.UpdateSnackBar();\r\n });\r\n }\r\n\r\n public UpdateSnackBar(): void {\r\n var count = this.GetSelectedCount();\r\n\r\n if (count > 0) {\r\n var snack = this.snackBar.open(count + \" product(en) geselecteerd.\", \"Koppel\");\r\n\r\n snack.onAction().subscribe(() => {\r\n this.Koppel();\r\n });\r\n }\r\n else {\r\n this.snackBar.dismiss();\r\n }\r\n }\r\n\r\n public handleKeyUp(e: any) {\r\n if (e.keyCode === 13) {\r\n this.Zoek();\r\n }\r\n }\r\n\r\n public SelectProductsClick(): void {\r\n if (this.SearchProductsResponseModel?.eboViewModels != null) {\r\n if (this.SelectProducts) {\r\n for (var i = 0; i < this.SearchProductsResponseModel.eboViewModels.length; i++) {\r\n this.SearchProductsResponseModel.eboViewModels[i].selected = true;\r\n }\r\n } else {\r\n for (var i = 0; i < this.SearchProductsResponseModel.eboViewModels.length; i++) {\r\n this.SearchProductsResponseModel.eboViewModels[i].selected = false;\r\n }\r\n }\r\n\r\n this.UpdateSnackBar();\r\n }\r\n }\r\n\r\n public Koppel(): void {\r\n var dialogRef = this.dialog.open(BeheerSearchproductsKoppelDialogComponent, {\r\n data: {\r\n suggestion: this.GetSuggestion()\r\n }\r\n });\r\n\r\n dialogRef.afterClosed().subscribe(result => {\r\n if (result != null) {\r\n if (result > 0) {\r\n this.Loading = true;\r\n\r\n var model: KoppelProductsRequestModel = new KoppelProductsRequestModel();\r\n\r\n model.productId = result;\r\n model.searchProductEBOModels = new Array<WizardEBOViewModel>();\r\n\r\n var products = this.GetEbos(false);\r\n\r\n for (var i = 0; i < products.length; i++) {\r\n if (products[i].selected) {\r\n model.searchProductEBOModels.push(products[i]);\r\n }\r\n }\r\n\r\n this.SearchProductsApiClient.koppelProducts(model).subscribe(() => {\r\n this.Zoek();\r\n }, (error: Response) => {\r\n if (error.status == 400)\r\n console.log(error.json());\r\n else {\r\n console.log('An unexpected error occured');\r\n console.log(error);\r\n }\r\n\r\n this.Zoek();\r\n });\r\n }\r\n else if (result == -2) {\r\n this.Loading = true;\r\n\r\n var model: KoppelProductsRequestModel = new KoppelProductsRequestModel();\r\n\r\n model.productId = 0;\r\n model.searchProductEBOModels = new Array<WizardEBOViewModel>();\r\n\r\n var products = this.GetEbos(false);\r\n\r\n for (var i = 0; i < products.length; i++) {\r\n if (products[i].selected) {\r\n model.searchProductEBOModels.push(products[i]);\r\n }\r\n }\r\n\r\n this.SearchProductsApiClient.koppelProductsKenmerk(model).subscribe(() => {\r\n this.Zoek();\r\n }, (error: Response) => {\r\n if (error.status == 400)\r\n console.log(error.json());\r\n else {\r\n console.log('An unexpected error occured');\r\n console.log(error);\r\n }\r\n\r\n this.Zoek();\r\n });\r\n }\r\n }\r\n });\r\n }\r\n\r\n public SelectAll(): void {\r\n var ebos = this.GetEbos(false);\r\n\r\n for (var i = 0; i < ebos.length; i++) {\r\n ebos[i].selected = true;\r\n }\r\n\r\n this.UpdateSnackBar();\r\n }\r\n\r\n public SelectRow(row: any): void {\r\n if (row.inUseBy == '') {\r\n row.selected = !row.selected;\r\n this.UpdateSnackBar();\r\n }\r\n }\r\n\r\n public ShowCell(doType: string): boolean {\r\n if (doType.toLowerCase() == 'bot') {\r\n return false;\r\n }\r\n\r\n if (doType.toLowerCase() == 'kenmerk') {\r\n return false;\r\n }\r\n\r\n return true;\r\n }\r\n\r\n private GetSelectedCount(): number {\r\n var count = 0;\r\n var ebos = this.GetEbos(false);\r\n\r\n for (var i = 0; i < ebos.length; i++) {\r\n if (ebos[i].selected) {\r\n count++;\r\n }\r\n }\r\n\r\n return count;\r\n }\r\n\r\n private GetSuggestion(): Array<string> {\r\n var merkserie = \"\";\r\n var array = new Array<string>();\r\n var arraykenmerk = new Array<string>();\r\n var count = 0;\r\n var ebos = this.GetEbos(false);\r\n\r\n for (var i = 0; i < ebos.length; i++) {\r\n if (ebos[i].selected) {\r\n var arraytemp = ebos[i].dOs;\r\n if (arraytemp != undefined) {\r\n for (var j = 0; j < arraytemp.length; j++) {\r\n if (arraytemp[j].doType?.toLowerCase() == \"merk serie\") {\r\n merkserie = arraytemp[j].doNaam as string;\r\n }\r\n\r\n if (arraytemp[j].doType?.toLowerCase() == \"kenmerk\") {\r\n arraykenmerk.push(arraytemp[j].doNaam as string);\r\n }\r\n }\r\n }\r\n }\r\n }\r\n\r\n array.push(merkserie);\r\n\r\n for (var i = 0; i < arraykenmerk.length && i < 3; i++) {\r\n array.push(arraykenmerk[i]);\r\n }\r\n\r\n return array;\r\n }\r\n}\r\n","<app-beheer-nav></app-beheer-nav>\r\n\r\n<div class=\"main-window\">\r\n <div>\r\n <mat-card>\r\n <div class=\"main-block-search\">\r\n <div class=\"block\">\r\n <mat-form-field appearance=\"fill\" class=\"full-width\">\r\n <mat-label>Zoekterm</mat-label>\r\n <input matInput placeholder=\"bv. Merk Serie\" (keyup)=\"handleKeyUp($event)\" [(ngModel)]=\"ZoekTerm\">\r\n </mat-form-field>\r\n </div>\r\n <div class=\"zoeken-block\">\r\n <button mat-raised-button (click)=\"Zoek()\" [disabled]=\"Loading\">Zoeken</button>\r\n </div>\r\n </div>\r\n </mat-card>\r\n\r\n <div *ngIf=\"Loading\">\r\n <app-fab-loader></app-fab-loader>\r\n </div>\r\n\r\n <div *ngIf=\"!Loading\" class=\"resultblock\">\r\n <mat-card>\r\n <mat-card-content>\r\n <table class=\"ebo-table\">\r\n <tr>\r\n <td>\r\n <button mat-raised-button (click)=\"SelectAll()\" class=\"selectall\">V</button>\r\n </td>\r\n <td>\r\n <mat-form-field appearance=\"fill\" class=\"full-width\">\r\n <mat-label>BOT</mat-label>\r\n <input matInput [(ngModel)]=\"BOT\">\r\n </mat-form-field>\r\n </td>\r\n <td>\r\n <mat-form-field appearance=\"fill\" class=\"full-width\">\r\n <mat-label>DO1Type</mat-label>\r\n <input matInput [(ngModel)]=\"DO1Type\">\r\n </mat-form-field>\r\n </td>\r\n <td>\r\n <mat-form-field appearance=\"fill\" class=\"full-width\">\r\n <mat-label>DO1Naam</mat-label>\r\n <input matInput [(ngModel)]=\"DO1Naam\">\r\n </mat-form-field>\r\n </td>\r\n <td>\r\n <mat-form-field appearance=\"fill\" class=\"full-width\">\r\n <mat-label>DO2Type</mat-label>\r\n <input matInput [(ngModel)]=\"DO2Type\">\r\n </mat-form-field>\r\n </td>\r\n <td>\r\n <mat-form-field appearance=\"fill\" class=\"full-width\">\r\n <mat-label>DO2Naam</mat-label>\r\n <input matInput [(ngModel)]=\"DO2Naam\">\r\n </mat-form-field>\r\n </td>\r\n <td>\r\n <mat-form-field appearance=\"fill\" class=\"full-width\">\r\n <mat-label>DO3Type</mat-label>\r\n <input matInput [(ngModel)]=\"DO3Type\">\r\n </mat-form-field>\r\n </td>\r\n <td>\r\n <mat-form-field appearance=\"fill\" class=\"full-width\">\r\n <mat-label>DO3Naam</mat-label>\r\n <input matInput [(ngModel)]=\"DO3Naam\">\r\n </mat-form-field>\r\n </td>\r\n <td>\r\n <mat-form-field appearance=\"fill\" class=\"full-width\">\r\n <mat-label>DO4Type</mat-label>\r\n <input matInput [(ngModel)]=\"DO4Type\">\r\n </mat-form-field>\r\n </td>\r\n <td>\r\n <mat-form-field appearance=\"fill\" class=\"full-width\">\r\n <mat-label>DO4Naam</mat-label>\r\n <input matInput [(ngModel)]=\"DO4Naam\">\r\n </mat-form-field>\r\n </td>\r\n <td>\r\n <mat-form-field appearance=\"fill\" class=\"full-width\">\r\n <mat-label>Kenmerk</mat-label>\r\n <input matInput [(ngModel)]=\"Kenmerk\">\r\n </mat-form-field>\r\n </td>\r\n </tr>\r\n <tr *ngFor=\"let ebo of GetEbos(false)\" class=\"table-row\" (click)=\"SelectRow(ebo)\">\r\n <td>\r\n <div *ngIf=\"ebo.inUseBy == ''\">\r\n <mat-checkbox class=\"row-check\" [(ngModel)]=\"ebo.selected\" [color]=\"Primary\" (change)=\"UpdateSnackBar()\"></mat-checkbox>\r\n </div>\r\n </td>\r\n <ng-container *ngFor=\"let do of ebo.dOs\">\r\n <td *ngIf=\"ShowCell(do.doType)\">{{ do.doType }}</td>\r\n <td>{{ do.doNaam }}</td>\r\n </ng-container>\r\n </tr>\r\n <tr *ngFor=\"let ebo of GetEbos(true)\" class=\"table-row\" (click)=\"SelectRow(ebo)\">\r\n <td>\r\n <div *ngIf=\"ebo.inUseBy == ''\">\r\n <mat-checkbox class=\"row-check\" [(ngModel)]=\"ebo.selected\" [color]=\"Primary\" (change)=\"UpdateSnackBar()\"></mat-checkbox>\r\n </div>\r\n </td>\r\n <ng-container *ngFor=\"let do of ebo.dOs\">\r\n <td *ngIf=\"ShowCell(do.doType)\">{{ do.doType }}</td>\r\n <td>{{ do.doNaam }}</td>\r\n </ng-container>\r\n </tr>\r\n </table>\r\n </mat-card-content>\r\n </mat-card>\r\n </div>\r\n </div>\r\n</div>\r\n","import { Component, Inject, OnInit } from '@angular/core';\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport { SaveImportSetRequest, ImportApiClient } from '../../../../swagger/SwaggerClient';\r\n\n@Component({\n selector: 'app-beheer-import-sets-dialog',\n templateUrl: './beheer-import-sets-dialog.component.html',\n styleUrls: ['./beheer-import-sets-dialog.component.scss']\n})\nexport class BeheerImportSetsDialogComponent implements OnInit {\n\n public id: number;\n public name: string;\n\n public Loading: boolean = false;\n\n constructor(public dialogRef: MatDialogRef<BeheerImportSetsDialogComponent>, @Inject(MAT_DIALOG_DATA) public data: any, private ImportApiClient: ImportApiClient) {\n this.id = data.id;\n this.name = data.name;\n }\n\n ngOnInit(): void {\n }\n\n public Opslaan(): void {\n this.Loading = true;\r\n\r\n var model: SaveImportSetRequest = new SaveImportSetRequest();\r\n\r\n model.id = this.id;\r\n model.name = this.name;\r\n\r\n this.ImportApiClient.saveImportSet(model).subscribe(() => {\r\n this.Loading = false;\r\n\r\n this.dialogRef.close();\r\n }, (error: Response) => {\r\n if (error.status == 400)\r\n console.log(error.json());\r\n else {\r\n console.log('An unexpected error occured');\r\n console.log(error);\r\n }\r\n\r\n this.Loading = false;\r\n });\r\n }\n}\n","<div *ngIf=\"Loading\">\r\n <app-fab-loader></app-fab-loader>\r\n</div>\r\n\r\n<div *ngIf=\"!Loading\">\r\n <mat-form-field appearance=\"fill\">\r\n <mat-label>Naam</mat-label>\r\n <input matInput [(ngModel)]=\"name\">\r\n </mat-form-field>\r\n\r\n <button mat-raised-button (click)=\"Opslaan()\">Opslaan</button>\r\n</div>\r\n","import { ChangeDetectorRef, Component, Input, OnInit } from '@angular/core';\nimport { ImportSetsService } from '../../../../services/importsets.service';\r\nimport { BCBImportEigenschap } from '../../../../swagger/SwaggerClient';\r\n\n@Component({\n selector: 'app-beheer-import-sets-eigenschap',\n templateUrl: './beheer-import-sets-eigenschap.component.html',\n styleUrls: ['./beheer-import-sets-eigenschap.component.scss']\n})\nexport class BeheerImportSetsEigenschapComponent implements OnInit {\n\n @Input() eigenschap: BCBImportEigenschap;\n\n constructor(private ImportSetsService: ImportSetsService, private ChangeDetectorRef: ChangeDetectorRef) { }\n\n ngOnInit(): void {\n }\n\n public UpdateSelected(): void {\n this.eigenschap.selected = !this.eigenschap.selected;\n\n var base: string = this.eigenschap.base + \"\";\n\n if (base != \"\") {\n base += \"#\";\r\n }\n\n base += this.eigenschap.value + \"\";\n\n this.ImportSetsService.ChangeImportSetValue(base, this.eigenschap.selected, this.ChangeDetectorRef);\r\n }\n\n}\n","<div class=\"top-row\">\n <div class=\"text-div flexauto\" (click)=\"UpdateSelected()\">\n {{ eigenschap.name }}\n </div>\n <div class=\"check-div\">\n <mat-checkbox [checked]=\"eigenschap.selected\" (change)=\"UpdateSelected()\"></mat-checkbox>\n </div>\n</div>\n","import { ChangeDetectorRef, Component, Input, OnInit, ViewEncapsulation } from '@angular/core';\r\nimport { BCBImportOpenTempRequest, BCBImportOpenTempDORequest, BCBImportOpenResponse, ImportApiClient, WizardEBOViewModel } from '../../../../swagger/SwaggerClient';\r\n\r\n@Component({\r\n selector: 'app-beheer-import-sets-ebo',\r\n templateUrl: './beheer-import-sets-ebo.component.html',\r\n styleUrls: ['./beheer-import-sets-ebo.component.scss'],\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class BeheerImportSetsEboComponent implements OnInit {\r\n\r\n public Opened: boolean = false;\r\n public Loading: boolean = true;\r\n\r\n public BCBImportOpenResponse: BCBImportOpenResponse;\r\n\r\n @Input() ebo: WizardEBOViewModel; \r\n\r\n constructor(private ImportApiClient: ImportApiClient, private ImportSetsService: ImportSetsService) { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n public Open(): void {\r\n if (!this.Opened) {\r\n this.Loading = true;\r\n this.Opened = true;\r\n var array = this.ebo.dOs;\r\n\r\n if (array != null) {\r\n\r\n var request = new BCBImportOpenTempRequest();\r\n request.dOs = new Array<BCBImportOpenTempDORequest>();\r\n request.base = this.ebo.base;\r\n request.bcbImportSetId = this.ImportSetsService.BCBImportSetSelected;\r\n\r\n for (var i = 0; i < array.length; i++) {\r\n var newdo = new BCBImportOpenTempDORequest();\r\n\r\n newdo.naam = array[i].doNaam;\r\n newdo.type = array[i].doType;\r\n\r\n request.dOs.push(newdo);\r\n }\r\n\r\n this.ImportApiClient.openEBO(request).subscribe((model: BCBImportOpenResponse) => {\r\n this.BCBImportOpenResponse = model;\r\n this.Loading = false;\r\n });\r\n }\r\n }\r\n else {\r\n this.Opened = false;\r\n }\r\n }\r\n\r\n}\r\n\r\nimport { ImportSetsService } from '../../../../services/importsets.service';\r\nimport { BCBImportOpbouw } from '../../../../swagger/SwaggerClient';\r\n\r\n@Component({\r\n selector: 'app-beheer-import-sets-opbouw',\r\n templateUrl: './beheer-import-sets-opbouw.component.html',\r\n styleUrls: ['./beheer-import-sets-opbouw.component.scss']\r\n})\r\nexport class BeheerImportSetsOpbouwComponent implements OnInit {\r\n\r\n @Input() opbouw: BCBImportOpbouw;\r\n\r\n constructor(private ImportSetsService: ImportSetsService, private ChangeDetectorRef: ChangeDetectorRef) { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n public Toggle(): void {\r\n if (this.opbouw.wizardEBOViewModels != null && this.opbouw.wizardEBOViewModels.length > 0) {\r\n this.opbouw.open = !this.opbouw.open;\r\n }\r\n else {\r\n this.UpdateSelected();\r\n }\r\n }\r\n\r\n public UpdateSelected(): void {\r\n this.opbouw.selected = !this.opbouw.selected;\r\n\r\n var base: string = this.opbouw.base + \"\";\r\n\r\n if (base != \"\") {\r\n base += \"#\";\r\n }\r\n\r\n base += this.opbouw.value + \"\";\r\n\r\n this.ImportSetsService.ChangeImportSetValue(base, this.opbouw.selected, this.ChangeDetectorRef);\r\n }\r\n}\r\n\r\n","<div class=\"row\">\n <div class=\"icon-div\" (click)=\"Open()\">\n <mat-icon *ngIf=\"!Opened\">expand_more</mat-icon>\n <mat-icon *ngIf=\"Opened\">expand_less</mat-icon>\n </div>\n <div class=\"text-div\">\n <div class=\"row\">\n <div class=\"flex-auto text-box\" *ngFor=\"let do of ebo.dOs\">\n <mat-form-field class=\"full-width\" appearance=\"fill\">\n <mat-label>{{ do.doType }}</mat-label>\n <input matInput value=\"{{do.doNaam}}\" [readonly]=\"true\">\n </mat-form-field>\n </div>\n </div>\n </div>\n</div>\n<div *ngIf=\"Opened\">\n <div *ngIf=\"Loading\">\n <app-fab-loader></app-fab-loader>\n </div>\n <div *ngIf=\"!Loading\" class=\"props\">\n <div class=\"opbouw\">Opbouw</div>\n <div *ngFor=\"let opbouw of BCBImportOpenResponse.bcbImportOpbouwen\">\n <app-beheer-import-sets-opbouw [opbouw]=\"opbouw\"></app-beheer-import-sets-opbouw>\n </div>\n\n <div class=\"opbouw\">Eigenschap</div>\n <div *ngFor=\"let eigenschap of BCBImportOpenResponse.bcbImportEigenschappen\">\n <app-beheer-import-sets-eigenschap [eigenschap]=\"eigenschap\"></app-beheer-import-sets-eigenschap>\n </div>\n </div>\n</div>\n\n","<div class=\"top-row\">\n <div class=\"icon-div\" (click)=\"Toggle()\">\n <ng-container *ngIf=\"opbouw.wizardEBOViewModels != null && opbouw.wizardEBOViewModels.length > 0\">\n <mat-icon *ngIf=\"!opbouw.open\">expand_more</mat-icon>\n <mat-icon *ngIf=\"opbouw.open\">expand_less</mat-icon>\n </ng-container>\n \n </div>\n <div class=\"text-div flexauto\" (click)=\"Toggle()\">\n {{ opbouw.name }}\n </div>\n <div class=\"check-div\">\n <mat-checkbox [checked]=\"opbouw.selected\" (change)=\"UpdateSelected()\"></mat-checkbox>\n </div>\n</div>\n<div class=\"content\" *ngIf=\"opbouw.open\">\n <div class=\"ebobox\" *ngFor=\"let ebo of opbouw.wizardEBOViewModels\">\n <app-beheer-import-sets-ebo [ebo]=\"ebo\"></app-beheer-import-sets-ebo>\n </div>\n</div>\n","import { ChangeDetectorRef, Component, OnInit } from '@angular/core';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { ImportSetsService } from '../../../services/importsets.service';\r\nimport { ProductsService } from '../../../services/products.service';\r\nimport { ImportApiClient, BCBImportSetsViewModel, BCBImportSetViewModel, ProductViewModel, BCBProductViewModel, BCBImportOpenRequest, BCBImportOpenResponse } from '../../../swagger/SwaggerClient';\r\nimport { BeheerImportSetsDialogComponent } from './beheer-import-sets-dialog/beheer-import-sets-dialog.component';\r\n\r\n@Component({\r\n selector: 'app-beheer-import-sets',\r\n templateUrl: './beheer-import-sets.component.html',\r\n styleUrls: ['./beheer-import-sets.component.scss']\r\n})\r\nexport class BeheerImportSetsComponent implements OnInit {\r\n\r\n constructor(\r\n public dialog: MatDialog,\r\n public ProductsService: ProductsService,\r\n public ImportSetsService: ImportSetsService,\r\n public ImportApiClient: ImportApiClient,\r\n private ChangeDetectorRef: ChangeDetectorRef) {\r\n\r\n }\r\n\r\n ngOnInit(): void {\r\n this.ImportSetsService.LoadImportSets(this.ChangeDetectorRef);\r\n }\r\n\r\n public Wijzig(): void {\r\n var dialogRef = this.dialog.open(BeheerImportSetsDialogComponent, {\r\n data: {\r\n id: this.ImportSetsService.GetActiveImportSet().id,\r\n name: this.ImportSetsService.GetActiveImportSet().name\r\n }\r\n });\r\n }\r\n\r\n public Toevoegen(): void {\r\n var dialogRef = this.dialog.open(BeheerImportSetsDialogComponent, {\r\n data: {\r\n id: -1,\r\n name: \"\"\r\n }\r\n });\r\n }\r\n\r\n public Loading(): boolean {\r\n return this.ProductsService.Loading() || this.ImportSetsService.LoadingImportSets;\r\n }\r\n\r\n public Open(): void {\r\n this.ImportSetsService.Open(this.ProductsService.BCBProductSelected, this.ChangeDetectorRef);\r\n }\r\n\r\n public Reload(): void {\r\n this.ProductsService.Reload(this.ChangeDetectorRef);\r\n }\r\n\r\n public GetProducts(): Array<ProductViewModel> {\r\n var array = new Array<ProductViewModel>();\r\n\r\n var products = this.ProductsService.ProductsViewModel?.productViewModels;\r\n\r\n if (products != null) {\r\n for (var i = 0; i < products.length; i++) {\r\n if (products[i].importSetId == this.ImportSetsService.GetActiveImportSet().id) {\r\n array.push(products[i]);\r\n }\r\n }\r\n }\r\n\r\n return array;\r\n }\r\n}\r\n","<app-beheer-nav></app-beheer-nav>\r\n\r\n<div *ngIf=\"Loading()\">\r\n <app-fab-loader></app-fab-loader>\r\n</div>\r\n<div *ngIf=\"!Loading()\" class=\"main-content\">\r\n <mat-card>\r\n <div class=\"toolbar\">\r\n <div class=\"toolbar-item\">\r\n <mat-form-field appearance=\"fill\" class=\"full-width\">\r\n <mat-label>Import set</mat-label>\r\n <mat-select [(ngModel)]=\"ImportSetsService.BCBImportSetSelected\" (selectionChange)=\"Reload()\">\r\n <mat-option *ngFor=\"let importset of ImportSetsService.BCBImportSetsViewModel.bcbImportSetViewModels\" [value]=\"importset.id\">\r\n {{importset.name}}\r\n </mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n </div>\r\n <div class=\"\">\r\n <button mat-raised-button (click)=\"Wijzig()\">\r\n Wijzig\r\n </button>\r\n </div>\r\n <div class=\"\">\r\n <button mat-raised-button (click)=\"Toevoegen()\">\r\n Toevoegen\r\n </button>\r\n </div>\r\n </div>\r\n <div class=\"toolbar\" *ngIf=\"GetProducts().length > 0\">\r\n <div class=\"toolbar-item\">\r\n <mat-form-field appearance=\"fill\" class=\"full-width\">\r\n <mat-label>Product</mat-label>\r\n <mat-select [(ngModel)]=\"ProductsService.ProductSelected\">\r\n <mat-option *ngFor=\"let product of GetProducts()\" [value]=\"product.id\">\r\n {{product.name}}\r\n </mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n </div>\r\n <div class=\"toolbar-item flex-auto\">\r\n <mat-form-field appearance=\"fill\" class=\"full-width\">\r\n <mat-label>BCBProduct</mat-label>\r\n <mat-select [(ngModel)]=\"ProductsService.BCBProductSelected\">\r\n <mat-option *ngFor=\"let product of ProductsService.GetBCBProductsSelected()\" [value]=\"product.id\">\r\n {{product.name}}\r\n </mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n </div>\r\n <div class=\"\">\r\n <button mat-raised-button (click)=\"Open()\">\r\n Open\r\n </button>\r\n </div>\r\n </div>\r\n </mat-card>\r\n\r\n <div class=\"main-block\">\r\n <div class=\"flex-auto block\">\r\n <mat-card>\r\n <mat-card-content>\r\n <div *ngIf=\"ImportSetsService.LoadingOpen\">\r\n <app-fab-loader></app-fab-loader>\r\n </div>\r\n <div *ngIf=\"!ImportSetsService.LoadingOpen && ImportSetsService.BCBImportOpenResponse != null\">\r\n <h3 class=\"title\">{{ ImportSetsService.BCBImportOpenResponse?.bcbeboViewModel?.name }}</h3>\r\n\r\n <div class=\"opbouw\">Opbouw</div>\r\n <app-beheer-import-sets-opbouw *ngFor=\"let opbouw of ImportSetsService.BCBImportOpenResponse.bcbImportOpbouwen\" [opbouw]=\"opbouw\"></app-beheer-import-sets-opbouw>\r\n\r\n <div class=\"opbouw\">Eigenschap</div>\r\n <app-beheer-import-sets-eigenschap *ngFor=\"let eigenschap of ImportSetsService.BCBImportOpenResponse.bcbImportEigenschappen\" [eigenschap]=\"eigenschap\"></app-beheer-import-sets-eigenschap>\r\n </div>\r\n </mat-card-content>\r\n </mat-card>\r\n\r\n </div>\r\n <div class=\"importset-block block\">\r\n <mat-card>\r\n <mat-card-title>{{ ImportSetsService.GetActiveImportSet().name }}</mat-card-title>\r\n <mat-card-content>\r\n <mat-card class=\"value-block\" *ngFor=\"let value of ImportSetsService.GetActiveImportSet().bcbImportSetValueViewModels\">\r\n <mat-card-content>\r\n {{ value.value }}\r\n </mat-card-content>\r\n </mat-card>\r\n </mat-card-content>\r\n </mat-card>\r\n </div>\r\n </div>\r\n</div>\r\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-fab-bcb-product',\n templateUrl: './fab-bcb-product.component.html',\n styleUrls: ['./fab-bcb-product.component.scss']\n})\nexport class FabBcbProductComponent implements OnInit {\n\n constructor() { }\n\n ngOnInit(): void {\n }\n\n}\n","<p>fab-bcb-product works!</p>\n","import { Component, Inject, OnInit } from '@angular/core';\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport { CategoriesApiClient, CategoriesViewModel, CreateCategoryRequest, CreateCategoryResponse } from '../../../swagger/SwaggerClient';\r\n\n@Component({\n selector: 'app-beheer-connect-category-dialog',\n templateUrl: './beheer-connect-category-dialog.component.html',\n styleUrls: ['./beheer-connect-category-dialog.component.scss']\n})\nexport class BeheerConnectCategoryDialogComponent implements OnInit {\n\n public Loading: boolean = true;\n\n public DOType: string = \"DOType\";\n public DONaam: string = \"DONaam\";\n\n public CategoryName: string = \"\";\n\n public CategorySelected: number;\n\n public CategoriesViewModel: CategoriesViewModel;\n\n constructor(public dialogRef: MatDialogRef<BeheerConnectCategoryDialogComponent>, @Inject(MAT_DIALOG_DATA) public data: any, private CategoriesApiClient: CategoriesApiClient) {\n this.DOType = data.dotype;\n this.DONaam = data.donaam;\n\n this.CategoryName = data.donaam;\n }\n\n ngOnInit(): void {\n this.LoadCategories();\n }\n\n public Nieuw(): void {\n this.Loading = true;\r\n\r\n var requestcategory: CreateCategoryRequest = new CreateCategoryRequest();\r\n\r\n requestcategory.name = this.CategoryName;\r\n\r\n this.CategoriesApiClient.createCategory(requestcategory).subscribe((model: CreateCategoryResponse) => {\r\n\r\n this.Loading = false;\r\n\r\n this.dialogRef.close(model.id);\r\n }, (error: Response) => {\r\n if (error.status == 400)\r\n console.log(error.json());\r\n else {\r\n console.log('An unexpected error occured');\r\n console.log(error);\r\n }\r\n\r\n this.Loading = false;\r\n });\r\n }\n\n public Bestaand(): void {\n this.dialogRef.close(this.CategorySelected);\r\n }\n\n private LoadCategories(): void {\r\n this.Loading = true;\r\n\r\n this.CategoriesApiClient.getCategoriesViewModel().subscribe((model: CategoriesViewModel) => {\r\n this.CategoriesViewModel = model;\r\n this.Loading = false;\r\n }, (error: Response) => {\r\n if (error.status == 400)\r\n console.log(error.json());\r\n else {\r\n console.log('An unexpected error occured');\r\n console.log(error);\r\n }\r\n\r\n this.Loading = false;\r\n });\r\n }\n}\n","<div *ngIf=\"Loading\">\r\n <app-fab-loader></app-fab-loader>\r\n</div>\r\n\r\n<div *ngIf=\"!Loading\">\r\n <mat-tab-group>\r\n <mat-tab label=\"Nieuw\">\r\n <div class=\"bar\">\r\n <mat-form-field appearance=\"fill\" class=\"full-width\">\r\n <mat-label>{{ DOType }}</mat-label>\r\n <input matInput [(ngModel)]=\"DONaam\" readonly>\r\n </mat-form-field>\r\n\r\n <mat-form-field appearance=\"fill\" class=\"full-width\">\r\n <mat-label>Naam</mat-label>\r\n <input matInput [(ngModel)]=\"CategoryName\">\r\n </mat-form-field>\r\n </div>\r\n\r\n <div class=\"bar tool-bar\">\r\n <button mat-raised-button (click)=\"Nieuw()\">Toevoegen</button>\r\n </div>\r\n </mat-tab>\r\n <mat-tab label=\"Bestaand\">\r\n <div class=\"bar\">\r\n <mat-form-field appearance=\"fill\" class=\"full-width\">\r\n <mat-label>{{ DOType }}</mat-label>\r\n <input matInput [(ngModel)]=\"DONaam\" readonly>\r\n </mat-form-field>\r\n\r\n <mat-form-field appearance=\"fill\" class=\"full-width\">\r\n <mat-label>Category</mat-label>\r\n <mat-select [(ngModel)]=\"CategorySelected\">\r\n <mat-option *ngFor=\"let category of CategoriesViewModel.categories\" [value]=\"category.id\">\r\n {{category.name}}\r\n </mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n </div>\r\n\r\n <div class=\"bar tool-bar\">\r\n <button mat-raised-button (click)=\"Bestaand()\">Toevoegen</button>\r\n </div>\r\n </mat-tab>\r\n </mat-tab-group>\r\n</div>\r\n","import { ChangeDetectorRef, Component, OnInit } from '@angular/core';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { ImportSetsService } from '../../../../services/importsets.service';\r\nimport { EBOKoppelApiClient, EBOKoppelViewModel, KoppelEBOOptieRequest, KoppelEBOOptieResponse, ConnectEBODOCategoryRequest, ConnectEBODOCategoryResponse, EBOConnectRequestModel } from '../../../../swagger/SwaggerClient';\r\nimport { BeheerConnectCategoryDialogComponent } from '../../beheer-connect-category-dialog/beheer-connect-category-dialog.component';\r\nimport { BeheerProductsConnectManynameDialogComponent } from '../../beheer-products/beheer-products-connect-manyname-dialog/beheer-products-connect-manyname-dialog.component';\r\nimport { BeheerProductsKoppelFilteroptionDailogComponent } from '../../beheer-products/beheer-products-koppel-filteroption-dailog/beheer-products-koppel-filteroption-dailog.component';\r\n\r\n@Component({\r\n selector: 'app-beheer-ebo-koppel',\r\n templateUrl: './beheer-ebo-koppel.component.html',\r\n styleUrls: ['./beheer-ebo-koppel.component.scss']\r\n})\r\nexport class BeheerEboKoppelComponent implements OnInit {\r\n\r\n public EBOKoppelViewModel: EBOKoppelViewModel;\r\n\r\n public LoadingModel: boolean = false;\r\n\r\n constructor(\r\n private EBOKoppelApiClient: EBOKoppelApiClient,\r\n public ImportSetsService: ImportSetsService,\r\n public dialog: MatDialog,\r\n private ChangeDetectorRef: ChangeDetectorRef\r\n ) {\r\n }\r\n\r\n ngOnInit(): void {\r\n this.ImportSetsService.LoadImportSets(this.ChangeDetectorRef);\r\n }\r\n\r\n public Loading(): boolean {\r\n return this.ImportSetsService.LoadingImportSets || this.LoadingModel;\r\n }\r\n\r\n public Connect(id: number): void {\r\n var dialogRef = this.dialog.open(BeheerProductsKoppelFilteroptionDailogComponent);\r\n\r\n dialogRef.afterClosed().subscribe((result: any) => {\r\n if (result != null) {\r\n if (result.filteroption != null && result.filteroption > 0) {\r\n this.LoadingModel = true;\r\n var request = new KoppelEBOOptieRequest();\r\n\r\n request.bcbebodoId = id;\r\n request.filterOptionId = result.filteroption;\r\n request.bcbImportSetId = -1;\r\n\r\n this.EBOKoppelApiClient.koppelEBOOptie(request).subscribe((model: KoppelEBOOptieResponse) => {\r\n this.LoadModel();\r\n }, (error: Response) => {\r\n alert(error);\r\n });\r\n }\r\n else if (result.filter != null) {\r\n //var request2 = new KoppelManyNameRequest();\r\n\r\n //request2.bcbProductEigenschapOptieId = id;\r\n //request2.filterId = result.filter;\r\n\r\n //this.ProductsApiClient.koppelManyName(request2).subscribe((model: KoppelManyNameResponse) => {\r\n // this.ProductsService.Reload();\r\n //}, (error: Response) => {\r\n // alert(error);\r\n //});\r\n alert(\"todo\");\r\n }\r\n }\r\n //if (result != null && result > 0) {\r\n\r\n //}\r\n });\r\n }\r\n\r\n public ConnectMany(id: number): void {\r\n var dialogRef = this.dialog.open(BeheerProductsConnectManynameDialogComponent, {\r\n data: {\r\n bcbebodoid: id\r\n }\r\n });\r\n }\r\n\r\n public ConnectCategory(id: number, dotype: string, donaam: string): void {\r\n var dialogRef = this.dialog.open(BeheerConnectCategoryDialogComponent, {\r\n data: {\r\n dotype: dotype,\r\n donaam: donaam\r\n }\r\n });\r\n\r\n dialogRef.afterClosed().subscribe((result: any) => {\r\n if (result != null && result > 0) {\r\n this.LoadingModel = true;\r\n var request = new ConnectEBODOCategoryRequest();\r\n\r\n request.bcbImportSetId = this.ImportSetsService.BCBImportSetSelected;\r\n request.bcbebodoId = id;\r\n request.categoryId = result;\r\n\r\n this.EBOKoppelApiClient.connectEBODOCategory(request).subscribe((model: ConnectEBODOCategoryResponse) => {\r\n this.LoadModel();\r\n }, (error: Response) => {\r\n alert(error);\r\n });\r\n }\r\n });\r\n }\r\n\r\n public LoadModel(): void {\r\n if (this.ImportSetsService.BCBImportSetSelected > 0) {\r\n this.LoadingModel = true;\r\n\r\n var model = new EBOConnectRequestModel();\r\n\r\n model.importSetId = this.ImportSetsService.BCBImportSetSelected;\r\n\r\n this.EBOKoppelApiClient.getEBOKoppelViewModel(model).subscribe((model: EBOKoppelViewModel) => {\r\n this.EBOKoppelViewModel = model;\r\n this.LoadingModel = false;\r\n });\r\n }\r\n else {\r\n this.LoadingModel = false;\r\n }\r\n }\r\n\r\n}\r\n","<app-beheer-nav></app-beheer-nav>\r\n\r\n<div *ngIf=\"Loading()\">\r\n <app-fab-loader></app-fab-loader>\r\n</div>\r\n<div *ngIf=\"!Loading()\">\r\n <mat-card>\r\n <mat-card-content>\r\n <mat-form-field appearance=\"fill\" class=\"full-width\" *ngIf=\"!ImportSetsService.LoadingImportSets\">\r\n <mat-label>Import set</mat-label>\r\n <mat-select [(ngModel)]=\"ImportSetsService.BCBImportSetSelected\" (change)=\"LoadModel()\">\r\n <mat-option *ngFor=\"let importset of ImportSetsService.BCBImportSetsViewModel.bcbImportSetViewModels\" [value]=\"importset.id\">\r\n {{importset.name}}\r\n </mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n\r\n <button mat-raised-button (click)=\"LoadModel()\">\r\n Refresh\r\n </button>\r\n </mat-card-content>\r\n </mat-card>\r\n <mat-accordion *ngIf=\"EBOKoppelViewModel != null\">\r\n <mat-expansion-panel *ngFor=\"let type of EBOKoppelViewModel.eboKoppelTypeViewModels\">\r\n <mat-expansion-panel-header>\r\n <mat-panel-title>\r\n {{ type.type }}\r\n </mat-panel-title>\r\n <mat-panel-description>\r\n {{ type.namen.length }} EBO(s)\r\n </mat-panel-description>\r\n </mat-expansion-panel-header>\r\n <div>\r\n <mat-card *ngFor=\"let do of type.namen\" class=\"card\">\r\n <mat-card-content>\r\n <div class=\"row\">\r\n <div class=\"text-div\">\r\n {{ do.doNaam }}\r\n </div>\r\n <div *ngIf=\"!do.connected\">\r\n <button mat-raised-button (click)=\"Connect(do.id)\">\r\n FilterOption\r\n </button>\r\n <button mat-raised-button (click)=\"ConnectMany(do.id)\">\r\n FilterOptionMany\r\n </button>\r\n <button mat-raised-button (click)=\"ConnectCategory(do.id, do.doType, do.doNaam)\">\r\n Category\r\n </button>\r\n </div>\r\n </div>\r\n </mat-card-content>\r\n </mat-card>\r\n </div>\r\n </mat-expansion-panel>\r\n\r\n </mat-accordion>\r\n</div>\r\n","import { Component, OnInit } from '@angular/core';\nimport { CategoriesApiClient, CategoriesOverviewViewModel } from '../../../swagger/SwaggerClient';\r\n\n@Component({\n selector: 'app-beheer-categories',\n templateUrl: './beheer-categories.component.html',\n styleUrls: ['./beheer-categories.component.scss']\n})\nexport class BeheerCategoriesComponent implements OnInit {\n\n public Loading: boolean = true;\n\n public CategoriesOverviewViewModel: CategoriesOverviewViewModel;\n\n constructor(private CategoriesApiClient: CategoriesApiClient) { }\n\n ngOnInit(): void {\n this.LoadCategories();\n }\n\n private LoadCategories(): void {\r\n this.Loading = true;\r\n\r\n this.CategoriesApiClient.getCategoriesOverview().subscribe((model: CategoriesOverviewViewModel) => {\r\n this.CategoriesOverviewViewModel = model;\r\n this.Loading = false;\r\n }, (error: Response) => {\r\n if (error.status == 400)\r\n console.log(error.json());\r\n else {\r\n console.log('An unexpected error occured');\r\n console.log(error);\r\n }\r\n\r\n this.Loading = false;\r\n });\r\n }\n}\n","<app-beheer-nav></app-beheer-nav>\n\n<div *ngIf=\"Loading\">\n <app-fab-loader></app-fab-loader>\n</div>\n\n<div *ngIf=\"!Loading\">\n <mat-card>\n <mat-card-content>\n <table class=\"fullwidth\">\n <ng-container *ngFor=\"let categorie of CategoriesOverviewViewModel.categories\">\n <tr class=\"header\">\n <td colspan=\"3\">{{ categorie.name }}</td>\n </tr>\n <ng-container *ngFor=\"let subcategorie of categorie.subCategories\">\n <tr class=\"header2\">\n <td> </td>\n <td colspan=\"2\">{{ subcategorie.name }}</td>\n </tr>\n <tr *ngFor=\"let product of subcategorie.products\">\n <td> </td>\n <td> </td>\n <td>{{ product.name }}</td>\n </tr>\n <tr>\n <td> </td>\n </tr>\n </ng-container>\n <tr *ngFor=\"let product of categorie.products\">\n <td></td>\n <td colspan=\"2\">{{ product.name }}</td>\n </tr>\n <tr>\n <td> </td>\n </tr>\n </ng-container>\n <tr *ngFor=\"let product of CategoriesOverviewViewModel.products\">\n <td colspan=\"3\">{{ product.name }}</td>\n </tr>\n </table>\n </mat-card-content>\n </mat-card>\n \n</div>\n","import { ChangeDetectorRef, Component, OnInit } from '@angular/core';\nimport { Router } from '@angular/router';\r\nimport { FabrikantenService } from '../../services/fabrikanten.service';\r\nimport { TranslateService } from '../../services/translate.service';\r\n\n@Component({\n selector: 'app-fab-start',\n templateUrl: './fab-start.component.html',\n styleUrls: ['./fab-start.component.scss']\n})\nexport class FabStartComponent implements OnInit {\n\n constructor(\n public FabrikantenService: FabrikantenService,\n public TranslateService: TranslateService,\n private ChangeDetectorRef: ChangeDetectorRef,\n private router: Router) {\n //this.router.navigateByUrl('/beheer');\n }\n\n ngOnInit(): void {\n this.FabrikantenService.LoadFabrikantenViewModel(this.ChangeDetectorRef);\n this.TranslateService.LoadTranslations(this.ChangeDetectorRef);\n }\n\n}\n","<div *ngIf=\"FabrikantenService.Loading\" class=\"loader\">\n <mat-card class=\"loader-card\">\n <mat-card-content>\n <mat-spinner class=\"loader-spinner\" [diameter]=\"80\"></mat-spinner>\n </mat-card-content>\n </mat-card>\n</div>\n","import { ChangeDetectorRef, Component, Input, OnInit } from '@angular/core';\nimport { DomSanitizer } from '@angular/platform-browser';\r\nimport { FabrikantenService } from '../../services/fabrikanten.service';\r\nimport { TranslateService } from '../../services/translate.service';\r\nimport { FabrikantenCategoryViewModel } from '../../swagger/SwaggerClient';\r\n\n@Component({\n selector: 'fab-category-tile',\n templateUrl: './fab-category-tile.component.html',\n styleUrls: ['./fab-category-tile.component.scss']\n})\nexport class FabCategoryTileComponent implements OnInit {\n\n @Input() category: FabrikantenCategoryViewModel;\n\n constructor(\n public FabrikantenService: FabrikantenService,\n private sanitization: DomSanitizer,\n private ChangeDetectorRef: ChangeDetectorRef,\n public TranslateService: TranslateService) { }\n\n ngOnInit(): void {\n }\n\n public Select(): void {\n this.FabrikantenService.SelectCategory(this.category, this.ChangeDetectorRef);\r\n }\n\n public DisplayNoPhoto(): boolean {\n var path = this.category.imagePath as string;\r\n\r\n return path == \"\";\r\n }\n\n public getSafeUrl() {\r\n\r\n var path = this.category.imagePath as string;\r\n\r\n if (path != \"\") {\r\n return this.sanitization.bypassSecurityTrustStyle('url(\\'' + (this.category.imagePath as string) + '\\')');\r\n }\r\n else {\r\n return \"\";\r\n }\r\n }\n}\n","<mat-card *ngIf=\"!DisplayNoPhoto()\" class=\"tile\" (click)=\"Select()\" [style.backgroundImage]=\"getSafeUrl()\">\n <mat-card-title class=\"title\">\n {{ TranslateService.GetActiveValueCategory(category.id) }}\n </mat-card-title>\n</mat-card>\n<mat-card *ngIf=\"DisplayNoPhoto()\" class=\"tile no-photo\" (click)=\"Select()\">\n <mat-card-title class=\"title\">\n {{ TranslateService.GetActiveValueCategory(category.id) }}\n </mat-card-title>\n</mat-card>\n","import { ChangeDetectorRef, Component, OnInit } from '@angular/core';\nimport { FabrikantenService } from '../../services/fabrikanten.service';\r\nimport { ActivatedRoute } from '@angular/router';\r\nimport { TranslateService } from '../../services/translate.service';\r\n\n@Component({\n selector: 'fab-categories',\n templateUrl: './fab-categories.component.html',\n styleUrls: ['./fab-categories.component.scss']\n})\nexport class FabCategoriesComponent implements OnInit {\n\n constructor(\n public FabrikantenService: FabrikantenService,\n public TranslateService: TranslateService,\n private ActivatedRoute: ActivatedRoute,\n private ChangeDetectorRef: ChangeDetectorRef) {\n this.TranslateService.ProcessParameters(this.ActivatedRoute);\n\n if (!this.FabrikantenService.ShowCategories()) {\n this.FabrikantenService.ResetAllCategories(this.ChangeDetectorRef);\r\n }\n }\n\n ngOnInit(): void {\n this.FabrikantenService.LoadFabrikantenViewModel(this.ChangeDetectorRef);\n this.TranslateService.LoadTranslations(this.ChangeDetectorRef);\n }\n\n}\n","<div class=\"loader\" *ngIf=\"FabrikantenService.Loading\">\n <app-fab-loader></app-fab-loader>\n</div>\n\n<app-fab-header [showfiltermenubutton]=\"false\"></app-fab-header>\n\n<div *ngIf=\"FabrikantenService.GetFirstOpenCategoryLayer() != null\" class=\"main-block\">\n <fab-category-tile *ngFor=\"let category of FabrikantenService.GetFirstOpenCategoryLayer().categories\" [category]=\"category\"></fab-category-tile>\n</div>\n\n","import { ChangeDetectorRef, Component, OnInit } from '@angular/core';\nimport { TranslateService } from '../../../services/translate.service';\r\nimport { CreateExportRequest, CreateExportResponse, ReadExportRequest, TranslateEntryProductViewModel, TranslateEntryCategoryViewModel, TranslateEntryDescriptionViewModel, TranslateEntryFilterViewModel, TranslateEntryFilterOptionViewModel, TranslateApiClient, TranslateEntryAfbeeldingViewModel } from '../../../swagger/SwaggerClient';\r\n\n@Component({\n selector: 'app-beheer-translate',\n templateUrl: './beheer-translate.component.html',\n styleUrls: ['./beheer-translate.component.scss']\n})\nexport class BeheerTranslateComponent implements OnInit {\n\n constructor(\n public TranslateService: TranslateService,\n private TranslateApiClient: TranslateApiClient,\n private ChangeDetectorRef: ChangeDetectorRef) { }\n\n ngOnInit(): void {\n this.TranslateService.LoadTranslations(this.ChangeDetectorRef);\n }\n\n public GetCategoryEntries(): Array<TranslateEntryCategoryViewModel> {\n\n if (this.TranslateService.LanguagesViewModel?.languages != null && this.TranslateService.LanguagesViewModel.languages.length > 0 && this.TranslateService.LanguagesViewModel.languages[0].categoryEntries != null) {\n return this.TranslateService.LanguagesViewModel.languages[0].categoryEntries;\r\n }\n else {\r\n return new Array<TranslateEntryCategoryViewModel>();;\r\n }\r\n }\n\n public GetProductEntries(): Array<TranslateEntryProductViewModel> {\n\n if (this.TranslateService.LanguagesViewModel?.languages != null && this.TranslateService.LanguagesViewModel.languages.length > 0 && this.TranslateService.LanguagesViewModel.languages[0].productEntries != null) {\n return this.TranslateService.LanguagesViewModel.languages[0].productEntries;\r\n }\n else {\r\n return new Array<TranslateEntryProductViewModel>();\r\n }\r\n }\n\n public GetFilterEntries(): Array<TranslateEntryFilterViewModel> {\n\n if (this.TranslateService.LanguagesViewModel?.languages != null && this.TranslateService.LanguagesViewModel.languages.length > 0 && this.TranslateService.LanguagesViewModel.languages[0].filterEntries != null) {\n return this.TranslateService.LanguagesViewModel.languages[0].filterEntries;\r\n }\n else {\r\n return new Array<TranslateEntryFilterViewModel>();\r\n }\r\n }\n\n public GetFilterOptionEntries(filterid: number): Array<TranslateEntryFilterOptionViewModel> {\n var array = new Array<TranslateEntryFilterOptionViewModel>();\n\n if (this.TranslateService.LanguagesViewModel?.languages != null && this.TranslateService.LanguagesViewModel.languages.length > 0 && this.TranslateService.LanguagesViewModel.languages[0].filterOptionEntries != null) {\n for (var i = 0; i < this.TranslateService.LanguagesViewModel.languages[0].filterOptionEntries.length; i++) {\r\n if (this.TranslateService.LanguagesViewModel.languages[0].filterOptionEntries[i].filterId == filterid) {\r\n array.push(this.TranslateService.LanguagesViewModel.languages[0].filterOptionEntries[i]);\r\n }\r\n }\r\n }\r\n\r\n return array;\r\n }\n\n public GetDescriptionEntries(): Array<TranslateEntryDescriptionViewModel> {\n\n if (this.TranslateService.LanguagesViewModel?.languages != null && this.TranslateService.LanguagesViewModel.languages.length > 0 && this.TranslateService.LanguagesViewModel.languages[0].descriptionEntries != null) {\n return this.TranslateService.LanguagesViewModel.languages[0].descriptionEntries;\r\n }\n else {\r\n return new Array<TranslateEntryDescriptionViewModel>();\r\n }\r\n }\n\n public GetAfbeeldingEntries(): Array<TranslateEntryAfbeeldingViewModel> {\n\n if (this.TranslateService.LanguagesViewModel?.languages != null && this.TranslateService.LanguagesViewModel.languages.length > 0 && this.TranslateService.LanguagesViewModel.languages[0].afbeeldingEntries != null) {\n return this.TranslateService.LanguagesViewModel.languages[0].afbeeldingEntries;\r\n }\n else {\r\n return new Array<TranslateEntryAfbeeldingViewModel>();\r\n }\r\n }\n\n public Export(): void {\n var request = new CreateExportRequest();\r\n this.TranslateService.Loading = true;\r\n\r\n this.TranslateApiClient.createExport(request).subscribe((model: CreateExportResponse) => {\r\n alert(model.url);\r\n this.TranslateService.Loading = false;\r\n }, (error: Response) => {\r\n if (error.status == 400)\r\n alert(error.json());\r\n else {\r\n alert('An unexpected error occured');\r\n alert(error);\r\n }\r\n });\r\n }\n\n public Import(): void {\n var request = new ReadExportRequest();\r\n this.TranslateService.Loading = true;\r\n\r\n this.TranslateApiClient.readExport(request).subscribe(() => {\r\n this.TranslateService.Loading = false;\r\n this.TranslateService.LoadTranslations(this.ChangeDetectorRef);\r\n }, (error: Response) => {\r\n if (error.status == 400)\r\n alert(error.json());\r\n else {\r\n alert('An unexpected error occured');\r\n alert(error);\r\n }\r\n });\r\n }\n\n\n}\n","<app-beheer-nav></app-beheer-nav>\r\n\r\n<app-fab-loader *ngIf=\"TranslateService.Loading\"></app-fab-loader>\r\n\r\n<div *ngIf=\"!TranslateService.Loading\">\r\n <mat-card class=\"main-bar\">\r\n <mat-card-content>\r\n <mat-form-field appearance=\"fill\">\r\n <mat-label>Category</mat-label>\r\n <mat-select [(ngModel)]=\"TranslateService.SelectedCategory\">\r\n <mat-option *ngFor=\"let cat of TranslateService.Categories\" [value]=\"cat\">\r\n {{cat}}\r\n </mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n <button mat-raised-button (click)=\"Export()\">\r\n Export\r\n </button>\r\n <button mat-raised-button (click)=\"Import()\">\r\n Import\r\n </button>\r\n </mat-card-content>\r\n </mat-card>\r\n\r\n <mat-card class=\"main\">\r\n <mat-card-content>\r\n <table class=\"full-width\">\r\n <ng-container *ngIf=\"TranslateService.GetActiveCategorie() != null\">\r\n <tr>\r\n <td colspan=\"2\" class=\"cat-row\">\r\n {{ TranslateService.GetActiveCategorie().name }}\r\n </td>\r\n <td class=\"cat-row\" *ngFor=\"let language of TranslateService.LanguagesViewModel.languages\">\r\n <fab-flag [country]=\"language.flag\"></fab-flag> {{ language.name }}\r\n </td>\r\n </tr>\r\n <tr *ngFor=\"let key of TranslateService.GetActiveCategorie().keys\">\r\n <td>{{ key.id }}</td>\r\n <td>{{ key.name }}</td>\r\n <td *ngFor=\"let language of TranslateService.LanguagesViewModel.languages\">\r\n {{ TranslateService.GetValue(language, TranslateService.GetActiveCategorie().name, key.name) }}\r\n </td>\r\n </tr>\r\n </ng-container>\r\n <ng-container *ngIf=\"TranslateService.SelectedCategory == 'Categories'\">\r\n <tr>\r\n <td colspan=\"2\" class=\"cat-row\">\r\n Categories\r\n </td>\r\n <td class=\"cat-row\" *ngFor=\"let language of TranslateService.LanguagesViewModel.languages\">\r\n <fab-flag [country]=\"language.flag\"></fab-flag> {{ language.name }}\r\n </td>\r\n </tr>\r\n <tr *ngFor=\"let cat of GetCategoryEntries()\">\r\n <td>{{ cat.categoryId }}</td>\r\n <td>{{ cat.categoryName }}</td>\r\n <td *ngFor=\"let language of TranslateService.LanguagesViewModel.languages\">\r\n {{ TranslateService.GetValueCategory(language, cat.categoryId) }}\r\n </td>\r\n </tr>\r\n </ng-container>\r\n <ng-container *ngIf=\"TranslateService.SelectedCategory == 'Products'\">\r\n <tr>\r\n <td colspan=\"2\" class=\"cat-row\">\r\n Products\r\n </td>\r\n <td class=\"cat-row\" *ngFor=\"let language of TranslateService.LanguagesViewModel.languages\">\r\n <fab-flag [country]=\"language.flag\"></fab-flag> {{ language.name }}\r\n </td>\r\n </tr>\r\n <tr *ngFor=\"let prod of GetProductEntries()\">\r\n <td>{{ prod.productId }}</td>\r\n <td>{{ prod.productName }}</td>\r\n <td *ngFor=\"let language of TranslateService.LanguagesViewModel.languages\">\r\n {{ TranslateService.GetValueProduct(language, prod.productId) }}\r\n </td>\r\n </tr>\r\n </ng-container>\r\n <ng-container *ngIf=\"TranslateService.SelectedCategory == 'Filter'\">\r\n <tr>\r\n <td colspan=\"2\" class=\"cat-row\">\r\n Filters\r\n </td>\r\n <td class=\"cat-row\" *ngFor=\"let language of TranslateService.LanguagesViewModel.languages\">\r\n <fab-flag [country]=\"language.flag\"></fab-flag> {{ language.name }}\r\n </td>\r\n </tr>\r\n <ng-container *ngFor=\"let filter of GetFilterEntries()\">\r\n <tr>\r\n <td class=\"cat-row\">{{ filter.filterId }}</td>\r\n <td class=\"cat-row\">{{ filter.filterName }}</td>\r\n <td class=\"cat-row\" *ngFor=\"let language of TranslateService.LanguagesViewModel.languages\">\r\n {{ TranslateService.GetValueFilter(language, filter.filterId) }}\r\n </td>\r\n </tr>\r\n <tr *ngFor=\"let option of GetFilterOptionEntries(filter.filterId)\">\r\n <td>{{ option.filterOptionId }}</td>\r\n <td>{{ option.filterOptionName }}</td>\r\n <td *ngFor=\"let language of TranslateService.LanguagesViewModel.languages\">\r\n {{ TranslateService.GetValueFilterOption(language, option.filterOptionId) }}\r\n </td>\r\n </tr>\r\n </ng-container>\r\n </ng-container>\r\n <ng-container *ngIf=\"TranslateService.SelectedCategory == 'Description'\">\r\n <tr>\r\n <td colspan=\"2\" class=\"cat-row\">\r\n Description\r\n </td>\r\n <td class=\"cat-row\" *ngFor=\"let language of TranslateService.LanguagesViewModel.languages\">\r\n <fab-flag [country]=\"language.flag\"></fab-flag> {{ language.name }}\r\n </td>\r\n </tr>\r\n <tr *ngFor=\"let description of GetDescriptionEntries()\">\r\n <td>{{ description.bcbProductId }}</td>\r\n <td>{{ description.productName }}</td>\r\n <td *ngFor=\"let language of TranslateService.LanguagesViewModel.languages\">\r\n {{ TranslateService.GetValueDescription(language, description.bcbProductId) }}\r\n </td>\r\n </tr>\r\n </ng-container>\r\n <ng-container *ngIf=\"TranslateService.SelectedCategory == 'Afbeelding'\">\r\n <tr>\r\n <td colspan=\"2\" class=\"cat-row\">\r\n Afbeelding\r\n </td>\r\n <td class=\"cat-row\" *ngFor=\"let language of TranslateService.LanguagesViewModel.languages\">\r\n <fab-flag [country]=\"language.flag\"></fab-flag> {{ language.name }}\r\n </td>\r\n </tr>\r\n <tr *ngFor=\"let afbeelding of GetAfbeeldingEntries()\">\r\n <td>{{ afbeelding.bcbProductAfbeeldingId }}</td>\r\n <td>{{ afbeelding.productName }}</td>\r\n <td *ngFor=\"let language of TranslateService.LanguagesViewModel.languages\">\r\n {{ TranslateService.GetValueAfbeelding(language, afbeelding.bcbProductAfbeeldingId) }}\r\n </td>\r\n </tr>\r\n </ng-container>\r\n </table>\r\n </mat-card-content>\r\n </mat-card>\r\n</div>\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { RouterModule, Routes } from '@angular/router';\r\nimport { HttpClientModule, HTTP_INTERCEPTORS } from '@angular/common/http';\r\nimport { FormsModule } from '@angular/forms';\r\n\r\nimport {\r\n FiltersApiClient,\r\n ProjectSettingApiClient,\r\n SecurityApiClient,\r\n SearchProductsApiClient,\r\n ProductsApiClient,\r\n ImportApiClient,\r\n FabrikantenApiClient,\r\n EBOKoppelApiClient,\r\n CategoriesApiClient,\r\n TranslateApiClient\r\n} from './swagger/SwaggerClient';\r\n\r\n// Auth components\r\nimport { BasicAuthInterceptor } from './helpers/basic-auth.interceptor';\r\nimport { ErrorInterceptor } from './helpers/error.interceptor';\r\nimport { AuthGuard } from './helpers/auth.guard';\r\n\r\n// Beheer\r\nimport { BeheerMainComponent } from './beheer/components/beheer-main/beheer-main.component';\r\nimport { BeheerInlogComponent } from './beheer/components/beheer-inlog/beheer-inlog.component';\r\n\r\n// Main\r\nimport { FabFiltersComponent } from './components/fab-filters/fab-filters.component';\r\n\r\n// Services\r\nimport { AuthenticationService } from './services/authentication.service';\r\nimport { ProjectSettingService } from './services/projectsetting.service';\r\nimport { ProductsService } from './services/products.service';\r\nimport { ImportSetsService } from './services/importsets.service';\r\nimport { FabrikantenService } from './services/fabrikanten.service';\r\nimport { PhotoService } from './services/photo.service';\r\nimport { BestekService } from './services/bestek.service';\r\nimport { MobileService } from './services/mobile.service';\r\n\r\n// Material\r\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\r\nimport { MatTooltipModule } from '@angular/material/tooltip';\r\nimport { MatInputModule } from '@angular/material/input';\r\nimport { MatButtonModule } from '@angular/material/button';\r\nimport { MatListModule } from '@angular/material/list';\r\nimport { MatSelectModule } from '@angular/material/select';\r\nimport { MatExpansionModule } from '@angular/material/expansion';\r\nimport { MatCardModule } from '@angular/material/card';\r\nimport { MatTableModule } from '@angular/material/table';\r\nimport { MatProgressSpinnerModule } from '@angular/material/progress-spinner';\r\nimport { MatSnackBarModule } from '@angular/material/snack-bar';\r\nimport { MatCheckboxModule } from '@angular/material/checkbox';\r\nimport { MatDialogModule } from '@angular/material/dialog';\r\nimport { MatTabsModule } from '@angular/material/tabs';\r\nimport { MatSidenavModule } from '@angular/material/sidenav';\r\nimport { MatTreeModule } from '@angular/material/tree';\r\nimport { MatIconModule } from '@angular/material/icon';\r\nimport { MatDividerModule } from '@angular/material/divider';\r\nimport { MatButtonToggleModule } from '@angular/material/button-toggle';\r\n\r\n//\r\nimport { BeheerNavComponent } from './beheer/components/beheer-nav/beheer-nav.component';\r\nimport { BeheerUsersComponent } from './beheer/components/beheer-users/beheer-users.component';\r\nimport { BeheerProductsComponent } from './beheer/components/beheer-products/beheer-products.component';\r\nimport { BeheerFiltersComponent } from './beheer/components/beheer-filters/beheer-filters.component';\r\nimport { BeheerSettingsComponent } from './beheer/components/beheer-settings/beheer-settings.component';\r\nimport { FabLoaderComponent } from './components/fab-loader/fab-loader.component';\r\nimport { BeheerSearchProductsComponent } from './beheer/components/beheer-searchproducts/beheer-searchproducts.component';\r\nimport { BeheerSearchproductsKoppelDialogComponent } from './beheer/components/beheer-searchproducts/beheer-searchproducts-koppel-dialog/beheer-searchproducts-koppel-dialog.component';\r\nimport { BeheerProductsProductComponent } from './beheer/components/beheer-products/beheer-products-product/beheer-products-product.component';\r\nimport { BeheerProductsBcbproductComponent } from './beheer/components/beheer-products/beheer-products-bcbproduct/beheer-products-bcbproduct.component';\r\nimport { BeheerImportSetsComponent } from './beheer/components/beheer-import-sets/beheer-import-sets.component';\r\n/*import { } from './beheer/components/beheer-import-sets/beheer-import-sets-opbouw/beheer-import-sets-opbouw.component';*/\r\nimport { BeheerImportSetsEigenschapComponent } from './beheer/components/beheer-import-sets/beheer-import-sets-eigenschap/beheer-import-sets-eigenschap.component';\r\nimport { BeheerImportSetsEboComponent, BeheerImportSetsOpbouwComponent } from './beheer/components/beheer-import-sets/beheer-import-sets-ebo/beheer-import-sets-ebo.component';\r\nimport { BeheerProductsEigenschapComponent } from './beheer/components/beheer-products/beheer-products-eigenschap/beheer-products-eigenschap.component';\r\nimport { BeheerProductsKoppelFilteroptionDailogComponent } from './beheer/components/beheer-products/beheer-products-koppel-filteroption-dailog/beheer-products-koppel-filteroption-dailog.component';\r\nimport { FabFilterComponent } from './components/fab-filter/fab-filter.component';\r\nimport { FabProductComponent } from './components/fab-product/fab-product.component';\r\nimport { FabBcbProductComponent } from './components/fab-bcb-product/fab-bcb-product.component';\r\nimport { FabProductSelectComponent } from './components/fab-product-select/fab-product-select.component';\r\nimport { FabProductTileComponent } from './components/fab-product-tile/fab-product-tile.component';\r\nimport { FabProductInfoComponent } from './components/fab-product/fab-product-info/fab-product-info.component';\r\nimport { FabProductBestekComponent } from './components/fab-product/fab-product-bestek/fab-product-bestek.component';\r\nimport { FabProductInfoPhotoComponent } from './components/fab-product/fab-product-info/fab-product-info-photo/fab-product-info-photo.component';\r\nimport { FabProductInfoPhotoDialogComponent } from './components/fab-product/fab-product-info/fab-product-info-photo-dialog/fab-product-info-photo-dialog.component';\r\nimport { BeheerEboKoppelComponent } from './beheer/components/beheer-ebo-koppel/beheer-ebo-koppel/beheer-ebo-koppel.component';\r\nimport { BeheerSettingsOptionsComponent } from './beheer/components/beheer-settings/beheer-settings-options/beheer-settings-options.component';\r\nimport { BeheerSettingsStringComponent } from './beheer/components/beheer-settings/beheer-settings-string/beheer-settings-string.component';\nimport { BeheerImportSetsDialogComponent } from './beheer/components/beheer-import-sets/beheer-import-sets-dialog/beheer-import-sets-dialog.component';\nimport { BeheerCategoriesComponent } from './beheer/components/beheer-categories/beheer-categories.component';\nimport { BeheerConnectCategoryDialogComponent } from './beheer/components/beheer-connect-category-dialog/beheer-connect-category-dialog.component';\nimport { FabStartComponent } from './components/fab-start/fab-start.component';\nimport { FabCategoriesComponent } from './components/fab-categories/fab-categories.component';\nimport { FabCategoryTileComponent } from './components/fab-category-tile/fab-category-tile.component';\nimport { FabBreadcrumbComponent } from './components/fab-breadcrumb/fab-breadcrumb.component';\nimport { FabFiltersInputComponent } from './components/fab-filters-input/fab-filters-input.component';\nimport { FabFiltersOverviewComponent } from './components/fab-filters-overview/fab-filters-overview.component';\nimport { FabFlagComponent } from './components/fab-flag/fab-flag.component';\nimport { BeheerTranslateComponent } from './beheer/components/beheer-translate/beheer-translate.component';\nimport { FabLanguageSelectComponent } from './components/fab-language-select/fab-language-select.component';\r\nimport { TranslateService } from './services/translate.service';\nimport { FabHeaderComponent } from './components/fab-header/fab-header.component';\r\nimport { NavigateService } from './services/navigate.service';\nimport { FabWebglViewerComponent } from './components/fab-webgl-viewer/fab-webgl-viewer.component';\r\nimport { WebGLService } from './services/webgl.service';\r\nimport { SVGService } from './services/svg.service';\nimport { FabSvgViewerComponent } from './components/fab-svg-viewer/fab-svg-viewer.component';\nimport { BeheerProductsEboComponent, BeheerProductsOpbouwComponent } from './beheer/components/beheer-products/beheer-products-ebo/beheer-products-ebo.component';\nimport { BeheerProductsEigenschapBereikComponent } from './beheer/components/beheer-products/beheer-products-eigenschap-bereik/beheer-products-eigenschap-bereik.component';\nimport { BeheerProductsConnectManynameDialogComponent } from './beheer/components/beheer-products/beheer-products-connect-manyname-dialog/beheer-products-connect-manyname-dialog.component';\nimport { BeheerDisplayEboComponent } from './beheer/components/beheer-display-ebo/beheer-display-ebo.component';\nimport { BeheerProductsConnectRangeinputComponent } from './beheer/components/beheer-products/beheer-products-connect-rangeinput/beheer-products-connect-rangeinput.component';\nimport { FabRangeInputComponent } from './components/fab-range-input/fab-range-input.component';\r\n\r\nconst routes: Routes = [\r\n {\r\n path: 'beheer', children: [\r\n { path: 'inloggen', component: BeheerInlogComponent },\r\n { path: 'overview', component: BeheerMainComponent, canActivate: [AuthGuard] },\r\n { path: 'products', component: BeheerProductsComponent, canActivate: [AuthGuard] },\r\n { path: 'importsets', component: BeheerImportSetsComponent, canActivate: [AuthGuard] },\r\n { path: 'filters', component: BeheerFiltersComponent, canActivate: [AuthGuard] },\r\n { path: 'users', component: BeheerUsersComponent, canActivate: [AuthGuard] },\r\n { path: 'settings', component: BeheerSettingsComponent, canActivate: [AuthGuard] },\r\n { path: 'searchproducts', component: BeheerSearchProductsComponent, canActivate: [AuthGuard] },\r\n { path: 'ebokoppel', component: BeheerEboKoppelComponent, canActivate: [AuthGuard] },\r\n { path: 'categories', component: BeheerCategoriesComponent, canActivate: [AuthGuard] },\r\n { path: 'translate', component: BeheerTranslateComponent, canActivate: [AuthGuard] },\r\n { path: '', component: BeheerMainComponent, pathMatch: 'full', canActivate: [AuthGuard] }\r\n ]\r\n },\r\n { path: '', component: FabStartComponent },\r\n { path: 'categories', component: FabCategoriesComponent },\r\n { path: ':language/categories', component: FabCategoriesComponent },\r\n { path: 'products', component: FabProductSelectComponent },\r\n { path: ':language/products', component: FabProductSelectComponent },\r\n { path: 'product', component: FabProductComponent },\r\n { path: ':language/product', component: FabProductComponent },\r\n { path: '**', pathMatch: 'full', component: FabFiltersComponent },\r\n];\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n HttpClientModule,\r\n MatInputModule,\r\n FormsModule,\r\n BrowserAnimationsModule,\r\n MatTooltipModule,\r\n MatButtonModule,\r\n MatListModule,\r\n MatExpansionModule,\r\n MatCardModule,\r\n MatIconModule,\r\n MatDialogModule,\r\n MatTreeModule,\r\n MatSidenavModule,\r\n MatTableModule,\r\n MatButtonToggleModule,\r\n MatCheckboxModule,\r\n MatDividerModule,\r\n MatTabsModule,\r\n MatProgressSpinnerModule,\r\n MatSelectModule,\r\n MatSnackBarModule,\r\n RouterModule.forRoot(routes, {\r\n scrollPositionRestoration: 'enabled',\r\n anchorScrolling: 'enabled',\r\n }),\t\r\n ],\r\n declarations: [\r\n FabFiltersComponent,\r\n BeheerMainComponent,\r\n BeheerInlogComponent,\r\n BeheerNavComponent,\r\n BeheerUsersComponent,\r\n BeheerProductsComponent,\r\n BeheerFiltersComponent,\r\n BeheerSettingsComponent,\r\n FabLoaderComponent,\r\n BeheerSearchProductsComponent,\r\n BeheerSearchproductsKoppelDialogComponent,\r\n BeheerProductsProductComponent,\r\n BeheerProductsBcbproductComponent,\r\n BeheerImportSetsComponent,\r\n BeheerImportSetsOpbouwComponent,\r\n BeheerImportSetsEigenschapComponent,\r\n BeheerImportSetsEboComponent,\r\n BeheerProductsEigenschapComponent,\r\n BeheerProductsKoppelFilteroptionDailogComponent,\r\n FabFilterComponent,\r\n FabProductComponent,\r\n FabBcbProductComponent,\r\n FabProductSelectComponent,\r\n FabProductTileComponent,\r\n FabProductInfoComponent,\r\n FabProductBestekComponent,\r\n FabProductInfoPhotoComponent,\r\n FabProductInfoPhotoDialogComponent,\r\n BeheerEboKoppelComponent,\r\n BeheerSettingsOptionsComponent,\r\n BeheerSettingsStringComponent,\r\n BeheerImportSetsDialogComponent,\r\n BeheerCategoriesComponent,\r\n BeheerConnectCategoryDialogComponent,\r\n FabStartComponent,\r\n FabCategoriesComponent,\r\n FabCategoryTileComponent,\r\n FabBreadcrumbComponent,\r\n FabFiltersInputComponent,\r\n FabFiltersOverviewComponent,\r\n FabFlagComponent,\r\n BeheerTranslateComponent,\r\n FabLanguageSelectComponent,\r\n FabHeaderComponent,\r\n FabWebglViewerComponent,\r\n FabSvgViewerComponent,\r\n BeheerProductsOpbouwComponent,\r\n BeheerProductsEboComponent,\r\n BeheerProductsEigenschapBereikComponent,\r\n BeheerProductsConnectManynameDialogComponent,\r\n BeheerDisplayEboComponent,\r\n BeheerProductsConnectRangeinputComponent,\r\n FabRangeInputComponent\r\n ],\r\n providers: [\r\n NavigateService,\r\n AuthenticationService,\r\n ProjectSettingService,\r\n ProductsService,\r\n PhotoService,\r\n BestekService,\r\n WebGLService,\r\n SVGService,\r\n MobileService,\r\n TranslateService,\r\n FabrikantenService,\r\n ImportSetsService,\r\n FiltersApiClient,\r\n FabrikantenApiClient,\r\n CategoriesApiClient,\r\n TranslateApiClient,\r\n EBOKoppelApiClient,\r\n SecurityApiClient,\r\n SearchProductsApiClient,\r\n ImportApiClient,\r\n ProductsApiClient,\r\n ProjectSettingApiClient,\r\n { provide: HTTP_INTERCEPTORS, useClass: BasicAuthInterceptor, multi: true },\r\n { provide: HTTP_INTERCEPTORS, useClass: ErrorInterceptor, multi: true },\r\n ],\r\n exports: [\r\n FabFiltersComponent\r\n ]\r\n})\r\n\r\nexport class FabrikantenCoreModule { }\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":["_observableMergeMap","_observableCatch","_observableThrow","_observableOf","i1.SecurityApiClient","i1.AuthenticationService","i1","i2.AuthenticationService","i2","i3.FabrikantenApiClient","i4","i1.BeheerNavComponent","i3.SecurityApiClient","i5","i6","i7","i8","i9","i10.FabLoaderComponent","i2.FabrikantenApiClient","i1.TranslateApiClient","i2.NavigateService","i1.FabrikantenApiClient","i2.BestekService","i3.TranslateService","i4.WebGLService","i5.SVGService","i6.NavigateService","i1.FabrikantenService","i2.TranslateService","i3","i4.FabFilterComponent","i5.FabRangeInputComponent","i2.PhotoService","i1.PhotoService","i1.MobileService","i3.FabrikantenService","i5.FabProductInfoPhotoComponent","i2.FabrikantenService","i4.BestekService","i1.TranslateService","i3.FabFlagComponent","i4.FabBreadcrumbComponent","i5.FabLanguageSelectComponent","i2.WebGLService","i4.MobileService","i9.FabLoaderComponent","i2.SVGService","i5.MobileService","i10","i11","i12","i13","i14.FabLoaderComponent","i3.BestekService","i4.TranslateService","i5.WebGLService","i12.FabProductInfoComponent","i13.FabProductBestekComponent","i14.FabFiltersInputComponent","i15.FabHeaderComponent","i16.FabWebglViewerComponent","i17.FabSvgViewerComponent","i3.PhotoService","i10.FabProductTileComponent","i11.FabFiltersInputComponent","i12.FabHeaderComponent","i3.FabProductComponent","i4.FabProductSelectComponent","i10.FabFiltersInputComponent","i11.FabFiltersOverviewComponent","i1.ProjectSettingApiClient","i1.ImportApiClient","i1.ProductsApiClient","i2.ImportSetsService","i1.ProductsService","i2.ProductsApiClient","i3.ProductsService","i4.ImportSetsService","i2.FiltersApiClient","i12.FabLoaderComponent","i13.BeheerDisplayEboComponent","i3.ImportSetsService","i4.ProductsService","i13.FabLoaderComponent","i1.ImportSetsService","i2.ProductsService","i4.ProductsApiClient","i8.BeheerProductsEigenschapBereikComponent","i6.BeheerProductsEigenschapComponent","i10.BeheerProductsEboComponent","i3.ImportApiClient","i11.BeheerNavComponent","i13.BeheerProductsProductComponent","i14.BeheerProductsBcbproductComponent","i1.ProjectSettingService","i4.BeheerNavComponent","i5.FabLoaderComponent","i6.BeheerSettingsOptionsComponent","i7.BeheerSettingsStringComponent","i11.FabLoaderComponent","i2.SearchProductsApiClient","i2.ImportApiClient","i8.FabLoaderComponent","i7.FabLoaderComponent","i8.BeheerImportSetsEigenschapComponent","i4.ImportApiClient","i12.BeheerNavComponent","i14.BeheerImportSetsOpbouwComponent","i15.BeheerImportSetsEigenschapComponent","i2.CategoriesApiClient","i1.EBOKoppelApiClient","i1.CategoriesApiClient","i6.FabCategoryTileComponent","i7.FabHeaderComponent","i2.TranslateApiClient","i10.BeheerNavComponent","i12.FabFlagComponent"],"mappings":"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"}
|