@onemrvapublic/design-system 21.3.0-develop.1 → 21.4.0-develop.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (84) hide show
  1. package/README.md +3 -3
  2. package/card/src/onemrva-card.component.scss +0 -1
  3. package/fesm2022/onemrvapublic-design-system-card.mjs +20 -20
  4. package/fesm2022/onemrvapublic-design-system-card.mjs.map +1 -1
  5. package/fesm2022/onemrvapublic-design-system-flag-icon.mjs +6 -6
  6. package/fesm2022/onemrvapublic-design-system-flag-icon.mjs.map +1 -1
  7. package/fesm2022/onemrvapublic-design-system-layout.mjs +111 -111
  8. package/fesm2022/onemrvapublic-design-system-layout.mjs.map +1 -1
  9. package/fesm2022/onemrvapublic-design-system-mat-address.mjs +5 -5
  10. package/fesm2022/onemrvapublic-design-system-mat-address.mjs.map +1 -1
  11. package/fesm2022/onemrvapublic-design-system-mat-avatar.mjs +22 -22
  12. package/fesm2022/onemrvapublic-design-system-mat-avatar.mjs.map +1 -1
  13. package/fesm2022/onemrvapublic-design-system-mat-breadcrumb.mjs +12 -12
  14. package/fesm2022/onemrvapublic-design-system-mat-breadcrumb.mjs.map +1 -1
  15. package/fesm2022/onemrvapublic-design-system-mat-carousel.mjs +14 -14
  16. package/fesm2022/onemrvapublic-design-system-mat-carousel.mjs.map +1 -1
  17. package/fesm2022/onemrvapublic-design-system-mat-choice-chip.mjs +8 -8
  18. package/fesm2022/onemrvapublic-design-system-mat-choice-chip.mjs.map +1 -1
  19. package/fesm2022/onemrvapublic-design-system-mat-copy-to-clipboard.mjs +4 -4
  20. package/fesm2022/onemrvapublic-design-system-mat-copy-to-clipboard.mjs.map +1 -1
  21. package/fesm2022/onemrvapublic-design-system-mat-country-item.mjs +5 -5
  22. package/fesm2022/onemrvapublic-design-system-mat-country-item.mjs.map +1 -1
  23. package/fesm2022/onemrvapublic-design-system-mat-datepicker-header.mjs +3 -3
  24. package/fesm2022/onemrvapublic-design-system-mat-empty-row.mjs +6 -6
  25. package/fesm2022/onemrvapublic-design-system-mat-empty-row.mjs.map +1 -1
  26. package/fesm2022/onemrvapublic-design-system-mat-file-upload.mjs +46 -46
  27. package/fesm2022/onemrvapublic-design-system-mat-file-upload.mjs.map +1 -1
  28. package/fesm2022/onemrvapublic-design-system-mat-input-address.mjs +14 -14
  29. package/fesm2022/onemrvapublic-design-system-mat-input-address.mjs.map +1 -1
  30. package/fesm2022/onemrvapublic-design-system-mat-input-birthplace.mjs +13 -13
  31. package/fesm2022/onemrvapublic-design-system-mat-input-birthplace.mjs.map +1 -1
  32. package/fesm2022/onemrvapublic-design-system-mat-input-country.mjs +11 -11
  33. package/fesm2022/onemrvapublic-design-system-mat-input-country.mjs.map +1 -1
  34. package/fesm2022/onemrvapublic-design-system-mat-input-enterprise-number.mjs +11 -11
  35. package/fesm2022/onemrvapublic-design-system-mat-input-enterprise-number.mjs.map +1 -1
  36. package/fesm2022/onemrvapublic-design-system-mat-input-iban.mjs +10 -10
  37. package/fesm2022/onemrvapublic-design-system-mat-input-iban.mjs.map +1 -1
  38. package/fesm2022/onemrvapublic-design-system-mat-input-phone.mjs +11 -11
  39. package/fesm2022/onemrvapublic-design-system-mat-input-phone.mjs.map +1 -1
  40. package/fesm2022/onemrvapublic-design-system-mat-message-box.mjs +18 -18
  41. package/fesm2022/onemrvapublic-design-system-mat-message-box.mjs.map +1 -1
  42. package/fesm2022/onemrvapublic-design-system-mat-multi-select.mjs +17 -17
  43. package/fesm2022/onemrvapublic-design-system-mat-multi-select.mjs.map +1 -1
  44. package/fesm2022/onemrvapublic-design-system-mat-navigation.mjs +31 -31
  45. package/fesm2022/onemrvapublic-design-system-mat-navigation.mjs.map +1 -1
  46. package/fesm2022/onemrvapublic-design-system-mat-notification.mjs +8 -8
  47. package/fesm2022/onemrvapublic-design-system-mat-notification.mjs.map +1 -1
  48. package/fesm2022/onemrvapublic-design-system-mat-paginator.mjs +14 -14
  49. package/fesm2022/onemrvapublic-design-system-mat-paginator.mjs.map +1 -1
  50. package/fesm2022/onemrvapublic-design-system-mat-panel.mjs +39 -39
  51. package/fesm2022/onemrvapublic-design-system-mat-panel.mjs.map +1 -1
  52. package/fesm2022/onemrvapublic-design-system-mat-pop-over.mjs +23 -23
  53. package/fesm2022/onemrvapublic-design-system-mat-pop-over.mjs.map +1 -1
  54. package/fesm2022/onemrvapublic-design-system-mat-progress-bar.mjs +11 -11
  55. package/fesm2022/onemrvapublic-design-system-mat-progress-bar.mjs.map +1 -1
  56. package/fesm2022/onemrvapublic-design-system-mat-select-search.mjs +36 -36
  57. package/fesm2022/onemrvapublic-design-system-mat-select-search.mjs.map +1 -1
  58. package/fesm2022/onemrvapublic-design-system-mat-selectable-box.mjs +13 -13
  59. package/fesm2022/onemrvapublic-design-system-mat-selectable-box.mjs.map +1 -1
  60. package/fesm2022/onemrvapublic-design-system-mat-side-menu.mjs +10 -10
  61. package/fesm2022/onemrvapublic-design-system-mat-side-menu.mjs.map +1 -1
  62. package/fesm2022/onemrvapublic-design-system-mat-skeleton.mjs +34 -34
  63. package/fesm2022/onemrvapublic-design-system-mat-skeleton.mjs.map +1 -1
  64. package/fesm2022/onemrvapublic-design-system-mat-spinner.mjs +11 -11
  65. package/fesm2022/onemrvapublic-design-system-mat-spinner.mjs.map +1 -1
  66. package/fesm2022/onemrvapublic-design-system-mat-stepper.mjs +7 -7
  67. package/fesm2022/onemrvapublic-design-system-mat-sticker.mjs +7 -7
  68. package/fesm2022/onemrvapublic-design-system-mat-table-of-content.mjs +23 -23
  69. package/fesm2022/onemrvapublic-design-system-mat-table-of-content.mjs.map +1 -1
  70. package/fesm2022/onemrvapublic-design-system-mat-task-list.mjs +31 -31
  71. package/fesm2022/onemrvapublic-design-system-mat-task-list.mjs.map +1 -1
  72. package/fesm2022/onemrvapublic-design-system-mat-toast.mjs +7 -7
  73. package/fesm2022/onemrvapublic-design-system-mat-tooltip.mjs +17 -17
  74. package/fesm2022/onemrvapublic-design-system-mat-tooltip.mjs.map +1 -1
  75. package/fesm2022/onemrvapublic-design-system-page-error.mjs +10 -10
  76. package/fesm2022/onemrvapublic-design-system-page-error.mjs.map +1 -1
  77. package/fesm2022/onemrvapublic-design-system-page-not-found.mjs +20 -20
  78. package/fesm2022/onemrvapublic-design-system-page-not-found.mjs.map +1 -1
  79. package/fesm2022/onemrvapublic-design-system-shared.mjs +98 -98
  80. package/fesm2022/onemrvapublic-design-system-shared.mjs.map +1 -1
  81. package/fesm2022/onemrvapublic-design-system.mjs +1 -1
  82. package/fesm2022/onemrvapublic-design-system.mjs.map +1 -1
  83. package/package.json +1 -1
  84. package/types/onemrvapublic-design-system.d.ts +1 -1
@@ -26,10 +26,10 @@ import { MatDivider } from '@angular/material/divider';
26
26
  * </mat-select-search>
27
27
  */
28
28
  class MatSelectSearchClearDirective {
29
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: MatSelectSearchClearDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
30
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.1.1", type: MatSelectSearchClearDirective, isStandalone: true, selector: "[matSelectSearchClear]", ngImport: i0 }); }
29
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: MatSelectSearchClearDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
30
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.4", type: MatSelectSearchClearDirective, isStandalone: true, selector: "[matSelectSearchClear]", ngImport: i0 }); }
31
31
  }
32
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: MatSelectSearchClearDirective, decorators: [{
32
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: MatSelectSearchClearDirective, decorators: [{
33
33
  type: Directive,
34
34
  args: [{
35
35
  selector: '[matSelectSearchClear]',
@@ -81,10 +81,10 @@ const MAT_SELECTSEARCH_DEFAULT_OPTIONS = new InjectionToken('mat-selectsearch-de
81
81
  * </mat-select-search>
82
82
  */
83
83
  class MatSelectNoEntriesFoundDirective {
84
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: MatSelectNoEntriesFoundDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
85
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.1.1", type: MatSelectNoEntriesFoundDirective, isStandalone: true, selector: "[matSelectNoEntriesFound]", ngImport: i0 }); }
84
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: MatSelectNoEntriesFoundDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
85
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.4", type: MatSelectNoEntriesFoundDirective, isStandalone: true, selector: "[matSelectNoEntriesFound]", ngImport: i0 }); }
86
86
  }
87
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: MatSelectNoEntriesFoundDirective, decorators: [{
87
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: MatSelectNoEntriesFoundDirective, decorators: [{
88
88
  type: Directive,
89
89
  args: [{
90
90
  selector: '[matSelectNoEntriesFound]',
@@ -112,61 +112,61 @@ class MatSelectSearchComponent {
112
112
  }
113
113
  constructor() {
114
114
  /** Label of the search placeholder */
115
- this.placeholderLabel = input('Search', ...(ngDevMode ? [{ debugName: "placeholderLabel" }] : []));
115
+ this.placeholderLabel = input('Search', ...(ngDevMode ? [{ debugName: "placeholderLabel" }] : /* istanbul ignore next */ []));
116
116
  /** Type of the search input field */
117
- this.type = input('text', ...(ngDevMode ? [{ debugName: "type" }] : []));
117
+ this.type = input('text', ...(ngDevMode ? [{ debugName: "type" }] : /* istanbul ignore next */ []));
118
118
  /** Font-based icon used for displaying Close-Icon */
119
- this.closeIcon = input('close', ...(ngDevMode ? [{ debugName: "closeIcon" }] : []));
119
+ this.closeIcon = input('close', ...(ngDevMode ? [{ debugName: "closeIcon" }] : /* istanbul ignore next */ []));
120
120
  /** Svg-based icon used for displaying Close-Icon. If set, closeIcon is overridden */
121
- this.closeSvgIcon = input('', ...(ngDevMode ? [{ debugName: "closeSvgIcon" }] : []));
121
+ this.closeSvgIcon = input('', ...(ngDevMode ? [{ debugName: "closeSvgIcon" }] : /* istanbul ignore next */ []));
122
122
  /** Label to be shown when no entries are found. Set to null if no message should be shown. */
123
- this.noEntriesFoundLabel = input('Nothing found', ...(ngDevMode ? [{ debugName: "noEntriesFoundLabel" }] : []));
123
+ this.noEntriesFoundLabel = input('Nothing found', ...(ngDevMode ? [{ debugName: "noEntriesFoundLabel" }] : /* istanbul ignore next */ []));
124
124
  /**
125
125
  * Whether or not the search field should be cleared after the dropdown menu is closed.
126
126
  */
127
- this.clearSearchInput = input(true, ...(ngDevMode ? [{ debugName: "clearSearchInput" }] : []));
127
+ this.clearSearchInput = input(true, ...(ngDevMode ? [{ debugName: "clearSearchInput" }] : /* istanbul ignore next */ []));
128
128
  /** Whether to show the search-in-progress indicator */
129
- this.searching = input(false, ...(ngDevMode ? [{ debugName: "searching" }] : []));
129
+ this.searching = input(false, ...(ngDevMode ? [{ debugName: "searching" }] : /* istanbul ignore next */ []));
130
130
  /** Disables initial focusing of the input field */
131
- this.disableInitialFocus = input(false, ...(ngDevMode ? [{ debugName: "disableInitialFocus" }] : []));
131
+ this.disableInitialFocus = input(false, ...(ngDevMode ? [{ debugName: "disableInitialFocus" }] : /* istanbul ignore next */ []));
132
132
  /** Enable clear input on escape pressed */
133
- this.enableClearOnEscapePressed = input(false, ...(ngDevMode ? [{ debugName: "enableClearOnEscapePressed" }] : []));
133
+ this.enableClearOnEscapePressed = input(false, ...(ngDevMode ? [{ debugName: "enableClearOnEscapePressed" }] : /* istanbul ignore next */ []));
134
134
  /**
135
135
  * Prevents home / end key being propagated to mat-select,
136
136
  * allowing to move the cursor within the search input instead of navigating the options
137
137
  */
138
- this.preventHomeEndKeyPropagation = input(false, ...(ngDevMode ? [{ debugName: "preventHomeEndKeyPropagation" }] : []));
138
+ this.preventHomeEndKeyPropagation = input(false, ...(ngDevMode ? [{ debugName: "preventHomeEndKeyPropagation" }] : /* istanbul ignore next */ []));
139
139
  /** Disables scrolling to active options when option list changes. Useful for server-side search */
140
- this.disableScrollToActiveOnOptionsChanged = input(false, ...(ngDevMode ? [{ debugName: "disableScrollToActiveOnOptionsChanged" }] : []));
140
+ this.disableScrollToActiveOnOptionsChanged = input(false, ...(ngDevMode ? [{ debugName: "disableScrollToActiveOnOptionsChanged" }] : /* istanbul ignore next */ []));
141
141
  /** Adds 508 screen reader support for search box */
142
- this.ariaLabel = input('dropdown search', ...(ngDevMode ? [{ debugName: "ariaLabel" }] : []));
142
+ this.ariaLabel = input('dropdown search', ...(ngDevMode ? [{ debugName: "ariaLabel" }] : /* istanbul ignore next */ []));
143
143
  /** Whether to show Select All Checkbox (for mat-select[multi=true]) */
144
- this.showToggleAllCheckbox = input(false, ...(ngDevMode ? [{ debugName: "showToggleAllCheckbox" }] : []));
144
+ this.showToggleAllCheckbox = input(false, ...(ngDevMode ? [{ debugName: "showToggleAllCheckbox" }] : /* istanbul ignore next */ []));
145
145
  /** select all checkbox checked state */
146
- this.toggleAllCheckboxChecked = input(false, ...(ngDevMode ? [{ debugName: "toggleAllCheckboxChecked" }] : []));
146
+ this.toggleAllCheckboxChecked = input(false, ...(ngDevMode ? [{ debugName: "toggleAllCheckboxChecked" }] : /* istanbul ignore next */ []));
147
147
  /** select all checkbox indeterminate state */
148
- this.toggleAllCheckboxIndeterminate = input(false, ...(ngDevMode ? [{ debugName: "toggleAllCheckboxIndeterminate" }] : []));
148
+ this.toggleAllCheckboxIndeterminate = input(false, ...(ngDevMode ? [{ debugName: "toggleAllCheckboxIndeterminate" }] : /* istanbul ignore next */ []));
149
149
  /** Display a message in a tooltip on the toggle-all checkbox */
150
- this.toggleAllCheckboxTooltipMessage = input('', ...(ngDevMode ? [{ debugName: "toggleAllCheckboxTooltipMessage" }] : []));
150
+ this.toggleAllCheckboxTooltipMessage = input('', ...(ngDevMode ? [{ debugName: "toggleAllCheckboxTooltipMessage" }] : /* istanbul ignore next */ []));
151
151
  /** Define the position of the tooltip on the toggle-all checkbox. */
152
- this.toggleAllCheckboxTooltipPosition = input('below', ...(ngDevMode ? [{ debugName: "toggleAllCheckboxTooltipPosition" }] : []));
152
+ this.toggleAllCheckboxTooltipPosition = input('below', ...(ngDevMode ? [{ debugName: "toggleAllCheckboxTooltipPosition" }] : /* istanbul ignore next */ []));
153
153
  /** Show/Hide the search clear button of the search input */
154
- this.hideClearSearchButton = input(false, ...(ngDevMode ? [{ debugName: "hideClearSearchButton" }] : []));
154
+ this.hideClearSearchButton = input(false, ...(ngDevMode ? [{ debugName: "hideClearSearchButton" }] : /* istanbul ignore next */ []));
155
155
  /**
156
156
  * Always restore selected options on selectionChange for mode multi (e.g. for lazy loading/infinity scrolling).
157
157
  * Defaults to false, so selected options are only restored while filtering is active.
158
158
  */
159
- this.alwaysRestoreSelectedOptionsMulti = input(false, ...(ngDevMode ? [{ debugName: "alwaysRestoreSelectedOptionsMulti" }] : []));
159
+ this.alwaysRestoreSelectedOptionsMulti = input(false, ...(ngDevMode ? [{ debugName: "alwaysRestoreSelectedOptionsMulti" }] : /* istanbul ignore next */ []));
160
160
  /** Output emitter to send to parent component with the toggle all boolean */
161
161
  this.toggleAll = output();
162
162
  /** Reference to the search input field */
163
- this.searchSelectInput = viewChild('searchSelectInput', { ...(ngDevMode ? { debugName: "searchSelectInput" } : {}), read: ElementRef });
163
+ this.searchSelectInput = viewChild('searchSelectInput', { ...(ngDevMode ? { debugName: "searchSelectInput" } : /* istanbul ignore next */ {}), read: ElementRef });
164
164
  /** Reference to the search input field */
165
- this.innerSelectSearch = viewChild('innerSelectSearch', { ...(ngDevMode ? { debugName: "innerSelectSearch" } : {}), read: ElementRef });
165
+ this.innerSelectSearch = viewChild('innerSelectSearch', { ...(ngDevMode ? { debugName: "innerSelectSearch" } : /* istanbul ignore next */ {}), read: ElementRef });
166
166
  /** Reference to custom search input clear icon */
167
- this.clearIcon = contentChild(MatSelectSearchClearDirective, ...(ngDevMode ? [{ debugName: "clearIcon" }] : []));
167
+ this.clearIcon = contentChild(MatSelectSearchClearDirective, ...(ngDevMode ? [{ debugName: "clearIcon" }] : /* istanbul ignore next */ []));
168
168
  /** Reference to custom no entries found element */
169
- this.noEntriesFound = contentChild(MatSelectNoEntriesFoundDirective, ...(ngDevMode ? [{ debugName: "noEntriesFound" }] : []));
169
+ this.noEntriesFound = contentChild(MatSelectNoEntriesFoundDirective, ...(ngDevMode ? [{ debugName: "noEntriesFound" }] : /* istanbul ignore next */ []));
170
170
  this.onTouched = (_) => {
171
171
  //
172
172
  };
@@ -500,8 +500,8 @@ class MatSelectSearchComponent {
500
500
  this.activeDescendant?.removeAttribute('aria-selected');
501
501
  this.searchSelectInput()?.nativeElement.removeAttribute('aria-activedescendant');
502
502
  }
503
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: MatSelectSearchComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
504
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.1.1", type: MatSelectSearchComponent, isStandalone: true, selector: "mat-select-search", inputs: { placeholderLabel: { classPropertyName: "placeholderLabel", publicName: "placeholderLabel", isSignal: true, isRequired: false, transformFunction: null }, type: { classPropertyName: "type", publicName: "type", isSignal: true, isRequired: false, transformFunction: null }, closeIcon: { classPropertyName: "closeIcon", publicName: "closeIcon", isSignal: true, isRequired: false, transformFunction: null }, closeSvgIcon: { classPropertyName: "closeSvgIcon", publicName: "closeSvgIcon", isSignal: true, isRequired: false, transformFunction: null }, noEntriesFoundLabel: { classPropertyName: "noEntriesFoundLabel", publicName: "noEntriesFoundLabel", isSignal: true, isRequired: false, transformFunction: null }, clearSearchInput: { classPropertyName: "clearSearchInput", publicName: "clearSearchInput", isSignal: true, isRequired: false, transformFunction: null }, searching: { classPropertyName: "searching", publicName: "searching", isSignal: true, isRequired: false, transformFunction: null }, disableInitialFocus: { classPropertyName: "disableInitialFocus", publicName: "disableInitialFocus", isSignal: true, isRequired: false, transformFunction: null }, enableClearOnEscapePressed: { classPropertyName: "enableClearOnEscapePressed", publicName: "enableClearOnEscapePressed", isSignal: true, isRequired: false, transformFunction: null }, preventHomeEndKeyPropagation: { classPropertyName: "preventHomeEndKeyPropagation", publicName: "preventHomeEndKeyPropagation", isSignal: true, isRequired: false, transformFunction: null }, disableScrollToActiveOnOptionsChanged: { classPropertyName: "disableScrollToActiveOnOptionsChanged", publicName: "disableScrollToActiveOnOptionsChanged", isSignal: true, isRequired: false, transformFunction: null }, ariaLabel: { classPropertyName: "ariaLabel", publicName: "ariaLabel", isSignal: true, isRequired: false, transformFunction: null }, showToggleAllCheckbox: { classPropertyName: "showToggleAllCheckbox", publicName: "showToggleAllCheckbox", isSignal: true, isRequired: false, transformFunction: null }, toggleAllCheckboxChecked: { classPropertyName: "toggleAllCheckboxChecked", publicName: "toggleAllCheckboxChecked", isSignal: true, isRequired: false, transformFunction: null }, toggleAllCheckboxIndeterminate: { classPropertyName: "toggleAllCheckboxIndeterminate", publicName: "toggleAllCheckboxIndeterminate", isSignal: true, isRequired: false, transformFunction: null }, toggleAllCheckboxTooltipMessage: { classPropertyName: "toggleAllCheckboxTooltipMessage", publicName: "toggleAllCheckboxTooltipMessage", isSignal: true, isRequired: false, transformFunction: null }, toggleAllCheckboxTooltipPosition: { classPropertyName: "toggleAllCheckboxTooltipPosition", publicName: "toggleAllCheckboxTooltipPosition", isSignal: true, isRequired: false, transformFunction: null }, hideClearSearchButton: { classPropertyName: "hideClearSearchButton", publicName: "hideClearSearchButton", isSignal: true, isRequired: false, transformFunction: null }, alwaysRestoreSelectedOptionsMulti: { classPropertyName: "alwaysRestoreSelectedOptionsMulti", publicName: "alwaysRestoreSelectedOptionsMulti", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { toggleAll: "toggleAll" }, providers: [
503
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: MatSelectSearchComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
504
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.4", type: MatSelectSearchComponent, isStandalone: true, selector: "mat-select-search", inputs: { placeholderLabel: { classPropertyName: "placeholderLabel", publicName: "placeholderLabel", isSignal: true, isRequired: false, transformFunction: null }, type: { classPropertyName: "type", publicName: "type", isSignal: true, isRequired: false, transformFunction: null }, closeIcon: { classPropertyName: "closeIcon", publicName: "closeIcon", isSignal: true, isRequired: false, transformFunction: null }, closeSvgIcon: { classPropertyName: "closeSvgIcon", publicName: "closeSvgIcon", isSignal: true, isRequired: false, transformFunction: null }, noEntriesFoundLabel: { classPropertyName: "noEntriesFoundLabel", publicName: "noEntriesFoundLabel", isSignal: true, isRequired: false, transformFunction: null }, clearSearchInput: { classPropertyName: "clearSearchInput", publicName: "clearSearchInput", isSignal: true, isRequired: false, transformFunction: null }, searching: { classPropertyName: "searching", publicName: "searching", isSignal: true, isRequired: false, transformFunction: null }, disableInitialFocus: { classPropertyName: "disableInitialFocus", publicName: "disableInitialFocus", isSignal: true, isRequired: false, transformFunction: null }, enableClearOnEscapePressed: { classPropertyName: "enableClearOnEscapePressed", publicName: "enableClearOnEscapePressed", isSignal: true, isRequired: false, transformFunction: null }, preventHomeEndKeyPropagation: { classPropertyName: "preventHomeEndKeyPropagation", publicName: "preventHomeEndKeyPropagation", isSignal: true, isRequired: false, transformFunction: null }, disableScrollToActiveOnOptionsChanged: { classPropertyName: "disableScrollToActiveOnOptionsChanged", publicName: "disableScrollToActiveOnOptionsChanged", isSignal: true, isRequired: false, transformFunction: null }, ariaLabel: { classPropertyName: "ariaLabel", publicName: "ariaLabel", isSignal: true, isRequired: false, transformFunction: null }, showToggleAllCheckbox: { classPropertyName: "showToggleAllCheckbox", publicName: "showToggleAllCheckbox", isSignal: true, isRequired: false, transformFunction: null }, toggleAllCheckboxChecked: { classPropertyName: "toggleAllCheckboxChecked", publicName: "toggleAllCheckboxChecked", isSignal: true, isRequired: false, transformFunction: null }, toggleAllCheckboxIndeterminate: { classPropertyName: "toggleAllCheckboxIndeterminate", publicName: "toggleAllCheckboxIndeterminate", isSignal: true, isRequired: false, transformFunction: null }, toggleAllCheckboxTooltipMessage: { classPropertyName: "toggleAllCheckboxTooltipMessage", publicName: "toggleAllCheckboxTooltipMessage", isSignal: true, isRequired: false, transformFunction: null }, toggleAllCheckboxTooltipPosition: { classPropertyName: "toggleAllCheckboxTooltipPosition", publicName: "toggleAllCheckboxTooltipPosition", isSignal: true, isRequired: false, transformFunction: null }, hideClearSearchButton: { classPropertyName: "hideClearSearchButton", publicName: "hideClearSearchButton", isSignal: true, isRequired: false, transformFunction: null }, alwaysRestoreSelectedOptionsMulti: { classPropertyName: "alwaysRestoreSelectedOptionsMulti", publicName: "alwaysRestoreSelectedOptionsMulti", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { toggleAll: "toggleAll" }, providers: [
505
505
  {
506
506
  provide: NG_VALUE_ACCESSOR,
507
507
  useExisting: forwardRef(() => MatSelectSearchComponent),
@@ -509,7 +509,7 @@ class MatSelectSearchComponent {
509
509
  },
510
510
  ], queries: [{ propertyName: "clearIcon", first: true, predicate: MatSelectSearchClearDirective, descendants: true, isSignal: true }, { propertyName: "noEntriesFound", first: true, predicate: MatSelectNoEntriesFoundDirective, descendants: true, isSignal: true }], viewQueries: [{ propertyName: "searchSelectInput", first: true, predicate: ["searchSelectInput"], descendants: true, read: ElementRef, isSignal: true }, { propertyName: "innerSelectSearch", first: true, predicate: ["innerSelectSearch"], descendants: true, read: ElementRef, isSignal: true }], ngImport: i0, template: "<!--\nCopyright (c) 2018 Bithost GmbH All Rights Reserved.\n\nUse of this source code is governed by an MIT-style license that can be\nfound in the LICENSE file at https://angular.io/license\n-->\n<!-- Placeholder to adjust vertical offset of the mat-option elements -->\n<input matInput class=\"mat-select-search-input mat-select-search-hidden\" />\n\n<!-- Note: the mat-datepicker-content mat-tab-header are needed to inherit the material theme colors, see PR #22 -->\n<div\n #innerSelectSearch\n class=\"mat-select-search-inner mat-typography mat-datepicker-content mat-tab-header\"\n [class]=\"{\n 'mat-select-search-inner-multiple': matSelect.multiple,\n 'mat-select-search-inner-toggle-all': _isToggleAllCheckboxVisible(),\n }\"\n>\n @if (_isToggleAllCheckboxVisible()) {\n <mat-checkbox\n class=\"mat-select-search-toggle-all-checkbox\"\n [checked]=\"toggleAllCheckboxChecked()\"\n [indeterminate]=\"toggleAllCheckboxIndeterminate()\"\n [matTooltip]=\"toggleAllCheckboxTooltipMessage()\"\n matTooltipClass=\"ngx-mat-select-search-toggle-all-tooltip\"\n [matTooltipPosition]=\"toggleAllCheckboxTooltipPosition()\"\n (change)=\"_emitSelectAllBooleanToParent($event.checked)\"\n />\n }\n <input\n class=\"mat-select-search-input\"\n autocomplete=\"off\"\n [type]=\"type()\"\n [formControl]=\"_formControl\"\n #searchSelectInput\n (keydown)=\"_handleKeydown($event)\"\n (keyup)=\"_handleKeyup($event)\"\n (blur)=\"onBlur()\"\n [placeholder]=\"placeholderLabel()\"\n [attr.aria-label]=\"ariaLabel()\"\n />\n @if (value === '' && !searching()) {\n <mat-icon class=\"suffix\">search</mat-icon>\n }\n @if (searching()) {\n <mat-spinner class=\"mat-select-search-spinner\" diameter=\"16\" />\n }\n @if (!hideClearSearchButton() && value && !searching()) {\n <button\n mat-icon-button\n aria-label=\"Clear\"\n (click)=\"_reset(true)\"\n class=\"mat-select-search-clear\"\n >\n @if (clearIcon()) {\n <ng-content select=\"[matSelectSearchClear]\" />\n } @else {\n <mat-icon [svgIcon]=\"closeSvgIcon()\">\n {{ !closeSvgIcon() ? closeIcon() : null }}\n </mat-icon>\n }\n </button>\n }\n\n <ng-content select=\".mat-select-search-custom-header-content\" />\n\n <mat-divider />\n</div>\n\n@if (_showNoEntriesFound$ | async) {\n <div class=\"mat-select-search-no-entries-found\">\n @if (noEntriesFound()) {\n <ng-content select=\"[matSelectNoEntriesFound]\" />\n } @else {\n {{ noEntriesFoundLabel() }}\n }\n </div>\n}\n", styles: [":host .mat-select-search-hidden{visibility:hidden}:host .mat-select-search-inner{position:absolute;top:0;left:0;width:100%;z-index:100;font-size:inherit;box-shadow:none}:host .mat-select-search-inner.mat-select-search-inner-multiple.mat-select-search-inner-toggle-all{display:flex;align-items:center}:host .suffix{position:absolute;top:var(--spacer-and-half);right:var(--spacer)}:host .mat-select-search-input{box-sizing:border-box;width:100%;border:none;font-family:inherit;font-size:inherit;color:currentColor;outline:none;background:var(--mat-sys-surface);line-height:var(--input-height);height:var(--input-height);padding:var(--spacer)}:host-context([dir=rtl]) :host .mat-select-search-input{padding-right:var(--double-spacer)}:host .mat-select-search-inner-toggle-all .mat-select-search-input{padding-left:var(--half-spacer)}:host .mat-select-search-no-entries-found{padding-top:var(--spacer);padding-bottom:var(--spacer)}:host .mat-select-search-clear{position:absolute;right:var(--half-spacer);top:0}:host-context([dir=rtl]) :host .mat-select-search-clear{right:auto;left:var(--half-spacer)}:host .mat-select-search-spinner{position:absolute;right:var(--double-spacer);top:calc(50% - var(--spacer))}:host-context([dir=rtl]) :host .mat-select-search-spinner{right:auto;left:var(--double-spacer)}\n"], dependencies: [{ kind: "component", type: MatCheckbox, selector: "mat-checkbox", inputs: ["aria-label", "aria-labelledby", "aria-describedby", "aria-expanded", "aria-controls", "aria-owns", "id", "required", "labelPosition", "name", "value", "disableRipple", "tabIndex", "color", "disabledInteractive", "checked", "disabled", "indeterminate"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }, { kind: "directive", type: MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "mode", "value", "diameter", "strokeWidth"], exportAs: ["matProgressSpinner"] }, { kind: "component", type: MatIconButton, selector: "button[mat-icon-button], a[mat-icon-button], button[matIconButton], a[matIconButton]", exportAs: ["matButton", "matAnchor"] }, { kind: "directive", type: MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly", "disabledInteractive"], exportAs: ["matInput"] }, { kind: "component", type: MatDivider, selector: "mat-divider", inputs: ["vertical", "inset"] }, { kind: "pipe", type: AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
511
511
  }
512
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: MatSelectSearchComponent, decorators: [{
512
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: MatSelectSearchComponent, decorators: [{
513
513
  type: Component,
514
514
  args: [{ selector: 'mat-select-search', providers: [
515
515
  {
@@ -541,15 +541,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImpor
541
541
  * found in the LICENSE file at https://angular.io/license
542
542
  */
543
543
  class MatSelectSearchModule {
544
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: MatSelectSearchModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
545
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.1.1", ngImport: i0, type: MatSelectSearchModule, imports: [MatSelectSearchComponent,
544
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: MatSelectSearchModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
545
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.4", ngImport: i0, type: MatSelectSearchModule, imports: [MatSelectSearchComponent,
546
546
  MatSelectSearchClearDirective,
547
547
  MatSelectNoEntriesFoundDirective], exports: [MatSelectSearchComponent,
548
548
  MatSelectSearchClearDirective,
549
549
  MatSelectNoEntriesFoundDirective] }); }
550
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: MatSelectSearchModule, imports: [MatSelectSearchComponent] }); }
550
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: MatSelectSearchModule, imports: [MatSelectSearchComponent] }); }
551
551
  }
552
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: MatSelectSearchModule, decorators: [{
552
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: MatSelectSearchModule, decorators: [{
553
553
  type: NgModule,
554
554
  args: [{
555
555
  imports: [
@@ -1 +1 @@
1
- {"version":3,"file":"onemrvapublic-design-system-mat-select-search.mjs","sources":["../../../../projects/onemrva/design-system/mat-select-search/src/mat-select-search-clear.directive.ts","../../../../projects/onemrva/design-system/mat-select-search/src/default-options.ts","../../../../projects/onemrva/design-system/mat-select-search/src/mat-select-no-entries-found.directive.ts","../../../../projects/onemrva/design-system/mat-select-search/src/mat-select-search.component.ts","../../../../projects/onemrva/design-system/mat-select-search/src/mat-select-search.component.html","../../../../projects/onemrva/design-system/mat-select-search/src/mat-select-search.module.ts","../../../../projects/onemrva/design-system/mat-select-search/onemrvapublic-design-system-mat-select-search.ts"],"sourcesContent":["import { Directive } from '@angular/core';\n\n/**\n * Directive for providing a custom clear-icon.\n * e.g.\n * <mat-select-search [formControl]=\"bankFilterCtrl\">\n * <mat-icon matSelectSearchClear>delete</mat-icon>\n * </mat-select-search>\n */\n@Directive({\n selector: '[matSelectSearchClear]',\n standalone: true,\n})\nexport class MatSelectSearchClearDirective {}\n","import { InjectionToken } from '@angular/core';\nimport { MatSelectSearchComponent } from './mat-select-search.component';\n\n/** List of inputs of NgxMatSelectSearchComponent that can be configured with a global default. */\nexport const configurableDefaultOptions = [\n 'ariaLabel',\n 'clearSearchInput',\n 'closeIcon',\n 'closeSvgIcon',\n 'disableInitialFocus',\n 'disableScrollToActiveOnOptionsChanged',\n 'enableClearOnEscapePressed',\n 'hideClearSearchButton',\n 'noEntriesFoundLabel',\n 'placeholderLabel',\n 'preventHomeEndKeyPropagation',\n 'searching',\n] as const;\n\nexport type ConfigurableDefaultOptions =\n (typeof configurableDefaultOptions)[number];\n\n/**\n * InjectionToken that can be used to specify global options. e.g.\n *\n * ```typescript\n * providers: [\n * {\n * provide: MAT_SELECTSEARCH_DEFAULT_OPTIONS,\n * useValue: <MatSelectSearchOptions>{\n * closeIcon: 'delete',\n * noEntriesFoundLabel: 'No options found'\n * }\n * }\n * ]\n * ```\n *\n * See the corresponding inputs of `MatSelectSearchComponent` for documentation.\n */\nexport const MAT_SELECTSEARCH_DEFAULT_OPTIONS =\n new InjectionToken<MatSelectSearchOptions>(\n 'mat-selectsearch-default-options',\n );\n\n/** Global configurable options for MatSelectSearch. */\nexport type MatSelectSearchOptions = Readonly<\n Partial<Pick<MatSelectSearchComponent, ConfigurableDefaultOptions>>\n>;\n","import { Directive } from '@angular/core';\n\n/**\n * Directive for providing a custom no entries found element.\n * e.g.\n * <mat-select-search [formControl]=\"bankFilterCtrl\">\n * <span matSelectNoEntriesFound>\n * No entries found <button>Add</button>\n * </span>\n * </mat-select-search>\n */\n@Directive({\n selector: '[matSelectNoEntriesFound]',\n standalone: true,\n})\nexport class MatSelectNoEntriesFoundDirective {}\n","/**\n * Copyright (c) 2018 Bithost GmbH All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {\n A,\n DOWN_ARROW,\n END,\n ENTER,\n ESCAPE,\n HOME,\n NINE,\n SPACE,\n UP_ARROW,\n Z,\n ZERO,\n} from '@angular/cdk/keycodes';\nimport { ViewportRuler } from '@angular/cdk/scrolling';\nimport {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n forwardRef,\n OnDestroy,\n OnInit,\n QueryList,\n inject,\n input,\n output,\n viewChild,\n contentChild,\n} from '@angular/core';\nimport {\n ControlValueAccessor,\n FormControl,\n NG_VALUE_ACCESSOR,\n ReactiveFormsModule,\n} from '@angular/forms';\nimport { MatOption } from '@angular/material/core';\nimport { MatFormField } from '@angular/material/form-field';\nimport { MatSelect } from '@angular/material/select';\nimport { BehaviorSubject, combineLatest, Observable, of, Subject } from 'rxjs';\nimport {\n delay,\n filter,\n map,\n startWith,\n switchMap,\n take,\n takeUntil,\n tap,\n} from 'rxjs/operators';\nimport { MatSelectSearchClearDirective } from './mat-select-search-clear.directive';\nimport {\n configurableDefaultOptions,\n MAT_SELECTSEARCH_DEFAULT_OPTIONS,\n MatSelectSearchOptions,\n} from './default-options';\nimport { MatSelectNoEntriesFoundDirective } from './mat-select-no-entries-found.directive';\nimport { AsyncPipe } from '@angular/common';\nimport { MatCheckbox } from '@angular/material/checkbox';\nimport { MatTooltip } from '@angular/material/tooltip';\nimport { MatIcon } from '@angular/material/icon';\nimport { MatProgressSpinner } from '@angular/material/progress-spinner';\nimport { MatIconButton } from '@angular/material/button';\nimport { MatInput } from '@angular/material/input';\nimport { MatDivider } from '@angular/material/divider';\n\n@Component({\n selector: 'mat-select-search',\n templateUrl: './mat-select-search.component.html',\n styleUrls: ['./mat-select-search.component.scss'],\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => MatSelectSearchComponent),\n multi: true,\n },\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: true,\n imports: [\n MatCheckbox,\n MatTooltip,\n ReactiveFormsModule,\n MatIcon,\n MatProgressSpinner,\n MatIconButton,\n MatInput,\n MatDivider,\n AsyncPipe,\n ],\n})\nexport class MatSelectSearchComponent\n implements OnInit, OnDestroy, ControlValueAccessor\n{\n /** Label of the search placeholder */\n readonly placeholderLabel = input('Search');\n\n /** Type of the search input field */\n readonly type = input('text');\n\n /** Font-based icon used for displaying Close-Icon */\n readonly closeIcon = input('close');\n\n /** Svg-based icon used for displaying Close-Icon. If set, closeIcon is overridden */\n readonly closeSvgIcon = input('');\n\n /** Label to be shown when no entries are found. Set to null if no message should be shown. */\n readonly noEntriesFoundLabel = input('Nothing found');\n\n /**\n * Whether or not the search field should be cleared after the dropdown menu is closed.\n */\n readonly clearSearchInput = input(true);\n\n /** Whether to show the search-in-progress indicator */\n readonly searching = input(false);\n\n /** Disables initial focusing of the input field */\n readonly disableInitialFocus = input(false);\n\n /** Enable clear input on escape pressed */\n readonly enableClearOnEscapePressed = input(false);\n\n /**\n * Prevents home / end key being propagated to mat-select,\n * allowing to move the cursor within the search input instead of navigating the options\n */\n readonly preventHomeEndKeyPropagation = input(false);\n\n /** Disables scrolling to active options when option list changes. Useful for server-side search */\n readonly disableScrollToActiveOnOptionsChanged = input(false);\n\n /** Adds 508 screen reader support for search box */\n readonly ariaLabel = input('dropdown search');\n\n /** Whether to show Select All Checkbox (for mat-select[multi=true]) */\n readonly showToggleAllCheckbox = input(false);\n\n /** select all checkbox checked state */\n readonly toggleAllCheckboxChecked = input(false);\n\n /** select all checkbox indeterminate state */\n readonly toggleAllCheckboxIndeterminate = input(false);\n\n /** Display a message in a tooltip on the toggle-all checkbox */\n readonly toggleAllCheckboxTooltipMessage = input('');\n\n /** Define the position of the tooltip on the toggle-all checkbox. */\n readonly toggleAllCheckboxTooltipPosition = input<\n 'left' | 'right' | 'above' | 'below' | 'before' | 'after'\n >('below');\n\n /** Show/Hide the search clear button of the search input */\n readonly hideClearSearchButton = input(false);\n\n /**\n * Always restore selected options on selectionChange for mode multi (e.g. for lazy loading/infinity scrolling).\n * Defaults to false, so selected options are only restored while filtering is active.\n */\n readonly alwaysRestoreSelectedOptionsMulti = input(false);\n\n /** Output emitter to send to parent component with the toggle all boolean */\n readonly toggleAll = output<boolean>();\n\n /** Reference to the search input field */\n readonly searchSelectInput = viewChild('searchSelectInput', {\n read: ElementRef,\n });\n\n /** Reference to the search input field */\n readonly innerSelectSearch = viewChild('innerSelectSearch', {\n read: ElementRef,\n });\n\n /** Reference to custom search input clear icon */\n readonly clearIcon = contentChild(MatSelectSearchClearDirective);\n\n /** Reference to custom no entries found element */\n readonly noEntriesFound = contentChild(MatSelectNoEntriesFoundDirective);\n\n /** Current search value */\n get value(): string {\n return (this._formControl as FormControl).value;\n }\n\n private _lastExternalInputValue?: string;\n\n onTouched: (_: any) => void = (_: any) => {\n //\n };\n\n /** Reference to the MatSelect options */\n public set _options(_options: QueryList<MatOption>) {\n this._options$.next(_options);\n }\n\n public get _options(): QueryList<MatOption> {\n return this._options$.getValue();\n }\n\n public _options$: BehaviorSubject<QueryList<MatOption>> = new BehaviorSubject<\n QueryList<MatOption>\n >(new QueryList());\n\n private optionsList$: Observable<MatOption[]> = this._options$.pipe(\n switchMap(_options =>\n _options\n ? _options.changes.pipe(\n map(options => options.toArray()),\n startWith<MatOption[]>(_options.toArray()),\n )\n : of([]),\n ),\n );\n\n private optionsLength$: Observable<number> = this.optionsList$.pipe(\n map(options => (options ? options.length : 0)),\n );\n\n /** Previously selected values when using <mat-select [multiple]=\"true\">*/\n private previousSelectedValues?: any[];\n\n public _formControl: FormControl<string | null> = new FormControl<string>('');\n\n /** whether to show the no entries found message */\n public _showNoEntriesFound$: Observable<boolean> = combineLatest([\n this._formControl.valueChanges,\n this.optionsLength$,\n ]).pipe(\n map(([_, optionsLength]) => {\n return (\n this.noEntriesFoundLabel() !== '' &&\n optionsLength === this.getOptionsLengthOffset()\n );\n }),\n );\n\n /** Subject that emits when the component has been destroyed. */\n private _onDestroy = new Subject<void>();\n\n /** Reference to active descendant for ARIA Support. */\n private activeDescendant?: HTMLElement;\n\n public readonly matSelect = inject(MatSelect);\n public readonly changeDetectorRef = inject(ChangeDetectorRef);\n private readonly _viewportRuler = inject(ViewportRuler);\n public readonly matOption = inject(MatOption, { optional: true });\n public readonly matFormField = inject(MatFormField, { optional: true });\n private readonly defaultOptions = inject(MAT_SELECTSEARCH_DEFAULT_OPTIONS, {\n optional: true,\n });\n\n constructor() {\n this.applyDefaultOptions(this.defaultOptions as MatSelectSearchOptions);\n }\n\n private applyDefaultOptions(defaultOptions: MatSelectSearchOptions) {\n if (!defaultOptions) {\n return;\n }\n for (const key of configurableDefaultOptions) {\n // eslint-disable-next-line\n if (defaultOptions.hasOwnProperty(key)) {\n (this[key] as any) = defaultOptions[key];\n }\n }\n }\n\n ngOnInit() {\n // set custom mat-option class if the component was placed inside a mat-option\n if (this.matOption) {\n this.matOption.disabled = true;\n this.matOption\n ._getHostElement()\n .classList.add('contains-mat-select-search');\n //this.matOption._getHostElement().setAttribute('aria-hidden', 'true'); // this provoke an error\n } else {\n console.error(\n '<mat-select-search> must be placed inside a <mat-option> element',\n );\n }\n\n // when the select dropdown panel is opened or closed\n this.matSelect.openedChange\n .pipe(delay(1), takeUntil(this._onDestroy))\n .subscribe(opened => {\n if (opened) {\n this.updateInputWidth();\n // focus the search field when opening\n if (!this.disableInitialFocus()) {\n this._focus();\n }\n } else {\n // clear it when closing\n if (this.clearSearchInput()) {\n this._reset();\n }\n }\n });\n\n // set the first item active after the options changed\n this.matSelect.openedChange\n .pipe(\n take(1),\n switchMap(_ => {\n this._options = this.matSelect.options;\n\n // Closure variable for tracking the most recent first option.\n // In order to avoid avoid causing the list to\n // scroll to the top when options are added to the bottom of\n // the list (eg: infinite scroll), we compare only\n // the changes to the first options to determine if we\n // should set the first item as active.\n // This prevents unnecessary scrolling to the top of the list\n // when options are appended, but allows the first item\n // in the list to be set as active by default when there\n // is no active selection\n let previousFirstOption =\n this._options.toArray()[this.getOptionsLengthOffset()];\n\n return this._options.changes.pipe(\n tap(() => {\n // avoid \"expression has been changed\" error\n setTimeout(() => {\n // Convert the QueryList to an array\n const options = this._options.toArray();\n\n // The true first item is offset by 1\n const currentFirstOption =\n options[this.getOptionsLengthOffset()];\n\n const keyManager = this.matSelect._keyManager;\n if (keyManager && this.matSelect.panelOpen) {\n // set first item active and input width\n\n // Check to see if the first option in these changes is different from the previous.\n const firstOptionIsChanged = !this.matSelect.compareWith(\n previousFirstOption,\n currentFirstOption,\n );\n\n // CASE: The first option is different now.\n // Indiciates we should set it as active and scroll to the top.\n if (\n firstOptionIsChanged ||\n !keyManager.activeItem ||\n !options.find(option =>\n this.matSelect.compareWith(option, keyManager.activeItem),\n )\n ) {\n keyManager.setFirstItemActive();\n }\n\n // wait for panel width changes\n setTimeout(() => {\n this.updateInputWidth();\n });\n }\n\n // Update our reference\n previousFirstOption = currentFirstOption;\n });\n }),\n );\n }),\n )\n .subscribe();\n\n // add or remove css class depending on whether to show the no entries found message\n // note: this is hacky\n this._showNoEntriesFound$\n .pipe(takeUntil(this._onDestroy))\n .subscribe(showNoEntriesFound => {\n // set no entries found class on mat option\n if (this.matOption) {\n if (showNoEntriesFound) {\n this.matOption\n ._getHostElement()\n .classList.add('mat-select-search-no-entries-found');\n } else {\n this.matOption\n ._getHostElement()\n .classList.remove('mat-select-search-no-entries-found');\n }\n }\n });\n\n // resize the input width when the viewport is resized, i.e. the trigger width could potentially be resized\n this._viewportRuler\n .change()\n .pipe(takeUntil(this._onDestroy))\n .subscribe(() => {\n if (this.matSelect.panelOpen) {\n this.updateInputWidth();\n }\n });\n\n this.initMultipleHandling();\n\n this.optionsList$.pipe(takeUntil(this._onDestroy)).subscribe(() => {\n // update view when available options change\n this.changeDetectorRef.markForCheck();\n });\n }\n\n _emitSelectAllBooleanToParent(state: boolean) {\n this.toggleAll.emit(state);\n }\n\n ngOnDestroy() {\n this._onDestroy.next();\n this._onDestroy.complete();\n }\n\n _isToggleAllCheckboxVisible(): boolean {\n return this.matSelect.multiple && this.showToggleAllCheckbox();\n }\n\n /**\n * Handles the key down event with MatSelect.\n * Allows e.g. selecting with enter key, navigation with arrow keys, etc.\n * @param event\n */\n _handleKeydown(event: KeyboardEvent) {\n // Prevent propagation for all alphanumeric characters in order to avoid selection issues\n if (\n (event.key && event.key.length === 1) ||\n (event.keyCode >= A && event.keyCode <= Z) ||\n (event.keyCode >= ZERO && event.keyCode <= NINE) ||\n event.keyCode === SPACE ||\n (this.preventHomeEndKeyPropagation() &&\n (event.keyCode === HOME || event.keyCode === END))\n ) {\n event.stopPropagation();\n }\n\n if (this.matSelect.multiple && event.key && event.keyCode === ENTER) {\n // Regain focus after multiselect, so we can further type\n setTimeout(() => this._focus());\n }\n\n // Special case if click Escape, if input is empty, close the dropdown, if not, empty out the search field\n if (\n this.enableClearOnEscapePressed() &&\n event.keyCode === ESCAPE &&\n this.value\n ) {\n this._reset(true);\n event.stopPropagation();\n }\n }\n\n /**\n * Handles the key up event with MatSelect.\n * Allows e.g. the announcing of the currently activeDescendant by screen readers.\n */\n _handleKeyup(event: KeyboardEvent) {\n if (event.keyCode === UP_ARROW || event.keyCode === DOWN_ARROW) {\n const ariaActiveDescendantId = this.matSelect._getAriaActiveDescendant();\n const index = this._options\n .toArray()\n .findIndex(item => item.id === ariaActiveDescendantId);\n if (index !== -1) {\n this.unselectActiveDescendant();\n\n const temp = this._options.toArray();\n this.activeDescendant = temp[index]._getHostElement();\n\n this.activeDescendant.setAttribute('aria-selected', 'true');\n\n this.searchSelectInput()?.nativeElement.setAttribute(\n 'aria-activedescendant',\n ariaActiveDescendantId,\n );\n }\n }\n }\n\n writeValue(value: string) {\n this._lastExternalInputValue = value;\n this._formControl.setValue(value);\n this.changeDetectorRef.markForCheck();\n }\n\n onBlur() {\n this.unselectActiveDescendant();\n }\n\n registerOnChange(fn: (value: string | null) => void) {\n this._formControl.valueChanges\n .pipe(\n filter(value => value !== this._lastExternalInputValue),\n tap(() => (this._lastExternalInputValue = undefined)),\n takeUntil(this._onDestroy),\n )\n .subscribe(fn);\n }\n\n registerOnTouched(fn: () => void) {\n this.onTouched = fn;\n }\n\n /**\n * Focuses the search input field\n */\n public _focus() {\n const searchSelectInput = this.searchSelectInput();\n if (!searchSelectInput || !this.matSelect.panel) {\n return;\n }\n // save and restore scrollTop of panel, since it will be reset by focus()\n // note: this is hacky\n const panel = this.matSelect.panel.nativeElement;\n const scrollTop = panel.scrollTop;\n\n // focus\n searchSelectInput.nativeElement.focus();\n\n panel.scrollTop = scrollTop;\n }\n\n /**\n * Resets the current search value\n * @param focus whether to focus after resetting\n */\n public _reset(focus?: boolean) {\n this._formControl.setValue('');\n if (focus) {\n this._focus();\n }\n }\n\n /**\n * Initializes handling <mat-select [multiple]=\"true\">\n * Note: to improve this code, mat-select should be extended to allow disabling resetting the selection while filtering.\n */\n private initMultipleHandling() {\n if (!this.matSelect.ngControl) {\n if (this.matSelect.multiple) {\n // note: the access to matSelect.ngControl (instead of matSelect.value / matSelect.valueChanges)\n // is necessary to properly work in multi-selection mode.\n console.error(\n 'the mat-select containing mat-select-search must have a ngModel or formControl directive when multiple=true',\n );\n }\n return;\n }\n // if <mat-select [multiple]=\"true\">\n // store previously selected values and restore them when they are deselected\n // because the option is not available while we are currently filtering\n this.previousSelectedValues = this.matSelect.ngControl.value;\n\n this.matSelect.ngControl.valueChanges\n ?.pipe(takeUntil(this._onDestroy))\n .subscribe(values => {\n let restoreSelectedValues = false;\n if (this.matSelect.multiple) {\n if (\n (this.alwaysRestoreSelectedOptionsMulti() ||\n (this._formControl.value && this._formControl.value.length)) &&\n this.previousSelectedValues &&\n Array.isArray(this.previousSelectedValues)\n ) {\n if (!values || !Array.isArray(values)) {\n values = [];\n }\n const optionValues = this.matSelect.options.map(\n option => option.value,\n );\n this.previousSelectedValues.forEach(previousValue => {\n if (\n !values.some((v: any) =>\n this.matSelect.compareWith(v, previousValue),\n ) &&\n !optionValues.some(v =>\n this.matSelect.compareWith(v, previousValue),\n )\n ) {\n // if a value that was selected before is deselected and not found in the options, it was deselected\n // due to the filtering, so we restore it.\n values.push(previousValue);\n restoreSelectedValues = true;\n }\n });\n }\n }\n this.previousSelectedValues = values;\n\n if (restoreSelectedValues) {\n this.matSelect._onChange(values);\n }\n });\n }\n\n /**\n * Set the width of the innerSelectSearch to fit even custom scrollbars\n * And support all Operation Systems\n */\n public updateInputWidth() {\n const innerSelectSearch = this.innerSelectSearch();\n if (!innerSelectSearch || !innerSelectSearch.nativeElement) {\n return;\n }\n let element: HTMLElement = innerSelectSearch.nativeElement;\n if (element.parentElement !== null) {\n let panelElement: HTMLElement | null = null;\n while ((element = element.parentElement)) {\n if (element.classList.contains('mat-select-panel')) {\n panelElement = element;\n break;\n }\n }\n if (panelElement !== null) {\n innerSelectSearch.nativeElement.style.width =\n panelElement.clientWidth + 'px';\n }\n }\n }\n\n /**\n * Determine the offset to length that can be caused by the optional matOption used as a search input.\n */\n private getOptionsLengthOffset(): number {\n if (this.matOption) {\n return 1;\n } else {\n return 0;\n }\n }\n\n private unselectActiveDescendant() {\n this.activeDescendant?.removeAttribute('aria-selected');\n this.searchSelectInput()?.nativeElement.removeAttribute(\n 'aria-activedescendant',\n );\n }\n}\n","<!--\nCopyright (c) 2018 Bithost GmbH All Rights Reserved.\n\nUse of this source code is governed by an MIT-style license that can be\nfound in the LICENSE file at https://angular.io/license\n-->\n<!-- Placeholder to adjust vertical offset of the mat-option elements -->\n<input matInput class=\"mat-select-search-input mat-select-search-hidden\" />\n\n<!-- Note: the mat-datepicker-content mat-tab-header are needed to inherit the material theme colors, see PR #22 -->\n<div\n #innerSelectSearch\n class=\"mat-select-search-inner mat-typography mat-datepicker-content mat-tab-header\"\n [class]=\"{\n 'mat-select-search-inner-multiple': matSelect.multiple,\n 'mat-select-search-inner-toggle-all': _isToggleAllCheckboxVisible(),\n }\"\n>\n @if (_isToggleAllCheckboxVisible()) {\n <mat-checkbox\n class=\"mat-select-search-toggle-all-checkbox\"\n [checked]=\"toggleAllCheckboxChecked()\"\n [indeterminate]=\"toggleAllCheckboxIndeterminate()\"\n [matTooltip]=\"toggleAllCheckboxTooltipMessage()\"\n matTooltipClass=\"ngx-mat-select-search-toggle-all-tooltip\"\n [matTooltipPosition]=\"toggleAllCheckboxTooltipPosition()\"\n (change)=\"_emitSelectAllBooleanToParent($event.checked)\"\n />\n }\n <input\n class=\"mat-select-search-input\"\n autocomplete=\"off\"\n [type]=\"type()\"\n [formControl]=\"_formControl\"\n #searchSelectInput\n (keydown)=\"_handleKeydown($event)\"\n (keyup)=\"_handleKeyup($event)\"\n (blur)=\"onBlur()\"\n [placeholder]=\"placeholderLabel()\"\n [attr.aria-label]=\"ariaLabel()\"\n />\n @if (value === '' && !searching()) {\n <mat-icon class=\"suffix\">search</mat-icon>\n }\n @if (searching()) {\n <mat-spinner class=\"mat-select-search-spinner\" diameter=\"16\" />\n }\n @if (!hideClearSearchButton() && value && !searching()) {\n <button\n mat-icon-button\n aria-label=\"Clear\"\n (click)=\"_reset(true)\"\n class=\"mat-select-search-clear\"\n >\n @if (clearIcon()) {\n <ng-content select=\"[matSelectSearchClear]\" />\n } @else {\n <mat-icon [svgIcon]=\"closeSvgIcon()\">\n {{ !closeSvgIcon() ? closeIcon() : null }}\n </mat-icon>\n }\n </button>\n }\n\n <ng-content select=\".mat-select-search-custom-header-content\" />\n\n <mat-divider />\n</div>\n\n@if (_showNoEntriesFound$ | async) {\n <div class=\"mat-select-search-no-entries-found\">\n @if (noEntriesFound()) {\n <ng-content select=\"[matSelectNoEntriesFound]\" />\n } @else {\n {{ noEntriesFoundLabel() }}\n }\n </div>\n}\n","/**\n * Copyright (c) 2018 Bithost GmbH All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport { NgModule } from '@angular/core';\nimport { MatSelectSearchComponent } from './mat-select-search.component';\n\nimport { MatSelectSearchClearDirective } from './mat-select-search-clear.directive';\nimport { MatSelectNoEntriesFoundDirective } from './mat-select-no-entries-found.directive';\n\nexport { MatSelectSearchClearDirective };\nexport { MatSelectNoEntriesFoundDirective };\n\n@NgModule({\n imports: [\n MatSelectSearchComponent,\n MatSelectSearchClearDirective,\n MatSelectNoEntriesFoundDirective,\n ],\n exports: [\n MatSelectSearchComponent,\n MatSelectSearchClearDirective,\n MatSelectNoEntriesFoundDirective,\n ],\n})\nexport class MatSelectSearchModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"onemrvapublic-design-system-mat-select-search.mjs","sources":["../../../../projects/onemrva/design-system/mat-select-search/src/mat-select-search-clear.directive.ts","../../../../projects/onemrva/design-system/mat-select-search/src/default-options.ts","../../../../projects/onemrva/design-system/mat-select-search/src/mat-select-no-entries-found.directive.ts","../../../../projects/onemrva/design-system/mat-select-search/src/mat-select-search.component.ts","../../../../projects/onemrva/design-system/mat-select-search/src/mat-select-search.component.html","../../../../projects/onemrva/design-system/mat-select-search/src/mat-select-search.module.ts","../../../../projects/onemrva/design-system/mat-select-search/onemrvapublic-design-system-mat-select-search.ts"],"sourcesContent":["import { Directive } from '@angular/core';\n\n/**\n * Directive for providing a custom clear-icon.\n * e.g.\n * <mat-select-search [formControl]=\"bankFilterCtrl\">\n * <mat-icon matSelectSearchClear>delete</mat-icon>\n * </mat-select-search>\n */\n@Directive({\n selector: '[matSelectSearchClear]',\n standalone: true,\n})\nexport class MatSelectSearchClearDirective {}\n","import { InjectionToken } from '@angular/core';\nimport { MatSelectSearchComponent } from './mat-select-search.component';\n\n/** List of inputs of NgxMatSelectSearchComponent that can be configured with a global default. */\nexport const configurableDefaultOptions = [\n 'ariaLabel',\n 'clearSearchInput',\n 'closeIcon',\n 'closeSvgIcon',\n 'disableInitialFocus',\n 'disableScrollToActiveOnOptionsChanged',\n 'enableClearOnEscapePressed',\n 'hideClearSearchButton',\n 'noEntriesFoundLabel',\n 'placeholderLabel',\n 'preventHomeEndKeyPropagation',\n 'searching',\n] as const;\n\nexport type ConfigurableDefaultOptions =\n (typeof configurableDefaultOptions)[number];\n\n/**\n * InjectionToken that can be used to specify global options. e.g.\n *\n * ```typescript\n * providers: [\n * {\n * provide: MAT_SELECTSEARCH_DEFAULT_OPTIONS,\n * useValue: <MatSelectSearchOptions>{\n * closeIcon: 'delete',\n * noEntriesFoundLabel: 'No options found'\n * }\n * }\n * ]\n * ```\n *\n * See the corresponding inputs of `MatSelectSearchComponent` for documentation.\n */\nexport const MAT_SELECTSEARCH_DEFAULT_OPTIONS =\n new InjectionToken<MatSelectSearchOptions>(\n 'mat-selectsearch-default-options',\n );\n\n/** Global configurable options for MatSelectSearch. */\nexport type MatSelectSearchOptions = Readonly<\n Partial<Pick<MatSelectSearchComponent, ConfigurableDefaultOptions>>\n>;\n","import { Directive } from '@angular/core';\n\n/**\n * Directive for providing a custom no entries found element.\n * e.g.\n * <mat-select-search [formControl]=\"bankFilterCtrl\">\n * <span matSelectNoEntriesFound>\n * No entries found <button>Add</button>\n * </span>\n * </mat-select-search>\n */\n@Directive({\n selector: '[matSelectNoEntriesFound]',\n standalone: true,\n})\nexport class MatSelectNoEntriesFoundDirective {}\n","/**\n * Copyright (c) 2018 Bithost GmbH All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {\n A,\n DOWN_ARROW,\n END,\n ENTER,\n ESCAPE,\n HOME,\n NINE,\n SPACE,\n UP_ARROW,\n Z,\n ZERO,\n} from '@angular/cdk/keycodes';\nimport { ViewportRuler } from '@angular/cdk/scrolling';\nimport {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n forwardRef,\n OnDestroy,\n OnInit,\n QueryList,\n inject,\n input,\n output,\n viewChild,\n contentChild,\n} from '@angular/core';\nimport {\n ControlValueAccessor,\n FormControl,\n NG_VALUE_ACCESSOR,\n ReactiveFormsModule,\n} from '@angular/forms';\nimport { MatOption } from '@angular/material/core';\nimport { MatFormField } from '@angular/material/form-field';\nimport { MatSelect } from '@angular/material/select';\nimport { BehaviorSubject, combineLatest, Observable, of, Subject } from 'rxjs';\nimport {\n delay,\n filter,\n map,\n startWith,\n switchMap,\n take,\n takeUntil,\n tap,\n} from 'rxjs/operators';\nimport { MatSelectSearchClearDirective } from './mat-select-search-clear.directive';\nimport {\n configurableDefaultOptions,\n MAT_SELECTSEARCH_DEFAULT_OPTIONS,\n MatSelectSearchOptions,\n} from './default-options';\nimport { MatSelectNoEntriesFoundDirective } from './mat-select-no-entries-found.directive';\nimport { AsyncPipe } from '@angular/common';\nimport { MatCheckbox } from '@angular/material/checkbox';\nimport { MatTooltip } from '@angular/material/tooltip';\nimport { MatIcon } from '@angular/material/icon';\nimport { MatProgressSpinner } from '@angular/material/progress-spinner';\nimport { MatIconButton } from '@angular/material/button';\nimport { MatInput } from '@angular/material/input';\nimport { MatDivider } from '@angular/material/divider';\n\n@Component({\n selector: 'mat-select-search',\n templateUrl: './mat-select-search.component.html',\n styleUrls: ['./mat-select-search.component.scss'],\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => MatSelectSearchComponent),\n multi: true,\n },\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: true,\n imports: [\n MatCheckbox,\n MatTooltip,\n ReactiveFormsModule,\n MatIcon,\n MatProgressSpinner,\n MatIconButton,\n MatInput,\n MatDivider,\n AsyncPipe,\n ],\n})\nexport class MatSelectSearchComponent\n implements OnInit, OnDestroy, ControlValueAccessor\n{\n /** Label of the search placeholder */\n readonly placeholderLabel = input('Search');\n\n /** Type of the search input field */\n readonly type = input('text');\n\n /** Font-based icon used for displaying Close-Icon */\n readonly closeIcon = input('close');\n\n /** Svg-based icon used for displaying Close-Icon. If set, closeIcon is overridden */\n readonly closeSvgIcon = input('');\n\n /** Label to be shown when no entries are found. Set to null if no message should be shown. */\n readonly noEntriesFoundLabel = input('Nothing found');\n\n /**\n * Whether or not the search field should be cleared after the dropdown menu is closed.\n */\n readonly clearSearchInput = input(true);\n\n /** Whether to show the search-in-progress indicator */\n readonly searching = input(false);\n\n /** Disables initial focusing of the input field */\n readonly disableInitialFocus = input(false);\n\n /** Enable clear input on escape pressed */\n readonly enableClearOnEscapePressed = input(false);\n\n /**\n * Prevents home / end key being propagated to mat-select,\n * allowing to move the cursor within the search input instead of navigating the options\n */\n readonly preventHomeEndKeyPropagation = input(false);\n\n /** Disables scrolling to active options when option list changes. Useful for server-side search */\n readonly disableScrollToActiveOnOptionsChanged = input(false);\n\n /** Adds 508 screen reader support for search box */\n readonly ariaLabel = input('dropdown search');\n\n /** Whether to show Select All Checkbox (for mat-select[multi=true]) */\n readonly showToggleAllCheckbox = input(false);\n\n /** select all checkbox checked state */\n readonly toggleAllCheckboxChecked = input(false);\n\n /** select all checkbox indeterminate state */\n readonly toggleAllCheckboxIndeterminate = input(false);\n\n /** Display a message in a tooltip on the toggle-all checkbox */\n readonly toggleAllCheckboxTooltipMessage = input('');\n\n /** Define the position of the tooltip on the toggle-all checkbox. */\n readonly toggleAllCheckboxTooltipPosition = input<\n 'left' | 'right' | 'above' | 'below' | 'before' | 'after'\n >('below');\n\n /** Show/Hide the search clear button of the search input */\n readonly hideClearSearchButton = input(false);\n\n /**\n * Always restore selected options on selectionChange for mode multi (e.g. for lazy loading/infinity scrolling).\n * Defaults to false, so selected options are only restored while filtering is active.\n */\n readonly alwaysRestoreSelectedOptionsMulti = input(false);\n\n /** Output emitter to send to parent component with the toggle all boolean */\n readonly toggleAll = output<boolean>();\n\n /** Reference to the search input field */\n readonly searchSelectInput = viewChild('searchSelectInput', {\n read: ElementRef,\n });\n\n /** Reference to the search input field */\n readonly innerSelectSearch = viewChild('innerSelectSearch', {\n read: ElementRef,\n });\n\n /** Reference to custom search input clear icon */\n readonly clearIcon = contentChild(MatSelectSearchClearDirective);\n\n /** Reference to custom no entries found element */\n readonly noEntriesFound = contentChild(MatSelectNoEntriesFoundDirective);\n\n /** Current search value */\n get value(): string {\n return (this._formControl as FormControl).value;\n }\n\n private _lastExternalInputValue?: string;\n\n onTouched: (_: any) => void = (_: any) => {\n //\n };\n\n /** Reference to the MatSelect options */\n public set _options(_options: QueryList<MatOption>) {\n this._options$.next(_options);\n }\n\n public get _options(): QueryList<MatOption> {\n return this._options$.getValue();\n }\n\n public _options$: BehaviorSubject<QueryList<MatOption>> = new BehaviorSubject<\n QueryList<MatOption>\n >(new QueryList());\n\n private optionsList$: Observable<MatOption[]> = this._options$.pipe(\n switchMap(_options =>\n _options\n ? _options.changes.pipe(\n map(options => options.toArray()),\n startWith<MatOption[]>(_options.toArray()),\n )\n : of([]),\n ),\n );\n\n private optionsLength$: Observable<number> = this.optionsList$.pipe(\n map(options => (options ? options.length : 0)),\n );\n\n /** Previously selected values when using <mat-select [multiple]=\"true\">*/\n private previousSelectedValues?: any[];\n\n public _formControl: FormControl<string | null> = new FormControl<string>('');\n\n /** whether to show the no entries found message */\n public _showNoEntriesFound$: Observable<boolean> = combineLatest([\n this._formControl.valueChanges,\n this.optionsLength$,\n ]).pipe(\n map(([_, optionsLength]) => {\n return (\n this.noEntriesFoundLabel() !== '' &&\n optionsLength === this.getOptionsLengthOffset()\n );\n }),\n );\n\n /** Subject that emits when the component has been destroyed. */\n private _onDestroy = new Subject<void>();\n\n /** Reference to active descendant for ARIA Support. */\n private activeDescendant?: HTMLElement;\n\n public readonly matSelect = inject(MatSelect);\n public readonly changeDetectorRef = inject(ChangeDetectorRef);\n private readonly _viewportRuler = inject(ViewportRuler);\n public readonly matOption = inject(MatOption, { optional: true });\n public readonly matFormField = inject(MatFormField, { optional: true });\n private readonly defaultOptions = inject(MAT_SELECTSEARCH_DEFAULT_OPTIONS, {\n optional: true,\n });\n\n constructor() {\n this.applyDefaultOptions(this.defaultOptions as MatSelectSearchOptions);\n }\n\n private applyDefaultOptions(defaultOptions: MatSelectSearchOptions) {\n if (!defaultOptions) {\n return;\n }\n for (const key of configurableDefaultOptions) {\n // eslint-disable-next-line\n if (defaultOptions.hasOwnProperty(key)) {\n (this[key] as any) = defaultOptions[key];\n }\n }\n }\n\n ngOnInit() {\n // set custom mat-option class if the component was placed inside a mat-option\n if (this.matOption) {\n this.matOption.disabled = true;\n this.matOption\n ._getHostElement()\n .classList.add('contains-mat-select-search');\n //this.matOption._getHostElement().setAttribute('aria-hidden', 'true'); // this provoke an error\n } else {\n console.error(\n '<mat-select-search> must be placed inside a <mat-option> element',\n );\n }\n\n // when the select dropdown panel is opened or closed\n this.matSelect.openedChange\n .pipe(delay(1), takeUntil(this._onDestroy))\n .subscribe(opened => {\n if (opened) {\n this.updateInputWidth();\n // focus the search field when opening\n if (!this.disableInitialFocus()) {\n this._focus();\n }\n } else {\n // clear it when closing\n if (this.clearSearchInput()) {\n this._reset();\n }\n }\n });\n\n // set the first item active after the options changed\n this.matSelect.openedChange\n .pipe(\n take(1),\n switchMap(_ => {\n this._options = this.matSelect.options;\n\n // Closure variable for tracking the most recent first option.\n // In order to avoid avoid causing the list to\n // scroll to the top when options are added to the bottom of\n // the list (eg: infinite scroll), we compare only\n // the changes to the first options to determine if we\n // should set the first item as active.\n // This prevents unnecessary scrolling to the top of the list\n // when options are appended, but allows the first item\n // in the list to be set as active by default when there\n // is no active selection\n let previousFirstOption =\n this._options.toArray()[this.getOptionsLengthOffset()];\n\n return this._options.changes.pipe(\n tap(() => {\n // avoid \"expression has been changed\" error\n setTimeout(() => {\n // Convert the QueryList to an array\n const options = this._options.toArray();\n\n // The true first item is offset by 1\n const currentFirstOption =\n options[this.getOptionsLengthOffset()];\n\n const keyManager = this.matSelect._keyManager;\n if (keyManager && this.matSelect.panelOpen) {\n // set first item active and input width\n\n // Check to see if the first option in these changes is different from the previous.\n const firstOptionIsChanged = !this.matSelect.compareWith(\n previousFirstOption,\n currentFirstOption,\n );\n\n // CASE: The first option is different now.\n // Indiciates we should set it as active and scroll to the top.\n if (\n firstOptionIsChanged ||\n !keyManager.activeItem ||\n !options.find(option =>\n this.matSelect.compareWith(option, keyManager.activeItem),\n )\n ) {\n keyManager.setFirstItemActive();\n }\n\n // wait for panel width changes\n setTimeout(() => {\n this.updateInputWidth();\n });\n }\n\n // Update our reference\n previousFirstOption = currentFirstOption;\n });\n }),\n );\n }),\n )\n .subscribe();\n\n // add or remove css class depending on whether to show the no entries found message\n // note: this is hacky\n this._showNoEntriesFound$\n .pipe(takeUntil(this._onDestroy))\n .subscribe(showNoEntriesFound => {\n // set no entries found class on mat option\n if (this.matOption) {\n if (showNoEntriesFound) {\n this.matOption\n ._getHostElement()\n .classList.add('mat-select-search-no-entries-found');\n } else {\n this.matOption\n ._getHostElement()\n .classList.remove('mat-select-search-no-entries-found');\n }\n }\n });\n\n // resize the input width when the viewport is resized, i.e. the trigger width could potentially be resized\n this._viewportRuler\n .change()\n .pipe(takeUntil(this._onDestroy))\n .subscribe(() => {\n if (this.matSelect.panelOpen) {\n this.updateInputWidth();\n }\n });\n\n this.initMultipleHandling();\n\n this.optionsList$.pipe(takeUntil(this._onDestroy)).subscribe(() => {\n // update view when available options change\n this.changeDetectorRef.markForCheck();\n });\n }\n\n _emitSelectAllBooleanToParent(state: boolean) {\n this.toggleAll.emit(state);\n }\n\n ngOnDestroy() {\n this._onDestroy.next();\n this._onDestroy.complete();\n }\n\n _isToggleAllCheckboxVisible(): boolean {\n return this.matSelect.multiple && this.showToggleAllCheckbox();\n }\n\n /**\n * Handles the key down event with MatSelect.\n * Allows e.g. selecting with enter key, navigation with arrow keys, etc.\n * @param event\n */\n _handleKeydown(event: KeyboardEvent) {\n // Prevent propagation for all alphanumeric characters in order to avoid selection issues\n if (\n (event.key && event.key.length === 1) ||\n (event.keyCode >= A && event.keyCode <= Z) ||\n (event.keyCode >= ZERO && event.keyCode <= NINE) ||\n event.keyCode === SPACE ||\n (this.preventHomeEndKeyPropagation() &&\n (event.keyCode === HOME || event.keyCode === END))\n ) {\n event.stopPropagation();\n }\n\n if (this.matSelect.multiple && event.key && event.keyCode === ENTER) {\n // Regain focus after multiselect, so we can further type\n setTimeout(() => this._focus());\n }\n\n // Special case if click Escape, if input is empty, close the dropdown, if not, empty out the search field\n if (\n this.enableClearOnEscapePressed() &&\n event.keyCode === ESCAPE &&\n this.value\n ) {\n this._reset(true);\n event.stopPropagation();\n }\n }\n\n /**\n * Handles the key up event with MatSelect.\n * Allows e.g. the announcing of the currently activeDescendant by screen readers.\n */\n _handleKeyup(event: KeyboardEvent) {\n if (event.keyCode === UP_ARROW || event.keyCode === DOWN_ARROW) {\n const ariaActiveDescendantId = this.matSelect._getAriaActiveDescendant();\n const index = this._options\n .toArray()\n .findIndex(item => item.id === ariaActiveDescendantId);\n if (index !== -1) {\n this.unselectActiveDescendant();\n\n const temp = this._options.toArray();\n this.activeDescendant = temp[index]._getHostElement();\n\n this.activeDescendant.setAttribute('aria-selected', 'true');\n\n this.searchSelectInput()?.nativeElement.setAttribute(\n 'aria-activedescendant',\n ariaActiveDescendantId,\n );\n }\n }\n }\n\n writeValue(value: string) {\n this._lastExternalInputValue = value;\n this._formControl.setValue(value);\n this.changeDetectorRef.markForCheck();\n }\n\n onBlur() {\n this.unselectActiveDescendant();\n }\n\n registerOnChange(fn: (value: string | null) => void) {\n this._formControl.valueChanges\n .pipe(\n filter(value => value !== this._lastExternalInputValue),\n tap(() => (this._lastExternalInputValue = undefined)),\n takeUntil(this._onDestroy),\n )\n .subscribe(fn);\n }\n\n registerOnTouched(fn: () => void) {\n this.onTouched = fn;\n }\n\n /**\n * Focuses the search input field\n */\n public _focus() {\n const searchSelectInput = this.searchSelectInput();\n if (!searchSelectInput || !this.matSelect.panel) {\n return;\n }\n // save and restore scrollTop of panel, since it will be reset by focus()\n // note: this is hacky\n const panel = this.matSelect.panel.nativeElement;\n const scrollTop = panel.scrollTop;\n\n // focus\n searchSelectInput.nativeElement.focus();\n\n panel.scrollTop = scrollTop;\n }\n\n /**\n * Resets the current search value\n * @param focus whether to focus after resetting\n */\n public _reset(focus?: boolean) {\n this._formControl.setValue('');\n if (focus) {\n this._focus();\n }\n }\n\n /**\n * Initializes handling <mat-select [multiple]=\"true\">\n * Note: to improve this code, mat-select should be extended to allow disabling resetting the selection while filtering.\n */\n private initMultipleHandling() {\n if (!this.matSelect.ngControl) {\n if (this.matSelect.multiple) {\n // note: the access to matSelect.ngControl (instead of matSelect.value / matSelect.valueChanges)\n // is necessary to properly work in multi-selection mode.\n console.error(\n 'the mat-select containing mat-select-search must have a ngModel or formControl directive when multiple=true',\n );\n }\n return;\n }\n // if <mat-select [multiple]=\"true\">\n // store previously selected values and restore them when they are deselected\n // because the option is not available while we are currently filtering\n this.previousSelectedValues = this.matSelect.ngControl.value;\n\n this.matSelect.ngControl.valueChanges\n ?.pipe(takeUntil(this._onDestroy))\n .subscribe(values => {\n let restoreSelectedValues = false;\n if (this.matSelect.multiple) {\n if (\n (this.alwaysRestoreSelectedOptionsMulti() ||\n (this._formControl.value && this._formControl.value.length)) &&\n this.previousSelectedValues &&\n Array.isArray(this.previousSelectedValues)\n ) {\n if (!values || !Array.isArray(values)) {\n values = [];\n }\n const optionValues = this.matSelect.options.map(\n option => option.value,\n );\n this.previousSelectedValues.forEach(previousValue => {\n if (\n !values.some((v: any) =>\n this.matSelect.compareWith(v, previousValue),\n ) &&\n !optionValues.some(v =>\n this.matSelect.compareWith(v, previousValue),\n )\n ) {\n // if a value that was selected before is deselected and not found in the options, it was deselected\n // due to the filtering, so we restore it.\n values.push(previousValue);\n restoreSelectedValues = true;\n }\n });\n }\n }\n this.previousSelectedValues = values;\n\n if (restoreSelectedValues) {\n this.matSelect._onChange(values);\n }\n });\n }\n\n /**\n * Set the width of the innerSelectSearch to fit even custom scrollbars\n * And support all Operation Systems\n */\n public updateInputWidth() {\n const innerSelectSearch = this.innerSelectSearch();\n if (!innerSelectSearch || !innerSelectSearch.nativeElement) {\n return;\n }\n let element: HTMLElement = innerSelectSearch.nativeElement;\n if (element.parentElement !== null) {\n let panelElement: HTMLElement | null = null;\n while ((element = element.parentElement)) {\n if (element.classList.contains('mat-select-panel')) {\n panelElement = element;\n break;\n }\n }\n if (panelElement !== null) {\n innerSelectSearch.nativeElement.style.width =\n panelElement.clientWidth + 'px';\n }\n }\n }\n\n /**\n * Determine the offset to length that can be caused by the optional matOption used as a search input.\n */\n private getOptionsLengthOffset(): number {\n if (this.matOption) {\n return 1;\n } else {\n return 0;\n }\n }\n\n private unselectActiveDescendant() {\n this.activeDescendant?.removeAttribute('aria-selected');\n this.searchSelectInput()?.nativeElement.removeAttribute(\n 'aria-activedescendant',\n );\n }\n}\n","<!--\nCopyright (c) 2018 Bithost GmbH All Rights Reserved.\n\nUse of this source code is governed by an MIT-style license that can be\nfound in the LICENSE file at https://angular.io/license\n-->\n<!-- Placeholder to adjust vertical offset of the mat-option elements -->\n<input matInput class=\"mat-select-search-input mat-select-search-hidden\" />\n\n<!-- Note: the mat-datepicker-content mat-tab-header are needed to inherit the material theme colors, see PR #22 -->\n<div\n #innerSelectSearch\n class=\"mat-select-search-inner mat-typography mat-datepicker-content mat-tab-header\"\n [class]=\"{\n 'mat-select-search-inner-multiple': matSelect.multiple,\n 'mat-select-search-inner-toggle-all': _isToggleAllCheckboxVisible(),\n }\"\n>\n @if (_isToggleAllCheckboxVisible()) {\n <mat-checkbox\n class=\"mat-select-search-toggle-all-checkbox\"\n [checked]=\"toggleAllCheckboxChecked()\"\n [indeterminate]=\"toggleAllCheckboxIndeterminate()\"\n [matTooltip]=\"toggleAllCheckboxTooltipMessage()\"\n matTooltipClass=\"ngx-mat-select-search-toggle-all-tooltip\"\n [matTooltipPosition]=\"toggleAllCheckboxTooltipPosition()\"\n (change)=\"_emitSelectAllBooleanToParent($event.checked)\"\n />\n }\n <input\n class=\"mat-select-search-input\"\n autocomplete=\"off\"\n [type]=\"type()\"\n [formControl]=\"_formControl\"\n #searchSelectInput\n (keydown)=\"_handleKeydown($event)\"\n (keyup)=\"_handleKeyup($event)\"\n (blur)=\"onBlur()\"\n [placeholder]=\"placeholderLabel()\"\n [attr.aria-label]=\"ariaLabel()\"\n />\n @if (value === '' && !searching()) {\n <mat-icon class=\"suffix\">search</mat-icon>\n }\n @if (searching()) {\n <mat-spinner class=\"mat-select-search-spinner\" diameter=\"16\" />\n }\n @if (!hideClearSearchButton() && value && !searching()) {\n <button\n mat-icon-button\n aria-label=\"Clear\"\n (click)=\"_reset(true)\"\n class=\"mat-select-search-clear\"\n >\n @if (clearIcon()) {\n <ng-content select=\"[matSelectSearchClear]\" />\n } @else {\n <mat-icon [svgIcon]=\"closeSvgIcon()\">\n {{ !closeSvgIcon() ? closeIcon() : null }}\n </mat-icon>\n }\n </button>\n }\n\n <ng-content select=\".mat-select-search-custom-header-content\" />\n\n <mat-divider />\n</div>\n\n@if (_showNoEntriesFound$ | async) {\n <div class=\"mat-select-search-no-entries-found\">\n @if (noEntriesFound()) {\n <ng-content select=\"[matSelectNoEntriesFound]\" />\n } @else {\n {{ noEntriesFoundLabel() }}\n }\n </div>\n}\n","/**\n * Copyright (c) 2018 Bithost GmbH All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport { NgModule } from '@angular/core';\nimport { MatSelectSearchComponent } from './mat-select-search.component';\n\nimport { MatSelectSearchClearDirective } from './mat-select-search-clear.directive';\nimport { MatSelectNoEntriesFoundDirective } from './mat-select-no-entries-found.directive';\n\nexport { MatSelectSearchClearDirective };\nexport { MatSelectNoEntriesFoundDirective };\n\n@NgModule({\n imports: [\n MatSelectSearchComponent,\n MatSelectSearchClearDirective,\n MatSelectNoEntriesFoundDirective,\n ],\n exports: [\n MatSelectSearchComponent,\n MatSelectSearchClearDirective,\n MatSelectNoEntriesFoundDirective,\n ],\n})\nexport class MatSelectSearchModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;AAEA;;;;;;AAMG;MAKU,6BAA6B,CAAA;8GAA7B,6BAA6B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;kGAA7B,6BAA6B,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,wBAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;2FAA7B,6BAA6B,EAAA,UAAA,EAAA,CAAA;kBAJzC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,wBAAwB;AAClC,oBAAA,UAAU,EAAE,IAAI;AACjB,iBAAA;;;ACTD;AACO,MAAM,0BAA0B,GAAG;IACxC,WAAW;IACX,kBAAkB;IAClB,WAAW;IACX,cAAc;IACd,qBAAqB;IACrB,uCAAuC;IACvC,4BAA4B;IAC5B,uBAAuB;IACvB,qBAAqB;IACrB,kBAAkB;IAClB,8BAA8B;IAC9B,WAAW;;AAMb;;;;;;;;;;;;;;;;AAgBG;MACU,gCAAgC,GAC3C,IAAI,cAAc,CAChB,kCAAkC;;ACvCtC;;;;;;;;AAQG;MAKU,gCAAgC,CAAA;8GAAhC,gCAAgC,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;kGAAhC,gCAAgC,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,2BAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;2FAAhC,gCAAgC,EAAA,UAAA,EAAA,CAAA;kBAJ5C,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,2BAA2B;AACrC,oBAAA,UAAU,EAAE,IAAI;AACjB,iBAAA;;;ACdD;;;;;AAKG;MA4FU,wBAAwB,CAAA;;AA0FnC,IAAA,IAAI,KAAK,GAAA;AACP,QAAA,OAAQ,IAAI,CAAC,YAA4B,CAAC,KAAK;IACjD;;IASA,IAAW,QAAQ,CAAC,QAA8B,EAAA;AAChD,QAAA,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC;IAC/B;AAEA,IAAA,IAAW,QAAQ,GAAA;AACjB,QAAA,OAAO,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE;IAClC;AAsDA,IAAA,WAAA,GAAA;;AA7JS,QAAA,IAAA,CAAA,gBAAgB,GAAG,KAAK,CAAC,QAAQ,uFAAC;;AAGlC,QAAA,IAAA,CAAA,IAAI,GAAG,KAAK,CAAC,MAAM,2EAAC;;AAGpB,QAAA,IAAA,CAAA,SAAS,GAAG,KAAK,CAAC,OAAO,gFAAC;;AAG1B,QAAA,IAAA,CAAA,YAAY,GAAG,KAAK,CAAC,EAAE,mFAAC;;AAGxB,QAAA,IAAA,CAAA,mBAAmB,GAAG,KAAK,CAAC,eAAe,0FAAC;AAErD;;AAEG;AACM,QAAA,IAAA,CAAA,gBAAgB,GAAG,KAAK,CAAC,IAAI,uFAAC;;AAG9B,QAAA,IAAA,CAAA,SAAS,GAAG,KAAK,CAAC,KAAK,gFAAC;;AAGxB,QAAA,IAAA,CAAA,mBAAmB,GAAG,KAAK,CAAC,KAAK,0FAAC;;AAGlC,QAAA,IAAA,CAAA,0BAA0B,GAAG,KAAK,CAAC,KAAK,iGAAC;AAElD;;;AAGG;AACM,QAAA,IAAA,CAAA,4BAA4B,GAAG,KAAK,CAAC,KAAK,mGAAC;;AAG3C,QAAA,IAAA,CAAA,qCAAqC,GAAG,KAAK,CAAC,KAAK,4GAAC;;AAGpD,QAAA,IAAA,CAAA,SAAS,GAAG,KAAK,CAAC,iBAAiB,gFAAC;;AAGpC,QAAA,IAAA,CAAA,qBAAqB,GAAG,KAAK,CAAC,KAAK,4FAAC;;AAGpC,QAAA,IAAA,CAAA,wBAAwB,GAAG,KAAK,CAAC,KAAK,+FAAC;;AAGvC,QAAA,IAAA,CAAA,8BAA8B,GAAG,KAAK,CAAC,KAAK,qGAAC;;AAG7C,QAAA,IAAA,CAAA,+BAA+B,GAAG,KAAK,CAAC,EAAE,sGAAC;;AAG3C,QAAA,IAAA,CAAA,gCAAgC,GAAG,KAAK,CAE/C,OAAO,uGAAC;;AAGD,QAAA,IAAA,CAAA,qBAAqB,GAAG,KAAK,CAAC,KAAK,4FAAC;AAE7C;;;AAGG;AACM,QAAA,IAAA,CAAA,iCAAiC,GAAG,KAAK,CAAC,KAAK,wGAAC;;QAGhD,IAAA,CAAA,SAAS,GAAG,MAAM,EAAW;;QAG7B,IAAA,CAAA,iBAAiB,GAAG,SAAS,CAAC,mBAAmB,yFACxD,IAAI,EAAE,UAAU,EAAA,CAChB;;QAGO,IAAA,CAAA,iBAAiB,GAAG,SAAS,CAAC,mBAAmB,yFACxD,IAAI,EAAE,UAAU,EAAA,CAChB;;AAGO,QAAA,IAAA,CAAA,SAAS,GAAG,YAAY,CAAC,6BAA6B,gFAAC;;AAGvD,QAAA,IAAA,CAAA,cAAc,GAAG,YAAY,CAAC,gCAAgC,qFAAC;AASxE,QAAA,IAAA,CAAA,SAAS,GAAqB,CAAC,CAAM,KAAI;;AAEzC,QAAA,CAAC;QAWM,IAAA,CAAA,SAAS,GAA0C,IAAI,eAAe,CAE3E,IAAI,SAAS,EAAE,CAAC;AAEV,QAAA,IAAA,CAAA,YAAY,GAA4B,IAAI,CAAC,SAAS,CAAC,IAAI,CACjE,SAAS,CAAC,QAAQ,IAChB;cACI,QAAQ,CAAC,OAAO,CAAC,IAAI,CACnB,GAAG,CAAC,OAAO,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC,EACjC,SAAS,CAAc,QAAQ,CAAC,OAAO,EAAE,CAAC;AAE9C,cAAE,EAAE,CAAC,EAAE,CAAC,CACX,CACF;AAEO,QAAA,IAAA,CAAA,cAAc,GAAuB,IAAI,CAAC,YAAY,CAAC,IAAI,CACjE,GAAG,CAAC,OAAO,KAAK,OAAO,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAC/C;AAKM,QAAA,IAAA,CAAA,YAAY,GAA+B,IAAI,WAAW,CAAS,EAAE,CAAC;;QAGtE,IAAA,CAAA,oBAAoB,GAAwB,aAAa,CAAC;YAC/D,IAAI,CAAC,YAAY,CAAC,YAAY;AAC9B,YAAA,IAAI,CAAC,cAAc;AACpB,SAAA,CAAC,CAAC,IAAI,CACL,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,aAAa,CAAC,KAAI;AACzB,YAAA,QACE,IAAI,CAAC,mBAAmB,EAAE,KAAK,EAAE;AACjC,gBAAA,aAAa,KAAK,IAAI,CAAC,sBAAsB,EAAE;QAEnD,CAAC,CAAC,CACH;;AAGO,QAAA,IAAA,CAAA,UAAU,GAAG,IAAI,OAAO,EAAQ;AAKxB,QAAA,IAAA,CAAA,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC;AAC7B,QAAA,IAAA,CAAA,iBAAiB,GAAG,MAAM,CAAC,iBAAiB,CAAC;AAC5C,QAAA,IAAA,CAAA,cAAc,GAAG,MAAM,CAAC,aAAa,CAAC;QACvC,IAAA,CAAA,SAAS,GAAG,MAAM,CAAC,SAAS,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;QACjD,IAAA,CAAA,YAAY,GAAG,MAAM,CAAC,YAAY,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;AACtD,QAAA,IAAA,CAAA,cAAc,GAAG,MAAM,CAAC,gCAAgC,EAAE;AACzE,YAAA,QAAQ,EAAE,IAAI;AACf,SAAA,CAAC;AAGA,QAAA,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,cAAwC,CAAC;IACzE;AAEQ,IAAA,mBAAmB,CAAC,cAAsC,EAAA;QAChE,IAAI,CAAC,cAAc,EAAE;YACnB;QACF;AACA,QAAA,KAAK,MAAM,GAAG,IAAI,0BAA0B,EAAE;;AAE5C,YAAA,IAAI,cAAc,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE;gBACrC,IAAI,CAAC,GAAG,CAAS,GAAG,cAAc,CAAC,GAAG,CAAC;YAC1C;QACF;IACF;IAEA,QAAQ,GAAA;;AAEN,QAAA,IAAI,IAAI,CAAC,SAAS,EAAE;AAClB,YAAA,IAAI,CAAC,SAAS,CAAC,QAAQ,GAAG,IAAI;AAC9B,YAAA,IAAI,CAAC;AACF,iBAAA,eAAe;AACf,iBAAA,SAAS,CAAC,GAAG,CAAC,4BAA4B,CAAC;;QAEhD;aAAO;AACL,YAAA,OAAO,CAAC,KAAK,CACX,kEAAkE,CACnE;QACH;;QAGA,IAAI,CAAC,SAAS,CAAC;AACZ,aAAA,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC;aACzC,SAAS,CAAC,MAAM,IAAG;YAClB,IAAI,MAAM,EAAE;gBACV,IAAI,CAAC,gBAAgB,EAAE;;AAEvB,gBAAA,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE,EAAE;oBAC/B,IAAI,CAAC,MAAM,EAAE;gBACf;YACF;iBAAO;;AAEL,gBAAA,IAAI,IAAI,CAAC,gBAAgB,EAAE,EAAE;oBAC3B,IAAI,CAAC,MAAM,EAAE;gBACf;YACF;AACF,QAAA,CAAC,CAAC;;QAGJ,IAAI,CAAC,SAAS,CAAC;aACZ,IAAI,CACH,IAAI,CAAC,CAAC,CAAC,EACP,SAAS,CAAC,CAAC,IAAG;YACZ,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO;;;;;;;;;;;AAYtC,YAAA,IAAI,mBAAmB,GACrB,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,sBAAsB,EAAE,CAAC;YAExD,OAAO,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAC/B,GAAG,CAAC,MAAK;;gBAEP,UAAU,CAAC,MAAK;;oBAEd,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE;;oBAGvC,MAAM,kBAAkB,GACtB,OAAO,CAAC,IAAI,CAAC,sBAAsB,EAAE,CAAC;AAExC,oBAAA,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,WAAW;oBAC7C,IAAI,UAAU,IAAI,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE;;;AAI1C,wBAAA,MAAM,oBAAoB,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,WAAW,CACtD,mBAAmB,EACnB,kBAAkB,CACnB;;;AAID,wBAAA,IACE,oBAAoB;4BACpB,CAAC,UAAU,CAAC,UAAU;4BACtB,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,IAClB,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,MAAM,EAAE,UAAU,CAAC,UAAU,CAAC,CAC1D,EACD;4BACA,UAAU,CAAC,kBAAkB,EAAE;wBACjC;;wBAGA,UAAU,CAAC,MAAK;4BACd,IAAI,CAAC,gBAAgB,EAAE;AACzB,wBAAA,CAAC,CAAC;oBACJ;;oBAGA,mBAAmB,GAAG,kBAAkB;AAC1C,gBAAA,CAAC,CAAC;YACJ,CAAC,CAAC,CACH;AACH,QAAA,CAAC,CAAC;AAEH,aAAA,SAAS,EAAE;;;AAId,QAAA,IAAI,CAAC;AACF,aAAA,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC;aAC/B,SAAS,CAAC,kBAAkB,IAAG;;AAE9B,YAAA,IAAI,IAAI,CAAC,SAAS,EAAE;gBAClB,IAAI,kBAAkB,EAAE;AACtB,oBAAA,IAAI,CAAC;AACF,yBAAA,eAAe;AACf,yBAAA,SAAS,CAAC,GAAG,CAAC,oCAAoC,CAAC;gBACxD;qBAAO;AACL,oBAAA,IAAI,CAAC;AACF,yBAAA,eAAe;AACf,yBAAA,SAAS,CAAC,MAAM,CAAC,oCAAoC,CAAC;gBAC3D;YACF;AACF,QAAA,CAAC,CAAC;;AAGJ,QAAA,IAAI,CAAC;AACF,aAAA,MAAM;AACN,aAAA,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC;aAC/B,SAAS,CAAC,MAAK;AACd,YAAA,IAAI,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE;gBAC5B,IAAI,CAAC,gBAAgB,EAAE;YACzB;AACF,QAAA,CAAC,CAAC;QAEJ,IAAI,CAAC,oBAAoB,EAAE;AAE3B,QAAA,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,MAAK;;AAEhE,YAAA,IAAI,CAAC,iBAAiB,CAAC,YAAY,EAAE;AACvC,QAAA,CAAC,CAAC;IACJ;AAEA,IAAA,6BAA6B,CAAC,KAAc,EAAA;AAC1C,QAAA,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC;IAC5B;IAEA,WAAW,GAAA;AACT,QAAA,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE;AACtB,QAAA,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE;IAC5B;IAEA,2BAA2B,GAAA;QACzB,OAAO,IAAI,CAAC,SAAS,CAAC,QAAQ,IAAI,IAAI,CAAC,qBAAqB,EAAE;IAChE;AAEA;;;;AAIG;AACH,IAAA,cAAc,CAAC,KAAoB,EAAA;;AAEjC,QAAA,IACE,CAAC,KAAK,CAAC,GAAG,IAAI,KAAK,CAAC,GAAG,CAAC,MAAM,KAAK,CAAC;aACnC,KAAK,CAAC,OAAO,IAAI,CAAC,IAAI,KAAK,CAAC,OAAO,IAAI,CAAC,CAAC;aACzC,KAAK,CAAC,OAAO,IAAI,IAAI,IAAI,KAAK,CAAC,OAAO,IAAI,IAAI,CAAC;YAChD,KAAK,CAAC,OAAO,KAAK,KAAK;aACtB,IAAI,CAAC,4BAA4B,EAAE;AAClC,iBAAC,KAAK,CAAC,OAAO,KAAK,IAAI,IAAI,KAAK,CAAC,OAAO,KAAK,GAAG,CAAC,CAAC,EACpD;YACA,KAAK,CAAC,eAAe,EAAE;QACzB;AAEA,QAAA,IAAI,IAAI,CAAC,SAAS,CAAC,QAAQ,IAAI,KAAK,CAAC,GAAG,IAAI,KAAK,CAAC,OAAO,KAAK,KAAK,EAAE;;YAEnE,UAAU,CAAC,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC;QACjC;;QAGA,IACE,IAAI,CAAC,0BAA0B,EAAE;YACjC,KAAK,CAAC,OAAO,KAAK,MAAM;YACxB,IAAI,CAAC,KAAK,EACV;AACA,YAAA,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;YACjB,KAAK,CAAC,eAAe,EAAE;QACzB;IACF;AAEA;;;AAGG;AACH,IAAA,YAAY,CAAC,KAAoB,EAAA;AAC/B,QAAA,IAAI,KAAK,CAAC,OAAO,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,KAAK,UAAU,EAAE;YAC9D,MAAM,sBAAsB,GAAG,IAAI,CAAC,SAAS,CAAC,wBAAwB,EAAE;AACxE,YAAA,MAAM,KAAK,GAAG,IAAI,CAAC;AAChB,iBAAA,OAAO;iBACP,SAAS,CAAC,IAAI,IAAI,IAAI,CAAC,EAAE,KAAK,sBAAsB,CAAC;AACxD,YAAA,IAAI,KAAK,KAAK,CAAC,CAAC,EAAE;gBAChB,IAAI,CAAC,wBAAwB,EAAE;gBAE/B,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE;gBACpC,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,eAAe,EAAE;gBAErD,IAAI,CAAC,gBAAgB,CAAC,YAAY,CAAC,eAAe,EAAE,MAAM,CAAC;AAE3D,gBAAA,IAAI,CAAC,iBAAiB,EAAE,EAAE,aAAa,CAAC,YAAY,CAClD,uBAAuB,EACvB,sBAAsB,CACvB;YACH;QACF;IACF;AAEA,IAAA,UAAU,CAAC,KAAa,EAAA;AACtB,QAAA,IAAI,CAAC,uBAAuB,GAAG,KAAK;AACpC,QAAA,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,KAAK,CAAC;AACjC,QAAA,IAAI,CAAC,iBAAiB,CAAC,YAAY,EAAE;IACvC;IAEA,MAAM,GAAA;QACJ,IAAI,CAAC,wBAAwB,EAAE;IACjC;AAEA,IAAA,gBAAgB,CAAC,EAAkC,EAAA;QACjD,IAAI,CAAC,YAAY,CAAC;AACf,aAAA,IAAI,CACH,MAAM,CAAC,KAAK,IAAI,KAAK,KAAK,IAAI,CAAC,uBAAuB,CAAC,EACvD,GAAG,CAAC,OAAO,IAAI,CAAC,uBAAuB,GAAG,SAAS,CAAC,CAAC,EACrD,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC;aAE3B,SAAS,CAAC,EAAE,CAAC;IAClB;AAEA,IAAA,iBAAiB,CAAC,EAAc,EAAA;AAC9B,QAAA,IAAI,CAAC,SAAS,GAAG,EAAE;IACrB;AAEA;;AAEG;IACI,MAAM,GAAA;AACX,QAAA,MAAM,iBAAiB,GAAG,IAAI,CAAC,iBAAiB,EAAE;QAClD,IAAI,CAAC,iBAAiB,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE;YAC/C;QACF;;;QAGA,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,aAAa;AAChD,QAAA,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS;;AAGjC,QAAA,iBAAiB,CAAC,aAAa,CAAC,KAAK,EAAE;AAEvC,QAAA,KAAK,CAAC,SAAS,GAAG,SAAS;IAC7B;AAEA;;;AAGG;AACI,IAAA,MAAM,CAAC,KAAe,EAAA;AAC3B,QAAA,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC9B,IAAI,KAAK,EAAE;YACT,IAAI,CAAC,MAAM,EAAE;QACf;IACF;AAEA;;;AAGG;IACK,oBAAoB,GAAA;AAC1B,QAAA,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE;AAC7B,YAAA,IAAI,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE;;;AAG3B,gBAAA,OAAO,CAAC,KAAK,CACX,6GAA6G,CAC9G;YACH;YACA;QACF;;;;QAIA,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,KAAK;AAE5D,QAAA,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC;cACrB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC;aAChC,SAAS,CAAC,MAAM,IAAG;YAClB,IAAI,qBAAqB,GAAG,KAAK;AACjC,YAAA,IAAI,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE;AAC3B,gBAAA,IACE,CAAC,IAAI,CAAC,iCAAiC,EAAE;AACvC,qBAAC,IAAI,CAAC,YAAY,CAAC,KAAK,IAAI,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,MAAM,CAAC;AAC7D,oBAAA,IAAI,CAAC,sBAAsB;oBAC3B,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,sBAAsB,CAAC,EAC1C;oBACA,IAAI,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;wBACrC,MAAM,GAAG,EAAE;oBACb;AACA,oBAAA,MAAM,YAAY,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,CAC7C,MAAM,IAAI,MAAM,CAAC,KAAK,CACvB;AACD,oBAAA,IAAI,CAAC,sBAAsB,CAAC,OAAO,CAAC,aAAa,IAAG;wBAClD,IACE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAM,KAClB,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC,EAAE,aAAa,CAAC,CAC7C;4BACD,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,IAClB,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC,EAAE,aAAa,CAAC,CAC7C,EACD;;;AAGA,4BAAA,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC;4BAC1B,qBAAqB,GAAG,IAAI;wBAC9B;AACF,oBAAA,CAAC,CAAC;gBACJ;YACF;AACA,YAAA,IAAI,CAAC,sBAAsB,GAAG,MAAM;YAEpC,IAAI,qBAAqB,EAAE;AACzB,gBAAA,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,MAAM,CAAC;YAClC;AACF,QAAA,CAAC,CAAC;IACN;AAEA;;;AAGG;IACI,gBAAgB,GAAA;AACrB,QAAA,MAAM,iBAAiB,GAAG,IAAI,CAAC,iBAAiB,EAAE;QAClD,IAAI,CAAC,iBAAiB,IAAI,CAAC,iBAAiB,CAAC,aAAa,EAAE;YAC1D;QACF;AACA,QAAA,IAAI,OAAO,GAAgB,iBAAiB,CAAC,aAAa;AAC1D,QAAA,IAAI,OAAO,CAAC,aAAa,KAAK,IAAI,EAAE;YAClC,IAAI,YAAY,GAAuB,IAAI;YAC3C,QAAQ,OAAO,GAAG,OAAO,CAAC,aAAa,GAAG;gBACxC,IAAI,OAAO,CAAC,SAAS,CAAC,QAAQ,CAAC,kBAAkB,CAAC,EAAE;oBAClD,YAAY,GAAG,OAAO;oBACtB;gBACF;YACF;AACA,YAAA,IAAI,YAAY,KAAK,IAAI,EAAE;AACzB,gBAAA,iBAAiB,CAAC,aAAa,CAAC,KAAK,CAAC,KAAK;AACzC,oBAAA,YAAY,CAAC,WAAW,GAAG,IAAI;YACnC;QACF;IACF;AAEA;;AAEG;IACK,sBAAsB,GAAA;AAC5B,QAAA,IAAI,IAAI,CAAC,SAAS,EAAE;AAClB,YAAA,OAAO,CAAC;QACV;aAAO;AACL,YAAA,OAAO,CAAC;QACV;IACF;IAEQ,wBAAwB,GAAA;AAC9B,QAAA,IAAI,CAAC,gBAAgB,EAAE,eAAe,CAAC,eAAe,CAAC;QACvD,IAAI,CAAC,iBAAiB,EAAE,EAAE,aAAa,CAAC,eAAe,CACrD,uBAAuB,CACxB;IACH;8GAhiBW,wBAAwB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAxB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,wBAAwB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,mBAAA,EAAA,MAAA,EAAA,EAAA,gBAAA,EAAA,EAAA,iBAAA,EAAA,kBAAA,EAAA,UAAA,EAAA,kBAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,IAAA,EAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,UAAA,EAAA,MAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,iBAAA,EAAA,WAAA,EAAA,UAAA,EAAA,WAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,YAAA,EAAA,EAAA,iBAAA,EAAA,cAAA,EAAA,UAAA,EAAA,cAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,mBAAA,EAAA,EAAA,iBAAA,EAAA,qBAAA,EAAA,UAAA,EAAA,qBAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,gBAAA,EAAA,EAAA,iBAAA,EAAA,kBAAA,EAAA,UAAA,EAAA,kBAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,iBAAA,EAAA,WAAA,EAAA,UAAA,EAAA,WAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,mBAAA,EAAA,EAAA,iBAAA,EAAA,qBAAA,EAAA,UAAA,EAAA,qBAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,0BAAA,EAAA,EAAA,iBAAA,EAAA,4BAAA,EAAA,UAAA,EAAA,4BAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,4BAAA,EAAA,EAAA,iBAAA,EAAA,8BAAA,EAAA,UAAA,EAAA,8BAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,qCAAA,EAAA,EAAA,iBAAA,EAAA,uCAAA,EAAA,UAAA,EAAA,uCAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,iBAAA,EAAA,WAAA,EAAA,UAAA,EAAA,WAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,qBAAA,EAAA,EAAA,iBAAA,EAAA,uBAAA,EAAA,UAAA,EAAA,uBAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,wBAAA,EAAA,EAAA,iBAAA,EAAA,0BAAA,EAAA,UAAA,EAAA,0BAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,8BAAA,EAAA,EAAA,iBAAA,EAAA,gCAAA,EAAA,UAAA,EAAA,gCAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,+BAAA,EAAA,EAAA,iBAAA,EAAA,iCAAA,EAAA,UAAA,EAAA,iCAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,gCAAA,EAAA,EAAA,iBAAA,EAAA,kCAAA,EAAA,UAAA,EAAA,kCAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,qBAAA,EAAA,EAAA,iBAAA,EAAA,uBAAA,EAAA,UAAA,EAAA,uBAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,iCAAA,EAAA,EAAA,iBAAA,EAAA,mCAAA,EAAA,UAAA,EAAA,mCAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,OAAA,EAAA,EAAA,SAAA,EAAA,WAAA,EAAA,EAAA,SAAA,EArBxB;AACT,YAAA;AACE,gBAAA,OAAO,EAAE,iBAAiB;AAC1B,gBAAA,WAAW,EAAE,UAAU,CAAC,MAAM,wBAAwB,CAAC;AACvD,gBAAA,KAAK,EAAE,IAAI;AACZ,aAAA;SACF,EAAA,OAAA,EAAA,CAAA,EAAA,YAAA,EAAA,WAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAmGiC,6BAA6B,EAAA,WAAA,EAAA,IAAA,EAAA,QAAA,EAAA,IAAA,EAAA,EAAA,EAAA,YAAA,EAAA,gBAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAGxB,gCAAgC,EAAA,WAAA,EAAA,IAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,WAAA,EAAA,CAAA,EAAA,YAAA,EAAA,mBAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,WAAA,EAAA,IAAA,EAAA,IAAA,EAZ/D,UAAU,EAAA,QAAA,EAAA,IAAA,EAAA,EAAA,EAAA,YAAA,EAAA,mBAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,WAAA,EAAA,IAAA,EAAA,IAAA,EAKV,UAAU,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECjLpB,+iFA8EA,EAAA,MAAA,EAAA,CAAA,yxCAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EDQI,WAAW,EAAA,QAAA,EAAA,cAAA,EAAA,MAAA,EAAA,CAAA,YAAA,EAAA,iBAAA,EAAA,kBAAA,EAAA,eAAA,EAAA,eAAA,EAAA,WAAA,EAAA,IAAA,EAAA,UAAA,EAAA,eAAA,EAAA,MAAA,EAAA,OAAA,EAAA,eAAA,EAAA,UAAA,EAAA,OAAA,EAAA,qBAAA,EAAA,SAAA,EAAA,UAAA,EAAA,eAAA,CAAA,EAAA,OAAA,EAAA,CAAA,QAAA,EAAA,qBAAA,CAAA,EAAA,QAAA,EAAA,CAAA,aAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EACX,UAAU,gRACV,mBAAmB,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,oBAAA,EAAA,QAAA,EAAA,8MAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,eAAA,EAAA,QAAA,EAAA,2CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,oBAAA,EAAA,QAAA,EAAA,eAAA,EAAA,MAAA,EAAA,CAAA,aAAA,EAAA,UAAA,EAAA,SAAA,CAAA,EAAA,OAAA,EAAA,CAAA,eAAA,CAAA,EAAA,QAAA,EAAA,CAAA,QAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EACnB,OAAO,EAAA,QAAA,EAAA,UAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,SAAA,EAAA,SAAA,EAAA,UAAA,CAAA,EAAA,QAAA,EAAA,CAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EACP,kBAAkB,EAAA,QAAA,EAAA,mCAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,MAAA,EAAA,OAAA,EAAA,UAAA,EAAA,aAAA,CAAA,EAAA,QAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAClB,aAAa,EAAA,QAAA,EAAA,sFAAA,EAAA,QAAA,EAAA,CAAA,WAAA,EAAA,WAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EACb,QAAQ,EAAA,QAAA,EAAA,yHAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,IAAA,EAAA,aAAA,EAAA,MAAA,EAAA,UAAA,EAAA,MAAA,EAAA,mBAAA,EAAA,kBAAA,EAAA,OAAA,EAAA,UAAA,EAAA,qBAAA,CAAA,EAAA,QAAA,EAAA,CAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EACR,UAAU,EAAA,QAAA,EAAA,aAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,OAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EACV,SAAS,EAAA,IAAA,EAAA,OAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;;2FAGA,wBAAwB,EAAA,UAAA,EAAA,CAAA;kBAzBpC,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,mBAAmB,EAAA,SAAA,EAGlB;AACT,wBAAA;AACE,4BAAA,OAAO,EAAE,iBAAiB;AAC1B,4BAAA,WAAW,EAAE,UAAU,CAAC,8BAA8B,CAAC;AACvD,4BAAA,KAAK,EAAE,IAAI;AACZ,yBAAA;AACF,qBAAA,EAAA,eAAA,EACgB,uBAAuB,CAAC,MAAM,EAAA,UAAA,EACnC,IAAI,EAAA,OAAA,EACP;wBACP,WAAW;wBACX,UAAU;wBACV,mBAAmB;wBACnB,OAAO;wBACP,kBAAkB;wBAClB,aAAa;wBACb,QAAQ;wBACR,UAAU;wBACV,SAAS;AACV,qBAAA,EAAA,QAAA,EAAA,+iFAAA,EAAA,MAAA,EAAA,CAAA,yxCAAA,CAAA,EAAA;AA4EsC,SAAA,CAAA,EAAA,cAAA,EAAA,MAAA,EAAA,EAAA,cAAA,EAAA,EAAA,gBAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,kBAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,IAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,MAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,SAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,WAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,cAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,mBAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,qBAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,gBAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,kBAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,SAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,WAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,mBAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,qBAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,0BAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,4BAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,4BAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,8BAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,qCAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,uCAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,SAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,WAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,qBAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,uBAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,wBAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,0BAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,8BAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,gCAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,+BAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,iCAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,gCAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,kCAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,qBAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,uBAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,iCAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,mCAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,SAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,MAAA,EAAA,IAAA,EAAA,CAAA,WAAA,CAAA,EAAA,CAAA,EAAA,iBAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,SAAA,EAAA,IAAA,EAAA,CAAA,mBAAmB,EAAA,EAAA,GAAE;AAC1D,4BAAA,IAAI,EAAE,UAAU;AACjB,yBAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,CAAA,EAAA,iBAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,SAAA,EAAA,IAAA,EAAA,CAGsC,mBAAmB,EAAA,EAAA,GAAE;AAC1D,4BAAA,IAAI,EAAE,UAAU;yBACjB,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,CAAA,EAAA,SAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,YAAA,EAAA,IAAA,EAAA,CAAA,EAAA,CAAA,UAAA,CAAA,MAGiC,6BAA6B,gGAGxB,gCAAgC,CAAA,EAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,CAAA,EAAA,EAAA,CAAA;;AExLzE;;;;;AAKG;MAuBU,qBAAqB,CAAA;8GAArB,qBAAqB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAArB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,qBAAqB,YAV9B,wBAAwB;YACxB,6BAA6B;AAC7B,YAAA,gCAAgC,aAGhC,wBAAwB;YACxB,6BAA6B;YAC7B,gCAAgC,CAAA,EAAA,CAAA,CAAA;AAGvB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,qBAAqB,YAV9B,wBAAwB,CAAA,EAAA,CAAA,CAAA;;2FAUf,qBAAqB,EAAA,UAAA,EAAA,CAAA;kBAZjC,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,OAAO,EAAE;wBACP,wBAAwB;wBACxB,6BAA6B;wBAC7B,gCAAgC;AACjC,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACP,wBAAwB;wBACxB,6BAA6B;wBAC7B,gCAAgC;AACjC,qBAAA;AACF,iBAAA;;;AC3BD;;AAEG;;;;"}
@@ -9,12 +9,12 @@ import { OnemRvaSizeDirective } from '@onemrvapublic/design-system/shared';
9
9
  let NEXT_ID = 0;
10
10
  class OnemrvaMatSelectableBoxComponent {
11
11
  constructor() {
12
- this.id = input(`onemrva-mat-selectable-box-${NEXT_ID++}`, ...(ngDevMode ? [{ debugName: "id" }] : []));
13
- this.radioButton = viewChild('radioButton', ...(ngDevMode ? [{ debugName: "radioButton" }] : []));
14
- this.value = input('', ...(ngDevMode ? [{ debugName: "value" }] : []));
15
- this.disabled = input(false, ...(ngDevMode ? [{ debugName: "disabled" }] : []));
16
- this.checked = input(false, ...(ngDevMode ? [{ debugName: "checked" }] : []));
17
- this.iconSize = input('', ...(ngDevMode ? [{ debugName: "iconSize" }] : []));
12
+ this.id = input(`onemrva-mat-selectable-box-${NEXT_ID++}`, ...(ngDevMode ? [{ debugName: "id" }] : /* istanbul ignore next */ []));
13
+ this.radioButton = viewChild('radioButton', ...(ngDevMode ? [{ debugName: "radioButton" }] : /* istanbul ignore next */ []));
14
+ this.value = input('', ...(ngDevMode ? [{ debugName: "value" }] : /* istanbul ignore next */ []));
15
+ this.disabled = input(false, ...(ngDevMode ? [{ debugName: "disabled" }] : /* istanbul ignore next */ []));
16
+ this.checked = input(false, ...(ngDevMode ? [{ debugName: "checked" }] : /* istanbul ignore next */ []));
17
+ this.iconSize = input('', ...(ngDevMode ? [{ debugName: "iconSize" }] : /* istanbul ignore next */ []));
18
18
  this.valueChange = output();
19
19
  }
20
20
  valueChanged(event) {
@@ -32,10 +32,10 @@ class OnemrvaMatSelectableBoxComponent {
32
32
  radioButton._inputElement.nativeElement.dispatchEvent(new MouseEvent('click', { bubbles: false }));
33
33
  }
34
34
  }
35
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: OnemrvaMatSelectableBoxComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
36
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "21.1.1", type: OnemrvaMatSelectableBoxComponent, isStandalone: true, selector: "onemrva-mat-selectable-box", inputs: { id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: false, transformFunction: null }, value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, checked: { classPropertyName: "checked", publicName: "checked", isSignal: true, isRequired: false, transformFunction: null }, iconSize: { classPropertyName: "iconSize", publicName: "iconSize", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { valueChange: "valueChange" }, host: { properties: { "attr.id": "id()" } }, viewQueries: [{ propertyName: "radioButton", first: true, predicate: ["radioButton"], descendants: true, isSignal: true }], ngImport: i0, template: "<mat-card\n [class.checked]=\"isChecked()\"\n [class.disabled]=\"disabled()\"\n class=\"onemrva-selectable-box m-m clickable\"\n (click)=\"triggerRadioClick()\"\n>\n <mat-card-title class=\"selectablebox-title\">\n <mat-radio-button\n #radioButton\n (change)=\"valueChanged($event)\"\n aria-label=\"Selected\"\n [checked]=\"checked()\"\n [disabled]=\"disabled()\"\n [value]=\"value()\"\n />\n\n <mat-label class=\"mr\">\n <ng-content select=\"[title]\" />\n </mat-label>\n\n <mat-icon class=\"selectable-box-icon\" [size]=\"iconSize()\">\n <ng-content select=\"[icon]\" />\n </mat-icon>\n\n <span class=\"sticker\"><ng-content select=\"[sticker]\" /></span>\n </mat-card-title>\n\n <mat-card-content>\n <ng-content />\n </mat-card-content>\n</mat-card>\n", styles: ["mat-card.onemrva-selectable-box{border-radius:var(--half-border-radius);box-shadow:none;position:relative;color:var(--mat-sys-on-surface);border:2px solid transparent;background:var(--mat-sys-primary-container);-webkit-user-select:none;user-select:none}mat-card.onemrva-selectable-box mat-icon{overflow:visible;color:var(--mat-sys-primary)}mat-card.onemrva-selectable-box mat-radio-button{pointer-events:none}mat-card.onemrva-selectable-box mat-card-title{display:flex;background:var(--mat-sys-primary-container);border-top-left-radius:var(--half-border-radius);border-top-right-radius:var(--half-border-radius);padding:var(--spacer-and-half) var(--spacer-and-half) var(--spacer-and-half) calc(var(--spacer-and-half) + var(--quad-spacer));align-items:center;box-shadow:none;color:inherit;font-family:var(--label-large-font-family, Poppins);font-size:var(--label-large-font-size, 16px);font-style:normal;font-weight:var(--label-large-font-weight, 500);line-height:var(--label-large-line-height, 21px)}mat-card.onemrva-selectable-box mat-card-title mat-label{display:flex;flex-grow:1}mat-card.onemrva-selectable-box mat-card-title mat-radio-button{position:absolute;left:2px}mat-card.onemrva-selectable-box.checked{border:2px solid var(--mat-sys-tertiary);overflow:hidden}mat-card.onemrva-selectable-box.checked mat-card-title{background:var(--mat-sys-tertiary-container)}mat-card.onemrva-selectable-box.disabled{opacity:.4;cursor:auto}mat-card.onemrva-selectable-box b,mat-card.onemrva-selectable-box strong{font-weight:600}mat-card.onemrva-selectable-box mat-card-content{background:var(--mat-sys-surface);padding:var(--spacer-and-half);border-bottom-left-radius:var(--half-border-radius);border-bottom-right-radius:var(--half-border-radius)}mat-card.onemrva-selectable-box mat-card-content:empty{display:none}\n"], dependencies: [{ kind: "directive", type: MatCardTitle, selector: "mat-card-title, [mat-card-title], [matCardTitle]" }, { kind: "component", type: MatCard, selector: "mat-card", inputs: ["appearance"], exportAs: ["matCard"] }, { kind: "component", type: MatRadioButton, selector: "mat-radio-button", inputs: ["id", "name", "aria-label", "aria-labelledby", "aria-describedby", "disableRipple", "tabIndex", "checked", "value", "labelPosition", "disabled", "required", "color", "disabledInteractive"], outputs: ["change"], exportAs: ["matRadioButton"] }, { kind: "directive", type: MatLabel, selector: "mat-label" }, { kind: "component", type: MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: MatCardContent, selector: "mat-card-content" }, { kind: "directive", type: OnemRvaSizeDirective, selector: "mat-icon[size], onemrva-mat-skeleton[size], onemrva-mat-avatar[size], button[size]", inputs: ["size"] }], encapsulation: i0.ViewEncapsulation.None }); }
35
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: OnemrvaMatSelectableBoxComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
36
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "21.2.4", type: OnemrvaMatSelectableBoxComponent, isStandalone: true, selector: "onemrva-mat-selectable-box", inputs: { id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: false, transformFunction: null }, value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, checked: { classPropertyName: "checked", publicName: "checked", isSignal: true, isRequired: false, transformFunction: null }, iconSize: { classPropertyName: "iconSize", publicName: "iconSize", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { valueChange: "valueChange" }, host: { properties: { "attr.id": "id()" } }, viewQueries: [{ propertyName: "radioButton", first: true, predicate: ["radioButton"], descendants: true, isSignal: true }], ngImport: i0, template: "<mat-card\n [class.checked]=\"isChecked()\"\n [class.disabled]=\"disabled()\"\n class=\"onemrva-selectable-box m-m clickable\"\n (click)=\"triggerRadioClick()\"\n>\n <mat-card-title class=\"selectablebox-title\">\n <mat-radio-button\n #radioButton\n (change)=\"valueChanged($event)\"\n aria-label=\"Selected\"\n [checked]=\"checked()\"\n [disabled]=\"disabled()\"\n [value]=\"value()\"\n />\n\n <mat-label class=\"mr\">\n <ng-content select=\"[title]\" />\n </mat-label>\n\n <mat-icon class=\"selectable-box-icon\" [size]=\"iconSize()\">\n <ng-content select=\"[icon]\" />\n </mat-icon>\n\n <span class=\"sticker\"><ng-content select=\"[sticker]\" /></span>\n </mat-card-title>\n\n <mat-card-content>\n <ng-content />\n </mat-card-content>\n</mat-card>\n", styles: ["mat-card.onemrva-selectable-box{border-radius:var(--half-border-radius);box-shadow:none;position:relative;color:var(--mat-sys-on-surface);border:2px solid transparent;background:var(--mat-sys-primary-container);-webkit-user-select:none;user-select:none}mat-card.onemrva-selectable-box mat-icon{overflow:visible;color:var(--mat-sys-primary)}mat-card.onemrva-selectable-box mat-radio-button{pointer-events:none}mat-card.onemrva-selectable-box mat-card-title{display:flex;background:var(--mat-sys-primary-container);border-top-left-radius:var(--half-border-radius);border-top-right-radius:var(--half-border-radius);padding:var(--spacer-and-half) var(--spacer-and-half) var(--spacer-and-half) calc(var(--spacer-and-half) + var(--quad-spacer));align-items:center;box-shadow:none;color:inherit;font-family:var(--label-large-font-family, Poppins);font-size:var(--label-large-font-size, 16px);font-style:normal;font-weight:var(--label-large-font-weight, 500);line-height:var(--label-large-line-height, 21px)}mat-card.onemrva-selectable-box mat-card-title mat-label{display:flex;flex-grow:1}mat-card.onemrva-selectable-box mat-card-title mat-radio-button{position:absolute;left:2px}mat-card.onemrva-selectable-box.checked{border:2px solid var(--mat-sys-tertiary);overflow:hidden}mat-card.onemrva-selectable-box.checked mat-card-title{background:var(--mat-sys-tertiary-container)}mat-card.onemrva-selectable-box.disabled{opacity:.4;cursor:auto}mat-card.onemrva-selectable-box b,mat-card.onemrva-selectable-box strong{font-weight:600}mat-card.onemrva-selectable-box mat-card-content{background:var(--mat-sys-surface);padding:var(--spacer-and-half);border-bottom-left-radius:var(--half-border-radius);border-bottom-right-radius:var(--half-border-radius)}mat-card.onemrva-selectable-box mat-card-content:empty{display:none}\n"], dependencies: [{ kind: "directive", type: MatCardTitle, selector: "mat-card-title, [mat-card-title], [matCardTitle]" }, { kind: "component", type: MatCard, selector: "mat-card", inputs: ["appearance"], exportAs: ["matCard"] }, { kind: "component", type: MatRadioButton, selector: "mat-radio-button", inputs: ["id", "name", "aria-label", "aria-labelledby", "aria-describedby", "disableRipple", "tabIndex", "checked", "value", "labelPosition", "disabled", "required", "color", "disabledInteractive"], outputs: ["change"], exportAs: ["matRadioButton"] }, { kind: "directive", type: MatLabel, selector: "mat-label" }, { kind: "component", type: MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: MatCardContent, selector: "mat-card-content" }, { kind: "directive", type: OnemRvaSizeDirective, selector: "mat-icon[size], onemrva-mat-skeleton[size], onemrva-mat-avatar[size], button[size]", inputs: ["size"] }], encapsulation: i0.ViewEncapsulation.None }); }
37
37
  }
38
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: OnemrvaMatSelectableBoxComponent, decorators: [{
38
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: OnemrvaMatSelectableBoxComponent, decorators: [{
39
39
  type: Component,
40
40
  args: [{ selector: 'onemrva-mat-selectable-box', standalone: true, encapsulation: ViewEncapsulation.None, imports: [
41
41
  MatCardTitle,
@@ -51,11 +51,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImpor
51
51
  }], propDecorators: { id: [{ type: i0.Input, args: [{ isSignal: true, alias: "id", required: false }] }], radioButton: [{ type: i0.ViewChild, args: ['radioButton', { isSignal: true }] }], value: [{ type: i0.Input, args: [{ isSignal: true, alias: "value", required: false }] }], disabled: [{ type: i0.Input, args: [{ isSignal: true, alias: "disabled", required: false }] }], checked: [{ type: i0.Input, args: [{ isSignal: true, alias: "checked", required: false }] }], iconSize: [{ type: i0.Input, args: [{ isSignal: true, alias: "iconSize", required: false }] }], valueChange: [{ type: i0.Output, args: ["valueChange"] }] } });
52
52
 
53
53
  class OnemrvaMatSelectableBoxModule {
54
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: OnemrvaMatSelectableBoxModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
55
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.1.1", ngImport: i0, type: OnemrvaMatSelectableBoxModule, imports: [OnemrvaMatSelectableBoxComponent], exports: [OnemrvaMatSelectableBoxComponent] }); }
56
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: OnemrvaMatSelectableBoxModule, imports: [OnemrvaMatSelectableBoxComponent] }); }
54
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: OnemrvaMatSelectableBoxModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
55
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.4", ngImport: i0, type: OnemrvaMatSelectableBoxModule, imports: [OnemrvaMatSelectableBoxComponent], exports: [OnemrvaMatSelectableBoxComponent] }); }
56
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: OnemrvaMatSelectableBoxModule, imports: [OnemrvaMatSelectableBoxComponent] }); }
57
57
  }
58
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: OnemrvaMatSelectableBoxModule, decorators: [{
58
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: OnemrvaMatSelectableBoxModule, decorators: [{
59
59
  type: NgModule,
60
60
  args: [{
61
61
  declarations: [],
@@ -1 +1 @@
1
- {"version":3,"file":"onemrvapublic-design-system-mat-selectable-box.mjs","sources":["../../../../projects/onemrva/design-system/mat-selectable-box/src/onemrva-mat-selectable-box.component.ts","../../../../projects/onemrva/design-system/mat-selectable-box/src/onemrva-mat-selectable-box.component.html","../../../../projects/onemrva/design-system/mat-selectable-box/src/onemrva-mat-selectable-box.module.ts","../../../../projects/onemrva/design-system/mat-selectable-box/index.ts","../../../../projects/onemrva/design-system/mat-selectable-box/onemrvapublic-design-system-mat-selectable-box.ts"],"sourcesContent":["import {\n AfterViewInit,\n ChangeDetectorRef,\n Component,\n inject,\n ViewEncapsulation,\n input,\n output,\n viewChild,\n} from '@angular/core';\nimport { MatRadioButton, MatRadioChange } from '@angular/material/radio';\nimport { MatCard, MatCardContent, MatCardTitle } from '@angular/material/card';\nimport { MatLabel } from '@angular/material/form-field';\nimport { MatIcon } from '@angular/material/icon';\nimport { OnemrvaMatSize } from '@onemrvapublic/design-system/utils';\nimport { OnemRvaSizeDirective } from '@onemrvapublic/design-system/shared';\n\nlet NEXT_ID = 0;\n\n@Component({\n selector: 'onemrva-mat-selectable-box',\n templateUrl: './onemrva-mat-selectable-box.component.html',\n styleUrl: './onemrva-mat-selectable-box.component.scss',\n standalone: true,\n encapsulation: ViewEncapsulation.None,\n imports: [\n MatCardTitle,\n MatCard,\n MatRadioButton,\n MatLabel,\n MatIcon,\n MatCardContent,\n OnemRvaSizeDirective,\n ],\n host: {\n '[attr.id]': 'id()',\n },\n})\nexport class OnemrvaMatSelectableBoxComponent {\n public readonly id = input(`onemrva-mat-selectable-box-${NEXT_ID++}`);\n\n readonly radioButton = viewChild<MatRadioButton>('radioButton');\n\n readonly value = input('');\n\n readonly disabled = input(false);\n\n readonly checked = input(false);\n\n readonly iconSize = input<OnemrvaMatSize>('');\n\n readonly valueChange = output<MatRadioChange>();\n\n valueChanged(event: MatRadioChange) {\n this.valueChange.emit(event);\n }\n\n isChecked() {\n return this.radioButton()?.checked ?? false;\n }\n\n triggerRadioClick() {\n const radioButton = this.radioButton();\n if (radioButton && !radioButton.checked && !radioButton.disabled) {\n // https://v11.material.angular.io/components/radio/api\n // Changing checked prop does not trigger a change event on the button or radiogroup,\n // only on user-interaction. Workaround trigger/simulate a click event.\n radioButton._inputElement.nativeElement.dispatchEvent(\n new MouseEvent('click', { bubbles: false }),\n );\n }\n }\n}\n","<mat-card\n [class.checked]=\"isChecked()\"\n [class.disabled]=\"disabled()\"\n class=\"onemrva-selectable-box m-m clickable\"\n (click)=\"triggerRadioClick()\"\n>\n <mat-card-title class=\"selectablebox-title\">\n <mat-radio-button\n #radioButton\n (change)=\"valueChanged($event)\"\n aria-label=\"Selected\"\n [checked]=\"checked()\"\n [disabled]=\"disabled()\"\n [value]=\"value()\"\n />\n\n <mat-label class=\"mr\">\n <ng-content select=\"[title]\" />\n </mat-label>\n\n <mat-icon class=\"selectable-box-icon\" [size]=\"iconSize()\">\n <ng-content select=\"[icon]\" />\n </mat-icon>\n\n <span class=\"sticker\"><ng-content select=\"[sticker]\" /></span>\n </mat-card-title>\n\n <mat-card-content>\n <ng-content />\n </mat-card-content>\n</mat-card>\n","import { NgModule } from '@angular/core';\nimport { OnemrvaMatSelectableBoxComponent } from './onemrva-mat-selectable-box.component';\n\n@NgModule({\n declarations: [],\n imports: [OnemrvaMatSelectableBoxComponent],\n exports: [OnemrvaMatSelectableBoxComponent],\n})\nexport class OnemrvaMatSelectableBoxModule {}\n","/*\n * Public API Surface of mat-selectable-box\n */\n\nexport * from './src/onemrva-mat-selectable-box.component';\nexport * from './src/onemrva-mat-selectable-box.module';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"onemrvapublic-design-system-mat-selectable-box.mjs","sources":["../../../../projects/onemrva/design-system/mat-selectable-box/src/onemrva-mat-selectable-box.component.ts","../../../../projects/onemrva/design-system/mat-selectable-box/src/onemrva-mat-selectable-box.component.html","../../../../projects/onemrva/design-system/mat-selectable-box/src/onemrva-mat-selectable-box.module.ts","../../../../projects/onemrva/design-system/mat-selectable-box/index.ts","../../../../projects/onemrva/design-system/mat-selectable-box/onemrvapublic-design-system-mat-selectable-box.ts"],"sourcesContent":["import {\n AfterViewInit,\n ChangeDetectorRef,\n Component,\n inject,\n ViewEncapsulation,\n input,\n output,\n viewChild,\n} from '@angular/core';\nimport { MatRadioButton, MatRadioChange } from '@angular/material/radio';\nimport { MatCard, MatCardContent, MatCardTitle } from '@angular/material/card';\nimport { MatLabel } from '@angular/material/form-field';\nimport { MatIcon } from '@angular/material/icon';\nimport { OnemrvaMatSize } from '@onemrvapublic/design-system/utils';\nimport { OnemRvaSizeDirective } from '@onemrvapublic/design-system/shared';\n\nlet NEXT_ID = 0;\n\n@Component({\n selector: 'onemrva-mat-selectable-box',\n templateUrl: './onemrva-mat-selectable-box.component.html',\n styleUrl: './onemrva-mat-selectable-box.component.scss',\n standalone: true,\n encapsulation: ViewEncapsulation.None,\n imports: [\n MatCardTitle,\n MatCard,\n MatRadioButton,\n MatLabel,\n MatIcon,\n MatCardContent,\n OnemRvaSizeDirective,\n ],\n host: {\n '[attr.id]': 'id()',\n },\n})\nexport class OnemrvaMatSelectableBoxComponent {\n public readonly id = input(`onemrva-mat-selectable-box-${NEXT_ID++}`);\n\n readonly radioButton = viewChild<MatRadioButton>('radioButton');\n\n readonly value = input('');\n\n readonly disabled = input(false);\n\n readonly checked = input(false);\n\n readonly iconSize = input<OnemrvaMatSize>('');\n\n readonly valueChange = output<MatRadioChange>();\n\n valueChanged(event: MatRadioChange) {\n this.valueChange.emit(event);\n }\n\n isChecked() {\n return this.radioButton()?.checked ?? false;\n }\n\n triggerRadioClick() {\n const radioButton = this.radioButton();\n if (radioButton && !radioButton.checked && !radioButton.disabled) {\n // https://v11.material.angular.io/components/radio/api\n // Changing checked prop does not trigger a change event on the button or radiogroup,\n // only on user-interaction. Workaround trigger/simulate a click event.\n radioButton._inputElement.nativeElement.dispatchEvent(\n new MouseEvent('click', { bubbles: false }),\n );\n }\n }\n}\n","<mat-card\n [class.checked]=\"isChecked()\"\n [class.disabled]=\"disabled()\"\n class=\"onemrva-selectable-box m-m clickable\"\n (click)=\"triggerRadioClick()\"\n>\n <mat-card-title class=\"selectablebox-title\">\n <mat-radio-button\n #radioButton\n (change)=\"valueChanged($event)\"\n aria-label=\"Selected\"\n [checked]=\"checked()\"\n [disabled]=\"disabled()\"\n [value]=\"value()\"\n />\n\n <mat-label class=\"mr\">\n <ng-content select=\"[title]\" />\n </mat-label>\n\n <mat-icon class=\"selectable-box-icon\" [size]=\"iconSize()\">\n <ng-content select=\"[icon]\" />\n </mat-icon>\n\n <span class=\"sticker\"><ng-content select=\"[sticker]\" /></span>\n </mat-card-title>\n\n <mat-card-content>\n <ng-content />\n </mat-card-content>\n</mat-card>\n","import { NgModule } from '@angular/core';\nimport { OnemrvaMatSelectableBoxComponent } from './onemrva-mat-selectable-box.component';\n\n@NgModule({\n declarations: [],\n imports: [OnemrvaMatSelectableBoxComponent],\n exports: [OnemrvaMatSelectableBoxComponent],\n})\nexport class OnemrvaMatSelectableBoxModule {}\n","/*\n * Public API Surface of mat-selectable-box\n */\n\nexport * from './src/onemrva-mat-selectable-box.component';\nexport * from './src/onemrva-mat-selectable-box.module';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}