ngx-edu-sharing-ui 0.7.0 → 9.0.1
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/assets/scss/mixins.scss +4 -1
- package/assets/scss/variables.scss +3 -0
- package/esm2022/lib/actionbar/actionbar.component.mjs +188 -0
- package/esm2022/lib/common/edu-sharing-ui-common.module.mjs +134 -0
- package/esm2022/lib/directives/border-box-observer.directive.mjs +71 -0
- package/esm2022/lib/directives/check-text-overflow.directive.mjs +65 -0
- package/esm2022/lib/directives/drag-nodes/drag-nodes.mjs +14 -0
- package/esm2022/lib/directives/drag-nodes/nodes-drag-source.directive.mjs +79 -0
- package/esm2022/lib/directives/drag-nodes/nodes-drag.directive.mjs +49 -0
- package/esm2022/lib/directives/drag-nodes/nodes-drop-target.directive.mjs +105 -0
- package/esm2022/lib/directives/focus-state.directive.mjs +44 -0
- package/esm2022/lib/directives/icon.directive.mjs +139 -0
- package/esm2022/lib/dropdown/dropdown.component.mjs +70 -0
- package/esm2022/lib/edu-sharing-ui-configuration.mjs +41 -0
- package/esm2022/lib/edu-sharing-ui.module.mjs +78 -0
- package/esm2022/lib/list-items/available-widgets.mjs +27 -0
- package/esm2022/lib/list-items/format-duration.pipe.mjs +20 -0
- package/esm2022/lib/list-items/list-base/list-base.component.mjs +46 -0
- package/esm2022/lib/list-items/list-collection-info/list-collection-info.component.mjs +29 -0
- package/esm2022/lib/list-items/list-counts/list-counts.component.mjs +54 -0
- package/esm2022/lib/list-items/list-items.module.mjs +50 -0
- package/esm2022/lib/list-items/list-node-license/list-node-license.component.mjs +41 -0
- package/esm2022/lib/list-items/list-node-replication-source/list-node-replication-source.component.mjs +47 -0
- package/esm2022/lib/list-items/list-node-workflow/list-node-workflow.component.mjs +24 -0
- package/esm2022/lib/list-items/list-text/list-text.component.mjs +106 -0
- package/esm2022/lib/list-items/list-widget.mjs +49 -0
- package/esm2022/lib/list-items/node-row/node-row.component.mjs +24 -0
- package/esm2022/lib/list-items/node-source.pipe.mjs +49 -0
- package/esm2022/lib/node-entries/combined-data-source.mjs +41 -0
- package/esm2022/lib/node-entries/custom-templates-data-source.mjs +7 -0
- package/esm2022/lib/node-entries/drag-preview/drag-preview.component.mjs +21 -0
- package/esm2022/lib/node-entries/entries-model.mjs +23 -0
- package/esm2022/lib/node-entries/items-cap.mjs +47 -0
- package/esm2022/lib/node-entries/list-item-label.pipe.mjs +34 -0
- package/esm2022/lib/node-entries/node-cache.mjs +65 -0
- package/esm2022/lib/node-entries/node-data-source-remote.mjs +4 -0
- package/esm2022/lib/node-entries/node-data-source.mjs +115 -0
- package/esm2022/lib/node-entries/node-entries-card/node-entries-card.component.mjs +131 -0
- package/esm2022/lib/node-entries/node-entries-card-grid/node-entries-card-grid.component.mjs +307 -0
- package/esm2022/lib/node-entries/node-entries-card-small/node-entries-card-small.component.mjs +45 -0
- package/esm2022/lib/node-entries/node-entries-global-options/node-entries-global-options.component.mjs +23 -0
- package/esm2022/lib/node-entries/node-entries-global.service.mjs +58 -0
- package/esm2022/lib/node-entries/node-entries-table/column-chooser/column-chooser.component.mjs +42 -0
- package/esm2022/lib/node-entries/node-entries-table/node-entries-table.component.mjs +290 -0
- package/esm2022/lib/node-entries/node-entries-templates.service.mjs +11 -0
- package/esm2022/lib/node-entries/node-entries-wrapper.component.mjs +324 -0
- package/esm2022/lib/node-entries/node-entries.component.mjs +131 -0
- package/esm2022/lib/node-entries/node-entries.module.mjs +161 -0
- package/esm2022/lib/node-entries/node-rating/node-rating.component.mjs +102 -0
- package/esm2022/lib/node-entries/node-stats-badges/node-stats-badges.component.mjs +48 -0
- package/esm2022/lib/node-entries/node-type-badge/node-type-badge.component.mjs +36 -0
- package/esm2022/lib/node-entries/option-button/option-button.component.mjs +62 -0
- package/esm2022/lib/node-entries/preview-image/preview-image.component.mjs +53 -0
- package/esm2022/lib/node-entries/sort-select-panel/sort-select-panel.component.mjs +41 -0
- package/esm2022/lib/node-url/node-url.component.mjs +128 -0
- package/esm2022/lib/pipes/file-size.pipe.mjs +31 -0
- package/esm2022/lib/pipes/format-date.pipe.mjs +38 -0
- package/esm2022/lib/pipes/node-icon.pipe.mjs +18 -0
- package/esm2022/lib/pipes/node-image-size.pipe.mjs +24 -0
- package/esm2022/lib/pipes/node-image.pipe.mjs +55 -0
- package/esm2022/lib/pipes/node-person-name.pipe.mjs +50 -0
- package/esm2022/lib/pipes/node-title.pipe.mjs +19 -0
- package/esm2022/lib/pipes/option-tooltip.pipe.mjs +33 -0
- package/esm2022/lib/pipes/replace-chars.pipe.mjs +29 -0
- package/esm2022/lib/pipes/vcard-name.pipe.mjs +19 -0
- package/esm2022/lib/services/abstract/app.service.mjs +3 -0
- package/esm2022/lib/services/abstract/keyboard-shortcuts.service.mjs +10 -0
- package/esm2022/lib/services/abstract/options-helper.service.mjs +3 -0
- package/esm2022/lib/services/abstract/toast.service.mjs +3 -0
- package/esm2022/lib/services/accessibility.service.mjs +73 -0
- package/esm2022/lib/services/local-events.service.mjs +36 -0
- package/esm2022/lib/services/node-entries.service.mjs +137 -0
- package/esm2022/lib/services/node-helper.service.mjs +234 -0
- package/esm2022/lib/services/nodes-drag-drop.service.mjs +155 -0
- package/esm2022/lib/services/options-helper-data.service.mjs +134 -0
- package/esm2022/lib/services/repo-url.service.mjs +49 -0
- package/esm2022/lib/services/temporary-storage.service.mjs +48 -0
- package/esm2022/lib/services/ui.service.mjs +162 -0
- package/esm2022/lib/sort-dropdown/sort-dropdown.component.mjs +50 -0
- package/esm2022/lib/spinner/spinner.component.mjs +18 -0
- package/esm2022/lib/translations/fallback-translation-handler.mjs +6 -0
- package/esm2022/lib/translations/languages.mjs +5 -0
- package/esm2022/lib/translations/translation-loader.mjs +149 -0
- package/esm2022/lib/translations/translation-source.mjs +11 -0
- package/esm2022/lib/translations/translations.module.mjs +67 -0
- package/esm2022/lib/translations/translations.service.mjs +171 -0
- package/esm2022/lib/types/accessibillity.mjs +19 -0
- package/esm2022/lib/types/api-models.mjs +2 -0
- package/esm2022/lib/types/drag-drop.mjs +2 -0
- package/esm2022/lib/types/keyboard-shortcuts.mjs +11 -0
- package/esm2022/lib/types/list-item.mjs +41 -0
- package/esm2022/lib/types/option-item.mjs +174 -0
- package/esm2022/lib/types/workflow.mjs +25 -0
- package/esm2022/lib/util/DateHelper.mjs +200 -0
- package/esm2022/lib/util/VCard.mjs +278 -0
- package/esm2022/lib/util/color-helper.mjs +124 -0
- package/esm2022/lib/util/duration-helper.mjs +102 -0
- package/esm2022/lib/util/functions.mjs +13 -0
- package/esm2022/lib/util/helper.mjs +64 -0
- package/esm2022/lib/util/isNumeric.mjs +11 -0
- package/esm2022/lib/util/rest-helper.mjs +33 -0
- package/esm2022/lib/util/ui-animation.mjs +146 -0
- package/esm2022/lib/util/ui-constants.mjs +21 -0
- package/esm2022/module.mjs +76 -0
- package/esm2022/ngx-edu-sharing-ui.mjs +5 -0
- package/fesm2022/ngx-edu-sharing-ui.mjs +6509 -0
- package/fesm2022/ngx-edu-sharing-ui.mjs.map +1 -0
- package/index.d.ts +5 -0
- package/lib/actionbar/actionbar.component.d.ts +74 -0
- package/lib/common/edu-sharing-ui-common.module.d.ts +32 -0
- package/lib/directives/border-box-observer.directive.d.ts +31 -0
- package/lib/directives/check-text-overflow.directive.d.ts +20 -0
- package/lib/directives/drag-nodes/drag-nodes.d.ts +16 -0
- package/lib/directives/drag-nodes/nodes-drag-source.directive.d.ts +37 -0
- package/lib/directives/drag-nodes/nodes-drag.directive.d.ts +17 -0
- package/lib/directives/drag-nodes/nodes-drop-target.directive.d.ts +22 -0
- package/lib/directives/focus-state.directive.d.ts +14 -0
- package/lib/directives/icon.directive.d.ts +46 -0
- package/lib/dropdown/dropdown.component.d.ts +40 -0
- package/lib/edu-sharing-ui-configuration.d.ts +11 -0
- package/lib/edu-sharing-ui.module.d.ts +19 -0
- package/lib/list-items/available-widgets.d.ts +13 -0
- package/lib/list-items/format-duration.pipe.d.ts +10 -0
- package/lib/list-items/list-base/list-base.component.d.ts +18 -0
- package/lib/list-items/list-collection-info/list-collection-info.component.d.ts +14 -0
- package/lib/list-items/list-counts/list-counts.component.d.ts +13 -0
- package/lib/list-items/list-items.module.d.ts +20 -0
- package/lib/list-items/list-node-license/list-node-license.component.d.ts +20 -0
- package/lib/list-items/list-node-replication-source/list-node-replication-source.component.d.ts +22 -0
- package/lib/list-items/list-node-workflow/list-node-workflow.component.d.ts +12 -0
- package/lib/list-items/list-text/list-text.component.d.ts +28 -0
- package/lib/list-items/list-widget.d.ts +32 -0
- package/lib/list-items/node-row/node-row.component.d.ts +12 -0
- package/lib/list-items/node-source.pipe.d.ts +16 -0
- package/lib/node-entries/combined-data-source.d.ts +19 -0
- package/{src/lib/node-entries/custom-templates-data-source.ts → lib/node-entries/custom-templates-data-source.d.ts} +2 -2
- package/lib/node-entries/drag-preview/drag-preview.component.d.ts +11 -0
- package/{src/lib/node-entries/entries-model.ts → lib/node-entries/entries-model.d.ts} +19 -47
- package/lib/node-entries/items-cap.d.ts +17 -0
- package/lib/node-entries/list-item-label.pipe.d.ts +14 -0
- package/lib/node-entries/node-cache.d.ts +17 -0
- package/{src/lib/node-entries/node-data-source-remote.ts → lib/node-entries/node-data-source-remote.d.ts} +2 -12
- package/lib/node-entries/node-data-source.d.ts +42 -0
- package/lib/node-entries/node-entries-card/node-entries-card.component.d.ts +45 -0
- package/lib/node-entries/node-entries-card-grid/node-entries-card-grid.component.d.ts +92 -0
- package/lib/node-entries/node-entries-card-small/node-entries-card-small.component.d.ts +23 -0
- package/lib/node-entries/node-entries-global-options/node-entries-global-options.component.d.ts +12 -0
- package/lib/node-entries/node-entries-global.service.d.ts +50 -0
- package/lib/node-entries/node-entries-table/column-chooser/column-chooser.component.d.ts +17 -0
- package/lib/node-entries/node-entries-table/node-entries-table.component.d.ts +76 -0
- package/{src/lib/node-entries/node-entries-templates.service.ts → lib/node-entries/node-entries-templates.service.d.ts} +6 -9
- package/lib/node-entries/node-entries-wrapper.component.d.ts +129 -0
- package/lib/node-entries/node-entries.component.d.ts +32 -0
- package/lib/node-entries/node-entries.module.d.ts +43 -0
- package/lib/node-entries/node-rating/node-rating.component.d.ts +26 -0
- package/lib/node-entries/node-stats-badges/node-stats-badges.component.d.ts +17 -0
- package/lib/node-entries/node-type-badge/node-type-badge.component.d.ts +21 -0
- package/lib/node-entries/option-button/option-button.component.d.ts +11 -0
- package/lib/node-entries/preview-image/preview-image.component.d.ts +22 -0
- package/lib/node-entries/sort-select-panel/sort-select-panel.component.d.ts +16 -0
- package/lib/node-url/node-url.component.d.ts +51 -0
- package/lib/pipes/file-size.pipe.d.ts +10 -0
- package/lib/pipes/format-date.pipe.d.ts +21 -0
- package/lib/pipes/node-icon.pipe.d.ts +11 -0
- package/lib/pipes/node-image-size.pipe.d.ts +8 -0
- package/lib/pipes/node-image.pipe.d.ts +28 -0
- package/lib/pipes/node-person-name.pipe.d.ts +10 -0
- package/lib/pipes/node-title.pipe.d.ts +11 -0
- package/lib/pipes/option-tooltip.pipe.d.ts +12 -0
- package/lib/pipes/replace-chars.pipe.d.ts +10 -0
- package/lib/pipes/vcard-name.pipe.d.ts +10 -0
- package/{src/lib/services/abstract/app.service.ts → lib/services/abstract/app.service.d.ts} +1 -1
- package/lib/services/abstract/keyboard-shortcuts.service.d.ts +11 -0
- package/lib/services/abstract/options-helper.service.d.ts +10 -0
- package/{src/lib/services/abstract/toast.service.ts → lib/services/abstract/toast.service.d.ts} +1 -2
- package/lib/services/accessibility.service.d.ts +18 -0
- package/{src/lib/services/local-events.service.ts → lib/services/local-events.service.d.ts} +7 -10
- package/lib/services/node-entries.service.d.ts +69 -0
- package/lib/services/node-helper.service.d.ts +56 -0
- package/lib/services/nodes-drag-drop.service.d.ts +41 -0
- package/lib/services/options-helper-data.service.d.ts +75 -0
- package/lib/services/repo-url.service.d.ts +25 -0
- package/lib/services/temporary-storage.service.d.ts +35 -0
- package/lib/services/ui.service.d.ts +41 -0
- package/lib/sort-dropdown/sort-dropdown.component.d.ts +15 -0
- package/lib/spinner/spinner.component.d.ts +7 -0
- package/lib/translations/fallback-translation-handler.d.ts +4 -0
- package/lib/translations/languages.d.ts +4 -0
- package/lib/translations/translation-loader.d.ts +51 -0
- package/{src/lib/translations/translation-source.ts → lib/translations/translation-source.d.ts} +4 -4
- package/lib/translations/translations.module.d.ts +15 -0
- package/lib/translations/translations.service.d.ts +30 -0
- package/lib/types/accessibillity.d.ts +15 -0
- package/{src/lib/types/drag-drop.ts → lib/types/drag-drop.d.ts} +0 -3
- package/lib/types/keyboard-shortcuts.d.ts +10 -0
- package/lib/types/list-item.d.ts +55 -0
- package/lib/types/option-item.d.ts +236 -0
- package/lib/types/workflow.d.ts +14 -0
- package/lib/util/DateHelper.d.ts +44 -0
- package/lib/util/VCard.d.ts +66 -0
- package/lib/util/color-helper.d.ts +25 -0
- package/lib/util/duration-helper.d.ts +14 -0
- package/lib/util/functions.d.ts +4 -0
- package/lib/util/helper.d.ts +20 -0
- package/lib/util/isNumeric.d.ts +5 -0
- package/lib/util/rest-helper.d.ts +10 -0
- package/lib/util/ui-animation.d.ts +39 -0
- package/lib/util/ui-constants.d.ts +18 -0
- package/{src/module.ts → module.d.ts} +0 -4
- package/package.json +23 -9
- package/.browserslistrc +0 -16
- package/.eslintrc.json +0 -44
- package/karma.conf.js +0 -42
- package/ng-package.json +0 -10
- package/src/lib/actionbar/actionbar.component.html +0 -59
- package/src/lib/actionbar/actionbar.component.scss +0 -123
- package/src/lib/actionbar/actionbar.component.ts +0 -174
- package/src/lib/common/edu-sharing-ui-common.module.ts +0 -80
- package/src/lib/directives/border-box-observer.directive.ts +0 -75
- package/src/lib/directives/check-text-overflow.directive.ts +0 -61
- package/src/lib/directives/drag-nodes/drag-nodes.ts +0 -32
- package/src/lib/directives/drag-nodes/nodes-drag-source.directive.ts +0 -79
- package/src/lib/directives/drag-nodes/nodes-drag.directive.ts +0 -43
- package/src/lib/directives/drag-nodes/nodes-drop-target.directive.ts +0 -116
- package/src/lib/directives/focus-state.directive.ts +0 -34
- package/src/lib/directives/icon.directive.ts +0 -142
- package/src/lib/directives/nodes-drop-target-legacy.directive.ts +0 -155
- package/src/lib/dropdown/dropdown.component.html +0 -32
- package/src/lib/dropdown/dropdown.component.scss +0 -67
- package/src/lib/dropdown/dropdown.component.ts +0 -71
- package/src/lib/edu-sharing-ui-configuration.ts +0 -47
- package/src/lib/edu-sharing-ui.module.ts +0 -49
- package/src/lib/list-items/available-widgets.ts +0 -30
- package/src/lib/list-items/format-duration.pipe.ts +0 -17
- package/src/lib/list-items/list-base/list-base.component.html +0 -52
- package/src/lib/list-items/list-base/list-base.component.ts +0 -44
- package/src/lib/list-items/list-collection-info/list-collection-info.component.html +0 -48
- package/src/lib/list-items/list-collection-info/list-collection-info.component.scss +0 -8
- package/src/lib/list-items/list-collection-info/list-collection-info.component.ts +0 -24
- package/src/lib/list-items/list-counts/list-counts.component.html +0 -1
- package/src/lib/list-items/list-counts/list-counts.component.scss +0 -3
- package/src/lib/list-items/list-counts/list-counts.component.ts +0 -59
- package/src/lib/list-items/list-items.module.ts +0 -33
- package/src/lib/list-items/list-node-license/list-node-license.component.html +0 -8
- package/src/lib/list-items/list-node-license/list-node-license.component.ts +0 -47
- package/src/lib/list-items/list-node-replication-source/list-node-replication-source.component.html +0 -11
- package/src/lib/list-items/list-node-replication-source/list-node-replication-source.component.ts +0 -60
- package/src/lib/list-items/list-node-workflow/list-node-workflow.component.html +0 -3
- package/src/lib/list-items/list-node-workflow/list-node-workflow.component.ts +0 -21
- package/src/lib/list-items/list-text/list-text.component.html +0 -176
- package/src/lib/list-items/list-text/list-text.component.scss +0 -3
- package/src/lib/list-items/list-text/list-text.component.ts +0 -107
- package/src/lib/list-items/list-widget.ts +0 -52
- package/src/lib/list-items/node-row/node-row.component.html +0 -31
- package/src/lib/list-items/node-row/node-row.component.scss +0 -50
- package/src/lib/list-items/node-row/node-row.component.ts +0 -16
- package/src/lib/list-items/node-source.pipe.ts +0 -48
- package/src/lib/node-entries/combined-data-source.ts +0 -51
- package/src/lib/node-entries/drag-preview/drag-preview.component.html +0 -6
- package/src/lib/node-entries/drag-preview/drag-preview.component.scss +0 -35
- package/src/lib/node-entries/drag-preview/drag-preview.component.ts +0 -15
- package/src/lib/node-entries/items-cap.ts +0 -54
- package/src/lib/node-entries/list-item-label.pipe.ts +0 -28
- package/src/lib/node-entries/mixins.scss +0 -23
- package/src/lib/node-entries/node-cache.spec.ts +0 -199
- package/src/lib/node-entries/node-cache.ts +0 -81
- package/src/lib/node-entries/node-data-source.ts +0 -148
- package/src/lib/node-entries/node-entries-card/node-entries-card.component.html +0 -167
- package/src/lib/node-entries/node-entries-card/node-entries-card.component.scss +0 -28
- package/src/lib/node-entries/node-entries-card/node-entries-card.component.ts +0 -132
- package/src/lib/node-entries/node-entries-card/node-entries-card.main.scss +0 -261
- package/src/lib/node-entries/node-entries-card-grid/node-entries-card-grid.component.html +0 -205
- package/src/lib/node-entries/node-entries-card-grid/node-entries-card-grid.component.scss +0 -181
- package/src/lib/node-entries/node-entries-card-grid/node-entries-card-grid.component.ts +0 -361
- package/src/lib/node-entries/node-entries-card-small/node-entries-card-small.component.html +0 -100
- package/src/lib/node-entries/node-entries-card-small/node-entries-card-small.component.scss +0 -46
- package/src/lib/node-entries/node-entries-card-small/node-entries-card-small.component.ts +0 -40
- package/src/lib/node-entries/node-entries-global-options/node-entries-global-options.component.html +0 -23
- package/src/lib/node-entries/node-entries-global-options/node-entries-global-options.component.scss +0 -58
- package/src/lib/node-entries/node-entries-global-options/node-entries-global-options.component.ts +0 -16
- package/src/lib/node-entries/node-entries-global.service.ts +0 -79
- package/src/lib/node-entries/node-entries-table/column-chooser/column-chooser.component.html +0 -25
- package/src/lib/node-entries/node-entries-table/column-chooser/column-chooser.component.scss +0 -32
- package/src/lib/node-entries/node-entries-table/column-chooser/column-chooser.component.ts +0 -31
- package/src/lib/node-entries/node-entries-table/node-entries-table.component.html +0 -270
- package/src/lib/node-entries/node-entries-table/node-entries-table.component.scss +0 -169
- package/src/lib/node-entries/node-entries-table/node-entries-table.component.ts +0 -333
- package/src/lib/node-entries/node-entries-wrapper.component.ts +0 -363
- package/src/lib/node-entries/node-entries.component.html +0 -33
- package/src/lib/node-entries/node-entries.component.scss +0 -13
- package/src/lib/node-entries/node-entries.component.ts +0 -151
- package/src/lib/node-entries/node-entries.module.ts +0 -93
- package/src/lib/node-entries/node-rating/node-rating.component.html +0 -53
- package/src/lib/node-entries/node-rating/node-rating.component.scss +0 -31
- package/src/lib/node-entries/node-rating/node-rating.component.ts +0 -105
- package/src/lib/node-entries/node-stats-badges/node-stats-badges.component.html +0 -39
- package/src/lib/node-entries/node-stats-badges/node-stats-badges.component.scss +0 -44
- package/src/lib/node-entries/node-stats-badges/node-stats-badges.component.ts +0 -43
- package/src/lib/node-entries/node-type-badge/node-type-badge.component.html +0 -31
- package/src/lib/node-entries/node-type-badge/node-type-badge.component.scss +0 -5
- package/src/lib/node-entries/node-type-badge/node-type-badge.component.ts +0 -36
- package/src/lib/node-entries/option-button/option-button.component.ts +0 -42
- package/src/lib/node-entries/preview-image/preview-image.component.html +0 -19
- package/src/lib/node-entries/preview-image/preview-image.component.scss +0 -31
- package/src/lib/node-entries/preview-image/preview-image.component.ts +0 -47
- package/src/lib/node-entries/sort-select-panel/sort-select-panel.component.html +0 -27
- package/src/lib/node-entries/sort-select-panel/sort-select-panel.component.scss +0 -9
- package/src/lib/node-entries/sort-select-panel/sort-select-panel.component.ts +0 -26
- package/src/lib/node-url/node-url.component.html +0 -66
- package/src/lib/node-url/node-url.component.scss +0 -32
- package/src/lib/node-url/node-url.component.ts +0 -136
- package/src/lib/pipes/file-size.pipe.ts +0 -24
- package/src/lib/pipes/format-date.pipe.ts +0 -39
- package/src/lib/pipes/node-icon.pipe.ts +0 -11
- package/src/lib/pipes/node-image-size.pipe.ts +0 -18
- package/src/lib/pipes/node-image.pipe.ts +0 -71
- package/src/lib/pipes/node-person-name.pipe.ts +0 -41
- package/src/lib/pipes/node-title.pipe.ts +0 -12
- package/src/lib/pipes/option-tooltip.pipe.ts +0 -32
- package/src/lib/pipes/replace-chars.pipe.ts +0 -21
- package/src/lib/pipes/vcard-name.pipe.ts +0 -11
- package/src/lib/services/abstract/keyboard-shortcuts.service.ts +0 -10
- package/src/lib/services/abstract/options-helper.service.ts +0 -29
- package/src/lib/services/accessibility.service.ts +0 -101
- package/src/lib/services/node-entries.service.ts +0 -172
- package/src/lib/services/node-helper.service.ts +0 -239
- package/src/lib/services/nodes-drag-drop.service.ts +0 -165
- package/src/lib/services/options-helper-data.service.ts +0 -186
- package/src/lib/services/repo-url.service.ts +0 -46
- package/src/lib/services/temporary-storage.service.ts +0 -58
- package/src/lib/services/ui.service.ts +0 -182
- package/src/lib/sort-dropdown/sort-dropdown.component.html +0 -22
- package/src/lib/sort-dropdown/sort-dropdown.component.scss +0 -47
- package/src/lib/sort-dropdown/sort-dropdown.component.ts +0 -42
- package/src/lib/spinner/spinner.component.html +0 -14
- package/src/lib/spinner/spinner.component.scss +0 -141
- package/src/lib/spinner/spinner.component.ts +0 -12
- package/src/lib/translations/README.md +0 -44
- package/src/lib/translations/fallback-translation-handler.ts +0 -7
- package/src/lib/translations/languages.ts +0 -6
- package/src/lib/translations/translation-loader.spec.ts +0 -352
- package/src/lib/translations/translation-loader.ts +0 -189
- package/src/lib/translations/translations.module.ts +0 -49
- package/src/lib/translations/translations.service.spec.ts +0 -152
- package/src/lib/translations/translations.service.ts +0 -188
- package/src/lib/types/accessibillity.ts +0 -15
- package/src/lib/types/keyboard-shortcuts.ts +0 -29
- package/src/lib/types/list-item.ts +0 -67
- package/src/lib/types/option-item.ts +0 -247
- package/src/lib/types/workflow.ts +0 -35
- package/src/lib/util/DateHelper.spec.ts +0 -112
- package/src/lib/util/DateHelper.ts +0 -197
- package/src/lib/util/VCard.ts +0 -277
- package/src/lib/util/color-helper.ts +0 -125
- package/src/lib/util/duration-helper.spec.ts +0 -35
- package/src/lib/util/duration-helper.ts +0 -98
- package/src/lib/util/functions.ts +0 -15
- package/src/lib/util/helper.ts +0 -60
- package/src/lib/util/isNumeric.ts +0 -13
- package/src/lib/util/rest-helper.ts +0 -28
- package/src/lib/util/ui-animation.ts +0 -154
- package/src/lib/util/ui-constants.ts +0 -20
- package/src/test.ts +0 -28
- package/tsconfig.lib.json +0 -15
- package/tsconfig.lib.prod.json +0 -10
- package/tsconfig.spec.json +0 -17
- /package/{src/lib/types/api-models.ts → lib/types/api-models.d.ts} +0 -0
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
import { Component } from '@angular/core';
|
|
2
|
+
import { RestConstants } from 'ngx-edu-sharing-api';
|
|
3
|
+
import { BehaviorSubject, merge } from 'rxjs';
|
|
4
|
+
import { switchMap } from 'rxjs/operators';
|
|
5
|
+
import { ListItem } from '../../types/list-item';
|
|
6
|
+
import { ListWidget } from '../list-widget';
|
|
7
|
+
import * as Constants from 'ngx-edu-sharing-api';
|
|
8
|
+
import * as i0 from "@angular/core";
|
|
9
|
+
import * as i1 from "../../services/node-helper.service";
|
|
10
|
+
import * as i2 from "ngx-edu-sharing-api";
|
|
11
|
+
import * as i3 from "@angular/common";
|
|
12
|
+
import * as i4 from "@angular/material/tooltip";
|
|
13
|
+
import * as i5 from "../../pipes/vcard-name.pipe";
|
|
14
|
+
import * as i6 from "../../pipes/file-size.pipe";
|
|
15
|
+
import * as i7 from "../../pipes/node-image-size.pipe";
|
|
16
|
+
import * as i8 from "../../pipes/node-person-name.pipe";
|
|
17
|
+
import * as i9 from "../../pipes/format-date.pipe";
|
|
18
|
+
import * as i10 from "@ngx-translate/core";
|
|
19
|
+
import * as i11 from "../node-source.pipe";
|
|
20
|
+
import * as i12 from "../format-duration.pipe";
|
|
21
|
+
export class ListTextComponent extends ListWidget {
|
|
22
|
+
static { this.supportedItems = [
|
|
23
|
+
new ListItem('NODE', '*'),
|
|
24
|
+
new ListItem('NODE_PROPOSAL', '*'),
|
|
25
|
+
new ListItem('COLLECTION', '*'),
|
|
26
|
+
new ListItem('ORG', '*'),
|
|
27
|
+
new ListItem('GROUP', '*'),
|
|
28
|
+
new ListItem('USER', '*'),
|
|
29
|
+
]; }
|
|
30
|
+
constructor(nodeHelper, mds, changeDetectorRef) {
|
|
31
|
+
super();
|
|
32
|
+
this.nodeHelper = nodeHelper;
|
|
33
|
+
this.mds = mds;
|
|
34
|
+
this.changeDetectorRef = changeDetectorRef;
|
|
35
|
+
this.DATE_FIELDS = RestConstants.DATE_FIELDS;
|
|
36
|
+
this.VCARD_FIELDS = RestConstants.getAllVCardFields();
|
|
37
|
+
this.displayName$ = new BehaviorSubject(null);
|
|
38
|
+
}
|
|
39
|
+
async ngOnChanges(changes) { }
|
|
40
|
+
async ngOnInit() {
|
|
41
|
+
merge([this.nodeSubject, this.itemSubject])
|
|
42
|
+
.pipe(switchMap(() => this.updateDisplayname()))
|
|
43
|
+
.subscribe((displayName) => { });
|
|
44
|
+
}
|
|
45
|
+
getNode() {
|
|
46
|
+
if (this.item.type === 'NODE_PROPOSAL') {
|
|
47
|
+
return this.node.proposal || this.node;
|
|
48
|
+
}
|
|
49
|
+
else if (this.node.type === RestConstants.CCM_TYPE_COLLECTION_PROPOSAL) {
|
|
50
|
+
return this.node.relations?.Original ?? this.node;
|
|
51
|
+
}
|
|
52
|
+
return this.node;
|
|
53
|
+
}
|
|
54
|
+
isUserProfileAttribute(attribute) {
|
|
55
|
+
return ([
|
|
56
|
+
RestConstants.AUTHORITY_FIRSTNAME,
|
|
57
|
+
RestConstants.AUTHORITY_LASTNAME,
|
|
58
|
+
RestConstants.AUTHORITY_EMAIL,
|
|
59
|
+
].indexOf(attribute) !== -1);
|
|
60
|
+
}
|
|
61
|
+
getWorkflowStatus() {
|
|
62
|
+
return this.nodeHelper.getWorkflowStatus(this.node).current;
|
|
63
|
+
}
|
|
64
|
+
getI18n(item) {
|
|
65
|
+
return (item.type === 'NODE_PROPOSAL' ? 'NODE_PROPOSAL' : 'NODE') + '.' + item.name;
|
|
66
|
+
}
|
|
67
|
+
isDangerousGroup() {
|
|
68
|
+
return (this.node.authorityName ===
|
|
69
|
+
RestConstants.GROUP_ALFRESCO_ADMINISTRATORS);
|
|
70
|
+
}
|
|
71
|
+
async updateDisplayname() {
|
|
72
|
+
const node = this.getNode();
|
|
73
|
+
if (!node.properties) {
|
|
74
|
+
this.displayName$.next('');
|
|
75
|
+
return;
|
|
76
|
+
}
|
|
77
|
+
this.displayName$.next(node.properties[this.item.name + '_DISPLAYNAME']?.length > 0
|
|
78
|
+
? node.properties[this.item.name + '_DISPLAYNAME'].join(', ')
|
|
79
|
+
: node.properties[this.item.name]?.join(', '));
|
|
80
|
+
const mds = await this.mds
|
|
81
|
+
.getMetadataSet({
|
|
82
|
+
repository: node.ref?.repo,
|
|
83
|
+
metadataSet: node.metadataset || Constants.DEFAULT,
|
|
84
|
+
})
|
|
85
|
+
.toPromise();
|
|
86
|
+
// @TODO
|
|
87
|
+
/*
|
|
88
|
+
const widget = MdsHelper.getWidget(this.item.name, null, mds.widgets);
|
|
89
|
+
if (widget?.values) {
|
|
90
|
+
const i18n = node.properties[this.item.name]
|
|
91
|
+
?.map((prop) => widget.values.filter((v) => v.id === prop)?.[0]?.caption)
|
|
92
|
+
.filter((cap) => !!cap);
|
|
93
|
+
if (i18n) {
|
|
94
|
+
this.displayName$.next(i18n.join(', '));
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
*/
|
|
98
|
+
}
|
|
99
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: ListTextComponent, deps: [{ token: i1.NodeHelperService }, { token: i2.MdsService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
100
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.6", type: ListTextComponent, selector: "es-list-text", usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<label *ngIf=\"item.config?.showLabel\">\n {{ getI18n(item) | translate }}\n</label>\n<ng-container *ngIf=\"item.type === 'ORG' || item.type === 'GROUP'\">\n <ng-container [ngSwitch]=\"item.name\">\n <span *ngSwitchCase=\"'displayName'\" [class.type-danger]=\"isDangerousGroup()\">\n {{ $any(getNode()).profile.displayName }}\n </span>\n <span *ngSwitchCase=\"'groupType'\">\n {{ 'PERMISSIONS.GROUP_TYPE.' + $any(getNode()).profile.groupType | translate }}\n </span>\n <span *ngSwitchDefault>\n {{ $any(getNode())[item.name] }}\n </span>\n </ng-container>\n</ng-container>\n<ng-container *ngIf=\"item.type === 'USER'\">\n <span *ngIf=\"isUserProfileAttribute(item.name)\">\n {{ $any(getNode()).profile[item.name] }}\n </span>\n <span *ngIf=\"item.name === 'status'\">\n {{ 'PERMISSIONS.USER_STATUS.' + $any(getNode()).status.status | translate }}\n </span>\n <span *ngIf=\"!isUserProfileAttribute(item.name) && item.name !== 'status'\">\n {{ $any(getNode())[item.name] }}\n </span>\n</ng-container>\n<ng-container\n [ngSwitch]=\"item.name\"\n *ngIf=\"item.type === 'NODE' || item.type === 'NODE_PROPOSAL' || item.type === 'COLLECTION'\"\n>\n <span *ngSwitchCase=\"'name'\">\n {{ $any(getNode()).name }}\n </span>\n <span\n *ngSwitchCase=\"'title'\"\n [matTooltip]=\"provideLabel ? $any(getNode()).title || $any(getNode()).name : null\"\n >\n {{ $any(getNode()).title || $any(getNode()).name }}\n </span>\n <span\n *ngSwitchCase=\"'cm:title'\"\n [matTooltip]=\"provideLabel ? $any(getNode()).title || $any(getNode()).name : null\"\n >\n {{ $any(getNode()).title || $any(getNode()).name }}\n </span>\n <span\n *ngSwitchCase=\"'cclom:title'\"\n [matTooltip]=\"provideLabel ? $any(getNode()).title || $any(getNode()).name : null\"\n >\n {{ $any(getNode()).title || $any(getNode()).name }}\n </span>\n <span\n *ngSwitchCase=\"'mediatype'\"\n [matTooltip]=\"provideLabel ? (getI18n(item) | translate) : null\"\n >\n <span *ngIf=\"provideLabel\" class=\"cdk-visually-hidden\">{{ getI18n(item) | translate }}:</span>\n {{ 'MEDIATYPE.' + $any(getNode()).mediatype | translate }}\n </span>\n <span *ngSwitchCase=\"'size'\" [matTooltip]=\"provideLabel ? (getI18n(item) | translate) : null\">\n <span *ngIf=\"provideLabel\" class=\"cdk-visually-hidden\">{{ getI18n(item) | translate }}:</span>\n {{ $any(getNode()).size | formatSize }}\n </span>\n <span\n *ngSwitchCase=\"'dimensions'\"\n [matTooltip]=\"provideLabel ? (getI18n(item) | translate) : null\"\n >\n <span *ngIf=\"provideLabel\" class=\"cdk-visually-hidden\">{{ getI18n(item) | translate }}:</span>\n {{ $any(getNode()) | NodeImageSize }}\n </span>\n <span\n *ngSwitchCase=\"'ccm:wf_status'\"\n [matTooltip]=\"provideLabel ? (getI18n(item) | translate) : null\"\n >\n <span *ngIf=\"provideLabel\" class=\"cdk-visually-hidden\">{{ getI18n(item) | translate }}:</span>\n {{ 'WORKFLOW.' + getWorkflowStatus().id | translate }}\n </span>\n <span\n *ngSwitchCase=\"'cm:creator'\"\n [matTooltip]=\"provideLabel ? (getI18n(item) | translate) : null\"\n >\n <span *ngIf=\"provideLabel\" class=\"cdk-visually-hidden\">{{ getI18n(item) | translate }}:</span>\n {{ $any(getNode()).createdBy | nodePersonName }}\n </span>\n <span\n *ngSwitchCase=\"'cm:modifier'\"\n [matTooltip]=\"provideLabel ? (getI18n(item) | translate) : null\"\n >\n <span *ngIf=\"provideLabel\" class=\"cdk-visually-hidden\"\n >{{ 'NODE.cm:modifier' | translate }}:</span\n >\n {{ $any(getNode()).modifiedBy | nodePersonName }}\n </span>\n <span\n *ngSwitchCase=\"'ccm:replicationsource'\"\n [matTooltip]=\"provideLabel ? (getI18n(item) | translate) : null\"\n >\n <span *ngIf=\"provideLabel\" class=\"cdk-visually-hidden\"\n >{{ 'NODE.ccm:replicationsource' | translate }}:</span\n >\n {{ $any(getNode()).properties['ccm:replicationsource'] | appNodeSource : { mode: 'text' } }}\n </span>\n <span\n *ngSwitchCase=\"'ccm:commonlicense_key'\"\n [matTooltip]=\"provideLabel ? (getI18n(item) | translate) : null\"\n >\n <span *ngIf=\"provideLabel\" class=\"cdk-visually-hidden\"\n >{{ 'NODE.ccm:commonlicense_key' | translate }}:</span\n >\n <ng-container *ngIf=\"$any(getNode()).properties['ccm:commonlicense_key'] as license\">\n {{\n license[0] === 'CUSTOM'\n ? $any(getNode()).properties['cclom:rights_description']\n : ('LICENSE.NAMES.' + $any(getNode()).properties['ccm:commonlicense_key']\n | translate : { fallback: $any(getNode()).properties['ccm:commonlicense_key'] })\n }}\n </ng-container>\n <ng-container *ngIf=\"!$any(getNode()).properties['ccm:commonlicense_key']\">\n {{ 'LICENSE.NAMES.NONE' | translate }}\n </ng-container>\n </span>\n <span\n *ngSwitchCase=\"'ccm:educationaltypicalagerange'\"\n [matTooltip]=\"provideLabel ? (getI18n(item) | translate) : null\"\n >\n <span *ngIf=\"provideLabel\" class=\"cdk-visually-hidden\"\n >{{ 'NODE.ccm:educationaltypicalagerange' | translate }}:</span\n >\n <ng-container\n *ngIf=\"\n $any(getNode()).properties['ccm:educationaltypicalagerange_from'] ||\n $any(getNode()).properties['ccm:educationaltypicalagerange_to']\n \"\n >\n {{ $any(getNode()).properties['ccm:educationaltypicalagerange_from'] }} -\n {{ $any(getNode()).properties['ccm:educationaltypicalagerange_to'] }}\n </ng-container>\n </span>\n <span\n *ngSwitchCase=\"'cclom:duration'\"\n [matTooltip]=\"provideLabel ? (getI18n(item) | translate) : null\"\n >\n <span *ngIf=\"provideLabel\" class=\"cdk-visually-hidden\"\n >{{ 'NODE.cclom:duration' | translate }}:</span\n >\n {{ $any(getNode()).properties['cclom:duration']?.[0] | formatDuration }}\n </span>\n <span\n *ngSwitchCase=\"'ccm:collection_proposal_status'\"\n [matTooltip]=\"provideLabel ? (getI18n(item) | translate) : null\"\n >\n <span *ngIf=\"provideLabel\" class=\"cdk-visually-hidden\"\n >{{ 'NODE.ccm:collection_proposal_status' | translate }}:</span\n >\n <!-- use node instead of getNode() to access the raw proposal data! -->\n {{ ('PROPOSAL_STATUS.' + $any(node).properties['ccm:collection_proposal_status']?.[0]) | translate:{fallback: ''} }}\n </span>\n <span *ngSwitchDefault [matTooltip]=\"provideLabel ? (getI18n(item) | translate) : null\">\n <span *ngIf=\"provideLabel\" class=\"cdk-visually-hidden\">{{ getI18n(item) | translate }}:</span>\n <ng-container\n *ngIf=\"DATE_FIELDS.indexOf(item.name) === -1 && VCARD_FIELDS.indexOf(item.name) === -1\"\n >\n {{ displayName$ | async }}\n </ng-container>\n <ng-container *ngIf=\"DATE_FIELDS.includes(item.name)\">\n {{ $any(getNode()).properties[item.name]?.[0] | formatDate: { async: true } | async }}\n </ng-container>\n <ng-container *ngIf=\"VCARD_FIELDS.includes(item.name)\">\n {{\n $any(getNode()).properties[item.name]\n ? ($any(getNode()).properties[item.name][0] | vcardName)\n : ''\n }}\n </ng-container>\n </span>\n</ng-container>\n", styles: [".type-danger{color:var(--warning)}\n"], dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i3.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i3.NgSwitchDefault, selector: "[ngSwitchDefault]" }, { kind: "directive", type: i4.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }, { kind: "pipe", type: i5.VCardNamePipe, name: "vcardName" }, { kind: "pipe", type: i6.FormatSizePipe, name: "formatSize" }, { kind: "pipe", type: i7.NodeImageSizePipe, name: "NodeImageSize" }, { kind: "pipe", type: i8.NodePersonNamePipe, name: "nodePersonName" }, { kind: "pipe", type: i9.FormatDatePipe, name: "formatDate" }, { kind: "pipe", type: i10.TranslatePipe, name: "translate" }, { kind: "pipe", type: i11.NodeSourcePipe, name: "appNodeSource" }, { kind: "pipe", type: i12.FormatDurationPipe, name: "formatDuration" }] }); }
|
|
101
|
+
}
|
|
102
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: ListTextComponent, decorators: [{
|
|
103
|
+
type: Component,
|
|
104
|
+
args: [{ selector: 'es-list-text', template: "<label *ngIf=\"item.config?.showLabel\">\n {{ getI18n(item) | translate }}\n</label>\n<ng-container *ngIf=\"item.type === 'ORG' || item.type === 'GROUP'\">\n <ng-container [ngSwitch]=\"item.name\">\n <span *ngSwitchCase=\"'displayName'\" [class.type-danger]=\"isDangerousGroup()\">\n {{ $any(getNode()).profile.displayName }}\n </span>\n <span *ngSwitchCase=\"'groupType'\">\n {{ 'PERMISSIONS.GROUP_TYPE.' + $any(getNode()).profile.groupType | translate }}\n </span>\n <span *ngSwitchDefault>\n {{ $any(getNode())[item.name] }}\n </span>\n </ng-container>\n</ng-container>\n<ng-container *ngIf=\"item.type === 'USER'\">\n <span *ngIf=\"isUserProfileAttribute(item.name)\">\n {{ $any(getNode()).profile[item.name] }}\n </span>\n <span *ngIf=\"item.name === 'status'\">\n {{ 'PERMISSIONS.USER_STATUS.' + $any(getNode()).status.status | translate }}\n </span>\n <span *ngIf=\"!isUserProfileAttribute(item.name) && item.name !== 'status'\">\n {{ $any(getNode())[item.name] }}\n </span>\n</ng-container>\n<ng-container\n [ngSwitch]=\"item.name\"\n *ngIf=\"item.type === 'NODE' || item.type === 'NODE_PROPOSAL' || item.type === 'COLLECTION'\"\n>\n <span *ngSwitchCase=\"'name'\">\n {{ $any(getNode()).name }}\n </span>\n <span\n *ngSwitchCase=\"'title'\"\n [matTooltip]=\"provideLabel ? $any(getNode()).title || $any(getNode()).name : null\"\n >\n {{ $any(getNode()).title || $any(getNode()).name }}\n </span>\n <span\n *ngSwitchCase=\"'cm:title'\"\n [matTooltip]=\"provideLabel ? $any(getNode()).title || $any(getNode()).name : null\"\n >\n {{ $any(getNode()).title || $any(getNode()).name }}\n </span>\n <span\n *ngSwitchCase=\"'cclom:title'\"\n [matTooltip]=\"provideLabel ? $any(getNode()).title || $any(getNode()).name : null\"\n >\n {{ $any(getNode()).title || $any(getNode()).name }}\n </span>\n <span\n *ngSwitchCase=\"'mediatype'\"\n [matTooltip]=\"provideLabel ? (getI18n(item) | translate) : null\"\n >\n <span *ngIf=\"provideLabel\" class=\"cdk-visually-hidden\">{{ getI18n(item) | translate }}:</span>\n {{ 'MEDIATYPE.' + $any(getNode()).mediatype | translate }}\n </span>\n <span *ngSwitchCase=\"'size'\" [matTooltip]=\"provideLabel ? (getI18n(item) | translate) : null\">\n <span *ngIf=\"provideLabel\" class=\"cdk-visually-hidden\">{{ getI18n(item) | translate }}:</span>\n {{ $any(getNode()).size | formatSize }}\n </span>\n <span\n *ngSwitchCase=\"'dimensions'\"\n [matTooltip]=\"provideLabel ? (getI18n(item) | translate) : null\"\n >\n <span *ngIf=\"provideLabel\" class=\"cdk-visually-hidden\">{{ getI18n(item) | translate }}:</span>\n {{ $any(getNode()) | NodeImageSize }}\n </span>\n <span\n *ngSwitchCase=\"'ccm:wf_status'\"\n [matTooltip]=\"provideLabel ? (getI18n(item) | translate) : null\"\n >\n <span *ngIf=\"provideLabel\" class=\"cdk-visually-hidden\">{{ getI18n(item) | translate }}:</span>\n {{ 'WORKFLOW.' + getWorkflowStatus().id | translate }}\n </span>\n <span\n *ngSwitchCase=\"'cm:creator'\"\n [matTooltip]=\"provideLabel ? (getI18n(item) | translate) : null\"\n >\n <span *ngIf=\"provideLabel\" class=\"cdk-visually-hidden\">{{ getI18n(item) | translate }}:</span>\n {{ $any(getNode()).createdBy | nodePersonName }}\n </span>\n <span\n *ngSwitchCase=\"'cm:modifier'\"\n [matTooltip]=\"provideLabel ? (getI18n(item) | translate) : null\"\n >\n <span *ngIf=\"provideLabel\" class=\"cdk-visually-hidden\"\n >{{ 'NODE.cm:modifier' | translate }}:</span\n >\n {{ $any(getNode()).modifiedBy | nodePersonName }}\n </span>\n <span\n *ngSwitchCase=\"'ccm:replicationsource'\"\n [matTooltip]=\"provideLabel ? (getI18n(item) | translate) : null\"\n >\n <span *ngIf=\"provideLabel\" class=\"cdk-visually-hidden\"\n >{{ 'NODE.ccm:replicationsource' | translate }}:</span\n >\n {{ $any(getNode()).properties['ccm:replicationsource'] | appNodeSource : { mode: 'text' } }}\n </span>\n <span\n *ngSwitchCase=\"'ccm:commonlicense_key'\"\n [matTooltip]=\"provideLabel ? (getI18n(item) | translate) : null\"\n >\n <span *ngIf=\"provideLabel\" class=\"cdk-visually-hidden\"\n >{{ 'NODE.ccm:commonlicense_key' | translate }}:</span\n >\n <ng-container *ngIf=\"$any(getNode()).properties['ccm:commonlicense_key'] as license\">\n {{\n license[0] === 'CUSTOM'\n ? $any(getNode()).properties['cclom:rights_description']\n : ('LICENSE.NAMES.' + $any(getNode()).properties['ccm:commonlicense_key']\n | translate : { fallback: $any(getNode()).properties['ccm:commonlicense_key'] })\n }}\n </ng-container>\n <ng-container *ngIf=\"!$any(getNode()).properties['ccm:commonlicense_key']\">\n {{ 'LICENSE.NAMES.NONE' | translate }}\n </ng-container>\n </span>\n <span\n *ngSwitchCase=\"'ccm:educationaltypicalagerange'\"\n [matTooltip]=\"provideLabel ? (getI18n(item) | translate) : null\"\n >\n <span *ngIf=\"provideLabel\" class=\"cdk-visually-hidden\"\n >{{ 'NODE.ccm:educationaltypicalagerange' | translate }}:</span\n >\n <ng-container\n *ngIf=\"\n $any(getNode()).properties['ccm:educationaltypicalagerange_from'] ||\n $any(getNode()).properties['ccm:educationaltypicalagerange_to']\n \"\n >\n {{ $any(getNode()).properties['ccm:educationaltypicalagerange_from'] }} -\n {{ $any(getNode()).properties['ccm:educationaltypicalagerange_to'] }}\n </ng-container>\n </span>\n <span\n *ngSwitchCase=\"'cclom:duration'\"\n [matTooltip]=\"provideLabel ? (getI18n(item) | translate) : null\"\n >\n <span *ngIf=\"provideLabel\" class=\"cdk-visually-hidden\"\n >{{ 'NODE.cclom:duration' | translate }}:</span\n >\n {{ $any(getNode()).properties['cclom:duration']?.[0] | formatDuration }}\n </span>\n <span\n *ngSwitchCase=\"'ccm:collection_proposal_status'\"\n [matTooltip]=\"provideLabel ? (getI18n(item) | translate) : null\"\n >\n <span *ngIf=\"provideLabel\" class=\"cdk-visually-hidden\"\n >{{ 'NODE.ccm:collection_proposal_status' | translate }}:</span\n >\n <!-- use node instead of getNode() to access the raw proposal data! -->\n {{ ('PROPOSAL_STATUS.' + $any(node).properties['ccm:collection_proposal_status']?.[0]) | translate:{fallback: ''} }}\n </span>\n <span *ngSwitchDefault [matTooltip]=\"provideLabel ? (getI18n(item) | translate) : null\">\n <span *ngIf=\"provideLabel\" class=\"cdk-visually-hidden\">{{ getI18n(item) | translate }}:</span>\n <ng-container\n *ngIf=\"DATE_FIELDS.indexOf(item.name) === -1 && VCARD_FIELDS.indexOf(item.name) === -1\"\n >\n {{ displayName$ | async }}\n </ng-container>\n <ng-container *ngIf=\"DATE_FIELDS.includes(item.name)\">\n {{ $any(getNode()).properties[item.name]?.[0] | formatDate: { async: true } | async }}\n </ng-container>\n <ng-container *ngIf=\"VCARD_FIELDS.includes(item.name)\">\n {{\n $any(getNode()).properties[item.name]\n ? ($any(getNode()).properties[item.name][0] | vcardName)\n : ''\n }}\n </ng-container>\n </span>\n</ng-container>\n", styles: [".type-danger{color:var(--warning)}\n"] }]
|
|
105
|
+
}], ctorParameters: function () { return [{ type: i1.NodeHelperService }, { type: i2.MdsService }, { type: i0.ChangeDetectorRef }]; } });
|
|
106
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdC10ZXh0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VkdS1zaGFyaW5nLXVpL3NyYy9saWIvbGlzdC1pdGVtcy9saXN0LXRleHQvbGlzdC10ZXh0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VkdS1zaGFyaW5nLXVpL3NyYy9saWIvbGlzdC1pdGVtcy9saXN0LXRleHQvbGlzdC10ZXh0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBcUIsU0FBUyxFQUF5QixNQUFNLGVBQWUsQ0FBQztBQUNwRixPQUFPLEVBQWtDLGFBQWEsRUFBZ0IsTUFBTSxxQkFBcUIsQ0FBQztBQUNsRyxPQUFPLEVBQUUsZUFBZSxFQUFFLEtBQUssRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUM5QyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDM0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ2pELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUU1QyxPQUFPLEtBQUssU0FBUyxNQUFNLHFCQUFxQixDQUFDOzs7Ozs7Ozs7Ozs7OztBQU9qRCxNQUFNLE9BQU8saUJBQWtCLFNBQVEsVUFBVTthQUN0QyxtQkFBYyxHQUFHO1FBQ3BCLElBQUksUUFBUSxDQUFDLE1BQU0sRUFBRSxHQUFHLENBQUM7UUFDekIsSUFBSSxRQUFRLENBQUMsZUFBZSxFQUFFLEdBQUcsQ0FBQztRQUNsQyxJQUFJLFFBQVEsQ0FBQyxZQUFZLEVBQUUsR0FBRyxDQUFDO1FBQy9CLElBQUksUUFBUSxDQUFDLEtBQUssRUFBRSxHQUFHLENBQUM7UUFDeEIsSUFBSSxRQUFRLENBQUMsT0FBTyxFQUFFLEdBQUcsQ0FBQztRQUMxQixJQUFJLFFBQVEsQ0FBQyxNQUFNLEVBQUUsR0FBRyxDQUFDO0tBQzVCLENBQUM7SUFLRixZQUNZLFVBQTZCLEVBQzdCLEdBQWUsRUFDZixpQkFBb0M7UUFFNUMsS0FBSyxFQUFFLENBQUM7UUFKQSxlQUFVLEdBQVYsVUFBVSxDQUFtQjtRQUM3QixRQUFHLEdBQUgsR0FBRyxDQUFZO1FBQ2Ysc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFtQjtRQVB2QyxnQkFBVyxHQUFHLGFBQWEsQ0FBQyxXQUFXLENBQUM7UUFDeEMsaUJBQVksR0FBRyxhQUFhLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztRQUMxRCxpQkFBWSxHQUFHLElBQUksZUFBZSxDQUFTLElBQUksQ0FBQyxDQUFDO0lBUWpELENBQUM7SUFFRCxLQUFLLENBQUMsV0FBVyxDQUFDLE9BQXNCLElBQUcsQ0FBQztJQUU1QyxLQUFLLENBQUMsUUFBUTtRQUNWLEtBQUssQ0FBQyxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO2FBQ3RDLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUMsQ0FBQzthQUMvQyxTQUFTLENBQUMsQ0FBQyxXQUFXLEVBQUUsRUFBRSxHQUFFLENBQUMsQ0FBQyxDQUFDO0lBQ3hDLENBQUM7SUFDRCxPQUFPO1FBQ0gsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksS0FBSyxlQUFlLEVBQUU7WUFDcEMsT0FBUSxJQUFJLENBQUMsSUFBcUIsQ0FBQyxRQUFRLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQztTQUM1RDthQUFNLElBQUssSUFBSSxDQUFDLElBQWEsQ0FBQyxJQUFJLEtBQUssYUFBYSxDQUFDLDRCQUE0QixFQUFFO1lBQ2hGLE9BQVEsSUFBSSxDQUFDLElBQWEsQ0FBQyxTQUFTLEVBQUUsUUFBUSxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUM7U0FDL0Q7UUFDRCxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUM7SUFDckIsQ0FBQztJQUVELHNCQUFzQixDQUFDLFNBQWlCO1FBQ3BDLE9BQU8sQ0FDSDtZQUNJLGFBQWEsQ0FBQyxtQkFBbUI7WUFDakMsYUFBYSxDQUFDLGtCQUFrQjtZQUNoQyxhQUFhLENBQUMsZUFBZTtTQUNoQyxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FDOUIsQ0FBQztJQUNOLENBQUM7SUFDRCxpQkFBaUI7UUFDYixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLElBQVksQ0FBQyxDQUFDLE9BQU8sQ0FBQztJQUN4RSxDQUFDO0lBRUQsT0FBTyxDQUFDLElBQWM7UUFDbEIsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLEtBQUssZUFBZSxDQUFDLENBQUMsQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxHQUFHLEdBQUcsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDO0lBQ3hGLENBQUM7SUFFRCxnQkFBZ0I7UUFDWixPQUFPLENBQ0YsSUFBSSxDQUFDLElBQXFCLENBQUMsYUFBYTtZQUN6QyxhQUFhLENBQUMsNkJBQTZCLENBQzlDLENBQUM7SUFDTixDQUFDO0lBRU8sS0FBSyxDQUFDLGlCQUFpQjtRQUMzQixNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsT0FBTyxFQUFVLENBQUM7UUFDcEMsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUU7WUFDbEIsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7WUFDM0IsT0FBTztTQUNWO1FBQ0QsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQ2xCLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLEdBQUcsY0FBYyxDQUFDLEVBQUUsTUFBTSxHQUFHLENBQUM7WUFDeEQsQ0FBQyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLEdBQUcsY0FBYyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQztZQUM3RCxDQUFDLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FDcEQsQ0FBQztRQUVGLE1BQU0sR0FBRyxHQUFHLE1BQU0sSUFBSSxDQUFDLEdBQUc7YUFDckIsY0FBYyxDQUFDO1lBQ1osVUFBVSxFQUFFLElBQUksQ0FBQyxHQUFHLEVBQUUsSUFBSTtZQUMxQixXQUFXLEVBQUUsSUFBSSxDQUFDLFdBQVcsSUFBSSxTQUFTLENBQUMsT0FBTztTQUNyRCxDQUFDO2FBQ0QsU0FBUyxFQUFFLENBQUM7UUFDakIsUUFBUTtRQUNSOzs7Ozs7Ozs7O1dBVUc7SUFDUCxDQUFDOzhHQTNGUSxpQkFBaUI7a0dBQWpCLGlCQUFpQixnR0NkOUIsNmdPQWdMQTs7MkZEbEthLGlCQUFpQjtrQkFMN0IsU0FBUzsrQkFDSSxjQUFjIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgT25Jbml0LCBTaW1wbGVDaGFuZ2VzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNZHNTZXJ2aWNlLCBOb2RlLCBPcmdhbml6YXRpb24sIFJlc3RDb25zdGFudHMsIFByb3Bvc2FsTm9kZSB9IGZyb20gJ25neC1lZHUtc2hhcmluZy1hcGknO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBtZXJnZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgc3dpdGNoTWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgTGlzdEl0ZW0gfSBmcm9tICcuLi8uLi90eXBlcy9saXN0LWl0ZW0nO1xuaW1wb3J0IHsgTGlzdFdpZGdldCB9IGZyb20gJy4uL2xpc3Qtd2lkZ2V0JztcbmltcG9ydCB7IE5vZGVIZWxwZXJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvbm9kZS1oZWxwZXIuc2VydmljZSc7XG5pbXBvcnQgKiBhcyBDb25zdGFudHMgZnJvbSAnbmd4LWVkdS1zaGFyaW5nLWFwaSc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnZXMtbGlzdC10ZXh0JyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vbGlzdC10ZXh0LmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9saXN0LXRleHQuY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgTGlzdFRleHRDb21wb25lbnQgZXh0ZW5kcyBMaXN0V2lkZ2V0IGltcGxlbWVudHMgT25Jbml0IHtcbiAgICBzdGF0aWMgc3VwcG9ydGVkSXRlbXMgPSBbXG4gICAgICAgIG5ldyBMaXN0SXRlbSgnTk9ERScsICcqJyksXG4gICAgICAgIG5ldyBMaXN0SXRlbSgnTk9ERV9QUk9QT1NBTCcsICcqJyksXG4gICAgICAgIG5ldyBMaXN0SXRlbSgnQ09MTEVDVElPTicsICcqJyksXG4gICAgICAgIG5ldyBMaXN0SXRlbSgnT1JHJywgJyonKSxcbiAgICAgICAgbmV3IExpc3RJdGVtKCdHUk9VUCcsICcqJyksXG4gICAgICAgIG5ldyBMaXN0SXRlbSgnVVNFUicsICcqJyksXG4gICAgXTtcbiAgICByZWFkb25seSBEQVRFX0ZJRUxEUyA9IFJlc3RDb25zdGFudHMuREFURV9GSUVMRFM7XG4gICAgcmVhZG9ubHkgVkNBUkRfRklFTERTID0gUmVzdENvbnN0YW50cy5nZXRBbGxWQ2FyZEZpZWxkcygpO1xuICAgIGRpc3BsYXlOYW1lJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8c3RyaW5nPihudWxsKTtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIG5vZGVIZWxwZXI6IE5vZGVIZWxwZXJTZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIG1kczogTWRzU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSBjaGFuZ2VEZXRlY3RvclJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgKSB7XG4gICAgICAgIHN1cGVyKCk7XG4gICAgfVxuXG4gICAgYXN5bmMgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcykge31cblxuICAgIGFzeW5jIG5nT25Jbml0KCkge1xuICAgICAgICBtZXJnZShbdGhpcy5ub2RlU3ViamVjdCwgdGhpcy5pdGVtU3ViamVjdF0pXG4gICAgICAgICAgICAucGlwZShzd2l0Y2hNYXAoKCkgPT4gdGhpcy51cGRhdGVEaXNwbGF5bmFtZSgpKSlcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKGRpc3BsYXlOYW1lKSA9PiB7fSk7XG4gICAgfVxuICAgIGdldE5vZGUoKSB7XG4gICAgICAgIGlmICh0aGlzLml0ZW0udHlwZSA9PT0gJ05PREVfUFJPUE9TQUwnKSB7XG4gICAgICAgICAgICByZXR1cm4gKHRoaXMubm9kZSBhcyBQcm9wb3NhbE5vZGUpLnByb3Bvc2FsIHx8IHRoaXMubm9kZTtcbiAgICAgICAgfSBlbHNlIGlmICgodGhpcy5ub2RlIGFzIE5vZGUpLnR5cGUgPT09IFJlc3RDb25zdGFudHMuQ0NNX1RZUEVfQ09MTEVDVElPTl9QUk9QT1NBTCkge1xuICAgICAgICAgICAgcmV0dXJuICh0aGlzLm5vZGUgYXMgTm9kZSkucmVsYXRpb25zPy5PcmlnaW5hbCA/PyB0aGlzLm5vZGU7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHRoaXMubm9kZTtcbiAgICB9XG5cbiAgICBpc1VzZXJQcm9maWxlQXR0cmlidXRlKGF0dHJpYnV0ZTogc3RyaW5nKSB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICBbXG4gICAgICAgICAgICAgICAgUmVzdENvbnN0YW50cy5BVVRIT1JJVFlfRklSU1ROQU1FLFxuICAgICAgICAgICAgICAgIFJlc3RDb25zdGFudHMuQVVUSE9SSVRZX0xBU1ROQU1FLFxuICAgICAgICAgICAgICAgIFJlc3RDb25zdGFudHMuQVVUSE9SSVRZX0VNQUlMLFxuICAgICAgICAgICAgXS5pbmRleE9mKGF0dHJpYnV0ZSkgIT09IC0xXG4gICAgICAgICk7XG4gICAgfVxuICAgIGdldFdvcmtmbG93U3RhdHVzKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5ub2RlSGVscGVyLmdldFdvcmtmbG93U3RhdHVzKHRoaXMubm9kZSBhcyBOb2RlKS5jdXJyZW50O1xuICAgIH1cblxuICAgIGdldEkxOG4oaXRlbTogTGlzdEl0ZW0pIHtcbiAgICAgICAgcmV0dXJuIChpdGVtLnR5cGUgPT09ICdOT0RFX1BST1BPU0FMJyA/ICdOT0RFX1BST1BPU0FMJyA6ICdOT0RFJykgKyAnLicgKyBpdGVtLm5hbWU7XG4gICAgfVxuXG4gICAgaXNEYW5nZXJvdXNHcm91cCgpIHtcbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgICh0aGlzLm5vZGUgYXMgT3JnYW5pemF0aW9uKS5hdXRob3JpdHlOYW1lID09PVxuICAgICAgICAgICAgUmVzdENvbnN0YW50cy5HUk9VUF9BTEZSRVNDT19BRE1JTklTVFJBVE9SU1xuICAgICAgICApO1xuICAgIH1cblxuICAgIHByaXZhdGUgYXN5bmMgdXBkYXRlRGlzcGxheW5hbWUoKSB7XG4gICAgICAgIGNvbnN0IG5vZGUgPSB0aGlzLmdldE5vZGUoKSBhcyBOb2RlO1xuICAgICAgICBpZiAoIW5vZGUucHJvcGVydGllcykge1xuICAgICAgICAgICAgdGhpcy5kaXNwbGF5TmFtZSQubmV4dCgnJyk7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5kaXNwbGF5TmFtZSQubmV4dChcbiAgICAgICAgICAgIG5vZGUucHJvcGVydGllc1t0aGlzLml0ZW0ubmFtZSArICdfRElTUExBWU5BTUUnXT8ubGVuZ3RoID4gMFxuICAgICAgICAgICAgICAgID8gbm9kZS5wcm9wZXJ0aWVzW3RoaXMuaXRlbS5uYW1lICsgJ19ESVNQTEFZTkFNRSddLmpvaW4oJywgJylcbiAgICAgICAgICAgICAgICA6IG5vZGUucHJvcGVydGllc1t0aGlzLml0ZW0ubmFtZV0/LmpvaW4oJywgJyksXG4gICAgICAgICk7XG5cbiAgICAgICAgY29uc3QgbWRzID0gYXdhaXQgdGhpcy5tZHNcbiAgICAgICAgICAgIC5nZXRNZXRhZGF0YVNldCh7XG4gICAgICAgICAgICAgICAgcmVwb3NpdG9yeTogbm9kZS5yZWY/LnJlcG8sXG4gICAgICAgICAgICAgICAgbWV0YWRhdGFTZXQ6IG5vZGUubWV0YWRhdGFzZXQgfHwgQ29uc3RhbnRzLkRFRkFVTFQsXG4gICAgICAgICAgICB9KVxuICAgICAgICAgICAgLnRvUHJvbWlzZSgpO1xuICAgICAgICAvLyBAVE9ET1xuICAgICAgICAvKlxuICAgICAgICBjb25zdCB3aWRnZXQgPSBNZHNIZWxwZXIuZ2V0V2lkZ2V0KHRoaXMuaXRlbS5uYW1lLCBudWxsLCBtZHMud2lkZ2V0cyk7XG4gICAgICAgIGlmICh3aWRnZXQ/LnZhbHVlcykge1xuICAgICAgICAgICAgY29uc3QgaTE4biA9IG5vZGUucHJvcGVydGllc1t0aGlzLml0ZW0ubmFtZV1cbiAgICAgICAgICAgICAgICA/Lm1hcCgocHJvcCkgPT4gd2lkZ2V0LnZhbHVlcy5maWx0ZXIoKHYpID0+IHYuaWQgPT09IHByb3ApPy5bMF0/LmNhcHRpb24pXG4gICAgICAgICAgICAgICAgLmZpbHRlcigoY2FwKSA9PiAhIWNhcCk7XG4gICAgICAgICAgICBpZiAoaTE4bikge1xuICAgICAgICAgICAgICAgIHRoaXMuZGlzcGxheU5hbWUkLm5leHQoaTE4bi5qb2luKCcsICcpKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAgKi9cbiAgICB9XG59XG4iLCI8bGFiZWwgKm5nSWY9XCJpdGVtLmNvbmZpZz8uc2hvd0xhYmVsXCI+XG4gIHt7IGdldEkxOG4oaXRlbSkgfCB0cmFuc2xhdGUgfX1cbjwvbGFiZWw+XG48bmctY29udGFpbmVyICpuZ0lmPVwiaXRlbS50eXBlID09PSAnT1JHJyB8fCBpdGVtLnR5cGUgPT09ICdHUk9VUCdcIj5cbiAgPG5nLWNvbnRhaW5lciBbbmdTd2l0Y2hdPVwiaXRlbS5uYW1lXCI+XG4gICAgPHNwYW4gKm5nU3dpdGNoQ2FzZT1cIidkaXNwbGF5TmFtZSdcIiBbY2xhc3MudHlwZS1kYW5nZXJdPVwiaXNEYW5nZXJvdXNHcm91cCgpXCI+XG4gICAgICB7eyAkYW55KGdldE5vZGUoKSkucHJvZmlsZS5kaXNwbGF5TmFtZSB9fVxuICAgIDwvc3Bhbj5cbiAgICA8c3BhbiAqbmdTd2l0Y2hDYXNlPVwiJ2dyb3VwVHlwZSdcIj5cbiAgICAgIHt7ICdQRVJNSVNTSU9OUy5HUk9VUF9UWVBFLicgKyAkYW55KGdldE5vZGUoKSkucHJvZmlsZS5ncm91cFR5cGUgfCB0cmFuc2xhdGUgfX1cbiAgICA8L3NwYW4+XG4gICAgPHNwYW4gKm5nU3dpdGNoRGVmYXVsdD5cbiAgICAgIHt7ICRhbnkoZ2V0Tm9kZSgpKVtpdGVtLm5hbWVdIH19XG4gICAgPC9zcGFuPlxuICA8L25nLWNvbnRhaW5lcj5cbjwvbmctY29udGFpbmVyPlxuPG5nLWNvbnRhaW5lciAqbmdJZj1cIml0ZW0udHlwZSA9PT0gJ1VTRVInXCI+XG4gIDxzcGFuICpuZ0lmPVwiaXNVc2VyUHJvZmlsZUF0dHJpYnV0ZShpdGVtLm5hbWUpXCI+XG4gICAge3sgJGFueShnZXROb2RlKCkpLnByb2ZpbGVbaXRlbS5uYW1lXSB9fVxuICA8L3NwYW4+XG4gIDxzcGFuICpuZ0lmPVwiaXRlbS5uYW1lID09PSAnc3RhdHVzJ1wiPlxuICAgIHt7ICdQRVJNSVNTSU9OUy5VU0VSX1NUQVRVUy4nICsgJGFueShnZXROb2RlKCkpLnN0YXR1cy5zdGF0dXMgfCB0cmFuc2xhdGUgfX1cbiAgPC9zcGFuPlxuICA8c3BhbiAqbmdJZj1cIiFpc1VzZXJQcm9maWxlQXR0cmlidXRlKGl0ZW0ubmFtZSkgJiYgaXRlbS5uYW1lICE9PSAnc3RhdHVzJ1wiPlxuICAgIHt7ICRhbnkoZ2V0Tm9kZSgpKVtpdGVtLm5hbWVdIH19XG4gIDwvc3Bhbj5cbjwvbmctY29udGFpbmVyPlxuPG5nLWNvbnRhaW5lclxuICBbbmdTd2l0Y2hdPVwiaXRlbS5uYW1lXCJcbiAgKm5nSWY9XCJpdGVtLnR5cGUgPT09ICdOT0RFJyB8fCBpdGVtLnR5cGUgPT09ICdOT0RFX1BST1BPU0FMJyB8fCBpdGVtLnR5cGUgPT09ICdDT0xMRUNUSU9OJ1wiXG4+XG4gIDxzcGFuICpuZ1N3aXRjaENhc2U9XCInbmFtZSdcIj5cbiAgICB7eyAkYW55KGdldE5vZGUoKSkubmFtZSB9fVxuICA8L3NwYW4+XG4gIDxzcGFuXG4gICAgKm5nU3dpdGNoQ2FzZT1cIid0aXRsZSdcIlxuICAgIFttYXRUb29sdGlwXT1cInByb3ZpZGVMYWJlbCA/ICRhbnkoZ2V0Tm9kZSgpKS50aXRsZSB8fCAkYW55KGdldE5vZGUoKSkubmFtZSA6IG51bGxcIlxuICA+XG4gICAge3sgJGFueShnZXROb2RlKCkpLnRpdGxlIHx8ICRhbnkoZ2V0Tm9kZSgpKS5uYW1lIH19XG4gIDwvc3Bhbj5cbiAgPHNwYW5cbiAgICAqbmdTd2l0Y2hDYXNlPVwiJ2NtOnRpdGxlJ1wiXG4gICAgW21hdFRvb2x0aXBdPVwicHJvdmlkZUxhYmVsID8gJGFueShnZXROb2RlKCkpLnRpdGxlIHx8ICRhbnkoZ2V0Tm9kZSgpKS5uYW1lIDogbnVsbFwiXG4gID5cbiAgICB7eyAkYW55KGdldE5vZGUoKSkudGl0bGUgfHwgJGFueShnZXROb2RlKCkpLm5hbWUgfX1cbiAgPC9zcGFuPlxuICA8c3BhblxuICAgICpuZ1N3aXRjaENhc2U9XCInY2Nsb206dGl0bGUnXCJcbiAgICBbbWF0VG9vbHRpcF09XCJwcm92aWRlTGFiZWwgPyAkYW55KGdldE5vZGUoKSkudGl0bGUgfHwgJGFueShnZXROb2RlKCkpLm5hbWUgOiBudWxsXCJcbiAgPlxuICAgIHt7ICRhbnkoZ2V0Tm9kZSgpKS50aXRsZSB8fCAkYW55KGdldE5vZGUoKSkubmFtZSB9fVxuICA8L3NwYW4+XG4gIDxzcGFuXG4gICAgKm5nU3dpdGNoQ2FzZT1cIidtZWRpYXR5cGUnXCJcbiAgICBbbWF0VG9vbHRpcF09XCJwcm92aWRlTGFiZWwgPyAoZ2V0STE4bihpdGVtKSB8IHRyYW5zbGF0ZSkgOiBudWxsXCJcbiAgPlxuICAgIDxzcGFuICpuZ0lmPVwicHJvdmlkZUxhYmVsXCIgY2xhc3M9XCJjZGstdmlzdWFsbHktaGlkZGVuXCI+e3sgZ2V0STE4bihpdGVtKSB8IHRyYW5zbGF0ZSB9fTo8L3NwYW4+XG4gICAge3sgJ01FRElBVFlQRS4nICsgJGFueShnZXROb2RlKCkpLm1lZGlhdHlwZSB8IHRyYW5zbGF0ZSB9fVxuICA8L3NwYW4+XG4gIDxzcGFuICpuZ1N3aXRjaENhc2U9XCInc2l6ZSdcIiBbbWF0VG9vbHRpcF09XCJwcm92aWRlTGFiZWwgPyAoZ2V0STE4bihpdGVtKSB8IHRyYW5zbGF0ZSkgOiBudWxsXCI+XG4gICAgPHNwYW4gKm5nSWY9XCJwcm92aWRlTGFiZWxcIiBjbGFzcz1cImNkay12aXN1YWxseS1oaWRkZW5cIj57eyBnZXRJMThuKGl0ZW0pIHwgdHJhbnNsYXRlIH19Ojwvc3Bhbj5cbiAgICB7eyAkYW55KGdldE5vZGUoKSkuc2l6ZSB8IGZvcm1hdFNpemUgfX1cbiAgPC9zcGFuPlxuICA8c3BhblxuICAgICpuZ1N3aXRjaENhc2U9XCInZGltZW5zaW9ucydcIlxuICAgIFttYXRUb29sdGlwXT1cInByb3ZpZGVMYWJlbCA/IChnZXRJMThuKGl0ZW0pIHwgdHJhbnNsYXRlKSA6IG51bGxcIlxuICA+XG4gICAgPHNwYW4gKm5nSWY9XCJwcm92aWRlTGFiZWxcIiBjbGFzcz1cImNkay12aXN1YWxseS1oaWRkZW5cIj57eyBnZXRJMThuKGl0ZW0pIHwgdHJhbnNsYXRlIH19Ojwvc3Bhbj5cbiAgICB7eyAkYW55KGdldE5vZGUoKSkgfCBOb2RlSW1hZ2VTaXplIH19XG4gIDwvc3Bhbj5cbiAgPHNwYW5cbiAgICAqbmdTd2l0Y2hDYXNlPVwiJ2NjbTp3Zl9zdGF0dXMnXCJcbiAgICBbbWF0VG9vbHRpcF09XCJwcm92aWRlTGFiZWwgPyAoZ2V0STE4bihpdGVtKSB8IHRyYW5zbGF0ZSkgOiBudWxsXCJcbiAgPlxuICAgIDxzcGFuICpuZ0lmPVwicHJvdmlkZUxhYmVsXCIgY2xhc3M9XCJjZGstdmlzdWFsbHktaGlkZGVuXCI+e3sgZ2V0STE4bihpdGVtKSB8IHRyYW5zbGF0ZSB9fTo8L3NwYW4+XG4gICAge3sgJ1dPUktGTE9XLicgKyBnZXRXb3JrZmxvd1N0YXR1cygpLmlkIHwgdHJhbnNsYXRlIH19XG4gIDwvc3Bhbj5cbiAgPHNwYW5cbiAgICAqbmdTd2l0Y2hDYXNlPVwiJ2NtOmNyZWF0b3InXCJcbiAgICBbbWF0VG9vbHRpcF09XCJwcm92aWRlTGFiZWwgPyAoZ2V0STE4bihpdGVtKSB8IHRyYW5zbGF0ZSkgOiBudWxsXCJcbiAgPlxuICAgIDxzcGFuICpuZ0lmPVwicHJvdmlkZUxhYmVsXCIgY2xhc3M9XCJjZGstdmlzdWFsbHktaGlkZGVuXCI+e3sgZ2V0STE4bihpdGVtKSB8IHRyYW5zbGF0ZSB9fTo8L3NwYW4+XG4gICAge3sgJGFueShnZXROb2RlKCkpLmNyZWF0ZWRCeSB8IG5vZGVQZXJzb25OYW1lIH19XG4gIDwvc3Bhbj5cbiAgPHNwYW5cbiAgICAqbmdTd2l0Y2hDYXNlPVwiJ2NtOm1vZGlmaWVyJ1wiXG4gICAgW21hdFRvb2x0aXBdPVwicHJvdmlkZUxhYmVsID8gKGdldEkxOG4oaXRlbSkgfCB0cmFuc2xhdGUpIDogbnVsbFwiXG4gID5cbiAgICA8c3BhbiAqbmdJZj1cInByb3ZpZGVMYWJlbFwiIGNsYXNzPVwiY2RrLXZpc3VhbGx5LWhpZGRlblwiXG4gICAgICA+e3sgJ05PREUuY206bW9kaWZpZXInIHwgdHJhbnNsYXRlIH19Ojwvc3BhblxuICAgID5cbiAgICB7eyAkYW55KGdldE5vZGUoKSkubW9kaWZpZWRCeSB8IG5vZGVQZXJzb25OYW1lIH19XG4gIDwvc3Bhbj5cbiAgPHNwYW5cbiAgICAqbmdTd2l0Y2hDYXNlPVwiJ2NjbTpyZXBsaWNhdGlvbnNvdXJjZSdcIlxuICAgIFttYXRUb29sdGlwXT1cInByb3ZpZGVMYWJlbCA/IChnZXRJMThuKGl0ZW0pIHwgdHJhbnNsYXRlKSA6IG51bGxcIlxuICA+XG4gICAgPHNwYW4gKm5nSWY9XCJwcm92aWRlTGFiZWxcIiBjbGFzcz1cImNkay12aXN1YWxseS1oaWRkZW5cIlxuICAgICAgPnt7ICdOT0RFLmNjbTpyZXBsaWNhdGlvbnNvdXJjZScgfCB0cmFuc2xhdGUgfX06PC9zcGFuXG4gICAgPlxuICAgIHt7ICRhbnkoZ2V0Tm9kZSgpKS5wcm9wZXJ0aWVzWydjY206cmVwbGljYXRpb25zb3VyY2UnXSB8IGFwcE5vZGVTb3VyY2UgOiB7IG1vZGU6ICd0ZXh0JyB9IH19XG4gIDwvc3Bhbj5cbiAgPHNwYW5cbiAgICAqbmdTd2l0Y2hDYXNlPVwiJ2NjbTpjb21tb25saWNlbnNlX2tleSdcIlxuICAgIFttYXRUb29sdGlwXT1cInByb3ZpZGVMYWJlbCA/IChnZXRJMThuKGl0ZW0pIHwgdHJhbnNsYXRlKSA6IG51bGxcIlxuICA+XG4gICAgPHNwYW4gKm5nSWY9XCJwcm92aWRlTGFiZWxcIiBjbGFzcz1cImNkay12aXN1YWxseS1oaWRkZW5cIlxuICAgICAgPnt7ICdOT0RFLmNjbTpjb21tb25saWNlbnNlX2tleScgfCB0cmFuc2xhdGUgfX06PC9zcGFuXG4gICAgPlxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIkYW55KGdldE5vZGUoKSkucHJvcGVydGllc1snY2NtOmNvbW1vbmxpY2Vuc2Vfa2V5J10gYXMgbGljZW5zZVwiPlxuICAgICAge3tcbiAgICAgICAgbGljZW5zZVswXSA9PT0gJ0NVU1RPTSdcbiAgICAgICAgICA/ICRhbnkoZ2V0Tm9kZSgpKS5wcm9wZXJ0aWVzWydjY2xvbTpyaWdodHNfZGVzY3JpcHRpb24nXVxuICAgICAgICAgIDogKCdMSUNFTlNFLk5BTUVTLicgKyAkYW55KGdldE5vZGUoKSkucHJvcGVydGllc1snY2NtOmNvbW1vbmxpY2Vuc2Vfa2V5J11cbiAgICAgICAgICAgIHwgdHJhbnNsYXRlIDogeyBmYWxsYmFjazogJGFueShnZXROb2RlKCkpLnByb3BlcnRpZXNbJ2NjbTpjb21tb25saWNlbnNlX2tleSddIH0pXG4gICAgICB9fVxuICAgIDwvbmctY29udGFpbmVyPlxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhJGFueShnZXROb2RlKCkpLnByb3BlcnRpZXNbJ2NjbTpjb21tb25saWNlbnNlX2tleSddXCI+XG4gICAgICB7eyAnTElDRU5TRS5OQU1FUy5OT05FJyB8IHRyYW5zbGF0ZSB9fVxuICAgIDwvbmctY29udGFpbmVyPlxuICA8L3NwYW4+XG4gIDxzcGFuXG4gICAgKm5nU3dpdGNoQ2FzZT1cIidjY206ZWR1Y2F0aW9uYWx0eXBpY2FsYWdlcmFuZ2UnXCJcbiAgICBbbWF0VG9vbHRpcF09XCJwcm92aWRlTGFiZWwgPyAoZ2V0STE4bihpdGVtKSB8IHRyYW5zbGF0ZSkgOiBudWxsXCJcbiAgPlxuICAgIDxzcGFuICpuZ0lmPVwicHJvdmlkZUxhYmVsXCIgY2xhc3M9XCJjZGstdmlzdWFsbHktaGlkZGVuXCJcbiAgICAgID57eyAnTk9ERS5jY206ZWR1Y2F0aW9uYWx0eXBpY2FsYWdlcmFuZ2UnIHwgdHJhbnNsYXRlIH19Ojwvc3BhblxuICAgID5cbiAgICA8bmctY29udGFpbmVyXG4gICAgICAqbmdJZj1cIlxuICAgICAgICAkYW55KGdldE5vZGUoKSkucHJvcGVydGllc1snY2NtOmVkdWNhdGlvbmFsdHlwaWNhbGFnZXJhbmdlX2Zyb20nXSB8fFxuICAgICAgICAkYW55KGdldE5vZGUoKSkucHJvcGVydGllc1snY2NtOmVkdWNhdGlvbmFsdHlwaWNhbGFnZXJhbmdlX3RvJ11cbiAgICAgIFwiXG4gICAgPlxuICAgICAge3sgJGFueShnZXROb2RlKCkpLnByb3BlcnRpZXNbJ2NjbTplZHVjYXRpb25hbHR5cGljYWxhZ2VyYW5nZV9mcm9tJ10gfX0gLVxuICAgICAge3sgJGFueShnZXROb2RlKCkpLnByb3BlcnRpZXNbJ2NjbTplZHVjYXRpb25hbHR5cGljYWxhZ2VyYW5nZV90byddIH19XG4gICAgPC9uZy1jb250YWluZXI+XG4gIDwvc3Bhbj5cbiAgPHNwYW5cbiAgICAqbmdTd2l0Y2hDYXNlPVwiJ2NjbG9tOmR1cmF0aW9uJ1wiXG4gICAgW21hdFRvb2x0aXBdPVwicHJvdmlkZUxhYmVsID8gKGdldEkxOG4oaXRlbSkgfCB0cmFuc2xhdGUpIDogbnVsbFwiXG4gID5cbiAgICA8c3BhbiAqbmdJZj1cInByb3ZpZGVMYWJlbFwiIGNsYXNzPVwiY2RrLXZpc3VhbGx5LWhpZGRlblwiXG4gICAgICA+e3sgJ05PREUuY2Nsb206ZHVyYXRpb24nIHwgdHJhbnNsYXRlIH19Ojwvc3BhblxuICAgID5cbiAgICB7eyAkYW55KGdldE5vZGUoKSkucHJvcGVydGllc1snY2Nsb206ZHVyYXRpb24nXT8uWzBdIHwgZm9ybWF0RHVyYXRpb24gfX1cbiAgPC9zcGFuPlxuICA8c3BhblxuICAgICpuZ1N3aXRjaENhc2U9XCInY2NtOmNvbGxlY3Rpb25fcHJvcG9zYWxfc3RhdHVzJ1wiXG4gICAgW21hdFRvb2x0aXBdPVwicHJvdmlkZUxhYmVsID8gKGdldEkxOG4oaXRlbSkgfCB0cmFuc2xhdGUpIDogbnVsbFwiXG4gID5cbiAgICA8c3BhbiAqbmdJZj1cInByb3ZpZGVMYWJlbFwiIGNsYXNzPVwiY2RrLXZpc3VhbGx5LWhpZGRlblwiXG4gICAgICA+e3sgJ05PREUuY2NtOmNvbGxlY3Rpb25fcHJvcG9zYWxfc3RhdHVzJyB8IHRyYW5zbGF0ZSB9fTo8L3NwYW5cbiAgICA+XG4gICAgPCEtLSB1c2Ugbm9kZSBpbnN0ZWFkIG9mIGdldE5vZGUoKSB0byBhY2Nlc3MgdGhlIHJhdyBwcm9wb3NhbCBkYXRhISAtLT5cbiAgICB7eyAoJ1BST1BPU0FMX1NUQVRVUy4nICsgJGFueShub2RlKS5wcm9wZXJ0aWVzWydjY206Y29sbGVjdGlvbl9wcm9wb3NhbF9zdGF0dXMnXT8uWzBdKSB8IHRyYW5zbGF0ZTp7ZmFsbGJhY2s6ICcnfSB9fVxuICA8L3NwYW4+XG4gIDxzcGFuICpuZ1N3aXRjaERlZmF1bHQgW21hdFRvb2x0aXBdPVwicHJvdmlkZUxhYmVsID8gKGdldEkxOG4oaXRlbSkgfCB0cmFuc2xhdGUpIDogbnVsbFwiPlxuICAgIDxzcGFuICpuZ0lmPVwicHJvdmlkZUxhYmVsXCIgY2xhc3M9XCJjZGstdmlzdWFsbHktaGlkZGVuXCI+e3sgZ2V0STE4bihpdGVtKSB8IHRyYW5zbGF0ZSB9fTo8L3NwYW4+XG4gICAgPG5nLWNvbnRhaW5lclxuICAgICAgKm5nSWY9XCJEQVRFX0ZJRUxEUy5pbmRleE9mKGl0ZW0ubmFtZSkgPT09IC0xICYmIFZDQVJEX0ZJRUxEUy5pbmRleE9mKGl0ZW0ubmFtZSkgPT09IC0xXCJcbiAgICA+XG4gICAgICB7eyBkaXNwbGF5TmFtZSQgfCBhc3luYyB9fVxuICAgIDwvbmctY29udGFpbmVyPlxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJEQVRFX0ZJRUxEUy5pbmNsdWRlcyhpdGVtLm5hbWUpXCI+XG4gICAgICB7eyAkYW55KGdldE5vZGUoKSkucHJvcGVydGllc1tpdGVtLm5hbWVdPy5bMF0gfCBmb3JtYXREYXRlOiB7IGFzeW5jOiB0cnVlIH0gfCBhc3luYyB9fVxuICAgIDwvbmctY29udGFpbmVyPlxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJWQ0FSRF9GSUVMRFMuaW5jbHVkZXMoaXRlbS5uYW1lKVwiPlxuICAgICAge3tcbiAgICAgICAgJGFueShnZXROb2RlKCkpLnByb3BlcnRpZXNbaXRlbS5uYW1lXVxuICAgICAgICAgID8gKCRhbnkoZ2V0Tm9kZSgpKS5wcm9wZXJ0aWVzW2l0ZW0ubmFtZV1bMF0gfCB2Y2FyZE5hbWUpXG4gICAgICAgICAgOiAnJ1xuICAgICAgfX1cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgPC9zcGFuPlxuPC9uZy1jb250YWluZXI+XG4iXX0=
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { Input, Directive } from '@angular/core';
|
|
2
|
+
import { BehaviorSubject } from 'rxjs';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export class ListWidget {
|
|
5
|
+
get node() {
|
|
6
|
+
return this.nodeSubject.value;
|
|
7
|
+
}
|
|
8
|
+
set node(value) {
|
|
9
|
+
this.nodeSubject.next(value);
|
|
10
|
+
}
|
|
11
|
+
get item() {
|
|
12
|
+
return this.itemSubject.value;
|
|
13
|
+
}
|
|
14
|
+
set item(value) {
|
|
15
|
+
this.itemSubject.next(value);
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Provide a label for non-obvious fields that describes the field the given value belongs to.
|
|
19
|
+
*
|
|
20
|
+
* The label is included in a tooltip and made available for a11y technologies.
|
|
21
|
+
*
|
|
22
|
+
* Useful when the value is displayed without context.
|
|
23
|
+
*
|
|
24
|
+
* Other tooltips might be added even with this input set to `false`.
|
|
25
|
+
*/
|
|
26
|
+
get provideLabel() {
|
|
27
|
+
return this.provideLabelSubject.value;
|
|
28
|
+
}
|
|
29
|
+
set provideLabel(value) {
|
|
30
|
+
this.provideLabelSubject.next(value);
|
|
31
|
+
}
|
|
32
|
+
constructor() {
|
|
33
|
+
this.nodeSubject = new BehaviorSubject(null); // node (or group/user)
|
|
34
|
+
this.itemSubject = new BehaviorSubject(null);
|
|
35
|
+
this.provideLabelSubject = new BehaviorSubject(false);
|
|
36
|
+
}
|
|
37
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: ListWidget, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
38
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.6", type: ListWidget, inputs: { node: "node", item: "item", provideLabel: "provideLabel" }, ngImport: i0 }); }
|
|
39
|
+
}
|
|
40
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: ListWidget, decorators: [{
|
|
41
|
+
type: Directive
|
|
42
|
+
}], ctorParameters: function () { return []; }, propDecorators: { node: [{
|
|
43
|
+
type: Input
|
|
44
|
+
}], item: [{
|
|
45
|
+
type: Input
|
|
46
|
+
}], provideLabel: [{
|
|
47
|
+
type: Input
|
|
48
|
+
}] } });
|
|
49
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdC13aWRnZXQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lZHUtc2hhcmluZy11aS9zcmMvbGliL2xpc3QtaXRlbXMvbGlzdC13aWRnZXQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLEtBQUssRUFBUSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFdkQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLE1BQU0sQ0FBQzs7QUFLdkMsTUFBTSxPQUFPLFVBQVU7SUFDbkIsSUFDSSxJQUFJO1FBQ0osT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQztJQUNsQyxDQUFDO0lBQ0QsSUFBSSxJQUFJLENBQUMsS0FBd0Q7UUFDN0QsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDakMsQ0FBQztJQUtELElBQ0ksSUFBSTtRQUNKLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUM7SUFDbEMsQ0FBQztJQUNELElBQUksSUFBSSxDQUFDLEtBQWU7UUFDcEIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDakMsQ0FBQztJQUdEOzs7Ozs7OztPQVFHO0lBQ0gsSUFDSSxZQUFZO1FBQ1osT0FBTyxJQUFJLENBQUMsbUJBQW1CLENBQUMsS0FBSyxDQUFDO0lBQzFDLENBQUM7SUFDRCxJQUFJLFlBQVksQ0FBQyxLQUFLO1FBQ2xCLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDekMsQ0FBQztJQUdEO1FBL0JtQixnQkFBVyxHQUFHLElBQUksZUFBZSxDQUVsRCxJQUFJLENBQUMsQ0FBQyxDQUFDLHVCQUF1QjtRQVNiLGdCQUFXLEdBQUcsSUFBSSxlQUFlLENBQVcsSUFBSSxDQUFDLENBQUM7UUFrQmxELHdCQUFtQixHQUFHLElBQUksZUFBZSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBRXJELENBQUM7OEdBdkNQLFVBQVU7a0dBQVYsVUFBVTs7MkZBQVYsVUFBVTtrQkFEdEIsU0FBUzswRUFHRixJQUFJO3NCQURQLEtBQUs7Z0JBWUYsSUFBSTtzQkFEUCxLQUFLO2dCQW1CRixZQUFZO3NCQURmLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbnB1dCwgVHlwZSwgRGlyZWN0aXZlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBQZXJzb24gfSBmcm9tICduZ3gtZWR1LXNoYXJpbmctYXBpJztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgTm9kZSwgUHJvcG9zYWxOb2RlLCBHcm91cCwgU3RhdGlzdGljcyB9IGZyb20gJ25neC1lZHUtc2hhcmluZy1hcGknO1xuaW1wb3J0IHsgTGlzdEl0ZW0gfSBmcm9tICcuLi90eXBlcy9saXN0LWl0ZW0nO1xuXG5ARGlyZWN0aXZlKClcbmV4cG9ydCBjbGFzcyBMaXN0V2lkZ2V0IHtcbiAgICBASW5wdXQoKVxuICAgIGdldCBub2RlKCk6IE5vZGUgfCBQcm9wb3NhbE5vZGUgfCBHcm91cCB8IFBlcnNvbiB8IFN0YXRpc3RpY3Mge1xuICAgICAgICByZXR1cm4gdGhpcy5ub2RlU3ViamVjdC52YWx1ZTtcbiAgICB9XG4gICAgc2V0IG5vZGUodmFsdWU6IE5vZGUgfCBQcm9wb3NhbE5vZGUgfCBHcm91cCB8IFBlcnNvbiB8IFN0YXRpc3RpY3MpIHtcbiAgICAgICAgdGhpcy5ub2RlU3ViamVjdC5uZXh0KHZhbHVlKTtcbiAgICB9XG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IG5vZGVTdWJqZWN0ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxcbiAgICAgICAgTm9kZSB8IFByb3Bvc2FsTm9kZSB8IEdyb3VwIHwgUGVyc29uIHwgU3RhdGlzdGljc1xuICAgID4obnVsbCk7IC8vIG5vZGUgKG9yIGdyb3VwL3VzZXIpXG5cbiAgICBASW5wdXQoKVxuICAgIGdldCBpdGVtKCk6IExpc3RJdGVtIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaXRlbVN1YmplY3QudmFsdWU7XG4gICAgfVxuICAgIHNldCBpdGVtKHZhbHVlOiBMaXN0SXRlbSkge1xuICAgICAgICB0aGlzLml0ZW1TdWJqZWN0Lm5leHQodmFsdWUpO1xuICAgIH1cbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgaXRlbVN1YmplY3QgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PExpc3RJdGVtPihudWxsKTtcblxuICAgIC8qKlxuICAgICAqIFByb3ZpZGUgYSBsYWJlbCBmb3Igbm9uLW9idmlvdXMgZmllbGRzIHRoYXQgZGVzY3JpYmVzIHRoZSBmaWVsZCB0aGUgZ2l2ZW4gdmFsdWUgYmVsb25ncyB0by5cbiAgICAgKlxuICAgICAqIFRoZSBsYWJlbCBpcyBpbmNsdWRlZCBpbiBhIHRvb2x0aXAgYW5kIG1hZGUgYXZhaWxhYmxlIGZvciBhMTF5IHRlY2hub2xvZ2llcy5cbiAgICAgKlxuICAgICAqIFVzZWZ1bCB3aGVuIHRoZSB2YWx1ZSBpcyBkaXNwbGF5ZWQgd2l0aG91dCBjb250ZXh0LlxuICAgICAqXG4gICAgICogT3RoZXIgdG9vbHRpcHMgbWlnaHQgYmUgYWRkZWQgZXZlbiB3aXRoIHRoaXMgaW5wdXQgc2V0IHRvIGBmYWxzZWAuXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBnZXQgcHJvdmlkZUxhYmVsKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5wcm92aWRlTGFiZWxTdWJqZWN0LnZhbHVlO1xuICAgIH1cbiAgICBzZXQgcHJvdmlkZUxhYmVsKHZhbHVlKSB7XG4gICAgICAgIHRoaXMucHJvdmlkZUxhYmVsU3ViamVjdC5uZXh0KHZhbHVlKTtcbiAgICB9XG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IHByb3ZpZGVMYWJlbFN1YmplY3QgPSBuZXcgQmVoYXZpb3JTdWJqZWN0KGZhbHNlKTtcblxuICAgIGNvbnN0cnVjdG9yKCkge31cbn1cblxuZXhwb3J0IHR5cGUgTGlzdFdpZGdldENsYXNzID0ge1xuICAgIHN1cHBvcnRlZEl0ZW1zOiBMaXN0SXRlbVtdO1xufSAmIFR5cGU8TGlzdFdpZGdldD47XG4iXX0=
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { Component, ContentChild, Input } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "@angular/common";
|
|
4
|
+
import * as i2 from "@angular/material/tooltip";
|
|
5
|
+
import * as i3 from "../list-text/list-text.component";
|
|
6
|
+
import * as i4 from "../../pipes/node-icon.pipe";
|
|
7
|
+
import * as i5 from "@ngx-translate/core";
|
|
8
|
+
export class NodeRowComponent {
|
|
9
|
+
constructor() { }
|
|
10
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: NodeRowComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
11
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.6", type: NodeRowComponent, selector: "es-node-row", inputs: { node: "node", columns: "columns" }, queries: [{ propertyName: "customMetadataRef", first: true, predicate: ["customMetadata"], descendants: true }], ngImport: i0, template: "<div class=\"node-row\" *ngIf=\"node\">\n <div class=\"icon-bg\">\n <img\n [src]=\"node | esNodeIcon | async\"\n [alt]=\"\n node.mediatype\n ? ('NODE.mediatype' | translate) + ': ' + ('MEDIATYPE.' + node.mediatype | translate)\n : ''\n \"\n [matTooltip]=\"\n node.mediatype\n ? ('NODE.mediatype' | translate) + ': ' + ('MEDIATYPE.' + node.mediatype | translate)\n : ''\n \"\n />\n </div>\n <div class=\"node-data\">\n <div class=\"node-data-primary\">\n <es-list-text [node]=\"node\" [item]=\"columns[0]\"> </es-list-text>\n </div>\n <div class=\"node-data-secondary\">\n <es-list-text\n *ngFor=\"let column of columns.slice(1)\"\n [node]=\"node\"\n [item]=\"column\"\n [provideLabel]=\"true\"\n ></es-list-text>\n <ng-container *ngTemplateOutlet=\"customMetadataRef; context: { node: node }\"></ng-container>\n </div>\n </div>\n</div>\n", styles: [".node-row{width:100%;display:grid;grid-template-columns:var(--tableIconSize) auto;grid-gap:10px;align-items:center;padding:10px;white-space:normal}.node-row .node-data{flex-grow:1;display:flex;flex-direction:column}.node-row .node-data .node-data-primary{font-weight:700;padding-bottom:5px;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;line-height:1.25em;max-height:1.25em;-webkit-line-clamp:1;-webkit-box-orient:vertical}.node-row .node-data .node-data-secondary{color:var(--textLight);display:flex;justify-content:space-between}.node-row .icon-bg{background-color:rgb(var(--palette-foreground-text-dark));border-radius:50%;width:var(--tableIconSize);height:var(--tableIconSize)!important;display:flex;align-items:center;justify-content:center;box-shadow:0 3px 3px #0000001a}.node-row .icon-bg img,.node-row .icon-bg i{width:50%;z-index:0}.node-row .icon-bg i{color:rgb(var(--palette-foreground-text));font-size:20px}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { kind: "component", type: i3.ListTextComponent, selector: "es-list-text" }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i4.NodeIconPipe, name: "esNodeIcon" }, { kind: "pipe", type: i5.TranslatePipe, name: "translate" }] }); }
|
|
12
|
+
}
|
|
13
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: NodeRowComponent, decorators: [{
|
|
14
|
+
type: Component,
|
|
15
|
+
args: [{ selector: 'es-node-row', template: "<div class=\"node-row\" *ngIf=\"node\">\n <div class=\"icon-bg\">\n <img\n [src]=\"node | esNodeIcon | async\"\n [alt]=\"\n node.mediatype\n ? ('NODE.mediatype' | translate) + ': ' + ('MEDIATYPE.' + node.mediatype | translate)\n : ''\n \"\n [matTooltip]=\"\n node.mediatype\n ? ('NODE.mediatype' | translate) + ': ' + ('MEDIATYPE.' + node.mediatype | translate)\n : ''\n \"\n />\n </div>\n <div class=\"node-data\">\n <div class=\"node-data-primary\">\n <es-list-text [node]=\"node\" [item]=\"columns[0]\"> </es-list-text>\n </div>\n <div class=\"node-data-secondary\">\n <es-list-text\n *ngFor=\"let column of columns.slice(1)\"\n [node]=\"node\"\n [item]=\"column\"\n [provideLabel]=\"true\"\n ></es-list-text>\n <ng-container *ngTemplateOutlet=\"customMetadataRef; context: { node: node }\"></ng-container>\n </div>\n </div>\n</div>\n", styles: [".node-row{width:100%;display:grid;grid-template-columns:var(--tableIconSize) auto;grid-gap:10px;align-items:center;padding:10px;white-space:normal}.node-row .node-data{flex-grow:1;display:flex;flex-direction:column}.node-row .node-data .node-data-primary{font-weight:700;padding-bottom:5px;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;line-height:1.25em;max-height:1.25em;-webkit-line-clamp:1;-webkit-box-orient:vertical}.node-row .node-data .node-data-secondary{color:var(--textLight);display:flex;justify-content:space-between}.node-row .icon-bg{background-color:rgb(var(--palette-foreground-text-dark));border-radius:50%;width:var(--tableIconSize);height:var(--tableIconSize)!important;display:flex;align-items:center;justify-content:center;box-shadow:0 3px 3px #0000001a}.node-row .icon-bg img,.node-row .icon-bg i{width:50%;z-index:0}.node-row .icon-bg i{color:rgb(var(--palette-foreground-text));font-size:20px}\n"] }]
|
|
16
|
+
}], ctorParameters: function () { return []; }, propDecorators: { customMetadataRef: [{
|
|
17
|
+
type: ContentChild,
|
|
18
|
+
args: ['customMetadata']
|
|
19
|
+
}], node: [{
|
|
20
|
+
type: Input
|
|
21
|
+
}], columns: [{
|
|
22
|
+
type: Input
|
|
23
|
+
}] } });
|
|
24
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm9kZS1yb3cuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWR1LXNoYXJpbmctdWkvc3JjL2xpYi9saXN0LWl0ZW1zL25vZGUtcm93L25vZGUtcm93LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VkdS1zaGFyaW5nLXVpL3NyYy9saWIvbGlzdC1pdGVtcy9ub2RlLXJvdy9ub2RlLXJvdy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQWUsTUFBTSxlQUFlLENBQUM7Ozs7Ozs7QUFTNUUsTUFBTSxPQUFPLGdCQUFnQjtJQUt6QixnQkFBZSxDQUFDOzhHQUxQLGdCQUFnQjtrR0FBaEIsZ0JBQWdCLGtOQ1Q3Qix3OUJBK0JBOzsyRkR0QmEsZ0JBQWdCO2tCQUw1QixTQUFTOytCQUNJLGFBQWE7MEVBS1MsaUJBQWlCO3NCQUFoRCxZQUFZO3VCQUFDLGdCQUFnQjtnQkFDckIsSUFBSTtzQkFBWixLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgQ29udGVudENoaWxkLCBJbnB1dCwgVGVtcGxhdGVSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE5vZGUgfSBmcm9tICduZ3gtZWR1LXNoYXJpbmctYXBpJztcbmltcG9ydCB7IExpc3RJdGVtIH0gZnJvbSAnLi4vLi4vdHlwZXMvbGlzdC1pdGVtJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdlcy1ub2RlLXJvdycsXG4gICAgdGVtcGxhdGVVcmw6ICdub2RlLXJvdy5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJ25vZGUtcm93LmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIE5vZGVSb3dDb21wb25lbnQge1xuICAgIEBDb250ZW50Q2hpbGQoJ2N1c3RvbU1ldGFkYXRhJykgY3VzdG9tTWV0YWRhdGFSZWY6IFRlbXBsYXRlUmVmPGFueT47XG4gICAgQElucHV0KCkgbm9kZTogTm9kZTtcbiAgICBASW5wdXQoKSBjb2x1bW5zOiBMaXN0SXRlbVtdO1xuXG4gICAgY29uc3RydWN0b3IoKSB7fVxufVxuIiwiPGRpdiBjbGFzcz1cIm5vZGUtcm93XCIgKm5nSWY9XCJub2RlXCI+XG4gIDxkaXYgY2xhc3M9XCJpY29uLWJnXCI+XG4gICAgPGltZ1xuICAgICAgW3NyY109XCJub2RlIHwgZXNOb2RlSWNvbiB8IGFzeW5jXCJcbiAgICAgIFthbHRdPVwiXG4gICAgICAgIG5vZGUubWVkaWF0eXBlXG4gICAgICAgICAgPyAoJ05PREUubWVkaWF0eXBlJyB8IHRyYW5zbGF0ZSkgKyAnOiAnICsgKCdNRURJQVRZUEUuJyArIG5vZGUubWVkaWF0eXBlIHwgdHJhbnNsYXRlKVxuICAgICAgICAgIDogJydcbiAgICAgIFwiXG4gICAgICBbbWF0VG9vbHRpcF09XCJcbiAgICAgICAgbm9kZS5tZWRpYXR5cGVcbiAgICAgICAgICA/ICgnTk9ERS5tZWRpYXR5cGUnIHwgdHJhbnNsYXRlKSArICc6ICcgKyAoJ01FRElBVFlQRS4nICsgbm9kZS5tZWRpYXR5cGUgfCB0cmFuc2xhdGUpXG4gICAgICAgICAgOiAnJ1xuICAgICAgXCJcbiAgICAvPlxuICA8L2Rpdj5cbiAgPGRpdiBjbGFzcz1cIm5vZGUtZGF0YVwiPlxuICAgIDxkaXYgY2xhc3M9XCJub2RlLWRhdGEtcHJpbWFyeVwiPlxuICAgICAgPGVzLWxpc3QtdGV4dCBbbm9kZV09XCJub2RlXCIgW2l0ZW1dPVwiY29sdW1uc1swXVwiPiA8L2VzLWxpc3QtdGV4dD5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwibm9kZS1kYXRhLXNlY29uZGFyeVwiPlxuICAgICAgPGVzLWxpc3QtdGV4dFxuICAgICAgICAqbmdGb3I9XCJsZXQgY29sdW1uIG9mIGNvbHVtbnMuc2xpY2UoMSlcIlxuICAgICAgICBbbm9kZV09XCJub2RlXCJcbiAgICAgICAgW2l0ZW1dPVwiY29sdW1uXCJcbiAgICAgICAgW3Byb3ZpZGVMYWJlbF09XCJ0cnVlXCJcbiAgICAgID48L2VzLWxpc3QtdGV4dD5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJjdXN0b21NZXRhZGF0YVJlZjsgY29udGV4dDogeyBub2RlOiBub2RlIH1cIj48L25nLWNvbnRhaW5lcj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { Pipe } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "../services/node-helper.service";
|
|
4
|
+
import * as i2 from "ngx-edu-sharing-api";
|
|
5
|
+
export class NodeSourcePipe {
|
|
6
|
+
constructor(nodeHelper, networkApi) {
|
|
7
|
+
this.nodeHelper = nodeHelper;
|
|
8
|
+
this.networkApi = networkApi;
|
|
9
|
+
this.networkApi.getHomeRepository().subscribe((homeRepository) => {
|
|
10
|
+
this.homeRepository = homeRepository;
|
|
11
|
+
});
|
|
12
|
+
}
|
|
13
|
+
transform(replicationSource, args) {
|
|
14
|
+
const rawSrc = replicationSource ? replicationSource.toString().trim() : 'home';
|
|
15
|
+
if (args.mode === 'text') {
|
|
16
|
+
if (rawSrc === 'home') {
|
|
17
|
+
// FIXME: This will fix the pipe's return value to 'home' for calls before
|
|
18
|
+
// `this.homeRepository` was populated (although that doesn't seem to happen).
|
|
19
|
+
return this.homeRepository?.title || 'home';
|
|
20
|
+
}
|
|
21
|
+
return rawSrc;
|
|
22
|
+
}
|
|
23
|
+
else if (args.mode === 'url') {
|
|
24
|
+
const src = this.escape(rawSrc);
|
|
25
|
+
return this.nodeHelper.getSourceIconPath(src);
|
|
26
|
+
}
|
|
27
|
+
else if (args.mode === 'escaped') {
|
|
28
|
+
return this.escape(rawSrc);
|
|
29
|
+
}
|
|
30
|
+
return null;
|
|
31
|
+
}
|
|
32
|
+
escape(src) {
|
|
33
|
+
if (!src) {
|
|
34
|
+
return src;
|
|
35
|
+
}
|
|
36
|
+
src = src.substring(src.lastIndexOf(':') + 1).toLowerCase();
|
|
37
|
+
src = src.replace(/\s/g, '_');
|
|
38
|
+
src = src.replace(/\./g, '_');
|
|
39
|
+
src = src.replace(/\//g, '_');
|
|
40
|
+
return src;
|
|
41
|
+
}
|
|
42
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: NodeSourcePipe, deps: [{ token: i1.NodeHelperService }, { token: i2.NetworkService }], target: i0.ɵɵFactoryTarget.Pipe }); }
|
|
43
|
+
static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "16.2.6", ngImport: i0, type: NodeSourcePipe, name: "appNodeSource" }); }
|
|
44
|
+
}
|
|
45
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: NodeSourcePipe, decorators: [{
|
|
46
|
+
type: Pipe,
|
|
47
|
+
args: [{ name: 'appNodeSource' }]
|
|
48
|
+
}], ctorParameters: function () { return [{ type: i1.NodeHelperService }, { type: i2.NetworkService }]; } });
|
|
49
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm9kZS1zb3VyY2UucGlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VkdS1zaGFyaW5nLXVpL3NyYy9saWIvbGlzdC1pdGVtcy9ub2RlLXNvdXJjZS5waXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxJQUFJLEVBQWlCLE1BQU0sZUFBZSxDQUFDOzs7O0FBS3BELE1BQU0sT0FBTyxjQUFjO0lBR3ZCLFlBQW9CLFVBQTZCLEVBQVUsVUFBMEI7UUFBakUsZUFBVSxHQUFWLFVBQVUsQ0FBbUI7UUFBVSxlQUFVLEdBQVYsVUFBVSxDQUFnQjtRQUNqRixJQUFJLENBQUMsVUFBVSxDQUFDLGlCQUFpQixFQUFFLENBQUMsU0FBUyxDQUFDLENBQUMsY0FBYyxFQUFFLEVBQUU7WUFDN0QsSUFBSSxDQUFDLGNBQWMsR0FBRyxjQUFjLENBQUM7UUFDekMsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRUQsU0FBUyxDQUNMLGlCQUF5QixFQUN6QixJQUVDO1FBRUQsTUFBTSxNQUFNLEdBQUcsaUJBQWlCLENBQUMsQ0FBQyxDQUFDLGlCQUFpQixDQUFDLFFBQVEsRUFBRSxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUM7UUFDaEYsSUFBSSxJQUFJLENBQUMsSUFBSSxLQUFLLE1BQU0sRUFBRTtZQUN0QixJQUFJLE1BQU0sS0FBSyxNQUFNLEVBQUU7Z0JBQ25CLDBFQUEwRTtnQkFDMUUsOEVBQThFO2dCQUM5RSxPQUFPLElBQUksQ0FBQyxjQUFjLEVBQUUsS0FBSyxJQUFJLE1BQU0sQ0FBQzthQUMvQztZQUNELE9BQU8sTUFBTSxDQUFDO1NBQ2pCO2FBQU0sSUFBSSxJQUFJLENBQUMsSUFBSSxLQUFLLEtBQUssRUFBRTtZQUM1QixNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1lBQ2hDLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLENBQUMsQ0FBQztTQUNqRDthQUFNLElBQUksSUFBSSxDQUFDLElBQUksS0FBSyxTQUFTLEVBQUU7WUFDaEMsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1NBQzlCO1FBQ0QsT0FBTyxJQUFJLENBQUM7SUFDaEIsQ0FBQztJQUVPLE1BQU0sQ0FBQyxHQUFXO1FBQ3RCLElBQUksQ0FBQyxHQUFHLEVBQUU7WUFDTixPQUFPLEdBQUcsQ0FBQztTQUNkO1FBQ0QsR0FBRyxHQUFHLEdBQUcsQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUM1RCxHQUFHLEdBQUcsR0FBRyxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsR0FBRyxDQUFDLENBQUM7UUFDOUIsR0FBRyxHQUFHLEdBQUcsQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFLEdBQUcsQ0FBQyxDQUFDO1FBQzlCLEdBQUcsR0FBRyxHQUFHLENBQUMsT0FBTyxDQUFDLEtBQUssRUFBRSxHQUFHLENBQUMsQ0FBQztRQUM5QixPQUFPLEdBQUcsQ0FBQztJQUNmLENBQUM7OEdBekNRLGNBQWM7NEdBQWQsY0FBYzs7MkZBQWQsY0FBYztrQkFEMUIsSUFBSTttQkFBQyxFQUFFLElBQUksRUFBRSxlQUFlLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQaXBlLCBQaXBlVHJhbnNmb3JtIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOZXR3b3JrU2VydmljZSwgUmVwb3NpdG9yeSB9IGZyb20gJ25neC1lZHUtc2hhcmluZy1hcGknO1xuaW1wb3J0IHsgTm9kZUhlbHBlclNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9ub2RlLWhlbHBlci5zZXJ2aWNlJztcblxuQFBpcGUoeyBuYW1lOiAnYXBwTm9kZVNvdXJjZScgfSlcbmV4cG9ydCBjbGFzcyBOb2RlU291cmNlUGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xuICAgIHByaXZhdGUgaG9tZVJlcG9zaXRvcnk6IFJlcG9zaXRvcnk7XG5cbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIG5vZGVIZWxwZXI6IE5vZGVIZWxwZXJTZXJ2aWNlLCBwcml2YXRlIG5ldHdvcmtBcGk6IE5ldHdvcmtTZXJ2aWNlKSB7XG4gICAgICAgIHRoaXMubmV0d29ya0FwaS5nZXRIb21lUmVwb3NpdG9yeSgpLnN1YnNjcmliZSgoaG9tZVJlcG9zaXRvcnkpID0+IHtcbiAgICAgICAgICAgIHRoaXMuaG9tZVJlcG9zaXRvcnkgPSBob21lUmVwb3NpdG9yeTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgdHJhbnNmb3JtKFxuICAgICAgICByZXBsaWNhdGlvblNvdXJjZTogc3RyaW5nLFxuICAgICAgICBhcmdzOiB7XG4gICAgICAgICAgICBtb2RlOiAndGV4dCcgfCAndXJsJyB8ICdlc2NhcGVkJztcbiAgICAgICAgfSxcbiAgICApOiBzdHJpbmcge1xuICAgICAgICBjb25zdCByYXdTcmMgPSByZXBsaWNhdGlvblNvdXJjZSA/IHJlcGxpY2F0aW9uU291cmNlLnRvU3RyaW5nKCkudHJpbSgpIDogJ2hvbWUnO1xuICAgICAgICBpZiAoYXJncy5tb2RlID09PSAndGV4dCcpIHtcbiAgICAgICAgICAgIGlmIChyYXdTcmMgPT09ICdob21lJykge1xuICAgICAgICAgICAgICAgIC8vIEZJWE1FOiBUaGlzIHdpbGwgZml4IHRoZSBwaXBlJ3MgcmV0dXJuIHZhbHVlIHRvICdob21lJyBmb3IgY2FsbHMgYmVmb3JlXG4gICAgICAgICAgICAgICAgLy8gYHRoaXMuaG9tZVJlcG9zaXRvcnlgIHdhcyBwb3B1bGF0ZWQgKGFsdGhvdWdoIHRoYXQgZG9lc24ndCBzZWVtIHRvIGhhcHBlbikuXG4gICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuaG9tZVJlcG9zaXRvcnk/LnRpdGxlIHx8ICdob21lJztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybiByYXdTcmM7XG4gICAgICAgIH0gZWxzZSBpZiAoYXJncy5tb2RlID09PSAndXJsJykge1xuICAgICAgICAgICAgY29uc3Qgc3JjID0gdGhpcy5lc2NhcGUocmF3U3JjKTtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLm5vZGVIZWxwZXIuZ2V0U291cmNlSWNvblBhdGgoc3JjKTtcbiAgICAgICAgfSBlbHNlIGlmIChhcmdzLm1vZGUgPT09ICdlc2NhcGVkJykge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMuZXNjYXBlKHJhd1NyYyk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBlc2NhcGUoc3JjOiBzdHJpbmcpIHtcbiAgICAgICAgaWYgKCFzcmMpIHtcbiAgICAgICAgICAgIHJldHVybiBzcmM7XG4gICAgICAgIH1cbiAgICAgICAgc3JjID0gc3JjLnN1YnN0cmluZyhzcmMubGFzdEluZGV4T2YoJzonKSArIDEpLnRvTG93ZXJDYXNlKCk7XG4gICAgICAgIHNyYyA9IHNyYy5yZXBsYWNlKC9cXHMvZywgJ18nKTtcbiAgICAgICAgc3JjID0gc3JjLnJlcGxhY2UoL1xcLi9nLCAnXycpO1xuICAgICAgICBzcmMgPSBzcmMucmVwbGFjZSgvXFwvL2csICdfJyk7XG4gICAgICAgIHJldHVybiBzcmM7XG4gICAgfVxufVxuIl19
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { of } from 'rxjs';
|
|
2
|
+
import { NodeDataSource } from './node-data-source';
|
|
3
|
+
/**
|
|
4
|
+
* data source which joins multiple underlying data sources
|
|
5
|
+
* used for the "all" search
|
|
6
|
+
*/
|
|
7
|
+
export class CombinedDataSource extends NodeDataSource {
|
|
8
|
+
constructor(dataSources) {
|
|
9
|
+
super();
|
|
10
|
+
this.dataSources = dataSources;
|
|
11
|
+
}
|
|
12
|
+
connect() {
|
|
13
|
+
// @TODO: Using a forkJoin and real connect would be better
|
|
14
|
+
return of(this.getData());
|
|
15
|
+
/*
|
|
16
|
+
return forkJoin(this.dataSources.map(ds => ds.connect())).pipe(
|
|
17
|
+
switchMap(d => d)
|
|
18
|
+
) as Observable<T[]>;
|
|
19
|
+
*/
|
|
20
|
+
}
|
|
21
|
+
disconnect() { }
|
|
22
|
+
hasMore() {
|
|
23
|
+
return this.dataSources.filter((ds) => ds.hasMore()).length > 0;
|
|
24
|
+
}
|
|
25
|
+
getData() {
|
|
26
|
+
return [].concat.apply([], this.dataSources.map((ds) => ds.getData()));
|
|
27
|
+
}
|
|
28
|
+
isEmpty() {
|
|
29
|
+
return this.getData()?.length === 0;
|
|
30
|
+
}
|
|
31
|
+
getTotal() {
|
|
32
|
+
return this.dataSources.map((ds) => ds.getTotal()).reduce((a, b) => a + b);
|
|
33
|
+
}
|
|
34
|
+
isFullyLoaded() {
|
|
35
|
+
return this.getTotal() <= this.getData()?.length;
|
|
36
|
+
}
|
|
37
|
+
getDatasource(position) {
|
|
38
|
+
return this.dataSources[position];
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tYmluZWQtZGF0YS1zb3VyY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lZHUtc2hhcmluZy11aS9zcmMvbGliL25vZGUtZW50cmllcy9jb21iaW5lZC1kYXRhLXNvdXJjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWMsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3RDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUdwRDs7O0dBR0c7QUFDSCxNQUFNLE9BQU8sa0JBQXNELFNBQVEsY0FBaUI7SUFDeEYsWUFBb0IsV0FBZ0M7UUFDaEQsS0FBSyxFQUFFLENBQUM7UUFEUSxnQkFBVyxHQUFYLFdBQVcsQ0FBcUI7SUFFcEQsQ0FBQztJQUVELE9BQU87UUFDSCwyREFBMkQ7UUFDM0QsT0FBTyxFQUFFLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUM7UUFDMUI7Ozs7V0FJRztJQUNQLENBQUM7SUFFRCxVQUFVLEtBQUksQ0FBQztJQUNmLE9BQU87UUFDSCxPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO0lBQ3BFLENBQUM7SUFFRCxPQUFPO1FBQ0gsT0FBTyxFQUFFLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FDbEIsRUFBRSxFQUNGLElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FDN0MsQ0FBQztJQUNOLENBQUM7SUFFRCxPQUFPO1FBQ0gsT0FBTyxJQUFJLENBQUMsT0FBTyxFQUFFLEVBQUUsTUFBTSxLQUFLLENBQUMsQ0FBQztJQUN4QyxDQUFDO0lBRUQsUUFBUTtRQUNKLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztJQUMvRSxDQUFDO0lBRUQsYUFBYTtRQUNULE9BQU8sSUFBSSxDQUFDLFFBQVEsRUFBRSxJQUFJLElBQUksQ0FBQyxPQUFPLEVBQUUsRUFBRSxNQUFNLENBQUM7SUFDckQsQ0FBQztJQUVELGFBQWEsQ0FBQyxRQUFnQjtRQUMxQixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDdEMsQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgT2JzZXJ2YWJsZSwgb2YgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IE5vZGVEYXRhU291cmNlIH0gZnJvbSAnLi9ub2RlLWRhdGEtc291cmNlJztcbmltcG9ydCB7IE5vZGUsIEdlbmVyaWNBdXRob3JpdHkgfSBmcm9tICduZ3gtZWR1LXNoYXJpbmctYXBpJztcblxuLyoqXG4gKiBkYXRhIHNvdXJjZSB3aGljaCBqb2lucyBtdWx0aXBsZSB1bmRlcmx5aW5nIGRhdGEgc291cmNlc1xuICogdXNlZCBmb3IgdGhlIFwiYWxsXCIgc2VhcmNoXG4gKi9cbmV4cG9ydCBjbGFzcyBDb21iaW5lZERhdGFTb3VyY2U8VCBleHRlbmRzIE5vZGUgfCBHZW5lcmljQXV0aG9yaXR5PiBleHRlbmRzIE5vZGVEYXRhU291cmNlPFQ+IHtcbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIGRhdGFTb3VyY2VzOiBOb2RlRGF0YVNvdXJjZTxUPltdKSB7XG4gICAgICAgIHN1cGVyKCk7XG4gICAgfVxuXG4gICAgY29ubmVjdCgpOiBPYnNlcnZhYmxlPFRbXT4ge1xuICAgICAgICAvLyBAVE9ETzogVXNpbmcgYSBmb3JrSm9pbiBhbmQgcmVhbCBjb25uZWN0IHdvdWxkIGJlIGJldHRlclxuICAgICAgICByZXR1cm4gb2YodGhpcy5nZXREYXRhKCkpO1xuICAgICAgICAvKlxuICAgICAgICByZXR1cm4gZm9ya0pvaW4odGhpcy5kYXRhU291cmNlcy5tYXAoZHMgPT4gZHMuY29ubmVjdCgpKSkucGlwZShcbiAgICAgICAgICAgIHN3aXRjaE1hcChkID0+IGQpXG4gICAgICAgICkgYXMgT2JzZXJ2YWJsZTxUW10+O1xuICAgICAgICAgKi9cbiAgICB9XG5cbiAgICBkaXNjb25uZWN0KCkge31cbiAgICBoYXNNb3JlKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5kYXRhU291cmNlcy5maWx0ZXIoKGRzKSA9PiBkcy5oYXNNb3JlKCkpLmxlbmd0aCA+IDA7XG4gICAgfVxuXG4gICAgZ2V0RGF0YSgpIHtcbiAgICAgICAgcmV0dXJuIFtdLmNvbmNhdC5hcHBseShcbiAgICAgICAgICAgIFtdLFxuICAgICAgICAgICAgdGhpcy5kYXRhU291cmNlcy5tYXAoKGRzKSA9PiBkcy5nZXREYXRhKCkpLFxuICAgICAgICApO1xuICAgIH1cblxuICAgIGlzRW1wdHkoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLmdldERhdGEoKT8ubGVuZ3RoID09PSAwO1xuICAgIH1cblxuICAgIGdldFRvdGFsKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5kYXRhU291cmNlcy5tYXAoKGRzKSA9PiBkcy5nZXRUb3RhbCgpKS5yZWR1Y2UoKGEsIGIpID0+IGEgKyBiKTtcbiAgICB9XG5cbiAgICBpc0Z1bGx5TG9hZGVkKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5nZXRUb3RhbCgpIDw9IHRoaXMuZ2V0RGF0YSgpPy5sZW5ndGg7XG4gICAgfVxuXG4gICAgZ2V0RGF0YXNvdXJjZShwb3NpdGlvbjogbnVtYmVyKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmRhdGFTb3VyY2VzW3Bvc2l0aW9uXTtcbiAgICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { NodeDataSource } from './node-data-source';
|
|
2
|
+
/**
|
|
3
|
+
* this is a special data source to provide custom card layouts into the node-entries components
|
|
4
|
+
*/
|
|
5
|
+
export class CustomTemplatesDataSource extends NodeDataSource {
|
|
6
|
+
}
|
|
7
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VzdG9tLXRlbXBsYXRlcy1kYXRhLXNvdXJjZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VkdS1zaGFyaW5nLXVpL3NyYy9saWIvbm9kZS1lbnRyaWVzL2N1c3RvbS10ZW1wbGF0ZXMtZGF0YS1zb3VyY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBRXBEOztHQUVHO0FBQ0gsTUFBTSxPQUFPLHlCQUEwQixTQUFRLGNBQW1CO0NBQUciLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOb2RlRGF0YVNvdXJjZSB9IGZyb20gJy4vbm9kZS1kYXRhLXNvdXJjZSc7XG5cbi8qKlxuICogdGhpcyBpcyBhIHNwZWNpYWwgZGF0YSBzb3VyY2UgdG8gcHJvdmlkZSBjdXN0b20gY2FyZCBsYXlvdXRzIGludG8gdGhlIG5vZGUtZW50cmllcyBjb21wb25lbnRzXG4gKi9cbmV4cG9ydCBjbGFzcyBDdXN0b21UZW1wbGF0ZXNEYXRhU291cmNlIGV4dGVuZHMgTm9kZURhdGFTb3VyY2U8YW55PiB7fVxuIl19
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { Component, Input } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "@angular/common";
|
|
4
|
+
import * as i2 from "../../list-items/list-text/list-text.component";
|
|
5
|
+
import * as i3 from "@angular/material/badge";
|
|
6
|
+
import * as i4 from "../../pipes/node-icon.pipe";
|
|
7
|
+
export class DragPreviewComponent {
|
|
8
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: DragPreviewComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
9
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.6", type: DragPreviewComponent, selector: "es-drag-preview", inputs: { node: "node", selected: "selected", item: "item" }, ngImport: i0, template: "<div class=\"drag-preview\" [matBadge]=\"selected.length > 1 ? selected.length : null\">\n <div class=\"drag-preview-icon\">\n <img *ngIf=\"node.iconURL\" [src]=\"node | esNodeIcon\" />\n </div>\n <es-list-text class=\"drag-preview-text\" [node]=\"node\" [item]=\"item\"></es-list-text>\n</div>\n", styles: [".drag-preview{display:flex;align-items:center;gap:16px;height:48px;padding:0 12px;background-color:var(--palette-primary-50)}.drag-preview-icon{width:30px;height:30px;padding:3px;margin:1px 0;background-color:#fff;border-radius:50%;display:flex;justify-content:center;align-items:center;box-shadow:0 0 3px #0000004d}.drag-preview-icon>img{width:18px;height:auto}.drag-preview-text{max-width:300px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.ListTextComponent, selector: "es-list-text" }, { kind: "directive", type: i3.MatBadge, selector: "[matBadge]", inputs: ["matBadgeDisabled", "matBadgeColor", "matBadgeOverlap", "matBadgePosition", "matBadge", "matBadgeDescription", "matBadgeSize", "matBadgeHidden"] }, { kind: "pipe", type: i4.NodeIconPipe, name: "esNodeIcon" }] }); }
|
|
10
|
+
}
|
|
11
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: DragPreviewComponent, decorators: [{
|
|
12
|
+
type: Component,
|
|
13
|
+
args: [{ selector: 'es-drag-preview', template: "<div class=\"drag-preview\" [matBadge]=\"selected.length > 1 ? selected.length : null\">\n <div class=\"drag-preview-icon\">\n <img *ngIf=\"node.iconURL\" [src]=\"node | esNodeIcon\" />\n </div>\n <es-list-text class=\"drag-preview-text\" [node]=\"node\" [item]=\"item\"></es-list-text>\n</div>\n", styles: [".drag-preview{display:flex;align-items:center;gap:16px;height:48px;padding:0 12px;background-color:var(--palette-primary-50)}.drag-preview-icon{width:30px;height:30px;padding:3px;margin:1px 0;background-color:#fff;border-radius:50%;display:flex;justify-content:center;align-items:center;box-shadow:0 0 3px #0000004d}.drag-preview-icon>img{width:18px;height:auto}.drag-preview-text{max-width:300px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}\n"] }]
|
|
14
|
+
}], propDecorators: { node: [{
|
|
15
|
+
type: Input
|
|
16
|
+
}], selected: [{
|
|
17
|
+
type: Input
|
|
18
|
+
}], item: [{
|
|
19
|
+
type: Input
|
|
20
|
+
}] } });
|
|
21
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJhZy1wcmV2aWV3LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VkdS1zaGFyaW5nLXVpL3NyYy9saWIvbm9kZS1lbnRyaWVzL2RyYWctcHJldmlldy9kcmFnLXByZXZpZXcuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWR1LXNoYXJpbmctdWkvc3JjL2xpYi9ub2RlLWVudHJpZXMvZHJhZy1wcmV2aWV3L2RyYWctcHJldmlldy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQzs7Ozs7O0FBVWpELE1BQU0sT0FBTyxvQkFBb0I7OEdBQXBCLG9CQUFvQjtrR0FBcEIsb0JBQW9CLHFIQ1ZqQyxnVEFNQTs7MkZESWEsb0JBQW9CO2tCQUxoQyxTQUFTOytCQUNJLGlCQUFpQjs4QkFLbEIsSUFBSTtzQkFBWixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTGlzdEl0ZW0gfSBmcm9tICcuLi8uLi90eXBlcy9saXN0LWl0ZW0nO1xuaW1wb3J0IHsgTm9kZSB9IGZyb20gJ25neC1lZHUtc2hhcmluZy1hcGknO1xuaW1wb3J0IHsgTm9kZUVudHJpZXNEYXRhVHlwZSB9IGZyb20gJy4uL2VudHJpZXMtbW9kZWwnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2VzLWRyYWctcHJldmlldycsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2RyYWctcHJldmlldy5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vZHJhZy1wcmV2aWV3LmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIERyYWdQcmV2aWV3Q29tcG9uZW50PFQgZXh0ZW5kcyBOb2RlRW50cmllc0RhdGFUeXBlPiB7XG4gICAgQElucHV0KCkgbm9kZTogTm9kZTtcbiAgICBASW5wdXQoKSBzZWxlY3RlZDogVFtdO1xuICAgIEBJbnB1dCgpIGl0ZW06IExpc3RJdGVtO1xufVxuIiwiPGRpdiBjbGFzcz1cImRyYWctcHJldmlld1wiIFttYXRCYWRnZV09XCJzZWxlY3RlZC5sZW5ndGggPiAxID8gc2VsZWN0ZWQubGVuZ3RoIDogbnVsbFwiPlxuICA8ZGl2IGNsYXNzPVwiZHJhZy1wcmV2aWV3LWljb25cIj5cbiAgICA8aW1nICpuZ0lmPVwibm9kZS5pY29uVVJMXCIgW3NyY109XCJub2RlIHwgZXNOb2RlSWNvblwiIC8+XG4gIDwvZGl2PlxuICA8ZXMtbGlzdC10ZXh0IGNsYXNzPVwiZHJhZy1wcmV2aWV3LXRleHRcIiBbbm9kZV09XCJub2RlXCIgW2l0ZW1dPVwiaXRlbVwiPjwvZXMtbGlzdC10ZXh0PlxuPC9kaXY+XG4iXX0=
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
export var NodeEntriesDisplayType;
|
|
2
|
+
(function (NodeEntriesDisplayType) {
|
|
3
|
+
NodeEntriesDisplayType[NodeEntriesDisplayType["Table"] = 0] = "Table";
|
|
4
|
+
NodeEntriesDisplayType[NodeEntriesDisplayType["Grid"] = 1] = "Grid";
|
|
5
|
+
NodeEntriesDisplayType[NodeEntriesDisplayType["SmallGrid"] = 2] = "SmallGrid";
|
|
6
|
+
})(NodeEntriesDisplayType || (NodeEntriesDisplayType = {}));
|
|
7
|
+
export var InteractionType;
|
|
8
|
+
(function (InteractionType) {
|
|
9
|
+
// create router link
|
|
10
|
+
InteractionType[InteractionType["DefaultActionLink"] = 0] = "DefaultActionLink";
|
|
11
|
+
// emit an event
|
|
12
|
+
InteractionType[InteractionType["Emitter"] = 1] = "Emitter";
|
|
13
|
+
InteractionType[InteractionType["None"] = 2] = "None";
|
|
14
|
+
})(InteractionType || (InteractionType = {}));
|
|
15
|
+
export var ClickSource;
|
|
16
|
+
(function (ClickSource) {
|
|
17
|
+
ClickSource[ClickSource["Preview"] = 0] = "Preview";
|
|
18
|
+
ClickSource[ClickSource["Icon"] = 1] = "Icon";
|
|
19
|
+
ClickSource[ClickSource["Metadata"] = 2] = "Metadata";
|
|
20
|
+
ClickSource[ClickSource["Comments"] = 3] = "Comments";
|
|
21
|
+
ClickSource[ClickSource["Overlay"] = 4] = "Overlay";
|
|
22
|
+
})(ClickSource || (ClickSource = {}));
|
|
23
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW50cmllcy1tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VkdS1zaGFyaW5nLXVpL3NyYy9saWIvbm9kZS1lbnRyaWVzL2VudHJpZXMtbW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBa0JBLE1BQU0sQ0FBTixJQUFZLHNCQUlYO0FBSkQsV0FBWSxzQkFBc0I7SUFDOUIscUVBQUssQ0FBQTtJQUNMLG1FQUFJLENBQUE7SUFDSiw2RUFBUyxDQUFBO0FBQ2IsQ0FBQyxFQUpXLHNCQUFzQixLQUF0QixzQkFBc0IsUUFJakM7QUFFRCxNQUFNLENBQU4sSUFBWSxlQU1YO0FBTkQsV0FBWSxlQUFlO0lBQ3ZCLHFCQUFxQjtJQUNyQiwrRUFBaUIsQ0FBQTtJQUNqQixnQkFBZ0I7SUFDaEIsMkRBQU8sQ0FBQTtJQUNQLHFEQUFJLENBQUE7QUFDUixDQUFDLEVBTlcsZUFBZSxLQUFmLGVBQWUsUUFNMUI7QUE2QkQsTUFBTSxDQUFOLElBQVksV0FNWDtBQU5ELFdBQVksV0FBVztJQUNuQixtREFBTyxDQUFBO0lBQ1AsNkNBQUksQ0FBQTtJQUNKLHFEQUFRLENBQUE7SUFDUixxREFBUSxDQUFBO0lBQ1IsbURBQU8sQ0FBQTtBQUNYLENBQUMsRUFOVyxXQUFXLEtBQVgsV0FBVyxRQU10QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFNvcnQgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9zb3J0JztcblxuaW1wb3J0IHsgU2VsZWN0aW9uTW9kZWwgfSBmcm9tICdAYW5ndWxhci9jZGsvY29sbGVjdGlvbnMnO1xuaW1wb3J0IHsgQ3VzdG9tT3B0aW9ucywgT3B0aW9uSXRlbSwgVGFyZ2V0IH0gZnJvbSAnLi4vdHlwZXMvb3B0aW9uLWl0ZW0nO1xuaW1wb3J0IHsgTGlzdEl0ZW0sIExpc3RJdGVtU29ydCB9IGZyb20gJy4uL3R5cGVzL2xpc3QtaXRlbSc7XG5pbXBvcnQgeyBDYW5Ecm9wLCBEcmFnRGF0YSwgRHJvcEFjdGlvbiB9IGZyb20gJy4uL3R5cGVzL2RyYWctZHJvcCc7XG5pbXBvcnQgeyBOb2RlLCBHZW5lcmljQXV0aG9yaXR5IH0gZnJvbSAnbmd4LWVkdS1zaGFyaW5nLWFwaSc7XG5pbXBvcnQgeyBBY3Rpb25iYXJDb21wb25lbnQgfSBmcm9tICcuLi9hY3Rpb25iYXIvYWN0aW9uYmFyLmNvbXBvbmVudCc7XG5cbmV4cG9ydCB0eXBlIE5vZGVSb290ID1cbiAgICB8ICdNWV9GSUxFUydcbiAgICB8ICdTSEFSRURfRklMRVMnXG4gICAgfCAnTVlfU0hBUkVEX0ZJTEVTJ1xuICAgIHwgJ1RPX01FX1NIQVJFRF9GSUxFUydcbiAgICB8ICdXT1JLRkxPV19SRUNFSVZFJ1xuICAgIHwgJ1JFQ1lDTEUnXG4gICAgfCAnQUxMX0ZJTEVTJztcblxuZXhwb3J0IGVudW0gTm9kZUVudHJpZXNEaXNwbGF5VHlwZSB7XG4gICAgVGFibGUsXG4gICAgR3JpZCxcbiAgICBTbWFsbEdyaWQsXG59XG5cbmV4cG9ydCBlbnVtIEludGVyYWN0aW9uVHlwZSB7XG4gICAgLy8gY3JlYXRlIHJvdXRlciBsaW5rXG4gICAgRGVmYXVsdEFjdGlvbkxpbmssXG4gICAgLy8gZW1pdCBhbiBldmVudFxuICAgIEVtaXR0ZXIsXG4gICAgTm9uZSxcbn1cblxuZXhwb3J0IHR5cGUgTGlzdE9wdGlvbnMgPSB7IFtrZXkgaW4gVGFyZ2V0XT86IE9wdGlvbkl0ZW1bXSB9O1xuZXhwb3J0IHR5cGUgTGlzdE9wdGlvbnNDb25maWcgPSB7XG4gICAgYWN0aW9uYmFyPzogQWN0aW9uYmFyQ29tcG9uZW50O1xuICAgIHBhcmVudD86IE5vZGU7XG4gICAgY3VzdG9tT3B0aW9ucz86IEN1c3RvbU9wdGlvbnM7XG59O1xuXG5leHBvcnQgaW50ZXJmYWNlIExpc3RTb3J0Q29uZmlnIGV4dGVuZHMgU29ydCB7XG4gICAgY29sdW1uczogTGlzdEl0ZW1Tb3J0W107XG4gICAgYWxsb3dlZD86IGJvb2xlYW47XG4gICAgY3VzdG9tU29ydGluZ0luUHJvZ3Jlc3M/OiBib29sZWFuO1xufVxuXG5leHBvcnQgdHlwZSBEcm9wVGFyZ2V0ID0gTm9kZSB8IE5vZGVSb290O1xuXG5leHBvcnQgaW50ZXJmYWNlIERyb3BTb3VyY2U8VCBleHRlbmRzIE5vZGVFbnRyaWVzRGF0YVR5cGU+IHtcbiAgICBlbGVtZW50OiBUW107XG4gICAgLy8gc291cmNlTGlzdDogTGlzdEV2ZW50SW50ZXJmYWNlPFQ+O1xuICAgIG1vZGU6IERyb3BBY3Rpb247XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTGlzdERyYWdHcm9wQ29uZmlnPFQgZXh0ZW5kcyBOb2RlRW50cmllc0RhdGFUeXBlPiB7XG4gICAgZHJhZ0FsbG93ZWQ6IGJvb2xlYW47XG4gICAgZHJvcEFsbG93ZWQ/OiAoZHJhZ0RhdGE6IERyYWdEYXRhPFQ+KSA9PiBDYW5Ecm9wO1xuICAgIGRyb3BwZWQ/OiAodGFyZ2V0OiBOb2RlLCBzb3VyY2U6IERyb3BTb3VyY2U8Tm9kZUVudHJpZXNEYXRhVHlwZT4pID0+IHZvaWQ7XG59XG5cbmV4cG9ydCBlbnVtIENsaWNrU291cmNlIHtcbiAgICBQcmV2aWV3LFxuICAgIEljb24sXG4gICAgTWV0YWRhdGEsXG4gICAgQ29tbWVudHMsXG4gICAgT3ZlcmxheSxcbn1cblxuZXhwb3J0IHR5cGUgTm9kZUNsaWNrRXZlbnQ8VCBleHRlbmRzIE5vZGVFbnRyaWVzRGF0YVR5cGU+ID0ge1xuICAgIGVsZW1lbnQ6IFQ7XG4gICAgc291cmNlOiBDbGlja1NvdXJjZTtcbiAgICBhdHRyaWJ1dGU/OiBMaXN0SXRlbTsgLy8gb25seSB3aGVuIHNvdXJjZSA9PT0gTWV0YWRhdGFcbn07XG5leHBvcnQgdHlwZSBGZXRjaEV2ZW50ID0ge1xuICAgIG9mZnNldDogbnVtYmVyO1xuICAgIGFtb3VudD86IG51bWJlcjtcbiAgICAvKipcbiAgICAgKiBpcyBhIHJlc2V0IG9mIHRoZSBjdXJyZW50IGRhdGEgcmVxdWlyZWQ/XG4gICAgICogdGhpcyBzaG91bGQgYmUgdHJ1ZSBpZiB0aGlzIHdhcyBhIHBhZ2luYXRpb24gcmVxdWVzdFxuICAgICAqL1xuICAgIHJlc2V0PzogYm9vbGVhbjtcbn07XG5leHBvcnQgdHlwZSBOb2RlRW50cmllc0RhdGFUeXBlID0gTm9kZSB8IEdlbmVyaWNBdXRob3JpdHk7XG5leHBvcnQgdHlwZSBHcmlkTGF5b3V0ID0gJ2dyaWQnIHwgJ3Njcm9sbCc7XG5leHBvcnQgdHlwZSBHcmlkQ29uZmlnID0ge1xuICAgIC8qKlxuICAgICAqIG1heCBhbW91bnQgb2Ygcm93cyB0aGF0IHNob3VsZCBiZSB2aXNpYmxlLCB1bnNldCBmb3Igbm8gbGltaXRcbiAgICAgKi9cbiAgICBtYXhSb3dzPzogbnVtYmVyO1xuICAgIC8qKlxuICAgICAqIGxheW91dCwgZGVmYXVsdHMgdG8gJ2dyaWQnXG4gICAgICogJ3Njcm9sbCcgbWF5IG9ubHkgYmUgdXNlZCB3aGVuIG1heFJvd3MgaXMgbm90IHNldFxuICAgICAqL1xuICAgIGxheW91dD86IEdyaWRMYXlvdXQ7XG59O1xuXG5leHBvcnQgaW50ZXJmYWNlIExpc3RFdmVudEludGVyZmFjZTxUIGV4dGVuZHMgTm9kZUVudHJpZXNEYXRhVHlwZT4ge1xuICAgIHVwZGF0ZU5vZGVzKG5vZGVzOiB2b2lkIHwgVFtdKTogdm9pZDtcblxuICAgIGdldERpc3BsYXlUeXBlKCk6IE5vZGVFbnRyaWVzRGlzcGxheVR5cGU7XG5cbiAgICBzZXREaXNwbGF5VHlwZShkaXNwbGF5VHlwZTogTm9kZUVudHJpZXNEaXNwbGF5VHlwZSk6IHZvaWQ7XG5cbiAgICBzaG93UmVvcmRlckNvbHVtbnNEaWFsb2coKTogdm9pZDtcblxuICAgIGFkZFZpcnR1YWxOb2Rlcyh2aXJ0dWFsOiBUW10pOiB2b2lkO1xuXG4gICAgc2V0T3B0aW9ucyhvcHRpb25zOiBMaXN0T3B0aW9ucyk6IHZvaWQ7XG5cbiAgICAvKipcbiAgICAgKiBhY3RpdmF0ZSBvcHRpb24gKGRyb3Bkb3duKSBnZW5lcmF0aW9uXG4gICAgICovXG4gICAgaW5pdE9wdGlvbnNHZW5lcmF0b3IoY29uZmlnOiBMaXN0T3B0aW9uc0NvbmZpZyk6IHZvaWQgfCBQcm9taXNlPHZvaWQ+O1xuXG4gICAgZ2V0U2VsZWN0aW9uKCk6IFNlbGVjdGlvbk1vZGVsPFQ+O1xuXG4gICAgLyoqXG4gICAgICogdHJpZ2dlcmVkIHdoZW4gbm9kZXMvb2JqZWN0cyBhcmUgZGVsZXRlZCBhbmQgc2hvdWxkIG5vdCBiZSBzaG93biBpbiB0aGUgbGlzdCBhbnltb3JlXG4gICAgICovXG4gICAgZGVsZXRlTm9kZXMob2JqZWN0czogVFtdKTogdm9pZDtcbn1cbiJdfQ==
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import * as rxjs from 'rxjs';
|
|
2
|
+
import { BehaviorSubject } from 'rxjs';
|
|
3
|
+
import { distinctUntilChanged, map } from 'rxjs/operators';
|
|
4
|
+
export class ItemsCap {
|
|
5
|
+
constructor() {
|
|
6
|
+
this._cap = new BehaviorSubject(null);
|
|
7
|
+
this._disabled = new BehaviorSubject(false);
|
|
8
|
+
this._isActivelyCapping = false;
|
|
9
|
+
this._effectiveCap = rxjs
|
|
10
|
+
.combineLatest([this._cap, this._disabled])
|
|
11
|
+
.pipe(map(([cap, disabled]) => (disabled ? null : cap)), distinctUntilChanged());
|
|
12
|
+
}
|
|
13
|
+
/** The number of items to which the data should be capped. */
|
|
14
|
+
get cap() {
|
|
15
|
+
return this._cap.value;
|
|
16
|
+
}
|
|
17
|
+
set cap(value) {
|
|
18
|
+
this._cap.next(value ?? null);
|
|
19
|
+
}
|
|
20
|
+
/** Whether to temporarily disable capping. */
|
|
21
|
+
get disabled() {
|
|
22
|
+
return this._disabled.value;
|
|
23
|
+
}
|
|
24
|
+
set disabled(value) {
|
|
25
|
+
this._disabled.next(value);
|
|
26
|
+
}
|
|
27
|
+
/** Whether there is more data available that is currently being capped. */
|
|
28
|
+
get isActivelyCapping() {
|
|
29
|
+
return this._isActivelyCapping;
|
|
30
|
+
}
|
|
31
|
+
connect(dataStream) {
|
|
32
|
+
return rxjs.combineLatest([this._effectiveCap, dataStream]).pipe(map(([effectiveCap, originalData]) => {
|
|
33
|
+
const needToCap = this._needToCap(effectiveCap, originalData);
|
|
34
|
+
this._isActivelyCapping = needToCap;
|
|
35
|
+
if (needToCap) {
|
|
36
|
+
return originalData.slice(0, effectiveCap);
|
|
37
|
+
}
|
|
38
|
+
else {
|
|
39
|
+
return originalData;
|
|
40
|
+
}
|
|
41
|
+
}));
|
|
42
|
+
}
|
|
43
|
+
_needToCap(effectiveCap, originalData) {
|
|
44
|
+
return effectiveCap && originalData?.length > effectiveCap;
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXRlbXMtY2FwLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWR1LXNoYXJpbmctdWkvc3JjL2xpYi9ub2RlLWVudHJpZXMvaXRlbXMtY2FwLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxJQUFJLE1BQU0sTUFBTSxDQUFDO0FBQzdCLE9BQU8sRUFBRSxlQUFlLEVBQWMsTUFBTSxNQUFNLENBQUM7QUFDbkQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRTNELE1BQU0sT0FBTyxRQUFRO0lBQXJCO1FBUVksU0FBSSxHQUFHLElBQUksZUFBZSxDQUFnQixJQUFJLENBQUMsQ0FBQztRQVNoRCxjQUFTLEdBQUcsSUFBSSxlQUFlLENBQUMsS0FBSyxDQUFDLENBQUM7UUFNdkMsdUJBQWtCLEdBQUcsS0FBSyxDQUFDO1FBRTNCLGtCQUFhLEdBQThCLElBQUk7YUFDbEQsYUFBYSxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7YUFDMUMsSUFBSSxDQUNELEdBQUcsQ0FBQyxDQUFDLENBQUMsR0FBRyxFQUFFLFFBQVEsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUNqRCxvQkFBb0IsRUFBRSxDQUN6QixDQUFDO0lBbUJWLENBQUM7SUFoREcsOERBQThEO0lBQzlELElBQUksR0FBRztRQUNILE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUM7SUFDM0IsQ0FBQztJQUNELElBQUksR0FBRyxDQUFDLEtBQW9CO1FBQ3hCLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssSUFBSSxJQUFJLENBQUMsQ0FBQztJQUNsQyxDQUFDO0lBR0QsOENBQThDO0lBQzlDLElBQUksUUFBUTtRQUNSLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUM7SUFDaEMsQ0FBQztJQUNELElBQUksUUFBUSxDQUFDLEtBQWM7UUFDdkIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDL0IsQ0FBQztJQUdELDJFQUEyRTtJQUMzRSxJQUFJLGlCQUFpQjtRQUNqQixPQUFPLElBQUksQ0FBQyxrQkFBa0IsQ0FBQztJQUNuQyxDQUFDO0lBVUQsT0FBTyxDQUFDLFVBQTJCO1FBQy9CLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDLElBQUksQ0FBQyxhQUFhLEVBQUUsVUFBVSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQzVELEdBQUcsQ0FBQyxDQUFDLENBQUMsWUFBWSxFQUFFLFlBQVksQ0FBQyxFQUFFLEVBQUU7WUFDakMsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxZQUFZLEVBQUUsWUFBWSxDQUFDLENBQUM7WUFDOUQsSUFBSSxDQUFDLGtCQUFrQixHQUFHLFNBQVMsQ0FBQztZQUNwQyxJQUFJLFNBQVMsRUFBRTtnQkFDWCxPQUFPLFlBQVksQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLFlBQVksQ0FBQyxDQUFDO2FBQzlDO2lCQUFNO2dCQUNILE9BQU8sWUFBWSxDQUFDO2FBQ3ZCO1FBQ0wsQ0FBQyxDQUFDLENBQ0wsQ0FBQztJQUNOLENBQUM7SUFFTyxVQUFVLENBQUMsWUFBMkIsRUFBRSxZQUFpQjtRQUM3RCxPQUFPLFlBQVksSUFBSSxZQUFZLEVBQUUsTUFBTSxHQUFHLFlBQVksQ0FBQztJQUMvRCxDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyByeGpzIGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBkaXN0aW5jdFVudGlsQ2hhbmdlZCwgbWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5leHBvcnQgY2xhc3MgSXRlbXNDYXA8VD4ge1xuICAgIC8qKiBUaGUgbnVtYmVyIG9mIGl0ZW1zIHRvIHdoaWNoIHRoZSBkYXRhIHNob3VsZCBiZSBjYXBwZWQuICovXG4gICAgZ2V0IGNhcCgpOiBudW1iZXIgfCBudWxsIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2NhcC52YWx1ZTtcbiAgICB9XG4gICAgc2V0IGNhcCh2YWx1ZTogbnVtYmVyIHwgbnVsbCkge1xuICAgICAgICB0aGlzLl9jYXAubmV4dCh2YWx1ZSA/PyBudWxsKTtcbiAgICB9XG4gICAgcHJpdmF0ZSBfY2FwID0gbmV3IEJlaGF2aW9yU3ViamVjdDxudW1iZXIgfCBudWxsPihudWxsKTtcblxuICAgIC8qKiBXaGV0aGVyIHRvIHRlbXBvcmFyaWx5IGRpc2FibGUgY2FwcGluZy4gKi9cbiAgICBnZXQgZGlzYWJsZWQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9kaXNhYmxlZC52YWx1ZTtcbiAgICB9XG4gICAgc2V0IGRpc2FibGVkKHZhbHVlOiBib29sZWFuKSB7XG4gICAgICAgIHRoaXMuX2Rpc2FibGVkLm5leHQodmFsdWUpO1xuICAgIH1cbiAgICBwcml2YXRlIF9kaXNhYmxlZCA9IG5ldyBCZWhhdmlvclN1YmplY3QoZmFsc2UpO1xuXG4gICAgLyoqIFdoZXRoZXIgdGhlcmUgaXMgbW9yZSBkYXRhIGF2YWlsYWJsZSB0aGF0IGlzIGN1cnJlbnRseSBiZWluZyBjYXBwZWQuICovXG4gICAgZ2V0IGlzQWN0aXZlbHlDYXBwaW5nKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5faXNBY3RpdmVseUNhcHBpbmc7XG4gICAgfVxuICAgIHByaXZhdGUgX2lzQWN0aXZlbHlDYXBwaW5nID0gZmFsc2U7XG5cbiAgICBwcml2YXRlIF9lZmZlY3RpdmVDYXA6IE9ic2VydmFibGU8bnVtYmVyIHwgbnVsbD4gPSByeGpzXG4gICAgICAgIC5jb21iaW5lTGF0ZXN0KFt0aGlzLl9jYXAsIHRoaXMuX2Rpc2FibGVkXSlcbiAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICBtYXAoKFtjYXAsIGRpc2FibGVkXSkgPT4gKGRpc2FibGVkID8gbnVsbCA6IGNhcCkpLFxuICAgICAgICAgICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKSxcbiAgICAgICAgKTtcblxuICAgIGNvbm5lY3QoZGF0YVN0cmVhbTogT2JzZXJ2YWJsZTxUW10+KTogT2JzZXJ2YWJsZTxUW10+IHtcbiAgICAgICAgcmV0dXJuIHJ4anMuY29tYmluZUxhdGVzdChbdGhpcy5fZWZmZWN0aXZlQ2FwLCBkYXRhU3RyZWFtXSkucGlwZShcbiAgICAgICAgICAgIG1hcCgoW2VmZmVjdGl2ZUNhcCwgb3JpZ2luYWxEYXRhXSkgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IG5lZWRUb0NhcCA9IHRoaXMuX25lZWRUb0NhcChlZmZlY3RpdmVDYXAsIG9yaWdpbmFsRGF0YSk7XG4gICAgICAgICAgICAgICAgdGhpcy5faXNBY3RpdmVseUNhcHBpbmcgPSBuZWVkVG9DYXA7XG4gICAgICAgICAgICAgICAgaWYgKG5lZWRUb0NhcCkge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gb3JpZ2luYWxEYXRhLnNsaWNlKDAsIGVmZmVjdGl2ZUNhcCk7XG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG9yaWdpbmFsRGF0YTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KSxcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIF9uZWVkVG9DYXAoZWZmZWN0aXZlQ2FwOiBudW1iZXIgfCBudWxsLCBvcmlnaW5hbERhdGE6IFRbXSk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gZWZmZWN0aXZlQ2FwICYmIG9yaWdpbmFsRGF0YT8ubGVuZ3RoID4gZWZmZWN0aXZlQ2FwO1xuICAgIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { Pipe } from '@angular/core';
|
|
2
|
+
import * as rxjs from 'rxjs';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "@ngx-translate/core";
|
|
5
|
+
export class ListItemLabelPipe {
|
|
6
|
+
constructor(translate) {
|
|
7
|
+
this.translate = translate;
|
|
8
|
+
}
|
|
9
|
+
transform(item, args = { fallback: item.name }) {
|
|
10
|
+
const mapping = {
|
|
11
|
+
NODE: 'NODE',
|
|
12
|
+
COLLECTION: 'NODE',
|
|
13
|
+
NODE_PROPOSAL: 'NODE_PROPOSAL',
|
|
14
|
+
ORG: 'ORG',
|
|
15
|
+
GROUP: 'GROUP',
|
|
16
|
+
USER: 'USER',
|
|
17
|
+
};
|
|
18
|
+
if (item.label) {
|
|
19
|
+
return rxjs.of(item.label);
|
|
20
|
+
}
|
|
21
|
+
else {
|
|
22
|
+
return this.translate.get(mapping[item.type] + '.' + item.name, {
|
|
23
|
+
fallback: args.fallback,
|
|
24
|
+
});
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: ListItemLabelPipe, deps: [{ token: i1.TranslateService }], target: i0.ɵɵFactoryTarget.Pipe }); }
|
|
28
|
+
static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "16.2.6", ngImport: i0, type: ListItemLabelPipe, name: "esListItemLabel" }); }
|
|
29
|
+
}
|
|
30
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: ListItemLabelPipe, decorators: [{
|
|
31
|
+
type: Pipe,
|
|
32
|
+
args: [{ name: 'esListItemLabel' }]
|
|
33
|
+
}], ctorParameters: function () { return [{ type: i1.TranslateService }]; } });
|
|
34
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdC1pdGVtLWxhYmVsLnBpcGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lZHUtc2hhcmluZy11aS9zcmMvbGliL25vZGUtZW50cmllcy9saXN0LWl0ZW0tbGFiZWwucGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsSUFBSSxFQUFpQixNQUFNLGVBQWUsQ0FBQztBQUVwRCxPQUFPLEtBQUssSUFBSSxNQUFNLE1BQU0sQ0FBQzs7O0FBSzdCLE1BQU0sT0FBTyxpQkFBaUI7SUFDMUIsWUFBb0IsU0FBMkI7UUFBM0IsY0FBUyxHQUFULFNBQVMsQ0FBa0I7SUFBRyxDQUFDO0lBRW5ELFNBQVMsQ0FBQyxJQUFjLEVBQUUsSUFBSSxHQUFHLEVBQUUsUUFBUSxFQUFFLElBQUksQ0FBQyxJQUFJLEVBQUU7UUFDcEQsTUFBTSxPQUFPLEdBQUc7WUFDWixJQUFJLEVBQUUsTUFBTTtZQUNaLFVBQVUsRUFBRSxNQUFNO1lBQ2xCLGFBQWEsRUFBRSxlQUFlO1lBQzlCLEdBQUcsRUFBRSxLQUFLO1lBQ1YsS0FBSyxFQUFFLE9BQU87WUFDZCxJQUFJLEVBQUUsTUFBTTtTQUNmLENBQUM7UUFDRixJQUFJLElBQUksQ0FBQyxLQUFLLEVBQUU7WUFDWixPQUFPLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1NBQzlCO2FBQU07WUFDSCxPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsR0FBRyxHQUFHLElBQUksQ0FBQyxJQUFJLEVBQUU7Z0JBQzVELFFBQVEsRUFBRSxJQUFJLENBQUMsUUFBUTthQUMxQixDQUFDLENBQUM7U0FDTjtJQUNMLENBQUM7OEdBbkJRLGlCQUFpQjs0R0FBakIsaUJBQWlCOzsyRkFBakIsaUJBQWlCO2tCQUQ3QixJQUFJO21CQUFDLEVBQUUsSUFBSSxFQUFFLGlCQUFpQixFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUGlwZSwgUGlwZVRyYW5zZm9ybSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuaW1wb3J0ICogYXMgcnhqcyBmcm9tICdyeGpzJztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IExpc3RJdGVtIH0gZnJvbSAnLi4vdHlwZXMvbGlzdC1pdGVtJztcblxuQFBpcGUoeyBuYW1lOiAnZXNMaXN0SXRlbUxhYmVsJyB9KVxuZXhwb3J0IGNsYXNzIExpc3RJdGVtTGFiZWxQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSB0cmFuc2xhdGU6IFRyYW5zbGF0ZVNlcnZpY2UpIHt9XG5cbiAgICB0cmFuc2Zvcm0oaXRlbTogTGlzdEl0ZW0sIGFyZ3MgPSB7IGZhbGxiYWNrOiBpdGVtLm5hbWUgfSk6IE9ic2VydmFibGU8c3RyaW5nPiB7XG4gICAgICAgIGNvbnN0IG1hcHBpbmcgPSB7XG4gICAgICAgICAgICBOT0RFOiAnTk9ERScsXG4gICAgICAgICAgICBDT0xMRUNUSU9OOiAnTk9ERScsXG4gICAgICAgICAgICBOT0RFX1BST1BPU0FMOiAnTk9ERV9QUk9QT1NBTCcsXG4gICAgICAgICAgICBPUkc6ICdPUkcnLFxuICAgICAgICAgICAgR1JPVVA6ICdHUk9VUCcsXG4gICAgICAgICAgICBVU0VSOiAnVVNFUicsXG4gICAgICAgIH07XG4gICAgICAgIGlmIChpdGVtLmxhYmVsKSB7XG4gICAgICAgICAgICByZXR1cm4gcnhqcy5vZihpdGVtLmxhYmVsKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLnRyYW5zbGF0ZS5nZXQobWFwcGluZ1tpdGVtLnR5cGVdICsgJy4nICsgaXRlbS5uYW1lLCB7XG4gICAgICAgICAgICAgICAgZmFsbGJhY2s6IGFyZ3MuZmFsbGJhY2ssXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiJdfQ==
|