ngx-techlify-core 11.2.4
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 -0
- package/bundles/ngx-techlify-core.umd.js +6602 -0
- package/bundles/ngx-techlify-core.umd.js.map +1 -0
- package/bundles/ngx-techlify-core.umd.min.js +17 -0
- package/bundles/ngx-techlify-core.umd.min.js.map +1 -0
- package/esm2015/lib/action-popup/action-popup.component.js +32 -0
- package/esm2015/lib/action-popup/action-popup.model.js +3 -0
- package/esm2015/lib/action-popup/action-popup.module.js +26 -0
- package/esm2015/lib/action-popup/index.js +3 -0
- package/esm2015/lib/audit-log/audit-log-for-model/audit-log-for-model-routing.module.js +12 -0
- package/esm2015/lib/audit-log/audit-log-for-model/audit-log-for-model.component.js +49 -0
- package/esm2015/lib/audit-log/audit-log-for-model/audit-log-for-model.module.js +25 -0
- package/esm2015/lib/audit-log/audit-log-list/audit-log-list-routing.module.js +12 -0
- package/esm2015/lib/audit-log/audit-log-list/audit-log-list.component.js +132 -0
- package/esm2015/lib/audit-log/audit-log-list/audit-log-list.module.js +29 -0
- package/esm2015/lib/audit-log/audit-log-list-filter/audit-log-list-filter-routing.module.js +12 -0
- package/esm2015/lib/audit-log/audit-log-list-filter/audit-log-list-filter.component.js +67 -0
- package/esm2015/lib/audit-log/audit-log-list-filter/audit-log-list-filter.module.js +25 -0
- package/esm2015/lib/audit-log/audit-log-routing.module.js +19 -0
- package/esm2015/lib/audit-log/audit-log-view/audit-log-view-routing.module.js +12 -0
- package/esm2015/lib/audit-log/audit-log-view/audit-log-view.component.js +62 -0
- package/esm2015/lib/audit-log/audit-log-view/audit-log-view.module.js +21 -0
- package/esm2015/lib/audit-log/audit-log-view-model/audit-log-view-model-routing.module.js +12 -0
- package/esm2015/lib/audit-log/audit-log-view-model/audit-log-view-model.component.js +59 -0
- package/esm2015/lib/audit-log/audit-log-view-model/audit-log-view-model.module.js +21 -0
- package/esm2015/lib/audit-log/audit-log.module.js +20 -0
- package/esm2015/lib/audit-log/audit-logs-view-model/audit-logs-view-model-routing.module.js +12 -0
- package/esm2015/lib/audit-log/audit-logs-view-model/audit-logs-view-model.component.js +35 -0
- package/esm2015/lib/audit-log/audit-logs-view-model/audit-logs-view-model.module.js +21 -0
- package/esm2015/lib/core/alert.service.js +40 -0
- package/esm2015/lib/core/api-prefix.interceptor.js +28 -0
- package/esm2015/lib/core/authentication.guard.js +39 -0
- package/esm2015/lib/core/authentication.service.js +59 -0
- package/esm2015/lib/core/cache.interceptor.js +60 -0
- package/esm2015/lib/core/config.service.js +47 -0
- package/esm2015/lib/core/core.module.js +42 -0
- package/esm2015/lib/core/credentials.service.js +84 -0
- package/esm2015/lib/core/dataManager.service.js +121 -0
- package/esm2015/lib/core/error-handler.interceptor.js +53 -0
- package/esm2015/lib/core/error-handler.service.js +49 -0
- package/esm2015/lib/core/form-validator.service.js +23 -0
- package/esm2015/lib/core/header.interceptor.js +22 -0
- package/esm2015/lib/core/http-cache.service.js +110 -0
- package/esm2015/lib/core/http.service.js +82 -0
- package/esm2015/lib/core/index.js +21 -0
- package/esm2015/lib/core/logger.service.js +100 -0
- package/esm2015/lib/core/route-reusable-strategy.js +35 -0
- package/esm2015/lib/core/snack/snack.component.js +33 -0
- package/esm2015/lib/core/snack/snack.module.js +25 -0
- package/esm2015/lib/core/storage.service.js +37 -0
- package/esm2015/lib/core/techlify-config.model.js +26 -0
- package/esm2015/lib/core/token.interceptor.js +30 -0
- package/esm2015/lib/data-table/data-table.component.js +190 -0
- package/esm2015/lib/data-table/data-table.model.js +11 -0
- package/esm2015/lib/data-table/data-table.module.js +25 -0
- package/esm2015/lib/data-table/index.js +3 -0
- package/esm2015/lib/date-validator.js +10 -0
- package/esm2015/lib/document-viewer/document-viewer.component.js +58 -0
- package/esm2015/lib/document-viewer/document-viewer.module.js +25 -0
- package/esm2015/lib/document-viewer/index.js +3 -0
- package/esm2015/lib/document-viewer/viewer-config.model.js +3 -0
- package/esm2015/lib/email-subscription/email-subscription-for-user/email-subscription-for-user-routing.module.js +26 -0
- package/esm2015/lib/email-subscription/email-subscription-for-user/email-subscription-for-user.component.js +72 -0
- package/esm2015/lib/email-subscription/email-subscription-for-user/email-subscription-for-user.module.js +23 -0
- package/esm2015/lib/email-subscription/email-subscription-for-user/index.js +2 -0
- package/esm2015/lib/email-subscription/email-subscription-routing.module.js +12 -0
- package/esm2015/lib/email-subscription/email-subscription-type/email-subscription-type-form/email-subscription-type-form-routing.module.js +12 -0
- package/esm2015/lib/email-subscription/email-subscription-type/email-subscription-type-form/email-subscription-type-form.component.js +102 -0
- package/esm2015/lib/email-subscription/email-subscription-type/email-subscription-type-form/email-subscription-type-form.module.js +28 -0
- package/esm2015/lib/email-subscription/email-subscription-type/email-subscription-type-form/index.js +2 -0
- package/esm2015/lib/email-subscription/email-subscription-type/email-subscription-type-list/email-subscription-type-list-routing.module.js +28 -0
- package/esm2015/lib/email-subscription/email-subscription-type/email-subscription-type-list/email-subscription-type-list.component.js +153 -0
- package/esm2015/lib/email-subscription/email-subscription-type/email-subscription-type-list/email-subscription-type-list.module.js +27 -0
- package/esm2015/lib/email-subscription/email-subscription-type/email-subscription-type-list/index.js +2 -0
- package/esm2015/lib/email-subscription/email-subscription-type/email-subscription-type-routing.module.js +12 -0
- package/esm2015/lib/email-subscription/email-subscription-type/email-subscription-type.module.js +15 -0
- package/esm2015/lib/email-subscription/email-subscription-user/email-subscription-user-form/email-subscription-user-form-routing.module.js +12 -0
- package/esm2015/lib/email-subscription/email-subscription-user/email-subscription-user-form/email-subscription-user-form.component.js +99 -0
- package/esm2015/lib/email-subscription/email-subscription-user/email-subscription-user-form/email-subscription-user-form.module.js +27 -0
- package/esm2015/lib/email-subscription/email-subscription-user/email-subscription-user-form/index.js +2 -0
- package/esm2015/lib/email-subscription/email-subscription-user/email-subscription-user-list/email-subscription-user-list-routing.module.js +28 -0
- package/esm2015/lib/email-subscription/email-subscription-user/email-subscription-user-list/email-subscription-user-list.component.js +155 -0
- package/esm2015/lib/email-subscription/email-subscription-user/email-subscription-user-list/email-subscription-user-list.module.js +29 -0
- package/esm2015/lib/email-subscription/email-subscription-user/email-subscription-user-list/index.js +2 -0
- package/esm2015/lib/email-subscription/email-subscription-user/email-subscription-user-list-filter/email-subscription-user-list-filter-routing.module.js +12 -0
- package/esm2015/lib/email-subscription/email-subscription-user/email-subscription-user-list-filter/email-subscription-user-list-filter.component.js +50 -0
- package/esm2015/lib/email-subscription/email-subscription-user/email-subscription-user-list-filter/email-subscription-user-list-filter.module.js +25 -0
- package/esm2015/lib/email-subscription/email-subscription-user/email-subscription-user-list-filter/index.js +2 -0
- package/esm2015/lib/email-subscription/email-subscription-user/email-subscription-user-routing.module.js +12 -0
- package/esm2015/lib/email-subscription/email-subscription-user/email-subscription-user.module.js +15 -0
- package/esm2015/lib/email-subscription/email-subscription.module.js +15 -0
- package/esm2015/lib/entity-files/entity-file-form/entity-file-form.component.js +141 -0
- package/esm2015/lib/entity-files/entity-file.service.js +38 -0
- package/esm2015/lib/entity-files/entity-files-view-all.component.js +161 -0
- package/esm2015/lib/entity-files/entity-files-view-all.module.js +34 -0
- package/esm2015/lib/entity-files/index.js +3 -0
- package/esm2015/lib/export-excel/export-excel-button/export-excel-button.component.js +32 -0
- package/esm2015/lib/export-excel/export-excel.module.js +17 -0
- package/esm2015/lib/file-dropper/file-dropper.component.js +122 -0
- package/esm2015/lib/file-dropper/file-dropper.model.js +3 -0
- package/esm2015/lib/file-dropper/file-dropper.module.js +21 -0
- package/esm2015/lib/file-dropper/index.js +3 -0
- package/esm2015/lib/import-csv/failed-items/failed-items-routing.module.js +12 -0
- package/esm2015/lib/import-csv/failed-items/failed-items.component.js +23 -0
- package/esm2015/lib/import-csv/failed-items/failed-items.module.js +21 -0
- package/esm2015/lib/import-csv/import-config.js +3 -0
- package/esm2015/lib/import-csv/import-csv-routing.module.js +12 -0
- package/esm2015/lib/import-csv/import-csv.component.js +111 -0
- package/esm2015/lib/import-csv/import-csv.module.js +27 -0
- package/esm2015/lib/import-csv/import-items/import-items-routing.module.js +12 -0
- package/esm2015/lib/import-csv/import-items/import-items.component.js +139 -0
- package/esm2015/lib/import-csv/import-items/import-items.module.js +23 -0
- package/esm2015/lib/loader/index.js +2 -0
- package/esm2015/lib/loader/loader.component.js +22 -0
- package/esm2015/lib/loader/loader.module.js +21 -0
- package/esm2015/lib/login-history-for-user/login-history-for-user-routing.module.js +20 -0
- package/esm2015/lib/login-history-for-user/login-history-for-user.component.js +79 -0
- package/esm2015/lib/login-history-for-user/login-history-for-user.module.js +27 -0
- package/esm2015/lib/material.module.js +58 -0
- package/esm2015/lib/note/index.js +3 -0
- package/esm2015/lib/note/note-form/note-form.component.js +80 -0
- package/esm2015/lib/note/note-list/note-list.component.js +120 -0
- package/esm2015/lib/note/note.module.js +32 -0
- package/esm2015/lib/note/note.service.js +31 -0
- package/esm2015/lib/searchable-selector/index.js +3 -0
- package/esm2015/lib/searchable-selector/mat-select-infinite-scroll.directive.js +81 -0
- package/esm2015/lib/searchable-selector/searchable-selector.component.js +267 -0
- package/esm2015/lib/searchable-selector/searchable-selector.module.js +28 -0
- package/esm2015/lib/techlify-update/read-more/read-more.component.js +43 -0
- package/esm2015/lib/techlify-update/read-more/read-more.module.js +21 -0
- package/esm2015/lib/techlify-update/techlify-update-form/techlify-update-form.component.js +114 -0
- package/esm2015/lib/techlify-update/techlify-update-form/techlify-update-form.module.js +28 -0
- package/esm2015/lib/techlify-update/techlify-update-history/techlify-update-history-routing.module.js +22 -0
- package/esm2015/lib/techlify-update/techlify-update-history/techlify-update-history.component.js +143 -0
- package/esm2015/lib/techlify-update/techlify-update-history/techlify-update-history.module.js +28 -0
- package/esm2015/lib/techlify-update/techlify-update-routing.module.js +22 -0
- package/esm2015/lib/techlify-update/techlify-update.module.js +30 -0
- package/esm2015/lib/techlify-update/techlify-update.service.js +43 -0
- package/esm2015/lib/techlify-update/techlify-updates-list/techlify-updates-list.component.js +161 -0
- package/esm2015/lib/techlify-update/update-notifier/update-notifier-snack/update-notifier-snack.component.js +82 -0
- package/esm2015/lib/techlify-update/update-notifier/update-notifier.component.js +62 -0
- package/esm2015/lib/techlify-update/update-notifier/update-notifier.module.js +29 -0
- package/esm2015/lib/techlify-update/update-view/update-view.component.js +36 -0
- package/esm2015/lib/techlify-update/update-view/update-view.module.js +24 -0
- package/esm2015/lib/timeline-filter/calculate-timeline.js +90 -0
- package/esm2015/lib/timeline-filter/index.js +4 -0
- package/esm2015/lib/timeline-filter/timeline-filter-routing.module.js +12 -0
- package/esm2015/lib/timeline-filter/timeline-filter.component.js +57 -0
- package/esm2015/lib/timeline-filter/timeline-filter.module.js +23 -0
- package/esm2015/lib/timeline-filter/timeline.model.js +15 -0
- package/esm2015/lib/utility/date-utils.service.js +48 -0
- package/esm2015/lib/utility/index.js +4 -0
- package/esm2015/lib/utility/num-items-selector.component.js +30 -0
- package/esm2015/lib/utility/number-selector.component.js +38 -0
- package/esm2015/lib/utility/utility.module.js +21 -0
- package/esm2015/ngx-techlify-core.js +52 -0
- package/esm2015/public-api.js +91 -0
- package/fesm2015/ngx-techlify-core.js +5575 -0
- package/fesm2015/ngx-techlify-core.js.map +1 -0
- package/lib/action-popup/action-popup.component.d.ts +14 -0
- package/lib/action-popup/action-popup.model.d.ts +5 -0
- package/lib/action-popup/action-popup.module.d.ts +2 -0
- package/lib/action-popup/index.d.ts +2 -0
- package/lib/audit-log/audit-log-for-model/audit-log-for-model-routing.module.d.ts +2 -0
- package/lib/audit-log/audit-log-for-model/audit-log-for-model.component.d.ts +12 -0
- package/lib/audit-log/audit-log-for-model/audit-log-for-model.module.d.ts +2 -0
- package/lib/audit-log/audit-log-list/audit-log-list-routing.module.d.ts +2 -0
- package/lib/audit-log/audit-log-list/audit-log-list.component.d.ts +32 -0
- package/lib/audit-log/audit-log-list/audit-log-list.module.d.ts +2 -0
- package/lib/audit-log/audit-log-list-filter/audit-log-list-filter-routing.module.d.ts +2 -0
- package/lib/audit-log/audit-log-list-filter/audit-log-list-filter.component.d.ts +19 -0
- package/lib/audit-log/audit-log-list-filter/audit-log-list-filter.module.d.ts +2 -0
- package/lib/audit-log/audit-log-routing.module.d.ts +2 -0
- package/lib/audit-log/audit-log-view/audit-log-view-routing.module.d.ts +2 -0
- package/lib/audit-log/audit-log-view/audit-log-view.component.d.ts +17 -0
- package/lib/audit-log/audit-log-view/audit-log-view.module.d.ts +2 -0
- package/lib/audit-log/audit-log-view-model/audit-log-view-model-routing.module.d.ts +2 -0
- package/lib/audit-log/audit-log-view-model/audit-log-view-model.component.d.ts +15 -0
- package/lib/audit-log/audit-log-view-model/audit-log-view-model.module.d.ts +2 -0
- package/lib/audit-log/audit-log.module.d.ts +2 -0
- package/lib/audit-log/audit-logs-view-model/audit-logs-view-model-routing.module.d.ts +2 -0
- package/lib/audit-log/audit-logs-view-model/audit-logs-view-model.component.d.ts +11 -0
- package/lib/audit-log/audit-logs-view-model/audit-logs-view-model.module.d.ts +2 -0
- package/lib/core/alert.service.d.ts +12 -0
- package/lib/core/api-prefix.interceptor.d.ts +11 -0
- package/lib/core/authentication.guard.d.ts +10 -0
- package/lib/core/authentication.service.d.ts +23 -0
- package/lib/core/cache.interceptor.d.ts +21 -0
- package/lib/core/config.service.d.ts +19 -0
- package/lib/core/core.module.d.ts +3 -0
- package/lib/core/credentials.service.d.ts +36 -0
- package/lib/core/dataManager.service.d.ts +70 -0
- package/lib/core/error-handler.interceptor.d.ts +14 -0
- package/lib/core/error-handler.service.d.ts +12 -0
- package/lib/core/form-validator.service.d.ts +8 -0
- package/lib/core/header.interceptor.d.ts +8 -0
- package/lib/core/http-cache.service.d.ts +54 -0
- package/lib/core/http.service.d.ts +56 -0
- package/lib/core/index.d.ts +20 -0
- package/lib/core/logger.service.d.ts +85 -0
- package/lib/core/route-reusable-strategy.d.ts +13 -0
- package/lib/core/snack/snack.component.d.ts +8 -0
- package/lib/core/snack/snack.module.d.ts +2 -0
- package/lib/core/storage.service.d.ts +15 -0
- package/lib/core/techlify-config.model.d.ts +17 -0
- package/lib/core/token.interceptor.d.ts +11 -0
- package/lib/data-table/data-table.component.d.ts +60 -0
- package/lib/data-table/data-table.model.d.ts +46 -0
- package/lib/data-table/data-table.module.d.ts +2 -0
- package/lib/data-table/index.d.ts +2 -0
- package/lib/date-validator.d.ts +1 -0
- package/lib/document-viewer/document-viewer.component.d.ts +16 -0
- package/lib/document-viewer/document-viewer.module.d.ts +2 -0
- package/lib/document-viewer/index.d.ts +2 -0
- package/lib/document-viewer/viewer-config.model.d.ts +5 -0
- package/lib/email-subscription/email-subscription-for-user/email-subscription-for-user-routing.module.d.ts +7 -0
- package/lib/email-subscription/email-subscription-for-user/email-subscription-for-user.component.d.ts +17 -0
- package/lib/email-subscription/email-subscription-for-user/email-subscription-for-user.module.d.ts +2 -0
- package/lib/email-subscription/email-subscription-for-user/index.d.ts +1 -0
- package/lib/email-subscription/email-subscription-routing.module.d.ts +2 -0
- package/lib/email-subscription/email-subscription-type/email-subscription-type-form/email-subscription-type-form-routing.module.d.ts +2 -0
- package/lib/email-subscription/email-subscription-type/email-subscription-type-form/email-subscription-type-form.component.d.ts +32 -0
- package/lib/email-subscription/email-subscription-type/email-subscription-type-form/email-subscription-type-form.module.d.ts +2 -0
- package/lib/email-subscription/email-subscription-type/email-subscription-type-form/index.d.ts +1 -0
- package/lib/email-subscription/email-subscription-type/email-subscription-type-list/email-subscription-type-list-routing.module.d.ts +9 -0
- package/lib/email-subscription/email-subscription-type/email-subscription-type-list/email-subscription-type-list.component.d.ts +30 -0
- package/lib/email-subscription/email-subscription-type/email-subscription-type-list/email-subscription-type-list.module.d.ts +2 -0
- package/lib/email-subscription/email-subscription-type/email-subscription-type-list/index.d.ts +1 -0
- package/lib/email-subscription/email-subscription-type/email-subscription-type-routing.module.d.ts +2 -0
- package/lib/email-subscription/email-subscription-type/email-subscription-type.module.d.ts +2 -0
- package/lib/email-subscription/email-subscription-user/email-subscription-user-form/email-subscription-user-form-routing.module.d.ts +2 -0
- package/lib/email-subscription/email-subscription-user/email-subscription-user-form/email-subscription-user-form.component.d.ts +32 -0
- package/lib/email-subscription/email-subscription-user/email-subscription-user-form/email-subscription-user-form.module.d.ts +2 -0
- package/lib/email-subscription/email-subscription-user/email-subscription-user-form/index.d.ts +1 -0
- package/lib/email-subscription/email-subscription-user/email-subscription-user-list/email-subscription-user-list-routing.module.d.ts +9 -0
- package/lib/email-subscription/email-subscription-user/email-subscription-user-list/email-subscription-user-list.component.d.ts +32 -0
- package/lib/email-subscription/email-subscription-user/email-subscription-user-list/email-subscription-user-list.module.d.ts +2 -0
- package/lib/email-subscription/email-subscription-user/email-subscription-user-list/index.d.ts +1 -0
- package/lib/email-subscription/email-subscription-user/email-subscription-user-list-filter/email-subscription-user-list-filter-routing.module.d.ts +2 -0
- package/lib/email-subscription/email-subscription-user/email-subscription-user-list-filter/email-subscription-user-list-filter.component.d.ts +13 -0
- package/lib/email-subscription/email-subscription-user/email-subscription-user-list-filter/email-subscription-user-list-filter.module.d.ts +2 -0
- package/lib/email-subscription/email-subscription-user/email-subscription-user-list-filter/index.d.ts +1 -0
- package/lib/email-subscription/email-subscription-user/email-subscription-user-routing.module.d.ts +2 -0
- package/lib/email-subscription/email-subscription-user/email-subscription-user.module.d.ts +2 -0
- package/lib/email-subscription/email-subscription.module.d.ts +2 -0
- package/lib/entity-files/entity-file-form/entity-file-form.component.d.ts +34 -0
- package/lib/entity-files/entity-file.service.d.ts +10 -0
- package/lib/entity-files/entity-files-view-all.component.d.ts +38 -0
- package/lib/entity-files/entity-files-view-all.module.d.ts +2 -0
- package/lib/entity-files/index.d.ts +2 -0
- package/lib/export-excel/export-excel-button/export-excel-button.component.d.ts +8 -0
- package/lib/export-excel/export-excel.module.d.ts +2 -0
- package/lib/file-dropper/file-dropper.component.d.ts +33 -0
- package/lib/file-dropper/file-dropper.model.d.ts +10 -0
- package/lib/file-dropper/file-dropper.module.d.ts +2 -0
- package/lib/file-dropper/index.d.ts +2 -0
- package/lib/import-csv/failed-items/failed-items-routing.module.d.ts +2 -0
- package/lib/import-csv/failed-items/failed-items.component.d.ts +8 -0
- package/lib/import-csv/failed-items/failed-items.module.d.ts +2 -0
- package/lib/import-csv/import-config.d.ts +5 -0
- package/lib/import-csv/import-csv-routing.module.d.ts +2 -0
- package/lib/import-csv/import-csv.component.d.ts +26 -0
- package/lib/import-csv/import-csv.module.d.ts +2 -0
- package/lib/import-csv/import-items/import-items-routing.module.d.ts +2 -0
- package/lib/import-csv/import-items/import-items.component.d.ts +30 -0
- package/lib/import-csv/import-items/import-items.module.d.ts +2 -0
- package/lib/loader/index.d.ts +1 -0
- package/lib/loader/loader.component.d.ts +8 -0
- package/lib/loader/loader.module.d.ts +2 -0
- package/lib/login-history-for-user/login-history-for-user-routing.module.d.ts +2 -0
- package/lib/login-history-for-user/login-history-for-user.component.d.ts +21 -0
- package/lib/login-history-for-user/login-history-for-user.module.d.ts +2 -0
- package/lib/material.module.d.ts +2 -0
- package/lib/note/index.d.ts +2 -0
- package/lib/note/note-form/note-form.component.d.ts +27 -0
- package/lib/note/note-list/note-list.component.d.ts +25 -0
- package/lib/note/note.module.d.ts +2 -0
- package/lib/note/note.service.d.ts +9 -0
- package/lib/searchable-selector/index.d.ts +2 -0
- package/lib/searchable-selector/mat-select-infinite-scroll.directive.d.ts +23 -0
- package/lib/searchable-selector/searchable-selector.component.d.ts +75 -0
- package/lib/searchable-selector/searchable-selector.module.d.ts +2 -0
- package/lib/techlify-update/read-more/read-more.component.d.ts +12 -0
- package/lib/techlify-update/read-more/read-more.module.d.ts +2 -0
- package/lib/techlify-update/techlify-update-form/techlify-update-form.component.d.ts +30 -0
- package/lib/techlify-update/techlify-update-form/techlify-update-form.module.d.ts +2 -0
- package/lib/techlify-update/techlify-update-history/techlify-update-history-routing.module.d.ts +2 -0
- package/lib/techlify-update/techlify-update-history/techlify-update-history.component.d.ts +31 -0
- package/lib/techlify-update/techlify-update-history/techlify-update-history.module.d.ts +2 -0
- package/lib/techlify-update/techlify-update-routing.module.d.ts +2 -0
- package/lib/techlify-update/techlify-update.module.d.ts +2 -0
- package/lib/techlify-update/techlify-update.service.d.ts +13 -0
- package/lib/techlify-update/techlify-updates-list/techlify-updates-list.component.d.ts +31 -0
- package/lib/techlify-update/update-notifier/update-notifier-snack/update-notifier-snack.component.d.ts +25 -0
- package/lib/techlify-update/update-notifier/update-notifier.component.d.ts +16 -0
- package/lib/techlify-update/update-notifier/update-notifier.module.d.ts +2 -0
- package/lib/techlify-update/update-view/update-view.component.d.ts +14 -0
- package/lib/techlify-update/update-view/update-view.module.d.ts +2 -0
- package/lib/timeline-filter/calculate-timeline.d.ts +1 -0
- package/lib/timeline-filter/index.d.ts +3 -0
- package/lib/timeline-filter/timeline-filter-routing.module.d.ts +2 -0
- package/lib/timeline-filter/timeline-filter.component.d.ts +14 -0
- package/lib/timeline-filter/timeline-filter.module.d.ts +2 -0
- package/lib/timeline-filter/timeline.model.d.ts +14 -0
- package/lib/utility/date-utils.service.d.ts +21 -0
- package/lib/utility/index.d.ts +3 -0
- package/lib/utility/num-items-selector.component.d.ts +16 -0
- package/lib/utility/number-selector.component.d.ts +20 -0
- package/lib/utility/utility.module.d.ts +2 -0
- package/ngx-techlify-core.d.ts +51 -0
- package/ngx-techlify-core.metadata.json +1 -0
- package/package.json +36 -0
- package/public-api.d.ts +87 -0
|
@@ -0,0 +1,190 @@
|
|
|
1
|
+
var DataTableComponent_1;
|
|
2
|
+
import { __decorate } from "tslib";
|
|
3
|
+
import { Component, Input, Output, EventEmitter, ViewChild } from "@angular/core";
|
|
4
|
+
import { MatTableDataSource } from '@angular/material/table';
|
|
5
|
+
import { MatSort } from '@angular/material/sort';
|
|
6
|
+
import { UntilDestroy, untilDestroyed } from "@ngneat/until-destroy";
|
|
7
|
+
let DataTableComponent = DataTableComponent_1 = class DataTableComponent {
|
|
8
|
+
constructor() {
|
|
9
|
+
this.dataSource = new MatTableDataSource([]);
|
|
10
|
+
this.action = new EventEmitter();
|
|
11
|
+
this.selctionChange = new EventEmitter();
|
|
12
|
+
this.rowClick = new EventEmitter();
|
|
13
|
+
this.tableScroll = new EventEmitter();
|
|
14
|
+
this.sortChanged = new EventEmitter();
|
|
15
|
+
this.elementId = `data-table-${DataTableComponent_1.nextId++}`;
|
|
16
|
+
}
|
|
17
|
+
ngOnInit() { }
|
|
18
|
+
/**Life cycle hook method */
|
|
19
|
+
ngAfterViewInit() {
|
|
20
|
+
// Assign the data to the data source for the table to render
|
|
21
|
+
this.dataSource = new MatTableDataSource(this.data);
|
|
22
|
+
// Emit change in selection
|
|
23
|
+
if (this.selection) {
|
|
24
|
+
this.selection.changed.pipe().subscribe((change) => {
|
|
25
|
+
if (this.selection.selected) {
|
|
26
|
+
this.selctionChange.emit(this.selection.selected);
|
|
27
|
+
}
|
|
28
|
+
});
|
|
29
|
+
}
|
|
30
|
+
if (this.sort) {
|
|
31
|
+
this.sort.sortChange.pipe(untilDestroyed(this))
|
|
32
|
+
.subscribe((value) => {
|
|
33
|
+
this.sortChanged.emit(value);
|
|
34
|
+
});
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
/** Whether the number of selected elements matches the total number of rows. */
|
|
38
|
+
isAllSelected() {
|
|
39
|
+
const numSelected = this.selection.selected.length;
|
|
40
|
+
const numRows = this.dataSource.data.length;
|
|
41
|
+
return numSelected === numRows;
|
|
42
|
+
}
|
|
43
|
+
/** Selects all rows if they are not all selected; otherwise clear selection. */
|
|
44
|
+
masterToggle() {
|
|
45
|
+
this.isAllSelected()
|
|
46
|
+
? this.clearSelection()
|
|
47
|
+
: this.dataSource.data.forEach(row => this.selection.select(row));
|
|
48
|
+
}
|
|
49
|
+
/**clear selection*/
|
|
50
|
+
clearSelection() {
|
|
51
|
+
this.selection.clear();
|
|
52
|
+
this.selctionChange.emit(this.selection.selected);
|
|
53
|
+
}
|
|
54
|
+
ngOnChanges(changes) {
|
|
55
|
+
this.initializeConfig(changes);
|
|
56
|
+
if (changes.data && !changes.data.isFirstChange() && this.dataSource) {
|
|
57
|
+
// If not first change
|
|
58
|
+
this.dataSource.data = changes.data.currentValue;
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
initializeConfig(changes) {
|
|
62
|
+
if (changes.config && !changes.config.isFirstChange()) {
|
|
63
|
+
this.config = changes.config.currentValue;
|
|
64
|
+
}
|
|
65
|
+
this.page = this.config.page || 1;
|
|
66
|
+
this.lastPage = this.config.lastPage || this.page;
|
|
67
|
+
this.perPage = this.config.perPage || 20;
|
|
68
|
+
}
|
|
69
|
+
onScroll() {
|
|
70
|
+
if (this.page < this.lastPage) {
|
|
71
|
+
this.page += 1;
|
|
72
|
+
this.tableScroll.emit({ page: this.page, lastPage: this.lastPage, perPage: this.perPage });
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
/**Method invokes when edit action icon is clickes */
|
|
76
|
+
editClicked(event, element) {
|
|
77
|
+
this.action.emit({ action: "edit", value: element });
|
|
78
|
+
event.stopPropagation();
|
|
79
|
+
}
|
|
80
|
+
/**Method invokes when view action icon is clickes */
|
|
81
|
+
viewClicked(event, element) {
|
|
82
|
+
this.action.emit({ action: "view", value: element });
|
|
83
|
+
event.stopPropagation();
|
|
84
|
+
}
|
|
85
|
+
/**Method invokes when edit action icon is clickes */
|
|
86
|
+
deactivateClicked(event, element) {
|
|
87
|
+
this.action.emit({ action: "deactivate", value: element });
|
|
88
|
+
event.stopPropagation();
|
|
89
|
+
}
|
|
90
|
+
/**Method invokes when download action icon is clickes */
|
|
91
|
+
downloadClicked(event, element) {
|
|
92
|
+
this.action.emit({ action: "download", value: element });
|
|
93
|
+
event.stopPropagation();
|
|
94
|
+
}
|
|
95
|
+
/**Method invokes when print action icon is clickes */
|
|
96
|
+
printClicked(event, element) {
|
|
97
|
+
this.action.emit({ action: 'print', value: element });
|
|
98
|
+
event.stopPropagation();
|
|
99
|
+
}
|
|
100
|
+
/**Method invokes when a row is clicked */
|
|
101
|
+
rowClicked(event, element) {
|
|
102
|
+
this.rowClick.emit(element);
|
|
103
|
+
event.stopPropagation();
|
|
104
|
+
}
|
|
105
|
+
/**Method invokes when menu action icon is hovered */
|
|
106
|
+
actionMenuClick(event, element, menuValue) {
|
|
107
|
+
this.action.emit({ action: menuValue, value: element });
|
|
108
|
+
this.trigger.closeMenu();
|
|
109
|
+
event.stopPropagation();
|
|
110
|
+
}
|
|
111
|
+
/**Method invokes when menu action icon is hovered and selects for particular action*/
|
|
112
|
+
actionMenuTriggerClick(event, trigger) {
|
|
113
|
+
this.trigger = trigger;
|
|
114
|
+
event.stopPropagation();
|
|
115
|
+
}
|
|
116
|
+
checkEdit(ele) {
|
|
117
|
+
if (this.config.editDisableFunction) {
|
|
118
|
+
return this.config.editDisableFunction(ele);
|
|
119
|
+
}
|
|
120
|
+
return true;
|
|
121
|
+
}
|
|
122
|
+
checkView(ele) {
|
|
123
|
+
if (this.config.viewDisableFunction) {
|
|
124
|
+
return this.config.viewDisableFunction(ele);
|
|
125
|
+
}
|
|
126
|
+
return true;
|
|
127
|
+
}
|
|
128
|
+
checkPrint(ele) {
|
|
129
|
+
if (this.config.printDisableFunction) {
|
|
130
|
+
return this.config.printDisableFunction(ele);
|
|
131
|
+
}
|
|
132
|
+
return true;
|
|
133
|
+
}
|
|
134
|
+
checkActions(ele) {
|
|
135
|
+
if (this.config.actionsMenuFunction) {
|
|
136
|
+
return this.config.actionsMenuFunction(ele);
|
|
137
|
+
}
|
|
138
|
+
return true;
|
|
139
|
+
}
|
|
140
|
+
checkActionButton(ele, value) {
|
|
141
|
+
if (this.config.actionsMenuButtonFunction) {
|
|
142
|
+
return this.config.actionsMenuButtonFunction(ele, value);
|
|
143
|
+
}
|
|
144
|
+
return true;
|
|
145
|
+
}
|
|
146
|
+
getValue(ele, keyString) {
|
|
147
|
+
keyString = keyString.replace(/\[(\w+)\]/g, ".$1"); // convert indexes to properties
|
|
148
|
+
keyString = keyString.replace(/^\./, ""); // strip a leading dot
|
|
149
|
+
const keyList = keyString.split(".");
|
|
150
|
+
for (let i = 0, n = keyList.length; i < n; ++i) {
|
|
151
|
+
const key = keyList[i];
|
|
152
|
+
if (ele && key in ele) {
|
|
153
|
+
ele = ele[key];
|
|
154
|
+
}
|
|
155
|
+
else {
|
|
156
|
+
return;
|
|
157
|
+
}
|
|
158
|
+
}
|
|
159
|
+
return ele;
|
|
160
|
+
}
|
|
161
|
+
ngOnDestroy() {
|
|
162
|
+
//Until Destroy uses it.
|
|
163
|
+
}
|
|
164
|
+
};
|
|
165
|
+
DataTableComponent.nextId = 0;
|
|
166
|
+
DataTableComponent.decorators = [
|
|
167
|
+
{ type: Component, args: [{
|
|
168
|
+
selector: "app-data-table",
|
|
169
|
+
template: "<div fxLayout=\"column\" [ngClass]=\"{\n 'mat-elevation-z1': !config.disableElevation\n }\" class=\"scroll-container\" infiniteScroll [infiniteScrollDistance]=\"1\" [infiniteScrollThrottle]=\"50\"\n (scrolled)=\"onScroll()\" [scrollWindow]=\"false\" [ngStyle]=\"config.style\">\n <table mat-table [dataSource]=\"dataSource\" matSort [id]=\"elementId\">\n <!-- Checkbox Column -->\n <ng-container matColumnDef=\"select\">\n <th mat-header-cell *matHeaderCellDef style=\"width:60px\">\n <mat-checkbox *ngIf=\"selection\" (change)=\"$event ? masterToggle() : null\"\n [checked]=\"selection.hasValue() && isAllSelected()\"\n [indeterminate]=\"selection.hasValue() && !isAllSelected()\">\n </mat-checkbox>\n </th>\n <td mat-cell *matCellDef=\"let row\" style=\"width:60px\">\n <mat-checkbox *ngIf=\"selection\" (click)=\"$event.stopPropagation()\"\n (change)=\"$event ? selection.toggle(row) : null\" [checked]=\"selection.isSelected(row)\">\n </mat-checkbox>\n </td>\n </ng-container>\n\n <!-- Index Column -->\n <ng-container matColumnDef=\"index\">\n <th mat-header-cell *matHeaderCellDef>#</th>\n <td mat-cell *matCellDef=\"let index = index\">\n {{ (index + 1) }}\n </td>\n </ng-container>\n\n <ng-container matColumnDef=\"actions\">\n <th mat-header-cell *matHeaderCellDef class=\"action-width d-print-none\">\n {{ config.customActionLabel }}\n </th>\n\n <td mat-cell *matCellDef=\"let element; let index = index\" class=\"d-print-none\">\n <div>\n <button *ngIf=\"\n config.actionsConfig.download && element[config.downloadLink]\n \" type=\"button\" mat-icon-button (click)=\"downloadClicked($event, element)\">\n <mat-icon>vertical_align_bottom</mat-icon>\n </button>\n\n <button *ngIf=\"config.actionsConfig.edit\" [disabled]=\"!this.checkEdit(element)\" type=\"button\"\n mat-icon-button (click)=\"editClicked($event, element)\">\n <mat-icon>edit</mat-icon>\n </button>\n\n <button *ngIf=\"config.actionsConfig.print\" [disabled]=\"!this.checkPrint(element)\" type=\"button\"\n mat-icon-button (click)=\"printClicked($event,element)\">\n <mat-icon>print</mat-icon>\n </button>\n\n <button *ngIf=\"config.actionsConfig.view\" [disabled]=\"!this.checkView(element)\" type=\"button\"\n mat-icon-button (click)=\"viewClicked($event, element)\">\n <mat-icon>description</mat-icon>\n </button>\n\n <button *ngIf=\"config.actionsConfig.deactivate\" type=\"button\" mat-icon-button\n (click)=\"deactivateClicked($event, element)\">\n <mat-icon>delete</mat-icon>\n </button>\n\n <button #menuTrigger=\"matMenuTrigger\" *ngIf=\"\n config.actionsConfig.actionsMenu &&\n this.checkActions(element) &&\n config.actionsConfig.actionsMenu.length > 0\n \" type=\"button\" mat-icon-button [matMenuTriggerFor]=\"actionsMenu\"\n (click)=\"actionMenuTriggerClick($event, menuTrigger)\">\n <mat-icon>more_vert</mat-icon>\n </button>\n </div>\n\n <mat-menu #actionsMenu=\"matMenu\">\n <div *ngFor=\"let item of config.actionsConfig.actionsMenu\">\n <button *ngIf=\"this.checkActionButton(element, item.value)\" mat-menu-item\n (click)=\"actionMenuClick($event, element, item.value)\">\n <span>{{ item.name }}</span>\n </button>\n </div>\n </mat-menu>\n </td>\n </ng-container>\n\n <!-- Actual Columns -->\n <ng-container matColumnDef=\"{{ column.value }}\" *ngFor=\"let column of config.columnsConfig\">\n <ng-container *ngIf=\"column?.sort; else noSort\">\n <th mat-header-cell *matHeaderCellDef mat-sort-header>\n {{ column.title }}\n </th>\n </ng-container>\n <ng-template #noSort>\n <th mat-header-cell *matHeaderCellDef>\n {{ column.title }}\n </th>\n </ng-template>\n <ng-container *ngIf=\"column.dateField; else currencyField\">\n <td mat-cell *matCellDef=\"let element\">\n <div class=\"text-truncate\" appToolTip>\n {{ getValue(element, column.value) | date:column.format? column.format: 'mediumDate' }}\n </div>\n </td>\n </ng-container>\n\n <ng-template #currencyField>\n <div *ngIf=\"column.currencyField; else normalField\">\n <td mat-cell *matCellDef=\"let element\">\n <div class=\"text-truncate\" appToolTip>\n {{ getValue(element, column.value) | currency: \"$\":'symbol' : '1.0-0' }}\n </div>\n </td>\n </div>\n </ng-template>\n\n <ng-template #normalField>\n <td mat-cell *matCellDef=\"let element\">\n <div class=\"text-truncate\" appToolTip>\n {{ getValue(element, column.value) }}\n </div>\n </td>\n </ng-template>\n </ng-container>\n\n <ng-container *ngIf=\"config.stickyHeader; else normalHeader\">\n <tr class=\"font-weight-bold\" mat-header-row *matHeaderRowDef=\"config.displayedColumns; sticky:true\"></tr>\n </ng-container>\n <ng-template #normalHeader>\n <tr class=\"font-weight-bold\" mat-header-row *matHeaderRowDef=\"config.displayedColumns;\">\n </tr>\n </ng-template>\n\n <div *ngIf=\"!config.enableRowClick\">\n <tr mat-row *matRowDef=\"let row; columns: config.displayedColumns\"></tr>\n </div>\n\n <div *ngIf=\"config.enableRowClick\">\n <tr mat-row *matRowDef=\"let row; columns: config.displayedColumns\" (click)=\"rowClicked($event, row)\"\n class=\"hoverable row-hover\"></tr>\n </div>\n </table>\n</div>",
|
|
170
|
+
styles: ["table{width:100%}.mat-table{background:inherit}.mat-column-select{overflow:initial}td.mat-cell,td.mat-footer-cell,th.mat-header-cell{padding:0 2px}.action-width{min-width:175px;width:175px!important}.noOverFlow{overflow-x:auto;overflow-y:hidden}.scroll-container{max-height:400px;overflow:auto}.mat-header-row{background-color:inherit;position:sticky;top:0}tr.row-hover:hover{background-color:#dcdcdc}td.mat-cell:first-of-type,td.mat-footer-cell:first-of-type,th.mat-header-cell:first-of-type{padding-left:24px!important}"]
|
|
171
|
+
},] }
|
|
172
|
+
];
|
|
173
|
+
DataTableComponent.ctorParameters = () => [];
|
|
174
|
+
DataTableComponent.propDecorators = {
|
|
175
|
+
data: [{ type: Input }],
|
|
176
|
+
config: [{ type: Input }],
|
|
177
|
+
selection: [{ type: Input }],
|
|
178
|
+
action: [{ type: Output }],
|
|
179
|
+
selctionChange: [{ type: Output }],
|
|
180
|
+
rowClick: [{ type: Output }],
|
|
181
|
+
tableScroll: [{ type: Output }],
|
|
182
|
+
sortChanged: [{ type: Output }],
|
|
183
|
+
sort: [{ type: ViewChild, args: [MatSort, { static: true },] }],
|
|
184
|
+
elementId: [{ type: Input }]
|
|
185
|
+
};
|
|
186
|
+
DataTableComponent = DataTableComponent_1 = __decorate([
|
|
187
|
+
UntilDestroy()
|
|
188
|
+
], DataTableComponent);
|
|
189
|
+
export { DataTableComponent };
|
|
190
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS10YWJsZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtdGVjaGxpZnktY29yZS9zcmMvbGliL2RhdGEtdGFibGUvZGF0YS10YWJsZS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUVULEtBQUssRUFDTCxNQUFNLEVBQ04sWUFBWSxFQUlaLFNBQVMsRUFDVixNQUFNLGVBQWUsQ0FBQztBQUl2QixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUM3RCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFFakQsT0FBTyxFQUFFLFlBQVksRUFBRSxjQUFjLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztJQVF4RCxrQkFBa0IsZ0NBQWxCLGtCQUFrQjtJQTRCN0I7UUFwQkEsZUFBVSxHQUE0QixJQUFJLGtCQUFrQixDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBSXZELFdBQU0sR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBQzVCLG1CQUFjLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUNwQyxhQUFRLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUM5QixnQkFBVyxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFDakMsZ0JBQVcsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBVWxDLGNBQVMsR0FBVyxjQUFjLG9CQUFrQixDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUM7SUFFekQsQ0FBQztJQUVqQixRQUFRLEtBQUssQ0FBQztJQUVkLDRCQUE0QjtJQUM1QixlQUFlO1FBQ2IsNkRBQTZEO1FBQzdELElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFFcEQsMkJBQTJCO1FBQzNCLElBQUksSUFBSSxDQUFDLFNBQVMsRUFBRTtZQUNsQixJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsQ0FBQyxTQUFTLENBQUMsQ0FBQyxNQUFXLEVBQUUsRUFBRTtnQkFDdEQsSUFBSSxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsRUFBRTtvQkFDM0IsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsQ0FBQztpQkFDbkQ7WUFDSCxDQUFDLENBQUMsQ0FBQztTQUNKO1FBRUQsSUFBSSxJQUFJLENBQUMsSUFBSSxFQUFFO1lBQ2IsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsQ0FBQztpQkFDNUMsU0FBUyxDQUFDLENBQUMsS0FBVSxFQUFFLEVBQUU7Z0JBQ3hCLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQy9CLENBQUMsQ0FBQyxDQUFBO1NBQ0w7SUFDSCxDQUFDO0lBRUQsZ0ZBQWdGO0lBQ2hGLGFBQWE7UUFDWCxNQUFNLFdBQVcsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUM7UUFDbkQsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDO1FBQzVDLE9BQU8sV0FBVyxLQUFLLE9BQU8sQ0FBQztJQUNqQyxDQUFDO0lBRUQsZ0ZBQWdGO0lBQ2hGLFlBQVk7UUFDVixJQUFJLENBQUMsYUFBYSxFQUFFO1lBQ2xCLENBQUMsQ0FBQyxJQUFJLENBQUMsY0FBYyxFQUFFO1lBQ3ZCLENBQUMsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO0lBQ3RFLENBQUM7SUFFRCxvQkFBb0I7SUFDcEIsY0FBYztRQUNaLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDdkIsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUNwRCxDQUFDO0lBRUQsV0FBVyxDQUFDLE9BQXNCO1FBQ2hDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUMvQixJQUFJLE9BQU8sQ0FBQyxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLGFBQWEsRUFBRSxJQUFJLElBQUksQ0FBQyxVQUFVLEVBQUU7WUFDcEUsc0JBQXNCO1lBQ3RCLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDO1NBQ2xEO0lBQ0gsQ0FBQztJQUVELGdCQUFnQixDQUFDLE9BQXNCO1FBQ3JDLElBQUksT0FBTyxDQUFDLE1BQU0sSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsYUFBYSxFQUFFLEVBQUU7WUFDckQsSUFBSSxDQUFDLE1BQU0sR0FBRyxPQUFPLENBQUMsTUFBTSxDQUFDLFlBQVksQ0FBQztTQUMzQztRQUNELElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLElBQUksQ0FBQyxDQUFDO1FBQ2xDLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQztRQUNsRCxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxJQUFJLEVBQUUsQ0FBQztJQUMzQyxDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQzdCLElBQUksQ0FBQyxJQUFJLElBQUksQ0FBQyxDQUFDO1lBQ2YsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsRUFBRSxJQUFJLEVBQUUsSUFBSSxDQUFDLElBQUksRUFBRSxRQUFRLEVBQUUsSUFBSSxDQUFDLFFBQVEsRUFBRSxPQUFPLEVBQUUsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUM7U0FDNUY7SUFDSCxDQUFDO0lBRUQscURBQXFEO0lBQ3JELFdBQVcsQ0FBQyxLQUFVLEVBQUUsT0FBWTtRQUNsQyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUM7UUFDckQsS0FBSyxDQUFDLGVBQWUsRUFBRSxDQUFDO0lBQzFCLENBQUM7SUFFRCxxREFBcUQ7SUFDckQsV0FBVyxDQUFDLEtBQVUsRUFBRSxPQUFZO1FBQ2xDLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQztRQUNyRCxLQUFLLENBQUMsZUFBZSxFQUFFLENBQUM7SUFDMUIsQ0FBQztJQUVELHFEQUFxRDtJQUNyRCxpQkFBaUIsQ0FBQyxLQUFVLEVBQUUsT0FBWTtRQUN4QyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFFLE1BQU0sRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUM7UUFDM0QsS0FBSyxDQUFDLGVBQWUsRUFBRSxDQUFDO0lBQzFCLENBQUM7SUFFRCx5REFBeUQ7SUFDekQsZUFBZSxDQUFDLEtBQVUsRUFBRSxPQUFZO1FBQ3RDLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQztRQUN6RCxLQUFLLENBQUMsZUFBZSxFQUFFLENBQUM7SUFDMUIsQ0FBQztJQUVELHNEQUFzRDtJQUN0RCxZQUFZLENBQUMsS0FBVSxFQUFFLE9BQVk7UUFFbkMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDO1FBQ3RELEtBQUssQ0FBQyxlQUFlLEVBQUUsQ0FBQztJQUUxQixDQUFDO0lBRUQsMENBQTBDO0lBQzFDLFVBQVUsQ0FBQyxLQUFVLEVBQUUsT0FBWTtRQUNqQyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUM1QixLQUFLLENBQUMsZUFBZSxFQUFFLENBQUM7SUFDMUIsQ0FBQztJQUVELHFEQUFxRDtJQUNyRCxlQUFlLENBQUMsS0FBVSxFQUFFLE9BQVksRUFBRSxTQUFpQjtRQUN6RCxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUM7UUFDeEQsSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLEVBQUUsQ0FBQztRQUN6QixLQUFLLENBQUMsZUFBZSxFQUFFLENBQUM7SUFDMUIsQ0FBQztJQUVELHNGQUFzRjtJQUN0RixzQkFBc0IsQ0FBQyxLQUFVLEVBQUUsT0FBdUI7UUFDeEQsSUFBSSxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUM7UUFDdkIsS0FBSyxDQUFDLGVBQWUsRUFBRSxDQUFDO0lBQzFCLENBQUM7SUFFRCxTQUFTLENBQUMsR0FBUTtRQUNoQixJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsbUJBQW1CLEVBQUU7WUFDbkMsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLG1CQUFtQixDQUFDLEdBQUcsQ0FBQyxDQUFDO1NBQzdDO1FBRUQsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQsU0FBUyxDQUFDLEdBQVE7UUFDaEIsSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLG1CQUFtQixFQUFFO1lBQ25DLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxtQkFBbUIsQ0FBQyxHQUFHLENBQUMsQ0FBQztTQUM3QztRQUVELE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVELFVBQVUsQ0FBQyxHQUFRO1FBQ2pCLElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxvQkFBb0IsRUFBRTtZQUNwQyxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsb0JBQW9CLENBQUMsR0FBRyxDQUFDLENBQUM7U0FDOUM7UUFFRCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRCxZQUFZLENBQUMsR0FBUTtRQUNuQixJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsbUJBQW1CLEVBQUU7WUFDbkMsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLG1CQUFtQixDQUFDLEdBQUcsQ0FBQyxDQUFDO1NBQzdDO1FBRUQsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQsaUJBQWlCLENBQUMsR0FBUSxFQUFFLEtBQVU7UUFDcEMsSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLHlCQUF5QixFQUFFO1lBQ3pDLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyx5QkFBeUIsQ0FBQyxHQUFHLEVBQUUsS0FBSyxDQUFDLENBQUM7U0FDMUQ7UUFDRCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRCxRQUFRLENBQUMsR0FBUSxFQUFFLFNBQWlCO1FBQ2xDLFNBQVMsR0FBRyxTQUFTLENBQUMsT0FBTyxDQUFDLFlBQVksRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDLGdDQUFnQztRQUNwRixTQUFTLEdBQUcsU0FBUyxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxzQkFBc0I7UUFDaEUsTUFBTSxPQUFPLEdBQUcsU0FBUyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUNyQyxLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsT0FBTyxDQUFDLE1BQU0sRUFBRSxDQUFDLEdBQUcsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxFQUFFO1lBQzlDLE1BQU0sR0FBRyxHQUFHLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUN2QixJQUFJLEdBQUcsSUFBSSxHQUFHLElBQUksR0FBRyxFQUFFO2dCQUNyQixHQUFHLEdBQUcsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDO2FBQ2hCO2lCQUFNO2dCQUNMLE9BQU87YUFDUjtTQUNGO1FBQ0QsT0FBTyxHQUFHLENBQUM7SUFDYixDQUFDO0lBRUQsV0FBVztRQUNULHdCQUF3QjtJQUMxQixDQUFDO0NBQ0YsQ0FBQTtBQXJMUSx5QkFBTSxHQUFHLENBQUMsQ0FBQzs7WUE5Qm5CLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsZ0JBQWdCO2dCQUMxQix5cE5BQTBDOzthQUUzQzs7OzttQkFLRSxLQUFLO3FCQUVMLEtBQUs7d0JBSUwsS0FBSztxQkFFTCxNQUFNOzZCQUNOLE1BQU07dUJBQ04sTUFBTTswQkFDTixNQUFNOzBCQUNOLE1BQU07bUJBT04sU0FBUyxTQUFDLE9BQU8sRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUU7d0JBR25DLEtBQUs7O0FBMUJLLGtCQUFrQjtJQU45QixZQUFZLEVBQUU7R0FNRixrQkFBa0IsQ0E4TTlCO1NBOU1ZLGtCQUFrQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgT25Jbml0LFxuICBJbnB1dCxcbiAgT3V0cHV0LFxuICBFdmVudEVtaXR0ZXIsXG4gIE9uQ2hhbmdlcyxcbiAgU2ltcGxlQ2hhbmdlcyxcbiAgQWZ0ZXJWaWV3SW5pdCxcbiAgVmlld0NoaWxkXG59IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5cbmltcG9ydCB7IFNlbGVjdGlvbk1vZGVsIH0gZnJvbSBcIkBhbmd1bGFyL2Nkay9jb2xsZWN0aW9uc1wiO1xuaW1wb3J0IHsgTWF0TWVudVRyaWdnZXIgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9tZW51JztcbmltcG9ydCB7IE1hdFRhYmxlRGF0YVNvdXJjZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3RhYmxlJztcbmltcG9ydCB7IE1hdFNvcnQgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9zb3J0JztcbmltcG9ydCB7IERhdGFUYWJsZSB9IGZyb20gJy4vZGF0YS10YWJsZS5tb2RlbCc7XG5pbXBvcnQgeyBVbnRpbERlc3Ryb3ksIHVudGlsRGVzdHJveWVkIH0gZnJvbSBcIkBuZ25lYXQvdW50aWwtZGVzdHJveVwiO1xuXG5AVW50aWxEZXN0cm95KClcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogXCJhcHAtZGF0YS10YWJsZVwiLFxuICB0ZW1wbGF0ZVVybDogXCIuL2RhdGEtdGFibGUuY29tcG9uZW50Lmh0bWxcIixcbiAgc3R5bGVVcmxzOiBbXCIuL2RhdGEtdGFibGUuY29tcG9uZW50LnNjc3NcIl1cbn0pXG5leHBvcnQgY2xhc3MgRGF0YVRhYmxlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMsIEFmdGVyVmlld0luaXQge1xuXG4gIHRyaWdnZXI6IE1hdE1lbnVUcmlnZ2VyO1xuXG4gIEBJbnB1dCgpIGRhdGE6IGFueTtcblxuICBASW5wdXQoKSBjb25maWc6IERhdGFUYWJsZTtcblxuICBkYXRhU291cmNlOiBNYXRUYWJsZURhdGFTb3VyY2U8YW55PiA9IG5ldyBNYXRUYWJsZURhdGFTb3VyY2UoW10pO1xuXG4gIEBJbnB1dCgpIHNlbGVjdGlvbjogU2VsZWN0aW9uTW9kZWw8YW55PjtcblxuICBAT3V0cHV0KCkgYWN0aW9uID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICBAT3V0cHV0KCkgc2VsY3Rpb25DaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gIEBPdXRwdXQoKSByb3dDbGljayA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgQE91dHB1dCgpIHRhYmxlU2Nyb2xsID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICBAT3V0cHV0KCkgc29ydENoYW5nZWQgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgcGFnZTogbnVtYmVyO1xuICBsYXN0UGFnZTogbnVtYmVyO1xuICBwZXJQYWdlOiBudW1iZXI7XG5cblxuICBAVmlld0NoaWxkKE1hdFNvcnQsIHsgc3RhdGljOiB0cnVlIH0pIHNvcnQ6IE1hdFNvcnQ7XG5cbiAgc3RhdGljIG5leHRJZCA9IDA7XG4gIEBJbnB1dCgpIGVsZW1lbnRJZDogc3RyaW5nID0gYGRhdGEtdGFibGUtJHtEYXRhVGFibGVDb21wb25lbnQubmV4dElkKyt9YDtcblxuICBjb25zdHJ1Y3RvcigpIHsgfVxuXG4gIG5nT25Jbml0KCkgeyB9XG5cbiAgLyoqTGlmZSBjeWNsZSBob29rIG1ldGhvZCAqL1xuICBuZ0FmdGVyVmlld0luaXQoKSB7XG4gICAgLy8gQXNzaWduIHRoZSBkYXRhIHRvIHRoZSBkYXRhIHNvdXJjZSBmb3IgdGhlIHRhYmxlIHRvIHJlbmRlclxuICAgIHRoaXMuZGF0YVNvdXJjZSA9IG5ldyBNYXRUYWJsZURhdGFTb3VyY2UodGhpcy5kYXRhKTtcblxuICAgIC8vIEVtaXQgY2hhbmdlIGluIHNlbGVjdGlvblxuICAgIGlmICh0aGlzLnNlbGVjdGlvbikge1xuICAgICAgdGhpcy5zZWxlY3Rpb24uY2hhbmdlZC5waXBlKCkuc3Vic2NyaWJlKChjaGFuZ2U6IGFueSkgPT4ge1xuICAgICAgICBpZiAodGhpcy5zZWxlY3Rpb24uc2VsZWN0ZWQpIHtcbiAgICAgICAgICB0aGlzLnNlbGN0aW9uQ2hhbmdlLmVtaXQodGhpcy5zZWxlY3Rpb24uc2VsZWN0ZWQpO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5zb3J0KSB7XG4gICAgICB0aGlzLnNvcnQuc29ydENoYW5nZS5waXBlKHVudGlsRGVzdHJveWVkKHRoaXMpKVxuICAgICAgICAuc3Vic2NyaWJlKCh2YWx1ZTogYW55KSA9PiB7XG4gICAgICAgICAgdGhpcy5zb3J0Q2hhbmdlZC5lbWl0KHZhbHVlKTtcbiAgICAgICAgfSlcbiAgICB9XG4gIH1cblxuICAvKiogV2hldGhlciB0aGUgbnVtYmVyIG9mIHNlbGVjdGVkIGVsZW1lbnRzIG1hdGNoZXMgdGhlIHRvdGFsIG51bWJlciBvZiByb3dzLiAqL1xuICBpc0FsbFNlbGVjdGVkKCkge1xuICAgIGNvbnN0IG51bVNlbGVjdGVkID0gdGhpcy5zZWxlY3Rpb24uc2VsZWN0ZWQubGVuZ3RoO1xuICAgIGNvbnN0IG51bVJvd3MgPSB0aGlzLmRhdGFTb3VyY2UuZGF0YS5sZW5ndGg7XG4gICAgcmV0dXJuIG51bVNlbGVjdGVkID09PSBudW1Sb3dzO1xuICB9XG5cbiAgLyoqIFNlbGVjdHMgYWxsIHJvd3MgaWYgdGhleSBhcmUgbm90IGFsbCBzZWxlY3RlZDsgb3RoZXJ3aXNlIGNsZWFyIHNlbGVjdGlvbi4gKi9cbiAgbWFzdGVyVG9nZ2xlKCkge1xuICAgIHRoaXMuaXNBbGxTZWxlY3RlZCgpXG4gICAgICA/IHRoaXMuY2xlYXJTZWxlY3Rpb24oKVxuICAgICAgOiB0aGlzLmRhdGFTb3VyY2UuZGF0YS5mb3JFYWNoKHJvdyA9PiB0aGlzLnNlbGVjdGlvbi5zZWxlY3Qocm93KSk7XG4gIH1cblxuICAvKipjbGVhciBzZWxlY3Rpb24qL1xuICBjbGVhclNlbGVjdGlvbigpIHtcbiAgICB0aGlzLnNlbGVjdGlvbi5jbGVhcigpO1xuICAgIHRoaXMuc2VsY3Rpb25DaGFuZ2UuZW1pdCh0aGlzLnNlbGVjdGlvbi5zZWxlY3RlZCk7XG4gIH1cblxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XG4gICAgdGhpcy5pbml0aWFsaXplQ29uZmlnKGNoYW5nZXMpO1xuICAgIGlmIChjaGFuZ2VzLmRhdGEgJiYgIWNoYW5nZXMuZGF0YS5pc0ZpcnN0Q2hhbmdlKCkgJiYgdGhpcy5kYXRhU291cmNlKSB7XG4gICAgICAvLyBJZiBub3QgZmlyc3QgY2hhbmdlXG4gICAgICB0aGlzLmRhdGFTb3VyY2UuZGF0YSA9IGNoYW5nZXMuZGF0YS5jdXJyZW50VmFsdWU7XG4gICAgfVxuICB9XG5cbiAgaW5pdGlhbGl6ZUNvbmZpZyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XG4gICAgaWYgKGNoYW5nZXMuY29uZmlnICYmICFjaGFuZ2VzLmNvbmZpZy5pc0ZpcnN0Q2hhbmdlKCkpIHtcbiAgICAgIHRoaXMuY29uZmlnID0gY2hhbmdlcy5jb25maWcuY3VycmVudFZhbHVlO1xuICAgIH1cbiAgICB0aGlzLnBhZ2UgPSB0aGlzLmNvbmZpZy5wYWdlIHx8IDE7XG4gICAgdGhpcy5sYXN0UGFnZSA9IHRoaXMuY29uZmlnLmxhc3RQYWdlIHx8IHRoaXMucGFnZTtcbiAgICB0aGlzLnBlclBhZ2UgPSB0aGlzLmNvbmZpZy5wZXJQYWdlIHx8IDIwO1xuICB9XG5cbiAgb25TY3JvbGwoKSB7XG4gICAgaWYgKHRoaXMucGFnZSA8IHRoaXMubGFzdFBhZ2UpIHtcbiAgICAgIHRoaXMucGFnZSArPSAxO1xuICAgICAgdGhpcy50YWJsZVNjcm9sbC5lbWl0KHsgcGFnZTogdGhpcy5wYWdlLCBsYXN0UGFnZTogdGhpcy5sYXN0UGFnZSwgcGVyUGFnZTogdGhpcy5wZXJQYWdlIH0pO1xuICAgIH1cbiAgfVxuXG4gIC8qKk1ldGhvZCBpbnZva2VzIHdoZW4gZWRpdCBhY3Rpb24gaWNvbiBpcyBjbGlja2VzICovXG4gIGVkaXRDbGlja2VkKGV2ZW50OiBhbnksIGVsZW1lbnQ6IGFueSkge1xuICAgIHRoaXMuYWN0aW9uLmVtaXQoeyBhY3Rpb246IFwiZWRpdFwiLCB2YWx1ZTogZWxlbWVudCB9KTtcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgfVxuXG4gIC8qKk1ldGhvZCBpbnZva2VzIHdoZW4gdmlldyBhY3Rpb24gaWNvbiBpcyBjbGlja2VzICovXG4gIHZpZXdDbGlja2VkKGV2ZW50OiBhbnksIGVsZW1lbnQ6IGFueSkge1xuICAgIHRoaXMuYWN0aW9uLmVtaXQoeyBhY3Rpb246IFwidmlld1wiLCB2YWx1ZTogZWxlbWVudCB9KTtcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgfVxuXG4gIC8qKk1ldGhvZCBpbnZva2VzIHdoZW4gZWRpdCBhY3Rpb24gaWNvbiBpcyBjbGlja2VzICovXG4gIGRlYWN0aXZhdGVDbGlja2VkKGV2ZW50OiBhbnksIGVsZW1lbnQ6IGFueSkge1xuICAgIHRoaXMuYWN0aW9uLmVtaXQoeyBhY3Rpb246IFwiZGVhY3RpdmF0ZVwiLCB2YWx1ZTogZWxlbWVudCB9KTtcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgfVxuXG4gIC8qKk1ldGhvZCBpbnZva2VzIHdoZW4gZG93bmxvYWQgYWN0aW9uIGljb24gaXMgY2xpY2tlcyAqL1xuICBkb3dubG9hZENsaWNrZWQoZXZlbnQ6IGFueSwgZWxlbWVudDogYW55KSB7XG4gICAgdGhpcy5hY3Rpb24uZW1pdCh7IGFjdGlvbjogXCJkb3dubG9hZFwiLCB2YWx1ZTogZWxlbWVudCB9KTtcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgfVxuXG4gIC8qKk1ldGhvZCBpbnZva2VzIHdoZW4gcHJpbnQgYWN0aW9uIGljb24gaXMgY2xpY2tlcyAqL1xuICBwcmludENsaWNrZWQoZXZlbnQ6IGFueSwgZWxlbWVudDogYW55KSB7XG5cbiAgICB0aGlzLmFjdGlvbi5lbWl0KHsgYWN0aW9uOiAncHJpbnQnLCB2YWx1ZTogZWxlbWVudCB9KTtcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcblxuICB9XG5cbiAgLyoqTWV0aG9kIGludm9rZXMgd2hlbiBhIHJvdyBpcyBjbGlja2VkICovXG4gIHJvd0NsaWNrZWQoZXZlbnQ6IGFueSwgZWxlbWVudDogYW55KSB7XG4gICAgdGhpcy5yb3dDbGljay5lbWl0KGVsZW1lbnQpO1xuICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICB9XG5cbiAgLyoqTWV0aG9kIGludm9rZXMgd2hlbiBtZW51IGFjdGlvbiBpY29uIGlzIGhvdmVyZWQgKi9cbiAgYWN0aW9uTWVudUNsaWNrKGV2ZW50OiBhbnksIGVsZW1lbnQ6IGFueSwgbWVudVZhbHVlOiBzdHJpbmcpIHtcbiAgICB0aGlzLmFjdGlvbi5lbWl0KHsgYWN0aW9uOiBtZW51VmFsdWUsIHZhbHVlOiBlbGVtZW50IH0pO1xuICAgIHRoaXMudHJpZ2dlci5jbG9zZU1lbnUoKTtcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgfVxuXG4gIC8qKk1ldGhvZCBpbnZva2VzIHdoZW4gbWVudSBhY3Rpb24gaWNvbiBpcyBob3ZlcmVkIGFuZCBzZWxlY3RzIGZvciBwYXJ0aWN1bGFyIGFjdGlvbiovXG4gIGFjdGlvbk1lbnVUcmlnZ2VyQ2xpY2soZXZlbnQ6IGFueSwgdHJpZ2dlcjogTWF0TWVudVRyaWdnZXIpIHtcbiAgICB0aGlzLnRyaWdnZXIgPSB0cmlnZ2VyO1xuICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICB9XG5cbiAgY2hlY2tFZGl0KGVsZTogYW55KSB7XG4gICAgaWYgKHRoaXMuY29uZmlnLmVkaXREaXNhYmxlRnVuY3Rpb24pIHtcbiAgICAgIHJldHVybiB0aGlzLmNvbmZpZy5lZGl0RGlzYWJsZUZ1bmN0aW9uKGVsZSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRydWU7XG4gIH1cblxuICBjaGVja1ZpZXcoZWxlOiBhbnkpIHtcbiAgICBpZiAodGhpcy5jb25maWcudmlld0Rpc2FibGVGdW5jdGlvbikge1xuICAgICAgcmV0dXJuIHRoaXMuY29uZmlnLnZpZXdEaXNhYmxlRnVuY3Rpb24oZWxlKTtcbiAgICB9XG5cbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuXG4gIGNoZWNrUHJpbnQoZWxlOiBhbnkpIHtcbiAgICBpZiAodGhpcy5jb25maWcucHJpbnREaXNhYmxlRnVuY3Rpb24pIHtcbiAgICAgIHJldHVybiB0aGlzLmNvbmZpZy5wcmludERpc2FibGVGdW5jdGlvbihlbGUpO1xuICAgIH1cblxuICAgIHJldHVybiB0cnVlO1xuICB9XG5cbiAgY2hlY2tBY3Rpb25zKGVsZTogYW55KSB7XG4gICAgaWYgKHRoaXMuY29uZmlnLmFjdGlvbnNNZW51RnVuY3Rpb24pIHtcbiAgICAgIHJldHVybiB0aGlzLmNvbmZpZy5hY3Rpb25zTWVudUZ1bmN0aW9uKGVsZSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRydWU7XG4gIH1cblxuICBjaGVja0FjdGlvbkJ1dHRvbihlbGU6IGFueSwgdmFsdWU6IGFueSkge1xuICAgIGlmICh0aGlzLmNvbmZpZy5hY3Rpb25zTWVudUJ1dHRvbkZ1bmN0aW9uKSB7XG4gICAgICByZXR1cm4gdGhpcy5jb25maWcuYWN0aW9uc01lbnVCdXR0b25GdW5jdGlvbihlbGUsIHZhbHVlKTtcbiAgICB9XG4gICAgcmV0dXJuIHRydWU7XG4gIH1cblxuICBnZXRWYWx1ZShlbGU6IGFueSwga2V5U3RyaW5nOiBzdHJpbmcpIHtcbiAgICBrZXlTdHJpbmcgPSBrZXlTdHJpbmcucmVwbGFjZSgvXFxbKFxcdyspXFxdL2csIFwiLiQxXCIpOyAvLyBjb252ZXJ0IGluZGV4ZXMgdG8gcHJvcGVydGllc1xuICAgIGtleVN0cmluZyA9IGtleVN0cmluZy5yZXBsYWNlKC9eXFwuLywgXCJcIik7IC8vIHN0cmlwIGEgbGVhZGluZyBkb3RcbiAgICBjb25zdCBrZXlMaXN0ID0ga2V5U3RyaW5nLnNwbGl0KFwiLlwiKTtcbiAgICBmb3IgKGxldCBpID0gMCwgbiA9IGtleUxpc3QubGVuZ3RoOyBpIDwgbjsgKytpKSB7XG4gICAgICBjb25zdCBrZXkgPSBrZXlMaXN0W2ldO1xuICAgICAgaWYgKGVsZSAmJiBrZXkgaW4gZWxlKSB7XG4gICAgICAgIGVsZSA9IGVsZVtrZXldO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gZWxlO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgLy9VbnRpbCBEZXN0cm95IHVzZXMgaXQuXG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export class DataTable {
|
|
2
|
+
}
|
|
3
|
+
class ColumnConfig {
|
|
4
|
+
}
|
|
5
|
+
class ActionConfig {
|
|
6
|
+
}
|
|
7
|
+
class ActionsMenu {
|
|
8
|
+
}
|
|
9
|
+
export class PageEvent {
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS10YWJsZS5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC10ZWNobGlmeS1jb3JlL3NyYy9saWIvZGF0YS10YWJsZS9kYXRhLXRhYmxlLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sT0FBTyxTQUFTO0NBbUJyQjtBQUVELE1BQU0sWUFBWTtDQU9qQjtBQUVELE1BQU0sWUFBWTtDQU9qQjtBQUVELE1BQU0sV0FBVztDQUdoQjtBQUVELE1BQU0sT0FBTyxTQUFTO0NBSXJCIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNsYXNzIERhdGFUYWJsZSB7XG4gICAgZGlzcGxheWVkQ29sdW1uczogc3RyaW5nW107XG4gICAgY29sdW1uc0NvbmZpZzogQ29sdW1uQ29uZmlnW107XG4gICAgYWN0aW9uc0NvbmZpZz86IEFjdGlvbkNvbmZpZztcbiAgICBlbmFibGVSb3dDbGljaz86IGJvb2xlYW47XG4gICAgZGlzYWJsZUVsZXZhdGlvbj86IGJvb2xlYW47XG4gICAgZG93bmxvYWRMaW5rPzogc3RyaW5nO1xuICAgIGFjdGlvbnNNZW51RnVuY3Rpb24/OiBhbnk7XG4gICAgYWN0aW9uc01lbnVCdXR0b25GdW5jdGlvbj86IGFueTtcbiAgICBlZGl0RGlzYWJsZUZ1bmN0aW9uPzogYW55O1xuICAgIHZpZXdEaXNhYmxlRnVuY3Rpb24/OiBhbnk7XG4gICAgcHJpbnREaXNhYmxlRnVuY3Rpb24/OiBhbnk7XG4gICAgY3VzdG9tQWN0aW9uTGFiZWw/OiBzdHJpbmc7XG4gICAgc3RpY2t5SGVhZGVyPzogYm9vbGVhbjtcbiAgICBwYWdlPzogbnVtYmVyO1xuICAgIGxhc3RQYWdlPzogbnVtYmVyO1xuICAgIHBlclBhZ2U/OiBudW1iZXI7XG4gICAgcGFnZVNpemVPcHRpb25zPzogbnVtYmVyW107XG4gICAgc3R5bGU/OiBhbnk7XG59XG5cbmNsYXNzIENvbHVtbkNvbmZpZyB7XG4gICAgdGl0bGU6IHN0cmluZztcbiAgICB2YWx1ZTogc3RyaW5nO1xuICAgIHNvcnQ/OiBib29sZWFuO1xuICAgIGRhdGVGaWVsZD86IGJvb2xlYW47XG4gICAgY3VycmVuY3lGaWVsZD86IGJvb2xlYW47XG4gICAgZm9ybWF0Pzogc3RyaW5nO1xufVxuXG5jbGFzcyBBY3Rpb25Db25maWcge1xuICAgIGVkaXQ/OiBib29sZWFuO1xuICAgIHZpZXc/OiBib29sZWFuO1xuICAgIGRvd25sb2FkPzogYm9vbGVhbjtcbiAgICBwcmludD86IGJvb2xlYW47XG4gICAgZGVhY3RpdmF0ZT86IGJvb2xlYW47XG4gICAgYWN0aW9uc01lbnU/OiBBY3Rpb25zTWVudVtdO1xufVxuXG5jbGFzcyBBY3Rpb25zTWVudSB7XG4gICAgbmFtZTogc3RyaW5nO1xuICAgIHZhbHVlOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBjbGFzcyBQYWdlRXZlbnQge1xuICAgIHBhZ2U6IG51bWJlcjtcbiAgICBsYXN0UGFnZT86IG51bWJlcjtcbiAgICBwZXJQYWdlOiBudW1iZXI7XG59XG4iXX0=
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { NgModule } from '@angular/core';
|
|
2
|
+
import { CommonModule } from '@angular/common';
|
|
3
|
+
import { FlexLayoutModule } from '@angular/flex-layout';
|
|
4
|
+
import { DataTableComponent } from './data-table.component';
|
|
5
|
+
import { InfiniteScrollModule } from "ngx-infinite-scroll";
|
|
6
|
+
import { MaterialModule } from '../material.module';
|
|
7
|
+
export class DataTableModule {
|
|
8
|
+
}
|
|
9
|
+
DataTableModule.decorators = [
|
|
10
|
+
{ type: NgModule, args: [{
|
|
11
|
+
imports: [
|
|
12
|
+
FlexLayoutModule,
|
|
13
|
+
CommonModule,
|
|
14
|
+
InfiniteScrollModule,
|
|
15
|
+
MaterialModule
|
|
16
|
+
],
|
|
17
|
+
declarations: [
|
|
18
|
+
DataTableComponent
|
|
19
|
+
],
|
|
20
|
+
exports: [
|
|
21
|
+
DataTableComponent
|
|
22
|
+
]
|
|
23
|
+
},] }
|
|
24
|
+
];
|
|
25
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS10YWJsZS5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtdGVjaGxpZnktY29yZS9zcmMvbGliL2RhdGEtdGFibGUvZGF0YS10YWJsZS5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDeEQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDNUQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBaUJwRCxNQUFNLE9BQU8sZUFBZTs7O1lBZDNCLFFBQVEsU0FBQztnQkFDUixPQUFPLEVBQUU7b0JBQ1AsZ0JBQWdCO29CQUNoQixZQUFZO29CQUNaLG9CQUFvQjtvQkFDcEIsY0FBYztpQkFDZjtnQkFDRCxZQUFZLEVBQUU7b0JBQ1osa0JBQWtCO2lCQUNuQjtnQkFDRCxPQUFPLEVBQUU7b0JBQ1Asa0JBQWtCO2lCQUNuQjthQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBGbGV4TGF5b3V0TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZmxleC1sYXlvdXQnO1xuaW1wb3J0IHsgRGF0YVRhYmxlQ29tcG9uZW50IH0gZnJvbSAnLi9kYXRhLXRhYmxlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBJbmZpbml0ZVNjcm9sbE1vZHVsZSB9IGZyb20gXCJuZ3gtaW5maW5pdGUtc2Nyb2xsXCI7XG5pbXBvcnQgeyBNYXRlcmlhbE1vZHVsZSB9IGZyb20gJy4uL21hdGVyaWFsLm1vZHVsZSc7XG5cblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW1xuICAgIEZsZXhMYXlvdXRNb2R1bGUsXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIEluZmluaXRlU2Nyb2xsTW9kdWxlLFxuICAgIE1hdGVyaWFsTW9kdWxlXG4gIF0sXG4gIGRlY2xhcmF0aW9uczogW1xuICAgIERhdGFUYWJsZUNvbXBvbmVudFxuICBdLFxuICBleHBvcnRzOiBbXG4gICAgRGF0YVRhYmxlQ29tcG9uZW50XG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgRGF0YVRhYmxlTW9kdWxlIHsgfVxuIl19
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
export * from './data-table.component';
|
|
2
|
+
export * from './data-table.model';
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtdGVjaGxpZnktY29yZS9zcmMvbGliL2RhdGEtdGFibGUvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyx3QkFBd0IsQ0FBQztBQUN2QyxjQUFjLG9CQUFvQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9kYXRhLXRhYmxlLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2RhdGEtdGFibGUubW9kZWwnOyJdfQ==
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export function DateValidator() {
|
|
2
|
+
return (control) => {
|
|
3
|
+
const val = new Date(control.value);
|
|
4
|
+
if (!!control.value && val == 'Invalid Date') {
|
|
5
|
+
return { invalidDate: true };
|
|
6
|
+
}
|
|
7
|
+
return null;
|
|
8
|
+
};
|
|
9
|
+
}
|
|
10
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS12YWxpZGF0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtdGVjaGxpZnktY29yZS9zcmMvbGliL2RhdGUtdmFsaWRhdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sVUFBVSxhQUFhO0lBQ3pCLE9BQU8sQ0FBQyxPQUFvQixFQUEwQixFQUFFO1FBRXBELE1BQU0sR0FBRyxHQUFRLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUN6QyxJQUFJLENBQUMsQ0FBQyxPQUFPLENBQUMsS0FBSyxJQUFJLEdBQUcsSUFBSSxjQUFjLEVBQUU7WUFDMUMsT0FBTyxFQUFFLFdBQVcsRUFBRSxJQUFJLEVBQUUsQ0FBQztTQUNoQztRQUNELE9BQU8sSUFBSSxDQUFDO0lBQ2hCLENBQUMsQ0FBQztBQUNOLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGb3JtQ29udHJvbCB9IGZyb20gXCJAYW5ndWxhci9mb3Jtc1wiO1xuXG5leHBvcnQgZnVuY3Rpb24gRGF0ZVZhbGlkYXRvcigpOiBhbnkge1xuICAgIHJldHVybiAoY29udHJvbDogRm9ybUNvbnRyb2wpOiB7IFtrZXk6IHN0cmluZ106IGFueSB9ID0+IHtcblxuICAgICAgICBjb25zdCB2YWw6IGFueSA9IG5ldyBEYXRlKGNvbnRyb2wudmFsdWUpO1xuICAgICAgICBpZiAoISFjb250cm9sLnZhbHVlICYmIHZhbCA9PSAnSW52YWxpZCBEYXRlJykge1xuICAgICAgICAgICAgcmV0dXJuIHsgaW52YWxpZERhdGU6IHRydWUgfTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICB9O1xufSJdfQ==
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import { Component, Input, EventEmitter, Output } from '@angular/core';
|
|
2
|
+
export class DocumentViewerComponent {
|
|
3
|
+
constructor() {
|
|
4
|
+
this.remove = new EventEmitter();
|
|
5
|
+
}
|
|
6
|
+
ngOnInit() {
|
|
7
|
+
this.initData();
|
|
8
|
+
}
|
|
9
|
+
removeFile() {
|
|
10
|
+
this.remove.emit();
|
|
11
|
+
}
|
|
12
|
+
initData() {
|
|
13
|
+
if (this.file) {
|
|
14
|
+
var ext = this.getFileExtension(this.file);
|
|
15
|
+
if (ext === 'ppt' || ext === 'pptx' || ext === 'doc' || ext === 'docx' || ext === 'xls' || ext === 'xlsx') {
|
|
16
|
+
this.viewerType = "office";
|
|
17
|
+
}
|
|
18
|
+
else if (ext === 'jpg' || ext === 'jpeg' || ext === 'png' || ext === 'gif') {
|
|
19
|
+
this.viewerType = "image";
|
|
20
|
+
}
|
|
21
|
+
else if (ext === 'pdf') {
|
|
22
|
+
this.viewerType = "pdf";
|
|
23
|
+
}
|
|
24
|
+
else {
|
|
25
|
+
this.viewerType = null;
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
get fileName() {
|
|
30
|
+
if (this.file) {
|
|
31
|
+
let nameArray = this.file.split('/');
|
|
32
|
+
if (nameArray.length === 2) {
|
|
33
|
+
return nameArray[1];
|
|
34
|
+
}
|
|
35
|
+
return nameArray[0];
|
|
36
|
+
}
|
|
37
|
+
return '';
|
|
38
|
+
}
|
|
39
|
+
getFileExtension(file) {
|
|
40
|
+
return file.split('.').pop();
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
DocumentViewerComponent.decorators = [
|
|
44
|
+
{ type: Component, args: [{
|
|
45
|
+
selector: 'app-document-viewer',
|
|
46
|
+
template: "<mat-card *ngIf=\"viewerType === 'image'\">\n <img [ngStyle]=\"config.imageStyle\" mat-card-image [src]=\"fileUrl\" />\n <mat-card-actions>\n <button type=\"button\" mat-raised-button (click)=\"removeFile()\" *ngIf=\"!disableEdit && !config.hideRemove\">\n Remove\n </button>\n </mat-card-actions>\n</mat-card>\n\n<div class=\"mat-elevation-z1 p-4\" *ngIf=\"viewerType !== 'image'\">\n <a [href]=\"fileUrl\" target=\"_blank\">{{fileName}}</a>\n <ngx-doc-viewer [ngStyle]=\"config.viewerStyle\" *ngIf=\"viewerType !== null\" [url]=\"fileUrl\" [viewer]=\"viewerType\">\n </ngx-doc-viewer>\n <div class=\"mt-2\" *ngIf=\"!config.hideRemove\">\n <button type=\"button\" mat-raised-button (click)=\"removeFile()\" *ngIf=\"!disableEdit\">\n Remove\n </button>\n </div>\n</div>",
|
|
47
|
+
styles: [".image-fit{height:100%;object-fit:cover;width:100%}"]
|
|
48
|
+
},] }
|
|
49
|
+
];
|
|
50
|
+
DocumentViewerComponent.ctorParameters = () => [];
|
|
51
|
+
DocumentViewerComponent.propDecorators = {
|
|
52
|
+
config: [{ type: Input }],
|
|
53
|
+
file: [{ type: Input }],
|
|
54
|
+
fileUrl: [{ type: Input }],
|
|
55
|
+
disableEdit: [{ type: Input }],
|
|
56
|
+
remove: [{ type: Output }]
|
|
57
|
+
};
|
|
58
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jdW1lbnQtdmlld2VyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC10ZWNobGlmeS1jb3JlL3NyYy9saWIvZG9jdW1lbnQtdmlld2VyL2RvY3VtZW50LXZpZXdlci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBVSxLQUFLLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQVEvRSxNQUFNLE9BQU8sdUJBQXVCO0lBY2xDO1FBSFUsV0FBTSxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7SUFHdEIsQ0FBQztJQUVqQixRQUFRO1FBQ04sSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQ2xCLENBQUM7SUFFRCxVQUFVO1FBQ1IsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNyQixDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksSUFBSSxDQUFDLElBQUksRUFBRTtZQUNiLElBQUksR0FBRyxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDM0MsSUFBSSxHQUFHLEtBQUssS0FBSyxJQUFJLEdBQUcsS0FBSyxNQUFNLElBQUksR0FBRyxLQUFLLEtBQUssSUFBSSxHQUFHLEtBQUssTUFBTSxJQUFJLEdBQUcsS0FBSyxLQUFLLElBQUksR0FBRyxLQUFLLE1BQU0sRUFBRTtnQkFDekcsSUFBSSxDQUFDLFVBQVUsR0FBRyxRQUFRLENBQUM7YUFDNUI7aUJBQ0ksSUFBSSxHQUFHLEtBQUssS0FBSyxJQUFJLEdBQUcsS0FBSyxNQUFNLElBQUksR0FBRyxLQUFLLEtBQUssSUFBSSxHQUFHLEtBQUssS0FBSyxFQUFFO2dCQUMxRSxJQUFJLENBQUMsVUFBVSxHQUFHLE9BQU8sQ0FBQzthQUMzQjtpQkFDSSxJQUFJLEdBQUcsS0FBSyxLQUFLLEVBQUU7Z0JBQ3RCLElBQUksQ0FBQyxVQUFVLEdBQUcsS0FBSyxDQUFDO2FBQ3pCO2lCQUNJO2dCQUNILElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDO2FBQ3hCO1NBQ0Y7SUFDSCxDQUFDO0lBRUQsSUFBSSxRQUFRO1FBQ1YsSUFBSSxJQUFJLENBQUMsSUFBSSxFQUFFO1lBQ2IsSUFBSSxTQUFTLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDckMsSUFBSSxTQUFTLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRTtnQkFDMUIsT0FBTyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUM7YUFDckI7WUFDRCxPQUFPLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQztTQUNyQjtRQUNELE9BQU8sRUFBRSxDQUFDO0lBQ1osQ0FBQztJQUVELGdCQUFnQixDQUFDLElBQVM7UUFDeEIsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsRUFBRSxDQUFDO0lBQy9CLENBQUM7OztZQTVERixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLHFCQUFxQjtnQkFDL0IsdTFCQUErQzs7YUFFaEQ7Ozs7cUJBSUUsS0FBSzttQkFFTCxLQUFLO3NCQUVMLEtBQUs7MEJBRUwsS0FBSztxQkFFTCxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQsIElucHV0LCBFdmVudEVtaXR0ZXIsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgVmlld2VyQ29uZmlnIH0gZnJvbSAnLi92aWV3ZXItY29uZmlnLm1vZGVsJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXBwLWRvY3VtZW50LXZpZXdlcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9kb2N1bWVudC12aWV3ZXIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9kb2N1bWVudC12aWV3ZXIuY29tcG9uZW50LmNzcyddXG59KVxuZXhwb3J0IGNsYXNzIERvY3VtZW50Vmlld2VyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcblxuXG4gIEBJbnB1dCgpIGNvbmZpZyE6IFZpZXdlckNvbmZpZztcblxuICBASW5wdXQoKSBmaWxlITogYW55O1xuXG4gIEBJbnB1dCgpIGZpbGVVcmwhOiBhbnk7XG5cbiAgQElucHV0KCkgZGlzYWJsZUVkaXQ6IGJvb2xlYW47XG5cbiAgQE91dHB1dCgpIHJlbW92ZSA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgdmlld2VyVHlwZTogYW55O1xuXG4gIGNvbnN0cnVjdG9yKCkgeyB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5pbml0RGF0YSgpO1xuICB9XG5cbiAgcmVtb3ZlRmlsZSgpIHtcbiAgICB0aGlzLnJlbW92ZS5lbWl0KCk7XG4gIH1cblxuICBpbml0RGF0YSgpIHtcbiAgICBpZiAodGhpcy5maWxlKSB7XG4gICAgICB2YXIgZXh0ID0gdGhpcy5nZXRGaWxlRXh0ZW5zaW9uKHRoaXMuZmlsZSk7XG4gICAgICBpZiAoZXh0ID09PSAncHB0JyB8fCBleHQgPT09ICdwcHR4JyB8fCBleHQgPT09ICdkb2MnIHx8IGV4dCA9PT0gJ2RvY3gnIHx8IGV4dCA9PT0gJ3hscycgfHwgZXh0ID09PSAneGxzeCcpIHtcbiAgICAgICAgdGhpcy52aWV3ZXJUeXBlID0gXCJvZmZpY2VcIjtcbiAgICAgIH1cbiAgICAgIGVsc2UgaWYgKGV4dCA9PT0gJ2pwZycgfHwgZXh0ID09PSAnanBlZycgfHwgZXh0ID09PSAncG5nJyB8fCBleHQgPT09ICdnaWYnKSB7XG4gICAgICAgIHRoaXMudmlld2VyVHlwZSA9IFwiaW1hZ2VcIjtcbiAgICAgIH1cbiAgICAgIGVsc2UgaWYgKGV4dCA9PT0gJ3BkZicpIHtcbiAgICAgICAgdGhpcy52aWV3ZXJUeXBlID0gXCJwZGZcIjtcbiAgICAgIH1cbiAgICAgIGVsc2Uge1xuICAgICAgICB0aGlzLnZpZXdlclR5cGUgPSBudWxsO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGdldCBmaWxlTmFtZSgpIHtcbiAgICBpZiAodGhpcy5maWxlKSB7XG4gICAgICBsZXQgbmFtZUFycmF5ID0gdGhpcy5maWxlLnNwbGl0KCcvJyk7XG4gICAgICBpZiAobmFtZUFycmF5Lmxlbmd0aCA9PT0gMikge1xuICAgICAgICByZXR1cm4gbmFtZUFycmF5WzFdO1xuICAgICAgfVxuICAgICAgcmV0dXJuIG5hbWVBcnJheVswXTtcbiAgICB9XG4gICAgcmV0dXJuICcnO1xuICB9XG5cbiAgZ2V0RmlsZUV4dGVuc2lvbihmaWxlOiBhbnkpIHtcbiAgICByZXR1cm4gZmlsZS5zcGxpdCgnLicpLnBvcCgpO1xuICB9XG5cbn1cbiJdfQ==
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { NgModule } from '@angular/core';
|
|
2
|
+
import { CommonModule } from '@angular/common';
|
|
3
|
+
import { FlexLayoutModule } from '@angular/flex-layout';
|
|
4
|
+
import { DocumentViewerComponent } from './document-viewer.component';
|
|
5
|
+
import { NgxDocViewerModule } from 'ngx-doc-viewer';
|
|
6
|
+
import { MaterialModule } from '../material.module';
|
|
7
|
+
export class DocumentViewerModule {
|
|
8
|
+
}
|
|
9
|
+
DocumentViewerModule.decorators = [
|
|
10
|
+
{ type: NgModule, args: [{
|
|
11
|
+
imports: [
|
|
12
|
+
CommonModule,
|
|
13
|
+
FlexLayoutModule,
|
|
14
|
+
NgxDocViewerModule,
|
|
15
|
+
MaterialModule
|
|
16
|
+
],
|
|
17
|
+
declarations: [
|
|
18
|
+
DocumentViewerComponent
|
|
19
|
+
],
|
|
20
|
+
exports: [
|
|
21
|
+
DocumentViewerComponent
|
|
22
|
+
]
|
|
23
|
+
},] }
|
|
24
|
+
];
|
|
25
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jdW1lbnQtdmlld2VyLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC10ZWNobGlmeS1jb3JlL3NyYy9saWIvZG9jdW1lbnQtdmlld2VyL2RvY3VtZW50LXZpZXdlci5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDeEQsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDdEUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDcEQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBZ0JwRCxNQUFNLE9BQU8sb0JBQW9COzs7WUFkaEMsUUFBUSxTQUFDO2dCQUNSLE9BQU8sRUFBRTtvQkFDUCxZQUFZO29CQUNaLGdCQUFnQjtvQkFDaEIsa0JBQWtCO29CQUNsQixjQUFjO2lCQUNmO2dCQUNELFlBQVksRUFBRTtvQkFDWix1QkFBdUI7aUJBQ3hCO2dCQUNELE9BQU8sRUFBRTtvQkFDUCx1QkFBdUI7aUJBQ3hCO2FBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEZsZXhMYXlvdXRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mbGV4LWxheW91dCc7XG5pbXBvcnQgeyBEb2N1bWVudFZpZXdlckNvbXBvbmVudCB9IGZyb20gJy4vZG9jdW1lbnQtdmlld2VyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBOZ3hEb2NWaWV3ZXJNb2R1bGUgfSBmcm9tICduZ3gtZG9jLXZpZXdlcic7XG5pbXBvcnQgeyBNYXRlcmlhbE1vZHVsZSB9IGZyb20gJy4uL21hdGVyaWFsLm1vZHVsZSc7XG5cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgRmxleExheW91dE1vZHVsZSxcbiAgICBOZ3hEb2NWaWV3ZXJNb2R1bGUsXG4gICAgTWF0ZXJpYWxNb2R1bGVcbiAgXSxcbiAgZGVjbGFyYXRpb25zOiBbXG4gICAgRG9jdW1lbnRWaWV3ZXJDb21wb25lbnRcbiAgXSxcbiAgZXhwb3J0czogW1xuICAgIERvY3VtZW50Vmlld2VyQ29tcG9uZW50XG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgRG9jdW1lbnRWaWV3ZXJNb2R1bGUgeyB9XG4iXX0=
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
export * from './document-viewer.component';
|
|
2
|
+
export * from './viewer-config.model';
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtdGVjaGxpZnktY29yZS9zcmMvbGliL2RvY3VtZW50LXZpZXdlci9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLDZCQUE2QixDQUFDO0FBQzVDLGNBQWMsdUJBQXVCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2RvY3VtZW50LXZpZXdlci5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi92aWV3ZXItY29uZmlnLm1vZGVsJzsiXX0=
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
export class ViewerConfig {
|
|
2
|
+
}
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlld2VyLWNvbmZpZy5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC10ZWNobGlmeS1jb3JlL3NyYy9saWIvZG9jdW1lbnQtdmlld2VyL3ZpZXdlci1jb25maWcubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxPQUFPLFlBQVk7Q0FJeEIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY2xhc3MgVmlld2VyQ29uZmlnIHtcbiAgaW1hZ2VTdHlsZT86IGFueTtcbiAgdmlld2VyU3R5bGU/OiBhbnk7XG4gIGhpZGVSZW1vdmU/OiBib29sZWFuO1xufVxuIl19
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { NgModule } from '@angular/core';
|
|
2
|
+
import { RouterModule } from '@angular/router';
|
|
3
|
+
import { AuthenticationGuard } from '../../core/authentication.guard';
|
|
4
|
+
import { EmailSubscriptionForUserComponent } from './email-subscription-for-user.component';
|
|
5
|
+
export const esfur = {
|
|
6
|
+
permissions: {
|
|
7
|
+
only: ['client_admin']
|
|
8
|
+
}
|
|
9
|
+
};
|
|
10
|
+
const routes = [
|
|
11
|
+
{
|
|
12
|
+
path: '',
|
|
13
|
+
component: EmailSubscriptionForUserComponent,
|
|
14
|
+
canActivate: [AuthenticationGuard],
|
|
15
|
+
data: esfur
|
|
16
|
+
},
|
|
17
|
+
];
|
|
18
|
+
export class EmailSubscriptionForUserRoutingModule {
|
|
19
|
+
}
|
|
20
|
+
EmailSubscriptionForUserRoutingModule.decorators = [
|
|
21
|
+
{ type: NgModule, args: [{
|
|
22
|
+
imports: [RouterModule.forChild(routes)],
|
|
23
|
+
exports: [RouterModule]
|
|
24
|
+
},] }
|
|
25
|
+
];
|
|
26
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW1haWwtc3Vic2NyaXB0aW9uLWZvci11c2VyLXJvdXRpbmcubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXRlY2hsaWZ5LWNvcmUvc3JjL2xpYi9lbWFpbC1zdWJzY3JpcHRpb24vZW1haWwtc3Vic2NyaXB0aW9uLWZvci11c2VyL2VtYWlsLXN1YnNjcmlwdGlvbi1mb3ItdXNlci1yb3V0aW5nLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBVSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN2RCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUN0RSxPQUFPLEVBQUUsaUNBQWlDLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUU1RixNQUFNLENBQUMsTUFBTSxLQUFLLEdBQUc7SUFDbkIsV0FBVyxFQUFFO1FBQ1gsSUFBSSxFQUFFLENBQUMsY0FBYyxDQUFDO0tBQ3ZCO0NBQ0YsQ0FBQztBQUVGLE1BQU0sTUFBTSxHQUFXO0lBQ3JCO1FBQ0UsSUFBSSxFQUFFLEVBQUU7UUFDUixTQUFTLEVBQUUsaUNBQWlDO1FBQzVDLFdBQVcsRUFBRSxDQUFDLG1CQUFtQixDQUFDO1FBQ2xDLElBQUksRUFBRSxLQUFLO0tBQ1o7Q0FDRixDQUFDO0FBTUYsTUFBTSxPQUFPLHFDQUFxQzs7O1lBSmpELFFBQVEsU0FBQztnQkFDUixPQUFPLEVBQUUsQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDO2dCQUN4QyxPQUFPLEVBQUUsQ0FBQyxZQUFZLENBQUM7YUFDeEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUm91dGVzLCBSb3V0ZXJNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgQXV0aGVudGljYXRpb25HdWFyZCB9IGZyb20gJy4uLy4uL2NvcmUvYXV0aGVudGljYXRpb24uZ3VhcmQnO1xuaW1wb3J0IHsgRW1haWxTdWJzY3JpcHRpb25Gb3JVc2VyQ29tcG9uZW50IH0gZnJvbSAnLi9lbWFpbC1zdWJzY3JpcHRpb24tZm9yLXVzZXIuY29tcG9uZW50JztcblxuZXhwb3J0IGNvbnN0IGVzZnVyID0ge1xuICBwZXJtaXNzaW9uczoge1xuICAgIG9ubHk6IFsnY2xpZW50X2FkbWluJ11cbiAgfVxufTtcblxuY29uc3Qgcm91dGVzOiBSb3V0ZXMgPSBbXG4gIHtcbiAgICBwYXRoOiAnJyxcbiAgICBjb21wb25lbnQ6IEVtYWlsU3Vic2NyaXB0aW9uRm9yVXNlckNvbXBvbmVudCxcbiAgICBjYW5BY3RpdmF0ZTogW0F1dGhlbnRpY2F0aW9uR3VhcmRdLFxuICAgIGRhdGE6IGVzZnVyXG4gIH0sXG5dO1xuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbUm91dGVyTW9kdWxlLmZvckNoaWxkKHJvdXRlcyldLFxuICBleHBvcnRzOiBbUm91dGVyTW9kdWxlXVxufSlcbmV4cG9ydCBjbGFzcyBFbWFpbFN1YnNjcmlwdGlvbkZvclVzZXJSb3V0aW5nTW9kdWxlIHsgfVxuIl19
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
import { __decorate } from "tslib";
|
|
2
|
+
import { Component } from '@angular/core';
|
|
3
|
+
import { UntilDestroy, untilDestroyed } from '@ngneat/until-destroy';
|
|
4
|
+
import { HttpService } from '../../core/http.service';
|
|
5
|
+
let EmailSubscriptionForUserComponent = class EmailSubscriptionForUserComponent {
|
|
6
|
+
constructor(http) {
|
|
7
|
+
this.http = http;
|
|
8
|
+
this.subscriptions = [];
|
|
9
|
+
this.pageEvent = { page: 1, perPage: 25, lastPage: 1 };
|
|
10
|
+
this.filters = {
|
|
11
|
+
sort_by: 'created_at|desc',
|
|
12
|
+
isLoadRelations: true,
|
|
13
|
+
relations: 'frequency,currentUserSubscription'
|
|
14
|
+
};
|
|
15
|
+
}
|
|
16
|
+
ngOnInit() {
|
|
17
|
+
this.fetchSubscriptions();
|
|
18
|
+
}
|
|
19
|
+
fetchSubscriptions() {
|
|
20
|
+
this.http.get(`api/email-subscription-types`, { params: Object.assign(Object.assign({}, this.filters), this.pageEvent) })
|
|
21
|
+
.pipe(untilDestroyed(this))
|
|
22
|
+
.subscribe((result) => {
|
|
23
|
+
this.subscriptions = this.subscriptions.concat(result.data);
|
|
24
|
+
this.pageEvent.page = result.current_page;
|
|
25
|
+
this.pageEvent.lastPage = result.last_page;
|
|
26
|
+
});
|
|
27
|
+
}
|
|
28
|
+
onScroll() {
|
|
29
|
+
if (this.pageEvent.lastPage > this.pageEvent.page) {
|
|
30
|
+
this.pageEvent.page += 1;
|
|
31
|
+
this.fetchSubscriptions();
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
subscribe(sub) {
|
|
35
|
+
this.http.post(`api/email-subscription-for-user`, { email_type_id: sub === null || sub === void 0 ? void 0 : sub.id })
|
|
36
|
+
.pipe(untilDestroyed(this))
|
|
37
|
+
.subscribe((result) => {
|
|
38
|
+
sub.current_user_subscription = result === null || result === void 0 ? void 0 : result.item;
|
|
39
|
+
});
|
|
40
|
+
}
|
|
41
|
+
unsubscribe(sub) {
|
|
42
|
+
var _a;
|
|
43
|
+
this.http.delete(`api/email-subscription-users/${(_a = sub === null || sub === void 0 ? void 0 : sub.current_user_subscription) === null || _a === void 0 ? void 0 : _a.id}`)
|
|
44
|
+
.pipe(untilDestroyed(this))
|
|
45
|
+
.subscribe((_) => {
|
|
46
|
+
sub.current_user_subscription = null;
|
|
47
|
+
});
|
|
48
|
+
}
|
|
49
|
+
reload() {
|
|
50
|
+
this.subscriptions = [];
|
|
51
|
+
this.pageEvent = { page: 1, perPage: 25, lastPage: 1 };
|
|
52
|
+
this.fetchSubscriptions();
|
|
53
|
+
}
|
|
54
|
+
ngOnDestroy() {
|
|
55
|
+
//Until destroyed uses it
|
|
56
|
+
}
|
|
57
|
+
};
|
|
58
|
+
EmailSubscriptionForUserComponent.decorators = [
|
|
59
|
+
{ type: Component, args: [{
|
|
60
|
+
selector: 'app-email-subscription-for-user',
|
|
61
|
+
template: "<div fxLayout=\"column\" class=\"container my-4\">\n\n <div class=\"scroll-container\" infiniteScroll [infiniteScrollDistance]=\"2\" [infiniteScrollThrottle]=\"50\"\n (scrolled)=\"onScroll()\" [scrollWindow]=\"false\">\n <mat-list>\n <div mat-subheader>Available Subscriptions</div>\n <mat-list-item *ngFor=\"let sub of subscriptions\">\n <mat-icon mat-list-icon>email</mat-icon>\n <div mat-line>{{sub?.title}} </div>\n <div mat-line class=\"text-secondary\">{{sub?.frequency?.title}}</div>\n <div mat-line> {{sub?.description}} </div>\n <div fxLayout fxLayoutAlign=\"end\">\n <button type=\"button\" *ngIf=\"!sub?.current_user_subscription\" mat-raised-button color=\"primary\"\n (click)=\"subscribe(sub)\">Subscribe</button>\n <button type=\"button\" *ngIf=\"sub?.current_user_subscription\" mat-stroked-button color=\"primary\"\n (click)=\"unsubscribe(sub)\">Unsubscribe</button>\n </div>\n <mat-divider></mat-divider>\n </mat-list-item>\n </mat-list>\n </div>\n\n</div>",
|
|
62
|
+
styles: [".scroll-container{max-height:800px;overflow-y:auto}"]
|
|
63
|
+
},] }
|
|
64
|
+
];
|
|
65
|
+
EmailSubscriptionForUserComponent.ctorParameters = () => [
|
|
66
|
+
{ type: HttpService }
|
|
67
|
+
];
|
|
68
|
+
EmailSubscriptionForUserComponent = __decorate([
|
|
69
|
+
UntilDestroy()
|
|
70
|
+
], EmailSubscriptionForUserComponent);
|
|
71
|
+
export { EmailSubscriptionForUserComponent };
|
|
72
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW1haWwtc3Vic2NyaXB0aW9uLWZvci11c2VyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC10ZWNobGlmeS1jb3JlL3NyYy9saWIvZW1haWwtc3Vic2NyaXB0aW9uL2VtYWlsLXN1YnNjcmlwdGlvbi1mb3ItdXNlci9lbWFpbC1zdWJzY3JpcHRpb24tZm9yLXVzZXIuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBQ2xELE9BQU8sRUFBRSxZQUFZLEVBQUUsY0FBYyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDckUsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0lBU3pDLGlDQUFpQyxTQUFqQyxpQ0FBaUM7SUFVNUMsWUFDVSxJQUFpQjtRQUFqQixTQUFJLEdBQUosSUFBSSxDQUFhO1FBVDNCLGtCQUFhLEdBQVUsRUFBRSxDQUFDO1FBQzFCLGNBQVMsR0FBYyxFQUFFLElBQUksRUFBRSxDQUFDLEVBQUUsT0FBTyxFQUFFLEVBQUUsRUFBRSxRQUFRLEVBQUUsQ0FBQyxFQUFFLENBQUM7UUFDN0QsWUFBTyxHQUFRO1lBQ2IsT0FBTyxFQUFFLGlCQUFpQjtZQUMxQixlQUFlLEVBQUUsSUFBSTtZQUNyQixTQUFTLEVBQUUsbUNBQW1DO1NBQy9DLENBQUM7SUFJRSxDQUFDO0lBRUwsUUFBUTtRQUNOLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO0lBQzVCLENBQUM7SUFFRCxrQkFBa0I7UUFDaEIsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsOEJBQThCLEVBQUUsRUFBRSxNQUFNLGtDQUFPLElBQUksQ0FBQyxPQUFPLEdBQUssSUFBSSxDQUFDLFNBQVMsQ0FBRSxFQUFFLENBQUM7YUFDOUYsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsQ0FBQzthQUMxQixTQUFTLENBQUMsQ0FBQyxNQUFXLEVBQUUsRUFBRTtZQUN6QixJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUM1RCxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksR0FBRyxNQUFNLENBQUMsWUFBWSxDQUFDO1lBQzFDLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxHQUFHLE1BQU0sQ0FBQyxTQUFTLENBQUM7UUFDN0MsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLEVBQUU7WUFDakQsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLElBQUksQ0FBQyxDQUFDO1lBQ3pCLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO1NBQzNCO0lBQ0gsQ0FBQztJQUVELFNBQVMsQ0FBQyxHQUFRO1FBQ2hCLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGlDQUFpQyxFQUFFLEVBQUUsYUFBYSxFQUFFLEdBQUcsYUFBSCxHQUFHLHVCQUFILEdBQUcsQ0FBRSxFQUFFLEVBQUUsQ0FBQzthQUMxRSxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxDQUFDO2FBQzFCLFNBQVMsQ0FBQyxDQUFDLE1BQVcsRUFBRSxFQUFFO1lBQ3pCLEdBQUcsQ0FBQyx5QkFBeUIsR0FBRyxNQUFNLGFBQU4sTUFBTSx1QkFBTixNQUFNLENBQUUsSUFBSSxDQUFDO1FBQy9DLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVELFdBQVcsQ0FBQyxHQUFROztRQUNsQixJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxnQ0FBZ0MsTUFBQSxHQUFHLGFBQUgsR0FBRyx1QkFBSCxHQUFHLENBQUUseUJBQXlCLDBDQUFFLEVBQUUsRUFBRSxDQUFDO2FBQ25GLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLENBQUM7YUFDMUIsU0FBUyxDQUFDLENBQUMsQ0FBTSxFQUFFLEVBQUU7WUFDcEIsR0FBRyxDQUFDLHlCQUF5QixHQUFHLElBQUksQ0FBQztRQUN2QyxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFHRCxNQUFNO1FBQ0osSUFBSSxDQUFDLGFBQWEsR0FBRyxFQUFFLENBQUM7UUFDeEIsSUFBSSxDQUFDLFNBQVMsR0FBRyxFQUFFLElBQUksRUFBRSxDQUFDLEVBQUUsT0FBTyxFQUFFLEVBQUUsRUFBRSxRQUFRLEVBQUUsQ0FBQyxFQUFFLENBQUM7UUFDdkQsSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUM7SUFDNUIsQ0FBQztJQUVELFdBQVc7UUFDVCx5QkFBeUI7SUFDM0IsQ0FBQztDQUVGLENBQUE7O1lBbkVBLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsaUNBQWlDO2dCQUMzQyxrdENBQTJEOzthQUU1RDs7O1lBUlEsV0FBVzs7QUFTUCxpQ0FBaUM7SUFON0MsWUFBWSxFQUFFO0dBTUYsaUNBQWlDLENBOEQ3QztTQTlEWSxpQ0FBaUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgVW50aWxEZXN0cm95LCB1bnRpbERlc3Ryb3llZCB9IGZyb20gJ0BuZ25lYXQvdW50aWwtZGVzdHJveSc7XG5pbXBvcnQgeyBIdHRwU2VydmljZSB9IGZyb20gJy4uLy4uL2NvcmUvaHR0cC5zZXJ2aWNlJztcbmltcG9ydCB7IFBhZ2VFdmVudCB9IGZyb20gJy4uLy4uL2RhdGEtdGFibGUvZGF0YS10YWJsZS5tb2RlbCc7XG5cbkBVbnRpbERlc3Ryb3koKVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXBwLWVtYWlsLXN1YnNjcmlwdGlvbi1mb3ItdXNlcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9lbWFpbC1zdWJzY3JpcHRpb24tZm9yLXVzZXIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9lbWFpbC1zdWJzY3JpcHRpb24tZm9yLXVzZXIuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBFbWFpbFN1YnNjcmlwdGlvbkZvclVzZXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuXG4gIHN1YnNjcmlwdGlvbnM6IGFueVtdID0gW107XG4gIHBhZ2VFdmVudDogUGFnZUV2ZW50ID0geyBwYWdlOiAxLCBwZXJQYWdlOiAyNSwgbGFzdFBhZ2U6IDEgfTtcbiAgZmlsdGVyczogYW55ID0ge1xuICAgIHNvcnRfYnk6ICdjcmVhdGVkX2F0fGRlc2MnLFxuICAgIGlzTG9hZFJlbGF0aW9uczogdHJ1ZSxcbiAgICByZWxhdGlvbnM6ICdmcmVxdWVuY3ksY3VycmVudFVzZXJTdWJzY3JpcHRpb24nXG4gIH07XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBodHRwOiBIdHRwU2VydmljZVxuICApIHsgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuZmV0Y2hTdWJzY3JpcHRpb25zKCk7XG4gIH1cblxuICBmZXRjaFN1YnNjcmlwdGlvbnMoKSB7XG4gICAgdGhpcy5odHRwLmdldChgYXBpL2VtYWlsLXN1YnNjcmlwdGlvbi10eXBlc2AsIHsgcGFyYW1zOiB7IC4uLnRoaXMuZmlsdGVycywgLi4udGhpcy5wYWdlRXZlbnQgfSB9KVxuICAgICAgLnBpcGUodW50aWxEZXN0cm95ZWQodGhpcykpXG4gICAgICAuc3Vic2NyaWJlKChyZXN1bHQ6IGFueSkgPT4ge1xuICAgICAgICB0aGlzLnN1YnNjcmlwdGlvbnMgPSB0aGlzLnN1YnNjcmlwdGlvbnMuY29uY2F0KHJlc3VsdC5kYXRhKTtcbiAgICAgICAgdGhpcy5wYWdlRXZlbnQucGFnZSA9IHJlc3VsdC5jdXJyZW50X3BhZ2U7XG4gICAgICAgIHRoaXMucGFnZUV2ZW50Lmxhc3RQYWdlID0gcmVzdWx0Lmxhc3RfcGFnZTtcbiAgICAgIH0pO1xuICB9XG5cbiAgb25TY3JvbGwoKSB7XG4gICAgaWYgKHRoaXMucGFnZUV2ZW50Lmxhc3RQYWdlID4gdGhpcy5wYWdlRXZlbnQucGFnZSkge1xuICAgICAgdGhpcy5wYWdlRXZlbnQucGFnZSArPSAxO1xuICAgICAgdGhpcy5mZXRjaFN1YnNjcmlwdGlvbnMoKTtcbiAgICB9XG4gIH1cblxuICBzdWJzY3JpYmUoc3ViOiBhbnkpIHtcbiAgICB0aGlzLmh0dHAucG9zdChgYXBpL2VtYWlsLXN1YnNjcmlwdGlvbi1mb3ItdXNlcmAsIHsgZW1haWxfdHlwZV9pZDogc3ViPy5pZCB9KVxuICAgICAgLnBpcGUodW50aWxEZXN0cm95ZWQodGhpcykpXG4gICAgICAuc3Vic2NyaWJlKChyZXN1bHQ6IGFueSkgPT4ge1xuICAgICAgICBzdWIuY3VycmVudF91c2VyX3N1YnNjcmlwdGlvbiA9IHJlc3VsdD8uaXRlbTtcbiAgICAgIH0pO1xuICB9XG5cbiAgdW5zdWJzY3JpYmUoc3ViOiBhbnkpIHtcbiAgICB0aGlzLmh0dHAuZGVsZXRlKGBhcGkvZW1haWwtc3Vic2NyaXB0aW9uLXVzZXJzLyR7c3ViPy5jdXJyZW50X3VzZXJfc3Vic2NyaXB0aW9uPy5pZH1gKVxuICAgICAgLnBpcGUodW50aWxEZXN0cm95ZWQodGhpcykpXG4gICAgICAuc3Vic2NyaWJlKChfOiBhbnkpID0+IHtcbiAgICAgICAgc3ViLmN1cnJlbnRfdXNlcl9zdWJzY3JpcHRpb24gPSBudWxsO1xuICAgICAgfSk7XG4gIH1cblxuXG4gIHJlbG9hZCgpIHtcbiAgICB0aGlzLnN1YnNjcmlwdGlvbnMgPSBbXTtcbiAgICB0aGlzLnBhZ2VFdmVudCA9IHsgcGFnZTogMSwgcGVyUGFnZTogMjUsIGxhc3RQYWdlOiAxIH07XG4gICAgdGhpcy5mZXRjaFN1YnNjcmlwdGlvbnMoKTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIC8vVW50aWwgZGVzdHJveWVkIHVzZXMgaXRcbiAgfVxuXG59XG4iXX0=
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { NgModule } from '@angular/core';
|
|
2
|
+
import { CommonModule } from '@angular/common';
|
|
3
|
+
import { EmailSubscriptionForUserRoutingModule } from './email-subscription-for-user-routing.module';
|
|
4
|
+
import { EmailSubscriptionForUserComponent } from './email-subscription-for-user.component';
|
|
5
|
+
import { InfiniteScrollModule } from 'ngx-infinite-scroll';
|
|
6
|
+
import { FlexLayoutModule } from '@angular/flex-layout';
|
|
7
|
+
import { MaterialModule } from '../../material.module';
|
|
8
|
+
export class EmailSubscriptionForUserModule {
|
|
9
|
+
}
|
|
10
|
+
EmailSubscriptionForUserModule.decorators = [
|
|
11
|
+
{ type: NgModule, args: [{
|
|
12
|
+
declarations: [EmailSubscriptionForUserComponent],
|
|
13
|
+
imports: [
|
|
14
|
+
CommonModule,
|
|
15
|
+
InfiniteScrollModule,
|
|
16
|
+
MaterialModule,
|
|
17
|
+
FlexLayoutModule,
|
|
18
|
+
EmailSubscriptionForUserRoutingModule
|
|
19
|
+
],
|
|
20
|
+
exports: [EmailSubscriptionForUserComponent]
|
|
21
|
+
},] }
|
|
22
|
+
];
|
|
23
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW1haWwtc3Vic2NyaXB0aW9uLWZvci11c2VyLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC10ZWNobGlmeS1jb3JlL3NyYy9saWIvZW1haWwtc3Vic2NyaXB0aW9uL2VtYWlsLXN1YnNjcmlwdGlvbi1mb3ItdXNlci9lbWFpbC1zdWJzY3JpcHRpb24tZm9yLXVzZXIubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRS9DLE9BQU8sRUFBRSxxQ0FBcUMsRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBQ3JHLE9BQU8sRUFBRSxpQ0FBaUMsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBQzVGLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQzNELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQWN2RCxNQUFNLE9BQU8sOEJBQThCOzs7WUFYMUMsUUFBUSxTQUFDO2dCQUNSLFlBQVksRUFBRSxDQUFDLGlDQUFpQyxDQUFDO2dCQUNqRCxPQUFPLEVBQUU7b0JBQ1AsWUFBWTtvQkFDWixvQkFBb0I7b0JBQ3BCLGNBQWM7b0JBQ2QsZ0JBQWdCO29CQUNoQixxQ0FBcUM7aUJBQ3RDO2dCQUNELE9BQU8sRUFBRSxDQUFDLGlDQUFpQyxDQUFDO2FBQzdDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5cbmltcG9ydCB7IEVtYWlsU3Vic2NyaXB0aW9uRm9yVXNlclJvdXRpbmdNb2R1bGUgfSBmcm9tICcuL2VtYWlsLXN1YnNjcmlwdGlvbi1mb3ItdXNlci1yb3V0aW5nLm1vZHVsZSc7XG5pbXBvcnQgeyBFbWFpbFN1YnNjcmlwdGlvbkZvclVzZXJDb21wb25lbnQgfSBmcm9tICcuL2VtYWlsLXN1YnNjcmlwdGlvbi1mb3ItdXNlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgSW5maW5pdGVTY3JvbGxNb2R1bGUgfSBmcm9tICduZ3gtaW5maW5pdGUtc2Nyb2xsJztcbmltcG9ydCB7IEZsZXhMYXlvdXRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mbGV4LWxheW91dCc7XG5pbXBvcnQgeyBNYXRlcmlhbE1vZHVsZSB9IGZyb20gJy4uLy4uL21hdGVyaWFsLm1vZHVsZSc7XG5cblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbRW1haWxTdWJzY3JpcHRpb25Gb3JVc2VyQ29tcG9uZW50XSxcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBJbmZpbml0ZVNjcm9sbE1vZHVsZSxcbiAgICBNYXRlcmlhbE1vZHVsZSxcbiAgICBGbGV4TGF5b3V0TW9kdWxlLFxuICAgIEVtYWlsU3Vic2NyaXB0aW9uRm9yVXNlclJvdXRpbmdNb2R1bGVcbiAgXSxcbiAgZXhwb3J0czogW0VtYWlsU3Vic2NyaXB0aW9uRm9yVXNlckNvbXBvbmVudF1cbn0pXG5leHBvcnQgY2xhc3MgRW1haWxTdWJzY3JpcHRpb25Gb3JVc2VyTW9kdWxlIHsgfVxuIl19
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export * from './email-subscription-for-user.component';
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtdGVjaGxpZnktY29yZS9zcmMvbGliL2VtYWlsLXN1YnNjcmlwdGlvbi9lbWFpbC1zdWJzY3JpcHRpb24tZm9yLXVzZXIvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyx5Q0FBeUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vZW1haWwtc3Vic2NyaXB0aW9uLWZvci11c2VyLmNvbXBvbmVudCc7XG4iXX0=
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { NgModule } from '@angular/core';
|
|
2
|
+
import { RouterModule } from '@angular/router';
|
|
3
|
+
const routes = [];
|
|
4
|
+
export class EmailSubscriptionRoutingModule {
|
|
5
|
+
}
|
|
6
|
+
EmailSubscriptionRoutingModule.decorators = [
|
|
7
|
+
{ type: NgModule, args: [{
|
|
8
|
+
imports: [RouterModule.forChild(routes)],
|
|
9
|
+
exports: [RouterModule]
|
|
10
|
+
},] }
|
|
11
|
+
];
|
|
12
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW1haWwtc3Vic2NyaXB0aW9uLXJvdXRpbmcubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXRlY2hsaWZ5LWNvcmUvc3JjL2xpYi9lbWFpbC1zdWJzY3JpcHRpb24vZW1haWwtc3Vic2NyaXB0aW9uLXJvdXRpbmcubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFVLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRXZELE1BQU0sTUFBTSxHQUFXLEVBQUUsQ0FBQztBQU0xQixNQUFNLE9BQU8sOEJBQThCOzs7WUFKMUMsUUFBUSxTQUFDO2dCQUNSLE9BQU8sRUFBRSxDQUFDLFlBQVksQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUM7Z0JBQ3hDLE9BQU8sRUFBRSxDQUFDLFlBQVksQ0FBQzthQUN4QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSb3V0ZXMsIFJvdXRlck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5cbmNvbnN0IHJvdXRlczogUm91dGVzID0gW107XG5cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFtSb3V0ZXJNb2R1bGUuZm9yQ2hpbGQocm91dGVzKV0sXG4gIGV4cG9ydHM6IFtSb3V0ZXJNb2R1bGVdXG59KVxuZXhwb3J0IGNsYXNzIEVtYWlsU3Vic2NyaXB0aW9uUm91dGluZ01vZHVsZSB7IH1cbiJdfQ==
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { NgModule } from '@angular/core';
|
|
2
|
+
import { RouterModule } from '@angular/router';
|
|
3
|
+
const routes = [];
|
|
4
|
+
export class EmailSubscriptionTypeFormRoutingModule {
|
|
5
|
+
}
|
|
6
|
+
EmailSubscriptionTypeFormRoutingModule.decorators = [
|
|
7
|
+
{ type: NgModule, args: [{
|
|
8
|
+
imports: [RouterModule.forChild(routes)],
|
|
9
|
+
exports: [RouterModule]
|
|
10
|
+
},] }
|
|
11
|
+
];
|
|
12
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW1haWwtc3Vic2NyaXB0aW9uLXR5cGUtZm9ybS1yb3V0aW5nLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC10ZWNobGlmeS1jb3JlL3NyYy9saWIvZW1haWwtc3Vic2NyaXB0aW9uL2VtYWlsLXN1YnNjcmlwdGlvbi10eXBlL2VtYWlsLXN1YnNjcmlwdGlvbi10eXBlLWZvcm0vZW1haWwtc3Vic2NyaXB0aW9uLXR5cGUtZm9ybS1yb3V0aW5nLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBVSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUV2RCxNQUFNLE1BQU0sR0FBVyxFQUFFLENBQUM7QUFNMUIsTUFBTSxPQUFPLHNDQUFzQzs7O1lBSmxELFFBQVEsU0FBQztnQkFDUixPQUFPLEVBQUUsQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDO2dCQUN4QyxPQUFPLEVBQUUsQ0FBQyxZQUFZLENBQUM7YUFDeEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUm91dGVzLCBSb3V0ZXJNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuXG5jb25zdCByb3V0ZXM6IFJvdXRlcyA9IFtdO1xuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbUm91dGVyTW9kdWxlLmZvckNoaWxkKHJvdXRlcyldLFxuICBleHBvcnRzOiBbUm91dGVyTW9kdWxlXVxufSlcbmV4cG9ydCBjbGFzcyBFbWFpbFN1YnNjcmlwdGlvblR5cGVGb3JtUm91dGluZ01vZHVsZSB7IH1cbiJdfQ==
|