@sunbird-cb/utils 1.0.19-ang-9-12 → 1.0.19
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/bundles/sunbird-cb-utils.umd.js +2971 -2006
- package/bundles/sunbird-cb-utils.umd.js.map +1 -1
- package/bundles/sunbird-cb-utils.umd.min.js +16 -0
- package/bundles/sunbird-cb-utils.umd.min.js.map +1 -0
- package/esm2015/lib/components/image-crop/image-crop.component.js +48 -13
- package/esm2015/lib/components/image-crop/image-crop.module.js +2 -8
- package/esm2015/lib/constants/features.enum.js +555 -555
- package/esm2015/lib/constants/instances.enum.js +5 -5
- package/esm2015/lib/constants/misc.constants.js +1 -2
- package/esm2015/lib/directives/class-change-on-scroll/class-change-on-scroll.directive.js +21 -11
- package/esm2015/lib/directives/class-change-on-scroll/class-change-on-scroll.module.js +1 -1
- package/esm2015/lib/directives/default-thumbnail/default-thumbnail.directive.js +7 -1
- package/esm2015/lib/directives/default-thumbnail/default-thumbnail.module.js +1 -1
- package/esm2015/lib/directives/image-responsive/image-responsive.directive.js +11 -3
- package/esm2015/lib/directives/image-responsive/image-responsive.module.js +1 -1
- package/esm2015/lib/directives/in-view-port/in-view-port.directive.js +11 -5
- package/esm2015/lib/directives/in-view-port/in-view-port.module.js +1 -1
- package/esm2015/lib/directives/navigation/navigation.directive.js +6 -1
- package/esm2015/lib/directives/navigation/navigation.module.js +1 -1
- package/esm2015/lib/directives/permission/permission.directive.js +1 -1
- package/esm2015/lib/directives/permission/permission.module.js +1 -1
- package/esm2015/lib/helpers/functions/getStringifiedQueryParams.js +4 -4
- package/esm2015/lib/helpers/horizontal-scroller/horizontal-scroller.component.js +20 -11
- package/esm2015/lib/helpers/horizontal-scroller/horizontal-scroller.module.js +2 -4
- package/esm2015/lib/helpers/logout/logout.component.js +13 -4
- package/esm2015/lib/helpers/logout/logout.module.js +2 -3
- package/esm2015/lib/models/contentRating.model.js +12 -2
- package/esm2015/lib/pipes/pipe-concise-date-range/pipe-concise-date-range.module.js +1 -1
- package/esm2015/lib/pipes/pipe-concise-date-range/pipe-concise-date-range.pipe.js +7 -1
- package/esm2015/lib/pipes/pipe-count-transform/pipe-count-transform.module.js +1 -1
- package/esm2015/lib/pipes/pipe-count-transform/pipe-count-transform.pipe.js +1 -1
- package/esm2015/lib/pipes/pipe-date-concat/pipe-date-concat.module.js +1 -1
- package/esm2015/lib/pipes/pipe-date-concat/pipe-date-concat.pipe.js +11 -1
- package/esm2015/lib/pipes/pipe-duration-transform/pipe-duration-transform.module.js +1 -1
- package/esm2015/lib/pipes/pipe-duration-transform/pipe-duration-transform.pipe.js +1 -1
- package/esm2015/lib/pipes/pipe-filter/pipe-filter.module.js +1 -1
- package/esm2015/lib/pipes/pipe-filter/pipe-filter.pipe.js +3 -3
- package/esm2015/lib/pipes/pipe-filter-search/pipe-filter-search.module.js +1 -1
- package/esm2015/lib/pipes/pipe-filter-search/pipe-filter-search.pipe.js +5 -5
- package/esm2015/lib/pipes/pipe-html-tag-removal/pipe-html-tag-removal.module.js +1 -1
- package/esm2015/lib/pipes/pipe-html-tag-removal/pipe-html-tag-removal.pipe.js +1 -1
- package/esm2015/lib/pipes/pipe-limit-to/pipe-limit-to.module.js +1 -1
- package/esm2015/lib/pipes/pipe-limit-to/pipe-limit-to.pipe.js +1 -1
- package/esm2015/lib/pipes/pipe-list-filter/pipe-list-filter.module.js +1 -1
- package/esm2015/lib/pipes/pipe-list-filter/pipe-list-filter.pipe.js +4 -4
- package/esm2015/lib/pipes/pipe-name-transform/pipe-name-transform.module.js +1 -1
- package/esm2015/lib/pipes/pipe-name-transform/pipe-name-transform.pipe.js +7 -1
- package/esm2015/lib/pipes/pipe-order-by/pipe-order-by.module.js +1 -1
- package/esm2015/lib/pipes/pipe-order-by/pipe-order-by.pipe.js +4 -1
- package/esm2015/lib/pipes/pipe-partial-content/pipe-partial-content.module.js +1 -1
- package/esm2015/lib/pipes/pipe-partial-content/pipe-partial-content.pipe.js +1 -1
- package/esm2015/lib/pipes/pipe-relative-time/pipe-relative-time.module.js +1 -1
- package/esm2015/lib/pipes/pipe-relative-time/pipe-relative-time.pipe.js +1 -1
- package/esm2015/lib/pipes/pipe-safe-sanitizer/pipe-safe-sanitizer.module.js +1 -1
- package/esm2015/lib/pipes/pipe-safe-sanitizer/pipe-safe-sanitizer.pipe.js +4 -1
- package/esm2015/lib/resolvers/explore-detail.resolver.js +19 -12
- package/esm2015/lib/resolvers/marketing-offering.resolve.js +10 -7
- package/esm2015/lib/resolvers/page.constant.js +1 -1
- package/esm2015/lib/resolvers/page.model.js +47 -2
- package/esm2015/lib/resolvers/page.resolver.js +18 -12
- package/esm2015/lib/resolvers/resolver.model.js +6 -2
- package/esm2015/lib/services/auth-keycloak.service.js +33 -20
- package/esm2015/lib/services/auth-microsoft.service.js +17 -9
- package/esm2015/lib/services/card-content.model.js +22 -1
- package/esm2015/lib/services/configurations.model.js +508 -2
- package/esm2015/lib/services/configurations.service.js +50 -2
- package/esm2015/lib/services/content-strip-multiple.model.js +75 -2
- package/esm2015/lib/services/event.model.js +109 -1
- package/esm2015/lib/services/event.service.js +17 -4
- package/esm2015/lib/services/logger.service.js +13 -5
- package/esm2015/lib/services/ms-office.model.js +8 -2
- package/esm2015/lib/services/subapplication-respond.service.js +21 -8
- package/esm2015/lib/services/telemetry.service.js +59 -48
- package/esm2015/lib/services/user-preference.model.js +38 -2
- package/esm2015/lib/services/user-preference.service.js +15 -11
- package/esm2015/lib/services/utility.service.js +26 -9
- package/esm2015/lib/services/value.service.js +9 -4
- package/esm2015/lib/services/widget-content.model.js +236 -1
- package/esm2015/lib/services/widget-content.service.js +19 -15
- package/esm2015/lib/services/widget-resolver.model.js +57 -2
- package/esm2015/lib/services/widget-search.model.js +126 -2
- package/esm2015/public-api.js +68 -74
- package/esm2015/sunbird-cb-utils.js +8 -2
- package/esm5/lib/components/image-crop/image-crop.component.js +200 -0
- package/esm5/lib/components/image-crop/image-crop.module.js +31 -0
- package/esm5/lib/constants/features.enum.js +555 -0
- package/esm5/lib/constants/instances.enum.js +5 -0
- package/esm5/lib/constants/misc.constants.js +1 -0
- package/esm5/lib/directives/class-change-on-scroll/class-change-on-scroll.directive.js +105 -0
- package/esm5/lib/directives/class-change-on-scroll/class-change-on-scroll.module.js +19 -0
- package/esm5/lib/directives/default-thumbnail/default-thumbnail.directive.js +40 -0
- package/esm5/lib/directives/default-thumbnail/default-thumbnail.module.js +19 -0
- package/esm5/lib/directives/image-responsive/image-responsive.directive.js +95 -0
- package/esm5/lib/directives/image-responsive/image-responsive.module.js +19 -0
- package/esm5/lib/directives/in-view-port/in-view-port.directive.js +73 -0
- package/esm5/lib/directives/in-view-port/in-view-port.module.js +19 -0
- package/esm5/lib/directives/navigation/navigation.directive.js +41 -0
- package/esm5/lib/directives/navigation/navigation.module.js +19 -0
- package/esm5/lib/directives/permission/permission.directive.js +14 -0
- package/esm5/lib/directives/permission/permission.module.js +19 -0
- package/esm5/lib/helpers/functions/getStringifiedQueryParams.js +9 -0
- package/esm5/lib/helpers/horizontal-scroller/horizontal-scroller.component.js +103 -0
- package/esm5/lib/helpers/horizontal-scroller/horizontal-scroller.module.js +23 -0
- package/esm5/lib/helpers/logout/logout.component.js +63 -0
- package/esm5/lib/helpers/logout/logout.module.js +22 -0
- package/esm5/lib/models/contentRating.model.js +12 -0
- package/esm5/lib/pipes/pipe-concise-date-range/pipe-concise-date-range.module.js +17 -0
- package/esm5/lib/pipes/pipe-concise-date-range/pipe-concise-date-range.pipe.js +63 -0
- package/esm5/lib/pipes/pipe-count-transform/pipe-count-transform.module.js +19 -0
- package/esm5/lib/pipes/pipe-count-transform/pipe-count-transform.pipe.js +37 -0
- package/esm5/lib/pipes/pipe-date-concat/pipe-date-concat.module.js +19 -0
- package/esm5/lib/pipes/pipe-date-concat/pipe-date-concat.pipe.js +45 -0
- package/esm5/lib/pipes/pipe-duration-transform/pipe-duration-transform.module.js +19 -0
- package/esm5/lib/pipes/pipe-duration-transform/pipe-duration-transform.pipe.js +64 -0
- package/esm5/lib/pipes/pipe-filter/pipe-filter.module.js +19 -0
- package/esm5/lib/pipes/pipe-filter/pipe-filter.pipe.js +20 -0
- package/esm5/lib/pipes/pipe-filter-search/pipe-filter-search.module.js +19 -0
- package/esm5/lib/pipes/pipe-filter-search/pipe-filter-search.pipe.js +38 -0
- package/esm5/lib/pipes/pipe-html-tag-removal/pipe-html-tag-removal.module.js +19 -0
- package/esm5/lib/pipes/pipe-html-tag-removal/pipe-html-tag-removal.pipe.js +16 -0
- package/esm5/lib/pipes/pipe-limit-to/pipe-limit-to.module.js +19 -0
- package/esm5/lib/pipes/pipe-limit-to/pipe-limit-to.pipe.js +30 -0
- package/esm5/lib/pipes/pipe-list-filter/pipe-list-filter.module.js +19 -0
- package/esm5/lib/pipes/pipe-list-filter/pipe-list-filter.pipe.js +21 -0
- package/esm5/lib/pipes/pipe-name-transform/pipe-name-transform.module.js +19 -0
- package/esm5/lib/pipes/pipe-name-transform/pipe-name-transform.pipe.js +35 -0
- package/esm5/lib/pipes/pipe-order-by/pipe-order-by.module.js +19 -0
- package/esm5/lib/pipes/pipe-order-by/pipe-order-by.pipe.js +18 -0
- package/esm5/lib/pipes/pipe-partial-content/pipe-partial-content.module.js +19 -0
- package/esm5/lib/pipes/pipe-partial-content/pipe-partial-content.pipe.js +34 -0
- package/esm5/lib/pipes/pipe-relative-time/pipe-relative-time.module.js +19 -0
- package/esm5/lib/pipes/pipe-relative-time/pipe-relative-time.pipe.js +21 -0
- package/esm5/lib/pipes/pipe-safe-sanitizer/pipe-safe-sanitizer.module.js +19 -0
- package/esm5/lib/pipes/pipe-safe-sanitizer/pipe-safe-sanitizer.pipe.js +38 -0
- package/esm5/lib/resolvers/explore-detail.resolver.js +93 -0
- package/esm5/lib/resolvers/marketing-offering.resolve.js +43 -0
- package/esm5/lib/resolvers/page.constant.js +4 -0
- package/esm5/lib/resolvers/page.model.js +47 -0
- package/esm5/lib/resolvers/page.resolver.js +98 -0
- package/esm5/lib/resolvers/resolver.model.js +6 -0
- package/esm5/lib/services/auth-keycloak.service.js +316 -0
- package/esm5/lib/services/auth-microsoft.service.js +251 -0
- package/esm5/lib/services/card-content.model.js +32 -0
- package/esm5/lib/services/configurations.model.js +508 -0
- package/esm5/lib/services/configurations.service.js +114 -0
- package/esm5/lib/services/content-strip-multiple.model.js +75 -0
- package/esm5/lib/services/event.model.js +229 -0
- package/esm5/lib/services/event.service.js +216 -0
- package/esm5/lib/services/logger.service.js +73 -0
- package/esm5/lib/services/ms-office.model.js +8 -0
- package/esm5/lib/services/subapplication-respond.service.js +230 -0
- package/esm5/lib/services/telemetry.service.js +484 -0
- package/esm5/lib/services/user-preference.model.js +38 -0
- package/esm5/lib/services/user-preference.service.js +109 -0
- package/esm5/lib/services/utility.service.js +178 -0
- package/esm5/lib/services/value.service.js +33 -0
- package/esm5/lib/services/widget-content.model.js +342 -0
- package/esm5/lib/services/widget-content.service.js +214 -0
- package/esm5/lib/services/widget-resolver.model.js +57 -0
- package/esm5/lib/services/widget-search.model.js +126 -0
- package/esm5/public-api.js +68 -0
- package/esm5/sunbird-cb-utils.js +8 -0
- package/fesm2015/sunbird-cb-utils.js +2011 -788
- package/fesm2015/sunbird-cb-utils.js.map +1 -1
- package/fesm5/sunbird-cb-utils.js +5605 -0
- package/fesm5/sunbird-cb-utils.js.map +1 -0
- package/lib/components/image-crop/image-crop.component.d.ts +0 -1
- package/lib/components/image-crop/image-crop.module.d.ts +0 -1
- package/lib/constants/features.enum.d.ts +0 -1
- package/lib/constants/instances.enum.d.ts +0 -1
- package/lib/constants/misc.constants.d.ts +0 -1
- package/lib/directives/class-change-on-scroll/class-change-on-scroll.directive.d.ts +3 -4
- package/lib/directives/class-change-on-scroll/class-change-on-scroll.module.d.ts +0 -1
- package/lib/directives/default-thumbnail/default-thumbnail.directive.d.ts +0 -1
- package/lib/directives/default-thumbnail/default-thumbnail.module.d.ts +0 -1
- package/lib/directives/image-responsive/image-responsive.directive.d.ts +0 -1
- package/lib/directives/image-responsive/image-responsive.module.d.ts +0 -1
- package/lib/directives/in-view-port/in-view-port.directive.d.ts +0 -1
- package/lib/directives/in-view-port/in-view-port.module.d.ts +0 -1
- package/lib/directives/navigation/navigation.directive.d.ts +0 -1
- package/lib/directives/navigation/navigation.module.d.ts +0 -1
- package/lib/directives/permission/permission.directive.d.ts +0 -1
- package/lib/directives/permission/permission.module.d.ts +0 -1
- package/lib/helpers/functions/getStringifiedQueryParams.d.ts +0 -1
- package/lib/helpers/horizontal-scroller/horizontal-scroller.component.d.ts +0 -1
- package/lib/helpers/horizontal-scroller/horizontal-scroller.module.d.ts +0 -1
- package/lib/helpers/logout/logout.component.d.ts +2 -3
- package/lib/helpers/logout/logout.module.d.ts +0 -1
- package/lib/models/contentRating.model.d.ts +0 -1
- package/lib/pipes/pipe-concise-date-range/pipe-concise-date-range.module.d.ts +0 -1
- package/lib/pipes/pipe-concise-date-range/pipe-concise-date-range.pipe.d.ts +0 -1
- package/lib/pipes/pipe-count-transform/pipe-count-transform.module.d.ts +0 -1
- package/lib/pipes/pipe-count-transform/pipe-count-transform.pipe.d.ts +0 -1
- package/lib/pipes/pipe-date-concat/pipe-date-concat.module.d.ts +0 -1
- package/lib/pipes/pipe-date-concat/pipe-date-concat.pipe.d.ts +0 -1
- package/lib/pipes/pipe-duration-transform/pipe-duration-transform.module.d.ts +0 -1
- package/lib/pipes/pipe-duration-transform/pipe-duration-transform.pipe.d.ts +0 -1
- package/lib/pipes/pipe-filter/pipe-filter.module.d.ts +0 -1
- package/lib/pipes/pipe-filter/pipe-filter.pipe.d.ts +0 -1
- package/lib/pipes/pipe-filter-search/pipe-filter-search.module.d.ts +0 -1
- package/lib/pipes/pipe-filter-search/pipe-filter-search.pipe.d.ts +0 -1
- package/lib/pipes/pipe-html-tag-removal/pipe-html-tag-removal.module.d.ts +0 -1
- package/lib/pipes/pipe-html-tag-removal/pipe-html-tag-removal.pipe.d.ts +0 -1
- package/lib/pipes/pipe-limit-to/pipe-limit-to.module.d.ts +0 -1
- package/lib/pipes/pipe-limit-to/pipe-limit-to.pipe.d.ts +0 -1
- package/lib/pipes/pipe-list-filter/pipe-list-filter.module.d.ts +0 -1
- package/lib/pipes/pipe-list-filter/pipe-list-filter.pipe.d.ts +0 -1
- package/lib/pipes/pipe-name-transform/pipe-name-transform.module.d.ts +0 -1
- package/lib/pipes/pipe-name-transform/pipe-name-transform.pipe.d.ts +0 -1
- package/lib/pipes/pipe-order-by/pipe-order-by.module.d.ts +0 -1
- package/lib/pipes/pipe-order-by/pipe-order-by.pipe.d.ts +4 -5
- package/lib/pipes/pipe-partial-content/pipe-partial-content.module.d.ts +0 -1
- package/lib/pipes/pipe-partial-content/pipe-partial-content.pipe.d.ts +0 -1
- package/lib/pipes/pipe-relative-time/pipe-relative-time.module.d.ts +0 -1
- package/lib/pipes/pipe-relative-time/pipe-relative-time.pipe.d.ts +0 -1
- package/lib/pipes/pipe-safe-sanitizer/pipe-safe-sanitizer.module.d.ts +0 -1
- package/lib/pipes/pipe-safe-sanitizer/pipe-safe-sanitizer.pipe.d.ts +0 -1
- package/lib/resolvers/explore-detail.resolver.d.ts +0 -1
- package/lib/resolvers/marketing-offering.resolve.d.ts +0 -1
- package/lib/resolvers/page.constant.d.ts +0 -1
- package/lib/resolvers/page.model.d.ts +1 -2
- package/lib/resolvers/page.resolver.d.ts +0 -1
- package/lib/resolvers/resolver.model.d.ts +0 -1
- package/lib/services/auth-keycloak.service.d.ts +9 -10
- package/lib/services/auth-microsoft.service.d.ts +2 -3
- package/lib/services/card-content.model.d.ts +0 -1
- package/lib/services/configurations.model.d.ts +24 -27
- package/lib/services/configurations.service.d.ts +0 -1
- package/lib/services/content-strip-multiple.model.d.ts +6 -8
- package/lib/services/event.model.d.ts +1 -2
- package/lib/services/event.service.d.ts +0 -1
- package/lib/services/logger.service.d.ts +4 -5
- package/lib/services/ms-office.model.d.ts +0 -1
- package/lib/services/subapplication-respond.service.d.ts +0 -1
- package/lib/services/telemetry.service.d.ts +2 -3
- package/lib/services/user-preference.model.d.ts +0 -1
- package/lib/services/user-preference.service.d.ts +0 -1
- package/lib/services/utility.service.d.ts +7 -8
- package/lib/services/value.service.d.ts +0 -1
- package/lib/services/widget-content.model.d.ts +19 -21
- package/lib/services/widget-content.service.d.ts +0 -1
- package/lib/services/widget-resolver.model.d.ts +0 -1
- package/lib/services/widget-search.model.d.ts +0 -1
- package/package.json +17 -14
- package/public-api.d.ts +0 -7
- package/sunbird-cb-utils.d.ts +6 -1
- package/sunbird-cb-utils.metadata.json +1 -1
- package/lib/components/image-crop/image-crop.component.d.ts.map +0 -1
- package/lib/components/image-crop/image-crop.component.ngfactory.d.ts.map +0 -1
- package/lib/components/image-crop/image-crop.component.scss.shim.ngstyle.d.ts.map +0 -1
- package/lib/components/image-crop/image-crop.module.d.ts.map +0 -1
- package/lib/components/image-crop/image-crop.module.ngfactory.d.ts.map +0 -1
- package/lib/constants/features.enum.d.ts.map +0 -1
- package/lib/constants/instances.enum.d.ts.map +0 -1
- package/lib/constants/misc.constants.d.ts.map +0 -1
- package/lib/directives/class-change-on-scroll/class-change-on-scroll.directive.d.ts.map +0 -1
- package/lib/directives/class-change-on-scroll/class-change-on-scroll.directive.ngfactory.d.ts.map +0 -1
- package/lib/directives/class-change-on-scroll/class-change-on-scroll.module.d.ts.map +0 -1
- package/lib/directives/class-change-on-scroll/class-change-on-scroll.module.ngfactory.d.ts.map +0 -1
- package/lib/directives/default-thumbnail/default-thumbnail.directive.d.ts.map +0 -1
- package/lib/directives/default-thumbnail/default-thumbnail.directive.ngfactory.d.ts.map +0 -1
- package/lib/directives/default-thumbnail/default-thumbnail.module.d.ts.map +0 -1
- package/lib/directives/default-thumbnail/default-thumbnail.module.ngfactory.d.ts.map +0 -1
- package/lib/directives/image-responsive/image-responsive.directive.d.ts.map +0 -1
- package/lib/directives/image-responsive/image-responsive.directive.ngfactory.d.ts.map +0 -1
- package/lib/directives/image-responsive/image-responsive.module.d.ts.map +0 -1
- package/lib/directives/image-responsive/image-responsive.module.ngfactory.d.ts.map +0 -1
- package/lib/directives/in-view-port/in-view-port.directive.d.ts.map +0 -1
- package/lib/directives/in-view-port/in-view-port.directive.ngfactory.d.ts.map +0 -1
- package/lib/directives/in-view-port/in-view-port.module.d.ts.map +0 -1
- package/lib/directives/in-view-port/in-view-port.module.ngfactory.d.ts.map +0 -1
- package/lib/directives/navigation/navigation.directive.d.ts.map +0 -1
- package/lib/directives/navigation/navigation.directive.ngfactory.d.ts.map +0 -1
- package/lib/directives/navigation/navigation.module.d.ts.map +0 -1
- package/lib/directives/navigation/navigation.module.ngfactory.d.ts.map +0 -1
- package/lib/directives/permission/permission.directive.d.ts.map +0 -1
- package/lib/directives/permission/permission.directive.ngfactory.d.ts.map +0 -1
- package/lib/directives/permission/permission.module.d.ts.map +0 -1
- package/lib/directives/permission/permission.module.ngfactory.d.ts.map +0 -1
- package/lib/helpers/functions/getStringifiedQueryParams.d.ts.map +0 -1
- package/lib/helpers/horizontal-scroller/horizontal-scroller.component.d.ts.map +0 -1
- package/lib/helpers/horizontal-scroller/horizontal-scroller.component.ngfactory.d.ts.map +0 -1
- package/lib/helpers/horizontal-scroller/horizontal-scroller.component.scss.shim.ngstyle.d.ts.map +0 -1
- package/lib/helpers/horizontal-scroller/horizontal-scroller.module.d.ts.map +0 -1
- package/lib/helpers/horizontal-scroller/horizontal-scroller.module.ngfactory.d.ts.map +0 -1
- package/lib/helpers/logout/logout.component.d.ts.map +0 -1
- package/lib/helpers/logout/logout.component.ngfactory.d.ts.map +0 -1
- package/lib/helpers/logout/logout.component.scss.shim.ngstyle.d.ts.map +0 -1
- package/lib/helpers/logout/logout.module.d.ts.map +0 -1
- package/lib/helpers/logout/logout.module.ngfactory.d.ts.map +0 -1
- package/lib/models/contentRating.model.d.ts.map +0 -1
- package/lib/pipes/pipe-concise-date-range/pipe-concise-date-range.module.d.ts.map +0 -1
- package/lib/pipes/pipe-concise-date-range/pipe-concise-date-range.module.ngfactory.d.ts.map +0 -1
- package/lib/pipes/pipe-concise-date-range/pipe-concise-date-range.pipe.d.ts.map +0 -1
- package/lib/pipes/pipe-concise-date-range/pipe-concise-date-range.pipe.ngfactory.d.ts.map +0 -1
- package/lib/pipes/pipe-count-transform/pipe-count-transform.module.d.ts.map +0 -1
- package/lib/pipes/pipe-count-transform/pipe-count-transform.module.ngfactory.d.ts.map +0 -1
- package/lib/pipes/pipe-count-transform/pipe-count-transform.pipe.d.ts.map +0 -1
- package/lib/pipes/pipe-count-transform/pipe-count-transform.pipe.ngfactory.d.ts.map +0 -1
- package/lib/pipes/pipe-date-concat/pipe-date-concat.module.d.ts.map +0 -1
- package/lib/pipes/pipe-date-concat/pipe-date-concat.module.ngfactory.d.ts.map +0 -1
- package/lib/pipes/pipe-date-concat/pipe-date-concat.pipe.d.ts.map +0 -1
- package/lib/pipes/pipe-date-concat/pipe-date-concat.pipe.ngfactory.d.ts.map +0 -1
- package/lib/pipes/pipe-duration-transform/pipe-duration-transform.module.d.ts.map +0 -1
- package/lib/pipes/pipe-duration-transform/pipe-duration-transform.module.ngfactory.d.ts.map +0 -1
- package/lib/pipes/pipe-duration-transform/pipe-duration-transform.pipe.d.ts.map +0 -1
- package/lib/pipes/pipe-duration-transform/pipe-duration-transform.pipe.ngfactory.d.ts.map +0 -1
- package/lib/pipes/pipe-filter/pipe-filter.module.d.ts.map +0 -1
- package/lib/pipes/pipe-filter/pipe-filter.module.ngfactory.d.ts.map +0 -1
- package/lib/pipes/pipe-filter/pipe-filter.pipe.d.ts.map +0 -1
- package/lib/pipes/pipe-filter/pipe-filter.pipe.ngfactory.d.ts.map +0 -1
- package/lib/pipes/pipe-filter-search/pipe-filter-search.module.d.ts.map +0 -1
- package/lib/pipes/pipe-filter-search/pipe-filter-search.module.ngfactory.d.ts.map +0 -1
- package/lib/pipes/pipe-filter-search/pipe-filter-search.pipe.d.ts.map +0 -1
- package/lib/pipes/pipe-filter-search/pipe-filter-search.pipe.ngfactory.d.ts.map +0 -1
- package/lib/pipes/pipe-html-tag-removal/pipe-html-tag-removal.module.d.ts.map +0 -1
- package/lib/pipes/pipe-html-tag-removal/pipe-html-tag-removal.module.ngfactory.d.ts.map +0 -1
- package/lib/pipes/pipe-html-tag-removal/pipe-html-tag-removal.pipe.d.ts.map +0 -1
- package/lib/pipes/pipe-html-tag-removal/pipe-html-tag-removal.pipe.ngfactory.d.ts.map +0 -1
- package/lib/pipes/pipe-limit-to/pipe-limit-to.module.d.ts.map +0 -1
- package/lib/pipes/pipe-limit-to/pipe-limit-to.module.ngfactory.d.ts.map +0 -1
- package/lib/pipes/pipe-limit-to/pipe-limit-to.pipe.d.ts.map +0 -1
- package/lib/pipes/pipe-limit-to/pipe-limit-to.pipe.ngfactory.d.ts.map +0 -1
- package/lib/pipes/pipe-list-filter/pipe-list-filter.module.d.ts.map +0 -1
- package/lib/pipes/pipe-list-filter/pipe-list-filter.module.ngfactory.d.ts.map +0 -1
- package/lib/pipes/pipe-list-filter/pipe-list-filter.pipe.d.ts.map +0 -1
- package/lib/pipes/pipe-list-filter/pipe-list-filter.pipe.ngfactory.d.ts.map +0 -1
- package/lib/pipes/pipe-name-transform/pipe-name-transform.module.d.ts.map +0 -1
- package/lib/pipes/pipe-name-transform/pipe-name-transform.module.ngfactory.d.ts.map +0 -1
- package/lib/pipes/pipe-name-transform/pipe-name-transform.pipe.d.ts.map +0 -1
- package/lib/pipes/pipe-name-transform/pipe-name-transform.pipe.ngfactory.d.ts.map +0 -1
- package/lib/pipes/pipe-order-by/pipe-order-by.module.d.ts.map +0 -1
- package/lib/pipes/pipe-order-by/pipe-order-by.module.ngfactory.d.ts.map +0 -1
- package/lib/pipes/pipe-order-by/pipe-order-by.pipe.d.ts.map +0 -1
- package/lib/pipes/pipe-order-by/pipe-order-by.pipe.ngfactory.d.ts.map +0 -1
- package/lib/pipes/pipe-partial-content/pipe-partial-content.module.d.ts.map +0 -1
- package/lib/pipes/pipe-partial-content/pipe-partial-content.module.ngfactory.d.ts.map +0 -1
- package/lib/pipes/pipe-partial-content/pipe-partial-content.pipe.d.ts.map +0 -1
- package/lib/pipes/pipe-partial-content/pipe-partial-content.pipe.ngfactory.d.ts.map +0 -1
- package/lib/pipes/pipe-relative-time/pipe-relative-time.module.d.ts.map +0 -1
- package/lib/pipes/pipe-relative-time/pipe-relative-time.module.ngfactory.d.ts.map +0 -1
- package/lib/pipes/pipe-relative-time/pipe-relative-time.pipe.d.ts.map +0 -1
- package/lib/pipes/pipe-relative-time/pipe-relative-time.pipe.ngfactory.d.ts.map +0 -1
- package/lib/pipes/pipe-safe-sanitizer/pipe-safe-sanitizer.module.d.ts.map +0 -1
- package/lib/pipes/pipe-safe-sanitizer/pipe-safe-sanitizer.module.ngfactory.d.ts.map +0 -1
- package/lib/pipes/pipe-safe-sanitizer/pipe-safe-sanitizer.pipe.d.ts.map +0 -1
- package/lib/pipes/pipe-safe-sanitizer/pipe-safe-sanitizer.pipe.ngfactory.d.ts.map +0 -1
- package/lib/resolvers/explore-detail.resolver.d.ts.map +0 -1
- package/lib/resolvers/explore-detail.resolver.ngfactory.d.ts.map +0 -1
- package/lib/resolvers/marketing-offering.resolve.d.ts.map +0 -1
- package/lib/resolvers/marketing-offering.resolve.ngfactory.d.ts.map +0 -1
- package/lib/resolvers/page.constant.d.ts.map +0 -1
- package/lib/resolvers/page.model.d.ts.map +0 -1
- package/lib/resolvers/page.resolver.d.ts.map +0 -1
- package/lib/resolvers/page.resolver.ngfactory.d.ts.map +0 -1
- package/lib/resolvers/resolver.model.d.ts.map +0 -1
- package/lib/services/auth-keycloak.service.d.ts.map +0 -1
- package/lib/services/auth-keycloak.service.ngfactory.d.ts.map +0 -1
- package/lib/services/auth-microsoft.service.d.ts.map +0 -1
- package/lib/services/auth-microsoft.service.ngfactory.d.ts.map +0 -1
- package/lib/services/card-content.model.d.ts.map +0 -1
- package/lib/services/configurations.model.d.ts.map +0 -1
- package/lib/services/configurations.service.d.ts.map +0 -1
- package/lib/services/configurations.service.ngfactory.d.ts.map +0 -1
- package/lib/services/content-strip-multiple.model.d.ts.map +0 -1
- package/lib/services/event.model.d.ts.map +0 -1
- package/lib/services/event.service.d.ts.map +0 -1
- package/lib/services/event.service.ngfactory.d.ts.map +0 -1
- package/lib/services/logger.service.d.ts.map +0 -1
- package/lib/services/logger.service.ngfactory.d.ts.map +0 -1
- package/lib/services/ms-office.model.d.ts.map +0 -1
- package/lib/services/subapplication-respond.service.d.ts.map +0 -1
- package/lib/services/subapplication-respond.service.ngfactory.d.ts.map +0 -1
- package/lib/services/telemetry.service.d.ts.map +0 -1
- package/lib/services/telemetry.service.ngfactory.d.ts.map +0 -1
- package/lib/services/user-preference.model.d.ts.map +0 -1
- package/lib/services/user-preference.service.d.ts.map +0 -1
- package/lib/services/user-preference.service.ngfactory.d.ts.map +0 -1
- package/lib/services/utility.service.d.ts.map +0 -1
- package/lib/services/utility.service.ngfactory.d.ts.map +0 -1
- package/lib/services/value.service.d.ts.map +0 -1
- package/lib/services/value.service.ngfactory.d.ts.map +0 -1
- package/lib/services/widget-content.model.d.ts.map +0 -1
- package/lib/services/widget-content.service.d.ts.map +0 -1
- package/lib/services/widget-content.service.ngfactory.d.ts.map +0 -1
- package/lib/services/widget-resolver.model.d.ts.map +0 -1
- package/lib/services/widget-search.model.d.ts.map +0 -1
- package/public-api.d.ts.map +0 -1
- package/sunbird-cb-utils.d.ts.map +0 -1
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import { ConfigurationsService } from './configurations.service';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "./configurations.service";
|
|
5
|
+
var LoggerService = (function () {
|
|
6
|
+
function LoggerService(configSvc) {
|
|
7
|
+
this.configSvc = configSvc;
|
|
8
|
+
this.consoleError = console.error;
|
|
9
|
+
this.consoleInfo = console.info;
|
|
10
|
+
this.consoleLog = console.log;
|
|
11
|
+
this.consoleWarn = console.warn;
|
|
12
|
+
this.noConsole = (function () { });
|
|
13
|
+
}
|
|
14
|
+
Object.defineProperty(LoggerService.prototype, "error", {
|
|
15
|
+
get: function () {
|
|
16
|
+
return this.consoleError;
|
|
17
|
+
},
|
|
18
|
+
enumerable: true,
|
|
19
|
+
configurable: true
|
|
20
|
+
});
|
|
21
|
+
Object.defineProperty(LoggerService.prototype, "info", {
|
|
22
|
+
get: function () {
|
|
23
|
+
return this.configSvc.isProduction ? this.noConsole : this.consoleInfo;
|
|
24
|
+
},
|
|
25
|
+
enumerable: true,
|
|
26
|
+
configurable: true
|
|
27
|
+
});
|
|
28
|
+
Object.defineProperty(LoggerService.prototype, "log", {
|
|
29
|
+
get: function () {
|
|
30
|
+
return this.configSvc.isProduction ? this.noConsole : this.consoleLog;
|
|
31
|
+
},
|
|
32
|
+
enumerable: true,
|
|
33
|
+
configurable: true
|
|
34
|
+
});
|
|
35
|
+
Object.defineProperty(LoggerService.prototype, "warn", {
|
|
36
|
+
get: function () {
|
|
37
|
+
return this.configSvc.isProduction ? this.noConsole : this.consoleWarn;
|
|
38
|
+
},
|
|
39
|
+
enumerable: true,
|
|
40
|
+
configurable: true
|
|
41
|
+
});
|
|
42
|
+
LoggerService.prototype.removeConsoleAccess = function () {
|
|
43
|
+
if (this.configSvc.isProduction) {
|
|
44
|
+
return;
|
|
45
|
+
}
|
|
46
|
+
var noConsoleWithError = (function () {
|
|
47
|
+
throw new Error('Console Functions Usage Are Not Allowed.');
|
|
48
|
+
});
|
|
49
|
+
console.warn = noConsoleWithError;
|
|
50
|
+
console.info = noConsoleWithError;
|
|
51
|
+
console.error = noConsoleWithError;
|
|
52
|
+
};
|
|
53
|
+
LoggerService.decorators = [
|
|
54
|
+
{ type: Injectable, args: [{
|
|
55
|
+
providedIn: 'root',
|
|
56
|
+
},] }
|
|
57
|
+
];
|
|
58
|
+
LoggerService.ctorParameters = function () { return [
|
|
59
|
+
{ type: ConfigurationsService }
|
|
60
|
+
]; };
|
|
61
|
+
/** @nocollapse */ LoggerService.ngInjectableDef = i0.ɵɵdefineInjectable({ factory: function LoggerService_Factory() { return new LoggerService(i0.ɵɵinject(i1.ConfigurationsService)); }, token: LoggerService, providedIn: "root" });
|
|
62
|
+
return LoggerService;
|
|
63
|
+
}());
|
|
64
|
+
export { LoggerService };
|
|
65
|
+
if (false) {
|
|
66
|
+
LoggerService.prototype.consoleError;
|
|
67
|
+
LoggerService.prototype.consoleInfo;
|
|
68
|
+
LoggerService.prototype.consoleLog;
|
|
69
|
+
LoggerService.prototype.consoleWarn;
|
|
70
|
+
LoggerService.prototype.noConsole;
|
|
71
|
+
LoggerService.prototype.configSvc;
|
|
72
|
+
}
|
|
73
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9nZ2VyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Ac3VuYmlyZC1jYi91dGlscy8iLCJzb3VyY2VzIjpbImxpYi9zZXJ2aWNlcy9sb2dnZXIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBQzFDLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDBCQUEwQixDQUFBOzs7QUFHaEU7SUFJRSx1QkFBb0IsU0FBZ0M7UUFBaEMsY0FBUyxHQUFULFNBQVMsQ0FBdUI7UUFFNUMsaUJBQVksR0FBRyxPQUFPLENBQUMsS0FBSyxDQUFBO1FBQzVCLGdCQUFXLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQTtRQUMxQixlQUFVLEdBQUcsT0FBTyxDQUFDLEdBQUcsQ0FBQTtRQUN4QixnQkFBVyxHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUE7UUFDMUIsY0FBUyxJQUFlLGNBQVEsQ0FBQyxFQUFBO0lBTmUsQ0FBQztJQVF6RCxzQkFBSSxnQ0FBSzthQUFUO1lBQ0UsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFBO1FBQzFCLENBQUM7OztPQUFBO0lBQ0Qsc0JBQUksK0JBQUk7YUFBUjtZQUNFLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUE7UUFDeEUsQ0FBQzs7O09BQUE7SUFDRCxzQkFBSSw4QkFBRzthQUFQO1lBQ0UsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQTtRQUN2RSxDQUFDOzs7T0FBQTtJQUNELHNCQUFJLCtCQUFJO2FBQVI7WUFDRSxPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFBO1FBQ3hFLENBQUM7OztPQUFBO0lBRUQsMkNBQW1CLEdBQW5CO1FBQ0UsSUFBSSxJQUFJLENBQUMsU0FBUyxDQUFDLFlBQVksRUFBRTtZQUMvQixPQUFNO1NBQ1A7WUFDSyxrQkFBa0IsSUFBZTtZQUNyQyxNQUFNLElBQUksS0FBSyxDQUFDLDBDQUEwQyxDQUFDLENBQUE7UUFDN0QsQ0FBQyxDQUFBO1FBRUQsT0FBTyxDQUFDLElBQUksR0FBRyxrQkFBa0IsQ0FBQTtRQUNqQyxPQUFPLENBQUMsSUFBSSxHQUFHLGtCQUFrQixDQUFBO1FBQ2pDLE9BQU8sQ0FBQyxLQUFLLEdBQUcsa0JBQWtCLENBQUE7SUFDcEMsQ0FBQzs7Z0JBcENGLFVBQVUsU0FBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkI7OztnQkFMUSxxQkFBcUI7Ozt3QkFGOUI7Q0EwQ0MsQUFyQ0QsSUFxQ0M7U0FsQ1ksYUFBYTs7SUFHeEIscUNBQW9DO0lBQ3BDLG9DQUFrQztJQUNsQyxtQ0FBZ0M7SUFDaEMsb0NBQWtDO0lBQ2xDLGtDQUF5QztJQU43QixrQ0FBd0MiLCJzb3VyY2VzQ29udGVudCI6WyIvLyB0c2xpbnQ6ZGlzYWJsZTpuby1jb25zb2xlXHJcbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xyXG5pbXBvcnQgeyBDb25maWd1cmF0aW9uc1NlcnZpY2UgfSBmcm9tICcuL2NvbmZpZ3VyYXRpb25zLnNlcnZpY2UnXHJcblxyXG50eXBlIGNvbnNvbGVGdW4gPSAoLi4uYXJnczogYW55KSA9PiB2b2lkXHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiAncm9vdCcsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBMb2dnZXJTZXJ2aWNlIHtcclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGNvbmZpZ1N2YzogQ29uZmlndXJhdGlvbnNTZXJ2aWNlKSB7IH1cclxuXHJcbiAgcHJpdmF0ZSBjb25zb2xlRXJyb3IgPSBjb25zb2xlLmVycm9yXHJcbiAgcHJpdmF0ZSBjb25zb2xlSW5mbyA9IGNvbnNvbGUuaW5mb1xyXG4gIHByaXZhdGUgY29uc29sZUxvZyA9IGNvbnNvbGUubG9nXHJcbiAgcHJpdmF0ZSBjb25zb2xlV2FybiA9IGNvbnNvbGUud2FyblxyXG4gIHByaXZhdGUgbm9Db25zb2xlOiBjb25zb2xlRnVuID0gKCkgPT4geyB9XHJcblxyXG4gIGdldCBlcnJvcigpIHtcclxuICAgIHJldHVybiB0aGlzLmNvbnNvbGVFcnJvclxyXG4gIH1cclxuICBnZXQgaW5mbygpIHtcclxuICAgIHJldHVybiB0aGlzLmNvbmZpZ1N2Yy5pc1Byb2R1Y3Rpb24gPyB0aGlzLm5vQ29uc29sZSA6IHRoaXMuY29uc29sZUluZm9cclxuICB9XHJcbiAgZ2V0IGxvZygpIHtcclxuICAgIHJldHVybiB0aGlzLmNvbmZpZ1N2Yy5pc1Byb2R1Y3Rpb24gPyB0aGlzLm5vQ29uc29sZSA6IHRoaXMuY29uc29sZUxvZ1xyXG4gIH1cclxuICBnZXQgd2FybigpIHtcclxuICAgIHJldHVybiB0aGlzLmNvbmZpZ1N2Yy5pc1Byb2R1Y3Rpb24gPyB0aGlzLm5vQ29uc29sZSA6IHRoaXMuY29uc29sZVdhcm5cclxuICB9XHJcblxyXG4gIHJlbW92ZUNvbnNvbGVBY2Nlc3MoKSB7XHJcbiAgICBpZiAodGhpcy5jb25maWdTdmMuaXNQcm9kdWN0aW9uKSB7XHJcbiAgICAgIHJldHVyblxyXG4gICAgfVxyXG4gICAgY29uc3Qgbm9Db25zb2xlV2l0aEVycm9yOiBjb25zb2xlRnVuID0gKCkgPT4ge1xyXG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0NvbnNvbGUgRnVuY3Rpb25zIFVzYWdlIEFyZSBOb3QgQWxsb3dlZC4nKVxyXG4gICAgfVxyXG4gICAgLy8gY29uc29sZS5sb2cgPSBub0NvbnNvbGVXaXRoRXJyb3JcclxuICAgIGNvbnNvbGUud2FybiA9IG5vQ29uc29sZVdpdGhFcnJvclxyXG4gICAgY29uc29sZS5pbmZvID0gbm9Db25zb2xlV2l0aEVycm9yXHJcbiAgICBjb25zb2xlLmVycm9yID0gbm9Db25zb2xlV2l0aEVycm9yXHJcbiAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export function IWsMsTokenModelResponse() { }
|
|
2
|
+
if (false) {
|
|
3
|
+
IWsMsTokenModelResponse.prototype.accessToken;
|
|
4
|
+
IWsMsTokenModelResponse.prototype.expiresOn;
|
|
5
|
+
IWsMsTokenModelResponse.prototype.resource;
|
|
6
|
+
IWsMsTokenModelResponse.prototype.tokenType;
|
|
7
|
+
}
|
|
8
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXMtb2ZmaWNlLm1vZGVsLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHN1bmJpcmQtY2IvdXRpbHMvIiwic291cmNlcyI6WyJsaWIvc2VydmljZXMvbXMtb2ZmaWNlLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLDZDQUtDOztJQUpDLDhDQUFvQjtJQUNwQiw0Q0FBa0I7SUFDbEIsMkNBQWlCO0lBQ2pCLDRDQUFrQiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBpbnRlcmZhY2UgSVdzTXNUb2tlbk1vZGVsUmVzcG9uc2Uge1xyXG4gIGFjY2Vzc1Rva2VuPzogc3RyaW5nXHJcbiAgZXhwaXJlc09uPzogc3RyaW5nXHJcbiAgcmVzb3VyY2U/OiBzdHJpbmdcclxuICB0b2tlblR5cGU/OiBzdHJpbmdcclxufVxyXG4iXX0=
|
|
@@ -0,0 +1,230 @@
|
|
|
1
|
+
import * as tslib_1 from "tslib";
|
|
2
|
+
import { Injectable } from '@angular/core';
|
|
3
|
+
import { ActivatedRoute, Router } from '@angular/router';
|
|
4
|
+
import { WidgetContentService } from './widget-content.service';
|
|
5
|
+
import { AuthKeycloakService } from './auth-keycloak.service';
|
|
6
|
+
import { ConfigurationsService } from './configurations.service';
|
|
7
|
+
import { WsEvents } from './event.model';
|
|
8
|
+
import { EventService } from './event.service';
|
|
9
|
+
import { TelemetryService } from './telemetry.service';
|
|
10
|
+
import * as i0 from "@angular/core";
|
|
11
|
+
import * as i1 from "./configurations.service";
|
|
12
|
+
import * as i2 from "./widget-content.service";
|
|
13
|
+
import * as i3 from "./auth-keycloak.service";
|
|
14
|
+
import * as i4 from "@angular/router";
|
|
15
|
+
import * as i5 from "./event.service";
|
|
16
|
+
import * as i6 from "./telemetry.service";
|
|
17
|
+
var SubapplicationRespondService = (function () {
|
|
18
|
+
function SubapplicationRespondService(configSvc, contentSvc, keyCloakSvc, activatedRoute, router, eventSvc, teleSvc) {
|
|
19
|
+
var _this = this;
|
|
20
|
+
this.configSvc = configSvc;
|
|
21
|
+
this.contentSvc = contentSvc;
|
|
22
|
+
this.keyCloakSvc = keyCloakSvc;
|
|
23
|
+
this.activatedRoute = activatedRoute;
|
|
24
|
+
this.router = router;
|
|
25
|
+
this.eventSvc = eventSvc;
|
|
26
|
+
this.teleSvc = teleSvc;
|
|
27
|
+
this.subAppname = '';
|
|
28
|
+
this.continueLearningData = null;
|
|
29
|
+
this.loaded = false;
|
|
30
|
+
this.changeContextrespond();
|
|
31
|
+
this.configSvc.prefChangeNotifier.subscribe((function () {
|
|
32
|
+
_this.changeContextrespond();
|
|
33
|
+
}));
|
|
34
|
+
}
|
|
35
|
+
SubapplicationRespondService.prototype.loadedRespond = function (contentWindow, applicationName, id) {
|
|
36
|
+
var _this = this;
|
|
37
|
+
if (id && this.activatedRoute.snapshot.queryParams.viewMode && this.activatedRoute.snapshot.queryParams.viewMode === 'RESUME') {
|
|
38
|
+
this.continueLearningData = null;
|
|
39
|
+
this.contentSvc.fetchContentHistory(id).subscribe((function (data) {
|
|
40
|
+
_this.continueLearningData = data.continueData;
|
|
41
|
+
if (_this.configSvc && _this.configSvc.userProfile) {
|
|
42
|
+
var firstName = _this.configSvc.userProfile.userName ?
|
|
43
|
+
_this.configSvc.userProfile.userName.split(' ', 2)[0] : '';
|
|
44
|
+
var lastName = _this.configSvc.userProfile.userName ?
|
|
45
|
+
_this.configSvc.userProfile.userName.split(' ', 2)[1] : '';
|
|
46
|
+
var viewMode = _this.activatedRoute.snapshot.queryParams.viewMode ?
|
|
47
|
+
_this.activatedRoute.snapshot.queryParams.viewMode : '';
|
|
48
|
+
var token = _this.keyCloakSvc.token;
|
|
49
|
+
var response = {
|
|
50
|
+
subApplicationName: applicationName,
|
|
51
|
+
requestId: 'LOADED',
|
|
52
|
+
parentContext: {
|
|
53
|
+
domainName: window.location.host,
|
|
54
|
+
url: _this.router.url,
|
|
55
|
+
rootOrg: _this.configSvc.rootOrg,
|
|
56
|
+
theme: _this.configSvc.activeThemeObject ? tslib_1.__assign({ name: _this.configSvc.activeThemeObject.themeName }, _this.configSvc.activeThemeObject.color) : '',
|
|
57
|
+
fontSize: _this.configSvc.activeFontObject ? _this.configSvc.activeFontObject.baseFontSize : '14px',
|
|
58
|
+
locale: (_this.configSvc.userPreference && _this.configSvc.userPreference.selectedLocale) || 'en',
|
|
59
|
+
darkMode: _this.configSvc.isDarkMode,
|
|
60
|
+
subApplicationStartMode: viewMode.toUpperCase(),
|
|
61
|
+
user: {
|
|
62
|
+
firstName: firstName,
|
|
63
|
+
lastName: lastName,
|
|
64
|
+
token: token,
|
|
65
|
+
userId: _this.configSvc.userProfile.userId ? _this.configSvc.userProfile.userId : '',
|
|
66
|
+
roles: _this.configSvc.userRoles ? Array.from(_this.configSvc.userRoles) : [],
|
|
67
|
+
},
|
|
68
|
+
heartbeatFrequency: '200',
|
|
69
|
+
},
|
|
70
|
+
data: _this.continueLearningData.data ? {
|
|
71
|
+
continueLearning: _this.continueLearningData.data,
|
|
72
|
+
} : null,
|
|
73
|
+
};
|
|
74
|
+
contentWindow.postMessage(response, '*');
|
|
75
|
+
_this.contentWindowinfo = contentWindow;
|
|
76
|
+
_this.loaded = true;
|
|
77
|
+
_this.subAppname = applicationName;
|
|
78
|
+
}
|
|
79
|
+
}));
|
|
80
|
+
}
|
|
81
|
+
else {
|
|
82
|
+
if (this.configSvc && this.configSvc.userProfile) {
|
|
83
|
+
var firstName = this.configSvc.userProfile.userName ?
|
|
84
|
+
this.configSvc.userProfile.userName.split(' ', 2)[0] : '';
|
|
85
|
+
var lastName = this.configSvc.userProfile.userName ?
|
|
86
|
+
this.configSvc.userProfile.userName.split(' ', 2)[1] : '';
|
|
87
|
+
var viewMode = this.activatedRoute.snapshot.queryParams.viewMode ?
|
|
88
|
+
this.activatedRoute.snapshot.queryParams.viewMode : '';
|
|
89
|
+
var token = this.keyCloakSvc.token;
|
|
90
|
+
var response = {
|
|
91
|
+
subApplicationName: applicationName,
|
|
92
|
+
requestId: 'LOADED',
|
|
93
|
+
parentContext: {
|
|
94
|
+
domainName: window.location.host,
|
|
95
|
+
url: this.router.url,
|
|
96
|
+
rootOrg: this.configSvc.rootOrg,
|
|
97
|
+
theme: this.configSvc.activeThemeObject ? tslib_1.__assign({ name: this.configSvc.activeThemeObject.themeName }, this.configSvc.activeThemeObject.color) : '',
|
|
98
|
+
fontSize: this.configSvc.activeFontObject ? this.configSvc.activeFontObject.baseFontSize : '14px',
|
|
99
|
+
locale: (this.configSvc.userPreference && this.configSvc.userPreference.selectedLocale) || 'en',
|
|
100
|
+
darkMode: this.configSvc.isDarkMode,
|
|
101
|
+
subApplicationStartMode: viewMode.toUpperCase(),
|
|
102
|
+
user: {
|
|
103
|
+
firstName: firstName,
|
|
104
|
+
lastName: lastName,
|
|
105
|
+
token: token,
|
|
106
|
+
userId: this.configSvc.userProfile.userId ? this.configSvc.userProfile.userId : '',
|
|
107
|
+
roles: this.configSvc.userRoles ? Array.from(this.configSvc.userRoles) : [],
|
|
108
|
+
},
|
|
109
|
+
heartbeatFrequency: '200',
|
|
110
|
+
},
|
|
111
|
+
data: null,
|
|
112
|
+
};
|
|
113
|
+
contentWindow.postMessage(response, '*');
|
|
114
|
+
this.contentWindowinfo = contentWindow;
|
|
115
|
+
this.loaded = true;
|
|
116
|
+
this.subAppname = applicationName;
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
};
|
|
120
|
+
SubapplicationRespondService.prototype.continueLearningRespond = function (id, continueLearning) {
|
|
121
|
+
this.contentSvc.saveContinueLearning({
|
|
122
|
+
contextPathId: id,
|
|
123
|
+
resourceId: id,
|
|
124
|
+
data: JSON.stringify({ timestamp: Date.now(), data: continueLearning }),
|
|
125
|
+
dateAccessed: Date.now(),
|
|
126
|
+
})
|
|
127
|
+
.toPromise()
|
|
128
|
+
.catch();
|
|
129
|
+
};
|
|
130
|
+
SubapplicationRespondService.prototype.telemetryEvents = function (tData) {
|
|
131
|
+
if (tData) {
|
|
132
|
+
switch (tData.eventId) {
|
|
133
|
+
case 'INTERACT':
|
|
134
|
+
this.eventSvc.dispatchEvent({
|
|
135
|
+
eventType: WsEvents.WsEventType.Telemetry,
|
|
136
|
+
eventLogLevel: WsEvents.WsEventLogLevel.Warn,
|
|
137
|
+
data: tslib_1.__assign({}, tData.data, { eventSubType: WsEvents.EnumTelemetrySubType.Interact }),
|
|
138
|
+
from: tData.subApplicationName,
|
|
139
|
+
to: 'Telemetry',
|
|
140
|
+
});
|
|
141
|
+
break;
|
|
142
|
+
case 'HEARTBEAT':
|
|
143
|
+
this.eventSvc.dispatchEvent({
|
|
144
|
+
eventType: WsEvents.WsEventType.Telemetry,
|
|
145
|
+
eventLogLevel: WsEvents.WsEventLogLevel.Trace,
|
|
146
|
+
data: tslib_1.__assign({}, tData.data, { eventSubType: WsEvents.EnumTelemetrySubType.HeartBeat }),
|
|
147
|
+
from: tData.subApplicationName,
|
|
148
|
+
to: 'Telemetry',
|
|
149
|
+
});
|
|
150
|
+
break;
|
|
151
|
+
case 'IMPRESSION':
|
|
152
|
+
this.teleSvc.externalImpression(tData.data);
|
|
153
|
+
break;
|
|
154
|
+
default:
|
|
155
|
+
break;
|
|
156
|
+
}
|
|
157
|
+
}
|
|
158
|
+
};
|
|
159
|
+
SubapplicationRespondService.prototype.unsubscribeResponse = function () {
|
|
160
|
+
this.subAppname = '';
|
|
161
|
+
this.continueLearningData = null;
|
|
162
|
+
this.contentWindowinfo = null;
|
|
163
|
+
this.loaded = false;
|
|
164
|
+
};
|
|
165
|
+
SubapplicationRespondService.prototype.changeContextrespond = function () {
|
|
166
|
+
if (this.loaded && this.contentWindowinfo && this.configSvc && this.configSvc.userProfile && this.subAppname) {
|
|
167
|
+
var firstName = this.configSvc.userProfile.userName ?
|
|
168
|
+
this.configSvc.userProfile.userName.split(' ', 2)[0] : '';
|
|
169
|
+
var lastName = this.configSvc.userProfile.userName ?
|
|
170
|
+
this.configSvc.userProfile.userName.split(' ', 2)[1] : '';
|
|
171
|
+
var viewMode = this.activatedRoute.snapshot.queryParams.viewMode ?
|
|
172
|
+
this.activatedRoute.snapshot.queryParams.viewMode : '';
|
|
173
|
+
var token = this.keyCloakSvc.token;
|
|
174
|
+
var response = {
|
|
175
|
+
subApplicationName: this.subAppname,
|
|
176
|
+
requestId: 'CONTEXT_CHANGE',
|
|
177
|
+
parentContext: {
|
|
178
|
+
domainName: window.location.host,
|
|
179
|
+
url: this.router.url,
|
|
180
|
+
rootOrg: this.configSvc.rootOrg,
|
|
181
|
+
theme: this.configSvc.activeThemeObject ? tslib_1.__assign({ name: this.configSvc.activeThemeObject.themeName }, this.configSvc.activeThemeObject.color) : '',
|
|
182
|
+
fontSize: this.configSvc.activeFontObject ? this.configSvc.activeFontObject.baseFontSize : '14px',
|
|
183
|
+
locale: (this.configSvc.userPreference && this.configSvc.userPreference.selectedLocale) || 'en',
|
|
184
|
+
darkMode: this.configSvc.isDarkMode,
|
|
185
|
+
subApplicationStartMode: viewMode.toUpperCase(),
|
|
186
|
+
user: {
|
|
187
|
+
firstName: firstName,
|
|
188
|
+
lastName: lastName,
|
|
189
|
+
token: token,
|
|
190
|
+
userId: this.configSvc.userProfile.userId ? this.configSvc.userProfile.userId : '',
|
|
191
|
+
roles: this.configSvc.userRoles ? Array.from(this.configSvc.userRoles) : [],
|
|
192
|
+
},
|
|
193
|
+
heartbeatFrequency: '200',
|
|
194
|
+
},
|
|
195
|
+
};
|
|
196
|
+
this.contentWindowinfo.postMessage(response, '*');
|
|
197
|
+
}
|
|
198
|
+
};
|
|
199
|
+
SubapplicationRespondService.decorators = [
|
|
200
|
+
{ type: Injectable, args: [{
|
|
201
|
+
providedIn: 'root',
|
|
202
|
+
},] }
|
|
203
|
+
];
|
|
204
|
+
SubapplicationRespondService.ctorParameters = function () { return [
|
|
205
|
+
{ type: ConfigurationsService },
|
|
206
|
+
{ type: WidgetContentService },
|
|
207
|
+
{ type: AuthKeycloakService },
|
|
208
|
+
{ type: ActivatedRoute },
|
|
209
|
+
{ type: Router },
|
|
210
|
+
{ type: EventService },
|
|
211
|
+
{ type: TelemetryService }
|
|
212
|
+
]; };
|
|
213
|
+
/** @nocollapse */ SubapplicationRespondService.ngInjectableDef = i0.ɵɵdefineInjectable({ factory: function SubapplicationRespondService_Factory() { return new SubapplicationRespondService(i0.ɵɵinject(i1.ConfigurationsService), i0.ɵɵinject(i2.WidgetContentService), i0.ɵɵinject(i3.AuthKeycloakService), i0.ɵɵinject(i4.ActivatedRoute), i0.ɵɵinject(i4.Router), i0.ɵɵinject(i5.EventService), i0.ɵɵinject(i6.TelemetryService)); }, token: SubapplicationRespondService, providedIn: "root" });
|
|
214
|
+
return SubapplicationRespondService;
|
|
215
|
+
}());
|
|
216
|
+
export { SubapplicationRespondService };
|
|
217
|
+
if (false) {
|
|
218
|
+
SubapplicationRespondService.prototype.subAppname;
|
|
219
|
+
SubapplicationRespondService.prototype.continueLearningData;
|
|
220
|
+
SubapplicationRespondService.prototype.contentWindowinfo;
|
|
221
|
+
SubapplicationRespondService.prototype.loaded;
|
|
222
|
+
SubapplicationRespondService.prototype.configSvc;
|
|
223
|
+
SubapplicationRespondService.prototype.contentSvc;
|
|
224
|
+
SubapplicationRespondService.prototype.keyCloakSvc;
|
|
225
|
+
SubapplicationRespondService.prototype.activatedRoute;
|
|
226
|
+
SubapplicationRespondService.prototype.router;
|
|
227
|
+
SubapplicationRespondService.prototype.eventSvc;
|
|
228
|
+
SubapplicationRespondService.prototype.teleSvc;
|
|
229
|
+
}
|
|
230
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3ViYXBwbGljYXRpb24tcmVzcG9uZC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHN1bmJpcmQtY2IvdXRpbHMvIiwic291cmNlcyI6WyJsaWIvc2VydmljZXMvc3ViYXBwbGljYXRpb24tcmVzcG9uZC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBQzFDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFDeEQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMEJBQTBCLENBQUE7QUFDL0QsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0seUJBQXlCLENBQUE7QUFDN0QsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMEJBQTBCLENBQUE7QUFDaEUsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUN4QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFDOUMsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0scUJBQXFCLENBQUE7Ozs7Ozs7O0FBQ3REO0lBUUUsc0NBQ1UsU0FBZ0MsRUFDaEMsVUFBZ0MsRUFDaEMsV0FBZ0MsRUFDaEMsY0FBOEIsRUFDOUIsTUFBYyxFQUNkLFFBQXNCLEVBQ3RCLE9BQXlCO1FBUG5DLGlCQWFDO1FBWlMsY0FBUyxHQUFULFNBQVMsQ0FBdUI7UUFDaEMsZUFBVSxHQUFWLFVBQVUsQ0FBc0I7UUFDaEMsZ0JBQVcsR0FBWCxXQUFXLENBQXFCO1FBQ2hDLG1CQUFjLEdBQWQsY0FBYyxDQUFnQjtRQUM5QixXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQ2QsYUFBUSxHQUFSLFFBQVEsQ0FBYztRQUN0QixZQUFPLEdBQVAsT0FBTyxDQUFrQjtRQVhuQyxlQUFVLEdBQUcsRUFBRSxDQUFBO1FBQ2YseUJBQW9CLEdBQVEsSUFBSSxDQUFBO1FBRWhDLFdBQU0s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QyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUU7cUJBQzVFO29CQUNELGtCQUFrQixFQUFFLEtBQUs7aUJBQzFCO2FBQ0Y7WUFDRCxJQUFJLENBQUMsaUJBQWlCLENBQUMsV0FBVyxDQUFDLFFBQVEsRUFBRSxHQUFHLENBQUMsQ0FBQTtTQUNsRDtJQUNILENBQUM7O2dCQXpNRixVQUFVLFNBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25COzs7Z0JBTlEscUJBQXFCO2dCQUZyQixvQkFBb0I7Z0JBQ3BCLG1CQUFtQjtnQkFGbkIsY0FBYztnQkFBRSxNQUFNO2dCQUt0QixZQUFZO2dCQUNaLGdCQUFnQjs7O3VDQVB6QjtDQWtOQyxBQTFNRCxJQTBNQztTQXZNWSw0QkFBNEI7O0lBQ3ZDLGtEQUFlO0lBQ2YsNERBQWdDO0lBQ2hDLHlEQUFzQjtJQUN0Qiw4Q0FBYztJQUVaLGlEQUF3QztJQUN4QyxrREFBd0M7SUFDeEMsbURBQXdDO0lBQ3hDLHNEQUFzQztJQUN0Qyw4Q0FBc0I7SUFDdEIsZ0RBQThCO0lBQzlCLCtDQUFpQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xyXG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSwgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJ1xyXG5pbXBvcnQgeyBXaWRnZXRDb250ZW50U2VydmljZSB9IGZyb20gJy4vd2lkZ2V0LWNvbnRlbnQuc2VydmljZSdcclxuaW1wb3J0IHsgQXV0aEtleWNsb2FrU2VydmljZSB9IGZyb20gJy4vYXV0aC1rZXljbG9hay5zZXJ2aWNlJ1xyXG5pbXBvcnQgeyBDb25maWd1cmF0aW9uc1NlcnZpY2UgfSBmcm9tICcuL2NvbmZpZ3VyYXRpb25zLnNlcnZpY2UnXHJcbmltcG9ydCB7IFdzRXZlbnRzIH0gZnJvbSAnLi9ldmVudC5tb2RlbCdcclxuaW1wb3J0IHsgRXZlbnRTZXJ2aWNlIH0gZnJvbSAnLi9ldmVudC5zZXJ2aWNlJ1xyXG5pbXBvcnQgeyBUZWxlbWV0cnlTZXJ2aWNlIH0gZnJvbSAnLi90ZWxlbWV0cnkuc2VydmljZSdcclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46ICdyb290JyxcclxufSlcclxuZXhwb3J0IGNsYXNzIFN1YmFwcGxpY2F0aW9uUmVzcG9uZFNlcnZpY2Uge1xyXG4gIHN1YkFwcG5hbWUgPSAnJ1xyXG4gIGNvbnRpbnVlTGVhcm5pbmdEYXRhOiBhbnkgPSBudWxsXHJcbiAgY29udGVudFdpbmRvd2luZm86IGFueVxyXG4gIGxvYWRlZCA9IGZhbHNlXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIGNvbmZpZ1N2YzogQ29uZmlndXJhdGlvbnNTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBjb250ZW50U3ZjOiBXaWRnZXRDb250ZW50U2VydmljZSxcclxuICAgIHByaXZhdGUga2V5Q2xvYWtTdmM6IEF1dGhLZXljbG9ha1NlcnZpY2UsXHJcbiAgICBwcml2YXRlIGFjdGl2YXRlZFJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSxcclxuICAgIHByaXZhdGUgcm91dGVyOiBSb3V0ZXIsXHJcbiAgICBwcml2YXRlIGV2ZW50U3ZjOiBFdmVudFNlcnZpY2UsXHJcbiAgICBwcml2YXRlIHRlbGVTdmM6IFRlbGVtZXRyeVNlcnZpY2UsXHJcbiAgKSB7XHJcbiAgICB0aGlzLmNoYW5nZUNvbnRleHRyZXNwb25kKClcclxuICAgIHRoaXMuY29uZmlnU3ZjLnByZWZDaGFuZ2VOb3RpZmllci5zdWJzY3JpYmUoKCkgPT4ge1xyXG4gICAgICB0aGlzLmNoYW5nZUNvbnRleHRyZXNwb25kKClcclxuICAgIH0pXHJcbiAgfVxyXG4gIGxvYWRlZFJlc3BvbmQoY29udGVudFdpbmRvdzogYW55LCBhcHBsaWNhdGlvbk5hbWU6IHN0cmluZywgaWQ/OiBzdHJpbmcpIHtcclxuICAgIGlmIChpZCAmJiB0aGlzLmFjdGl2YXRlZFJvdXRlLnNuYXBzaG90LnF1ZXJ5UGFyYW1zLnZpZXdNb2RlICYmIHRoaXMuYWN0aXZhdGVkUm91dGUuc25hcHNob3QucXVlcnlQYXJhbXMudmlld01vZGUgPT09ICdSRVNVTUUnKSB7XHJcbiAgICAgIHRoaXMuY29udGludWVMZWFybmluZ0RhdGEgPSBudWxsXHJcbiAgICAgIHRoaXMuY29udGVudFN2Yy5mZXRjaENvbnRlbnRIaXN0b3J5KGlkKS5zdWJzY3JpYmUoXHJcbiAgICAgICAgZGF0YSA9PiB7XHJcbiAgICAgICAgICB0aGlzLmNvbnRpbnVlTGVhcm5pbmdEYXRhID0gZGF0YS5jb250aW51ZURhdGFcclxuICAgICAgICAgIGlmICh0aGlzLmNvbmZpZ1N2YyAmJiB0aGlzLmNvbmZpZ1N2Yy51c2VyUHJvZmlsZSkge1xyXG4gICAgICAgICAgICBjb25zdCBmaXJzdE5hbWUgPSB0aGlzLmNvbmZpZ1N2Yy51c2VyUHJvZmlsZS51c2VyTmFtZSA/XHJcbiAgICAgICAgICAgICAgdGhpcy5jb25maWdTdmMudXNlclByb2ZpbGUudXNlck5hbWUuc3BsaXQoJyAnLCAyKVswXSA6ICcnXHJcbiAgICAgICAgICAgIGNvbnN0IGxhc3ROYW1lID0gdGhpcy5jb25maWdTdmMudXNlclByb2ZpbGUudXNlck5hbWUgP1xyXG4gICAgICAgICAgICAgIHRoaXMuY29uZmlnU3ZjLnVzZXJQcm9maWxlLnVzZXJOYW1lLnNwbGl0KCcgJywgMilbMV0gOiAnJ1xyXG4gICAgICAgICAgICBjb25zdCB2aWV3TW9kZTogc3RyaW5nID0gdGhpcy5hY3RpdmF0ZWRSb3V0ZS5zbmFwc2hvdC5xdWVyeVBhcmFtcy52aWV3TW9kZSA/XHJcbiAgICAgICAgICAgICAgdGhpcy5hY3RpdmF0ZWRSb3V0ZS5zbmFwc2hvdC5xdWVyeVBhcmFtcy52aWV3TW9kZSA6ICcnXHJcbiAgICAgICAgICAgIGNvbnN0IHRva2VuID0gdGhpcy5rZXlDbG9ha1N2Yy50b2tlblxyXG4gICAgICAgICAgICBjb25zdCByZXNwb25zZSA9IHtcclxuICAgICAgICAgICAgICBzdWJBcHBsaWNhdGlvbk5hbWU6IGFwcGxpY2F0aW9uTmFtZSxcclxuICAgICAgICAgICAgICByZXF1ZXN0SWQ6ICdMT0FERUQnLFxyXG4gICAgICAgICAgICAgIHBhcmVudENvbnRleHQ6IHtcclxuICAgICAgICAgICAgICAgIGRvbWFpbk5hbWU6IHdpbmRvdy5sb2NhdGlvbi5ob3N0LFxyXG4gICAgICAgICAgICAgICAgdXJsOiB0aGlzLnJvdXRlci51cmwsXHJcbiAgICAgICAgICAgICAgICByb290T3JnOiB0aGlzLmNvbmZpZ1N2Yy5yb290T3JnLFxyXG4gICAgICAgICAgICAgICAgdGhlbWU6IHRoaXMuY29uZmlnU3ZjLmFjdGl2ZVRoZW1lT2JqZWN0ID8ge1xyXG4gICAgICAgICAgICAgICAgICBuYW1lOiB0aGlzLmNvbmZpZ1N2Yy5hY3RpdmVUaGVtZU9iamVjdC50aGVtZU5hbWUsXHJcbiAgICAgICAgICAgICAgICAgIC4uLnRoaXMuY29uZmlnU3ZjLmFjdGl2ZVRoZW1lT2JqZWN0LmNvbG9yLFxyXG4gICAgICAgICAgICAgICAgfSA6ICcnLFxyXG4gICAgICAgICAgICAgICAgZm9udFNpemU6IHRoaXMuY29uZmlnU3ZjLmFjdGl2ZUZvbnRPYmplY3QgPyB0aGlzLmNvbmZpZ1N2Yy5hY3RpdmVGb250T2JqZWN0LmJhc2VGb250U2l6ZSA6ICcxNHB4JyxcclxuICAgICAgICAgICAgICAgIGxvY2FsZTogKHRoaXMuY29uZmlnU3ZjLnVzZXJQcmVmZXJlbmNlICYmIHRoaXMuY29uZmlnU3ZjLnVzZXJQcmVmZXJlbmNlLnNlbGVjdGVkTG9jYWxlKSB8fCAnZW4nLFxyXG4gICAgICAgICAgICAgICAgZGFya01vZGU6IHRoaXMuY29uZmlnU3ZjLmlzRGFya01vZGUsXHJcbiAgICAgICAgICAgICAgICBzdWJBcHBsaWNhdGlvblN0YXJ0TW9kZTogdmlld01vZGUudG9VcHBlckNhc2UoKSxcclxuICAgICAgICAgICAgICAgIHVzZXI6IHtcclxuICAgICAgICAgICAgICAgICAgZmlyc3ROYW1lLFxyXG4gICAgICAgICAgICAgICAgICBsYXN0TmFtZSxcclxuICAgICAgICAgICAgICAgICAgdG9rZW4sXHJcbiAgICAgICAgICAgICAgICAgIHVzZXJJZDogdGhpcy5jb25maWdTdmMudXNlclByb2ZpbGUudXNlcklkID8gdGhpcy5jb25maWdTdmMudXNlclByb2ZpbGUudXNlcklkIDogJycsXHJcbiAgICAgICAgICAgICAgICAgIHJvbGVzOiB0aGlzLmNvbmZpZ1N2Yy51c2VyUm9sZXMgPyBBcnJheS5mcm9tKHRoaXMuY29uZmlnU3ZjLnVzZXJSb2xlcykgOiBbXSxcclxuICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICBoZWFydGJlYXRGcmVxdWVuY3k6ICcyMDAnLFxyXG4gICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgZGF0YTogdGhpcy5jb250aW51ZUxlYXJuaW5nRGF0YS5kYXRhID8ge1xyXG4gICAgICAgICAgICAgICAgY29udGludWVMZWFybmluZzogdGhpcy5jb250aW51ZUxlYXJuaW5nRGF0YS5kYXRhLFxyXG4gICAgICAgICAgICAgIH0gOiBudWxsLFxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGNvbnRlbnRXaW5kb3cucG9zdE1lc3NhZ2UocmVzcG9uc2UsICcqJylcclxuICAgICAgICAgICAgdGhpcy5jb250ZW50V2luZG93aW5mbyA9IGNvbnRlbnRXaW5kb3dcclxuICAgICAgICAgICAgdGhpcy5sb2FkZWQgPSB0cnVlXHJcbiAgICAgICAgICAgIHRoaXMuc3ViQXBwbmFtZSA9IGFwcGxpY2F0aW9uTmFtZVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0pXHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBpZiAodGhpcy5jb25maWdTdmMgJiYgdGhpcy5jb25maWdTdmMudXNlclByb2ZpbGUpIHtcclxuICAgICAgICBjb25zdCBmaXJzdE5hbWUgPSB0aGlzLmNvbmZpZ1N2Yy51c2VyUHJvZmlsZS51c2VyTmFtZSA/XHJcbiAgICAgICAgICB0aGlzLmNvbmZpZ1N2Yy51c2VyUHJvZmlsZS51c2VyTmFtZS5zcGxpdCgnICcsIDIpWzBdIDogJydcclxuICAgICAgICBjb25zdCBsYXN0TmFtZSA9IHRoaXMuY29uZmlnU3ZjLnVzZXJQcm9maWxlLnVzZXJOYW1lID9cclxuICAgICAgICAgIHRoaXMuY29uZmlnU3ZjLnVzZXJQcm9maWxlLnVzZXJOYW1lLnNwbGl0KCcgJywgMilbMV0gOiAnJ1xyXG4gICAgICAgIGNvbnN0IHZpZXdNb2RlOiBzdHJpbmcgPSB0aGlzLmFjdGl2YXRlZFJvdXRlLnNuYXBzaG90LnF1ZXJ5UGFyYW1zLnZpZXdNb2RlID9cclxuICAgICAgICAgIHRoaXMuYWN0aXZhdGVkUm91dGUuc25hcHNob3QucXVlcnlQYXJhbXMudmlld01vZGUgOiAnJ1xyXG4gICAgICAgIGNvbnN0IHRva2VuID0gdGhpcy5rZXlDbG9ha1N2Yy50b2tlblxyXG4gICAgICAgIGNvbnN0IHJlc3BvbnNlID0ge1xyXG4gICAgICAgICAgc3ViQXBwbGljYXRpb25OYW1lOiBhcHBsaWNhdGlvbk5hbWUsXHJcbiAgICAgICAgICByZXF1ZXN0SWQ6ICdMT0FERUQnLFxyXG4gICAgICAgICAgcGFyZW50Q29udGV4dDoge1xyXG4gICAgICAgICAgICBkb21haW5OYW1lOiB3aW5kb3cubG9jYXRpb24uaG9zdCxcclxuICAgICAgICAgICAgdXJsOiB0aGlzLnJvdXRlci51cmwsXHJcbiAgICAgICAgICAgIHJvb3RPcmc6IHRoaXMuY29uZmlnU3ZjLnJvb3RPcmcsXHJcbiAgICAgICAgICAgIHRoZW1lOiB0aGlzLmNvbmZpZ1N2Yy5hY3RpdmVUaGVtZU9iamVjdCA/IHtcclxuICAgICAgICAgICAgICBuYW1lOiB0aGlzLmNvbmZpZ1N2Yy5hY3RpdmVUaGVtZU9iamVjdC50aGVtZU5hbWUsXHJcbiAgICAgICAgICAgICAgLi4udGhpcy5jb25maWdTdmMuYWN0aXZlVGhlbWVPYmplY3QuY29sb3IsXHJcbiAgICAgICAgICAgIH0gOiAnJyxcclxuICAgICAgICAgICAgZm9udFNpemU6IHRoaXMuY29uZmlnU3ZjLmFjdGl2ZUZvbnRPYmplY3QgPyB0aGlzLmNvbmZpZ1N2Yy5hY3RpdmVGb250T2JqZWN0LmJhc2VGb250U2l6ZSA6ICcxNHB4JyxcclxuICAgICAgICAgICAgbG9jYWxlOiAodGhpcy5jb25maWdTdmMudXNlclByZWZlcmVuY2UgJiYgdGhpcy5jb25maWdTdmMudXNlclByZWZlcmVuY2Uuc2VsZWN0ZWRMb2NhbGUpIHx8ICdlbicsXHJcbiAgICAgICAgICAgIGRhcmtNb2RlOiB0aGlzLmNvbmZpZ1N2Yy5pc0RhcmtNb2RlLFxyXG4gICAgICAgICAgICBzdWJBcHBsaWNhdGlvblN0YXJ0TW9kZTogdmlld01vZGUudG9VcHBlckNhc2UoKSxcclxuICAgICAgICAgICAgdXNlcjoge1xyXG4gICAgICAgICAgICAgIGZpcnN0TmFtZSxcclxuICAgICAgICAgICAgICBsYXN0TmFtZSxcclxuICAgICAgICAgICAgICB0b2tlbixcclxuICAgICAgICAgICAgICB1c2VySWQ6IHRoaXMuY29uZmlnU3ZjLnVzZXJQcm9maWxlLnVzZXJJZCA/IHRoaXMuY29uZmlnU3ZjLnVzZXJQcm9maWxlLnVzZXJJZCA6ICcnLFxyXG4gICAgICAgICAgICAgIHJvbGVzOiB0aGlzLmNvbmZpZ1N2Yy51c2VyUm9sZXMgPyBBcnJheS5mcm9tKHRoaXMuY29uZmlnU3ZjLnVzZXJSb2xlcykgOiBbXSxcclxuICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgaGVhcnRiZWF0RnJlcXVlbmN5OiAnMjAwJyxcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgICBkYXRhOiBudWxsLFxyXG4gICAgICAgIH1cclxuICAgICAgICBjb250ZW50V2luZG93LnBvc3RNZXNzYWdlKHJlc3BvbnNlLCAnKicpXHJcbiAgICAgICAgdGhpcy5jb250ZW50V2luZG93aW5mbyA9IGNvbnRlbnRXaW5kb3dcclxuICAgICAgICB0aGlzLmxvYWRlZCA9IHRydWVcclxuICAgICAgICB0aGlzLnN1YkFwcG5hbWUgPSBhcHBsaWNhdGlvbk5hbWVcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICBjb250aW51ZUxlYXJuaW5nUmVzcG9uZChpZDogc3RyaW5nLCBjb250aW51ZUxlYXJuaW5nOiBhbnkpIHtcclxuICAgIHRoaXMuY29udGVudFN2Yy5zYXZlQ29udGludWVMZWFybmluZyhcclxuICAgICAge1xyXG4gICAgICAgIGNvbnRleHRQYXRoSWQ6IGlkLFxyXG4gICAgICAgIHJlc291cmNlSWQ6IGlkLFxyXG4gICAgICAgIGRhdGE6IEpTT04uc3RyaW5naWZ5KHsgdGltZXN0YW1wOiBEYXRlLm5vdygpLCBkYXRhOiBjb250aW51ZUxlYXJuaW5nIH0pLFxyXG4gICAgICAgIGRhdGVBY2Nlc3NlZDogRGF0ZS5ub3coKSxcclxuICAgICAgfSxcclxuICAgIClcclxuICAgICAgLnRvUHJvbWlzZSgpXHJcbiAgICAgIC5jYXRjaCgpXHJcbiAgfVxyXG4gIHRlbGVtZXRyeUV2ZW50cyh0RGF0YTogYW55KSB7XHJcbiAgICBpZiAodERhdGEpIHtcclxuICAgICAgc3dpdGNoICh0RGF0YS5ldmVudElkKSB7XHJcbiAgICAgICAgY2FzZSAnSU5URVJBQ1QnOlxyXG4gICAgICAgICAgdGhpcy5ldmVudFN2Yy5kaXNwYXRjaEV2ZW50PFdzRXZlbnRzLklXc0V2ZW50VGVsZW1ldHJ5SW50ZXJhY3Q+KHtcclxuICAgICAgICAgICAgZXZlbnRUeXBlOiBXc0V2ZW50cy5Xc0V2ZW50VHlwZS5UZWxlbWV0cnksXHJcbiAgICAgICAgICAgIGV2ZW50TG9nTGV2ZWw6IFdzRXZlbnRzLldzRXZlbnRMb2dMZXZlbC5XYXJuLFxyXG4gICAgICAgICAgICBkYXRhOiB7XHJcbiAgICAgICAgICAgICAgLi4udERhdGEuZGF0YSxcclxuICAgICAgICAgICAgICBldmVudFN1YlR5cGU6IFdzRXZlbnRzLkVudW1UZWxlbWV0cnlTdWJUeXBlLkludGVyYWN0LFxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICBmcm9tOiB0RGF0YS5zdWJBcHBsaWNhdGlvbk5hbWUsXHJcbiAgICAgICAgICAgIHRvOiAnVGVsZW1ldHJ5JyxcclxuICAgICAgICAgIH0pXHJcbiAgICAgICAgICBicmVha1xyXG4gICAgICAgIGNhc2UgJ0hFQVJUQkVBVCc6XHJcbiAgICAgICAgICB0aGlzLmV2ZW50U3ZjLmRpc3BhdGNoRXZlbnQ8V3NFdmVudHMuSVdzRXZlbnRUZWxlbWV0cnlIZWFydEJlYXQ+KHtcclxuICAgICAgICAgICAgZXZlbnRUeXBlOiBXc0V2ZW50cy5Xc0V2ZW50VHlwZS5UZWxlbWV0cnksXHJcbiAgICAgICAgICAgIGV2ZW50TG9nTGV2ZWw6IFdzRXZlbnRzLldzRXZlbnRMb2dMZXZlbC5UcmFjZSxcclxuICAgICAgICAgICAgZGF0YToge1xyXG4gICAgICAgICAgICAgIC4uLnREYXRhLmRhdGEsXHJcbiAgICAgICAgICAgICAgZXZlbnRTdWJUeXBlOiBXc0V2ZW50cy5FbnVtVGVsZW1ldHJ5U3ViVHlwZS5IZWFydEJlYXQsXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIGZyb206IHREYXRhLnN1YkFwcGxpY2F0aW9uTmFtZSxcclxuICAgICAgICAgICAgdG86ICdUZWxlbWV0cnknLFxyXG4gICAgICAgICAgfSlcclxuICAgICAgICAgIGJyZWFrXHJcbiAgICAgICAgY2FzZSAnSU1QUkVTU0lPTic6XHJcbiAgICAgICAgICB0aGlzLnRlbGVTdmMuZXh0ZXJuYWxJbXByZXNzaW9uKHREYXRhLmRhdGEpXHJcbiAgICAgICAgICBicmVha1xyXG4gICAgICAgIGRlZmF1bHQ6XHJcbiAgICAgICAgICBicmVha1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIHVuc3Vic2NyaWJlUmVzcG9uc2UoKSB7XHJcbiAgICB0aGlzLnN1YkFwcG5hbWUgPSAnJ1xyXG4gICAgdGhpcy5jb250aW51ZUxlYXJuaW5nRGF0YSA9IG51bGxcclxuICAgIHRoaXMuY29udGVudFdpbmRvd2luZm8gPSBudWxsXHJcbiAgICB0aGlzLmxvYWRlZCA9IGZhbHNlXHJcbiAgfVxyXG4gIGNoYW5nZUNvbnRleHRyZXNwb25kKCkge1xyXG4gICAgaWYgKHRoaXMubG9hZGVkICYmIHRoaXMuY29udGVudFdpbmRvd2luZm8gJiYgdGhpcy5jb25maWdTdmMgJiYgdGhpcy5jb25maWdTdmMudXNlclByb2ZpbGUgJiYgdGhpcy5zdWJBcHBuYW1lKSB7XHJcbiAgICAgIGNvbnN0IGZpcnN0TmFtZSA9IHRoaXMuY29uZmlnU3ZjLnVzZXJQcm9maWxlLnVzZXJOYW1lID9cclxuICAgICAgICB0aGlzLmNvbmZpZ1N2Yy51c2VyUHJvZmlsZS51c2VyTmFtZS5zcGxpdCgnICcsIDIpWzBdIDogJydcclxuICAgICAgY29uc3QgbGFzdE5hbWUgPSB0aGlzLmNvbmZpZ1N2Yy51c2VyUHJvZmlsZS51c2VyTmFtZSA/XHJcbiAgICAgICAgdGhpcy5jb25maWdTdmMudXNlclByb2ZpbGUudXNlck5hbWUuc3BsaXQoJyAnLCAyKVsxXSA6ICcnXHJcbiAgICAgIGNvbnN0IHZpZXdNb2RlOiBzdHJpbmcgPSB0aGlzLmFjdGl2YXRlZFJvdXRlLnNuYXBzaG90LnF1ZXJ5UGFyYW1zLnZpZXdNb2RlID9cclxuICAgICAgICB0aGlzLmFjdGl2YXRlZFJvdXRlLnNuYXBzaG90LnF1ZXJ5UGFyYW1zLnZpZXdNb2RlIDogJydcclxuICAgICAgY29uc3QgdG9rZW4gPSB0aGlzLmtleUNsb2FrU3ZjLnRva2VuXHJcbiAgICAgIGNvbnN0IHJlc3BvbnNlID0ge1xyXG4gICAgICAgIHN1YkFwcGxpY2F0aW9uTmFtZTogdGhpcy5zdWJBcHBuYW1lLFxyXG4gICAgICAgIHJlcXVlc3RJZDogJ0NPTlRFWFRfQ0hBTkdFJyxcclxuICAgICAgICBwYXJlbnRDb250ZXh0OiB7XHJcbiAgICAgICAgICBkb21haW5OYW1lOiB3aW5kb3cubG9jYXRpb24uaG9zdCxcclxuICAgICAgICAgIHVybDogdGhpcy5yb3V0ZXIudXJsLFxyXG4gICAgICAgICAgcm9vdE9yZzogdGhpcy5jb25maWdTdmMucm9vdE9yZyxcclxuICAgICAgICAgIHRoZW1lOiB0aGlzLmNvbmZpZ1N2Yy5hY3RpdmVUaGVtZU9iamVjdCA/IHtcclxuICAgICAgICAgICAgbmFtZTogdGhpcy5jb25maWdTdmMuYWN0aXZlVGhlbWVPYmplY3QudGhlbWVOYW1lLFxyXG4gICAgICAgICAgICAuLi50aGlzLmNvbmZpZ1N2Yy5hY3RpdmVUaGVtZU9iamVjdC5jb2xvcixcclxuICAgICAgICAgIH0gOiAnJyxcclxuICAgICAgICAgIGZvbnRTaXplOiB0aGlzLmNvbmZpZ1N2Yy5hY3RpdmVGb250T2JqZWN0ID8gdGhpcy5jb25maWdTdmMuYWN0aXZlRm9udE9iamVjdC5iYXNlRm9udFNpemUgOiAnMTRweCcsXHJcbiAgICAgICAgICBsb2NhbGU6ICh0aGlzLmNvbmZpZ1N2Yy51c2VyUHJlZmVyZW5jZSAmJiB0aGlzLmNvbmZpZ1N2Yy51c2VyUHJlZmVyZW5jZS5zZWxlY3RlZExvY2FsZSkgfHwgJ2VuJyxcclxuICAgICAgICAgIGRhcmtNb2RlOiB0aGlzLmNvbmZpZ1N2Yy5pc0RhcmtNb2RlLFxyXG4gICAgICAgICAgc3ViQXBwbGljYXRpb25TdGFydE1vZGU6IHZpZXdNb2RlLnRvVXBwZXJDYXNlKCksXHJcbiAgICAgICAgICB1c2VyOiB7XHJcbiAgICAgICAgICAgIGZpcnN0TmFtZSxcclxuICAgICAgICAgICAgbGFzdE5hbWUsXHJcbiAgICAgICAgICAgIHRva2VuLFxyXG4gICAgICAgICAgICB1c2VySWQ6IHRoaXMuY29uZmlnU3ZjLnVzZXJQcm9maWxlLnVzZXJJZCA/IHRoaXMuY29uZmlnU3ZjLnVzZXJQcm9maWxlLnVzZXJJZCA6ICcnLFxyXG4gICAgICAgICAgICByb2xlczogdGhpcy5jb25maWdTdmMudXNlclJvbGVzID8gQXJyYXkuZnJvbSh0aGlzLmNvbmZpZ1N2Yy51c2VyUm9sZXMpIDogW10sXHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgICAgaGVhcnRiZWF0RnJlcXVlbmN5OiAnMjAwJyxcclxuICAgICAgICB9LFxyXG4gICAgICB9XHJcbiAgICAgIHRoaXMuY29udGVudFdpbmRvd2luZm8ucG9zdE1lc3NhZ2UocmVzcG9uc2UsICcqJylcclxuICAgIH1cclxuICB9XHJcbn1cclxuIl19
|