new-front-common-library 0.0.75 → 0.0.77-ERGO-ROBOTO
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/README.md +28 -28
- package/assets/css/_dark-theme.scss +648 -648
- package/assets/css/_flex.scss +55 -55
- package/assets/css/_global.scss +692 -692
- package/assets/css/_light-theme.scss +651 -651
- package/assets/css/_mat-palettes.scss +96 -96
- package/assets/css/_themes.scss +52 -52
- package/assets/i18n/front-common/de.json +24 -24
- package/assets/i18n/front-common/en.json +24 -24
- package/assets/i18n/front-common/fr.json +24 -24
- package/bundles/new-front-common-library.umd.js +4903 -4900
- package/bundles/new-front-common-library.umd.js.map +1 -1
- package/esm2015/lib/util/array.service.js +19 -19
- package/esm2015/lib/util/component/header/header.component.js +189 -189
- package/esm2015/lib/util/component/overlay/overlay.component.js +44 -44
- package/esm2015/lib/util/component/overlay/overlay.service.js +24 -24
- package/esm2015/lib/util/component/popup/popup-login/popup-login.component.js +90 -90
- package/esm2015/lib/util/component/sub-header/sub-header.component.js +48 -48
- package/esm2015/lib/util/config.js +8 -8
- package/esm2015/lib/util/date/PeriodModel.js +8 -8
- package/esm2015/lib/util/date/date-adapter.js +41 -41
- package/esm2015/lib/util/date/date-format-constants.js +12 -12
- package/esm2015/lib/util/date/date.util.js +218 -218
- package/esm2015/lib/util/decorators/theme.decorator.js +22 -22
- package/esm2015/lib/util/decorators/user.decorator.js +25 -25
- package/esm2015/lib/util/directives/my-number-formatter-directive.js +34 -34
- package/esm2015/lib/util/directives/show-if-truncated.directive.js +25 -25
- package/esm2015/lib/util/enums/rapid-search-item-type.enum.js +10 -10
- package/esm2015/lib/util/enums/status-color.enum.js +11 -11
- package/esm2015/lib/util/event/header/header-events.service.js +21 -21
- package/esm2015/lib/util/event/storage/local-storage-events.service.js +17 -17
- package/esm2015/lib/util/event/storage/session-storage-events.service.js +18 -18
- package/esm2015/lib/util/http/http-params.builder.js +27 -27
- package/esm2015/lib/util/i18n/de.js +60 -59
- package/esm2015/lib/util/i18n/en.js +60 -59
- package/esm2015/lib/util/i18n/fr.js +60 -59
- package/esm2015/lib/util/i18n/multi-translate-http-loader.js +21 -21
- package/esm2015/lib/util/interfaces/permissions.interface.js +2 -2
- package/esm2015/lib/util/models/any-line.model.js +37 -37
- package/esm2015/lib/util/models/audio-content.model.js +27 -27
- package/esm2015/lib/util/models/authPermission.model.js +16 -16
- package/esm2015/lib/util/models/authUser.model.js +20 -20
- package/esm2015/lib/util/models/basic.model.js +14 -14
- package/esm2015/lib/util/models/box-set-item.model.js +19 -19
- package/esm2015/lib/util/models/disc-program.model.js +26 -26
- package/esm2015/lib/util/models/disc.model.js +22 -22
- package/esm2015/lib/util/models/eventType.model.js +7 -7
- package/esm2015/lib/util/models/expenditure-commitment/purchase-order-file.model.js +22 -22
- package/esm2015/lib/util/models/expenditure-commitment/purchase-order-rapid-search.model.js +3 -3
- package/esm2015/lib/util/models/index.js +98 -98
- package/esm2015/lib/util/models/lang-line.model.js +27 -27
- package/esm2015/lib/util/models/legal/contract-work.model.js +23 -23
- package/esm2015/lib/util/models/legal/contract-work2.model.js +21 -21
- package/esm2015/lib/util/models/media-line.model.js +18 -18
- package/esm2015/lib/util/models/menu-language.model.js +15 -15
- package/esm2015/lib/util/models/permission.model.js +20 -20
- package/esm2015/lib/util/models/product-box-set.model.js +16 -16
- package/esm2015/lib/util/models/product-disc-detail.model.js +22 -22
- package/esm2015/lib/util/models/product-disc.model.js +27 -27
- package/esm2015/lib/util/models/product-division.model.js +29 -29
- package/esm2015/lib/util/models/product-type.model.js +22 -22
- package/esm2015/lib/util/models/product.model.js +62 -62
- package/esm2015/lib/util/models/program.model.js +28 -28
- package/esm2015/lib/util/models/purchase-order/purchase-order.model.js +53 -53
- package/esm2015/lib/util/models/referential/WorkVersionArticleDto.js +17 -17
- package/esm2015/lib/util/models/referential/adress-type.model.js +14 -14
- package/esm2015/lib/util/models/referential/adress.model.js +28 -28
- package/esm2015/lib/util/models/referential/attached-file.model.js +17 -17
- package/esm2015/lib/util/models/referential/bank-account.model.js +24 -24
- package/esm2015/lib/util/models/referential/bank-accounts.model.js +31 -31
- package/esm2015/lib/util/models/referential/basic-hierarchy.model.js +8 -8
- package/esm2015/lib/util/models/referential/broadcast-list-item.model.js +13 -13
- package/esm2015/lib/util/models/referential/color.model.js +16 -16
- package/esm2015/lib/util/models/referential/company.model.js +16 -16
- package/esm2015/lib/util/models/referential/content-type.model.js +17 -17
- package/esm2015/lib/util/models/referential/content.model.js +22 -22
- package/esm2015/lib/util/models/referential/cost-center-criteria-values.model.js +14 -14
- package/esm2015/lib/util/models/referential/cost-center-criteria.model.js +13 -13
- package/esm2015/lib/util/models/referential/cost-center.model.js +28 -28
- package/esm2015/lib/util/models/referential/coutry.model.js +16 -16
- package/esm2015/lib/util/models/referential/currency.model.js +20 -20
- package/esm2015/lib/util/models/referential/editorial-content.model.js +18 -18
- package/esm2015/lib/util/models/referential/fixing.model.js +16 -16
- package/esm2015/lib/util/models/referential/flat-media.model.js +18 -18
- package/esm2015/lib/util/models/referential/format-image.model.js +16 -16
- package/esm2015/lib/util/models/referential/format-type.model.js +16 -16
- package/esm2015/lib/util/models/referential/format.model.js +17 -17
- package/esm2015/lib/util/models/referential/fsk-index.model.js +20 -20
- package/esm2015/lib/util/models/referential/fsk.model.js +22 -22
- package/esm2015/lib/util/models/referential/function.model.js +23 -23
- package/esm2015/lib/util/models/referential/genre.model.js +17 -17
- package/esm2015/lib/util/models/referential/invoice-product-type.model.js +22 -22
- package/esm2015/lib/util/models/referential/keywords.model.js +2 -2
- package/esm2015/lib/util/models/referential/language.model.js +18 -18
- package/esm2015/lib/util/models/referential/media-filter.model.js +3 -3
- package/esm2015/lib/util/models/referential/media.model.js +20 -20
- package/esm2015/lib/util/models/referential/module.model.js +20 -20
- package/esm2015/lib/util/models/referential/parameter.model.js +2 -2
- package/esm2015/lib/util/models/referential/participant.model.js +20 -20
- package/esm2015/lib/util/models/referential/person.model.js +23 -23
- package/esm2015/lib/util/models/referential/project-status.model.js +16 -16
- package/esm2015/lib/util/models/referential/quota.model.js +17 -17
- package/esm2015/lib/util/models/referential/referential-entity-state.model.js +16 -16
- package/esm2015/lib/util/models/referential/referential-value.model.js +16 -16
- package/esm2015/lib/util/models/referential/referentiel.model.js +26 -26
- package/esm2015/lib/util/models/referential/restriction.model.js +20 -20
- package/esm2015/lib/util/models/referential/sap-order.model.js +20 -20
- package/esm2015/lib/util/models/referential/service-error.model.js +15 -15
- package/esm2015/lib/util/models/referential/sound.model.js +16 -16
- package/esm2015/lib/util/models/referential/territories-languages.model.js +16 -16
- package/esm2015/lib/util/models/referential/territory-filter.model.js +3 -3
- package/esm2015/lib/util/models/referential/territory.model.js +17 -17
- package/esm2015/lib/util/models/referential/theme.model.js +17 -17
- package/esm2015/lib/util/models/referential/third-party-creation-request.model.js +44 -44
- package/esm2015/lib/util/models/referential/third-party-module.model.js +20 -20
- package/esm2015/lib/util/models/referential/third-party.model.js +83 -83
- package/esm2015/lib/util/models/referential/translated-value-model.js +16 -16
- package/esm2015/lib/util/models/referential/tva.model.js +16 -16
- package/esm2015/lib/util/models/referential/type-export.model.js +16 -16
- package/esm2015/lib/util/models/referential/type-tva-company-territory.model.js +32 -32
- package/esm2015/lib/util/models/referential/type-tva.model.js +25 -25
- package/esm2015/lib/util/models/referential/work-addons-model.js +16 -16
- package/esm2015/lib/util/models/referential/work-appartenance.model.js +17 -17
- package/esm2015/lib/util/models/referential/work-genre.model.js +16 -16
- package/esm2015/lib/util/models/referential/work-language.model.js +16 -16
- package/esm2015/lib/util/models/referential/work-milo.model.js +61 -61
- package/esm2015/lib/util/models/referential/work-participant.model.js +21 -21
- package/esm2015/lib/util/models/referential/work-restrictions-model.js +13 -13
- package/esm2015/lib/util/models/referential/work-theme.model.js +16 -16
- package/esm2015/lib/util/models/referential/work-title.model.js +20 -20
- package/esm2015/lib/util/models/referential/work-version-origin.model.js +16 -16
- package/esm2015/lib/util/models/referential/work-version-rapid-search.model.js +3 -3
- package/esm2015/lib/util/models/referential/work-versions-used.model.js +19 -19
- package/esm2015/lib/util/models/referential/work-versions.model.js +27 -27
- package/esm2015/lib/util/models/referential/work-year-production.model.js +13 -13
- package/esm2015/lib/util/models/referential/work.model.js +22 -22
- package/esm2015/lib/util/models/referential/zone.model.js +14 -14
- package/esm2015/lib/util/models/referentiel.model.js +26 -26
- package/esm2015/lib/util/models/search-response.model.js +10 -10
- package/esm2015/lib/util/models/section.model.js +8 -8
- package/esm2015/lib/util/models/select/options.model.js +8 -8
- package/esm2015/lib/util/models/select/select.model.js +7 -7
- package/esm2015/lib/util/models/subtitle-content.model.js +28 -28
- package/esm2015/lib/util/models/user-video.model.js +22 -22
- package/esm2015/lib/util/models/user.model.js +34 -34
- package/esm2015/lib/util/models/video/product-rapid-search.model.js +3 -3
- package/esm2015/lib/util/models/video/support-rapid-search.model.js +3 -3
- package/esm2015/lib/util/models/video-content.model.js +18 -18
- package/esm2015/lib/util/number.validator.js +129 -129
- package/esm2015/lib/util/permissions/permissions.service.js +41 -41
- package/esm2015/lib/util/pipes/capitalizefirst.pipe.js +41 -41
- package/esm2015/lib/util/pipes/comma-separated-number.pipe.js +15 -15
- package/esm2015/lib/util/pipes/common-translate.pipe.js +38 -38
- package/esm2015/lib/util/pipes/display-html.pipe.js +20 -20
- package/esm2015/lib/util/pipes/display-null.pipe.js +24 -24
- package/esm2015/lib/util/pipes/format-duration.pipe.js +23 -23
- package/esm2015/lib/util/pipes/format-number-input.pipe.js +22 -22
- package/esm2015/lib/util/pipes/local-date.pipe.js +27 -27
- package/esm2015/lib/util/pipes/my-number.pipe.js +44 -44
- package/esm2015/lib/util/pipes/third-party-address.pipe.js +17 -17
- package/esm2015/lib/util/pipes/trim-string.pipe.js +25 -25
- package/esm2015/lib/util/regex/regex.service.js +94 -94
- package/esm2015/lib/util/services/api/common-api.service.js +98 -98
- package/esm2015/lib/util/services/elasticsearch/elasticsearch.service.js +65 -65
- package/esm2015/lib/util/services/form-action/form-actions-events.service.js +25 -25
- package/esm2015/lib/util/services/guard/auth.guard.js +43 -43
- package/esm2015/lib/util/services/guard/login.guard.js +34 -34
- package/esm2015/lib/util/services/history/history.service.js +39 -39
- package/esm2015/lib/util/services/interceptor/auth.interceptor.js +53 -53
- package/esm2015/lib/util/services/jwt-security/aes.service.js +34 -34
- package/esm2015/lib/util/services/jwt-security/interceptorhttp.service.js +18 -18
- package/esm2015/lib/util/services/jwt-security/jwt.helpher.js +34 -34
- package/esm2015/lib/util/services/storage/local-storage.service.js +36 -36
- package/esm2015/lib/util/services/storage/session-storage.service.js +38 -38
- package/esm2015/lib/util/services/translate-language/lang.service.js +31 -31
- package/esm2015/lib/util/sort.js +22 -22
- package/esm2015/lib/util/theme/theme-event.service.js +17 -17
- package/esm2015/lib/util/toaster/toaster-events.service.js +32 -32
- package/esm2015/lib/util/util.module.js +270 -270
- package/esm2015/new-front-common-library.js +4 -4
- package/esm2015/public-api.js +56 -56
- package/fesm2015/new-front-common-library.js +4228 -4225
- package/fesm2015/new-front-common-library.js.map +1 -1
- package/lib/util/array.service.d.ts +7 -7
- package/lib/util/component/header/header.component.d.ts +65 -65
- package/lib/util/component/overlay/overlay.component.d.ts +17 -17
- package/lib/util/component/overlay/overlay.service.d.ts +13 -13
- package/lib/util/component/popup/popup-login/popup-login.component.d.ts +32 -32
- package/lib/util/component/sub-header/sub-header.component.d.ts +13 -13
- package/lib/util/config.d.ts +8 -8
- package/lib/util/date/PeriodModel.d.ts +6 -6
- package/lib/util/date/date-adapter.d.ts +8 -8
- package/lib/util/date/date-format-constants.d.ts +25 -25
- package/lib/util/date/date.util.d.ts +16 -16
- package/lib/util/decorators/theme.decorator.d.ts +1 -1
- package/lib/util/decorators/user.decorator.d.ts +1 -1
- package/lib/util/directives/my-number-formatter-directive.d.ts +15 -15
- package/lib/util/directives/show-if-truncated.directive.d.ts +11 -11
- package/lib/util/enums/rapid-search-item-type.enum.d.ts +8 -8
- package/lib/util/enums/status-color.enum.d.ts +9 -9
- package/lib/util/event/header/header-events.service.d.ts +11 -11
- package/lib/util/event/storage/local-storage-events.service.d.ts +9 -9
- package/lib/util/event/storage/session-storage-events.service.d.ts +10 -10
- package/lib/util/http/http-params.builder.d.ts +9 -9
- package/lib/util/i18n/de.d.ts +51 -50
- package/lib/util/i18n/en.d.ts +51 -50
- package/lib/util/i18n/fr.d.ts +51 -50
- package/lib/util/i18n/multi-translate-http-loader.d.ts +14 -14
- package/lib/util/interfaces/permissions.interface.d.ts +3 -3
- package/lib/util/models/any-line.model.d.ts +24 -24
- package/lib/util/models/audio-content.model.d.ts +27 -27
- package/lib/util/models/authPermission.model.d.ts +7 -7
- package/lib/util/models/authUser.model.d.ts +14 -14
- package/lib/util/models/basic.model.d.ts +11 -11
- package/lib/util/models/box-set-item.model.d.ts +12 -12
- package/lib/util/models/disc-program.model.d.ts +9 -9
- package/lib/util/models/disc.model.d.ts +15 -15
- package/lib/util/models/eventType.model.d.ts +5 -5
- package/lib/util/models/expenditure-commitment/purchase-order-file.model.d.ts +8 -8
- package/lib/util/models/expenditure-commitment/purchase-order-rapid-search.model.d.ts +10 -10
- package/lib/util/models/index.d.ts +97 -97
- package/lib/util/models/lang-line.model.d.ts +18 -18
- package/lib/util/models/legal/contract-work.model.d.ts +27 -27
- package/lib/util/models/legal/contract-work2.model.d.ts +23 -23
- package/lib/util/models/media-line.model.d.ts +9 -9
- package/lib/util/models/menu-language.model.d.ts +6 -6
- package/lib/util/models/permission.model.d.ts +12 -12
- package/lib/util/models/product-box-set.model.d.ts +8 -8
- package/lib/util/models/product-disc-detail.model.d.ts +14 -14
- package/lib/util/models/product-disc.model.d.ts +11 -11
- package/lib/util/models/product-division.model.d.ts +15 -15
- package/lib/util/models/product-type.model.d.ts +7 -7
- package/lib/util/models/product.model.d.ts +52 -52
- package/lib/util/models/program.model.d.ts +21 -21
- package/lib/util/models/purchase-order/purchase-order.model.d.ts +40 -40
- package/lib/util/models/referential/WorkVersionArticleDto.d.ts +10 -10
- package/lib/util/models/referential/adress-type.model.d.ts +5 -5
- package/lib/util/models/referential/adress.model.d.ts +20 -20
- package/lib/util/models/referential/attached-file.model.d.ts +11 -11
- package/lib/util/models/referential/bank-account.model.d.ts +15 -15
- package/lib/util/models/referential/bank-accounts.model.d.ts +17 -17
- package/lib/util/models/referential/basic-hierarchy.model.d.ts +6 -6
- package/lib/util/models/referential/broadcast-list-item.model.d.ts +8 -8
- package/lib/util/models/referential/color.model.d.ts +6 -6
- package/lib/util/models/referential/company.model.d.ts +7 -7
- package/lib/util/models/referential/content-type.model.d.ts +12 -12
- package/lib/util/models/referential/content.model.d.ts +7 -7
- package/lib/util/models/referential/cost-center-criteria-values.model.d.ts +7 -7
- package/lib/util/models/referential/cost-center-criteria.model.d.ts +12 -12
- package/lib/util/models/referential/cost-center.model.d.ts +18 -18
- package/lib/util/models/referential/coutry.model.d.ts +7 -7
- package/lib/util/models/referential/currency.model.d.ts +11 -11
- package/lib/util/models/referential/editorial-content.model.d.ts +25 -25
- package/lib/util/models/referential/fixing.model.d.ts +10 -10
- package/lib/util/models/referential/flat-media.model.d.ts +9 -9
- package/lib/util/models/referential/format-image.model.d.ts +7 -7
- package/lib/util/models/referential/format-type.model.d.ts +6 -6
- package/lib/util/models/referential/format.model.d.ts +7 -7
- package/lib/util/models/referential/fsk-index.model.d.ts +22 -22
- package/lib/util/models/referential/fsk.model.d.ts +37 -37
- package/lib/util/models/referential/function.model.d.ts +8 -8
- package/lib/util/models/referential/genre.model.d.ts +7 -7
- package/lib/util/models/referential/invoice-product-type.model.d.ts +7 -7
- package/lib/util/models/referential/keywords.model.d.ts +6 -6
- package/lib/util/models/referential/language.model.d.ts +11 -11
- package/lib/util/models/referential/media-filter.model.d.ts +10 -10
- package/lib/util/models/referential/media.model.d.ts +11 -11
- package/lib/util/models/referential/module.model.d.ts +11 -11
- package/lib/util/models/referential/parameter.model.d.ts +6 -6
- package/lib/util/models/referential/participant.model.d.ts +11 -11
- package/lib/util/models/referential/person.model.d.ts +13 -13
- package/lib/util/models/referential/project-status.model.d.ts +6 -6
- package/lib/util/models/referential/quota.model.d.ts +7 -7
- package/lib/util/models/referential/referential-entity-state.model.d.ts +11 -11
- package/lib/util/models/referential/referential-value.model.d.ts +11 -11
- package/lib/util/models/referential/referentiel.model.d.ts +12 -12
- package/lib/util/models/referential/restriction.model.d.ts +9 -9
- package/lib/util/models/referential/sap-order.model.d.ts +27 -27
- package/lib/util/models/referential/service-error.model.d.ts +13 -13
- package/lib/util/models/referential/sound.model.d.ts +6 -6
- package/lib/util/models/referential/territories-languages.model.d.ts +8 -8
- package/lib/util/models/referential/territory-filter.model.d.ts +6 -6
- package/lib/util/models/referential/territory.model.d.ts +12 -11
- package/lib/util/models/referential/theme.model.d.ts +7 -7
- package/lib/util/models/referential/third-party-creation-request.model.d.ts +48 -48
- package/lib/util/models/referential/third-party-module.model.d.ts +11 -11
- package/lib/util/models/referential/third-party.model.d.ts +45 -45
- package/lib/util/models/referential/translated-value-model.d.ts +10 -10
- package/lib/util/models/referential/tva.model.d.ts +7 -7
- package/lib/util/models/referential/type-export.model.d.ts +7 -7
- package/lib/util/models/referential/type-tva-company-territory.model.d.ts +18 -18
- package/lib/util/models/referential/type-tva.model.d.ts +10 -10
- package/lib/util/models/referential/work-addons-model.d.ts +25 -25
- package/lib/util/models/referential/work-appartenance.model.d.ts +7 -7
- package/lib/util/models/referential/work-genre.model.d.ts +11 -11
- package/lib/util/models/referential/work-language.model.d.ts +11 -11
- package/lib/util/models/referential/work-milo.model.d.ts +46 -46
- package/lib/util/models/referential/work-participant.model.d.ts +10 -10
- package/lib/util/models/referential/work-restrictions-model.d.ts +18 -18
- package/lib/util/models/referential/work-theme.model.d.ts +11 -11
- package/lib/util/models/referential/work-title.model.d.ts +10 -10
- package/lib/util/models/referential/work-version-origin.model.d.ts +10 -10
- package/lib/util/models/referential/work-version-rapid-search.model.d.ts +9 -9
- package/lib/util/models/referential/work-versions-used.model.d.ts +12 -12
- package/lib/util/models/referential/work-versions.model.d.ts +29 -29
- package/lib/util/models/referential/work-year-production.model.d.ts +6 -6
- package/lib/util/models/referential/work.model.d.ts +74 -74
- package/lib/util/models/referential/zone.model.d.ts +6 -6
- package/lib/util/models/referentiel.model.d.ts +12 -12
- package/lib/util/models/search-response.model.d.ts +7 -7
- package/lib/util/models/section.model.d.ts +7 -7
- package/lib/util/models/select/options.model.d.ts +6 -6
- package/lib/util/models/select/select.model.d.ts +5 -5
- package/lib/util/models/subtitle-content.model.d.ts +26 -26
- package/lib/util/models/user-video.model.d.ts +10 -10
- package/lib/util/models/user.model.d.ts +25 -25
- package/lib/util/models/video/product-rapid-search.model.d.ts +8 -8
- package/lib/util/models/video/support-rapid-search.model.d.ts +6 -6
- package/lib/util/models/video-content.model.d.ts +24 -24
- package/lib/util/number.validator.d.ts +14 -14
- package/lib/util/permissions/permissions.service.d.ts +12 -12
- package/lib/util/pipes/capitalizefirst.pipe.d.ts +8 -8
- package/lib/util/pipes/comma-separated-number.pipe.d.ts +7 -7
- package/lib/util/pipes/common-translate.pipe.d.ts +12 -12
- package/lib/util/pipes/display-html.pipe.d.ts +10 -10
- package/lib/util/pipes/display-null.pipe.d.ts +8 -8
- package/lib/util/pipes/format-duration.pipe.d.ts +7 -7
- package/lib/util/pipes/format-number-input.pipe.d.ts +7 -7
- package/lib/util/pipes/local-date.pipe.d.ts +9 -9
- package/lib/util/pipes/my-number.pipe.d.ts +11 -11
- package/lib/util/pipes/third-party-address.pipe.d.ts +8 -8
- package/lib/util/pipes/trim-string.pipe.d.ts +7 -7
- package/lib/util/regex/regex.service.d.ts +12 -12
- package/lib/util/services/api/common-api.service.d.ts +27 -27
- package/lib/util/services/elasticsearch/elasticsearch.service.d.ts +17 -17
- package/lib/util/services/form-action/form-actions-events.service.d.ts +14 -14
- package/lib/util/services/guard/auth.guard.d.ts +18 -18
- package/lib/util/services/guard/login.guard.d.ts +18 -18
- package/lib/util/services/history/history.service.d.ts +10 -10
- package/lib/util/services/interceptor/auth.interceptor.d.ts +16 -16
- package/lib/util/services/jwt-security/aes.service.d.ts +12 -12
- package/lib/util/services/jwt-security/interceptorhttp.service.d.ts +8 -8
- package/lib/util/services/jwt-security/jwt.helpher.d.ts +4 -4
- package/lib/util/services/storage/local-storage.service.d.ts +13 -13
- package/lib/util/services/storage/session-storage.service.d.ts +13 -13
- package/lib/util/services/translate-language/lang.service.d.ts +14 -14
- package/lib/util/sort.d.ts +4 -4
- package/lib/util/theme/theme-event.service.d.ts +9 -9
- package/lib/util/toaster/toaster-events.service.d.ts +15 -15
- package/lib/util/util.module.d.ts +50 -50
- package/new-front-common-library.d.ts +5 -5
- package/package.json +1 -1
- package/public-api.d.ts +53 -53
- package/esm2015/lib/util/models/milo/territory.model.js +0 -18
- package/lib/util/models/milo/territory.model.d.ts +0 -9
|
@@ -1,94 +1,94 @@
|
|
|
1
|
-
import { Injectable } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
export class RegexService {
|
|
4
|
-
isDecimalOrNegative(numberToCheck = null) {
|
|
5
|
-
if (numberToCheck == null) {
|
|
6
|
-
return false;
|
|
7
|
-
}
|
|
8
|
-
else {
|
|
9
|
-
const myRegexNoDecimal = new RegExp(/^\d+$/, 'i');
|
|
10
|
-
if (!myRegexNoDecimal.test(numberToCheck.toString())) {
|
|
11
|
-
return true;
|
|
12
|
-
}
|
|
13
|
-
}
|
|
14
|
-
return false;
|
|
15
|
-
}
|
|
16
|
-
isMiloCode(value = null) {
|
|
17
|
-
if (value == null) {
|
|
18
|
-
return false;
|
|
19
|
-
}
|
|
20
|
-
else {
|
|
21
|
-
const regex = new RegExp(/^[C0-9][0-9]{5}$/, 'i');
|
|
22
|
-
if (regex.test(value.toString())) {
|
|
23
|
-
return true;
|
|
24
|
-
}
|
|
25
|
-
}
|
|
26
|
-
return false;
|
|
27
|
-
}
|
|
28
|
-
isAmount(value = null) {
|
|
29
|
-
if (value == null) {
|
|
30
|
-
return false;
|
|
31
|
-
}
|
|
32
|
-
else {
|
|
33
|
-
const regex = new RegExp(/^\d+\.?\d*$/, 'i');
|
|
34
|
-
if (regex.test(value.toString())) {
|
|
35
|
-
return true;
|
|
36
|
-
}
|
|
37
|
-
}
|
|
38
|
-
return false;
|
|
39
|
-
}
|
|
40
|
-
isYesNo(value = null) {
|
|
41
|
-
if (value == null) {
|
|
42
|
-
return false;
|
|
43
|
-
}
|
|
44
|
-
else {
|
|
45
|
-
const regex = new RegExp(/^(y|Y|n|N|o|O)$/, 'i');
|
|
46
|
-
if (regex.test(value.toString())) {
|
|
47
|
-
return true;
|
|
48
|
-
}
|
|
49
|
-
}
|
|
50
|
-
return false;
|
|
51
|
-
}
|
|
52
|
-
isFinancialCondition(value = null) {
|
|
53
|
-
if (value == null) {
|
|
54
|
-
return false;
|
|
55
|
-
}
|
|
56
|
-
else {
|
|
57
|
-
const regex = new RegExp(/^(f|F|s|S|g|G)$/, 'i');
|
|
58
|
-
if (regex.test(value.toString())) {
|
|
59
|
-
return true;
|
|
60
|
-
}
|
|
61
|
-
}
|
|
62
|
-
return false;
|
|
63
|
-
}
|
|
64
|
-
isOrderNumber(value = null) {
|
|
65
|
-
if (value == null) {
|
|
66
|
-
return false;
|
|
67
|
-
}
|
|
68
|
-
else {
|
|
69
|
-
const regex = new RegExp(/^[5](6|8)(2|4|9)(N|O|Y)[0-9]{1}[C0-9][0-9]{5}[0-9]{1}$/, 'i');
|
|
70
|
-
if (regex.test(value.toString())) {
|
|
71
|
-
return true;
|
|
72
|
-
}
|
|
73
|
-
}
|
|
74
|
-
return false;
|
|
75
|
-
}
|
|
76
|
-
isDate(value = null) {
|
|
77
|
-
if (value == null) {
|
|
78
|
-
return false;
|
|
79
|
-
}
|
|
80
|
-
else {
|
|
81
|
-
const regex = new RegExp(/^([0-9]{2}[-][0-9]{2}[-][0-9]{4}|[0-9]{4}[-][0-9]{2}[-][0-9]{2})$/, 'i');
|
|
82
|
-
if (regex.test(value.toString())) {
|
|
83
|
-
return true;
|
|
84
|
-
}
|
|
85
|
-
}
|
|
86
|
-
return false;
|
|
87
|
-
}
|
|
88
|
-
}
|
|
89
|
-
RegexService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.2", ngImport: i0, type: RegexService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
90
|
-
RegexService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.2", ngImport: i0, type: RegexService });
|
|
91
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.2", ngImport: i0, type: RegexService, decorators: [{
|
|
92
|
-
type: Injectable
|
|
93
|
-
}] });
|
|
94
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export class RegexService {
|
|
4
|
+
isDecimalOrNegative(numberToCheck = null) {
|
|
5
|
+
if (numberToCheck == null) {
|
|
6
|
+
return false;
|
|
7
|
+
}
|
|
8
|
+
else {
|
|
9
|
+
const myRegexNoDecimal = new RegExp(/^\d+$/, 'i');
|
|
10
|
+
if (!myRegexNoDecimal.test(numberToCheck.toString())) {
|
|
11
|
+
return true;
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
return false;
|
|
15
|
+
}
|
|
16
|
+
isMiloCode(value = null) {
|
|
17
|
+
if (value == null) {
|
|
18
|
+
return false;
|
|
19
|
+
}
|
|
20
|
+
else {
|
|
21
|
+
const regex = new RegExp(/^[C0-9][0-9]{5}$/, 'i');
|
|
22
|
+
if (regex.test(value.toString())) {
|
|
23
|
+
return true;
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
return false;
|
|
27
|
+
}
|
|
28
|
+
isAmount(value = null) {
|
|
29
|
+
if (value == null) {
|
|
30
|
+
return false;
|
|
31
|
+
}
|
|
32
|
+
else {
|
|
33
|
+
const regex = new RegExp(/^\d+\.?\d*$/, 'i');
|
|
34
|
+
if (regex.test(value.toString())) {
|
|
35
|
+
return true;
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
return false;
|
|
39
|
+
}
|
|
40
|
+
isYesNo(value = null) {
|
|
41
|
+
if (value == null) {
|
|
42
|
+
return false;
|
|
43
|
+
}
|
|
44
|
+
else {
|
|
45
|
+
const regex = new RegExp(/^(y|Y|n|N|o|O)$/, 'i');
|
|
46
|
+
if (regex.test(value.toString())) {
|
|
47
|
+
return true;
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
return false;
|
|
51
|
+
}
|
|
52
|
+
isFinancialCondition(value = null) {
|
|
53
|
+
if (value == null) {
|
|
54
|
+
return false;
|
|
55
|
+
}
|
|
56
|
+
else {
|
|
57
|
+
const regex = new RegExp(/^(f|F|s|S|g|G)$/, 'i');
|
|
58
|
+
if (regex.test(value.toString())) {
|
|
59
|
+
return true;
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
return false;
|
|
63
|
+
}
|
|
64
|
+
isOrderNumber(value = null) {
|
|
65
|
+
if (value == null) {
|
|
66
|
+
return false;
|
|
67
|
+
}
|
|
68
|
+
else {
|
|
69
|
+
const regex = new RegExp(/^[5](6|8)(2|4|9)(N|O|Y)[0-9]{1}[C0-9][0-9]{5}[0-9]{1}$/, 'i');
|
|
70
|
+
if (regex.test(value.toString())) {
|
|
71
|
+
return true;
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
return false;
|
|
75
|
+
}
|
|
76
|
+
isDate(value = null) {
|
|
77
|
+
if (value == null) {
|
|
78
|
+
return false;
|
|
79
|
+
}
|
|
80
|
+
else {
|
|
81
|
+
const regex = new RegExp(/^([0-9]{2}[-][0-9]{2}[-][0-9]{4}|[0-9]{4}[-][0-9]{2}[-][0-9]{2})$/, 'i');
|
|
82
|
+
if (regex.test(value.toString())) {
|
|
83
|
+
return true;
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
return false;
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
RegexService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.2", ngImport: i0, type: RegexService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
90
|
+
RegexService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.2", ngImport: i0, type: RegexService });
|
|
91
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.2", ngImport: i0, type: RegexService, decorators: [{
|
|
92
|
+
type: Injectable
|
|
93
|
+
}] });
|
|
94
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVnZXguc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25ldy1mcm9udC1jb21tb24tbGlicmFyeS9zcmMvbGliL3V0aWwvcmVnZXgvcmVnZXguc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUczQyxNQUFNLE9BQU8sWUFBWTtJQUNkLG1CQUFtQixDQUFDLGdCQUF3QixJQUFJO1FBQ25ELElBQUksYUFBYSxJQUFJLElBQUksRUFBRTtZQUN2QixPQUFPLEtBQUssQ0FBQztTQUNoQjthQUFNO1lBQ0gsTUFBTSxnQkFBZ0IsR0FBRyxJQUFJLE1BQU0sQ0FBQyxPQUFPLEVBQUUsR0FBRyxDQUFDLENBQUM7WUFDbEQsSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsUUFBUSxFQUFFLENBQUMsRUFBRTtnQkFDbEQsT0FBTyxJQUFJLENBQUM7YUFDZjtTQUNKO1FBQ0QsT0FBTyxLQUFLLENBQUM7SUFDakIsQ0FBQztJQUVNLFVBQVUsQ0FBQyxRQUFnQixJQUFJO1FBQ2xDLElBQUksS0FBSyxJQUFJLElBQUksRUFBRTtZQUNmLE9BQU8sS0FBSyxDQUFDO1NBQ2hCO2FBQU07WUFDSCxNQUFNLEtBQUssR0FBRyxJQUFJLE1BQU0sQ0FBQyxrQkFBa0IsRUFBRSxHQUFHLENBQUMsQ0FBQztZQUNsRCxJQUFJLEtBQUssQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDLEVBQUU7Z0JBQzlCLE9BQU8sSUFBSSxDQUFDO2FBQ2Y7U0FDSjtRQUNELE9BQU8sS0FBSyxDQUFDO0lBQ2pCLENBQUM7SUFFTSxRQUFRLENBQUMsUUFBZ0IsSUFBSTtRQUNoQyxJQUFJLEtBQUssSUFBSSxJQUFJLEVBQUU7WUFDZixPQUFPLEtBQUssQ0FBQztTQUNoQjthQUFNO1lBQ0gsTUFBTSxLQUFLLEdBQUcsSUFBSSxNQUFNLENBQUMsYUFBYSxFQUFFLEdBQUcsQ0FBQyxDQUFDO1lBQzdDLElBQUksS0FBSyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUMsRUFBRTtnQkFDOUIsT0FBTyxJQUFJLENBQUM7YUFDZjtTQUNKO1FBQ0QsT0FBTyxLQUFLLENBQUM7SUFDakIsQ0FBQztJQUVNLE9BQU8sQ0FBQyxRQUFnQixJQUFJO1FBQy9CLElBQUksS0FBSyxJQUFJLElBQUksRUFBRTtZQUNmLE9BQU8sS0FBSyxDQUFDO1NBQ2hCO2FBQU07WUFDSCxNQUFNLEtBQUssR0FBRyxJQUFJLE1BQU0sQ0FBQyxpQkFBaUIsRUFBRSxHQUFHLENBQUMsQ0FBQztZQUNqRCxJQUFJLEtBQUssQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDLEVBQUU7Z0JBQzlCLE9BQU8sSUFBSSxDQUFDO2FBQ2Y7U0FDSjtRQUNELE9BQU8sS0FBSyxDQUFDO0lBQ2pCLENBQUM7SUFFTSxvQkFBb0IsQ0FBQyxRQUFnQixJQUFJO1FBQzVDLElBQUksS0FBSyxJQUFJLElBQUksRUFBRTtZQUNmLE9BQU8sS0FBSyxDQUFDO1NBQ2hCO2FBQU07WUFDSCxNQUFNLEtBQUssR0FBRyxJQUFJLE1BQU0sQ0FBQyxpQkFBaUIsRUFBRSxHQUFHLENBQUMsQ0FBQztZQUNqRCxJQUFJLEtBQUssQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDLEVBQUU7Z0JBQzlCLE9BQU8sSUFBSSxDQUFDO2FBQ2Y7U0FDSjtRQUNELE9BQU8sS0FBSyxDQUFDO0lBQ2pCLENBQUM7SUFFTSxhQUFhLENBQUMsUUFBZ0IsSUFBSTtRQUNyQyxJQUFJLEtBQUssSUFBSSxJQUFJLEVBQUU7WUFDZixPQUFPLEtBQUssQ0FBQztTQUNoQjthQUFNO1lBQ0gsTUFBTSxLQUFLLEdBQUcsSUFBSSxNQUFNLENBQ3BCLHdEQUF3RCxFQUN4RCxHQUFHLENBQ04sQ0FBQztZQUNGLElBQUksS0FBSyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUMsRUFBRTtnQkFDOUIsT0FBTyxJQUFJLENBQUM7YUFDZjtTQUNKO1FBQ0QsT0FBTyxLQUFLLENBQUM7SUFDakIsQ0FBQztJQUVNLE1BQU0sQ0FBQyxRQUFnQixJQUFJO1FBQzlCLElBQUksS0FBSyxJQUFJLElBQUksRUFBRTtZQUNmLE9BQU8sS0FBSyxDQUFDO1NBQ2hCO2FBQU07WUFDSCxNQUFNLEtBQUssR0FBRyxJQUFJLE1BQU0sQ0FDcEIsbUVBQW1FLEVBQ25FLEdBQUcsQ0FDTixDQUFDO1lBQ0YsSUFBSSxLQUFLLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQyxFQUFFO2dCQUM5QixPQUFPLElBQUksQ0FBQzthQUNmO1NBQ0o7UUFDRCxPQUFPLEtBQUssQ0FBQztJQUNqQixDQUFDOzt5R0F6RlEsWUFBWTs2R0FBWixZQUFZOzJGQUFaLFlBQVk7a0JBRHhCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5ASW5qZWN0YWJsZSgpXHJcbmV4cG9ydCBjbGFzcyBSZWdleFNlcnZpY2Uge1xyXG4gICAgcHVibGljIGlzRGVjaW1hbE9yTmVnYXRpdmUobnVtYmVyVG9DaGVjazogbnVtYmVyID0gbnVsbCk6IGJvb2xlYW4ge1xyXG4gICAgICAgIGlmIChudW1iZXJUb0NoZWNrID09IG51bGwpIHtcclxuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIGNvbnN0IG15UmVnZXhOb0RlY2ltYWwgPSBuZXcgUmVnRXhwKC9eXFxkKyQvLCAnaScpO1xyXG4gICAgICAgICAgICBpZiAoIW15UmVnZXhOb0RlY2ltYWwudGVzdChudW1iZXJUb0NoZWNrLnRvU3RyaW5nKCkpKSB7XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIGlzTWlsb0NvZGUodmFsdWU6IHN0cmluZyA9IG51bGwpOiBib29sZWFuIHtcclxuICAgICAgICBpZiAodmFsdWUgPT0gbnVsbCkge1xyXG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgY29uc3QgcmVnZXggPSBuZXcgUmVnRXhwKC9eW0MwLTldWzAtOV17NX0kLywgJ2knKTtcclxuICAgICAgICAgICAgaWYgKHJlZ2V4LnRlc3QodmFsdWUudG9TdHJpbmcoKSkpIHtcclxuICAgICAgICAgICAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgaXNBbW91bnQodmFsdWU6IHN0cmluZyA9IG51bGwpOiBib29sZWFuIHtcclxuICAgICAgICBpZiAodmFsdWUgPT0gbnVsbCkge1xyXG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgY29uc3QgcmVnZXggPSBuZXcgUmVnRXhwKC9eXFxkK1xcLj9cXGQqJC8sICdpJyk7XHJcbiAgICAgICAgICAgIGlmIChyZWdleC50ZXN0KHZhbHVlLnRvU3RyaW5nKCkpKSB7XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIGlzWWVzTm8odmFsdWU6IHN0cmluZyA9IG51bGwpOiBib29sZWFuIHtcclxuICAgICAgICBpZiAodmFsdWUgPT0gbnVsbCkge1xyXG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgY29uc3QgcmVnZXggPSBuZXcgUmVnRXhwKC9eKHl8WXxufE58b3xPKSQvLCAnaScpO1xyXG4gICAgICAgICAgICBpZiAocmVnZXgudGVzdCh2YWx1ZS50b1N0cmluZygpKSkge1xyXG4gICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBpc0ZpbmFuY2lhbENvbmRpdGlvbih2YWx1ZTogc3RyaW5nID0gbnVsbCk6IGJvb2xlYW4ge1xyXG4gICAgICAgIGlmICh2YWx1ZSA9PSBudWxsKSB7XHJcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICBjb25zdCByZWdleCA9IG5ldyBSZWdFeHAoL14oZnxGfHN8U3xnfEcpJC8sICdpJyk7XHJcbiAgICAgICAgICAgIGlmIChyZWdleC50ZXN0KHZhbHVlLnRvU3RyaW5nKCkpKSB7XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIGlzT3JkZXJOdW1iZXIodmFsdWU6IHN0cmluZyA9IG51bGwpOiBib29sZWFuIHtcclxuICAgICAgICBpZiAodmFsdWUgPT0gbnVsbCkge1xyXG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgY29uc3QgcmVnZXggPSBuZXcgUmVnRXhwKFxyXG4gICAgICAgICAgICAgICAgL15bNV0oNnw4KSgyfDR8OSkoTnxPfFkpWzAtOV17MX1bQzAtOV1bMC05XXs1fVswLTldezF9JC8sXHJcbiAgICAgICAgICAgICAgICAnaSdcclxuICAgICAgICAgICAgKTtcclxuICAgICAgICAgICAgaWYgKHJlZ2V4LnRlc3QodmFsdWUudG9TdHJpbmcoKSkpIHtcclxuICAgICAgICAgICAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgaXNEYXRlKHZhbHVlOiBzdHJpbmcgPSBudWxsKTogYm9vbGVhbiB7XHJcbiAgICAgICAgaWYgKHZhbHVlID09IG51bGwpIHtcclxuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIGNvbnN0IHJlZ2V4ID0gbmV3IFJlZ0V4cChcclxuICAgICAgICAgICAgICAgIC9eKFswLTldezJ9Wy1dWzAtOV17Mn1bLV1bMC05XXs0fXxbMC05XXs0fVstXVswLTldezJ9Wy1dWzAtOV17Mn0pJC8sXHJcbiAgICAgICAgICAgICAgICAnaSdcclxuICAgICAgICAgICAgKTtcclxuICAgICAgICAgICAgaWYgKHJlZ2V4LnRlc3QodmFsdWUudG9TdHJpbmcoKSkpIHtcclxuICAgICAgICAgICAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgIH1cclxufVxyXG4iXX0=
|
|
@@ -1,98 +1,98 @@
|
|
|
1
|
-
import { HttpHeaders } from '@angular/common/http';
|
|
2
|
-
// Angular2
|
|
3
|
-
import { Inject, Injectable } from '@angular/core';
|
|
4
|
-
import { throwError } from 'rxjs';
|
|
5
|
-
import { WEB_CONFIG } from '../../config';
|
|
6
|
-
import { catchError } from 'rxjs/operators';
|
|
7
|
-
import { JwtHelper } from '../jwt-security/jwt.helpher';
|
|
8
|
-
import * as i0 from "@angular/core";
|
|
9
|
-
import * as i1 from "ngx-cookie-service";
|
|
10
|
-
import * as i2 from "@angular/common/http";
|
|
11
|
-
const TOKEN_NAME = 'authToken';
|
|
12
|
-
const SECONDARY_TOKEN_NAME = 'authTokenSecondary';
|
|
13
|
-
export class CommonApiService {
|
|
14
|
-
constructor(config, cookieService, http) {
|
|
15
|
-
this.config = config;
|
|
16
|
-
this.cookieService = cookieService;
|
|
17
|
-
this.http = http;
|
|
18
|
-
this.headers = new HttpHeaders({
|
|
19
|
-
'Content-Type': 'application/json'
|
|
20
|
-
});
|
|
21
|
-
this.jwtHelper = new JwtHelper();
|
|
22
|
-
}
|
|
23
|
-
static handleError(error) {
|
|
24
|
-
return throwError(error || 'api error');
|
|
25
|
-
}
|
|
26
|
-
// Global product search
|
|
27
|
-
getProductGlobalSearch(searchInput, language) {
|
|
28
|
-
return this.http
|
|
29
|
-
.get(this.config.api_url +
|
|
30
|
-
'/video-api/products/globalSearch?searchInput=' +
|
|
31
|
-
searchInput +
|
|
32
|
-
'&language=' +
|
|
33
|
-
language)
|
|
34
|
-
.pipe(catchError(CommonApiService.handleError));
|
|
35
|
-
}
|
|
36
|
-
getPurchaseOrderByGlobalSearch(searchInput, language) {
|
|
37
|
-
return this.http
|
|
38
|
-
.get(this.config.api_url +
|
|
39
|
-
'/video-api/purchaseOrders/globalSearch?searchInput=' +
|
|
40
|
-
searchInput +
|
|
41
|
-
'&language=' +
|
|
42
|
-
language)
|
|
43
|
-
.pipe(catchError(CommonApiService.handleError));
|
|
44
|
-
}
|
|
45
|
-
setToken(token) {
|
|
46
|
-
sessionStorage.removeItem(TOKEN_NAME);
|
|
47
|
-
sessionStorage.setItem(TOKEN_NAME, token);
|
|
48
|
-
}
|
|
49
|
-
setSecondaryToken(token) {
|
|
50
|
-
sessionStorage.removeItem(SECONDARY_TOKEN_NAME);
|
|
51
|
-
sessionStorage.setItem(SECONDARY_TOKEN_NAME, token);
|
|
52
|
-
}
|
|
53
|
-
getToken() {
|
|
54
|
-
const user = this.decodeToken(TOKEN_NAME);
|
|
55
|
-
if (user && user.superAdmin && sessionStorage.hasOwnProperty(SECONDARY_TOKEN_NAME)) {
|
|
56
|
-
return sessionStorage.getItem(SECONDARY_TOKEN_NAME);
|
|
57
|
-
}
|
|
58
|
-
return sessionStorage.getItem(TOKEN_NAME);
|
|
59
|
-
}
|
|
60
|
-
decodeToken(tokenName) {
|
|
61
|
-
return sessionStorage.hasOwnProperty(tokenName) ? this.jwtHelper.decodeToken(sessionStorage.getItem(tokenName)) : {};
|
|
62
|
-
}
|
|
63
|
-
getUserDataFromToken() {
|
|
64
|
-
const user = this.decodeToken(TOKEN_NAME);
|
|
65
|
-
if (user && user.superAdmin && sessionStorage.hasOwnProperty(SECONDARY_TOKEN_NAME)) {
|
|
66
|
-
return Object.assign({ secondary: true }, this.decodeToken(SECONDARY_TOKEN_NAME));
|
|
67
|
-
}
|
|
68
|
-
return user;
|
|
69
|
-
}
|
|
70
|
-
isTokenValid() {
|
|
71
|
-
let payload;
|
|
72
|
-
try {
|
|
73
|
-
payload = this.getUserDataFromToken();
|
|
74
|
-
}
|
|
75
|
-
catch (e) {
|
|
76
|
-
payload = {};
|
|
77
|
-
}
|
|
78
|
-
if (!payload.exp) {
|
|
79
|
-
return false;
|
|
80
|
-
}
|
|
81
|
-
return payload.exp * 1000 > Date.now();
|
|
82
|
-
}
|
|
83
|
-
ssoLogin(email) {
|
|
84
|
-
const url = this.config.api_url + '/authorization-api/login/email';
|
|
85
|
-
return this.http
|
|
86
|
-
.post(url, email, { headers: this.headers })
|
|
87
|
-
.pipe(catchError(CommonApiService.handleError));
|
|
88
|
-
}
|
|
89
|
-
}
|
|
90
|
-
CommonApiService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.2", ngImport: i0, type: CommonApiService, deps: [{ token: WEB_CONFIG }, { token: i1.CookieService }, { token: i2.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
91
|
-
CommonApiService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.2", ngImport: i0, type: CommonApiService });
|
|
92
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.2", ngImport: i0, type: CommonApiService, decorators: [{
|
|
93
|
-
type: Injectable
|
|
94
|
-
}], ctorParameters: function () { return [{ type: undefined, decorators: [{
|
|
95
|
-
type: Inject,
|
|
96
|
-
args: [WEB_CONFIG]
|
|
97
|
-
}] }, { type: i1.CookieService }, { type: i2.HttpClient }]; } });
|
|
98
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
import { HttpHeaders } from '@angular/common/http';
|
|
2
|
+
// Angular2
|
|
3
|
+
import { Inject, Injectable } from '@angular/core';
|
|
4
|
+
import { throwError } from 'rxjs';
|
|
5
|
+
import { WEB_CONFIG } from '../../config';
|
|
6
|
+
import { catchError } from 'rxjs/operators';
|
|
7
|
+
import { JwtHelper } from '../jwt-security/jwt.helpher';
|
|
8
|
+
import * as i0 from "@angular/core";
|
|
9
|
+
import * as i1 from "ngx-cookie-service";
|
|
10
|
+
import * as i2 from "@angular/common/http";
|
|
11
|
+
const TOKEN_NAME = 'authToken';
|
|
12
|
+
const SECONDARY_TOKEN_NAME = 'authTokenSecondary';
|
|
13
|
+
export class CommonApiService {
|
|
14
|
+
constructor(config, cookieService, http) {
|
|
15
|
+
this.config = config;
|
|
16
|
+
this.cookieService = cookieService;
|
|
17
|
+
this.http = http;
|
|
18
|
+
this.headers = new HttpHeaders({
|
|
19
|
+
'Content-Type': 'application/json'
|
|
20
|
+
});
|
|
21
|
+
this.jwtHelper = new JwtHelper();
|
|
22
|
+
}
|
|
23
|
+
static handleError(error) {
|
|
24
|
+
return throwError(error || 'api error');
|
|
25
|
+
}
|
|
26
|
+
// Global product search
|
|
27
|
+
getProductGlobalSearch(searchInput, language) {
|
|
28
|
+
return this.http
|
|
29
|
+
.get(this.config.api_url +
|
|
30
|
+
'/video-api/products/globalSearch?searchInput=' +
|
|
31
|
+
searchInput +
|
|
32
|
+
'&language=' +
|
|
33
|
+
language)
|
|
34
|
+
.pipe(catchError(CommonApiService.handleError));
|
|
35
|
+
}
|
|
36
|
+
getPurchaseOrderByGlobalSearch(searchInput, language) {
|
|
37
|
+
return this.http
|
|
38
|
+
.get(this.config.api_url +
|
|
39
|
+
'/video-api/purchaseOrders/globalSearch?searchInput=' +
|
|
40
|
+
searchInput +
|
|
41
|
+
'&language=' +
|
|
42
|
+
language)
|
|
43
|
+
.pipe(catchError(CommonApiService.handleError));
|
|
44
|
+
}
|
|
45
|
+
setToken(token) {
|
|
46
|
+
sessionStorage.removeItem(TOKEN_NAME);
|
|
47
|
+
sessionStorage.setItem(TOKEN_NAME, token);
|
|
48
|
+
}
|
|
49
|
+
setSecondaryToken(token) {
|
|
50
|
+
sessionStorage.removeItem(SECONDARY_TOKEN_NAME);
|
|
51
|
+
sessionStorage.setItem(SECONDARY_TOKEN_NAME, token);
|
|
52
|
+
}
|
|
53
|
+
getToken() {
|
|
54
|
+
const user = this.decodeToken(TOKEN_NAME);
|
|
55
|
+
if (user && user.superAdmin && sessionStorage.hasOwnProperty(SECONDARY_TOKEN_NAME)) {
|
|
56
|
+
return sessionStorage.getItem(SECONDARY_TOKEN_NAME);
|
|
57
|
+
}
|
|
58
|
+
return sessionStorage.getItem(TOKEN_NAME);
|
|
59
|
+
}
|
|
60
|
+
decodeToken(tokenName) {
|
|
61
|
+
return sessionStorage.hasOwnProperty(tokenName) ? this.jwtHelper.decodeToken(sessionStorage.getItem(tokenName)) : {};
|
|
62
|
+
}
|
|
63
|
+
getUserDataFromToken() {
|
|
64
|
+
const user = this.decodeToken(TOKEN_NAME);
|
|
65
|
+
if (user && user.superAdmin && sessionStorage.hasOwnProperty(SECONDARY_TOKEN_NAME)) {
|
|
66
|
+
return Object.assign({ secondary: true }, this.decodeToken(SECONDARY_TOKEN_NAME));
|
|
67
|
+
}
|
|
68
|
+
return user;
|
|
69
|
+
}
|
|
70
|
+
isTokenValid() {
|
|
71
|
+
let payload;
|
|
72
|
+
try {
|
|
73
|
+
payload = this.getUserDataFromToken();
|
|
74
|
+
}
|
|
75
|
+
catch (e) {
|
|
76
|
+
payload = {};
|
|
77
|
+
}
|
|
78
|
+
if (!payload.exp) {
|
|
79
|
+
return false;
|
|
80
|
+
}
|
|
81
|
+
return payload.exp * 1000 > Date.now();
|
|
82
|
+
}
|
|
83
|
+
ssoLogin(email) {
|
|
84
|
+
const url = this.config.api_url + '/authorization-api/login/email';
|
|
85
|
+
return this.http
|
|
86
|
+
.post(url, email, { headers: this.headers })
|
|
87
|
+
.pipe(catchError(CommonApiService.handleError));
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
CommonApiService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.2", ngImport: i0, type: CommonApiService, deps: [{ token: WEB_CONFIG }, { token: i1.CookieService }, { token: i2.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
91
|
+
CommonApiService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.2", ngImport: i0, type: CommonApiService });
|
|
92
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.2", ngImport: i0, type: CommonApiService, decorators: [{
|
|
93
|
+
type: Injectable
|
|
94
|
+
}], ctorParameters: function () { return [{ type: undefined, decorators: [{
|
|
95
|
+
type: Inject,
|
|
96
|
+
args: [WEB_CONFIG]
|
|
97
|
+
}] }, { type: i1.CookieService }, { type: i2.HttpClient }]; } });
|
|
98
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbW9uLWFwaS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmV3LWZyb250LWNvbW1vbi1saWJyYXJ5L3NyYy9saWIvdXRpbC9zZXJ2aWNlcy9hcGkvY29tbW9uLWFwaS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBYyxXQUFXLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUMvRCxXQUFXO0FBQ1gsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFjLFVBQVUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUM5QyxPQUFPLEVBQVUsVUFBVSxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQ2xELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUU1QyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sNkJBQTZCLENBQUM7Ozs7QUFHeEQsTUFBTSxVQUFVLEdBQUcsV0FBVyxDQUFDO0FBQy9CLE1BQU0sb0JBQW9CLEdBQUcsb0JBQW9CLENBQUM7QUFHbEQsTUFBTSxPQUFPLGdCQUFnQjtJQVF6QixZQUNnQyxNQUFjLEVBQ2xDLGFBQTRCLEVBQzVCLElBQWdCO1FBRkksV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUNsQyxrQkFBYSxHQUFiLGFBQWEsQ0FBZTtRQUM1QixTQUFJLEdBQUosSUFBSSxDQUFZO1FBVHJCLFlBQU8sR0FBZ0IsSUFBSSxXQUFXLENBQUM7WUFDMUMsY0FBYyxFQUFFLGtCQUFrQjtTQUNyQyxDQUFDLENBQUM7UUFFSSxjQUFTLEdBQUcsSUFBSSxTQUFTLEVBQUUsQ0FBQztJQU9uQyxDQUFDO0lBRU0sTUFBTSxDQUFDLFdBQVcsQ0FBQyxLQUFLO1FBQzNCLE9BQU8sVUFBVSxDQUFDLEtBQUssSUFBSSxXQUFXLENBQUMsQ0FBQztJQUM1QyxDQUFDO0lBRUQsd0JBQXdCO0lBQ2pCLHNCQUFzQixDQUN6QixXQUFtQixFQUNuQixRQUFnQjtRQUVoQixPQUFPLElBQUksQ0FBQyxJQUFJO2FBQ1gsR0FBRyxDQUNBLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTztZQUNuQiwrQ0FBK0M7WUFDL0MsV0FBVztZQUNYLFlBQVk7WUFDWixRQUFRLENBQ1g7YUFDQSxJQUFJLENBQUMsVUFBVSxDQUFDLGdCQUFnQixDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUM7SUFDeEQsQ0FBQztJQUVNLDhCQUE4QixDQUNqQyxXQUFtQixFQUNuQixRQUFnQjtRQUVoQixPQUFPLElBQUksQ0FBQyxJQUFJO2FBQ1gsR0FBRyxDQUNBLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTztZQUNuQixxREFBcUQ7WUFDckQsV0FBVztZQUNYLFlBQVk7WUFDWixRQUFRLENBQ1g7YUFDQSxJQUFJLENBQUMsVUFBVSxDQUFDLGdCQUFnQixDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUM7SUFDeEQsQ0FBQztJQUVNLFFBQVEsQ0FBQyxLQUFhO1FBQ3pCLGNBQWMsQ0FBQyxVQUFVLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDdEMsY0FBYyxDQUFDLE9BQU8sQ0FBQyxVQUFVLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDOUMsQ0FBQztJQUVNLGlCQUFpQixDQUFDLEtBQWE7UUFDbEMsY0FBYyxDQUFDLFVBQVUsQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDO1FBQ2hELGNBQWMsQ0FBQyxPQUFPLENBQUMsb0JBQW9CLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDeEQsQ0FBQztJQUVELFFBQVE7UUFDSixNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQzFDLElBQUksSUFBSSxJQUFJLElBQUksQ0FBQyxVQUFVLElBQUksY0FBYyxDQUFDLGNBQWMsQ0FBQyxvQkFBb0IsQ0FBQyxFQUFFO1lBQ2hGLE9BQU8sY0FBYyxDQUFDLE9BQU8sQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDO1NBQ3ZEO1FBRUQsT0FBTyxjQUFjLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQzlDLENBQUM7SUFFTSxXQUFXLENBQUMsU0FBaUI7UUFDaEMsT0FBTyxjQUFjLENBQUMsY0FBYyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLFdBQVcsQ0FBQyxjQUFjLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztJQUN6SCxDQUFDO0lBRU0sb0JBQW9CO1FBQ3ZCLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsVUFBVSxDQUFDLENBQUM7UUFFMUMsSUFBSSxJQUFJLElBQUksSUFBSSxDQUFDLFVBQVUsSUFBSSxjQUFjLENBQUMsY0FBYyxDQUFDLG9CQUFvQixDQUFDLEVBQUU7WUFDaEYsT0FBTyxNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUMsU0FBUyxFQUFFLElBQUksRUFBQyxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsb0JBQW9CLENBQUMsQ0FBQyxDQUFDO1NBQ25GO1FBRUQsT0FBTyxJQUFJLENBQUM7SUFDaEIsQ0FBQztJQUVNLFlBQVk7UUFDZixJQUFJLE9BQVksQ0FBQztRQUNqQixJQUFJO1lBQ0EsT0FBTyxHQUFHLElBQUksQ0FBQyxvQkFBb0IsRUFBRSxDQUFDO1NBQ3pDO1FBQUMsT0FBTyxDQUFDLEVBQUU7WUFDUixPQUFPLEdBQUcsRUFBRSxDQUFDO1NBQ2hCO1FBRUQsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUU7WUFDZCxPQUFPLEtBQUssQ0FBQztTQUNoQjtRQUVELE9BQU8sT0FBTyxDQUFDLEdBQUcsR0FBRyxJQUFJLEdBQUcsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDO0lBQzNDLENBQUM7SUFFTSxRQUFRLENBQUMsS0FBYTtRQUN6QixNQUFNLEdBQUcsR0FBVyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sR0FBRyxnQ0FBZ0MsQ0FBQztRQUUzRSxPQUFPLElBQUksQ0FBQyxJQUFJO2FBQ1gsSUFBSSxDQUFDLEdBQUcsRUFBRSxLQUFLLEVBQUUsRUFBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLE9BQU8sRUFBQyxDQUFDO2FBQ3pDLElBQUksQ0FBQyxVQUFVLENBQUMsZ0JBQWdCLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQztJQUN4RCxDQUFDOzs2R0F4R1EsZ0JBQWdCLGtCQVNiLFVBQVU7aUhBVGIsZ0JBQWdCOzJGQUFoQixnQkFBZ0I7a0JBRDVCLFVBQVU7OzBCQVVGLE1BQU07MkJBQUMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFByb2R1Y3RNb2RlbCwgUHVyY2hhc2VPcmRlck1vZGVsIH0gZnJvbSAnLi4vLi4vbW9kZWxzJztcclxuaW1wb3J0IHsgSHR0cENsaWVudCwgSHR0cEhlYWRlcnMgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XHJcbi8vIEFuZ3VsYXIyXHJcbmltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlLCB0aHJvd0Vycm9yIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IENvbmZpZywgV0VCX0NPTkZJRyB9IGZyb20gJy4uLy4uL2NvbmZpZyc7XHJcbmltcG9ydCB7IGNhdGNoRXJyb3IgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7IENvb2tpZVNlcnZpY2UgfSBmcm9tICduZ3gtY29va2llLXNlcnZpY2UnO1xyXG5pbXBvcnQgeyBKd3RIZWxwZXIgfSBmcm9tICcuLi9qd3Qtc2VjdXJpdHkvand0LmhlbHBoZXInO1xyXG5cclxuXHJcbmNvbnN0IFRPS0VOX05BTUUgPSAnYXV0aFRva2VuJztcclxuY29uc3QgU0VDT05EQVJZX1RPS0VOX05BTUUgPSAnYXV0aFRva2VuU2Vjb25kYXJ5JztcclxuXHJcbkBJbmplY3RhYmxlKClcclxuZXhwb3J0IGNsYXNzIENvbW1vbkFwaVNlcnZpY2Uge1xyXG5cclxuICAgIHB1YmxpYyBoZWFkZXJzOiBIdHRwSGVhZGVycyA9IG5ldyBIdHRwSGVhZGVycyh7XHJcbiAgICAgICAgJ0NvbnRlbnQtVHlwZSc6ICdhcHBsaWNhdGlvbi9qc29uJ1xyXG4gICAgfSk7XHJcblxyXG4gICAgcHVibGljIGp3dEhlbHBlciA9IG5ldyBKd3RIZWxwZXIoKTtcclxuXHJcbiAgICBjb25zdHJ1Y3RvcihcclxuICAgICAgICBASW5qZWN0KFdFQl9DT05GSUcpIHByaXZhdGUgY29uZmlnOiBDb25maWcsXHJcbiAgICAgICAgcHJpdmF0ZSBjb29raWVTZXJ2aWNlOiBDb29raWVTZXJ2aWNlLFxyXG4gICAgICAgIHByaXZhdGUgaHR0cDogSHR0cENsaWVudFxyXG4gICAgKSB7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIHN0YXRpYyBoYW5kbGVFcnJvcihlcnJvcikge1xyXG4gICAgICAgIHJldHVybiB0aHJvd0Vycm9yKGVycm9yIHx8ICdhcGkgZXJyb3InKTtcclxuICAgIH1cclxuXHJcbiAgICAvLyBHbG9iYWwgcHJvZHVjdCBzZWFyY2hcclxuICAgIHB1YmxpYyBnZXRQcm9kdWN0R2xvYmFsU2VhcmNoKFxyXG4gICAgICAgIHNlYXJjaElucHV0OiBzdHJpbmcsXHJcbiAgICAgICAgbGFuZ3VhZ2U6IHN0cmluZ1xyXG4gICAgKTogT2JzZXJ2YWJsZTxQcm9kdWN0TW9kZWxbXT4ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmh0dHBcclxuICAgICAgICAgICAgLmdldDxQcm9kdWN0TW9kZWxbXT4oXHJcbiAgICAgICAgICAgICAgICB0aGlzLmNvbmZpZy5hcGlfdXJsICtcclxuICAgICAgICAgICAgICAgICcvdmlkZW8tYXBpL3Byb2R1Y3RzL2dsb2JhbFNlYXJjaD9zZWFyY2hJbnB1dD0nICtcclxuICAgICAgICAgICAgICAgIHNlYXJjaElucHV0ICtcclxuICAgICAgICAgICAgICAgICcmbGFuZ3VhZ2U9JyArXHJcbiAgICAgICAgICAgICAgICBsYW5ndWFnZVxyXG4gICAgICAgICAgICApXHJcbiAgICAgICAgICAgIC5waXBlKGNhdGNoRXJyb3IoQ29tbW9uQXBpU2VydmljZS5oYW5kbGVFcnJvcikpO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBnZXRQdXJjaGFzZU9yZGVyQnlHbG9iYWxTZWFyY2goXHJcbiAgICAgICAgc2VhcmNoSW5wdXQ6IHN0cmluZyxcclxuICAgICAgICBsYW5ndWFnZTogc3RyaW5nXHJcbiAgICApOiBPYnNlcnZhYmxlPFB1cmNoYXNlT3JkZXJNb2RlbFtdPiB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cFxyXG4gICAgICAgICAgICAuZ2V0PFB1cmNoYXNlT3JkZXJNb2RlbFtdPihcclxuICAgICAgICAgICAgICAgIHRoaXMuY29uZmlnLmFwaV91cmwgK1xyXG4gICAgICAgICAgICAgICAgJy92aWRlby1hcGkvcHVyY2hhc2VPcmRlcnMvZ2xvYmFsU2VhcmNoP3NlYXJjaElucHV0PScgK1xyXG4gICAgICAgICAgICAgICAgc2VhcmNoSW5wdXQgK1xyXG4gICAgICAgICAgICAgICAgJyZsYW5ndWFnZT0nICtcclxuICAgICAgICAgICAgICAgIGxhbmd1YWdlXHJcbiAgICAgICAgICAgIClcclxuICAgICAgICAgICAgLnBpcGUoY2F0Y2hFcnJvcihDb21tb25BcGlTZXJ2aWNlLmhhbmRsZUVycm9yKSk7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIHNldFRva2VuKHRva2VuOiBzdHJpbmcpOiB2b2lkIHtcclxuICAgICAgICBzZXNzaW9uU3RvcmFnZS5yZW1vdmVJdGVtKFRPS0VOX05BTUUpO1xyXG4gICAgICAgIHNlc3Npb25TdG9yYWdlLnNldEl0ZW0oVE9LRU5fTkFNRSwgdG9rZW4pO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBzZXRTZWNvbmRhcnlUb2tlbih0b2tlbjogc3RyaW5nKTogdm9pZCB7XHJcbiAgICAgICAgc2Vzc2lvblN0b3JhZ2UucmVtb3ZlSXRlbShTRUNPTkRBUllfVE9LRU5fTkFNRSk7XHJcbiAgICAgICAgc2Vzc2lvblN0b3JhZ2Uuc2V0SXRlbShTRUNPTkRBUllfVE9LRU5fTkFNRSwgdG9rZW4pO1xyXG4gICAgfVxyXG5cclxuICAgIGdldFRva2VuKCkge1xyXG4gICAgICAgIGNvbnN0IHVzZXIgPSB0aGlzLmRlY29kZVRva2VuKFRPS0VOX05BTUUpO1xyXG4gICAgICAgIGlmICh1c2VyICYmIHVzZXIuc3VwZXJBZG1pbiAmJiBzZXNzaW9uU3RvcmFnZS5oYXNPd25Qcm9wZXJ0eShTRUNPTkRBUllfVE9LRU5fTkFNRSkpIHtcclxuICAgICAgICAgICAgcmV0dXJuIHNlc3Npb25TdG9yYWdlLmdldEl0ZW0oU0VDT05EQVJZX1RPS0VOX05BTUUpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgcmV0dXJuIHNlc3Npb25TdG9yYWdlLmdldEl0ZW0oVE9LRU5fTkFNRSk7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIGRlY29kZVRva2VuKHRva2VuTmFtZTogc3RyaW5nKSB7XHJcbiAgICAgICAgcmV0dXJuIHNlc3Npb25TdG9yYWdlLmhhc093blByb3BlcnR5KHRva2VuTmFtZSkgPyB0aGlzLmp3dEhlbHBlci5kZWNvZGVUb2tlbihzZXNzaW9uU3RvcmFnZS5nZXRJdGVtKHRva2VuTmFtZSkpIDoge307XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIGdldFVzZXJEYXRhRnJvbVRva2VuKCk6IGFueSB7XHJcbiAgICAgICAgY29uc3QgdXNlciA9IHRoaXMuZGVjb2RlVG9rZW4oVE9LRU5fTkFNRSk7XHJcblxyXG4gICAgICAgIGlmICh1c2VyICYmIHVzZXIuc3VwZXJBZG1pbiAmJiBzZXNzaW9uU3RvcmFnZS5oYXNPd25Qcm9wZXJ0eShTRUNPTkRBUllfVE9LRU5fTkFNRSkpIHtcclxuICAgICAgICAgICAgcmV0dXJuIE9iamVjdC5hc3NpZ24oe3NlY29uZGFyeTogdHJ1ZX0sIHRoaXMuZGVjb2RlVG9rZW4oU0VDT05EQVJZX1RPS0VOX05BTUUpKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHJldHVybiB1c2VyO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBpc1Rva2VuVmFsaWQoKSB7XHJcbiAgICAgICAgbGV0IHBheWxvYWQ6IGFueTtcclxuICAgICAgICB0cnkge1xyXG4gICAgICAgICAgICBwYXlsb2FkID0gdGhpcy5nZXRVc2VyRGF0YUZyb21Ub2tlbigpO1xyXG4gICAgICAgIH0gY2F0Y2ggKGUpIHtcclxuICAgICAgICAgICAgcGF5bG9hZCA9IHt9O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaWYgKCFwYXlsb2FkLmV4cCkge1xyXG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICByZXR1cm4gcGF5bG9hZC5leHAgKiAxMDAwID4gRGF0ZS5ub3coKTtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgc3NvTG9naW4oZW1haWw6IHN0cmluZyk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICAgICAgY29uc3QgdXJsOiBzdHJpbmcgPSB0aGlzLmNvbmZpZy5hcGlfdXJsICsgJy9hdXRob3JpemF0aW9uLWFwaS9sb2dpbi9lbWFpbCc7XHJcblxyXG4gICAgICAgIHJldHVybiB0aGlzLmh0dHBcclxuICAgICAgICAgICAgLnBvc3QodXJsLCBlbWFpbCwge2hlYWRlcnM6IHRoaXMuaGVhZGVyc30pXHJcbiAgICAgICAgICAgIC5waXBlKGNhdGNoRXJyb3IoQ29tbW9uQXBpU2VydmljZS5oYW5kbGVFcnJvcikpO1xyXG4gICAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -1,65 +1,65 @@
|
|
|
1
|
-
import { Inject, Injectable } from '@angular/core';
|
|
2
|
-
import { from } from 'rxjs';
|
|
3
|
-
import { Client as ClientJs } from 'elasticsearch-browser';
|
|
4
|
-
import { WEB_CONFIG } from '../../config';
|
|
5
|
-
import * as i0 from "@angular/core";
|
|
6
|
-
export class ElasticsearchService {
|
|
7
|
-
constructor(config) {
|
|
8
|
-
this.config = config;
|
|
9
|
-
}
|
|
10
|
-
getElasticsearchClient() {
|
|
11
|
-
if (!this.client) {
|
|
12
|
-
this.client = new ClientJs({
|
|
13
|
-
host: this.config.elasticsearch_url
|
|
14
|
-
});
|
|
15
|
-
}
|
|
16
|
-
return this.client;
|
|
17
|
-
}
|
|
18
|
-
getSearchResponse(text) {
|
|
19
|
-
return from(this.getElasticsearchClient().msearch({
|
|
20
|
-
body: [
|
|
21
|
-
{ index: 'unity-work-version*' },
|
|
22
|
-
{
|
|
23
|
-
query: {
|
|
24
|
-
dis_max: {
|
|
25
|
-
queries: [{ wildcard: { miloCode: { value: '*' + text + '*' } } }, { wildcard: { title: { value: '*' + text + '*' } } }, { wildcard: { title: { value: text + '*' } } }, { wildcard: { title: { value: text } } }],
|
|
26
|
-
tie_breaker: 0.5
|
|
27
|
-
}
|
|
28
|
-
},
|
|
29
|
-
sort: [{ _score: { order: 'desc' } }, { title: { order: "asc" } }],
|
|
30
|
-
size: 50
|
|
31
|
-
},
|
|
32
|
-
{ index: 'unity-product*' },
|
|
33
|
-
{
|
|
34
|
-
query: { dis_max: { queries: [{ wildcard: { ean: { value: '*' + text + '*' } } }, { wildcard: { title: { value: '*' + text + '*' } } }] } },
|
|
35
|
-
sort: { releaseDate: { order: 'desc' } },
|
|
36
|
-
size: 50
|
|
37
|
-
},
|
|
38
|
-
{ index: 'unity-purchase-order*' },
|
|
39
|
-
{
|
|
40
|
-
query: { dis_max: { queries: [{ wildcard: { poNumber: { value: '*' + text + '*' } } }, { wildcard: { ean: { value: '*' + text + '*' } } }, { wildcard: { basketNumber: { value: '*' + text + '*' } } }] } },
|
|
41
|
-
size: 50
|
|
42
|
-
},
|
|
43
|
-
]
|
|
44
|
-
}));
|
|
45
|
-
}
|
|
46
|
-
getDocuments(searchResponse) {
|
|
47
|
-
let results = [];
|
|
48
|
-
if (searchResponse && searchResponse.responses) {
|
|
49
|
-
for (const r of searchResponse.responses) {
|
|
50
|
-
const item = r.hits.hits && r.hits.hits.length > 0 ? r.hits.hits.map(v => v._source) : [];
|
|
51
|
-
results = results.concat(item);
|
|
52
|
-
}
|
|
53
|
-
}
|
|
54
|
-
return results;
|
|
55
|
-
}
|
|
56
|
-
}
|
|
57
|
-
ElasticsearchService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.2", ngImport: i0, type: ElasticsearchService, deps: [{ token: WEB_CONFIG }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
58
|
-
ElasticsearchService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.2", ngImport: i0, type: ElasticsearchService });
|
|
59
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.2", ngImport: i0, type: ElasticsearchService, decorators: [{
|
|
60
|
-
type: Injectable
|
|
61
|
-
}], ctorParameters: function () { return [{ type: undefined, decorators: [{
|
|
62
|
-
type: Inject,
|
|
63
|
-
args: [WEB_CONFIG]
|
|
64
|
-
}] }]; } });
|
|
65
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
import { Inject, Injectable } from '@angular/core';
|
|
2
|
+
import { from } from 'rxjs';
|
|
3
|
+
import { Client as ClientJs } from 'elasticsearch-browser';
|
|
4
|
+
import { WEB_CONFIG } from '../../config';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
export class ElasticsearchService {
|
|
7
|
+
constructor(config) {
|
|
8
|
+
this.config = config;
|
|
9
|
+
}
|
|
10
|
+
getElasticsearchClient() {
|
|
11
|
+
if (!this.client) {
|
|
12
|
+
this.client = new ClientJs({
|
|
13
|
+
host: this.config.elasticsearch_url
|
|
14
|
+
});
|
|
15
|
+
}
|
|
16
|
+
return this.client;
|
|
17
|
+
}
|
|
18
|
+
getSearchResponse(text) {
|
|
19
|
+
return from(this.getElasticsearchClient().msearch({
|
|
20
|
+
body: [
|
|
21
|
+
{ index: 'unity-work-version*' },
|
|
22
|
+
{
|
|
23
|
+
query: {
|
|
24
|
+
dis_max: {
|
|
25
|
+
queries: [{ wildcard: { miloCode: { value: '*' + text + '*' } } }, { wildcard: { title: { value: '*' + text + '*' } } }, { wildcard: { title: { value: text + '*' } } }, { wildcard: { title: { value: text } } }],
|
|
26
|
+
tie_breaker: 0.5
|
|
27
|
+
}
|
|
28
|
+
},
|
|
29
|
+
sort: [{ _score: { order: 'desc' } }, { title: { order: "asc" } }],
|
|
30
|
+
size: 50
|
|
31
|
+
},
|
|
32
|
+
{ index: 'unity-product*' },
|
|
33
|
+
{
|
|
34
|
+
query: { dis_max: { queries: [{ wildcard: { ean: { value: '*' + text + '*' } } }, { wildcard: { title: { value: '*' + text + '*' } } }] } },
|
|
35
|
+
sort: { releaseDate: { order: 'desc' } },
|
|
36
|
+
size: 50
|
|
37
|
+
},
|
|
38
|
+
{ index: 'unity-purchase-order*' },
|
|
39
|
+
{
|
|
40
|
+
query: { dis_max: { queries: [{ wildcard: { poNumber: { value: '*' + text + '*' } } }, { wildcard: { ean: { value: '*' + text + '*' } } }, { wildcard: { basketNumber: { value: '*' + text + '*' } } }] } },
|
|
41
|
+
size: 50
|
|
42
|
+
},
|
|
43
|
+
]
|
|
44
|
+
}));
|
|
45
|
+
}
|
|
46
|
+
getDocuments(searchResponse) {
|
|
47
|
+
let results = [];
|
|
48
|
+
if (searchResponse && searchResponse.responses) {
|
|
49
|
+
for (const r of searchResponse.responses) {
|
|
50
|
+
const item = r.hits.hits && r.hits.hits.length > 0 ? r.hits.hits.map(v => v._source) : [];
|
|
51
|
+
results = results.concat(item);
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
return results;
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
ElasticsearchService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.2", ngImport: i0, type: ElasticsearchService, deps: [{ token: WEB_CONFIG }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
58
|
+
ElasticsearchService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.2", ngImport: i0, type: ElasticsearchService });
|
|
59
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.2", ngImport: i0, type: ElasticsearchService, decorators: [{
|
|
60
|
+
type: Injectable
|
|
61
|
+
}], ctorParameters: function () { return [{ type: undefined, decorators: [{
|
|
62
|
+
type: Inject,
|
|
63
|
+
args: [WEB_CONFIG]
|
|
64
|
+
}] }]; } });
|
|
65
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxhc3RpY3NlYXJjaC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmV3LWZyb250LWNvbW1vbi1saWJyYXJ5L3NyYy9saWIvdXRpbC9zZXJ2aWNlcy9lbGFzdGljc2VhcmNoL2VsYXN0aWNzZWFyY2guc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsTUFBTSxFQUFFLFVBQVUsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUNqRCxPQUFPLEVBQUMsSUFBSSxFQUFhLE1BQU0sTUFBTSxDQUFDO0FBQ3RDLE9BQU8sRUFBQyxNQUFNLElBQUksUUFBUSxFQUFDLE1BQU0sdUJBQXVCLENBQUM7QUFJekQsT0FBTyxFQUFTLFVBQVUsRUFBQyxNQUFNLGNBQWMsQ0FBQzs7QUFLaEQsTUFBTSxPQUFPLG9CQUFvQjtJQUUvQixZQUF3QyxNQUFjO1FBQWQsV0FBTSxHQUFOLE1BQU0sQ0FBUTtJQUN0RCxDQUFDO0lBSU8sc0JBQXNCO1FBQzVCLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFO1lBQ2hCLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxRQUFRLENBQUM7Z0JBQ3pCLElBQUksRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLGlCQUFpQjthQUNwQyxDQUFDLENBQUM7U0FDSjtRQUNELE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQztJQUNyQixDQUFDO0lBRU0saUJBQWlCLENBQUMsSUFBWTtRQUNuQyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsc0JBQXNCLEVBQUUsQ0FBQyxPQUFPLENBQUM7WUFDaEQsSUFBSSxFQUFFO2dCQUNKLEVBQUMsS0FBSyxFQUFFLHFCQUFxQixFQUFDO2dCQUM5QjtvQkFDRSxLQUFLLEVBQUU7d0JBQ0wsT0FBTyxFQUFFOzRCQUNQLE9BQU8sRUFBRSxDQUFDLEVBQUMsUUFBUSxFQUFFLEVBQUMsUUFBUSxFQUFFLEVBQUMsS0FB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QUdJLE1BQU07MkJBQUMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7SW5qZWN0LCBJbmplY3RhYmxlfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtmcm9tLCBPYnNlcnZhYmxlfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHtDbGllbnQgYXMgQ2xpZW50SnN9IGZyb20gJ2VsYXN0aWNzZWFyY2gtYnJvd3Nlcic7XHJcbmltcG9ydCB7Q2xpZW50LCBNU2VhcmNoUmVzcG9uc2V9IGZyb20gJ2VsYXN0aWNzZWFyY2gnO1xyXG5pbXBvcnQge1B1cmNoYXNlT3JkZXJSYXBpZFNlYXJjaE1vZGVsfSBmcm9tIFwiLi4vLi4vbW9kZWxzL2V4cGVuZGl0dXJlLWNvbW1pdG1lbnQvcHVyY2hhc2Utb3JkZXItcmFwaWQtc2VhcmNoLm1vZGVsXCI7XHJcbmltcG9ydCB7UHJvZHVjdFJhcGlkU2VhcmNoTW9kZWx9IGZyb20gXCIuLi8uLi9tb2RlbHMvdmlkZW8vcHJvZHVjdC1yYXBpZC1zZWFyY2gubW9kZWxcIjtcclxuaW1wb3J0IHtDb25maWcsIFdFQl9DT05GSUd9IGZyb20gJy4uLy4uL2NvbmZpZyc7XHJcbmltcG9ydCB7V29ya1ZlcnNpb25SYXBpZFNlYXJjaE1vZGVsfSBmcm9tIFwiLi4vLi4vbW9kZWxzL3JlZmVyZW50aWFsL3dvcmstdmVyc2lvbi1yYXBpZC1zZWFyY2gubW9kZWxcIjtcclxuXHJcblxyXG5ASW5qZWN0YWJsZSgpXHJcbmV4cG9ydCBjbGFzcyBFbGFzdGljc2VhcmNoU2VydmljZSB7XHJcblxyXG4gIGNvbnN0cnVjdG9yKEBJbmplY3QoV0VCX0NPTkZJRykgcHJpdmF0ZSBjb25maWc6IENvbmZpZykge1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBjbGllbnQ6IENsaWVudDtcclxuXHJcbiAgcHJpdmF0ZSBnZXRFbGFzdGljc2VhcmNoQ2xpZW50KCk6IENsaWVudCB7XHJcbiAgICBpZiAoIXRoaXMuY2xpZW50KSB7XHJcbiAgICAgIHRoaXMuY2xpZW50ID0gbmV3IENsaWVudEpzKHtcclxuICAgICAgICBob3N0OiB0aGlzLmNvbmZpZy5lbGFzdGljc2VhcmNoX3VybFxyXG4gICAgICB9KTtcclxuICAgIH1cclxuICAgIHJldHVybiB0aGlzLmNsaWVudDtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXRTZWFyY2hSZXNwb25zZSh0ZXh0OiBzdHJpbmcpOiBPYnNlcnZhYmxlPE1TZWFyY2hSZXNwb25zZTxhbnk+PiB7XHJcbiAgICByZXR1cm4gZnJvbSh0aGlzLmdldEVsYXN0aWNzZWFyY2hDbGllbnQoKS5tc2VhcmNoKHtcclxuICAgICAgYm9keTogW1xyXG4gICAgICAgIHtpbmRleDogJ3VuaXR5LXdvcmstdmVyc2lvbionfSxcclxuICAgICAgICB7XHJcbiAgICAgICAgICBxdWVyeToge1xyXG4gICAgICAgICAgICBkaXNfbWF4OiB7XHJcbiAgICAgICAgICAgICAgcXVlcmllczogW3t3aWxkY2FyZDoge21pbG9Db2RlOiB7dmFsdWU6ICcqJyArIHRleHQgKyAnKid9fX0sIHt3aWxkY2FyZDoge3RpdGxlOiB7dmFsdWU6ICcqJyArIHRleHQgKyAnKid9fX0sIHt3aWxkY2FyZDoge3RpdGxlOiB7dmFsdWU6IHRleHQgKyAnKid9fX0sIHt3aWxkY2FyZDoge3RpdGxlOiB7dmFsdWU6IHRleHR9fX1dLFxyXG4gICAgICAgICAgICAgIHRpZV9icmVha2VyOiAwLjVcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfSxcclxuICAgICAgICAgIHNvcnQ6IFt7X3Njb3JlOiB7b3JkZXI6ICdkZXNjJ319ICx7dGl0bGU6IHtvcmRlcjogXCJhc2NcIn19XSxcclxuICAgICAgICAgIHNpemU6IDUwXHJcbiAgICAgICAgfSxcclxuICAgICAgICB7aW5kZXg6ICd1bml0eS1wcm9kdWN0Kid9LFxyXG4gICAgICAgIHtcclxuICAgICAgICAgIHF1ZXJ5OiB7ZGlzX21heDoge3F1ZXJpZXM6IFt7d2lsZGNhcmQ6IHtlYW46IHt2YWx1ZTogJyonICsgdGV4dCArICcqJ319fSwge3dpbGRjYXJkOiB7dGl0bGU6IHt2YWx1ZTogJyonICsgdGV4dCArICcqJ319fV19fSxcclxuICAgICAgICAgIHNvcnQ6IHtyZWxlYXNlRGF0ZToge29yZGVyOiAnZGVzYyd9fSxcclxuICAgICAgICAgIHNpemU6IDUwXHJcbiAgICAgICAgfSxcclxuICAgICAgICB7aW5kZXg6ICd1bml0eS1wdXJjaGFzZS1vcmRlcionfSxcclxuICAgICAgICB7XHJcbiAgICAgICAgICBxdWVyeToge2Rpc19tYXg6IHtxdWVyaWVzOiBbe3dpbGRjYXJkOiB7cG9OdW1iZXI6IHt2YWx1ZTogJyonICsgdGV4dCArICcqJ319fSwge3dpbGRjYXJkOiB7ZWFuOiB7dmFsdWU6ICcqJyArIHRleHQgKyAnKid9fX0sIHt3aWxkY2FyZDoge2Jhc2tldE51bWJlcjoge3ZhbHVlOiAnKicgKyB0ZXh0ICsgJyonfX19XX19LFxyXG4gICAgICAgICAgc2l6ZTogNTBcclxuICAgICAgICB9LFxyXG4gICAgICBdXHJcbiAgICB9KSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0RG9jdW1lbnRzKHNlYXJjaFJlc3BvbnNlOiBhbnkpOiAoUHVyY2hhc2VPcmRlclJhcGlkU2VhcmNoTW9kZWwgfCBQcm9kdWN0UmFwaWRTZWFyY2hNb2RlbCB8IFdvcmtWZXJzaW9uUmFwaWRTZWFyY2hNb2RlbClbXSB7XHJcbiAgICBsZXQgcmVzdWx0cyA9IFtdO1xyXG4gICAgaWYgKHNlYXJjaFJlc3BvbnNlICYmIHNlYXJjaFJlc3BvbnNlLnJlc3BvbnNlcykge1xyXG4gICAgICBmb3IgKGNvbnN0IHIgb2Ygc2VhcmNoUmVzcG9uc2UucmVzcG9uc2VzKSB7XHJcbiAgICAgICAgY29uc3QgaXRlbSA9IHIuaGl0cy5oaXRzICYmIHIuaGl0cy5oaXRzLmxlbmd0aCA+IDAgPyByLmhpdHMuaGl0cy5tYXAodiA9PiB2Ll9zb3VyY2UpIDogW107XHJcbiAgICAgICAgcmVzdWx0cyA9IHJlc3VsdHMuY29uY2F0KGl0ZW0pO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICByZXR1cm4gcmVzdWx0cztcclxuICB9XHJcbn1cclxuIl19
|