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,71 +1,71 @@
|
|
|
1
|
-
import { ErrorHandlerService } from './../../core/error-handler.service';
|
|
2
|
-
import { Component, Input } from '@angular/core';
|
|
3
|
-
import { HttpService } from '../../core/http.service';
|
|
4
|
-
export class ImportHistoryListComponent {
|
|
5
|
-
constructor(errorHandler, http) {
|
|
6
|
-
this.errorHandler = errorHandler;
|
|
7
|
-
this.http = http;
|
|
8
|
-
this.histories = [];
|
|
9
|
-
this.displayedColumns = [
|
|
10
|
-
'index',
|
|
11
|
-
'imported_by',
|
|
12
|
-
'date',
|
|
13
|
-
'no_of_records'
|
|
14
|
-
];
|
|
15
|
-
this.isWorking = false;
|
|
16
|
-
this.pageEvent = { page: 1, perPage: 25, lastPage: 1 };
|
|
17
|
-
}
|
|
18
|
-
ngOnInit() {
|
|
19
|
-
if (this.config.importHistory.isEnabled) {
|
|
20
|
-
this.filter = {
|
|
21
|
-
model_type: this.config.importHistory.type,
|
|
22
|
-
};
|
|
23
|
-
}
|
|
24
|
-
this.loadData();
|
|
25
|
-
}
|
|
26
|
-
loadData() {
|
|
27
|
-
try {
|
|
28
|
-
this.isWorking = true;
|
|
29
|
-
this.http.get(this.config.importHistory.apiUrl, { params: Object.assign(Object.assign({}, this.filter), this.pageEvent) }).subscribe((result) => {
|
|
30
|
-
this.histories = this.histories.concat(result.data);
|
|
31
|
-
this.pageEvent.page = result.current_page;
|
|
32
|
-
this.pageEvent.lastPage = result.last_page;
|
|
33
|
-
});
|
|
34
|
-
}
|
|
35
|
-
catch (error) {
|
|
36
|
-
this.errorHandler.handleError(error);
|
|
37
|
-
}
|
|
38
|
-
finally {
|
|
39
|
-
this.isWorking = false;
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
|
-
onScroll() {
|
|
43
|
-
if (this.pageEvent.lastPage > this.pageEvent.page) {
|
|
44
|
-
this.pageEvent.page += 1;
|
|
45
|
-
this.loadData();
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
reload() {
|
|
49
|
-
this.histories = [];
|
|
50
|
-
this.pageEvent = { page: 1, perPage: 25, lastPage: 1 };
|
|
51
|
-
this.loadData();
|
|
52
|
-
}
|
|
53
|
-
ngOnDestroy() {
|
|
54
|
-
//Until destroyed uses it
|
|
55
|
-
}
|
|
56
|
-
}
|
|
57
|
-
ImportHistoryListComponent.decorators = [
|
|
58
|
-
{ type: Component, args: [{
|
|
59
|
-
selector: 'app-import-history-list',
|
|
60
|
-
template: "<section fxLayout=\"column\">\n <h5 class=\"primary-color py-3\">\n Import History\n </h5>\n <table mat-table [dataSource]=\"histories\" class=\"mat-elevation-z8 w-100\" infi infiniteScroll\n [infiniteScrollDistance]=\"2\" [infiniteScrollThrottle]=\"50\" (scrolled)=\"onScroll()\">\n\n <!-- Index Column -->\n <ng-container matColumnDef=\"index\">\n <th mat-header-cell *matHeaderCellDef> # </th>\n <td mat-cell *matCellDef=\"let element;let i=index\"> {{ i+1 }} </td>\n </ng-container>\n\n <!-- Date Column -->\n <ng-container matColumnDef=\"date\">\n <th mat-header-cell *matHeaderCellDef> Date </th>\n <td mat-cell *matCellDef=\"let element\"> {{element?.created_at | date:'medium'}} </td>\n </ng-container>\n\n <!-- Imported By Column -->\n <ng-container matColumnDef=\"imported_by\">\n <th mat-header-cell *matHeaderCellDef> Imported By </th>\n <td mat-cell *matCellDef=\"let element\"> {{element?.creator?.name}} </td>\n </ng-container>\n\n <!-- No of records Column -->\n <ng-container matColumnDef=\"no_of_records\">\n <th mat-header-cell *matHeaderCellDef> # of Records </th>\n <td mat-cell *matCellDef=\"let element\">\n <a *ngIf=\"config.viewRouterLink\" href=\"javascript:;\"\n [routerLink]=\"[config.viewRouterLink, {import_id: element?.id}]\">\n {{element?.no_of_records}}\n </a>\n <span *ngIf=\"!config.viewRouterLink\">\n {{element?.no_of_records}}\n </span>\n </td>\n </ng-container>\n\n <tr mat-header-row *matHeaderRowDef=\"displayedColumns\"></tr>\n <tr mat-row *matRowDef=\"let row; columns: displayedColumns;\"></tr>\n </table>\n</section>\n",
|
|
61
|
-
styles: [""]
|
|
62
|
-
},] }
|
|
63
|
-
];
|
|
64
|
-
ImportHistoryListComponent.ctorParameters = () => [
|
|
65
|
-
{ type: ErrorHandlerService },
|
|
66
|
-
{ type: HttpService }
|
|
67
|
-
];
|
|
68
|
-
ImportHistoryListComponent.propDecorators = {
|
|
69
|
-
config: [{ type: Input }]
|
|
70
|
-
};
|
|
71
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
import { ErrorHandlerService } from './../../core/error-handler.service';
|
|
2
|
+
import { Component, Input } from '@angular/core';
|
|
3
|
+
import { HttpService } from '../../core/http.service';
|
|
4
|
+
export class ImportHistoryListComponent {
|
|
5
|
+
constructor(errorHandler, http) {
|
|
6
|
+
this.errorHandler = errorHandler;
|
|
7
|
+
this.http = http;
|
|
8
|
+
this.histories = [];
|
|
9
|
+
this.displayedColumns = [
|
|
10
|
+
'index',
|
|
11
|
+
'imported_by',
|
|
12
|
+
'date',
|
|
13
|
+
'no_of_records'
|
|
14
|
+
];
|
|
15
|
+
this.isWorking = false;
|
|
16
|
+
this.pageEvent = { page: 1, perPage: 25, lastPage: 1 };
|
|
17
|
+
}
|
|
18
|
+
ngOnInit() {
|
|
19
|
+
if (this.config.importHistory.isEnabled) {
|
|
20
|
+
this.filter = {
|
|
21
|
+
model_type: this.config.importHistory.type,
|
|
22
|
+
};
|
|
23
|
+
}
|
|
24
|
+
this.loadData();
|
|
25
|
+
}
|
|
26
|
+
loadData() {
|
|
27
|
+
try {
|
|
28
|
+
this.isWorking = true;
|
|
29
|
+
this.http.get(this.config.importHistory.apiUrl, { params: Object.assign(Object.assign({}, this.filter), this.pageEvent) }).subscribe((result) => {
|
|
30
|
+
this.histories = this.histories.concat(result.data);
|
|
31
|
+
this.pageEvent.page = result.current_page;
|
|
32
|
+
this.pageEvent.lastPage = result.last_page;
|
|
33
|
+
});
|
|
34
|
+
}
|
|
35
|
+
catch (error) {
|
|
36
|
+
this.errorHandler.handleError(error);
|
|
37
|
+
}
|
|
38
|
+
finally {
|
|
39
|
+
this.isWorking = false;
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
onScroll() {
|
|
43
|
+
if (this.pageEvent.lastPage > this.pageEvent.page) {
|
|
44
|
+
this.pageEvent.page += 1;
|
|
45
|
+
this.loadData();
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
reload() {
|
|
49
|
+
this.histories = [];
|
|
50
|
+
this.pageEvent = { page: 1, perPage: 25, lastPage: 1 };
|
|
51
|
+
this.loadData();
|
|
52
|
+
}
|
|
53
|
+
ngOnDestroy() {
|
|
54
|
+
//Until destroyed uses it
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
ImportHistoryListComponent.decorators = [
|
|
58
|
+
{ type: Component, args: [{
|
|
59
|
+
selector: 'app-import-history-list',
|
|
60
|
+
template: "<section fxLayout=\"column\">\r\n <h5 class=\"primary-color py-3\">\r\n Import History\r\n </h5>\r\n <table mat-table [dataSource]=\"histories\" class=\"mat-elevation-z8 w-100\" infi infiniteScroll\r\n [infiniteScrollDistance]=\"2\" [infiniteScrollThrottle]=\"50\" (scrolled)=\"onScroll()\">\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 element;let i=index\"> {{ i+1 }} </td>\r\n </ng-container>\r\n\r\n <!-- Date Column -->\r\n <ng-container matColumnDef=\"date\">\r\n <th mat-header-cell *matHeaderCellDef> Date </th>\r\n <td mat-cell *matCellDef=\"let element\"> {{element?.created_at | date:'medium'}} </td>\r\n </ng-container>\r\n\r\n <!-- Imported By Column -->\r\n <ng-container matColumnDef=\"imported_by\">\r\n <th mat-header-cell *matHeaderCellDef> Imported By </th>\r\n <td mat-cell *matCellDef=\"let element\"> {{element?.creator?.name}} </td>\r\n </ng-container>\r\n\r\n <!-- No of records Column -->\r\n <ng-container matColumnDef=\"no_of_records\">\r\n <th mat-header-cell *matHeaderCellDef> # of Records </th>\r\n <td mat-cell *matCellDef=\"let element\">\r\n <a *ngIf=\"config.viewRouterLink\" href=\"javascript:;\"\r\n [routerLink]=\"[config.viewRouterLink, {import_id: element?.id}]\">\r\n {{element?.no_of_records}}\r\n </a>\r\n <span *ngIf=\"!config.viewRouterLink\">\r\n {{element?.no_of_records}}\r\n </span>\r\n </td>\r\n </ng-container>\r\n\r\n <tr mat-header-row *matHeaderRowDef=\"displayedColumns\"></tr>\r\n <tr mat-row *matRowDef=\"let row; columns: displayedColumns;\"></tr>\r\n </table>\r\n</section>\r\n",
|
|
61
|
+
styles: [""]
|
|
62
|
+
},] }
|
|
63
|
+
];
|
|
64
|
+
ImportHistoryListComponent.ctorParameters = () => [
|
|
65
|
+
{ type: ErrorHandlerService },
|
|
66
|
+
{ type: HttpService }
|
|
67
|
+
];
|
|
68
|
+
ImportHistoryListComponent.propDecorators = {
|
|
69
|
+
config: [{ type: Input }]
|
|
70
|
+
};
|
|
71
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1wb3J0LWhpc3RvcnktbGlzdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtdGVjaGxpZnktY29yZS9zcmMvbGliL2ltcG9ydC1jc3YvaW1wb3J0LWhpc3RvcnktbGlzdC9pbXBvcnQtaGlzdG9yeS1saXN0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUV6RSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUV6RCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFPdEQsTUFBTSxPQUFPLDBCQUEwQjtJQWNyQyxZQUNVLFlBQWlDLEVBQ2pDLElBQWlCO1FBRGpCLGlCQUFZLEdBQVosWUFBWSxDQUFxQjtRQUNqQyxTQUFJLEdBQUosSUFBSSxDQUFhO1FBYjNCLGNBQVMsR0FBVSxFQUFFLENBQUM7UUFDdEIscUJBQWdCLEdBQWE7WUFDM0IsT0FBTztZQUNQLGFBQWE7WUFDYixNQUFNO1lBQ04sZUFBZTtTQUNoQixDQUFDO1FBQ0YsY0FBUyxHQUFZLEtBQUssQ0FBQztRQUUzQixjQUFTLEdBQWMsRUFBRSxJQUFJLEVBQUUsQ0FBQyxFQUFFLE9BQU8sRUFBRSxFQUFFLEVBQUUsUUFBUSxFQUFFLENBQUMsRUFBRSxDQUFDO0lBTTdELENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxTQUFTLEVBQUU7WUFDdkMsSUFBSSxDQUFDLE1BQU0sR0FBRztnQkFDWixVQUFVLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxhQUFhLENBQUMsSUFBSTthQUMzQyxDQUFDO1NBQ0g7UUFDRCxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDbEIsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJO1lBQ0YsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUM7WUFDdEIsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxhQUFhLENBQUMsTUFBTSxFQUFFLEVBQUUsTUFBTSxrQ0FBTyxJQUFJLENBQUMsTUFBTSxHQUFLLElBQUksQ0FBQyxTQUFTLENBQUUsRUFBRSxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsTUFBVyxFQUFFLEVBQUU7Z0JBQzNILElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO2dCQUNwRCxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksR0FBRyxNQUFNLENBQUMsWUFBWSxDQUFDO2dCQUMxQyxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsR0FBRyxNQUFNLENBQUMsU0FBUyxDQUFDO1lBQzdDLENBQUMsQ0FBQyxDQUFDO1NBQ0o7UUFBQyxPQUFPLEtBQUssRUFBRTtZQUNkLElBQUksQ0FBQyxZQUFZLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUFDO1NBQ3RDO2dCQUNPO1lBQ04sSUFBSSxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUM7U0FDeEI7SUFDSCxDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLEVBQUU7WUFDakQsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLElBQUksQ0FBQyxDQUFDO1lBQ3pCLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztTQUNqQjtJQUNILENBQUM7SUFFRCxNQUFNO1FBQ0osSUFBSSxDQUFDLFNBQVMsR0FBRyxFQUFFLENBQUM7UUFDcEIsSUFBSSxDQUFDLFNBQVMsR0FBRyxFQUFFLElBQUksRUFBRSxDQUFDLEVBQUUsT0FBTyxFQUFFLEVBQUUsRUFBRSxRQUFRLEVBQUUsQ0FBQyxFQUFFLENBQUM7UUFDdkQsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQ2xCLENBQUM7SUFFRCxXQUFXO1FBQ1QseUJBQXlCO0lBQzNCLENBQUM7OztZQWpFRixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLHlCQUF5QjtnQkFDbkMscXhEQUFtRDs7YUFFcEQ7OztZQVZRLG1CQUFtQjtZQUluQixXQUFXOzs7cUJBU2pCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFcnJvckhhbmRsZXJTZXJ2aWNlIH0gZnJvbSAnLi8uLi8uLi9jb3JlL2Vycm9yLWhhbmRsZXIuc2VydmljZSc7XHJcbmltcG9ydCB7IFBhZ2VFdmVudCB9IGZyb20gJy4vLi4vLi4vZGF0YS10YWJsZS9kYXRhLXRhYmxlLm1vZGVsJztcclxuaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEltcG9ydENzdkNvbmZpZyB9IGZyb20gJy4uL2ltcG9ydC1jc3YtY29uZmlnJztcclxuaW1wb3J0IHsgSHR0cFNlcnZpY2UgfSBmcm9tICcuLi8uLi9jb3JlL2h0dHAuc2VydmljZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FwcC1pbXBvcnQtaGlzdG9yeS1saXN0JyxcclxuICB0ZW1wbGF0ZVVybDogJy4vaW1wb3J0LWhpc3RvcnktbGlzdC5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vaW1wb3J0LWhpc3RvcnktbGlzdC5jb21wb25lbnQuc2NzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBJbXBvcnRIaXN0b3J5TGlzdENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcblxyXG4gIEBJbnB1dCgpIGNvbmZpZzogSW1wb3J0Q3N2Q29uZmlnO1xyXG4gIGhpc3RvcmllczogYW55W10gPSBbXTtcclxuICBkaXNwbGF5ZWRDb2x1bW5zOiBzdHJpbmdbXSA9IFtcclxuICAgICdpbmRleCcsXHJcbiAgICAnaW1wb3J0ZWRfYnknLFxyXG4gICAgJ2RhdGUnLFxyXG4gICAgJ25vX29mX3JlY29yZHMnXHJcbiAgXTtcclxuICBpc1dvcmtpbmc6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBmaWx0ZXI6IGFueTtcclxuICBwYWdlRXZlbnQ6IFBhZ2VFdmVudCA9IHsgcGFnZTogMSwgcGVyUGFnZTogMjUsIGxhc3RQYWdlOiAxIH07XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBlcnJvckhhbmRsZXI6IEVycm9ySGFuZGxlclNlcnZpY2UsXHJcbiAgICBwcml2YXRlIGh0dHA6IEh0dHBTZXJ2aWNlLFxyXG4gICkge1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICBpZiAodGhpcy5jb25maWcuaW1wb3J0SGlzdG9yeS5pc0VuYWJsZWQpIHtcclxuICAgICAgdGhpcy5maWx0ZXIgPSB7XHJcbiAgICAgICAgbW9kZWxfdHlwZTogdGhpcy5jb25maWcuaW1wb3J0SGlzdG9yeS50eXBlLFxyXG4gICAgICB9O1xyXG4gICAgfVxyXG4gICAgdGhpcy5sb2FkRGF0YSgpO1xyXG4gIH1cclxuXHJcbiAgbG9hZERhdGEoKSB7XHJcbiAgICB0cnkge1xyXG4gICAgICB0aGlzLmlzV29ya2luZyA9IHRydWU7XHJcbiAgICAgIHRoaXMuaHR0cC5nZXQodGhpcy5jb25maWcuaW1wb3J0SGlzdG9yeS5hcGlVcmwsIHsgcGFyYW1zOiB7IC4uLnRoaXMuZmlsdGVyLCAuLi50aGlzLnBhZ2VFdmVudCB9IH0pLnN1YnNjcmliZSgocmVzdWx0OiBhbnkpID0+IHtcclxuICAgICAgICB0aGlzLmhpc3RvcmllcyA9IHRoaXMuaGlzdG9yaWVzLmNvbmNhdChyZXN1bHQuZGF0YSk7XHJcbiAgICAgICAgdGhpcy5wYWdlRXZlbnQucGFnZSA9IHJlc3VsdC5jdXJyZW50X3BhZ2U7XHJcbiAgICAgICAgdGhpcy5wYWdlRXZlbnQubGFzdFBhZ2UgPSByZXN1bHQubGFzdF9wYWdlO1xyXG4gICAgICB9KTtcclxuICAgIH0gY2F0Y2ggKGVycm9yKSB7XHJcbiAgICAgIHRoaXMuZXJyb3JIYW5kbGVyLmhhbmRsZUVycm9yKGVycm9yKTtcclxuICAgIH1cclxuICAgIGZpbmFsbHkge1xyXG4gICAgICB0aGlzLmlzV29ya2luZyA9IGZhbHNlO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgb25TY3JvbGwoKSB7XHJcbiAgICBpZiAodGhpcy5wYWdlRXZlbnQubGFzdFBhZ2UgPiB0aGlzLnBhZ2VFdmVudC5wYWdlKSB7XHJcbiAgICAgIHRoaXMucGFnZUV2ZW50LnBhZ2UgKz0gMTtcclxuICAgICAgdGhpcy5sb2FkRGF0YSgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcmVsb2FkKCkge1xyXG4gICAgdGhpcy5oaXN0b3JpZXMgPSBbXTtcclxuICAgIHRoaXMucGFnZUV2ZW50ID0geyBwYWdlOiAxLCBwZXJQYWdlOiAyNSwgbGFzdFBhZ2U6IDEgfTtcclxuICAgIHRoaXMubG9hZERhdGEoKTtcclxuICB9XHJcblxyXG4gIG5nT25EZXN0cm95KCkge1xyXG4gICAgLy9VbnRpbCBkZXN0cm95ZWQgdXNlcyBpdFxyXG4gIH1cclxuXHJcbn1cclxuIl19
|
|
@@ -1,19 +1,19 @@
|
|
|
1
|
-
import { Component, Input } from '@angular/core';
|
|
2
|
-
export class ImportSuccessComponent {
|
|
3
|
-
constructor() { }
|
|
4
|
-
ngOnInit() {
|
|
5
|
-
}
|
|
6
|
-
}
|
|
7
|
-
ImportSuccessComponent.decorators = [
|
|
8
|
-
{ type: Component, args: [{
|
|
9
|
-
selector: 'app-import-success',
|
|
10
|
-
template: "<mat-card fxFlex=\"100%\" fxLayoutAlign=\"center center\" class=\"p-0\">\n <mat-card-content class=\"pt-3\" fxLayout=\"column\" fxLayoutAlign=\"center center\">\n <mat-icon style=\"transform: scale(2);\" class=\"text-success\">\n <span class=\"material-icons-outlined\">\n check_circle\n </span>\n </mat-icon>\n <h3 class=\"font-weight-bold p-3 text-success\" fxLayoutAlign=\"center center\">\n {{data?.no_of_recrods}} Records have been successfully imported\n </h3>\n <ng-container *ngIf=\"config.viewRouterLink\">\n <div class=\"text-muted p-3 text-center\" fxLayoutAlign=\"center center\">\n Click the button below to view the imported records.\n </div>\n <div class=\"text-muted p-3 text-center\" fxLayoutAlign=\"center center\">\n <button type=\"button\" mat-raised-button [routerLink]=\"[config.viewRouterLink, {import_id: data?.import_id}]\">\n View Imported Records\n </button>\n </div>\n </ng-container>\n </mat-card-content>\n</mat-card>\n",
|
|
11
|
-
styles: [""]
|
|
12
|
-
},] }
|
|
13
|
-
];
|
|
14
|
-
ImportSuccessComponent.ctorParameters = () => [];
|
|
15
|
-
ImportSuccessComponent.propDecorators = {
|
|
16
|
-
data: [{ type: Input }],
|
|
17
|
-
config: [{ type: Input }]
|
|
18
|
-
};
|
|
19
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
import { Component, Input } from '@angular/core';
|
|
2
|
+
export class ImportSuccessComponent {
|
|
3
|
+
constructor() { }
|
|
4
|
+
ngOnInit() {
|
|
5
|
+
}
|
|
6
|
+
}
|
|
7
|
+
ImportSuccessComponent.decorators = [
|
|
8
|
+
{ type: Component, args: [{
|
|
9
|
+
selector: 'app-import-success',
|
|
10
|
+
template: "<mat-card fxFlex=\"100%\" fxLayoutAlign=\"center center\" class=\"p-0\">\r\n <mat-card-content class=\"pt-3\" fxLayout=\"column\" fxLayoutAlign=\"center center\">\r\n <mat-icon style=\"transform: scale(2);\" class=\"text-success\">\r\n <span class=\"material-icons-outlined\">\r\n check_circle\r\n </span>\r\n </mat-icon>\r\n <h3 class=\"font-weight-bold p-3 text-success\" fxLayoutAlign=\"center center\">\r\n {{data?.no_of_recrods}} Records have been successfully imported\r\n </h3>\r\n <ng-container *ngIf=\"config.viewRouterLink\">\r\n <div class=\"text-muted p-3 text-center\" fxLayoutAlign=\"center center\">\r\n Click the button below to view the imported records.\r\n </div>\r\n <div class=\"text-muted p-3 text-center\" fxLayoutAlign=\"center center\">\r\n <button type=\"button\" mat-raised-button [routerLink]=\"[config.viewRouterLink, {import_id: data?.import_id}]\">\r\n View Imported Records\r\n </button>\r\n </div>\r\n </ng-container>\r\n </mat-card-content>\r\n</mat-card>\r\n",
|
|
11
|
+
styles: [""]
|
|
12
|
+
},] }
|
|
13
|
+
];
|
|
14
|
+
ImportSuccessComponent.ctorParameters = () => [];
|
|
15
|
+
ImportSuccessComponent.propDecorators = {
|
|
16
|
+
data: [{ type: Input }],
|
|
17
|
+
config: [{ type: Input }]
|
|
18
|
+
};
|
|
19
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1wb3J0LXN1Y2Nlc3MuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXRlY2hsaWZ5LWNvcmUvc3JjL2xpYi9pbXBvcnQtY3N2L2ltcG9ydC1zdWNjZXNzL2ltcG9ydC1zdWNjZXNzLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBVSxNQUFNLGVBQWUsQ0FBQztBQVF6RCxNQUFNLE9BQU8sc0JBQXNCO0lBR2pDLGdCQUFnQixDQUFDO0lBRWpCLFFBQVE7SUFDUixDQUFDOzs7WUFYRixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLG9CQUFvQjtnQkFDOUIseWtDQUE4Qzs7YUFFL0M7Ozs7bUJBRUUsS0FBSztxQkFDTCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEltcG9ydENzdkNvbmZpZyB9IGZyb20gJy4uL2ltcG9ydC1jc3YtY29uZmlnJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYXBwLWltcG9ydC1zdWNjZXNzJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vaW1wb3J0LXN1Y2Nlc3MuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2ltcG9ydC1zdWNjZXNzLmNvbXBvbmVudC5zY3NzJ11cclxufSlcclxuZXhwb3J0IGNsYXNzIEltcG9ydFN1Y2Nlc3NDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG4gIEBJbnB1dCgpIGRhdGE6IGFueTtcclxuICBASW5wdXQoKSBjb25maWc6IEltcG9ydENzdkNvbmZpZztcclxuICBjb25zdHJ1Y3RvcigpIHsgfVxyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICB9XHJcblxyXG59XHJcbiJdfQ==
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export * from './loader.component';
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
export * from './loader.component';
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtdGVjaGxpZnktY29yZS9zcmMvbGliL2xvYWRlci9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLG9CQUFvQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9sb2FkZXIuY29tcG9uZW50JztcclxuIl19
|
|
@@ -1,22 +1,22 @@
|
|
|
1
|
-
import { Component, Input } from '@angular/core';
|
|
2
|
-
export class LoaderComponent {
|
|
3
|
-
constructor() {
|
|
4
|
-
this.isLoading = false;
|
|
5
|
-
this.size = 0.6;
|
|
6
|
-
}
|
|
7
|
-
ngOnInit() { }
|
|
8
|
-
}
|
|
9
|
-
LoaderComponent.decorators = [
|
|
10
|
-
{ type: Component, args: [{
|
|
11
|
-
selector: 'app-loader',
|
|
12
|
-
template: "<div [hidden]=\"!isLoading\">\n <mat-progress-spinner mode=\"indeterminate\" [strokeWidth]=\"2\" [diameter]=\"32 * size\"></mat-progress-spinner>\n <span class=\"message\">{{message}}</span>\n</div>\n",
|
|
13
|
-
styles: [".mat-progress-spinner{display:inline-block;vertical-align:middle}.message{margin-left:.5em}"]
|
|
14
|
-
},] }
|
|
15
|
-
];
|
|
16
|
-
LoaderComponent.ctorParameters = () => [];
|
|
17
|
-
LoaderComponent.propDecorators = {
|
|
18
|
-
isLoading: [{ type: Input }],
|
|
19
|
-
size: [{ type: Input }],
|
|
20
|
-
message: [{ type: Input }]
|
|
21
|
-
};
|
|
22
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
import { Component, Input } from '@angular/core';
|
|
2
|
+
export class LoaderComponent {
|
|
3
|
+
constructor() {
|
|
4
|
+
this.isLoading = false;
|
|
5
|
+
this.size = 0.6;
|
|
6
|
+
}
|
|
7
|
+
ngOnInit() { }
|
|
8
|
+
}
|
|
9
|
+
LoaderComponent.decorators = [
|
|
10
|
+
{ type: Component, args: [{
|
|
11
|
+
selector: 'app-loader',
|
|
12
|
+
template: "<div [hidden]=\"!isLoading\">\r\n <mat-progress-spinner mode=\"indeterminate\" [strokeWidth]=\"2\" [diameter]=\"32 * size\"></mat-progress-spinner>\r\n <span class=\"message\">{{message}}</span>\r\n</div>\r\n",
|
|
13
|
+
styles: [".mat-progress-spinner{display:inline-block;vertical-align:middle}.message{margin-left:.5em}"]
|
|
14
|
+
},] }
|
|
15
|
+
];
|
|
16
|
+
LoaderComponent.ctorParameters = () => [];
|
|
17
|
+
LoaderComponent.propDecorators = {
|
|
18
|
+
isLoading: [{ type: Input }],
|
|
19
|
+
size: [{ type: Input }],
|
|
20
|
+
message: [{ type: Input }]
|
|
21
|
+
};
|
|
22
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9hZGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC10ZWNobGlmeS1jb3JlL3NyYy9saWIvbG9hZGVyL2xvYWRlci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBVSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFPekQsTUFBTSxPQUFPLGVBQWU7SUFNMUI7UUFKUyxjQUFTLEdBQUcsS0FBSyxDQUFDO1FBQ2xCLFNBQUksR0FBRyxHQUFHLENBQUM7SUFHSixDQUFDO0lBRWpCLFFBQVEsS0FBSyxDQUFDOzs7WUFiZixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLFlBQVk7Z0JBQ3RCLDhOQUFzQzs7YUFFdkM7Ozs7d0JBR0UsS0FBSzttQkFDTCxLQUFLO3NCQUNMLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYXBwLWxvYWRlcicsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2xvYWRlci5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vbG9hZGVyLmNvbXBvbmVudC5zY3NzJ11cclxufSlcclxuZXhwb3J0IGNsYXNzIExvYWRlckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcblxyXG4gIEBJbnB1dCgpIGlzTG9hZGluZyA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIHNpemUgPSAwLjY7XHJcbiAgQElucHV0KCkgbWVzc2FnZTogc3RyaW5nIHwgdW5kZWZpbmVkO1xyXG5cclxuICBjb25zdHJ1Y3RvcigpIHsgfVxyXG5cclxuICBuZ09uSW5pdCgpIHsgfVxyXG5cclxufVxyXG4iXX0=
|
|
@@ -1,21 +1,21 @@
|
|
|
1
|
-
import { NgModule } from '@angular/core';
|
|
2
|
-
import { CommonModule } from '@angular/common';
|
|
3
|
-
import { LoaderComponent } from './loader.component';
|
|
4
|
-
import { MatProgressSpinnerModule } from '@angular/material/progress-spinner';
|
|
5
|
-
export class LoaderModule {
|
|
6
|
-
}
|
|
7
|
-
LoaderModule.decorators = [
|
|
8
|
-
{ type: NgModule, args: [{
|
|
9
|
-
declarations: [
|
|
10
|
-
LoaderComponent
|
|
11
|
-
],
|
|
12
|
-
imports: [
|
|
13
|
-
CommonModule,
|
|
14
|
-
MatProgressSpinnerModule
|
|
15
|
-
],
|
|
16
|
-
exports: [
|
|
17
|
-
LoaderComponent
|
|
18
|
-
]
|
|
19
|
-
},] }
|
|
20
|
-
];
|
|
21
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
import { NgModule } from '@angular/core';
|
|
2
|
+
import { CommonModule } from '@angular/common';
|
|
3
|
+
import { LoaderComponent } from './loader.component';
|
|
4
|
+
import { MatProgressSpinnerModule } from '@angular/material/progress-spinner';
|
|
5
|
+
export class LoaderModule {
|
|
6
|
+
}
|
|
7
|
+
LoaderModule.decorators = [
|
|
8
|
+
{ type: NgModule, args: [{
|
|
9
|
+
declarations: [
|
|
10
|
+
LoaderComponent
|
|
11
|
+
],
|
|
12
|
+
imports: [
|
|
13
|
+
CommonModule,
|
|
14
|
+
MatProgressSpinnerModule
|
|
15
|
+
],
|
|
16
|
+
exports: [
|
|
17
|
+
LoaderComponent
|
|
18
|
+
]
|
|
19
|
+
},] }
|
|
20
|
+
];
|
|
21
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9hZGVyLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC10ZWNobGlmeS1jb3JlL3NyYy9saWIvbG9hZGVyL2xvYWRlci5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3JELE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBYzlFLE1BQU0sT0FBTyxZQUFZOzs7WUFaeEIsUUFBUSxTQUFDO2dCQUNSLFlBQVksRUFBRTtvQkFDWixlQUFlO2lCQUNoQjtnQkFDRCxPQUFPLEVBQUU7b0JBQ1AsWUFBWTtvQkFDWix3QkFBd0I7aUJBQ3pCO2dCQUNELE9BQU8sRUFBRTtvQkFDUCxlQUFlO2lCQUNoQjthQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgTG9hZGVyQ29tcG9uZW50IH0gZnJvbSAnLi9sb2FkZXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgTWF0UHJvZ3Jlc3NTcGlubmVyTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvcHJvZ3Jlc3Mtc3Bpbm5lcic7XHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gIGRlY2xhcmF0aW9uczogW1xyXG4gICAgTG9hZGVyQ29tcG9uZW50XHJcbiAgXSxcclxuICBpbXBvcnRzOiBbXHJcbiAgICBDb21tb25Nb2R1bGUsXHJcbiAgICBNYXRQcm9ncmVzc1NwaW5uZXJNb2R1bGVcclxuICBdLFxyXG4gIGV4cG9ydHM6IFtcclxuICAgIExvYWRlckNvbXBvbmVudFxyXG4gIF1cclxufSlcclxuZXhwb3J0IGNsYXNzIExvYWRlck1vZHVsZSB7IH1cclxuIl19
|
|
@@ -1,20 +1,20 @@
|
|
|
1
|
-
import { NgModule } from '@angular/core';
|
|
2
|
-
import { RouterModule } from '@angular/router';
|
|
3
|
-
import { AuthenticationGuard } from '../core/authentication.guard';
|
|
4
|
-
import { LoginHistoryForUserComponent } from './login-history-for-user.component';
|
|
5
|
-
const routes = [
|
|
6
|
-
{
|
|
7
|
-
path: '',
|
|
8
|
-
component: LoginHistoryForUserComponent,
|
|
9
|
-
canActivate: [AuthenticationGuard]
|
|
10
|
-
},
|
|
11
|
-
];
|
|
12
|
-
export class LoginHistoryForUserRoutingModule {
|
|
13
|
-
}
|
|
14
|
-
LoginHistoryForUserRoutingModule.decorators = [
|
|
15
|
-
{ type: NgModule, args: [{
|
|
16
|
-
imports: [RouterModule.forChild(routes)],
|
|
17
|
-
exports: [RouterModule]
|
|
18
|
-
},] }
|
|
19
|
-
];
|
|
20
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
import { NgModule } from '@angular/core';
|
|
2
|
+
import { RouterModule } from '@angular/router';
|
|
3
|
+
import { AuthenticationGuard } from '../core/authentication.guard';
|
|
4
|
+
import { LoginHistoryForUserComponent } from './login-history-for-user.component';
|
|
5
|
+
const routes = [
|
|
6
|
+
{
|
|
7
|
+
path: '',
|
|
8
|
+
component: LoginHistoryForUserComponent,
|
|
9
|
+
canActivate: [AuthenticationGuard]
|
|
10
|
+
},
|
|
11
|
+
];
|
|
12
|
+
export class LoginHistoryForUserRoutingModule {
|
|
13
|
+
}
|
|
14
|
+
LoginHistoryForUserRoutingModule.decorators = [
|
|
15
|
+
{ type: NgModule, args: [{
|
|
16
|
+
imports: [RouterModule.forChild(routes)],
|
|
17
|
+
exports: [RouterModule]
|
|
18
|
+
},] }
|
|
19
|
+
];
|
|
20
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9naW4taGlzdG9yeS1mb3ItdXNlci1yb3V0aW5nLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC10ZWNobGlmeS1jb3JlL3NyYy9saWIvbG9naW4taGlzdG9yeS1mb3ItdXNlci9sb2dpbi1oaXN0b3J5LWZvci11c2VyLXJvdXRpbmcubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFVLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ25FLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBRWxGLE1BQU0sTUFBTSxHQUFXO0lBQ3JCO1FBQ0UsSUFBSSxFQUFFLEVBQUU7UUFDUixTQUFTLEVBQUUsNEJBQTRCO1FBQ3ZDLFdBQVcsRUFBRSxDQUFDLG1CQUFtQixDQUFDO0tBQ25DO0NBQ0YsQ0FBQztBQU1GLE1BQU0sT0FBTyxnQ0FBZ0M7OztZQUo1QyxRQUFRLFNBQUM7Z0JBQ1IsT0FBTyxFQUFFLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQztnQkFDeEMsT0FBTyxFQUFFLENBQUMsWUFBWSxDQUFDO2FBQ3hCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgUm91dGVzLCBSb3V0ZXJNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xyXG5pbXBvcnQgeyBBdXRoZW50aWNhdGlvbkd1YXJkIH0gZnJvbSAnLi4vY29yZS9hdXRoZW50aWNhdGlvbi5ndWFyZCc7XHJcbmltcG9ydCB7IExvZ2luSGlzdG9yeUZvclVzZXJDb21wb25lbnQgfSBmcm9tICcuL2xvZ2luLWhpc3RvcnktZm9yLXVzZXIuY29tcG9uZW50JztcclxuXHJcbmNvbnN0IHJvdXRlczogUm91dGVzID0gW1xyXG4gIHtcclxuICAgIHBhdGg6ICcnLFxyXG4gICAgY29tcG9uZW50OiBMb2dpbkhpc3RvcnlGb3JVc2VyQ29tcG9uZW50LFxyXG4gICAgY2FuQWN0aXZhdGU6IFtBdXRoZW50aWNhdGlvbkd1YXJkXVxyXG4gIH0sXHJcbl07XHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gIGltcG9ydHM6IFtSb3V0ZXJNb2R1bGUuZm9yQ2hpbGQocm91dGVzKV0sXHJcbiAgZXhwb3J0czogW1JvdXRlck1vZHVsZV1cclxufSlcclxuZXhwb3J0IGNsYXNzIExvZ2luSGlzdG9yeUZvclVzZXJSb3V0aW5nTW9kdWxlIHsgfVxyXG4iXX0=
|
|
@@ -1,88 +1,88 @@
|
|
|
1
|
-
import { __decorate } from "tslib";
|
|
2
|
-
import { Component, Input } from '@angular/core';
|
|
3
|
-
import { UntilDestroy, untilDestroyed } from '@ngneat/until-destroy';
|
|
4
|
-
import { FormBuilder } from '@angular/forms';
|
|
5
|
-
import { debounceTime, distinctUntilChanged } from 'rxjs/operators';
|
|
6
|
-
import { HttpService } from '../core/http.service';
|
|
7
|
-
let LoginHistoryForUserComponent = class LoginHistoryForUserComponent {
|
|
8
|
-
constructor(http, fb) {
|
|
9
|
-
this.http = http;
|
|
10
|
-
this.fb = fb;
|
|
11
|
-
this.loginHistoryList = [];
|
|
12
|
-
this.pageEvent = { page: 1, perPage: 25, lastPage: 1 };
|
|
13
|
-
this.filters = {
|
|
14
|
-
sort_by: 'created_at|desc',
|
|
15
|
-
};
|
|
16
|
-
this.displayedColumns = ['index', 'created_at'];
|
|
17
|
-
this.historyFilterForm = this.fb.group({
|
|
18
|
-
'duration': [''],
|
|
19
|
-
'date_from': [''],
|
|
20
|
-
'date_to': ['']
|
|
21
|
-
});
|
|
22
|
-
}
|
|
23
|
-
ngOnInit() {
|
|
24
|
-
this.filters.user_id = this.userId;
|
|
25
|
-
this.historyFilterForm.valueChanges
|
|
26
|
-
.pipe(debounceTime(500), distinctUntilChanged(), untilDestroyed(this))
|
|
27
|
-
.subscribe((value) => {
|
|
28
|
-
value.date_from = value.date_from ? value.date_from.toISOString() : '';
|
|
29
|
-
value.date_to = value.date_to ? value.date_to.toISOString() : '';
|
|
30
|
-
this.filterChange(value);
|
|
31
|
-
});
|
|
32
|
-
this.initializeData();
|
|
33
|
-
}
|
|
34
|
-
onTimelineChange(range) {
|
|
35
|
-
let date_from = (range === null || range === void 0 ? void 0 : range.date_from) ? new Date(range.date_from) : '';
|
|
36
|
-
let date_to = (range === null || range === void 0 ? void 0 : range.date_to) ? new Date(range.date_to) : '';
|
|
37
|
-
this.historyFilterForm.patchValue({
|
|
38
|
-
date_from,
|
|
39
|
-
date_to
|
|
40
|
-
});
|
|
41
|
-
}
|
|
42
|
-
initializeData() {
|
|
43
|
-
this.http.get(`api/user-login-history`, { params: Object.assign(Object.assign({}, this.filters), this.pageEvent) })
|
|
44
|
-
.pipe(untilDestroyed(this))
|
|
45
|
-
.subscribe((result) => {
|
|
46
|
-
this.loginHistoryList = this.loginHistoryList.concat(result.data);
|
|
47
|
-
this.pageEvent.page = result.current_page;
|
|
48
|
-
this.pageEvent.lastPage = result.last_page;
|
|
49
|
-
});
|
|
50
|
-
}
|
|
51
|
-
filterChange(event) {
|
|
52
|
-
this.filters = Object.assign(Object.assign({}, this.filters), event);
|
|
53
|
-
this.reload();
|
|
54
|
-
}
|
|
55
|
-
onScroll() {
|
|
56
|
-
if (this.pageEvent.lastPage > this.pageEvent.page) {
|
|
57
|
-
this.pageEvent.page += 1;
|
|
58
|
-
this.initializeData();
|
|
59
|
-
}
|
|
60
|
-
}
|
|
61
|
-
reload() {
|
|
62
|
-
this.loginHistoryList = [];
|
|
63
|
-
this.pageEvent = { page: 1, perPage: 25, lastPage: 1 };
|
|
64
|
-
this.initializeData();
|
|
65
|
-
}
|
|
66
|
-
ngOnDestroy() {
|
|
67
|
-
//Until destroyed uses it
|
|
68
|
-
}
|
|
69
|
-
};
|
|
70
|
-
LoginHistoryForUserComponent.decorators = [
|
|
71
|
-
{ type: Component, args: [{
|
|
72
|
-
selector: 'app-login-history-for-user',
|
|
73
|
-
template: "<div class=\"mat-typography m-4\">\n <form [formGroup]=\"historyFilterForm\" fxLayoutAlign=\" start center\">\n <app-timeline-filter formControlName=\"duration\" (selectionChange)=\"onTimelineChange($event)\"></app-timeline-filter>\n </form>\n\n <section>\n <div class=\"scroll-container\" infiniteScroll [infiniteScrollDistance]=\"2\" [infiniteScrollThrottle]=\"50\"\n (scrolled)=\"onScroll()\" [scrollWindow]=\"false\">\n <table mat-table [dataSource]=\"loginHistoryList\" matSort class=\"w-100 mt-1\" multiTemplateDataRows\n id=\"login-history-table\">\n\n <!-- Index Column -->\n <ng-container matColumnDef=\"index\">\n <th mat-header-cell *matHeaderCellDef> # </th>\n <td mat-cell *matCellDef=\"let loginHistory; let i = dataIndex\"> {{ i+1 }} </td>\n </ng-container>\n\n <ng-container matColumnDef=\"created_at\">\n <th mat-header-cell *matHeaderCellDef mat-sort-header> Last Login</th>\n <td mat-cell *matCellDef=\"let loginHistory;\">\n {{loginHistory?.created_at | date:'medium' }}\n </td>\n </ng-container>\n\n <tr mat-header-row *matHeaderRowDef=\"displayedColumns;\"></tr>\n <tr mat-row *matRowDef=\"let row; columns: displayedColumns;\"></tr>\n </table>\n </div>\n\n </section>\n</div>\n",
|
|
74
|
-
styles: [".scroll-container{max-height:800px;overflow-y:auto}"]
|
|
75
|
-
},] }
|
|
76
|
-
];
|
|
77
|
-
LoginHistoryForUserComponent.ctorParameters = () => [
|
|
78
|
-
{ type: HttpService },
|
|
79
|
-
{ type: FormBuilder }
|
|
80
|
-
];
|
|
81
|
-
LoginHistoryForUserComponent.propDecorators = {
|
|
82
|
-
userId: [{ type: Input }]
|
|
83
|
-
};
|
|
84
|
-
LoginHistoryForUserComponent = __decorate([
|
|
85
|
-
UntilDestroy()
|
|
86
|
-
], LoginHistoryForUserComponent);
|
|
87
|
-
export { LoginHistoryForUserComponent };
|
|
88
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
import { __decorate } from "tslib";
|
|
2
|
+
import { Component, Input } from '@angular/core';
|
|
3
|
+
import { UntilDestroy, untilDestroyed } from '@ngneat/until-destroy';
|
|
4
|
+
import { FormBuilder } from '@angular/forms';
|
|
5
|
+
import { debounceTime, distinctUntilChanged } from 'rxjs/operators';
|
|
6
|
+
import { HttpService } from '../core/http.service';
|
|
7
|
+
let LoginHistoryForUserComponent = class LoginHistoryForUserComponent {
|
|
8
|
+
constructor(http, fb) {
|
|
9
|
+
this.http = http;
|
|
10
|
+
this.fb = fb;
|
|
11
|
+
this.loginHistoryList = [];
|
|
12
|
+
this.pageEvent = { page: 1, perPage: 25, lastPage: 1 };
|
|
13
|
+
this.filters = {
|
|
14
|
+
sort_by: 'created_at|desc',
|
|
15
|
+
};
|
|
16
|
+
this.displayedColumns = ['index', 'created_at'];
|
|
17
|
+
this.historyFilterForm = this.fb.group({
|
|
18
|
+
'duration': [''],
|
|
19
|
+
'date_from': [''],
|
|
20
|
+
'date_to': ['']
|
|
21
|
+
});
|
|
22
|
+
}
|
|
23
|
+
ngOnInit() {
|
|
24
|
+
this.filters.user_id = this.userId;
|
|
25
|
+
this.historyFilterForm.valueChanges
|
|
26
|
+
.pipe(debounceTime(500), distinctUntilChanged(), untilDestroyed(this))
|
|
27
|
+
.subscribe((value) => {
|
|
28
|
+
value.date_from = value.date_from ? value.date_from.toISOString() : '';
|
|
29
|
+
value.date_to = value.date_to ? value.date_to.toISOString() : '';
|
|
30
|
+
this.filterChange(value);
|
|
31
|
+
});
|
|
32
|
+
this.initializeData();
|
|
33
|
+
}
|
|
34
|
+
onTimelineChange(range) {
|
|
35
|
+
let date_from = (range === null || range === void 0 ? void 0 : range.date_from) ? new Date(range.date_from) : '';
|
|
36
|
+
let date_to = (range === null || range === void 0 ? void 0 : range.date_to) ? new Date(range.date_to) : '';
|
|
37
|
+
this.historyFilterForm.patchValue({
|
|
38
|
+
date_from,
|
|
39
|
+
date_to
|
|
40
|
+
});
|
|
41
|
+
}
|
|
42
|
+
initializeData() {
|
|
43
|
+
this.http.get(`api/user-login-history`, { params: Object.assign(Object.assign({}, this.filters), this.pageEvent) })
|
|
44
|
+
.pipe(untilDestroyed(this))
|
|
45
|
+
.subscribe((result) => {
|
|
46
|
+
this.loginHistoryList = this.loginHistoryList.concat(result.data);
|
|
47
|
+
this.pageEvent.page = result.current_page;
|
|
48
|
+
this.pageEvent.lastPage = result.last_page;
|
|
49
|
+
});
|
|
50
|
+
}
|
|
51
|
+
filterChange(event) {
|
|
52
|
+
this.filters = Object.assign(Object.assign({}, this.filters), event);
|
|
53
|
+
this.reload();
|
|
54
|
+
}
|
|
55
|
+
onScroll() {
|
|
56
|
+
if (this.pageEvent.lastPage > this.pageEvent.page) {
|
|
57
|
+
this.pageEvent.page += 1;
|
|
58
|
+
this.initializeData();
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
reload() {
|
|
62
|
+
this.loginHistoryList = [];
|
|
63
|
+
this.pageEvent = { page: 1, perPage: 25, lastPage: 1 };
|
|
64
|
+
this.initializeData();
|
|
65
|
+
}
|
|
66
|
+
ngOnDestroy() {
|
|
67
|
+
//Until destroyed uses it
|
|
68
|
+
}
|
|
69
|
+
};
|
|
70
|
+
LoginHistoryForUserComponent.decorators = [
|
|
71
|
+
{ type: Component, args: [{
|
|
72
|
+
selector: 'app-login-history-for-user',
|
|
73
|
+
template: "<div class=\"mat-typography m-4\">\r\n <form [formGroup]=\"historyFilterForm\" fxLayoutAlign=\" start center\">\r\n <app-timeline-filter formControlName=\"duration\" (selectionChange)=\"onTimelineChange($event)\"></app-timeline-filter>\r\n </form>\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]=\"loginHistoryList\" matSort class=\"w-100 mt-1\" multiTemplateDataRows\r\n id=\"login-history-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 loginHistory; let i = dataIndex\"> {{ i+1 }} </td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"created_at\">\r\n <th mat-header-cell *matHeaderCellDef mat-sort-header> Last Login</th>\r\n <td mat-cell *matCellDef=\"let loginHistory;\">\r\n {{loginHistory?.created_at | date:'medium' }}\r\n </td>\r\n </ng-container>\r\n\r\n <tr mat-header-row *matHeaderRowDef=\"displayedColumns;\"></tr>\r\n <tr mat-row *matRowDef=\"let row; columns: displayedColumns;\"></tr>\r\n </table>\r\n </div>\r\n\r\n </section>\r\n</div>\r\n",
|
|
74
|
+
styles: [".scroll-container{max-height:800px;overflow-y:auto}"]
|
|
75
|
+
},] }
|
|
76
|
+
];
|
|
77
|
+
LoginHistoryForUserComponent.ctorParameters = () => [
|
|
78
|
+
{ type: HttpService },
|
|
79
|
+
{ type: FormBuilder }
|
|
80
|
+
];
|
|
81
|
+
LoginHistoryForUserComponent.propDecorators = {
|
|
82
|
+
userId: [{ type: Input }]
|
|
83
|
+
};
|
|
84
|
+
LoginHistoryForUserComponent = __decorate([
|
|
85
|
+
UntilDestroy()
|
|
86
|
+
], LoginHistoryForUserComponent);
|
|
87
|
+
export { LoginHistoryForUserComponent };
|
|
88
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9naW4taGlzdG9yeS1mb3ItdXNlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtdGVjaGxpZnktY29yZS9zcmMvbGliL2xvZ2luLWhpc3RvcnktZm9yLXVzZXIvbG9naW4taGlzdG9yeS1mb3ItdXNlci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBQ3pELE9BQU8sRUFBRSxZQUFZLEVBQUUsY0FBYyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDckUsT0FBTyxFQUFFLFdBQVcsRUFBYSxNQUFNLGdCQUFnQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxZQUFZLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVwRSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7SUFTdEMsNEJBQTRCLFNBQTVCLDRCQUE0QjtJQVd2QyxZQUNVLElBQWlCLEVBQ2pCLEVBQWU7UUFEZixTQUFJLEdBQUosSUFBSSxDQUFhO1FBQ2pCLE9BQUUsR0FBRixFQUFFLENBQWE7UUFYekIscUJBQWdCLEdBQVUsRUFBRSxDQUFDO1FBQzdCLGNBQVMsR0FBYyxFQUFFLElBQUksRUFBRSxDQUFDLEVBQUUsT0FBTyxFQUFFLEVBQUUsRUFBRSxRQUFRLEVBQUUsQ0FBQyxFQUFFLENBQUM7UUFDN0QsWUFBTyxHQUFRO1lBQ2IsT0FBTyxFQUFFLGlCQUFpQjtTQUMzQixDQUFDO1FBRUYscUJBQWdCLEdBQVUsQ0FBQyxPQUFPLEVBQUUsWUFBWSxDQUFDLENBQUM7UUFPaEQsSUFBSSxDQUFDLGlCQUFpQixHQUFHLElBQUksQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDO1lBQ3JDLFVBQVUsRUFBRSxDQUFDLEVBQUUsQ0FBQztZQUNoQixXQUFXLEVBQUUsQ0FBQyxFQUFFLENBQUM7WUFDakIsU0FBUyxFQUFFLENBQUMsRUFBRSxDQUFDO1NBQ2hCLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQztRQUNuQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsWUFBWTthQUNoQyxJQUFJLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxFQUFFLG9CQUFvQixFQUFFLEVBQUUsY0FBYyxDQUFDLElBQUksQ0FBQyxDQUFDO2FBQ3JFLFNBQVMsQ0FBQyxDQUFDLEtBQVUsRUFBRSxFQUFFO1lBQ3hCLEtBQUssQ0FBQyxTQUFTLEdBQUcsS0FBSyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUUsS0FBSyxDQUFDLFNBQWtCLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztZQUNqRixLQUFLLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFFLEtBQUssQ0FBQyxPQUFnQixDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7WUFDM0UsSUFBSSxDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUMzQixDQUFDLENBQUMsQ0FBQztRQUNMLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztJQUN4QixDQUFDO0lBRUQsZ0JBQWdCLENBQUMsS0FBb0I7UUFDbkMsSUFBSSxTQUFTLEdBQUksQ0FBQSxLQUFLLGFBQUwsS0FBSyx1QkFBTCxLQUFLLENBQUUsU0FBUyxFQUFDLENBQUMsQ0FBQyxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztRQUNuRSxJQUFJLE9BQU8sR0FBSSxDQUFBLEtBQUssYUFBTCxLQUFLLHVCQUFMLEtBQUssQ0FBRSxPQUFPLEVBQUMsQ0FBQyxDQUFDLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1FBQzdELElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxVQUFVLENBQUM7WUFDaEMsU0FBUztZQUNULE9BQU87U0FDUixDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsY0FBYztRQUNaLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLHdCQUF3QixFQUFFLEVBQUUsTUFBTSxrQ0FBTyxJQUFJLENBQUMsT0FBTyxHQUFLLElBQUksQ0FBQyxTQUFTLENBQUUsRUFBRSxDQUFDO2FBQ3hGLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLENBQUM7YUFDMUIsU0FBUyxDQUFDLENBQUMsTUFBVyxFQUFFLEVBQUU7WUFDekIsSUFBSSxDQUFDLGdCQUFnQixHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQ2xFLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxHQUFHLE1BQU0sQ0FBQyxZQUFZLENBQUM7WUFDMUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLEdBQUcsTUFBTSxDQUFDLFNBQVMsQ0FBQztRQUM3QyxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFRCxZQUFZLENBQUMsS0FBVTtRQUNyQixJQUFJLENBQUMsT0FBTyxtQ0FDUCxJQUFJLENBQUMsT0FBTyxHQUNaLEtBQUssQ0FDVCxDQUFDO1FBQ0YsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO0lBQ2hCLENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksRUFBRTtZQUNqRCxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksSUFBSSxDQUFDLENBQUM7WUFDekIsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO1NBQ3ZCO0lBQ0gsQ0FBQztJQUdELE1BQU07UUFDSixJQUFJLENBQUMsZ0JBQWdCLEdBQUcsRUFBRSxDQUFDO1FBQzNCLElBQUksQ0FBQyxTQUFTLEdBQUcsRUFBRSxJQUFJLEVBQUUsQ0FBQyxFQUFFLE9BQU8sRUFBRSxFQUFFLEVBQUUsUUFBUSxFQUFFLENBQUMsRUFBRSxDQUFDO1FBQ3ZELElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztJQUN4QixDQUFDO0lBRUQsV0FBVztRQUNULHlCQUF5QjtJQUMzQixDQUFDO0NBRUYsQ0FBQTs7WUFwRkEsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSw0QkFBNEI7Z0JBQ3RDLDBpREFBc0Q7O2FBRXZEOzs7WUFSUSxXQUFXO1lBSFgsV0FBVzs7O3FCQXFCakIsS0FBSzs7QUFUSyw0QkFBNEI7SUFOeEMsWUFBWSxFQUFFO0dBTUYsNEJBQTRCLENBK0V4QztTQS9FWSw0QkFBNEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgVW50aWxEZXN0cm95LCB1bnRpbERlc3Ryb3llZCB9IGZyb20gJ0BuZ25lYXQvdW50aWwtZGVzdHJveSc7XHJcbmltcG9ydCB7IEZvcm1CdWlsZGVyLCBGb3JtR3JvdXAgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IGRlYm91bmNlVGltZSwgZGlzdGluY3RVbnRpbENoYW5nZWQgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7IFBhZ2VFdmVudCB9IGZyb20gJy4uL2RhdGEtdGFibGUvZGF0YS10YWJsZS5tb2RlbCc7XHJcbmltcG9ydCB7IEh0dHBTZXJ2aWNlIH0gZnJvbSAnLi4vY29yZS9odHRwLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBUaW1lbGluZVZhbHVlIH0gZnJvbSAnLi4vdGltZWxpbmUtZmlsdGVyJztcclxuXHJcbkBVbnRpbERlc3Ryb3koKVxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FwcC1sb2dpbi1oaXN0b3J5LWZvci11c2VyJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vbG9naW4taGlzdG9yeS1mb3ItdXNlci5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vbG9naW4taGlzdG9yeS1mb3ItdXNlci5jb21wb25lbnQuc2NzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBMb2dpbkhpc3RvcnlGb3JVc2VyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuXHJcbiAgbG9naW5IaXN0b3J5TGlzdDogYW55W10gPSBbXTtcclxuICBwYWdlRXZlbnQ6IFBhZ2VFdmVudCA9IHsgcGFnZTogMSwgcGVyUGFnZTogMjUsIGxhc3RQYWdlOiAxIH07XHJcbiAgZmlsdGVyczogYW55ID0ge1xyXG4gICAgc29ydF9ieTogJ2NyZWF0ZWRfYXR8ZGVzYycsXHJcbiAgfTtcclxuICBoaXN0b3J5RmlsdGVyRm9ybTogRm9ybUdyb3VwO1xyXG4gIGRpc3BsYXllZENvbHVtbnM6IGFueVtdID0gWydpbmRleCcsICdjcmVhdGVkX2F0J107XHJcbiAgQElucHV0KCkgdXNlcklkOiBhbnk7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBodHRwOiBIdHRwU2VydmljZSxcclxuICAgIHByaXZhdGUgZmI6IEZvcm1CdWlsZGVyLFxyXG4gICkge1xyXG4gICAgdGhpcy5oaXN0b3J5RmlsdGVyRm9ybSA9IHRoaXMuZmIuZ3JvdXAoe1xyXG4gICAgICAnZHVyYXRpb24nOiBbJyddLFxyXG4gICAgICAnZGF0ZV9mcm9tJzogWycnXSxcclxuICAgICAgJ2RhdGVfdG8nOiBbJyddXHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgdGhpcy5maWx0ZXJzLnVzZXJfaWQgPSB0aGlzLnVzZXJJZDtcclxuICAgIHRoaXMuaGlzdG9yeUZpbHRlckZvcm0udmFsdWVDaGFuZ2VzXHJcbiAgICAgIC5waXBlKGRlYm91bmNlVGltZSg1MDApLCBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLCB1bnRpbERlc3Ryb3llZCh0aGlzKSlcclxuICAgICAgLnN1YnNjcmliZSgodmFsdWU6IGFueSkgPT4ge1xyXG4gICAgICAgIHZhbHVlLmRhdGVfZnJvbSA9IHZhbHVlLmRhdGVfZnJvbSA/ICh2YWx1ZS5kYXRlX2Zyb20gYXMgRGF0ZSkudG9JU09TdHJpbmcoKSA6ICcnO1xyXG4gICAgICAgIHZhbHVlLmRhdGVfdG8gPSB2YWx1ZS5kYXRlX3RvID8gKHZhbHVlLmRhdGVfdG8gYXMgRGF0ZSkudG9JU09TdHJpbmcoKSA6ICcnO1xyXG4gICAgICAgIHRoaXMuZmlsdGVyQ2hhbmdlKHZhbHVlKTtcclxuICAgICAgfSk7XHJcbiAgICB0aGlzLmluaXRpYWxpemVEYXRhKCk7XHJcbiAgfVxyXG5cclxuICBvblRpbWVsaW5lQ2hhbmdlKHJhbmdlOiBUaW1lbGluZVZhbHVlKSB7XHJcbiAgICBsZXQgZGF0ZV9mcm9tICA9IHJhbmdlPy5kYXRlX2Zyb20gPyBuZXcgRGF0ZShyYW5nZS5kYXRlX2Zyb20pIDogJyc7XHJcbiAgICBsZXQgZGF0ZV90byAgPSByYW5nZT8uZGF0ZV90byA/IG5ldyBEYXRlKHJhbmdlLmRhdGVfdG8pIDogJyc7XHJcbiAgICB0aGlzLmhpc3RvcnlGaWx0ZXJGb3JtLnBhdGNoVmFsdWUoe1xyXG4gICAgICBkYXRlX2Zyb20sXHJcbiAgICAgIGRhdGVfdG9cclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgaW5pdGlhbGl6ZURhdGEoKSB7XHJcbiAgICB0aGlzLmh0dHAuZ2V0KGBhcGkvdXNlci1sb2dpbi1oaXN0b3J5YCwgeyBwYXJhbXM6IHsgLi4udGhpcy5maWx0ZXJzLCAuLi50aGlzLnBhZ2VFdmVudCB9IH0pXHJcbiAgICAgIC5waXBlKHVudGlsRGVzdHJveWVkKHRoaXMpKVxyXG4gICAgICAuc3Vic2NyaWJlKChyZXN1bHQ6IGFueSkgPT4ge1xyXG4gICAgICAgIHRoaXMubG9naW5IaXN0b3J5TGlzdCA9IHRoaXMubG9naW5IaXN0b3J5TGlzdC5jb25jYXQocmVzdWx0LmRhdGEpO1xyXG4gICAgICAgIHRoaXMucGFnZUV2ZW50LnBhZ2UgPSByZXN1bHQuY3VycmVudF9wYWdlO1xyXG4gICAgICAgIHRoaXMucGFnZUV2ZW50Lmxhc3RQYWdlID0gcmVzdWx0Lmxhc3RfcGFnZTtcclxuICAgICAgfSk7XHJcbiAgfVxyXG5cclxuICBmaWx0ZXJDaGFuZ2UoZXZlbnQ6IGFueSkge1xyXG4gICAgdGhpcy5maWx0ZXJzID0ge1xyXG4gICAgICAuLi50aGlzLmZpbHRlcnMsXHJcbiAgICAgIC4uLmV2ZW50XHJcbiAgICB9O1xyXG4gICAgdGhpcy5yZWxvYWQoKTtcclxuICB9XHJcblxyXG4gIG9uU2Nyb2xsKCkge1xyXG4gICAgaWYgKHRoaXMucGFnZUV2ZW50Lmxhc3RQYWdlID4gdGhpcy5wYWdlRXZlbnQucGFnZSkge1xyXG4gICAgICB0aGlzLnBhZ2VFdmVudC5wYWdlICs9IDE7XHJcbiAgICAgIHRoaXMuaW5pdGlhbGl6ZURhdGEoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG5cclxuICByZWxvYWQoKSB7XHJcbiAgICB0aGlzLmxvZ2luSGlzdG9yeUxpc3QgPSBbXTtcclxuICAgIHRoaXMucGFnZUV2ZW50ID0geyBwYWdlOiAxLCBwZXJQYWdlOiAyNSwgbGFzdFBhZ2U6IDEgfTtcclxuICAgIHRoaXMuaW5pdGlhbGl6ZURhdGEoKTtcclxuICB9XHJcblxyXG4gIG5nT25EZXN0cm95KCkge1xyXG4gICAgLy9VbnRpbCBkZXN0cm95ZWQgdXNlcyBpdFxyXG4gIH1cclxuXHJcbn1cclxuIl19
|