cps-ui-kit 0.165.0 → 17.1.0

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.
Files changed (166) hide show
  1. package/esm2022/lib/components/cps-autocomplete/cps-autocomplete.component.mjs +824 -0
  2. package/esm2022/lib/components/cps-button/cps-button.component.mjs +190 -0
  3. package/esm2022/lib/components/cps-button-toggle/cps-button-toggle.component.mjs +235 -0
  4. package/esm2022/lib/components/cps-checkbox/cps-checkbox.component.mjs +149 -0
  5. package/esm2022/lib/components/cps-chip/cps-chip.component.mjs +94 -0
  6. package/esm2022/lib/components/cps-datepicker/cps-datepicker.component.mjs +382 -0
  7. package/esm2022/lib/components/cps-expansion-panel/cps-expansion-panel.component.mjs +209 -0
  8. package/esm2022/lib/components/cps-file-upload/cps-file-upload.component.mjs +138 -0
  9. package/esm2022/lib/components/cps-icon/cps-icon.component.mjs +193 -0
  10. package/esm2022/lib/components/cps-info-circle/cps-info-circle.component.mjs +61 -0
  11. package/esm2022/lib/components/cps-input/cps-input.component.mjs +386 -0
  12. package/{esm2020 → esm2022}/lib/components/cps-loader/cps-loader.component.mjs +5 -5
  13. package/esm2022/lib/components/cps-menu/cps-menu.component.mjs +552 -0
  14. package/esm2022/lib/components/cps-paginator/cps-paginator.component.mjs +114 -0
  15. package/esm2022/lib/components/cps-paginator/pipes/cps-paginate.pipe.mjs +30 -0
  16. package/{esm2020 → esm2022}/lib/components/cps-progress-circular/cps-progress-circular.component.mjs +4 -4
  17. package/{esm2020 → esm2022}/lib/components/cps-progress-linear/cps-progress-linear.component.mjs +4 -4
  18. package/{esm2020 → esm2022}/lib/components/cps-radio-group/cps-radio/cps-radio.component.mjs +7 -7
  19. package/esm2022/lib/components/cps-radio-group/cps-radio-button/cps-radio-button.component.mjs +55 -0
  20. package/esm2022/lib/components/cps-radio-group/cps-radio-group.component.mjs +158 -0
  21. package/esm2022/lib/components/cps-select/cps-select.component.mjs +615 -0
  22. package/esm2022/lib/components/cps-sidebar-menu/cps-sidebar-menu.component.mjs +110 -0
  23. package/{esm2020 → esm2022}/lib/components/cps-tab-group/cps-tab/cps-tab.component.mjs +4 -4
  24. package/esm2022/lib/components/cps-tab-group/cps-tab-group.component.mjs +303 -0
  25. package/esm2022/lib/components/cps-table/components/internal/cps-sort-icon/cps-sort-icon.component.mjs +79 -0
  26. package/esm2022/lib/components/cps-table/components/internal/table-column-filter/table-column-filter.component.mjs +408 -0
  27. package/esm2022/lib/components/cps-table/components/internal/table-column-filter-constraint/table-column-filter-constraint.component.mjs +149 -0
  28. package/esm2022/lib/components/cps-table/components/internal/table-row-menu/table-row-menu.component.mjs +88 -0
  29. package/esm2022/lib/components/cps-table/cps-table.component.mjs +941 -0
  30. package/esm2022/lib/components/cps-table/directives/cps-table-column-filter.directive.mjs +181 -0
  31. package/{esm2020 → esm2022}/lib/components/cps-table/directives/cps-table-column-sortable.directive.mjs +5 -5
  32. package/{esm2020 → esm2022}/lib/components/cps-table/directives/cps-table-header-selectable.directive.mjs +5 -5
  33. package/{esm2020 → esm2022}/lib/components/cps-table/directives/cps-table-row-selectable.directive.mjs +5 -5
  34. package/esm2022/lib/components/cps-table/directives/internal/table-unsort.directive.mjs +220 -0
  35. package/esm2022/lib/components/cps-tag/cps-tag.component.mjs +136 -0
  36. package/esm2022/lib/components/cps-textarea/cps-textarea.component.mjs +291 -0
  37. package/esm2022/lib/components/cps-timepicker/cps-timepicker.component.mjs +351 -0
  38. package/esm2022/lib/components/cps-tree-autocomplete/cps-tree-autocomplete.component.mjs +251 -0
  39. package/esm2022/lib/components/cps-tree-select/cps-tree-select.component.mjs +87 -0
  40. package/esm2022/lib/components/cps-tree-table/cps-tree-table.component.mjs +1196 -0
  41. package/{esm2020 → esm2022}/lib/components/cps-tree-table/directives/cps-tree-table-column-filter.directive.mjs +5 -5
  42. package/{esm2020 → esm2022}/lib/components/cps-tree-table/directives/cps-tree-table-column-sortable.directive.mjs +5 -5
  43. package/{esm2020 → esm2022}/lib/components/cps-tree-table/directives/cps-tree-table-header-selectable.directive.mjs +5 -5
  44. package/{esm2020 → esm2022}/lib/components/cps-tree-table/directives/cps-tree-table-row-selectable.directive.mjs +5 -5
  45. package/esm2022/lib/components/cps-tree-table/directives/cps-tree-table-row-toggler.directive.mjs +43 -0
  46. package/esm2022/lib/components/cps-tree-table/directives/internal/tree-table-unsort.directive.mjs +354 -0
  47. package/esm2022/lib/components/internal/cps-base-tree-dropdown/cps-base-tree-dropdown.component.mjs +619 -0
  48. package/esm2022/lib/directives/cps-tooltip/cps-tooltip.directive.mjs +257 -0
  49. package/{esm2020 → esm2022}/lib/pipes/internal/check-option-selected.pipe.mjs +4 -4
  50. package/esm2022/lib/pipes/internal/combine-labels.pipe.mjs +25 -0
  51. package/{esm2020 → esm2022}/lib/pipes/internal/label-by-value.pipe.mjs +4 -4
  52. package/esm2022/lib/services/cps-dialog/cps-dialog.service.mjs +99 -0
  53. package/{esm2020 → esm2022}/lib/services/cps-dialog/internal/components/cps-confirmation/cps-confirmation.component.mjs +5 -5
  54. package/esm2022/lib/services/cps-dialog/internal/components/cps-dialog/cps-dialog.component.mjs +470 -0
  55. package/{esm2020 → esm2022}/lib/services/cps-dialog/internal/directives/cps-dialog-content.directive.mjs +5 -5
  56. package/esm2022/lib/services/cps-dialog/utils/cps-dialog-config.mjs +3 -0
  57. package/esm2022/lib/services/cps-notification/cps-notification.service.mjs +126 -0
  58. package/esm2022/lib/services/cps-notification/internal/components/cps-notification-container/cps-notification-container.component.mjs +91 -0
  59. package/{esm2020 → esm2022}/lib/services/cps-notification/internal/components/cps-toast/cps-toast.component.mjs +23 -23
  60. package/esm2022/lib/utils/colors-utils.mjs +57 -0
  61. package/esm2022/lib/utils/internal/size-utils.mjs +24 -0
  62. package/{esm2020 → esm2022}/public-api.mjs +2 -2
  63. package/{fesm2020 → fesm2022}/cps-ui-kit.mjs +481 -391
  64. package/fesm2022/cps-ui-kit.mjs.map +1 -0
  65. package/lib/components/cps-autocomplete/cps-autocomplete.component.d.ts +2 -2
  66. package/lib/components/cps-button/cps-button.component.d.ts +1 -1
  67. package/lib/components/cps-button-toggle/cps-button-toggle.component.d.ts +2 -2
  68. package/lib/components/cps-checkbox/cps-checkbox.component.d.ts +2 -2
  69. package/lib/components/cps-chip/cps-chip.component.d.ts +1 -1
  70. package/lib/components/cps-datepicker/cps-datepicker.component.d.ts +2 -2
  71. package/lib/components/cps-expansion-panel/cps-expansion-panel.component.d.ts +1 -1
  72. package/lib/components/cps-file-upload/cps-file-upload.component.d.ts +1 -1
  73. package/lib/components/cps-icon/cps-icon.component.d.ts +1 -1
  74. package/lib/components/cps-info-circle/cps-info-circle.component.d.ts +2 -2
  75. package/lib/components/cps-input/cps-input.component.d.ts +2 -2
  76. package/lib/components/cps-loader/cps-loader.component.d.ts +1 -1
  77. package/lib/components/cps-menu/cps-menu.component.d.ts +1 -1
  78. package/lib/components/cps-paginator/cps-paginator.component.d.ts +1 -1
  79. package/lib/components/cps-progress-circular/cps-progress-circular.component.d.ts +1 -1
  80. package/lib/components/cps-progress-linear/cps-progress-linear.component.d.ts +1 -1
  81. package/lib/components/cps-radio-group/cps-radio/cps-radio.component.d.ts +1 -1
  82. package/lib/components/cps-radio-group/cps-radio-button/cps-radio-button.component.d.ts +1 -1
  83. package/lib/components/cps-radio-group/cps-radio-group.component.d.ts +2 -2
  84. package/lib/components/cps-select/cps-select.component.d.ts +2 -2
  85. package/lib/components/cps-sidebar-menu/cps-sidebar-menu.component.d.ts +1 -1
  86. package/lib/components/cps-tab-group/cps-tab/cps-tab.component.d.ts +1 -1
  87. package/lib/components/cps-tab-group/cps-tab-group.component.d.ts +1 -1
  88. package/lib/components/cps-table/components/internal/cps-sort-icon/cps-sort-icon.component.d.ts +1 -1
  89. package/lib/components/cps-table/components/internal/table-column-filter/table-column-filter.component.d.ts +1 -1
  90. package/lib/components/cps-table/components/internal/table-column-filter-constraint/table-column-filter-constraint.component.d.ts +1 -1
  91. package/lib/components/cps-table/components/internal/table-row-menu/table-row-menu.component.d.ts +1 -1
  92. package/lib/components/cps-table/cps-table.component.d.ts +1 -1
  93. package/lib/components/cps-table/directives/cps-table-column-filter.directive.d.ts +1 -1
  94. package/lib/components/cps-table/directives/cps-table-column-sortable.directive.d.ts +1 -1
  95. package/lib/components/cps-table/directives/cps-table-row-selectable.directive.d.ts +1 -1
  96. package/lib/components/cps-tag/cps-tag.component.d.ts +1 -1
  97. package/lib/components/cps-textarea/cps-textarea.component.d.ts +2 -2
  98. package/lib/components/cps-timepicker/cps-timepicker.component.d.ts +2 -2
  99. package/lib/components/cps-tree-autocomplete/cps-tree-autocomplete.component.d.ts +1 -1
  100. package/lib/components/cps-tree-select/cps-tree-select.component.d.ts +1 -1
  101. package/lib/components/cps-tree-table/cps-tree-table.component.d.ts +4 -4
  102. package/lib/components/cps-tree-table/directives/cps-tree-table-column-filter.directive.d.ts +1 -1
  103. package/lib/components/cps-tree-table/directives/cps-tree-table-column-sortable.directive.d.ts +1 -1
  104. package/lib/components/cps-tree-table/directives/cps-tree-table-row-selectable.directive.d.ts +1 -1
  105. package/lib/components/cps-tree-table/directives/cps-tree-table-row-toggler.directive.d.ts +1 -1
  106. package/lib/components/internal/cps-base-tree-dropdown/cps-base-tree-dropdown.component.d.ts +2 -2
  107. package/lib/directives/{cps-tooltip.directive.d.ts → cps-tooltip/cps-tooltip.directive.d.ts} +2 -2
  108. package/lib/services/cps-dialog/cps-dialog.service.d.ts +13 -0
  109. package/lib/services/cps-dialog/utils/cps-dialog-config.d.ts +1 -1
  110. package/lib/services/cps-notification/cps-notification.service.d.ts +32 -0
  111. package/lib/services/cps-notification/internal/components/cps-notification-container/cps-notification-container.component.d.ts +1 -1
  112. package/lib/services/cps-notification/internal/components/cps-toast/cps-toast.component.d.ts +1 -1
  113. package/package.json +12 -18
  114. package/public-api.d.ts +1 -1
  115. package/esm2020/lib/components/cps-autocomplete/cps-autocomplete.component.mjs +0 -824
  116. package/esm2020/lib/components/cps-button/cps-button.component.mjs +0 -190
  117. package/esm2020/lib/components/cps-button-toggle/cps-button-toggle.component.mjs +0 -235
  118. package/esm2020/lib/components/cps-checkbox/cps-checkbox.component.mjs +0 -149
  119. package/esm2020/lib/components/cps-chip/cps-chip.component.mjs +0 -94
  120. package/esm2020/lib/components/cps-datepicker/cps-datepicker.component.mjs +0 -382
  121. package/esm2020/lib/components/cps-expansion-panel/cps-expansion-panel.component.mjs +0 -209
  122. package/esm2020/lib/components/cps-file-upload/cps-file-upload.component.mjs +0 -138
  123. package/esm2020/lib/components/cps-icon/cps-icon.component.mjs +0 -193
  124. package/esm2020/lib/components/cps-info-circle/cps-info-circle.component.mjs +0 -61
  125. package/esm2020/lib/components/cps-input/cps-input.component.mjs +0 -386
  126. package/esm2020/lib/components/cps-menu/cps-menu.component.mjs +0 -552
  127. package/esm2020/lib/components/cps-paginator/cps-paginator.component.mjs +0 -113
  128. package/esm2020/lib/components/cps-paginator/pipes/cps-paginate.pipe.mjs +0 -30
  129. package/esm2020/lib/components/cps-radio-group/cps-radio-button/cps-radio-button.component.mjs +0 -55
  130. package/esm2020/lib/components/cps-radio-group/cps-radio-group.component.mjs +0 -158
  131. package/esm2020/lib/components/cps-select/cps-select.component.mjs +0 -615
  132. package/esm2020/lib/components/cps-sidebar-menu/cps-sidebar-menu.component.mjs +0 -110
  133. package/esm2020/lib/components/cps-tab-group/cps-tab-group.component.mjs +0 -299
  134. package/esm2020/lib/components/cps-table/components/internal/cps-sort-icon/cps-sort-icon.component.mjs +0 -79
  135. package/esm2020/lib/components/cps-table/components/internal/table-column-filter/table-column-filter.component.mjs +0 -408
  136. package/esm2020/lib/components/cps-table/components/internal/table-column-filter-constraint/table-column-filter-constraint.component.mjs +0 -148
  137. package/esm2020/lib/components/cps-table/components/internal/table-row-menu/table-row-menu.component.mjs +0 -88
  138. package/esm2020/lib/components/cps-table/cps-table.component.mjs +0 -940
  139. package/esm2020/lib/components/cps-table/directives/cps-table-column-filter.directive.mjs +0 -181
  140. package/esm2020/lib/components/cps-table/directives/internal/table-unsort.directive.mjs +0 -210
  141. package/esm2020/lib/components/cps-tag/cps-tag.component.mjs +0 -136
  142. package/esm2020/lib/components/cps-textarea/cps-textarea.component.mjs +0 -291
  143. package/esm2020/lib/components/cps-timepicker/cps-timepicker.component.mjs +0 -351
  144. package/esm2020/lib/components/cps-tree-autocomplete/cps-tree-autocomplete.component.mjs +0 -250
  145. package/esm2020/lib/components/cps-tree-select/cps-tree-select.component.mjs +0 -87
  146. package/esm2020/lib/components/cps-tree-table/cps-tree-table.component.mjs +0 -1192
  147. package/esm2020/lib/components/cps-tree-table/directives/cps-tree-table-row-toggler.directive.mjs +0 -43
  148. package/esm2020/lib/components/cps-tree-table/directives/internal/tree-table-unsort.directive.mjs +0 -334
  149. package/esm2020/lib/components/internal/cps-base-tree-dropdown/cps-base-tree-dropdown.component.mjs +0 -616
  150. package/esm2020/lib/directives/cps-tooltip.directive.mjs +0 -257
  151. package/esm2020/lib/pipes/internal/combine-labels.pipe.mjs +0 -25
  152. package/esm2020/lib/services/cps-dialog/cps-dialog.service.mjs +0 -86
  153. package/esm2020/lib/services/cps-dialog/internal/components/cps-dialog/cps-dialog.component.mjs +0 -470
  154. package/esm2020/lib/services/cps-dialog/utils/cps-dialog-config.mjs +0 -3
  155. package/esm2020/lib/services/cps-notification/cps-notification.service.mjs +0 -94
  156. package/esm2020/lib/services/cps-notification/internal/components/cps-notification-container/cps-notification-container.component.mjs +0 -91
  157. package/esm2020/lib/utils/colors-utils.mjs +0 -57
  158. package/esm2020/lib/utils/internal/size-utils.mjs +0 -24
  159. package/fesm2015/cps-ui-kit.mjs +0 -12086
  160. package/fesm2015/cps-ui-kit.mjs.map +0 -1
  161. package/fesm2020/cps-ui-kit.mjs.map +0 -1
  162. /package/{esm2020 → esm2022}/cps-ui-kit.mjs +0 -0
  163. /package/{esm2020 → esm2022}/lib/components/cps-table/cps-column-filter-types.mjs +0 -0
  164. /package/{esm2020 → esm2022}/lib/services/cps-dialog/utils/cps-dialog-ref.mjs +0 -0
  165. /package/{esm2020 → esm2022}/lib/services/cps-notification/utils/cps-notification-config.mjs +0 -0
  166. /package/{esm2020 → esm2022}/lib/services/cps-notification/utils/internal/cps-notification-data.mjs +0 -0
@@ -0,0 +1,209 @@
1
+ import { CommonModule } from '@angular/common';
2
+ import { Component, EventEmitter, Input, Output, ViewChild } from '@angular/core';
3
+ import { CpsIconComponent } from '../cps-icon/cps-icon.component';
4
+ import { getCSSColor } from '../../utils/colors-utils';
5
+ import { convertSize } from '../../utils/internal/size-utils';
6
+ import { animate, state, style, transition, trigger } from '@angular/animations';
7
+ import * as i0 from "@angular/core";
8
+ import * as i1 from "@angular/animations";
9
+ import * as i2 from "@angular/common";
10
+ const transitionType = '0.2s cubic-bezier(0.4, 0, 0.2, 1)';
11
+ /**
12
+ * CpsExpansionPanelComponent is a component that provides content on expansion.
13
+ * @group Components
14
+ */
15
+ export class CpsExpansionPanelComponent {
16
+ constructor(_animationBuilder, _renderer) {
17
+ this._animationBuilder = _animationBuilder;
18
+ this._renderer = _renderer;
19
+ /**
20
+ * Title of the expansionPanel element.
21
+ * @group Props
22
+ */
23
+ this.headerTitle = '';
24
+ /**
25
+ * Background color of the expansion panel element.
26
+ * @group Props
27
+ */
28
+ this.backgroundColor = 'transparent';
29
+ /**
30
+ * Determines whether to show the chevron icon.
31
+ * @group Props
32
+ */
33
+ this.showChevron = true;
34
+ /**
35
+ * Indicates current expansion state.
36
+ * @group Props
37
+ */
38
+ this.isExpanded = false;
39
+ /**
40
+ * Determines whether expansion panel is disabled.
41
+ * @group Props
42
+ */
43
+ this.disabled = false;
44
+ /**
45
+ * If true, expansion panel element will have borders.
46
+ * @group Props
47
+ */
48
+ this.bordered = true;
49
+ /**
50
+ * The border radius of the component.
51
+ * @group Props
52
+ */
53
+ this.borderRadius = 0;
54
+ /**
55
+ * Border color of the expansion panel.
56
+ * @group Props
57
+ */
58
+ this.borderColor = 'line-light';
59
+ /**
60
+ * The width of the expansion panel of type number denoting pixels or string.
61
+ * @group Props
62
+ */
63
+ this.width = '100%';
64
+ /**
65
+ * Name of the icon in front of the title.
66
+ * @group Props
67
+ */
68
+ this.prefixIcon = '';
69
+ /**
70
+ * Callback to invoke after a tab gets collapsed.
71
+ * @param {void}
72
+ * @group Emits
73
+ */
74
+ this.afterCollapse = new EventEmitter();
75
+ /**
76
+ * Callback to invoke after a tab gets expanded.
77
+ * @param {void}
78
+ * @group Emits
79
+ */
80
+ this.afterExpand = new EventEmitter();
81
+ this._contentCollapseAnimation = this._animationBuilder.build([
82
+ style({
83
+ height: '*'
84
+ }),
85
+ animate(transitionType, style({
86
+ height: 0
87
+ }))
88
+ ]);
89
+ this._contentExpandAnimation = this._animationBuilder.build([
90
+ style({
91
+ height: 0
92
+ }),
93
+ animate(transitionType, style({
94
+ height: '*'
95
+ }))
96
+ ]);
97
+ }
98
+ ngOnInit() {
99
+ this.borderColor = getCSSColor(this.borderColor);
100
+ this.backgroundColor = getCSSColor(this.backgroundColor);
101
+ this.borderRadius = convertSize(this.borderRadius);
102
+ this.width = convertSize(this.width);
103
+ }
104
+ ngAfterViewInit() {
105
+ if (!this.isExpanded) {
106
+ this._updateContentVisibilityStyles(false);
107
+ }
108
+ }
109
+ toggleExpansion() {
110
+ if (this.disabled || this._contentAnimationPlayer)
111
+ return;
112
+ const el = this.panelContentElem?.nativeElement;
113
+ if (this.isExpanded) {
114
+ this._contentAnimationPlayer = this._contentCollapseAnimation.create(el);
115
+ this._contentAnimationPlayer.onDone(() => {
116
+ this._updateContentVisibilityStyles(false, el);
117
+ });
118
+ }
119
+ else {
120
+ this._updateContentVisibilityStyles(true, el);
121
+ this._contentAnimationPlayer = this._contentExpandAnimation.create(el);
122
+ }
123
+ this._contentAnimationPlayer.onStart(() => {
124
+ this._renderer.setStyle(el, 'overflow', 'hidden');
125
+ });
126
+ this._contentAnimationPlayer.onDone(() => {
127
+ this._renderer.removeStyle(el, 'overflow');
128
+ this._contentAnimationPlayer?.destroy();
129
+ this._contentAnimationPlayer = undefined;
130
+ });
131
+ this._contentAnimationPlayer.play();
132
+ this.isExpanded = !this.isExpanded;
133
+ if (this.isExpanded) {
134
+ this.afterExpand.emit();
135
+ }
136
+ if (!this.isExpanded) {
137
+ this.afterCollapse.emit();
138
+ }
139
+ }
140
+ _updateContentVisibilityStyles(isVisible, el) {
141
+ el = el || this.panelContentElem?.nativeElement;
142
+ if (!el)
143
+ return;
144
+ if (isVisible) {
145
+ this._renderer.removeStyle(el, 'height');
146
+ this._renderer.removeStyle(el, 'visibility');
147
+ }
148
+ else {
149
+ this._renderer.setStyle(el, 'height', '0');
150
+ this._renderer.setStyle(el, 'visibility', 'hidden');
151
+ }
152
+ }
153
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: CpsExpansionPanelComponent, deps: [{ token: i1.AnimationBuilder }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component }); }
154
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.1.2", type: CpsExpansionPanelComponent, isStandalone: true, selector: "cps-expansion-panel", inputs: { headerTitle: "headerTitle", backgroundColor: "backgroundColor", showChevron: "showChevron", isExpanded: "isExpanded", disabled: "disabled", bordered: "bordered", borderRadius: "borderRadius", borderColor: "borderColor", width: "width", prefixIcon: "prefixIcon" }, outputs: { afterCollapse: "afterCollapse", afterExpand: "afterExpand" }, viewQueries: [{ propertyName: "panelContentElem", first: true, predicate: ["panelContentElem"], descendants: true }], ngImport: i0, template: "<div\n class=\"cps-expansion-panel\"\n [class.expanded]=\"isExpanded\"\n [ngStyle]=\"{\n 'background-color': backgroundColor,\n 'border-radius': borderRadius,\n width: width,\n border: bordered ? '1px solid ' + borderColor : ''\n }\">\n <div\n class=\"cps-expansion-panel-header\"\n [@panelHeader]=\"\n isExpanded\n ? {\n value: 'visible',\n params: {\n borderStyle: bordered ? '1px solid ' + borderColor : ''\n }\n }\n : 'hidden'\n \"\n [ngClass]=\"{ disabled: disabled }\"\n [style.cursor]=\"disabled ? 'default' : 'pointer'\"\n (click)=\"toggleExpansion()\">\n <span class=\"cps-expansion-panel-prefix-icon\" *ngIf=\"prefixIcon\">\n <cps-icon\n [icon]=\"prefixIcon\"\n size=\"small\"\n [color]=\"disabled ? 'text-mild' : 'text-dark'\">\n </cps-icon>\n </span>\n <div class=\"cps-expansion-panel-title\">{{ headerTitle }}</div>\n <span class=\"cps-expansion-panel-chevron\" *ngIf=\"showChevron && !disabled\">\n <cps-icon icon=\"chevron-down\" size=\"small\" color=\"text-dark\"> </cps-icon>\n </span>\n </div>\n <div class=\"cps-expansion-panel-content\" #panelContentElem>\n <div class=\"cps-expansion-panel-content-inner\">\n <ng-content></ng-content>\n </div>\n </div>\n</div>\n", styles: [":host{display:flex}:host .cps-expansion-panel{overflow:hidden;font-family:Source Sans Pro,sans-serif;line-height:20px;color:var(--cps-color-text-dark)}:host .cps-expansion-panel-header{border-bottom-color:transparent;display:flex;align-items:center;padding:10px 16px 10px 24px;font-size:16px;justify-content:space-between;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}:host .cps-expansion-panel-header:hover{background-color:var(--cps-color-highlight-hover)}:host .cps-expansion-panel-header:active{background-color:var(--cps-color-highlight-active)}:host .cps-expansion-panel-header.disabled{pointer-events:none;color:var(--cps-color-text-mild)}:host .cps-expansion-panel-prefix-icon{display:flex;align-items:center;margin-right:12px;margin-bottom:2px}:host .cps-expansion-panel-prefix-icon cps-icon ::ng-deep .cps-icon{width:18px;height:18px}:host .cps-expansion-panel-title{flex:1 0 auto;display:inline-flex;font-weight:600}:host .cps-expansion-panel-chevron{width:16px;display:flex;align-items:center;transition-duration:.2s;margin-left:6px}:host .cps-expansion-panel-content{overflow:auto;color:var(--cps-color-text-dark);font-size:16px}:host .cps-expansion-panel-content-inner{padding:16px 24px}:host .cps-expansion-panel.expanded .cps-expansion-panel-content{max-height:500px}:host .cps-expansion-panel.expanded .cps-expansion-panel-chevron{transform:rotate(180deg)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: CpsIconComponent, selector: "cps-icon", inputs: ["icon", "size", "color"] }], animations: [
155
+ trigger('panelHeader', [
156
+ state('hidden', style({
157
+ borderBottom: ''
158
+ })),
159
+ state('visible', style({
160
+ borderBottom: '{{borderStyle}}'
161
+ }), { params: { borderStyle: '' } }),
162
+ transition('visible <=> hidden', [animate(transitionType)]),
163
+ transition('void => *', animate(0))
164
+ ])
165
+ ] }); }
166
+ }
167
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: CpsExpansionPanelComponent, decorators: [{
168
+ type: Component,
169
+ args: [{ standalone: true, imports: [CommonModule, CpsIconComponent], selector: 'cps-expansion-panel', animations: [
170
+ trigger('panelHeader', [
171
+ state('hidden', style({
172
+ borderBottom: ''
173
+ })),
174
+ state('visible', style({
175
+ borderBottom: '{{borderStyle}}'
176
+ }), { params: { borderStyle: '' } }),
177
+ transition('visible <=> hidden', [animate(transitionType)]),
178
+ transition('void => *', animate(0))
179
+ ])
180
+ ], template: "<div\n class=\"cps-expansion-panel\"\n [class.expanded]=\"isExpanded\"\n [ngStyle]=\"{\n 'background-color': backgroundColor,\n 'border-radius': borderRadius,\n width: width,\n border: bordered ? '1px solid ' + borderColor : ''\n }\">\n <div\n class=\"cps-expansion-panel-header\"\n [@panelHeader]=\"\n isExpanded\n ? {\n value: 'visible',\n params: {\n borderStyle: bordered ? '1px solid ' + borderColor : ''\n }\n }\n : 'hidden'\n \"\n [ngClass]=\"{ disabled: disabled }\"\n [style.cursor]=\"disabled ? 'default' : 'pointer'\"\n (click)=\"toggleExpansion()\">\n <span class=\"cps-expansion-panel-prefix-icon\" *ngIf=\"prefixIcon\">\n <cps-icon\n [icon]=\"prefixIcon\"\n size=\"small\"\n [color]=\"disabled ? 'text-mild' : 'text-dark'\">\n </cps-icon>\n </span>\n <div class=\"cps-expansion-panel-title\">{{ headerTitle }}</div>\n <span class=\"cps-expansion-panel-chevron\" *ngIf=\"showChevron && !disabled\">\n <cps-icon icon=\"chevron-down\" size=\"small\" color=\"text-dark\"> </cps-icon>\n </span>\n </div>\n <div class=\"cps-expansion-panel-content\" #panelContentElem>\n <div class=\"cps-expansion-panel-content-inner\">\n <ng-content></ng-content>\n </div>\n </div>\n</div>\n", styles: [":host{display:flex}:host .cps-expansion-panel{overflow:hidden;font-family:Source Sans Pro,sans-serif;line-height:20px;color:var(--cps-color-text-dark)}:host .cps-expansion-panel-header{border-bottom-color:transparent;display:flex;align-items:center;padding:10px 16px 10px 24px;font-size:16px;justify-content:space-between;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}:host .cps-expansion-panel-header:hover{background-color:var(--cps-color-highlight-hover)}:host .cps-expansion-panel-header:active{background-color:var(--cps-color-highlight-active)}:host .cps-expansion-panel-header.disabled{pointer-events:none;color:var(--cps-color-text-mild)}:host .cps-expansion-panel-prefix-icon{display:flex;align-items:center;margin-right:12px;margin-bottom:2px}:host .cps-expansion-panel-prefix-icon cps-icon ::ng-deep .cps-icon{width:18px;height:18px}:host .cps-expansion-panel-title{flex:1 0 auto;display:inline-flex;font-weight:600}:host .cps-expansion-panel-chevron{width:16px;display:flex;align-items:center;transition-duration:.2s;margin-left:6px}:host .cps-expansion-panel-content{overflow:auto;color:var(--cps-color-text-dark);font-size:16px}:host .cps-expansion-panel-content-inner{padding:16px 24px}:host .cps-expansion-panel.expanded .cps-expansion-panel-content{max-height:500px}:host .cps-expansion-panel.expanded .cps-expansion-panel-chevron{transform:rotate(180deg)}\n"] }]
181
+ }], ctorParameters: () => [{ type: i1.AnimationBuilder }, { type: i0.Renderer2 }], propDecorators: { headerTitle: [{
182
+ type: Input
183
+ }], backgroundColor: [{
184
+ type: Input
185
+ }], showChevron: [{
186
+ type: Input
187
+ }], isExpanded: [{
188
+ type: Input
189
+ }], disabled: [{
190
+ type: Input
191
+ }], bordered: [{
192
+ type: Input
193
+ }], borderRadius: [{
194
+ type: Input
195
+ }], borderColor: [{
196
+ type: Input
197
+ }], width: [{
198
+ type: Input
199
+ }], prefixIcon: [{
200
+ type: Input
201
+ }], afterCollapse: [{
202
+ type: Output
203
+ }], afterExpand: [{
204
+ type: Output
205
+ }], panelContentElem: [{
206
+ type: ViewChild,
207
+ args: ['panelContentElem']
208
+ }] } });
209
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3BzLWV4cGFuc2lvbi1wYW5lbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jcHMtdWkta2l0L3NyYy9saWIvY29tcG9uZW50cy9jcHMtZXhwYW5zaW9uLXBhbmVsL2Nwcy1leHBhbnNpb24tcGFuZWwuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY3BzLXVpLWtpdC9zcmMvbGliL2NvbXBvbmVudHMvY3BzLWV4cGFuc2lvbi1wYW5lbC9jcHMtZXhwYW5zaW9uLXBhbmVsLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBRUwsU0FBUyxFQUVULFlBQVksRUFDWixLQUFLLEVBRUwsTUFBTSxFQUVOLFNBQVMsRUFDVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsZ0JBQWdCLEVBQVksTUFBTSxnQ0FBZ0MsQ0FBQztBQUM1RSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDdkQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQzlELE9BQU8sRUFJTCxPQUFPLEVBQ1AsS0FBSyxFQUNMLEtBQUssRUFDTCxVQUFVLEVBQ1YsT0FBTyxFQUNSLE1BQU0scUJBQXFCLENBQUM7Ozs7QUFFN0IsTUFBTSxjQUFjLEdBQUcsbUNBQW1DLENBQUM7QUFFM0Q7OztHQUdHO0FBMkJILE1BQU0sT0FBTywwQkFBMEI7SUFpRnJDLFlBQ1UsaUJBQW1DLEVBQ25DLFNBQW9CO1FBRHBCLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBa0I7UUFDbkMsY0FBUyxHQUFULFNBQVMsQ0FBVztRQWxGOUI7OztXQUdHO1FBQ00sZ0JBQVcsR0FBRyxFQUFFLENBQUM7UUFFMUI7OztXQUdHO1FBQ00sb0JBQWUsR0FBRyxh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QUFDOzRCQUMzRCxVQUFVLENBQUMsV0FBVyxFQUFFLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQzt5QkFDcEMsQ0FBQztxQkFDSDs2R0FPUSxXQUFXO3NCQUFuQixLQUFLO2dCQU1HLGVBQWU7c0JBQXZCLEtBQUs7Z0JBTUcsV0FBVztzQkFBbkIsS0FBSztnQkFNRyxVQUFVO3NCQUFsQixLQUFLO2dCQU1HLFFBQVE7c0JBQWhCLEtBQUs7Z0JBTUcsUUFBUTtzQkFBaEIsS0FBSztnQkFNRyxZQUFZO3NCQUFwQixLQUFLO2dCQU1HLFdBQVc7c0JBQW5CLEtBQUs7Z0JBTUcsS0FBSztzQkFBYixLQUFLO2dCQU1HLFVBQVU7c0JBQWxCLEtBQUs7Z0JBT0ksYUFBYTtzQkFBdEIsTUFBTTtnQkFPRyxXQUFXO3NCQUFwQixNQUFNO2dCQUV3QixnQkFBZ0I7c0JBQTlDLFNBQVM7dUJBQUMsa0JBQWtCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gIEFmdGVyVmlld0luaXQsXG4gIENvbXBvbmVudCxcbiAgRWxlbWVudFJlZixcbiAgRXZlbnRFbWl0dGVyLFxuICBJbnB1dCxcbiAgT25Jbml0LFxuICBPdXRwdXQsXG4gIFJlbmRlcmVyMixcbiAgVmlld0NoaWxkXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ3BzSWNvbkNvbXBvbmVudCwgSWNvblR5cGUgfSBmcm9tICcuLi9jcHMtaWNvbi9jcHMtaWNvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgZ2V0Q1NTQ29sb3IgfSBmcm9tICcuLi8uLi91dGlscy9jb2xvcnMtdXRpbHMnO1xuaW1wb3J0IHsgY29udmVydFNpemUgfSBmcm9tICcuLi8uLi91dGlscy9pbnRlcm5hbC9zaXplLXV0aWxzJztcbmltcG9ydCB7XG4gIEFuaW1hdGlvbkJ1aWxkZXIsXG4gIEFuaW1hdGlvbkZhY3RvcnksXG4gIEFuaW1hdGlvblBsYXllcixcbiAgYW5pbWF0ZSxcbiAgc3RhdGUsXG4gIHN0eWxlLFxuICB0cmFuc2l0aW9uLFxuICB0cmlnZ2VyXG59IGZyb20gJ0Bhbmd1bGFyL2FuaW1hdGlvbnMnO1xuXG5jb25zdCB0cmFuc2l0aW9uVHlwZSA9ICcwLjJzIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSknO1xuXG4vKipcbiAqIENwc0V4cGFuc2lvblBhbmVsQ29tcG9uZW50IGlzIGEgY29tcG9uZW50IHRoYXQgcHJvdmlkZXMgY29udGVudCBvbiBleHBhbnNpb24uXG4gKiBAZ3JvdXAgQ29tcG9uZW50c1xuICovXG5AQ29tcG9uZW50KHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgQ3BzSWNvbkNvbXBvbmVudF0sXG4gIHNlbGVjdG9yOiAnY3BzLWV4cGFuc2lvbi1wYW5lbCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9jcHMtZXhwYW5zaW9uLXBhbmVsLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vY3BzLWV4cGFuc2lvbi1wYW5lbC5jb21wb25lbnQuc2NzcyddLFxuICBhbmltYXRpb25zOiBbXG4gICAgdHJpZ2dlcigncGFuZWxIZWFkZXInLCBbXG4gICAgICBzdGF0ZShcbiAgICAgICAgJ2hpZGRlbicsXG4gICAgICAgIHN0eWxlKHtcbiAgICAgICAgICBib3JkZXJCb3R0b206ICcnXG4gICAgICAgIH0pXG4gICAgICApLFxuICAgICAgc3RhdGUoXG4gICAgICAgICd2aXNpYmxlJyxcbiAgICAgICAgc3R5bGUoe1xuICAgICAgICAgIGJvcmRlckJvdHRvbTogJ3t7Ym9yZGVyU3R5bGV9fSdcbiAgICAgICAgfSksXG4gICAgICAgIHsgcGFyYW1zOiB7IGJvcmRlclN0eWxlOiAnJyB9IH1cbiAgICAgICksXG4gICAgICB0cmFuc2l0aW9uKCd2aXNpYmxlIDw9PiBoaWRkZW4nLCBbYW5pbWF0ZSh0cmFuc2l0aW9uVHlwZSldKSxcbiAgICAgIHRyYW5zaXRpb24oJ3ZvaWQgPT4gKicsIGFuaW1hdGUoMCkpXG4gICAgXSlcbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBDcHNFeHBhbnNpb25QYW5lbENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgQWZ0ZXJWaWV3SW5pdCB7XG4gIC8qKlxuICAgKiBUaXRsZSBvZiB0aGUgZXhwYW5zaW9uUGFuZWwgZWxlbWVudC5cbiAgICogQGdyb3VwIFByb3BzXG4gICAqL1xuICBASW5wdXQoKSBoZWFkZXJUaXRsZSA9ICcnO1xuXG4gIC8qKlxuICAgKiBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBleHBhbnNpb24gcGFuZWwgZWxlbWVudC5cbiAgICogQGdyb3VwIFByb3BzXG4gICAqL1xuICBASW5wdXQoKSBiYWNrZ3JvdW5kQ29sb3IgPSAndHJhbnNwYXJlbnQnO1xuXG4gIC8qKlxuICAgKiBEZXRlcm1pbmVzIHdoZXRoZXIgdG8gc2hvdyB0aGUgY2hldnJvbiBpY29uLlxuICAgKiBAZ3JvdXAgUHJvcHNcbiAgICovXG4gIEBJbnB1dCgpIHNob3dDaGV2cm9uID0gdHJ1ZTtcblxuICAvKipcbiAgICogSW5kaWNhdGVzIGN1cnJlbnQgZXhwYW5zaW9uIHN0YXRlLlxuICAgKiBAZ3JvdXAgUHJvcHNcbiAgICovXG4gIEBJbnB1dCgpIGlzRXhwYW5kZWQgPSBmYWxzZTtcblxuICAvKipcbiAgICogRGV0ZXJtaW5lcyB3aGV0aGVyIGV4cGFuc2lvbiBwYW5lbCBpcyBkaXNhYmxlZC5cbiAgICogQGdyb3VwIFByb3BzXG4gICAqL1xuICBASW5wdXQoKSBkaXNhYmxlZCA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBJZiB0cnVlLCBleHBhbnNpb24gcGFuZWwgZWxlbWVudCB3aWxsIGhhdmUgYm9yZGVycy5cbiAgICogQGdyb3VwIFByb3BzXG4gICAqL1xuICBASW5wdXQoKSBib3JkZXJlZCA9IHRydWU7XG5cbiAgLyoqXG4gICAqIFRoZSBib3JkZXIgcmFkaXVzIG9mIHRoZSBjb21wb25lbnQuXG4gICAqIEBncm91cCBQcm9wc1xuICAgKi9cbiAgQElucHV0KCkgYm9yZGVyUmFkaXVzOiBudW1iZXIgfCBzdHJpbmcgPSAwO1xuXG4gIC8qKlxuICAgKiBCb3JkZXIgY29sb3Igb2YgdGhlIGV4cGFuc2lvbiBwYW5lbC5cbiAgICogQGdyb3VwIFByb3BzXG4gICAqL1xuICBASW5wdXQoKSBib3JkZXJDb2xvciA9ICdsaW5lLWxpZ2h0JztcblxuICAvKipcbiAgICogVGhlIHdpZHRoIG9mIHRoZSBleHBhbnNpb24gcGFuZWwgb2YgdHlwZSBudW1iZXIgZGVub3RpbmcgcGl4ZWxzIG9yIHN0cmluZy5cbiAgICogQGdyb3VwIFByb3BzXG4gICAqL1xuICBASW5wdXQoKSB3aWR0aDogbnVtYmVyIHwgc3RyaW5nID0gJzEwMCUnO1xuXG4gIC8qKlxuICAgKiBOYW1lIG9mIHRoZSBpY29uIGluIGZyb250IG9mIHRoZSB0aXRsZS5cbiAgICogQGdyb3VwIFByb3BzXG4gICAqL1xuICBASW5wdXQoKSBwcmVmaXhJY29uOiBJY29uVHlwZSA9ICcnO1xuXG4gIC8qKlxuICAgKiBDYWxsYmFjayB0byBpbnZva2UgYWZ0ZXIgYSB0YWIgZ2V0cyBjb2xsYXBzZWQuXG4gICAqIEBwYXJhbSB7dm9pZH1cbiAgICogQGdyb3VwIEVtaXRzXG4gICAqL1xuICBAT3V0cHV0KCkgYWZ0ZXJDb2xsYXBzZTogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuXG4gIC8qKlxuICAgKiBDYWxsYmFjayB0byBpbnZva2UgYWZ0ZXIgYSB0YWIgZ2V0cyBleHBhbmRlZC5cbiAgICogQHBhcmFtIHt2b2lkfVxuICAgKiBAZ3JvdXAgRW1pdHNcbiAgICovXG4gIEBPdXRwdXQoKSBhZnRlckV4cGFuZDogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuXG4gIEBWaWV3Q2hpbGQoJ3BhbmVsQ29udGVudEVsZW0nKSBwYW5lbENvbnRlbnRFbGVtITogRWxlbWVudFJlZjtcblxuICBwcml2YXRlIF9jb250ZW50RXhwYW5kQW5pbWF0aW9uOiBBbmltYXRpb25GYWN0b3J5O1xuICBwcml2YXRlIF9jb250ZW50Q29sbGFwc2VBbmltYXRpb246IEFuaW1hdGlvbkZhY3Rvcnk7XG4gIHByaXZhdGUgX2NvbnRlbnRBbmltYXRpb25QbGF5ZXI6IEFuaW1hdGlvblBsYXllciB8IHVuZGVmaW5lZDtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIF9hbmltYXRpb25CdWlsZGVyOiBBbmltYXRpb25CdWlsZGVyLFxuICAgIHByaXZhdGUgX3JlbmRlcmVyOiBSZW5kZXJlcjJcbiAgKSB7XG4gICAgdGhpcy5fY29udGVudENvbGxhcHNlQW5pbWF0aW9uID0gdGhpcy5fYW5pbWF0aW9uQnVpbGRlci5idWlsZChbXG4gICAgICBzdHlsZSh7XG4gICAgICAgIGhlaWdodDogJyonXG4gICAgICB9KSxcbiAgICAgIGFuaW1hdGUoXG4gICAgICAgIHRyYW5zaXRpb25UeXBlLFxuICAgICAgICBzdHlsZSh7XG4gICAgICAgICAgaGVpZ2h0OiAwXG4gICAgICAgIH0pXG4gICAgICApXG4gICAgXSk7XG5cbiAgICB0aGlzLl9jb250ZW50RXhwYW5kQW5pbWF0aW9uID0gdGhpcy5fYW5pbWF0aW9uQnVpbGRlci5idWlsZChbXG4gICAgICBzdHlsZSh7XG4gICAgICAgIGhlaWdodDogMFxuICAgICAgfSksXG4gICAgICBhbmltYXRlKFxuICAgICAgICB0cmFuc2l0aW9uVHlwZSxcbiAgICAgICAgc3R5bGUoe1xuICAgICAgICAgIGhlaWdodDogJyonXG4gICAgICAgIH0pXG4gICAgICApXG4gICAgXSk7XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmJvcmRlckNvbG9yID0gZ2V0Q1NTQ29sb3IodGhpcy5ib3JkZXJDb2xvcik7XG4gICAgdGhpcy5iYWNrZ3JvdW5kQ29sb3IgPSBnZXRDU1NDb2xvcih0aGlzLmJhY2tncm91bmRDb2xvcik7XG4gICAgdGhpcy5ib3JkZXJSYWRpdXMgPSBjb252ZXJ0U2l6ZSh0aGlzLmJvcmRlclJhZGl1cyk7XG4gICAgdGhpcy53aWR0aCA9IGNvbnZlcnRTaXplKHRoaXMud2lkdGgpO1xuICB9XG5cbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5pc0V4cGFuZGVkKSB7XG4gICAgICB0aGlzLl91cGRhdGVDb250ZW50VmlzaWJpbGl0eVN0eWxlcyhmYWxzZSk7XG4gICAgfVxuICB9XG5cbiAgdG9nZ2xlRXhwYW5zaW9uKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLmRpc2FibGVkIHx8IHRoaXMuX2NvbnRlbnRBbmltYXRpb25QbGF5ZXIpIHJldHVybjtcblxuICAgIGNvbnN0IGVsID0gdGhpcy5wYW5lbENvbnRlbnRFbGVtPy5uYXRpdmVFbGVtZW50O1xuICAgIGlmICh0aGlzLmlzRXhwYW5kZWQpIHtcbiAgICAgIHRoaXMuX2NvbnRlbnRBbmltYXRpb25QbGF5ZXIgPSB0aGlzLl9jb250ZW50Q29sbGFwc2VBbmltYXRpb24uY3JlYXRlKGVsKTtcbiAgICAgIHRoaXMuX2NvbnRlbnRBbmltYXRpb25QbGF5ZXIub25Eb25lKCgpID0+IHtcbiAgICAgICAgdGhpcy5fdXBkYXRlQ29udGVudFZpc2liaWxpdHlTdHlsZXMoZmFsc2UsIGVsKTtcbiAgICAgIH0pO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLl91cGRhdGVDb250ZW50VmlzaWJpbGl0eVN0eWxlcyh0cnVlLCBlbCk7XG4gICAgICB0aGlzLl9jb250ZW50QW5pbWF0aW9uUGxheWVyID0gdGhpcy5fY29udGVudEV4cGFuZEFuaW1hdGlvbi5jcmVhdGUoZWwpO1xuICAgIH1cblxuICAgIHRoaXMuX2NvbnRlbnRBbmltYXRpb25QbGF5ZXIub25TdGFydCgoKSA9PiB7XG4gICAgICB0aGlzLl9yZW5kZXJlci5zZXRTdHlsZShlbCwgJ292ZXJmbG93JywgJ2hpZGRlbicpO1xuICAgIH0pO1xuXG4gICAgdGhpcy5fY29udGVudEFuaW1hdGlvblBsYXllci5vbkRvbmUoKCkgPT4ge1xuICAgICAgdGhpcy5fcmVuZGVyZXIucmVtb3ZlU3R5bGUoZWwsICdvdmVyZmxvdycpO1xuICAgICAgdGhpcy5fY29udGVudEFuaW1hdGlvblBsYXllcj8uZGVzdHJveSgpO1xuICAgICAgdGhpcy5fY29udGVudEFuaW1hdGlvblBsYXllciA9IHVuZGVmaW5lZDtcbiAgICB9KTtcblxuICAgIHRoaXMuX2NvbnRlbnRBbmltYXRpb25QbGF5ZXIucGxheSgpO1xuXG4gICAgdGhpcy5pc0V4cGFuZGVkID0gIXRoaXMuaXNFeHBhbmRlZDtcblxuICAgIGlmICh0aGlzLmlzRXhwYW5kZWQpIHtcbiAgICAgIHRoaXMuYWZ0ZXJFeHBhbmQuZW1pdCgpO1xuICAgIH1cbiAgICBpZiAoIXRoaXMuaXNFeHBhbmRlZCkge1xuICAgICAgdGhpcy5hZnRlckNvbGxhcHNlLmVtaXQoKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF91cGRhdGVDb250ZW50VmlzaWJpbGl0eVN0eWxlcyhpc1Zpc2libGU6IGJvb2xlYW4sIGVsPzogYW55KSB7XG4gICAgZWwgPSBlbCB8fCB0aGlzLnBhbmVsQ29udGVudEVsZW0/Lm5hdGl2ZUVsZW1lbnQ7XG4gICAgaWYgKCFlbCkgcmV0dXJuO1xuXG4gICAgaWYgKGlzVmlzaWJsZSkge1xuICAgICAgdGhpcy5fcmVuZGVyZXIucmVtb3ZlU3R5bGUoZWwsICdoZWlnaHQnKTtcbiAgICAgIHRoaXMuX3JlbmRlcmVyLnJlbW92ZVN0eWxlKGVsLCAndmlzaWJpbGl0eScpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLl9yZW5kZXJlci5zZXRTdHlsZShlbCwgJ2hlaWdodCcsICcwJyk7XG4gICAgICB0aGlzLl9yZW5kZXJlci5zZXRTdHlsZShlbCwgJ3Zpc2liaWxpdHknLCAnaGlkZGVuJyk7XG4gICAgfVxuICB9XG59XG4iLCI8ZGl2XG4gIGNsYXNzPVwiY3BzLWV4cGFuc2lvbi1wYW5lbFwiXG4gIFtjbGFzcy5leHBhbmRlZF09XCJpc0V4cGFuZGVkXCJcbiAgW25nU3R5bGVdPVwie1xuICAgICdiYWNrZ3JvdW5kLWNvbG9yJzogYmFja2dyb3VuZENvbG9yLFxuICAgICdib3JkZXItcmFkaXVzJzogYm9yZGVyUmFkaXVzLFxuICAgIHdpZHRoOiB3aWR0aCxcbiAgICBib3JkZXI6IGJvcmRlcmVkID8gJzFweCBzb2xpZCAnICsgYm9yZGVyQ29sb3IgOiAnJ1xuICB9XCI+XG4gIDxkaXZcbiAgICBjbGFzcz1cImNwcy1leHBhbnNpb24tcGFuZWwtaGVhZGVyXCJcbiAgICBbQHBhbmVsSGVhZGVyXT1cIlxuICAgICAgaXNFeHBhbmRlZFxuICAgICAgICA/IHtcbiAgICAgICAgICAgIHZhbHVlOiAndmlzaWJsZScsXG4gICAgICAgICAgICBwYXJhbXM6IHtcbiAgICAgICAgICAgICAgYm9yZGVyU3R5bGU6IGJvcmRlcmVkID8gJzFweCBzb2xpZCAnICsgYm9yZGVyQ29sb3IgOiAnJ1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgOiAnaGlkZGVuJ1xuICAgIFwiXG4gICAgW25nQ2xhc3NdPVwieyBkaXNhYmxlZDogZGlzYWJsZWQgfVwiXG4gICAgW3N0eWxlLmN1cnNvcl09XCJkaXNhYmxlZCA/ICdkZWZhdWx0JyA6ICdwb2ludGVyJ1wiXG4gICAgKGNsaWNrKT1cInRvZ2dsZUV4cGFuc2lvbigpXCI+XG4gICAgPHNwYW4gY2xhc3M9XCJjcHMtZXhwYW5zaW9uLXBhbmVsLXByZWZpeC1pY29uXCIgKm5nSWY9XCJwcmVmaXhJY29uXCI+XG4gICAgICA8Y3BzLWljb25cbiAgICAgICAgW2ljb25dPVwicHJlZml4SWNvblwiXG4gICAgICAgIHNpemU9XCJzbWFsbFwiXG4gICAgICAgIFtjb2xvcl09XCJkaXNhYmxlZCA/ICd0ZXh0LW1pbGQnIDogJ3RleHQtZGFyaydcIj5cbiAgICAgIDwvY3BzLWljb24+XG4gICAgPC9zcGFuPlxuICAgIDxkaXYgY2xhc3M9XCJjcHMtZXhwYW5zaW9uLXBhbmVsLXRpdGxlXCI+e3sgaGVhZGVyVGl0bGUgfX08L2Rpdj5cbiAgICA8c3BhbiBjbGFzcz1cImNwcy1leHBhbnNpb24tcGFuZWwtY2hldnJvblwiICpuZ0lmPVwic2hvd0NoZXZyb24gJiYgIWRpc2FibGVkXCI+XG4gICAgICA8Y3BzLWljb24gaWNvbj1cImNoZXZyb24tZG93blwiIHNpemU9XCJzbWFsbFwiIGNvbG9yPVwidGV4dC1kYXJrXCI+IDwvY3BzLWljb24+XG4gICAgPC9zcGFuPlxuICA8L2Rpdj5cbiAgPGRpdiBjbGFzcz1cImNwcy1leHBhbnNpb24tcGFuZWwtY29udGVudFwiICNwYW5lbENvbnRlbnRFbGVtPlxuICAgIDxkaXYgY2xhc3M9XCJjcHMtZXhwYW5zaW9uLXBhbmVsLWNvbnRlbnQtaW5uZXJcIj5cbiAgICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
@@ -0,0 +1,138 @@
1
+ import { Component, EventEmitter, Input, Output } from '@angular/core';
2
+ import { CommonModule } from '@angular/common';
3
+ import { convertSize } from '../../utils/internal/size-utils';
4
+ import { CpsIconComponent } from '../cps-icon/cps-icon.component';
5
+ import { CpsProgressLinearComponent } from '../cps-progress-linear/cps-progress-linear.component';
6
+ import { catchError, of, take } from 'rxjs';
7
+ import * as i0 from "@angular/core";
8
+ import * as i1 from "@angular/common";
9
+ /**
10
+ * CpsFileUploadComponent is an advanced uploader with dragdrop support.
11
+ * @group Components
12
+ */
13
+ export class CpsFileUploadComponent {
14
+ constructor() {
15
+ /**
16
+ * Expected extensions of a file to be uploaded. E.g. 'doc or .doc'.
17
+ * @group Props
18
+ */
19
+ this.extensions = [];
20
+ /**
21
+ * Expected file description. E.g. 'Word document'.
22
+ * @group Props
23
+ */
24
+ this.fileDesc = 'Any file';
25
+ /**
26
+ * Width of the component, a number denoting pixels or a string.
27
+ * @group Props
28
+ */
29
+ this.width = '100%';
30
+ /**
31
+ * Callback for uploaded file processing.
32
+ * @group Props
33
+ */
34
+ this.fileProcessingCallback = undefined;
35
+ /**
36
+ * Callback to invoke when file is uploaded.
37
+ * @param {File} File
38
+ * @group Emits
39
+ */
40
+ this.fileUploaded = new EventEmitter();
41
+ /**
42
+ * Callback to invoke when file upload fails.
43
+ * @param {string} - file name
44
+ * @group Emits
45
+ */
46
+ this.fileUploadFailed = new EventEmitter();
47
+ /**
48
+ * Callback to invoke when uploaded file is removed.
49
+ * @param {string} - file name
50
+ * @group Emits
51
+ */
52
+ this.uploadedFileRemoved = new EventEmitter();
53
+ this.isDragoverFile = false;
54
+ this.extensionsString = '';
55
+ this.extensionsStringAsterisks = '';
56
+ this.isProcessingFile = false;
57
+ }
58
+ ngOnInit() {
59
+ this.width = convertSize(this.width);
60
+ this.extensions = this.extensions.map((ext) => ext.startsWith('.') ? ext : '.' + ext);
61
+ this.extensionsString = this.extensions.join(', ');
62
+ this.extensionsStringAsterisks = this.extensions
63
+ .map((ext) => '*' + ext)
64
+ .join(', ');
65
+ }
66
+ tryUploadFile(event) {
67
+ event.preventDefault();
68
+ event.stopPropagation();
69
+ this.isDragoverFile = false;
70
+ let file;
71
+ if (event.type === 'drop') {
72
+ file = event.dataTransfer?.files.item(0) ?? undefined;
73
+ }
74
+ else {
75
+ const files = event.target.files;
76
+ if (!files || files.length < 1)
77
+ return;
78
+ file = files.item(0) ?? undefined;
79
+ }
80
+ if (!this._isFileExtensionValid(file)) {
81
+ this.fileUploadFailed.emit(file?.name ?? '');
82
+ return;
83
+ }
84
+ this.uploadedFile = file;
85
+ if (this.uploadedFile) {
86
+ this.fileUploaded.emit(this.uploadedFile);
87
+ if (this.fileProcessingCallback) {
88
+ this.isProcessingFile = true;
89
+ this.fileProcessingCallback(this.uploadedFile)
90
+ .pipe(take(1), catchError(() => {
91
+ return of(false);
92
+ }))
93
+ .subscribe((res) => {
94
+ if (!res)
95
+ this.removeUploadedFile();
96
+ this.isProcessingFile = false;
97
+ });
98
+ }
99
+ }
100
+ }
101
+ removeUploadedFile() {
102
+ const name = this.uploadedFile?.name ?? '';
103
+ this.uploadedFile = undefined;
104
+ this.uploadedFileRemoved.emit(name);
105
+ }
106
+ _isFileExtensionValid(file) {
107
+ if (!file)
108
+ return false;
109
+ if (this.extensions.length < 1)
110
+ return true;
111
+ for (const ext of this.extensions) {
112
+ if (file.name.endsWith(ext))
113
+ return true;
114
+ }
115
+ return false;
116
+ }
117
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: CpsFileUploadComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
118
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.1.2", type: CpsFileUploadComponent, isStandalone: true, selector: "cps-file-upload", inputs: { extensions: "extensions", fileDesc: "fileDesc", width: "width", fileProcessingCallback: "fileProcessingCallback" }, outputs: { fileUploaded: "fileUploaded", fileUploadFailed: "fileUploadFailed", uploadedFileRemoved: "uploadedFileRemoved" }, ngImport: i0, template: "<div class=\"cps-file-upload\" [ngStyle]=\"{ width: width }\">\n <div\n class=\"cps-file-upload-dropzone\"\n [ngClass]=\"{\n 'dragged-over': isDragoverFile,\n 'with-uploads': uploadedFile?.name\n }\"\n (dragend)=\"isDragoverFile = false\"\n (dragenter)=\"isDragoverFile = true\"\n (dragleave)=\"isDragoverFile = false\"\n (dragover)=\"isDragoverFile = true\"\n (mouseleave)=\"isDragoverFile = false\"\n (drop)=\"tryUploadFile($event)\">\n <input\n (change)=\"tryUploadFile($event)\"\n type=\"file\"\n [accept]=\"extensionsString\"\n title=\"\" />\n <cps-icon icon=\"export\" size=\"large\" color=\"text-darkest\"></cps-icon>\n <div class=\"cps-file-upload-dropzone-title\">\n Drag&Drop or choose a file to upload\n </div>\n <span\n class=\"cps-file-upload-dropzone-file-desc\"\n *ngIf=\"fileDesc || extensionsStringAsterisks\"\n >{{ fileDesc }}\n {{\n extensionsStringAsterisks ? '(' + extensionsStringAsterisks + ')' : ''\n }}</span\n >\n <cps-progress-linear\n *ngIf=\"isProcessingFile && uploadedFile\"\n height=\"3\"\n radius=\"4\"\n opacity=\"0.3\"\n class=\"cps-file-upload-progress-bar\"\n bgColor=\"transparent\">\n </cps-progress-linear>\n </div>\n <div *ngIf=\"uploadedFile\" class=\"cps-file-upload-uploaded-files\">\n <div class=\"cps-file-upload-uploaded-file\">\n <div class=\"cps-file-upload-uploaded-file-title\">\n <cps-icon\n class=\"cps-file-upload-uploaded-file-status-icon\"\n [icon]=\"isProcessingFile ? 'pending' : 'toast-success'\"\n [color]=\"isProcessingFile ? 'warn' : 'success'\">\n </cps-icon>\n <div class=\"cps-file-upload-uploaded-file-name\">\n {{ uploadedFile.name }}\n </div>\n </div>\n <cps-icon\n *ngIf=\"!isProcessingFile\"\n class=\"cps-file-upload-uploaded-file-remove-icon\"\n icon=\"remove\"\n color=\"error\"\n (click)=\"removeUploadedFile()\">\n </cps-icon>\n </div>\n </div>\n</div>\n", styles: [":host{display:flex}:host .cps-file-upload .cps-file-upload-dropzone{font-family:Source Sans Pro,sans-serif;min-height:20px;padding:2rem;text-align:center;border:2px dashed var(--cps-color-calm);position:relative;border-radius:1rem}:host .cps-file-upload .cps-file-upload-dropzone:hover{background-color:var(--cps-color-highlight-hover)}:host .cps-file-upload .cps-file-upload-dropzone:active{background-color:var(--cps-color-highlight-selected)}:host .cps-file-upload .cps-file-upload-dropzone.dragged-over{background-color:var(--cps-color-highlight-selected)}:host .cps-file-upload .cps-file-upload-dropzone.with-uploads{border-bottom-right-radius:0;border-bottom-left-radius:0;border-bottom:1px dashed var(--cps-color-calm)}:host .cps-file-upload .cps-file-upload-dropzone input{cursor:pointer;opacity:0;position:absolute;width:100%;height:100%;top:0;left:0}:host .cps-file-upload .cps-file-upload-dropzone .cps-file-upload-dropzone-title{font-size:16px;margin:8px 0;color:var(--cps-color-calm);font-weight:600}:host .cps-file-upload .cps-file-upload-dropzone .cps-file-upload-dropzone-file-desc{font-size:18px;color:var(--cps-color-text-dark)}:host .cps-file-upload .cps-file-upload-dropzone .cps-file-upload-progress-bar{position:absolute;bottom:-2px;left:0}:host .cps-file-upload .cps-file-upload-uploaded-files{border-bottom:2px dashed var(--cps-color-calm);border-left:2px dashed var(--cps-color-calm);border-right:2px dashed var(--cps-color-calm);border-bottom-right-radius:16px;border-bottom-left-radius:16px;background-color:var(--cps-color-highlight-hover)}:host .cps-file-upload .cps-file-upload-uploaded-files .cps-file-upload-uploaded-file{cursor:default;display:flex;align-items:center;justify-content:space-between;padding:8px 12px}:host .cps-file-upload .cps-file-upload-uploaded-files .cps-file-upload-uploaded-file .cps-file-upload-uploaded-file-title{display:flex;align-items:center}:host .cps-file-upload .cps-file-upload-uploaded-files .cps-file-upload-uploaded-file .cps-file-upload-uploaded-file-title .cps-file-upload-uploaded-file-name{color:var(--cps-color-text-darkest);font-size:20px;margin:0 8px}:host .cps-file-upload .cps-file-upload-uploaded-files .cps-file-upload-uploaded-file .cps-file-upload-uploaded-file-remove-icon{cursor:pointer}:host .cps-file-upload .cps-file-upload-uploaded-files .cps-file-upload-uploaded-file .cps-file-upload-uploaded-file-remove-icon:hover ::ng-deep .cps-icon{color:var(--cps-color-error-darken1)!important}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: CpsIconComponent, selector: "cps-icon", inputs: ["icon", "size", "color"] }, { kind: "component", type: CpsProgressLinearComponent, selector: "cps-progress-linear", inputs: ["width", "height", "color", "bgColor", "opacity", "radius"] }] }); }
119
+ }
120
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: CpsFileUploadComponent, decorators: [{
121
+ type: Component,
122
+ args: [{ selector: 'cps-file-upload', standalone: true, imports: [CommonModule, CpsIconComponent, CpsProgressLinearComponent], template: "<div class=\"cps-file-upload\" [ngStyle]=\"{ width: width }\">\n <div\n class=\"cps-file-upload-dropzone\"\n [ngClass]=\"{\n 'dragged-over': isDragoverFile,\n 'with-uploads': uploadedFile?.name\n }\"\n (dragend)=\"isDragoverFile = false\"\n (dragenter)=\"isDragoverFile = true\"\n (dragleave)=\"isDragoverFile = false\"\n (dragover)=\"isDragoverFile = true\"\n (mouseleave)=\"isDragoverFile = false\"\n (drop)=\"tryUploadFile($event)\">\n <input\n (change)=\"tryUploadFile($event)\"\n type=\"file\"\n [accept]=\"extensionsString\"\n title=\"\" />\n <cps-icon icon=\"export\" size=\"large\" color=\"text-darkest\"></cps-icon>\n <div class=\"cps-file-upload-dropzone-title\">\n Drag&Drop or choose a file to upload\n </div>\n <span\n class=\"cps-file-upload-dropzone-file-desc\"\n *ngIf=\"fileDesc || extensionsStringAsterisks\"\n >{{ fileDesc }}\n {{\n extensionsStringAsterisks ? '(' + extensionsStringAsterisks + ')' : ''\n }}</span\n >\n <cps-progress-linear\n *ngIf=\"isProcessingFile && uploadedFile\"\n height=\"3\"\n radius=\"4\"\n opacity=\"0.3\"\n class=\"cps-file-upload-progress-bar\"\n bgColor=\"transparent\">\n </cps-progress-linear>\n </div>\n <div *ngIf=\"uploadedFile\" class=\"cps-file-upload-uploaded-files\">\n <div class=\"cps-file-upload-uploaded-file\">\n <div class=\"cps-file-upload-uploaded-file-title\">\n <cps-icon\n class=\"cps-file-upload-uploaded-file-status-icon\"\n [icon]=\"isProcessingFile ? 'pending' : 'toast-success'\"\n [color]=\"isProcessingFile ? 'warn' : 'success'\">\n </cps-icon>\n <div class=\"cps-file-upload-uploaded-file-name\">\n {{ uploadedFile.name }}\n </div>\n </div>\n <cps-icon\n *ngIf=\"!isProcessingFile\"\n class=\"cps-file-upload-uploaded-file-remove-icon\"\n icon=\"remove\"\n color=\"error\"\n (click)=\"removeUploadedFile()\">\n </cps-icon>\n </div>\n </div>\n</div>\n", styles: [":host{display:flex}:host .cps-file-upload .cps-file-upload-dropzone{font-family:Source Sans Pro,sans-serif;min-height:20px;padding:2rem;text-align:center;border:2px dashed var(--cps-color-calm);position:relative;border-radius:1rem}:host .cps-file-upload .cps-file-upload-dropzone:hover{background-color:var(--cps-color-highlight-hover)}:host .cps-file-upload .cps-file-upload-dropzone:active{background-color:var(--cps-color-highlight-selected)}:host .cps-file-upload .cps-file-upload-dropzone.dragged-over{background-color:var(--cps-color-highlight-selected)}:host .cps-file-upload .cps-file-upload-dropzone.with-uploads{border-bottom-right-radius:0;border-bottom-left-radius:0;border-bottom:1px dashed var(--cps-color-calm)}:host .cps-file-upload .cps-file-upload-dropzone input{cursor:pointer;opacity:0;position:absolute;width:100%;height:100%;top:0;left:0}:host .cps-file-upload .cps-file-upload-dropzone .cps-file-upload-dropzone-title{font-size:16px;margin:8px 0;color:var(--cps-color-calm);font-weight:600}:host .cps-file-upload .cps-file-upload-dropzone .cps-file-upload-dropzone-file-desc{font-size:18px;color:var(--cps-color-text-dark)}:host .cps-file-upload .cps-file-upload-dropzone .cps-file-upload-progress-bar{position:absolute;bottom:-2px;left:0}:host .cps-file-upload .cps-file-upload-uploaded-files{border-bottom:2px dashed var(--cps-color-calm);border-left:2px dashed var(--cps-color-calm);border-right:2px dashed var(--cps-color-calm);border-bottom-right-radius:16px;border-bottom-left-radius:16px;background-color:var(--cps-color-highlight-hover)}:host .cps-file-upload .cps-file-upload-uploaded-files .cps-file-upload-uploaded-file{cursor:default;display:flex;align-items:center;justify-content:space-between;padding:8px 12px}:host .cps-file-upload .cps-file-upload-uploaded-files .cps-file-upload-uploaded-file .cps-file-upload-uploaded-file-title{display:flex;align-items:center}:host .cps-file-upload .cps-file-upload-uploaded-files .cps-file-upload-uploaded-file .cps-file-upload-uploaded-file-title .cps-file-upload-uploaded-file-name{color:var(--cps-color-text-darkest);font-size:20px;margin:0 8px}:host .cps-file-upload .cps-file-upload-uploaded-files .cps-file-upload-uploaded-file .cps-file-upload-uploaded-file-remove-icon{cursor:pointer}:host .cps-file-upload .cps-file-upload-uploaded-files .cps-file-upload-uploaded-file .cps-file-upload-uploaded-file-remove-icon:hover ::ng-deep .cps-icon{color:var(--cps-color-error-darken1)!important}\n"] }]
123
+ }], propDecorators: { extensions: [{
124
+ type: Input
125
+ }], fileDesc: [{
126
+ type: Input
127
+ }], width: [{
128
+ type: Input
129
+ }], fileProcessingCallback: [{
130
+ type: Input
131
+ }], fileUploaded: [{
132
+ type: Output
133
+ }], fileUploadFailed: [{
134
+ type: Output
135
+ }], uploadedFileRemoved: [{
136
+ type: Output
137
+ }] } });
138
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3BzLWZpbGUtdXBsb2FkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Nwcy11aS1raXQvc3JjL2xpYi9jb21wb25lbnRzL2Nwcy1maWxlLXVwbG9hZC9jcHMtZmlsZS11cGxvYWQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY3BzLXVpLWtpdC9zcmMvbGliL2NvbXBvbmVudHMvY3BzLWZpbGUtdXBsb2FkL2Nwcy1maWxlLXVwbG9hZC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQy9FLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDOUQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDbEUsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sc0RBQXNELENBQUM7QUFDbEcsT0FBTyxFQUFjLFVBQVUsRUFBRSxFQUFFLEVBQUUsSUFBSSxFQUFFLE1BQU0sTUFBTSxDQUFDOzs7QUFFeEQ7OztHQUdHO0FBUUgsTUFBTSxPQUFPLHNCQUFzQjtJQVBuQztRQVFFOzs7V0FHRztRQUNNLGVBQVUsR0FBYSxFQUFFLENBQUM7UUFFbkM7OztXQUdHO1FBQ00sYUFBUSxHQUFHLFVBQVUsQ0FBQztRQUUvQjs7O1dBR0c7UUFDTSxVQUFLLEdBQW9CLE1BQU0sQ0FBQztRQUV6Qzs7O1dBR0c7UUFDTSwyQkFBc0IsR0FDN0IsU0FBUyxDQUFDO1FBRVo7Ozs7V0FJRztRQUNPLGlCQUFZLEdBQUcsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQUVsRDs7OztXQUlHO1FBQ08scUJBQWdCLEdBQUcsSUFB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dXQsIE9uSW5pdCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgY29udmVydFNpemUgfSBmcm9tICcuLi8uLi91dGlscy9pbnRlcm5hbC9zaXplLXV0aWxzJztcbmltcG9ydCB7IENwc0ljb25Db21wb25lbnQgfSBmcm9tICcuLi9jcHMtaWNvbi9jcHMtaWNvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgQ3BzUHJvZ3Jlc3NMaW5lYXJDb21wb25lbnQgfSBmcm9tICcuLi9jcHMtcHJvZ3Jlc3MtbGluZWFyL2Nwcy1wcm9ncmVzcy1saW5lYXIuY29tcG9uZW50JztcbmltcG9ydCB7IE9ic2VydmFibGUsIGNhdGNoRXJyb3IsIG9mLCB0YWtlIH0gZnJvbSAncnhqcyc7XG5cbi8qKlxuICogQ3BzRmlsZVVwbG9hZENvbXBvbmVudCBpcyBhbiBhZHZhbmNlZCB1cGxvYWRlciB3aXRoIGRyYWdkcm9wIHN1cHBvcnQuXG4gKiBAZ3JvdXAgQ29tcG9uZW50c1xuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdjcHMtZmlsZS11cGxvYWQnLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBDcHNJY29uQ29tcG9uZW50LCBDcHNQcm9ncmVzc0xpbmVhckNvbXBvbmVudF0sXG4gIHRlbXBsYXRlVXJsOiAnLi9jcHMtZmlsZS11cGxvYWQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9jcHMtZmlsZS11cGxvYWQuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBDcHNGaWxlVXBsb2FkQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgLyoqXG4gICAqIEV4cGVjdGVkIGV4dGVuc2lvbnMgb2YgYSBmaWxlIHRvIGJlIHVwbG9hZGVkLiBFLmcuICdkb2Mgb3IgLmRvYycuXG4gICAqIEBncm91cCBQcm9wc1xuICAgKi9cbiAgQElucHV0KCkgZXh0ZW5zaW9uczogc3RyaW5nW10gPSBbXTtcblxuICAvKipcbiAgICogRXhwZWN0ZWQgZmlsZSBkZXNjcmlwdGlvbi4gRS5nLiAnV29yZCBkb2N1bWVudCcuXG4gICAqIEBncm91cCBQcm9wc1xuICAgKi9cbiAgQElucHV0KCkgZmlsZURlc2MgPSAnQW55IGZpbGUnO1xuXG4gIC8qKlxuICAgKiBXaWR0aCBvZiB0aGUgY29tcG9uZW50LCBhIG51bWJlciBkZW5vdGluZyBwaXhlbHMgb3IgYSBzdHJpbmcuXG4gICAqIEBncm91cCBQcm9wc1xuICAgKi9cbiAgQElucHV0KCkgd2lkdGg6IG51bWJlciB8IHN0cmluZyA9ICcxMDAlJztcblxuICAvKipcbiAgICogQ2FsbGJhY2sgZm9yIHVwbG9hZGVkIGZpbGUgcHJvY2Vzc2luZy5cbiAgICogQGdyb3VwIFByb3BzXG4gICAqL1xuICBASW5wdXQoKSBmaWxlUHJvY2Vzc2luZ0NhbGxiYWNrPzogKGZpbGU6IEZpbGUpID0+IE9ic2VydmFibGU8Ym9vbGVhbj4gPVxuICAgIHVuZGVmaW5lZDtcblxuICAvKipcbiAgICogQ2FsbGJhY2sgdG8gaW52b2tlIHdoZW4gZmlsZSBpcyB1cGxvYWRlZC5cbiAgICogQHBhcmFtIHtGaWxlfSBGaWxlXG4gICAqIEBncm91cCBFbWl0c1xuICAgKi9cbiAgQE91dHB1dCgpIGZpbGVVcGxvYWRlZCA9IG5ldyBFdmVudEVtaXR0ZXI8RmlsZT4oKTtcblxuICAvKipcbiAgICogQ2FsbGJhY2sgdG8gaW52b2tlIHdoZW4gZmlsZSB1cGxvYWQgZmFpbHMuXG4gICAqIEBwYXJhbSB7c3RyaW5nfSAtIGZpbGUgbmFtZVxuICAgKiBAZ3JvdXAgRW1pdHNcbiAgICovXG4gIEBPdXRwdXQoKSBmaWxlVXBsb2FkRmFpbGVkID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XG5cbiAgLyoqXG4gICAqIENhbGxiYWNrIHRvIGludm9rZSB3aGVuIHVwbG9hZGVkIGZpbGUgaXMgcmVtb3ZlZC5cbiAgICogQHBhcmFtIHtzdHJpbmd9IC0gZmlsZSBuYW1lXG4gICAqIEBncm91cCBFbWl0c1xuICAgKi9cbiAgQE91dHB1dCgpIHVwbG9hZGVkRmlsZVJlbW92ZWQgPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKTtcblxuICBpc0RyYWdvdmVyRmlsZSA9IGZhbHNlO1xuICB1cGxvYWRlZEZpbGU/OiBGaWxlO1xuICBleHRlbnNpb25zU3RyaW5nID0gJyc7XG4gIGV4dGVuc2lvbnNTdHJpbmdBc3Rlcmlza3MgPSAnJztcblxuICBpc1Byb2Nlc3NpbmdGaWxlID0gZmFsc2U7XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy53aWR0aCA9IGNvbnZlcnRTaXplKHRoaXMud2lkdGgpO1xuICAgIHRoaXMuZXh0ZW5zaW9ucyA9IHRoaXMuZXh0ZW5zaW9ucy5tYXAoKGV4dCkgPT5cbiAgICAgIGV4dC5zdGFydHNXaXRoKCcuJykgPyBleHQgOiAnLicgKyBleHRcbiAgICApO1xuICAgIHRoaXMuZXh0ZW5zaW9uc1N0cmluZyA9IHRoaXMuZXh0ZW5zaW9ucy5qb2luKCcsICcpO1xuICAgIHRoaXMuZXh0ZW5zaW9uc1N0cmluZ0FzdGVyaXNrcyA9IHRoaXMuZXh0ZW5zaW9uc1xuICAgICAgLm1hcCgoZXh0KSA9PiAnKicgKyBleHQpXG4gICAgICAuam9pbignLCAnKTtcbiAgfVxuXG4gIHRyeVVwbG9hZEZpbGUoZXZlbnQ6IEV2ZW50KSB7XG4gICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcblxuICAgIHRoaXMuaXNEcmFnb3ZlckZpbGUgPSBmYWxzZTtcbiAgICBsZXQgZmlsZTogRmlsZSB8IHVuZGVmaW5lZDtcblxuICAgIGlmIChldmVudC50eXBlID09PSAnZHJvcCcpIHtcbiAgICAgIGZpbGUgPSAoZXZlbnQgYXMgRHJhZ0V2ZW50KS5kYXRhVHJhbnNmZXI/LmZpbGVzLml0ZW0oMCkgPz8gdW5kZWZpbmVkO1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCBmaWxlcyA9IChldmVudC50YXJnZXQgYXMgSFRNTElucHV0RWxlbWVudCkuZmlsZXM7XG4gICAgICBpZiAoIWZpbGVzIHx8IGZpbGVzLmxlbmd0aCA8IDEpIHJldHVybjtcbiAgICAgIGZpbGUgPSBmaWxlcy5pdGVtKDApID8/IHVuZGVmaW5lZDtcbiAgICB9XG5cbiAgICBpZiAoIXRoaXMuX2lzRmlsZUV4dGVuc2lvblZhbGlkKGZpbGUpKSB7XG4gICAgICB0aGlzLmZpbGVVcGxvYWRGYWlsZWQuZW1pdChmaWxlPy5uYW1lID8/ICcnKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLnVwbG9hZGVkRmlsZSA9IGZpbGU7XG4gICAgaWYgKHRoaXMudXBsb2FkZWRGaWxlKSB7XG4gICAgICB0aGlzLmZpbGVVcGxvYWRlZC5lbWl0KHRoaXMudXBsb2FkZWRGaWxlKTtcbiAgICAgIGlmICh0aGlzLmZpbGVQcm9jZXNzaW5nQ2FsbGJhY2spIHtcbiAgICAgICAgdGhpcy5pc1Byb2Nlc3NpbmdGaWxlID0gdHJ1ZTtcbiAgICAgICAgdGhpcy5maWxlUHJvY2Vzc2luZ0NhbGxiYWNrKHRoaXMudXBsb2FkZWRGaWxlKVxuICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgdGFrZSgxKSxcbiAgICAgICAgICAgIGNhdGNoRXJyb3IoKCkgPT4ge1xuICAgICAgICAgICAgICByZXR1cm4gb2YoZmFsc2UpO1xuICAgICAgICAgICAgfSlcbiAgICAgICAgICApXG4gICAgICAgICAgLnN1YnNjcmliZSgocmVzKSA9PiB7XG4gICAgICAgICAgICBpZiAoIXJlcykgdGhpcy5yZW1vdmVVcGxvYWRlZEZpbGUoKTtcbiAgICAgICAgICAgIHRoaXMuaXNQcm9jZXNzaW5nRmlsZSA9IGZhbHNlO1xuICAgICAgICAgIH0pO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHJlbW92ZVVwbG9hZGVkRmlsZSgpIHtcbiAgICBjb25zdCBuYW1lID0gdGhpcy51cGxvYWRlZEZpbGU/Lm5hbWUgPz8gJyc7XG4gICAgdGhpcy51cGxvYWRlZEZpbGUgPSB1bmRlZmluZWQ7XG4gICAgdGhpcy51cGxvYWRlZEZpbGVSZW1vdmVkLmVtaXQobmFtZSk7XG4gIH1cblxuICBwcml2YXRlIF9pc0ZpbGVFeHRlbnNpb25WYWxpZChmaWxlPzogRmlsZSkge1xuICAgIGlmICghZmlsZSkgcmV0dXJuIGZhbHNlO1xuXG4gICAgaWYgKHRoaXMuZXh0ZW5zaW9ucy5sZW5ndGggPCAxKSByZXR1cm4gdHJ1ZTtcblxuICAgIGZvciAoY29uc3QgZXh0IG9mIHRoaXMuZXh0ZW5zaW9ucykge1xuICAgICAgaWYgKGZpbGUubmFtZS5lbmRzV2l0aChleHQpKSByZXR1cm4gdHJ1ZTtcbiAgICB9XG5cbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJjcHMtZmlsZS11cGxvYWRcIiBbbmdTdHlsZV09XCJ7IHdpZHRoOiB3aWR0aCB9XCI+XG4gIDxkaXZcbiAgICBjbGFzcz1cImNwcy1maWxlLXVwbG9hZC1kcm9wem9uZVwiXG4gICAgW25nQ2xhc3NdPVwie1xuICAgICAgJ2RyYWdnZWQtb3Zlcic6IGlzRHJhZ292ZXJGaWxlLFxuICAgICAgJ3dpdGgtdXBsb2Fkcyc6IHVwbG9hZGVkRmlsZT8ubmFtZVxuICAgIH1cIlxuICAgIChkcmFnZW5kKT1cImlzRHJhZ292ZXJGaWxlID0gZmFsc2VcIlxuICAgIChkcmFnZW50ZXIpPVwiaXNEcmFnb3ZlckZpbGUgPSB0cnVlXCJcbiAgICAoZHJhZ2xlYXZlKT1cImlzRHJhZ292ZXJGaWxlID0gZmFsc2VcIlxuICAgIChkcmFnb3Zlcik9XCJpc0RyYWdvdmVyRmlsZSA9IHRydWVcIlxuICAgIChtb3VzZWxlYXZlKT1cImlzRHJhZ292ZXJGaWxlID0gZmFsc2VcIlxuICAgIChkcm9wKT1cInRyeVVwbG9hZEZpbGUoJGV2ZW50KVwiPlxuICAgIDxpbnB1dFxuICAgICAgKGNoYW5nZSk9XCJ0cnlVcGxvYWRGaWxlKCRldmVudClcIlxuICAgICAgdHlwZT1cImZpbGVcIlxuICAgICAgW2FjY2VwdF09XCJleHRlbnNpb25zU3RyaW5nXCJcbiAgICAgIHRpdGxlPVwiXCIgLz5cbiAgICA8Y3BzLWljb24gaWNvbj1cImV4cG9ydFwiIHNpemU9XCJsYXJnZVwiIGNvbG9yPVwidGV4dC1kYXJrZXN0XCI+PC9jcHMtaWNvbj5cbiAgICA8ZGl2IGNsYXNzPVwiY3BzLWZpbGUtdXBsb2FkLWRyb3B6b25lLXRpdGxlXCI+XG4gICAgICBEcmFnJkRyb3Agb3IgY2hvb3NlIGEgZmlsZSB0byB1cGxvYWRcbiAgICA8L2Rpdj5cbiAgICA8c3BhblxuICAgICAgY2xhc3M9XCJjcHMtZmlsZS11cGxvYWQtZHJvcHpvbmUtZmlsZS1kZXNjXCJcbiAgICAgICpuZ0lmPVwiZmlsZURlc2MgfHwgZXh0ZW5zaW9uc1N0cmluZ0FzdGVyaXNrc1wiXG4gICAgICA+e3sgZmlsZURlc2MgfX1cbiAgICAgIHt7XG4gICAgICAgIGV4dGVuc2lvbnNTdHJpbmdBc3Rlcmlza3MgPyAnKCcgKyBleHRlbnNpb25zU3RyaW5nQXN0ZXJpc2tzICsgJyknIDogJydcbiAgICAgIH19PC9zcGFuXG4gICAgPlxuICAgIDxjcHMtcHJvZ3Jlc3MtbGluZWFyXG4gICAgICAqbmdJZj1cImlzUHJvY2Vzc2luZ0ZpbGUgJiYgdXBsb2FkZWRGaWxlXCJcbiAgICAgIGhlaWdodD1cIjNcIlxuICAgICAgcmFkaXVzPVwiNFwiXG4gICAgICBvcGFjaXR5PVwiMC4zXCJcbiAgICAgIGNsYXNzPVwiY3BzLWZpbGUtdXBsb2FkLXByb2dyZXNzLWJhclwiXG4gICAgICBiZ0NvbG9yPVwidHJhbnNwYXJlbnRcIj5cbiAgICA8L2Nwcy1wcm9ncmVzcy1saW5lYXI+XG4gIDwvZGl2PlxuICA8ZGl2ICpuZ0lmPVwidXBsb2FkZWRGaWxlXCIgY2xhc3M9XCJjcHMtZmlsZS11cGxvYWQtdXBsb2FkZWQtZmlsZXNcIj5cbiAgICA8ZGl2IGNsYXNzPVwiY3BzLWZpbGUtdXBsb2FkLXVwbG9hZGVkLWZpbGVcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJjcHMtZmlsZS11cGxvYWQtdXBsb2FkZWQtZmlsZS10aXRsZVwiPlxuICAgICAgICA8Y3BzLWljb25cbiAgICAgICAgICBjbGFzcz1cImNwcy1maWxlLXVwbG9hZC11cGxvYWRlZC1maWxlLXN0YXR1cy1pY29uXCJcbiAgICAgICAgICBbaWNvbl09XCJpc1Byb2Nlc3NpbmdGaWxlID8gJ3BlbmRpbmcnIDogJ3RvYXN0LXN1Y2Nlc3MnXCJcbiAgICAgICAgICBbY29sb3JdPVwiaXNQcm9jZXNzaW5nRmlsZSA/ICd3YXJuJyA6ICdzdWNjZXNzJ1wiPlxuICAgICAgICA8L2Nwcy1pY29uPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiY3BzLWZpbGUtdXBsb2FkLXVwbG9hZGVkLWZpbGUtbmFtZVwiPlxuICAgICAgICAgIHt7IHVwbG9hZGVkRmlsZS5uYW1lIH19XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgICA8Y3BzLWljb25cbiAgICAgICAgKm5nSWY9XCIhaXNQcm9jZXNzaW5nRmlsZVwiXG4gICAgICAgIGNsYXNzPVwiY3BzLWZpbGUtdXBsb2FkLXVwbG9hZGVkLWZpbGUtcmVtb3ZlLWljb25cIlxuICAgICAgICBpY29uPVwicmVtb3ZlXCJcbiAgICAgICAgY29sb3I9XCJlcnJvclwiXG4gICAgICAgIChjbGljayk9XCJyZW1vdmVVcGxvYWRlZEZpbGUoKVwiPlxuICAgICAgPC9jcHMtaWNvbj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
@@ -0,0 +1,193 @@
1
+ import { CommonModule } from '@angular/common';
2
+ import { Component, Input } from '@angular/core';
3
+ import { convertSize } from '../../utils/internal/size-utils';
4
+ import { getCSSColor } from '../../utils/colors-utils';
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "@angular/common";
7
+ export const iconNames = [
8
+ 'access',
9
+ 'access-denied',
10
+ 'access-lock',
11
+ 'access-menu',
12
+ 'access-unlock',
13
+ 'add',
14
+ 'add-domain',
15
+ 'attribute',
16
+ 'avatar',
17
+ 'avatar-top-menu',
18
+ 'bell',
19
+ 'book',
20
+ 'bookmark',
21
+ 'browse',
22
+ 'burger-arrow',
23
+ 'caret-down',
24
+ 'change',
25
+ 'checked',
26
+ 'chevron-down',
27
+ 'chevron-down-2',
28
+ 'circle',
29
+ 'cleansing',
30
+ 'close-x',
31
+ 'close-x-2',
32
+ 'columns',
33
+ 'community',
34
+ 'construction',
35
+ 'controls',
36
+ 'csv',
37
+ 'cube',
38
+ 'database',
39
+ 'datafeed',
40
+ 'datepicker',
41
+ 'delete',
42
+ 'dislike',
43
+ 'domain',
44
+ 'dots',
45
+ 'download',
46
+ 'dq',
47
+ 'dropdown-menu',
48
+ 'edit',
49
+ 'expand',
50
+ 'export',
51
+ 'eye',
52
+ 'filter',
53
+ 'filter_2',
54
+ 'filter-funnel',
55
+ 'filter-funnel-filled',
56
+ 'follow',
57
+ 'graph',
58
+ 'grid',
59
+ 'grid-view',
60
+ 'health',
61
+ 'heart',
62
+ 'help-circle',
63
+ 'home',
64
+ 'info-circle',
65
+ 'insight',
66
+ 'issues',
67
+ 'jpeg',
68
+ 'kris',
69
+ 'last-seen-product',
70
+ 'like',
71
+ 'line-vertical',
72
+ 'lock',
73
+ 'logout',
74
+ 'maximize',
75
+ 'menu-expand',
76
+ 'menu-shrink',
77
+ 'minimize',
78
+ 'minus',
79
+ 'move-grabber',
80
+ 'open',
81
+ 'path',
82
+ 'pdf',
83
+ 'pending',
84
+ 'plus',
85
+ 'projects',
86
+ 'question',
87
+ 'questions',
88
+ 'rectangle-rounded',
89
+ 'refresh',
90
+ 'remove',
91
+ 'right',
92
+ 'schema',
93
+ 'schema_filter',
94
+ 'search',
95
+ 'settings',
96
+ 'smart',
97
+ 'sort-icon-asc',
98
+ 'sort-icon-desc',
99
+ 'star',
100
+ 'stepper-completed',
101
+ 'success',
102
+ 'suggestion',
103
+ 'survivorship',
104
+ 'table-row-error',
105
+ 'table-row-success',
106
+ 'table-row-warning',
107
+ 'toast-error',
108
+ 'toast-info',
109
+ 'toast-success',
110
+ 'toast-warning',
111
+ 'tools',
112
+ 'user',
113
+ 'users',
114
+ 'vector',
115
+ 'vector-down',
116
+ 'vector-right',
117
+ 'vector-up',
118
+ 'wallet',
119
+ 'warning',
120
+ 'widget-button-icon',
121
+ 'xls'
122
+ ];
123
+ /**
124
+ * CpsIconComponent is a component that is used for icons.
125
+ * @group Components
126
+ */
127
+ export class CpsIconComponent {
128
+ constructor() {
129
+ /**
130
+ * Name of the icon.
131
+ * @group Props
132
+ */
133
+ this.icon = '';
134
+ /**
135
+ * Size of the icon, it can be of type number denoting pixels, string or 'fill', 'xsmall', 'small', 'normal' or 'large'.
136
+ * @group Props
137
+ */
138
+ this.size = 'small';
139
+ /**
140
+ * Color of the icon.
141
+ * @group Props
142
+ */
143
+ this.color = 'currentColor';
144
+ this.iconColor = 'currentColor';
145
+ this.url = 'assets/';
146
+ this.cvtSize = '';
147
+ this.classesList = ['cps-icon'];
148
+ }
149
+ ngOnChanges() {
150
+ this.iconColor = getCSSColor(this.color);
151
+ this.setClasses();
152
+ }
153
+ setClasses() {
154
+ switch (this.size) {
155
+ case 'fill': {
156
+ this.classesList.push('cps-icon--fill');
157
+ break;
158
+ }
159
+ case 'xsmall': {
160
+ this.classesList.push('cps-icon--xsmall');
161
+ break;
162
+ }
163
+ case 'small': {
164
+ this.classesList.push('cps-icon--small');
165
+ break;
166
+ }
167
+ case 'normal': {
168
+ this.classesList.push('cps-icon--normal');
169
+ break;
170
+ }
171
+ case 'large': {
172
+ this.classesList.push('cps-icon--large');
173
+ break;
174
+ }
175
+ default:
176
+ this.cvtSize = convertSize(this.size);
177
+ break;
178
+ }
179
+ }
180
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: CpsIconComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
181
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.1.2", type: CpsIconComponent, isStandalone: true, selector: "cps-icon", inputs: { icon: "icon", size: "size", color: "color" }, usesOnChanges: true, ngImport: i0, template: "<i\n *ngIf=\"icon\"\n [ngClass]=\"classesList\"\n [style.color]=\"iconColor\"\n [ngStyle]=\"{\n width: cvtSize || 'none',\n height: cvtSize || 'none',\n display: 'flex'\n }\">\n <svg>\n <use attr.xlink:href=\"{{ url }}icons.svg#{{ icon }}\"></use>\n </svg>\n</i>\n", styles: [":host{display:inline-flex}:host .cps-icon--fill{width:100%;height:100%}:host .cps-icon--xsmall{width:12px;height:12px}:host .cps-icon--small{width:16px;height:16px}:host .cps-icon--normal{width:24px;height:24px}:host .cps-icon--large{width:32px;height:32px}:host svg{color:inherit;fill:currentColor;height:100%;width:100%}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] }); }
182
+ }
183
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: CpsIconComponent, decorators: [{
184
+ type: Component,
185
+ args: [{ standalone: true, imports: [CommonModule], selector: 'cps-icon', template: "<i\n *ngIf=\"icon\"\n [ngClass]=\"classesList\"\n [style.color]=\"iconColor\"\n [ngStyle]=\"{\n width: cvtSize || 'none',\n height: cvtSize || 'none',\n display: 'flex'\n }\">\n <svg>\n <use attr.xlink:href=\"{{ url }}icons.svg#{{ icon }}\"></use>\n </svg>\n</i>\n", styles: [":host{display:inline-flex}:host .cps-icon--fill{width:100%;height:100%}:host .cps-icon--xsmall{width:12px;height:12px}:host .cps-icon--small{width:16px;height:16px}:host .cps-icon--normal{width:24px;height:24px}:host .cps-icon--large{width:32px;height:32px}:host svg{color:inherit;fill:currentColor;height:100%;width:100%}\n"] }]
186
+ }], propDecorators: { icon: [{
187
+ type: Input
188
+ }], size: [{
189
+ type: Input
190
+ }], color: [{
191
+ type: Input
192
+ }] } });
193
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3BzLWljb24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY3BzLXVpLWtpdC9zcmMvbGliL2NvbXBvbmVudHMvY3BzLWljb24vY3BzLWljb24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY3BzLXVpLWtpdC9zcmMvbGliL2NvbXBvbmVudHMvY3BzLWljb24vY3BzLWljb24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFhLE1BQU0sZUFBZSxDQUFDO0FBQzVELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUM5RCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sMEJBQTBCLENBQUM7OztBQUV2RCxNQUFNLENBQUMsTUFBTSxTQUFTLEdBQUc7SUFDdkIsUUFBUTtJQUNSLGVBQWU7SUFDZixhQUFhO0lBQ2IsYUFBYTtJQUNiLGVBQWU7SUFDZixLQUFLO0lBQ0wsWUFBWTtJQUNaLFdBQVc7SUFDWCxRQUFRO0lBQ1IsaUJBQWlCO0lBQ2pCLE1BQU07SUFDTixNQUFNO0lBQ04sVUFBVTtJQUNWLFFBQVE7SUFDUixjQUFjO0lBQ2QsWUFBWTtJQUNaLFFBQVE7SUFDUixTQUFTO0lBQ1QsY0FBYztJQUNkLGdCQUFnQjtJQUNoQixRQUFRO0lBQ1IsV0FBVztJQUNYLFNBQVM7SUFDVCxXQUFXO0lBQ1gsU0FBUztJQUNULFdBQVc7SUFDWCxjQUFjO0lBQ2QsVUFBVTtJQUNWLEtBQUs7SUFDTCxNQUFNO0lBQ04sVUFBVTtJQUNWLFVBQVU7SUFDVixZQUFZO0lBQ1osUUFBUTtJQUNSLFNBQVM7SUFDVCxRQUFRO0lBQ1IsTUFBTTtJQUNOLFVBQVU7SUFDVixJQUFJO0lBQ0osZUFBZTtJQUNm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QUN0QyxNQUFNO1FBQ1YsQ0FBQztJQUNILENBQUM7OEdBeERVLGdCQUFnQjtrR0FBaEIsZ0JBQWdCLGlKQ2hKN0IsNlJBYUEsNlhEOEhZLFlBQVk7OzJGQUtYLGdCQUFnQjtrQkFQNUIsU0FBUztpQ0FDSSxJQUFJLFdBQ1AsQ0FBQyxZQUFZLENBQUMsWUFDYixVQUFVOzhCQVNYLElBQUk7c0JBQVosS0FBSztnQkFNRyxJQUFJO3NCQUFaLEtBQUs7Z0JBTUcsS0FBSztzQkFBYixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE9uQ2hhbmdlcyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgY29udmVydFNpemUgfSBmcm9tICcuLi8uLi91dGlscy9pbnRlcm5hbC9zaXplLXV0aWxzJztcbmltcG9ydCB7IGdldENTU0NvbG9yIH0gZnJvbSAnLi4vLi4vdXRpbHMvY29sb3JzLXV0aWxzJztcblxuZXhwb3J0IGNvbnN0IGljb25OYW1lcyA9IFtcbiAgJ2FjY2VzcycsXG4gICdhY2Nlc3MtZGVuaWVkJyxcbiAgJ2FjY2Vzcy1sb2NrJyxcbiAgJ2FjY2Vzcy1tZW51JyxcbiAgJ2FjY2Vzcy11bmxvY2snLFxuICAnYWRkJyxcbiAgJ2FkZC1kb21haW4nLFxuICAnYXR0cmlidXRlJyxcbiAgJ2F2YXRhcicsXG4gICdhdmF0YXItdG9wLW1lbnUnLFxuICAnYmVsbCcsXG4gICdib29rJyxcbiAgJ2Jvb2ttYXJrJyxcbiAgJ2Jyb3dzZScsXG4gICdidXJnZXItYXJyb3cnLFxuICAnY2FyZXQtZG93bicsXG4gICdjaGFuZ2UnLFxuICAnY2hlY2tlZCcsXG4gICdjaGV2cm9uLWRvd24nLFxuICAnY2hldnJvbi1kb3duLTInLFxuICAnY2lyY2xlJyxcbiAgJ2NsZWFuc2luZycsXG4gICdjbG9zZS14JyxcbiAgJ2Nsb3NlLXgtMicsXG4gICdjb2x1bW5zJyxcbiAgJ2NvbW11bml0eScsXG4gICdjb25zdHJ1Y3Rpb24nLFxuICAnY29udHJvbHMnLFxuICAnY3N2JyxcbiAgJ2N1YmUnLFxuICAnZGF0YWJhc2UnLFxuICAnZGF0YWZlZWQnLFxuICAnZGF0ZXBpY2tlcicsXG4gICdkZWxldGUnLFxuICAnZGlzbGlrZScsXG4gICdkb21haW4nLFxuICAnZG90cycsXG4gICdkb3dubG9hZCcsXG4gICdkcScsXG4gICdkcm9wZG93bi1tZW51JyxcbiAgJ2VkaXQnLFxuICAnZXhwYW5kJyxcbiAgJ2V4cG9ydCcsXG4gICdleWUnLFxuICAnZmlsdGVyJyxcbiAgJ2ZpbHRlcl8yJyxcbiAgJ2ZpbHRlci1mdW5uZWwnLFxuICAnZmlsdGVyLWZ1bm5lbC1maWxsZWQnLFxuICAnZm9sbG93JyxcbiAgJ2dyYXBoJyxcbiAgJ2dyaWQnLFxuICAnZ3JpZC12aWV3JyxcbiAgJ2hlYWx0aCcsXG4gICdoZWFydCcsXG4gICdoZWxwLWNpcmNsZScsXG4gICdob21lJyxcbiAgJ2luZm8tY2lyY2xlJyxcbiAgJ2luc2lnaHQnLFxuICAnaXNzdWVzJyxcbiAgJ2pwZWcnLFxuICAna3JpcycsXG4gICdsYXN0LXNlZW4tcHJvZHVjdCcsXG4gICdsaWtlJyxcbiAgJ2xpbmUtdmVydGljYWwnLFxuICAnbG9jaycsXG4gICdsb2dvdXQnLFxuICAnbWF4aW1pemUnLFxuICAnbWVudS1leHBhbmQnLFxuICAnbWVudS1zaHJpbmsnLFxuICAnbWluaW1pemUnLFxuICAnbWludXMnLFxuICAnbW92ZS1ncmFiYmVyJyxcbiAgJ29wZW4nLFxuICAncGF0aCcsXG4gICdwZGYnLFxuICAncGVuZGluZycsXG4gICdwbHVzJyxcbiAgJ3Byb2plY3RzJyxcbiAgJ3F1ZXN0aW9uJyxcbiAgJ3F1ZXN0aW9ucycsXG4gICdyZWN0YW5nbGUtcm91bmRlZCcsXG4gICdyZWZyZXNoJyxcbiAgJ3JlbW92ZScsXG4gICdyaWdodCcsXG4gICdzY2hlbWEnLFxuICAnc2NoZW1hX2ZpbHRlcicsXG4gICdzZWFyY2gnLFxuICAnc2V0dGluZ3MnLFxuICAnc21hcnQnLFxuICAnc29ydC1pY29uLWFzYycsXG4gICdzb3J0LWljb24tZGVzYycsXG4gICdzdGFyJyxcbiAgJ3N0ZXBwZXItY29tcGxldGVkJyxcbiAgJ3N1Y2Nlc3MnLFxuICAnc3VnZ2VzdGlvbicsXG4gICdzdXJ2aXZvcnNoaXAnLFxuICAndGFibGUtcm93LWVycm9yJyxcbiAgJ3RhYmxlLXJvdy1zdWNjZXNzJyxcbiAgJ3RhYmxlLXJvdy13YXJuaW5nJyxcbiAgJ3RvYXN0LWVycm9yJyxcbiAgJ3RvYXN0LWluZm8nLFxuICAndG9hc3Qtc3VjY2VzcycsXG4gICd0b2FzdC13YXJuaW5nJyxcbiAgJ3Rvb2xzJyxcbiAgJ3VzZXInLFxuICAndXNlcnMnLFxuICAndmVjdG9yJyxcbiAgJ3ZlY3Rvci1kb3duJyxcbiAgJ3ZlY3Rvci1yaWdodCcsXG4gICd2ZWN0b3ItdXAnLFxuICAnd2FsbGV0JyxcbiAgJ3dhcm5pbmcnLFxuICAnd2lkZ2V0LWJ1dHRvbi1pY29uJyxcbiAgJ3hscydcbl07XG5cbmV4cG9ydCB0eXBlIEljb25UeXBlID0gKHR5cGVvZiBpY29uTmFtZXMpW251bWJlcl07XG5cbmV4cG9ydCB0eXBlIGljb25TaXplVHlwZSA9XG4gIHwgbnVtYmVyXG4gIHwgc3RyaW5nXG4gIHwgJ2ZpbGwnXG4gIHwgJ3hzbWFsbCdcbiAgfCAnc21hbGwnXG4gIHwgJ25vcm1hbCdcbiAgfCAnbGFyZ2UnO1xuXG4vKipcbiAqIENwc0ljb25Db21wb25lbnQgaXMgYSBjb21wb25lbnQgdGhhdCBpcyB1c2VkIGZvciBpY29ucy5cbiAqIEBncm91cCBDb21wb25lbnRzXG4gKi9cbkBDb21wb25lbnQoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlXSxcbiAgc2VsZWN0b3I6ICdjcHMtaWNvbicsXG4gIHRlbXBsYXRlVXJsOiAnLi9jcHMtaWNvbi5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2Nwcy1pY29uLmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgQ3BzSWNvbkNvbXBvbmVudCBpbXBsZW1lbnRzIE9uQ2hhbmdlcyB7XG4gIC8qKlxuICAgKiBOYW1lIG9mIHRoZSBpY29uLlxuICAgKiBAZ3JvdXAgUHJvcHNcbiAgICovXG4gIEBJbnB1dCgpIGljb246IEljb25UeXBlID0gJyc7XG5cbiAgLyoqXG4gICAqIFNpemUgb2YgdGhlIGljb24sIGl0IGNhbiBiZSBvZiB0eXBlIG51bWJlciBkZW5vdGluZyBwaXhlbHMsIHN0cmluZyBvciAnZmlsbCcsICd4c21hbGwnLCAnc21hbGwnLCAnbm9ybWFsJyBvciAnbGFyZ2UnLlxuICAgKiBAZ3JvdXAgUHJvcHNcbiAgICovXG4gIEBJbnB1dCgpIHNpemU6IGljb25TaXplVHlwZSA9ICdzbWFsbCc7XG5cbiAgLyoqXG4gICAqIENvbG9yIG9mIHRoZSBpY29uLlxuICAgKiBAZ3JvdXAgUHJvcHNcbiAgICovXG4gIEBJbnB1dCgpIGNvbG9yID0gJ2N1cnJlbnRDb2xvcic7XG5cbiAgaWNvbkNvbG9yID0gJ2N1cnJlbnRDb2xvcic7XG4gIHVybCA9ICdhc3NldHMvJztcbiAgY3Z0U2l6ZSA9ICcnO1xuXG4gIGNsYXNzZXNMaXN0OiBzdHJpbmdbXSA9IFsnY3BzLWljb24nXTtcblxuICBuZ09uQ2hhbmdlcygpOiB2b2lkIHtcbiAgICB0aGlzLmljb25Db2xvciA9IGdldENTU0NvbG9yKHRoaXMuY29sb3IpO1xuICAgIHRoaXMuc2V0Q2xhc3NlcygpO1xuICB9XG5cbiAgc2V0Q2xhc3NlcygpOiB2b2lkIHtcbiAgICBzd2l0Y2ggKHRoaXMuc2l6ZSkge1xuICAgICAgY2FzZSAnZmlsbCc6IHtcbiAgICAgICAgdGhpcy5jbGFzc2VzTGlzdC5wdXNoKCdjcHMtaWNvbi0tZmlsbCcpO1xuICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgICAgIGNhc2UgJ3hzbWFsbCc6IHtcbiAgICAgICAgdGhpcy5jbGFzc2VzTGlzdC5wdXNoKCdjcHMtaWNvbi0teHNtYWxsJyk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgICAgY2FzZSAnc21hbGwnOiB7XG4gICAgICAgIHRoaXMuY2xhc3Nlc0xpc3QucHVzaCgnY3BzLWljb24tLXNtYWxsJyk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgICAgY2FzZSAnbm9ybWFsJzoge1xuICAgICAgICB0aGlzLmNsYXNzZXNMaXN0LnB1c2goJ2Nwcy1pY29uLS1ub3JtYWwnKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgICBjYXNlICdsYXJnZSc6IHtcbiAgICAgICAgdGhpcy5jbGFzc2VzTGlzdC5wdXNoKCdjcHMtaWNvbi0tbGFyZ2UnKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgICBkZWZhdWx0OlxuICAgICAgICB0aGlzLmN2dFNpemUgPSBjb252ZXJ0U2l6ZSh0aGlzLnNpemUpO1xuICAgICAgICBicmVhaztcbiAgICB9XG4gIH1cbn1cbiIsIjxpXG4gICpuZ0lmPVwiaWNvblwiXG4gIFtuZ0NsYXNzXT1cImNsYXNzZXNMaXN0XCJcbiAgW3N0eWxlLmNvbG9yXT1cImljb25Db2xvclwiXG4gIFtuZ1N0eWxlXT1cIntcbiAgICB3aWR0aDogY3Z0U2l6ZSB8fCAnbm9uZScsXG4gICAgaGVpZ2h0OiBjdnRTaXplIHx8ICdub25lJyxcbiAgICBkaXNwbGF5OiAnZmxleCdcbiAgfVwiPlxuICA8c3ZnPlxuICAgIDx1c2UgYXR0ci54bGluazpocmVmPVwie3sgdXJsIH19aWNvbnMuc3ZnI3t7IGljb24gfX1cIj48L3VzZT5cbiAgPC9zdmc+XG48L2k+XG4iXX0=