ngx-techlify-core 11.4.6 → 11.4.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +24 -24
- package/bundles/ngx-techlify-core.umd.js +7861 -7849
- package/bundles/ngx-techlify-core.umd.js.map +1 -1
- package/bundles/ngx-techlify-core.umd.min.js +2 -2
- package/bundles/ngx-techlify-core.umd.min.js.map +1 -1
- package/esm2015/lib/action-popup/action-popup.component.js +32 -32
- package/esm2015/lib/action-popup/action-popup.model.js +3 -3
- package/esm2015/lib/action-popup/action-popup.module.js +26 -26
- package/esm2015/lib/action-popup/index.js +3 -3
- package/esm2015/lib/audit-log/audit-log-for-model/audit-log-for-model-routing.module.js +12 -12
- package/esm2015/lib/audit-log/audit-log-for-model/audit-log-for-model.component.js +49 -49
- package/esm2015/lib/audit-log/audit-log-for-model/audit-log-for-model.module.js +25 -25
- package/esm2015/lib/audit-log/audit-log-list/audit-log-list-routing.module.js +12 -12
- package/esm2015/lib/audit-log/audit-log-list/audit-log-list.component.js +132 -132
- package/esm2015/lib/audit-log/audit-log-list/audit-log-list.module.js +29 -29
- package/esm2015/lib/audit-log/audit-log-list-filter/audit-log-list-filter-routing.module.js +12 -12
- package/esm2015/lib/audit-log/audit-log-list-filter/audit-log-list-filter.component.js +67 -67
- package/esm2015/lib/audit-log/audit-log-list-filter/audit-log-list-filter.module.js +25 -25
- package/esm2015/lib/audit-log/audit-log-routing.module.js +19 -19
- package/esm2015/lib/audit-log/audit-log-view/audit-log-view-routing.module.js +12 -12
- package/esm2015/lib/audit-log/audit-log-view/audit-log-view.component.js +60 -60
- package/esm2015/lib/audit-log/audit-log-view/audit-log-view.module.js +21 -21
- package/esm2015/lib/audit-log/audit-log-view-model/audit-log-view-model-routing.module.js +12 -12
- package/esm2015/lib/audit-log/audit-log-view-model/audit-log-view-model.component.js +57 -57
- package/esm2015/lib/audit-log/audit-log-view-model/audit-log-view-model.module.js +21 -21
- package/esm2015/lib/audit-log/audit-log.module.js +20 -20
- package/esm2015/lib/audit-log/audit-logs-view-model/audit-logs-view-model-routing.module.js +12 -12
- package/esm2015/lib/audit-log/audit-logs-view-model/audit-logs-view-model.component.js +35 -35
- package/esm2015/lib/audit-log/audit-logs-view-model/audit-logs-view-model.module.js +21 -21
- package/esm2015/lib/core/alert.service.js +39 -39
- package/esm2015/lib/core/api-prefix.interceptor.js +28 -28
- package/esm2015/lib/core/authentication.guard.js +39 -39
- package/esm2015/lib/core/authentication.service.js +59 -59
- package/esm2015/lib/core/cache.interceptor.js +60 -60
- package/esm2015/lib/core/config.service.js +47 -47
- package/esm2015/lib/core/core.module.js +42 -42
- package/esm2015/lib/core/credentials.service.js +84 -84
- package/esm2015/lib/core/dataManager.service.js +120 -120
- package/esm2015/lib/core/error-handler.interceptor.js +53 -53
- package/esm2015/lib/core/error-handler.service.js +59 -59
- package/esm2015/lib/core/form-validator.service.js +23 -23
- package/esm2015/lib/core/header.interceptor.js +22 -22
- package/esm2015/lib/core/http-cache.service.js +110 -110
- package/esm2015/lib/core/http.service.js +82 -82
- package/esm2015/lib/core/index.js +21 -21
- package/esm2015/lib/core/logger.service.js +100 -100
- package/esm2015/lib/core/route-reusable-strategy.js +35 -35
- package/esm2015/lib/core/snack/snack.component.js +33 -33
- package/esm2015/lib/core/snack/snack.module.js +25 -25
- package/esm2015/lib/core/storage.service.js +36 -36
- package/esm2015/lib/core/techlify-config.model.js +28 -28
- package/esm2015/lib/core/token.interceptor.js +30 -30
- package/esm2015/lib/data-table/data-table.component.js +190 -190
- package/esm2015/lib/data-table/data-table.model.js +11 -11
- package/esm2015/lib/data-table/data-table.module.js +25 -25
- package/esm2015/lib/data-table/index.js +3 -3
- package/esm2015/lib/date-validator.js +10 -10
- package/esm2015/lib/document-viewer/document-viewer.component.js +58 -58
- package/esm2015/lib/document-viewer/document-viewer.module.js +25 -25
- package/esm2015/lib/document-viewer/index.js +3 -3
- package/esm2015/lib/document-viewer/viewer-config.model.js +3 -3
- package/esm2015/lib/email-subscription/email-subscription-for-user/email-subscription-for-user-routing.module.js +26 -26
- package/esm2015/lib/email-subscription/email-subscription-for-user/email-subscription-for-user.component.js +72 -72
- package/esm2015/lib/email-subscription/email-subscription-for-user/email-subscription-for-user.module.js +23 -23
- package/esm2015/lib/email-subscription/email-subscription-for-user/index.js +2 -2
- package/esm2015/lib/email-subscription/email-subscription-routing.module.js +12 -12
- package/esm2015/lib/email-subscription/email-subscription-type/email-subscription-type-form/email-subscription-type-form-routing.module.js +12 -12
- package/esm2015/lib/email-subscription/email-subscription-type/email-subscription-type-form/email-subscription-type-form.component.js +102 -102
- package/esm2015/lib/email-subscription/email-subscription-type/email-subscription-type-form/email-subscription-type-form.module.js +28 -28
- package/esm2015/lib/email-subscription/email-subscription-type/email-subscription-type-form/index.js +2 -2
- package/esm2015/lib/email-subscription/email-subscription-type/email-subscription-type-list/email-subscription-type-list-routing.module.js +28 -28
- package/esm2015/lib/email-subscription/email-subscription-type/email-subscription-type-list/email-subscription-type-list.component.js +153 -153
- package/esm2015/lib/email-subscription/email-subscription-type/email-subscription-type-list/email-subscription-type-list.module.js +27 -27
- package/esm2015/lib/email-subscription/email-subscription-type/email-subscription-type-list/index.js +1 -1
- package/esm2015/lib/email-subscription/email-subscription-type/email-subscription-type-routing.module.js +12 -12
- package/esm2015/lib/email-subscription/email-subscription-type/email-subscription-type.module.js +15 -15
- package/esm2015/lib/email-subscription/email-subscription-user/email-subscription-user-form/email-subscription-user-form-routing.module.js +12 -12
- package/esm2015/lib/email-subscription/email-subscription-user/email-subscription-user-form/email-subscription-user-form.component.js +99 -99
- package/esm2015/lib/email-subscription/email-subscription-user/email-subscription-user-form/email-subscription-user-form.module.js +27 -27
- package/esm2015/lib/email-subscription/email-subscription-user/email-subscription-user-form/index.js +2 -2
- package/esm2015/lib/email-subscription/email-subscription-user/email-subscription-user-list/email-subscription-user-list-routing.module.js +28 -28
- package/esm2015/lib/email-subscription/email-subscription-user/email-subscription-user-list/email-subscription-user-list.component.js +155 -155
- package/esm2015/lib/email-subscription/email-subscription-user/email-subscription-user-list/email-subscription-user-list.module.js +29 -29
- package/esm2015/lib/email-subscription/email-subscription-user/email-subscription-user-list/index.js +2 -2
- package/esm2015/lib/email-subscription/email-subscription-user/email-subscription-user-list-filter/email-subscription-user-list-filter-routing.module.js +12 -12
- package/esm2015/lib/email-subscription/email-subscription-user/email-subscription-user-list-filter/email-subscription-user-list-filter.component.js +50 -50
- package/esm2015/lib/email-subscription/email-subscription-user/email-subscription-user-list-filter/email-subscription-user-list-filter.module.js +25 -25
- package/esm2015/lib/email-subscription/email-subscription-user/email-subscription-user-list-filter/index.js +2 -2
- package/esm2015/lib/email-subscription/email-subscription-user/email-subscription-user-routing.module.js +12 -12
- package/esm2015/lib/email-subscription/email-subscription-user/email-subscription-user.module.js +15 -15
- package/esm2015/lib/email-subscription/email-subscription.module.js +15 -15
- package/esm2015/lib/entity-files/entity-file-form/entity-file-form.component.js +138 -138
- package/esm2015/lib/entity-files/entity-file.service.js +42 -42
- package/esm2015/lib/entity-files/entity-files-view-all.component.js +208 -204
- package/esm2015/lib/entity-files/entity-files-view-all.module.js +34 -34
- package/esm2015/lib/entity-files/index.js +3 -3
- package/esm2015/lib/export-excel/export-excel-button/export-excel-button.component.js +32 -32
- package/esm2015/lib/export-excel/export-excel.module.js +17 -17
- package/esm2015/lib/file-dropper/file-dropper.component.js +122 -122
- package/esm2015/lib/file-dropper/file-dropper.model.js +3 -3
- package/esm2015/lib/file-dropper/file-dropper.module.js +21 -21
- package/esm2015/lib/file-dropper/index.js +3 -3
- package/esm2015/lib/import-csv/data-import/data-import.component.js +18 -18
- package/esm2015/lib/import-csv/failed-items-list/failed-items-list.component.js +33 -33
- package/esm2015/lib/import-csv/field-mapping/field-mapping.component.js +148 -148
- package/esm2015/lib/import-csv/import-csv-config.js +2 -2
- package/esm2015/lib/import-csv/import-csv.component.js +196 -196
- package/esm2015/lib/import-csv/import-csv.module.js +46 -46
- package/esm2015/lib/import-csv/import-history-list/import-history-list.component.js +71 -71
- package/esm2015/lib/import-csv/import-success/import-success.component.js +19 -19
- package/esm2015/lib/loader/index.js +2 -2
- package/esm2015/lib/loader/loader.component.js +22 -22
- package/esm2015/lib/loader/loader.module.js +21 -21
- package/esm2015/lib/login-history-for-user/login-history-for-user-routing.module.js +20 -20
- package/esm2015/lib/login-history-for-user/login-history-for-user.component.js +88 -88
- package/esm2015/lib/login-history-for-user/login-history-for-user.module.js +27 -27
- package/esm2015/lib/material.module.js +60 -60
- package/esm2015/lib/note/comment-form/comment-form.component.js +73 -73
- package/esm2015/lib/note/index.js +4 -4
- package/esm2015/lib/note/note-form/note-form.component.js +81 -81
- package/esm2015/lib/note/note-list/note-list.component.js +151 -151
- package/esm2015/lib/note/note.module.js +36 -36
- package/esm2015/lib/note/note.service.js +31 -31
- package/esm2015/lib/read-more/read-more.component.js +43 -43
- package/esm2015/lib/read-more/read-more.module.js +21 -21
- package/esm2015/lib/searchable-selector/index.js +3 -3
- package/esm2015/lib/searchable-selector/mat-select-infinite-scroll.directive.js +81 -81
- package/esm2015/lib/searchable-selector/searchable-selector.component.js +307 -307
- package/esm2015/lib/searchable-selector/searchable-selector.module.js +28 -28
- package/esm2015/lib/techlify-feature/on-off-switch/on-off-switch.component.js +27 -27
- package/esm2015/lib/techlify-feature/techlify-feature-enabled.directive.js +78 -78
- package/esm2015/lib/techlify-feature/techlify-feature-listing.component.js +177 -177
- package/esm2015/lib/techlify-feature/techlify-feature.module.js +30 -30
- package/esm2015/lib/techlify-feature/techlify-feature.routing.js +12 -12
- package/esm2015/lib/techlify-feature/techlify-feature.service.js +28 -28
- package/esm2015/lib/techlify-tagger-tag-form-field/techlify-tagger-tag-form-config.model.js +15 -15
- package/esm2015/lib/techlify-tagger-tag-form-field/techlify-tagger-tag-form-field.component.js +269 -269
- package/esm2015/lib/techlify-tagger-tag-form-field/techlify-tagger-tag-form-field.module.js +25 -25
- package/esm2015/lib/techlify-tagger-tag-selector/techlify-tagger-tag-selector.component.js +168 -168
- package/esm2015/lib/techlify-tagger-tag-selector/techlify-tagger-tag-selector.module.js +29 -29
- package/esm2015/lib/techlify-update/techlify-update-form/techlify-update-form.component.js +114 -114
- package/esm2015/lib/techlify-update/techlify-update-form/techlify-update-form.module.js +28 -28
- package/esm2015/lib/techlify-update/techlify-update-history/techlify-update-history-routing.module.js +22 -22
- package/esm2015/lib/techlify-update/techlify-update-history/techlify-update-history.component.js +143 -143
- package/esm2015/lib/techlify-update/techlify-update-history/techlify-update-history.module.js +28 -28
- package/esm2015/lib/techlify-update/techlify-update-routing.module.js +22 -22
- package/esm2015/lib/techlify-update/techlify-update.module.js +30 -30
- package/esm2015/lib/techlify-update/techlify-update.service.js +43 -43
- package/esm2015/lib/techlify-update/techlify-updates-list/techlify-updates-list.component.js +161 -161
- package/esm2015/lib/techlify-update/update-notifier/update-notifier-snack/update-notifier-snack.component.js +82 -82
- package/esm2015/lib/techlify-update/update-notifier/update-notifier.component.js +62 -62
- package/esm2015/lib/techlify-update/update-notifier/update-notifier.module.js +29 -29
- package/esm2015/lib/techlify-update/update-view/update-view.component.js +36 -36
- package/esm2015/lib/techlify-update/update-view/update-view.module.js +24 -24
- package/esm2015/lib/timeline-filter/calculate-timeline.js +102 -102
- package/esm2015/lib/timeline-filter/index.js +4 -4
- package/esm2015/lib/timeline-filter/timeline-filter-routing.module.js +12 -12
- package/esm2015/lib/timeline-filter/timeline-filter.component.js +213 -213
- package/esm2015/lib/timeline-filter/timeline-filter.module.js +23 -23
- package/esm2015/lib/timeline-filter/timeline.model.js +18 -18
- package/esm2015/lib/utility/date-utils.service.js +48 -48
- package/esm2015/lib/utility/index.js +4 -4
- package/esm2015/lib/utility/num-items-selector.component.js +29 -29
- package/esm2015/lib/utility/number-selector.component.js +38 -38
- package/esm2015/lib/utility/utility.module.js +20 -20
- package/esm2015/ngx-techlify-core.js +59 -59
- package/esm2015/public-api.js +95 -95
- package/fesm2015/ngx-techlify-core.js +6726 -6722
- package/fesm2015/ngx-techlify-core.js.map +1 -1
- package/lib/action-popup/action-popup.component.d.ts +14 -14
- package/lib/action-popup/action-popup.model.d.ts +5 -5
- package/lib/action-popup/action-popup.module.d.ts +2 -2
- package/lib/action-popup/index.d.ts +2 -2
- package/lib/audit-log/audit-log-for-model/audit-log-for-model-routing.module.d.ts +2 -2
- package/lib/audit-log/audit-log-for-model/audit-log-for-model.component.d.ts +12 -12
- package/lib/audit-log/audit-log-for-model/audit-log-for-model.module.d.ts +2 -2
- package/lib/audit-log/audit-log-list/audit-log-list-routing.module.d.ts +2 -2
- package/lib/audit-log/audit-log-list/audit-log-list.component.d.ts +32 -32
- package/lib/audit-log/audit-log-list/audit-log-list.module.d.ts +2 -2
- package/lib/audit-log/audit-log-list-filter/audit-log-list-filter-routing.module.d.ts +2 -2
- package/lib/audit-log/audit-log-list-filter/audit-log-list-filter.component.d.ts +19 -19
- package/lib/audit-log/audit-log-list-filter/audit-log-list-filter.module.d.ts +2 -2
- package/lib/audit-log/audit-log-routing.module.d.ts +2 -2
- package/lib/audit-log/audit-log-view/audit-log-view-routing.module.d.ts +2 -2
- package/lib/audit-log/audit-log-view/audit-log-view.component.d.ts +17 -17
- package/lib/audit-log/audit-log-view/audit-log-view.module.d.ts +2 -2
- package/lib/audit-log/audit-log-view-model/audit-log-view-model-routing.module.d.ts +2 -2
- package/lib/audit-log/audit-log-view-model/audit-log-view-model.component.d.ts +15 -15
- package/lib/audit-log/audit-log-view-model/audit-log-view-model.module.d.ts +2 -2
- package/lib/audit-log/audit-log.module.d.ts +2 -2
- package/lib/audit-log/audit-logs-view-model/audit-logs-view-model-routing.module.d.ts +2 -2
- package/lib/audit-log/audit-logs-view-model/audit-logs-view-model.component.d.ts +11 -11
- package/lib/audit-log/audit-logs-view-model/audit-logs-view-model.module.d.ts +2 -2
- package/lib/core/alert.service.d.ts +12 -12
- package/lib/core/api-prefix.interceptor.d.ts +11 -11
- package/lib/core/authentication.guard.d.ts +10 -10
- package/lib/core/authentication.service.d.ts +23 -23
- package/lib/core/cache.interceptor.d.ts +21 -21
- package/lib/core/config.service.d.ts +19 -19
- package/lib/core/core.module.d.ts +3 -3
- package/lib/core/credentials.service.d.ts +36 -36
- package/lib/core/dataManager.service.d.ts +70 -70
- package/lib/core/error-handler.interceptor.d.ts +14 -14
- package/lib/core/error-handler.service.d.ts +14 -14
- package/lib/core/form-validator.service.d.ts +8 -8
- package/lib/core/header.interceptor.d.ts +8 -8
- package/lib/core/http-cache.service.d.ts +54 -54
- package/lib/core/http.service.d.ts +56 -56
- package/lib/core/index.d.ts +20 -20
- package/lib/core/logger.service.d.ts +85 -85
- package/lib/core/route-reusable-strategy.d.ts +13 -13
- package/lib/core/snack/snack.component.d.ts +8 -8
- package/lib/core/snack/snack.module.d.ts +2 -2
- package/lib/core/storage.service.d.ts +15 -15
- package/lib/core/techlify-config.model.d.ts +18 -18
- package/lib/core/token.interceptor.d.ts +11 -11
- package/lib/data-table/data-table.component.d.ts +60 -60
- package/lib/data-table/data-table.model.d.ts +46 -46
- package/lib/data-table/data-table.module.d.ts +2 -2
- package/lib/data-table/index.d.ts +2 -2
- package/lib/date-validator.d.ts +1 -1
- package/lib/document-viewer/document-viewer.component.d.ts +16 -16
- package/lib/document-viewer/document-viewer.module.d.ts +2 -2
- package/lib/document-viewer/index.d.ts +2 -2
- package/lib/document-viewer/viewer-config.model.d.ts +5 -5
- package/lib/email-subscription/email-subscription-for-user/email-subscription-for-user-routing.module.d.ts +7 -7
- package/lib/email-subscription/email-subscription-for-user/email-subscription-for-user.component.d.ts +17 -17
- package/lib/email-subscription/email-subscription-for-user/email-subscription-for-user.module.d.ts +2 -2
- package/lib/email-subscription/email-subscription-for-user/index.d.ts +1 -1
- package/lib/email-subscription/email-subscription-routing.module.d.ts +2 -2
- package/lib/email-subscription/email-subscription-type/email-subscription-type-form/email-subscription-type-form-routing.module.d.ts +2 -2
- package/lib/email-subscription/email-subscription-type/email-subscription-type-form/email-subscription-type-form.component.d.ts +32 -32
- package/lib/email-subscription/email-subscription-type/email-subscription-type-form/email-subscription-type-form.module.d.ts +2 -2
- package/lib/email-subscription/email-subscription-type/email-subscription-type-form/index.d.ts +1 -1
- package/lib/email-subscription/email-subscription-type/email-subscription-type-list/email-subscription-type-list-routing.module.d.ts +9 -9
- package/lib/email-subscription/email-subscription-type/email-subscription-type-list/email-subscription-type-list.component.d.ts +30 -30
- package/lib/email-subscription/email-subscription-type/email-subscription-type-list/email-subscription-type-list.module.d.ts +2 -2
- package/lib/email-subscription/email-subscription-type/email-subscription-type-list/index.d.ts +1 -1
- package/lib/email-subscription/email-subscription-type/email-subscription-type-routing.module.d.ts +2 -2
- package/lib/email-subscription/email-subscription-type/email-subscription-type.module.d.ts +2 -2
- package/lib/email-subscription/email-subscription-user/email-subscription-user-form/email-subscription-user-form-routing.module.d.ts +2 -2
- package/lib/email-subscription/email-subscription-user/email-subscription-user-form/email-subscription-user-form.component.d.ts +32 -32
- package/lib/email-subscription/email-subscription-user/email-subscription-user-form/email-subscription-user-form.module.d.ts +2 -2
- package/lib/email-subscription/email-subscription-user/email-subscription-user-form/index.d.ts +1 -1
- package/lib/email-subscription/email-subscription-user/email-subscription-user-list/email-subscription-user-list-routing.module.d.ts +9 -9
- package/lib/email-subscription/email-subscription-user/email-subscription-user-list/email-subscription-user-list.component.d.ts +32 -32
- package/lib/email-subscription/email-subscription-user/email-subscription-user-list/email-subscription-user-list.module.d.ts +2 -2
- package/lib/email-subscription/email-subscription-user/email-subscription-user-list/index.d.ts +1 -1
- package/lib/email-subscription/email-subscription-user/email-subscription-user-list-filter/email-subscription-user-list-filter-routing.module.d.ts +2 -2
- package/lib/email-subscription/email-subscription-user/email-subscription-user-list-filter/email-subscription-user-list-filter.component.d.ts +13 -13
- package/lib/email-subscription/email-subscription-user/email-subscription-user-list-filter/email-subscription-user-list-filter.module.d.ts +2 -2
- package/lib/email-subscription/email-subscription-user/email-subscription-user-list-filter/index.d.ts +1 -1
- package/lib/email-subscription/email-subscription-user/email-subscription-user-routing.module.d.ts +2 -2
- package/lib/email-subscription/email-subscription-user/email-subscription-user.module.d.ts +2 -2
- package/lib/email-subscription/email-subscription.module.d.ts +2 -2
- package/lib/entity-files/entity-file-form/entity-file-form.component.d.ts +34 -34
- package/lib/entity-files/entity-file.service.d.ts +10 -10
- package/lib/entity-files/entity-files-view-all.component.d.ts +45 -44
- package/lib/entity-files/entity-files-view-all.module.d.ts +2 -2
- package/lib/entity-files/index.d.ts +2 -2
- package/lib/export-excel/export-excel-button/export-excel-button.component.d.ts +8 -8
- package/lib/export-excel/export-excel.module.d.ts +2 -2
- package/lib/file-dropper/file-dropper.component.d.ts +33 -33
- package/lib/file-dropper/file-dropper.model.d.ts +10 -10
- package/lib/file-dropper/file-dropper.module.d.ts +2 -2
- package/lib/file-dropper/index.d.ts +2 -2
- package/lib/import-csv/data-import/data-import.component.d.ts +6 -6
- package/lib/import-csv/failed-items-list/failed-items-list.component.d.ts +12 -12
- package/lib/import-csv/field-mapping/field-mapping.component.d.ts +34 -34
- package/lib/import-csv/import-csv-config.d.ts +17 -17
- package/lib/import-csv/import-csv.component.d.ts +33 -33
- package/lib/import-csv/import-csv.module.d.ts +2 -2
- package/lib/import-csv/import-history-list/import-history-list.component.d.ts +21 -21
- package/lib/import-csv/import-success/import-success.component.d.ts +8 -8
- package/lib/loader/index.d.ts +1 -1
- package/lib/loader/loader.component.d.ts +8 -8
- package/lib/loader/loader.module.d.ts +2 -2
- package/lib/login-history-for-user/login-history-for-user-routing.module.d.ts +2 -2
- package/lib/login-history-for-user/login-history-for-user.component.d.ts +23 -23
- package/lib/login-history-for-user/login-history-for-user.module.d.ts +2 -2
- package/lib/material.module.d.ts +2 -2
- package/lib/note/comment-form/comment-form.component.d.ts +22 -22
- package/lib/note/index.d.ts +3 -3
- package/lib/note/note-form/note-form.component.d.ts +27 -27
- package/lib/note/note-list/note-list.component.d.ts +28 -28
- package/lib/note/note.module.d.ts +2 -2
- package/lib/note/note.service.d.ts +9 -9
- package/lib/read-more/read-more.component.d.ts +12 -12
- package/lib/read-more/read-more.module.d.ts +2 -2
- package/lib/searchable-selector/index.d.ts +2 -2
- package/lib/searchable-selector/mat-select-infinite-scroll.directive.d.ts +23 -23
- package/lib/searchable-selector/searchable-selector.component.d.ts +81 -81
- package/lib/searchable-selector/searchable-selector.module.d.ts +2 -2
- package/lib/techlify-feature/on-off-switch/on-off-switch.component.d.ts +9 -9
- package/lib/techlify-feature/techlify-feature-enabled.directive.d.ts +17 -17
- package/lib/techlify-feature/techlify-feature-listing.component.d.ts +37 -37
- package/lib/techlify-feature/techlify-feature.module.d.ts +2 -2
- package/lib/techlify-feature/techlify-feature.routing.d.ts +2 -2
- package/lib/techlify-feature/techlify-feature.service.d.ts +8 -8
- package/lib/techlify-tagger-tag-form-field/techlify-tagger-tag-form-config.model.d.ts +12 -12
- package/lib/techlify-tagger-tag-form-field/techlify-tagger-tag-form-field.component.d.ts +76 -76
- package/lib/techlify-tagger-tag-form-field/techlify-tagger-tag-form-field.module.d.ts +2 -2
- package/lib/techlify-tagger-tag-selector/techlify-tagger-tag-selector.component.d.ts +58 -58
- package/lib/techlify-tagger-tag-selector/techlify-tagger-tag-selector.module.d.ts +2 -2
- package/lib/techlify-update/techlify-update-form/techlify-update-form.component.d.ts +30 -30
- package/lib/techlify-update/techlify-update-form/techlify-update-form.module.d.ts +2 -2
- package/lib/techlify-update/techlify-update-history/techlify-update-history-routing.module.d.ts +2 -2
- package/lib/techlify-update/techlify-update-history/techlify-update-history.component.d.ts +31 -31
- package/lib/techlify-update/techlify-update-history/techlify-update-history.module.d.ts +2 -2
- package/lib/techlify-update/techlify-update-routing.module.d.ts +2 -2
- package/lib/techlify-update/techlify-update.module.d.ts +2 -2
- package/lib/techlify-update/techlify-update.service.d.ts +13 -13
- package/lib/techlify-update/techlify-updates-list/techlify-updates-list.component.d.ts +31 -31
- package/lib/techlify-update/update-notifier/update-notifier-snack/update-notifier-snack.component.d.ts +25 -25
- package/lib/techlify-update/update-notifier/update-notifier.component.d.ts +16 -16
- package/lib/techlify-update/update-notifier/update-notifier.module.d.ts +2 -2
- package/lib/techlify-update/update-view/update-view.component.d.ts +14 -14
- package/lib/techlify-update/update-view/update-view.module.d.ts +2 -2
- package/lib/timeline-filter/calculate-timeline.d.ts +6 -6
- package/lib/timeline-filter/index.d.ts +3 -3
- package/lib/timeline-filter/timeline-filter-routing.module.d.ts +2 -2
- package/lib/timeline-filter/timeline-filter.component.d.ts +61 -61
- package/lib/timeline-filter/timeline-filter.module.d.ts +2 -2
- package/lib/timeline-filter/timeline.model.d.ts +17 -17
- package/lib/utility/date-utils.service.d.ts +21 -21
- package/lib/utility/index.d.ts +3 -3
- package/lib/utility/num-items-selector.component.d.ts +16 -16
- package/lib/utility/number-selector.component.d.ts +20 -20
- package/lib/utility/utility.module.d.ts +2 -2
- package/ngx-techlify-core.d.ts +59 -59
- package/ngx-techlify-core.metadata.json +1 -1
- package/package.json +1 -1
- package/public-api.d.ts +91 -91
|
@@ -1,153 +1,153 @@
|
|
|
1
|
-
import { __decorate } from "tslib";
|
|
2
|
-
import { Component, ViewChild } from '@angular/core';
|
|
3
|
-
import { MatDialog } from '@angular/material/dialog';
|
|
4
|
-
import { FormControl } from '@angular/forms';
|
|
5
|
-
import { distinctUntilChanged, debounceTime } from 'rxjs/operators';
|
|
6
|
-
import { MatSort } from '@angular/material/sort';
|
|
7
|
-
import { UntilDestroy, untilDestroyed } from '@ngneat/until-destroy';
|
|
8
|
-
import { EmailSubscriptionTypeFormComponent } from '../email-subscription-type-form/email-subscription-type-form.component';
|
|
9
|
-
import { HttpService } from '../../../core/http.service';
|
|
10
|
-
import { ActionPopupComponent } from '../../../action-popup/action-popup.component';
|
|
11
|
-
let EmailSubscriptionTypeListComponent = class EmailSubscriptionTypeListComponent {
|
|
12
|
-
constructor(dialog, http) {
|
|
13
|
-
this.dialog = dialog;
|
|
14
|
-
this.http = http;
|
|
15
|
-
this.emailSubscriptionTypeList = [];
|
|
16
|
-
this.pageEvent = { page: 1, perPage: 25, lastPage: 1 };
|
|
17
|
-
this.filters = {
|
|
18
|
-
sort_by: 'created_at|desc',
|
|
19
|
-
isLoadRelations: true,
|
|
20
|
-
relations: ['frequency']
|
|
21
|
-
};
|
|
22
|
-
this.search = new FormControl('');
|
|
23
|
-
this.displayColumns = new FormControl(['index', 'title', 'frequency.title', 'description', 'actions']);
|
|
24
|
-
this.displayedColumns = [];
|
|
25
|
-
this.availableDisplayColumns = [
|
|
26
|
-
{ order: 1, value: 'index', name: 'Index' },
|
|
27
|
-
{ order: 2, value: 'title', name: 'Title' },
|
|
28
|
-
{ order: 3, value: 'code', name: 'Code' },
|
|
29
|
-
{ order: 4, value: 'frequency.title', name: 'Frequency' },
|
|
30
|
-
{ order: 5, value: 'description', name: 'Description' },
|
|
31
|
-
{ order: 6, value: 'actions', name: 'Actions' }
|
|
32
|
-
];
|
|
33
|
-
}
|
|
34
|
-
ngOnInit() {
|
|
35
|
-
this.displayedColumns = this.displayColumns.value;
|
|
36
|
-
this.initializeData();
|
|
37
|
-
this.search.valueChanges.pipe(debounceTime(500), distinctUntilChanged(), untilDestroyed(this)).subscribe(value => {
|
|
38
|
-
this.filters.search = value;
|
|
39
|
-
this.reload();
|
|
40
|
-
});
|
|
41
|
-
if (this.sort) {
|
|
42
|
-
this.sort.sortChange.pipe(untilDestroyed(this))
|
|
43
|
-
.subscribe((value) => {
|
|
44
|
-
this.changeSort(value);
|
|
45
|
-
});
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
get selectedColumns() {
|
|
49
|
-
return this.availableDisplayColumns
|
|
50
|
-
.filter(col => this.displayColumns.value.some((x) => x === col.value))
|
|
51
|
-
.sort((a, b) => (a.order > b.order) ? 1 : ((b.order > a.order) ? -1 : 0))
|
|
52
|
-
.map(col => col.value);
|
|
53
|
-
}
|
|
54
|
-
columnsChange() {
|
|
55
|
-
this.displayedColumns = this.selectedColumns;
|
|
56
|
-
}
|
|
57
|
-
initializeData() {
|
|
58
|
-
this.http.get(`api/email-subscription-types`, { params: Object.assign(Object.assign({}, this.filters), this.pageEvent) })
|
|
59
|
-
.pipe(untilDestroyed(this))
|
|
60
|
-
.subscribe((result) => {
|
|
61
|
-
this.emailSubscriptionTypeList = this.emailSubscriptionTypeList.concat(result.data);
|
|
62
|
-
this.pageEvent.page = result.current_page;
|
|
63
|
-
this.pageEvent.lastPage = result.last_page;
|
|
64
|
-
});
|
|
65
|
-
}
|
|
66
|
-
addEmailSubscriptionType() {
|
|
67
|
-
const dialogRef = this.dialog.open(EmailSubscriptionTypeFormComponent, {
|
|
68
|
-
width: '400px',
|
|
69
|
-
autoFocus: false,
|
|
70
|
-
data: {} // Any data passed here will be injected into the model
|
|
71
|
-
});
|
|
72
|
-
dialogRef.afterClosed().subscribe((result) => {
|
|
73
|
-
if (result) {
|
|
74
|
-
this.reload();
|
|
75
|
-
}
|
|
76
|
-
});
|
|
77
|
-
}
|
|
78
|
-
editEmailSubscriptionType(event, emailSubscriptionType) {
|
|
79
|
-
event.stopPropagation();
|
|
80
|
-
const dialogRef = this.dialog.open(EmailSubscriptionTypeFormComponent, {
|
|
81
|
-
width: '400px',
|
|
82
|
-
autoFocus: false,
|
|
83
|
-
data: {
|
|
84
|
-
emailSubscriptionType: emailSubscriptionType
|
|
85
|
-
} // Any data passed here will be injected into the model
|
|
86
|
-
});
|
|
87
|
-
dialogRef.afterClosed().subscribe((result) => {
|
|
88
|
-
if (result) {
|
|
89
|
-
this.reload();
|
|
90
|
-
}
|
|
91
|
-
});
|
|
92
|
-
}
|
|
93
|
-
deleteEmailSubscriptionType(event, emailSubscriptionType) {
|
|
94
|
-
event.stopPropagation();
|
|
95
|
-
const dialogRef = this.dialog.open(ActionPopupComponent, {
|
|
96
|
-
width: '400px',
|
|
97
|
-
data: {
|
|
98
|
-
title: 'Delete Email Type',
|
|
99
|
-
message: `Are you sure to proceed delete the Email Type ${emailSubscriptionType.title}?`
|
|
100
|
-
},
|
|
101
|
-
autoFocus: false
|
|
102
|
-
});
|
|
103
|
-
dialogRef.afterClosed().subscribe(result => {
|
|
104
|
-
if (result) {
|
|
105
|
-
//Action confirmed
|
|
106
|
-
this.http.delete(`api/email-subscription-types/${emailSubscriptionType === null || emailSubscriptionType === void 0 ? void 0 : emailSubscriptionType.id}`)
|
|
107
|
-
.pipe(untilDestroyed(this))
|
|
108
|
-
.subscribe((result) => {
|
|
109
|
-
this.emailSubscriptionTypeList = this.emailSubscriptionTypeList.filter(x => x.id !== emailSubscriptionType.id);
|
|
110
|
-
});
|
|
111
|
-
}
|
|
112
|
-
});
|
|
113
|
-
}
|
|
114
|
-
onScroll() {
|
|
115
|
-
if (this.pageEvent.lastPage > this.pageEvent.page) {
|
|
116
|
-
this.pageEvent.page += 1;
|
|
117
|
-
this.initializeData();
|
|
118
|
-
}
|
|
119
|
-
}
|
|
120
|
-
changeSort(event) {
|
|
121
|
-
if (event.direction) {
|
|
122
|
-
this.filters.sort_by = `${event.active}|${event.direction}`;
|
|
123
|
-
this.reload();
|
|
124
|
-
}
|
|
125
|
-
}
|
|
126
|
-
reload() {
|
|
127
|
-
this.emailSubscriptionTypeList = [];
|
|
128
|
-
this.pageEvent = { page: 1, perPage: 25, lastPage: 1 };
|
|
129
|
-
this.initializeData();
|
|
130
|
-
}
|
|
131
|
-
ngOnDestroy() {
|
|
132
|
-
//Until destroyed uses it
|
|
133
|
-
}
|
|
134
|
-
};
|
|
135
|
-
EmailSubscriptionTypeListComponent.decorators = [
|
|
136
|
-
{ type: Component, args: [{
|
|
137
|
-
selector: 'app-email-subscription-type-list',
|
|
138
|
-
template: "<div class=\"mat-typography m-4\">\n <div fxLayout=\"row wrap\" fxLayoutAlign=\"start center\">\n <mat-form-field>\n <input matInput [formControl]=\"search\" placeholder=\"Email Type\" autocomplete=\"off\" />\n <button mat-button matSuffix mat-icon-button>\n <mat-icon>search</mat-icon>\n </button>\n <button mat-button *ngIf=\"search.value\" matSuffix mat-icon-button (click)=\"search.setValue('')\">\n <mat-icon>close</mat-icon>\n </button>\n </mat-form-field>\n <div class=\"ml-2\">\n <button mat-raised-button color=\"primary\" type=\"button\" (click)=\"addEmailSubscriptionType()\">+ Email\n Type</button>\n </div>\n <span fxFlex></span>\n <mat-form-field appearance=\"outline\" class=\"no-padding\">\n <mat-label>Columns</mat-label>\n <mat-select [formControl]=\"displayColumns\" multiple (selectionChange)=\"columnsChange()\">\n <mat-option *ngFor=\"let column of availableDisplayColumns\" [value]=\"column.value\">{{column.name}}\n </mat-option>\n </mat-select>\n </mat-form-field>\n </div>\n\n <section>\n <div class=\"scroll-container\" infiniteScroll [infiniteScrollDistance]=\"2\" [infiniteScrollThrottle]=\"50\"\n (scrolled)=\"onScroll()\" [scrollWindow]=\"false\">\n <table mat-table [dataSource]=\"emailSubscriptionTypeList\" matSort class=\"w-100 mt-1\" multiTemplateDataRows\n id=\"email-subscription-type-table\">\n\n <!-- Index Column -->\n <ng-container matColumnDef=\"index\">\n <th mat-header-cell *matHeaderCellDef> # </th>\n <td mat-cell *matCellDef=\"let emailSubscriptionType; let i = dataIndex\"> {{ i+1 }} </td>\n </ng-container>\n <ng-container matColumnDef=\"title\">\n <th mat-header-cell *matHeaderCellDef mat-sort-header> Title </th>\n <td mat-cell *matCellDef=\"let emailSubscriptionType;\"> {{ emailSubscriptionType?.title }} </td>\n </ng-container>\n <ng-container matColumnDef=\"code\">\n <th mat-header-cell *matHeaderCellDef mat-sort-header> Code </th>\n <td mat-cell *matCellDef=\"let emailSubscriptionType;\"> {{ emailSubscriptionType?.code }}\n </td>\n </ng-container>\n <ng-container matColumnDef=\"frequency.title\">\n <th mat-header-cell *matHeaderCellDef mat-sort-header> Frequency </th>\n <td mat-cell *matCellDef=\"let emailSubscriptionType;\"> {{ emailSubscriptionType?.frequency?.title }}\n </td>\n </ng-container>\n <ng-container matColumnDef=\"description\">\n <th mat-header-cell *matHeaderCellDef> Description </th>\n <td mat-cell *matCellDef=\"let emailSubscriptionType;\"> {{ emailSubscriptionType?.description }}\n </td>\n </ng-container>\n\n <!-- Actions Column -->\n <ng-container matColumnDef=\"actions\">\n <th mat-header-cell *matHeaderCellDef> Actions </th>\n <td mat-cell *matCellDef=\"let emailSubscriptionType\">\n <button type=\"button\" mat-icon-button\n (click)=\"deleteEmailSubscriptionType($event,emailSubscriptionType)\">\n <mat-icon>delete</mat-icon>\n </button>\n <button type=\"button\" mat-icon-button\n (click)=\"editEmailSubscriptionType($event,emailSubscriptionType)\">\n <mat-icon>edit</mat-icon>\n </button>\n </td>\n </ng-container>\n <tr mat-header-row *matHeaderRowDef=\"displayedColumns; sticky:true\"></tr>\n <tr mat-row *matRowDef=\"let row; columns: displayedColumns;\"></tr>\n </table>\n </div>\n </section>\n</div>",
|
|
139
|
-
styles: [".scroll-container{max-height:800px;overflow-y:auto}"]
|
|
140
|
-
},] }
|
|
141
|
-
];
|
|
142
|
-
EmailSubscriptionTypeListComponent.ctorParameters = () => [
|
|
143
|
-
{ type: MatDialog },
|
|
144
|
-
{ type: HttpService }
|
|
145
|
-
];
|
|
146
|
-
EmailSubscriptionTypeListComponent.propDecorators = {
|
|
147
|
-
sort: [{ type: ViewChild, args: [MatSort, { static: true },] }]
|
|
148
|
-
};
|
|
149
|
-
EmailSubscriptionTypeListComponent = __decorate([
|
|
150
|
-
UntilDestroy()
|
|
151
|
-
], EmailSubscriptionTypeListComponent);
|
|
152
|
-
export { EmailSubscriptionTypeListComponent };
|
|
153
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW1haWwtc3Vic2NyaXB0aW9uLXR5cGUtbGlzdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtdGVjaGxpZnktY29yZS9zcmMvbGliL2VtYWlsLXN1YnNjcmlwdGlvbi9lbWFpbC1zdWJzY3JpcHRpb24tdHlwZS9lbWFpbC1zdWJzY3JpcHRpb24tdHlwZS1saXN0L2VtYWlsLXN1YnNjcmlwdGlvbi10eXBlLWxpc3QuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM3RCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDckQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdDLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxZQUFZLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNwRSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDakQsT0FBTyxFQUFFLFlBQVksRUFBRSxjQUFjLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUNyRSxPQUFPLEVBQUUsa0NBQWtDLEVBQUUsTUFBTSx3RUFBd0UsQ0FBQztBQUU1SCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDekQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sOENBQThDLENBQUM7SUFTdkUsa0NBQWtDLFNBQWxDLGtDQUFrQztJQXlCN0MsWUFDVSxNQUFpQixFQUNqQixJQUFpQjtRQURqQixXQUFNLEdBQU4sTUFBTSxDQUFXO1FBQ2pCLFNBQUksR0FBSixJQUFJLENBQWE7UUF6QjNCLDhCQUF5QixHQUFVLEVBQUUsQ0FBQztRQUN0QyxjQUFTLEdBQWMsRUFBRSxJQUFJLEVBQUUsQ0FBQyxFQUFFLE9BQU8sRUFBRSxFQUFF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TUYsa0NBQWtDLENBdUo5QztTQXZKWSxrQ0FBa0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNYXREaWFsb2cgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xuaW1wb3J0IHsgRm9ybUNvbnRyb2wgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBkaXN0aW5jdFVudGlsQ2hhbmdlZCwgZGVib3VuY2VUaW1lIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgTWF0U29ydCB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3NvcnQnO1xuaW1wb3J0IHsgVW50aWxEZXN0cm95LCB1bnRpbERlc3Ryb3llZCB9IGZyb20gJ0BuZ25lYXQvdW50aWwtZGVzdHJveSc7XG5pbXBvcnQgeyBFbWFpbFN1YnNjcmlwdGlvblR5cGVGb3JtQ29tcG9uZW50IH0gZnJvbSAnLi4vZW1haWwtc3Vic2NyaXB0aW9uLXR5cGUtZm9ybS9lbWFpbC1zdWJzY3JpcHRpb24tdHlwZS1mb3JtLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBQYWdlRXZlbnQgfSBmcm9tICcuLi8uLi8uLi9kYXRhLXRhYmxlL2RhdGEtdGFibGUubW9kZWwnO1xuaW1wb3J0IHsgSHR0cFNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9jb3JlL2h0dHAuc2VydmljZSc7XG5pbXBvcnQgeyBBY3Rpb25Qb3B1cENvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uL2FjdGlvbi1wb3B1cC9hY3Rpb24tcG9wdXAuY29tcG9uZW50JztcbmltcG9ydCB7IEFjdGlvblBvcHVwIH0gZnJvbSAnLi4vLi4vLi4vYWN0aW9uLXBvcHVwL2FjdGlvbi1wb3B1cC5tb2RlbCc7XG5cbkBVbnRpbERlc3Ryb3koKVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXBwLWVtYWlsLXN1YnNjcmlwdGlvbi10eXBlLWxpc3QnLFxuICB0ZW1wbGF0ZVVybDogJy4vZW1haWwtc3Vic2NyaXB0aW9uLXR5cGUtbGlzdC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2VtYWlsLXN1YnNjcmlwdGlvbi10eXBlLWxpc3QuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBFbWFpbFN1YnNjcmlwdGlvblR5cGVMaXN0Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcblxuICBlbWFpbFN1YnNjcmlwdGlvblR5cGVMaXN0OiBhbnlbXSA9IFtdO1xuICBwYWdlRXZlbnQ6IFBhZ2VFdmVudCA9IHsgcGFnZTogMSwgcGVyUGFnZTogMjUsIGxhc3RQYWdlOiAxIH07XG4gIGZpbHRlcnM6IGFueSA9IHtcbiAgICBzb3J0X2J5OiAnY3JlYXRlZF9hdHxkZXNjJyxcbiAgICBpc0xvYWRSZWxhdGlvbnM6IHRydWUsXG4gICAgcmVsYXRpb25zOiBbJ2ZyZXF1ZW5jeSddXG4gIH07XG4gIHNlYXJjaDogRm9ybUNvbnRyb2wgPSBuZXcgRm9ybUNvbnRyb2woJycpO1xuXG5cbiAgQFZpZXdDaGlsZChNYXRTb3J0LCB7IHN0YXRpYzogdHJ1ZSB9KSBzb3J0OiBNYXRTb3J0O1xuXG4gIGRpc3BsYXlDb2x1bW5zOiBGb3JtQ29udHJvbCA9IG5ldyBGb3JtQ29udHJvbChbJ2luZGV4JywgJ3RpdGxlJywgJ2ZyZXF1ZW5jeS50aXRsZScsICdkZXNjcmlwdGlvbicsICdhY3Rpb25zJ10pO1xuICBkaXNwbGF5ZWRDb2x1bW5zOiBhbnlbXSA9IFtdO1xuICBhdmFpbGFibGVEaXNwbGF5Q29sdW1uczogYW55W10gPSBbXG4gICAgeyBvcmRlcjogMSwgdmFsdWU6ICdpbmRleCcsIG5hbWU6ICdJbmRleCcgfSxcbiAgICB7IG9yZGVyOiAyLCB2YWx1ZTogJ3RpdGxlJywgbmFtZTogJ1RpdGxlJyB9LFxuICAgIHsgb3JkZXI6IDMsIHZhbHVlOiAnY29kZScsIG5hbWU6ICdDb2RlJyB9LFxuICAgIHsgb3JkZXI6IDQsIHZhbHVlOiAnZnJlcXVlbmN5LnRpdGxlJywgbmFtZTogJ0ZyZXF1ZW5jeScgfSxcbiAgICB7IG9yZGVyOiA1LCB2YWx1ZTogJ2Rlc2NyaXB0aW9uJywgbmFtZTogJ0Rlc2NyaXB0aW9uJyB9LFxuICAgIHsgb3JkZXI6IDYsIHZhbHVlOiAnYWN0aW9ucycsIG5hbWU6ICdBY3Rpb25zJyB9XG4gIF07XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBkaWFsb2c6IE1hdERpYWxvZyxcbiAgICBwcml2YXRlIGh0dHA6IEh0dHBTZXJ2aWNlLFxuICApIHsgfVxuXG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMuZGlzcGxheWVkQ29sdW1ucyA9IHRoaXMuZGlzcGxheUNvbHVtbnMudmFsdWU7XG4gICAgdGhpcy5pbml0aWFsaXplRGF0YSgpO1xuICAgIHRoaXMuc2VhcmNoLnZhbHVlQ2hhbmdlcy5waXBlKFxuICAgICAgZGVib3VuY2VUaW1lKDUwMCksXG4gICAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLFxuICAgICAgdW50aWxEZXN0cm95ZWQodGhpcylcbiAgICApLnN1YnNjcmliZSh2YWx1ZSA9PiB7XG4gICAgICB0aGlzLmZpbHRlcnMuc2VhcmNoID0gdmFsdWU7XG4gICAgICB0aGlzLnJlbG9hZCgpO1xuICAgIH0pO1xuXG4gICAgaWYgKHRoaXMuc29ydCkge1xuICAgICAgdGhpcy5zb3J0LnNvcnRDaGFuZ2UucGlwZSh1bnRpbERlc3Ryb3llZCh0aGlzKSlcbiAgICAgICAgLnN1YnNjcmliZSgodmFsdWU6IGFueSkgPT4ge1xuICAgICAgICAgIHRoaXMuY2hhbmdlU29ydCh2YWx1ZSk7XG4gICAgICAgIH0pXG4gICAgfVxuICB9XG5cbiAgZ2V0IHNlbGVjdGVkQ29sdW1ucygpOiBzdHJpbmdbXSB7XG4gICAgcmV0dXJuIHRoaXMuYXZhaWxhYmxlRGlzcGxheUNvbHVtbnNcbiAgICAgIC5maWx0ZXIoY29sID0+ICh0aGlzLmRpc3BsYXlDb2x1bW5zLnZhbHVlIGFzIGFueSkuc29tZSgoeDogYW55KSA9PiB4ID09PSBjb2wudmFsdWUpKVxuICAgICAgLnNvcnQoKGEsIGIpID0+IChhLm9yZGVyID4gYi5vcmRlcikgPyAxIDogKChiLm9yZGVyID4gYS5vcmRlcikgPyAtMSA6IDApKVxuICAgICAgLm1hcChjb2wgPT4gY29sLnZhbHVlKTtcbiAgfVxuXG4gIGNvbHVtbnNDaGFuZ2UoKSB7XG4gICAgdGhpcy5kaXNwbGF5ZWRDb2x1bW5zID0gdGhpcy5zZWxlY3RlZENvbHVtbnM7XG4gIH1cblxuXG4gIGluaXRpYWxpemVEYXRhKCkge1xuICAgIHRoaXMuaHR0cC5nZXQoYGFwaS9lbWFpbC1zdWJzY3JpcHRpb24tdHlwZXNgLCB7IHBhcmFtczogeyAuLi50aGlzLmZpbHRlcnMsIC4uLnRoaXMucGFnZUV2ZW50IH0gfSlcbiAgICAgIC5waXBlKHVudGlsRGVzdHJveWVkKHRoaXMpKVxuICAgICAgLnN1YnNjcmliZSgocmVzdWx0OiBhbnkpID0+IHtcbiAgICAgICAgdGhpcy5lbWFpbFN1YnNjcmlwdGlvblR5cGVMaXN0ID0gdGhpcy5lbWFpbFN1YnNjcmlwdGlvblR5cGVMaXN0LmNvbmNhdChyZXN1bHQuZGF0YSk7XG4gICAgICAgIHRoaXMucGFnZUV2ZW50LnBhZ2UgPSByZXN1bHQuY3VycmVudF9wYWdlO1xuICAgICAgICB0aGlzLnBhZ2VFdmVudC5sYXN0UGFnZSA9IHJlc3VsdC5sYXN0X3BhZ2U7XG4gICAgICB9KTtcbiAgfVxuXG4gIGFkZEVtYWlsU3Vic2NyaXB0aW9uVHlwZSgpIHtcbiAgICBjb25zdCBkaWFsb2dSZWYgPSB0aGlzLmRpYWxvZy5vcGVuKEVtYWlsU3Vic2NyaXB0aW9uVHlwZUZvcm1Db21wb25lbnQsIHtcbiAgICAgIHdpZHRoOiAnNDAwcHgnLFxuICAgICAgYXV0b0ZvY3VzOiBmYWxzZSxcbiAgICAgIGRhdGE6IHt9IC8vIEFueSBkYXRhIHBhc3NlZCBoZXJlIHdpbGwgYmUgaW5qZWN0ZWQgaW50byB0aGUgbW9kZWxcbiAgICB9KTtcblxuICAgIGRpYWxvZ1JlZi5hZnRlckNsb3NlZCgpLnN1YnNjcmliZSgocmVzdWx0OiBhbnkpID0+IHtcbiAgICAgIGlmIChyZXN1bHQpIHtcbiAgICAgICAgdGhpcy5yZWxvYWQoKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG5cbiAgZWRpdEVtYWlsU3Vic2NyaXB0aW9uVHlwZShldmVudDogYW55LCBlbWFpbFN1YnNjcmlwdGlvblR5cGU6IGFueSkge1xuICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgIGNvbnN0IGRpYWxvZ1JlZiA9IHRoaXMuZGlhbG9nLm9wZW4oRW1haWxTdWJzY3JpcHRpb25UeXBlRm9ybUNvbXBvbmVudCwge1xuICAgICAgd2lkdGg6ICc0MDBweCcsXG4gICAgICBhdXRvRm9jdXM6IGZhbHNlLFxuICAgICAgZGF0YToge1xuICAgICAgICBlbWFpbFN1YnNjcmlwdGlvblR5cGU6IGVtYWlsU3Vic2NyaXB0aW9uVHlwZVxuICAgICAgfSAvLyBBbnkgZGF0YSBwYXNzZWQgaGVyZSB3aWxsIGJlIGluamVjdGVkIGludG8gdGhlIG1vZGVsXG4gICAgfSk7XG5cbiAgICBkaWFsb2dSZWYuYWZ0ZXJDbG9zZWQoKS5zdWJzY3JpYmUoKHJlc3VsdDogYW55KSA9PiB7XG4gICAgICBpZiAocmVzdWx0KSB7XG4gICAgICAgIHRoaXMucmVsb2FkKCk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICBkZWxldGVFbWFpbFN1YnNjcmlwdGlvblR5cGUoZXZlbnQ6IGFueSwgZW1haWxTdWJzY3JpcHRpb25UeXBlOiBhbnkpIHtcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICBjb25zdCBkaWFsb2dSZWYgPSB0aGlzLmRpYWxvZy5vcGVuKEFjdGlvblBvcHVwQ29tcG9uZW50LCB7XG4gICAgICB3aWR0aDogJzQwMHB4JyxcbiAgICAgIGRhdGE6IDxBY3Rpb25Qb3B1cD57XG4gICAgICAgIHRpdGxlOiAnRGVsZXRlIEVtYWlsIFR5cGUnLFxuICAgICAgICBtZXNzYWdlOiBgQXJlIHlvdSBzdXJlIHRvIHByb2NlZWQgZGVsZXRlIHRoZSBFbWFpbCBUeXBlICR7ZW1haWxTdWJzY3JpcHRpb25UeXBlLnRpdGxlfT9gXG4gICAgICB9LFxuICAgICAgYXV0b0ZvY3VzOiBmYWxzZVxuICAgIH0pO1xuXG4gICAgZGlhbG9nUmVmLmFmdGVyQ2xvc2VkKCkuc3Vic2NyaWJlKHJlc3VsdCA9PiB7XG4gICAgICBpZiAocmVzdWx0KSB7XG4gICAgICAgIC8vQWN0aW9uIGNvbmZpcm1lZFxuICAgICAgICB0aGlzLmh0dHAuZGVsZXRlKGBhcGkvZW1haWwtc3Vic2NyaXB0aW9uLXR5cGVzLyR7ZW1haWxTdWJzY3JpcHRpb25UeXBlPy5pZH1gKVxuICAgICAgICAgIC5waXBlKHVudGlsRGVzdHJveWVkKHRoaXMpKVxuICAgICAgICAgIC5zdWJzY3JpYmUoKHJlc3VsdDogYW55KSA9PiB7XG4gICAgICAgICAgICB0aGlzLmVtYWlsU3Vic2NyaXB0aW9uVHlwZUxpc3QgPSB0aGlzLmVtYWlsU3Vic2NyaXB0aW9uVHlwZUxpc3QuZmlsdGVyKHggPT4geC5pZCAhPT0gZW1haWxTdWJzY3JpcHRpb25UeXBlLmlkKTtcbiAgICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIG9uU2Nyb2xsKCkge1xuICAgIGlmICh0aGlzLnBhZ2VFdmVudC5sYXN0UGFnZSA+IHRoaXMucGFnZUV2ZW50LnBhZ2UpIHtcbiAgICAgIHRoaXMucGFnZUV2ZW50LnBhZ2UgKz0gMTtcbiAgICAgIHRoaXMuaW5pdGlhbGl6ZURhdGEoKTtcbiAgICB9XG4gIH1cblxuICBjaGFuZ2VTb3J0KGV2ZW50OiBhbnkpIHtcbiAgICBpZiAoZXZlbnQuZGlyZWN0aW9uKSB7XG4gICAgICB0aGlzLmZpbHRlcnMuc29ydF9ieSA9IGAke2V2ZW50LmFjdGl2ZX18JHtldmVudC5kaXJlY3Rpb259YDtcbiAgICAgIHRoaXMucmVsb2FkKCk7XG4gICAgfVxuICB9XG5cbiAgcmVsb2FkKCkge1xuICAgIHRoaXMuZW1haWxTdWJzY3JpcHRpb25UeXBlTGlzdCA9IFtdO1xuICAgIHRoaXMucGFnZUV2ZW50ID0geyBwYWdlOiAxLCBwZXJQYWdlOiAyNSwgbGFzdFBhZ2U6IDEgfTtcbiAgICB0aGlzLmluaXRpYWxpemVEYXRhKCk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICAvL1VudGlsIGRlc3Ryb3llZCB1c2VzIGl0XG4gIH1cblxufSJdfQ==
|
|
1
|
+
import { __decorate } from "tslib";
|
|
2
|
+
import { Component, ViewChild } from '@angular/core';
|
|
3
|
+
import { MatDialog } from '@angular/material/dialog';
|
|
4
|
+
import { FormControl } from '@angular/forms';
|
|
5
|
+
import { distinctUntilChanged, debounceTime } from 'rxjs/operators';
|
|
6
|
+
import { MatSort } from '@angular/material/sort';
|
|
7
|
+
import { UntilDestroy, untilDestroyed } from '@ngneat/until-destroy';
|
|
8
|
+
import { EmailSubscriptionTypeFormComponent } from '../email-subscription-type-form/email-subscription-type-form.component';
|
|
9
|
+
import { HttpService } from '../../../core/http.service';
|
|
10
|
+
import { ActionPopupComponent } from '../../../action-popup/action-popup.component';
|
|
11
|
+
let EmailSubscriptionTypeListComponent = class EmailSubscriptionTypeListComponent {
|
|
12
|
+
constructor(dialog, http) {
|
|
13
|
+
this.dialog = dialog;
|
|
14
|
+
this.http = http;
|
|
15
|
+
this.emailSubscriptionTypeList = [];
|
|
16
|
+
this.pageEvent = { page: 1, perPage: 25, lastPage: 1 };
|
|
17
|
+
this.filters = {
|
|
18
|
+
sort_by: 'created_at|desc',
|
|
19
|
+
isLoadRelations: true,
|
|
20
|
+
relations: ['frequency']
|
|
21
|
+
};
|
|
22
|
+
this.search = new FormControl('');
|
|
23
|
+
this.displayColumns = new FormControl(['index', 'title', 'frequency.title', 'description', 'actions']);
|
|
24
|
+
this.displayedColumns = [];
|
|
25
|
+
this.availableDisplayColumns = [
|
|
26
|
+
{ order: 1, value: 'index', name: 'Index' },
|
|
27
|
+
{ order: 2, value: 'title', name: 'Title' },
|
|
28
|
+
{ order: 3, value: 'code', name: 'Code' },
|
|
29
|
+
{ order: 4, value: 'frequency.title', name: 'Frequency' },
|
|
30
|
+
{ order: 5, value: 'description', name: 'Description' },
|
|
31
|
+
{ order: 6, value: 'actions', name: 'Actions' }
|
|
32
|
+
];
|
|
33
|
+
}
|
|
34
|
+
ngOnInit() {
|
|
35
|
+
this.displayedColumns = this.displayColumns.value;
|
|
36
|
+
this.initializeData();
|
|
37
|
+
this.search.valueChanges.pipe(debounceTime(500), distinctUntilChanged(), untilDestroyed(this)).subscribe(value => {
|
|
38
|
+
this.filters.search = value;
|
|
39
|
+
this.reload();
|
|
40
|
+
});
|
|
41
|
+
if (this.sort) {
|
|
42
|
+
this.sort.sortChange.pipe(untilDestroyed(this))
|
|
43
|
+
.subscribe((value) => {
|
|
44
|
+
this.changeSort(value);
|
|
45
|
+
});
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
get selectedColumns() {
|
|
49
|
+
return this.availableDisplayColumns
|
|
50
|
+
.filter(col => this.displayColumns.value.some((x) => x === col.value))
|
|
51
|
+
.sort((a, b) => (a.order > b.order) ? 1 : ((b.order > a.order) ? -1 : 0))
|
|
52
|
+
.map(col => col.value);
|
|
53
|
+
}
|
|
54
|
+
columnsChange() {
|
|
55
|
+
this.displayedColumns = this.selectedColumns;
|
|
56
|
+
}
|
|
57
|
+
initializeData() {
|
|
58
|
+
this.http.get(`api/email-subscription-types`, { params: Object.assign(Object.assign({}, this.filters), this.pageEvent) })
|
|
59
|
+
.pipe(untilDestroyed(this))
|
|
60
|
+
.subscribe((result) => {
|
|
61
|
+
this.emailSubscriptionTypeList = this.emailSubscriptionTypeList.concat(result.data);
|
|
62
|
+
this.pageEvent.page = result.current_page;
|
|
63
|
+
this.pageEvent.lastPage = result.last_page;
|
|
64
|
+
});
|
|
65
|
+
}
|
|
66
|
+
addEmailSubscriptionType() {
|
|
67
|
+
const dialogRef = this.dialog.open(EmailSubscriptionTypeFormComponent, {
|
|
68
|
+
width: '400px',
|
|
69
|
+
autoFocus: false,
|
|
70
|
+
data: {} // Any data passed here will be injected into the model
|
|
71
|
+
});
|
|
72
|
+
dialogRef.afterClosed().subscribe((result) => {
|
|
73
|
+
if (result) {
|
|
74
|
+
this.reload();
|
|
75
|
+
}
|
|
76
|
+
});
|
|
77
|
+
}
|
|
78
|
+
editEmailSubscriptionType(event, emailSubscriptionType) {
|
|
79
|
+
event.stopPropagation();
|
|
80
|
+
const dialogRef = this.dialog.open(EmailSubscriptionTypeFormComponent, {
|
|
81
|
+
width: '400px',
|
|
82
|
+
autoFocus: false,
|
|
83
|
+
data: {
|
|
84
|
+
emailSubscriptionType: emailSubscriptionType
|
|
85
|
+
} // Any data passed here will be injected into the model
|
|
86
|
+
});
|
|
87
|
+
dialogRef.afterClosed().subscribe((result) => {
|
|
88
|
+
if (result) {
|
|
89
|
+
this.reload();
|
|
90
|
+
}
|
|
91
|
+
});
|
|
92
|
+
}
|
|
93
|
+
deleteEmailSubscriptionType(event, emailSubscriptionType) {
|
|
94
|
+
event.stopPropagation();
|
|
95
|
+
const dialogRef = this.dialog.open(ActionPopupComponent, {
|
|
96
|
+
width: '400px',
|
|
97
|
+
data: {
|
|
98
|
+
title: 'Delete Email Type',
|
|
99
|
+
message: `Are you sure to proceed delete the Email Type ${emailSubscriptionType.title}?`
|
|
100
|
+
},
|
|
101
|
+
autoFocus: false
|
|
102
|
+
});
|
|
103
|
+
dialogRef.afterClosed().subscribe(result => {
|
|
104
|
+
if (result) {
|
|
105
|
+
//Action confirmed
|
|
106
|
+
this.http.delete(`api/email-subscription-types/${emailSubscriptionType === null || emailSubscriptionType === void 0 ? void 0 : emailSubscriptionType.id}`)
|
|
107
|
+
.pipe(untilDestroyed(this))
|
|
108
|
+
.subscribe((result) => {
|
|
109
|
+
this.emailSubscriptionTypeList = this.emailSubscriptionTypeList.filter(x => x.id !== emailSubscriptionType.id);
|
|
110
|
+
});
|
|
111
|
+
}
|
|
112
|
+
});
|
|
113
|
+
}
|
|
114
|
+
onScroll() {
|
|
115
|
+
if (this.pageEvent.lastPage > this.pageEvent.page) {
|
|
116
|
+
this.pageEvent.page += 1;
|
|
117
|
+
this.initializeData();
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
changeSort(event) {
|
|
121
|
+
if (event.direction) {
|
|
122
|
+
this.filters.sort_by = `${event.active}|${event.direction}`;
|
|
123
|
+
this.reload();
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
reload() {
|
|
127
|
+
this.emailSubscriptionTypeList = [];
|
|
128
|
+
this.pageEvent = { page: 1, perPage: 25, lastPage: 1 };
|
|
129
|
+
this.initializeData();
|
|
130
|
+
}
|
|
131
|
+
ngOnDestroy() {
|
|
132
|
+
//Until destroyed uses it
|
|
133
|
+
}
|
|
134
|
+
};
|
|
135
|
+
EmailSubscriptionTypeListComponent.decorators = [
|
|
136
|
+
{ type: Component, args: [{
|
|
137
|
+
selector: 'app-email-subscription-type-list',
|
|
138
|
+
template: "<div class=\"mat-typography m-4\">\r\n <div fxLayout=\"row wrap\" fxLayoutAlign=\"start center\">\r\n <mat-form-field>\r\n <input matInput [formControl]=\"search\" placeholder=\"Email Type\" autocomplete=\"off\" />\r\n <button mat-button matSuffix mat-icon-button>\r\n <mat-icon>search</mat-icon>\r\n </button>\r\n <button mat-button *ngIf=\"search.value\" matSuffix mat-icon-button (click)=\"search.setValue('')\">\r\n <mat-icon>close</mat-icon>\r\n </button>\r\n </mat-form-field>\r\n <div class=\"ml-2\">\r\n <button mat-raised-button color=\"primary\" type=\"button\" (click)=\"addEmailSubscriptionType()\">+ Email\r\n Type</button>\r\n </div>\r\n <span fxFlex></span>\r\n <mat-form-field appearance=\"outline\" class=\"no-padding\">\r\n <mat-label>Columns</mat-label>\r\n <mat-select [formControl]=\"displayColumns\" multiple (selectionChange)=\"columnsChange()\">\r\n <mat-option *ngFor=\"let column of availableDisplayColumns\" [value]=\"column.value\">{{column.name}}\r\n </mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n </div>\r\n\r\n <section>\r\n <div class=\"scroll-container\" infiniteScroll [infiniteScrollDistance]=\"2\" [infiniteScrollThrottle]=\"50\"\r\n (scrolled)=\"onScroll()\" [scrollWindow]=\"false\">\r\n <table mat-table [dataSource]=\"emailSubscriptionTypeList\" matSort class=\"w-100 mt-1\" multiTemplateDataRows\r\n id=\"email-subscription-type-table\">\r\n\r\n <!-- Index Column -->\r\n <ng-container matColumnDef=\"index\">\r\n <th mat-header-cell *matHeaderCellDef> # </th>\r\n <td mat-cell *matCellDef=\"let emailSubscriptionType; let i = dataIndex\"> {{ i+1 }} </td>\r\n </ng-container>\r\n <ng-container matColumnDef=\"title\">\r\n <th mat-header-cell *matHeaderCellDef mat-sort-header> Title </th>\r\n <td mat-cell *matCellDef=\"let emailSubscriptionType;\"> {{ emailSubscriptionType?.title }} </td>\r\n </ng-container>\r\n <ng-container matColumnDef=\"code\">\r\n <th mat-header-cell *matHeaderCellDef mat-sort-header> Code </th>\r\n <td mat-cell *matCellDef=\"let emailSubscriptionType;\"> {{ emailSubscriptionType?.code }}\r\n </td>\r\n </ng-container>\r\n <ng-container matColumnDef=\"frequency.title\">\r\n <th mat-header-cell *matHeaderCellDef mat-sort-header> Frequency </th>\r\n <td mat-cell *matCellDef=\"let emailSubscriptionType;\"> {{ emailSubscriptionType?.frequency?.title }}\r\n </td>\r\n </ng-container>\r\n <ng-container matColumnDef=\"description\">\r\n <th mat-header-cell *matHeaderCellDef> Description </th>\r\n <td mat-cell *matCellDef=\"let emailSubscriptionType;\"> {{ emailSubscriptionType?.description }}\r\n </td>\r\n </ng-container>\r\n\r\n <!-- Actions Column -->\r\n <ng-container matColumnDef=\"actions\">\r\n <th mat-header-cell *matHeaderCellDef> Actions </th>\r\n <td mat-cell *matCellDef=\"let emailSubscriptionType\">\r\n <button type=\"button\" mat-icon-button\r\n (click)=\"deleteEmailSubscriptionType($event,emailSubscriptionType)\">\r\n <mat-icon>delete</mat-icon>\r\n </button>\r\n <button type=\"button\" mat-icon-button\r\n (click)=\"editEmailSubscriptionType($event,emailSubscriptionType)\">\r\n <mat-icon>edit</mat-icon>\r\n </button>\r\n </td>\r\n </ng-container>\r\n <tr mat-header-row *matHeaderRowDef=\"displayedColumns; sticky:true\"></tr>\r\n <tr mat-row *matRowDef=\"let row; columns: displayedColumns;\"></tr>\r\n </table>\r\n </div>\r\n </section>\r\n</div>",
|
|
139
|
+
styles: [".scroll-container{max-height:800px;overflow-y:auto}"]
|
|
140
|
+
},] }
|
|
141
|
+
];
|
|
142
|
+
EmailSubscriptionTypeListComponent.ctorParameters = () => [
|
|
143
|
+
{ type: MatDialog },
|
|
144
|
+
{ type: HttpService }
|
|
145
|
+
];
|
|
146
|
+
EmailSubscriptionTypeListComponent.propDecorators = {
|
|
147
|
+
sort: [{ type: ViewChild, args: [MatSort, { static: true },] }]
|
|
148
|
+
};
|
|
149
|
+
EmailSubscriptionTypeListComponent = __decorate([
|
|
150
|
+
UntilDestroy()
|
|
151
|
+
], EmailSubscriptionTypeListComponent);
|
|
152
|
+
export { EmailSubscriptionTypeListComponent };
|
|
153
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW1haWwtc3Vic2NyaXB0aW9uLXR5cGUtbGlzdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtdGVjaGxpZnktY29yZS9zcmMvbGliL2VtYWlsLXN1YnNjcmlwdGlvbi9lbWFpbC1zdWJzY3JpcHRpb24tdHlwZS9lbWFpbC1zdWJzY3JpcHRpb24tdHlwZS1saXN0L2VtYWlsLXN1YnNjcmlwdGlvbi10eXBlLWxpc3QuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM3RCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDckQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdDLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxZQUFZLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNwRSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDakQsT0FBTyxFQUFFLFlBQVksRUFBRSxjQUFjLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUNyRSxPQUFPLEVBQUUsa0NBQWtDLEVBQUUsTUFBTSx3RUFBd0UsQ0FBQztBQUU1SCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDekQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sOENBQThDLENBQUM7SUFTdkUsa0NBQWtDLFNBQWxDLGtDQUFrQztJQXlCN0MsWUFDVSxNQUFpQixFQUNqQixJQUFpQjtRQURqQixXQUFNLEdBQU4sTUFBTSxDQUFXO1FBQ2pCLFNBQUksR0FBSixJQUFJLENBQWE7UUF6QjNCLDhCQUF5QixHQUFVLEVBQUUsQ0FBQztRQUN0QyxjQUFTLEdBQWMsRUFBRSxJQUFJLEVBQUUsQ0FBQyxFQUFFLE9BQU8sRUFBRSxFQUFF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TUYsa0NBQWtDLENBdUo5QztTQXZKWSxrQ0FBa0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE1hdERpYWxvZyB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XHJcbmltcG9ydCB7IEZvcm1Db250cm9sIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBkaXN0aW5jdFVudGlsQ2hhbmdlZCwgZGVib3VuY2VUaW1lIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5pbXBvcnQgeyBNYXRTb3J0IH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvc29ydCc7XHJcbmltcG9ydCB7IFVudGlsRGVzdHJveSwgdW50aWxEZXN0cm95ZWQgfSBmcm9tICdAbmduZWF0L3VudGlsLWRlc3Ryb3knO1xyXG5pbXBvcnQgeyBFbWFpbFN1YnNjcmlwdGlvblR5cGVGb3JtQ29tcG9uZW50IH0gZnJvbSAnLi4vZW1haWwtc3Vic2NyaXB0aW9uLXR5cGUtZm9ybS9lbWFpbC1zdWJzY3JpcHRpb24tdHlwZS1mb3JtLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFBhZ2VFdmVudCB9IGZyb20gJy4uLy4uLy4uL2RhdGEtdGFibGUvZGF0YS10YWJsZS5tb2RlbCc7XHJcbmltcG9ydCB7IEh0dHBTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vY29yZS9odHRwLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBBY3Rpb25Qb3B1cENvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uL2FjdGlvbi1wb3B1cC9hY3Rpb24tcG9wdXAuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQWN0aW9uUG9wdXAgfSBmcm9tICcuLi8uLi8uLi9hY3Rpb24tcG9wdXAvYWN0aW9uLXBvcHVwLm1vZGVsJztcclxuXHJcbkBVbnRpbERlc3Ryb3koKVxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FwcC1lbWFpbC1zdWJzY3JpcHRpb24tdHlwZS1saXN0JyxcclxuICB0ZW1wbGF0ZVVybDogJy4vZW1haWwtc3Vic2NyaXB0aW9uLXR5cGUtbGlzdC5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vZW1haWwtc3Vic2NyaXB0aW9uLXR5cGUtbGlzdC5jb21wb25lbnQuc2NzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBFbWFpbFN1YnNjcmlwdGlvblR5cGVMaXN0Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuXHJcbiAgZW1haWxTdWJzY3JpcHRpb25UeXBlTGlzdDogYW55W10gPSBbXTtcclxuICBwYWdlRXZlbnQ6IFBhZ2VFdmVudCA9IHsgcGFnZTogMSwgcGVyUGFnZTogMjUsIGxhc3RQYWdlOiAxIH07XHJcbiAgZmlsdGVyczogYW55ID0ge1xyXG4gICAgc29ydF9ieTogJ2NyZWF0ZWRfYXR8ZGVzYycsXHJcbiAgICBpc0xvYWRSZWxhdGlvbnM6IHRydWUsXHJcbiAgICByZWxhdGlvbnM6IFsnZnJlcXVlbmN5J11cclxuICB9O1xyXG4gIHNlYXJjaDogRm9ybUNvbnRyb2wgPSBuZXcgRm9ybUNvbnRyb2woJycpO1xyXG5cclxuXHJcbiAgQFZpZXdDaGlsZChNYXRTb3J0LCB7IHN0YXRpYzogdHJ1ZSB9KSBzb3J0OiBNYXRTb3J0O1xyXG5cclxuICBkaXNwbGF5Q29sdW1uczogRm9ybUNvbnRyb2wgPSBuZXcgRm9ybUNvbnRyb2woWydpbmRleCcsICd0aXRsZScsICdmcmVxdWVuY3kudGl0bGUnLCAnZGVzY3JpcHRpb24nLCAnYWN0aW9ucyddKTtcclxuICBkaXNwbGF5ZWRDb2x1bW5zOiBhbnlbXSA9IFtdO1xyXG4gIGF2YWlsYWJsZURpc3BsYXlDb2x1bW5zOiBhbnlbXSA9IFtcclxuICAgIHsgb3JkZXI6IDEsIHZhbHVlOiAnaW5kZXgnLCBuYW1lOiAnSW5kZXgnIH0sXHJcbiAgICB7IG9yZGVyOiAyLCB2YWx1ZTogJ3RpdGxlJywgbmFtZTogJ1RpdGxlJyB9LFxyXG4gICAgeyBvcmRlcjogMywgdmFsdWU6ICdjb2RlJywgbmFtZTogJ0NvZGUnIH0sXHJcbiAgICB7IG9yZGVyOiA0LCB2YWx1ZTogJ2ZyZXF1ZW5jeS50aXRsZScsIG5hbWU6ICdGcmVxdWVuY3knIH0sXHJcbiAgICB7IG9yZGVyOiA1LCB2YWx1ZTogJ2Rlc2NyaXB0aW9uJywgbmFtZTogJ0Rlc2NyaXB0aW9uJyB9LFxyXG4gICAgeyBvcmRlcjogNiwgdmFsdWU6ICdhY3Rpb25zJywgbmFtZTogJ0FjdGlvbnMnIH1cclxuICBdO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgZGlhbG9nOiBNYXREaWFsb2csXHJcbiAgICBwcml2YXRlIGh0dHA6IEh0dHBTZXJ2aWNlLFxyXG4gICkgeyB9XHJcblxyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgdGhpcy5kaXNwbGF5ZWRDb2x1bW5zID0gdGhpcy5kaXNwbGF5Q29sdW1ucy52YWx1ZTtcclxuICAgIHRoaXMuaW5pdGlhbGl6ZURhdGEoKTtcclxuICAgIHRoaXMuc2VhcmNoLnZhbHVlQ2hhbmdlcy5waXBlKFxyXG4gICAgICBkZWJvdW5jZVRpbWUoNTAwKSxcclxuICAgICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKSxcclxuICAgICAgdW50aWxEZXN0cm95ZWQodGhpcylcclxuICAgICkuc3Vic2NyaWJlKHZhbHVlID0+IHtcclxuICAgICAgdGhpcy5maWx0ZXJzLnNlYXJjaCA9IHZhbHVlO1xyXG4gICAgICB0aGlzLnJlbG9hZCgpO1xyXG4gICAgfSk7XHJcblxyXG4gICAgaWYgKHRoaXMuc29ydCkge1xyXG4gICAgICB0aGlzLnNvcnQuc29ydENoYW5nZS5waXBlKHVudGlsRGVzdHJveWVkKHRoaXMpKVxyXG4gICAgICAgIC5zdWJzY3JpYmUoKHZhbHVlOiBhbnkpID0+IHtcclxuICAgICAgICAgIHRoaXMuY2hhbmdlU29ydCh2YWx1ZSk7XHJcbiAgICAgICAgfSlcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGdldCBzZWxlY3RlZENvbHVtbnMoKTogc3RyaW5nW10ge1xyXG4gICAgcmV0dXJuIHRoaXMuYXZhaWxhYmxlRGlzcGxheUNvbHVtbnNcclxuICAgICAgLmZpbHRlcihjb2wgPT4gKHRoaXMuZGlzcGxheUNvbHVtbnMudmFsdWUgYXMgYW55KS5zb21lKCh4OiBhbnkpID0+IHggPT09IGNvbC52YWx1ZSkpXHJcbiAgICAgIC5zb3J0KChhLCBiKSA9PiAoYS5vcmRlciA+IGIub3JkZXIpID8gMSA6ICgoYi5vcmRlciA+IGEub3JkZXIpID8gLTEgOiAwKSlcclxuICAgICAgLm1hcChjb2wgPT4gY29sLnZhbHVlKTtcclxuICB9XHJcblxyXG4gIGNvbHVtbnNDaGFuZ2UoKSB7XHJcbiAgICB0aGlzLmRpc3BsYXllZENvbHVtbnMgPSB0aGlzLnNlbGVjdGVkQ29sdW1ucztcclxuICB9XHJcblxyXG5cclxuICBpbml0aWFsaXplRGF0YSgpIHtcclxuICAgIHRoaXMuaHR0cC5nZXQoYGFwaS9lbWFpbC1zdWJzY3JpcHRpb24tdHlwZXNgLCB7IHBhcmFtczogeyAuLi50aGlzLmZpbHRlcnMsIC4uLnRoaXMucGFnZUV2ZW50IH0gfSlcclxuICAgICAgLnBpcGUodW50aWxEZXN0cm95ZWQodGhpcykpXHJcbiAgICAgIC5zdWJzY3JpYmUoKHJlc3VsdDogYW55KSA9PiB7XHJcbiAgICAgICAgdGhpcy5lbWFpbFN1YnNjcmlwdGlvblR5cGVMaXN0ID0gdGhpcy5lbWFpbFN1YnNjcmlwdGlvblR5cGVMaXN0LmNvbmNhdChyZXN1bHQuZGF0YSk7XHJcbiAgICAgICAgdGhpcy5wYWdlRXZlbnQucGFnZSA9IHJlc3VsdC5jdXJyZW50X3BhZ2U7XHJcbiAgICAgICAgdGhpcy5wYWdlRXZlbnQubGFzdFBhZ2UgPSByZXN1bHQubGFzdF9wYWdlO1xyXG4gICAgICB9KTtcclxuICB9XHJcblxyXG4gIGFkZEVtYWlsU3Vic2NyaXB0aW9uVHlwZSgpIHtcclxuICAgIGNvbnN0IGRpYWxvZ1JlZiA9IHRoaXMuZGlhbG9nLm9wZW4oRW1haWxTdWJzY3JpcHRpb25UeXBlRm9ybUNvbXBvbmVudCwge1xyXG4gICAgICB3aWR0aDogJzQwMHB4JyxcclxuICAgICAgYXV0b0ZvY3VzOiBmYWxzZSxcclxuICAgICAgZGF0YToge30gLy8gQW55IGRhdGEgcGFzc2VkIGhlcmUgd2lsbCBiZSBpbmplY3RlZCBpbnRvIHRoZSBtb2RlbFxyXG4gICAgfSk7XHJcblxyXG4gICAgZGlhbG9nUmVmLmFmdGVyQ2xvc2VkKCkuc3Vic2NyaWJlKChyZXN1bHQ6IGFueSkgPT4ge1xyXG4gICAgICBpZiAocmVzdWx0KSB7XHJcbiAgICAgICAgdGhpcy5yZWxvYWQoKTtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuXHJcbiAgZWRpdEVtYWlsU3Vic2NyaXB0aW9uVHlwZShldmVudDogYW55LCBlbWFpbFN1YnNjcmlwdGlvblR5cGU6IGFueSkge1xyXG4gICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XHJcbiAgICBjb25zdCBkaWFsb2dSZWYgPSB0aGlzLmRpYWxvZy5vcGVuKEVtYWlsU3Vic2NyaXB0aW9uVHlwZUZvcm1Db21wb25lbnQsIHtcclxuICAgICAgd2lkdGg6ICc0MDBweCcsXHJcbiAgICAgIGF1dG9Gb2N1czogZmFsc2UsXHJcbiAgICAgIGRhdGE6IHtcclxuICAgICAgICBlbWFpbFN1YnNjcmlwdGlvblR5cGU6IGVtYWlsU3Vic2NyaXB0aW9uVHlwZVxyXG4gICAgICB9IC8vIEFueSBkYXRhIHBhc3NlZCBoZXJlIHdpbGwgYmUgaW5qZWN0ZWQgaW50byB0aGUgbW9kZWxcclxuICAgIH0pO1xyXG5cclxuICAgIGRpYWxvZ1JlZi5hZnRlckNsb3NlZCgpLnN1YnNjcmliZSgocmVzdWx0OiBhbnkpID0+IHtcclxuICAgICAgaWYgKHJlc3VsdCkge1xyXG4gICAgICAgIHRoaXMucmVsb2FkKCk7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgZGVsZXRlRW1haWxTdWJzY3JpcHRpb25UeXBlKGV2ZW50OiBhbnksIGVtYWlsU3Vic2NyaXB0aW9uVHlwZTogYW55KSB7XHJcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcclxuICAgIGNvbnN0IGRpYWxvZ1JlZiA9IHRoaXMuZGlhbG9nLm9wZW4oQWN0aW9uUG9wdXBDb21wb25lbnQsIHtcclxuICAgICAgd2lkdGg6ICc0MDBweCcsXHJcbiAgICAgIGRhdGE6IDxBY3Rpb25Qb3B1cD57XHJcbiAgICAgICAgdGl0bGU6ICdEZWxldGUgRW1haWwgVHlwZScsXHJcbiAgICAgICAgbWVzc2FnZTogYEFyZSB5b3Ugc3VyZSB0byBwcm9jZWVkIGRlbGV0ZSB0aGUgRW1haWwgVHlwZSAke2VtYWlsU3Vic2NyaXB0aW9uVHlwZS50aXRsZX0/YFxyXG4gICAgICB9LFxyXG4gICAgICBhdXRvRm9jdXM6IGZhbHNlXHJcbiAgICB9KTtcclxuXHJcbiAgICBkaWFsb2dSZWYuYWZ0ZXJDbG9zZWQoKS5zdWJzY3JpYmUocmVzdWx0ID0+IHtcclxuICAgICAgaWYgKHJlc3VsdCkge1xyXG4gICAgICAgIC8vQWN0aW9uIGNvbmZpcm1lZFxyXG4gICAgICAgIHRoaXMuaHR0cC5kZWxldGUoYGFwaS9lbWFpbC1zdWJzY3JpcHRpb24tdHlwZXMvJHtlbWFpbFN1YnNjcmlwdGlvblR5cGU/LmlkfWApXHJcbiAgICAgICAgICAucGlwZSh1bnRpbERlc3Ryb3llZCh0aGlzKSlcclxuICAgICAgICAgIC5zdWJzY3JpYmUoKHJlc3VsdDogYW55KSA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMuZW1haWxTdWJzY3JpcHRpb25UeXBlTGlzdCA9IHRoaXMuZW1haWxTdWJzY3JpcHRpb25UeXBlTGlzdC5maWx0ZXIoeCA9PiB4LmlkICE9PSBlbWFpbFN1YnNjcmlwdGlvblR5cGUuaWQpO1xyXG4gICAgICAgICAgfSk7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgb25TY3JvbGwoKSB7XHJcbiAgICBpZiAodGhpcy5wYWdlRXZlbnQubGFzdFBhZ2UgPiB0aGlzLnBhZ2VFdmVudC5wYWdlKSB7XHJcbiAgICAgIHRoaXMucGFnZUV2ZW50LnBhZ2UgKz0gMTtcclxuICAgICAgdGhpcy5pbml0aWFsaXplRGF0YSgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgY2hhbmdlU29ydChldmVudDogYW55KSB7XHJcbiAgICBpZiAoZXZlbnQuZGlyZWN0aW9uKSB7XHJcbiAgICAgIHRoaXMuZmlsdGVycy5zb3J0X2J5ID0gYCR7ZXZlbnQuYWN0aXZlfXwke2V2ZW50LmRpcmVjdGlvbn1gO1xyXG4gICAgICB0aGlzLnJlbG9hZCgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcmVsb2FkKCkge1xyXG4gICAgdGhpcy5lbWFpbFN1YnNjcmlwdGlvblR5cGVMaXN0ID0gW107XHJcbiAgICB0aGlzLnBhZ2VFdmVudCA9IHsgcGFnZTogMSwgcGVyUGFnZTogMjUsIGxhc3RQYWdlOiAxIH07XHJcbiAgICB0aGlzLmluaXRpYWxpemVEYXRhKCk7XHJcbiAgfVxyXG5cclxuICBuZ09uRGVzdHJveSgpIHtcclxuICAgIC8vVW50aWwgZGVzdHJveWVkIHVzZXMgaXRcclxuICB9XHJcblxyXG59Il19
|
|
@@ -1,27 +1,27 @@
|
|
|
1
|
-
import { NgModule } from '@angular/core';
|
|
2
|
-
import { CommonModule } from '@angular/common';
|
|
3
|
-
import { EmailSubscriptionTypeListRoutingModule } from './email-subscription-type-list-routing.module';
|
|
4
|
-
import { EmailSubscriptionTypeListComponent } from './email-subscription-type-list.component';
|
|
5
|
-
import { EmailSubscriptionTypeFormModule } from '../email-subscription-type-form/email-subscription-type-form.module';
|
|
6
|
-
import { InfiniteScrollModule } from 'ngx-infinite-scroll';
|
|
7
|
-
import { FlexLayoutModule } from '@angular/flex-layout';
|
|
8
|
-
import { MaterialModule } from '../../../material.module';
|
|
9
|
-
import { ReactiveFormsModule } from '@angular/forms';
|
|
10
|
-
export class EmailSubscriptionTypeListModule {
|
|
11
|
-
}
|
|
12
|
-
EmailSubscriptionTypeListModule.decorators = [
|
|
13
|
-
{ type: NgModule, args: [{
|
|
14
|
-
declarations: [EmailSubscriptionTypeListComponent],
|
|
15
|
-
imports: [
|
|
16
|
-
CommonModule,
|
|
17
|
-
MaterialModule,
|
|
18
|
-
FlexLayoutModule,
|
|
19
|
-
ReactiveFormsModule,
|
|
20
|
-
InfiniteScrollModule,
|
|
21
|
-
EmailSubscriptionTypeFormModule,
|
|
22
|
-
EmailSubscriptionTypeListRoutingModule
|
|
23
|
-
],
|
|
24
|
-
exports: [EmailSubscriptionTypeListComponent]
|
|
25
|
-
},] }
|
|
26
|
-
];
|
|
27
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
import { NgModule } from '@angular/core';
|
|
2
|
+
import { CommonModule } from '@angular/common';
|
|
3
|
+
import { EmailSubscriptionTypeListRoutingModule } from './email-subscription-type-list-routing.module';
|
|
4
|
+
import { EmailSubscriptionTypeListComponent } from './email-subscription-type-list.component';
|
|
5
|
+
import { EmailSubscriptionTypeFormModule } from '../email-subscription-type-form/email-subscription-type-form.module';
|
|
6
|
+
import { InfiniteScrollModule } from 'ngx-infinite-scroll';
|
|
7
|
+
import { FlexLayoutModule } from '@angular/flex-layout';
|
|
8
|
+
import { MaterialModule } from '../../../material.module';
|
|
9
|
+
import { ReactiveFormsModule } from '@angular/forms';
|
|
10
|
+
export class EmailSubscriptionTypeListModule {
|
|
11
|
+
}
|
|
12
|
+
EmailSubscriptionTypeListModule.decorators = [
|
|
13
|
+
{ type: NgModule, args: [{
|
|
14
|
+
declarations: [EmailSubscriptionTypeListComponent],
|
|
15
|
+
imports: [
|
|
16
|
+
CommonModule,
|
|
17
|
+
MaterialModule,
|
|
18
|
+
FlexLayoutModule,
|
|
19
|
+
ReactiveFormsModule,
|
|
20
|
+
InfiniteScrollModule,
|
|
21
|
+
EmailSubscriptionTypeFormModule,
|
|
22
|
+
EmailSubscriptionTypeListRoutingModule
|
|
23
|
+
],
|
|
24
|
+
exports: [EmailSubscriptionTypeListComponent]
|
|
25
|
+
},] }
|
|
26
|
+
];
|
|
27
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW1haWwtc3Vic2NyaXB0aW9uLXR5cGUtbGlzdC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtdGVjaGxpZnktY29yZS9zcmMvbGliL2VtYWlsLXN1YnNjcmlwdGlvbi9lbWFpbC1zdWJzY3JpcHRpb24tdHlwZS9lbWFpbC1zdWJzY3JpcHRpb24tdHlwZS1saXN0L2VtYWlsLXN1YnNjcmlwdGlvbi10eXBlLWxpc3QubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRS9DLE9BQU8sRUFBRSxzQ0FBc0MsRUFBRSxNQUFNLCtDQUErQyxDQUFDO0FBQ3ZHLE9BQU8sRUFBRSxrQ0FBa0MsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBQzlGLE9BQU8sRUFBRSwrQkFBK0IsRUFBRSxNQUFNLHFFQUFxRSxDQUFDO0FBQ3RILE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQzNELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQWdCckQsTUFBTSxPQUFPLCtCQUErQjs7O1lBYjNDLFFBQVEsU0FBQztnQkFDUixZQUFZLEVBQUUsQ0FBQyxrQ0FBa0MsQ0FBQztnQkFDbEQsT0FBTyxFQUFFO29CQUNQLFlBQVk7b0JBQ1osY0FBYztvQkFDZCxnQkFBZ0I7b0JBQ2hCLG1CQUFtQjtvQkFDbkIsb0JBQW9CO29CQUNwQiwrQkFBK0I7b0JBQy9CLHNDQUFzQztpQkFDdkM7Z0JBQ0QsT0FBTyxFQUFFLENBQUMsa0NBQWtDLENBQUM7YUFDOUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5cclxuaW1wb3J0IHsgRW1haWxTdWJzY3JpcHRpb25UeXBlTGlzdFJvdXRpbmdNb2R1bGUgfSBmcm9tICcuL2VtYWlsLXN1YnNjcmlwdGlvbi10eXBlLWxpc3Qtcm91dGluZy5tb2R1bGUnO1xyXG5pbXBvcnQgeyBFbWFpbFN1YnNjcmlwdGlvblR5cGVMaXN0Q29tcG9uZW50IH0gZnJvbSAnLi9lbWFpbC1zdWJzY3JpcHRpb24tdHlwZS1saXN0LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEVtYWlsU3Vic2NyaXB0aW9uVHlwZUZvcm1Nb2R1bGUgfSBmcm9tICcuLi9lbWFpbC1zdWJzY3JpcHRpb24tdHlwZS1mb3JtL2VtYWlsLXN1YnNjcmlwdGlvbi10eXBlLWZvcm0ubW9kdWxlJztcclxuaW1wb3J0IHsgSW5maW5pdGVTY3JvbGxNb2R1bGUgfSBmcm9tICduZ3gtaW5maW5pdGUtc2Nyb2xsJztcclxuaW1wb3J0IHsgRmxleExheW91dE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2ZsZXgtbGF5b3V0JztcclxuaW1wb3J0IHsgTWF0ZXJpYWxNb2R1bGUgfSBmcm9tICcuLi8uLi8uLi9tYXRlcmlhbC5tb2R1bGUnO1xyXG5pbXBvcnQgeyBSZWFjdGl2ZUZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5cclxuXHJcbkBOZ01vZHVsZSh7XHJcbiAgZGVjbGFyYXRpb25zOiBbRW1haWxTdWJzY3JpcHRpb25UeXBlTGlzdENvbXBvbmVudF0sXHJcbiAgaW1wb3J0czogW1xyXG4gICAgQ29tbW9uTW9kdWxlLFxyXG4gICAgTWF0ZXJpYWxNb2R1bGUsXHJcbiAgICBGbGV4TGF5b3V0TW9kdWxlLFxyXG4gICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcclxuICAgIEluZmluaXRlU2Nyb2xsTW9kdWxlLFxyXG4gICAgRW1haWxTdWJzY3JpcHRpb25UeXBlRm9ybU1vZHVsZSxcclxuICAgIEVtYWlsU3Vic2NyaXB0aW9uVHlwZUxpc3RSb3V0aW5nTW9kdWxlXHJcbiAgXSxcclxuICBleHBvcnRzOiBbRW1haWxTdWJzY3JpcHRpb25UeXBlTGlzdENvbXBvbmVudF1cclxufSlcclxuZXhwb3J0IGNsYXNzIEVtYWlsU3Vic2NyaXB0aW9uVHlwZUxpc3RNb2R1bGUgeyB9XHJcbiJdfQ==
|
package/esm2015/lib/email-subscription/email-subscription-type/email-subscription-type-list/index.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export * from './email-subscription-type-list.component';
|
|
1
|
+
export * from './email-subscription-type-list.component';
|
|
2
2
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtdGVjaGxpZnktY29yZS9zcmMvbGliL2VtYWlsLXN1YnNjcmlwdGlvbi9lbWFpbC1zdWJzY3JpcHRpb24tdHlwZS9lbWFpbC1zdWJzY3JpcHRpb24tdHlwZS1saXN0L2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsMENBQTBDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2VtYWlsLXN1YnNjcmlwdGlvbi10eXBlLWxpc3QuY29tcG9uZW50JzsiXX0=
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import { NgModule } from '@angular/core';
|
|
2
|
-
import { RouterModule } from '@angular/router';
|
|
3
|
-
const routes = [];
|
|
4
|
-
export class EmailSubscriptionTypeRoutingModule {
|
|
5
|
-
}
|
|
6
|
-
EmailSubscriptionTypeRoutingModule.decorators = [
|
|
7
|
-
{ type: NgModule, args: [{
|
|
8
|
-
imports: [RouterModule.forChild(routes)],
|
|
9
|
-
exports: [RouterModule]
|
|
10
|
-
},] }
|
|
11
|
-
];
|
|
12
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
import { NgModule } from '@angular/core';
|
|
2
|
+
import { RouterModule } from '@angular/router';
|
|
3
|
+
const routes = [];
|
|
4
|
+
export class EmailSubscriptionTypeRoutingModule {
|
|
5
|
+
}
|
|
6
|
+
EmailSubscriptionTypeRoutingModule.decorators = [
|
|
7
|
+
{ type: NgModule, args: [{
|
|
8
|
+
imports: [RouterModule.forChild(routes)],
|
|
9
|
+
exports: [RouterModule]
|
|
10
|
+
},] }
|
|
11
|
+
];
|
|
12
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW1haWwtc3Vic2NyaXB0aW9uLXR5cGUtcm91dGluZy5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtdGVjaGxpZnktY29yZS9zcmMvbGliL2VtYWlsLXN1YnNjcmlwdGlvbi9lbWFpbC1zdWJzY3JpcHRpb24tdHlwZS9lbWFpbC1zdWJzY3JpcHRpb24tdHlwZS1yb3V0aW5nLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBVSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUV2RCxNQUFNLE1BQU0sR0FBVyxFQUFFLENBQUM7QUFPMUIsTUFBTSxPQUFPLGtDQUFrQzs7O1lBTDlDLFFBQVEsU0FBQztnQkFDUixPQUFPLEVBQUUsQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDO2dCQUN4QyxPQUFPLEVBQUUsQ0FBQyxZQUFZLENBQUM7YUFDeEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBSb3V0ZXMsIFJvdXRlck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XHJcblxyXG5jb25zdCByb3V0ZXM6IFJvdXRlcyA9IFtdO1xyXG5cclxuQE5nTW9kdWxlKHtcclxuICBpbXBvcnRzOiBbUm91dGVyTW9kdWxlLmZvckNoaWxkKHJvdXRlcyldLFxyXG4gIGV4cG9ydHM6IFtSb3V0ZXJNb2R1bGVdXHJcbn0pXHJcblxyXG5leHBvcnQgY2xhc3MgRW1haWxTdWJzY3JpcHRpb25UeXBlUm91dGluZ01vZHVsZSB7IH0iXX0=
|
package/esm2015/lib/email-subscription/email-subscription-type/email-subscription-type.module.js
CHANGED
|
@@ -1,15 +1,15 @@
|
|
|
1
|
-
import { NgModule } from '@angular/core';
|
|
2
|
-
import { CommonModule } from '@angular/common';
|
|
3
|
-
import { EmailSubscriptionTypeRoutingModule } from './email-subscription-type-routing.module';
|
|
4
|
-
export class EmailSubscriptionTypeModule {
|
|
5
|
-
}
|
|
6
|
-
EmailSubscriptionTypeModule.decorators = [
|
|
7
|
-
{ type: NgModule, args: [{
|
|
8
|
-
declarations: [],
|
|
9
|
-
imports: [
|
|
10
|
-
CommonModule,
|
|
11
|
-
EmailSubscriptionTypeRoutingModule
|
|
12
|
-
]
|
|
13
|
-
},] }
|
|
14
|
-
];
|
|
15
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
import { NgModule } from '@angular/core';
|
|
2
|
+
import { CommonModule } from '@angular/common';
|
|
3
|
+
import { EmailSubscriptionTypeRoutingModule } from './email-subscription-type-routing.module';
|
|
4
|
+
export class EmailSubscriptionTypeModule {
|
|
5
|
+
}
|
|
6
|
+
EmailSubscriptionTypeModule.decorators = [
|
|
7
|
+
{ type: NgModule, args: [{
|
|
8
|
+
declarations: [],
|
|
9
|
+
imports: [
|
|
10
|
+
CommonModule,
|
|
11
|
+
EmailSubscriptionTypeRoutingModule
|
|
12
|
+
]
|
|
13
|
+
},] }
|
|
14
|
+
];
|
|
15
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW1haWwtc3Vic2NyaXB0aW9uLXR5cGUubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXRlY2hsaWZ5LWNvcmUvc3JjL2xpYi9lbWFpbC1zdWJzY3JpcHRpb24vZW1haWwtc3Vic2NyaXB0aW9uLXR5cGUvZW1haWwtc3Vic2NyaXB0aW9uLXR5cGUubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRS9DLE9BQU8sRUFBRSxrQ0FBa0MsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBVTlGLE1BQU0sT0FBTywyQkFBMkI7OztZQVB2QyxRQUFRLFNBQUM7Z0JBQ1IsWUFBWSxFQUFFLEVBQUU7Z0JBQ2hCLE9BQU8sRUFBRTtvQkFDUCxZQUFZO29CQUNaLGtDQUFrQztpQkFDbkM7YUFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcblxyXG5pbXBvcnQgeyBFbWFpbFN1YnNjcmlwdGlvblR5cGVSb3V0aW5nTW9kdWxlIH0gZnJvbSAnLi9lbWFpbC1zdWJzY3JpcHRpb24tdHlwZS1yb3V0aW5nLm1vZHVsZSc7XHJcblxyXG5cclxuQE5nTW9kdWxlKHtcclxuICBkZWNsYXJhdGlvbnM6IFtdLFxyXG4gIGltcG9ydHM6IFtcclxuICAgIENvbW1vbk1vZHVsZSxcclxuICAgIEVtYWlsU3Vic2NyaXB0aW9uVHlwZVJvdXRpbmdNb2R1bGVcclxuICBdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBFbWFpbFN1YnNjcmlwdGlvblR5cGVNb2R1bGUgeyB9XHJcbiJdfQ==
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import { NgModule } from '@angular/core';
|
|
2
|
-
import { RouterModule } from '@angular/router';
|
|
3
|
-
const routes = [];
|
|
4
|
-
export class EmailSubscriptionUserFormRoutingModule {
|
|
5
|
-
}
|
|
6
|
-
EmailSubscriptionUserFormRoutingModule.decorators = [
|
|
7
|
-
{ type: NgModule, args: [{
|
|
8
|
-
imports: [RouterModule.forChild(routes)],
|
|
9
|
-
exports: [RouterModule]
|
|
10
|
-
},] }
|
|
11
|
-
];
|
|
12
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
import { NgModule } from '@angular/core';
|
|
2
|
+
import { RouterModule } from '@angular/router';
|
|
3
|
+
const routes = [];
|
|
4
|
+
export class EmailSubscriptionUserFormRoutingModule {
|
|
5
|
+
}
|
|
6
|
+
EmailSubscriptionUserFormRoutingModule.decorators = [
|
|
7
|
+
{ type: NgModule, args: [{
|
|
8
|
+
imports: [RouterModule.forChild(routes)],
|
|
9
|
+
exports: [RouterModule]
|
|
10
|
+
},] }
|
|
11
|
+
];
|
|
12
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW1haWwtc3Vic2NyaXB0aW9uLXVzZXItZm9ybS1yb3V0aW5nLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC10ZWNobGlmeS1jb3JlL3NyYy9saWIvZW1haWwtc3Vic2NyaXB0aW9uL2VtYWlsLXN1YnNjcmlwdGlvbi11c2VyL2VtYWlsLXN1YnNjcmlwdGlvbi11c2VyLWZvcm0vZW1haWwtc3Vic2NyaXB0aW9uLXVzZXItZm9ybS1yb3V0aW5nLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBVSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUV2RCxNQUFNLE1BQU0sR0FBVyxFQUFFLENBQUM7QUFNMUIsTUFBTSxPQUFPLHNDQUFzQzs7O1lBSmxELFFBQVEsU0FBQztnQkFDUixPQUFPLEVBQUUsQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDO2dCQUN4QyxPQUFPLEVBQUUsQ0FBQyxZQUFZLENBQUM7YUFDeEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBSb3V0ZXMsIFJvdXRlck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XHJcblxyXG5jb25zdCByb3V0ZXM6IFJvdXRlcyA9IFtdO1xyXG5cclxuQE5nTW9kdWxlKHtcclxuICBpbXBvcnRzOiBbUm91dGVyTW9kdWxlLmZvckNoaWxkKHJvdXRlcyldLFxyXG4gIGV4cG9ydHM6IFtSb3V0ZXJNb2R1bGVdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBFbWFpbFN1YnNjcmlwdGlvblVzZXJGb3JtUm91dGluZ01vZHVsZSB7IH1cclxuIl19
|