monkey-front-core 0.0.238 → 0.0.239
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/lib/components/alerts/alerts.component.mjs +35 -0
- package/esm2020/lib/components/alerts/alerts.module.mjs +21 -0
- package/esm2020/lib/components/alerts/index.mjs +3 -0
- package/esm2020/lib/components/closed-to-maintenance/closed-to-maintenance.component.mjs +29 -0
- package/esm2020/lib/components/closed-to-maintenance/closed-to-maintenance.module.mjs +43 -0
- package/esm2020/lib/components/closed-to-maintenance/index.mjs +3 -0
- package/esm2020/lib/components/index.mjs +5 -0
- package/esm2020/lib/components/progress-bar/index.mjs +4 -0
- package/esm2020/lib/components/progress-bar/progress-bar.component.mjs +23 -0
- package/esm2020/lib/components/progress-bar/progress-bar.module.mjs +18 -0
- package/esm2020/lib/components/progress-bar/progress-bar.service.mjs +50 -0
- package/esm2020/lib/components/version-changed/index.mjs +3 -0
- package/esm2020/lib/components/version-changed/version-changed.component.mjs +24 -0
- package/esm2020/lib/components/version-changed/version-changed.module.mjs +39 -0
- package/esm2020/lib/core/decorators/index.mjs +5 -0
- package/esm2020/lib/core/decorators/monkeyecx-charts-decorators.mjs +40 -0
- package/esm2020/lib/core/decorators/monkeyecx-decorators.mjs +111 -0
- package/esm2020/lib/core/decorators/monkeyecx-download-decorators.mjs +26 -0
- package/esm2020/lib/core/decorators/monkeyecx-upload-decorators.mjs +26 -0
- package/esm2020/lib/core/directives/index.mjs +13 -0
- package/esm2020/lib/core/directives/monkeyecx-directives-module.mjs +73 -0
- package/esm2020/lib/core/directives/monkeyecx-drag-drop.mjs +57 -0
- package/esm2020/lib/core/directives/monkeyecx-feature-by-program-directive.mjs +50 -0
- package/esm2020/lib/core/directives/monkeyecx-feature-directive.mjs +68 -0
- package/esm2020/lib/core/directives/monkeyecx-format-currency.mjs +44 -0
- package/esm2020/lib/core/directives/monkeyecx-format-upper.mjs +67 -0
- package/esm2020/lib/core/directives/monkeyecx-only-alpha-numeric-directive.mjs +28 -0
- package/esm2020/lib/core/directives/monkeyecx-only-number-directive.mjs +28 -0
- package/esm2020/lib/core/directives/monkeyecx-popover-options.directive.mjs +39 -0
- package/esm2020/lib/core/directives/monkeyecx-popover.directive.mjs +212 -0
- package/esm2020/lib/core/directives/monkeyecx-security-directive.mjs +69 -0
- package/esm2020/lib/core/directives/monkeyecx-tooltip-directive.mjs +123 -0
- package/esm2020/lib/core/index.mjs +10 -0
- package/esm2020/lib/core/interceptors/index.mjs +6 -0
- package/esm2020/lib/core/interceptors/monkeyecx-http-config-error.interceptor.mjs +39 -0
- package/esm2020/lib/core/interceptors/monkeyecx-http-config-header.interceptor.mjs +60 -0
- package/esm2020/lib/core/interceptors/monkeyecx-http-config-interceptor.module.mjs +47 -0
- package/esm2020/lib/core/interceptors/monkeyecx-http-config-loading-in-progress.interceptor.mjs +43 -0
- package/esm2020/lib/core/interceptors/monkeyecx-http-config-queue.interceptor.mjs +37 -0
- package/esm2020/lib/core/interfaces/index.mjs +30 -0
- package/esm2020/lib/core/interfaces/monkeyecx-auth-credentials.mjs +2 -0
- package/esm2020/lib/core/interfaces/monkeyecx-company-pendencies.mjs +2 -0
- package/esm2020/lib/core/interfaces/monkeyecx-company.mjs +2 -0
- package/esm2020/lib/core/interfaces/monkeyecx-config-boostrap.mjs +2 -0
- package/esm2020/lib/core/interfaces/monkeyecx-config.mjs +2 -0
- package/esm2020/lib/core/interfaces/monkeyecx-country-security.mjs +2 -0
- package/esm2020/lib/core/interfaces/monkeyecx-error-response.mjs +2 -0
- package/esm2020/lib/core/interfaces/monkeyecx-filter.mjs +2 -0
- package/esm2020/lib/core/interfaces/monkeyecx-handled-error-response.mjs +2 -0
- package/esm2020/lib/core/interfaces/monkeyecx-header-credentials.mjs +2 -0
- package/esm2020/lib/core/interfaces/monkeyecx-intercom-options.mjs +2 -0
- package/esm2020/lib/core/interfaces/monkeyecx-me-credentials.mjs +2 -0
- package/esm2020/lib/core/interfaces/monkeyecx-navigation.mjs +2 -0
- package/esm2020/lib/core/interfaces/monkeyecx-program.mjs +2 -0
- package/esm2020/lib/core/interfaces/monkeyecx-releases.mjs +2 -0
- package/esm2020/lib/core/interfaces/monkeyecx-request-in-progress.mjs +2 -0
- package/esm2020/lib/core/interfaces/monkeyecx-request-paged.mjs +2 -0
- package/esm2020/lib/core/interfaces/monkeyecx-response-links.mjs +2 -0
- package/esm2020/lib/core/interfaces/monkeyecx-response-paged.mjs +2 -0
- package/esm2020/lib/core/interfaces/monkeyecx-saved-state.mjs +2 -0
- package/esm2020/lib/core/interfaces/monkeyecx-scroll-options.mjs +2 -0
- package/esm2020/lib/core/interfaces/monkeyecx-service-credentials.mjs +2 -0
- package/esm2020/lib/core/interfaces/monkeyecx-support-options.mjs +2 -0
- package/esm2020/lib/core/interfaces/monkeyecx-token-credentials.mjs +2 -0
- package/esm2020/lib/core/interfaces/monkeyecx-translate-options.mjs +2 -0
- package/esm2020/lib/core/interfaces/request-download/index.mjs +4 -0
- package/esm2020/lib/core/interfaces/request-download/monkeyecx-request-download.mjs +2 -0
- package/esm2020/lib/core/interfaces/request-download/monkeyecx-request-downloaded.mjs +2 -0
- package/esm2020/lib/core/interfaces/request-download/monkeyecx-request-item-download.mjs +2 -0
- package/esm2020/lib/core/interfaces/request-queue/index.mjs +4 -0
- package/esm2020/lib/core/interfaces/request-queue/monkeyecx-request-item-queue.mjs +2 -0
- package/esm2020/lib/core/interfaces/request-queue/monkeyecx-request-progress-queue.mjs +2 -0
- package/esm2020/lib/core/interfaces/request-queue/monkeyecx-request-queue.mjs +2 -0
- package/esm2020/lib/core/interfaces/request-upload/index.mjs +3 -0
- package/esm2020/lib/core/interfaces/request-upload/monkeyecx-request-item-upload.mjs +2 -0
- package/esm2020/lib/core/interfaces/request-upload/monkeyecx-request-upload.mjs +2 -0
- package/esm2020/lib/core/interfaces/schedules/index.mjs +2 -0
- package/esm2020/lib/core/interfaces/schedules/monkeyecx-request-schedule.mjs +2 -0
- package/esm2020/lib/core/model/index.mjs +2 -0
- package/esm2020/lib/core/model/monkeyecx-model.mjs +25 -0
- package/esm2020/lib/core/pipes/index.mjs +20 -0
- package/esm2020/lib/core/pipes/monkeyecx-display-first-name.mjs +19 -0
- package/esm2020/lib/core/pipes/monkeyecx-display-initials.mjs +21 -0
- package/esm2020/lib/core/pipes/monkeyecx-format-address.mjs +20 -0
- package/esm2020/lib/core/pipes/monkeyecx-format-beautify-json.mjs +38 -0
- package/esm2020/lib/core/pipes/monkeyecx-format-currency.mjs +27 -0
- package/esm2020/lib/core/pipes/monkeyecx-format-date-group.mjs +45 -0
- package/esm2020/lib/core/pipes/monkeyecx-format-date-timelapse.mjs +32 -0
- package/esm2020/lib/core/pipes/monkeyecx-format-date-unix-timelapse.mjs +36 -0
- package/esm2020/lib/core/pipes/monkeyecx-format-document.mjs +19 -0
- package/esm2020/lib/core/pipes/monkeyecx-format-number.mjs +20 -0
- package/esm2020/lib/core/pipes/monkeyecx-format-phone.mjs +42 -0
- package/esm2020/lib/core/pipes/monkeyecx-format-size.mjs +20 -0
- package/esm2020/lib/core/pipes/monkeyecx-format-tax.mjs +23 -0
- package/esm2020/lib/core/pipes/monkeyecx-format-type-document.mjs +19 -0
- package/esm2020/lib/core/pipes/monkeyecx-format-value.mjs +19 -0
- package/esm2020/lib/core/pipes/monkeyecx-format-zipcode.mjs +19 -0
- package/esm2020/lib/core/pipes/monkeyecx-pipes.module.mjs +107 -0
- package/esm2020/lib/core/pipes/monkeyecx-text-truncate.mjs +23 -0
- package/esm2020/lib/core/pipes/monkeyecx-truncate-qtd.mjs +16 -0
- package/esm2020/lib/core/services/auth/index.mjs +5 -0
- package/esm2020/lib/core/services/auth/monkeyecx-auth-guard-company.service.mjs +28 -0
- package/esm2020/lib/core/services/auth/monkeyecx-auth-guard-login.service.mjs +27 -0
- package/esm2020/lib/core/services/auth/monkeyecx-auth-guard.service.mjs +26 -0
- package/esm2020/lib/core/services/auth/monkeyecx-authentication.service.mjs +69 -0
- package/esm2020/lib/core/services/commons/index.mjs +2 -0
- package/esm2020/lib/core/services/commons/monkeyecx-commons.service.mjs +405 -0
- package/esm2020/lib/core/services/config/monkeyecx-alerts-config.service.mjs +40 -0
- package/esm2020/lib/core/services/config/monkeyecx-config.module.mjs +28 -0
- package/esm2020/lib/core/services/config/monkeyecx-config.service.mjs +111 -0
- package/esm2020/lib/core/services/config/monkeyecx-error-config.service.mjs +85 -0
- package/esm2020/lib/core/services/config/monkeyecx-feature-toggle.service.mjs +67 -0
- package/esm2020/lib/core/services/config/monkeyecx-ga-config.service.mjs +57 -0
- package/esm2020/lib/core/services/config/monkeyecx-i18n-config.service.mjs +92 -0
- package/esm2020/lib/core/services/config/monkeyecx-logs-config.service.mjs +34 -0
- package/esm2020/lib/core/services/config/monkeyecx-maintenance-config.service.mjs +37 -0
- package/esm2020/lib/core/services/config/monkeyecx-security-console-config.service.mjs +42 -0
- package/esm2020/lib/core/services/config/monkeyecx-service-worker-config.service.mjs +53 -0
- package/esm2020/lib/core/services/error/index.mjs +5 -0
- package/esm2020/lib/core/services/error/monkeyecx-error-handling.module.mjs +27 -0
- package/esm2020/lib/core/services/error/monkeyecx-error-handling.service.mjs +37 -0
- package/esm2020/lib/core/services/error/monkeyecx-http-error-handling.service.mjs +135 -0
- package/esm2020/lib/core/services/error/monkeyecx-others-errors-handling.service.mjs +29 -0
- package/esm2020/lib/core/services/index.mjs +23 -0
- package/esm2020/lib/core/services/logged/index.mjs +2 -0
- package/esm2020/lib/core/services/logged/monkeyecx-logged-handling.service.mjs +40 -0
- package/esm2020/lib/core/services/monkeyecx-handling.service.mjs +50 -0
- package/esm2020/lib/core/services/monkeyecx-service.service.mjs +104 -0
- package/esm2020/lib/core/services/pagination/index.mjs +2 -0
- package/esm2020/lib/core/services/pagination/monkeyecx-pagination.service.mjs +29 -0
- package/esm2020/lib/core/services/request-download/index.mjs +3 -0
- package/esm2020/lib/core/services/request-download/monkeyecx-request-download-handling.service.mjs +93 -0
- package/esm2020/lib/core/services/request-download/monkeyecx-request-downloaded-handling.service.mjs +61 -0
- package/esm2020/lib/core/services/request-paged/index.mjs +2 -0
- package/esm2020/lib/core/services/request-paged/monkeyecx-request-request-paged-handling.mjs +42 -0
- package/esm2020/lib/core/services/request-queue/index.mjs +3 -0
- package/esm2020/lib/core/services/request-queue/monkeyecx-request-queue-handling.service.mjs +114 -0
- package/esm2020/lib/core/services/request-queue/monkeyecx-request-queue-modal-handling.service.mjs +119 -0
- package/esm2020/lib/core/services/routes/index.mjs +2 -0
- package/esm2020/lib/core/services/routes/monkeyecx-dicovery-params.service.mjs +54 -0
- package/esm2020/lib/core/services/schedules/index.mjs +2 -0
- package/esm2020/lib/core/services/schedules/monkeyecx-request-schedule.service.mjs +188 -0
- package/esm2020/lib/core/services/storage/index.mjs +3 -0
- package/esm2020/lib/core/services/storage/monkeyecx-cookie-storage.service.mjs +32 -0
- package/esm2020/lib/core/services/storage/monkeyecx-token-storage.service.mjs +127 -0
- package/esm2020/lib/core/specification-search/index.mjs +2 -0
- package/esm2020/lib/core/specification-search/monkeyecx-specification-search.mjs +108 -0
- package/esm2020/lib/core/utils/decorators-utils.mjs +40 -0
- package/esm2020/lib/core/utils/index.mjs +8 -0
- package/esm2020/lib/core/utils/statics.mjs +38 -0
- package/esm2020/lib/core/utils/utils.mjs +221 -0
- package/esm2020/lib/core/utils/validate-utils.mjs +206 -0
- package/esm2020/lib/core/utils/validators.mjs +208 -0
- package/esm2020/lib/monkey-front-core.module.mjs +64 -0
- package/esm2020/monkey-front-core.mjs +5 -0
- package/esm2020/public-api.mjs +7 -0
- package/fesm2015/monkey-front-core.mjs +5123 -0
- package/fesm2015/monkey-front-core.mjs.map +1 -0
- package/fesm2020/monkey-front-core.mjs +5182 -0
- package/fesm2020/monkey-front-core.mjs.map +1 -0
- package/lib/components/alerts/alerts.component.d.ts +16 -0
- package/lib/components/alerts/alerts.module.d.ts +10 -0
- package/{src/lib/components/alerts/index.ts → lib/components/alerts/index.d.ts} +2 -2
- package/lib/components/closed-to-maintenance/closed-to-maintenance.component.d.ts +13 -0
- package/lib/components/closed-to-maintenance/closed-to-maintenance.module.d.ts +11 -0
- package/{src/lib/components/closed-to-maintenance/index.ts → lib/components/closed-to-maintenance/index.d.ts} +2 -2
- package/{src/lib/components/index.ts → lib/components/index.d.ts} +4 -4
- package/{src/lib/components/progress-bar/index.ts → lib/components/progress-bar/index.d.ts} +3 -3
- package/lib/components/progress-bar/progress-bar.component.d.ts +11 -0
- package/lib/components/progress-bar/progress-bar.module.d.ts +8 -0
- package/lib/components/progress-bar/progress-bar.service.d.ts +14 -0
- package/{src/lib/components/version-changed/index.ts → lib/components/version-changed/index.d.ts} +2 -2
- package/lib/components/version-changed/version-changed.component.d.ts +9 -0
- package/lib/components/version-changed/version-changed.module.d.ts +10 -0
- package/{src/lib/core/decorators/index.ts → lib/core/decorators/index.d.ts} +4 -4
- package/lib/core/decorators/monkeyecx-charts-decorators.d.ts +1 -0
- package/lib/core/decorators/monkeyecx-decorators.d.ts +7 -0
- package/lib/core/decorators/monkeyecx-download-decorators.d.ts +2 -0
- package/lib/core/decorators/monkeyecx-upload-decorators.d.ts +2 -0
- package/{src/lib/core/directives/index.ts → lib/core/directives/index.d.ts} +12 -12
- package/lib/core/directives/monkeyecx-directives-module.d.ts +19 -0
- package/lib/core/directives/monkeyecx-drag-drop.d.ts +12 -0
- package/lib/core/directives/monkeyecx-feature-by-program-directive.d.ts +15 -0
- package/lib/core/directives/monkeyecx-feature-directive.d.ts +17 -0
- package/lib/core/directives/monkeyecx-format-currency.d.ts +16 -0
- package/lib/core/directives/monkeyecx-format-upper.d.ts +18 -0
- package/lib/core/directives/monkeyecx-only-alpha-numeric-directive.d.ts +9 -0
- package/lib/core/directives/monkeyecx-only-number-directive.d.ts +9 -0
- package/lib/core/directives/monkeyecx-popover-options.directive.d.ts +19 -0
- package/lib/core/directives/monkeyecx-popover.directive.d.ts +43 -0
- package/lib/core/directives/monkeyecx-security-directive.d.ts +17 -0
- package/lib/core/directives/monkeyecx-tooltip-directive.d.ts +23 -0
- package/{src/lib/core/index.ts → lib/core/index.d.ts} +9 -9
- package/{src/lib/core/interceptors/index.ts → lib/core/interceptors/index.d.ts} +5 -5
- package/lib/core/interceptors/monkeyecx-http-config-error.interceptor.d.ts +17 -0
- package/lib/core/interceptors/monkeyecx-http-config-header.interceptor.d.ts +16 -0
- package/lib/core/interceptors/monkeyecx-http-config-interceptor.module.d.ts +9 -0
- package/lib/core/interceptors/monkeyecx-http-config-loading-in-progress.interceptor.d.ts +12 -0
- package/lib/core/interceptors/monkeyecx-http-config-queue.interceptor.d.ts +14 -0
- package/{src/lib/core/interfaces/index.ts → lib/core/interfaces/index.d.ts} +29 -29
- package/lib/core/interfaces/monkeyecx-auth-credentials.d.ts +15 -0
- package/{src/lib/core/interfaces/monkeyecx-company-pendencies.ts → lib/core/interfaces/monkeyecx-company-pendencies.d.ts} +14 -16
- package/lib/core/interfaces/monkeyecx-company.d.ts +10 -0
- package/lib/core/interfaces/monkeyecx-config-boostrap.d.ts +14 -0
- package/lib/core/interfaces/monkeyecx-config.d.ts +125 -0
- package/lib/core/interfaces/monkeyecx-country-security.d.ts +4 -0
- package/lib/core/interfaces/monkeyecx-error-response.d.ts +5 -0
- package/lib/core/interfaces/monkeyecx-filter.d.ts +24 -0
- package/lib/core/interfaces/monkeyecx-handled-error-response.d.ts +10 -0
- package/lib/core/interfaces/monkeyecx-header-credentials.d.ts +4 -0
- package/{src/lib/core/interfaces/monkeyecx-intercom-options.ts → lib/core/interfaces/monkeyecx-intercom-options.d.ts} +4 -4
- package/lib/core/interfaces/monkeyecx-me-credentials.d.ts +22 -0
- package/lib/core/interfaces/monkeyecx-navigation.d.ts +27 -0
- package/lib/core/interfaces/monkeyecx-program.d.ts +10 -0
- package/lib/core/interfaces/monkeyecx-releases.d.ts +9 -0
- package/{src/lib/core/interfaces/monkeyecx-request-in-progress.ts → lib/core/interfaces/monkeyecx-request-in-progress.d.ts} +3 -3
- package/lib/core/interfaces/monkeyecx-request-paged.d.ts +23 -0
- package/lib/core/interfaces/monkeyecx-response-links.d.ts +11 -0
- package/lib/core/interfaces/monkeyecx-response-paged.d.ts +6 -0
- package/lib/core/interfaces/monkeyecx-saved-state.d.ts +5 -0
- package/{src/lib/core/interfaces/monkeyecx-scroll-options.ts → lib/core/interfaces/monkeyecx-scroll-options.d.ts} +5 -6
- package/{src/lib/core/interfaces/monkeyecx-service-credentials.ts → lib/core/interfaces/monkeyecx-service-credentials.d.ts} +12 -13
- package/{src/lib/core/interfaces/monkeyecx-support-options.ts → lib/core/interfaces/monkeyecx-support-options.d.ts} +4 -4
- package/lib/core/interfaces/monkeyecx-token-credentials.d.ts +20 -0
- package/lib/core/interfaces/monkeyecx-translate-options.d.ts +4 -0
- package/{src/lib/core/interfaces/request-download/index.ts → lib/core/interfaces/request-download/index.d.ts} +3 -3
- package/lib/core/interfaces/request-download/monkeyecx-request-download.d.ts +10 -0
- package/lib/core/interfaces/request-download/monkeyecx-request-downloaded.d.ts +7 -0
- package/lib/core/interfaces/request-download/monkeyecx-request-item-download.d.ts +7 -0
- package/{src/lib/core/interfaces/request-queue/index.ts → lib/core/interfaces/request-queue/index.d.ts} +3 -3
- package/lib/core/interfaces/request-queue/monkeyecx-request-item-queue.d.ts +7 -0
- package/lib/core/interfaces/request-queue/monkeyecx-request-progress-queue.d.ts +6 -0
- package/{src/lib/core/interfaces/request-queue/monkeyecx-request-queue.ts → lib/core/interfaces/request-queue/monkeyecx-request-queue.d.ts} +8 -9
- package/{src/lib/core/interfaces/request-upload/index.ts → lib/core/interfaces/request-upload/index.d.ts} +2 -2
- package/lib/core/interfaces/request-upload/monkeyecx-request-item-upload.d.ts +5 -0
- package/lib/core/interfaces/request-upload/monkeyecx-request-upload.d.ts +10 -0
- package/{src/lib/core/interfaces/schedules/index.ts → lib/core/interfaces/schedules/index.d.ts} +1 -1
- package/lib/core/interfaces/schedules/monkeyecx-request-schedule.d.ts +13 -0
- package/{src/lib/core/model/index.ts → lib/core/model/index.d.ts} +1 -1
- package/lib/core/model/monkeyecx-model.d.ts +13 -0
- package/{src/lib/core/pipes/index.ts → lib/core/pipes/index.d.ts} +19 -19
- package/lib/core/pipes/monkeyecx-display-first-name.d.ts +7 -0
- package/lib/core/pipes/monkeyecx-display-initials.d.ts +7 -0
- package/lib/core/pipes/monkeyecx-format-address.d.ts +14 -0
- package/lib/core/pipes/monkeyecx-format-beautify-json.d.ts +8 -0
- package/lib/core/pipes/monkeyecx-format-currency.d.ts +11 -0
- package/lib/core/pipes/monkeyecx-format-date-group.d.ts +11 -0
- package/lib/core/pipes/monkeyecx-format-date-timelapse.d.ts +7 -0
- package/lib/core/pipes/monkeyecx-format-date-unix-timelapse.d.ts +7 -0
- package/lib/core/pipes/monkeyecx-format-document.d.ts +7 -0
- package/lib/core/pipes/monkeyecx-format-number.d.ts +7 -0
- package/lib/core/pipes/monkeyecx-format-phone.d.ts +7 -0
- package/lib/core/pipes/monkeyecx-format-size.d.ts +7 -0
- package/lib/core/pipes/monkeyecx-format-tax.d.ts +7 -0
- package/lib/core/pipes/monkeyecx-format-type-document.d.ts +7 -0
- package/lib/core/pipes/monkeyecx-format-value.d.ts +7 -0
- package/lib/core/pipes/monkeyecx-format-zipcode.d.ts +7 -0
- package/lib/core/pipes/monkeyecx-pipes.module.d.ts +24 -0
- package/lib/core/pipes/monkeyecx-text-truncate.d.ts +7 -0
- package/lib/core/pipes/monkeyecx-truncate-qtd.d.ts +7 -0
- package/{src/lib/core/services/auth/index.ts → lib/core/services/auth/index.d.ts} +4 -4
- package/lib/core/services/auth/monkeyecx-auth-guard-company.service.d.ts +11 -0
- package/lib/core/services/auth/monkeyecx-auth-guard-login.service.d.ts +11 -0
- package/lib/core/services/auth/monkeyecx-auth-guard.service.d.ts +11 -0
- package/lib/core/services/auth/monkeyecx-authentication.service.d.ts +30 -0
- package/{src/lib/core/services/commons/index.ts → lib/core/services/commons/index.d.ts} +1 -1
- package/lib/core/services/commons/monkeyecx-commons.service.d.ts +124 -0
- package/lib/core/services/config/monkeyecx-alerts-config.service.d.ts +11 -0
- package/lib/core/services/config/monkeyecx-config.module.d.ts +9 -0
- package/lib/core/services/config/monkeyecx-config.service.d.ts +36 -0
- package/lib/core/services/config/monkeyecx-error-config.service.d.ts +8 -0
- package/lib/core/services/config/monkeyecx-feature-toggle.service.d.ts +16 -0
- package/lib/core/services/config/monkeyecx-ga-config.service.d.ts +10 -0
- package/lib/core/services/config/monkeyecx-i18n-config.service.d.ts +16 -0
- package/lib/core/services/config/monkeyecx-logs-config.service.d.ts +7 -0
- package/lib/core/services/config/monkeyecx-maintenance-config.service.d.ts +13 -0
- package/lib/core/services/config/monkeyecx-security-console-config.service.d.ts +11 -0
- package/lib/core/services/config/monkeyecx-service-worker-config.service.d.ts +16 -0
- package/{src/lib/core/services/error/index.ts → lib/core/services/error/index.d.ts} +4 -4
- package/lib/core/services/error/monkeyecx-error-handling.module.d.ts +9 -0
- package/lib/core/services/error/monkeyecx-error-handling.service.d.ts +9 -0
- package/lib/core/services/error/monkeyecx-http-error-handling.service.d.ts +26 -0
- package/lib/core/services/error/monkeyecx-others-errors-handling.service.d.ts +9 -0
- package/{src/lib/core/services/index.ts → lib/core/services/index.d.ts} +22 -22
- package/{src/lib/core/services/logged/index.ts → lib/core/services/logged/index.d.ts} +1 -1
- package/lib/core/services/logged/monkeyecx-logged-handling.service.d.ts +14 -0
- package/lib/core/services/monkeyecx-handling.service.d.ts +22 -0
- package/lib/core/services/monkeyecx-service.service.d.ts +18 -0
- package/{src/lib/core/services/pagination/index.ts → lib/core/services/pagination/index.d.ts} +1 -1
- package/lib/core/services/pagination/monkeyecx-pagination.service.d.ts +9 -0
- package/{src/lib/core/services/request-download/index.ts → lib/core/services/request-download/index.d.ts} +2 -2
- package/lib/core/services/request-download/monkeyecx-request-download-handling.service.d.ts +18 -0
- package/lib/core/services/request-download/monkeyecx-request-downloaded-handling.service.d.ts +16 -0
- package/{src/lib/core/services/request-paged/index.ts → lib/core/services/request-paged/index.d.ts} +1 -1
- package/lib/core/services/request-paged/monkeyecx-request-request-paged-handling.d.ts +11 -0
- package/{src/lib/core/services/request-queue/index.ts → lib/core/services/request-queue/index.d.ts} +2 -2
- package/lib/core/services/request-queue/monkeyecx-request-queue-handling.service.d.ts +21 -0
- package/lib/core/services/request-queue/monkeyecx-request-queue-modal-handling.service.d.ts +23 -0
- package/{src/lib/core/services/routes/index.ts → lib/core/services/routes/index.d.ts} +1 -1
- package/lib/core/services/routes/monkeyecx-dicovery-params.service.d.ts +13 -0
- package/{src/lib/core/services/schedules/index.ts → lib/core/services/schedules/index.d.ts} +1 -1
- package/lib/core/services/schedules/monkeyecx-request-schedule.service.d.ts +47 -0
- package/{src/lib/core/services/storage/index.ts → lib/core/services/storage/index.d.ts} +2 -2
- package/lib/core/services/storage/monkeyecx-cookie-storage.service.d.ts +11 -0
- package/lib/core/services/storage/monkeyecx-token-storage.service.d.ts +29 -0
- package/{src/lib/core/specification-search/index.ts → lib/core/specification-search/index.d.ts} +1 -1
- package/lib/core/specification-search/monkeyecx-specification-search.d.ts +20 -0
- package/lib/core/utils/decorators-utils.d.ts +5 -0
- package/{src/lib/core/utils/index.ts → lib/core/utils/index.d.ts} +6 -8
- package/lib/core/utils/statics.d.ts +28 -0
- package/lib/core/utils/utils.d.ts +22 -0
- package/lib/core/utils/validate-utils.d.ts +66 -0
- package/lib/core/utils/validators.d.ts +29 -0
- package/lib/monkey-front-core.module.d.ts +17 -0
- package/monkey-front-core-0.0.239.tgz +0 -0
- package/monkey-front-core.d.ts +5 -0
- package/package.json +24 -4
- package/{src/public-api.ts → public-api.d.ts} +3 -6
- package/karma.conf.js +0 -44
- package/monkey-front-core-0.0.238.tgz +0 -0
- package/ng-package.json +0 -8
- package/src/lib/components/alerts/alerts.component.html +0 -18
- package/src/lib/components/alerts/alerts.component.scss +0 -71
- package/src/lib/components/alerts/alerts.component.ts +0 -36
- package/src/lib/components/alerts/alerts.module.ts +0 -12
- package/src/lib/components/closed-to-maintenance/closed-to-maintenance.component.html +0 -25
- package/src/lib/components/closed-to-maintenance/closed-to-maintenance.component.scss +0 -51
- package/src/lib/components/closed-to-maintenance/closed-to-maintenance.component.ts +0 -25
- package/src/lib/components/closed-to-maintenance/closed-to-maintenance.module.ts +0 -26
- package/src/lib/components/progress-bar/progress-bar.component.html +0 -3
- package/src/lib/components/progress-bar/progress-bar.component.scss +0 -6
- package/src/lib/components/progress-bar/progress-bar.component.ts +0 -22
- package/src/lib/components/progress-bar/progress-bar.module.ts +0 -10
- package/src/lib/components/progress-bar/progress-bar.service.ts +0 -61
- package/src/lib/components/version-changed/version-changed.component.html +0 -18
- package/src/lib/components/version-changed/version-changed.component.scss +0 -52
- package/src/lib/components/version-changed/version-changed.component.ts +0 -18
- package/src/lib/components/version-changed/version-changed.module.ts +0 -24
- package/src/lib/core/decorators/monkeyecx-charts-decorators.ts +0 -46
- package/src/lib/core/decorators/monkeyecx-decorators.ts +0 -159
- package/src/lib/core/decorators/monkeyecx-download-decorators.ts +0 -39
- package/src/lib/core/decorators/monkeyecx-upload-decorators.ts +0 -39
- package/src/lib/core/directives/monkeyecx-directives-module.ts +0 -45
- package/src/lib/core/directives/monkeyecx-drag-drop.ts +0 -40
- package/src/lib/core/directives/monkeyecx-feature-by-program-directive.ts +0 -53
- package/src/lib/core/directives/monkeyecx-feature-directive.ts +0 -72
- package/src/lib/core/directives/monkeyecx-format-currency.ts +0 -44
- package/src/lib/core/directives/monkeyecx-format-upper.ts +0 -54
- package/src/lib/core/directives/monkeyecx-only-alpha-numeric-directive.ts +0 -21
- package/src/lib/core/directives/monkeyecx-only-number-directive.ts +0 -21
- package/src/lib/core/directives/monkeyecx-popover-options.directive.ts +0 -52
- package/src/lib/core/directives/monkeyecx-popover.directive.ts +0 -235
- package/src/lib/core/directives/monkeyecx-security-directive.ts +0 -68
- package/src/lib/core/directives/monkeyecx-tooltip-directive.ts +0 -131
- package/src/lib/core/interceptors/monkeyecx-http-config-error.interceptor.ts +0 -58
- package/src/lib/core/interceptors/monkeyecx-http-config-header.interceptor.ts +0 -78
- package/src/lib/core/interceptors/monkeyecx-http-config-interceptor.module.ts +0 -40
- package/src/lib/core/interceptors/monkeyecx-http-config-loading-in-progress.interceptor.ts +0 -47
- package/src/lib/core/interceptors/monkeyecx-http-config-queue.interceptor.ts +0 -44
- package/src/lib/core/interfaces/monkeyecx-auth-credentials.ts +0 -16
- package/src/lib/core/interfaces/monkeyecx-company.ts +0 -10
- package/src/lib/core/interfaces/monkeyecx-config-boostrap.ts +0 -14
- package/src/lib/core/interfaces/monkeyecx-config.ts +0 -139
- package/src/lib/core/interfaces/monkeyecx-country-security.ts +0 -4
- package/src/lib/core/interfaces/monkeyecx-error-response.ts +0 -5
- package/src/lib/core/interfaces/monkeyecx-filter.ts +0 -26
- package/src/lib/core/interfaces/monkeyecx-handled-error-response.ts +0 -11
- package/src/lib/core/interfaces/monkeyecx-header-credentials.ts +0 -4
- package/src/lib/core/interfaces/monkeyecx-me-credentials.ts +0 -23
- package/src/lib/core/interfaces/monkeyecx-navigation.ts +0 -28
- package/src/lib/core/interfaces/monkeyecx-program.ts +0 -10
- package/src/lib/core/interfaces/monkeyecx-releases.ts +0 -9
- package/src/lib/core/interfaces/monkeyecx-request-paged.ts +0 -27
- package/src/lib/core/interfaces/monkeyecx-response-links.ts +0 -11
- package/src/lib/core/interfaces/monkeyecx-response-paged.ts +0 -6
- package/src/lib/core/interfaces/monkeyecx-saved-state.ts +0 -5
- package/src/lib/core/interfaces/monkeyecx-token-credentials.ts +0 -20
- package/src/lib/core/interfaces/monkeyecx-translate-options.ts +0 -4
- package/src/lib/core/interfaces/request-download/monkeyecx-request-download.ts +0 -11
- package/src/lib/core/interfaces/request-download/monkeyecx-request-downloaded.ts +0 -8
- package/src/lib/core/interfaces/request-download/monkeyecx-request-item-download.ts +0 -7
- package/src/lib/core/interfaces/request-queue/monkeyecx-request-item-queue.ts +0 -7
- package/src/lib/core/interfaces/request-queue/monkeyecx-request-progress-queue.ts +0 -6
- package/src/lib/core/interfaces/request-upload/monkeyecx-request-item-upload.ts +0 -5
- package/src/lib/core/interfaces/request-upload/monkeyecx-request-upload.ts +0 -11
- package/src/lib/core/interfaces/schedules/monkeyecx-request-schedule.ts +0 -14
- package/src/lib/core/model/monkeyecx-model.ts +0 -38
- package/src/lib/core/pipes/monkeyecx-display-first-name.ts +0 -12
- package/src/lib/core/pipes/monkeyecx-display-initials.ts +0 -14
- package/src/lib/core/pipes/monkeyecx-display-support-phone.ts +0 -31
- package/src/lib/core/pipes/monkeyecx-format-address.ts +0 -27
- package/src/lib/core/pipes/monkeyecx-format-beautify-json.ts +0 -35
- package/src/lib/core/pipes/monkeyecx-format-currency.ts +0 -20
- package/src/lib/core/pipes/monkeyecx-format-date-group.ts +0 -40
- package/src/lib/core/pipes/monkeyecx-format-date-timelapse.ts +0 -25
- package/src/lib/core/pipes/monkeyecx-format-date-unix-timelapse.ts +0 -31
- package/src/lib/core/pipes/monkeyecx-format-document.ts +0 -12
- package/src/lib/core/pipes/monkeyecx-format-number.ts +0 -14
- package/src/lib/core/pipes/monkeyecx-format-phone.ts +0 -32
- package/src/lib/core/pipes/monkeyecx-format-size.ts +0 -13
- package/src/lib/core/pipes/monkeyecx-format-tax.ts +0 -16
- package/src/lib/core/pipes/monkeyecx-format-type-document.ts +0 -12
- package/src/lib/core/pipes/monkeyecx-format-value.ts +0 -12
- package/src/lib/core/pipes/monkeyecx-format-zipcode.ts +0 -12
- package/src/lib/core/pipes/monkeyecx-pipes.module.ts +0 -65
- package/src/lib/core/pipes/monkeyecx-text-truncate.ts +0 -17
- package/src/lib/core/pipes/monkeyecx-truncate-qtd.ts +0 -10
- package/src/lib/core/services/auth/monkeyecx-auth-guard-company.service.ts +0 -27
- package/src/lib/core/services/auth/monkeyecx-auth-guard-login.service.ts +0 -23
- package/src/lib/core/services/auth/monkeyecx-auth-guard.service.ts +0 -25
- package/src/lib/core/services/auth/monkeyecx-authentication.service.ts +0 -87
- package/src/lib/core/services/commons/monkeyecx-commons.service.ts +0 -557
- package/src/lib/core/services/config/index.ts +0 -9
- package/src/lib/core/services/config/monkeyecx-alerts-config.service.ts +0 -37
- package/src/lib/core/services/config/monkeyecx-config.module.ts +0 -23
- package/src/lib/core/services/config/monkeyecx-config.service.ts +0 -151
- package/src/lib/core/services/config/monkeyecx-error-config.service.ts +0 -92
- package/src/lib/core/services/config/monkeyecx-feature-toggle.service.ts +0 -71
- package/src/lib/core/services/config/monkeyecx-ga-config.service.ts +0 -56
- package/src/lib/core/services/config/monkeyecx-i18n-config.service.ts +0 -95
- package/src/lib/core/services/config/monkeyecx-logs-config.service.ts +0 -34
- package/src/lib/core/services/config/monkeyecx-maintenance-config.service.ts +0 -33
- package/src/lib/core/services/config/monkeyecx-security-console-config.service.ts +0 -40
- package/src/lib/core/services/config/monkeyecx-service-worker-config.service.ts +0 -50
- package/src/lib/core/services/error/monkeyecx-error-handling.module.ts +0 -20
- package/src/lib/core/services/error/monkeyecx-error-handling.service.ts +0 -33
- package/src/lib/core/services/error/monkeyecx-http-error-handling.service.ts +0 -160
- package/src/lib/core/services/error/monkeyecx-others-errors-handling.service.ts +0 -24
- package/src/lib/core/services/logged/monkeyecx-logged-handling.service.ts +0 -42
- package/src/lib/core/services/monkeyecx-handling.service.ts +0 -58
- package/src/lib/core/services/monkeyecx-service.service.ts +0 -116
- package/src/lib/core/services/pagination/monkeyecx-pagination.service.ts +0 -27
- package/src/lib/core/services/request-download/monkeyecx-request-download-handling.service.ts +0 -100
- package/src/lib/core/services/request-download/monkeyecx-request-downloaded-handling.service.ts +0 -65
- package/src/lib/core/services/request-paged/monkeyecx-request-request-paged-handling.ts +0 -58
- package/src/lib/core/services/request-queue/monkeyecx-request-queue-handling.service.ts +0 -125
- package/src/lib/core/services/request-queue/monkeyecx-request-queue-modal-handling.service.ts +0 -136
- package/src/lib/core/services/routes/monkeyecx-dicovery-params.service.ts +0 -54
- package/src/lib/core/services/schedules/monkeyecx-request-schedule.service.ts +0 -224
- package/src/lib/core/services/storage/monkeyecx-cookie-storage.service.ts +0 -28
- package/src/lib/core/services/storage/monkeyecx-token-storage.service.ts +0 -151
- package/src/lib/core/specification-search/monkeyecx-specification-search.ts +0 -111
- package/src/lib/core/utils/decorators-utils.ts +0 -56
- package/src/lib/core/utils/statics.ts +0 -36
- package/src/lib/core/utils/utils.ts +0 -237
- package/src/lib/core/utils/validate-utils.ts +0 -221
- package/src/lib/core/utils/validators.ts +0 -251
- package/src/lib/monkey-front-core.module.ts +0 -37
- package/src/test.ts +0 -26
- package/tsconfig.lib.json +0 -15
- package/tsconfig.lib.prod.json +0 -10
- package/tsconfig.spec.json +0 -17
package/esm2020/lib/core/services/request-queue/monkeyecx-request-queue-modal-handling.service.mjs
ADDED
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import { BehaviorSubject } from 'rxjs';
|
|
3
|
+
import { map } from 'rxjs/operators';
|
|
4
|
+
import { Statics } from '../../utils';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
export class MonkeyEcxRequestQueueModalHandlingService {
|
|
7
|
+
constructor() {
|
|
8
|
+
this.queue = [];
|
|
9
|
+
this.newQueue$ = new BehaviorSubject(false);
|
|
10
|
+
this.allQueueFinished$ = new BehaviorSubject(false);
|
|
11
|
+
this.queues$ = new BehaviorSubject([]);
|
|
12
|
+
}
|
|
13
|
+
addToQueue(q) {
|
|
14
|
+
this.queue.push(q);
|
|
15
|
+
this.queues$.next(this.queue);
|
|
16
|
+
this.newQueue$.next(true);
|
|
17
|
+
}
|
|
18
|
+
markQueueItemAsFinish(q, status, action) {
|
|
19
|
+
const saved = [...this.queue];
|
|
20
|
+
this.queue = [
|
|
21
|
+
...saved.map((val) => {
|
|
22
|
+
const valSaved = {
|
|
23
|
+
...val
|
|
24
|
+
};
|
|
25
|
+
if (val.status === Statics.MonkeyEcxQueueEvents.OnGoing) {
|
|
26
|
+
if (valSaved.item.id === q.item.id) {
|
|
27
|
+
return {
|
|
28
|
+
...valSaved,
|
|
29
|
+
status: status || Statics.MonkeyEcxQueueEvents.Finished,
|
|
30
|
+
action
|
|
31
|
+
};
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
return valSaved;
|
|
35
|
+
})
|
|
36
|
+
];
|
|
37
|
+
this.queues$.next(this.queue);
|
|
38
|
+
}
|
|
39
|
+
updateQueue(q, progress) {
|
|
40
|
+
const saved = [...this.queue];
|
|
41
|
+
this.queue = [
|
|
42
|
+
...saved.map((val) => {
|
|
43
|
+
const valSaved = {
|
|
44
|
+
...val
|
|
45
|
+
};
|
|
46
|
+
const { total, loaded } = progress;
|
|
47
|
+
const currentPecentage = Math.floor(((loaded || 0) / (total || 0)) * 100);
|
|
48
|
+
const totalPercentage = 100;
|
|
49
|
+
if (valSaved.item.id === q.item.id) {
|
|
50
|
+
return {
|
|
51
|
+
...valSaved,
|
|
52
|
+
progress: {
|
|
53
|
+
loaded,
|
|
54
|
+
total,
|
|
55
|
+
currentPercentage: currentPecentage,
|
|
56
|
+
totalPercentage
|
|
57
|
+
}
|
|
58
|
+
};
|
|
59
|
+
}
|
|
60
|
+
return valSaved;
|
|
61
|
+
})
|
|
62
|
+
];
|
|
63
|
+
this.queues$.next(this.queue);
|
|
64
|
+
}
|
|
65
|
+
deleteQueue(q) {
|
|
66
|
+
const saved = [...this.queue];
|
|
67
|
+
this.queue = [
|
|
68
|
+
...saved.map((val) => {
|
|
69
|
+
const valSaved = {
|
|
70
|
+
...val
|
|
71
|
+
};
|
|
72
|
+
if (valSaved.item.id === q.item.id) {
|
|
73
|
+
return null;
|
|
74
|
+
}
|
|
75
|
+
return valSaved;
|
|
76
|
+
})
|
|
77
|
+
].filter((_) => {
|
|
78
|
+
return _;
|
|
79
|
+
});
|
|
80
|
+
this.queues$.next(this.queue);
|
|
81
|
+
if (this.queue.length <= 0) {
|
|
82
|
+
this.allQueueFinished$.next(true);
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
setQueue(q) {
|
|
86
|
+
this.addToQueue(q);
|
|
87
|
+
}
|
|
88
|
+
getQueue() {
|
|
89
|
+
return this.queues$.asObservable();
|
|
90
|
+
}
|
|
91
|
+
finishQueueItem(q, action, status) {
|
|
92
|
+
this.markQueueItemAsFinish(q, status, action);
|
|
93
|
+
}
|
|
94
|
+
removeQueueItem(q) {
|
|
95
|
+
this.deleteQueue(q);
|
|
96
|
+
}
|
|
97
|
+
updateQueueItem(q, progress) {
|
|
98
|
+
this.updateQueue(q, progress);
|
|
99
|
+
}
|
|
100
|
+
hasNewQueue() {
|
|
101
|
+
return this.newQueue$.pipe(map((_) => {
|
|
102
|
+
return _;
|
|
103
|
+
}));
|
|
104
|
+
}
|
|
105
|
+
hasAllQueueFinished() {
|
|
106
|
+
return this.allQueueFinished$.pipe(map((_) => {
|
|
107
|
+
return _;
|
|
108
|
+
}));
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
MonkeyEcxRequestQueueModalHandlingService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: MonkeyEcxRequestQueueModalHandlingService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
112
|
+
MonkeyEcxRequestQueueModalHandlingService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: MonkeyEcxRequestQueueModalHandlingService, providedIn: 'root' });
|
|
113
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: MonkeyEcxRequestQueueModalHandlingService, decorators: [{
|
|
114
|
+
type: Injectable,
|
|
115
|
+
args: [{
|
|
116
|
+
providedIn: 'root'
|
|
117
|
+
}]
|
|
118
|
+
}], ctorParameters: function () { return []; } });
|
|
119
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9ua2V5ZWN4LXJlcXVlc3QtcXVldWUtbW9kYWwtaGFuZGxpbmcuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21vbmtleS1mcm9udC1jb3JlL3NyYy9saWIvY29yZS9zZXJ2aWNlcy9yZXF1ZXN0LXF1ZXVlL21vbmtleWVjeC1yZXF1ZXN0LXF1ZXVlLW1vZGFsLWhhbmRsaW5nLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsZUFBZSxFQUFjLE1BQU0sTUFBTSxDQUFDO0FBQ25ELE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVyQyxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sYUFBYSxDQUFDOztBQUt0QyxNQUFNLE9BQU8seUNBQXlDO0lBU3BEO1FBUlEsVUFBSyxHQUE0QixFQUFFLENBQUM7UUFJcEMsY0FBUyxHQUFHLElBQUksZUFBZSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBRXZDLHNCQUFpQixHQUFHLElBQUksZUFBZSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBR3JELElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxlQUFlLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDekMsQ0FBQztJQUVPLFVBQVUsQ0FBQyxDQUF3QjtRQUN6QyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNuQixJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDOUIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDNUIsQ0FBQztJQUVPLHFCQUFxQixDQUFDLENBQXdCLEVBQUUsTUFBZSxFQUFFLE1BQWlCO1FBQ3hGLE1BQU0sS0FBSyxHQUFH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bmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IG1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IE1vbmtleUVjeFJlcXVlc3RQcm9ncmVzc1F1ZXVlLCBNb25rZXlFY3hSZXF1ZXN0UXVldWUgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzJztcbmltcG9ydCB7IFN0YXRpY3MgfSBmcm9tICcuLi8uLi91dGlscyc7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIE1vbmtleUVjeFJlcXVlc3RRdWV1ZU1vZGFsSGFuZGxpbmdTZXJ2aWNlIHtcbiAgcHJpdmF0ZSBxdWV1ZTogTW9ua2V5RWN4UmVxdWVzdFF1ZXVlW10gPSBbXTtcblxuICBwcml2YXRlIHF1ZXVlcyQ6IEJlaGF2aW9yU3ViamVjdDxNb25rZXlFY3hSZXF1ZXN0UXVldWVbXSB8IGFueT47XG5cbiAgcHJpdmF0ZSBuZXdRdWV1ZSQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0KGZhbHNlKTtcblxuICBwcml2YXRlIGFsbFF1ZXVlRmluaXNoZWQkID0gbmV3IEJlaGF2aW9yU3ViamVjdChmYWxzZSk7XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgdGhpcy5xdWV1ZXMkID0gbmV3IEJlaGF2aW9yU3ViamVjdChbXSk7XG4gIH1cblxuICBwcml2YXRlIGFkZFRvUXVldWUocTogTW9ua2V5RWN4UmVxdWVzdFF1ZXVlKSB7XG4gICAgdGhpcy5xdWV1ZS5wdXNoKHEpO1xuICAgIHRoaXMucXVldWVzJC5uZXh0KHRoaXMucXVldWUpO1xuICAgIHRoaXMubmV3UXVldWUkLm5leHQodHJ1ZSk7XG4gIH1cblxuICBwcml2YXRlIG1hcmtRdWV1ZUl0ZW1Bc0ZpbmlzaChxOiBNb25rZXlFY3hSZXF1ZXN0UXVldWUsIHN0YXR1cz86IG51bWJlciwgYWN0aW9uPzogRnVuY3Rpb24pIHtcbiAgICBjb25zdCBzYXZlZCA9IFsuLi50aGlzLnF1ZXVlXTtcbiAgICB0aGlzLnF1ZXVlID0gW1xuICAgICAgLi4uc2F2ZWQubWFwKCh2YWw6IGFueSkgPT4ge1xuICAgICAgICBjb25zdCB2YWxTYXZlZCA9IHtcbiAgICAgICAgICAuLi52YWxcbiAgICAgICAgfTtcbiAgICAgICAgaWYgKHZhbC5zdGF0dXMgPT09IFN0YXRpY3MuTW9ua2V5RWN4UXVldWVFdmVudHMuT25Hb2luZykge1xuICAgICAgICAgIGlmICh2YWxTYXZlZC5pdGVtLmlkID09PSBxLml0ZW0uaWQpIHtcbiAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgIC4uLnZhbFNhdmVkLFxuICAgICAgICAgICAgICBzdGF0dXM6IHN0YXR1cyB8fCBTdGF0aWNzLk1vbmtleUVjeFF1ZXVlRXZlbnRzLkZpbmlzaGVkLFxuICAgICAgICAgICAgICBhY3Rpb25cbiAgICAgICAgICAgIH07XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiB2YWxTYXZlZDtcbiAgICAgIH0pXG4gICAgXTtcbiAgICB0aGlzLnF1ZXVlcyQubmV4dCh0aGlzLnF1ZXVlKTtcbiAgfVxuXG4gIHByaXZhdGUgdXBkYXRlUXVldWUocTogTW9ua2V5RWN4UmVxdWVzdFF1ZXVlLCBwcm9ncmVzczogTW9ua2V5RWN4UmVxdWVzdFByb2dyZXNzUXVldWUpIHtcbiAgICBjb25zdCBzYXZlZCA9IFsuLi50aGlzLnF1ZXVlXTtcbiAgICB0aGlzLnF1ZXVlID0gW1xuICAgICAgLi4uc2F2ZWQubWFwKCh2YWw6IGFueSkgPT4ge1xuICAgICAgICBjb25zdCB2YWxTYXZlZCA9IHtcbiAgICAgICAgICAuLi52YWxcbiAgICAgICAgfTtcbiAgICAgICAgY29uc3QgeyB0b3RhbCwgbG9hZGVkIH0gPSBwcm9ncmVzcztcbiAgICAgICAgY29uc3QgY3VycmVudFBlY2VudGFnZSA9IE1hdGguZmxvb3IoKChsb2FkZWR8fDApIC8gKHRvdGFsfHwwKSkgKiAxMDApO1xuICAgICAgICBjb25zdCB0b3RhbFBlcmNlbnRhZ2UgPSAxMDA7XG4gICAgICAgIGlmICh2YWxTYXZlZC5pdGVtLmlkID09PSBxLml0ZW0uaWQpIHtcbiAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgLi4udmFsU2F2ZWQsXG4gICAgICAgICAgICBwcm9ncmVzczoge1xuICAgICAgICAgICAgICBsb2FkZWQsXG4gICAgICAgICAgICAgIHRvdGFsLFxuICAgICAgICAgICAgICBjdXJyZW50UGVyY2VudGFnZTogY3VycmVudFBlY2VudGFnZSxcbiAgICAgICAgICAgICAgdG90YWxQZXJjZW50YWdlXG4gICAgICAgICAgICB9XG4gICAgICAgICAgfTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdmFsU2F2ZWQ7XG4gICAgICB9KVxuICAgIF07XG5cbiAgICB0aGlzLnF1ZXVlcyQubmV4dCh0aGlzLnF1ZXVlKTtcbiAgfVxuXG4gIHByaXZhdGUgZGVsZXRlUXVldWUocTogTW9ua2V5RWN4UmVxdWVzdFF1ZXVlKSB7XG4gICAgY29uc3Qgc2F2ZWQgPSBbLi4udGhpcy5xdWV1ZV07XG4gICAgdGhpcy5xdWV1ZSA9IFtcbiAgICAgIC4uLnNhdmVkLm1hcCgodmFsOiBhbnkpID0+IHtcbiAgICAgICAgY29uc3QgdmFsU2F2ZWQgPSB7XG4gICAgICAgICAgLi4udmFsXG4gICAgICAgIH07XG4gICAgICAgIGlmICh2YWxTYXZlZC5pdGVtLmlkID09PSBxLml0ZW0uaWQpIHtcbiAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdmFsU2F2ZWQ7XG4gICAgICB9KVxuICAgIF0uZmlsdGVyKChfOiBhbnkpID0+IHtcbiAgICAgIHJldHVybiBfO1xuICAgIH0pO1xuXG4gICAgdGhpcy5xdWV1ZXMkLm5leHQodGhpcy5xdWV1ZSk7XG4gICAgaWYgKHRoaXMucXVldWUubGVuZ3RoIDw9IDApIHtcbiAgICAgIHRoaXMuYWxsUXVldWVGaW5pc2hlZCQubmV4dCh0cnVlKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgc2V0UXVldWUocTogTW9ua2V5RWN4UmVxdWVzdFF1ZXVlKSB7XG4gICAgdGhpcy5hZGRUb1F1ZXVlKHEpO1xuICB9XG5cbiAgcHVibGljIGdldFF1ZXVlKCk6IE9ic2VydmFibGU8TW9ua2V5RWN4UmVxdWVzdFF1ZXVlW10+IHtcbiAgICByZXR1cm4gdGhpcy5xdWV1ZXMkLmFzT2JzZXJ2YWJsZSgpO1xuICB9XG5cbiAgcHVibGljIGZpbmlzaFF1ZXVlSXRlbShxOiBNb25rZXlFY3hSZXF1ZXN0UXVldWUsIGFjdGlvbj86IEZ1bmN0aW9uLCBzdGF0dXM/OiBudW1iZXIpIHtcbiAgICB0aGlzLm1hcmtRdWV1ZUl0ZW1Bc0ZpbmlzaChxLCBzdGF0dXMsIGFjdGlvbik7XG4gIH1cblxuICBwdWJsaWMgcmVtb3ZlUXVldWVJdGVtKHE6IE1vbmtleUVjeFJlcXVlc3RRdWV1ZSkge1xuICAgIHRoaXMuZGVsZXRlUXVldWUocSk7XG4gIH1cblxuICBwdWJsaWMgdXBkYXRlUXVldWVJdGVtKHE6IE1vbmtleUVjeFJlcXVlc3RRdWV1ZSwgcHJvZ3Jlc3M6IE1vbmtleUVjeFJlcXVlc3RQcm9ncmVzc1F1ZXVlKSB7XG4gICAgdGhpcy51cGRhdGVRdWV1ZShxLCBwcm9ncmVzcyk7XG4gIH1cblxuICBwdWJsaWMgaGFzTmV3UXVldWUoKTogT2JzZXJ2YWJsZTxib29sZWFuPiB7XG4gICAgcmV0dXJuIHRoaXMubmV3UXVldWUkLnBpcGUoXG4gICAgICBtYXAoKF86IGFueSkgPT4ge1xuICAgICAgICByZXR1cm4gXztcbiAgICAgIH0pXG4gICAgKTtcbiAgfVxuXG4gIHB1YmxpYyBoYXNBbGxRdWV1ZUZpbmlzaGVkKCk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xuICAgIHJldHVybiB0aGlzLmFsbFF1ZXVlRmluaXNoZWQkLnBpcGUoXG4gICAgICBtYXAoKF86IGFueSkgPT4ge1xuICAgICAgICByZXR1cm4gXztcbiAgICAgIH0pXG4gICAgKTtcbiAgfVxufVxuIl19
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export * from './monkeyecx-dicovery-params.service';
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tb25rZXktZnJvbnQtY29yZS9zcmMvbGliL2NvcmUvc2VydmljZXMvcm91dGVzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMscUNBQXFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL21vbmtleWVjeC1kaWNvdmVyeS1wYXJhbXMuc2VydmljZSc7XG4iXX0=
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import { MonkeyEcxUtils } from '../../utils/utils';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "@angular/router";
|
|
5
|
+
export class MonkeyEcxDiscoveryParamsService {
|
|
6
|
+
constructor(router) {
|
|
7
|
+
this.router = router;
|
|
8
|
+
// not to do
|
|
9
|
+
}
|
|
10
|
+
getLastChild(route) {
|
|
11
|
+
if (route.firstChild) {
|
|
12
|
+
return this.getLastChild(route.firstChild);
|
|
13
|
+
}
|
|
14
|
+
return route;
|
|
15
|
+
}
|
|
16
|
+
setData(field, value) {
|
|
17
|
+
const { root } = this.router.routerState.snapshot;
|
|
18
|
+
const route = this.getLastChild(root);
|
|
19
|
+
route.data[field] = value;
|
|
20
|
+
}
|
|
21
|
+
getData(field) {
|
|
22
|
+
const { root } = this.router.routerState.snapshot;
|
|
23
|
+
const route = this.getLastChild(root);
|
|
24
|
+
const found = MonkeyEcxUtils.persistNullEmptyUndefined(route) ? route.data[field] : null;
|
|
25
|
+
return found;
|
|
26
|
+
}
|
|
27
|
+
getDataFromCurrentNavigation(field) {
|
|
28
|
+
const navigation = this.router.getCurrentNavigation();
|
|
29
|
+
let state = null;
|
|
30
|
+
if (MonkeyEcxUtils.persistNullEmptyUndefined(navigation)) {
|
|
31
|
+
state = navigation?.extras.state;
|
|
32
|
+
}
|
|
33
|
+
return state ? state[field] : null;
|
|
34
|
+
}
|
|
35
|
+
getParam(param) {
|
|
36
|
+
const { root } = this.router.routerState.snapshot;
|
|
37
|
+
const route = this.getLastChild(root);
|
|
38
|
+
let found = MonkeyEcxUtils.persistNullEmptyUndefined(route)
|
|
39
|
+
? route?.paramMap?.get(param) || ''
|
|
40
|
+
: '';
|
|
41
|
+
if (!MonkeyEcxUtils.persistNullEmptyUndefined(found))
|
|
42
|
+
found = this.getData(param);
|
|
43
|
+
return found;
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
MonkeyEcxDiscoveryParamsService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: MonkeyEcxDiscoveryParamsService, deps: [{ token: i1.Router }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
47
|
+
MonkeyEcxDiscoveryParamsService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: MonkeyEcxDiscoveryParamsService, providedIn: 'root' });
|
|
48
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: MonkeyEcxDiscoveryParamsService, decorators: [{
|
|
49
|
+
type: Injectable,
|
|
50
|
+
args: [{
|
|
51
|
+
providedIn: 'root'
|
|
52
|
+
}]
|
|
53
|
+
}], ctorParameters: function () { return [{ type: i1.Router }]; } });
|
|
54
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9ua2V5ZWN4LWRpY292ZXJ5LXBhcmFtcy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbW9ua2V5LWZyb250LWNvcmUvc3JjL2xpYi9jb3JlL3NlcnZpY2VzL3JvdXRlcy9tb25rZXllY3gtZGljb3ZlcnktcGFyYW1zLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUzQyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7OztBQUtuRCxNQUFNLE9BQU8sK0JBQStCO0lBQzFDLFlBQW9CLE1BQWM7UUFBZCxXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQ2hDLFlBQVk7SUFDZCxDQUFDO0lBRU8sWUFBWSxDQUFDLEtBQTZCO1FBQ2hELElBQUksS0FBSyxDQUFDLFVBQVUsRUFBRTtZQUNwQixPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxDQUFDO1NBQzVDO1FBRUQsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDO0lBRU0sT0FBTyxDQUFDLEtBQWEsRUFBRSxLQUFVO1FBQ3RDLE1BQU0sRUFBRSxJQUFJLEVBQUUsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUM7UUFDbEQsTUFBTSxLQUFLLEdBQTJCLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDOUQsS0FBSyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxLQUFLLENBQUM7SUFDNUIsQ0FBQztJQUVNLE9BQU8sQ0FBQyxLQUFhO1FBQzFCLE1BQU0sRUFBRSxJQUFJLEVBQUUsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUM7UUFDbEQsTUFBTSxLQUFLLEdBQTJCLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLENBQUM7UUFFOUQsTUFBTSxLQUFLLEdBQVEsY0FBYyxDQUFDLHlCQUF5QixDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7UUFDOUYsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDO0lBRU0sNEJBQTRCLENBQUMsS0FBYTtRQUMvQyxNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLG9CQUFvQixFQUFFLENBQUM7UUFDdEQsSUFBSSxLQUFLLEdBQVEsSUFBSSxDQUFDO1FBQ3RCLElBQUksY0FBYyxDQUFDLHlCQUF5QixDQUFDLFVBQVUsQ0FBQyxFQUFFO1lBQ3hELEtBQUssR0FBRyxVQUFVLEVBQUUsTUFBTSxDQUFDLEtBQUssQ0FBQztTQUNsQztRQUVELE9BQU8sS0FBSyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztJQUNyQyxDQUFDO0lBRU0sUUFBUSxDQUFDLEtBQWE7UUFDM0IsTUFBTSxFQUFFLElBQUksRUFBRSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLFFBQVEsQ0FBQztRQUNsRCxNQUFNLEtBQUssR0FBMkIsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUM5RCxJQUFJLEtBQUssR0FBVyxjQUFjLENBQUMseUJBQXlCLENBQUMsS0FBSyxDQUFDO1lBQ2pFLENBQUMsQ0FBQyxLQUFLLEVBQUUsUUFBUSxFQUFFLEdBQUcsQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFO1lBQ25DLENBQUMsQ0FBQyxFQUFFLENBQUM7UUFDUCxJQUFJLENBQUMsY0FBYyxDQUFDLHlCQUF5QixDQUFDLEtBQUssQ0FBQztZQUFFLEtBQUssR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ2xGLE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQzs7NEhBN0NVLCtCQUErQjtnSUFBL0IsK0JBQStCLGNBRjlCLE1BQU07MkZBRVAsK0JBQStCO2tCQUgzQyxVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJvdXRlciwgQWN0aXZhdGVkUm91dGVTbmFwc2hvdCB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBNb25rZXlFY3hVdGlscyB9IGZyb20gJy4uLy4uL3V0aWxzL3V0aWxzJztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgTW9ua2V5RWN4RGlzY292ZXJ5UGFyYW1zU2VydmljZSB7XG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcm91dGVyOiBSb3V0ZXIpIHtcbiAgICAvLyBub3QgdG8gZG9cbiAgfVxuXG4gIHByaXZhdGUgZ2V0TGFzdENoaWxkKHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZVNuYXBzaG90KTogQWN0aXZhdGVkUm91dGVTbmFwc2hvdCB7XG4gICAgaWYgKHJvdXRlLmZpcnN0Q2hpbGQpIHtcbiAgICAgIHJldHVybiB0aGlzLmdldExhc3RDaGlsZChyb3V0ZS5maXJzdENoaWxkKTtcbiAgICB9XG5cbiAgICByZXR1cm4gcm91dGU7XG4gIH1cblxuICBwdWJsaWMgc2V0RGF0YShmaWVsZDogc3RyaW5nLCB2YWx1ZTogYW55KTogYW55IHtcbiAgICBjb25zdCB7IHJvb3QgfSA9IHRoaXMucm91dGVyLnJvdXRlclN0YXRlLnNuYXBzaG90O1xuICAgIGNvbnN0IHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZVNuYXBzaG90ID0gdGhpcy5nZXRMYXN0Q2hpbGQocm9vdCk7XG4gICAgcm91dGUuZGF0YVtmaWVsZF0gPSB2YWx1ZTtcbiAgfVxuXG4gIHB1YmxpYyBnZXREYXRhKGZpZWxkOiBzdHJpbmcpOiBhbnkge1xuICAgIGNvbnN0IHsgcm9vdCB9ID0gdGhpcy5yb3V0ZXIucm91dGVyU3RhdGUuc25hcHNob3Q7XG4gICAgY29uc3Qgcm91dGU6IEFjdGl2YXRlZFJvdXRlU25hcHNob3QgPSB0aGlzLmdldExhc3RDaGlsZChyb290KTtcblxuICAgIGNvbnN0IGZvdW5kOiBhbnkgPSBNb25rZXlFY3hVdGlscy5wZXJzaXN0TnVsbEVtcHR5VW5kZWZpbmVkKHJvdXRlKSA/IHJvdXRlLmRhdGFbZmllbGRdIDogbnVsbDtcbiAgICByZXR1cm4gZm91bmQ7XG4gIH1cblxuICBwdWJsaWMgZ2V0RGF0YUZyb21DdXJyZW50TmF2aWdhdGlvbihmaWVsZDogc3RyaW5nKTogYW55IHtcbiAgICBjb25zdCBuYXZpZ2F0aW9uID0gdGhpcy5yb3V0ZXIuZ2V0Q3VycmVudE5hdmlnYXRpb24oKTtcbiAgICBsZXQgc3RhdGU6IGFueSA9IG51bGw7XG4gICAgaWYgKE1vbmtleUVjeFV0aWxzLnBlcnNpc3ROdWxsRW1wdHlVbmRlZmluZWQobmF2aWdhdGlvbikpIHtcbiAgICAgIHN0YXRlID0gbmF2aWdhdGlvbj8uZXh0cmFzLnN0YXRlO1xuICAgIH1cblxuICAgIHJldHVybiBzdGF0ZSA/IHN0YXRlW2ZpZWxkXSA6IG51bGw7XG4gIH1cblxuICBwdWJsaWMgZ2V0UGFyYW0ocGFyYW06IHN0cmluZyk6IHN0cmluZyB8IG51bGwge1xuICAgIGNvbnN0IHsgcm9vdCB9ID0gdGhpcy5yb3V0ZXIucm91dGVyU3RhdGUuc25hcHNob3Q7XG4gICAgY29uc3Qgcm91dGU6IEFjdGl2YXRlZFJvdXRlU25hcHNob3QgPSB0aGlzLmdldExhc3RDaGlsZChyb290KTtcbiAgICBsZXQgZm91bmQ6IHN0cmluZyA9IE1vbmtleUVjeFV0aWxzLnBlcnNpc3ROdWxsRW1wdHlVbmRlZmluZWQocm91dGUpXG4gICAgICA/IHJvdXRlPy5wYXJhbU1hcD8uZ2V0KHBhcmFtKSB8fCAnJ1xuICAgICAgOiAnJztcbiAgICBpZiAoIU1vbmtleUVjeFV0aWxzLnBlcnNpc3ROdWxsRW1wdHlVbmRlZmluZWQoZm91bmQpKSBmb3VuZCA9IHRoaXMuZ2V0RGF0YShwYXJhbSk7XG4gICAgcmV0dXJuIGZvdW5kO1xuICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export * from './monkeyecx-request-schedule.service';
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tb25rZXktZnJvbnQtY29yZS9zcmMvbGliL2NvcmUvc2VydmljZXMvc2NoZWR1bGVzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsc0NBQXNDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL21vbmtleWVjeC1yZXF1ZXN0LXNjaGVkdWxlLnNlcnZpY2UnO1xuIl19
|
|
@@ -0,0 +1,188 @@
|
|
|
1
|
+
import { __decorate } from "tslib";
|
|
2
|
+
import { Injectable } from '@angular/core';
|
|
3
|
+
import { MonkeyEcxCoreService } from '../../decorators/monkeyecx-decorators';
|
|
4
|
+
import { MonkeyEcxUtils } from '../../utils/utils';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
import * as i1 from "../monkeyecx-service.service";
|
|
7
|
+
import * as i2 from "../logged";
|
|
8
|
+
export class MonkeyEcxRequestScheduleService {
|
|
9
|
+
constructor(monkeyecxService, monkeyLoggedHandlingService) {
|
|
10
|
+
this.monkeyecxService = monkeyecxService;
|
|
11
|
+
this.monkeyLoggedHandlingService = monkeyLoggedHandlingService;
|
|
12
|
+
this.schedule = [];
|
|
13
|
+
this.genericSchedule = [];
|
|
14
|
+
// not to do
|
|
15
|
+
}
|
|
16
|
+
addToSchedule(q) {
|
|
17
|
+
this.schedule.push(q);
|
|
18
|
+
this.monkeyLoggedHandlingService.addSchedule(this.schedule);
|
|
19
|
+
}
|
|
20
|
+
addToGenericSchedule(q) {
|
|
21
|
+
this.genericSchedule.push(q);
|
|
22
|
+
this.monkeyLoggedHandlingService.addGenericSchedule(this.genericSchedule);
|
|
23
|
+
}
|
|
24
|
+
removeFromSchedule(q) {
|
|
25
|
+
clearInterval(q.interval);
|
|
26
|
+
const saved = [...this.schedule];
|
|
27
|
+
this.schedule = [
|
|
28
|
+
...saved.map((sch) => {
|
|
29
|
+
const savedLocal = {
|
|
30
|
+
...sch
|
|
31
|
+
};
|
|
32
|
+
if (sch.id === q.id) {
|
|
33
|
+
return null;
|
|
34
|
+
}
|
|
35
|
+
return savedLocal;
|
|
36
|
+
})
|
|
37
|
+
].filter((_) => {
|
|
38
|
+
return _;
|
|
39
|
+
});
|
|
40
|
+
this.monkeyLoggedHandlingService.addSchedule(this.schedule);
|
|
41
|
+
}
|
|
42
|
+
removeFromGenericSchedule(q) {
|
|
43
|
+
clearInterval(q.interval);
|
|
44
|
+
const saved = [...this.genericSchedule];
|
|
45
|
+
this.genericSchedule = [
|
|
46
|
+
...saved.map((sch) => {
|
|
47
|
+
const savedLocal = {
|
|
48
|
+
...sch
|
|
49
|
+
};
|
|
50
|
+
if (sch.id === q.id) {
|
|
51
|
+
return null;
|
|
52
|
+
}
|
|
53
|
+
return savedLocal;
|
|
54
|
+
})
|
|
55
|
+
].filter((_) => {
|
|
56
|
+
return _;
|
|
57
|
+
});
|
|
58
|
+
this.monkeyLoggedHandlingService.addGenericSchedule(this.genericSchedule);
|
|
59
|
+
}
|
|
60
|
+
removeFromScheduleById(id) {
|
|
61
|
+
const q = this.getScheduleById(id);
|
|
62
|
+
clearInterval(q?.interval);
|
|
63
|
+
const saved = [...this.schedule];
|
|
64
|
+
this.schedule = [
|
|
65
|
+
...saved.map((sch) => {
|
|
66
|
+
const savedLocal = {
|
|
67
|
+
...sch
|
|
68
|
+
};
|
|
69
|
+
if (sch.id === q?.id) {
|
|
70
|
+
return null;
|
|
71
|
+
}
|
|
72
|
+
return savedLocal;
|
|
73
|
+
})
|
|
74
|
+
].filter((_) => {
|
|
75
|
+
return _;
|
|
76
|
+
});
|
|
77
|
+
this.monkeyLoggedHandlingService.addSchedule(this.schedule);
|
|
78
|
+
}
|
|
79
|
+
doCall(sch) {
|
|
80
|
+
const { url, method, params, data, action, errorAction } = sch;
|
|
81
|
+
const errAction = errorAction || ((...args) => { });
|
|
82
|
+
this.monkeyecxService[method.toLowerCase()](`${url}`, params).subscribe((resp) => {
|
|
83
|
+
action({
|
|
84
|
+
...data,
|
|
85
|
+
...resp
|
|
86
|
+
}, sch);
|
|
87
|
+
}, (err) => {
|
|
88
|
+
this.removeFromSchedule(sch);
|
|
89
|
+
errAction({
|
|
90
|
+
...data
|
|
91
|
+
}, sch, err);
|
|
92
|
+
});
|
|
93
|
+
}
|
|
94
|
+
doGenericCall(sch) {
|
|
95
|
+
const { url, method, params, data, action, errorAction } = sch;
|
|
96
|
+
const errAction = errorAction || ((...args) => { });
|
|
97
|
+
this.monkeyecxService[method.toLowerCase()](`${url}`, params).subscribe((resp) => {
|
|
98
|
+
action({
|
|
99
|
+
...data,
|
|
100
|
+
...resp
|
|
101
|
+
}, sch);
|
|
102
|
+
}, (err) => {
|
|
103
|
+
this.removeFromGenericSchedule(sch);
|
|
104
|
+
errAction({
|
|
105
|
+
...data
|
|
106
|
+
}, sch, err);
|
|
107
|
+
});
|
|
108
|
+
}
|
|
109
|
+
setSchedule(q, delay = 3000) {
|
|
110
|
+
const id = q?.id || `${MonkeyEcxUtils.getRandomString(40)}`;
|
|
111
|
+
const obj = {
|
|
112
|
+
...q,
|
|
113
|
+
id
|
|
114
|
+
};
|
|
115
|
+
const interval = setInterval(() => {
|
|
116
|
+
this.doCall({
|
|
117
|
+
...obj,
|
|
118
|
+
interval
|
|
119
|
+
});
|
|
120
|
+
}, delay);
|
|
121
|
+
const sch = {
|
|
122
|
+
...obj,
|
|
123
|
+
interval
|
|
124
|
+
};
|
|
125
|
+
this.addToSchedule(sch);
|
|
126
|
+
return sch;
|
|
127
|
+
}
|
|
128
|
+
setGenericSchedule(q, delay = 3000) {
|
|
129
|
+
const interval = setInterval(() => {
|
|
130
|
+
this.doGenericCall({
|
|
131
|
+
...q,
|
|
132
|
+
interval
|
|
133
|
+
});
|
|
134
|
+
}, delay);
|
|
135
|
+
const sch = {
|
|
136
|
+
...q,
|
|
137
|
+
id: `${MonkeyEcxUtils.getRandomString(40)}`,
|
|
138
|
+
interval
|
|
139
|
+
};
|
|
140
|
+
this.addToGenericSchedule(sch);
|
|
141
|
+
return sch;
|
|
142
|
+
}
|
|
143
|
+
removeSchedule(q) {
|
|
144
|
+
this.removeFromSchedule(q);
|
|
145
|
+
}
|
|
146
|
+
removeGenericSchedule(q) {
|
|
147
|
+
this.removeFromGenericSchedule(q);
|
|
148
|
+
}
|
|
149
|
+
removeScheduleById(id) {
|
|
150
|
+
this.removeFromScheduleById(id);
|
|
151
|
+
}
|
|
152
|
+
getScheduleById(id) {
|
|
153
|
+
const q = this.schedule.find((sch) => {
|
|
154
|
+
return sch.id === id;
|
|
155
|
+
});
|
|
156
|
+
return q;
|
|
157
|
+
}
|
|
158
|
+
}
|
|
159
|
+
MonkeyEcxRequestScheduleService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: MonkeyEcxRequestScheduleService, deps: [{ token: i1.MonkeyEcxService }, { token: i2.MonkeyEcxLoggedHandlingService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
160
|
+
MonkeyEcxRequestScheduleService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: MonkeyEcxRequestScheduleService, providedIn: 'root' });
|
|
161
|
+
__decorate([
|
|
162
|
+
MonkeyEcxCoreService({
|
|
163
|
+
httpResponse: {
|
|
164
|
+
httpCodeIgnore: [400, 403, 404, 500, 503]
|
|
165
|
+
},
|
|
166
|
+
requestInProgress: {
|
|
167
|
+
showProgress: false
|
|
168
|
+
}
|
|
169
|
+
})
|
|
170
|
+
], MonkeyEcxRequestScheduleService.prototype, "doCall", null);
|
|
171
|
+
__decorate([
|
|
172
|
+
MonkeyEcxCoreService({
|
|
173
|
+
httpResponse: {
|
|
174
|
+
httpCodeIgnore: [400, 401, 403, 404, 500, 503],
|
|
175
|
+
httpCodeIgnoreRedirect: [503]
|
|
176
|
+
},
|
|
177
|
+
requestInProgress: {
|
|
178
|
+
showProgress: false
|
|
179
|
+
}
|
|
180
|
+
})
|
|
181
|
+
], MonkeyEcxRequestScheduleService.prototype, "doGenericCall", null);
|
|
182
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: MonkeyEcxRequestScheduleService, decorators: [{
|
|
183
|
+
type: Injectable,
|
|
184
|
+
args: [{
|
|
185
|
+
providedIn: 'root'
|
|
186
|
+
}]
|
|
187
|
+
}], ctorParameters: function () { return [{ type: i1.MonkeyEcxService }, { type: i2.MonkeyEcxLoggedHandlingService }]; }, propDecorators: { doCall: [], doGenericCall: [] } });
|
|
188
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9ua2V5ZWN4LXJlcXVlc3Qtc2NoZWR1bGUuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21vbmtleS1mcm9udC1jb3JlL3NyYy9saWIvY29yZS9zZXJ2aWNlcy9zY2hlZHVsZXMvbW9ua2V5ZWN4LXJlcXVlc3Qtc2NoZWR1bGUuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUzQyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUM3RSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7Ozs7QUFRbkQsTUFBTSxPQUFPLCtCQUErQjtJQUsxQyxZQUNTLGdCQUFrQyxFQUNqQywyQkFBMkQ7UUFENUQscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQUNqQyxnQ0FBMkIsR0FBM0IsMkJBQTJCLENBQWdDO1FBTjdELGFBQVEsR0FBdUMsRUFBRSxDQUFDO1FBRWxELG9CQUFlLEdBQXVDLEVBQUUsQ0FBQztRQU0vRCxZQUFZO0lBQ2QsQ0FBQztJQUVPLGFBQWEsQ0FBQyxDQUEyQjtRQUMvQyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUN0QixJQUFJLENBQUMsMkJBQTJCLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUM5RCxDQUFDO0lBRU8sb0JBQW9CLENBQUMsQ0FBMkI7UUFDdEQsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDN0IsSUFBSSxDQUFDLDJCQUEyQixDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQztJQUM1RSxDQUFDO0lBRU8sa0JBQWtCLENBQUMsQ0FBMkI7UUFDcEQsYUFBYSxDQUFDLENBQUMsQ0FB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RCxJQUFJLENBQUMseUJBQXlCLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDcEMsQ0FBQztJQUVNLGtCQUFrQixDQUFDLEVBQVU7UUFDbEMsSUFBSSxDQUFDLHNCQUFzQixDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQ2xDLENBQUM7SUFFTSxlQUFlLENBQUMsRUFBVTtRQUMvQixNQUFNLENBQUMsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDLEdBQTZCLEVBQUUsRUFBRTtZQUM3RCxPQUFPLEdBQUcsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDO1FBQ3ZCLENBQUMsQ0FBQyxDQUFDO1FBQ0gsT0FBTyxDQUFDLENBQUM7SUFDWCxDQUFDOzs0SEFuTlUsK0JBQStCO2dJQUEvQiwrQkFBK0IsY0FGOUIsTUFBTTtBQTBGbEI7SUFSQyxvQkFBb0IsQ0FBQztRQUNwQixZQUFZLEVBQUU7WUFDWixjQUFjLEVBQUUsQ0FBQyxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxDQUFDO1NBQzFDO1FBQ0QsaUJBQWlCLEVBQUU7WUFDakIsWUFBWSxFQUFFLEtBQUs7U0FDcEI7S0FDRixDQUFDOzZEQTJCRDtBQVdEO0lBVEMsb0JBQW9CLENBQUM7UUFDcEIsWUFBWSxFQUFFO1lBQ1osY0FBYyxFQUFFLENBQUMsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLENBQUM7WUFDOUMsc0JBQXNCLEVBQUUsQ0FBQyxHQUFHLENBQUM7U0FDOUI7UUFDRCxpQkFBaUIsRUFBRTtZQUNqQixZQUFZLEVBQUUsS0FBSztTQUNwQjtLQUNGLENBQUM7b0VBMkJEOzJGQXZKVSwrQkFBK0I7a0JBSDNDLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CO29KQXlGUyxNQUFNLE1BcUNOLGFBQWEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBIdHRwRXJyb3JSZXNwb25zZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IE1vbmtleUVjeENvcmVTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vZGVjb3JhdG9ycy9tb25rZXllY3gtZGVjb3JhdG9ycyc7XG5pbXBvcnQgeyBNb25rZXlFY3hVdGlscyB9IGZyb20gJy4uLy4uL3V0aWxzL3V0aWxzJztcbmltcG9ydCB7IE1vbmtleUVjeFJlcXVlc3RTY2hlZHVsZSB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMnO1xuaW1wb3J0IHsgTW9ua2V5RWN4U2VydmljZSB9IGZyb20gJy4uL21vbmtleWVjeC1zZXJ2aWNlLnNlcnZpY2UnO1xuaW1wb3J0IHsgTW9ua2V5RWN4TG9nZ2VkSGFuZGxpbmdTZXJ2aWNlIH0gZnJvbSAnLi4vbG9nZ2VkJztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgTW9ua2V5RWN4UmVxdWVzdFNjaGVkdWxlU2VydmljZSB7XG4gIHByaXZhdGUgc2NoZWR1bGU6IE1vbmtleUVjeFJlcXVlc3RTY2hlZHVsZVtdIHwgYW55W10gPSBbXTtcblxuICBwcml2YXRlIGdlbmVyaWNTY2hlZHVsZTogTW9ua2V5RWN4UmVxdWVzdFNjaGVkdWxlW10gfCBhbnlbXSA9IFtdO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyBtb25rZXllY3hTZXJ2aWNlOiBNb25rZXlFY3hTZXJ2aWNlLFxuICAgIHByaXZhdGUgbW9ua2V5TG9nZ2VkSGFuZGxpbmdTZXJ2aWNlOiBNb25rZXlFY3hMb2dnZWRIYW5kbGluZ1NlcnZpY2VcbiAgKSB7XG4gICAgLy8gbm90IHRvIGRvXG4gIH1cblxuICBwcml2YXRlIGFkZFRvU2NoZWR1bGUocTogTW9ua2V5RWN4UmVxdWVzdFNjaGVkdWxlKSB7XG4gICAgdGhpcy5zY2hlZHVsZS5wdXNoKHEpO1xuICAgIHRoaXMubW9ua2V5TG9nZ2VkSGFuZGxpbmdTZXJ2aWNlLmFkZFNjaGVkdWxlKHRoaXMuc2NoZWR1bGUpO1xuICB9XG5cbiAgcHJpdmF0ZSBhZGRUb0dlbmVyaWNTY2hlZHVsZShxOiBNb25rZXlFY3hSZXF1ZXN0U2NoZWR1bGUpIHtcbiAgICB0aGlzLmdlbmVyaWNTY2hlZHVsZS5wdXNoKHEpO1xuICAgIHRoaXMubW9ua2V5TG9nZ2VkSGFuZGxpbmdTZXJ2aWNlLmFkZEdlbmVyaWNTY2hlZHVsZSh0aGlzLmdlbmVyaWNTY2hlZHVsZSk7XG4gIH1cblxuICBwcml2YXRlIHJlbW92ZUZyb21TY2hlZHVsZShxOiBNb25rZXlFY3hSZXF1ZXN0U2NoZWR1bGUpIHtcbiAgICBjbGVhckludGVydmFsKHEuaW50ZXJ2YWwpO1xuICAgIGNvbnN0IHNhdmVkID0gWy4uLnRoaXMuc2NoZWR1bGVdO1xuICAgIHRoaXMuc2NoZWR1bGUgPSBbXG4gICAgICAuLi5zYXZlZC5tYXAoKHNjaDogTW9ua2V5RWN4UmVxdWVzdFNjaGVkdWxlKSA9PiB7XG4gICAgICAgIGNvbnN0IHNhdmVkTG9jYWwgPSB7XG4gICAgICAgICAgLi4uc2NoXG4gICAgICAgIH07XG4gICAgICAgIGlmIChzY2guaWQgPT09IHEuaWQpIHtcbiAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gc2F2ZWRMb2NhbDtcbiAgICAgIH0pXG4gICAgXS5maWx0ZXIoKF86IGFueSkgPT4ge1xuICAgICAgcmV0dXJuIF87XG4gICAgfSk7XG4gICAgdGhpcy5tb25rZXlMb2dnZWRIYW5kbGluZ1NlcnZpY2UuYWRkU2NoZWR1bGUodGhpcy5zY2hlZHVsZSk7XG4gIH1cblxuICBwcml2YXRlIHJlbW92ZUZyb21HZW5lcmljU2NoZWR1bGUocTogTW9ua2V5RWN4UmVxdWVzdFNjaGVkdWxlKSB7XG4gICAgY2xlYXJJbnRlcnZhbChxLmludGVydmFsKTtcbiAgICBjb25zdCBzYXZlZCA9IFsuLi50aGlzLmdlbmVyaWNTY2hlZHVsZV07XG4gICAgdGhpcy5nZW5lcmljU2NoZWR1bGUgPSBbXG4gICAgICAuLi5zYXZlZC5tYXAoKHNjaDogTW9ua2V5RWN4UmVxdWVzdFNjaGVkdWxlKSA9PiB7XG4gICAgICAgIGNvbnN0IHNhdmVkTG9jYWwgPSB7XG4gICAgICAgICAgLi4uc2NoXG4gICAgICAgIH07XG4gICAgICAgIGlmIChzY2guaWQgPT09IHEuaWQpIHtcbiAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gc2F2ZWRMb2NhbDtcbiAgICAgIH0pXG4gICAgXS5maWx0ZXIoKF86IGFueSkgPT4ge1xuICAgICAgcmV0dXJuIF87XG4gICAgfSk7XG4gICAgdGhpcy5tb25rZXlMb2dnZWRIYW5kbGluZ1NlcnZpY2UuYWRkR2VuZXJpY1NjaGVkdWxlKHRoaXMuZ2VuZXJpY1NjaGVkdWxlKTtcbiAgfVxuXG4gIHByaXZhdGUgcmVtb3ZlRnJvbVNjaGVkdWxlQnlJZChpZDogc3RyaW5nKSB7XG4gICAgY29uc3QgcSA9IHRoaXMuZ2V0U2NoZWR1bGVCeUlkKGlkKTtcbiAgICBjbGVhckludGVydmFsKHE/LmludGVydmFsKTtcbiAgICBjb25zdCBzYXZlZCA9IFsuLi50aGlzLnNjaGVkdWxlXTtcbiAgICB0aGlzLnNjaGVkdWxlID0gW1xuICAgICAgLi4uc2F2ZWQubWFwKChzY2g6IE1vbmtleUVjeFJlcXVlc3RTY2hlZHVsZSkgPT4ge1xuICAgICAgICBjb25zdCBzYXZlZExvY2FsID0ge1xuICAgICAgICAgIC4uLnNjaFxuICAgICAgICB9O1xuICAgICAgICBpZiAoc2NoLmlkID09PSBxPy5pZCkge1xuICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBzYXZlZExvY2FsO1xuICAgICAgfSlcbiAgICBdLmZpbHRlcigoXzogYW55KSA9PiB7XG4gICAgICByZXR1cm4gXztcbiAgICB9KTtcbiAgICB0aGlzLm1vbmtleUxvZ2dlZEhhbmRsaW5nU2VydmljZS5hZGRTY2hlZHVsZSh0aGlzLnNjaGVkdWxlKTtcbiAgfVxuXG4gIEBNb25rZXlFY3hDb3JlU2VydmljZSh7XG4gICAgaHR0cFJlc3BvbnNlOiB7XG4gICAgICBodHRwQ29kZUlnbm9yZTogWzQwMCwgNDAzLCA0MDQsIDUwMCwgNTAzXVxuICAgIH0sXG4gICAgcmVxdWVzdEluUHJvZ3Jlc3M6IHtcbiAgICAgIHNob3dQcm9ncmVzczogZmFsc2VcbiAgICB9XG4gIH0pXG4gIHByaXZhdGUgZG9DYWxsKHNjaDogTW9ua2V5RWN4UmVxdWVzdFNjaGVkdWxlKSB7XG4gICAgY29uc3QgeyB1cmwsIG1ldGhvZCwgcGFyYW1zLCBkYXRhLCBhY3Rpb24sIGVycm9yQWN0aW9uIH0gPSBzY2g7XG5cbiAgICBjb25zdCBlcnJBY3Rpb24gPSBlcnJvckFjdGlvbiB8fCAoKC4uLmFyZ3MpID0+IHt9KTtcblxuICAgIHRoaXMubW9ua2V5ZWN4U2VydmljZVttZXRob2QudG9Mb3dlckNhc2UoKV08YW55PihgJHt1cmx9YCwgcGFyYW1zKS5zdWJzY3JpYmUoXG4gICAgICAocmVzcDogYW55KSA9PiB7XG4gICAgICAgIGFjdGlvbihcbiAgICAgICAgICB7XG4gICAgICAgICAgICAuLi5kYXRhLFxuICAgICAgICAgICAgLi4ucmVzcFxuICAgICAgICAgIH0sXG4gICAgICAgICAgc2NoXG4gICAgICAgICk7XG4gICAgICB9LFxuICAgICAgKGVycjogSHR0cEVycm9yUmVzcG9uc2UpID0+IHtcbiAgICAgICAgdGhpcy5yZW1vdmVGcm9tU2NoZWR1bGUoc2NoKTtcbiAgICAgICAgZXJyQWN0aW9uKFxuICAgICAgICAgIHtcbiAgICAgICAgICAgIC4uLmRhdGFcbiAgICAgICAgICB9LFxuICAgICAgICAgIHNjaCxcbiAgICAgICAgICBlcnJcbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICApO1xuICB9XG5cbiAgQE1vbmtleUVjeENvcmVTZXJ2aWNlKHtcbiAgICBodHRwUmVzcG9uc2U6IHtcbiAgICAgIGh0dHBDb2RlSWdub3JlOiBbNDAwLCA0MDEsIDQwMywgNDA0LCA1MDAsIDUwM10sXG4gICAgICBodHRwQ29kZUlnbm9yZVJlZGlyZWN0OiBbNTAzXVxuICAgIH0sXG4gICAgcmVxdWVzdEluUHJvZ3Jlc3M6IHtcbiAgICAgIHNob3dQcm9ncmVzczogZmFsc2VcbiAgICB9XG4gIH0pXG4gIHByaXZhdGUgZG9HZW5lcmljQ2FsbChzY2g6IE1vbmtleUVjeFJlcXVlc3RTY2hlZHVsZSkge1xuICAgIGNvbnN0IHsgdXJsLCBtZXRob2QsIHBhcmFtcywgZGF0YSwgYWN0aW9uLCBlcnJvckFjdGlvbiB9ID0gc2NoO1xuXG4gICAgY29uc3QgZXJyQWN0aW9uID0gZXJyb3JBY3Rpb24gfHwgKCguLi5hcmdzKSA9PiB7fSk7XG5cbiAgICB0aGlzLm1vbmtleWVjeFNlcnZpY2VbbWV0aG9kLnRvTG93ZXJDYXNlKCldPGFueT4oYCR7dXJsfWAsIHBhcmFtcykuc3Vic2NyaWJlKFxuICAgICAgKHJlc3A6IGFueSkgPT4ge1xuICAgICAgICBhY3Rpb24oXG4gICAgICAgICAge1xuICAgICAgICAgICAgLi4uZGF0YSxcbiAgICAgICAgICAgIC4uLnJlc3BcbiAgICAgICAgICB9LFxuICAgICAgICAgIHNjaFxuICAgICAgICApO1xuICAgICAgfSxcbiAgICAgIChlcnI6IEh0dHBFcnJvclJlc3BvbnNlKSA9PiB7XG4gICAgICAgIHRoaXMucmVtb3ZlRnJvbUdlbmVyaWNTY2hlZHVsZShzY2gpO1xuICAgICAgICBlcnJBY3Rpb24oXG4gICAgICAgICAge1xuICAgICAgICAgICAgLi4uZGF0YVxuICAgICAgICAgIH0sXG4gICAgICAgICAgc2NoLFxuICAgICAgICAgIGVyclxuICAgICAgICApO1xuICAgICAgfVxuICAgICk7XG4gIH1cblxuICBwdWJsaWMgc2V0U2NoZWR1bGUocTogTW9ua2V5RWN4UmVxdWVzdFNjaGVkdWxlLCBkZWxheTogbnVtYmVyID0gMzAwMCkge1xuICAgIGNvbnN0IGlkID0gcT8uaWQgfHwgYCR7TW9ua2V5RWN4VXRpbHMuZ2V0UmFuZG9tU3RyaW5nKDQwKX1gO1xuICAgIGNvbnN0IG9iaiA9IHtcbiAgICAgIC4uLnEsXG4gICAgICBpZFxuICAgIH07XG5cbiAgICBjb25zdCBpbnRlcnZhbCA9IHNldEludGVydmFsKCgpID0+IHtcbiAgICAgIHRoaXMuZG9DYWxsKHtcbiAgICAgICAgLi4ub2JqLFxuICAgICAgICBpbnRlcnZhbFxuICAgICAgfSk7XG4gICAgfSwgZGVsYXkpO1xuXG4gICAgY29uc3Qgc2NoID0ge1xuICAgICAgLi4ub2JqLFxuICAgICAgaW50ZXJ2YWxcbiAgICB9O1xuXG4gICAgdGhpcy5hZGRUb1NjaGVkdWxlKHNjaCk7XG4gICAgcmV0dXJuIHNjaDtcbiAgfVxuXG4gIHB1YmxpYyBzZXRHZW5lcmljU2NoZWR1bGUocTogTW9ua2V5RWN4UmVxdWVzdFNjaGVkdWxlLCBkZWxheTogbnVtYmVyID0gMzAwMCkge1xuICAgIGNvbnN0IGludGVydmFsID0gc2V0SW50ZXJ2YWwoKCkgPT4ge1xuICAgICAgdGhpcy5kb0dlbmVyaWNDYWxsKHtcbiAgICAgICAgLi4ucSxcbiAgICAgICAgaW50ZXJ2YWxcbiAgICAgIH0pO1xuICAgIH0sIGRlbGF5KTtcblxuICAgIGNvbnN0IHNjaCA9IHtcbiAgICAgIC4uLnEsXG4gICAgICBpZDogYCR7TW9ua2V5RWN4VXRpbHMuZ2V0UmFuZG9tU3RyaW5nKDQwKX1gLFxuICAgICAgaW50ZXJ2YWxcbiAgICB9O1xuXG4gICAgdGhpcy5hZGRUb0dlbmVyaWNTY2hlZHVsZShzY2gpO1xuICAgIHJldHVybiBzY2g7XG4gIH1cblxuICBwdWJsaWMgcmVtb3ZlU2NoZWR1bGUocTogTW9ua2V5RWN4UmVxdWVzdFNjaGVkdWxlKSB7XG4gICAgdGhpcy5yZW1vdmVGcm9tU2NoZWR1bGUocSk7XG4gIH1cblxuICBwdWJsaWMgcmVtb3ZlR2VuZXJpY1NjaGVkdWxlKHE6IE1vbmtleUVjeFJlcXVlc3RTY2hlZHVsZSkge1xuICAgIHRoaXMucmVtb3ZlRnJvbUdlbmVyaWNTY2hlZHVsZShxKTtcbiAgfVxuXG4gIHB1YmxpYyByZW1vdmVTY2hlZHVsZUJ5SWQoaWQ6IHN0cmluZykge1xuICAgIHRoaXMucmVtb3ZlRnJvbVNjaGVkdWxlQnlJZChpZCk7XG4gIH1cblxuICBwdWJsaWMgZ2V0U2NoZWR1bGVCeUlkKGlkOiBzdHJpbmcpIHtcbiAgICBjb25zdCBxID0gdGhpcy5zY2hlZHVsZS5maW5kKChzY2g6IE1vbmtleUVjeFJlcXVlc3RTY2hlZHVsZSkgPT4ge1xuICAgICAgcmV0dXJuIHNjaC5pZCA9PT0gaWQ7XG4gICAgfSk7XG4gICAgcmV0dXJuIHE7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
export * from './monkeyecx-token-storage.service';
|
|
2
|
+
export * from './monkeyecx-cookie-storage.service';
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tb25rZXktZnJvbnQtY29yZS9zcmMvbGliL2NvcmUvc2VydmljZXMvc3RvcmFnZS9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLG1DQUFtQyxDQUFDO0FBQ2xELGNBQWMsb0NBQW9DLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL21vbmtleWVjeC10b2tlbi1zdG9yYWdlLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9tb25rZXllY3gtY29va2llLXN0b3JhZ2Uuc2VydmljZSc7XG4iXX0=
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "ngx-cookie-service";
|
|
4
|
+
export class MonkeyEcxCookieStorageService {
|
|
5
|
+
constructor(cookieService) {
|
|
6
|
+
this.cookieService = cookieService;
|
|
7
|
+
// not to do
|
|
8
|
+
}
|
|
9
|
+
setCookie(name, value, environment) {
|
|
10
|
+
this.removeCookie(name, environment);
|
|
11
|
+
const { urlDomain } = environment;
|
|
12
|
+
const handledDomain = urlDomain ? `.${urlDomain}` : '';
|
|
13
|
+
this.cookieService.set(name, value, undefined, '/', handledDomain, true, 'None');
|
|
14
|
+
}
|
|
15
|
+
getCookie(name) {
|
|
16
|
+
return this.cookieService.get(name);
|
|
17
|
+
}
|
|
18
|
+
removeCookie(name, environment) {
|
|
19
|
+
const { urlDomain } = environment;
|
|
20
|
+
const handledDomain = urlDomain ? `.${urlDomain}` : '';
|
|
21
|
+
this.cookieService.delete(name, '/', handledDomain, true, 'None');
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
MonkeyEcxCookieStorageService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: MonkeyEcxCookieStorageService, deps: [{ token: i1.CookieService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
25
|
+
MonkeyEcxCookieStorageService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: MonkeyEcxCookieStorageService, providedIn: 'root' });
|
|
26
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: MonkeyEcxCookieStorageService, decorators: [{
|
|
27
|
+
type: Injectable,
|
|
28
|
+
args: [{
|
|
29
|
+
providedIn: 'root'
|
|
30
|
+
}]
|
|
31
|
+
}], ctorParameters: function () { return [{ type: i1.CookieService }]; } });
|
|
32
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9ua2V5ZWN4LWNvb2tpZS1zdG9yYWdlLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tb25rZXktZnJvbnQtY29yZS9zcmMvbGliL2NvcmUvc2VydmljZXMvc3RvcmFnZS9tb25rZXllY3gtY29va2llLXN0b3JhZ2Uuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7QUFNM0MsTUFBTSxPQUFPLDZCQUE2QjtJQUN4QyxZQUFvQixhQUE0QjtRQUE1QixrQkFBYSxHQUFiLGFBQWEsQ0FBZTtRQUM5QyxZQUFZO0lBQ2QsQ0FBQztJQUVNLFNBQVMsQ0FBQyxJQUFZLEVBQUUsS0FBVSxFQUFFLFdBQWdCO1FBQ3pELElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxFQUFFLFdBQVcsQ0FBQyxDQUFDO1FBQ3JDLE1BQU0sRUFBRSxTQUFTLEVBQUUsR0FBRyxXQUFXLENBQUM7UUFDbEMsTUFBTSxhQUFhLEdBQUcsU0FBUyxDQUFDLENBQUMsQ0FBQyxJQUFJLFNBQVMsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7UUFDdkQsSUFBSSxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsSUFBSSxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsR0FBRyxFQUFFLGFBQWEsRUFBRSxJQUFJLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDbkYsQ0FBQztJQUVNLFNBQVMsQ0FBQyxJQUFZO1FBQzNCLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDdEMsQ0FBQztJQUVNLFlBQVksQ0FBQyxJQUFZLEVBQUUsV0FBZ0I7UUFDaEQsTUFBTSxFQUFFLFNBQVMsRUFBRSxHQUFHLFdBQVcsQ0FBQztRQUNsQyxNQUFNLGFBQWEsR0FBRyxTQUFTLENBQUMsQ0FBQyxDQUFDLElBQUksU0FBUyxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztRQUN2RCxJQUFJLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsR0FBRyxFQUFFLGFBQWEsRUFBRSxJQUFJLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDcEUsQ0FBQzs7MEhBcEJVLDZCQUE2Qjs4SEFBN0IsNkJBQTZCLGNBRjVCLE1BQU07MkZBRVAsNkJBQTZCO2tCQUh6QyxVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvb2tpZVNlcnZpY2UgfSBmcm9tICduZ3gtY29va2llLXNlcnZpY2UnO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBNb25rZXlFY3hDb29raWVTdG9yYWdlU2VydmljZSB7XG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgY29va2llU2VydmljZTogQ29va2llU2VydmljZSkge1xuICAgIC8vIG5vdCB0byBkb1xuICB9XG5cbiAgcHVibGljIHNldENvb2tpZShuYW1lOiBzdHJpbmcsIHZhbHVlOiBhbnksIGVudmlyb25tZW50OiBhbnkpIHtcbiAgICB0aGlzLnJlbW92ZUNvb2tpZShuYW1lLCBlbnZpcm9ubWVudCk7XG4gICAgY29uc3QgeyB1cmxEb21haW4gfSA9IGVudmlyb25tZW50O1xuICAgIGNvbnN0IGhhbmRsZWREb21haW4gPSB1cmxEb21haW4gPyBgLiR7dXJsRG9tYWlufWAgOiAnJztcbiAgICB0aGlzLmNvb2tpZVNlcnZpY2Uuc2V0KG5hbWUsIHZhbHVlLCB1bmRlZmluZWQsICcvJywgaGFuZGxlZERvbWFpbiwgdHJ1ZSwgJ05vbmUnKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRDb29raWUobmFtZTogc3RyaW5nKSB7XG4gICAgcmV0dXJuIHRoaXMuY29va2llU2VydmljZS5nZXQobmFtZSk7XG4gIH1cblxuICBwdWJsaWMgcmVtb3ZlQ29va2llKG5hbWU6IHN0cmluZywgZW52aXJvbm1lbnQ6IGFueSkge1xuICAgIGNvbnN0IHsgdXJsRG9tYWluIH0gPSBlbnZpcm9ubWVudDtcbiAgICBjb25zdCBoYW5kbGVkRG9tYWluID0gdXJsRG9tYWluID8gYC4ke3VybERvbWFpbn1gIDogJyc7XG4gICAgdGhpcy5jb29raWVTZXJ2aWNlLmRlbGV0ZShuYW1lLCAnLycsIGhhbmRsZWREb21haW4sIHRydWUsICdOb25lJyk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,127 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import { of, BehaviorSubject } from 'rxjs';
|
|
3
|
+
import { MonkeyEcxUtils } from '../../utils/utils';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
import * as i1 from "../config/monkeyecx-config.service";
|
|
6
|
+
export class MonkeyEcxTokenStorageService {
|
|
7
|
+
constructor(monkeyecxConfigService) {
|
|
8
|
+
this.monkeyecxConfigService = monkeyecxConfigService;
|
|
9
|
+
this.config = null;
|
|
10
|
+
this.token = {
|
|
11
|
+
username: '',
|
|
12
|
+
program: '',
|
|
13
|
+
accessToken: '',
|
|
14
|
+
refreshToken: '',
|
|
15
|
+
companyId: '',
|
|
16
|
+
governmentId: '',
|
|
17
|
+
companyTypeUrl: '',
|
|
18
|
+
companyType: '',
|
|
19
|
+
programAdmin: false,
|
|
20
|
+
programType: '',
|
|
21
|
+
accessType: '',
|
|
22
|
+
role: '',
|
|
23
|
+
ownerGovernmentId: '',
|
|
24
|
+
_clearIgnore: {
|
|
25
|
+
ignore: ['username', 'program', 'accessType'],
|
|
26
|
+
},
|
|
27
|
+
};
|
|
28
|
+
this.token$ = new BehaviorSubject(null);
|
|
29
|
+
this.me$ = new BehaviorSubject(null);
|
|
30
|
+
this.monkeyecxConfigService.config().subscribe((_) => {
|
|
31
|
+
this.config = _;
|
|
32
|
+
});
|
|
33
|
+
}
|
|
34
|
+
setAllTokens(token) {
|
|
35
|
+
const { token$ } = this;
|
|
36
|
+
Object.entries(token).forEach(([key, value]) => {
|
|
37
|
+
if (MonkeyEcxUtils.persistNullEmptyUndefined(value)) {
|
|
38
|
+
localStorage.setItem(key, value);
|
|
39
|
+
}
|
|
40
|
+
});
|
|
41
|
+
token$.next(token);
|
|
42
|
+
}
|
|
43
|
+
getAllTokens() {
|
|
44
|
+
const { token, config } = this;
|
|
45
|
+
const handledToken = {
|
|
46
|
+
...token,
|
|
47
|
+
};
|
|
48
|
+
Object.entries(token || {}).forEach(([key, value]) => {
|
|
49
|
+
handledToken[key] = localStorage.getItem(key);
|
|
50
|
+
});
|
|
51
|
+
if (!handledToken?.program && config?.program) {
|
|
52
|
+
handledToken.program = config?.program?.token;
|
|
53
|
+
}
|
|
54
|
+
return handledToken;
|
|
55
|
+
}
|
|
56
|
+
setAllMe(me) {
|
|
57
|
+
const { me$ } = this;
|
|
58
|
+
let previousMe = JSON.parse(localStorage?.getItem('me') || '{}');
|
|
59
|
+
Object.entries(me).forEach(([key, value]) => {
|
|
60
|
+
if (MonkeyEcxUtils.persistNullEmptyUndefined(value)) {
|
|
61
|
+
previousMe = {
|
|
62
|
+
...previousMe,
|
|
63
|
+
[key]: value,
|
|
64
|
+
};
|
|
65
|
+
}
|
|
66
|
+
});
|
|
67
|
+
localStorage.setItem('me', JSON.stringify(previousMe));
|
|
68
|
+
me$.next(previousMe);
|
|
69
|
+
}
|
|
70
|
+
getAllMe() {
|
|
71
|
+
const me = localStorage.getItem('me');
|
|
72
|
+
return JSON.parse(me || '{}');
|
|
73
|
+
}
|
|
74
|
+
tokenHasChanged() {
|
|
75
|
+
return this.token$.asObservable();
|
|
76
|
+
}
|
|
77
|
+
meHasChanged() {
|
|
78
|
+
return this.me$.asObservable() || null;
|
|
79
|
+
}
|
|
80
|
+
getToken() {
|
|
81
|
+
return this.getAllTokens();
|
|
82
|
+
}
|
|
83
|
+
getMe() {
|
|
84
|
+
return this.getAllMe();
|
|
85
|
+
}
|
|
86
|
+
setToken(token) {
|
|
87
|
+
this.setAllTokens(token);
|
|
88
|
+
}
|
|
89
|
+
setMe(me) {
|
|
90
|
+
this.setAllMe(me);
|
|
91
|
+
}
|
|
92
|
+
clear(force) {
|
|
93
|
+
const { token } = this;
|
|
94
|
+
try {
|
|
95
|
+
Object.entries(token || {}).forEach(([key, value]) => {
|
|
96
|
+
if ((token?._clearIgnore?.ignore || []).filter((val) => {
|
|
97
|
+
return val === key;
|
|
98
|
+
}).length <= 0 ||
|
|
99
|
+
force === true) {
|
|
100
|
+
localStorage.removeItem(key);
|
|
101
|
+
}
|
|
102
|
+
});
|
|
103
|
+
localStorage.removeItem('me');
|
|
104
|
+
}
|
|
105
|
+
catch (error) {
|
|
106
|
+
return of(false);
|
|
107
|
+
}
|
|
108
|
+
return of(true);
|
|
109
|
+
}
|
|
110
|
+
/**
|
|
111
|
+
* @param fields (the name of fields you want to clear. ie: ['companyId', 'role', ...])
|
|
112
|
+
*/
|
|
113
|
+
clearCredentials(fields = ['companyId', 'governmentId', 'companyType', 'programAdmin', 'role']) {
|
|
114
|
+
fields?.forEach((key) => {
|
|
115
|
+
localStorage.removeItem(key);
|
|
116
|
+
});
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
MonkeyEcxTokenStorageService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: MonkeyEcxTokenStorageService, deps: [{ token: i1.MonkeyEcxConfigService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
120
|
+
MonkeyEcxTokenStorageService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: MonkeyEcxTokenStorageService, providedIn: 'root' });
|
|
121
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: MonkeyEcxTokenStorageService, decorators: [{
|
|
122
|
+
type: Injectable,
|
|
123
|
+
args: [{
|
|
124
|
+
providedIn: 'root',
|
|
125
|
+
}]
|
|
126
|
+
}], ctorParameters: function () { return [{ type: i1.MonkeyEcxConfigService }]; } });
|
|
127
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9ua2V5ZWN4LXRva2VuLXN0b3JhZ2Uuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21vbmtleS1mcm9udC1jb3JlL3NyYy9saWIvY29yZS9zZXJ2aWNlcy9zdG9yYWdlL21vbmtleWVjeC10b2tlbi1zdG9yYWdlLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQWMsRUFBRSxFQUFFLGVBQWUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUV2RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7OztBQVVuRCxNQUFNLE9BQU8sNEJBQTRCO0lBU3ZDLFlBQW9CLHNCQUE4QztRQUE5QywyQkFBc0IsR0FBdEIsc0JBQXNCLENBQXdCO1FBRjFELFdBQU0sR0FBMkIsSUFBSSxDQUFDO1FBRzVDLElBQUksQ0FBQyxLQUFLLEdBQUc7WUFDWCxRQUFRLEVBQUUsRUFBRTtZQUNaLE9BQU8sRUFBRSxFQUFFO1lBQ1gsV0FBVyxFQUFFLEVBQUU7WUFDZixZQUFZLEVBQUUsRUFBRTtZQUNoQixTQUFTLEVBQUUsRUFBRTtZQUNiLFlBQVksRUFBRSxFQUFFO1lBQ2hCLGNBQWMsRUFBRSxFQUFFO1lBQ2xCLFdBQVcsRUFBRSxFQUFFO1lBQ2YsWUFBWSxFQUFFLEtBQUs7WUFDbkIsV0FBVyxFQUFFLEVBQUU7WUFDZixVQUFVLEVBQUUsRUFBRTtZQUNkLElBQUksRUFBRSxFQUFFO1lBQ1IsaUJBQWlCLEVBQUUsRUFBRTtZQUNyQixZQUFZLEVBQUU7Z0JBQ1osTUFBTSxFQUFFLENBQUMsVUFBVSxFQUFFLFNBQVMsRUFBRSxZQUFZLENBQUM7YUFDOUM7U0FDRixDQUFDO1FBQ0YsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLGVBQWUsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN4QyxJQUFJ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QUFFLE9BQU8sQ0FBQyxDQUFDLEdBQVcsRUFBRSxFQUFFO1lBQzlCLFlBQVksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDL0IsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDOzt5SEF4SVUsNEJBQTRCOzZIQUE1Qiw0QkFBNEIsY0FGM0IsTUFBTTsyRkFFUCw0QkFBNEI7a0JBSHhDLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBvZiwgQmVoYXZpb3JTdWJqZWN0IH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IE1vbmtleUVjeENvbmZpZ1NlcnZpY2UgfSBmcm9tICcuLi9jb25maWcvbW9ua2V5ZWN4LWNvbmZpZy5zZXJ2aWNlJztcclxuaW1wb3J0IHsgTW9ua2V5RWN4VXRpbHMgfSBmcm9tICcuLi8uLi91dGlscy91dGlscyc7XHJcbmltcG9ydCB7XHJcbiAgTW9ua2V5RWN4Q29uZmlnLFxyXG4gIE1vbmtleUVjeE1lQ3JlZGVudGlhbHMsXHJcbiAgTW9ua2V5RWN4VG9rZW5DcmVkZW50aWFscyxcclxufSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzJztcclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiAncm9vdCcsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBNb25rZXlFY3hUb2tlblN0b3JhZ2VTZXJ2aWNlIHtcclxuICBwcml2YXRlIHRva2VuOiBNb25rZXlFY3hUb2tlbkNyZWRlbnRpYWxzIHwgbnVsbDtcclxuXHJcbiAgcHJpdmF0ZSB0b2tlbiQ6IEJlaGF2aW9yU3ViamVjdDxNb25rZXlFY3hUb2tlbkNyZWRlbnRpYWxzIHwgYW55PjtcclxuXHJcbiAgcHJpdmF0ZSBtZSQ6IEJlaGF2aW9yU3ViamVjdDxNb25rZXlFY3hNZUNyZWRlbnRpYWxzIHwgYW55PjtcclxuXHJcbiAgcHJpdmF0ZSBjb25maWc6IE1vbmtleUVjeENvbmZpZyB8IG51bGwgPSBudWxsO1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIG1vbmtleWVjeENvbmZpZ1NlcnZpY2U6IE1vbmtleUVjeENvbmZpZ1NlcnZpY2UpIHtcclxuICAgIHRoaXMudG9rZW4gPSB7XHJcbiAgICAgIHVzZXJuYW1lOiAnJyxcclxuICAgICAgcHJvZ3JhbTogJycsXHJcbiAgICAgIGFjY2Vzc1Rva2VuOiAnJyxcclxuICAgICAgcmVmcmVzaFRva2VuOiAnJyxcclxuICAgICAgY29tcGFueUlkOiAnJyxcclxuICAgICAgZ292ZXJubWVudElkOiAnJyxcclxuICAgICAgY29tcGFueVR5cGVVcmw6ICcnLFxyXG4gICAgICBjb21wYW55VHlwZTogJycsXHJcbiAgICAgIHByb2dyYW1BZG1pbjogZmFsc2UsXHJcbiAgICAgIHByb2dyYW1UeXBlOiAnJyxcclxuICAgICAgYWNjZXNzVHlwZTogJycsXHJcbiAgICAgIHJvbGU6ICcnLFxyXG4gICAgICBvd25lckdvdmVybm1lbnRJZDogJycsXHJcbiAgICAgIF9jbGVhcklnbm9yZToge1xyXG4gICAgICAgIGlnbm9yZTogWyd1c2VybmFtZScsICdwcm9ncmFtJywgJ2FjY2Vzc1R5cGUnXSxcclxuICAgICAgfSxcclxuICAgIH07XHJcbiAgICB0aGlzLnRva2VuJCA9IG5ldyBCZWhhdmlvclN1YmplY3QobnVsbCk7XHJcbiAgICB0aGlzLm1lJCA9IG5ldyBCZWhhdmlvclN1YmplY3QobnVsbCk7XHJcblxyXG4gICAgdGhpcy5tb25rZXllY3hDb25maWdTZXJ2aWNlLmNvbmZpZygpLnN1YnNjcmliZSgoXzogTW9ua2V5RWN4Q29uZmlnKSA9PiB7XHJcbiAgICAgIHRoaXMuY29uZmlnID0gXztcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBzZXRBbGxUb2tlbnModG9rZW46IE1vbmtleUVjeFRva2VuQ3JlZGVudGlhbHMpIHtcclxuICAgIGNvbnN0IHsgdG9rZW4kIH0gPSB0aGlzO1xyXG4gICAgT2JqZWN0LmVudHJpZXModG9rZW4pLmZvckVhY2goKFtrZXksIHZhbHVlXSkgPT4ge1xyXG4gICAgICBpZiAoTW9ua2V5RWN4VXRpbHMucGVyc2lzdE51bGxFbXB0eVVuZGVmaW5lZCh2YWx1ZSkpIHtcclxuICAgICAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbShrZXksIHZhbHVlKTtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgICB0b2tlbiQubmV4dCh0b2tlbik7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGdldEFsbFRva2VucygpOiBNb25rZXlFY3hUb2tlbkNyZWRlbnRpYWxzIHtcclxuICAgIGNvbnN0IHsgdG9rZW4sIGNvbmZpZyB9ID0gdGhpcztcclxuICAgIGNvbnN0IGhhbmRsZWRUb2tlbjogYW55ID0ge1xyXG4gICAgICAuLi50b2tlbixcclxuICAgIH07XHJcbiAgICBPYmplY3QuZW50cmllcyh0b2tlbiB8fCB7fSkuZm9yRWFjaCgoW2tleSwgdmFsdWVdKSA9PiB7XHJcbiAgICAgIGhhbmRsZWRUb2tlbltrZXldID0gbG9jYWxTdG9yYWdlLmdldEl0ZW0oa2V5KTtcclxuICAgIH0pO1xyXG5cclxuICAgIGlmICghaGFuZGxlZFRva2VuPy5wcm9ncmFtICYmIGNvbmZpZz8ucHJvZ3JhbSkge1xyXG4gICAgICBoYW5kbGVkVG9rZW4ucHJvZ3JhbSA9IGNvbmZpZz8ucHJvZ3JhbT8udG9rZW47XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIGhhbmRsZWRUb2tlbjtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgc2V0QWxsTWUobWU6IE1vbmtleUVjeE1lQ3JlZGVudGlhbHMpIHtcclxuICAgIGNvbnN0IHsgbWUkIH0gPSB0aGlzO1xyXG4gICAgbGV0IHByZXZpb3VzTWUgPSBKU09OLnBhcnNlKGxvY2FsU3RvcmFnZT8uZ2V0SXRlbSgnbWUnKSB8fCAne30nKTtcclxuICAgIE9iamVjdC5lbnRyaWVzKG1lKS5mb3JFYWNoKChba2V5LCB2YWx1ZV0pID0+IHtcclxuICAgICAgaWYgKE1vbmtleUVjeFV0aWxzLnBlcnNpc3ROdWxsRW1wdHlVbmRlZmluZWQodmFsdWUpKSB7XHJcbiAgICAgICAgcHJldmlvdXNNZSA9IHtcclxuICAgICAgICAgIC4uLnByZXZpb3VzTWUsXHJcbiAgICAgICAgICBba2V5XTogdmFsdWUsXHJcbiAgICAgICAgfTtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcblxyXG4gICAgbG9jYWxTdG9yYWdlLnNldEl0ZW0oJ21lJywgSlNPTi5zdHJpbmdpZnkocHJldmlvdXNNZSkpO1xyXG4gICAgbWUkLm5leHQocHJldmlvdXNNZSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGdldEFsbE1lKCk6IE1vbmtleUVjeE1lQ3JlZGVudGlhbHMge1xyXG4gICAgY29uc3QgbWUgPSBsb2NhbFN0b3JhZ2UuZ2V0SXRlbSgnbWUnKTtcclxuICAgIHJldHVybiBKU09OLnBhcnNlKG1lIHx8ICd7fScpIGFzIE1vbmtleUVjeE1lQ3JlZGVudGlhbHM7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgdG9rZW5IYXNDaGFuZ2VkKCk6IE9ic2VydmFibGU8TW9ua2V5RWN4VG9rZW5DcmVkZW50aWFscz4ge1xyXG4gICAgcmV0dXJuIHRoaXMudG9rZW4kLmFzT2JzZXJ2YWJsZSgpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIG1lSGFzQ2hhbmdlZCgpOiBPYnNlcnZhYmxlPE1vbmtleUVjeE1lQ3JlZGVudGlhbHM+IHtcclxuICAgIHJldHVybiB0aGlzLm1lJC5hc09ic2VydmFibGUoKSB8fCBudWxsO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldFRva2VuKCk6IE1vbmtleUVjeFRva2VuQ3JlZGVudGlhbHMge1xyXG4gICAgcmV0dXJuIHRoaXMuZ2V0QWxsVG9rZW5zKCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0TWUoKTogTW9ua2V5RWN4TWVDcmVkZW50aWFscyB7XHJcbiAgICByZXR1cm4gdGhpcy5nZXRBbGxNZSgpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHNldFRva2VuKHRva2VuOiBNb25rZXlFY3hUb2tlbkNyZWRlbnRpYWxzKSB7XHJcbiAgICB0aGlzLnNldEFsbFRva2Vucyh0b2tlbik7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgc2V0TWUobWU6IE1vbmtleUVjeE1lQ3JlZGVudGlhbHMpIHtcclxuICAgIHRoaXMuc2V0QWxsTWUobWUpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGNsZWFyKGZvcmNlPzogYm9vbGVhbik6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xyXG4gICAgY29uc3QgeyB0b2tlbiB9ID0gdGhpcztcclxuICAgIHRyeSB7XHJcbiAgICAgIE9iamVjdC5lbnRyaWVzKHRva2VuIHx8IHt9KS5mb3JFYWNoKChba2V5LCB2YWx1ZV0pID0+IHtcclxuICAgICAgICBpZiAoXHJcbiAgICAgICAgICAodG9rZW4/Ll9jbGVhcklnbm9yZT8uaWdub3JlIHx8IFtdKS5maWx0ZXIoKHZhbDogYW55KSA9PiB7XHJcbiAgICAgICAgICAgIHJldHVybiB2YWwgPT09IGtleTtcclxuICAgICAgICAgIH0pLmxlbmd0aCA8PSAwIHx8XHJcbiAgICAgICAgICBmb3JjZSA9PT0gdHJ1ZVxyXG4gICAgICAgICkge1xyXG4gICAgICAgICAgbG9jYWxTdG9yYWdlLnJlbW92ZUl0ZW0oa2V5KTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gICAgICBsb2NhbFN0b3JhZ2UucmVtb3ZlSXRlbSgnbWUnKTtcclxuICAgIH0gY2F0Y2ggKGVycm9yKSB7XHJcbiAgICAgIHJldHVybiBvZihmYWxzZSk7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gb2YodHJ1ZSk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBAcGFyYW0gZmllbGRzICh0aGUgbmFtZSBvZiBmaWVsZHMgeW91IHdhbnQgdG8gY2xlYXIuIGllOiBbJ2NvbXBhbnlJZCcsICdyb2xlJywgLi4uXSlcclxuICAgKi9cclxuICBwdWJsaWMgY2xlYXJDcmVkZW50aWFscyhcclxuICAgIGZpZWxkcyA9IFsnY29tcGFueUlkJywgJ2dvdmVybm1lbnRJZCcsICdjb21wYW55VHlwZScsICdwcm9ncmFtQWRtaW4nLCAncm9sZSddXHJcbiAgKSB7XHJcbiAgICBmaWVsZHM/LmZvckVhY2goKGtleTogc3RyaW5nKSA9PiB7XHJcbiAgICAgIGxvY2FsU3RvcmFnZS5yZW1vdmVJdGVtKGtleSk7XHJcbiAgICB9KTtcclxuICB9XHJcbn1cclxuIl19
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export * from './monkeyecx-specification-search';
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tb25rZXktZnJvbnQtY29yZS9zcmMvbGliL2NvcmUvc3BlY2lmaWNhdGlvbi1zZWFyY2gvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxrQ0FBa0MsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vbW9ua2V5ZWN4LXNwZWNpZmljYXRpb24tc2VhcmNoJztcbiJdfQ==
|