@sunbird-cb/toc 0.0.8 → 0.0.9
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/esm2022/lib/_collection/_common/attendance-card/attendance-card.component.mjs +55 -55
- package/esm2022/lib/_collection/_common/attendance-card/attendance-card.module.mjs +126 -126
- package/esm2022/lib/_collection/_common/attendance-helper/attendance-helper.component.mjs +32 -32
- package/esm2022/lib/_collection/_common/attendance-helper/attendance-helper.module.mjs +85 -85
- package/esm2022/lib/_collection/_common/avatar-photo/avatar-photo.component.mjs +100 -100
- package/esm2022/lib/_collection/_common/avatar-photo/avatar-photo.module.mjs +48 -48
- package/esm2022/lib/_collection/_common/certificate-dialog/certificate-dialog.component.mjs +120 -120
- package/esm2022/lib/_collection/_common/certificate-dialog/certificate-dialog.module.mjs +92 -92
- package/esm2022/lib/_collection/_common/certificate-dialog/svg-to-pdf.component.mjs +48 -48
- package/esm2022/lib/_collection/_common/confirm-dialog/confirm-dialog.component.mjs +25 -25
- package/esm2022/lib/_collection/_common/confirm-dialog/confirm-dialog.module.mjs +41 -41
- package/esm2022/lib/_collection/_common/connection-hover-card/connection-hover-card.component.mjs +89 -89
- package/esm2022/lib/_collection/_common/connection-hover-card/connection-hover.module.mjs +42 -42
- package/esm2022/lib/_collection/_common/connection-hover-card/connection-hover.servive.mjs +41 -41
- package/esm2022/lib/_collection/_common/connection-name/connection-name.component.mjs +78 -78
- package/esm2022/lib/_collection/_common/connection-name/connection-name.module.mjs +45 -45
- package/esm2022/lib/_collection/_common/connection-name/profile-v2.model.mjs +2 -2
- package/esm2022/lib/_collection/_common/content-progress/content-progress.component.mjs +70 -70
- package/esm2022/lib/_collection/_common/content-progress/content-progress.module.mjs +28 -28
- package/esm2022/lib/_collection/_common/content-rating-v2-dialog/content-rating-v2-dialog.component.mjs +187 -187
- package/esm2022/lib/_collection/_common/content-rating-v2-dialog/content-rating-v2-dialog.module.mjs +86 -86
- package/esm2022/lib/_collection/_common/content-toc/ai-tutor-confirm-popup/ai-tutor-confirm-popup.component.mjs +31 -31
- package/esm2022/lib/_collection/_common/content-toc/app-toc-about/app-toc-about.component.mjs +941 -941
- package/esm2022/lib/_collection/_common/content-toc/app-toc-assignment-viewer/app-toc-assignment-viewer.component.mjs +183 -183
- package/esm2022/lib/_collection/_common/content-toc/app-toc-assignment-viewerV2/app-toc-assignment-viewerV2.component.mjs +327 -327
- package/esm2022/lib/_collection/_common/content-toc/app-toc-batch-assignments/app-toc-batch-assignments.component.mjs +297 -297
- package/esm2022/lib/_collection/_common/content-toc/app-toc-content/app-toc-content.component.mjs +248 -225
- package/esm2022/lib/_collection/_common/content-toc/app-toc-content-card-v2/app-toc-content-card-v2.component.mjs +1148 -1030
- package/esm2022/lib/_collection/_common/content-toc/app-toc-content-card-v2-skeleton/app-toc-content-card-v2-skeleton.component.mjs +16 -16
- package/esm2022/lib/_collection/_common/content-toc/app-toc-reference-notes/app-toc-reference-notes.component.mjs +43 -43
- package/esm2022/lib/_collection/_common/content-toc/app-toc-session-card-new/app-toc-session-card-new.component.mjs +133 -133
- package/esm2022/lib/_collection/_common/content-toc/app-toc-sessions-new/app-toc-sessions-new.component.mjs +66 -66
- package/esm2022/lib/_collection/_common/content-toc/app-toc-teachers-notes/app-toc-teachers-notes.component.mjs +278 -278
- package/esm2022/lib/_collection/_common/content-toc/content-services/handle-claim.service.mjs +21 -21
- package/esm2022/lib/_collection/_common/content-toc/content-services/review-component-data.service.mjs +21 -21
- package/esm2022/lib/_collection/_common/content-toc/content-toc.component.mjs +847 -847
- package/esm2022/lib/_collection/_common/content-toc/content-toc.module.mjs +219 -219
- package/esm2022/lib/_collection/_common/content-toc/karma-points/karma-points.component.mjs +209 -209
- package/esm2022/lib/_collection/_common/content-toc/karma-points/karma-points.module.mjs +26 -26
- package/esm2022/lib/_collection/_common/content-toc/pipes/replace-nbsp.pipe.mjs +19 -19
- package/esm2022/lib/_collection/_common/content-toc/pipes/truncate.pipe.mjs +23 -23
- package/esm2022/lib/_collection/_common/content-toc/reviews-content/reviews-content.component.mjs +113 -113
- package/esm2022/lib/_collection/_common/content-toc/samuhik-charcha-content/samuhik-charcha-content/samuhik-charcha-content.component.mjs +110 -110
- package/esm2022/lib/_collection/_common/display-content-type/display-content-type.component.mjs +26 -26
- package/esm2022/lib/_collection/_common/display-content-type/display-content-type.module.mjs +19 -19
- package/esm2022/lib/_collection/_common/display-content-type-icon/display-content-type-icon.component.mjs +67 -67
- package/esm2022/lib/_collection/_common/display-content-type-icon/display-content-type-icon.module.mjs +28 -28
- package/esm2022/lib/_collection/_common/mark-as-complete/mark-as-complete.component.mjs +77 -77
- package/esm2022/lib/_collection/_common/mark-as-complete/mark-as-complete.model.mjs +2 -2
- package/esm2022/lib/_collection/_common/mark-as-complete/mark-as-complete.module.mjs +61 -61
- package/esm2022/lib/_collection/_common/pipe-content-route/pipe-content-route.module.mjs +20 -20
- package/esm2022/lib/_collection/_common/pipe-content-route/pipe-content-route.pipe.mjs +67 -67
- package/esm2022/lib/_collection/_common/player-brief/player-brief.component.mjs +139 -139
- package/esm2022/lib/_collection/_common/player-brief/player-brief.module.mjs +71 -71
- package/esm2022/lib/_collection/_common/rating-summary/rating-summary.component.mjs +34 -34
- package/esm2022/lib/_collection/_common/rating-summary/rating-summary.module.mjs +56 -56
- package/esm2022/lib/_collection/_common/skeleton-loader/skeleton-loader.component.mjs +25 -25
- package/esm2022/lib/_collection/_common/skeleton-loader/skeleton-loader.module.mjs +37 -37
- package/esm2022/lib/_collection/_common/tips-for-learner/tips-for-learner-card/tips-for-learner-card.component.mjs +32 -32
- package/esm2022/lib/_collection/_common/tips-for-learner/tips-for-learner.module.mjs +30 -30
- package/esm2022/lib/_collection/_common/toc-kpi-values/toc-kpi-values.component.mjs +38 -38
- package/esm2022/lib/_collection/_common/toc-kpi-values/toc-kpi-values.module.mjs +51 -51
- package/esm2022/lib/_collection/_common/user-autocomplete/user-autocomplete.component.mjs +115 -115
- package/esm2022/lib/_collection/_common/user-autocomplete/user-autocomplete.model.mjs +12 -12
- package/esm2022/lib/_collection/_common/user-autocomplete/user-autocomplete.module.mjs +51 -51
- package/esm2022/lib/_collection/_common/user-autocomplete/user-autocomplete.service.mjs +61 -61
- package/esm2022/lib/_collection/_common/user-content-rating/user-content-rating.component.mjs +87 -87
- package/esm2022/lib/_collection/_common/user-content-rating/user-content-rating.module.mjs +36 -36
- package/esm2022/lib/_collection/_common/user-image/user-image.component.mjs +62 -62
- package/esm2022/lib/_collection/_common/user-image/user-image.module.mjs +24 -24
- package/esm2022/lib/_collection/btn-page-back/btn-page-back.component.mjs +192 -192
- package/esm2022/lib/_collection/btn-page-back/btn-page-back.module.mjs +44 -44
- package/esm2022/lib/_collection/btn-page-back/btn-page-back.service.mjs +99 -99
- package/esm2022/lib/_collection/card-rating-comment/card-rating-comment.component.mjs +58 -58
- package/esm2022/lib/_collection/card-rating-comment/card-rating-comment.module.mjs +67 -67
- package/esm2022/lib/_collection/sliders-dynamic/sliders-dynamic.component.mjs +112 -112
- package/esm2022/lib/_collection/sliders-dynamic/sliders-dynamic.model.mjs +2 -2
- package/esm2022/lib/_collection/sliders-dynamic/sliders-dynamic.module.mjs +69 -69
- package/esm2022/lib/_collection-api.mjs +57 -57
- package/esm2022/lib/_constants/widget-content.constants.mjs +19 -19
- package/esm2022/lib/_directives/tooltip.directive.mjs +68 -68
- package/esm2022/lib/_models/common.model.mjs +2 -2
- package/esm2022/lib/_models/error.model.mjs +2 -2
- package/esm2022/lib/_pipes/highlight.pipe.mjs +24 -24
- package/esm2022/lib/_services/rating.service.mjs +89 -89
- package/esm2022/lib/_services/samuhik-charcha.service.mjs +29 -29
- package/esm2022/lib/_services/viewer-route-util.mjs +103 -103
- package/esm2022/lib/_services/widget-content.model.mjs +247 -247
- package/esm2022/lib/_services/widget-content.service.mjs +594 -594
- package/esm2022/lib/_shared/translate-loader.factory.mjs +9 -9
- package/esm2022/lib/app-toc-lib.module.mjs +499 -499
- package/esm2022/lib/collection.config.mjs +161 -161
- package/esm2022/lib/components/app-toc-analytics-tiles/app-toc-analytics-tiles.component.mjs +37 -37
- package/esm2022/lib/components/app-toc-banner/app-toc-banner.component.mjs +1436 -1436
- package/esm2022/lib/components/app-toc-cios-home/app-toc-cios-home.component.mjs +475 -475
- package/esm2022/lib/components/app-toc-cios-home/consent-dialog.component.mjs +119 -119
- package/esm2022/lib/components/app-toc-cohorts/app-toc-cohorts.component.mjs +80 -80
- package/esm2022/lib/components/app-toc-content-card/app-toc-content-card.component.mjs +249 -249
- package/esm2022/lib/components/app-toc-dialog-intro-video/app-toc-dialog-intro-video.component.mjs +39 -39
- package/esm2022/lib/components/app-toc-discussion/app-toc-discussion.component.mjs +58 -58
- package/esm2022/lib/components/app-toc-home/app-toc-home.component.mjs +2229 -2229
- package/esm2022/lib/components/app-toc-home-v2/app-toc-home-v2.component.mjs +2907 -2905
- package/esm2022/lib/components/app-toc-overview/app-toc-overview.component.mjs +157 -157
- package/esm2022/lib/components/app-toc-session-card/app-toc-session-card.component.mjs +48 -48
- package/esm2022/lib/components/app-toc-sessions/app-toc-sessions.component.mjs +47 -47
- package/esm2022/lib/components/app-toc-single-page/app-toc-single-page.component.mjs +766 -766
- package/esm2022/lib/components/completion-survey-form/completion-survey-form.component.mjs +243 -243
- package/esm2022/lib/components/create-batch-dialog/create-batch-dialog.component.mjs +116 -116
- package/esm2022/lib/components/enroll-language-dialogue/enroll-language-dialogue.component.mjs +44 -44
- package/esm2022/lib/components/enroll-profile-form/enroll-profile-form.component.mjs +1838 -1838
- package/esm2022/lib/components/enroll-questionnaire/enroll-questionnaire.component.mjs +236 -236
- package/esm2022/lib/components/knowledge-artifact-details/knowledge-artifact-details.component.mjs +213 -213
- package/esm2022/lib/components/non-relevent-feedback-dialog/non-relevent-feedback-dialog.component.mjs +36 -36
- package/esm2022/lib/components/public-survey-form/public-survey-form.component.mjs +256 -256
- package/esm2022/lib/components/survey-form-question/survey-form-question.component.mjs +133 -133
- package/esm2022/lib/components/survey-form-section/survey-form-section.component.mjs +36 -36
- package/esm2022/lib/models/app-toc-analytics.model.mjs +2 -2
- package/esm2022/lib/models/app-toc.model.mjs +38 -38
- package/esm2022/lib/models/auto-complete.model.mjs +2 -2
- package/esm2022/lib/models/card-content.model.mjs +13 -13
- package/esm2022/lib/models/content-strip-with-tabs.model.mjs +2 -2
- package/esm2022/lib/models/discussion-forum.model.mjs +14 -14
- package/esm2022/lib/models/goal.model.mjs +2 -2
- package/esm2022/lib/models/meta-tag.model.mjs +8 -8
- package/esm2022/lib/models/playlist.model.mjs +2 -2
- package/esm2022/lib/models/profile-revamp.model.mjs +2 -2
- package/esm2022/lib/models/rating.model.mjs +2 -2
- package/esm2022/lib/models/user-profile.model.mjs +21 -21
- package/esm2022/lib/resolvers/app-toc-cios-resolver.service.mjs +24 -24
- package/esm2022/lib/resolvers/app-toc-cios-user-enroll-resolver.service.mjs +24 -24
- package/esm2022/lib/resolvers/app-toc-content-read-resolver.service.mjs +60 -60
- package/esm2022/lib/resolvers/app-toc-ext-public-resolver.service.mjs +25 -25
- package/esm2022/lib/resolvers/app-toc-resolver.service.mjs +106 -106
- package/esm2022/lib/resolvers/config-resolver.service.mjs +25 -25
- package/esm2022/lib/resolvers/profile-resolver.service.mjs +25 -25
- package/esm2022/lib/resolvers/restricted-features-resolver.service.mjs +25 -25
- package/esm2022/lib/routes/app-toc-home/app-toc-home.component.mjs +51 -51
- package/esm2022/lib/routes/app-toc-home/app-toc-home.directive.mjs +16 -16
- package/esm2022/lib/routes/app-toc-home/app-toc-home.service.mjs +18 -18
- package/esm2022/lib/services/access-control.service.mjs +56 -56
- package/esm2022/lib/services/action.service.mjs +23 -23
- package/esm2022/lib/services/app-toc-v2.service.mjs +313 -243
- package/esm2022/lib/services/app-toc.service.mjs +1613 -1387
- package/esm2022/lib/services/certificate.service.mjs +69 -69
- package/esm2022/lib/services/discuss-utils.service.mjs +58 -58
- package/esm2022/lib/services/editor.service.mjs +34 -34
- package/esm2022/lib/services/load-check.service.mjs +21 -21
- package/esm2022/lib/services/loader.service.mjs +33 -33
- package/esm2022/lib/services/mobile-apps.service.mjs +67 -67
- package/esm2022/lib/services/netcore.service.mjs +56 -56
- package/esm2022/lib/services/nps-grid.service.mjs +31 -31
- package/esm2022/lib/services/otp.service.mjs +43 -43
- package/esm2022/lib/services/profile-v2.service.mjs +43 -43
- package/esm2022/lib/services/reset-ratings.service.mjs +19 -19
- package/esm2022/lib/services/resource-download-helper.service.mjs +64 -64
- package/esm2022/lib/services/timer.service.mjs +23 -23
- package/esm2022/lib/services/title-tag.service.mjs +71 -71
- package/esm2022/lib/services/user-profile.service.mjs +55 -55
- package/esm2022/lib/services/viewer-data.service.mjs +64 -64
- package/esm2022/lib/services/viewer-util.service.mjs +590 -590
- package/esm2022/lib/share-toc/share-toc/share-toc.component.mjs +291 -291
- package/esm2022/lib/share-toc/share-toc.module.mjs +119 -119
- package/esm2022/public-api.mjs +71 -71
- package/esm2022/sunbird-cb-toc.mjs +4 -4
- package/fesm2022/sunbird-cb-toc.mjs +24776 -24339
- package/fesm2022/sunbird-cb-toc.mjs.map +1 -1
- package/index.d.ts +5 -6
- package/lib/_collection/_common/attendance-card/attendance-card.component.d.ts +16 -17
- package/lib/_collection/_common/attendance-card/attendance-card.module.d.ts +31 -32
- package/lib/_collection/_common/attendance-helper/attendance-helper.component.d.ts +15 -16
- package/lib/_collection/_common/attendance-helper/attendance-helper.module.d.ts +20 -21
- package/lib/_collection/_common/avatar-photo/avatar-photo.component.d.ts +22 -23
- package/lib/_collection/_common/avatar-photo/avatar-photo.module.d.ts +15 -16
- package/lib/_collection/_common/certificate-dialog/certificate-dialog.component.d.ts +22 -23
- package/lib/_collection/_common/certificate-dialog/certificate-dialog.module.d.ts +22 -23
- package/lib/_collection/_common/certificate-dialog/svg-to-pdf.component.d.ts +9 -10
- package/lib/_collection/_common/confirm-dialog/confirm-dialog.component.d.ts +11 -12
- package/lib/_collection/_common/confirm-dialog/confirm-dialog.module.d.ts +12 -13
- package/lib/_collection/_common/connection-hover-card/connection-hover-card.component.d.ts +18 -19
- package/lib/_collection/_common/connection-hover-card/connection-hover.module.d.ts +14 -15
- package/lib/_collection/_common/connection-hover-card/connection-hover.servive.d.ts +11 -12
- package/lib/_collection/_common/connection-name/connection-name.component.d.ts +17 -18
- package/lib/_collection/_common/connection-name/connection-name.module.d.ts +14 -15
- package/lib/_collection/_common/connection-name/profile-v2.model.d.ts +199 -200
- package/lib/_collection/_common/content-progress/content-progress.component.d.ts +16 -17
- package/lib/_collection/_common/content-progress/content-progress.module.d.ts +10 -11
- package/lib/_collection/_common/content-rating-v2-dialog/content-rating-v2-dialog.component.d.ts +38 -39
- package/lib/_collection/_common/content-rating-v2-dialog/content-rating-v2-dialog.module.d.ts +19 -20
- package/lib/_collection/_common/content-toc/ai-tutor-confirm-popup/ai-tutor-confirm-popup.component.d.ts +11 -12
- package/lib/_collection/_common/content-toc/app-toc-about/app-toc-about.component.d.ts +183 -184
- package/lib/_collection/_common/content-toc/app-toc-assignment-viewer/app-toc-assignment-viewer.component.d.ts +41 -42
- package/lib/_collection/_common/content-toc/app-toc-assignment-viewerV2/app-toc-assignment-viewerV2.component.d.ts +54 -55
- package/lib/_collection/_common/content-toc/app-toc-batch-assignments/app-toc-batch-assignments.component.d.ts +47 -48
- package/lib/_collection/_common/content-toc/app-toc-content/app-toc-content.component.d.ts +49 -49
- package/lib/_collection/_common/content-toc/app-toc-content-card-v2/app-toc-content-card-v2.component.d.ts +171 -155
- package/lib/_collection/_common/content-toc/app-toc-content-card-v2-skeleton/app-toc-content-card-v2-skeleton.component.d.ts +8 -9
- package/lib/_collection/_common/content-toc/app-toc-reference-notes/app-toc-reference-notes.component.d.ts +16 -17
- package/lib/_collection/_common/content-toc/app-toc-session-card-new/app-toc-session-card-new.component.d.ts +40 -41
- package/lib/_collection/_common/content-toc/app-toc-sessions-new/app-toc-sessions-new.component.d.ts +21 -22
- package/lib/_collection/_common/content-toc/app-toc-teachers-notes/app-toc-teachers-notes.component.d.ts +45 -46
- package/lib/_collection/_common/content-toc/content-services/handle-claim.service.d.ts +10 -11
- package/lib/_collection/_common/content-toc/content-services/review-component-data.service.d.ts +10 -11
- package/lib/_collection/_common/content-toc/content-toc.component.d.ts +128 -129
- package/lib/_collection/_common/content-toc/content-toc.module.d.ts +51 -52
- package/lib/_collection/_common/content-toc/karma-points/karma-points.component.d.ts +29 -30
- package/lib/_collection/_common/content-toc/karma-points/karma-points.module.d.ts +9 -10
- package/lib/_collection/_common/content-toc/pipes/replace-nbsp.pipe.d.ts +7 -8
- package/lib/_collection/_common/content-toc/pipes/truncate.pipe.d.ts +7 -8
- package/lib/_collection/_common/content-toc/reviews-content/reviews-content.component.d.ts +28 -29
- package/lib/_collection/_common/content-toc/samuhik-charcha-content/samuhik-charcha-content/samuhik-charcha-content.component.d.ts +24 -25
- package/lib/_collection/_common/display-content-type/display-content-type.component.d.ts +14 -15
- package/lib/_collection/_common/display-content-type/display-content-type.module.d.ts +9 -10
- package/lib/_collection/_common/display-content-type-icon/display-content-type-icon.component.d.ts +12 -13
- package/lib/_collection/_common/display-content-type-icon/display-content-type-icon.module.d.ts +10 -11
- package/lib/_collection/_common/mark-as-complete/mark-as-complete.component.d.ts +22 -23
- package/lib/_collection/_common/mark-as-complete/mark-as-complete.model.d.ts +8 -9
- package/lib/_collection/_common/mark-as-complete/mark-as-complete.module.d.ts +18 -19
- package/lib/_collection/_common/pipe-content-route/pipe-content-route.module.d.ts +8 -9
- package/lib/_collection/_common/pipe-content-route/pipe-content-route.pipe.d.ts +15 -16
- package/lib/_collection/_common/player-brief/player-brief.component.d.ts +35 -36
- package/lib/_collection/_common/player-brief/player-brief.module.d.ts +19 -20
- package/lib/_collection/_common/rating-summary/rating-summary.component.d.ts +14 -15
- package/lib/_collection/_common/rating-summary/rating-summary.module.d.ts +13 -14
- package/lib/_collection/_common/skeleton-loader/skeleton-loader.component.d.ts +11 -12
- package/lib/_collection/_common/skeleton-loader/skeleton-loader.module.d.ts +11 -12
- package/lib/_collection/_common/tips-for-learner/tips-for-learner-card/tips-for-learner-card.component.d.ts +15 -16
- package/lib/_collection/_common/tips-for-learner/tips-for-learner.module.d.ts +10 -11
- package/lib/_collection/_common/toc-kpi-values/toc-kpi-values.component.d.ts +16 -17
- package/lib/_collection/_common/toc-kpi-values/toc-kpi-values.module.d.ts +11 -12
- package/lib/_collection/_common/user-autocomplete/user-autocomplete.component.d.ts +34 -35
- package/lib/_collection/_common/user-autocomplete/user-autocomplete.model.d.ts +17 -18
- package/lib/_collection/_common/user-autocomplete/user-autocomplete.module.d.ts +15 -16
- package/lib/_collection/_common/user-autocomplete/user-autocomplete.service.d.ts +15 -16
- package/lib/_collection/_common/user-content-rating/user-content-rating.component.d.ts +21 -22
- package/lib/_collection/_common/user-content-rating/user-content-rating.module.d.ts +12 -13
- package/lib/_collection/_common/user-image/user-image.component.d.ts +21 -22
- package/lib/_collection/_common/user-image/user-image.module.d.ts +9 -10
- package/lib/_collection/btn-page-back/btn-page-back.component.d.ts +47 -48
- package/lib/_collection/btn-page-back/btn-page-back.module.d.ts +14 -15
- package/lib/_collection/btn-page-back/btn-page-back.service.d.ts +22 -23
- package/lib/_collection/card-rating-comment/card-rating-comment.component.d.ts +19 -20
- package/lib/_collection/card-rating-comment/card-rating-comment.module.d.ts +15 -16
- package/lib/_collection/sliders-dynamic/sliders-dynamic.component.d.ts +25 -26
- package/lib/_collection/sliders-dynamic/sliders-dynamic.model.d.ts +21 -22
- package/lib/_collection/sliders-dynamic/sliders-dynamic.module.d.ts +18 -19
- package/lib/_collection-api.d.ts +34 -35
- package/lib/_constants/widget-content.constants.d.ts +7 -8
- package/lib/_directives/tooltip.directive.d.ts +17 -18
- package/lib/_models/common.model.d.ts +3 -4
- package/lib/_models/error.model.d.ts +5 -6
- package/lib/_pipes/highlight.pipe.d.ts +10 -11
- package/lib/_services/rating.service.d.ts +18 -19
- package/lib/_services/samuhik-charcha.service.d.ts +13 -14
- package/lib/_services/viewer-route-util.d.ts +8 -9
- package/lib/_services/widget-content.model.d.ts +515 -516
- package/lib/_services/widget-content.service.d.ts +101 -102
- package/lib/_shared/translate-loader.factory.d.ts +7 -8
- package/lib/app-toc-lib.module.d.ts +88 -89
- package/lib/collection.config.d.ts +159 -160
- package/lib/components/app-toc-analytics-tiles/app-toc-analytics-tiles.component.d.ts +17 -18
- package/lib/components/app-toc-banner/app-toc-banner.component.d.ts +225 -226
- package/lib/components/app-toc-cios-home/app-toc-cios-home.component.d.ts +78 -79
- package/lib/components/app-toc-cios-home/consent-dialog.component.d.ts +22 -23
- package/lib/components/app-toc-cohorts/app-toc-cohorts.component.d.ts +31 -32
- package/lib/components/app-toc-content-card/app-toc-content-card.component.d.ts +47 -48
- package/lib/components/app-toc-dialog-intro-video/app-toc-dialog-intro-video.component.d.ts +14 -15
- package/lib/components/app-toc-discussion/app-toc-discussion.component.d.ts +21 -22
- package/lib/components/app-toc-home/app-toc-home.component.d.ts +314 -315
- package/lib/components/app-toc-home-v2/app-toc-home-v2.component.d.ts +408 -409
- package/lib/components/app-toc-overview/app-toc-overview.component.d.ts +47 -48
- package/lib/components/app-toc-session-card/app-toc-session-card.component.d.ts +22 -23
- package/lib/components/app-toc-sessions/app-toc-sessions.component.d.ts +14 -15
- package/lib/components/app-toc-single-page/app-toc-single-page.component.d.ts +149 -150
- package/lib/components/completion-survey-form/completion-survey-form.component.d.ts +42 -43
- package/lib/components/create-batch-dialog/create-batch-dialog.component.d.ts +27 -28
- package/lib/components/enroll-language-dialogue/enroll-language-dialogue.component.d.ts +15 -16
- package/lib/components/enroll-profile-form/enroll-profile-form.component.d.ts +195 -196
- package/lib/components/enroll-questionnaire/enroll-questionnaire.component.d.ts +44 -45
- package/lib/components/knowledge-artifact-details/knowledge-artifact-details.component.d.ts +54 -55
- package/lib/components/non-relevent-feedback-dialog/non-relevent-feedback-dialog.component.d.ts +18 -19
- package/lib/components/public-survey-form/public-survey-form.component.d.ts +43 -44
- package/lib/components/survey-form-question/survey-form-question.component.d.ts +20 -21
- package/lib/components/survey-form-section/survey-form-section.component.d.ts +13 -14
- package/lib/models/app-toc-analytics.model.d.ts +152 -153
- package/lib/models/app-toc.model.d.ts +84 -85
- package/lib/models/auto-complete.model.d.ts +27 -28
- package/lib/models/card-content.model.d.ts +19 -20
- package/lib/models/content-strip-with-tabs.model.d.ts +44 -45
- package/lib/models/discussion-forum.model.d.ts +40 -41
- package/lib/models/goal.model.d.ts +22 -23
- package/lib/models/meta-tag.model.d.ts +6 -7
- package/lib/models/playlist.model.d.ts +23 -24
- package/lib/models/profile-revamp.model.d.ts +14 -15
- package/lib/models/rating.model.d.ts +17 -18
- package/lib/models/user-profile.model.d.ts +37 -38
- package/lib/resolvers/app-toc-cios-resolver.service.d.ts +12 -13
- package/lib/resolvers/app-toc-cios-user-enroll-resolver.service.d.ts +12 -13
- package/lib/resolvers/app-toc-content-read-resolver.service.d.ts +16 -17
- package/lib/resolvers/app-toc-ext-public-resolver.service.d.ts +12 -13
- package/lib/resolvers/app-toc-resolver.service.d.ts +16 -17
- package/lib/resolvers/config-resolver.service.d.ts +11 -12
- package/lib/resolvers/profile-resolver.service.d.ts +11 -12
- package/lib/resolvers/restricted-features-resolver.service.d.ts +11 -12
- package/lib/routes/app-toc-home/app-toc-home.component.d.ts +19 -20
- package/lib/routes/app-toc-home/app-toc-home.directive.d.ts +8 -9
- package/lib/routes/app-toc-home/app-toc-home.service.d.ts +8 -9
- package/lib/services/access-control.service.d.ts +29 -30
- package/lib/services/action.service.d.ts +9 -10
- package/lib/services/app-toc-v2.service.d.ts +16 -15
- package/lib/services/app-toc.service.d.ts +235 -178
- package/lib/services/certificate.service.d.ts +42 -43
- package/lib/services/discuss-utils.service.d.ts +33 -34
- package/lib/services/editor.service.d.ts +17 -18
- package/lib/services/load-check.service.d.ts +8 -9
- package/lib/services/loader.service.d.ts +16 -17
- package/lib/services/mobile-apps.service.d.ts +38 -39
- package/lib/services/netcore.service.d.ts +33 -34
- package/lib/services/nps-grid.service.d.ts +15 -16
- package/lib/services/otp.service.d.ts +20 -21
- package/lib/services/profile-v2.service.d.ts +20 -21
- package/lib/services/reset-ratings.service.d.ts +8 -9
- package/lib/services/resource-download-helper.service.d.ts +29 -30
- package/lib/services/timer.service.d.ts +9 -10
- package/lib/services/title-tag.service.d.ts +21 -22
- package/lib/services/user-profile.service.d.ts +24 -25
- package/lib/services/viewer-data.service.d.ts +58 -59
- package/lib/services/viewer-util.service.d.ts +76 -77
- package/lib/share-toc/share-toc/share-toc.component.d.ts +56 -57
- package/lib/share-toc/share-toc.module.d.ts +32 -33
- package/package.json +1 -1
- package/public-api.d.ts +56 -57
- package/lib/_collection/_common/attendance-card/attendance-card.component.d.ts.map +0 -1
- package/lib/_collection/_common/attendance-card/attendance-card.module.d.ts.map +0 -1
- package/lib/_collection/_common/attendance-helper/attendance-helper.component.d.ts.map +0 -1
- package/lib/_collection/_common/attendance-helper/attendance-helper.module.d.ts.map +0 -1
- package/lib/_collection/_common/avatar-photo/avatar-photo.component.d.ts.map +0 -1
- package/lib/_collection/_common/avatar-photo/avatar-photo.module.d.ts.map +0 -1
- package/lib/_collection/_common/certificate-dialog/certificate-dialog.component.d.ts.map +0 -1
- package/lib/_collection/_common/certificate-dialog/certificate-dialog.module.d.ts.map +0 -1
- package/lib/_collection/_common/certificate-dialog/svg-to-pdf.component.d.ts.map +0 -1
- package/lib/_collection/_common/confirm-dialog/confirm-dialog.component.d.ts.map +0 -1
- package/lib/_collection/_common/confirm-dialog/confirm-dialog.module.d.ts.map +0 -1
- package/lib/_collection/_common/connection-hover-card/connection-hover-card.component.d.ts.map +0 -1
- package/lib/_collection/_common/connection-hover-card/connection-hover.module.d.ts.map +0 -1
- package/lib/_collection/_common/connection-hover-card/connection-hover.servive.d.ts.map +0 -1
- package/lib/_collection/_common/connection-name/connection-name.component.d.ts.map +0 -1
- package/lib/_collection/_common/connection-name/connection-name.module.d.ts.map +0 -1
- package/lib/_collection/_common/connection-name/profile-v2.model.d.ts.map +0 -1
- package/lib/_collection/_common/content-progress/content-progress.component.d.ts.map +0 -1
- package/lib/_collection/_common/content-progress/content-progress.module.d.ts.map +0 -1
- package/lib/_collection/_common/content-rating-v2-dialog/content-rating-v2-dialog.component.d.ts.map +0 -1
- package/lib/_collection/_common/content-rating-v2-dialog/content-rating-v2-dialog.module.d.ts.map +0 -1
- package/lib/_collection/_common/content-toc/ai-tutor-confirm-popup/ai-tutor-confirm-popup.component.d.ts.map +0 -1
- package/lib/_collection/_common/content-toc/app-toc-about/app-toc-about.component.d.ts.map +0 -1
- package/lib/_collection/_common/content-toc/app-toc-assignment-viewer/app-toc-assignment-viewer.component.d.ts.map +0 -1
- package/lib/_collection/_common/content-toc/app-toc-assignment-viewerV2/app-toc-assignment-viewerV2.component.d.ts.map +0 -1
- package/lib/_collection/_common/content-toc/app-toc-batch-assignments/app-toc-batch-assignments.component.d.ts.map +0 -1
- package/lib/_collection/_common/content-toc/app-toc-content/app-toc-content.component.d.ts.map +0 -1
- package/lib/_collection/_common/content-toc/app-toc-content-card-v2/app-toc-content-card-v2.component.d.ts.map +0 -1
- package/lib/_collection/_common/content-toc/app-toc-content-card-v2-skeleton/app-toc-content-card-v2-skeleton.component.d.ts.map +0 -1
- package/lib/_collection/_common/content-toc/app-toc-reference-notes/app-toc-reference-notes.component.d.ts.map +0 -1
- package/lib/_collection/_common/content-toc/app-toc-session-card-new/app-toc-session-card-new.component.d.ts.map +0 -1
- package/lib/_collection/_common/content-toc/app-toc-sessions-new/app-toc-sessions-new.component.d.ts.map +0 -1
- package/lib/_collection/_common/content-toc/app-toc-teachers-notes/app-toc-teachers-notes.component.d.ts.map +0 -1
- package/lib/_collection/_common/content-toc/content-services/handle-claim.service.d.ts.map +0 -1
- package/lib/_collection/_common/content-toc/content-services/review-component-data.service.d.ts.map +0 -1
- package/lib/_collection/_common/content-toc/content-toc.component.d.ts.map +0 -1
- package/lib/_collection/_common/content-toc/content-toc.module.d.ts.map +0 -1
- package/lib/_collection/_common/content-toc/karma-points/karma-points.component.d.ts.map +0 -1
- package/lib/_collection/_common/content-toc/karma-points/karma-points.module.d.ts.map +0 -1
- package/lib/_collection/_common/content-toc/pipes/replace-nbsp.pipe.d.ts.map +0 -1
- package/lib/_collection/_common/content-toc/pipes/truncate.pipe.d.ts.map +0 -1
- package/lib/_collection/_common/content-toc/reviews-content/reviews-content.component.d.ts.map +0 -1
- package/lib/_collection/_common/content-toc/samuhik-charcha-content/samuhik-charcha-content/samuhik-charcha-content.component.d.ts.map +0 -1
- package/lib/_collection/_common/display-content-type/display-content-type.component.d.ts.map +0 -1
- package/lib/_collection/_common/display-content-type/display-content-type.module.d.ts.map +0 -1
- package/lib/_collection/_common/display-content-type-icon/display-content-type-icon.component.d.ts.map +0 -1
- package/lib/_collection/_common/display-content-type-icon/display-content-type-icon.module.d.ts.map +0 -1
- package/lib/_collection/_common/mark-as-complete/mark-as-complete.component.d.ts.map +0 -1
- package/lib/_collection/_common/mark-as-complete/mark-as-complete.model.d.ts.map +0 -1
- package/lib/_collection/_common/mark-as-complete/mark-as-complete.module.d.ts.map +0 -1
- package/lib/_collection/_common/pipe-content-route/pipe-content-route.module.d.ts.map +0 -1
- package/lib/_collection/_common/pipe-content-route/pipe-content-route.pipe.d.ts.map +0 -1
- package/lib/_collection/_common/player-brief/player-brief.component.d.ts.map +0 -1
- package/lib/_collection/_common/player-brief/player-brief.module.d.ts.map +0 -1
- package/lib/_collection/_common/rating-summary/rating-summary.component.d.ts.map +0 -1
- package/lib/_collection/_common/rating-summary/rating-summary.module.d.ts.map +0 -1
- package/lib/_collection/_common/skeleton-loader/skeleton-loader.component.d.ts.map +0 -1
- package/lib/_collection/_common/skeleton-loader/skeleton-loader.module.d.ts.map +0 -1
- package/lib/_collection/_common/tips-for-learner/tips-for-learner-card/tips-for-learner-card.component.d.ts.map +0 -1
- package/lib/_collection/_common/tips-for-learner/tips-for-learner.module.d.ts.map +0 -1
- package/lib/_collection/_common/toc-kpi-values/toc-kpi-values.component.d.ts.map +0 -1
- package/lib/_collection/_common/toc-kpi-values/toc-kpi-values.module.d.ts.map +0 -1
- package/lib/_collection/_common/user-autocomplete/user-autocomplete.component.d.ts.map +0 -1
- package/lib/_collection/_common/user-autocomplete/user-autocomplete.model.d.ts.map +0 -1
- package/lib/_collection/_common/user-autocomplete/user-autocomplete.module.d.ts.map +0 -1
- package/lib/_collection/_common/user-autocomplete/user-autocomplete.service.d.ts.map +0 -1
- package/lib/_collection/_common/user-content-rating/user-content-rating.component.d.ts.map +0 -1
- package/lib/_collection/_common/user-content-rating/user-content-rating.module.d.ts.map +0 -1
- package/lib/_collection/_common/user-image/user-image.component.d.ts.map +0 -1
- package/lib/_collection/_common/user-image/user-image.module.d.ts.map +0 -1
- package/lib/_collection/btn-page-back/btn-page-back.component.d.ts.map +0 -1
- package/lib/_collection/btn-page-back/btn-page-back.module.d.ts.map +0 -1
- package/lib/_collection/btn-page-back/btn-page-back.service.d.ts.map +0 -1
- package/lib/_collection/card-rating-comment/card-rating-comment.component.d.ts.map +0 -1
- package/lib/_collection/card-rating-comment/card-rating-comment.module.d.ts.map +0 -1
- package/lib/_collection/sliders-dynamic/sliders-dynamic.component.d.ts.map +0 -1
- package/lib/_collection/sliders-dynamic/sliders-dynamic.model.d.ts.map +0 -1
- package/lib/_collection/sliders-dynamic/sliders-dynamic.module.d.ts.map +0 -1
- package/lib/_collection-api.d.ts.map +0 -1
- package/lib/_constants/widget-content.constants.d.ts.map +0 -1
- package/lib/_directives/tooltip.directive.d.ts.map +0 -1
- package/lib/_models/common.model.d.ts.map +0 -1
- package/lib/_models/error.model.d.ts.map +0 -1
- package/lib/_pipes/highlight.pipe.d.ts.map +0 -1
- package/lib/_services/rating.service.d.ts.map +0 -1
- package/lib/_services/samuhik-charcha.service.d.ts.map +0 -1
- package/lib/_services/viewer-route-util.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/_shared/translate-loader.factory.d.ts.map +0 -1
- package/lib/app-toc-lib.module.d.ts.map +0 -1
- package/lib/collection.config.d.ts.map +0 -1
- package/lib/components/app-toc-analytics-tiles/app-toc-analytics-tiles.component.d.ts.map +0 -1
- package/lib/components/app-toc-banner/app-toc-banner.component.d.ts.map +0 -1
- package/lib/components/app-toc-cios-home/app-toc-cios-home.component.d.ts.map +0 -1
- package/lib/components/app-toc-cios-home/consent-dialog.component.d.ts.map +0 -1
- package/lib/components/app-toc-cohorts/app-toc-cohorts.component.d.ts.map +0 -1
- package/lib/components/app-toc-content-card/app-toc-content-card.component.d.ts.map +0 -1
- package/lib/components/app-toc-dialog-intro-video/app-toc-dialog-intro-video.component.d.ts.map +0 -1
- package/lib/components/app-toc-discussion/app-toc-discussion.component.d.ts.map +0 -1
- package/lib/components/app-toc-home/app-toc-home.component.d.ts.map +0 -1
- package/lib/components/app-toc-home-v2/app-toc-home-v2.component.d.ts.map +0 -1
- package/lib/components/app-toc-overview/app-toc-overview.component.d.ts.map +0 -1
- package/lib/components/app-toc-session-card/app-toc-session-card.component.d.ts.map +0 -1
- package/lib/components/app-toc-sessions/app-toc-sessions.component.d.ts.map +0 -1
- package/lib/components/app-toc-single-page/app-toc-single-page.component.d.ts.map +0 -1
- package/lib/components/completion-survey-form/completion-survey-form.component.d.ts.map +0 -1
- package/lib/components/create-batch-dialog/create-batch-dialog.component.d.ts.map +0 -1
- package/lib/components/enroll-language-dialogue/enroll-language-dialogue.component.d.ts.map +0 -1
- package/lib/components/enroll-profile-form/enroll-profile-form.component.d.ts.map +0 -1
- package/lib/components/enroll-questionnaire/enroll-questionnaire.component.d.ts.map +0 -1
- package/lib/components/knowledge-artifact-details/knowledge-artifact-details.component.d.ts.map +0 -1
- package/lib/components/non-relevent-feedback-dialog/non-relevent-feedback-dialog.component.d.ts.map +0 -1
- package/lib/components/public-survey-form/public-survey-form.component.d.ts.map +0 -1
- package/lib/components/survey-form-question/survey-form-question.component.d.ts.map +0 -1
- package/lib/components/survey-form-section/survey-form-section.component.d.ts.map +0 -1
- package/lib/models/app-toc-analytics.model.d.ts.map +0 -1
- package/lib/models/app-toc.model.d.ts.map +0 -1
- package/lib/models/auto-complete.model.d.ts.map +0 -1
- package/lib/models/card-content.model.d.ts.map +0 -1
- package/lib/models/content-strip-with-tabs.model.d.ts.map +0 -1
- package/lib/models/discussion-forum.model.d.ts.map +0 -1
- package/lib/models/goal.model.d.ts.map +0 -1
- package/lib/models/meta-tag.model.d.ts.map +0 -1
- package/lib/models/playlist.model.d.ts.map +0 -1
- package/lib/models/profile-revamp.model.d.ts.map +0 -1
- package/lib/models/rating.model.d.ts.map +0 -1
- package/lib/models/user-profile.model.d.ts.map +0 -1
- package/lib/resolvers/app-toc-cios-resolver.service.d.ts.map +0 -1
- package/lib/resolvers/app-toc-cios-user-enroll-resolver.service.d.ts.map +0 -1
- package/lib/resolvers/app-toc-content-read-resolver.service.d.ts.map +0 -1
- package/lib/resolvers/app-toc-ext-public-resolver.service.d.ts.map +0 -1
- package/lib/resolvers/app-toc-resolver.service.d.ts.map +0 -1
- package/lib/resolvers/config-resolver.service.d.ts.map +0 -1
- package/lib/resolvers/profile-resolver.service.d.ts.map +0 -1
- package/lib/resolvers/restricted-features-resolver.service.d.ts.map +0 -1
- package/lib/routes/app-toc-home/app-toc-home.component.d.ts.map +0 -1
- package/lib/routes/app-toc-home/app-toc-home.directive.d.ts.map +0 -1
- package/lib/routes/app-toc-home/app-toc-home.service.d.ts.map +0 -1
- package/lib/services/access-control.service.d.ts.map +0 -1
- package/lib/services/action.service.d.ts.map +0 -1
- package/lib/services/app-toc-v2.service.d.ts.map +0 -1
- package/lib/services/app-toc.service.d.ts.map +0 -1
- package/lib/services/certificate.service.d.ts.map +0 -1
- package/lib/services/discuss-utils.service.d.ts.map +0 -1
- package/lib/services/editor.service.d.ts.map +0 -1
- package/lib/services/load-check.service.d.ts.map +0 -1
- package/lib/services/loader.service.d.ts.map +0 -1
- package/lib/services/mobile-apps.service.d.ts.map +0 -1
- package/lib/services/netcore.service.d.ts.map +0 -1
- package/lib/services/nps-grid.service.d.ts.map +0 -1
- package/lib/services/otp.service.d.ts.map +0 -1
- package/lib/services/profile-v2.service.d.ts.map +0 -1
- package/lib/services/reset-ratings.service.d.ts.map +0 -1
- package/lib/services/resource-download-helper.service.d.ts.map +0 -1
- package/lib/services/timer.service.d.ts.map +0 -1
- package/lib/services/title-tag.service.d.ts.map +0 -1
- package/lib/services/user-profile.service.d.ts.map +0 -1
- package/lib/services/viewer-data.service.d.ts.map +0 -1
- package/lib/services/viewer-util.service.d.ts.map +0 -1
- package/lib/share-toc/share-toc/share-toc.component.d.ts.map +0 -1
- package/lib/share-toc/share-toc.module.d.ts.map +0 -1
- package/public-api.d.ts.map +0 -1
- package/sunbird-cb-toc.d.ts.map +0 -1
|
@@ -1,120 +1,120 @@
|
|
|
1
|
-
import { Component, Inject } from '@angular/core';
|
|
2
|
-
import { MAT_LEGACY_DIALOG_DATA as MAT_DIALOG_DATA } from '@angular/material/legacy-dialog';
|
|
3
|
-
import { WsEvents } from '@sunbird-cb/utils-v2';
|
|
4
|
-
import { jsPDF } from 'jspdf';
|
|
5
|
-
import * as i0 from "@angular/core";
|
|
6
|
-
import * as i1 from "@sunbird-cb/utils-v2";
|
|
7
|
-
import * as i2 from "@angular/material/legacy-dialog";
|
|
8
|
-
import * as i3 from "@angular/material/legacy-button";
|
|
9
|
-
import * as i4 from "@angular/material/legacy-card";
|
|
10
|
-
import * as i5 from "@angular/material/icon";
|
|
11
|
-
import * as i6 from "@angular/material/legacy-menu";
|
|
12
|
-
import * as i7 from "@ngx-translate/core";
|
|
13
|
-
export class CertificateDialogComponent {
|
|
14
|
-
constructor(events, dialogRef, data, environment) {
|
|
15
|
-
this.events = events;
|
|
16
|
-
this.dialogRef = dialogRef;
|
|
17
|
-
this.data = data;
|
|
18
|
-
this.environment = environment;
|
|
19
|
-
this.navUrl = '';
|
|
20
|
-
}
|
|
21
|
-
ngOnInit() {
|
|
22
|
-
this.url = this.data.cet;
|
|
23
|
-
// tslint:disable-next-line:max-line-length
|
|
24
|
-
this.navUrl = `https://www.linkedin.com/sharing/share-offsite/?url=${this.environment.contentHost}/apis/public/v8/cert/download/${this.data.certId}`;
|
|
25
|
-
}
|
|
26
|
-
downloadCert() {
|
|
27
|
-
this.raiseIntreactTelemetry('svg');
|
|
28
|
-
const a = document.createElement('a');
|
|
29
|
-
a.href = this.data.cet;
|
|
30
|
-
a.download = 'Certificate';
|
|
31
|
-
document.body.appendChild(a);
|
|
32
|
-
a.style = 'display: none';
|
|
33
|
-
a.click();
|
|
34
|
-
a.remove();
|
|
35
|
-
}
|
|
36
|
-
downloadCertPng() {
|
|
37
|
-
this.raiseIntreactTelemetry('png');
|
|
38
|
-
const uriData = this.data.cet;
|
|
39
|
-
const img = new Image();
|
|
40
|
-
img.src = uriData;
|
|
41
|
-
img.width = 1820;
|
|
42
|
-
img.height = 1000;
|
|
43
|
-
img.onload = () => {
|
|
44
|
-
const canvas = document.createElement('canvas');
|
|
45
|
-
[canvas.width, canvas.height] = [img.width, img.height];
|
|
46
|
-
const ctx = canvas.getContext('2d');
|
|
47
|
-
if (ctx) {
|
|
48
|
-
// ctx.imageSmoothingEnabled = true
|
|
49
|
-
ctx.drawImage(img, 0, 0, img.width, img.height);
|
|
50
|
-
const a = document.createElement('a');
|
|
51
|
-
const quality = 1.0; // https://developer.mozilla.org/en-US/docs/Web/API/CanvasRenderingContext2D/imageSmoothingQuality
|
|
52
|
-
a.href = canvas.toDataURL('image/png', quality);
|
|
53
|
-
a.download = 'Certificate';
|
|
54
|
-
a.append(canvas);
|
|
55
|
-
a.click();
|
|
56
|
-
a.remove();
|
|
57
|
-
}
|
|
58
|
-
};
|
|
59
|
-
}
|
|
60
|
-
async downloadCertPdf() {
|
|
61
|
-
this.raiseIntreactTelemetry('pdf');
|
|
62
|
-
const uriData = this.data.cet;
|
|
63
|
-
const img = new Image();
|
|
64
|
-
img.src = uriData;
|
|
65
|
-
img.width = 1820;
|
|
66
|
-
img.height = 1000;
|
|
67
|
-
img.onload = () => {
|
|
68
|
-
const canvas = document.createElement('canvas');
|
|
69
|
-
[canvas.width, canvas.height] = [img.width, img.height];
|
|
70
|
-
const ctx = canvas.getContext('2d');
|
|
71
|
-
if (ctx) {
|
|
72
|
-
ctx.drawImage(img, 0, 0, img.width, img.height);
|
|
73
|
-
const quality = 1.0; // https://developer.mozilla.org/en-US/docs/Web/API/CanvasRenderingContext2D/imageSmoothingQuality
|
|
74
|
-
const dataImg = canvas.toDataURL('application/pdf', quality);
|
|
75
|
-
const pdf = new jsPDF('landscape', 'px', 'a4');
|
|
76
|
-
// add the image to the PDF
|
|
77
|
-
pdf.addImage(dataImg, 10, 20, 600, 350);
|
|
78
|
-
// download the PDF
|
|
79
|
-
pdf.save('Certificate.pdf');
|
|
80
|
-
}
|
|
81
|
-
};
|
|
82
|
-
}
|
|
83
|
-
shareCert() {
|
|
84
|
-
this.raiseShareIntreactTelemetry('share');
|
|
85
|
-
return window.open(this.navUrl, '_blank');
|
|
86
|
-
}
|
|
87
|
-
raiseShareIntreactTelemetry(type, action) {
|
|
88
|
-
this.events.raiseInteractTelemetry({
|
|
89
|
-
type: WsEvents.EnumInteractTypes.CLICK,
|
|
90
|
-
id: `${type}-${WsEvents.EnumInteractSubTypes.CERTIFICATE}`,
|
|
91
|
-
subType: action ? action : '',
|
|
92
|
-
}, {
|
|
93
|
-
id: this.data.certId,
|
|
94
|
-
type: WsEvents.EnumInteractSubTypes.CERTIFICATE,
|
|
95
|
-
});
|
|
96
|
-
}
|
|
97
|
-
raiseIntreactTelemetry(action) {
|
|
98
|
-
this.events.raiseInteractTelemetry({
|
|
99
|
-
type: WsEvents.EnumInteractTypes.CLICK,
|
|
100
|
-
id: 'download-certificate',
|
|
101
|
-
subType: action ? action : '',
|
|
102
|
-
}, {
|
|
103
|
-
id: this.data.certId,
|
|
104
|
-
type: WsEvents.EnumInteractSubTypes.CERTIFICATE,
|
|
105
|
-
});
|
|
106
|
-
}
|
|
107
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CertificateDialogComponent, deps: [{ token: i1.EventService }, { token: i2.MatLegacyDialogRef }, { token: MAT_DIALOG_DATA }, { token: 'environment' }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
108
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: CertificateDialogComponent, selector: "ws-widget-certificate-dialog", host: { classAttribute: "certificate-inner-dialog-panel" }, ngImport: i0, template: "<mat-card class=\"no-shadow certificate-img-box\">\n <button mat-icon-button class=\"close-button\" [mat-dialog-close]=\"true\">\n <mat-icon class=\"close-icon\" color=\"warn\">close</mat-icon>\n </button>\n <!-- <mat-card-title>\n\n </mat-card-title> -->\n <mat-card-content class=\"certificate-img-content\">\n <img #certificate [src]=\"url| pipeSafeSanitizer: 'url'\" alt=\"Certificate\" role=\"image\" class=\"certificate-banner-image\">\n </mat-card-content>\n <mat-card-actions class=\"flex flex-row-reverse gap-4\">\n <!-- <ws-widget-svg-to-pdf></ws-widget-svg-to-pdf> -->\n <a mat-button (click)=\"shareCert()\" class=\"ws-mat-accent-border-active mat-accent btn-custom\">\n <mat-icon class=\"mat-icon material-icons-outlined download_icon margin-right-xs\">share</mat-icon>\n Share\n </a>\n <a mat-button [matMenuTriggerFor]=\"menu\" class=\"ws-mat-accent-border-active mat-accent btn-custom\" (click)=\"raiseIntreactTelemetry()\">\n <mat-icon class=\"mat-icon material-icons-outlined download_icon margin-right-xs\">cloud_download</mat-icon>\n {{'certificatedialog.download' | translate}}\n </a>\n <mat-menu #menu=\"matMenu\">\n <button mat-menu-item (click)='downloadCertPdf()'>\n <mat-icon>picture_as_pdf</mat-icon>\n <span>{{'certificatedialog.pdf' | translate}}</span>\n </button>\n <button mat-menu-item (click)='downloadCertPng()'>\n <mat-icon>photo</mat-icon>\n <span>{{'certificatedialog.png' | translate}}</span>\n </button>\n <button mat-menu-item (click)='downloadCert()'>\n <mat-icon>photo_size_select_actual</mat-icon>\n <span>{{'certificatedialog.svg' | translate}}</span>\n </button>\n </mat-menu>\n </mat-card-actions>\n</mat-card>\n", styles: [".no-shadow{box-shadow:none!important}.certificate-banner-image{height:30rem;display:flex;width:auto;margin:0 auto}@media only screen and (max-width: 1279px){.certificate-banner-image{width:100%;height:auto;flex:1}}.certificate-img-box{max-height:35rem;overflow-y:auto;overflow-x:hidden}.certificate-img-content{overflow:hidden}a.download_btn{background-color:#f0f0f0;border-radius:4px;float:right;height:40px;padding:0 16px;text-align:center;line-height:40px;text-decoration:none;color:#0009;font-size:14px;font-weight:600;margin-top:16px;margin-right:0}.download_icon{font-size:16px;vertical-align:text-top}::ng-deep .close-button{float:right;top:-16px;right:-12px;height:30px;width:30px;line-height:30px;background:#000!important;color:#fff!important}::ng-deep .close-icon{transition:1s ease-in-out;color:#fff!important}::ng-deep .close-icon:hover{transform:rotate(180deg)}::ng-deep .icon-outside .close-button{float:right;position:absolute;top:19px;right:18px}::ng-deep .icon-outside .mat-dialog-container{overflow:unset}::ng-deep .cdk-overlay-pane{max-height:96%!important;overflow-y:auto!important}.certificate-banner-image svg{width:500;height:500}@media only screen and (max-width: 1279px){.certificate-banner-image svg{width:auto;height:auto;flex:1}}.btn-custom{box-sizing:border-box;position:relative;-webkit-user-select:none;user-select:none;cursor:pointer;outline:0;border:none;-webkit-tap-highlight-color:transparent;display:inline-block;white-space:nowrap;text-decoration:none;vertical-align:baseline;text-align:center;margin:0;min-width:64px;line-height:36px;padding:0 16px;border-radius:4px;overflow:visible}.close-button{position:absolute!important;top:19px!important;right:18px!important}@media screen and (max-width: 1200px){.btn-custom{box-sizing:border-box;position:relative;-webkit-user-select:none;user-select:none;cursor:pointer;outline:0;border:none;-webkit-tap-highlight-color:transparent;display:inline-block;white-space:nowrap;text-decoration:none;vertical-align:baseline;text-align:center;margin:0;min-width:64px;line-height:36px;padding:0 8px;border-radius:4px;overflow:visible}.gap-4{grid-gap:0rem;gap:0rem}}\n"], dependencies: [{ kind: "component", type: i3.MatLegacyButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i3.MatLegacyAnchor, selector: "a[mat-button], a[mat-raised-button], a[mat-icon-button], a[mat-fab], a[mat-mini-fab], a[mat-stroked-button], a[mat-flat-button]", inputs: ["disabled", "disableRipple", "color", "tabIndex"], exportAs: ["matButton", "matAnchor"] }, { kind: "component", type: i4.MatLegacyCard, selector: "mat-card", exportAs: ["matCard"] }, { kind: "directive", type: i4.MatLegacyCardContent, selector: "mat-card-content, [mat-card-content], [matCardContent]" }, { kind: "directive", type: i4.MatLegacyCardActions, selector: "mat-card-actions", inputs: ["align"], exportAs: ["matCardActions"] }, { kind: "component", type: i5.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i2.MatLegacyDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["aria-label", "type", "mat-dialog-close", "matDialogClose"], exportAs: ["matDialogClose"] }, { kind: "component", type: i6.MatLegacyMenu, selector: "mat-menu", exportAs: ["matMenu"] }, { kind: "component", type: i6.MatLegacyMenuItem, selector: "[mat-menu-item]", inputs: ["disabled", "disableRipple"], exportAs: ["matMenuItem"] }, { kind: "directive", type: i6.MatLegacyMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", exportAs: ["matMenuTrigger"] }, { kind: "pipe", type: i1.PipeSafeSanitizerPipe, name: "pipeSafeSanitizer" }, { kind: "pipe", type: i7.TranslatePipe, name: "translate" }] }); }
|
|
109
|
-
}
|
|
110
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CertificateDialogComponent, decorators: [{
|
|
111
|
-
type: Component,
|
|
112
|
-
args: [{ selector: 'ws-widget-certificate-dialog', host: { class: 'certificate-inner-dialog-panel' }, template: "<mat-card class=\"no-shadow certificate-img-box\">\n <button mat-icon-button class=\"close-button\" [mat-dialog-close]=\"true\">\n <mat-icon class=\"close-icon\" color=\"warn\">close</mat-icon>\n </button>\n <!-- <mat-card-title>\n\n </mat-card-title> -->\n <mat-card-content class=\"certificate-img-content\">\n <img #certificate [src]=\"url| pipeSafeSanitizer: 'url'\" alt=\"Certificate\" role=\"image\" class=\"certificate-banner-image\">\n </mat-card-content>\n <mat-card-actions class=\"flex flex-row-reverse gap-4\">\n <!-- <ws-widget-svg-to-pdf></ws-widget-svg-to-pdf> -->\n <a mat-button (click)=\"shareCert()\" class=\"ws-mat-accent-border-active mat-accent btn-custom\">\n <mat-icon class=\"mat-icon material-icons-outlined download_icon margin-right-xs\">share</mat-icon>\n Share\n </a>\n <a mat-button [matMenuTriggerFor]=\"menu\" class=\"ws-mat-accent-border-active mat-accent btn-custom\" (click)=\"raiseIntreactTelemetry()\">\n <mat-icon class=\"mat-icon material-icons-outlined download_icon margin-right-xs\">cloud_download</mat-icon>\n {{'certificatedialog.download' | translate}}\n </a>\n <mat-menu #menu=\"matMenu\">\n <button mat-menu-item (click)='downloadCertPdf()'>\n <mat-icon>picture_as_pdf</mat-icon>\n <span>{{'certificatedialog.pdf' | translate}}</span>\n </button>\n <button mat-menu-item (click)='downloadCertPng()'>\n <mat-icon>photo</mat-icon>\n <span>{{'certificatedialog.png' | translate}}</span>\n </button>\n <button mat-menu-item (click)='downloadCert()'>\n <mat-icon>photo_size_select_actual</mat-icon>\n <span>{{'certificatedialog.svg' | translate}}</span>\n </button>\n </mat-menu>\n </mat-card-actions>\n</mat-card>\n", styles: [".no-shadow{box-shadow:none!important}.certificate-banner-image{height:30rem;display:flex;width:auto;margin:0 auto}@media only screen and (max-width: 1279px){.certificate-banner-image{width:100%;height:auto;flex:1}}.certificate-img-box{max-height:35rem;overflow-y:auto;overflow-x:hidden}.certificate-img-content{overflow:hidden}a.download_btn{background-color:#f0f0f0;border-radius:4px;float:right;height:40px;padding:0 16px;text-align:center;line-height:40px;text-decoration:none;color:#0009;font-size:14px;font-weight:600;margin-top:16px;margin-right:0}.download_icon{font-size:16px;vertical-align:text-top}::ng-deep .close-button{float:right;top:-16px;right:-12px;height:30px;width:30px;line-height:30px;background:#000!important;color:#fff!important}::ng-deep .close-icon{transition:1s ease-in-out;color:#fff!important}::ng-deep .close-icon:hover{transform:rotate(180deg)}::ng-deep .icon-outside .close-button{float:right;position:absolute;top:19px;right:18px}::ng-deep .icon-outside .mat-dialog-container{overflow:unset}::ng-deep .cdk-overlay-pane{max-height:96%!important;overflow-y:auto!important}.certificate-banner-image svg{width:500;height:500}@media only screen and (max-width: 1279px){.certificate-banner-image svg{width:auto;height:auto;flex:1}}.btn-custom{box-sizing:border-box;position:relative;-webkit-user-select:none;user-select:none;cursor:pointer;outline:0;border:none;-webkit-tap-highlight-color:transparent;display:inline-block;white-space:nowrap;text-decoration:none;vertical-align:baseline;text-align:center;margin:0;min-width:64px;line-height:36px;padding:0 16px;border-radius:4px;overflow:visible}.close-button{position:absolute!important;top:19px!important;right:18px!important}@media screen and (max-width: 1200px){.btn-custom{box-sizing:border-box;position:relative;-webkit-user-select:none;user-select:none;cursor:pointer;outline:0;border:none;-webkit-tap-highlight-color:transparent;display:inline-block;white-space:nowrap;text-decoration:none;vertical-align:baseline;text-align:center;margin:0;min-width:64px;line-height:36px;padding:0 8px;border-radius:4px;overflow:visible}.gap-4{grid-gap:0rem;gap:0rem}}\n"] }]
|
|
113
|
-
}], ctorParameters: function () { return [{ type: i1.EventService }, { type: i2.MatLegacyDialogRef }, { type: undefined, decorators: [{
|
|
114
|
-
type: Inject,
|
|
115
|
-
args: [MAT_DIALOG_DATA]
|
|
116
|
-
}] }, { type: undefined, decorators: [{
|
|
117
|
-
type: Inject,
|
|
118
|
-
args: ['environment']
|
|
119
|
-
}] }]; } });
|
|
120
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2VydGlmaWNhdGUtZGlhbG9nLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnJhcnkvc3VuYmlyZC1jYi90b2Mvc3JjL2xpYi9fY29sbGVjdGlvbi9fY29tbW9uL2NlcnRpZmljYXRlLWRpYWxvZy9jZXJ0aWZpY2F0ZS1kaWFsb2cuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicmFyeS9zdW5iaXJkLWNiL3RvYy9zcmMvbGliL19jb2xsZWN0aW9uL19jb21tb24vY2VydGlmaWNhdGUtZGlhbG9nL2NlcnRpZmljYXRlLWRpYWxvZy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBVSxNQUFNLGVBQWUsQ0FBQTtBQUN6RCxPQUFPLEVBQXNDLHNCQUFzQixJQUFJLGVBQWUsRUFBRSxNQUFNLGlDQUFpQyxDQUFBO0FBQy9ILE9BQU8sRUFBZ0IsUUFBUSxFQUFFLE1BQU0sc0JBQXNCLENBQUE7QUFDN0QsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLE9BQU8sQ0FBQTs7Ozs7Ozs7O0FBVTdCLE1BQU0sT0FBTywwQkFBMEI7SUFHckMsWUFDVSxNQUFvQixFQUNyQixTQUFtRCxFQUMxQixJQUFTLEVBQ1YsV0FBZ0I7UUFIdkMsV0FBTSxHQUFOLE1BQU0sQ0FBYztRQUNyQixjQUFTLEdBQVQsU0FBUyxDQUEwQztRQUMxQixTQUFJLEdBQUosSUFBSSxDQUFLO1FBQ1YsZ0JBQVcsR0FBWCxXQUFXLENBQUs7UUFMakQsV0FBTSxHQUFHLEVBQUUsQ0FBQTtJQVFYLENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxDQUFDLEdBQUcsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQTtRQUN4QiwyQ0FBMkM7UUFDM0MsSUFBSSxDQUFDLE1BQU0sR0FBRyx1REFBdUQsSUFBSSxDQUFDLFdB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QUMsb0JBQW9CLENBQUMsV0FBVyxFQUFFO1lBQzFELE9BQU8sRUFBRyxNQUFNLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRTtTQUMvQixFQUNEO1lBQ0UsRUFBRSxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTTtZQUNwQixJQUFJLEVBQUUsUUFBUSxDQUFDLG9CQUFvQixDQUFDLFdBQVc7U0FDaEQsQ0FDRixDQUFBO0lBQ0gsQ0FBQztJQUVELHNCQUFzQixDQUFDLE1BQWU7UUFDcEMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxzQkFBc0IsQ0FDaEM7WUFDRSxJQUFJLEVBQUUsUUFBUSxDQUFDLGlCQUFpQixDQUFDLEtBQUs7WUFDdEMsRUFBRSxFQUFFLHNCQUFzQjtZQUMxQixPQUFPLEVBQUUsTUFBTSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUU7U0FDOUIsRUFDRDtZQUNFLEVBQUUsRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU07WUFDcEIsSUFBSSxFQUFFLFFBQVEsQ0FBQyxvQkFBb0IsQ0FBQyxXQUFXO1NBQ2hELENBQ0YsQ0FBQTtJQUNILENBQUM7K0dBOUdVLDBCQUEwQixnRkFNM0IsZUFBZSxhQUNmLGFBQWE7bUdBUFosMEJBQTBCLGdJQ2J2Qyw0NURBb0NBOzs0RkR2QmEsMEJBQTBCO2tCQVJ0QyxTQUFTOytCQUNFLDhCQUE4QixRQUlqQyxFQUFFLEtBQUssRUFBRSxnQ0FBZ0MsRUFBRTs7MEJBUy9DLE1BQU07MkJBQUMsZUFBZTs7MEJBQ3RCLE1BQU07MkJBQUMsYUFBYSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5qZWN0LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgTWF0TGVnYWN5RGlhbG9nUmVmIGFzIE1hdERpYWxvZ1JlZiwgTUFUX0xFR0FDWV9ESUFMT0dfREFUQSBhcyBNQVRfRElBTE9HX0RBVEEgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9sZWdhY3ktZGlhbG9nJ1xuaW1wb3J0IHsgRXZlbnRTZXJ2aWNlLCBXc0V2ZW50cyB9IGZyb20gJ0BzdW5iaXJkLWNiL3V0aWxzLXYyJ1xuaW1wb3J0IHsganNQREYgfSBmcm9tICdqc3BkZidcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnd3Mtd2lkZ2V0LWNlcnRpZmljYXRlLWRpYWxvZycsXG4gIHRlbXBsYXRlVXJsOiAnLi9jZXJ0aWZpY2F0ZS1kaWFsb2cuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9jZXJ0aWZpY2F0ZS1kaWFsb2cuY29tcG9uZW50LnNjc3MnXSxcbiAgIC8qIHRzbGludDpkaXNhYmxlICovXG4gICBob3N0OiB7IGNsYXNzOiAnY2VydGlmaWNhdGUtaW5uZXItZGlhbG9nLXBhbmVsJyB9LFxuICAgLyogdHNsaW50OmVuYWJsZSAqL1xufSlcbmV4cG9ydCBjbGFzcyBDZXJ0aWZpY2F0ZURpYWxvZ0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIHVybCE6IHN0cmluZ1xuICBuYXZVcmwgPSAnJ1xuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGV2ZW50czogRXZlbnRTZXJ2aWNlLFxuICAgIHB1YmxpYyBkaWFsb2dSZWY6IE1hdERpYWxvZ1JlZjxDZXJ0aWZpY2F0ZURpYWxvZ0NvbXBvbmVudD4sXG4gICAgQEluamVjdChNQVRfRElBTE9HX0RBVEEpIHB1YmxpYyBkYXRhOiBhbnksXG4gICAgQEluamVjdCgnZW52aXJvbm1lbnQnKSBwcml2YXRlIGVudmlyb25tZW50OiBhbnlcbiAgKSB7XG5cbiAgfVxuXG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMudXJsID0gdGhpcy5kYXRhLmNldFxuICAgIC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTptYXgtbGluZS1sZW5ndGhcbiAgICB0aGlzLm5hdlVybCA9IGBodHRwczovL3d3dy5saW5rZWRpbi5jb20vc2hhcmluZy9zaGFyZS1vZmZzaXRlLz91cmw9JHt0aGlzLmVudmlyb25tZW50LmNvbnRlbnRIb3N0fS9hcGlzL3B1YmxpYy92OC9jZXJ0L2Rvd25sb2FkLyR7dGhpcy5kYXRhLmNlcnRJZH1gXG4gIH1cblxuICBkb3dubG9hZENlcnQoKSB7XG4gICAgdGhpcy5yYWlzZUludHJlYWN0VGVsZW1ldHJ5KCdzdmcnKVxuICAgIGNvbnN0IGE6IGFueSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2EnKVxuICAgIGEuaHJlZiA9IHRoaXMuZGF0YS5jZXRcbiAgICBhLmRvd25sb2FkID0gJ0NlcnRpZmljYXRlJ1xuICAgIGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoYSlcbiAgICBhLnN0eWxlID0gJ2Rpc3BsYXk6IG5vbmUnXG4gICAgYS5jbGljaygpXG4gICAgYS5yZW1vdmUoKVxuICB9XG5cbiAgZG93bmxvYWRDZXJ0UG5nKCkge1xuICAgIHRoaXMucmFpc2VJbnRyZWFjdFRlbGVtZXRyeSgncG5nJylcbiAgICBjb25zdCB1cmlEYXRhID0gdGhpcy5kYXRhLmNldFxuICAgIGNvbnN0IGltZyA9IG5ldyBJbWFnZSgpXG4gICAgaW1nLnNyYyA9IHVyaURhdGFcbiAgICBpbWcud2lkdGggPSAxODIwXG4gICAgaW1nLmhlaWdodCA9IDEwMDBcbiAgICBpbWcub25sb2FkID0gKCkgPT4ge1xuICAgICAgY29uc3QgY2FudmFzID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnY2FudmFzJyk7XG4gICAgICBbY2FudmFzLndpZHRoLCBjYW52YXMuaGVpZ2h0XSA9IFtpbWcud2lkdGgsIGltZy5oZWlnaHRdXG4gICAgICBjb25zdCBjdHggPSBjYW52YXMuZ2V0Q29udGV4dCgnMmQnKVxuICAgICAgaWYgKGN0eCkge1xuICAgICAgICAvLyBjdHguaW1hZ2VTbW9vdGhpbmdFbmFibGVkID0gdHJ1ZVxuICAgICAgICBjdHguZHJhd0ltYWdlKGltZywgMCwgMCwgaW1nLndpZHRoLCBpbWcuaGVpZ2h0KVxuICAgICAgICBjb25zdCBhID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnYScpXG4gICAgICAgIGNvbnN0IHF1YWxpdHkgPSAxLjAgLy8gaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvQVBJL0NhbnZhc1JlbmRlcmluZ0NvbnRleHQyRC9pbWFnZVNtb290aGluZ1F1YWxpdHlcbiAgICAgICAgYS5ocmVmID0gY2FudmFzLnRvRGF0YVVSTCgnaW1hZ2UvcG5nJywgcXVhbGl0eSlcbiAgICAgICAgYS5kb3dubG9hZCA9ICdDZXJ0aWZpY2F0ZSdcbiAgICAgICAgYS5hcHBlbmQoY2FudmFzKVxuICAgICAgICBhLmNsaWNrKClcbiAgICAgICAgYS5yZW1vdmUoKVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBhc3luYyBkb3dubG9hZENlcnRQZGYoKSB7XG4gICAgdGhpcy5yYWlzZUludHJlYWN0VGVsZW1ldHJ5KCdwZGYnKVxuICAgIGNvbnN0IHVyaURhdGEgPSB0aGlzLmRhdGEuY2V0XG4gICAgY29uc3QgaW1nID0gbmV3IEltYWdlKClcbiAgICBpbWcuc3JjID0gdXJpRGF0YVxuICAgIGltZy53aWR0aCA9IDE4MjBcbiAgICBpbWcuaGVpZ2h0ID0gMTAwMFxuICAgIGltZy5vbmxvYWQgPSAoKSA9PiB7XG4gICAgICBjb25zdCBjYW52YXMgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdjYW52YXMnKTtcbiAgICAgIFtjYW52YXMud2lkdGgsIGNhbnZhcy5oZWlnaHRdID0gW2ltZy53aWR0aCwgaW1nLmhlaWdodF1cbiAgICAgIGNvbnN0IGN0eCA9IGNhbnZhcy5nZXRDb250ZXh0KCcyZCcpXG4gICAgICBpZiAoY3R4KSB7XG4gICAgICAgIGN0eC5kcmF3SW1hZ2UoaW1nLCAwLCAwLCBpbWcud2lkdGgsIGltZy5oZWlnaHQpXG4gICAgICAgIGNvbnN0IHF1YWxpdHkgPSAxLjAgLy8gaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvQVBJL0NhbnZhc1JlbmRlcmluZ0NvbnRleHQyRC9pbWFnZVNtb290aGluZ1F1YWxpdHlcbiAgICAgICAgY29uc3QgZGF0YUltZyA9IGNhbnZhcy50b0RhdGFVUkwoJ2FwcGxpY2F0aW9uL3BkZicsIHF1YWxpdHkpXG4gICAgICAgIGNvbnN0IHBkZiA9IG5ldyBqc1BERignbGFuZHNjYXBlJywgJ3B4JywgJ2E0JylcblxuICAgICAgICAvLyBhZGQgdGhlIGltYWdlIHRvIHRoZSBQREZcbiAgICAgICAgcGRmLmFkZEltYWdlKGRhdGFJbWcsIDEwLCAyMCwgNjAwLCAzNTApXG5cbiAgICAgICAgLy8gZG93bmxvYWQgdGhlIFBERlxuICAgICAgICBwZGYuc2F2ZSgnQ2VydGlmaWNhdGUucGRmJylcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBzaGFyZUNlcnQoKSB7XG4gICAgdGhpcy5yYWlzZVNoYXJlSW50cmVhY3RUZWxlbWV0cnkoJ3NoYXJlJylcbiAgICByZXR1cm4gd2luZG93Lm9wZW4odGhpcy5uYXZVcmwsICdfYmxhbmsnKVxuICB9XG5cbiAgcmFpc2VTaGFyZUludHJlYWN0VGVsZW1ldHJ5KHR5cGU/OiBzdHJpbmcsIGFjdGlvbj86IHN0cmluZykge1xuICAgIHRoaXMuZXZlbnRzLnJhaXNlSW50ZXJhY3RUZWxlbWV0cnkoXG4gICAgICB7XG4gICAgICAgIHR5cGU6IFdzRXZlbnRzLkVudW1JbnRlcmFjdFR5cGVzLkNMSUNLLFxuICAgICAgICBpZDogYCR7dHlwZX0tJHtXc0V2ZW50cy5FbnVtSW50ZXJhY3RTdWJUeXBlcy5DRVJUSUZJQ0FURX1gLFxuICAgICAgICBzdWJUeXBlOiAgYWN0aW9uID8gYWN0aW9uIDogJycsXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBpZDogdGhpcy5kYXRhLmNlcnRJZCwgICAvLyBpZCBvZiB0aGUgY2VydGlmaWNhdGVcbiAgICAgICAgdHlwZTogV3NFdmVudHMuRW51bUludGVyYWN0U3ViVHlwZXMuQ0VSVElGSUNBVEUsXG4gICAgICB9XG4gICAgKVxuICB9XG5cbiAgcmFpc2VJbnRyZWFjdFRlbGVtZXRyeShhY3Rpb24/OiBzdHJpbmcpIHtcbiAgICB0aGlzLmV2ZW50cy5yYWlzZUludGVyYWN0VGVsZW1ldHJ5KFxuICAgICAge1xuICAgICAgICB0eXBlOiBXc0V2ZW50cy5FbnVtSW50ZXJhY3RUeXBlcy5DTElDSyxcbiAgICAgICAgaWQ6ICdkb3dubG9hZC1jZXJ0aWZpY2F0ZScsXG4gICAgICAgIHN1YlR5cGU6IGFjdGlvbiA/IGFjdGlvbiA6ICcnLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgaWQ6IHRoaXMuZGF0YS5jZXJ0SWQsICAgLy8gaWQgb2YgdGhlIGNlcnRpZmljYXRlXG4gICAgICAgIHR5cGU6IFdzRXZlbnRzLkVudW1JbnRlcmFjdFN1YlR5cGVzLkNFUlRJRklDQVRFLFxuICAgICAgfVxuICAgIClcbiAgfVxuXG59XG4iLCI8bWF0LWNhcmQgY2xhc3M9XCJuby1zaGFkb3cgY2VydGlmaWNhdGUtaW1nLWJveFwiPlxuICAgIDxidXR0b24gbWF0LWljb24tYnV0dG9uIGNsYXNzPVwiY2xvc2UtYnV0dG9uXCIgW21hdC1kaWFsb2ctY2xvc2VdPVwidHJ1ZVwiPlxuICAgICAgICA8bWF0LWljb24gY2xhc3M9XCJjbG9zZS1pY29uXCIgY29sb3I9XCJ3YXJuXCI+Y2xvc2U8L21hdC1pY29uPlxuICAgIDwvYnV0dG9uPlxuICAgIDwhLS0gPG1hdC1jYXJkLXRpdGxlPlxuXG4gICAgPC9tYXQtY2FyZC10aXRsZT4gLS0+XG4gICAgPG1hdC1jYXJkLWNvbnRlbnQgY2xhc3M9XCJjZXJ0aWZpY2F0ZS1pbWctY29udGVudFwiPlxuICAgICAgICA8aW1nICNjZXJ0aWZpY2F0ZSBbc3JjXT1cInVybHwgcGlwZVNhZmVTYW5pdGl6ZXI6ICd1cmwnXCIgYWx0PVwiQ2VydGlmaWNhdGVcIiByb2xlPVwiaW1hZ2VcIiBjbGFzcz1cImNlcnRpZmljYXRlLWJhbm5lci1pbWFnZVwiPlxuICAgIDwvbWF0LWNhcmQtY29udGVudD5cbiAgICA8bWF0LWNhcmQtYWN0aW9ucyBjbGFzcz1cImZsZXggZmxleC1yb3ctcmV2ZXJzZSBnYXAtNFwiPlxuICAgICAgICA8IS0tIDx3cy13aWRnZXQtc3ZnLXRvLXBkZj48L3dzLXdpZGdldC1zdmctdG8tcGRmPiAtLT5cbiAgICAgICAgPGEgbWF0LWJ1dHRvbiAoY2xpY2spPVwic2hhcmVDZXJ0KClcIiBjbGFzcz1cIndzLW1hdC1hY2NlbnQtYm9yZGVyLWFjdGl2ZSBtYXQtYWNjZW50IGJ0bi1jdXN0b21cIj5cbiAgICAgICAgICAgIDxtYXQtaWNvbiBjbGFzcz1cIm1hdC1pY29uIG1hdGVyaWFsLWljb25zLW91dGxpbmVkIGRvd25sb2FkX2ljb24gbWFyZ2luLXJpZ2h0LXhzXCI+c2hhcmU8L21hdC1pY29uPlxuICAgICAgICAgICAgU2hhcmVcbiAgICAgICAgPC9hPlxuICAgICAgICA8YSBtYXQtYnV0dG9uIFttYXRNZW51VHJpZ2dlckZvcl09XCJtZW51XCIgY2xhc3M9XCJ3cy1tYXQtYWNjZW50LWJvcmRlci1hY3RpdmUgbWF0LWFjY2VudCBidG4tY3VzdG9tXCIgKGNsaWNrKT1cInJhaXNlSW50cmVhY3RUZWxlbWV0cnkoKVwiPlxuICAgICAgICAgICAgPG1hdC1pY29uIGNsYXNzPVwibWF0LWljb24gbWF0ZXJpYWwtaWNvbnMtb3V0bGluZWQgZG93bmxvYWRfaWNvbiBtYXJnaW4tcmlnaHQteHNcIj5jbG91ZF9kb3dubG9hZDwvbWF0LWljb24+XG4gICAgICAgICAgICB7eydjZXJ0aWZpY2F0ZWRpYWxvZy5kb3dubG9hZCcgfCB0cmFuc2xhdGV9fVxuICAgICAgICA8L2E+XG4gICAgICAgIDxtYXQtbWVudSAjbWVudT1cIm1hdE1lbnVcIj5cbiAgICAgICAgICAgIDxidXR0b24gbWF0LW1lbnUtaXRlbSAoY2xpY2spPSdkb3dubG9hZENlcnRQZGYoKSc+XG4gICAgICAgICAgICAgICAgPG1hdC1pY29uPnBpY3R1cmVfYXNfcGRmPC9tYXQtaWNvbj5cbiAgICAgICAgICAgICAgICA8c3Bhbj57eydjZXJ0aWZpY2F0ZWRpYWxvZy5wZGYnIHwgdHJhbnNsYXRlfX08L3NwYW4+XG4gICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICAgIDxidXR0b24gbWF0LW1lbnUtaXRlbSAoY2xpY2spPSdkb3dubG9hZENlcnRQbmcoKSc+XG4gICAgICAgICAgICAgICAgPG1hdC1pY29uPnBob3RvPC9tYXQtaWNvbj5cbiAgICAgICAgICAgICAgICA8c3Bhbj57eydjZXJ0aWZpY2F0ZWRpYWxvZy5wbmcnIHwgdHJhbnNsYXRlfX08L3NwYW4+XG4gICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICAgIDxidXR0b24gbWF0LW1lbnUtaXRlbSAoY2xpY2spPSdkb3dubG9hZENlcnQoKSc+XG4gICAgICAgICAgICAgICAgPG1hdC1pY29uPnBob3RvX3NpemVfc2VsZWN0X2FjdHVhbDwvbWF0LWljb24+XG4gICAgICAgICAgICAgICAgPHNwYW4+e3snY2VydGlmaWNhdGVkaWFsb2cuc3ZnJyB8IHRyYW5zbGF0ZX19PC9zcGFuPlxuICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgIDwvbWF0LW1lbnU+XG4gICAgPC9tYXQtY2FyZC1hY3Rpb25zPlxuPC9tYXQtY2FyZD5cbiJdfQ==
|
|
1
|
+
import { Component, Inject } from '@angular/core';
|
|
2
|
+
import { MAT_LEGACY_DIALOG_DATA as MAT_DIALOG_DATA } from '@angular/material/legacy-dialog';
|
|
3
|
+
import { WsEvents } from '@sunbird-cb/utils-v2';
|
|
4
|
+
import { jsPDF } from 'jspdf';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
import * as i1 from "@sunbird-cb/utils-v2";
|
|
7
|
+
import * as i2 from "@angular/material/legacy-dialog";
|
|
8
|
+
import * as i3 from "@angular/material/legacy-button";
|
|
9
|
+
import * as i4 from "@angular/material/legacy-card";
|
|
10
|
+
import * as i5 from "@angular/material/icon";
|
|
11
|
+
import * as i6 from "@angular/material/legacy-menu";
|
|
12
|
+
import * as i7 from "@ngx-translate/core";
|
|
13
|
+
export class CertificateDialogComponent {
|
|
14
|
+
constructor(events, dialogRef, data, environment) {
|
|
15
|
+
this.events = events;
|
|
16
|
+
this.dialogRef = dialogRef;
|
|
17
|
+
this.data = data;
|
|
18
|
+
this.environment = environment;
|
|
19
|
+
this.navUrl = '';
|
|
20
|
+
}
|
|
21
|
+
ngOnInit() {
|
|
22
|
+
this.url = this.data.cet;
|
|
23
|
+
// tslint:disable-next-line:max-line-length
|
|
24
|
+
this.navUrl = `https://www.linkedin.com/sharing/share-offsite/?url=${this.environment.contentHost}/apis/public/v8/cert/download/${this.data.certId}`;
|
|
25
|
+
}
|
|
26
|
+
downloadCert() {
|
|
27
|
+
this.raiseIntreactTelemetry('svg');
|
|
28
|
+
const a = document.createElement('a');
|
|
29
|
+
a.href = this.data.cet;
|
|
30
|
+
a.download = 'Certificate';
|
|
31
|
+
document.body.appendChild(a);
|
|
32
|
+
a.style = 'display: none';
|
|
33
|
+
a.click();
|
|
34
|
+
a.remove();
|
|
35
|
+
}
|
|
36
|
+
downloadCertPng() {
|
|
37
|
+
this.raiseIntreactTelemetry('png');
|
|
38
|
+
const uriData = this.data.cet;
|
|
39
|
+
const img = new Image();
|
|
40
|
+
img.src = uriData;
|
|
41
|
+
img.width = 1820;
|
|
42
|
+
img.height = 1000;
|
|
43
|
+
img.onload = () => {
|
|
44
|
+
const canvas = document.createElement('canvas');
|
|
45
|
+
[canvas.width, canvas.height] = [img.width, img.height];
|
|
46
|
+
const ctx = canvas.getContext('2d');
|
|
47
|
+
if (ctx) {
|
|
48
|
+
// ctx.imageSmoothingEnabled = true
|
|
49
|
+
ctx.drawImage(img, 0, 0, img.width, img.height);
|
|
50
|
+
const a = document.createElement('a');
|
|
51
|
+
const quality = 1.0; // https://developer.mozilla.org/en-US/docs/Web/API/CanvasRenderingContext2D/imageSmoothingQuality
|
|
52
|
+
a.href = canvas.toDataURL('image/png', quality);
|
|
53
|
+
a.download = 'Certificate';
|
|
54
|
+
a.append(canvas);
|
|
55
|
+
a.click();
|
|
56
|
+
a.remove();
|
|
57
|
+
}
|
|
58
|
+
};
|
|
59
|
+
}
|
|
60
|
+
async downloadCertPdf() {
|
|
61
|
+
this.raiseIntreactTelemetry('pdf');
|
|
62
|
+
const uriData = this.data.cet;
|
|
63
|
+
const img = new Image();
|
|
64
|
+
img.src = uriData;
|
|
65
|
+
img.width = 1820;
|
|
66
|
+
img.height = 1000;
|
|
67
|
+
img.onload = () => {
|
|
68
|
+
const canvas = document.createElement('canvas');
|
|
69
|
+
[canvas.width, canvas.height] = [img.width, img.height];
|
|
70
|
+
const ctx = canvas.getContext('2d');
|
|
71
|
+
if (ctx) {
|
|
72
|
+
ctx.drawImage(img, 0, 0, img.width, img.height);
|
|
73
|
+
const quality = 1.0; // https://developer.mozilla.org/en-US/docs/Web/API/CanvasRenderingContext2D/imageSmoothingQuality
|
|
74
|
+
const dataImg = canvas.toDataURL('application/pdf', quality);
|
|
75
|
+
const pdf = new jsPDF('landscape', 'px', 'a4');
|
|
76
|
+
// add the image to the PDF
|
|
77
|
+
pdf.addImage(dataImg, 10, 20, 600, 350);
|
|
78
|
+
// download the PDF
|
|
79
|
+
pdf.save('Certificate.pdf');
|
|
80
|
+
}
|
|
81
|
+
};
|
|
82
|
+
}
|
|
83
|
+
shareCert() {
|
|
84
|
+
this.raiseShareIntreactTelemetry('share');
|
|
85
|
+
return window.open(this.navUrl, '_blank');
|
|
86
|
+
}
|
|
87
|
+
raiseShareIntreactTelemetry(type, action) {
|
|
88
|
+
this.events.raiseInteractTelemetry({
|
|
89
|
+
type: WsEvents.EnumInteractTypes.CLICK,
|
|
90
|
+
id: `${type}-${WsEvents.EnumInteractSubTypes.CERTIFICATE}`,
|
|
91
|
+
subType: action ? action : '',
|
|
92
|
+
}, {
|
|
93
|
+
id: this.data.certId,
|
|
94
|
+
type: WsEvents.EnumInteractSubTypes.CERTIFICATE,
|
|
95
|
+
});
|
|
96
|
+
}
|
|
97
|
+
raiseIntreactTelemetry(action) {
|
|
98
|
+
this.events.raiseInteractTelemetry({
|
|
99
|
+
type: WsEvents.EnumInteractTypes.CLICK,
|
|
100
|
+
id: 'download-certificate',
|
|
101
|
+
subType: action ? action : '',
|
|
102
|
+
}, {
|
|
103
|
+
id: this.data.certId,
|
|
104
|
+
type: WsEvents.EnumInteractSubTypes.CERTIFICATE,
|
|
105
|
+
});
|
|
106
|
+
}
|
|
107
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CertificateDialogComponent, deps: [{ token: i1.EventService }, { token: i2.MatLegacyDialogRef }, { token: MAT_DIALOG_DATA }, { token: 'environment' }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
108
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: CertificateDialogComponent, selector: "ws-widget-certificate-dialog", host: { classAttribute: "certificate-inner-dialog-panel" }, ngImport: i0, template: "<mat-card class=\"no-shadow certificate-img-box\">\r\n <button mat-icon-button class=\"close-button\" [mat-dialog-close]=\"true\">\r\n <mat-icon class=\"close-icon\" color=\"warn\">close</mat-icon>\r\n </button>\r\n <!-- <mat-card-title>\r\n\r\n </mat-card-title> -->\r\n <mat-card-content class=\"certificate-img-content\">\r\n <img #certificate [src]=\"url| pipeSafeSanitizer: 'url'\" alt=\"Certificate\" role=\"image\" class=\"certificate-banner-image\">\r\n </mat-card-content>\r\n <mat-card-actions class=\"flex flex-row-reverse gap-4\">\r\n <!-- <ws-widget-svg-to-pdf></ws-widget-svg-to-pdf> -->\r\n <a mat-button (click)=\"shareCert()\" class=\"ws-mat-accent-border-active mat-accent btn-custom\">\r\n <mat-icon class=\"mat-icon material-icons-outlined download_icon margin-right-xs\">share</mat-icon>\r\n Share\r\n </a>\r\n <a mat-button [matMenuTriggerFor]=\"menu\" class=\"ws-mat-accent-border-active mat-accent btn-custom\" (click)=\"raiseIntreactTelemetry()\">\r\n <mat-icon class=\"mat-icon material-icons-outlined download_icon margin-right-xs\">cloud_download</mat-icon>\r\n {{'certificatedialog.download' | translate}}\r\n </a>\r\n <mat-menu #menu=\"matMenu\">\r\n <button mat-menu-item (click)='downloadCertPdf()'>\r\n <mat-icon>picture_as_pdf</mat-icon>\r\n <span>{{'certificatedialog.pdf' | translate}}</span>\r\n </button>\r\n <button mat-menu-item (click)='downloadCertPng()'>\r\n <mat-icon>photo</mat-icon>\r\n <span>{{'certificatedialog.png' | translate}}</span>\r\n </button>\r\n <button mat-menu-item (click)='downloadCert()'>\r\n <mat-icon>photo_size_select_actual</mat-icon>\r\n <span>{{'certificatedialog.svg' | translate}}</span>\r\n </button>\r\n </mat-menu>\r\n </mat-card-actions>\r\n</mat-card>\r\n", styles: [".no-shadow{box-shadow:none!important}.certificate-banner-image{height:30rem;display:flex;width:auto;margin:0 auto}@media only screen and (max-width: 1279px){.certificate-banner-image{width:100%;height:auto;flex:1}}.certificate-img-box{max-height:35rem;overflow-y:auto;overflow-x:hidden}.certificate-img-content{overflow:hidden}a.download_btn{background-color:#f0f0f0;border-radius:4px;float:right;height:40px;padding:0 16px;text-align:center;line-height:40px;text-decoration:none;color:#0009;font-size:14px;font-weight:600;margin-top:16px;margin-right:0}.download_icon{font-size:16px;vertical-align:text-top}::ng-deep .close-button{float:right;top:-16px;right:-12px;height:30px;width:30px;line-height:30px;background:#000!important;color:#fff!important}::ng-deep .close-icon{transition:1s ease-in-out;color:#fff!important}::ng-deep .close-icon:hover{transform:rotate(180deg)}::ng-deep .icon-outside .close-button{float:right;position:absolute;top:19px;right:18px}::ng-deep .icon-outside .mat-dialog-container{overflow:unset}::ng-deep .cdk-overlay-pane{max-height:96%!important;overflow-y:auto!important}.certificate-banner-image svg{width:500;height:500}@media only screen and (max-width: 1279px){.certificate-banner-image svg{width:auto;height:auto;flex:1}}.btn-custom{box-sizing:border-box;position:relative;-webkit-user-select:none;user-select:none;cursor:pointer;outline:0;border:none;-webkit-tap-highlight-color:transparent;display:inline-block;white-space:nowrap;text-decoration:none;vertical-align:baseline;text-align:center;margin:0;min-width:64px;line-height:36px;padding:0 16px;border-radius:4px;overflow:visible}.close-button{position:absolute!important;top:19px!important;right:18px!important}@media screen and (max-width: 1200px){.btn-custom{box-sizing:border-box;position:relative;-webkit-user-select:none;user-select:none;cursor:pointer;outline:0;border:none;-webkit-tap-highlight-color:transparent;display:inline-block;white-space:nowrap;text-decoration:none;vertical-align:baseline;text-align:center;margin:0;min-width:64px;line-height:36px;padding:0 8px;border-radius:4px;overflow:visible}.gap-4{grid-gap:0rem;gap:0rem}}\n"], dependencies: [{ kind: "component", type: i3.MatLegacyButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i3.MatLegacyAnchor, selector: "a[mat-button], a[mat-raised-button], a[mat-icon-button], a[mat-fab], a[mat-mini-fab], a[mat-stroked-button], a[mat-flat-button]", inputs: ["disabled", "disableRipple", "color", "tabIndex"], exportAs: ["matButton", "matAnchor"] }, { kind: "component", type: i4.MatLegacyCard, selector: "mat-card", exportAs: ["matCard"] }, { kind: "directive", type: i4.MatLegacyCardContent, selector: "mat-card-content, [mat-card-content], [matCardContent]" }, { kind: "directive", type: i4.MatLegacyCardActions, selector: "mat-card-actions", inputs: ["align"], exportAs: ["matCardActions"] }, { kind: "component", type: i5.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i2.MatLegacyDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["aria-label", "type", "mat-dialog-close", "matDialogClose"], exportAs: ["matDialogClose"] }, { kind: "component", type: i6.MatLegacyMenu, selector: "mat-menu", exportAs: ["matMenu"] }, { kind: "component", type: i6.MatLegacyMenuItem, selector: "[mat-menu-item]", inputs: ["disabled", "disableRipple"], exportAs: ["matMenuItem"] }, { kind: "directive", type: i6.MatLegacyMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", exportAs: ["matMenuTrigger"] }, { kind: "pipe", type: i1.PipeSafeSanitizerPipe, name: "pipeSafeSanitizer" }, { kind: "pipe", type: i7.TranslatePipe, name: "translate" }] }); }
|
|
109
|
+
}
|
|
110
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CertificateDialogComponent, decorators: [{
|
|
111
|
+
type: Component,
|
|
112
|
+
args: [{ selector: 'ws-widget-certificate-dialog', host: { class: 'certificate-inner-dialog-panel' }, template: "<mat-card class=\"no-shadow certificate-img-box\">\r\n <button mat-icon-button class=\"close-button\" [mat-dialog-close]=\"true\">\r\n <mat-icon class=\"close-icon\" color=\"warn\">close</mat-icon>\r\n </button>\r\n <!-- <mat-card-title>\r\n\r\n </mat-card-title> -->\r\n <mat-card-content class=\"certificate-img-content\">\r\n <img #certificate [src]=\"url| pipeSafeSanitizer: 'url'\" alt=\"Certificate\" role=\"image\" class=\"certificate-banner-image\">\r\n </mat-card-content>\r\n <mat-card-actions class=\"flex flex-row-reverse gap-4\">\r\n <!-- <ws-widget-svg-to-pdf></ws-widget-svg-to-pdf> -->\r\n <a mat-button (click)=\"shareCert()\" class=\"ws-mat-accent-border-active mat-accent btn-custom\">\r\n <mat-icon class=\"mat-icon material-icons-outlined download_icon margin-right-xs\">share</mat-icon>\r\n Share\r\n </a>\r\n <a mat-button [matMenuTriggerFor]=\"menu\" class=\"ws-mat-accent-border-active mat-accent btn-custom\" (click)=\"raiseIntreactTelemetry()\">\r\n <mat-icon class=\"mat-icon material-icons-outlined download_icon margin-right-xs\">cloud_download</mat-icon>\r\n {{'certificatedialog.download' | translate}}\r\n </a>\r\n <mat-menu #menu=\"matMenu\">\r\n <button mat-menu-item (click)='downloadCertPdf()'>\r\n <mat-icon>picture_as_pdf</mat-icon>\r\n <span>{{'certificatedialog.pdf' | translate}}</span>\r\n </button>\r\n <button mat-menu-item (click)='downloadCertPng()'>\r\n <mat-icon>photo</mat-icon>\r\n <span>{{'certificatedialog.png' | translate}}</span>\r\n </button>\r\n <button mat-menu-item (click)='downloadCert()'>\r\n <mat-icon>photo_size_select_actual</mat-icon>\r\n <span>{{'certificatedialog.svg' | translate}}</span>\r\n </button>\r\n </mat-menu>\r\n </mat-card-actions>\r\n</mat-card>\r\n", styles: [".no-shadow{box-shadow:none!important}.certificate-banner-image{height:30rem;display:flex;width:auto;margin:0 auto}@media only screen and (max-width: 1279px){.certificate-banner-image{width:100%;height:auto;flex:1}}.certificate-img-box{max-height:35rem;overflow-y:auto;overflow-x:hidden}.certificate-img-content{overflow:hidden}a.download_btn{background-color:#f0f0f0;border-radius:4px;float:right;height:40px;padding:0 16px;text-align:center;line-height:40px;text-decoration:none;color:#0009;font-size:14px;font-weight:600;margin-top:16px;margin-right:0}.download_icon{font-size:16px;vertical-align:text-top}::ng-deep .close-button{float:right;top:-16px;right:-12px;height:30px;width:30px;line-height:30px;background:#000!important;color:#fff!important}::ng-deep .close-icon{transition:1s ease-in-out;color:#fff!important}::ng-deep .close-icon:hover{transform:rotate(180deg)}::ng-deep .icon-outside .close-button{float:right;position:absolute;top:19px;right:18px}::ng-deep .icon-outside .mat-dialog-container{overflow:unset}::ng-deep .cdk-overlay-pane{max-height:96%!important;overflow-y:auto!important}.certificate-banner-image svg{width:500;height:500}@media only screen and (max-width: 1279px){.certificate-banner-image svg{width:auto;height:auto;flex:1}}.btn-custom{box-sizing:border-box;position:relative;-webkit-user-select:none;user-select:none;cursor:pointer;outline:0;border:none;-webkit-tap-highlight-color:transparent;display:inline-block;white-space:nowrap;text-decoration:none;vertical-align:baseline;text-align:center;margin:0;min-width:64px;line-height:36px;padding:0 16px;border-radius:4px;overflow:visible}.close-button{position:absolute!important;top:19px!important;right:18px!important}@media screen and (max-width: 1200px){.btn-custom{box-sizing:border-box;position:relative;-webkit-user-select:none;user-select:none;cursor:pointer;outline:0;border:none;-webkit-tap-highlight-color:transparent;display:inline-block;white-space:nowrap;text-decoration:none;vertical-align:baseline;text-align:center;margin:0;min-width:64px;line-height:36px;padding:0 8px;border-radius:4px;overflow:visible}.gap-4{grid-gap:0rem;gap:0rem}}\n"] }]
|
|
113
|
+
}], ctorParameters: function () { return [{ type: i1.EventService }, { type: i2.MatLegacyDialogRef }, { type: undefined, decorators: [{
|
|
114
|
+
type: Inject,
|
|
115
|
+
args: [MAT_DIALOG_DATA]
|
|
116
|
+
}] }, { type: undefined, decorators: [{
|
|
117
|
+
type: Inject,
|
|
118
|
+
args: ['environment']
|
|
119
|
+
}] }]; } });
|
|
120
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2VydGlmaWNhdGUtZGlhbG9nLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnJhcnkvc3VuYmlyZC1jYi90b2Mvc3JjL2xpYi9fY29sbGVjdGlvbi9fY29tbW9uL2NlcnRpZmljYXRlLWRpYWxvZy9jZXJ0aWZpY2F0ZS1kaWFsb2cuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicmFyeS9zdW5iaXJkLWNiL3RvYy9zcmMvbGliL19jb2xsZWN0aW9uL19jb21tb24vY2VydGlmaWNhdGUtZGlhbG9nL2NlcnRpZmljYXRlLWRpYWxvZy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBVSxNQUFNLGVBQWUsQ0FBQTtBQUN6RCxPQUFPLEVBQXNDLHNCQUFzQixJQUFJLGVBQWUsRUFBRSxNQUFNLGlDQUFpQyxDQUFBO0FBQy9ILE9BQU8sRUFBZ0IsUUFBUSxFQUFFLE1BQU0sc0JBQXNCLENBQUE7QUFDN0QsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLE9BQU8sQ0FBQTs7Ozs7Ozs7O0FBVTdCLE1BQU0sT0FBTywwQkFBMEI7SUFHckMsWUFDVSxNQUFvQixFQUNyQixTQUFtRCxFQUMxQixJQUFTLEVBQ1YsV0FBZ0I7UUFIdkMsV0FBTSxHQUFOLE1BQU0sQ0FBYztRQUNyQixjQUFTLEdBQVQsU0FBUyxDQUEwQztRQUMxQixTQUFJLEdBQUosSUFBSSxDQUFLO1FBQ1YsZ0JBQVcsR0FBWCxXQUFXLENBQUs7UUFMakQsV0FBTSxHQUFHLEVBQUUsQ0FBQTtJQVFYLENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxDQUFDLEdBQUcsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQTtRQUN4QiwyQ0FBMkM7UUFDM0MsSUFBSSxDQUFDLE1BQU0sR0FBRyx1REFBdUQsSUFBSSxDQUFDLFdB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QUMsb0JBQW9CLENBQUMsV0FBVyxFQUFFO1lBQzFELE9BQU8sRUFBRyxNQUFNLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRTtTQUMvQixFQUNEO1lBQ0UsRUFBRSxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTTtZQUNwQixJQUFJLEVBQUUsUUFBUSxDQUFDLG9CQUFvQixDQUFDLFdBQVc7U0FDaEQsQ0FDRixDQUFBO0lBQ0gsQ0FBQztJQUVELHNCQUFzQixDQUFDLE1BQWU7UUFDcEMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxzQkFBc0IsQ0FDaEM7WUFDRSxJQUFJLEVBQUUsUUFBUSxDQUFDLGlCQUFpQixDQUFDLEtBQUs7WUFDdEMsRUFBRSxFQUFFLHNCQUFzQjtZQUMxQixPQUFPLEVBQUUsTUFBTSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUU7U0FDOUIsRUFDRDtZQUNFLEVBQUUsRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU07WUFDcEIsSUFBSSxFQUFFLFFBQVEsQ0FBQyxvQkFBb0IsQ0FBQyxXQUFXO1NBQ2hELENBQ0YsQ0FBQTtJQUNILENBQUM7K0dBOUdVLDBCQUEwQixnRkFNM0IsZUFBZSxhQUNmLGFBQWE7bUdBUFosMEJBQTBCLGdJQ2J2QyxvK0RBb0NBOzs0RkR2QmEsMEJBQTBCO2tCQVJ0QyxTQUFTOytCQUNFLDhCQUE4QixRQUlqQyxFQUFFLEtBQUssRUFBRSxnQ0FBZ0MsRUFBRTs7MEJBUy9DLE1BQU07MkJBQUMsZUFBZTs7MEJBQ3RCLE1BQU07MkJBQUMsYUFBYSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5qZWN0LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xyXG5pbXBvcnQgeyBNYXRMZWdhY3lEaWFsb2dSZWYgYXMgTWF0RGlhbG9nUmVmLCBNQVRfTEVHQUNZX0RJQUxPR19EQVRBIGFzIE1BVF9ESUFMT0dfREFUQSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2xlZ2FjeS1kaWFsb2cnXHJcbmltcG9ydCB7IEV2ZW50U2VydmljZSwgV3NFdmVudHMgfSBmcm9tICdAc3VuYmlyZC1jYi91dGlscy12MidcclxuaW1wb3J0IHsganNQREYgfSBmcm9tICdqc3BkZidcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnd3Mtd2lkZ2V0LWNlcnRpZmljYXRlLWRpYWxvZycsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2NlcnRpZmljYXRlLWRpYWxvZy5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vY2VydGlmaWNhdGUtZGlhbG9nLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgIC8qIHRzbGludDpkaXNhYmxlICovXHJcbiAgIGhvc3Q6IHsgY2xhc3M6ICdjZXJ0aWZpY2F0ZS1pbm5lci1kaWFsb2ctcGFuZWwnIH0sXHJcbiAgIC8qIHRzbGludDplbmFibGUgKi9cclxufSlcclxuZXhwb3J0IGNsYXNzIENlcnRpZmljYXRlRGlhbG9nQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuICB1cmwhOiBzdHJpbmdcclxuICBuYXZVcmwgPSAnJ1xyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBldmVudHM6IEV2ZW50U2VydmljZSxcclxuICAgIHB1YmxpYyBkaWFsb2dSZWY6IE1hdERpYWxvZ1JlZjxDZXJ0aWZpY2F0ZURpYWxvZ0NvbXBvbmVudD4sXHJcbiAgICBASW5qZWN0KE1BVF9ESUFMT0dfREFUQSkgcHVibGljIGRhdGE6IGFueSxcclxuICAgIEBJbmplY3QoJ2Vudmlyb25tZW50JykgcHJpdmF0ZSBlbnZpcm9ubWVudDogYW55XHJcbiAgKSB7XHJcblxyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICB0aGlzLnVybCA9IHRoaXMuZGF0YS5jZXRcclxuICAgIC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTptYXgtbGluZS1sZW5ndGhcclxuICAgIHRoaXMubmF2VXJsID0gYGh0dHBzOi8vd3d3LmxpbmtlZGluLmNvbS9zaGFyaW5nL3NoYXJlLW9mZnNpdGUvP3VybD0ke3RoaXMuZW52aXJvbm1lbnQuY29udGVudEhvc3R9L2FwaXMvcHVibGljL3Y4L2NlcnQvZG93bmxvYWQvJHt0aGlzLmRhdGEuY2VydElkfWBcclxuICB9XHJcblxyXG4gIGRvd25sb2FkQ2VydCgpIHtcclxuICAgIHRoaXMucmFpc2VJbnRyZWFjdFRlbGVtZXRyeSgnc3ZnJylcclxuICAgIGNvbnN0IGE6IGFueSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2EnKVxyXG4gICAgYS5ocmVmID0gdGhpcy5kYXRhLmNldFxyXG4gICAgYS5kb3dubG9hZCA9ICdDZXJ0aWZpY2F0ZSdcclxuICAgIGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoYSlcclxuICAgIGEuc3R5bGUgPSAnZGlzcGxheTogbm9uZSdcclxuICAgIGEuY2xpY2soKVxyXG4gICAgYS5yZW1vdmUoKVxyXG4gIH1cclxuXHJcbiAgZG93bmxvYWRDZXJ0UG5nKCkge1xyXG4gICAgdGhpcy5yYWlzZUludHJlYWN0VGVsZW1ldHJ5KCdwbmcnKVxyXG4gICAgY29uc3QgdXJpRGF0YSA9IHRoaXMuZGF0YS5jZXRcclxuICAgIGNvbnN0IGltZyA9IG5ldyBJbWFnZSgpXHJcbiAgICBpbWcuc3JjID0gdXJpRGF0YVxyXG4gICAgaW1nLndpZHRoID0gMTgyMFxyXG4gICAgaW1nLmhlaWdodCA9IDEwMDBcclxuICAgIGltZy5vbmxvYWQgPSAoKSA9PiB7XHJcbiAgICAgIGNvbnN0IGNhbnZhcyA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2NhbnZhcycpO1xyXG4gICAgICBbY2FudmFzLndpZHRoLCBjYW52YXMuaGVpZ2h0XSA9IFtpbWcud2lkdGgsIGltZy5oZWlnaHRdXHJcbiAgICAgIGNvbnN0IGN0eCA9IGNhbnZhcy5nZXRDb250ZXh0KCcyZCcpXHJcbiAgICAgIGlmIChjdHgpIHtcclxuICAgICAgICAvLyBjdHguaW1hZ2VTbW9vdGhpbmdFbmFibGVkID0gdHJ1ZVxyXG4gICAgICAgIGN0eC5kcmF3SW1hZ2UoaW1nLCAwLCAwLCBpbWcud2lkdGgsIGltZy5oZWlnaHQpXHJcbiAgICAgICAgY29uc3QgYSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2EnKVxyXG4gICAgICAgIGNvbnN0IHF1YWxpdHkgPSAxLjAgLy8gaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvQVBJL0NhbnZhc1JlbmRlcmluZ0NvbnRleHQyRC9pbWFnZVNtb290aGluZ1F1YWxpdHlcclxuICAgICAgICBhLmhyZWYgPSBjYW52YXMudG9EYXRhVVJMKCdpbWFnZS9wbmcnLCBxdWFsaXR5KVxyXG4gICAgICAgIGEuZG93bmxvYWQgPSAnQ2VydGlmaWNhdGUnXHJcbiAgICAgICAgYS5hcHBlbmQoY2FudmFzKVxyXG4gICAgICAgIGEuY2xpY2soKVxyXG4gICAgICAgIGEucmVtb3ZlKClcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICBhc3luYyBkb3dubG9hZENlcnRQZGYoKSB7XHJcbiAgICB0aGlzLnJhaXNlSW50cmVhY3RUZWxlbWV0cnkoJ3BkZicpXHJcbiAgICBjb25zdCB1cmlEYXRhID0gdGhpcy5kYXRhLmNldFxyXG4gICAgY29uc3QgaW1nID0gbmV3IEltYWdlKClcclxuICAgIGltZy5zcmMgPSB1cmlEYXRhXHJcbiAgICBpbWcud2lkdGggPSAxODIwXHJcbiAgICBpbWcuaGVpZ2h0ID0gMTAwMFxyXG4gICAgaW1nLm9ubG9hZCA9ICgpID0+IHtcclxuICAgICAgY29uc3QgY2FudmFzID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnY2FudmFzJyk7XHJcbiAgICAgIFtjYW52YXMud2lkdGgsIGNhbnZhcy5oZWlnaHRdID0gW2ltZy53aWR0aCwgaW1nLmhlaWdodF1cclxuICAgICAgY29uc3QgY3R4ID0gY2FudmFzLmdldENvbnRleHQoJzJkJylcclxuICAgICAgaWYgKGN0eCkge1xyXG4gICAgICAgIGN0eC5kcmF3SW1hZ2UoaW1nLCAwLCAwLCBpbWcud2lkdGgsIGltZy5oZWlnaHQpXHJcbiAgICAgICAgY29uc3QgcXVhbGl0eSA9IDEuMCAvLyBodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9BUEkvQ2FudmFzUmVuZGVyaW5nQ29udGV4dDJEL2ltYWdlU21vb3RoaW5nUXVhbGl0eVxyXG4gICAgICAgIGNvbnN0IGRhdGFJbWcgPSBjYW52YXMudG9EYXRhVVJMKCdhcHBsaWNhdGlvbi9wZGYnLCBxdWFsaXR5KVxyXG4gICAgICAgIGNvbnN0IHBkZiA9IG5ldyBqc1BERignbGFuZHNjYXBlJywgJ3B4JywgJ2E0JylcclxuXHJcbiAgICAgICAgLy8gYWRkIHRoZSBpbWFnZSB0byB0aGUgUERGXHJcbiAgICAgICAgcGRmLmFkZEltYWdlKGRhdGFJbWcsIDEwLCAyMCwgNjAwLCAzNTApXHJcblxyXG4gICAgICAgIC8vIGRvd25sb2FkIHRoZSBQREZcclxuICAgICAgICBwZGYuc2F2ZSgnQ2VydGlmaWNhdGUucGRmJylcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgc2hhcmVDZXJ0KCkge1xyXG4gICAgdGhpcy5yYWlzZVNoYXJlSW50cmVhY3RUZWxlbWV0cnkoJ3NoYXJlJylcclxuICAgIHJldHVybiB3aW5kb3cub3Blbih0aGlzLm5hdlVybCwgJ19ibGFuaycpXHJcbiAgfVxyXG5cclxuICByYWlzZVNoYXJlSW50cmVhY3RUZWxlbWV0cnkodHlwZT86IHN0cmluZywgYWN0aW9uPzogc3RyaW5nKSB7XHJcbiAgICB0aGlzLmV2ZW50cy5yYWlzZUludGVyYWN0VGVsZW1ldHJ5KFxyXG4gICAgICB7XHJcbiAgICAgICAgdHlwZTogV3NFdmVudHMuRW51bUludGVyYWN0VHlwZXMuQ0xJQ0ssXHJcbiAgICAgICAgaWQ6IGAke3R5cGV9LSR7V3NFdmVudHMuRW51bUludGVyYWN0U3ViVHlwZXMuQ0VSVElGSUNBVEV9YCxcclxuICAgICAgICBzdWJUeXBlOiAgYWN0aW9uID8gYWN0aW9uIDogJycsXHJcbiAgICAgIH0sXHJcbiAgICAgIHtcclxuICAgICAgICBpZDogdGhpcy5kYXRhLmNlcnRJZCwgICAvLyBpZCBvZiB0aGUgY2VydGlmaWNhdGVcclxuICAgICAgICB0eXBlOiBXc0V2ZW50cy5FbnVtSW50ZXJhY3RTdWJUeXBlcy5DRVJUSUZJQ0FURSxcclxuICAgICAgfVxyXG4gICAgKVxyXG4gIH1cclxuXHJcbiAgcmFpc2VJbnRyZWFjdFRlbGVtZXRyeShhY3Rpb24/OiBzdHJpbmcpIHtcclxuICAgIHRoaXMuZXZlbnRzLnJhaXNlSW50ZXJhY3RUZWxlbWV0cnkoXHJcbiAgICAgIHtcclxuICAgICAgICB0eXBlOiBXc0V2ZW50cy5FbnVtSW50ZXJhY3RUeXBlcy5DTElDSyxcclxuICAgICAgICBpZDogJ2Rvd25sb2FkLWNlcnRpZmljYXRlJyxcclxuICAgICAgICBzdWJUeXBlOiBhY3Rpb24gPyBhY3Rpb24gOiAnJyxcclxuICAgICAgfSxcclxuICAgICAge1xyXG4gICAgICAgIGlkOiB0aGlzLmRhdGEuY2VydElkLCAgIC8vIGlkIG9mIHRoZSBjZXJ0aWZpY2F0ZVxyXG4gICAgICAgIHR5cGU6IFdzRXZlbnRzLkVudW1JbnRlcmFjdFN1YlR5cGVzLkNFUlRJRklDQVRFLFxyXG4gICAgICB9XHJcbiAgICApXHJcbiAgfVxyXG5cclxufVxyXG4iLCI8bWF0LWNhcmQgY2xhc3M9XCJuby1zaGFkb3cgY2VydGlmaWNhdGUtaW1nLWJveFwiPlxyXG4gICAgPGJ1dHRvbiBtYXQtaWNvbi1idXR0b24gY2xhc3M9XCJjbG9zZS1idXR0b25cIiBbbWF0LWRpYWxvZy1jbG9zZV09XCJ0cnVlXCI+XHJcbiAgICAgICAgPG1hdC1pY29uIGNsYXNzPVwiY2xvc2UtaWNvblwiIGNvbG9yPVwid2FyblwiPmNsb3NlPC9tYXQtaWNvbj5cclxuICAgIDwvYnV0dG9uPlxyXG4gICAgPCEtLSA8bWF0LWNhcmQtdGl0bGU+XHJcblxyXG4gICAgPC9tYXQtY2FyZC10aXRsZT4gLS0+XHJcbiAgICA8bWF0LWNhcmQtY29udGVudCBjbGFzcz1cImNlcnRpZmljYXRlLWltZy1jb250ZW50XCI+XHJcbiAgICAgICAgPGltZyAjY2VydGlmaWNhdGUgW3NyY109XCJ1cmx8IHBpcGVTYWZlU2FuaXRpemVyOiAndXJsJ1wiIGFsdD1cIkNlcnRpZmljYXRlXCIgcm9sZT1cImltYWdlXCIgY2xhc3M9XCJjZXJ0aWZpY2F0ZS1iYW5uZXItaW1hZ2VcIj5cclxuICAgIDwvbWF0LWNhcmQtY29udGVudD5cclxuICAgIDxtYXQtY2FyZC1hY3Rpb25zIGNsYXNzPVwiZmxleCBmbGV4LXJvdy1yZXZlcnNlIGdhcC00XCI+XHJcbiAgICAgICAgPCEtLSA8d3Mtd2lkZ2V0LXN2Zy10by1wZGY+PC93cy13aWRnZXQtc3ZnLXRvLXBkZj4gLS0+XHJcbiAgICAgICAgPGEgbWF0LWJ1dHRvbiAoY2xpY2spPVwic2hhcmVDZXJ0KClcIiBjbGFzcz1cIndzLW1hdC1hY2NlbnQtYm9yZGVyLWFjdGl2ZSBtYXQtYWNjZW50IGJ0bi1jdXN0b21cIj5cclxuICAgICAgICAgICAgPG1hdC1pY29uIGNsYXNzPVwibWF0LWljb24gbWF0ZXJpYWwtaWNvbnMtb3V0bGluZWQgZG93bmxvYWRfaWNvbiBtYXJnaW4tcmlnaHQteHNcIj5zaGFyZTwvbWF0LWljb24+XHJcbiAgICAgICAgICAgIFNoYXJlXHJcbiAgICAgICAgPC9hPlxyXG4gICAgICAgIDxhIG1hdC1idXR0b24gW21hdE1lbnVUcmlnZ2VyRm9yXT1cIm1lbnVcIiBjbGFzcz1cIndzLW1hdC1hY2NlbnQtYm9yZGVyLWFjdGl2ZSBtYXQtYWNjZW50IGJ0bi1jdXN0b21cIiAoY2xpY2spPVwicmFpc2VJbnRyZWFjdFRlbGVtZXRyeSgpXCI+XHJcbiAgICAgICAgICAgIDxtYXQtaWNvbiBjbGFzcz1cIm1hdC1pY29uIG1hdGVyaWFsLWljb25zLW91dGxpbmVkIGRvd25sb2FkX2ljb24gbWFyZ2luLXJpZ2h0LXhzXCI+Y2xvdWRfZG93bmxvYWQ8L21hdC1pY29uPlxyXG4gICAgICAgICAgICB7eydjZXJ0aWZpY2F0ZWRpYWxvZy5kb3dubG9hZCcgfCB0cmFuc2xhdGV9fVxyXG4gICAgICAgIDwvYT5cclxuICAgICAgICA8bWF0LW1lbnUgI21lbnU9XCJtYXRNZW51XCI+XHJcbiAgICAgICAgICAgIDxidXR0b24gbWF0LW1lbnUtaXRlbSAoY2xpY2spPSdkb3dubG9hZENlcnRQZGYoKSc+XHJcbiAgICAgICAgICAgICAgICA8bWF0LWljb24+cGljdHVyZV9hc19wZGY8L21hdC1pY29uPlxyXG4gICAgICAgICAgICAgICAgPHNwYW4+e3snY2VydGlmaWNhdGVkaWFsb2cucGRmJyB8IHRyYW5zbGF0ZX19PC9zcGFuPlxyXG4gICAgICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICAgICAgPGJ1dHRvbiBtYXQtbWVudS1pdGVtIChjbGljayk9J2Rvd25sb2FkQ2VydFBuZygpJz5cclxuICAgICAgICAgICAgICAgIDxtYXQtaWNvbj5waG90bzwvbWF0LWljb24+XHJcbiAgICAgICAgICAgICAgICA8c3Bhbj57eydjZXJ0aWZpY2F0ZWRpYWxvZy5wbmcnIHwgdHJhbnNsYXRlfX08L3NwYW4+XHJcbiAgICAgICAgICAgIDwvYnV0dG9uPlxyXG4gICAgICAgICAgICA8YnV0dG9uIG1hdC1tZW51LWl0ZW0gKGNsaWNrKT0nZG93bmxvYWRDZXJ0KCknPlxyXG4gICAgICAgICAgICAgICAgPG1hdC1pY29uPnBob3RvX3NpemVfc2VsZWN0X2FjdHVhbDwvbWF0LWljb24+XHJcbiAgICAgICAgICAgICAgICA8c3Bhbj57eydjZXJ0aWZpY2F0ZWRpYWxvZy5zdmcnIHwgdHJhbnNsYXRlfX08L3NwYW4+XHJcbiAgICAgICAgICAgIDwvYnV0dG9uPlxyXG4gICAgICAgIDwvbWF0LW1lbnU+XHJcbiAgICA8L21hdC1jYXJkLWFjdGlvbnM+XHJcbjwvbWF0LWNhcmQ+XHJcbiJdfQ==
|
|
@@ -1,92 +1,92 @@
|
|
|
1
|
-
import { NgModule } from '@angular/core';
|
|
2
|
-
import { CommonModule } from '@angular/common';
|
|
3
|
-
import { CertificateDialogComponent } from './certificate-dialog.component';
|
|
4
|
-
import { FormsModule, ReactiveFormsModule } from '@angular/forms';
|
|
5
|
-
import { PipeSafeSanitizerModule } from '@sunbird-cb/utils-v2';
|
|
6
|
-
import { SvgToPdfComponent } from './svg-to-pdf.component';
|
|
7
|
-
import { HttpClient } from '@angular/common/http';
|
|
8
|
-
import { TranslateModule, TranslateLoader } from '@ngx-translate/core';
|
|
9
|
-
import { MatLegacyButtonModule as MatButtonModule } from '@angular/material/legacy-button';
|
|
10
|
-
import { MatLegacyCardModule as MatCardModule } from '@angular/material/legacy-card';
|
|
11
|
-
import { MatLegacyDialogModule as MatDialogModule } from '@angular/material/legacy-dialog';
|
|
12
|
-
import { MatLegacyFormFieldModule as MatFormFieldModule } from '@angular/material/legacy-form-field';
|
|
13
|
-
import { MatIconModule } from '@angular/material/icon';
|
|
14
|
-
import { MatLegacyInputModule as MatInputModule } from '@angular/material/legacy-input';
|
|
15
|
-
import { MatLegacyMenuModule as MatMenuModule } from '@angular/material/legacy-menu';
|
|
16
|
-
import { MatLegacyProgressSpinnerModule as MatProgressSpinnerModule } from '@angular/material/legacy-progress-spinner';
|
|
17
|
-
import { MatLegacySnackBarModule as MatSnackBarModule } from '@angular/material/legacy-snack-bar';
|
|
18
|
-
import { MatLegacyTooltipModule as MatTooltipModule } from '@angular/material/legacy-tooltip';
|
|
19
|
-
import { HttpLoaderFactory } from '@sunbird-cb/consumption';
|
|
20
|
-
import * as i0 from "@angular/core";
|
|
21
|
-
import * as i1 from "@ngx-translate/core";
|
|
22
|
-
export class CertificateDialogModule {
|
|
23
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CertificateDialogModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
24
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: CertificateDialogModule, declarations: [CertificateDialogComponent, SvgToPdfComponent], imports: [CommonModule,
|
|
25
|
-
FormsModule,
|
|
26
|
-
ReactiveFormsModule,
|
|
27
|
-
MatButtonModule,
|
|
28
|
-
MatCardModule,
|
|
29
|
-
MatIconModule,
|
|
30
|
-
MatTooltipModule,
|
|
31
|
-
MatDialogModule,
|
|
32
|
-
MatProgressSpinnerModule,
|
|
33
|
-
MatFormFieldModule,
|
|
34
|
-
MatInputModule,
|
|
35
|
-
MatSnackBarModule,
|
|
36
|
-
MatMenuModule,
|
|
37
|
-
PipeSafeSanitizerModule, i1.TranslateModule], exports: [CertificateDialogComponent] }); }
|
|
38
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CertificateDialogModule, imports: [CommonModule,
|
|
39
|
-
FormsModule,
|
|
40
|
-
ReactiveFormsModule,
|
|
41
|
-
MatButtonModule,
|
|
42
|
-
MatCardModule,
|
|
43
|
-
MatIconModule,
|
|
44
|
-
MatTooltipModule,
|
|
45
|
-
MatDialogModule,
|
|
46
|
-
MatProgressSpinnerModule,
|
|
47
|
-
MatFormFieldModule,
|
|
48
|
-
MatInputModule,
|
|
49
|
-
MatSnackBarModule,
|
|
50
|
-
MatMenuModule,
|
|
51
|
-
PipeSafeSanitizerModule,
|
|
52
|
-
TranslateModule.forRoot({
|
|
53
|
-
loader: {
|
|
54
|
-
provide: TranslateLoader,
|
|
55
|
-
useFactory: HttpLoaderFactory,
|
|
56
|
-
deps: [HttpClient],
|
|
57
|
-
},
|
|
58
|
-
})] }); }
|
|
59
|
-
}
|
|
60
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CertificateDialogModule, decorators: [{
|
|
61
|
-
type: NgModule,
|
|
62
|
-
args: [{
|
|
63
|
-
declarations: [CertificateDialogComponent, SvgToPdfComponent],
|
|
64
|
-
imports: [
|
|
65
|
-
CommonModule,
|
|
66
|
-
FormsModule,
|
|
67
|
-
ReactiveFormsModule,
|
|
68
|
-
MatButtonModule,
|
|
69
|
-
MatCardModule,
|
|
70
|
-
MatIconModule,
|
|
71
|
-
MatTooltipModule,
|
|
72
|
-
MatDialogModule,
|
|
73
|
-
MatProgressSpinnerModule,
|
|
74
|
-
MatFormFieldModule,
|
|
75
|
-
MatInputModule,
|
|
76
|
-
MatSnackBarModule,
|
|
77
|
-
MatMenuModule,
|
|
78
|
-
PipeSafeSanitizerModule,
|
|
79
|
-
TranslateModule.forRoot({
|
|
80
|
-
loader: {
|
|
81
|
-
provide: TranslateLoader,
|
|
82
|
-
useFactory: HttpLoaderFactory,
|
|
83
|
-
deps: [HttpClient],
|
|
84
|
-
},
|
|
85
|
-
}),
|
|
86
|
-
],
|
|
87
|
-
exports: [
|
|
88
|
-
CertificateDialogComponent,
|
|
89
|
-
]
|
|
90
|
-
}]
|
|
91
|
-
}] });
|
|
92
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
import { NgModule } from '@angular/core';
|
|
2
|
+
import { CommonModule } from '@angular/common';
|
|
3
|
+
import { CertificateDialogComponent } from './certificate-dialog.component';
|
|
4
|
+
import { FormsModule, ReactiveFormsModule } from '@angular/forms';
|
|
5
|
+
import { PipeSafeSanitizerModule } from '@sunbird-cb/utils-v2';
|
|
6
|
+
import { SvgToPdfComponent } from './svg-to-pdf.component';
|
|
7
|
+
import { HttpClient } from '@angular/common/http';
|
|
8
|
+
import { TranslateModule, TranslateLoader } from '@ngx-translate/core';
|
|
9
|
+
import { MatLegacyButtonModule as MatButtonModule } from '@angular/material/legacy-button';
|
|
10
|
+
import { MatLegacyCardModule as MatCardModule } from '@angular/material/legacy-card';
|
|
11
|
+
import { MatLegacyDialogModule as MatDialogModule } from '@angular/material/legacy-dialog';
|
|
12
|
+
import { MatLegacyFormFieldModule as MatFormFieldModule } from '@angular/material/legacy-form-field';
|
|
13
|
+
import { MatIconModule } from '@angular/material/icon';
|
|
14
|
+
import { MatLegacyInputModule as MatInputModule } from '@angular/material/legacy-input';
|
|
15
|
+
import { MatLegacyMenuModule as MatMenuModule } from '@angular/material/legacy-menu';
|
|
16
|
+
import { MatLegacyProgressSpinnerModule as MatProgressSpinnerModule } from '@angular/material/legacy-progress-spinner';
|
|
17
|
+
import { MatLegacySnackBarModule as MatSnackBarModule } from '@angular/material/legacy-snack-bar';
|
|
18
|
+
import { MatLegacyTooltipModule as MatTooltipModule } from '@angular/material/legacy-tooltip';
|
|
19
|
+
import { HttpLoaderFactory } from '@sunbird-cb/consumption';
|
|
20
|
+
import * as i0 from "@angular/core";
|
|
21
|
+
import * as i1 from "@ngx-translate/core";
|
|
22
|
+
export class CertificateDialogModule {
|
|
23
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CertificateDialogModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
24
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: CertificateDialogModule, declarations: [CertificateDialogComponent, SvgToPdfComponent], imports: [CommonModule,
|
|
25
|
+
FormsModule,
|
|
26
|
+
ReactiveFormsModule,
|
|
27
|
+
MatButtonModule,
|
|
28
|
+
MatCardModule,
|
|
29
|
+
MatIconModule,
|
|
30
|
+
MatTooltipModule,
|
|
31
|
+
MatDialogModule,
|
|
32
|
+
MatProgressSpinnerModule,
|
|
33
|
+
MatFormFieldModule,
|
|
34
|
+
MatInputModule,
|
|
35
|
+
MatSnackBarModule,
|
|
36
|
+
MatMenuModule,
|
|
37
|
+
PipeSafeSanitizerModule, i1.TranslateModule], exports: [CertificateDialogComponent] }); }
|
|
38
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CertificateDialogModule, imports: [CommonModule,
|
|
39
|
+
FormsModule,
|
|
40
|
+
ReactiveFormsModule,
|
|
41
|
+
MatButtonModule,
|
|
42
|
+
MatCardModule,
|
|
43
|
+
MatIconModule,
|
|
44
|
+
MatTooltipModule,
|
|
45
|
+
MatDialogModule,
|
|
46
|
+
MatProgressSpinnerModule,
|
|
47
|
+
MatFormFieldModule,
|
|
48
|
+
MatInputModule,
|
|
49
|
+
MatSnackBarModule,
|
|
50
|
+
MatMenuModule,
|
|
51
|
+
PipeSafeSanitizerModule,
|
|
52
|
+
TranslateModule.forRoot({
|
|
53
|
+
loader: {
|
|
54
|
+
provide: TranslateLoader,
|
|
55
|
+
useFactory: HttpLoaderFactory,
|
|
56
|
+
deps: [HttpClient],
|
|
57
|
+
},
|
|
58
|
+
})] }); }
|
|
59
|
+
}
|
|
60
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CertificateDialogModule, decorators: [{
|
|
61
|
+
type: NgModule,
|
|
62
|
+
args: [{
|
|
63
|
+
declarations: [CertificateDialogComponent, SvgToPdfComponent],
|
|
64
|
+
imports: [
|
|
65
|
+
CommonModule,
|
|
66
|
+
FormsModule,
|
|
67
|
+
ReactiveFormsModule,
|
|
68
|
+
MatButtonModule,
|
|
69
|
+
MatCardModule,
|
|
70
|
+
MatIconModule,
|
|
71
|
+
MatTooltipModule,
|
|
72
|
+
MatDialogModule,
|
|
73
|
+
MatProgressSpinnerModule,
|
|
74
|
+
MatFormFieldModule,
|
|
75
|
+
MatInputModule,
|
|
76
|
+
MatSnackBarModule,
|
|
77
|
+
MatMenuModule,
|
|
78
|
+
PipeSafeSanitizerModule,
|
|
79
|
+
TranslateModule.forRoot({
|
|
80
|
+
loader: {
|
|
81
|
+
provide: TranslateLoader,
|
|
82
|
+
useFactory: HttpLoaderFactory,
|
|
83
|
+
deps: [HttpClient],
|
|
84
|
+
},
|
|
85
|
+
}),
|
|
86
|
+
],
|
|
87
|
+
exports: [
|
|
88
|
+
CertificateDialogComponent,
|
|
89
|
+
]
|
|
90
|
+
}]
|
|
91
|
+
}] });
|
|
92
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2VydGlmaWNhdGUtZGlhbG9nLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnJhcnkvc3VuYmlyZC1jYi90b2Mvc3JjL2xpYi9fY29sbGVjdGlvbi9fY29tbW9uL2NlcnRpZmljYXRlLWRpYWxvZy9jZXJ0aWZpY2F0ZS1kaWFsb2cubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUE7QUFDeEMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFBO0FBQzlDLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLGdDQUFnQyxDQUFBO0FBQzNFLE9BQU8sRUFBRSxXQUFXLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQTtBQUVqRSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQTtBQUM5RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQTtBQUMxRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUE7QUFDakQsT0FBTyxFQUFFLGVBQWUsRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQTtBQUN0RSxPQUFPLEVBQUUscUJBQXFCLElBQUksZUFBZSxFQUFFLE1BQU0saUNBQWlDLENBQUE7QUFDMUYsT0FBTyxFQUFFLG1CQUFtQixJQUFJLGFBQWEsRUFBRSxNQUFNLCtCQUErQixDQUFBO0FBQ3BGLE9BQU8sRUFBRSxxQkFBcUIsSUFBSSxlQUFlLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQTtBQUMxRixPQUFPLEVBQUUsd0JBQXdCLElBQUksa0JBQWtCLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQTtBQUNwRyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUE7QUFDdEQsT0FBTyxFQUFFLG9CQUFvQixJQUFJLGNBQWMsRUFBRSxNQUFNLGdDQUFnQyxDQUFBO0FBQ3ZGLE9BQU8sRUFBRSxtQkFBbUIsSUFBSSxhQUFhLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQTtBQUNwRixPQUFPLEVBQUUsOEJBQThCLElBQUksd0JBQXdCLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQTtBQUN0SCxPQUFPLEVBQUUsdUJBQXVCLElBQUksaUJBQWlCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQTtBQUNqRyxPQUFPLEVBQUUsc0JBQXNCLElBQUksZ0JBQWdCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQTtBQUM3RixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQTs7O0FBOEIzRCxNQUFNLE9BQU8sdUJBQXVCOytHQUF2Qix1QkFBdUI7Z0hBQXZCLHVCQUF1QixpQkE1QmpCLDBCQUEwQixFQUFFLGlCQUFpQixhQUV4RCxZQUFZO1lBQ1osV0FBVztZQUNYLG1CQUFtQjtZQUNuQixlQUFlO1lBQ2YsYUFBYTtZQUNiLGFBQWE7WUFDYixnQkFBZ0I7WUFDaEIsZUFBZTtZQUNmLHdCQUF3QjtZQUN4QixrQkFBa0I7WUFDbEIsY0FBYztZQUNkLGlCQUFpQjtZQUNqQixhQUFhO1lBQ2IsdUJBQXVCLGlDQVV2QiwwQkFBMEI7Z0hBR3JCLHVCQUF1QixZQTFCNUIsWUFBWTtZQUNaLFdBQVc7WUFDWCxtQkFBbUI7WUFDbkIsZUFBZTtZQUNmLGFBQWE7WUFDYixhQUFhO1lBQ2IsZ0JBQWdCO1lBQ2hCLGVBQWU7WUFDZix3QkFBd0I7WUFDeEIsa0JBQWtCO1lBQ2xCLGNBQWM7WUFDZCxpQkFBaUI7WUFDakIsYUFBYTtZQUNiLHVCQUF1QjtZQUN2QixlQUFlLENBQUMsT0FBTyxDQUFDO2dCQUNwQixNQUFNLEVBQUU7b0JBQ0osT0FBTyxFQUFFLGVBQWU7b0JBQ3hCLFVBQVUsRUFBRSxpQkFBaUI7b0JBQzdCLElBQUksRUFBRSxDQUFDLFVBQVUsQ0FBQztpQkFDckI7YUFDSixDQUFDOzs0RkFNRyx1QkFBdUI7a0JBN0JuQyxRQUFRO21CQUFDO29CQUNOLFlBQVksRUFBRSxDQUFDLDBCQUEwQixFQUFFLGlCQUFpQixDQUFDO29CQUM3RCxPQUFPLEVBQUU7d0JBQ0wsWUFBWTt3QkFDWixXQUFXO3dCQUNYLG1CQUFtQjt3QkFDbkIsZUFBZTt3QkFDZixhQUFhO3dCQUNiLGFBQWE7d0JBQ2IsZ0JBQWdCO3dCQUNoQixlQUFlO3dCQUNmLHdCQUF3Qjt3QkFDeEIsa0JBQWtCO3dCQUNsQixjQUFjO3dCQUNkLGlCQUFpQjt3QkFDakIsYUFBYTt3QkFDYix1QkFBdUI7d0JBQ3ZCLGVBQWUsQ0FBQyxPQUFPLENBQUM7NEJBQ3BCLE1BQU0sRUFBRTtnQ0FDSixPQUFPLEVBQUUsZUFBZTtnQ0FDeEIsVUFBVSxFQUFFLGlCQUFpQjtnQ0FDN0IsSUFBSSxFQUFFLENBQUMsVUFBVSxDQUFDOzZCQUNyQjt5QkFDSixDQUFDO3FCQUNMO29CQUNELE9BQU8sRUFBRTt3QkFDTCwwQkFBMEI7cUJBQzdCO2lCQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xyXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nXHJcbmltcG9ydCB7IENlcnRpZmljYXRlRGlhbG9nQ29tcG9uZW50IH0gZnJvbSAnLi9jZXJ0aWZpY2F0ZS1kaWFsb2cuY29tcG9uZW50J1xyXG5pbXBvcnQgeyBGb3Jtc01vZHVsZSwgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJ1xyXG5cclxuaW1wb3J0IHsgUGlwZVNhZmVTYW5pdGl6ZXJNb2R1bGUgfSBmcm9tICdAc3VuYmlyZC1jYi91dGlscy12MidcclxuaW1wb3J0IHsgU3ZnVG9QZGZDb21wb25lbnQgfSBmcm9tICcuL3N2Zy10by1wZGYuY29tcG9uZW50J1xyXG5pbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnXHJcbmltcG9ydCB7IFRyYW5zbGF0ZU1vZHVsZSwgVHJhbnNsYXRlTG9hZGVyIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSdcclxuaW1wb3J0IHsgTWF0TGVnYWN5QnV0dG9uTW9kdWxlIGFzIE1hdEJ1dHRvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2xlZ2FjeS1idXR0b24nXHJcbmltcG9ydCB7IE1hdExlZ2FjeUNhcmRNb2R1bGUgYXMgTWF0Q2FyZE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2xlZ2FjeS1jYXJkJ1xyXG5pbXBvcnQgeyBNYXRMZWdhY3lEaWFsb2dNb2R1bGUgYXMgTWF0RGlhbG9nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvbGVnYWN5LWRpYWxvZydcclxuaW1wb3J0IHsgTWF0TGVnYWN5Rm9ybUZpZWxkTW9kdWxlIGFzIE1hdEZvcm1GaWVsZE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2xlZ2FjeS1mb3JtLWZpZWxkJ1xyXG5pbXBvcnQgeyBNYXRJY29uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbidcclxuaW1wb3J0IHsgTWF0TGVnYWN5SW5wdXRNb2R1bGUgYXMgTWF0SW5wdXRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9sZWdhY3ktaW5wdXQnXHJcbmltcG9ydCB7IE1hdExlZ2FjeU1lbnVNb2R1bGUgYXMgTWF0TWVudU1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2xlZ2FjeS1tZW51J1xyXG5pbXBvcnQgeyBNYXRMZWdhY3lQcm9ncmVzc1NwaW5uZXJNb2R1bGUgYXMgTWF0UHJvZ3Jlc3NTcGlubmVyTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvbGVnYWN5LXByb2dyZXNzLXNwaW5uZXInXHJcbmltcG9ydCB7IE1hdExlZ2FjeVNuYWNrQmFyTW9kdWxlIGFzIE1hdFNuYWNrQmFyTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvbGVnYWN5LXNuYWNrLWJhcidcclxuaW1wb3J0IHsgTWF0TGVnYWN5VG9vbHRpcE1vZHVsZSBhcyBNYXRUb29sdGlwTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvbGVnYWN5LXRvb2x0aXAnXHJcbmltcG9ydCB7IEh0dHBMb2FkZXJGYWN0b3J5IH0gZnJvbSAnQHN1bmJpcmQtY2IvY29uc3VtcHRpb24nXHJcbkBOZ01vZHVsZSh7XHJcbiAgICBkZWNsYXJhdGlvbnM6IFtDZXJ0aWZpY2F0ZURpYWxvZ0NvbXBvbmVudCwgU3ZnVG9QZGZDb21wb25lbnRdLFxyXG4gICAgaW1wb3J0czogW1xyXG4gICAgICAgIENvbW1vbk1vZHVsZSxcclxuICAgICAgICBGb3Jtc01vZHVsZSxcclxuICAgICAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxyXG4gICAgICAgIE1hdEJ1dHRvbk1vZHVsZSxcclxuICAgICAgICBNYXRDYXJkTW9kdWxlLFxyXG4gICAgICAgIE1hdEljb25Nb2R1bGUsXHJcbiAgICAgICAgTWF0VG9vbHRpcE1vZHVsZSxcclxuICAgICAgICBNYXREaWFsb2dNb2R1bGUsXHJcbiAgICAgICAgTWF0UHJvZ3Jlc3NTcGlubmVyTW9kdWxlLFxyXG4gICAgICAgIE1hdEZvcm1GaWVsZE1vZHVsZSxcclxuICAgICAgICBNYXRJbnB1dE1vZHVsZSxcclxuICAgICAgICBNYXRTbmFja0Jhck1vZHVsZSxcclxuICAgICAgICBNYXRNZW51TW9kdWxlLFxyXG4gICAgICAgIFBpcGVTYWZlU2FuaXRpemVyTW9kdWxlLFxyXG4gICAgICAgIFRyYW5zbGF0ZU1vZHVsZS5mb3JSb290KHtcclxuICAgICAgICAgICAgbG9hZGVyOiB7XHJcbiAgICAgICAgICAgICAgICBwcm92aWRlOiBUcmFuc2xhdGVMb2FkZXIsXHJcbiAgICAgICAgICAgICAgICB1c2VGYWN0b3J5OiBIdHRwTG9hZGVyRmFjdG9yeSxcclxuICAgICAgICAgICAgICAgIGRlcHM6IFtIdHRwQ2xpZW50XSxcclxuICAgICAgICAgICAgfSxcclxuICAgICAgICB9KSxcclxuICAgIF0sXHJcbiAgICBleHBvcnRzOiBbXHJcbiAgICAgICAgQ2VydGlmaWNhdGVEaWFsb2dDb21wb25lbnQsXHJcbiAgICBdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBDZXJ0aWZpY2F0ZURpYWxvZ01vZHVsZSB7IH1cclxuIl19
|