ngx-edu-sharing-ui 10.0.20 → 10.0.22
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/material-theme.scss +3 -3
- package/assets/scss/mixins.scss +1 -1
- package/assets/scss/variables-root.scss +2 -0
- package/assets/scss/variables-scss.scss +3 -4
- package/assets/scss/variables.scss +1 -1
- package/fesm2022/ngx-edu-sharing-ui.mjs +376 -319
- package/fesm2022/ngx-edu-sharing-ui.mjs.map +1 -1
- package/lib/index.d.ts +1 -0
- package/lib/list-items/list-widget.d.ts +1 -1
- package/lib/mds-viewer/mds-editor-instance-service.abstract.d.ts +14 -0
- package/lib/mds-viewer/widget/mds-widget.component.d.ts +6 -4
- package/package.json +8 -9
- package/esm2022/lib/actionbar/actionbar.component.mjs +0 -206
- package/esm2022/lib/common/edu-sharing-ui-common.module.mjs +0 -170
- package/esm2022/lib/directives/border-box-observer.directive.mjs +0 -71
- package/esm2022/lib/directives/check-text-overflow.directive.mjs +0 -71
- package/esm2022/lib/directives/drag-nodes/drag-nodes.mjs +0 -14
- package/esm2022/lib/directives/drag-nodes/nodes-drag-source.directive.mjs +0 -79
- package/esm2022/lib/directives/drag-nodes/nodes-drag.directive.mjs +0 -49
- package/esm2022/lib/directives/drag-nodes/nodes-drop-target.directive.mjs +0 -105
- package/esm2022/lib/directives/focus-state.directive.mjs +0 -44
- package/esm2022/lib/directives/icon.directive.mjs +0 -184
- package/esm2022/lib/directives/infinite-scroll.directive.mjs +0 -85
- package/esm2022/lib/dropdown/dropdown.component.mjs +0 -83
- package/esm2022/lib/edu-sharing-ui-configuration.mjs +0 -48
- package/esm2022/lib/edu-sharing-ui.module.mjs +0 -82
- package/esm2022/lib/index.mjs +0 -96
- package/esm2022/lib/list-items/available-widgets.mjs +0 -27
- package/esm2022/lib/list-items/format-duration.pipe.mjs +0 -20
- package/esm2022/lib/list-items/list-base/list-base.component.mjs +0 -46
- package/esm2022/lib/list-items/list-collection-info/list-collection-info.component.mjs +0 -29
- package/esm2022/lib/list-items/list-counts/list-counts.component.mjs +0 -56
- package/esm2022/lib/list-items/list-items.module.mjs +0 -50
- package/esm2022/lib/list-items/list-node-license/list-node-license.component.mjs +0 -41
- package/esm2022/lib/list-items/list-node-replication-source/list-node-replication-source.component.mjs +0 -47
- package/esm2022/lib/list-items/list-node-workflow/list-node-workflow.component.mjs +0 -24
- package/esm2022/lib/list-items/list-text/list-text.component.mjs +0 -106
- package/esm2022/lib/list-items/list-widget.mjs +0 -49
- package/esm2022/lib/list-items/node-row/node-row.component.mjs +0 -24
- package/esm2022/lib/list-items/node-source.pipe.mjs +0 -49
- package/esm2022/lib/mds/mds-helper.service.mjs +0 -167
- package/esm2022/lib/mds/mds.module.mjs +0 -16
- package/esm2022/lib/mds-viewer/mds-viewer.component.mjs +0 -170
- package/esm2022/lib/mds-viewer/mds-viewer.service.mjs +0 -18
- package/esm2022/lib/mds-viewer/replace-element-with-div.mjs +0 -47
- package/esm2022/lib/mds-viewer/view-instance.service.mjs +0 -27
- package/esm2022/lib/mds-viewer/widget/mds-widget.component.mjs +0 -379
- package/esm2022/lib/node-entries/combined-data-source.mjs +0 -41
- package/esm2022/lib/node-entries/custom-templates-data-source.mjs +0 -7
- package/esm2022/lib/node-entries/drag-preview/drag-preview.component.mjs +0 -21
- package/esm2022/lib/node-entries/entries-model.mjs +0 -24
- package/esm2022/lib/node-entries/items-cap.mjs +0 -47
- package/esm2022/lib/node-entries/list-item-label.pipe.mjs +0 -37
- package/esm2022/lib/node-entries/node-cache.mjs +0 -73
- package/esm2022/lib/node-entries/node-data-source-remote.mjs +0 -4
- package/esm2022/lib/node-entries/node-data-source.mjs +0 -117
- package/esm2022/lib/node-entries/node-entries-card/node-entries-card.component.mjs +0 -117
- package/esm2022/lib/node-entries/node-entries-card-grid/node-entries-card-grid.component.mjs +0 -329
- package/esm2022/lib/node-entries/node-entries-card-small/node-entries-card-small.component.mjs +0 -44
- package/esm2022/lib/node-entries/node-entries-global-options/node-entries-global-options.component.mjs +0 -27
- package/esm2022/lib/node-entries/node-entries-global.service.mjs +0 -71
- package/esm2022/lib/node-entries/node-entries-table/column-chooser/column-chooser.component.mjs +0 -42
- package/esm2022/lib/node-entries/node-entries-table/node-entries-table.component.mjs +0 -294
- package/esm2022/lib/node-entries/node-entries-templates.service.mjs +0 -11
- package/esm2022/lib/node-entries/node-entries-wrapper.component.mjs +0 -369
- package/esm2022/lib/node-entries/node-entries.component.mjs +0 -132
- package/esm2022/lib/node-entries/node-entries.module.mjs +0 -161
- package/esm2022/lib/node-entries/node-rating/node-rating.component.mjs +0 -125
- package/esm2022/lib/node-entries/node-stats-badges/node-stats-badges.component.mjs +0 -48
- package/esm2022/lib/node-entries/node-type-badge/node-type-badge.component.mjs +0 -36
- package/esm2022/lib/node-entries/option-button/option-button.component.mjs +0 -75
- package/esm2022/lib/node-entries/preview-image/preview-image.component.mjs +0 -53
- package/esm2022/lib/node-entries/sort-select-panel/sort-select-panel.component.mjs +0 -41
- package/esm2022/lib/node-url/node-url.component.mjs +0 -132
- package/esm2022/lib/pipes/file-size.pipe.mjs +0 -32
- package/esm2022/lib/pipes/format-date.pipe.mjs +0 -38
- package/esm2022/lib/pipes/mds-duration.pipe.mjs +0 -25
- package/esm2022/lib/pipes/node-icon.pipe.mjs +0 -18
- package/esm2022/lib/pipes/node-image-size.pipe.mjs +0 -24
- package/esm2022/lib/pipes/node-image.pipe.mjs +0 -55
- package/esm2022/lib/pipes/node-license.pipe.mjs +0 -24
- package/esm2022/lib/pipes/node-person-name.pipe.mjs +0 -50
- package/esm2022/lib/pipes/node-title.pipe.mjs +0 -35
- package/esm2022/lib/pipes/option-tooltip.pipe.mjs +0 -33
- package/esm2022/lib/pipes/property-slug.pipe.mjs +0 -16
- package/esm2022/lib/pipes/replace-chars.pipe.mjs +0 -29
- package/esm2022/lib/pipes/vcard-name.pipe.mjs +0 -25
- package/esm2022/lib/services/abstract/app.service.mjs +0 -3
- package/esm2022/lib/services/abstract/keyboard-shortcuts.service.mjs +0 -10
- package/esm2022/lib/services/abstract/options-helper.service.mjs +0 -3
- package/esm2022/lib/services/abstract/toast.service.mjs +0 -3
- package/esm2022/lib/services/accessibility.service.mjs +0 -73
- package/esm2022/lib/services/app-container.service.mjs +0 -69
- package/esm2022/lib/services/local-events.service.mjs +0 -43
- package/esm2022/lib/services/node-entries.service.mjs +0 -201
- package/esm2022/lib/services/node-helper.service.mjs +0 -330
- package/esm2022/lib/services/nodes-drag-drop.service.mjs +0 -155
- package/esm2022/lib/services/options-helper-data.service.mjs +0 -142
- package/esm2022/lib/services/render-helper.service.mjs +0 -114
- package/esm2022/lib/services/repo-url.service.mjs +0 -50
- package/esm2022/lib/services/search-helper.service.mjs +0 -52
- package/esm2022/lib/services/temporary-storage.service.mjs +0 -48
- package/esm2022/lib/services/ui.service.mjs +0 -327
- package/esm2022/lib/sort-dropdown/sort-dropdown.component.mjs +0 -50
- package/esm2022/lib/spinner/spinner.component.mjs +0 -19
- package/esm2022/lib/spinner-small/spinner-small.component.mjs +0 -18
- package/esm2022/lib/translations/fallback-translation-handler.mjs +0 -6
- package/esm2022/lib/translations/translation-loader.mjs +0 -219
- package/esm2022/lib/translations/translation-source.mjs +0 -11
- package/esm2022/lib/translations/translations.module.mjs +0 -82
- package/esm2022/lib/translations/translations.service.mjs +0 -238
- package/esm2022/lib/types/accessibillity.mjs +0 -19
- package/esm2022/lib/types/api-models.mjs +0 -2
- package/esm2022/lib/types/drag-drop.mjs +0 -2
- package/esm2022/lib/types/injection-tokens.mjs +0 -31
- package/esm2022/lib/types/keyboard-shortcuts.mjs +0 -11
- package/esm2022/lib/types/list-item.mjs +0 -41
- package/esm2022/lib/types/option-item.mjs +0 -192
- package/esm2022/lib/types/workflow.mjs +0 -25
- package/esm2022/lib/util/DateHelper.mjs +0 -200
- package/esm2022/lib/util/VCard.mjs +0 -278
- package/esm2022/lib/util/color-helper.mjs +0 -124
- package/esm2022/lib/util/duration-helper.mjs +0 -102
- package/esm2022/lib/util/functions.mjs +0 -13
- package/esm2022/lib/util/helper.mjs +0 -64
- package/esm2022/lib/util/isNumeric.mjs +0 -11
- package/esm2022/lib/util/rest-helper.mjs +0 -42
- package/esm2022/lib/util/ui-animation.mjs +0 -146
- package/esm2022/lib/util/ui-constants.mjs +0 -21
- package/esm2022/ngx-edu-sharing-ui.mjs +0 -5
- package/esm2022/public-api.mjs +0 -2
|
@@ -1,161 +0,0 @@
|
|
|
1
|
-
import { A11yModule } from '@angular/cdk/a11y';
|
|
2
|
-
import { DragDropModule } from '@angular/cdk/drag-drop';
|
|
3
|
-
import { OverlayModule } from '@angular/cdk/overlay';
|
|
4
|
-
import { CommonModule } from '@angular/common';
|
|
5
|
-
import { NgModule } from '@angular/core';
|
|
6
|
-
import { FormsModule } from '@angular/forms';
|
|
7
|
-
import { MatBadgeModule } from '@angular/material/badge';
|
|
8
|
-
import { MatButtonModule } from '@angular/material/button';
|
|
9
|
-
import { MatCheckboxModule } from '@angular/material/checkbox';
|
|
10
|
-
import { MatRippleModule } from '@angular/material/core';
|
|
11
|
-
import { MatMenuModule } from '@angular/material/menu';
|
|
12
|
-
import { MatPaginatorModule } from '@angular/material/paginator';
|
|
13
|
-
import { MatSlideToggleModule } from '@angular/material/slide-toggle';
|
|
14
|
-
import { MatSortModule } from '@angular/material/sort';
|
|
15
|
-
import { MatTableModule } from '@angular/material/table';
|
|
16
|
-
import { MatTooltipModule } from '@angular/material/tooltip';
|
|
17
|
-
import { TranslateModule } from '@ngx-translate/core';
|
|
18
|
-
import { EduSharingUiCommonModule } from '../common/edu-sharing-ui-common.module';
|
|
19
|
-
import { NodesDragSourceDirective } from '../directives/drag-nodes/nodes-drag-source.directive';
|
|
20
|
-
import { NodesDragDirective } from '../directives/drag-nodes/nodes-drag.directive';
|
|
21
|
-
import { NodesDropTargetDirective } from '../directives/drag-nodes/nodes-drop-target.directive';
|
|
22
|
-
import { ListItemsModule } from '../list-items/list-items.module';
|
|
23
|
-
import { DragPreviewComponent } from './drag-preview/drag-preview.component';
|
|
24
|
-
import { ListItemLabelPipe } from './list-item-label.pipe';
|
|
25
|
-
import { NodeEntriesCardGridComponent } from './node-entries-card-grid/node-entries-card-grid.component';
|
|
26
|
-
import { NodeEntriesCardSmallComponent } from './node-entries-card-small/node-entries-card-small.component';
|
|
27
|
-
import { NodeEntriesCardComponent } from './node-entries-card/node-entries-card.component';
|
|
28
|
-
import { NodeEntriesGlobalOptionsComponent } from './node-entries-global-options/node-entries-global-options.component';
|
|
29
|
-
import { ColumnChooserComponent } from './node-entries-table/column-chooser/column-chooser.component';
|
|
30
|
-
import { NodeEntriesTableComponent } from './node-entries-table/node-entries-table.component';
|
|
31
|
-
import { NodeEntriesWrapperComponent } from './node-entries-wrapper.component';
|
|
32
|
-
import { NodeEntriesComponent } from './node-entries.component';
|
|
33
|
-
import { NodeRatingComponent } from './node-rating/node-rating.component';
|
|
34
|
-
import { NodeStatsBadgesComponent } from './node-stats-badges/node-stats-badges.component';
|
|
35
|
-
import { NodeTypeBadgeComponent } from './node-type-badge/node-type-badge.component';
|
|
36
|
-
import { OptionButtonComponent } from './option-button/option-button.component';
|
|
37
|
-
import { PreviewImageComponent } from './preview-image/preview-image.component';
|
|
38
|
-
import { SortSelectPanelComponent } from './sort-select-panel/sort-select-panel.component';
|
|
39
|
-
import * as i0 from "@angular/core";
|
|
40
|
-
export class NodeEntriesModule {
|
|
41
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: NodeEntriesModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
42
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.12", ngImport: i0, type: NodeEntriesModule, declarations: [ColumnChooserComponent,
|
|
43
|
-
DragPreviewComponent,
|
|
44
|
-
ListItemLabelPipe,
|
|
45
|
-
NodeEntriesCardComponent,
|
|
46
|
-
NodeEntriesCardGridComponent,
|
|
47
|
-
NodeEntriesCardSmallComponent,
|
|
48
|
-
NodeEntriesTableComponent,
|
|
49
|
-
NodeRatingComponent,
|
|
50
|
-
PreviewImageComponent,
|
|
51
|
-
NodeEntriesComponent,
|
|
52
|
-
NodeEntriesWrapperComponent,
|
|
53
|
-
NodeRatingComponent,
|
|
54
|
-
NodeTypeBadgeComponent,
|
|
55
|
-
OptionButtonComponent,
|
|
56
|
-
PreviewImageComponent,
|
|
57
|
-
SortSelectPanelComponent,
|
|
58
|
-
NodesDragDirective,
|
|
59
|
-
NodesDragSourceDirective,
|
|
60
|
-
NodesDropTargetDirective,
|
|
61
|
-
NodeEntriesGlobalOptionsComponent,
|
|
62
|
-
NodeStatsBadgesComponent], imports: [CommonModule,
|
|
63
|
-
FormsModule,
|
|
64
|
-
A11yModule,
|
|
65
|
-
OverlayModule,
|
|
66
|
-
DragDropModule,
|
|
67
|
-
EduSharingUiCommonModule,
|
|
68
|
-
ListItemsModule,
|
|
69
|
-
MatCheckboxModule,
|
|
70
|
-
MatButtonModule,
|
|
71
|
-
MatBadgeModule,
|
|
72
|
-
MatMenuModule,
|
|
73
|
-
MatTableModule,
|
|
74
|
-
MatCheckboxModule,
|
|
75
|
-
MatPaginatorModule,
|
|
76
|
-
MatRippleModule,
|
|
77
|
-
MatSlideToggleModule,
|
|
78
|
-
MatSortModule,
|
|
79
|
-
MatTooltipModule,
|
|
80
|
-
TranslateModule], exports: [NodeEntriesWrapperComponent,
|
|
81
|
-
NodesDragDirective,
|
|
82
|
-
NodesDragSourceDirective,
|
|
83
|
-
NodesDropTargetDirective,
|
|
84
|
-
ListItemLabelPipe] }); }
|
|
85
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: NodeEntriesModule, imports: [CommonModule,
|
|
86
|
-
FormsModule,
|
|
87
|
-
A11yModule,
|
|
88
|
-
OverlayModule,
|
|
89
|
-
DragDropModule,
|
|
90
|
-
EduSharingUiCommonModule,
|
|
91
|
-
ListItemsModule,
|
|
92
|
-
MatCheckboxModule,
|
|
93
|
-
MatButtonModule,
|
|
94
|
-
MatBadgeModule,
|
|
95
|
-
MatMenuModule,
|
|
96
|
-
MatTableModule,
|
|
97
|
-
MatCheckboxModule,
|
|
98
|
-
MatPaginatorModule,
|
|
99
|
-
MatRippleModule,
|
|
100
|
-
MatSlideToggleModule,
|
|
101
|
-
MatSortModule,
|
|
102
|
-
MatTooltipModule,
|
|
103
|
-
TranslateModule] }); }
|
|
104
|
-
}
|
|
105
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: NodeEntriesModule, decorators: [{
|
|
106
|
-
type: NgModule,
|
|
107
|
-
args: [{
|
|
108
|
-
declarations: [
|
|
109
|
-
ColumnChooserComponent,
|
|
110
|
-
DragPreviewComponent,
|
|
111
|
-
ListItemLabelPipe,
|
|
112
|
-
NodeEntriesCardComponent,
|
|
113
|
-
NodeEntriesCardGridComponent,
|
|
114
|
-
NodeEntriesCardSmallComponent,
|
|
115
|
-
NodeEntriesTableComponent,
|
|
116
|
-
NodeRatingComponent,
|
|
117
|
-
PreviewImageComponent,
|
|
118
|
-
NodeEntriesComponent,
|
|
119
|
-
NodeEntriesWrapperComponent,
|
|
120
|
-
NodeRatingComponent,
|
|
121
|
-
NodeTypeBadgeComponent,
|
|
122
|
-
OptionButtonComponent,
|
|
123
|
-
PreviewImageComponent,
|
|
124
|
-
SortSelectPanelComponent,
|
|
125
|
-
NodesDragDirective,
|
|
126
|
-
NodesDragSourceDirective,
|
|
127
|
-
NodesDropTargetDirective,
|
|
128
|
-
NodeEntriesGlobalOptionsComponent,
|
|
129
|
-
NodeStatsBadgesComponent,
|
|
130
|
-
],
|
|
131
|
-
imports: [
|
|
132
|
-
CommonModule,
|
|
133
|
-
FormsModule,
|
|
134
|
-
A11yModule,
|
|
135
|
-
OverlayModule,
|
|
136
|
-
DragDropModule,
|
|
137
|
-
EduSharingUiCommonModule,
|
|
138
|
-
ListItemsModule,
|
|
139
|
-
MatCheckboxModule,
|
|
140
|
-
MatButtonModule,
|
|
141
|
-
MatBadgeModule,
|
|
142
|
-
MatMenuModule,
|
|
143
|
-
MatTableModule,
|
|
144
|
-
MatCheckboxModule,
|
|
145
|
-
MatPaginatorModule,
|
|
146
|
-
MatRippleModule,
|
|
147
|
-
MatSlideToggleModule,
|
|
148
|
-
MatSortModule,
|
|
149
|
-
MatTooltipModule,
|
|
150
|
-
TranslateModule,
|
|
151
|
-
],
|
|
152
|
-
exports: [
|
|
153
|
-
NodeEntriesWrapperComponent,
|
|
154
|
-
NodesDragDirective,
|
|
155
|
-
NodesDragSourceDirective,
|
|
156
|
-
NodesDropTargetDirective,
|
|
157
|
-
ListItemLabelPipe,
|
|
158
|
-
],
|
|
159
|
-
}]
|
|
160
|
-
}] });
|
|
161
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm9kZS1lbnRyaWVzLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VkdS1zaGFyaW5nLXVpL3NyYy9saWIvbm9kZS1lbnRyaWVzL25vZGUtZW50cmllcy5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN4RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDckQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDL0QsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3pELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUNqRSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUN0RSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3pELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzdELE9BQU8sRUFBRSxlQUFlLEVBQUUs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QXJEN0IsUUFBUTttQkFBQztvQkFDTixZQUFZLEVBQUU7d0JBQ1Ysc0JBQXNCO3dCQUN0QixvQkFBb0I7d0JBQ3BCLGlCQUFpQjt3QkFDakIsd0JBQXdCO3dCQUN4Qiw0QkFBNEI7d0JBQzVCLDZCQUE2Qjt3QkFDN0IseUJBQXlCO3dCQUN6QixtQkFBbUI7d0JBQ25CLHFCQUFxQjt3QkFDckIsb0JBQW9CO3dCQUNwQiwyQkFBMkI7d0JBQzNCLG1CQUFtQjt3QkFDbkIsc0JBQXNCO3dCQUN0QixxQkFBcUI7d0JBQ3JCLHFCQUFxQjt3QkFDckIsd0JBQXdCO3dCQUN4QixrQkFBa0I7d0JBQ2xCLHdCQUF3Qjt3QkFDeEIsd0JBQXdCO3dCQUN4QixpQ0FBaUM7d0JBQ2pDLHdCQUF3QjtxQkFDM0I7b0JBQ0QsT0FBTyxFQUFFO3dCQUNMLFlBQVk7d0JBQ1osV0FBVzt3QkFDWCxVQUFVO3dCQUNWLGFBQWE7d0JBQ2IsY0FBYzt3QkFDZCx3QkFBd0I7d0JBQ3hCLGVBQWU7d0JBQ2YsaUJBQWlCO3dCQUNqQixlQUFlO3dCQUNmLGNBQWM7d0JBQ2QsYUFBYTt3QkFDYixjQUFjO3dCQUNkLGlCQUFpQjt3QkFDakIsa0JBQWtCO3dCQUNsQixlQUFlO3dCQUNmLG9CQUFvQjt3QkFDcEIsYUFBYTt3QkFDYixnQkFBZ0I7d0JBQ2hCLGVBQWU7cUJBQ2xCO29CQUNELE9BQU8sRUFBRTt3QkFDTCwyQkFBMkI7d0JBQzNCLGtCQUFrQjt3QkFDbEIsd0JBQXdCO3dCQUN4Qix3QkFBd0I7d0JBQ3hCLGlCQUFpQjtxQkFDcEI7aUJBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBMTF5TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2ExMXknO1xuaW1wb3J0IHsgRHJhZ0Ryb3BNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jZGsvZHJhZy1kcm9wJztcbmltcG9ydCB7IE92ZXJsYXlNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jZGsvb3ZlcmxheSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgTWF0QmFkZ2VNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9iYWRnZSc7XG5pbXBvcnQgeyBNYXRCdXR0b25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9idXR0b24nO1xuaW1wb3J0IHsgTWF0Q2hlY2tib3hNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9jaGVja2JveCc7XG5pbXBvcnQgeyBNYXRSaXBwbGVNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9jb3JlJztcbmltcG9ydCB7IE1hdE1lbnVNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9tZW51JztcbmltcG9ydCB7IE1hdFBhZ2luYXRvck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3BhZ2luYXRvcic7XG5pbXBvcnQgeyBNYXRTbGlkZVRvZ2dsZU1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3NsaWRlLXRvZ2dsZSc7XG5pbXBvcnQgeyBNYXRTb3J0TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvc29ydCc7XG5pbXBvcnQgeyBNYXRUYWJsZU1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3RhYmxlJztcbmltcG9ydCB7IE1hdFRvb2x0aXBNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90b29sdGlwJztcbmltcG9ydCB7IFRyYW5zbGF0ZU1vZHVsZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuaW1wb3J0IHsgRWR1U2hhcmluZ1VpQ29tbW9uTW9kdWxlIH0gZnJvbSAnLi4vY29tbW9uL2VkdS1zaGFyaW5nLXVpLWNvbW1vbi5tb2R1bGUnO1xuaW1wb3J0IHsgTm9kZXNEcmFnU291cmNlRGlyZWN0aXZlIH0gZnJvbSAnLi4vZGlyZWN0aXZlcy9kcmFnLW5vZGVzL25vZGVzLWRyYWctc291cmNlLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBOb2Rlc0RyYWdEaXJlY3RpdmUgfSBmcm9tICcuLi9kaXJlY3RpdmVzL2RyYWctbm9kZXMvbm9kZXMtZHJhZy5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgTm9kZXNEcm9wVGFyZ2V0RGlyZWN0aXZlIH0gZnJvbSAnLi4vZGlyZWN0aXZlcy9kcmFnLW5vZGVzL25vZGVzLWRyb3AtdGFyZ2V0LmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBMaXN0SXRlbXNNb2R1bGUgfSBmcm9tICcuLi9saXN0LWl0ZW1zL2xpc3QtaXRlbXMubW9kdWxlJztcbmltcG9ydCB7IERyYWdQcmV2aWV3Q29tcG9uZW50IH0gZnJvbSAnLi9kcmFnLXByZXZpZXcvZHJhZy1wcmV2aWV3LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBMaXN0SXRlbUxhYmVsUGlwZSB9IGZyb20gJy4vbGlzdC1pdGVtLWxhYmVsLnBpcGUnO1xuaW1wb3J0IHsgTm9kZUVudHJpZXNDYXJkR3JpZENvbXBvbmVudCB9IGZyb20gJy4vbm9kZS1lbnRyaWVzLWNhcmQtZ3JpZC9ub2RlLWVudHJpZXMtY2FyZC1ncmlkLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBOb2RlRW50cmllc0NhcmRTbWFsbENvbXBvbmVudCB9IGZyb20gJy4vbm9kZS1lbnRyaWVzLWNhcmQtc21hbGwvbm9kZS1lbnRyaWVzLWNhcmQtc21hbGwuY29tcG9uZW50JztcbmltcG9ydCB7IE5vZGVFbnRyaWVzQ2FyZENvbXBvbmVudCB9IGZyb20gJy4vbm9kZS1lbnRyaWVzLWNhcmQvbm9kZS1lbnRyaWVzLWNhcmQuY29tcG9uZW50JztcbmltcG9ydCB7IE5vZGVFbnRyaWVzR2xvYmFsT3B0aW9uc0NvbXBvbmVudCB9IGZyb20gJy4vbm9kZS1lbnRyaWVzLWdsb2JhbC1vcHRpb25zL25vZGUtZW50cmllcy1nbG9iYWwtb3B0aW9ucy5jb21wb25lbnQnO1xuaW1wb3J0IHsgQ29sdW1uQ2hvb3NlckNvbXBvbmVudCB9IGZyb20gJy4vbm9kZS1lbnRyaWVzLXRhYmxlL2NvbHVtbi1jaG9vc2VyL2NvbHVtbi1jaG9vc2VyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBOb2RlRW50cmllc1RhYmxlQ29tcG9uZW50IH0gZnJvbSAnLi9ub2RlLWVudHJpZXMtdGFibGUvbm9kZS1lbnRyaWVzLXRhYmxlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBOb2RlRW50cmllc1dyYXBwZXJDb21wb25lbnQgfSBmcm9tICcuL25vZGUtZW50cmllcy13cmFwcGVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBOb2RlRW50cmllc0NvbXBvbmVudCB9IGZyb20gJy4vbm9kZS1lbnRyaWVzLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBOb2RlUmF0aW5nQ29tcG9uZW50IH0gZnJvbSAnLi9ub2RlLXJhdGluZy9ub2RlLXJhdGluZy5jb21wb25lbnQnO1xuaW1wb3J0IHsgTm9kZVN0YXRzQmFkZ2VzQ29tcG9uZW50IH0gZnJvbSAnLi9ub2RlLXN0YXRzLWJhZGdlcy9ub2RlLXN0YXRzLWJhZGdlcy5jb21wb25lbnQnO1xuaW1wb3J0IHsgTm9kZVR5cGVCYWRnZUNvbXBvbmVudCB9IGZyb20gJy4vbm9kZS10eXBlLWJhZGdlL25vZGUtdHlwZS1iYWRnZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgT3B0aW9uQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnLi9vcHRpb24tYnV0dG9uL29wdGlvbi1idXR0b24uY29tcG9uZW50JztcbmltcG9ydCB7IFByZXZpZXdJbWFnZUNvbXBvbmVudCB9IGZyb20gJy4vcHJldmlldy1pbWFnZS9wcmV2aWV3LWltYWdlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTb3J0U2VsZWN0UGFuZWxDb21wb25lbnQgfSBmcm9tICcuL3NvcnQtc2VsZWN0LXBhbmVsL3NvcnQtc2VsZWN0LXBhbmVsLmNvbXBvbmVudCc7XG5cbkBOZ01vZHVsZSh7XG4gICAgZGVjbGFyYXRpb25zOiBbXG4gICAgICAgIENvbHVtbkNob29zZXJDb21wb25lbnQsXG4gICAgICAgIERyYWdQcmV2aWV3Q29tcG9uZW50LFxuICAgICAgICBMaXN0SXRlbUxhYmVsUGlwZSxcbiAgICAgICAgTm9kZUVudHJpZXNDYXJkQ29tcG9uZW50LFxuICAgICAgICBOb2RlRW50cmllc0NhcmRHcmlkQ29tcG9uZW50LFxuICAgICAgICBOb2RlRW50cmllc0NhcmRTbWFsbENvbXBvbmVudCxcbiAgICAgICAgTm9kZUVudHJpZXNUYWJsZUNvbXBvbmVudCxcbiAgICAgICAgTm9kZVJhdGluZ0NvbXBvbmVudCxcbiAgICAgICAgUHJldmlld0ltYWdlQ29tcG9uZW50LFxuICAgICAgICBOb2RlRW50cmllc0NvbXBvbmVudCxcbiAgICAgICAgTm9kZUVudHJpZXNXcmFwcGVyQ29tcG9uZW50LFxuICAgICAgICBOb2RlUmF0aW5nQ29tcG9uZW50LFxuICAgICAgICBOb2RlVHlwZUJhZGdlQ29tcG9uZW50LFxuICAgICAgICBPcHRpb25CdXR0b25Db21wb25lbnQsXG4gICAgICAgIFByZXZpZXdJbWFnZUNvbXBvbmVudCxcbiAgICAgICAgU29ydFNlbGVjdFBhbmVsQ29tcG9uZW50LFxuICAgICAgICBOb2Rlc0RyYWdEaXJlY3RpdmUsXG4gICAgICAgIE5vZGVzRHJhZ1NvdXJjZURpcmVjdGl2ZSxcbiAgICAgICAgTm9kZXNEcm9wVGFyZ2V0RGlyZWN0aXZlLFxuICAgICAgICBOb2RlRW50cmllc0dsb2JhbE9wdGlvbnNDb21wb25lbnQsXG4gICAgICAgIE5vZGVTdGF0c0JhZGdlc0NvbXBvbmVudCxcbiAgICBdLFxuICAgIGltcG9ydHM6IFtcbiAgICAgICAgQ29tbW9uTW9kdWxlLFxuICAgICAgICBGb3Jtc01vZHVsZSxcbiAgICAgICAgQTExeU1vZHVsZSxcbiAgICAgICAgT3ZlcmxheU1vZHVsZSxcbiAgICAgICAgRHJhZ0Ryb3BNb2R1bGUsXG4gICAgICAgIEVkdVNoYXJpbmdVaUNvbW1vbk1vZHVsZSxcbiAgICAgICAgTGlzdEl0ZW1zTW9kdWxlLFxuICAgICAgICBNYXRDaGVja2JveE1vZHVsZSxcbiAgICAgICAgTWF0QnV0dG9uTW9kdWxlLFxuICAgICAgICBNYXRCYWRnZU1vZHVsZSxcbiAgICAgICAgTWF0TWVudU1vZHVsZSxcbiAgICAgICAgTWF0VGFibGVNb2R1bGUsXG4gICAgICAgIE1hdENoZWNrYm94TW9kdWxlLFxuICAgICAgICBNYXRQYWdpbmF0b3JNb2R1bGUsXG4gICAgICAgIE1hdFJpcHBsZU1vZHVsZSxcbiAgICAgICAgTWF0U2xpZGVUb2dnbGVNb2R1bGUsXG4gICAgICAgIE1hdFNvcnRNb2R1bGUsXG4gICAgICAgIE1hdFRvb2x0aXBNb2R1bGUsXG4gICAgICAgIFRyYW5zbGF0ZU1vZHVsZSxcbiAgICBdLFxuICAgIGV4cG9ydHM6IFtcbiAgICAgICAgTm9kZUVudHJpZXNXcmFwcGVyQ29tcG9uZW50LFxuICAgICAgICBOb2Rlc0RyYWdEaXJlY3RpdmUsXG4gICAgICAgIE5vZGVzRHJhZ1NvdXJjZURpcmVjdGl2ZSxcbiAgICAgICAgTm9kZXNEcm9wVGFyZ2V0RGlyZWN0aXZlLFxuICAgICAgICBMaXN0SXRlbUxhYmVsUGlwZSxcbiAgICBdLFxufSlcbmV4cG9ydCBjbGFzcyBOb2RlRW50cmllc01vZHVsZSB7fVxuIl19
|
|
@@ -1,125 +0,0 @@
|
|
|
1
|
-
import { Component, Input } from '@angular/core';
|
|
2
|
-
import { RestConstants, } from 'ngx-edu-sharing-api';
|
|
3
|
-
import { take } from 'rxjs/operators';
|
|
4
|
-
import { RestHelper } from '../../util/rest-helper';
|
|
5
|
-
import * as i0 from "@angular/core";
|
|
6
|
-
import * as i1 from "../../services/abstract/toast.service";
|
|
7
|
-
import * as i2 from "ngx-edu-sharing-api";
|
|
8
|
-
import * as i3 from "@angular/common";
|
|
9
|
-
import * as i4 from "../../directives/icon.directive";
|
|
10
|
-
import * as i5 from "@angular/material/button";
|
|
11
|
-
import * as i6 from "@angular/material/tooltip";
|
|
12
|
-
import * as i7 from "@ngx-translate/core";
|
|
13
|
-
export class NodeRatingComponent {
|
|
14
|
-
constructor(toast, configService, networkApi, authenticationService, changeDetectorRef, ratingService) {
|
|
15
|
-
this.toast = toast;
|
|
16
|
-
this.configService = configService;
|
|
17
|
-
this.networkApi = networkApi;
|
|
18
|
-
this.authenticationService = authenticationService;
|
|
19
|
-
this.changeDetectorRef = changeDetectorRef;
|
|
20
|
-
this.ratingService = ratingService;
|
|
21
|
-
}
|
|
22
|
-
async ngOnInit() {
|
|
23
|
-
await this.configService.observeConfig().pipe(take(1)).toPromise();
|
|
24
|
-
this.mode = this.configService.instant('rating.mode', 'none');
|
|
25
|
-
this.hasPermission = await this.authenticationService.hasToolpermission(RestConstants.TOOLPERMISSION_RATE_READ);
|
|
26
|
-
}
|
|
27
|
-
async toogleLike() {
|
|
28
|
-
const name = RestHelper.getTitle(this.node);
|
|
29
|
-
if (this.node.rating?.user) {
|
|
30
|
-
try {
|
|
31
|
-
await this.ratingService
|
|
32
|
-
.deleteRating({
|
|
33
|
-
repository: this.node.ref.repo,
|
|
34
|
-
node: this.node.ref.id,
|
|
35
|
-
})
|
|
36
|
-
.toPromise();
|
|
37
|
-
this.toast.toast('RATING.TOAST.LIKE_REMOVED', { name });
|
|
38
|
-
this.node.rating.user = 0;
|
|
39
|
-
this.node.rating.overall.count--;
|
|
40
|
-
}
|
|
41
|
-
catch (e) {
|
|
42
|
-
this.toast.error(e);
|
|
43
|
-
}
|
|
44
|
-
}
|
|
45
|
-
else {
|
|
46
|
-
try {
|
|
47
|
-
await this.ratingService
|
|
48
|
-
.addOrUpdateRating({
|
|
49
|
-
repository: this.node.ref.repo,
|
|
50
|
-
node: this.node.ref.id,
|
|
51
|
-
rating: 5,
|
|
52
|
-
body: null,
|
|
53
|
-
})
|
|
54
|
-
.toPromise();
|
|
55
|
-
this.toast.toast('RATING.TOAST.LIKED', { name });
|
|
56
|
-
this.node.rating.user = 5;
|
|
57
|
-
this.node.rating.overall.count++;
|
|
58
|
-
}
|
|
59
|
-
catch (e) {
|
|
60
|
-
this.toast.error(e);
|
|
61
|
-
}
|
|
62
|
-
}
|
|
63
|
-
this.changeDetectorRef.detectChanges();
|
|
64
|
-
}
|
|
65
|
-
getPrimaryRating() {
|
|
66
|
-
if (!this.node.rating) {
|
|
67
|
-
return 0;
|
|
68
|
-
}
|
|
69
|
-
if (this.node.rating.user) {
|
|
70
|
-
return this.node.rating.user;
|
|
71
|
-
}
|
|
72
|
-
return this.node.rating.overall.sum / this.node.rating.overall.count;
|
|
73
|
-
}
|
|
74
|
-
async setRating(rating) {
|
|
75
|
-
const name = RestHelper.getTitle(this.node);
|
|
76
|
-
try {
|
|
77
|
-
await this.ratingService
|
|
78
|
-
.addOrUpdateRating({
|
|
79
|
-
repository: this.node.ref.repo,
|
|
80
|
-
node: this.node.ref.id,
|
|
81
|
-
rating,
|
|
82
|
-
body: null,
|
|
83
|
-
})
|
|
84
|
-
.toPromise();
|
|
85
|
-
this.toast.toast('RATING.TOAST.RATED', { name, rating });
|
|
86
|
-
this.node.rating.overall.count += this.node.rating.user ? 0 : 1;
|
|
87
|
-
this.node.rating.user = rating;
|
|
88
|
-
this.changeDetectorRef.detectChanges();
|
|
89
|
-
}
|
|
90
|
-
catch (e) {
|
|
91
|
-
this.toast.error(e);
|
|
92
|
-
}
|
|
93
|
-
}
|
|
94
|
-
async deleteRating() {
|
|
95
|
-
const name = RestHelper.getTitle(this.node);
|
|
96
|
-
try {
|
|
97
|
-
await this.ratingService
|
|
98
|
-
.deleteRating({
|
|
99
|
-
repository: this.node.ref.repo,
|
|
100
|
-
node: this.node.ref.id,
|
|
101
|
-
})
|
|
102
|
-
.toPromise();
|
|
103
|
-
this.toast.toast('RATING.TOAST.RATING_REMOVED', { name });
|
|
104
|
-
this.node.rating.overall.count--;
|
|
105
|
-
this.node.rating.overall.sum -= this.node.rating.user;
|
|
106
|
-
this.node.rating.user = 0;
|
|
107
|
-
this.changeDetectorRef.detectChanges();
|
|
108
|
-
}
|
|
109
|
-
catch (e) {
|
|
110
|
-
this.toast.error(e);
|
|
111
|
-
}
|
|
112
|
-
}
|
|
113
|
-
isFromHomeRepo(node) {
|
|
114
|
-
return this.networkApi.isFromHomeRepository(node);
|
|
115
|
-
}
|
|
116
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: NodeRatingComponent, deps: [{ token: i1.Toast }, { token: i2.ConfigService }, { token: i2.NetworkService }, { token: i2.AuthenticationService }, { token: i0.ChangeDetectorRef }, { token: i2.RatingV1Service }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
117
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.12", type: NodeRatingComponent, selector: "es-node-rating", inputs: { node: "node" }, ngImport: i0, template: "<ng-container *ngIf=\"hasPermission && node.type === 'ccm:io' && isFromHomeRepo(node)\">\n <div *ngIf=\"mode === 'likes'\" class=\"likes\">\n <button\n (click)=\"toogleLike()\"\n [disabled]=\"(this.authenticationService.observeLoginInfo() | async)?.isGuest\"\n mat-icon-button\n color=\"primary\"\n matTooltip=\"{{ 'RATING.LIKES' | translate }}\"\n >\n <i [esIcon]=\"'edu-thumb_up' + (!node.rating?.user ? '_off' : '')\"></i>\n </button>\n <span matTooltip=\"{{ 'RATING.COUNT_LIKES' | translate }}\">{{\n node.rating?.overall.count\n }}</span>\n </div>\n <div *ngIf=\"mode === 'stars'\" class=\"stars\" mat-icon-button color=\"primary\">\n <button\n *ngFor=\"let rating of [1, 2, 3, 4, 5]\"\n mat-icon-button\n color=\"primary\"\n class=\"star\"\n (click)=\"setRating(rating)\"\n [disabled]=\"(this.authenticationService.observeLoginInfo() | async)?.isGuest\"\n (focus)=\"hoverStar = rating\"\n (mouseenter)=\"hoverStar = rating\"\n (mouseleave)=\"hoverStar = 0\"\n (blur)=\"hoverStar = 0\"\n [class.star-hover]=\"hoverStar >= rating\"\n >\n <i\n [esIcon]=\"\n 'star' +\n ((hoverStar ? hoverStar >= rating : getPrimaryRating() >= rating) ? '' : '_border')\n \"\n matTooltip=\"{{ 'RATING.STARS_RATE' | translate : { rating: rating } }}\"\n ></i>\n </button>\n <button\n *ngIf=\"!!node.rating?.user\"\n mat-icon-button\n color=\"primary\"\n class=\"delete\"\n matTooltip=\"{{ 'RATING.DELETE_RATING' | translate }}\"\n (click)=\"deleteRating()\"\n [disabled]=\"(this.authenticationService.observeLoginInfo() | async)?.isGuest\"\n >\n <i esIcon=\"clear\"></i>\n </button>\n <span matTooltip=\"{{ 'RATING.COUNT_RATINGS' | translate }}\"\n >({{ node.rating?.overall.count }})</span\n >\n </div>\n</ng-container>\n", styles: [".stars{display:flex;align-items:center}.stars span{padding-left:8px}.likes{display:flex;align-items:center}.mdc-icon-button.mat-primary{color:var(--textLight);display:flex;align-items:center;padding:0}.mdc-icon-button.mat-primary.star,.mdc-icon-button.mat-primary.delete{min-width:unset;width:18px;height:18px}.mdc-icon-button.mat-primary.star i,.mdc-icon-button.mat-primary.delete i{font-size:17px;line-height:1}.mdc-icon-button.mat-primary.star ::ng-deep .mat-mdc-button-touch-target,.mdc-icon-button.mat-primary.delete ::ng-deep .mat-mdc-button-touch-target{display:none}.mdc-icon-button.mat-primary.star.star-hover,.mdc-icon-button.mat-primary.delete.star-hover{color:var(--colorStarActive)}\n"], dependencies: [{ kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.IconDirective, selector: "i[esIcon], i.material-icons", inputs: ["altText", "aria", "esIcon"] }, { kind: "component", type: i5.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "directive", type: i6.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }, { kind: "pipe", type: i7.TranslatePipe, name: "translate" }] }); }
|
|
118
|
-
}
|
|
119
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: NodeRatingComponent, decorators: [{
|
|
120
|
-
type: Component,
|
|
121
|
-
args: [{ selector: 'es-node-rating', template: "<ng-container *ngIf=\"hasPermission && node.type === 'ccm:io' && isFromHomeRepo(node)\">\n <div *ngIf=\"mode === 'likes'\" class=\"likes\">\n <button\n (click)=\"toogleLike()\"\n [disabled]=\"(this.authenticationService.observeLoginInfo() | async)?.isGuest\"\n mat-icon-button\n color=\"primary\"\n matTooltip=\"{{ 'RATING.LIKES' | translate }}\"\n >\n <i [esIcon]=\"'edu-thumb_up' + (!node.rating?.user ? '_off' : '')\"></i>\n </button>\n <span matTooltip=\"{{ 'RATING.COUNT_LIKES' | translate }}\">{{\n node.rating?.overall.count\n }}</span>\n </div>\n <div *ngIf=\"mode === 'stars'\" class=\"stars\" mat-icon-button color=\"primary\">\n <button\n *ngFor=\"let rating of [1, 2, 3, 4, 5]\"\n mat-icon-button\n color=\"primary\"\n class=\"star\"\n (click)=\"setRating(rating)\"\n [disabled]=\"(this.authenticationService.observeLoginInfo() | async)?.isGuest\"\n (focus)=\"hoverStar = rating\"\n (mouseenter)=\"hoverStar = rating\"\n (mouseleave)=\"hoverStar = 0\"\n (blur)=\"hoverStar = 0\"\n [class.star-hover]=\"hoverStar >= rating\"\n >\n <i\n [esIcon]=\"\n 'star' +\n ((hoverStar ? hoverStar >= rating : getPrimaryRating() >= rating) ? '' : '_border')\n \"\n matTooltip=\"{{ 'RATING.STARS_RATE' | translate : { rating: rating } }}\"\n ></i>\n </button>\n <button\n *ngIf=\"!!node.rating?.user\"\n mat-icon-button\n color=\"primary\"\n class=\"delete\"\n matTooltip=\"{{ 'RATING.DELETE_RATING' | translate }}\"\n (click)=\"deleteRating()\"\n [disabled]=\"(this.authenticationService.observeLoginInfo() | async)?.isGuest\"\n >\n <i esIcon=\"clear\"></i>\n </button>\n <span matTooltip=\"{{ 'RATING.COUNT_RATINGS' | translate }}\"\n >({{ node.rating?.overall.count }})</span\n >\n </div>\n</ng-container>\n", styles: [".stars{display:flex;align-items:center}.stars span{padding-left:8px}.likes{display:flex;align-items:center}.mdc-icon-button.mat-primary{color:var(--textLight);display:flex;align-items:center;padding:0}.mdc-icon-button.mat-primary.star,.mdc-icon-button.mat-primary.delete{min-width:unset;width:18px;height:18px}.mdc-icon-button.mat-primary.star i,.mdc-icon-button.mat-primary.delete i{font-size:17px;line-height:1}.mdc-icon-button.mat-primary.star ::ng-deep .mat-mdc-button-touch-target,.mdc-icon-button.mat-primary.delete ::ng-deep .mat-mdc-button-touch-target{display:none}.mdc-icon-button.mat-primary.star.star-hover,.mdc-icon-button.mat-primary.delete.star-hover{color:var(--colorStarActive)}\n"] }]
|
|
122
|
-
}], ctorParameters: () => [{ type: i1.Toast }, { type: i2.ConfigService }, { type: i2.NetworkService }, { type: i2.AuthenticationService }, { type: i0.ChangeDetectorRef }, { type: i2.RatingV1Service }], propDecorators: { node: [{
|
|
123
|
-
type: Input
|
|
124
|
-
}] } });
|
|
125
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm9kZS1yYXRpbmcuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWR1LXNoYXJpbmctdWkvc3JjL2xpYi9ub2RlLWVudHJpZXMvbm9kZS1yYXRpbmcvbm9kZS1yYXRpbmcuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWR1LXNoYXJpbmctdWkvc3JjL2xpYi9ub2RlLWVudHJpZXMvbm9kZS1yYXRpbmcvbm9kZS1yYXRpbmcuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFxQixTQUFTLEVBQUUsS0FBSyxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBQzVFLE9BQU8sRUFJSCxhQUFhLEdBR2hCLE1BQU0scUJBQXFCLENBQUM7QUFFN0IsT0FBTyxFQUFFLElBQUksRUFBYSxNQUFNLGdCQUFnQixDQUFDO0FBQ2pELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQzs7Ozs7Ozs7O0FBT3BELE1BQU0sT0FBTyxtQkFBbUI7SUFLNUIsWUFDVyxLQUFZLEVBQ1osYUFBNEIsRUFDM0IsVUFBMEIsRUFDM0IscUJBQTRDLEVBQzVDLGlCQUFvQyxFQUNwQyxhQUE4QjtRQUw5QixVQUFLLEdBQUwsS0FBSyxDQUFPO1FBQ1osa0JBQWEsR0FBYixhQUFhLENBQWU7UUFDM0IsZUFBVSxHQUFWLFVBQVUsQ0FBZ0I7UUFDM0IsMEJBQXFCLEdBQXJCLHFCQUFxQixDQUF1QjtRQUM1QyxzQkFBaUIsR0FBakIsaUJBQWlCLENBQW1CO1FBQ3BDLGtCQUFhLEdBQWIsYUFBYSxDQUFpQjtJQUN0QyxDQUFDO0lBRUosS0FBSyxDQUFDLFFBQVE7UUFDVixNQUFNLElBQUksQ0FBQyxhQUFhLENBQUMsYUFBYSxFQUFFLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVMsRUFBRSxDQUFDO1FBQ25F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QUFJLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRTthQUN6QixDQUFDO2lCQUNELFNBQVMsRUFBRSxDQUFDO1lBQ2pCLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLDZCQUE2QixFQUFFLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztZQUMxRCxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDakMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLEdBQUcsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUM7WUFDdEQsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxHQUFHLENBQUMsQ0FBQztZQUMxQixJQUFJLENBQUMsaUJBQWlCLENBQUMsYUFBYSxFQUFFLENBQUM7UUFDM0MsQ0FBQztRQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUM7WUFDVCxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUN4QixDQUFDO0lBQ0wsQ0FBQztJQUVELGNBQWMsQ0FBQyxJQUFVO1FBQ3JCLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUN0RCxDQUFDOytHQTdHUSxtQkFBbUI7bUdBQW5CLG1CQUFtQixnRkNsQmhDLGc1REFxREE7OzRGRG5DYSxtQkFBbUI7a0JBTC9CLFNBQVM7K0JBQ0ksZ0JBQWdCO3FPQUtqQixJQUFJO3NCQUFaLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3RvclJlZiwgQ29tcG9uZW50LCBJbnB1dCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICAgIE5vZGUsXG4gICAgQ29uZmlnU2VydmljZSxcbiAgICBBdXRoZW50aWNhdGlvblNlcnZpY2UsXG4gICAgUmVzdENvbnN0YW50cyxcbiAgICBOZXR3b3JrU2VydmljZSxcbiAgICBSYXRpbmdWMVNlcnZpY2UsXG59IGZyb20gJ25neC1lZHUtc2hhcmluZy1hcGknO1xuaW1wb3J0IHsgVG9hc3QgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9hYnN0cmFjdC90b2FzdC5zZXJ2aWNlJztcbmltcG9ydCB7IHRha2UsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IFJlc3RIZWxwZXIgfSBmcm9tICcuLi8uLi91dGlsL3Jlc3QtaGVscGVyJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdlcy1ub2RlLXJhdGluZycsXG4gICAgdGVtcGxhdGVVcmw6ICdub2RlLXJhdGluZy5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJ25vZGUtcmF0aW5nLmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIE5vZGVSYXRpbmdDb21wb25lbnQ8VCBleHRlbmRzIE5vZGU+IGltcGxlbWVudHMgT25Jbml0IHtcbiAgICBASW5wdXQoKSBub2RlOiBUO1xuICAgIG1vZGU6IFJhdGluZ01vZGU7XG4gICAgaGFzUGVybWlzc2lvbjogYm9vbGVhbjtcbiAgICBob3ZlclN0YXI6IG51bWJlcjtcbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHVibGljIHRvYXN0OiBUb2FzdCxcbiAgICAgICAgcHVibGljIGNvbmZpZ1NlcnZpY2U6IENvbmZpZ1NlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgbmV0d29ya0FwaTogTmV0d29ya1NlcnZpY2UsXG4gICAgICAgIHB1YmxpYyBhdXRoZW50aWNhdGlvblNlcnZpY2U6IEF1dGhlbnRpY2F0aW9uU2VydmljZSxcbiAgICAgICAgcHVibGljIGNoYW5nZURldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICAgICAgcHVibGljIHJhdGluZ1NlcnZpY2U6IFJhdGluZ1YxU2VydmljZSxcbiAgICApIHt9XG5cbiAgICBhc3luYyBuZ09uSW5pdCgpIHtcbiAgICAgICAgYXdhaXQgdGhpcy5jb25maWdTZXJ2aWNlLm9ic2VydmVDb25maWcoKS5waXBlKHRha2UoMSkpLnRvUHJvbWlzZSgpO1xuICAgICAgICB0aGlzLm1vZGUgPSB0aGlzLmNvbmZpZ1NlcnZpY2UuaW5zdGFudCgncmF0aW5nLm1vZGUnLCAnbm9uZScpO1xuICAgICAgICB0aGlzLmhhc1Blcm1pc3Npb24gPSBhd2FpdCB0aGlzLmF1dGhlbnRpY2F0aW9uU2VydmljZS5oYXNUb29scGVybWlzc2lvbihcbiAgICAgICAgICAgIFJlc3RDb25zdGFudHMuVE9PTFBFUk1JU1NJT05fUkFURV9SRUFELFxuICAgICAgICApO1xuICAgIH1cblxuICAgIGFzeW5jIHRvb2dsZUxpa2UoKSB7XG4gICAgICAgIGNvbnN0IG5hbWUgPSBSZXN0SGVscGVyLmdldFRpdGxlKHRoaXMubm9kZSk7XG4gICAgICAgIGlmICh0aGlzLm5vZGUucmF0aW5nPy51c2VyKSB7XG4gICAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgICAgIGF3YWl0IHRoaXMucmF0aW5nU2VydmljZVxuICAgICAgICAgICAgICAgICAgICAuZGVsZXRlUmF0aW5nKHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlcG9zaXRvcnk6IHRoaXMubm9kZS5yZWYucmVwbyxcbiAgICAgICAgICAgICAgICAgICAgICAgIG5vZGU6IHRoaXMubm9kZS5yZWYuaWQsXG4gICAgICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgICAgIC50b1Byb21pc2UoKTtcbiAgICAgICAgICAgICAgICB0aGlzLnRvYXN0LnRvYXN0KCdSQVRJTkcuVE9BU1QuTElLRV9SRU1PVkVEJywgeyBuYW1lIH0pO1xuICAgICAgICAgICAgICAgIHRoaXMubm9kZS5yYXRpbmcudXNlciA9IDA7XG4gICAgICAgICAgICAgICAgdGhpcy5ub2RlLnJhdGluZy5vdmVyYWxsLmNvdW50LS07XG4gICAgICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgICAgICAgICAgdGhpcy50b2FzdC5lcnJvcihlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgICAgYXdhaXQgdGhpcy5yYXRpbmdTZXJ2aWNlXG4gICAgICAgICAgICAgICAgICAgIC5hZGRPclVwZGF0ZVJhdGluZyh7XG4gICAgICAgICAgICAgICAgICAgICAgICByZXBvc2l0b3J5OiB0aGlzLm5vZGUucmVmLnJlcG8sXG4gICAgICAgICAgICAgICAgICAgICAgICBub2RlOiB0aGlzLm5vZGUucmVmLmlkLFxuICAgICAgICAgICAgICAgICAgICAgICAgcmF0aW5nOiA1LFxuICAgICAgICAgICAgICAgICAgICAgICAgYm9keTogbnVsbCxcbiAgICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAgICAgLnRvUHJvbWlzZSgpO1xuICAgICAgICAgICAgICAgIHRoaXMudG9hc3QudG9hc3QoJ1JBVElORy5UT0FTVC5MSUtFRCcsIHsgbmFtZSB9KTtcbiAgICAgICAgICAgICAgICB0aGlzLm5vZGUucmF0aW5nLnVzZXIgPSA1O1xuICAgICAgICAgICAgICAgIHRoaXMubm9kZS5yYXRpbmcub3ZlcmFsbC5jb3VudCsrO1xuICAgICAgICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICAgICAgICAgIHRoaXMudG9hc3QuZXJyb3IoZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5jaGFuZ2VEZXRlY3RvclJlZi5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgfVxuXG4gICAgZ2V0UHJpbWFyeVJhdGluZygpIHtcbiAgICAgICAgaWYgKCF0aGlzLm5vZGUucmF0aW5nKSB7XG4gICAgICAgICAgICByZXR1cm4gMDtcbiAgICAgICAgfVxuICAgICAgICBpZiAodGhpcy5ub2RlLnJhdGluZy51c2VyKSB7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy5ub2RlLnJhdGluZy51c2VyO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB0aGlzLm5vZGUucmF0aW5nLm92ZXJhbGwuc3VtIC8gdGhpcy5ub2RlLnJhdGluZy5vdmVyYWxsLmNvdW50O1xuICAgIH1cblxuICAgIGFzeW5jIHNldFJhdGluZyhyYXRpbmc6IG51bWJlcikge1xuICAgICAgICBjb25zdCBuYW1lID0gUmVzdEhlbHBlci5nZXRUaXRsZSh0aGlzLm5vZGUpO1xuICAgICAgICB0cnkge1xuICAgICAgICAgICAgYXdhaXQgdGhpcy5yYXRpbmdTZXJ2aWNlXG4gICAgICAgICAgICAgICAgLmFkZE9yVXBkYXRlUmF0aW5nKHtcbiAgICAgICAgICAgICAgICAgICAgcmVwb3NpdG9yeTogdGhpcy5ub2RlLnJlZi5yZXBvLFxuICAgICAgICAgICAgICAgICAgICBub2RlOiB0aGlzLm5vZGUucmVmLmlkLFxuICAgICAgICAgICAgICAgICAgICByYXRpbmcsXG4gICAgICAgICAgICAgICAgICAgIGJvZHk6IG51bGwsXG4gICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAudG9Qcm9taXNlKCk7XG4gICAgICAgICAgICB0aGlzLnRvYXN0LnRvYXN0KCdSQVRJTkcuVE9BU1QuUkFURUQnLCB7IG5hbWUsIHJhdGluZyB9KTtcbiAgICAgICAgICAgIHRoaXMubm9kZS5yYXRpbmcub3ZlcmFsbC5jb3VudCArPSB0aGlzLm5vZGUucmF0aW5nLnVzZXIgPyAwIDogMTtcbiAgICAgICAgICAgIHRoaXMubm9kZS5yYXRpbmcudXNlciA9IHJhdGluZztcbiAgICAgICAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3JSZWYuZGV0ZWN0Q2hhbmdlcygpO1xuICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgICAgICB0aGlzLnRvYXN0LmVycm9yKGUpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgYXN5bmMgZGVsZXRlUmF0aW5nKCkge1xuICAgICAgICBjb25zdCBuYW1lID0gUmVzdEhlbHBlci5nZXRUaXRsZSh0aGlzLm5vZGUpO1xuICAgICAgICB0cnkge1xuICAgICAgICAgICAgYXdhaXQgdGhpcy5yYXRpbmdTZXJ2aWNlXG4gICAgICAgICAgICAgICAgLmRlbGV0ZVJhdGluZyh7XG4gICAgICAgICAgICAgICAgICAgIHJlcG9zaXRvcnk6IHRoaXMubm9kZS5yZWYucmVwbyxcbiAgICAgICAgICAgICAgICAgICAgbm9kZTogdGhpcy5ub2RlLnJlZi5pZCxcbiAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgIC50b1Byb21pc2UoKTtcbiAgICAgICAgICAgIHRoaXMudG9hc3QudG9hc3QoJ1JBVElORy5UT0FTVC5SQVRJTkdfUkVNT1ZFRCcsIHsgbmFtZSB9KTtcbiAgICAgICAgICAgIHRoaXMubm9kZS5yYXRpbmcub3ZlcmFsbC5jb3VudC0tO1xuICAgICAgICAgICAgdGhpcy5ub2RlLnJhdGluZy5vdmVyYWxsLnN1bSAtPSB0aGlzLm5vZGUucmF0aW5nLnVzZXI7XG4gICAgICAgICAgICB0aGlzLm5vZGUucmF0aW5nLnVzZXIgPSAwO1xuICAgICAgICAgICAgdGhpcy5jaGFuZ2VEZXRlY3RvclJlZi5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgICAgIHRoaXMudG9hc3QuZXJyb3IoZSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBpc0Zyb21Ib21lUmVwbyhub2RlOiBOb2RlKSB7XG4gICAgICAgIHJldHVybiB0aGlzLm5ldHdvcmtBcGkuaXNGcm9tSG9tZVJlcG9zaXRvcnkobm9kZSk7XG4gICAgfVxufVxuZXhwb3J0IHR5cGUgUmF0aW5nTW9kZSA9ICdub25lJyB8ICdsaWtlcycgfCAnc3RhcnMnO1xuIiwiPG5nLWNvbnRhaW5lciAqbmdJZj1cImhhc1Blcm1pc3Npb24gJiYgbm9kZS50eXBlID09PSAnY2NtOmlvJyAmJiBpc0Zyb21Ib21lUmVwbyhub2RlKVwiPlxuICA8ZGl2ICpuZ0lmPVwibW9kZSA9PT0gJ2xpa2VzJ1wiIGNsYXNzPVwibGlrZXNcIj5cbiAgICA8YnV0dG9uXG4gICAgICAoY2xpY2spPVwidG9vZ2xlTGlrZSgpXCJcbiAgICAgIFtkaXNhYmxlZF09XCIodGhpcy5hdXRoZW50aWNhdGlvblNlcnZpY2Uub2JzZXJ2ZUxvZ2luSW5mbygpIHwgYXN5bmMpPy5pc0d1ZXN0XCJcbiAgICAgIG1hdC1pY29uLWJ1dHRvblxuICAgICAgY29sb3I9XCJwcmltYXJ5XCJcbiAgICAgIG1hdFRvb2x0aXA9XCJ7eyAnUkFUSU5HLkxJS0VTJyB8IHRyYW5zbGF0ZSB9fVwiXG4gICAgPlxuICAgICAgPGkgW2VzSWNvbl09XCInZWR1LXRodW1iX3VwJyArICghbm9kZS5yYXRpbmc/LnVzZXIgPyAnX29mZicgOiAnJylcIj48L2k+XG4gICAgPC9idXR0b24+XG4gICAgPHNwYW4gbWF0VG9vbHRpcD1cInt7ICdSQVRJTkcuQ09VTlRfTElLRVMnIHwgdHJhbnNsYXRlIH19XCI+e3tcbiAgICAgIG5vZGUucmF0aW5nPy5vdmVyYWxsLmNvdW50XG4gICAgfX08L3NwYW4+XG4gIDwvZGl2PlxuICA8ZGl2ICpuZ0lmPVwibW9kZSA9PT0gJ3N0YXJzJ1wiIGNsYXNzPVwic3RhcnNcIiBtYXQtaWNvbi1idXR0b24gY29sb3I9XCJwcmltYXJ5XCI+XG4gICAgPGJ1dHRvblxuICAgICAgKm5nRm9yPVwibGV0IHJhdGluZyBvZiBbMSwgMiwgMywgNCwgNV1cIlxuICAgICAgbWF0LWljb24tYnV0dG9uXG4gICAgICBjb2xvcj1cInByaW1hcnlcIlxuICAgICAgY2xhc3M9XCJzdGFyXCJcbiAgICAgIChjbGljayk9XCJzZXRSYXRpbmcocmF0aW5nKVwiXG4gICAgICBbZGlzYWJsZWRdPVwiKHRoaXMuYXV0aGVudGljYXRpb25TZXJ2aWNlLm9ic2VydmVMb2dpbkluZm8oKSB8IGFzeW5jKT8uaXNHdWVzdFwiXG4gICAgICAoZm9jdXMpPVwiaG92ZXJTdGFyID0gcmF0aW5nXCJcbiAgICAgIChtb3VzZWVudGVyKT1cImhvdmVyU3RhciA9IHJhdGluZ1wiXG4gICAgICAobW91c2VsZWF2ZSk9XCJob3ZlclN0YXIgPSAwXCJcbiAgICAgIChibHVyKT1cImhvdmVyU3RhciA9IDBcIlxuICAgICAgW2NsYXNzLnN0YXItaG92ZXJdPVwiaG92ZXJTdGFyID49IHJhdGluZ1wiXG4gICAgPlxuICAgICAgPGlcbiAgICAgICAgW2VzSWNvbl09XCJcbiAgICAgICAgICAnc3RhcicgK1xuICAgICAgICAgICgoaG92ZXJTdGFyID8gaG92ZXJTdGFyID49IHJhdGluZyA6IGdldFByaW1hcnlSYXRpbmcoKSA+PSByYXRpbmcpID8gJycgOiAnX2JvcmRlcicpXG4gICAgICAgIFwiXG4gICAgICAgIG1hdFRvb2x0aXA9XCJ7eyAnUkFUSU5HLlNUQVJTX1JBVEUnIHwgdHJhbnNsYXRlIDogeyByYXRpbmc6IHJhdGluZyB9IH19XCJcbiAgICAgID48L2k+XG4gICAgPC9idXR0b24+XG4gICAgPGJ1dHRvblxuICAgICAgKm5nSWY9XCIhIW5vZGUucmF0aW5nPy51c2VyXCJcbiAgICAgIG1hdC1pY29uLWJ1dHRvblxuICAgICAgY29sb3I9XCJwcmltYXJ5XCJcbiAgICAgIGNsYXNzPVwiZGVsZXRlXCJcbiAgICAgIG1hdFRvb2x0aXA9XCJ7eyAnUkFUSU5HLkRFTEVURV9SQVRJTkcnIHwgdHJhbnNsYXRlIH19XCJcbiAgICAgIChjbGljayk9XCJkZWxldGVSYXRpbmcoKVwiXG4gICAgICBbZGlzYWJsZWRdPVwiKHRoaXMuYXV0aGVudGljYXRpb25TZXJ2aWNlLm9ic2VydmVMb2dpbkluZm8oKSB8IGFzeW5jKT8uaXNHdWVzdFwiXG4gICAgPlxuICAgICAgPGkgZXNJY29uPVwiY2xlYXJcIj48L2k+XG4gICAgPC9idXR0b24+XG4gICAgPHNwYW4gbWF0VG9vbHRpcD1cInt7ICdSQVRJTkcuQ09VTlRfUkFUSU5HUycgfCB0cmFuc2xhdGUgfX1cIlxuICAgICAgPih7eyBub2RlLnJhdGluZz8ub3ZlcmFsbC5jb3VudCB9fSk8L3NwYW5cbiAgICA+XG4gIDwvZGl2PlxuPC9uZy1jb250YWluZXI+XG4iXX0=
|
|
@@ -1,48 +0,0 @@
|
|
|
1
|
-
import { Component, HostBinding, Input, Optional } from '@angular/core';
|
|
2
|
-
import { ClickSource } from '../entries-model';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
import * as i1 from "../../services/node-entries.service";
|
|
5
|
-
import * as i2 from "@angular/common";
|
|
6
|
-
import * as i3 from "../../directives/icon.directive";
|
|
7
|
-
import * as i4 from "@angular/material/tooltip";
|
|
8
|
-
import * as i5 from "@ngx-translate/core";
|
|
9
|
-
export class NodeStatsBadgesComponent {
|
|
10
|
-
get node() {
|
|
11
|
-
return this._node;
|
|
12
|
-
}
|
|
13
|
-
set node(node) {
|
|
14
|
-
this._node = node;
|
|
15
|
-
this.childObjectCount = this.getChildObjectCount(node);
|
|
16
|
-
}
|
|
17
|
-
constructor(entriesService) {
|
|
18
|
-
this.entriesService = entriesService;
|
|
19
|
-
this.ClickSource = ClickSource;
|
|
20
|
-
this.childObjectCount = 0;
|
|
21
|
-
this.backgroundStyle = 'lighten';
|
|
22
|
-
}
|
|
23
|
-
getChildObjectCount(node) {
|
|
24
|
-
const value = node.properties?.['virtual:childobjectcount']?.[0];
|
|
25
|
-
if (value) {
|
|
26
|
-
return parseInt(value);
|
|
27
|
-
}
|
|
28
|
-
else {
|
|
29
|
-
return 0;
|
|
30
|
-
}
|
|
31
|
-
}
|
|
32
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: NodeStatsBadgesComponent, deps: [{ token: i1.NodeEntriesService, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
33
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.12", type: NodeStatsBadgesComponent, selector: "es-node-stats-badges", inputs: { node: "node", backgroundStyle: "backgroundStyle" }, host: { properties: { "attr.backgroundStyle": "this.backgroundStyle" } }, ngImport: i0, template: "<!--\n <div\n *ngIf=\"node.aspects?.includes('ccm:published')\"\n class=\"card-top-bar-published-copy\"\n >\n <div class=\"node-published-copy\">\n <i\n esIcon=\"content_copy\"\n [matTooltip]=\"'PUBLISHED_COPY_TOOLTIP' | translate\"\n ></i>\n </div>\n </div>\n -->\n<div class=\"card-top-bar-comments\">\n <div\n class=\"node-comments\"\n *ngIf=\"node.type === 'ccm:io'\"\n (click)=\"\n entriesService?.onClicked({\n event: $event,\n element: node,\n source: ClickSource.Comments\n })\n \"\n [matTooltip]=\"('COMMENTS_MULTIPLE' | translate) + ': ' + node.commentCount\"\n >\n <i esIcon=\"comment\"></i>\n <span>{{ node.commentCount }}</span>\n </div>\n</div>\n<div class=\"card-top-bar-childobjects\" *ngIf=\"childObjectCount > 0\">\n <div\n class=\"childobject-count\"\n matTooltip=\"{{ 'CHILDOBJECT_COUNT' | translate : { count: childObjectCount + 1 } }}\"\n >\n <span>{{ childObjectCount + 1 }}</span\n ><i esIcon=\"filter_none\"></i>\n </div>\n</div>\n", styles: [":host{display:flex;gap:15px}.card-top-bar-comments>div,.card-top-bar-published-copy>div,.card-top-bar-childobjects>div{border-radius:15px;display:inline-flex;align-items:center;min-width:35px;min-height:22px;justify-content:center;cursor:default;-webkit-user-select:none;user-select:none;padding:2px 8px}:host[backgroundStyle=lighten] .card-top-bar-comments>div,:host[backgroundStyle=lighten] .card-top-bar-published-copy>div,:host[backgroundStyle=lighten] .card-top-bar-childobjects>div{background-color:#ffffffbf}:host[backgroundStyle=darken] .card-top-bar-comments>div,:host[backgroundStyle=darken] .card-top-bar-published-copy>div,:host[backgroundStyle=darken] .card-top-bar-childobjects>div{background-color:#0003}.card-top-bar-comments>div.childobject-count>i,.card-top-bar-published-copy>div.childobject-count>i,.card-top-bar-childobjects>div.childobject-count>i{font-size:13px;margin-left:4px}.card-top-bar-comments>div.node-published-copy,.card-top-bar-published-copy>div.node-published-copy,.card-top-bar-childobjects>div.node-published-copy{min-width:auto}.card-top-bar-comments>div.node-published-copy>i,.card-top-bar-published-copy>div.node-published-copy>i,.card-top-bar-childobjects>div.node-published-copy>i{font-size:13px}.card-top-bar-comments>div.node-comments>i,.card-top-bar-published-copy>div.node-comments>i,.card-top-bar-childobjects>div.node-comments>i{font-size:13px;margin-right:4px}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.IconDirective, selector: "i[esIcon], i.material-icons", inputs: ["altText", "aria", "esIcon"] }, { kind: "directive", type: i4.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "pipe", type: i5.TranslatePipe, name: "translate" }] }); }
|
|
34
|
-
}
|
|
35
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: NodeStatsBadgesComponent, decorators: [{
|
|
36
|
-
type: Component,
|
|
37
|
-
args: [{ selector: 'es-node-stats-badges', template: "<!--\n <div\n *ngIf=\"node.aspects?.includes('ccm:published')\"\n class=\"card-top-bar-published-copy\"\n >\n <div class=\"node-published-copy\">\n <i\n esIcon=\"content_copy\"\n [matTooltip]=\"'PUBLISHED_COPY_TOOLTIP' | translate\"\n ></i>\n </div>\n </div>\n -->\n<div class=\"card-top-bar-comments\">\n <div\n class=\"node-comments\"\n *ngIf=\"node.type === 'ccm:io'\"\n (click)=\"\n entriesService?.onClicked({\n event: $event,\n element: node,\n source: ClickSource.Comments\n })\n \"\n [matTooltip]=\"('COMMENTS_MULTIPLE' | translate) + ': ' + node.commentCount\"\n >\n <i esIcon=\"comment\"></i>\n <span>{{ node.commentCount }}</span>\n </div>\n</div>\n<div class=\"card-top-bar-childobjects\" *ngIf=\"childObjectCount > 0\">\n <div\n class=\"childobject-count\"\n matTooltip=\"{{ 'CHILDOBJECT_COUNT' | translate : { count: childObjectCount + 1 } }}\"\n >\n <span>{{ childObjectCount + 1 }}</span\n ><i esIcon=\"filter_none\"></i>\n </div>\n</div>\n", styles: [":host{display:flex;gap:15px}.card-top-bar-comments>div,.card-top-bar-published-copy>div,.card-top-bar-childobjects>div{border-radius:15px;display:inline-flex;align-items:center;min-width:35px;min-height:22px;justify-content:center;cursor:default;-webkit-user-select:none;user-select:none;padding:2px 8px}:host[backgroundStyle=lighten] .card-top-bar-comments>div,:host[backgroundStyle=lighten] .card-top-bar-published-copy>div,:host[backgroundStyle=lighten] .card-top-bar-childobjects>div{background-color:#ffffffbf}:host[backgroundStyle=darken] .card-top-bar-comments>div,:host[backgroundStyle=darken] .card-top-bar-published-copy>div,:host[backgroundStyle=darken] .card-top-bar-childobjects>div{background-color:#0003}.card-top-bar-comments>div.childobject-count>i,.card-top-bar-published-copy>div.childobject-count>i,.card-top-bar-childobjects>div.childobject-count>i{font-size:13px;margin-left:4px}.card-top-bar-comments>div.node-published-copy,.card-top-bar-published-copy>div.node-published-copy,.card-top-bar-childobjects>div.node-published-copy{min-width:auto}.card-top-bar-comments>div.node-published-copy>i,.card-top-bar-published-copy>div.node-published-copy>i,.card-top-bar-childobjects>div.node-published-copy>i{font-size:13px}.card-top-bar-comments>div.node-comments>i,.card-top-bar-published-copy>div.node-comments>i,.card-top-bar-childobjects>div.node-comments>i{font-size:13px;margin-right:4px}\n"] }]
|
|
38
|
-
}], ctorParameters: () => [{ type: i1.NodeEntriesService, decorators: [{
|
|
39
|
-
type: Optional
|
|
40
|
-
}] }], propDecorators: { node: [{
|
|
41
|
-
type: Input
|
|
42
|
-
}], backgroundStyle: [{
|
|
43
|
-
type: HostBinding,
|
|
44
|
-
args: ['attr.backgroundStyle']
|
|
45
|
-
}, {
|
|
46
|
-
type: Input
|
|
47
|
-
}] } });
|
|
48
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm9kZS1zdGF0cy1iYWRnZXMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWR1LXNoYXJpbmctdWkvc3JjL2xpYi9ub2RlLWVudHJpZXMvbm9kZS1zdGF0cy1iYWRnZXMvbm9kZS1zdGF0cy1iYWRnZXMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWR1LXNoYXJpbmctdWkvc3JjL2xpYi9ub2RlLWVudHJpZXMvbm9kZS1zdGF0cy1iYWRnZXMvbm9kZS1zdGF0cy1iYWRnZXMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV4RSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7Ozs7Ozs7QUFRL0MsTUFBTSxPQUFPLHdCQUF3QjtJQU1qQyxJQUNJLElBQUk7UUFDSixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUM7SUFDdEIsQ0FBQztJQUNELElBQUksSUFBSSxDQUFDLElBQVU7UUFDZixJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQztRQUNsQixJQUFJLENBQUMsZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLG1CQUFtQixDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzNELENBQUM7SUFNRCxZQUVXLGNBQXdDO1FBQXhDLG1CQUFjLEdBQWQsY0FBYyxDQUEwQjtRQXBCMUMsZ0JBQVcsR0FBRyxXQUFXLENBQUM7UUFFbkMscUJBQWdCLEdBQUcsQ0FBQyxDQUFDO1FBY3JCLG9CQUFlLEdBQXlCLFNBQVMsQ0FBQztJQUsvQyxDQUFDO0lBRUksbUJBQW1CLENBQUMsSUFBVTtRQUNsQyxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUMsMEJBQTBCLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ2pFLElBQUksS0FBSyxFQUFFLENBQUM7WUFDUixPQUFPLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUMzQixDQUFDO2FBQU0sQ0FBQztZQUNKLE9BQU8sQ0FBQyxDQUFDO1FBQ2IsQ0FBQztJQUNMLENBQUM7K0dBL0JRLHdCQUF3QjttR0FBeEIsd0JBQXdCLG9NQ1ZyQyxva0NBdUNBOzs0RkQ3QmEsd0JBQXdCO2tCQUxwQyxTQUFTOytCQUNJLHNCQUFzQjs7MEJBd0IzQixRQUFRO3lDQWJULElBQUk7c0JBRFAsS0FBSztnQkFXTixlQUFlO3NCQUZkLFdBQVc7dUJBQUMsc0JBQXNCOztzQkFDbEMsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSG9zdEJpbmRpbmcsIElucHV0LCBPcHRpb25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTm9kZSB9IGZyb20gJ25neC1lZHUtc2hhcmluZy1hcGknO1xuaW1wb3J0IHsgQ2xpY2tTb3VyY2UgfSBmcm9tICcuLi9lbnRyaWVzLW1vZGVsJztcbmltcG9ydCB7IE5vZGVFbnRyaWVzU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL25vZGUtZW50cmllcy5zZXJ2aWNlJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdlcy1ub2RlLXN0YXRzLWJhZGdlcycsXG4gICAgdGVtcGxhdGVVcmw6ICcuL25vZGUtc3RhdHMtYmFkZ2VzLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9ub2RlLXN0YXRzLWJhZGdlcy5jb21wb25lbnQuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBOb2RlU3RhdHNCYWRnZXNDb21wb25lbnQge1xuICAgIHJlYWRvbmx5IENsaWNrU291cmNlID0gQ2xpY2tTb3VyY2U7XG5cbiAgICBjaGlsZE9iamVjdENvdW50ID0gMDtcblxuICAgIHByaXZhdGUgX25vZGU6IE5vZGU7XG4gICAgQElucHV0KClcbiAgICBnZXQgbm9kZSgpOiBOb2RlIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX25vZGU7XG4gICAgfVxuICAgIHNldCBub2RlKG5vZGU6IE5vZGUpIHtcbiAgICAgICAgdGhpcy5fbm9kZSA9IG5vZGU7XG4gICAgICAgIHRoaXMuY2hpbGRPYmplY3RDb3VudCA9IHRoaXMuZ2V0Q2hpbGRPYmplY3RDb3VudChub2RlKTtcbiAgICB9XG5cbiAgICBASG9zdEJpbmRpbmcoJ2F0dHIuYmFja2dyb3VuZFN0eWxlJylcbiAgICBASW5wdXQoKVxuICAgIGJhY2tncm91bmRTdHlsZTogJ2RhcmtlbicgfCAnbGlnaHRlbicgPSAnbGlnaHRlbic7XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgQE9wdGlvbmFsKClcbiAgICAgICAgcHVibGljIGVudHJpZXNTZXJ2aWNlOiBOb2RlRW50cmllc1NlcnZpY2U8Tm9kZT4sXG4gICAgKSB7fVxuXG4gICAgcHJpdmF0ZSBnZXRDaGlsZE9iamVjdENvdW50KG5vZGU6IE5vZGUpOiBudW1iZXIge1xuICAgICAgICBjb25zdCB2YWx1ZSA9IG5vZGUucHJvcGVydGllcz8uWyd2aXJ0dWFsOmNoaWxkb2JqZWN0Y291bnQnXT8uWzBdO1xuICAgICAgICBpZiAodmFsdWUpIHtcbiAgICAgICAgICAgIHJldHVybiBwYXJzZUludCh2YWx1ZSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICByZXR1cm4gMDtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIjwhLS1cbiAgICA8ZGl2XG4gICAgICAqbmdJZj1cIm5vZGUuYXNwZWN0cz8uaW5jbHVkZXMoJ2NjbTpwdWJsaXNoZWQnKVwiXG4gICAgICBjbGFzcz1cImNhcmQtdG9wLWJhci1wdWJsaXNoZWQtY29weVwiXG4gICAgPlxuICAgICAgPGRpdiBjbGFzcz1cIm5vZGUtcHVibGlzaGVkLWNvcHlcIj5cbiAgICAgICAgPGlcbiAgICAgICAgICBlc0ljb249XCJjb250ZW50X2NvcHlcIlxuICAgICAgICAgIFttYXRUb29sdGlwXT1cIidQVUJMSVNIRURfQ09QWV9UT09MVElQJyB8IHRyYW5zbGF0ZVwiXG4gICAgICAgID48L2k+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgICAtLT5cbjxkaXYgY2xhc3M9XCJjYXJkLXRvcC1iYXItY29tbWVudHNcIj5cbiAgPGRpdlxuICAgIGNsYXNzPVwibm9kZS1jb21tZW50c1wiXG4gICAgKm5nSWY9XCJub2RlLnR5cGUgPT09ICdjY206aW8nXCJcbiAgICAoY2xpY2spPVwiXG4gICAgICBlbnRyaWVzU2VydmljZT8ub25DbGlja2VkKHtcbiAgICAgICAgZXZlbnQ6ICRldmVudCxcbiAgICAgICAgZWxlbWVudDogbm9kZSxcbiAgICAgICAgc291cmNlOiBDbGlja1NvdXJjZS5Db21tZW50c1xuICAgICAgfSlcbiAgICBcIlxuICAgIFttYXRUb29sdGlwXT1cIignQ09NTUVOVFNfTVVMVElQTEUnIHwgdHJhbnNsYXRlKSArICc6ICcgKyBub2RlLmNvbW1lbnRDb3VudFwiXG4gID5cbiAgICA8aSBlc0ljb249XCJjb21tZW50XCI+PC9pPlxuICAgIDxzcGFuPnt7IG5vZGUuY29tbWVudENvdW50IH19PC9zcGFuPlxuICA8L2Rpdj5cbjwvZGl2PlxuPGRpdiBjbGFzcz1cImNhcmQtdG9wLWJhci1jaGlsZG9iamVjdHNcIiAqbmdJZj1cImNoaWxkT2JqZWN0Q291bnQgPiAwXCI+XG4gIDxkaXZcbiAgICBjbGFzcz1cImNoaWxkb2JqZWN0LWNvdW50XCJcbiAgICBtYXRUb29sdGlwPVwie3sgJ0NISUxET0JKRUNUX0NPVU5UJyB8IHRyYW5zbGF0ZSA6IHsgY291bnQ6IGNoaWxkT2JqZWN0Q291bnQgKyAxIH0gfX1cIlxuICA+XG4gICAgPHNwYW4+e3sgY2hpbGRPYmplY3RDb3VudCArIDEgfX08L3NwYW5cbiAgICA+PGkgZXNJY29uPVwiZmlsdGVyX25vbmVcIj48L2k+XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=
|
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
import { Component, Input } from '@angular/core';
|
|
2
|
-
import { CustomFieldSpecialType } from '../node-entries-global.service';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
import * as i1 from "../../services/node-helper.service";
|
|
5
|
-
import * as i2 from "../node-entries-global.service";
|
|
6
|
-
import * as i3 from "@angular/common";
|
|
7
|
-
import * as i4 from "../../directives/icon.directive";
|
|
8
|
-
import * as i5 from "@angular/material/tooltip";
|
|
9
|
-
import * as i6 from "../../pipes/node-icon.pipe";
|
|
10
|
-
import * as i7 from "@ngx-translate/core";
|
|
11
|
-
/**
|
|
12
|
-
* A small circular badge that depicts the node's type.
|
|
13
|
-
*
|
|
14
|
-
* To be used in the top bar of a card or similar places.
|
|
15
|
-
*/
|
|
16
|
-
export class NodeTypeBadgeComponent {
|
|
17
|
-
constructor(nodeHelper, nodeEntriesGlobalService) {
|
|
18
|
-
this.nodeHelper = nodeHelper;
|
|
19
|
-
this.nodeEntriesGlobalService = nodeEntriesGlobalService;
|
|
20
|
-
}
|
|
21
|
-
ngOnChanges() {
|
|
22
|
-
this.isCollection = this.nodeHelper.isNodeCollection(this.node);
|
|
23
|
-
}
|
|
24
|
-
getCustomTemplate() {
|
|
25
|
-
return this.nodeEntriesGlobalService.getCustomFieldTemplate({ type: 'NODE', name: CustomFieldSpecialType.type }, this.node);
|
|
26
|
-
}
|
|
27
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: NodeTypeBadgeComponent, deps: [{ token: i1.NodeHelperService }, { token: i2.NodeEntriesGlobalService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
28
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.12", type: NodeTypeBadgeComponent, selector: "es-node-type-badge", inputs: { node: "node" }, usesOnChanges: true, ngImport: i0, template: "<ng-container *ngIf=\"isCollection\">\n <i\n [matTooltip]=\"\n 'COLLECTION.SCOPE.' + nodeHelper.getCollectionScopeInfo($any(node)).scopeName | translate\n \"\n [altText]=\"\n 'COLLECTION.SCOPE.' + nodeHelper.getCollectionScopeInfo($any(node)).scopeName | translate\n \"\n [esIcon]=\"nodeHelper.getCollectionScopeInfo($any(node)).icon\"\n ></i>\n</ng-container>\n<ng-container *ngIf=\"!isCollection\">\n <ng-container *ngIf=\"getCustomTemplate() as ref\">\n <ng-container *ngTemplateOutlet=\"ref; context: { node: this.node }\"></ng-container>\n </ng-container>\n <ng-container *ngIf=\"!getCustomTemplate()\">\n <img\n [src]=\"node | esNodeIcon | async\"\n [alt]=\"\n node.mediatype\n ? ('NODE.mediatype' | translate) + ': ' + ('MEDIATYPE.' + node.mediatype | translate)\n : ''\n \"\n [matTooltip]=\"\n node.mediatype\n ? ('NODE.mediatype' | translate) + ': ' + ('MEDIATYPE.' + node.mediatype | translate)\n : ''\n \"\n />\n </ng-container>\n</ng-container>\n", styles: [":host{display:flex;align-items:center;justify-content:center;-webkit-user-select:none;user-select:none;border-radius:50%;background-color:#fff;padding:5px;position:relative;z-index:1;box-shadow:0 0 5px #0000004d}:host i{font-size:18px;color:#333}:host img{width:18px;height:18px}\n"], dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i4.IconDirective, selector: "i[esIcon], i.material-icons", inputs: ["altText", "aria", "esIcon"] }, { kind: "directive", type: i5.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }, { kind: "pipe", type: i6.NodeIconPipe, name: "esNodeIcon" }, { kind: "pipe", type: i7.TranslatePipe, name: "translate" }] }); }
|
|
29
|
-
}
|
|
30
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: NodeTypeBadgeComponent, decorators: [{
|
|
31
|
-
type: Component,
|
|
32
|
-
args: [{ selector: 'es-node-type-badge', template: "<ng-container *ngIf=\"isCollection\">\n <i\n [matTooltip]=\"\n 'COLLECTION.SCOPE.' + nodeHelper.getCollectionScopeInfo($any(node)).scopeName | translate\n \"\n [altText]=\"\n 'COLLECTION.SCOPE.' + nodeHelper.getCollectionScopeInfo($any(node)).scopeName | translate\n \"\n [esIcon]=\"nodeHelper.getCollectionScopeInfo($any(node)).icon\"\n ></i>\n</ng-container>\n<ng-container *ngIf=\"!isCollection\">\n <ng-container *ngIf=\"getCustomTemplate() as ref\">\n <ng-container *ngTemplateOutlet=\"ref; context: { node: this.node }\"></ng-container>\n </ng-container>\n <ng-container *ngIf=\"!getCustomTemplate()\">\n <img\n [src]=\"node | esNodeIcon | async\"\n [alt]=\"\n node.mediatype\n ? ('NODE.mediatype' | translate) + ': ' + ('MEDIATYPE.' + node.mediatype | translate)\n : ''\n \"\n [matTooltip]=\"\n node.mediatype\n ? ('NODE.mediatype' | translate) + ': ' + ('MEDIATYPE.' + node.mediatype | translate)\n : ''\n \"\n />\n </ng-container>\n</ng-container>\n", styles: [":host{display:flex;align-items:center;justify-content:center;-webkit-user-select:none;user-select:none;border-radius:50%;background-color:#fff;padding:5px;position:relative;z-index:1;box-shadow:0 0 5px #0000004d}:host i{font-size:18px;color:#333}:host img{width:18px;height:18px}\n"] }]
|
|
33
|
-
}], ctorParameters: () => [{ type: i1.NodeHelperService }, { type: i2.NodeEntriesGlobalService }], propDecorators: { node: [{
|
|
34
|
-
type: Input
|
|
35
|
-
}] } });
|
|
36
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm9kZS10eXBlLWJhZGdlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VkdS1zaGFyaW5nLXVpL3NyYy9saWIvbm9kZS1lbnRyaWVzL25vZGUtdHlwZS1iYWRnZS9ub2RlLXR5cGUtYmFkZ2UuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWR1LXNoYXJpbmctdWkvc3JjL2xpYi9ub2RlLWVudHJpZXMvbm9kZS10eXBlLWJhZGdlL25vZGUtdHlwZS1iYWRnZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBYSxNQUFNLGVBQWUsQ0FBQztBQUU1RCxPQUFPLEVBQUUsc0JBQXNCLEVBQTRCLE1BQU0sZ0NBQWdDLENBQUM7Ozs7Ozs7OztBQUdsRzs7OztHQUlHO0FBTUgsTUFBTSxPQUFPLHNCQUFzQjtJQUsvQixZQUNXLFVBQTZCLEVBQzVCLHdCQUFrRDtRQURuRCxlQUFVLEdBQVYsVUFBVSxDQUFtQjtRQUM1Qiw2QkFBd0IsR0FBeEIsd0JBQXdCLENBQTBCO0lBQzNELENBQUM7SUFFSixXQUFXO1FBQ1AsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNwRSxDQUFDO0lBRUQsaUJBQWlCO1FBQ2IsT0FBTyxJQUFJLENBQUMsd0JBQXdCLENBQUMsc0JBQXNCLENBQ3ZELEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsc0JBQXNCLENBQUMsSUFBSSxFQUFFLEVBQ25ELElBQUksQ0FBQyxJQUFJLENBQ1osQ0FBQztJQUNOLENBQUM7K0dBbkJRLHNCQUFzQjttR0FBdEIsc0JBQXNCLHlHQ2ZuQyxtakNBK0JBOzs0RkRoQmEsc0JBQXNCO2tCQUxsQyxTQUFTOytCQUNJLG9CQUFvQjs2SEFLckIsSUFBSTtzQkFBWixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgT25DaGFuZ2VzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOb2RlIH0gZnJvbSAnbmd4LWVkdS1zaGFyaW5nLWFwaSc7XG5pbXBvcnQgeyBDdXN0b21GaWVsZFNwZWNpYWxUeXBlLCBOb2RlRW50cmllc0dsb2JhbFNlcnZpY2UgfSBmcm9tICcuLi9ub2RlLWVudHJpZXMtZ2xvYmFsLnNlcnZpY2UnO1xuaW1wb3J0IHsgTm9kZUhlbHBlclNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9ub2RlLWhlbHBlci5zZXJ2aWNlJztcblxuLyoqXG4gKiBBIHNtYWxsIGNpcmN1bGFyIGJhZGdlIHRoYXQgZGVwaWN0cyB0aGUgbm9kZSdzIHR5cGUuXG4gKlxuICogVG8gYmUgdXNlZCBpbiB0aGUgdG9wIGJhciBvZiBhIGNhcmQgb3Igc2ltaWxhciBwbGFjZXMuXG4gKi9cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnZXMtbm9kZS10eXBlLWJhZGdlJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vbm9kZS10eXBlLWJhZGdlLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9ub2RlLXR5cGUtYmFkZ2UuY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgTm9kZVR5cGVCYWRnZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uQ2hhbmdlcyB7XG4gICAgQElucHV0KCkgbm9kZTogTm9kZTtcblxuICAgIGlzQ29sbGVjdGlvbjogYm9vbGVhbjtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwdWJsaWMgbm9kZUhlbHBlcjogTm9kZUhlbHBlclNlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgbm9kZUVudHJpZXNHbG9iYWxTZXJ2aWNlOiBOb2RlRW50cmllc0dsb2JhbFNlcnZpY2UsXG4gICAgKSB7fVxuXG4gICAgbmdPbkNoYW5nZXMoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuaXNDb2xsZWN0aW9uID0gdGhpcy5ub2RlSGVscGVyLmlzTm9kZUNvbGxlY3Rpb24odGhpcy5ub2RlKTtcbiAgICB9XG5cbiAgICBnZXRDdXN0b21UZW1wbGF0ZSgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMubm9kZUVudHJpZXNHbG9iYWxTZXJ2aWNlLmdldEN1c3RvbUZpZWxkVGVtcGxhdGUoXG4gICAgICAgICAgICB7IHR5cGU6ICdOT0RFJywgbmFtZTogQ3VzdG9tRmllbGRTcGVjaWFsVHlwZS50eXBlIH0sXG4gICAgICAgICAgICB0aGlzLm5vZGUsXG4gICAgICAgICk7XG4gICAgfVxufVxuIiwiPG5nLWNvbnRhaW5lciAqbmdJZj1cImlzQ29sbGVjdGlvblwiPlxuICA8aVxuICAgIFttYXRUb29sdGlwXT1cIlxuICAgICAgJ0NPTExFQ1RJT04uU0NPUEUuJyArIG5vZGVIZWxwZXIuZ2V0Q29sbGVjdGlvblNjb3BlSW5mbygkYW55KG5vZGUpKS5zY29wZU5hbWUgfCB0cmFuc2xhdGVcbiAgICBcIlxuICAgIFthbHRUZXh0XT1cIlxuICAgICAgJ0NPTExFQ1RJT04uU0NPUEUuJyArIG5vZGVIZWxwZXIuZ2V0Q29sbGVjdGlvblNjb3BlSW5mbygkYW55KG5vZGUpKS5zY29wZU5hbWUgfCB0cmFuc2xhdGVcbiAgICBcIlxuICAgIFtlc0ljb25dPVwibm9kZUhlbHBlci5nZXRDb2xsZWN0aW9uU2NvcGVJbmZvKCRhbnkobm9kZSkpLmljb25cIlxuICA+PC9pPlxuPC9uZy1jb250YWluZXI+XG48bmctY29udGFpbmVyICpuZ0lmPVwiIWlzQ29sbGVjdGlvblwiPlxuICA8bmctY29udGFpbmVyICpuZ0lmPVwiZ2V0Q3VzdG9tVGVtcGxhdGUoKSBhcyByZWZcIj5cbiAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwicmVmOyBjb250ZXh0OiB7IG5vZGU6IHRoaXMubm9kZSB9XCI+PC9uZy1jb250YWluZXI+XG4gIDwvbmctY29udGFpbmVyPlxuICA8bmctY29udGFpbmVyICpuZ0lmPVwiIWdldEN1c3RvbVRlbXBsYXRlKClcIj5cbiAgICA8aW1nXG4gICAgICBbc3JjXT1cIm5vZGUgfCBlc05vZGVJY29uIHwgYXN5bmNcIlxuICAgICAgW2FsdF09XCJcbiAgICAgICAgbm9kZS5tZWRpYXR5cGVcbiAgICAgICAgICA/ICgnTk9ERS5tZWRpYXR5cGUnIHwgdHJhbnNsYXRlKSArICc6ICcgKyAoJ01FRElBVFlQRS4nICsgbm9kZS5tZWRpYXR5cGUgfCB0cmFuc2xhdGUpXG4gICAgICAgICAgOiAnJ1xuICAgICAgXCJcbiAgICAgIFttYXRUb29sdGlwXT1cIlxuICAgICAgICBub2RlLm1lZGlhdHlwZVxuICAgICAgICAgID8gKCdOT0RFLm1lZGlhdHlwZScgfCB0cmFuc2xhdGUpICsgJzogJyArICgnTUVESUFUWVBFLicgKyBub2RlLm1lZGlhdHlwZSB8IHRyYW5zbGF0ZSlcbiAgICAgICAgICA6ICcnXG4gICAgICBcIlxuICAgIC8+XG4gIDwvbmctY29udGFpbmVyPlxuPC9uZy1jb250YWluZXI+XG4iXX0=
|
|
@@ -1,75 +0,0 @@
|
|
|
1
|
-
import { Component, Input } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
import * as i1 from "../../directives/icon.directive";
|
|
4
|
-
import * as i2 from "@angular/material/button";
|
|
5
|
-
import * as i3 from "@angular/material/tooltip";
|
|
6
|
-
import * as i4 from "@ngx-translate/core";
|
|
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
|
-
export class OptionButtonComponent {
|
|
12
|
-
constructor() {
|
|
13
|
-
this.isShown = false;
|
|
14
|
-
this.isEnabled = false;
|
|
15
|
-
}
|
|
16
|
-
async ngOnChanges(changes) {
|
|
17
|
-
this.isEnabled = await this.optionIsValid(this.option, this.node);
|
|
18
|
-
this.isShown = await this.optionIsShown(this.option, this.node);
|
|
19
|
-
}
|
|
20
|
-
async optionIsValid(optionItem, node) {
|
|
21
|
-
if (optionItem.enabledCallback) {
|
|
22
|
-
return await optionItem.enabledCallback([node]);
|
|
23
|
-
}
|
|
24
|
-
return optionItem.isEnabled;
|
|
25
|
-
}
|
|
26
|
-
async optionIsShown(optionItem, node) {
|
|
27
|
-
if (optionItem.showCallback) {
|
|
28
|
-
return optionItem.showCallback([node]);
|
|
29
|
-
}
|
|
30
|
-
return true;
|
|
31
|
-
}
|
|
32
|
-
async click(option, node) {
|
|
33
|
-
if (await this.optionIsShown(option, node)) {
|
|
34
|
-
option.callback(node);
|
|
35
|
-
}
|
|
36
|
-
}
|
|
37
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: OptionButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
38
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.12", type: OptionButtonComponent, selector: "es-option-button", inputs: { option: "option", node: "node" }, usesOnChanges: true, ngImport: i0, template: `
|
|
39
|
-
<button
|
|
40
|
-
mat-icon-button
|
|
41
|
-
color="primary"
|
|
42
|
-
matTooltip="{{ option.name | translate }}"
|
|
43
|
-
[class.display-none]="!isShown"
|
|
44
|
-
[disabled]="!isEnabled"
|
|
45
|
-
(click)="click(option, node)"
|
|
46
|
-
attr.data-test="option-button-{{ option.name }}"
|
|
47
|
-
>
|
|
48
|
-
<i esIcon="{{ option.icon }}" [aria]="false"></i>
|
|
49
|
-
</button>
|
|
50
|
-
`, isInline: true, dependencies: [{ kind: "directive", type: i1.IconDirective, selector: "i[esIcon], i.material-icons", inputs: ["altText", "aria", "esIcon"] }, { kind: "component", type: i2.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "directive", type: i3.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "pipe", type: i4.TranslatePipe, name: "translate" }] }); }
|
|
51
|
-
}
|
|
52
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: OptionButtonComponent, decorators: [{
|
|
53
|
-
type: Component,
|
|
54
|
-
args: [{
|
|
55
|
-
selector: 'es-option-button',
|
|
56
|
-
template: `
|
|
57
|
-
<button
|
|
58
|
-
mat-icon-button
|
|
59
|
-
color="primary"
|
|
60
|
-
matTooltip="{{ option.name | translate }}"
|
|
61
|
-
[class.display-none]="!isShown"
|
|
62
|
-
[disabled]="!isEnabled"
|
|
63
|
-
(click)="click(option, node)"
|
|
64
|
-
attr.data-test="option-button-{{ option.name }}"
|
|
65
|
-
>
|
|
66
|
-
<i esIcon="{{ option.icon }}" [aria]="false"></i>
|
|
67
|
-
</button>
|
|
68
|
-
`,
|
|
69
|
-
}]
|
|
70
|
-
}], propDecorators: { option: [{
|
|
71
|
-
type: Input
|
|
72
|
-
}], node: [{
|
|
73
|
-
type: Input
|
|
74
|
-
}] } });
|
|
75
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3B0aW9uLWJ1dHRvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lZHUtc2hhcmluZy11aS9zcmMvbGliL25vZGUtZW50cmllcy9vcHRpb24tYnV0dG9uL29wdGlvbi1idXR0b24uY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUE0QixNQUFNLGVBQWUsQ0FBQzs7Ozs7O0FBRzNFLGtHQUFrRztBQUNsRyxnR0FBZ0c7QUFDaEcsNEZBQTRGO0FBQzVGLFdBQVc7QUFrQlgsTUFBTSxPQUFPLHFCQUFxQjtJQWhCbEM7UUFvQkksWUFBTyxHQUFHLEtBQUssQ0FBQztRQUNoQixjQUFTLEdBQUcsS0FBSyxDQUFDO0tBeUJyQjtJQXhCRyxLQUFLLENBQUMsV0FBVyxDQUFDLE9BQXNCO1FBQ3BDLElBQUksQ0FBQyxTQUFTLEdBQUcsTUFBTSxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ2xFLElBQUksQ0FBQyxPQUFPLEdBQUcsTUFBTSxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3BFLENBQUM7SUFFRCxLQUFLLENBQUMsYUFBYSxDQUFDLFVBQXNCLEVBQUUsSUFBVTtRQUNsRCxJQUFJLFVBQVUsQ0FBQyxlQUFlLEVBQUUsQ0FBQztZQUM3QixPQUFPLE1BQU0sVUFBVSxDQUFDLGVBQWUsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7UUFDcEQsQ0FBQztRQUNELE9BQU8sVUFBVSxDQUFDLFNBQVMsQ0FBQztJQUNoQyxDQUFDO0lBRU8sS0FBSyxDQUFDLGFBQWEsQ0FBQyxVQUFzQixFQUFFLElBQVU7UUFDMUQsSUFBSSxVQUFVLENBQUMsWUFBWSxFQUFFLENBQUM7WUFDMUIsT0FBTyxVQUFVLENBQUMsWUFBWSxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztRQUMzQyxDQUFDO1FBQ0QsT0FBTyxJQUFJLENBQUM7SUFDaEIsQ0FBQztJQUVELEtBQUssQ0FBQyxLQUFLLENBQUMsTUFBa0IsRUFBRSxJQUFVO1FBQ3RDLElBQUksTUFBTSxJQUFJLENBQUMsYUFBYSxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsRUFBRSxDQUFDO1lBQ3pDLE1BQU0sQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDMUIsQ0FBQztJQUNMLENBQUM7K0dBN0JRLHFCQUFxQjttR0FBckIscUJBQXFCLHlIQWRwQjs7Ozs7Ozs7Ozs7O0tBWVQ7OzRGQUVRLHFCQUFxQjtrQkFoQmpDLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLGtCQUFrQjtvQkFDNUIsUUFBUSxFQUFFOzs7Ozs7Ozs7Ozs7S0FZVDtpQkFDSjs4QkFFWSxNQUFNO3NCQUFkLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgT25DaGFuZ2VzLCBTaW1wbGVDaGFuZ2VzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOb2RlIH0gZnJvbSAnbmd4LWVkdS1zaGFyaW5nLWFwaSc7XG5pbXBvcnQgeyBPcHRpb25JdGVtIH0gZnJvbSAnLi4vLi4vdHlwZXMvb3B0aW9uLWl0ZW0nO1xuLy8gVE9ETzogRGVjaWRlIGlmIHByb3ZpZGluZyBmb2N1cyBoaWdobGlnaHRzIGFuZCByaXBwbGVzIHdpdGggdGhpcyBjb21wb25lbnQgaXMgYSBnb29kIGlkZWEuIFdoZW5cbi8vIHVzaW5nIGBhcHAtbm9kZS11cmxgIGZvciBjYXJkcywgd2UgbWlnaHQgbmVlZCBoaWdobGlnaHRzIGFuZCByaXBwbGVzIGZvciB0aGUgd2hvbGUgY2FyZCB3aGlsZVxuLy8gYGFwcC1ub2RlLXVybGAgc2hvdWxkIG9ubHkgd3JhcCB0aGUgdGl0bGUgc2luY2UgbGlua3Mgd2l0aCBsb3RzIG9mIGNvbnRlbnQgY29uZnVzZSBzY3JlZW5cbi8vIHJlYWRlcnMuXG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnZXMtb3B0aW9uLWJ1dHRvbicsXG4gICAgdGVtcGxhdGU6IGBcbiAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgbWF0LWljb24tYnV0dG9uXG4gICAgICAgICAgICBjb2xvcj1cInByaW1hcnlcIlxuICAgICAgICAgICAgbWF0VG9vbHRpcD1cInt7IG9wdGlvbi5uYW1lIHwgdHJhbnNsYXRlIH19XCJcbiAgICAgICAgICAgIFtjbGFzcy5kaXNwbGF5LW5vbmVdPVwiIWlzU2hvd25cIlxuICAgICAgICAgICAgW2Rpc2FibGVkXT1cIiFpc0VuYWJsZWRcIlxuICAgICAgICAgICAgKGNsaWNrKT1cImNsaWNrKG9wdGlvbiwgbm9kZSlcIlxuICAgICAgICAgICAgYXR0ci5kYXRhLXRlc3Q9XCJvcHRpb24tYnV0dG9uLXt7IG9wdGlvbi5uYW1lIH19XCJcbiAgICAgICAgPlxuICAgICAgICAgICAgPGkgZXNJY29uPVwie3sgb3B0aW9uLmljb24gfX1cIiBbYXJpYV09XCJmYWxzZVwiPjwvaT5cbiAgICAgICAgPC9idXR0b24+XG4gICAgYCxcbn0pXG5leHBvcnQgY2xhc3MgT3B0aW9uQnV0dG9uQ29tcG9uZW50IGltcGxlbWVudHMgT25DaGFuZ2VzIHtcbiAgICBASW5wdXQoKSBvcHRpb246IE9wdGlvbkl0ZW07XG4gICAgQElucHV0KCkgbm9kZTogTm9kZTtcblxuICAgIGlzU2hvd24gPSBmYWxzZTtcbiAgICBpc0VuYWJsZWQgPSBmYWxzZTtcbiAgICBhc3luYyBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XG4gICAgICAgIHRoaXMuaXNFbmFibGVkID0gYXdhaXQgdGhpcy5vcHRpb25Jc1ZhbGlkKHRoaXMub3B0aW9uLCB0aGlzLm5vZGUpO1xuICAgICAgICB0aGlzLmlzU2hvd24gPSBhd2FpdCB0aGlzLm9wdGlvbklzU2hvd24odGhpcy5vcHRpb24sIHRoaXMubm9kZSk7XG4gICAgfVxuXG4gICAgYXN5bmMgb3B0aW9uSXNWYWxpZChvcHRpb25JdGVtOiBPcHRpb25JdGVtLCBub2RlOiBOb2RlKTogUHJvbWlzZTxib29sZWFuPiB7XG4gICAgICAgIGlmIChvcHRpb25JdGVtLmVuYWJsZWRDYWxsYmFjaykge1xuICAgICAgICAgICAgcmV0dXJuIGF3YWl0IG9wdGlvbkl0ZW0uZW5hYmxlZENhbGxiYWNrKFtub2RlXSk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIG9wdGlvbkl0ZW0uaXNFbmFibGVkO1xuICAgIH1cblxuICAgIHByaXZhdGUgYXN5bmMgb3B0aW9uSXNTaG93bihvcHRpb25JdGVtOiBPcHRpb25JdGVtLCBub2RlOiBOb2RlKTogUHJvbWlzZTxib29sZWFuPiB7XG4gICAgICAgIGlmIChvcHRpb25JdGVtLnNob3dDYWxsYmFjaykge1xuICAgICAgICAgICAgcmV0dXJuIG9wdGlvbkl0ZW0uc2hvd0NhbGxiYWNrKFtub2RlXSk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuXG4gICAgYXN5bmMgY2xpY2sob3B0aW9uOiBPcHRpb25JdGVtLCBub2RlOiBOb2RlKSB7XG4gICAgICAgIGlmIChhd2FpdCB0aGlzLm9wdGlvbklzU2hvd24ob3B0aW9uLCBub2RlKSkge1xuICAgICAgICAgICAgb3B0aW9uLmNhbGxiYWNrKG5vZGUpO1xuICAgICAgICB9XG4gICAgfVxufVxuIl19
|