ngx-techlify-core 11.4.8 → 11.4.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +24 -24
- package/bundles/ngx-techlify-core.umd.js +8085 -8047
- package/bundles/ngx-techlify-core.umd.js.map +1 -1
- package/bundles/ngx-techlify-core.umd.min.js +1 -1
- 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/base-model/index.js +4 -4
- package/esm2015/lib/base-model/techlify-form-component.class.js +51 -51
- package/esm2015/lib/base-model/techlify-listing-component.class.js +41 -41
- package/esm2015/lib/base-model/techlify-service.class.js +64 -64
- 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 +147 -138
- package/esm2015/lib/entity-files/entity-file.service.js +42 -42
- package/esm2015/lib/entity-files/entity-files-view-all.component.js +234 -208
- package/esm2015/lib/entity-files/entity-files-view-all.module.js +40 -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 +60 -60
- package/esm2015/public-api.js +96 -96
- package/fesm2015/ngx-techlify-core.js +6941 -6903
- 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/base-model/index.d.ts +3 -3
- package/lib/base-model/techlify-form-component.class.d.ts +43 -43
- package/lib/base-model/techlify-listing-component.class.d.ts +47 -47
- package/lib/base-model/techlify-service.class.d.ts +52 -52
- 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 +38 -34
- package/lib/entity-files/entity-file.service.d.ts +10 -10
- package/lib/entity-files/entity-files-view-all.component.d.ts +51 -45
- 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 +2 -2
- package/public-api.d.ts +92 -92
|
@@ -1,25 +1,25 @@
|
|
|
1
|
-
import { NgModule } from '@angular/core';
|
|
2
|
-
import { CommonModule } from '@angular/common';
|
|
3
|
-
import { TechlifyTaggerTagFormFieldComponent } from './techlify-tagger-tag-form-field.component';
|
|
4
|
-
import { FlexLayoutModule } from '@angular/flex-layout';
|
|
5
|
-
import { ReactiveFormsModule } from '@angular/forms';
|
|
6
|
-
import { MatAutocompleteModule } from '@angular/material/autocomplete';
|
|
7
|
-
import { MaterialModule } from '../material.module';
|
|
8
|
-
export class TechlifyTaggerTagFormFieldModule {
|
|
9
|
-
}
|
|
10
|
-
TechlifyTaggerTagFormFieldModule.decorators = [
|
|
11
|
-
{ type: NgModule, args: [{
|
|
12
|
-
declarations: [
|
|
13
|
-
TechlifyTaggerTagFormFieldComponent
|
|
14
|
-
],
|
|
15
|
-
imports: [
|
|
16
|
-
CommonModule,
|
|
17
|
-
MaterialModule,
|
|
18
|
-
FlexLayoutModule,
|
|
19
|
-
MatAutocompleteModule,
|
|
20
|
-
ReactiveFormsModule
|
|
21
|
-
],
|
|
22
|
-
exports: [TechlifyTaggerTagFormFieldComponent]
|
|
23
|
-
},] }
|
|
24
|
-
];
|
|
25
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
import { NgModule } from '@angular/core';
|
|
2
|
+
import { CommonModule } from '@angular/common';
|
|
3
|
+
import { TechlifyTaggerTagFormFieldComponent } from './techlify-tagger-tag-form-field.component';
|
|
4
|
+
import { FlexLayoutModule } from '@angular/flex-layout';
|
|
5
|
+
import { ReactiveFormsModule } from '@angular/forms';
|
|
6
|
+
import { MatAutocompleteModule } from '@angular/material/autocomplete';
|
|
7
|
+
import { MaterialModule } from '../material.module';
|
|
8
|
+
export class TechlifyTaggerTagFormFieldModule {
|
|
9
|
+
}
|
|
10
|
+
TechlifyTaggerTagFormFieldModule.decorators = [
|
|
11
|
+
{ type: NgModule, args: [{
|
|
12
|
+
declarations: [
|
|
13
|
+
TechlifyTaggerTagFormFieldComponent
|
|
14
|
+
],
|
|
15
|
+
imports: [
|
|
16
|
+
CommonModule,
|
|
17
|
+
MaterialModule,
|
|
18
|
+
FlexLayoutModule,
|
|
19
|
+
MatAutocompleteModule,
|
|
20
|
+
ReactiveFormsModule
|
|
21
|
+
],
|
|
22
|
+
exports: [TechlifyTaggerTagFormFieldComponent]
|
|
23
|
+
},] }
|
|
24
|
+
];
|
|
25
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVjaGxpZnktdGFnZ2VyLXRhZy1mb3JtLWZpZWxkLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC10ZWNobGlmeS1jb3JlL3NyYy9saWIvdGVjaGxpZnktdGFnZ2VyLXRhZy1mb3JtLWZpZWxkL3RlY2hsaWZ5LXRhZ2dlci10YWctZm9ybS1maWVsZC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLG1DQUFtQyxFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFDakcsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDeEQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDckQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDdkUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBaUJwRCxNQUFNLE9BQU8sZ0NBQWdDOzs7WUFiNUMsUUFBUSxTQUFDO2dCQUNSLFlBQVksRUFBRTtvQkFDWixtQ0FBbUM7aUJBQ3BDO2dCQUNELE9BQU8sRUFBRTtvQkFDUCxZQUFZO29CQUNaLGNBQWM7b0JBQ2QsZ0JBQWdCO29CQUNoQixxQkFBcUI7b0JBQ3JCLG1CQUFtQjtpQkFDcEI7Z0JBQ0QsT0FBTyxFQUFFLENBQUMsbUNBQW1DLENBQUM7YUFDL0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IFRlY2hsaWZ5VGFnZ2VyVGFnRm9ybUZpZWxkQ29tcG9uZW50IH0gZnJvbSAnLi90ZWNobGlmeS10YWdnZXItdGFnLWZvcm0tZmllbGQuY29tcG9uZW50JztcbmltcG9ydCB7IEZsZXhMYXlvdXRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mbGV4LWxheW91dCc7XG5pbXBvcnQgeyBSZWFjdGl2ZUZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgTWF0QXV0b2NvbXBsZXRlTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYXV0b2NvbXBsZXRlJztcbmltcG9ydCB7IE1hdGVyaWFsTW9kdWxlIH0gZnJvbSAnLi4vbWF0ZXJpYWwubW9kdWxlJztcblxuXG5cbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogW1xuICAgIFRlY2hsaWZ5VGFnZ2VyVGFnRm9ybUZpZWxkQ29tcG9uZW50XG4gIF0sXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgTWF0ZXJpYWxNb2R1bGUsXG4gICAgRmxleExheW91dE1vZHVsZSxcbiAgICBNYXRBdXRvY29tcGxldGVNb2R1bGUsXG4gICAgUmVhY3RpdmVGb3Jtc01vZHVsZVxuICBdLFxuICBleHBvcnRzOiBbVGVjaGxpZnlUYWdnZXJUYWdGb3JtRmllbGRDb21wb25lbnRdXG59KVxuZXhwb3J0IGNsYXNzIFRlY2hsaWZ5VGFnZ2VyVGFnRm9ybUZpZWxkTW9kdWxlIHsgfVxuIl19
|
|
@@ -1,168 +1,168 @@
|
|
|
1
|
-
var TechlifyTaggerTagSelectorComponent_1;
|
|
2
|
-
import { __decorate } from "tslib";
|
|
3
|
-
import { FocusMonitor } from '@angular/cdk/a11y';
|
|
4
|
-
import { coerceBooleanProperty } from '@angular/cdk/coercion';
|
|
5
|
-
import { Component, ElementRef, Input, Inject, Optional, Self } from '@angular/core';
|
|
6
|
-
import { FormControl, NgControl } from '@angular/forms';
|
|
7
|
-
import { MatFormField, MatFormFieldControl, MAT_FORM_FIELD } from '@angular/material/form-field';
|
|
8
|
-
import { UntilDestroy, untilDestroyed } from '@ngneat/until-destroy';
|
|
9
|
-
import { Subject } from 'rxjs';
|
|
10
|
-
import { HttpService } from '../core/http.service';
|
|
11
|
-
let TechlifyTaggerTagSelectorComponent = TechlifyTaggerTagSelectorComponent_1 = class TechlifyTaggerTagSelectorComponent {
|
|
12
|
-
constructor(_focusMonitor, _elementRef, httpService, _formField, ngControl) {
|
|
13
|
-
this._focusMonitor = _focusMonitor;
|
|
14
|
-
this._elementRef = _elementRef;
|
|
15
|
-
this.httpService = httpService;
|
|
16
|
-
this._formField = _formField;
|
|
17
|
-
this.ngControl = ngControl;
|
|
18
|
-
/**Pass the Categories to filter for a model */
|
|
19
|
-
this.categories = [];
|
|
20
|
-
this.multiple = false;
|
|
21
|
-
this.enableSearch = true;
|
|
22
|
-
this.tagSelectorCtrl = new FormControl();
|
|
23
|
-
this.showAllTags = false;
|
|
24
|
-
this.useSelectButtonStyle = false;
|
|
25
|
-
this.tags = [];
|
|
26
|
-
this.stateChanges = new Subject();
|
|
27
|
-
this.focused = false;
|
|
28
|
-
this.controlType = 'techlify-tagger-selector';
|
|
29
|
-
this.id = `techlify-tagger-selector-${TechlifyTaggerTagSelectorComponent_1.nextId++}`;
|
|
30
|
-
this.onChange = (_) => { };
|
|
31
|
-
this.onTouched = () => { };
|
|
32
|
-
this._required = false;
|
|
33
|
-
this._disabled = false;
|
|
34
|
-
//Set Focus Monitor
|
|
35
|
-
_focusMonitor.monitor(_elementRef, true).subscribe(origin => {
|
|
36
|
-
if (this.focused && !origin) {
|
|
37
|
-
this.onTouched();
|
|
38
|
-
}
|
|
39
|
-
this.focused = !!origin;
|
|
40
|
-
this.stateChanges.next();
|
|
41
|
-
});
|
|
42
|
-
if (this.ngControl != null) {
|
|
43
|
-
this.ngControl.valueAccessor = this;
|
|
44
|
-
}
|
|
45
|
-
}
|
|
46
|
-
get apiUrl() {
|
|
47
|
-
var _a;
|
|
48
|
-
if (this.showAllTags) {
|
|
49
|
-
return 'api/techlify-tagger-tags';
|
|
50
|
-
}
|
|
51
|
-
else if (((_a = this.categories) === null || _a === void 0 ? void 0 : _a.length) > 0) {
|
|
52
|
-
return 'api/techlify-tagger-tags?categories=' + this.categories.join(',');
|
|
53
|
-
}
|
|
54
|
-
else {
|
|
55
|
-
return '';
|
|
56
|
-
}
|
|
57
|
-
}
|
|
58
|
-
//Default Getter and Setters for a Form Field Implementation
|
|
59
|
-
get empty() {
|
|
60
|
-
return this.value.length == 0;
|
|
61
|
-
}
|
|
62
|
-
get shouldLabelFloat() {
|
|
63
|
-
return this.focused || !this.empty;
|
|
64
|
-
}
|
|
65
|
-
get required() {
|
|
66
|
-
return this._required;
|
|
67
|
-
}
|
|
68
|
-
set required(value) {
|
|
69
|
-
this._required = coerceBooleanProperty(value);
|
|
70
|
-
this.stateChanges.next();
|
|
71
|
-
}
|
|
72
|
-
get disabled() {
|
|
73
|
-
return this._disabled;
|
|
74
|
-
}
|
|
75
|
-
set disabled(value) {
|
|
76
|
-
this._disabled = coerceBooleanProperty(value);
|
|
77
|
-
this._disabled ? this.tagSelectorCtrl.disable() : this.tagSelectorCtrl.enable();
|
|
78
|
-
this.stateChanges.next();
|
|
79
|
-
}
|
|
80
|
-
get value() {
|
|
81
|
-
return this._value;
|
|
82
|
-
}
|
|
83
|
-
set value(val) {
|
|
84
|
-
this._value = val;
|
|
85
|
-
this.tagSelectorCtrl.setValue(val);
|
|
86
|
-
this.stateChanges.next();
|
|
87
|
-
}
|
|
88
|
-
get errorState() {
|
|
89
|
-
return this.tagSelectorCtrl.dirty && this.required && (this.value.length == 0);
|
|
90
|
-
}
|
|
91
|
-
get placeholder() {
|
|
92
|
-
return this._placeholder;
|
|
93
|
-
}
|
|
94
|
-
set placeholder(value) {
|
|
95
|
-
this._placeholder = value;
|
|
96
|
-
this.stateChanges.next();
|
|
97
|
-
}
|
|
98
|
-
ngOnInit() {
|
|
99
|
-
if (this.useSelectButtonStyle) {
|
|
100
|
-
this.httpService.get(this.apiUrl)
|
|
101
|
-
.pipe(untilDestroyed(this))
|
|
102
|
-
.subscribe((res) => {
|
|
103
|
-
this.tags = res.data;
|
|
104
|
-
});
|
|
105
|
-
}
|
|
106
|
-
}
|
|
107
|
-
selectionChange(value) {
|
|
108
|
-
this.value = value;
|
|
109
|
-
this._handleInput();
|
|
110
|
-
}
|
|
111
|
-
setDescribedByIds(ids) {
|
|
112
|
-
// Just a empty implementation for Mat Form Field Interface
|
|
113
|
-
}
|
|
114
|
-
onContainerClick() {
|
|
115
|
-
// Just a empty implementation for Mat Form Field Interface
|
|
116
|
-
}
|
|
117
|
-
writeValue(val) {
|
|
118
|
-
this.value = val;
|
|
119
|
-
}
|
|
120
|
-
registerOnChange(fn) {
|
|
121
|
-
this.onChange = fn;
|
|
122
|
-
}
|
|
123
|
-
registerOnTouched(fn) {
|
|
124
|
-
this.onTouched = fn;
|
|
125
|
-
}
|
|
126
|
-
setDisabledState(isDisabled) {
|
|
127
|
-
this.disabled = isDisabled;
|
|
128
|
-
}
|
|
129
|
-
_handleInput() {
|
|
130
|
-
this.onChange(this.value);
|
|
131
|
-
}
|
|
132
|
-
ngOnDestroy() {
|
|
133
|
-
this.stateChanges.complete();
|
|
134
|
-
this._focusMonitor.stopMonitoring(this._elementRef);
|
|
135
|
-
}
|
|
136
|
-
};
|
|
137
|
-
TechlifyTaggerTagSelectorComponent.nextId = 0;
|
|
138
|
-
TechlifyTaggerTagSelectorComponent.decorators = [
|
|
139
|
-
{ type: Component, args: [{
|
|
140
|
-
selector: 'app-techlify-tagger-tag-selector',
|
|
141
|
-
template: "<app-searchable-selector *ngIf=\"apiUrl && !useSelectButtonStyle\" [formControl]=\"tagSelectorCtrl\" [apiUrl]=\"apiUrl\"\
|
|
142
|
-
providers: [{ provide: MatFormFieldControl, useExisting: TechlifyTaggerTagSelectorComponent_1 }],
|
|
143
|
-
styles: [""]
|
|
144
|
-
},] }
|
|
145
|
-
];
|
|
146
|
-
TechlifyTaggerTagSelectorComponent.ctorParameters = () => [
|
|
147
|
-
{ type: FocusMonitor },
|
|
148
|
-
{ type: ElementRef },
|
|
149
|
-
{ type: HttpService },
|
|
150
|
-
{ type: MatFormField, decorators: [{ type: Optional }, { type: Inject, args: [MAT_FORM_FIELD,] }] },
|
|
151
|
-
{ type: NgControl, decorators: [{ type: Optional }, { type: Self }] }
|
|
152
|
-
];
|
|
153
|
-
TechlifyTaggerTagSelectorComponent.propDecorators = {
|
|
154
|
-
categories: [{ type: Input }],
|
|
155
|
-
multiple: [{ type: Input }],
|
|
156
|
-
enableSearch: [{ type: Input }],
|
|
157
|
-
showAllTags: [{ type: Input }],
|
|
158
|
-
useSelectButtonStyle: [{ type: Input }],
|
|
159
|
-
required: [{ type: Input }],
|
|
160
|
-
disabled: [{ type: Input }],
|
|
161
|
-
value: [{ type: Input }],
|
|
162
|
-
placeholder: [{ type: Input }]
|
|
163
|
-
};
|
|
164
|
-
TechlifyTaggerTagSelectorComponent = TechlifyTaggerTagSelectorComponent_1 = __decorate([
|
|
165
|
-
UntilDestroy()
|
|
166
|
-
], TechlifyTaggerTagSelectorComponent);
|
|
167
|
-
export { TechlifyTaggerTagSelectorComponent };
|
|
168
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVjaGxpZnktdGFnZ2VyLXRhZy1zZWxlY3Rvci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtdGVjaGxpZnktY29yZS9zcmMvbGliL3RlY2hsaWZ5LXRhZ2dlci10YWctc2VsZWN0b3IvdGVjaGxpZnktdGFnZ2VyLXRhZy1zZWxlY3Rvci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDakQsT0FBTyxFQUFnQixxQkFBcUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQzVFLE9BQU8sRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFVLEtBQUssRUFBYSxNQUFNLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN4RyxPQUFPLEVBQXdCLFdBQVcsRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM5RSxPQUFPLEVBQUUsWUFBWSxFQUFFLG1CQUFtQixFQUFFLGNBQWMsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ2pHLE9BQU8sRUFBRSxZQUFZLEVBQUUsY0FBYyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDckUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUUvQixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7SUFTdEMsa0NBQWtDLGdEQUFsQyxrQ0FBa0M7SUF5RzdDLFlBQ1UsYUFBMkIsRUFDM0IsV0FBb0MsRUFDcEMsV0FBd0IsRUFDVyxVQUF3QixFQUN4QyxTQUFvQjtRQUp2QyxrQkFBYSxHQUFiLGFBQWEsQ0FBYztRQUMzQixnQkFBVyxHQUFYLFdBQVcsQ0FBeUI7UUFDcEMsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFDVyxlQUFVLEdBQVYsVUFBVSxDQUFjO1FBQ3hDLGNBQVMsR0FBVCxTQUFTLENBQVc7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S0FBSzswQkFjTCxLQUFLOztBQS9FSyxrQ0FBa0M7SUFQOUMsWUFBWSxFQUFFO0dBT0Ysa0NBQWtDLENBa0s5QztTQWxLWSxrQ0FBa0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGb2N1c01vbml0b3IgfSBmcm9tICdAYW5ndWxhci9jZGsvYTExeSc7XHJcbmltcG9ydCB7IEJvb2xlYW5JbnB1dCwgY29lcmNlQm9vbGVhblByb3BlcnR5IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2NvZXJjaW9uJztcclxuaW1wb3J0IHsgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBPbkluaXQsIElucHV0LCBPbkRlc3Ryb3ksIEluamVjdCwgT3B0aW9uYWwsIFNlbGYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ29udHJvbFZhbHVlQWNjZXNzb3IsIEZvcm1Db250cm9sLCBOZ0NvbnRyb2wgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IE1hdEZvcm1GaWVsZCwgTWF0Rm9ybUZpZWxkQ29udHJvbCwgTUFUX0ZPUk1fRklFTEQgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9mb3JtLWZpZWxkJztcclxuaW1wb3J0IHsgVW50aWxEZXN0cm95LCB1bnRpbERlc3Ryb3llZCB9IGZyb20gJ0BuZ25lYXQvdW50aWwtZGVzdHJveSc7XHJcbmltcG9ydCB7IFN1YmplY3QgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgZGVib3VuY2VUaW1lIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5pbXBvcnQgeyBIdHRwU2VydmljZSB9IGZyb20gJy4uL2NvcmUvaHR0cC5zZXJ2aWNlJztcclxuXHJcbkBVbnRpbERlc3Ryb3koKVxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FwcC10ZWNobGlmeS10YWdnZXItdGFnLXNlbGVjdG9yJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vdGVjaGxpZnktdGFnZ2VyLXRhZy1zZWxlY3Rvci5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vdGVjaGxpZnktdGFnZ2VyLXRhZy1zZWxlY3Rvci5jb21wb25lbnQuc2NzcyddLFxyXG4gIHByb3ZpZGVyczogW3sgcHJvdmlkZTogTWF0Rm9ybUZpZWxkQ29udHJvbCwgdXNlRXhpc3Rpbmc6IFRlY2hsaWZ5VGFnZ2VyVGFnU2VsZWN0b3JDb21wb25lbnQgfV0sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBUZWNobGlmeVRhZ2dlclRhZ1NlbGVjdG9yQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBDb250cm9sVmFsdWVBY2Nlc3NvciwgTWF0Rm9ybUZpZWxkQ29udHJvbDxhbnk+LCBPbkRlc3Ryb3kge1xyXG5cclxuICAvKipQYXNzIHRoZSBDYXRlZ29yaWVzIHRvIGZpbHRlciBmb3IgYSBtb2RlbCAqL1xyXG4gIEBJbnB1dCgpIGNhdGVnb3JpZXM6IHN0cmluZ1tdID0gW107XHJcbiAgQElucHV0KCkgbXVsdGlwbGU6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBASW5wdXQoKSBlbmFibGVTZWFyY2g6IGJvb2xlYW4gPSB0cnVlO1xyXG4gIHRhZ1NlbGVjdG9yQ3RybCA9IG5ldyBGb3JtQ29udHJvbCgpO1xyXG4gIEBJbnB1dCgpIHNob3dBbGxUYWdzOiBib29sZWFuID0gZmFsc2U7XHJcbiAgQElucHV0KCkgdXNlU2VsZWN0QnV0dG9uU3R5bGU6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgdGFnczogYW55W10gPSBbXTtcclxuXHJcbiAgc3RhdGljIG5leHRJZCA9IDA7XHJcbiAgc3RhdGVDaGFuZ2VzID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcclxuICBmb2N1c2VkID0gZmFsc2U7XHJcbiAgY29udHJvbFR5cGUgPSAndGVjaGxpZnktdGFnZ2VyLXNlbGVjdG9yJztcclxuICBpZCA9IGB0ZWNobGlmeS10YWdnZXItc2VsZWN0b3ItJHtUZWNobGlmeVRhZ2dlclRhZ1NlbGVjdG9yQ29tcG9uZW50Lm5leHRJZCsrfWA7XHJcblxyXG4gIG9uQ2hhbmdlID0gKF86IGFueSkgPT4geyB9O1xyXG4gIG9uVG91Y2hlZCA9ICgpID0+IHsgfTtcclxuXHJcbiAgZ2V0IGFwaVVybCgpIHtcclxuICAgIGlmICh0aGlzLnNob3dBbGxUYWdzKSB7XHJcbiAgICAgIHJldHVybiAnYXBpL3RlY2hsaWZ5LXRhZ2dlci10YWdzJ1xyXG4gICAgfVxyXG4gICAgZWxzZSBpZiAodGhpcy5jYXRlZ29yaWVzPy5sZW5ndGggPiAwKSB7XHJcbiAgICAgIHJldHVybiAnYXBpL3RlY2hsaWZ5LXRhZ2dlci10YWdzP2NhdGVnb3JpZXM9JyArIHRoaXMuY2F0ZWdvcmllcy5qb2luKCcsJyk7XHJcbiAgICB9XHJcbiAgICBlbHNlIHtcclxuICAgICAgcmV0dXJuICcnO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLy9EZWZhdWx0IEdldHRlciBhbmQgU2V0dGVycyBmb3IgYSBGb3JtIEZpZWxkIEltcGxlbWVudGF0aW9uXHJcbiAgZ2V0IGVtcHR5KCkge1xyXG4gICAgcmV0dXJuIHRoaXMudmFsdWUubGVuZ3RoID09IDA7XHJcbiAgfVxyXG5cclxuICBnZXQgc2hvdWxkTGFiZWxGbG9hdCgpIHtcclxuICAgIHJldHVybiB0aGlzLmZvY3VzZWQgfHwgIXRoaXMuZW1wdHk7XHJcbiAgfVxyXG5cclxuICBASW5wdXQoKVxyXG4gIGdldCByZXF1aXJlZCgpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLl9yZXF1aXJlZDtcclxuICB9XHJcbiAgc2V0IHJlcXVpcmVkKHZhbHVlOiBib29sZWFuKSB7XHJcbiAgICB0aGlzLl9yZXF1aXJlZCA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSk7XHJcbiAgICB0aGlzLnN0YXRlQ2hhbmdlcy5uZXh0KCk7XHJcbiAgfVxyXG4gIHByaXZhdGUgX3JlcXVpcmVkID0gZmFsc2U7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgZ2V0IGRpc2FibGVkKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMuX2Rpc2FibGVkO1xyXG4gIH1cclxuICBzZXQgZGlzYWJsZWQodmFsdWU6IGJvb2xlYW4pIHtcclxuICAgIHRoaXMuX2Rpc2FibGVkID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTtcclxuICAgIHRoaXMuX2Rpc2FibGVkID8gdGhpcy50YWdTZWxlY3RvckN0cmwuZGlzYWJsZSgpIDogdGhpcy50YWdTZWxlY3RvckN0cmwuZW5hYmxlKCk7XHJcbiAgICB0aGlzLnN0YXRlQ2hhbmdlcy5uZXh0KCk7XHJcbiAgfVxyXG4gIHByaXZhdGUgX2Rpc2FibGVkID0gZmFsc2U7XHJcblxyXG5cclxuICBwcml2YXRlIF92YWx1ZTogYW55O1xyXG4gIEBJbnB1dCgpXHJcbiAgZ2V0IHZhbHVlKCk6IGFueSB7XHJcbiAgICByZXR1cm4gdGhpcy5fdmFsdWU7XHJcbiAgfVxyXG4gIHNldCB2YWx1ZSh2YWw6IGFueSkge1xyXG4gICAgdGhpcy5fdmFsdWUgPSB2YWw7XHJcbiAgICB0aGlzLnRhZ1NlbGVjdG9yQ3RybC5zZXRWYWx1ZSh2YWwpO1xyXG4gICAgdGhpcy5zdGF0ZUNoYW5nZXMubmV4dCgpO1xyXG4gIH1cclxuXHJcbiAgZ2V0IGVycm9yU3RhdGUoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy50YWdTZWxlY3RvckN0cmwuZGlydHkgJiYgdGhpcy5yZXF1aXJlZCAmJiAodGhpcy52YWx1ZS5sZW5ndGggPT0gMCk7XHJcbiAgfVxyXG5cclxuICBASW5wdXQoKVxyXG4gIGdldCBwbGFjZWhvbGRlcigpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIHRoaXMuX3BsYWNlaG9sZGVyO1xyXG4gIH1cclxuICBzZXQgcGxhY2Vob2xkZXIodmFsdWU6IHN0cmluZykge1xyXG4gICAgdGhpcy5fcGxhY2Vob2xkZXIgPSB2YWx1ZTtcclxuICAgIHRoaXMuc3RhdGVDaGFuZ2VzLm5leHQoKTtcclxuICB9XHJcbiAgcHJpdmF0ZSBfcGxhY2Vob2xkZXI6IHN0cmluZztcclxuXHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMudXNlU2VsZWN0QnV0dG9uU3R5bGUpIHtcclxuICAgICAgdGhpcy5odHRwU2VydmljZS5nZXQodGhpcy5hcGlVcmwpXHJcbiAgICAgICAgLnBpcGUodW50aWxEZXN0cm95ZWQodGhpcykpXHJcbiAgICAgICAgLnN1YnNjcmliZSgocmVzOiBhbnkpID0+IHtcclxuICAgICAgICAgIHRoaXMudGFncyA9IHJlcy5kYXRhO1xyXG4gICAgICAgIH0pXHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBzZWxlY3Rpb25DaGFuZ2UodmFsdWU6IGFueSkge1xyXG4gICAgdGhpcy52YWx1ZSA9IHZhbHVlO1xyXG4gICAgdGhpcy5faGFuZGxlSW5wdXQoKTtcclxuICB9XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBfZm9jdXNNb25pdG9yOiBGb2N1c01vbml0b3IsXHJcbiAgICBwcml2YXRlIF9lbGVtZW50UmVmOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PixcclxuICAgIHByaXZhdGUgaHR0cFNlcnZpY2U6IEh0dHBTZXJ2aWNlLFxyXG4gICAgQE9wdGlvbmFsKCkgQEluamVjdChNQVRfRk9STV9GSUVMRCkgcHVibGljIF9mb3JtRmllbGQ6IE1hdEZvcm1GaWVsZCxcclxuICAgIEBPcHRpb25hbCgpIEBTZWxmKCkgcHVibGljIG5nQ29udHJvbDogTmdDb250cm9sKSB7XHJcblxyXG4gICAgLy9TZXQgRm9jdXMgTW9uaXRvclxyXG4gICAgX2ZvY3VzTW9uaXRvci5tb25pdG9yKF9lbGVtZW50UmVmLCB0cnVlKS5zdWJzY3JpYmUob3JpZ2luID0+IHtcclxuICAgICAgaWYgKHRoaXMuZm9jdXNlZCAmJiAhb3JpZ2luKSB7XHJcbiAgICAgICAgdGhpcy5vblRvdWNoZWQoKTtcclxuICAgICAgfVxyXG4gICAgICB0aGlzLmZvY3VzZWQgPSAhIW9yaWdpbjtcclxuICAgICAgdGhpcy5zdGF0ZUNoYW5nZXMubmV4dCgpO1xyXG4gICAgfSk7XHJcblxyXG4gICAgaWYgKHRoaXMubmdDb250cm9sICE9IG51bGwpIHtcclxuICAgICAgdGhpcy5uZ0NvbnRyb2wudmFsdWVBY2Nlc3NvciA9IHRoaXM7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBzZXREZXNjcmliZWRCeUlkcyhpZHM6IHN0cmluZ1tdKSB7XHJcbiAgICAvLyBKdXN0IGEgZW1wdHkgaW1wbGVtZW50YXRpb24gZm9yIE1hdCBGb3JtIEZpZWxkIEludGVyZmFjZVxyXG4gIH1cclxuXHJcbiAgb25Db250YWluZXJDbGljaygpIHtcclxuICAgIC8vIEp1c3QgYSBlbXB0eSBpbXBsZW1lbnRhdGlvbiBmb3IgTWF0IEZvcm0gRmllbGQgSW50ZXJmYWNlXHJcbiAgfVxyXG5cclxuICB3cml0ZVZhbHVlKHZhbDogYW55KTogdm9pZCB7XHJcbiAgICB0aGlzLnZhbHVlID0gdmFsO1xyXG4gIH1cclxuXHJcbiAgcmVnaXN0ZXJPbkNoYW5nZShmbjogYW55KTogdm9pZCB7XHJcbiAgICB0aGlzLm9uQ2hhbmdlID0gZm47XHJcbiAgfVxyXG5cclxuICByZWdpc3Rlck9uVG91Y2hlZChmbjogYW55KTogdm9pZCB7XHJcbiAgICB0aGlzLm9uVG91Y2hlZCA9IGZuO1xyXG4gIH1cclxuXHJcbiAgc2V0RGlzYWJsZWRTdGF0ZShpc0Rpc2FibGVkOiBib29sZWFuKTogdm9pZCB7XHJcbiAgICB0aGlzLmRpc2FibGVkID0gaXNEaXNhYmxlZDtcclxuICB9XHJcblxyXG4gIF9oYW5kbGVJbnB1dCgpOiB2b2lkIHtcclxuICAgIHRoaXMub25DaGFuZ2UodGhpcy52YWx1ZSk7XHJcbiAgfVxyXG5cclxuICBzdGF0aWMgbmdBY2NlcHRJbnB1dFR5cGVfZGlzYWJsZWQ6IEJvb2xlYW5JbnB1dDtcclxuICBzdGF0aWMgbmdBY2NlcHRJbnB1dFR5cGVfcmVxdWlyZWQ6IEJvb2xlYW5JbnB1dDtcclxuXHJcbiAgbmdPbkRlc3Ryb3koKSB7XHJcbiAgICB0aGlzLnN0YXRlQ2hhbmdlcy5jb21wbGV0ZSgpO1xyXG4gICAgdGhpcy5fZm9jdXNNb25pdG9yLnN0b3BNb25pdG9yaW5nKHRoaXMuX2VsZW1lbnRSZWYpO1xyXG4gIH1cclxuXHJcbn1cclxuIl19
|
|
1
|
+
var TechlifyTaggerTagSelectorComponent_1;
|
|
2
|
+
import { __decorate } from "tslib";
|
|
3
|
+
import { FocusMonitor } from '@angular/cdk/a11y';
|
|
4
|
+
import { coerceBooleanProperty } from '@angular/cdk/coercion';
|
|
5
|
+
import { Component, ElementRef, Input, Inject, Optional, Self } from '@angular/core';
|
|
6
|
+
import { FormControl, NgControl } from '@angular/forms';
|
|
7
|
+
import { MatFormField, MatFormFieldControl, MAT_FORM_FIELD } from '@angular/material/form-field';
|
|
8
|
+
import { UntilDestroy, untilDestroyed } from '@ngneat/until-destroy';
|
|
9
|
+
import { Subject } from 'rxjs';
|
|
10
|
+
import { HttpService } from '../core/http.service';
|
|
11
|
+
let TechlifyTaggerTagSelectorComponent = TechlifyTaggerTagSelectorComponent_1 = class TechlifyTaggerTagSelectorComponent {
|
|
12
|
+
constructor(_focusMonitor, _elementRef, httpService, _formField, ngControl) {
|
|
13
|
+
this._focusMonitor = _focusMonitor;
|
|
14
|
+
this._elementRef = _elementRef;
|
|
15
|
+
this.httpService = httpService;
|
|
16
|
+
this._formField = _formField;
|
|
17
|
+
this.ngControl = ngControl;
|
|
18
|
+
/**Pass the Categories to filter for a model */
|
|
19
|
+
this.categories = [];
|
|
20
|
+
this.multiple = false;
|
|
21
|
+
this.enableSearch = true;
|
|
22
|
+
this.tagSelectorCtrl = new FormControl();
|
|
23
|
+
this.showAllTags = false;
|
|
24
|
+
this.useSelectButtonStyle = false;
|
|
25
|
+
this.tags = [];
|
|
26
|
+
this.stateChanges = new Subject();
|
|
27
|
+
this.focused = false;
|
|
28
|
+
this.controlType = 'techlify-tagger-selector';
|
|
29
|
+
this.id = `techlify-tagger-selector-${TechlifyTaggerTagSelectorComponent_1.nextId++}`;
|
|
30
|
+
this.onChange = (_) => { };
|
|
31
|
+
this.onTouched = () => { };
|
|
32
|
+
this._required = false;
|
|
33
|
+
this._disabled = false;
|
|
34
|
+
//Set Focus Monitor
|
|
35
|
+
_focusMonitor.monitor(_elementRef, true).subscribe(origin => {
|
|
36
|
+
if (this.focused && !origin) {
|
|
37
|
+
this.onTouched();
|
|
38
|
+
}
|
|
39
|
+
this.focused = !!origin;
|
|
40
|
+
this.stateChanges.next();
|
|
41
|
+
});
|
|
42
|
+
if (this.ngControl != null) {
|
|
43
|
+
this.ngControl.valueAccessor = this;
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
get apiUrl() {
|
|
47
|
+
var _a;
|
|
48
|
+
if (this.showAllTags) {
|
|
49
|
+
return 'api/techlify-tagger-tags';
|
|
50
|
+
}
|
|
51
|
+
else if (((_a = this.categories) === null || _a === void 0 ? void 0 : _a.length) > 0) {
|
|
52
|
+
return 'api/techlify-tagger-tags?categories=' + this.categories.join(',');
|
|
53
|
+
}
|
|
54
|
+
else {
|
|
55
|
+
return '';
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
//Default Getter and Setters for a Form Field Implementation
|
|
59
|
+
get empty() {
|
|
60
|
+
return this.value.length == 0;
|
|
61
|
+
}
|
|
62
|
+
get shouldLabelFloat() {
|
|
63
|
+
return this.focused || !this.empty;
|
|
64
|
+
}
|
|
65
|
+
get required() {
|
|
66
|
+
return this._required;
|
|
67
|
+
}
|
|
68
|
+
set required(value) {
|
|
69
|
+
this._required = coerceBooleanProperty(value);
|
|
70
|
+
this.stateChanges.next();
|
|
71
|
+
}
|
|
72
|
+
get disabled() {
|
|
73
|
+
return this._disabled;
|
|
74
|
+
}
|
|
75
|
+
set disabled(value) {
|
|
76
|
+
this._disabled = coerceBooleanProperty(value);
|
|
77
|
+
this._disabled ? this.tagSelectorCtrl.disable() : this.tagSelectorCtrl.enable();
|
|
78
|
+
this.stateChanges.next();
|
|
79
|
+
}
|
|
80
|
+
get value() {
|
|
81
|
+
return this._value;
|
|
82
|
+
}
|
|
83
|
+
set value(val) {
|
|
84
|
+
this._value = val;
|
|
85
|
+
this.tagSelectorCtrl.setValue(val);
|
|
86
|
+
this.stateChanges.next();
|
|
87
|
+
}
|
|
88
|
+
get errorState() {
|
|
89
|
+
return this.tagSelectorCtrl.dirty && this.required && (this.value.length == 0);
|
|
90
|
+
}
|
|
91
|
+
get placeholder() {
|
|
92
|
+
return this._placeholder;
|
|
93
|
+
}
|
|
94
|
+
set placeholder(value) {
|
|
95
|
+
this._placeholder = value;
|
|
96
|
+
this.stateChanges.next();
|
|
97
|
+
}
|
|
98
|
+
ngOnInit() {
|
|
99
|
+
if (this.useSelectButtonStyle) {
|
|
100
|
+
this.httpService.get(this.apiUrl)
|
|
101
|
+
.pipe(untilDestroyed(this))
|
|
102
|
+
.subscribe((res) => {
|
|
103
|
+
this.tags = res.data;
|
|
104
|
+
});
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
selectionChange(value) {
|
|
108
|
+
this.value = value;
|
|
109
|
+
this._handleInput();
|
|
110
|
+
}
|
|
111
|
+
setDescribedByIds(ids) {
|
|
112
|
+
// Just a empty implementation for Mat Form Field Interface
|
|
113
|
+
}
|
|
114
|
+
onContainerClick() {
|
|
115
|
+
// Just a empty implementation for Mat Form Field Interface
|
|
116
|
+
}
|
|
117
|
+
writeValue(val) {
|
|
118
|
+
this.value = val;
|
|
119
|
+
}
|
|
120
|
+
registerOnChange(fn) {
|
|
121
|
+
this.onChange = fn;
|
|
122
|
+
}
|
|
123
|
+
registerOnTouched(fn) {
|
|
124
|
+
this.onTouched = fn;
|
|
125
|
+
}
|
|
126
|
+
setDisabledState(isDisabled) {
|
|
127
|
+
this.disabled = isDisabled;
|
|
128
|
+
}
|
|
129
|
+
_handleInput() {
|
|
130
|
+
this.onChange(this.value);
|
|
131
|
+
}
|
|
132
|
+
ngOnDestroy() {
|
|
133
|
+
this.stateChanges.complete();
|
|
134
|
+
this._focusMonitor.stopMonitoring(this._elementRef);
|
|
135
|
+
}
|
|
136
|
+
};
|
|
137
|
+
TechlifyTaggerTagSelectorComponent.nextId = 0;
|
|
138
|
+
TechlifyTaggerTagSelectorComponent.decorators = [
|
|
139
|
+
{ type: Component, args: [{
|
|
140
|
+
selector: 'app-techlify-tagger-tag-selector',
|
|
141
|
+
template: "<app-searchable-selector *ngIf=\"apiUrl && !useSelectButtonStyle\" [formControl]=\"tagSelectorCtrl\" [apiUrl]=\"apiUrl\"\n [enableSearch]=\"enableSearch\" [multiple]=\"multiple\" (selectionChange)=\"selectionChange($event)\">\n</app-searchable-selector>\n\n<mat-button-toggle-group *ngIf=\"apiUrl && useSelectButtonStyle\" [formControl]=\"tagSelectorCtrl\" [multiple]=\"multiple\"\n (change)=\"selectionChange($event.value)\">\n <mat-button-toggle *ngFor=\"let tag of tags\" [value]=\"tag.id\">{{tag.title}}</mat-button-toggle>\n</mat-button-toggle-group>",
|
|
142
|
+
providers: [{ provide: MatFormFieldControl, useExisting: TechlifyTaggerTagSelectorComponent_1 }],
|
|
143
|
+
styles: [""]
|
|
144
|
+
},] }
|
|
145
|
+
];
|
|
146
|
+
TechlifyTaggerTagSelectorComponent.ctorParameters = () => [
|
|
147
|
+
{ type: FocusMonitor },
|
|
148
|
+
{ type: ElementRef },
|
|
149
|
+
{ type: HttpService },
|
|
150
|
+
{ type: MatFormField, decorators: [{ type: Optional }, { type: Inject, args: [MAT_FORM_FIELD,] }] },
|
|
151
|
+
{ type: NgControl, decorators: [{ type: Optional }, { type: Self }] }
|
|
152
|
+
];
|
|
153
|
+
TechlifyTaggerTagSelectorComponent.propDecorators = {
|
|
154
|
+
categories: [{ type: Input }],
|
|
155
|
+
multiple: [{ type: Input }],
|
|
156
|
+
enableSearch: [{ type: Input }],
|
|
157
|
+
showAllTags: [{ type: Input }],
|
|
158
|
+
useSelectButtonStyle: [{ type: Input }],
|
|
159
|
+
required: [{ type: Input }],
|
|
160
|
+
disabled: [{ type: Input }],
|
|
161
|
+
value: [{ type: Input }],
|
|
162
|
+
placeholder: [{ type: Input }]
|
|
163
|
+
};
|
|
164
|
+
TechlifyTaggerTagSelectorComponent = TechlifyTaggerTagSelectorComponent_1 = __decorate([
|
|
165
|
+
UntilDestroy()
|
|
166
|
+
], TechlifyTaggerTagSelectorComponent);
|
|
167
|
+
export { TechlifyTaggerTagSelectorComponent };
|
|
168
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVjaGxpZnktdGFnZ2VyLXRhZy1zZWxlY3Rvci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtdGVjaGxpZnktY29yZS9zcmMvbGliL3RlY2hsaWZ5LXRhZ2dlci10YWctc2VsZWN0b3IvdGVjaGxpZnktdGFnZ2VyLXRhZy1zZWxlY3Rvci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDakQsT0FBTyxFQUFnQixxQkFBcUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQzVFLE9BQU8sRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFVLEtBQUssRUFBYSxNQUFNLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN4RyxPQUFPLEVBQXdCLFdBQVcsRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM5RSxPQUFPLEVBQUUsWUFBWSxFQUFFLG1CQUFtQixFQUFFLGNBQWMsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ2pHLE9BQU8sRUFBRSxZQUFZLEVBQUUsY0FBYyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDckUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUUvQixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7SUFTdEMsa0NBQWtDLGdEQUFsQyxrQ0FBa0M7SUF5RzdDLFlBQ1UsYUFBMkIsRUFDM0IsV0FBb0MsRUFDcEMsV0FBd0IsRUFDVyxVQUF3QixFQUN4QyxTQUFvQjtRQUp2QyxrQkFBYSxHQUFiLGFBQWEsQ0FBYztRQUMzQixnQkFBVyxHQUFYLFdBQVcsQ0FBeUI7UUFDcEMsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFDVyxlQUFVLEdBQVYsVUFBVSxDQUFjO1FBQ3hDLGNBQVMsR0FBVCxTQUFTLENBQVc7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S0FBSzswQkFjTCxLQUFLOztBQS9FSyxrQ0FBa0M7SUFQOUMsWUFBWSxFQUFFO0dBT0Ysa0NBQWtDLENBa0s5QztTQWxLWSxrQ0FBa0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGb2N1c01vbml0b3IgfSBmcm9tICdAYW5ndWxhci9jZGsvYTExeSc7XG5pbXBvcnQgeyBCb29sZWFuSW5wdXQsIGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9jb2VyY2lvbic7XG5pbXBvcnQgeyBDb21wb25lbnQsIEVsZW1lbnRSZWYsIE9uSW5pdCwgSW5wdXQsIE9uRGVzdHJveSwgSW5qZWN0LCBPcHRpb25hbCwgU2VsZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29udHJvbFZhbHVlQWNjZXNzb3IsIEZvcm1Db250cm9sLCBOZ0NvbnRyb2wgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBNYXRGb3JtRmllbGQsIE1hdEZvcm1GaWVsZENvbnRyb2wsIE1BVF9GT1JNX0ZJRUxEIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZm9ybS1maWVsZCc7XG5pbXBvcnQgeyBVbnRpbERlc3Ryb3ksIHVudGlsRGVzdHJveWVkIH0gZnJvbSAnQG5nbmVhdC91bnRpbC1kZXN0cm95JztcbmltcG9ydCB7IFN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGRlYm91bmNlVGltZSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IEh0dHBTZXJ2aWNlIH0gZnJvbSAnLi4vY29yZS9odHRwLnNlcnZpY2UnO1xuXG5AVW50aWxEZXN0cm95KClcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FwcC10ZWNobGlmeS10YWdnZXItdGFnLXNlbGVjdG9yJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3RlY2hsaWZ5LXRhZ2dlci10YWctc2VsZWN0b3IuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi90ZWNobGlmeS10YWdnZXItdGFnLXNlbGVjdG9yLmNvbXBvbmVudC5zY3NzJ10sXG4gIHByb3ZpZGVyczogW3sgcHJvdmlkZTogTWF0Rm9ybUZpZWxkQ29udHJvbCwgdXNlRXhpc3Rpbmc6IFRlY2hsaWZ5VGFnZ2VyVGFnU2VsZWN0b3JDb21wb25lbnQgfV0sXG59KVxuZXhwb3J0IGNsYXNzIFRlY2hsaWZ5VGFnZ2VyVGFnU2VsZWN0b3JDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBNYXRGb3JtRmllbGRDb250cm9sPGFueT4sIE9uRGVzdHJveSB7XG5cbiAgLyoqUGFzcyB0aGUgQ2F0ZWdvcmllcyB0byBmaWx0ZXIgZm9yIGEgbW9kZWwgKi9cbiAgQElucHV0KCkgY2F0ZWdvcmllczogc3RyaW5nW10gPSBbXTtcbiAgQElucHV0KCkgbXVsdGlwbGU6IGJvb2xlYW4gPSBmYWxzZTtcbiAgQElucHV0KCkgZW5hYmxlU2VhcmNoOiBib29sZWFuID0gdHJ1ZTtcbiAgdGFnU2VsZWN0b3JDdHJsID0gbmV3IEZvcm1Db250cm9sKCk7XG4gIEBJbnB1dCgpIHNob3dBbGxUYWdzOiBib29sZWFuID0gZmFsc2U7XG4gIEBJbnB1dCgpIHVzZVNlbGVjdEJ1dHRvblN0eWxlOiBib29sZWFuID0gZmFsc2U7XG5cbiAgdGFnczogYW55W10gPSBbXTtcblxuICBzdGF0aWMgbmV4dElkID0gMDtcbiAgc3RhdGVDaGFuZ2VzID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcbiAgZm9jdXNlZCA9IGZhbHNlO1xuICBjb250cm9sVHlwZSA9ICd0ZWNobGlmeS10YWdnZXItc2VsZWN0b3InO1xuICBpZCA9IGB0ZWNobGlmeS10YWdnZXItc2VsZWN0b3ItJHtUZWNobGlmeVRhZ2dlclRhZ1NlbGVjdG9yQ29tcG9uZW50Lm5leHRJZCsrfWA7XG5cbiAgb25DaGFuZ2UgPSAoXzogYW55KSA9PiB7IH07XG4gIG9uVG91Y2hlZCA9ICgpID0+IHsgfTtcblxuICBnZXQgYXBpVXJsKCkge1xuICAgIGlmICh0aGlzLnNob3dBbGxUYWdzKSB7XG4gICAgICByZXR1cm4gJ2FwaS90ZWNobGlmeS10YWdnZXItdGFncydcbiAgICB9XG4gICAgZWxzZSBpZiAodGhpcy5jYXRlZ29yaWVzPy5sZW5ndGggPiAwKSB7XG4gICAgICByZXR1cm4gJ2FwaS90ZWNobGlmeS10YWdnZXItdGFncz9jYXRlZ29yaWVzPScgKyB0aGlzLmNhdGVnb3JpZXMuam9pbignLCcpO1xuICAgIH1cbiAgICBlbHNlIHtcbiAgICAgIHJldHVybiAnJztcbiAgICB9XG4gIH1cblxuICAvL0RlZmF1bHQgR2V0dGVyIGFuZCBTZXR0ZXJzIGZvciBhIEZvcm0gRmllbGQgSW1wbGVtZW50YXRpb25cbiAgZ2V0IGVtcHR5KCkge1xuICAgIHJldHVybiB0aGlzLnZhbHVlLmxlbmd0aCA9PSAwO1xuICB9XG5cbiAgZ2V0IHNob3VsZExhYmVsRmxvYXQoKSB7XG4gICAgcmV0dXJuIHRoaXMuZm9jdXNlZCB8fCAhdGhpcy5lbXB0eTtcbiAgfVxuXG4gIEBJbnB1dCgpXG4gIGdldCByZXF1aXJlZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fcmVxdWlyZWQ7XG4gIH1cbiAgc2V0IHJlcXVpcmVkKHZhbHVlOiBib29sZWFuKSB7XG4gICAgdGhpcy5fcmVxdWlyZWQgPSBjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpO1xuICAgIHRoaXMuc3RhdGVDaGFuZ2VzLm5leHQoKTtcbiAgfVxuICBwcml2YXRlIF9yZXF1aXJlZCA9IGZhbHNlO1xuXG4gIEBJbnB1dCgpXG4gIGdldCBkaXNhYmxlZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fZGlzYWJsZWQ7XG4gIH1cbiAgc2V0IGRpc2FibGVkKHZhbHVlOiBib29sZWFuKSB7XG4gICAgdGhpcy5fZGlzYWJsZWQgPSBjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpO1xuICAgIHRoaXMuX2Rpc2FibGVkID8gdGhpcy50YWdTZWxlY3RvckN0cmwuZGlzYWJsZSgpIDogdGhpcy50YWdTZWxlY3RvckN0cmwuZW5hYmxlKCk7XG4gICAgdGhpcy5zdGF0ZUNoYW5nZXMubmV4dCgpO1xuICB9XG4gIHByaXZhdGUgX2Rpc2FibGVkID0gZmFsc2U7XG5cblxuICBwcml2YXRlIF92YWx1ZTogYW55O1xuICBASW5wdXQoKVxuICBnZXQgdmFsdWUoKTogYW55IHtcbiAgICByZXR1cm4gdGhpcy5fdmFsdWU7XG4gIH1cbiAgc2V0IHZhbHVlKHZhbDogYW55KSB7XG4gICAgdGhpcy5fdmFsdWUgPSB2YWw7XG4gICAgdGhpcy50YWdTZWxlY3RvckN0cmwuc2V0VmFsdWUodmFsKTtcbiAgICB0aGlzLnN0YXRlQ2hhbmdlcy5uZXh0KCk7XG4gIH1cblxuICBnZXQgZXJyb3JTdGF0ZSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy50YWdTZWxlY3RvckN0cmwuZGlydHkgJiYgdGhpcy5yZXF1aXJlZCAmJiAodGhpcy52YWx1ZS5sZW5ndGggPT0gMCk7XG4gIH1cblxuICBASW5wdXQoKVxuICBnZXQgcGxhY2Vob2xkZXIoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5fcGxhY2Vob2xkZXI7XG4gIH1cbiAgc2V0IHBsYWNlaG9sZGVyKHZhbHVlOiBzdHJpbmcpIHtcbiAgICB0aGlzLl9wbGFjZWhvbGRlciA9IHZhbHVlO1xuICAgIHRoaXMuc3RhdGVDaGFuZ2VzLm5leHQoKTtcbiAgfVxuICBwcml2YXRlIF9wbGFjZWhvbGRlcjogc3RyaW5nO1xuXG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMudXNlU2VsZWN0QnV0dG9uU3R5bGUpIHtcbiAgICAgIHRoaXMuaHR0cFNlcnZpY2UuZ2V0KHRoaXMuYXBpVXJsKVxuICAgICAgICAucGlwZSh1bnRpbERlc3Ryb3llZCh0aGlzKSlcbiAgICAgICAgLnN1YnNjcmliZSgocmVzOiBhbnkpID0+IHtcbiAgICAgICAgICB0aGlzLnRhZ3MgPSByZXMuZGF0YTtcbiAgICAgICAgfSlcbiAgICB9XG4gIH1cblxuICBzZWxlY3Rpb25DaGFuZ2UodmFsdWU6IGFueSkge1xuICAgIHRoaXMudmFsdWUgPSB2YWx1ZTtcbiAgICB0aGlzLl9oYW5kbGVJbnB1dCgpO1xuICB9XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBfZm9jdXNNb25pdG9yOiBGb2N1c01vbml0b3IsXG4gICAgcHJpdmF0ZSBfZWxlbWVudFJlZjogRWxlbWVudFJlZjxIVE1MRWxlbWVudD4sXG4gICAgcHJpdmF0ZSBodHRwU2VydmljZTogSHR0cFNlcnZpY2UsXG4gICAgQE9wdGlvbmFsKCkgQEluamVjdChNQVRfRk9STV9GSUVMRCkgcHVibGljIF9mb3JtRmllbGQ6IE1hdEZvcm1GaWVsZCxcbiAgICBAT3B0aW9uYWwoKSBAU2VsZigpIHB1YmxpYyBuZ0NvbnRyb2w6IE5nQ29udHJvbCkge1xuXG4gICAgLy9TZXQgRm9jdXMgTW9uaXRvclxuICAgIF9mb2N1c01vbml0b3IubW9uaXRvcihfZWxlbWVudFJlZiwgdHJ1ZSkuc3Vic2NyaWJlKG9yaWdpbiA9PiB7XG4gICAgICBpZiAodGhpcy5mb2N1c2VkICYmICFvcmlnaW4pIHtcbiAgICAgICAgdGhpcy5vblRvdWNoZWQoKTtcbiAgICAgIH1cbiAgICAgIHRoaXMuZm9jdXNlZCA9ICEhb3JpZ2luO1xuICAgICAgdGhpcy5zdGF0ZUNoYW5nZXMubmV4dCgpO1xuICAgIH0pO1xuXG4gICAgaWYgKHRoaXMubmdDb250cm9sICE9IG51bGwpIHtcbiAgICAgIHRoaXMubmdDb250cm9sLnZhbHVlQWNjZXNzb3IgPSB0aGlzO1xuICAgIH1cbiAgfVxuXG4gIHNldERlc2NyaWJlZEJ5SWRzKGlkczogc3RyaW5nW10pIHtcbiAgICAvLyBKdXN0IGEgZW1wdHkgaW1wbGVtZW50YXRpb24gZm9yIE1hdCBGb3JtIEZpZWxkIEludGVyZmFjZVxuICB9XG5cbiAgb25Db250YWluZXJDbGljaygpIHtcbiAgICAvLyBKdXN0IGEgZW1wdHkgaW1wbGVtZW50YXRpb24gZm9yIE1hdCBGb3JtIEZpZWxkIEludGVyZmFjZVxuICB9XG5cbiAgd3JpdGVWYWx1ZSh2YWw6IGFueSk6IHZvaWQge1xuICAgIHRoaXMudmFsdWUgPSB2YWw7XG4gIH1cblxuICByZWdpc3Rlck9uQ2hhbmdlKGZuOiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLm9uQ2hhbmdlID0gZm47XG4gIH1cblxuICByZWdpc3Rlck9uVG91Y2hlZChmbjogYW55KTogdm9pZCB7XG4gICAgdGhpcy5vblRvdWNoZWQgPSBmbjtcbiAgfVxuXG4gIHNldERpc2FibGVkU3RhdGUoaXNEaXNhYmxlZDogYm9vbGVhbik6IHZvaWQge1xuICAgIHRoaXMuZGlzYWJsZWQgPSBpc0Rpc2FibGVkO1xuICB9XG5cbiAgX2hhbmRsZUlucHV0KCk6IHZvaWQge1xuICAgIHRoaXMub25DaGFuZ2UodGhpcy52YWx1ZSk7XG4gIH1cblxuICBzdGF0aWMgbmdBY2NlcHRJbnB1dFR5cGVfZGlzYWJsZWQ6IEJvb2xlYW5JbnB1dDtcbiAgc3RhdGljIG5nQWNjZXB0SW5wdXRUeXBlX3JlcXVpcmVkOiBCb29sZWFuSW5wdXQ7XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5zdGF0ZUNoYW5nZXMuY29tcGxldGUoKTtcbiAgICB0aGlzLl9mb2N1c01vbml0b3Iuc3RvcE1vbml0b3JpbmcodGhpcy5fZWxlbWVudFJlZik7XG4gIH1cblxufVxuIl19
|
|
@@ -1,29 +1,29 @@
|
|
|
1
|
-
import { NgModule } from '@angular/core';
|
|
2
|
-
import { CommonModule } from '@angular/common';
|
|
3
|
-
import { TechlifyTaggerTagSelectorComponent } from './techlify-tagger-tag-selector.component';
|
|
4
|
-
import { FlexLayoutModule } from '@angular/flex-layout';
|
|
5
|
-
import { ReactiveFormsModule } from '@angular/forms';
|
|
6
|
-
import { MatAutocompleteModule } from '@angular/material/autocomplete';
|
|
7
|
-
import { MatButtonToggleModule } from '@angular/material/button-toggle';
|
|
8
|
-
import { MaterialModule } from '../material.module';
|
|
9
|
-
import { SearchableSelectorModule } from '../searchable-selector/searchable-selector.module';
|
|
10
|
-
export class TechlifyTaggerTagSelectorModule {
|
|
11
|
-
}
|
|
12
|
-
TechlifyTaggerTagSelectorModule.decorators = [
|
|
13
|
-
{ type: NgModule, args: [{
|
|
14
|
-
declarations: [
|
|
15
|
-
TechlifyTaggerTagSelectorComponent
|
|
16
|
-
],
|
|
17
|
-
imports: [
|
|
18
|
-
CommonModule,
|
|
19
|
-
MaterialModule,
|
|
20
|
-
FlexLayoutModule,
|
|
21
|
-
MatAutocompleteModule,
|
|
22
|
-
ReactiveFormsModule,
|
|
23
|
-
SearchableSelectorModule,
|
|
24
|
-
MatButtonToggleModule
|
|
25
|
-
],
|
|
26
|
-
exports: [TechlifyTaggerTagSelectorComponent]
|
|
27
|
-
},] }
|
|
28
|
-
];
|
|
29
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
import { NgModule } from '@angular/core';
|
|
2
|
+
import { CommonModule } from '@angular/common';
|
|
3
|
+
import { TechlifyTaggerTagSelectorComponent } from './techlify-tagger-tag-selector.component';
|
|
4
|
+
import { FlexLayoutModule } from '@angular/flex-layout';
|
|
5
|
+
import { ReactiveFormsModule } from '@angular/forms';
|
|
6
|
+
import { MatAutocompleteModule } from '@angular/material/autocomplete';
|
|
7
|
+
import { MatButtonToggleModule } from '@angular/material/button-toggle';
|
|
8
|
+
import { MaterialModule } from '../material.module';
|
|
9
|
+
import { SearchableSelectorModule } from '../searchable-selector/searchable-selector.module';
|
|
10
|
+
export class TechlifyTaggerTagSelectorModule {
|
|
11
|
+
}
|
|
12
|
+
TechlifyTaggerTagSelectorModule.decorators = [
|
|
13
|
+
{ type: NgModule, args: [{
|
|
14
|
+
declarations: [
|
|
15
|
+
TechlifyTaggerTagSelectorComponent
|
|
16
|
+
],
|
|
17
|
+
imports: [
|
|
18
|
+
CommonModule,
|
|
19
|
+
MaterialModule,
|
|
20
|
+
FlexLayoutModule,
|
|
21
|
+
MatAutocompleteModule,
|
|
22
|
+
ReactiveFormsModule,
|
|
23
|
+
SearchableSelectorModule,
|
|
24
|
+
MatButtonToggleModule
|
|
25
|
+
],
|
|
26
|
+
exports: [TechlifyTaggerTagSelectorComponent]
|
|
27
|
+
},] }
|
|
28
|
+
];
|
|
29
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVjaGxpZnktdGFnZ2VyLXRhZy1zZWxlY3Rvci5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtdGVjaGxpZnktY29yZS9zcmMvbGliL3RlY2hsaWZ5LXRhZ2dlci10YWctc2VsZWN0b3IvdGVjaGxpZnktdGFnZ2VyLXRhZy1zZWxlY3Rvci5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGtDQUFrQyxFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFDOUYsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDeEQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDckQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDdkUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDeEUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3BELE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLG1EQUFtRCxDQUFDO0FBbUI3RixNQUFNLE9BQU8sK0JBQStCOzs7WUFmM0MsUUFBUSxTQUFDO2dCQUNSLFlBQVksRUFBRTtvQkFDWixrQ0FBa0M7aUJBQ25DO2dCQUNELE9BQU8sRUFBRTtvQkFDUCxZQUFZO29CQUNaLGNBQWM7b0JBQ2QsZ0JBQWdCO29CQUNoQixxQkFBcUI7b0JBQ3JCLG1CQUFtQjtvQkFDbkIsd0JBQXdCO29CQUN4QixxQkFBcUI7aUJBQ3RCO2dCQUNELE9BQU8sRUFBRSxDQUFDLGtDQUFrQyxDQUFDO2FBQzlDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBUZWNobGlmeVRhZ2dlclRhZ1NlbGVjdG9yQ29tcG9uZW50IH0gZnJvbSAnLi90ZWNobGlmeS10YWdnZXItdGFnLXNlbGVjdG9yLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGbGV4TGF5b3V0TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZmxleC1sYXlvdXQnO1xuaW1wb3J0IHsgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IE1hdEF1dG9jb21wbGV0ZU1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2F1dG9jb21wbGV0ZSc7XG5pbXBvcnQgeyBNYXRCdXR0b25Ub2dnbGVNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9idXR0b24tdG9nZ2xlJztcbmltcG9ydCB7IE1hdGVyaWFsTW9kdWxlIH0gZnJvbSAnLi4vbWF0ZXJpYWwubW9kdWxlJztcbmltcG9ydCB7IFNlYXJjaGFibGVTZWxlY3Rvck1vZHVsZSB9IGZyb20gJy4uL3NlYXJjaGFibGUtc2VsZWN0b3Ivc2VhcmNoYWJsZS1zZWxlY3Rvci5tb2R1bGUnO1xuXG5cblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbXG4gICAgVGVjaGxpZnlUYWdnZXJUYWdTZWxlY3RvckNvbXBvbmVudFxuICBdLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIE1hdGVyaWFsTW9kdWxlLFxuICAgIEZsZXhMYXlvdXRNb2R1bGUsXG4gICAgTWF0QXV0b2NvbXBsZXRlTW9kdWxlLFxuICAgIFJlYWN0aXZlRm9ybXNNb2R1bGUsXG4gICAgU2VhcmNoYWJsZVNlbGVjdG9yTW9kdWxlLFxuICAgIE1hdEJ1dHRvblRvZ2dsZU1vZHVsZVxuICBdLFxuICBleHBvcnRzOiBbVGVjaGxpZnlUYWdnZXJUYWdTZWxlY3RvckNvbXBvbmVudF1cbn0pXG5leHBvcnQgY2xhc3MgVGVjaGxpZnlUYWdnZXJUYWdTZWxlY3Rvck1vZHVsZSB7IH1cbiJdfQ==
|