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,41 @@
|
|
|
1
|
+
import { Component, EventEmitter, Input, Output } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "@angular/common";
|
|
4
|
+
import * as i2 from "@angular/forms";
|
|
5
|
+
import * as i3 from "../../directives/icon.directive";
|
|
6
|
+
import * as i4 from "../../sort-dropdown/sort-dropdown.component";
|
|
7
|
+
import * as i5 from "@angular/material/button";
|
|
8
|
+
import * as i6 from "@angular/material/menu";
|
|
9
|
+
import * as i7 from "@angular/material/slide-toggle";
|
|
10
|
+
import * as i8 from "@ngx-translate/core";
|
|
11
|
+
export class SortSelectPanelComponent {
|
|
12
|
+
constructor() {
|
|
13
|
+
this.sortChange = new EventEmitter();
|
|
14
|
+
this.customSortingInProgressChange = new EventEmitter();
|
|
15
|
+
}
|
|
16
|
+
onSort(event) {
|
|
17
|
+
this.sortChange.emit({
|
|
18
|
+
active: event.name,
|
|
19
|
+
direction: event.ascending ? 'asc' : 'desc',
|
|
20
|
+
});
|
|
21
|
+
}
|
|
22
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: SortSelectPanelComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
23
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.6", type: SortSelectPanelComponent, selector: "es-sort-select-panel", inputs: { active: "active", direction: "direction", columns: "columns", customSortingInProgress: "customSortingInProgress" }, outputs: { sortChange: "sortChange", customSortingInProgressChange: "customSortingInProgressChange" }, ngImport: i0, template: "<mat-slide-toggle\n *ngIf=\"active === 'ccm:collection_ordered_position'\"\n [(ngModel)]=\"customSortingInProgress\"\n (ngModelChange)=\"customSortingInProgressChange.emit($event)\"\n>\n {{ 'COLLECTIONS.SORT_SLIDER' | translate }}\n</mat-slide-toggle>\n<button\n *ngIf=\"sortDropdown.menu\"\n [matMenuTriggerFor]=\"sortDropdown.menu\"\n mat-button\n color=\"primary\"\n>\n <span *ngIf=\"active\">{{ 'NODE.' + active | translate }}</span>\n <span *ngIf=\"!active\">{{ 'SORT_BY' | translate }}</span>\n <i\n *ngIf=\"active && active !== 'ccm:collection_ordered_position'\"\n [esIcon]=\"'arrow_' + (direction === 'asc' ? 'upward' : 'downward')\"\n ></i>\n</button>\n<es-sort-dropdown\n #sortDropdown\n [columns]=\"columns\"\n [sortBy]=\"active\"\n [sortAscending]=\"direction === 'asc'\"\n (onSort)=\"onSort($event)\"\n></es-sort-dropdown>\n", styles: [":host{display:flex;justify-content:flex-end;align-items:center}mat-slide-toggle{margin-right:10px}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i3.IconDirective, selector: "i[esIcon], i.material-icons", inputs: ["altText", "aria", "esIcon"] }, { kind: "component", type: i4.SortDropdownComponent, selector: "es-sort-dropdown", inputs: ["columns", "sortBy", "sortAscending"], outputs: ["onSort"] }, { kind: "component", type: i5.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "directive", type: i6.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", exportAs: ["matMenuTrigger"] }, { kind: "component", type: i7.MatSlideToggle, selector: "mat-slide-toggle", inputs: ["disabled", "disableRipple", "color", "tabIndex"], exportAs: ["matSlideToggle"] }, { kind: "pipe", type: i8.TranslatePipe, name: "translate" }] }); }
|
|
24
|
+
}
|
|
25
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: SortSelectPanelComponent, decorators: [{
|
|
26
|
+
type: Component,
|
|
27
|
+
args: [{ selector: 'es-sort-select-panel', template: "<mat-slide-toggle\n *ngIf=\"active === 'ccm:collection_ordered_position'\"\n [(ngModel)]=\"customSortingInProgress\"\n (ngModelChange)=\"customSortingInProgressChange.emit($event)\"\n>\n {{ 'COLLECTIONS.SORT_SLIDER' | translate }}\n</mat-slide-toggle>\n<button\n *ngIf=\"sortDropdown.menu\"\n [matMenuTriggerFor]=\"sortDropdown.menu\"\n mat-button\n color=\"primary\"\n>\n <span *ngIf=\"active\">{{ 'NODE.' + active | translate }}</span>\n <span *ngIf=\"!active\">{{ 'SORT_BY' | translate }}</span>\n <i\n *ngIf=\"active && active !== 'ccm:collection_ordered_position'\"\n [esIcon]=\"'arrow_' + (direction === 'asc' ? 'upward' : 'downward')\"\n ></i>\n</button>\n<es-sort-dropdown\n #sortDropdown\n [columns]=\"columns\"\n [sortBy]=\"active\"\n [sortAscending]=\"direction === 'asc'\"\n (onSort)=\"onSort($event)\"\n></es-sort-dropdown>\n", styles: [":host{display:flex;justify-content:flex-end;align-items:center}mat-slide-toggle{margin-right:10px}\n"] }]
|
|
28
|
+
}], ctorParameters: function () { return []; }, propDecorators: { active: [{
|
|
29
|
+
type: Input
|
|
30
|
+
}], direction: [{
|
|
31
|
+
type: Input
|
|
32
|
+
}], columns: [{
|
|
33
|
+
type: Input
|
|
34
|
+
}], sortChange: [{
|
|
35
|
+
type: Output
|
|
36
|
+
}], customSortingInProgress: [{
|
|
37
|
+
type: Input
|
|
38
|
+
}], customSortingInProgressChange: [{
|
|
39
|
+
type: Output
|
|
40
|
+
}] } });
|
|
41
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic29ydC1zZWxlY3QtcGFuZWwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWR1LXNoYXJpbmctdWkvc3JjL2xpYi9ub2RlLWVudHJpZXMvc29ydC1zZWxlY3QtcGFuZWwvc29ydC1zZWxlY3QtcGFuZWwuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWR1LXNoYXJpbmctdWkvc3JjL2xpYi9ub2RlLWVudHJpZXMvc29ydC1zZWxlY3QtcGFuZWwvc29ydC1zZWxlY3QtcGFuZWwuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQzs7Ozs7Ozs7OztBQVN2RSxNQUFNLE9BQU8sd0JBQXdCO0lBUWpDO1FBSlUsZUFBVSxHQUFHLElBQUksWUFBWSxFQUFRLENBQUM7UUFFdEMsa0NBQTZCLEdBQUcsSUFBSSxZQUFZLEVBQVcsQ0FBQztJQUV2RCxDQUFDO0lBRWhCLE1BQU0sQ0FBQyxLQUFnQjtRQUNuQixJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQztZQUNqQixNQUFNLEVBQUUsS0FBSyxDQUFDLElBQUk7WUFDbEIsU0FBUyxFQUFFLEtBQUssQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsTUFBTTtTQUM5QyxDQUFDLENBQUM7SUFDUCxDQUFDOzhHQWZRLHdCQUF3QjtrR0FBeEIsd0JBQXdCLGlTQ1RyQywrMUJBMkJBOzsyRkRsQmEsd0JBQXdCO2tCQUxwQyxTQUFTOytCQUNJLHNCQUFzQjswRUFLdkIsTUFBTTtzQkFBZCxLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLO2dCQUNJLFVBQVU7c0JBQW5CLE1BQU07Z0JBQ0UsdUJBQXVCO3NCQUEvQixLQUFLO2dCQUNJLDZCQUE2QjtzQkFBdEMsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTb3J0LCBTb3J0RGlyZWN0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvc29ydCc7XG5pbXBvcnQgeyBMaXN0SXRlbVNvcnQsIFNvcnRFdmVudCwgU29ydFBhbmVsIH0gZnJvbSAnLi4vLi4vdHlwZXMvbGlzdC1pdGVtJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdlcy1zb3J0LXNlbGVjdC1wYW5lbCcsXG4gICAgdGVtcGxhdGVVcmw6ICcuL3NvcnQtc2VsZWN0LXBhbmVsLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9zb3J0LXNlbGVjdC1wYW5lbC5jb21wb25lbnQuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBTb3J0U2VsZWN0UGFuZWxDb21wb25lbnQgaW1wbGVtZW50cyBTb3J0UGFuZWwge1xuICAgIEBJbnB1dCgpIGFjdGl2ZTogc3RyaW5nO1xuICAgIEBJbnB1dCgpIGRpcmVjdGlvbjogU29ydERpcmVjdGlvbjtcbiAgICBASW5wdXQoKSBjb2x1bW5zOiBMaXN0SXRlbVNvcnRbXTtcbiAgICBAT3V0cHV0KCkgc29ydENoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8U29ydD4oKTtcbiAgICBASW5wdXQoKSBjdXN0b21Tb3J0aW5nSW5Qcm9ncmVzczogYm9vbGVhbjtcbiAgICBAT3V0cHV0KCkgY3VzdG9tU29ydGluZ0luUHJvZ3Jlc3NDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KCk7XG5cbiAgICBjb25zdHJ1Y3RvcigpIHt9XG5cbiAgICBvblNvcnQoZXZlbnQ6IFNvcnRFdmVudCkge1xuICAgICAgICB0aGlzLnNvcnRDaGFuZ2UuZW1pdCh7XG4gICAgICAgICAgICBhY3RpdmU6IGV2ZW50Lm5hbWUsXG4gICAgICAgICAgICBkaXJlY3Rpb246IGV2ZW50LmFzY2VuZGluZyA/ICdhc2MnIDogJ2Rlc2MnLFxuICAgICAgICB9KTtcbiAgICB9XG59XG4iLCI8bWF0LXNsaWRlLXRvZ2dsZVxuICAqbmdJZj1cImFjdGl2ZSA9PT0gJ2NjbTpjb2xsZWN0aW9uX29yZGVyZWRfcG9zaXRpb24nXCJcbiAgWyhuZ01vZGVsKV09XCJjdXN0b21Tb3J0aW5nSW5Qcm9ncmVzc1wiXG4gIChuZ01vZGVsQ2hhbmdlKT1cImN1c3RvbVNvcnRpbmdJblByb2dyZXNzQ2hhbmdlLmVtaXQoJGV2ZW50KVwiXG4+XG4gIHt7ICdDT0xMRUNUSU9OUy5TT1JUX1NMSURFUicgfCB0cmFuc2xhdGUgfX1cbjwvbWF0LXNsaWRlLXRvZ2dsZT5cbjxidXR0b25cbiAgKm5nSWY9XCJzb3J0RHJvcGRvd24ubWVudVwiXG4gIFttYXRNZW51VHJpZ2dlckZvcl09XCJzb3J0RHJvcGRvd24ubWVudVwiXG4gIG1hdC1idXR0b25cbiAgY29sb3I9XCJwcmltYXJ5XCJcbj5cbiAgPHNwYW4gKm5nSWY9XCJhY3RpdmVcIj57eyAnTk9ERS4nICsgYWN0aXZlIHwgdHJhbnNsYXRlIH19PC9zcGFuPlxuICA8c3BhbiAqbmdJZj1cIiFhY3RpdmVcIj57eyAnU09SVF9CWScgfCB0cmFuc2xhdGUgfX08L3NwYW4+XG4gIDxpXG4gICAgKm5nSWY9XCJhY3RpdmUgJiYgYWN0aXZlICE9PSAnY2NtOmNvbGxlY3Rpb25fb3JkZXJlZF9wb3NpdGlvbidcIlxuICAgIFtlc0ljb25dPVwiJ2Fycm93XycgKyAoZGlyZWN0aW9uID09PSAnYXNjJyA/ICd1cHdhcmQnIDogJ2Rvd253YXJkJylcIlxuICA+PC9pPlxuPC9idXR0b24+XG48ZXMtc29ydC1kcm9wZG93blxuICAjc29ydERyb3Bkb3duXG4gIFtjb2x1bW5zXT1cImNvbHVtbnNcIlxuICBbc29ydEJ5XT1cImFjdGl2ZVwiXG4gIFtzb3J0QXNjZW5kaW5nXT1cImRpcmVjdGlvbiA9PT0gJ2FzYydcIlxuICAob25Tb3J0KT1cIm9uU29ydCgkZXZlbnQpXCJcbj48L2VzLXNvcnQtZHJvcGRvd24+XG4iXX0=
|
|
@@ -0,0 +1,128 @@
|
|
|
1
|
+
import { Component, EventEmitter, Input, Output, ViewChild, } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "../services/node-helper.service";
|
|
4
|
+
import * as i2 from "@angular/common";
|
|
5
|
+
import * as i3 from "@angular/material/core";
|
|
6
|
+
import * as i4 from "@angular/router";
|
|
7
|
+
// TODO: Decide if providing focus highlights and ripples with this component is a good idea. When
|
|
8
|
+
// using `app-node-url` for cards, we might need highlights and ripples for the whole card while
|
|
9
|
+
// `app-node-url` should only wrap the title since links with lots of content confuse screen
|
|
10
|
+
// readers.
|
|
11
|
+
const NODE_URL_TAG_NAME = 'es-node-url';
|
|
12
|
+
export class NodeUrlComponent {
|
|
13
|
+
constructor(nodeHelper, elementRef) {
|
|
14
|
+
this.nodeHelper = nodeHelper;
|
|
15
|
+
this.elementRef = elementRef;
|
|
16
|
+
/**
|
|
17
|
+
* custom query params to include
|
|
18
|
+
*/
|
|
19
|
+
this.queryParams = {};
|
|
20
|
+
/**
|
|
21
|
+
* link: a element
|
|
22
|
+
* button: button element
|
|
23
|
+
* wrapper: div element with behavior "like" a link
|
|
24
|
+
*/
|
|
25
|
+
this.mode = 'link';
|
|
26
|
+
this.disabled = false;
|
|
27
|
+
/**
|
|
28
|
+
* Show the ripple effect even when disabled.
|
|
29
|
+
*
|
|
30
|
+
* @deprecated Temporary workaround for list-table, which *sometimes* uses it's on click
|
|
31
|
+
* bindings.
|
|
32
|
+
*/
|
|
33
|
+
this.alwaysRipple = false;
|
|
34
|
+
this.ariaLabel = true;
|
|
35
|
+
this.buttonClick = new EventEmitter();
|
|
36
|
+
}
|
|
37
|
+
ngAfterViewInit() {
|
|
38
|
+
setTimeout(() => {
|
|
39
|
+
this.isNested = this.getIsNested();
|
|
40
|
+
});
|
|
41
|
+
}
|
|
42
|
+
getState() {
|
|
43
|
+
return {
|
|
44
|
+
scope: this.scope,
|
|
45
|
+
};
|
|
46
|
+
}
|
|
47
|
+
get(mode) {
|
|
48
|
+
const result = this.nodeHelper.getNodeLink(mode, this.node);
|
|
49
|
+
if (mode === 'queryParams' && this.queryParams) {
|
|
50
|
+
Object.keys(this.queryParams).forEach((k) => (result[k] = this.queryParams[k]));
|
|
51
|
+
}
|
|
52
|
+
return result;
|
|
53
|
+
}
|
|
54
|
+
focus() {
|
|
55
|
+
this.link.nativeElement.focus();
|
|
56
|
+
}
|
|
57
|
+
clickWrapper(event) {
|
|
58
|
+
const eventCopy = copyClickEvent(event);
|
|
59
|
+
this.link.nativeElement.dispatchEvent(eventCopy);
|
|
60
|
+
event.preventDefault();
|
|
61
|
+
}
|
|
62
|
+
getIsNested() {
|
|
63
|
+
let ancestor = this.elementRef.nativeElement.parentElement;
|
|
64
|
+
while (ancestor) {
|
|
65
|
+
if (ancestor.tagName === NODE_URL_TAG_NAME.toUpperCase()) {
|
|
66
|
+
return true;
|
|
67
|
+
}
|
|
68
|
+
ancestor = ancestor.parentElement;
|
|
69
|
+
}
|
|
70
|
+
return false;
|
|
71
|
+
}
|
|
72
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: NodeUrlComponent, deps: [{ token: i1.NodeHelperService }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
73
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.6", type: NodeUrlComponent, selector: "es-node-url", inputs: { node: "node", nodes: "nodes", target: "target", scope: "scope", queryParams: "queryParams", mode: "mode", disabled: "disabled", alwaysRipple: "alwaysRipple", ariaDescribedby: ["aria-describedby", "ariaDescribedby"], ariaLabel: ["aria-label", "ariaLabel"] }, outputs: { buttonClick: "buttonClick" }, viewQueries: [{ propertyName: "link", first: true, predicate: ["link"], descendants: true }], ngImport: i0, template: "<ng-template #content><ng-content></ng-content></ng-template>\n<ng-container *ngIf=\"mode === 'link'\">\n <a\n *ngIf=\"!disabled\"\n #link\n matRipple\n matRippleColor=\"primary\"\n [matRippleDisabled]=\"isNested\"\n [routerLink]=\"get('routerLink')\"\n [state]=\"getState()\"\n [target]=\"target\"\n [queryParams]=\"get('queryParams')\"\n queryParamsHandling=\"merge\"\n cdkMonitorElementFocus\n [attr.aria-label]=\"ariaLabel ? node.name : null\"\n [attr.aria-describedby]=\"ariaDescribedby\"\n >\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n </a>\n <!-- We use `div`s instead of `span`s here because the legacy `ListTable` component will insert\n `div` elements into this component's content. However, this will lead to invalid HTML for \"button\"\n mode. So really, users of this component should only insert flow content. -->\n <div *ngIf=\"disabled && !alwaysRipple\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n </div>\n <div *ngIf=\"disabled && alwaysRipple\" matRipple matRippleColor=\"primary\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n </div>\n</ng-container>\n<ng-container *ngIf=\"mode === 'wrapper'\">\n <div\n class=\"node-url-wrapper\"\n #wrapper\n matRipple\n matRippleColor=\"primary\"\n [matRippleDisabled]=\"disabled && !alwaysRipple\"\n (click)=\"clickWrapper($event)\"\n (auxclick)=\"clickWrapper($event)\"\n >\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n </div>\n <!-- An invisible link that will by clicked programmatically by `clickWrapper()`. -->\n <a\n #link\n [routerLink]=\"get('routerLink')\"\n [state]=\"getState()\"\n [queryParams]=\"get('queryParams')\"\n queryParamsHandling=\"merge\"\n tabindex=\"-1\"\n aria-hidden=\"true\"\n class=\"cdk-visually-hidden\"\n ></a>\n</ng-container>\n<ng-container *ngIf=\"mode === 'button'\">\n <button\n [disabled]=\"disabled\"\n #link\n matRipple\n matRippleColor=\"primary\"\n [matRippleDisabled]=\"disabled && !alwaysRipple\"\n (click)=\"buttonClick.emit($event)\"\n cdkMonitorElementFocus\n >\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n </button>\n</ng-container>\n", styles: [":host{position:relative;display:flex}:host>*{flex-grow:1}:host>a{text-decoration:none}.cdk-keyboard-focused{outline:none;outline:var(--focusWidth) solid var(--palette-primary-300);outline-offset:2px}button{background-color:unset;border:unset;padding:unset;text-align:unset}div.node-url-wrapper{cursor:pointer}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i3.MatRipple, selector: "[mat-ripple], [matRipple]", inputs: ["matRippleColor", "matRippleUnbounded", "matRippleCentered", "matRippleRadius", "matRippleAnimation", "matRippleDisabled", "matRippleTrigger"], exportAs: ["matRipple"] }, { kind: "directive", type: i4.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }] }); }
|
|
74
|
+
}
|
|
75
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: NodeUrlComponent, decorators: [{
|
|
76
|
+
type: Component,
|
|
77
|
+
args: [{ selector: NODE_URL_TAG_NAME, template: "<ng-template #content><ng-content></ng-content></ng-template>\n<ng-container *ngIf=\"mode === 'link'\">\n <a\n *ngIf=\"!disabled\"\n #link\n matRipple\n matRippleColor=\"primary\"\n [matRippleDisabled]=\"isNested\"\n [routerLink]=\"get('routerLink')\"\n [state]=\"getState()\"\n [target]=\"target\"\n [queryParams]=\"get('queryParams')\"\n queryParamsHandling=\"merge\"\n cdkMonitorElementFocus\n [attr.aria-label]=\"ariaLabel ? node.name : null\"\n [attr.aria-describedby]=\"ariaDescribedby\"\n >\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n </a>\n <!-- We use `div`s instead of `span`s here because the legacy `ListTable` component will insert\n `div` elements into this component's content. However, this will lead to invalid HTML for \"button\"\n mode. So really, users of this component should only insert flow content. -->\n <div *ngIf=\"disabled && !alwaysRipple\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n </div>\n <div *ngIf=\"disabled && alwaysRipple\" matRipple matRippleColor=\"primary\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n </div>\n</ng-container>\n<ng-container *ngIf=\"mode === 'wrapper'\">\n <div\n class=\"node-url-wrapper\"\n #wrapper\n matRipple\n matRippleColor=\"primary\"\n [matRippleDisabled]=\"disabled && !alwaysRipple\"\n (click)=\"clickWrapper($event)\"\n (auxclick)=\"clickWrapper($event)\"\n >\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n </div>\n <!-- An invisible link that will by clicked programmatically by `clickWrapper()`. -->\n <a\n #link\n [routerLink]=\"get('routerLink')\"\n [state]=\"getState()\"\n [queryParams]=\"get('queryParams')\"\n queryParamsHandling=\"merge\"\n tabindex=\"-1\"\n aria-hidden=\"true\"\n class=\"cdk-visually-hidden\"\n ></a>\n</ng-container>\n<ng-container *ngIf=\"mode === 'button'\">\n <button\n [disabled]=\"disabled\"\n #link\n matRipple\n matRippleColor=\"primary\"\n [matRippleDisabled]=\"disabled && !alwaysRipple\"\n (click)=\"buttonClick.emit($event)\"\n cdkMonitorElementFocus\n >\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n </button>\n</ng-container>\n", styles: [":host{position:relative;display:flex}:host>*{flex-grow:1}:host>a{text-decoration:none}.cdk-keyboard-focused{outline:none;outline:var(--focusWidth) solid var(--palette-primary-300);outline-offset:2px}button{background-color:unset;border:unset;padding:unset;text-align:unset}div.node-url-wrapper{cursor:pointer}\n"] }]
|
|
78
|
+
}], ctorParameters: function () { return [{ type: i1.NodeHelperService }, { type: i0.ElementRef }]; }, propDecorators: { link: [{
|
|
79
|
+
type: ViewChild,
|
|
80
|
+
args: ['link']
|
|
81
|
+
}], node: [{
|
|
82
|
+
type: Input
|
|
83
|
+
}], nodes: [{
|
|
84
|
+
type: Input
|
|
85
|
+
}], target: [{
|
|
86
|
+
type: Input
|
|
87
|
+
}], scope: [{
|
|
88
|
+
type: Input
|
|
89
|
+
}], queryParams: [{
|
|
90
|
+
type: Input
|
|
91
|
+
}], mode: [{
|
|
92
|
+
type: Input
|
|
93
|
+
}], disabled: [{
|
|
94
|
+
type: Input
|
|
95
|
+
}], alwaysRipple: [{
|
|
96
|
+
type: Input
|
|
97
|
+
}], ariaDescribedby: [{
|
|
98
|
+
type: Input,
|
|
99
|
+
args: ['aria-describedby']
|
|
100
|
+
}], ariaLabel: [{
|
|
101
|
+
type: Input,
|
|
102
|
+
args: ['aria-label']
|
|
103
|
+
}], buttonClick: [{
|
|
104
|
+
type: Output
|
|
105
|
+
}] } });
|
|
106
|
+
function copyClickEvent(event) {
|
|
107
|
+
// On Firefox, a middle click via neither the 'click', nor the 'auxclick' event cause a new tab
|
|
108
|
+
// to be opened when triggered programmatically. As a workaround, we simulate a ctrl click
|
|
109
|
+
// instead of a middle click. This matches Firefox's defaults, but we cannot account for
|
|
110
|
+
// changed middle-click behavior.
|
|
111
|
+
if (event.type === 'auxclick' && event.button === 1 && isFirefox()) {
|
|
112
|
+
return copyClickEvent({ ...event, type: 'click', ctrlKey: true, button: 0 });
|
|
113
|
+
}
|
|
114
|
+
// It would seem better to use `event.type` instead of hard-coding 'click', but that doesn't
|
|
115
|
+
// have the desired effect for non-click events when dispatched.
|
|
116
|
+
return new MouseEvent('click', {
|
|
117
|
+
cancelable: true,
|
|
118
|
+
button: event.button,
|
|
119
|
+
ctrlKey: event.ctrlKey,
|
|
120
|
+
shiftKey: event.shiftKey,
|
|
121
|
+
altKey: event.altKey,
|
|
122
|
+
metaKey: event.metaKey,
|
|
123
|
+
});
|
|
124
|
+
}
|
|
125
|
+
function isFirefox() {
|
|
126
|
+
return navigator.userAgent.includes('Firefox');
|
|
127
|
+
}
|
|
128
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm9kZS11cmwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWR1LXNoYXJpbmctdWkvc3JjL2xpYi9ub2RlLXVybC9ub2RlLXVybC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lZHUtc2hhcmluZy11aS9zcmMvbGliL25vZGUtdXJsL25vZGUtdXJsLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFSCxTQUFTLEVBRVQsWUFBWSxFQUNaLEtBQUssRUFDTCxNQUFNLEVBQ04sU0FBUyxHQUNaLE1BQU0sZUFBZSxDQUFDOzs7Ozs7QUFJdkIsa0dBQWtHO0FBQ2xHLGdHQUFnRztBQUNoRyw0RkFBNEY7QUFDNUYsV0FBVztBQUVYLE1BQU0saUJBQWlCLEdBQUcsYUFBYSxDQUFDO0FBT3hDLE1BQU0sT0FBTyxnQkFBZ0I7SUEwQ3pCLFlBQ1ksVUFBNkIsRUFDN0IsVUFBbUM7UUFEbkMsZUFBVSxHQUFWLFVBQVUsQ0FBbUI7UUFDN0IsZUFBVSxHQUFWLFVBQVUsQ0FBeUI7UUFyQy9DOztXQUVHO1FBQ00sZ0JBQVcsR0FBaUQsRUFBRSxDQUFDO1FBQ3hFOzs7O1dBSUc7UUFDTSxTQUFJLEdBQWtDLE1BQU0sQ0FBQztRQUM3QyxhQUFRLEdBQUcsS0FBSyxDQUFDO1FBQzFCOzs7OztXQUtHO1FBQ00saUJBQVksR0FBRyxLQUFLLENBQUM7UUFFVCxjQUFTLEdBQUcsSUFBSSxDQUFDO1FBRTVCLGdCQUFXLEdBQUcsSUFBSSxZQUFZLEVBQWMsQ0FBQztJQWlCcEQsQ0FBQztJQUVKLGVBQWU7UUFDWCxVQUFVLENBQUMsR0FBRyxFQUFFO1lBQ1osSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDdkMsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRUQsUUFBUTtRQUNKLE9BQU87WUFDSCxLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUs7U0FDcEIsQ0FBQztJQUNOLENBQUM7SUFFRCxHQUFHLENBQUMsSUFBa0M7UUFDbEMsTUFBTSxNQUFNLEdBQVEsSUFBSSxDQUFDLFVBQVUsQ0FBQyxXQUFXLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNqRSxJQUFJLElBQUksS0FBSyxhQUFhLElBQUksSUFBSSxDQUFDLFdBQVcsRUFBRTtZQUM1QyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1NBQ25GO1FBQ0QsT0FBTyxNQUFNLENBQUM7SUFDbEIsQ0FBQztJQUVELEtBQUs7UUFDRCxJQUFJLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUNwQyxDQUFDO0lBRUQsWUFBWSxDQUFDLEtBQWlCO1FBQzFCLE1BQU0sU0FBUyxHQUFHLGNBQWMsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUN4QyxJQUFJLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxhQUFhLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDakQsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDO0lBQzNCLENBQUM7SUFFTyxXQUFXO1FBQ2YsSUFBSSxRQUFRLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsYUFBYSxDQUFDO1FBQzNELE9BQU8sUUFBUSxFQUFFO1lBQ2IsSUFBSSxRQUFRLENBQUMsT0FBTyxLQUFLLGlCQUFpQixDQUFDLFdBQVcsRUFBRSxFQUFFO2dCQUN0RCxPQUFPLElBQUksQ0FBQzthQUNmO1lBQ0QsUUFBUSxHQUFHLFFBQVEsQ0FBQyxhQUFhLENBQUM7U0FDckM7UUFDRCxPQUFPLEtBQUssQ0FBQztJQUNqQixDQUFDOzhHQXRGUSxnQkFBZ0I7a0dBQWhCLGdCQUFnQixzY0N4QjdCLHN1RUFrRUE7OzJGRDFDYSxnQkFBZ0I7a0JBTDVCLFNBQVM7K0JBQ0ksaUJBQWlCO2lJQUtSLElBQUk7c0JBQXRCLFNBQVM7dUJBQUMsTUFBTTtnQkFFUixJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csS0FBSztzQkFBYixLQUFLO2dCQUNHLE1BQU07c0JBQWQsS0FBSztnQkFDRyxLQUFLO3NCQUFiLEtBQUs7Z0JBSUcsV0FBVztzQkFBbkIsS0FBSztnQkFNRyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFPRyxZQUFZO3NCQUFwQixLQUFLO2dCQUNxQixlQUFlO3NCQUF6QyxLQUFLO3VCQUFDLGtCQUFrQjtnQkFDSixTQUFTO3NCQUE3QixLQUFLO3VCQUFDLFlBQVk7Z0JBRVQsV0FBVztzQkFBcEIsTUFBTTs7QUE2RFgsU0FBUyxjQUFjLENBQUMsS0FBaUI7SUFDckMsK0ZBQStGO0lBQy9GLDBGQUEwRjtJQUMxRix3RkFBd0Y7SUFDeEYsaUNBQWlDO0lBQ2pDLElBQUksS0FBSyxDQUFDLElBQUksS0FBSyxVQUFVLElBQUksS0FBSyxDQUFDLE1BQU0sS0FBSyxDQUFDLElBQUksU0FBUyxFQUFFLEVBQUU7UUFDaEUsT0FBTyxjQUFjLENBQUMsRUFBRSxHQUFHLEtBQUssRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUM7S0FDaEY7SUFDRCw0RkFBNEY7SUFDNUYsZ0VBQWdFO0lBQ2hFLE9BQU8sSUFBSSxVQUFVLENBQUMsT0FBTyxFQUFFO1FBQzNCLFVBQVUsRUFBRSxJQUFJO1FBQ2hCLE1BQU0sRUFBRSxLQUFLLENBQUMsTUFBTTtRQUNwQixPQUFPLEVBQUUsS0FBSyxDQUFDLE9BQU87UUFDdEIsUUFBUSxFQUFFLEtBQUssQ0FBQyxRQUFRO1FBQ3hCLE1BQU0sRUFBRSxLQUFLLENBQUMsTUFBTTtRQUNwQixPQUFPLEVBQUUsS0FBSyxDQUFDLE9BQU87S0FDekIsQ0FBQyxDQUFDO0FBQ1AsQ0FBQztBQUVELFNBQVMsU0FBUztJQUNkLE9BQU8sU0FBUyxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLENBQUM7QUFDbkQsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgQWZ0ZXJWaWV3SW5pdCxcbiAgICBDb21wb25lbnQsXG4gICAgRWxlbWVudFJlZixcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgSW5wdXQsXG4gICAgT3V0cHV0LFxuICAgIFZpZXdDaGlsZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOb2RlIH0gZnJvbSAnbmd4LWVkdS1zaGFyaW5nLWFwaSc7XG5pbXBvcnQgeyBOb2RlSGVscGVyU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL25vZGUtaGVscGVyLnNlcnZpY2UnO1xuXG4vLyBUT0RPOiBEZWNpZGUgaWYgcHJvdmlkaW5nIGZvY3VzIGhpZ2hsaWdodHMgYW5kIHJpcHBsZXMgd2l0aCB0aGlzIGNvbXBvbmVudCBpcyBhIGdvb2QgaWRlYS4gV2hlblxuLy8gdXNpbmcgYGFwcC1ub2RlLXVybGAgZm9yIGNhcmRzLCB3ZSBtaWdodCBuZWVkIGhpZ2hsaWdodHMgYW5kIHJpcHBsZXMgZm9yIHRoZSB3aG9sZSBjYXJkIHdoaWxlXG4vLyBgYXBwLW5vZGUtdXJsYCBzaG91bGQgb25seSB3cmFwIHRoZSB0aXRsZSBzaW5jZSBsaW5rcyB3aXRoIGxvdHMgb2YgY29udGVudCBjb25mdXNlIHNjcmVlblxuLy8gcmVhZGVycy5cblxuY29uc3QgTk9ERV9VUkxfVEFHX05BTUUgPSAnZXMtbm9kZS11cmwnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogTk9ERV9VUkxfVEFHX05BTUUsXG4gICAgdGVtcGxhdGVVcmw6ICdub2RlLXVybC5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJ25vZGUtdXJsLmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIE5vZGVVcmxDb21wb25lbnQgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0IHtcbiAgICBAVmlld0NoaWxkKCdsaW5rJykgbGluazogRWxlbWVudFJlZjxIVE1MQW5jaG9yRWxlbWVudD47XG5cbiAgICBASW5wdXQoKSBub2RlOiBOb2RlO1xuICAgIEBJbnB1dCgpIG5vZGVzOiBOb2RlW107XG4gICAgQElucHV0KCkgdGFyZ2V0OiBzdHJpbmc7XG4gICAgQElucHV0KCkgc2NvcGU6IHN0cmluZztcbiAgICAvKipcbiAgICAgKiBjdXN0b20gcXVlcnkgcGFyYW1zIHRvIGluY2x1ZGVcbiAgICAgKi9cbiAgICBASW5wdXQoKSBxdWVyeVBhcmFtczogeyBba2V5OiBzdHJpbmddOiBzdHJpbmcgfCBudW1iZXIgfCBib29sZWFuIH0gPSB7fTtcbiAgICAvKipcbiAgICAgKiBsaW5rOiBhIGVsZW1lbnRcbiAgICAgKiBidXR0b246IGJ1dHRvbiBlbGVtZW50XG4gICAgICogd3JhcHBlcjogZGl2IGVsZW1lbnQgd2l0aCBiZWhhdmlvciBcImxpa2VcIiBhIGxpbmtcbiAgICAgKi9cbiAgICBASW5wdXQoKSBtb2RlOiAnbGluaycgfCAnYnV0dG9uJyB8ICd3cmFwcGVyJyA9ICdsaW5rJztcbiAgICBASW5wdXQoKSBkaXNhYmxlZCA9IGZhbHNlO1xuICAgIC8qKlxuICAgICAqIFNob3cgdGhlIHJpcHBsZSBlZmZlY3QgZXZlbiB3aGVuIGRpc2FibGVkLlxuICAgICAqXG4gICAgICogQGRlcHJlY2F0ZWQgVGVtcG9yYXJ5IHdvcmthcm91bmQgZm9yIGxpc3QtdGFibGUsIHdoaWNoICpzb21ldGltZXMqIHVzZXMgaXQncyBvbiBjbGlja1xuICAgICAqIGJpbmRpbmdzLlxuICAgICAqL1xuICAgIEBJbnB1dCgpIGFsd2F5c1JpcHBsZSA9IGZhbHNlO1xuICAgIEBJbnB1dCgnYXJpYS1kZXNjcmliZWRieScpIGFyaWFEZXNjcmliZWRieTogc3RyaW5nO1xuICAgIEBJbnB1dCgnYXJpYS1sYWJlbCcpIGFyaWFMYWJlbCA9IHRydWU7XG5cbiAgICBAT3V0cHV0KCkgYnV0dG9uQ2xpY2sgPSBuZXcgRXZlbnRFbWl0dGVyPE1vdXNlRXZlbnQ+KCk7XG5cbiAgICAvKipcbiAgICAgKiBXaGV0aGVyIHRoaXMgaW5zdGFuY2Ugb2YgYE5vZGVVcmxgIGlzIG5lc3RlZCBpbnNpZGUgYW5vdGhlciBgTm9kZVVybGAuXG4gICAgICovXG4gICAgLy8gV2UgdXNlIG5lc3RlZCBgTm9kZVVybGBzIGZvciBhMTF5IHdoZXJlIHdlIGhhdmUgYSBgTm9kZVVybGAgaW4gd3JhcHBlciBtb2RlIHRvIG1heGltaXplXG4gICAgLy8gY2xpY2thYmxlIGFyZWEgYW5kIG9uZSBpbiAgbGluayBtb2RlIHRoYXQgb25seSBjb250YWlucyB0aGUgdGl0bGUuIFdlIG9ubHkgd2FudCB0aGUgb3V0bW9zdFxuICAgIC8vIGBOb2RlVXJsYCB0byBhcHBseSB0aGUgcmlwcGxlIGVmZmVjdC5cbiAgICAvL1xuICAgIC8vIE5vdGUgdGhhdCBuZXN0aW5nIGBOb2RlVXJsYHMgaXMgb25seSBuZWNlc3Nhcnkgd2hlbiB3ZSB3YW50IHRvIHByb3ZpZGUgaG92ZXIgZWZmZWN0cyBvbiBwYXJ0c1xuICAgIC8vIG9mIHRoZSBvdXRlciBgTm9kZVVybGAuIElmIHdlIGRvbid0IG5lZWQgdGhhdCwgaXQgd291bGQgYmUgZWFzaWVyIHRvIGF0dGFjaCBhIHBzZXVkbyBgOmFmdGVyYFxuICAgIC8vIGVsZW1lbnQgdG8gdGhlIGlubmVyIGBOb2RlVXJsYCB0aGF0IGV4cGFuZHMgaXRzIGNsaWNrIGFyZWEuXG4gICAgaXNOZXN0ZWQ6IGJvb2xlYW47XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSBub2RlSGVscGVyOiBOb2RlSGVscGVyU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSBlbGVtZW50UmVmOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PixcbiAgICApIHt9XG5cbiAgICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5pc05lc3RlZCA9IHRoaXMuZ2V0SXNOZXN0ZWQoKTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgZ2V0U3RhdGUoKSB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBzY29wZTogdGhpcy5zY29wZSxcbiAgICAgICAgfTtcbiAgICB9XG5cbiAgICBnZXQobW9kZTogJ3JvdXRlckxpbmsnIHwgJ3F1ZXJ5UGFyYW1zJyk6IGFueSB7XG4gICAgICAgIGNvbnN0IHJlc3VsdDogYW55ID0gdGhpcy5ub2RlSGVscGVyLmdldE5vZGVMaW5rKG1vZGUsIHRoaXMubm9kZSk7XG4gICAgICAgIGlmIChtb2RlID09PSAncXVlcnlQYXJhbXMnICYmIHRoaXMucXVlcnlQYXJhbXMpIHtcbiAgICAgICAgICAgIE9iamVjdC5rZXlzKHRoaXMucXVlcnlQYXJhbXMpLmZvckVhY2goKGspID0+IChyZXN1bHRba10gPSB0aGlzLnF1ZXJ5UGFyYW1zW2tdKSk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHJlc3VsdDtcbiAgICB9XG5cbiAgICBmb2N1cygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5saW5rLm5hdGl2ZUVsZW1lbnQuZm9jdXMoKTtcbiAgICB9XG5cbiAgICBjbGlja1dyYXBwZXIoZXZlbnQ6IE1vdXNlRXZlbnQpIHtcbiAgICAgICAgY29uc3QgZXZlbnRDb3B5ID0gY29weUNsaWNrRXZlbnQoZXZlbnQpO1xuICAgICAgICB0aGlzLmxpbmsubmF0aXZlRWxlbWVudC5kaXNwYXRjaEV2ZW50KGV2ZW50Q29weSk7XG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRJc05lc3RlZCgpOiBib29sZWFuIHtcbiAgICAgICAgbGV0IGFuY2VzdG9yID0gdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQucGFyZW50RWxlbWVudDtcbiAgICAgICAgd2hpbGUgKGFuY2VzdG9yKSB7XG4gICAgICAgICAgICBpZiAoYW5jZXN0b3IudGFnTmFtZSA9PT0gTk9ERV9VUkxfVEFHX05BTUUudG9VcHBlckNhc2UoKSkge1xuICAgICAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgYW5jZXN0b3IgPSBhbmNlc3Rvci5wYXJlbnRFbGVtZW50O1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG59XG5cbmZ1bmN0aW9uIGNvcHlDbGlja0V2ZW50KGV2ZW50OiBNb3VzZUV2ZW50KTogTW91c2VFdmVudCB7XG4gICAgLy8gT24gRmlyZWZveCwgYSBtaWRkbGUgY2xpY2sgdmlhIG5laXRoZXIgdGhlICdjbGljaycsIG5vciB0aGUgJ2F1eGNsaWNrJyBldmVudCBjYXVzZSBhIG5ldyB0YWJcbiAgICAvLyB0byBiZSBvcGVuZWQgd2hlbiB0cmlnZ2VyZWQgcHJvZ3JhbW1hdGljYWxseS4gQXMgYSB3b3JrYXJvdW5kLCB3ZSBzaW11bGF0ZSBhIGN0cmwgY2xpY2tcbiAgICAvLyBpbnN0ZWFkIG9mIGEgbWlkZGxlIGNsaWNrLiBUaGlzIG1hdGNoZXMgRmlyZWZveCdzIGRlZmF1bHRzLCBidXQgd2UgY2Fubm90IGFjY291bnQgZm9yXG4gICAgLy8gY2hhbmdlZCBtaWRkbGUtY2xpY2sgYmVoYXZpb3IuXG4gICAgaWYgKGV2ZW50LnR5cGUgPT09ICdhdXhjbGljaycgJiYgZXZlbnQuYnV0dG9uID09PSAxICYmIGlzRmlyZWZveCgpKSB7XG4gICAgICAgIHJldHVybiBjb3B5Q2xpY2tFdmVudCh7IC4uLmV2ZW50LCB0eXBlOiAnY2xpY2snLCBjdHJsS2V5OiB0cnVlLCBidXR0b246IDAgfSk7XG4gICAgfVxuICAgIC8vIEl0IHdvdWxkIHNlZW0gYmV0dGVyIHRvIHVzZSBgZXZlbnQudHlwZWAgaW5zdGVhZCBvZiBoYXJkLWNvZGluZyAnY2xpY2snLCBidXQgdGhhdCBkb2Vzbid0XG4gICAgLy8gaGF2ZSB0aGUgZGVzaXJlZCBlZmZlY3QgZm9yIG5vbi1jbGljayBldmVudHMgd2hlbiBkaXNwYXRjaGVkLlxuICAgIHJldHVybiBuZXcgTW91c2VFdmVudCgnY2xpY2snLCB7XG4gICAgICAgIGNhbmNlbGFibGU6IHRydWUsXG4gICAgICAgIGJ1dHRvbjogZXZlbnQuYnV0dG9uLFxuICAgICAgICBjdHJsS2V5OiBldmVudC5jdHJsS2V5LFxuICAgICAgICBzaGlmdEtleTogZXZlbnQuc2hpZnRLZXksXG4gICAgICAgIGFsdEtleTogZXZlbnQuYWx0S2V5LFxuICAgICAgICBtZXRhS2V5OiBldmVudC5tZXRhS2V5LFxuICAgIH0pO1xufVxuXG5mdW5jdGlvbiBpc0ZpcmVmb3goKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIG5hdmlnYXRvci51c2VyQWdlbnQuaW5jbHVkZXMoJ0ZpcmVmb3gnKTtcbn1cbiIsIjxuZy10ZW1wbGF0ZSAjY29udGVudD48bmctY29udGVudD48L25nLWNvbnRlbnQ+PC9uZy10ZW1wbGF0ZT5cbjxuZy1jb250YWluZXIgKm5nSWY9XCJtb2RlID09PSAnbGluaydcIj5cbiAgPGFcbiAgICAqbmdJZj1cIiFkaXNhYmxlZFwiXG4gICAgI2xpbmtcbiAgICBtYXRSaXBwbGVcbiAgICBtYXRSaXBwbGVDb2xvcj1cInByaW1hcnlcIlxuICAgIFttYXRSaXBwbGVEaXNhYmxlZF09XCJpc05lc3RlZFwiXG4gICAgW3JvdXRlckxpbmtdPVwiZ2V0KCdyb3V0ZXJMaW5rJylcIlxuICAgIFtzdGF0ZV09XCJnZXRTdGF0ZSgpXCJcbiAgICBbdGFyZ2V0XT1cInRhcmdldFwiXG4gICAgW3F1ZXJ5UGFyYW1zXT1cImdldCgncXVlcnlQYXJhbXMnKVwiXG4gICAgcXVlcnlQYXJhbXNIYW5kbGluZz1cIm1lcmdlXCJcbiAgICBjZGtNb25pdG9yRWxlbWVudEZvY3VzXG4gICAgW2F0dHIuYXJpYS1sYWJlbF09XCJhcmlhTGFiZWwgPyBub2RlLm5hbWUgOiBudWxsXCJcbiAgICBbYXR0ci5hcmlhLWRlc2NyaWJlZGJ5XT1cImFyaWFEZXNjcmliZWRieVwiXG4gID5cbiAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiY29udGVudFwiPjwvbmctY29udGFpbmVyPlxuICA8L2E+XG4gIDwhLS0gV2UgdXNlIGBkaXZgcyBpbnN0ZWFkIG9mIGBzcGFuYHMgaGVyZSBiZWNhdXNlIHRoZSBsZWdhY3kgYExpc3RUYWJsZWAgY29tcG9uZW50IHdpbGwgaW5zZXJ0XG4gIGBkaXZgIGVsZW1lbnRzIGludG8gdGhpcyBjb21wb25lbnQncyBjb250ZW50LiBIb3dldmVyLCB0aGlzIHdpbGwgbGVhZCB0byBpbnZhbGlkIEhUTUwgZm9yIFwiYnV0dG9uXCJcbiAgbW9kZS4gU28gcmVhbGx5LCB1c2VycyBvZiB0aGlzIGNvbXBvbmVudCBzaG91bGQgb25seSBpbnNlcnQgZmxvdyBjb250ZW50LiAtLT5cbiAgPGRpdiAqbmdJZj1cImRpc2FibGVkICYmICFhbHdheXNSaXBwbGVcIj5cbiAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiY29udGVudFwiPjwvbmctY29udGFpbmVyPlxuICA8L2Rpdj5cbiAgPGRpdiAqbmdJZj1cImRpc2FibGVkICYmIGFsd2F5c1JpcHBsZVwiIG1hdFJpcHBsZSBtYXRSaXBwbGVDb2xvcj1cInByaW1hcnlcIj5cbiAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiY29udGVudFwiPjwvbmctY29udGFpbmVyPlxuICA8L2Rpdj5cbjwvbmctY29udGFpbmVyPlxuPG5nLWNvbnRhaW5lciAqbmdJZj1cIm1vZGUgPT09ICd3cmFwcGVyJ1wiPlxuICA8ZGl2XG4gICAgY2xhc3M9XCJub2RlLXVybC13cmFwcGVyXCJcbiAgICAjd3JhcHBlclxuICAgIG1hdFJpcHBsZVxuICAgIG1hdFJpcHBsZUNvbG9yPVwicHJpbWFyeVwiXG4gICAgW21hdFJpcHBsZURpc2FibGVkXT1cImRpc2FibGVkICYmICFhbHdheXNSaXBwbGVcIlxuICAgIChjbGljayk9XCJjbGlja1dyYXBwZXIoJGV2ZW50KVwiXG4gICAgKGF1eGNsaWNrKT1cImNsaWNrV3JhcHBlcigkZXZlbnQpXCJcbiAgPlxuICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJjb250ZW50XCI+PC9uZy1jb250YWluZXI+XG4gIDwvZGl2PlxuICA8IS0tIEFuIGludmlzaWJsZSBsaW5rIHRoYXQgd2lsbCBieSBjbGlja2VkIHByb2dyYW1tYXRpY2FsbHkgYnkgYGNsaWNrV3JhcHBlcigpYC4gLS0+XG4gIDxhXG4gICAgI2xpbmtcbiAgICBbcm91dGVyTGlua109XCJnZXQoJ3JvdXRlckxpbmsnKVwiXG4gICAgW3N0YXRlXT1cImdldFN0YXRlKClcIlxuICAgIFtxdWVyeVBhcmFtc109XCJnZXQoJ3F1ZXJ5UGFyYW1zJylcIlxuICAgIHF1ZXJ5UGFyYW1zSGFuZGxpbmc9XCJtZXJnZVwiXG4gICAgdGFiaW5kZXg9XCItMVwiXG4gICAgYXJpYS1oaWRkZW49XCJ0cnVlXCJcbiAgICBjbGFzcz1cImNkay12aXN1YWxseS1oaWRkZW5cIlxuICA+PC9hPlxuPC9uZy1jb250YWluZXI+XG48bmctY29udGFpbmVyICpuZ0lmPVwibW9kZSA9PT0gJ2J1dHRvbidcIj5cbiAgPGJ1dHRvblxuICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgI2xpbmtcbiAgICBtYXRSaXBwbGVcbiAgICBtYXRSaXBwbGVDb2xvcj1cInByaW1hcnlcIlxuICAgIFttYXRSaXBwbGVEaXNhYmxlZF09XCJkaXNhYmxlZCAmJiAhYWx3YXlzUmlwcGxlXCJcbiAgICAoY2xpY2spPVwiYnV0dG9uQ2xpY2suZW1pdCgkZXZlbnQpXCJcbiAgICBjZGtNb25pdG9yRWxlbWVudEZvY3VzXG4gID5cbiAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiY29udGVudFwiPjwvbmctY29udGFpbmVyPlxuICA8L2J1dHRvbj5cbjwvbmctY29udGFpbmVyPlxuIl19
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { Pipe } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "@ngx-translate/core";
|
|
4
|
+
export class FormatSizePipe {
|
|
5
|
+
constructor(translate) {
|
|
6
|
+
this.translate = translate;
|
|
7
|
+
}
|
|
8
|
+
transform(value, args = null) {
|
|
9
|
+
let names = ['bytes', 'KB', 'MB', 'GB', 'TB'];
|
|
10
|
+
let i = 0;
|
|
11
|
+
if (isNaN(value))
|
|
12
|
+
return value;
|
|
13
|
+
if (value == null)
|
|
14
|
+
value = 0;
|
|
15
|
+
while (value >= 1024 && i < names.length) {
|
|
16
|
+
value /= 1024;
|
|
17
|
+
i++;
|
|
18
|
+
}
|
|
19
|
+
//return value+" "+names[i];
|
|
20
|
+
return (value.toLocaleString(this.translate.currentLang, { maximumFractionDigits: 1 }) +
|
|
21
|
+
' ' +
|
|
22
|
+
names[i]);
|
|
23
|
+
}
|
|
24
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: FormatSizePipe, deps: [{ token: i1.TranslateService }], target: i0.ɵɵFactoryTarget.Pipe }); }
|
|
25
|
+
static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "16.2.6", ngImport: i0, type: FormatSizePipe, name: "formatSize" }); }
|
|
26
|
+
}
|
|
27
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: FormatSizePipe, decorators: [{
|
|
28
|
+
type: Pipe,
|
|
29
|
+
args: [{ name: 'formatSize' }]
|
|
30
|
+
}], ctorParameters: function () { return [{ type: i1.TranslateService }]; } });
|
|
31
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS1zaXplLnBpcGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lZHUtc2hhcmluZy11aS9zcmMvbGliL3BpcGVzL2ZpbGUtc2l6ZS5waXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBaUIsSUFBSSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7QUFJcEQsTUFBTSxPQUFPLGNBQWM7SUFDdkIsWUFBb0IsU0FBMkI7UUFBM0IsY0FBUyxHQUFULFNBQVMsQ0FBa0I7SUFBRyxDQUFDO0lBRW5ELFNBQVMsQ0FBQyxLQUFVLEVBQUUsT0FBaUIsSUFBSTtRQUN2QyxJQUFJLEtBQUssR0FBRyxDQUFDLE9BQU8sRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQztRQUM5QyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDVixJQUFJLEtBQUssQ0FBQyxLQUFLLENBQUM7WUFBRSxPQUFPLEtBQUssQ0FBQztRQUMvQixJQUFJLEtBQUssSUFBSSxJQUFJO1lBQUUsS0FBSyxHQUFHLENBQUMsQ0FBQztRQUM3QixPQUFPLEtBQUssSUFBSSxJQUFJLElBQUksQ0FBQyxHQUFHLEtBQUssQ0FBQyxNQUFNLEVBQUU7WUFDdEMsS0FBSyxJQUFJLElBQUksQ0FBQztZQUNkLENBQUMsRUFBRSxDQUFDO1NBQ1A7UUFDRCw0QkFBNEI7UUFDNUIsT0FBTyxDQUNILEtBQUssQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxXQUFXLEVBQUUsRUFBRSxxQkFBcUIsRUFBRSxDQUFDLEVBQUUsQ0FBQztZQUM5RSxHQUFHO1lBQ0gsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUNYLENBQUM7SUFDTixDQUFDOzhHQWxCUSxjQUFjOzRHQUFkLGNBQWM7OzJGQUFkLGNBQWM7a0JBRDFCLElBQUk7bUJBQUMsRUFBRSxJQUFJLEVBQUUsWUFBWSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUGlwZVRyYW5zZm9ybSwgUGlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuXG5AUGlwZSh7IG5hbWU6ICdmb3JtYXRTaXplJyB9KVxuZXhwb3J0IGNsYXNzIEZvcm1hdFNpemVQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSB0cmFuc2xhdGU6IFRyYW5zbGF0ZVNlcnZpY2UpIHt9XG5cbiAgICB0cmFuc2Zvcm0odmFsdWU6IGFueSwgYXJnczogc3RyaW5nW10gPSBudWxsKTogc3RyaW5nIHtcbiAgICAgICAgbGV0IG5hbWVzID0gWydieXRlcycsICdLQicsICdNQicsICdHQicsICdUQiddO1xuICAgICAgICBsZXQgaSA9IDA7XG4gICAgICAgIGlmIChpc05hTih2YWx1ZSkpIHJldHVybiB2YWx1ZTtcbiAgICAgICAgaWYgKHZhbHVlID09IG51bGwpIHZhbHVlID0gMDtcbiAgICAgICAgd2hpbGUgKHZhbHVlID49IDEwMjQgJiYgaSA8IG5hbWVzLmxlbmd0aCkge1xuICAgICAgICAgICAgdmFsdWUgLz0gMTAyNDtcbiAgICAgICAgICAgIGkrKztcbiAgICAgICAgfVxuICAgICAgICAvL3JldHVybiB2YWx1ZStcIiBcIituYW1lc1tpXTtcbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgIHZhbHVlLnRvTG9jYWxlU3RyaW5nKHRoaXMudHJhbnNsYXRlLmN1cnJlbnRMYW5nLCB7IG1heGltdW1GcmFjdGlvbkRpZ2l0czogMSB9KSArXG4gICAgICAgICAgICAnICcgK1xuICAgICAgICAgICAgbmFtZXNbaV1cbiAgICAgICAgKTtcbiAgICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { Pipe } from '@angular/core';
|
|
2
|
+
import * as rxjs from 'rxjs';
|
|
3
|
+
import { map } from 'rxjs/operators';
|
|
4
|
+
import { DateHelper, FormatOptions } from '../util/DateHelper';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
import * as i1 from "@ngx-translate/core";
|
|
7
|
+
export class FormatDatePipe {
|
|
8
|
+
constructor(translate) {
|
|
9
|
+
this.translate = translate;
|
|
10
|
+
}
|
|
11
|
+
transform(value, args = null) {
|
|
12
|
+
if (!value) {
|
|
13
|
+
return args?.async ? rxjs.of('') : '';
|
|
14
|
+
}
|
|
15
|
+
let options = new FormatOptions();
|
|
16
|
+
if (args && args.time != null)
|
|
17
|
+
options.showAlwaysTime = args.time;
|
|
18
|
+
if (args && args.date != null)
|
|
19
|
+
options.showDate = args.date;
|
|
20
|
+
if (args && args.relative !== null)
|
|
21
|
+
options.useRelativeLabels = args.relative;
|
|
22
|
+
if (args?.async) {
|
|
23
|
+
return this.translate
|
|
24
|
+
.get('dummy') // Wait for the translation service to be ready
|
|
25
|
+
.pipe(map(() => DateHelper.formatDate(this.translate, value, options)));
|
|
26
|
+
}
|
|
27
|
+
else {
|
|
28
|
+
return DateHelper.formatDate(this.translate, value, options);
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: FormatDatePipe, deps: [{ token: i1.TranslateService }], target: i0.ɵɵFactoryTarget.Pipe }); }
|
|
32
|
+
static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "16.2.6", ngImport: i0, type: FormatDatePipe, name: "formatDate" }); }
|
|
33
|
+
}
|
|
34
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: FormatDatePipe, decorators: [{
|
|
35
|
+
type: Pipe,
|
|
36
|
+
args: [{ name: 'formatDate' }]
|
|
37
|
+
}], ctorParameters: function () { return [{ type: i1.TranslateService }]; } });
|
|
38
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybWF0LWRhdGUucGlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VkdS1zaGFyaW5nLXVpL3NyYy9saWIvcGlwZXMvZm9ybWF0LWRhdGUucGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsSUFBSSxFQUFpQixNQUFNLGVBQWUsQ0FBQztBQUVwRCxPQUFPLEtBQUssSUFBSSxNQUFNLE1BQU0sQ0FBQztBQUU3QixPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDckMsT0FBTyxFQUFFLFVBQVUsRUFBRSxhQUFhLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQzs7O0FBRy9ELE1BQU0sT0FBTyxjQUFjO0lBQ3ZCLFlBQW9CLFNBQTJCO1FBQTNCLGNBQVMsR0FBVCxTQUFTLENBQWtCO0lBQUcsQ0FBQztJQVVuRCxTQUFTLENBQ0wsS0FBNkIsRUFDN0IsT0FBZ0YsSUFBSTtRQUVwRixJQUFJLENBQUMsS0FBSyxFQUFFO1lBQ1IsT0FBTyxJQUFJLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7U0FDekM7UUFDRCxJQUFJLE9BQU8sR0FBRyxJQUFJLGFBQWEsRUFBRSxDQUFDO1FBQ2xDLElBQUksSUFBSSxJQUFJLElBQUksQ0FBQyxJQUFJLElBQUksSUFBSTtZQUFFLE9BQU8sQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQztRQUNsRSxJQUFJLElBQUksSUFBSSxJQUFJLENBQUMsSUFBSSxJQUFJLElBQUk7WUFBRSxPQUFPLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUM7UUFDNUQsSUFBSSxJQUFJLElBQUksSUFBSSxDQUFDLFFBQVEsS0FBSyxJQUFJO1lBQUUsT0FBTyxDQUFDLGlCQUFpQixHQUFHLElBQUksQ0FBQyxRQUFRLENBQUM7UUFDOUUsSUFBSSxJQUFJLEVBQUUsS0FBSyxFQUFFO1lBQ2IsT0FBTyxJQUFJLENBQUMsU0FBUztpQkFDaEIsR0FBRyxDQUFDLE9BQU8sQ0FBQyxDQUFDLCtDQUErQztpQkFDNUQsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxVQUFVLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsS0FBSyxFQUFFLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQztTQUMvRTthQUFNO1lBQ0gsT0FBTyxVQUFVLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsS0FBSyxFQUFFLE9BQU8sQ0FBQyxDQUFDO1NBQ2hFO0lBQ0wsQ0FBQzs4R0E3QlEsY0FBYzs0R0FBZCxjQUFjOzsyRkFBZCxjQUFjO2tCQUQxQixJQUFJO21CQUFDLEVBQUUsSUFBSSxFQUFFLFlBQVksRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFBpcGUsIFBpcGVUcmFuc2Zvcm0gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFRyYW5zbGF0ZVNlcnZpY2UgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcbmltcG9ydCAqIGFzIHJ4anMgZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBtYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBEYXRlSGVscGVyLCBGb3JtYXRPcHRpb25zIH0gZnJvbSAnLi4vdXRpbC9EYXRlSGVscGVyJztcblxuQFBpcGUoeyBuYW1lOiAnZm9ybWF0RGF0ZScgfSlcbmV4cG9ydCBjbGFzcyBGb3JtYXREYXRlUGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgdHJhbnNsYXRlOiBUcmFuc2xhdGVTZXJ2aWNlKSB7fVxuXG4gICAgdHJhbnNmb3JtKFxuICAgICAgICB2YWx1ZTogRGF0ZSB8IG51bWJlciB8IHN0cmluZyxcbiAgICAgICAgYXJncz86IHsgdGltZT86IGJvb2xlYW47IGRhdGU/OiBib29sZWFuOyByZWxhdGl2ZT86IGJvb2xlYW4gfSxcbiAgICApOiBzdHJpbmc7XG4gICAgdHJhbnNmb3JtKFxuICAgICAgICB2YWx1ZTogRGF0ZSB8IG51bWJlciB8IHN0cmluZyxcbiAgICAgICAgYXJnczogeyB0aW1lPzogYm9vbGVhbjsgZGF0ZT86IGJvb2xlYW47IHJlbGF0aXZlPzogYm9vbGVhbjsgYXN5bmM6IHRydWUgfSxcbiAgICApOiBPYnNlcnZhYmxlPHN0cmluZz47XG4gICAgdHJhbnNmb3JtKFxuICAgICAgICB2YWx1ZTogRGF0ZSB8IG51bWJlciB8IHN0cmluZyxcbiAgICAgICAgYXJnczogeyB0aW1lPzogYm9vbGVhbjsgZGF0ZT86IGJvb2xlYW47IHJlbGF0aXZlPzogYm9vbGVhbjsgYXN5bmM/OiBib29sZWFuIH0gPSBudWxsLFxuICAgICk6IHN0cmluZyB8IE9ic2VydmFibGU8c3RyaW5nPiB7XG4gICAgICAgIGlmICghdmFsdWUpIHtcbiAgICAgICAgICAgIHJldHVybiBhcmdzPy5hc3luYyA/IHJ4anMub2YoJycpIDogJyc7XG4gICAgICAgIH1cbiAgICAgICAgbGV0IG9wdGlvbnMgPSBuZXcgRm9ybWF0T3B0aW9ucygpO1xuICAgICAgICBpZiAoYXJncyAmJiBhcmdzLnRpbWUgIT0gbnVsbCkgb3B0aW9ucy5zaG93QWx3YXlzVGltZSA9IGFyZ3MudGltZTtcbiAgICAgICAgaWYgKGFyZ3MgJiYgYXJncy5kYXRlICE9IG51bGwpIG9wdGlvbnMuc2hvd0RhdGUgPSBhcmdzLmRhdGU7XG4gICAgICAgIGlmIChhcmdzICYmIGFyZ3MucmVsYXRpdmUgIT09IG51bGwpIG9wdGlvbnMudXNlUmVsYXRpdmVMYWJlbHMgPSBhcmdzLnJlbGF0aXZlO1xuICAgICAgICBpZiAoYXJncz8uYXN5bmMpIHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLnRyYW5zbGF0ZVxuICAgICAgICAgICAgICAgIC5nZXQoJ2R1bW15JykgLy8gV2FpdCBmb3IgdGhlIHRyYW5zbGF0aW9uIHNlcnZpY2UgdG8gYmUgcmVhZHlcbiAgICAgICAgICAgICAgICAucGlwZShtYXAoKCkgPT4gRGF0ZUhlbHBlci5mb3JtYXREYXRlKHRoaXMudHJhbnNsYXRlLCB2YWx1ZSwgb3B0aW9ucykpKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHJldHVybiBEYXRlSGVscGVyLmZvcm1hdERhdGUodGhpcy50cmFuc2xhdGUsIHZhbHVlLCBvcHRpb25zKTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { Pipe } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "../services/repo-url.service";
|
|
4
|
+
export class NodeIconPipe {
|
|
5
|
+
constructor(repoUrlService) {
|
|
6
|
+
this.repoUrlService = repoUrlService;
|
|
7
|
+
}
|
|
8
|
+
transform(node) {
|
|
9
|
+
return this.repoUrlService.getRepoUrl(node.iconURL, node);
|
|
10
|
+
}
|
|
11
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: NodeIconPipe, deps: [{ token: i1.RepoUrlService }], target: i0.ɵɵFactoryTarget.Pipe }); }
|
|
12
|
+
static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "16.2.6", ngImport: i0, type: NodeIconPipe, name: "esNodeIcon" }); }
|
|
13
|
+
}
|
|
14
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: NodeIconPipe, decorators: [{
|
|
15
|
+
type: Pipe,
|
|
16
|
+
args: [{ name: 'esNodeIcon' }]
|
|
17
|
+
}], ctorParameters: function () { return [{ type: i1.RepoUrlService }]; } });
|
|
18
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm9kZS1pY29uLnBpcGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lZHUtc2hhcmluZy11aS9zcmMvbGliL3BpcGVzL25vZGUtaWNvbi5waXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxJQUFJLEVBQWlCLE1BQU0sZUFBZSxDQUFDOzs7QUFLcEQsTUFBTSxPQUFPLFlBQVk7SUFDckIsWUFBb0IsY0FBOEI7UUFBOUIsbUJBQWMsR0FBZCxjQUFjLENBQWdCO0lBQUcsQ0FBQztJQUN0RCxTQUFTLENBQUMsSUFBVTtRQUNoQixPQUFPLElBQUksQ0FBQyxjQUFjLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDOUQsQ0FBQzs4R0FKUSxZQUFZOzRHQUFaLFlBQVk7OzJGQUFaLFlBQVk7a0JBRHhCLElBQUk7bUJBQUMsRUFBRSxJQUFJLEVBQUUsWUFBWSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUGlwZSwgUGlwZVRyYW5zZm9ybSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTm9kZSB9IGZyb20gJ25neC1lZHUtc2hhcmluZy1hcGknO1xuaW1wb3J0IHsgUmVwb1VybFNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9yZXBvLXVybC5zZXJ2aWNlJztcblxuQFBpcGUoeyBuYW1lOiAnZXNOb2RlSWNvbicgfSlcbmV4cG9ydCBjbGFzcyBOb2RlSWNvblBpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlcG9VcmxTZXJ2aWNlOiBSZXBvVXJsU2VydmljZSkge31cbiAgICB0cmFuc2Zvcm0obm9kZTogTm9kZSkge1xuICAgICAgICByZXR1cm4gdGhpcy5yZXBvVXJsU2VydmljZS5nZXRSZXBvVXJsKG5vZGUuaWNvblVSTCwgbm9kZSk7XG4gICAgfVxufVxuIl19
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { Pipe } from '@angular/core';
|
|
2
|
+
import { RestConstants } from 'ngx-edu-sharing-api';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export class NodeImageSizePipe {
|
|
5
|
+
transform(node, args = null) {
|
|
6
|
+
const width = parseFloat(node.properties[RestConstants.CCM_PROP_WIDTH]?.[0]);
|
|
7
|
+
const height = parseFloat(node.properties[RestConstants.CCM_PROP_HEIGHT]?.[0]);
|
|
8
|
+
const megapixel = Math.round((width * height) / 1000000);
|
|
9
|
+
if (width && height) {
|
|
10
|
+
if (megapixel > 1) {
|
|
11
|
+
return megapixel + ' Megapixel';
|
|
12
|
+
}
|
|
13
|
+
return Math.round(width) + 'x' + Math.round(height);
|
|
14
|
+
}
|
|
15
|
+
return '';
|
|
16
|
+
}
|
|
17
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: NodeImageSizePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
|
|
18
|
+
static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "16.2.6", ngImport: i0, type: NodeImageSizePipe, name: "NodeImageSize" }); }
|
|
19
|
+
}
|
|
20
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: NodeImageSizePipe, decorators: [{
|
|
21
|
+
type: Pipe,
|
|
22
|
+
args: [{ name: 'NodeImageSize' }]
|
|
23
|
+
}] });
|
|
24
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm9kZS1pbWFnZS1zaXplLnBpcGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lZHUtc2hhcmluZy11aS9zcmMvbGliL3BpcGVzL25vZGUtaW1hZ2Utc2l6ZS5waXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBaUIsSUFBSSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3BELE9BQU8sRUFBUSxhQUFhLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQzs7QUFHMUQsTUFBTSxPQUFPLGlCQUFpQjtJQUMxQixTQUFTLENBQUMsSUFBVSxFQUFFLE9BQVksSUFBSTtRQUNsQyxNQUFNLEtBQUssR0FBRyxVQUFVLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsY0FBYyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQzdFLE1BQU0sTUFBTSxHQUFHLFVBQVUsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxlQUFlLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDL0UsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLEtBQUssR0FBRyxNQUFNLENBQUMsR0FBRyxPQUFPLENBQUMsQ0FBQztRQUN6RCxJQUFJLEtBQUssSUFBSSxNQUFNLEVBQUU7WUFDakIsSUFBSSxTQUFTLEdBQUcsQ0FBQyxFQUFFO2dCQUNmLE9BQU8sU0FBUyxHQUFHLFlBQVksQ0FBQzthQUNuQztZQUNELE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsR0FBRyxHQUFHLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQztTQUN2RDtRQUNELE9BQU8sRUFBRSxDQUFDO0lBQ2QsQ0FBQzs4R0FaUSxpQkFBaUI7NEdBQWpCLGlCQUFpQjs7MkZBQWpCLGlCQUFpQjtrQkFEN0IsSUFBSTttQkFBQyxFQUFFLElBQUksRUFBRSxlQUFlLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQaXBlVHJhbnNmb3JtLCBQaXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOb2RlLCBSZXN0Q29uc3RhbnRzIH0gZnJvbSAnbmd4LWVkdS1zaGFyaW5nLWFwaSc7XG5cbkBQaXBlKHsgbmFtZTogJ05vZGVJbWFnZVNpemUnIH0pXG5leHBvcnQgY2xhc3MgTm9kZUltYWdlU2l6ZVBpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcbiAgICB0cmFuc2Zvcm0obm9kZTogTm9kZSwgYXJnczogYW55ID0gbnVsbCk6IHN0cmluZyB7XG4gICAgICAgIGNvbnN0IHdpZHRoID0gcGFyc2VGbG9hdChub2RlLnByb3BlcnRpZXNbUmVzdENvbnN0YW50cy5DQ01fUFJPUF9XSURUSF0/LlswXSk7XG4gICAgICAgIGNvbnN0IGhlaWdodCA9IHBhcnNlRmxvYXQobm9kZS5wcm9wZXJ0aWVzW1Jlc3RDb25zdGFudHMuQ0NNX1BST1BfSEVJR0hUXT8uWzBdKTtcbiAgICAgICAgY29uc3QgbWVnYXBpeGVsID0gTWF0aC5yb3VuZCgod2lkdGggKiBoZWlnaHQpIC8gMTAwMDAwMCk7XG4gICAgICAgIGlmICh3aWR0aCAmJiBoZWlnaHQpIHtcbiAgICAgICAgICAgIGlmIChtZWdhcGl4ZWwgPiAxKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIG1lZ2FwaXhlbCArICcgTWVnYXBpeGVsJztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybiBNYXRoLnJvdW5kKHdpZHRoKSArICd4JyArIE1hdGgucm91bmQoaGVpZ2h0KTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gJyc7XG4gICAgfVxufVxuIl19
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import { Pipe } from '@angular/core';
|
|
2
|
+
import * as rxjs from 'rxjs';
|
|
3
|
+
import { map, switchMap } from 'rxjs/operators';
|
|
4
|
+
import { RestConstants } from 'ngx-edu-sharing-api';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
import * as i1 from "../services/node-helper.service";
|
|
7
|
+
import * as i2 from "@angular/platform-browser";
|
|
8
|
+
import * as i3 from "../services/repo-url.service";
|
|
9
|
+
import * as i4 from "ngx-edu-sharing-api";
|
|
10
|
+
export class NodeImagePipe {
|
|
11
|
+
constructor(nodeHelper, sanitizer, repoUrlService, networkApi) {
|
|
12
|
+
this.nodeHelper = nodeHelper;
|
|
13
|
+
this.sanitizer = sanitizer;
|
|
14
|
+
this.repoUrlService = repoUrlService;
|
|
15
|
+
this.networkApi = networkApi;
|
|
16
|
+
}
|
|
17
|
+
transform(node, preferences) {
|
|
18
|
+
if (this.nodeHelper.isNodeCollection(node) && node.preview.isIcon) {
|
|
19
|
+
return null;
|
|
20
|
+
}
|
|
21
|
+
else if (node.preview.data) {
|
|
22
|
+
return rxjs.of(this.sanitizer.bypassSecurityTrustResourceUrl('data:' + node.preview.mimetype + ';base64,' + node.preview.data));
|
|
23
|
+
}
|
|
24
|
+
else {
|
|
25
|
+
return this.getPreviewUrl(node, preferences);
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
getPreviewUrl(node, preferences) {
|
|
29
|
+
return this.isEduSharingNode(node).pipe(switchMap(async (isEduSharingNode) => {
|
|
30
|
+
let url = await this.repoUrlService.getRepoUrl(node.preview.url, node);
|
|
31
|
+
if (isEduSharingNode) {
|
|
32
|
+
url += Object.entries(preferences)
|
|
33
|
+
.map(([key, value]) => `&${key}=${value}`)
|
|
34
|
+
.join('');
|
|
35
|
+
}
|
|
36
|
+
return url;
|
|
37
|
+
}));
|
|
38
|
+
}
|
|
39
|
+
isEduSharingNode(node) {
|
|
40
|
+
return rxjs
|
|
41
|
+
.forkJoin([
|
|
42
|
+
this.networkApi.isFromHomeRepository(node),
|
|
43
|
+
this.networkApi.getRepositoryOfNode(node),
|
|
44
|
+
])
|
|
45
|
+
.pipe(map(([isFromHomeRepository, repository]) => isFromHomeRepository ||
|
|
46
|
+
repository?.repositoryType === RestConstants.REPOSITORY_TYPE_ALFRESCO));
|
|
47
|
+
}
|
|
48
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: NodeImagePipe, deps: [{ token: i1.NodeHelperService }, { token: i2.DomSanitizer }, { token: i3.RepoUrlService }, { token: i4.NetworkService }], target: i0.ɵɵFactoryTarget.Pipe }); }
|
|
49
|
+
static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "16.2.6", ngImport: i0, type: NodeImagePipe, name: "esNodeImage" }); }
|
|
50
|
+
}
|
|
51
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: NodeImagePipe, decorators: [{
|
|
52
|
+
type: Pipe,
|
|
53
|
+
args: [{ name: 'esNodeImage' }]
|
|
54
|
+
}], ctorParameters: function () { return [{ type: i1.NodeHelperService }, { type: i2.DomSanitizer }, { type: i3.RepoUrlService }, { type: i4.NetworkService }]; } });
|
|
55
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm9kZS1pbWFnZS5waXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWR1LXNoYXJpbmctdWkvc3JjL2xpYi9waXBlcy9ub2RlLWltYWdlLnBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLElBQUksRUFBaUIsTUFBTSxlQUFlLENBQUM7QUFHcEQsT0FBTyxLQUFLLElBQUksTUFBTSxNQUFNLENBQUM7QUFFN0IsT0FBTyxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUloRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0scUJBQXFCLENBQUM7Ozs7OztBQVdwRCxNQUFNLE9BQU8sYUFBYTtJQUN0QixZQUNZLFVBQTZCLEVBQzdCLFNBQXVCLEVBQ3ZCLGNBQThCLEVBQzlCLFVBQTBCO1FBSDFCLGVBQVUsR0FBVixVQUFVLENBQW1CO1FBQzdCLGNBQVMsR0FBVCxTQUFTLENBQWM7UUFDdkIsbUJBQWMsR0FBZCxjQUFjLENBQWdCO1FBQzlCLGVBQVUsR0FBVixVQUFVLENBQWdCO0lBQ25DLENBQUM7SUFFSixTQUFTLENBQUMsSUFBVSxFQUFFLFdBQWlDO1FBQ25ELElBQUksSUFBSSxDQUFDLFVBQVUsQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRTtZQUMvRCxPQUFPLElBQUksQ0FBQztTQUNmO2FBQU0sSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRTtZQUMxQixPQUFPLElBQUksQ0FBQyxFQUFFLENBQ1YsSUFBSSxDQUFDLFNBQVMsQ0FBQyw4QkFBOEIsQ0FDekMsT0FBTyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxHQUFHLFVBQVUsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FDbkUsQ0FDSixDQUFDO1NBQ0w7YUFBTTtZQUNILE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLEVBQUUsV0FBVyxDQUFDLENBQUM7U0FDaEQ7SUFDTCxDQUFDO0lBRU8sYUFBYSxDQUFDLElBQVUsRUFBRSxXQUFpQztRQUMvRCxPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQ25DLFNBQVMsQ0FBQyxLQUFLLEVBQUUsZ0JBQWdCLEVBQUUsRUFBRTtZQUNqQyxJQUFJLEdBQUcsR0FBRyxNQUFNLElBQUksQ0FBQyxjQUFjLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQyxDQUFDO1lBQ3ZFLElBQUksZ0JBQWdCLEVBQUU7Z0JBQ2xCLEdBQUcsSUFBSSxNQUFNLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQztxQkFDN0IsR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLEVBQUUsS0FBSyxDQUFDLEVBQUUsRUFBRSxDQUFDLElBQUksR0FBRyxJQUFJLEtBQUssRUFBRSxDQUFDO3FCQUN6QyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7YUFDakI7WUFDRCxPQUFPLEdBQUcsQ0FBQztRQUNmLENBQUMsQ0FBQyxDQUNMLENBQUM7SUFDTixDQUFDO0lBRU8sZ0JBQWdCLENBQUMsSUFBVTtRQUMvQixPQUFPLElBQUk7YUFDTixRQUFRLENBQUM7WUFDTixJQUFJLENBQUMsVUFBVSxDQUFDLG9CQUFvQixDQUFDLElBQUksQ0FBQztZQUMxQyxJQUFJLENBQUMsVUFBVSxDQUFDLG1CQUFtQixDQUFDLElBQUksQ0FBQztTQUM1QyxDQUFDO2FBQ0QsSUFBSSxDQUNELEdBQUcsQ0FDQyxDQUFDLENBQUMsb0JBQW9CLEVBQUUsVUFBVSxDQUFDLEVBQUUsRUFBRSxDQUNuQyxvQkFBb0I7WUFDcEIsVUFBVSxFQUFFLGNBQWMsS0FBSyxhQUFhLENBQUMsd0JBQXdCLENBQzVFLENBQ0osQ0FBQztJQUNWLENBQUM7OEdBakRRLGFBQWE7NEdBQWIsYUFBYTs7MkZBQWIsYUFBYTtrQkFEekIsSUFBSTttQkFBQyxFQUFFLElBQUksRUFBRSxhQUFhLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQaXBlLCBQaXBlVHJhbnNmb3JtIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEb21TYW5pdGl6ZXIsIFNhZmVSZXNvdXJjZVVybCB9IGZyb20gJ0Bhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXInO1xuaW1wb3J0IHsgTmV0d29ya1NlcnZpY2UgfSBmcm9tICduZ3gtZWR1LXNoYXJpbmctYXBpJztcbmltcG9ydCAqIGFzIHJ4anMgZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBtYXAsIHN3aXRjaE1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IE5vZGVIZWxwZXJTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvbm9kZS1oZWxwZXIuc2VydmljZSc7XG5pbXBvcnQgeyBOb2RlIH0gZnJvbSAnbmd4LWVkdS1zaGFyaW5nLWFwaSc7XG5pbXBvcnQgeyBSZXBvVXJsU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL3JlcG8tdXJsLnNlcnZpY2UnO1xuaW1wb3J0IHsgUmVzdENvbnN0YW50cyB9IGZyb20gJ25neC1lZHUtc2hhcmluZy1hcGknO1xuXG5pbnRlcmZhY2UgTm9kZUltYWdlUHJlZmVyZW5jZXMge1xuICAgIGNyb3A/OiBib29sZWFuO1xuICAgIG1heFdpZHRoPzogbnVtYmVyO1xuICAgIG1heEhlaWdodD86IG51bWJlcjtcbiAgICB3aWR0aD86IG51bWJlcjtcbiAgICBoZWlnaHQ/OiBudW1iZXI7XG59XG5cbkBQaXBlKHsgbmFtZTogJ2VzTm9kZUltYWdlJyB9KVxuZXhwb3J0IGNsYXNzIE5vZGVJbWFnZVBpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSBub2RlSGVscGVyOiBOb2RlSGVscGVyU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSBzYW5pdGl6ZXI6IERvbVNhbml0aXplcixcbiAgICAgICAgcHJpdmF0ZSByZXBvVXJsU2VydmljZTogUmVwb1VybFNlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgbmV0d29ya0FwaTogTmV0d29ya1NlcnZpY2UsXG4gICAgKSB7fVxuXG4gICAgdHJhbnNmb3JtKG5vZGU6IE5vZGUsIHByZWZlcmVuY2VzOiBOb2RlSW1hZ2VQcmVmZXJlbmNlcyk6IE9ic2VydmFibGU8U2FmZVJlc291cmNlVXJsPiB7XG4gICAgICAgIGlmICh0aGlzLm5vZGVIZWxwZXIuaXNOb2RlQ29sbGVjdGlvbihub2RlKSAmJiBub2RlLnByZXZpZXcuaXNJY29uKSB7XG4gICAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgfSBlbHNlIGlmIChub2RlLnByZXZpZXcuZGF0YSkge1xuICAgICAgICAgICAgcmV0dXJuIHJ4anMub2YoXG4gICAgICAgICAgICAgICAgdGhpcy5zYW5pdGl6ZXIuYnlwYXNzU2VjdXJpdHlUcnVzdFJlc291cmNlVXJsKFxuICAgICAgICAgICAgICAgICAgICAnZGF0YTonICsgbm9kZS5wcmV2aWV3Lm1pbWV0eXBlICsgJztiYXNlNjQsJyArIG5vZGUucHJldmlldy5kYXRhLFxuICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICApO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMuZ2V0UHJldmlld1VybChub2RlLCBwcmVmZXJlbmNlcyk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIGdldFByZXZpZXdVcmwobm9kZTogTm9kZSwgcHJlZmVyZW5jZXM6IE5vZGVJbWFnZVByZWZlcmVuY2VzKTogT2JzZXJ2YWJsZTxzdHJpbmc+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaXNFZHVTaGFyaW5nTm9kZShub2RlKS5waXBlKFxuICAgICAgICAgICAgc3dpdGNoTWFwKGFzeW5jIChpc0VkdVNoYXJpbmdOb2RlKSA9PiB7XG4gICAgICAgICAgICAgICAgbGV0IHVybCA9IGF3YWl0IHRoaXMucmVwb1VybFNlcnZpY2UuZ2V0UmVwb1VybChub2RlLnByZXZpZXcudXJsLCBub2RlKTtcbiAgICAgICAgICAgICAgICBpZiAoaXNFZHVTaGFyaW5nTm9kZSkge1xuICAgICAgICAgICAgICAgICAgICB1cmwgKz0gT2JqZWN0LmVudHJpZXMocHJlZmVyZW5jZXMpXG4gICAgICAgICAgICAgICAgICAgICAgICAubWFwKChba2V5LCB2YWx1ZV0pID0+IGAmJHtrZXl9PSR7dmFsdWV9YClcbiAgICAgICAgICAgICAgICAgICAgICAgIC5qb2luKCcnKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgcmV0dXJuIHVybDtcbiAgICAgICAgICAgIH0pLFxuICAgICAgICApO1xuICAgIH1cblxuICAgIHByaXZhdGUgaXNFZHVTaGFyaW5nTm9kZShub2RlOiBOb2RlKTogT2JzZXJ2YWJsZTxib29sZWFuPiB7XG4gICAgICAgIHJldHVybiByeGpzXG4gICAgICAgICAgICAuZm9ya0pvaW4oW1xuICAgICAgICAgICAgICAgIHRoaXMubmV0d29ya0FwaS5pc0Zyb21Ib21lUmVwb3NpdG9yeShub2RlKSxcbiAgICAgICAgICAgICAgICB0aGlzLm5ldHdvcmtBcGkuZ2V0UmVwb3NpdG9yeU9mTm9kZShub2RlKSxcbiAgICAgICAgICAgIF0pXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICBtYXAoXG4gICAgICAgICAgICAgICAgICAgIChbaXNGcm9tSG9tZVJlcG9zaXRvcnksIHJlcG9zaXRvcnldKSA9PlxuICAgICAgICAgICAgICAgICAgICAgICAgaXNGcm9tSG9tZVJlcG9zaXRvcnkgfHxcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlcG9zaXRvcnk/LnJlcG9zaXRvcnlUeXBlID09PSBSZXN0Q29uc3RhbnRzLlJFUE9TSVRPUllfVFlQRV9BTEZSRVNDTyxcbiAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgKTtcbiAgICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import { Pipe } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "ngx-edu-sharing-api";
|
|
4
|
+
export class NodePersonNamePipe {
|
|
5
|
+
constructor(config) {
|
|
6
|
+
this.config = config;
|
|
7
|
+
}
|
|
8
|
+
transform(person, args = null) {
|
|
9
|
+
let field = this.config.instant('userDisplayName', 'fullName');
|
|
10
|
+
if (person == null)
|
|
11
|
+
return null;
|
|
12
|
+
if (field == 'authorityName') {
|
|
13
|
+
if (person.authorityName == null)
|
|
14
|
+
field = 'fullName';
|
|
15
|
+
else
|
|
16
|
+
return person.authorityName;
|
|
17
|
+
}
|
|
18
|
+
if (field == 'fullName') {
|
|
19
|
+
if (person.profile) {
|
|
20
|
+
return ((person.profile.firstName ? person.profile.firstName : '') +
|
|
21
|
+
' ' +
|
|
22
|
+
(person.profile.lastName ? person.profile.lastName : '')).trim();
|
|
23
|
+
}
|
|
24
|
+
return ((person.firstName ? person.firstName : '') +
|
|
25
|
+
' ' +
|
|
26
|
+
(person.lastName ? person.lastName : '')).trim();
|
|
27
|
+
}
|
|
28
|
+
if (field == 'firstName' || field == 'lastName') {
|
|
29
|
+
if (person.profile) {
|
|
30
|
+
return person.profile[field];
|
|
31
|
+
}
|
|
32
|
+
return person[field];
|
|
33
|
+
}
|
|
34
|
+
if (field == 'email') {
|
|
35
|
+
if (person.profile && person.profile.email)
|
|
36
|
+
return person.profile.email;
|
|
37
|
+
if (person.email == null)
|
|
38
|
+
return person.mailbox;
|
|
39
|
+
return person.email;
|
|
40
|
+
}
|
|
41
|
+
return person[field];
|
|
42
|
+
}
|
|
43
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: NodePersonNamePipe, deps: [{ token: i1.ConfigService }], target: i0.ɵɵFactoryTarget.Pipe }); }
|
|
44
|
+
static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "16.2.6", ngImport: i0, type: NodePersonNamePipe, name: "nodePersonName" }); }
|
|
45
|
+
}
|
|
46
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: NodePersonNamePipe, decorators: [{
|
|
47
|
+
type: Pipe,
|
|
48
|
+
args: [{ name: 'nodePersonName' }]
|
|
49
|
+
}], ctorParameters: function () { return [{ type: i1.ConfigService }]; } });
|
|
50
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm9kZS1wZXJzb24tbmFtZS5waXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWR1LXNoYXJpbmctdWkvc3JjL2xpYi9waXBlcy9ub2RlLXBlcnNvbi1uYW1lLnBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLElBQUksRUFBaUIsTUFBTSxlQUFlLENBQUM7OztBQUlwRCxNQUFNLE9BQU8sa0JBQWtCO0lBQzNCLFlBQW9CLE1BQXFCO1FBQXJCLFdBQU0sR0FBTixNQUFNLENBQWU7SUFBRyxDQUFDO0lBQzdDLFNBQVMsQ0FBQyxNQUFvQixFQUFFLE9BQVksSUFBSTtRQUM1QyxJQUFJLEtBQUssR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxpQkFBaUIsRUFBRSxVQUFVLENBQUMsQ0FBQztRQUMvRCxJQUFJLE1BQU0sSUFBSSxJQUFJO1lBQUUsT0FBTyxJQUFJLENBQUM7UUFDaEMsSUFBSSxLQUFLLElBQUksZUFBZSxFQUFFO1lBQzFCLElBQUksTUFBTSxDQUFDLGFBQWEsSUFBSSxJQUFJO2dCQUFFLEtBQUssR0FBRyxVQUFVLENBQUM7O2dCQUNoRCxPQUFPLE1BQU0sQ0FBQyxhQUFhLENBQUM7U0FDcEM7UUFDRCxJQUFJLEtBQUssSUFBSSxVQUFVLEVBQUU7WUFDckIsSUFBSSxNQUFNLENBQUMsT0FBTyxFQUFFO2dCQUNoQixPQUFPLENBQ0gsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztvQkFDMUQsR0FBRztvQkFDSCxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQzNELENBQUMsSUFBSSxFQUFFLENBQUM7YUFDWjtZQUNELE9BQU8sQ0FDSCxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztnQkFDMUMsR0FBRztnQkFDSCxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUMzQyxDQUFDLElBQUksRUFBRSxDQUFDO1NBQ1o7UUFDRCxJQUFJLEtBQUssSUFBSSxXQUFXLElBQUksS0FBSyxJQUFJLFVBQVUsRUFBRTtZQUM3QyxJQUFJLE1BQU0sQ0FBQyxPQUFPLEVBQUU7Z0JBQ2hCLE9BQU8sTUFBTSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQzthQUNoQztZQUNELE9BQU8sTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO1NBQ3hCO1FBQ0QsSUFBSSxLQUFLLElBQUksT0FBTyxFQUFFO1lBQ2xCLElBQUksTUFBTSxDQUFDLE9BQU8sSUFBSSxNQUFNLENBQUMsT0FBTyxDQUFDLEtBQUs7Z0JBQUUsT0FBTyxNQUFNLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQztZQUN4RSxJQUFJLE1BQU0sQ0FBQyxLQUFLLElBQUksSUFBSTtnQkFBRSxPQUFPLE1BQU0sQ0FBQyxPQUFPLENBQUM7WUFDaEQsT0FBTyxNQUFNLENBQUMsS0FBSyxDQUFDO1NBQ3ZCO1FBQ0QsT0FBTyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDekIsQ0FBQzs4R0FuQ1Esa0JBQWtCOzRHQUFsQixrQkFBa0I7OzJGQUFsQixrQkFBa0I7a0JBRDlCLElBQUk7bUJBQUMsRUFBRSxJQUFJLEVBQUUsZ0JBQWdCLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQaXBlLCBQaXBlVHJhbnNmb3JtIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb25maWdTZXJ2aWNlLCBQZXJzb24gfSBmcm9tICduZ3gtZWR1LXNoYXJpbmctYXBpJztcblxuQFBpcGUoeyBuYW1lOiAnbm9kZVBlcnNvbk5hbWUnIH0pXG5leHBvcnQgY2xhc3MgTm9kZVBlcnNvbk5hbWVQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBjb25maWc6IENvbmZpZ1NlcnZpY2UpIHt9XG4gICAgdHJhbnNmb3JtKHBlcnNvbjogUGVyc29uIHwgYW55LCBhcmdzOiBhbnkgPSBudWxsKTogc3RyaW5nIHtcbiAgICAgICAgbGV0IGZpZWxkID0gdGhpcy5jb25maWcuaW5zdGFudCgndXNlckRpc3BsYXlOYW1lJywgJ2Z1bGxOYW1lJyk7XG4gICAgICAgIGlmIChwZXJzb24gPT0gbnVsbCkgcmV0dXJuIG51bGw7XG4gICAgICAgIGlmIChmaWVsZCA9PSAnYXV0aG9yaXR5TmFtZScpIHtcbiAgICAgICAgICAgIGlmIChwZXJzb24uYXV0aG9yaXR5TmFtZSA9PSBudWxsKSBmaWVsZCA9ICdmdWxsTmFtZSc7XG4gICAgICAgICAgICBlbHNlIHJldHVybiBwZXJzb24uYXV0aG9yaXR5TmFtZTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoZmllbGQgPT0gJ2Z1bGxOYW1lJykge1xuICAgICAgICAgICAgaWYgKHBlcnNvbi5wcm9maWxlKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgICAgICAgICAgKHBlcnNvbi5wcm9maWxlLmZpcnN0TmFtZSA/IHBlcnNvbi5wcm9maWxlLmZpcnN0TmFtZSA6ICcnKSArXG4gICAgICAgICAgICAgICAgICAgICcgJyArXG4gICAgICAgICAgICAgICAgICAgIChwZXJzb24ucHJvZmlsZS5sYXN0TmFtZSA/IHBlcnNvbi5wcm9maWxlLmxhc3ROYW1lIDogJycpXG4gICAgICAgICAgICAgICAgKS50cmltKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgICAgIChwZXJzb24uZmlyc3ROYW1lID8gcGVyc29uLmZpcnN0TmFtZSA6ICcnKSArXG4gICAgICAgICAgICAgICAgJyAnICtcbiAgICAgICAgICAgICAgICAocGVyc29uLmxhc3ROYW1lID8gcGVyc29uLmxhc3ROYW1lIDogJycpXG4gICAgICAgICAgICApLnRyaW0oKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoZmllbGQgPT0gJ2ZpcnN0TmFtZScgfHwgZmllbGQgPT0gJ2xhc3ROYW1lJykge1xuICAgICAgICAgICAgaWYgKHBlcnNvbi5wcm9maWxlKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHBlcnNvbi5wcm9maWxlW2ZpZWxkXTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybiBwZXJzb25bZmllbGRdO1xuICAgICAgICB9XG4gICAgICAgIGlmIChmaWVsZCA9PSAnZW1haWwnKSB7XG4gICAgICAgICAgICBpZiAocGVyc29uLnByb2ZpbGUgJiYgcGVyc29uLnByb2ZpbGUuZW1haWwpIHJldHVybiBwZXJzb24ucHJvZmlsZS5lbWFpbDtcbiAgICAgICAgICAgIGlmIChwZXJzb24uZW1haWwgPT0gbnVsbCkgcmV0dXJuIHBlcnNvbi5tYWlsYm94O1xuICAgICAgICAgICAgcmV0dXJuIHBlcnNvbi5lbWFpbDtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gcGVyc29uW2ZpZWxkXTtcbiAgICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { Pipe } from '@angular/core';
|
|
2
|
+
import { RestHelper } from '../util/rest-helper';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "@ngx-translate/core";
|
|
5
|
+
export class NodeTitlePipe {
|
|
6
|
+
transform(node, args = null) {
|
|
7
|
+
return RestHelper.getTitle(node);
|
|
8
|
+
}
|
|
9
|
+
constructor(translate) {
|
|
10
|
+
this.translate = translate;
|
|
11
|
+
}
|
|
12
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: NodeTitlePipe, deps: [{ token: i1.TranslateService }], target: i0.ɵɵFactoryTarget.Pipe }); }
|
|
13
|
+
static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "16.2.6", ngImport: i0, type: NodeTitlePipe, name: "nodeTitle" }); }
|
|
14
|
+
}
|
|
15
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: NodeTitlePipe, decorators: [{
|
|
16
|
+
type: Pipe,
|
|
17
|
+
args: [{ name: 'nodeTitle' }]
|
|
18
|
+
}], ctorParameters: function () { return [{ type: i1.TranslateService }]; } });
|
|
19
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm9kZS10aXRsZS5waXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWR1LXNoYXJpbmctdWkvc3JjL2xpYi9waXBlcy9ub2RlLXRpdGxlLnBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFpQixJQUFJLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHcEQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHFCQUFxQixDQUFDOzs7QUFHakQsTUFBTSxPQUFPLGFBQWE7SUFDdEIsU0FBUyxDQUFDLElBQVUsRUFBRSxPQUFpQixJQUFJO1FBQ3ZDLE9BQU8sVUFBVSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNyQyxDQUFDO0lBQ0QsWUFBb0IsU0FBMkI7UUFBM0IsY0FBUyxHQUFULFNBQVMsQ0FBa0I7SUFBRyxDQUFDOzhHQUoxQyxhQUFhOzRHQUFiLGFBQWE7OzJGQUFiLGFBQWE7a0JBRHpCLElBQUk7bUJBQUMsRUFBRSxJQUFJLEVBQUUsV0FBVyxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUGlwZVRyYW5zZm9ybSwgUGlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuaW1wb3J0IHsgTm9kZSB9IGZyb20gJ25neC1lZHUtc2hhcmluZy1hcGknO1xuaW1wb3J0IHsgUmVzdEhlbHBlciB9IGZyb20gJy4uL3V0aWwvcmVzdC1oZWxwZXInO1xuXG5AUGlwZSh7IG5hbWU6ICdub2RlVGl0bGUnIH0pXG5leHBvcnQgY2xhc3MgTm9kZVRpdGxlUGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xuICAgIHRyYW5zZm9ybShub2RlOiBOb2RlLCBhcmdzOiBzdHJpbmdbXSA9IG51bGwpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gUmVzdEhlbHBlci5nZXRUaXRsZShub2RlKTtcbiAgICB9XG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSB0cmFuc2xhdGU6IFRyYW5zbGF0ZVNlcnZpY2UpIHt9XG59XG4iXX0=
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { Pipe } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "@ngx-translate/core";
|
|
4
|
+
export class OptionTooltipPipe {
|
|
5
|
+
constructor(translate) {
|
|
6
|
+
this.translate = translate;
|
|
7
|
+
}
|
|
8
|
+
transform(option, args = null) {
|
|
9
|
+
return (this.translate.instant(option.name) +
|
|
10
|
+
(option.keyboardShortcut ? ' (' + this.getKeyInfo(option) + ')' : ''));
|
|
11
|
+
}
|
|
12
|
+
getKeyInfo(option) {
|
|
13
|
+
if (!option.keyboardShortcut) {
|
|
14
|
+
return '';
|
|
15
|
+
}
|
|
16
|
+
const modifiers = [];
|
|
17
|
+
if (option.keyboardShortcut.modifiers?.includes('Shift')) {
|
|
18
|
+
modifiers.push(this.translate.instant('KEY_MODIFIER.SHIFT'));
|
|
19
|
+
}
|
|
20
|
+
if (option.keyboardShortcut.modifiers?.includes('Ctrl/Cmd')) {
|
|
21
|
+
modifiers.push(this.translate.instant('KEY_MODIFIER.CTRL'));
|
|
22
|
+
}
|
|
23
|
+
return ((modifiers.length ? modifiers.join(' + ') + ' + ' : '') +
|
|
24
|
+
option.keyboardShortcut.keyCode.replace('Key', ''));
|
|
25
|
+
}
|
|
26
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: OptionTooltipPipe, deps: [{ token: i1.TranslateService }], target: i0.ɵɵFactoryTarget.Pipe }); }
|
|
27
|
+
static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "16.2.6", ngImport: i0, type: OptionTooltipPipe, name: "optionTooltip" }); }
|
|
28
|
+
}
|
|
29
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: OptionTooltipPipe, decorators: [{
|
|
30
|
+
type: Pipe,
|
|
31
|
+
args: [{ name: 'optionTooltip' }]
|
|
32
|
+
}], ctorParameters: function () { return [{ type: i1.TranslateService }]; } });
|
|
33
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3B0aW9uLXRvb2x0aXAucGlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VkdS1zaGFyaW5nLXVpL3NyYy9saWIvcGlwZXMvb3B0aW9uLXRvb2x0aXAucGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsSUFBSSxFQUFpQixNQUFNLGVBQWUsQ0FBQzs7O0FBS3BELE1BQU0sT0FBTyxpQkFBaUI7SUFDMUIsWUFBb0IsU0FBMkI7UUFBM0IsY0FBUyxHQUFULFNBQVMsQ0FBa0I7SUFBRyxDQUFDO0lBRW5ELFNBQVMsQ0FBQyxNQUFrQixFQUFFLE9BQWlCLElBQUk7UUFDL0MsT0FBTyxDQUNILElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUM7WUFDbkMsQ0FBQyxNQUFNLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxHQUFHLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQ3hFLENBQUM7SUFDTixDQUFDO0lBRUQsVUFBVSxDQUFDLE1BQWtCO1FBQ3pCLElBQUksQ0FBQyxNQUFNLENBQUMsZ0JBQWdCLEVBQUU7WUFDMUIsT0FBTyxFQUFFLENBQUM7U0FDYjtRQUNELE1BQU0sU0FBUyxHQUFHLEVBQUUsQ0FBQztRQUNyQixJQUFJLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxTQUFTLEVBQUUsUUFBUSxDQUFDLE9BQU8sQ0FBQyxFQUFFO1lBQ3RELFNBQVMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsb0JBQW9CLENBQUMsQ0FBQyxDQUFDO1NBQ2hFO1FBQ0QsSUFBSSxNQUFNLENBQUMsZ0JBQWdCLENBQUMsU0FBUyxFQUFFLFFBQVEsQ0FBQyxVQUFVLENBQUMsRUFBRTtZQUN6RCxTQUFTLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLG1CQUFtQixDQUFDLENBQUMsQ0FBQztTQUMvRDtRQUNELE9BQU8sQ0FDSCxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7WUFDdkQsTUFBTSxDQUFDLGdCQUFnQixDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUNyRCxDQUFDO0lBQ04sQ0FBQzs4R0F6QlEsaUJBQWlCOzRHQUFqQixpQkFBaUI7OzJGQUFqQixpQkFBaUI7a0JBRDdCLElBQUk7bUJBQUMsRUFBRSxJQUFJLEVBQUUsZUFBZSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUGlwZSwgUGlwZVRyYW5zZm9ybSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuaW1wb3J0IHsgT3B0aW9uSXRlbSB9IGZyb20gJy4uL3R5cGVzL29wdGlvbi1pdGVtJztcblxuQFBpcGUoeyBuYW1lOiAnb3B0aW9uVG9vbHRpcCcgfSlcbmV4cG9ydCBjbGFzcyBPcHRpb25Ub29sdGlwUGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgdHJhbnNsYXRlOiBUcmFuc2xhdGVTZXJ2aWNlKSB7fVxuXG4gICAgdHJhbnNmb3JtKG9wdGlvbjogT3B0aW9uSXRlbSwgYXJnczogc3RyaW5nW10gPSBudWxsKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgIHRoaXMudHJhbnNsYXRlLmluc3RhbnQob3B0aW9uLm5hbWUpICtcbiAgICAgICAgICAgIChvcHRpb24ua2V5Ym9hcmRTaG9ydGN1dCA/ICcgKCcgKyB0aGlzLmdldEtleUluZm8ob3B0aW9uKSArICcpJyA6ICcnKVxuICAgICAgICApO1xuICAgIH1cblxuICAgIGdldEtleUluZm8ob3B0aW9uOiBPcHRpb25JdGVtKSB7XG4gICAgICAgIGlmICghb3B0aW9uLmtleWJvYXJkU2hvcnRjdXQpIHtcbiAgICAgICAgICAgIHJldHVybiAnJztcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBtb2RpZmllcnMgPSBbXTtcbiAgICAgICAgaWYgKG9wdGlvbi5rZXlib2FyZFNob3J0Y3V0Lm1vZGlmaWVycz8uaW5jbHVkZXMoJ1NoaWZ0JykpIHtcbiAgICAgICAgICAgIG1vZGlmaWVycy5wdXNoKHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ0tFWV9NT0RJRklFUi5TSElGVCcpKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAob3B0aW9uLmtleWJvYXJkU2hvcnRjdXQubW9kaWZpZXJzPy5pbmNsdWRlcygnQ3RybC9DbWQnKSkge1xuICAgICAgICAgICAgbW9kaWZpZXJzLnB1c2godGhpcy50cmFuc2xhdGUuaW5zdGFudCgnS0VZX01PRElGSUVSLkNUUkwnKSk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgIChtb2RpZmllcnMubGVuZ3RoID8gbW9kaWZpZXJzLmpvaW4oJyArICcpICsgJyArICcgOiAnJykgK1xuICAgICAgICAgICAgb3B0aW9uLmtleWJvYXJkU2hvcnRjdXQua2V5Q29kZS5yZXBsYWNlKCdLZXknLCAnJylcbiAgICAgICAgKTtcbiAgICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { Pipe } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "@ngx-translate/core";
|
|
4
|
+
export class ReplaceCharsPipe {
|
|
5
|
+
transform(value, args) {
|
|
6
|
+
let i = 0;
|
|
7
|
+
if (!Array.isArray(args.search)) {
|
|
8
|
+
args.search = [args.search];
|
|
9
|
+
}
|
|
10
|
+
if (args.replace && !Array.isArray(args.replace)) {
|
|
11
|
+
args.replace = [args.replace];
|
|
12
|
+
}
|
|
13
|
+
for (let arg of args.search) {
|
|
14
|
+
value = value.split(arg).join(args.replace ? args.replace[i] : '');
|
|
15
|
+
i++;
|
|
16
|
+
}
|
|
17
|
+
return value;
|
|
18
|
+
}
|
|
19
|
+
constructor(translate) {
|
|
20
|
+
this.translate = translate;
|
|
21
|
+
}
|
|
22
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: ReplaceCharsPipe, deps: [{ token: i1.TranslateService }], target: i0.ɵɵFactoryTarget.Pipe }); }
|
|
23
|
+
static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "16.2.6", ngImport: i0, type: ReplaceCharsPipe, name: "replaceChars" }); }
|
|
24
|
+
}
|
|
25
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: ReplaceCharsPipe, decorators: [{
|
|
26
|
+
type: Pipe,
|
|
27
|
+
args: [{ name: 'replaceChars' }]
|
|
28
|
+
}], ctorParameters: function () { return [{ type: i1.TranslateService }]; } });
|
|
29
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVwbGFjZS1jaGFycy5waXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWR1LXNoYXJpbmctdWkvc3JjL2xpYi9waXBlcy9yZXBsYWNlLWNoYXJzLnBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLElBQUksRUFBaUIsTUFBTSxlQUFlLENBQUM7OztBQUlwRCxNQUFNLE9BQU8sZ0JBQWdCO0lBQ3pCLFNBQVMsQ0FBQyxLQUFhLEVBQUUsSUFBUztRQUM5QixJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDVixJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEVBQUU7WUFDN0IsSUFBSSxDQUFDLE1BQU0sR0FBRyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztTQUMvQjtRQUNELElBQUksSUFBSSxDQUFDLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxFQUFFO1lBQzlDLElBQUksQ0FBQyxPQUFPLEdBQUcsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7U0FDakM7UUFDRCxLQUFLLElBQUksR0FBRyxJQUFJLElBQUksQ0FBQyxNQUFNLEVBQUU7WUFDekIsS0FBSyxHQUFHLEtBQUssQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1lBQ25FLENBQUMsRUFBRSxDQUFDO1NBQ1A7UUFDRCxPQUFPLEtBQUssQ0FBQztJQUNqQixDQUFDO0lBQ0QsWUFBb0IsU0FBMkI7UUFBM0IsY0FBUyxHQUFULFNBQVMsQ0FBa0I7SUFBRyxDQUFDOzhHQWYxQyxnQkFBZ0I7NEdBQWhCLGdCQUFnQjs7MkZBQWhCLGdCQUFnQjtrQkFENUIsSUFBSTttQkFBQyxFQUFFLElBQUksRUFBRSxjQUFjLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQaXBlLCBQaXBlVHJhbnNmb3JtIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBUcmFuc2xhdGVTZXJ2aWNlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XG5cbkBQaXBlKHsgbmFtZTogJ3JlcGxhY2VDaGFycycgfSlcbmV4cG9ydCBjbGFzcyBSZXBsYWNlQ2hhcnNQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XG4gICAgdHJhbnNmb3JtKHZhbHVlOiBzdHJpbmcsIGFyZ3M6IGFueSk6IHN0cmluZyB7XG4gICAgICAgIGxldCBpID0gMDtcbiAgICAgICAgaWYgKCFBcnJheS5pc0FycmF5KGFyZ3Muc2VhcmNoKSkge1xuICAgICAgICAgICAgYXJncy5zZWFyY2ggPSBbYXJncy5zZWFyY2hdO1xuICAgICAgICB9XG4gICAgICAgIGlmIChhcmdzLnJlcGxhY2UgJiYgIUFycmF5LmlzQXJyYXkoYXJncy5yZXBsYWNlKSkge1xuICAgICAgICAgICAgYXJncy5yZXBsYWNlID0gW2FyZ3MucmVwbGFjZV07XG4gICAgICAgIH1cbiAgICAgICAgZm9yIChsZXQgYXJnIG9mIGFyZ3Muc2VhcmNoKSB7XG4gICAgICAgICAgICB2YWx1ZSA9IHZhbHVlLnNwbGl0KGFyZykuam9pbihhcmdzLnJlcGxhY2UgPyBhcmdzLnJlcGxhY2VbaV0gOiAnJyk7XG4gICAgICAgICAgICBpKys7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHZhbHVlO1xuICAgIH1cbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIHRyYW5zbGF0ZTogVHJhbnNsYXRlU2VydmljZSkge31cbn1cbiJdfQ==
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { Pipe } from '@angular/core';
|
|
2
|
+
import { VCard } from '../util/VCard';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "@ngx-translate/core";
|
|
5
|
+
export class VCardNamePipe {
|
|
6
|
+
constructor(translate) {
|
|
7
|
+
this.translate = translate;
|
|
8
|
+
}
|
|
9
|
+
transform(authority, args = null) {
|
|
10
|
+
return authority ? new VCard(authority).getDisplayName() : '';
|
|
11
|
+
}
|
|
12
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: VCardNamePipe, deps: [{ token: i1.TranslateService }], target: i0.ɵɵFactoryTarget.Pipe }); }
|
|
13
|
+
static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "16.2.6", ngImport: i0, type: VCardNamePipe, name: "vcardName" }); }
|
|
14
|
+
}
|
|
15
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: VCardNamePipe, decorators: [{
|
|
16
|
+
type: Pipe,
|
|
17
|
+
args: [{ name: 'vcardName' }]
|
|
18
|
+
}], ctorParameters: function () { return [{ type: i1.TranslateService }]; } });
|
|
19
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmNhcmQtbmFtZS5waXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWR1LXNoYXJpbmctdWkvc3JjL2xpYi9waXBlcy92Y2FyZC1uYW1lLnBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLElBQUksRUFBaUIsTUFBTSxlQUFlLENBQUM7QUFFcEQsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQzs7O0FBR3RDLE1BQU0sT0FBTyxhQUFhO0lBQ3RCLFlBQW9CLFNBQTJCO1FBQTNCLGNBQVMsR0FBVCxTQUFTLENBQWtCO0lBQUcsQ0FBQztJQUNuRCxTQUFTLENBQUMsU0FBaUIsRUFBRSxPQUFpQixJQUFJO1FBQzlDLE9BQU8sU0FBUyxDQUFDLENBQUMsQ0FBQyxJQUFJLEtBQUssQ0FBQyxTQUFTLENBQUMsQ0FBQyxjQUFjLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO0lBQ2xFLENBQUM7OEdBSlEsYUFBYTs0R0FBYixhQUFhOzsyRkFBYixhQUFhO2tCQUR6QixJQUFJO21CQUFDLEVBQUUsSUFBSSxFQUFFLFdBQVcsRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFBpcGUsIFBpcGVUcmFuc2Zvcm0gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFRyYW5zbGF0ZVNlcnZpY2UgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcbmltcG9ydCB7IFZDYXJkIH0gZnJvbSAnLi4vdXRpbC9WQ2FyZCc7XG5cbkBQaXBlKHsgbmFtZTogJ3ZjYXJkTmFtZScgfSlcbmV4cG9ydCBjbGFzcyBWQ2FyZE5hbWVQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSB0cmFuc2xhdGU6IFRyYW5zbGF0ZVNlcnZpY2UpIHt9XG4gICAgdHJhbnNmb3JtKGF1dGhvcml0eTogc3RyaW5nLCBhcmdzOiBzdHJpbmdbXSA9IG51bGwpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gYXV0aG9yaXR5ID8gbmV3IFZDYXJkKGF1dGhvcml0eSkuZ2V0RGlzcGxheU5hbWUoKSA6ICcnO1xuICAgIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
export class AppService {
|
|
2
|
+
}
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lZHUtc2hhcmluZy11aS9zcmMvbGliL3NlcnZpY2VzL2Fic3RyYWN0L2FwcC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sT0FBZ0IsVUFBVTtDQUcvQiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBhYnN0cmFjdCBjbGFzcyBBcHBTZXJ2aWNlIHtcbiAgICBhYnN0cmFjdCBpc1J1bm5pbmdBcHAoKTogYm9vbGVhbjtcbiAgICBhYnN0cmFjdCBnZXRMYW5ndWFnZSgpOiBQcm9taXNlPHN0cmluZz47XG59XG4iXX0=
|