@onemrvapublic/design-system 22.5.0-develop.3 → 22.5.0-develop.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -33,12 +33,13 @@ If you need access to our design system board, send us a message.
33
33
  @Bram Decuypere (NL / EN)
34
34
  ## Changelog
35
35
 
36
- ### 22.5.0-develop.3
36
+ ### 22.5.0-develop.4
37
37
 
38
- # [22.5.0-develop.3](https://rvaonem.ghe.com/AS-DESIGN-SYSTEM/core/compare/v22.5.0-develop.2...v22.5.0-develop.3) (2026-09-30)
38
+ # [22.5.0-develop.4](https://rvaonem.ghe.com/AS-DESIGN-SYSTEM/core/compare/v22.5.0-develop.3...v22.5.0-develop.4) (2026-09-30)
39
39
 
40
40
 
41
- ### Features
41
+ ### Bug Fixes
42
42
 
43
- * **layout:** add disableLogoutButton input to disable logout functionality ([6e76bb2](https://rvaonem.ghe.com/AS-DESIGN-SYSTEM/core/commit/6e76bb2f876f77bb14611c727115ccb3e90c679a))
43
+ * **mat-choice-chip:** match mat-chip height, padding and spacing ([16b1347](https://rvaonem.ghe.com/AS-DESIGN-SYSTEM/core/commit/16b1347bb27d05b4d3ce47bdc82639b1e67ec724))
44
+ * **mat-multi-select:** style selection counter as a small chip ([0a34689](https://rvaonem.ghe.com/AS-DESIGN-SYSTEM/core/commit/0a34689de8b6270d830723a974a01297a384e4d5))
44
45
 
@@ -62,7 +62,7 @@ class OnemrvaMatChoiceChipComponent {
62
62
  useExisting: forwardRef(() => OnemrvaMatChoiceChipComponent),
63
63
  multi: true,
64
64
  },
65
- ], ngImport: i0, template: "<mat-checkbox\n class=\"onemrva-choice-chip\"\n [checked]=\"value()\"\n [disabled]=\"disabled()\"\n color=\"primary\"\n (change)=\"onInputChange($event.checked)\"\n (blur)=\"onTouched()\"\n>\n <ng-content />\n</mat-checkbox>\n", styles: [".onemrva-theme onemrva-mat-choice-chip{--mat-checkbox-selected-checkmark-color: var(--mat-sys-on-primary)}.onemrva-theme onemrva-mat-choice-chip .mat-mdc-checkbox:not(.mat-mdc-checkbox-checked) .mat-internal-form-field>label{padding-left:14px}.onemrva-theme onemrva-mat-choice-chip mat-checkbox.onemrva-choice-chip{-webkit-user-select:none;user-select:none;border:1px solid var(--mat-sys-primary);border-radius:var(--chip-border-radius);background:var(--mat-sys-primary-container);padding:0}.onemrva-theme onemrva-mat-choice-chip mat-checkbox.onemrva-choice-chip label{color:var(--mat-sys-primary);font-family:var(--mat-sys-label-large-font);font-size:var(--mat-sys-label-large-size);font-weight:var(--mat-sys-label-large-weight);line-height:var(--mat-sys-label-large-line-height)}.onemrva-theme onemrva-mat-choice-chip mat-checkbox.onemrva-choice-chip.mat-mdc-checkbox-checked{background-color:var(--mat-sys-primary);color:var(--mat-sys-on-primary)}.onemrva-theme onemrva-mat-choice-chip mat-checkbox.onemrva-choice-chip.mat-mdc-checkbox-checked .mdc-checkbox__background{background-color:var(--mat-sys-primary);background:none!important;border:none!important;top:-6px;left:10px}.onemrva-theme onemrva-mat-choice-chip mat-checkbox.onemrva-choice-chip.mat-mdc-checkbox-checked label{line-height:var(--mdc-chip-container-height);padding:5px 14px;color:var(--mat-sys-on-primary)}.onemrva-theme onemrva-mat-choice-chip mat-checkbox.onemrva-choice-chip .mdc-checkbox__ripple{display:none}.onemrva-theme onemrva-mat-choice-chip mat-checkbox.onemrva-choice-chip .mdc-form-field{display:inline-block}.onemrva-theme onemrva-mat-choice-chip mat-checkbox.onemrva-choice-chip .mdc-form-field .mdc-checkbox{padding:0;margin:0;transition:width .4s}.onemrva-theme onemrva-mat-choice-chip mat-checkbox.onemrva-choice-chip .mdc-form-field .mdc-checkbox .mdc-checkbox__ripple,.onemrva-theme onemrva-mat-choice-chip mat-checkbox.onemrva-choice-chip .mdc-form-field .mdc-checkbox input{display:none}.onemrva-theme onemrva-mat-choice-chip mat-checkbox.onemrva-choice-chip:not(.mat-mdc-checkbox-checked) label{line-height:var(--mdc-chip-container-height);padding:5px 14px}.onemrva-theme onemrva-mat-choice-chip mat-checkbox.onemrva-choice-chip:not(.mat-mdc-checkbox-checked) .mdc-checkbox{visibility:hidden;width:0}.onemrva-theme onemrva-mat-choice-chip mat-checkbox.onemrva-choice-chip.mdc-checkbox--disabled{background-color:var(--mat-sys-primary-container);border-color:var(--mat-sys-primary-fixed-dim)}.onemrva-theme onemrva-mat-choice-chip mat-checkbox.onemrva-choice-chip.mdc-checkbox--disabled .mdc-checkbox__background .mdc-checkbox__checkmark{color:var(--mat-sys-primary-fixed-dim)}.onemrva-theme onemrva-mat-choice-chip mat-checkbox.onemrva-choice-chip.mdc-checkbox--disabled label{color:var(--mat-sys-on-surface)}\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"] }], encapsulation: i0.ViewEncapsulation.None }); }
65
+ ], ngImport: i0, template: "<mat-checkbox\n class=\"onemrva-choice-chip\"\n [checked]=\"value()\"\n [disabled]=\"disabled()\"\n color=\"primary\"\n (change)=\"onInputChange($event.checked)\"\n (blur)=\"onTouched()\"\n>\n <ng-content />\n</mat-checkbox>\n", styles: [".onemrva-theme onemrva-mat-choice-chip{--mat-checkbox-selected-checkmark-color: var(--mat-sys-on-primary);display:inline-block;vertical-align:middle}.onemrva-theme onemrva-mat-choice-chip mat-checkbox.onemrva-choice-chip{display:inline-flex;box-sizing:border-box;height:var(--mat-chip-container-height, 38px);-webkit-user-select:none;user-select:none;border:1px solid var(--mat-sys-primary);border-radius:var(--chip-border-radius);background:var(--mat-sys-primary-container);padding:0}.onemrva-theme onemrva-mat-choice-chip mat-checkbox.onemrva-choice-chip .mdc-form-field{display:flex;align-items:center;height:100%}.onemrva-theme onemrva-mat-choice-chip mat-checkbox.onemrva-choice-chip .mdc-form-field .mdc-checkbox{flex:0 0 auto;width:0;height:18px;padding:0;margin:0;visibility:hidden;transition:width .4s,margin-left .4s}.onemrva-theme onemrva-mat-choice-chip mat-checkbox.onemrva-choice-chip .mdc-form-field .mdc-checkbox .mdc-checkbox__ripple,.onemrva-theme onemrva-mat-choice-chip mat-checkbox.onemrva-choice-chip .mdc-form-field .mdc-checkbox input{display:none}.onemrva-theme onemrva-mat-choice-chip mat-checkbox.onemrva-choice-chip .mdc-form-field .mdc-checkbox .mdc-checkbox__background{top:0;left:0}.onemrva-theme onemrva-mat-choice-chip mat-checkbox.onemrva-choice-chip .mdc-form-field>label{padding:0 12px;color:var(--mat-sys-primary);font-family:var(--mat-sys-label-large-font);font-size:var(--mat-sys-label-large-size);font-weight:var(--mat-sys-label-large-weight);line-height:var(--mat-sys-label-large-line-height);white-space:nowrap}.onemrva-theme onemrva-mat-choice-chip mat-checkbox.onemrva-choice-chip .mdc-checkbox__ripple{display:none}.onemrva-theme onemrva-mat-choice-chip mat-checkbox.onemrva-choice-chip.mat-mdc-checkbox-checked{background-color:var(--mat-sys-primary)}.onemrva-theme onemrva-mat-choice-chip mat-checkbox.onemrva-choice-chip.mat-mdc-checkbox-checked .mdc-form-field .mdc-checkbox{width:18px;margin-left:8px;visibility:visible}.onemrva-theme onemrva-mat-choice-chip mat-checkbox.onemrva-choice-chip.mat-mdc-checkbox-checked .mdc-form-field .mdc-checkbox__background{background:none!important;border:none!important}.onemrva-theme onemrva-mat-choice-chip mat-checkbox.onemrva-choice-chip.mat-mdc-checkbox-checked .mdc-form-field>label{padding-left:8px;color:var(--mat-sys-on-primary)}.onemrva-theme onemrva-mat-choice-chip mat-checkbox.onemrva-choice-chip.mdc-checkbox--disabled{background-color:var(--mat-sys-primary-container);border-color:var(--mat-sys-primary-fixed-dim)}.onemrva-theme onemrva-mat-choice-chip mat-checkbox.onemrva-choice-chip.mdc-checkbox--disabled .mdc-checkbox__background .mdc-checkbox__checkmark{color:var(--mat-sys-primary-fixed-dim)}.onemrva-theme onemrva-mat-choice-chip mat-checkbox.onemrva-choice-chip.mdc-checkbox--disabled .mdc-form-field>label{color:var(--mat-sys-on-surface)}\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"] }], encapsulation: i0.ViewEncapsulation.None }); }
66
66
  }
67
67
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.4", ngImport: i0, type: OnemrvaMatChoiceChipComponent, decorators: [{
68
68
  type: Component,
@@ -74,7 +74,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.4", ngImpor
74
74
  useExisting: forwardRef(() => OnemrvaMatChoiceChipComponent),
75
75
  multi: true,
76
76
  },
77
- ], template: "<mat-checkbox\n class=\"onemrva-choice-chip\"\n [checked]=\"value()\"\n [disabled]=\"disabled()\"\n color=\"primary\"\n (change)=\"onInputChange($event.checked)\"\n (blur)=\"onTouched()\"\n>\n <ng-content />\n</mat-checkbox>\n", styles: [".onemrva-theme onemrva-mat-choice-chip{--mat-checkbox-selected-checkmark-color: var(--mat-sys-on-primary)}.onemrva-theme onemrva-mat-choice-chip .mat-mdc-checkbox:not(.mat-mdc-checkbox-checked) .mat-internal-form-field>label{padding-left:14px}.onemrva-theme onemrva-mat-choice-chip mat-checkbox.onemrva-choice-chip{-webkit-user-select:none;user-select:none;border:1px solid var(--mat-sys-primary);border-radius:var(--chip-border-radius);background:var(--mat-sys-primary-container);padding:0}.onemrva-theme onemrva-mat-choice-chip mat-checkbox.onemrva-choice-chip label{color:var(--mat-sys-primary);font-family:var(--mat-sys-label-large-font);font-size:var(--mat-sys-label-large-size);font-weight:var(--mat-sys-label-large-weight);line-height:var(--mat-sys-label-large-line-height)}.onemrva-theme onemrva-mat-choice-chip mat-checkbox.onemrva-choice-chip.mat-mdc-checkbox-checked{background-color:var(--mat-sys-primary);color:var(--mat-sys-on-primary)}.onemrva-theme onemrva-mat-choice-chip mat-checkbox.onemrva-choice-chip.mat-mdc-checkbox-checked .mdc-checkbox__background{background-color:var(--mat-sys-primary);background:none!important;border:none!important;top:-6px;left:10px}.onemrva-theme onemrva-mat-choice-chip mat-checkbox.onemrva-choice-chip.mat-mdc-checkbox-checked label{line-height:var(--mdc-chip-container-height);padding:5px 14px;color:var(--mat-sys-on-primary)}.onemrva-theme onemrva-mat-choice-chip mat-checkbox.onemrva-choice-chip .mdc-checkbox__ripple{display:none}.onemrva-theme onemrva-mat-choice-chip mat-checkbox.onemrva-choice-chip .mdc-form-field{display:inline-block}.onemrva-theme onemrva-mat-choice-chip mat-checkbox.onemrva-choice-chip .mdc-form-field .mdc-checkbox{padding:0;margin:0;transition:width .4s}.onemrva-theme onemrva-mat-choice-chip mat-checkbox.onemrva-choice-chip .mdc-form-field .mdc-checkbox .mdc-checkbox__ripple,.onemrva-theme onemrva-mat-choice-chip mat-checkbox.onemrva-choice-chip .mdc-form-field .mdc-checkbox input{display:none}.onemrva-theme onemrva-mat-choice-chip mat-checkbox.onemrva-choice-chip:not(.mat-mdc-checkbox-checked) label{line-height:var(--mdc-chip-container-height);padding:5px 14px}.onemrva-theme onemrva-mat-choice-chip mat-checkbox.onemrva-choice-chip:not(.mat-mdc-checkbox-checked) .mdc-checkbox{visibility:hidden;width:0}.onemrva-theme onemrva-mat-choice-chip mat-checkbox.onemrva-choice-chip.mdc-checkbox--disabled{background-color:var(--mat-sys-primary-container);border-color:var(--mat-sys-primary-fixed-dim)}.onemrva-theme onemrva-mat-choice-chip mat-checkbox.onemrva-choice-chip.mdc-checkbox--disabled .mdc-checkbox__background .mdc-checkbox__checkmark{color:var(--mat-sys-primary-fixed-dim)}.onemrva-theme onemrva-mat-choice-chip mat-checkbox.onemrva-choice-chip.mdc-checkbox--disabled label{color:var(--mat-sys-on-surface)}\n"] }]
77
+ ], template: "<mat-checkbox\n class=\"onemrva-choice-chip\"\n [checked]=\"value()\"\n [disabled]=\"disabled()\"\n color=\"primary\"\n (change)=\"onInputChange($event.checked)\"\n (blur)=\"onTouched()\"\n>\n <ng-content />\n</mat-checkbox>\n", styles: [".onemrva-theme onemrva-mat-choice-chip{--mat-checkbox-selected-checkmark-color: var(--mat-sys-on-primary);display:inline-block;vertical-align:middle}.onemrva-theme onemrva-mat-choice-chip mat-checkbox.onemrva-choice-chip{display:inline-flex;box-sizing:border-box;height:var(--mat-chip-container-height, 38px);-webkit-user-select:none;user-select:none;border:1px solid var(--mat-sys-primary);border-radius:var(--chip-border-radius);background:var(--mat-sys-primary-container);padding:0}.onemrva-theme onemrva-mat-choice-chip mat-checkbox.onemrva-choice-chip .mdc-form-field{display:flex;align-items:center;height:100%}.onemrva-theme onemrva-mat-choice-chip mat-checkbox.onemrva-choice-chip .mdc-form-field .mdc-checkbox{flex:0 0 auto;width:0;height:18px;padding:0;margin:0;visibility:hidden;transition:width .4s,margin-left .4s}.onemrva-theme onemrva-mat-choice-chip mat-checkbox.onemrva-choice-chip .mdc-form-field .mdc-checkbox .mdc-checkbox__ripple,.onemrva-theme onemrva-mat-choice-chip mat-checkbox.onemrva-choice-chip .mdc-form-field .mdc-checkbox input{display:none}.onemrva-theme onemrva-mat-choice-chip mat-checkbox.onemrva-choice-chip .mdc-form-field .mdc-checkbox .mdc-checkbox__background{top:0;left:0}.onemrva-theme onemrva-mat-choice-chip mat-checkbox.onemrva-choice-chip .mdc-form-field>label{padding:0 12px;color:var(--mat-sys-primary);font-family:var(--mat-sys-label-large-font);font-size:var(--mat-sys-label-large-size);font-weight:var(--mat-sys-label-large-weight);line-height:var(--mat-sys-label-large-line-height);white-space:nowrap}.onemrva-theme onemrva-mat-choice-chip mat-checkbox.onemrva-choice-chip .mdc-checkbox__ripple{display:none}.onemrva-theme onemrva-mat-choice-chip mat-checkbox.onemrva-choice-chip.mat-mdc-checkbox-checked{background-color:var(--mat-sys-primary)}.onemrva-theme onemrva-mat-choice-chip mat-checkbox.onemrva-choice-chip.mat-mdc-checkbox-checked .mdc-form-field .mdc-checkbox{width:18px;margin-left:8px;visibility:visible}.onemrva-theme onemrva-mat-choice-chip mat-checkbox.onemrva-choice-chip.mat-mdc-checkbox-checked .mdc-form-field .mdc-checkbox__background{background:none!important;border:none!important}.onemrva-theme onemrva-mat-choice-chip mat-checkbox.onemrva-choice-chip.mat-mdc-checkbox-checked .mdc-form-field>label{padding-left:8px;color:var(--mat-sys-on-primary)}.onemrva-theme onemrva-mat-choice-chip mat-checkbox.onemrva-choice-chip.mdc-checkbox--disabled{background-color:var(--mat-sys-primary-container);border-color:var(--mat-sys-primary-fixed-dim)}.onemrva-theme onemrva-mat-choice-chip mat-checkbox.onemrva-choice-chip.mdc-checkbox--disabled .mdc-checkbox__background .mdc-checkbox__checkmark{color:var(--mat-sys-primary-fixed-dim)}.onemrva-theme onemrva-mat-choice-chip mat-checkbox.onemrva-choice-chip.mdc-checkbox--disabled .mdc-form-field>label{color:var(--mat-sys-on-surface)}\n"] }]
78
78
  }], propDecorators: { valueInput: [{ type: i0.Input, args: [{ isSignal: true, alias: "valueInput", required: false }] }], disabledInput: [{ type: i0.Input, args: [{ isSignal: true, alias: "disabledInput", required: false }] }] } });
79
79
 
80
80
  /*
@@ -1 +1 @@
1
- {"version":3,"file":"onemrvapublic-design-system-mat-choice-chip.mjs","sources":["../../../../projects/onemrva/design-system/mat-choice-chip/src/onemrva-mat-choice-chip.component.ts","../../../../projects/onemrva/design-system/mat-choice-chip/src/onemrva-mat-choice-chip.component.html","../../../../projects/onemrva/design-system/mat-choice-chip/index.ts","../../../../projects/onemrva/design-system/mat-choice-chip/onemrvapublic-design-system-mat-choice-chip.ts"],"sourcesContent":["import {\n Component,\n forwardRef,\n ViewEncapsulation,\n signal,\n input,\n computed,\n} from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { MatCheckbox } from '@angular/material/checkbox';\n\n/**\n * Toggle chip implementing ControlValueAccessor for use in forms.\n *\n * Exposes 2 inputs and 0 outputs.\n * Inputs: valueInput: boolean | null, disabledInput: boolean | null.\n * Outputs: none.\n *\n * @MatKeywords choice-chip, chip, toggle, checkbox, select\n * @MatGroup Forms\n */\n@Component({\n selector: 'onemrva-mat-choice-chip',\n templateUrl: 'onemrva-mat-choice-chip.component.html',\n styleUrls: ['onemrva-mat-choice-chip.component.scss'],\n standalone: true,\n imports: [MatCheckbox],\n encapsulation: ViewEncapsulation.None,\n host: {\n '[style.opacity]': '_opacity()',\n },\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => OnemrvaMatChoiceChipComponent),\n multi: true,\n },\n ],\n})\nexport class OnemrvaMatChoiceChipComponent implements ControlValueAccessor {\n // Optional external input (only if you want non-forms usage too)\n readonly valueInput = input<boolean | null>(null);\n readonly disabledInput = input<boolean | null>(null);\n\n // Writable internal state for CVA\n private readonly _value = signal(false);\n private readonly _disabled = signal(false);\n\n // What the template should bind to\n readonly value = () => this.valueInput() ?? this._value();\n readonly disabled = () => this.disabledInput() ?? this._disabled();\n\n readonly _opacity = computed(() => (this.disabled() ? 0.4 : 1));\n\n private onChange: (val: boolean) => void = () => {\n /* empty */\n };\n public onTouched: () => void = () => {\n /* empty */\n };\n\n writeValue(val: boolean): void {\n this._value.set(val);\n }\n\n registerOnChange(fn: (val: boolean) => void): void {\n this.onChange = fn;\n }\n\n registerOnTouched(fn: () => void): void {\n this.onTouched = fn;\n }\n\n setDisabledState(isDisabled: boolean): void {\n this._disabled.set(isDisabled);\n }\n\n // Called from template\n onInputChange(checked: boolean) {\n this._value.set(checked);\n this.onChange(checked);\n this.onTouched();\n }\n}\n","<mat-checkbox\n class=\"onemrva-choice-chip\"\n [checked]=\"value()\"\n [disabled]=\"disabled()\"\n color=\"primary\"\n (change)=\"onInputChange($event.checked)\"\n (blur)=\"onTouched()\"\n>\n <ng-content />\n</mat-checkbox>\n","/*\n * Public API Surface of mat-sticker\n */\n\nexport * from './src/onemrva-mat-choice-chip.component';\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-choice-chip.mjs","sources":["../../../../projects/onemrva/design-system/mat-choice-chip/src/onemrva-mat-choice-chip.component.ts","../../../../projects/onemrva/design-system/mat-choice-chip/src/onemrva-mat-choice-chip.component.html","../../../../projects/onemrva/design-system/mat-choice-chip/index.ts","../../../../projects/onemrva/design-system/mat-choice-chip/onemrvapublic-design-system-mat-choice-chip.ts"],"sourcesContent":["import {\n Component,\n forwardRef,\n ViewEncapsulation,\n signal,\n input,\n computed,\n} from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { MatCheckbox } from '@angular/material/checkbox';\n\n/**\n * Toggle chip implementing ControlValueAccessor for use in forms.\n *\n * Exposes 2 inputs and 0 outputs.\n * Inputs: valueInput: boolean | null, disabledInput: boolean | null.\n * Outputs: none.\n *\n * @MatKeywords choice-chip, chip, toggle, checkbox, select\n * @MatGroup Forms\n */\n@Component({\n selector: 'onemrva-mat-choice-chip',\n templateUrl: 'onemrva-mat-choice-chip.component.html',\n styleUrls: ['onemrva-mat-choice-chip.component.scss'],\n standalone: true,\n imports: [MatCheckbox],\n encapsulation: ViewEncapsulation.None,\n host: {\n '[style.opacity]': '_opacity()',\n },\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => OnemrvaMatChoiceChipComponent),\n multi: true,\n },\n ],\n})\nexport class OnemrvaMatChoiceChipComponent implements ControlValueAccessor {\n // Optional external input (only if you want non-forms usage too)\n readonly valueInput = input<boolean | null>(null);\n readonly disabledInput = input<boolean | null>(null);\n\n // Writable internal state for CVA\n private readonly _value = signal(false);\n private readonly _disabled = signal(false);\n\n // What the template should bind to\n readonly value = () => this.valueInput() ?? this._value();\n readonly disabled = () => this.disabledInput() ?? this._disabled();\n\n readonly _opacity = computed(() => (this.disabled() ? 0.4 : 1));\n\n private onChange: (val: boolean) => void = () => {\n /* empty */\n };\n public onTouched: () => void = () => {\n /* empty */\n };\n\n writeValue(val: boolean): void {\n this._value.set(val);\n }\n\n registerOnChange(fn: (val: boolean) => void): void {\n this.onChange = fn;\n }\n\n registerOnTouched(fn: () => void): void {\n this.onTouched = fn;\n }\n\n setDisabledState(isDisabled: boolean): void {\n this._disabled.set(isDisabled);\n }\n\n // Called from template\n onInputChange(checked: boolean) {\n this._value.set(checked);\n this.onChange(checked);\n this.onTouched();\n }\n}\n","<mat-checkbox\n class=\"onemrva-choice-chip\"\n [checked]=\"value()\"\n [disabled]=\"disabled()\"\n color=\"primary\"\n (change)=\"onInputChange($event.checked)\"\n (blur)=\"onTouched()\"\n>\n <ng-content />\n</mat-checkbox>\n","/*\n * Public API Surface of mat-sticker\n */\n\nexport * from './src/onemrva-mat-choice-chip.component';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -173,7 +173,7 @@ class OnemrvaMatMultiSelectComponent extends MatFormFieldControl {
173
173
  useExisting: forwardRef(() => OnemrvaMatMultiSelectComponent),
174
174
  multi: true,
175
175
  },
176
- ], queries: [{ propertyName: "matOptions", predicate: MatOption, isSignal: true }], usesInheritance: true, ngImport: i0, template: "<mat-select\n [multiple]=\"multiple()\"\n [formControl]=\"formControl()\"\n [attr.data-cy]=\"dataCy()\"\n [attr.aria-label]=\"label()\"\n (focus)=\"onFocus()\"\n (blur)=\"onBlur()\"\n [placeholder]=\"placeholder\"\n [disabled]=\"disabled\"\n>\n @if (multiple() && selectionToggle()) {\n <div class=\"selection-choice text-right\">\n <a\n tabindex=\"1\"\n [class.mat-disabled]=\"isAllSelected()\"\n (click)=\"selectAll()\"\n >{{ 'select.select.all' | translate }}</a\n ><span class=\"separator\">&nbsp;&nbsp;|&nbsp;&nbsp;</span>\n <a\n tabindex=\"2\"\n [class.mat-disabled]=\"isNoneSelected()\"\n (click)=\"deselectAll($event)\"\n >{{ 'select.deselect.all' | translate }}</a\n >\n </div>\n }\n <div class=\"option-list\">\n @if (showFilter()) {\n <mat-option>\n <mat-select-search\n [formControl]=\"searchFilter\"\n ariaLabel=\"{{ 'select.search.filter' | translate }}\"\n noEntriesFoundLabel=\"{{ 'select.search.notFound' | translate }}\"\n placeholderLabel=\"{{ 'select.search.filter' | translate }}\"\n />\n </mat-option>\n }\n @for (matOption of matOptions$ | async; track matOption.value) {\n <ng-container>\n <mat-option\n [disabled]=\"matOption.disabled\"\n [value]=\"matOption.value\"\n [attr.data-cy]=\"matOption._getHostElement().dataset['cy']\"\n >\n {{ matOption._text?.nativeElement?.textContent }}\n </mat-option>\n </ng-container>\n }\n </div>\n</mat-select>\n@if (multiple() && counter > 0) {\n <div class=\"mat-select-counter float-right position-absolute text-center\">\n <span class=\"text\">{{ counter }}</span\n ><mat-icon (click)=\"deselectAll($event)\">close</mat-icon>\n </div>\n}\n", styles: [":host{display:inline-block;width:100%}:host .mat-select-counter{top:var(--spacer);right:var(--triple-spacer);display:block;padding:var(--quarter-spacer) var(--half-spacer) var(--quarter-spacer) var(--spacer);background:var(--mat-sys-primary-container);color:var(--mat-sys-on-primary-container);min-width:var(--triple-spacer);font-family:var(--brand-font);border:1px solid var(--mat-sys-primary);border-radius:var(--button-border-radius)}:host .mat-select-counter span.text{font-family:var(--sys-label-large-font);font-style:normal;font-weight:500;font-size:.75rem;line-height:1.25rem}:host .mat-select-counter mat-icon{font-size:.75rem;height:.75rem;width:.75rem;line-height:1rem;padding:0 var(--quarter-spacer) 0 var(--quarter-spacer);cursor:pointer}\n"], dependencies: [{ kind: "ngmodule", type: ReactiveFormsModule }, { 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: "ngmodule", type: MatSelectModule }, { kind: "component", type: i2.MatSelect, selector: "mat-select", inputs: ["aria-describedby", "panelClass", "disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator", "placeholder", "required", "multiple", "disableOptionCentering", "compareWith", "value", "aria-label", "aria-labelledby", "errorStateMatcher", "typeaheadDebounceInterval", "sortComparator", "id", "panelWidth", "canSelectNullableOptions"], outputs: ["openedChange", "opened", "closed", "selectionChange", "valueChange"], exportAs: ["matSelect"] }, { kind: "component", type: i2.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "component", type: MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: MatSelectSearchComponent, selector: "mat-select-search", inputs: ["placeholderLabel", "type", "closeIcon", "closeSvgIcon", "noEntriesFoundLabel", "clearSearchInput", "searching", "disableInitialFocus", "enableClearOnEscapePressed", "preventHomeEndKeyPropagation", "disableScrollToActiveOnOptionsChanged", "ariaLabel", "showToggleAllCheckbox", "toggleAllCheckboxChecked", "toggleAllCheckboxIndeterminate", "toggleAllCheckboxTooltipMessage", "toggleAllCheckboxTooltipPosition", "hideClearSearchButton", "alwaysRestoreSelectedOptionsMulti"], outputs: ["toggleAll"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }, { kind: "pipe", type: AsyncPipe, name: "async" }] }); }
176
+ ], queries: [{ propertyName: "matOptions", predicate: MatOption, isSignal: true }], usesInheritance: true, ngImport: i0, template: "<mat-select\n [multiple]=\"multiple()\"\n [formControl]=\"formControl()\"\n [attr.data-cy]=\"dataCy()\"\n [attr.aria-label]=\"label()\"\n (focus)=\"onFocus()\"\n (blur)=\"onBlur()\"\n [placeholder]=\"placeholder\"\n [disabled]=\"disabled\"\n>\n @if (multiple() && selectionToggle()) {\n <div class=\"selection-choice text-right\">\n <a\n tabindex=\"1\"\n [class.mat-disabled]=\"isAllSelected()\"\n (click)=\"selectAll()\"\n >{{ 'select.select.all' | translate }}</a\n ><span class=\"separator\">&nbsp;&nbsp;|&nbsp;&nbsp;</span>\n <a\n tabindex=\"2\"\n [class.mat-disabled]=\"isNoneSelected()\"\n (click)=\"deselectAll($event)\"\n >{{ 'select.deselect.all' | translate }}</a\n >\n </div>\n }\n <div class=\"option-list\">\n @if (showFilter()) {\n <mat-option>\n <mat-select-search\n [formControl]=\"searchFilter\"\n ariaLabel=\"{{ 'select.search.filter' | translate }}\"\n noEntriesFoundLabel=\"{{ 'select.search.notFound' | translate }}\"\n placeholderLabel=\"{{ 'select.search.filter' | translate }}\"\n />\n </mat-option>\n }\n @for (matOption of matOptions$ | async; track matOption.value) {\n <ng-container>\n <mat-option\n [disabled]=\"matOption.disabled\"\n [value]=\"matOption.value\"\n [attr.data-cy]=\"matOption._getHostElement().dataset['cy']\"\n >\n {{ matOption._text?.nativeElement?.textContent }}\n </mat-option>\n </ng-container>\n }\n </div>\n</mat-select>\n@if (multiple() && counter > 0) {\n <div class=\"mat-select-counter float-right position-absolute text-center\">\n <span class=\"text\">{{ counter }}</span\n ><mat-icon (click)=\"deselectAll($event)\">close</mat-icon>\n </div>\n}\n", styles: [":host{display:inline-block;width:100%}:host .mat-select-counter{top:50%;right:var(--triple-spacer);transform:translateY(-50%);display:inline-flex;align-items:center;gap:var(--quarter-spacer);box-sizing:border-box;height:22px;min-width:var(--triple-spacer);padding:0 var(--half-spacer) 0 var(--spacer);background:var(--mat-sys-primary-container);color:var(--mat-sys-primary);border:1px solid var(--mat-sys-primary);border-radius:var(--small-border-radius)}:host .mat-select-counter span.text{font-family:var(--mat-sys-label-large-font);font-style:normal;font-weight:var(--mat-sys-label-large-weight);font-size:.75rem;line-height:1rem}:host .mat-select-counter mat-icon{display:flex;align-items:center;justify-content:center;font-size:.875rem;height:.875rem;width:.875rem;color:var(--mat-sys-primary);cursor:pointer}\n"], dependencies: [{ kind: "ngmodule", type: ReactiveFormsModule }, { 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: "ngmodule", type: MatSelectModule }, { kind: "component", type: i2.MatSelect, selector: "mat-select", inputs: ["aria-describedby", "panelClass", "disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator", "placeholder", "required", "multiple", "disableOptionCentering", "compareWith", "value", "aria-label", "aria-labelledby", "errorStateMatcher", "typeaheadDebounceInterval", "sortComparator", "id", "panelWidth", "canSelectNullableOptions"], outputs: ["openedChange", "opened", "closed", "selectionChange", "valueChange"], exportAs: ["matSelect"] }, { kind: "component", type: i2.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "component", type: MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: MatSelectSearchComponent, selector: "mat-select-search", inputs: ["placeholderLabel", "type", "closeIcon", "closeSvgIcon", "noEntriesFoundLabel", "clearSearchInput", "searching", "disableInitialFocus", "enableClearOnEscapePressed", "preventHomeEndKeyPropagation", "disableScrollToActiveOnOptionsChanged", "ariaLabel", "showToggleAllCheckbox", "toggleAllCheckboxChecked", "toggleAllCheckboxIndeterminate", "toggleAllCheckboxTooltipMessage", "toggleAllCheckboxTooltipPosition", "hideClearSearchButton", "alwaysRestoreSelectedOptionsMulti"], outputs: ["toggleAll"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }, { kind: "pipe", type: AsyncPipe, name: "async" }] }); }
177
177
  }
178
178
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.4", ngImport: i0, type: OnemrvaMatMultiSelectComponent, decorators: [{
179
179
  type: Component,
@@ -197,7 +197,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.4", ngImpor
197
197
  AsyncPipe,
198
198
  MatIcon,
199
199
  MatSelectSearchComponent,
200
- ], standalone: true, encapsulation: ViewEncapsulation.Emulated, template: "<mat-select\n [multiple]=\"multiple()\"\n [formControl]=\"formControl()\"\n [attr.data-cy]=\"dataCy()\"\n [attr.aria-label]=\"label()\"\n (focus)=\"onFocus()\"\n (blur)=\"onBlur()\"\n [placeholder]=\"placeholder\"\n [disabled]=\"disabled\"\n>\n @if (multiple() && selectionToggle()) {\n <div class=\"selection-choice text-right\">\n <a\n tabindex=\"1\"\n [class.mat-disabled]=\"isAllSelected()\"\n (click)=\"selectAll()\"\n >{{ 'select.select.all' | translate }}</a\n ><span class=\"separator\">&nbsp;&nbsp;|&nbsp;&nbsp;</span>\n <a\n tabindex=\"2\"\n [class.mat-disabled]=\"isNoneSelected()\"\n (click)=\"deselectAll($event)\"\n >{{ 'select.deselect.all' | translate }}</a\n >\n </div>\n }\n <div class=\"option-list\">\n @if (showFilter()) {\n <mat-option>\n <mat-select-search\n [formControl]=\"searchFilter\"\n ariaLabel=\"{{ 'select.search.filter' | translate }}\"\n noEntriesFoundLabel=\"{{ 'select.search.notFound' | translate }}\"\n placeholderLabel=\"{{ 'select.search.filter' | translate }}\"\n />\n </mat-option>\n }\n @for (matOption of matOptions$ | async; track matOption.value) {\n <ng-container>\n <mat-option\n [disabled]=\"matOption.disabled\"\n [value]=\"matOption.value\"\n [attr.data-cy]=\"matOption._getHostElement().dataset['cy']\"\n >\n {{ matOption._text?.nativeElement?.textContent }}\n </mat-option>\n </ng-container>\n }\n </div>\n</mat-select>\n@if (multiple() && counter > 0) {\n <div class=\"mat-select-counter float-right position-absolute text-center\">\n <span class=\"text\">{{ counter }}</span\n ><mat-icon (click)=\"deselectAll($event)\">close</mat-icon>\n </div>\n}\n", styles: [":host{display:inline-block;width:100%}:host .mat-select-counter{top:var(--spacer);right:var(--triple-spacer);display:block;padding:var(--quarter-spacer) var(--half-spacer) var(--quarter-spacer) var(--spacer);background:var(--mat-sys-primary-container);color:var(--mat-sys-on-primary-container);min-width:var(--triple-spacer);font-family:var(--brand-font);border:1px solid var(--mat-sys-primary);border-radius:var(--button-border-radius)}:host .mat-select-counter span.text{font-family:var(--sys-label-large-font);font-style:normal;font-weight:500;font-size:.75rem;line-height:1.25rem}:host .mat-select-counter mat-icon{font-size:.75rem;height:.75rem;width:.75rem;line-height:1rem;padding:0 var(--quarter-spacer) 0 var(--quarter-spacer);cursor:pointer}\n"] }]
200
+ ], standalone: true, encapsulation: ViewEncapsulation.Emulated, template: "<mat-select\n [multiple]=\"multiple()\"\n [formControl]=\"formControl()\"\n [attr.data-cy]=\"dataCy()\"\n [attr.aria-label]=\"label()\"\n (focus)=\"onFocus()\"\n (blur)=\"onBlur()\"\n [placeholder]=\"placeholder\"\n [disabled]=\"disabled\"\n>\n @if (multiple() && selectionToggle()) {\n <div class=\"selection-choice text-right\">\n <a\n tabindex=\"1\"\n [class.mat-disabled]=\"isAllSelected()\"\n (click)=\"selectAll()\"\n >{{ 'select.select.all' | translate }}</a\n ><span class=\"separator\">&nbsp;&nbsp;|&nbsp;&nbsp;</span>\n <a\n tabindex=\"2\"\n [class.mat-disabled]=\"isNoneSelected()\"\n (click)=\"deselectAll($event)\"\n >{{ 'select.deselect.all' | translate }}</a\n >\n </div>\n }\n <div class=\"option-list\">\n @if (showFilter()) {\n <mat-option>\n <mat-select-search\n [formControl]=\"searchFilter\"\n ariaLabel=\"{{ 'select.search.filter' | translate }}\"\n noEntriesFoundLabel=\"{{ 'select.search.notFound' | translate }}\"\n placeholderLabel=\"{{ 'select.search.filter' | translate }}\"\n />\n </mat-option>\n }\n @for (matOption of matOptions$ | async; track matOption.value) {\n <ng-container>\n <mat-option\n [disabled]=\"matOption.disabled\"\n [value]=\"matOption.value\"\n [attr.data-cy]=\"matOption._getHostElement().dataset['cy']\"\n >\n {{ matOption._text?.nativeElement?.textContent }}\n </mat-option>\n </ng-container>\n }\n </div>\n</mat-select>\n@if (multiple() && counter > 0) {\n <div class=\"mat-select-counter float-right position-absolute text-center\">\n <span class=\"text\">{{ counter }}</span\n ><mat-icon (click)=\"deselectAll($event)\">close</mat-icon>\n </div>\n}\n", styles: [":host{display:inline-block;width:100%}:host .mat-select-counter{top:50%;right:var(--triple-spacer);transform:translateY(-50%);display:inline-flex;align-items:center;gap:var(--quarter-spacer);box-sizing:border-box;height:22px;min-width:var(--triple-spacer);padding:0 var(--half-spacer) 0 var(--spacer);background:var(--mat-sys-primary-container);color:var(--mat-sys-primary);border:1px solid var(--mat-sys-primary);border-radius:var(--small-border-radius)}:host .mat-select-counter span.text{font-family:var(--mat-sys-label-large-font);font-style:normal;font-weight:var(--mat-sys-label-large-weight);font-size:.75rem;line-height:1rem}:host .mat-select-counter mat-icon{display:flex;align-items:center;justify-content:center;font-size:.875rem;height:.875rem;width:.875rem;color:var(--mat-sys-primary);cursor:pointer}\n"] }]
201
201
  }], ctorParameters: () => [], propDecorators: { multiple: [{ type: i0.Input, args: [{ isSignal: true, alias: "multiple", required: false }] }], formControl: [{ type: i0.Input, args: [{ isSignal: true, alias: "formControl", required: true }] }], role: [{ type: i0.Input, args: [{ isSignal: true, alias: "attr.role", required: false }] }], label: [{ type: i0.Input, args: [{ isSignal: true, alias: "attr.aria-label", required: false }] }], invalid: [{ type: i0.Input, args: [{ isSignal: true, alias: "attr.aria-invalid", required: false }] }], showFilter: [{ type: i0.Input, args: [{ isSignal: true, alias: "showFilter", required: false }] }], selectionToggle: [{ type: i0.Input, args: [{ isSignal: true, alias: "selectionToggle", required: false }] }], dataCy: [{ type: i0.Input, args: [{ isSignal: true, alias: "attr.data-cy", required: false }] }], matOptions: [{ type: i0.ContentChildren, args: [i0.forwardRef(() => MatOption), { isSignal: true }] }] } });
202
202
 
203
203
  class OnemrvaMatMultiSelectModule {
@@ -1 +1 @@
1
- {"version":3,"file":"onemrvapublic-design-system-mat-multi-select.mjs","sources":["../../../../projects/onemrva/design-system/mat-multi-select/src/onemrva-mat-multi-select.component.ts","../../../../projects/onemrva/design-system/mat-multi-select/src/onemrva-mat-multi-select.component.html","../../../../projects/onemrva/design-system/mat-multi-select/src/onemrva-mat-multi-select.module.ts","../../../../projects/onemrva/design-system/mat-multi-select/onemrvapublic-design-system-mat-multi-select.ts"],"sourcesContent":["import {\n AfterContentChecked,\n ChangeDetectorRef,\n Component,\n forwardRef,\n inject,\n OnDestroy,\n OnInit,\n ViewEncapsulation,\n input,\n contentChildren,\n computed,\n} from '@angular/core';\nimport {\n FormControl,\n NG_VALUE_ACCESSOR,\n ReactiveFormsModule,\n} from '@angular/forms';\nimport { MatFormFieldControl } from '@angular/material/form-field';\nimport { TranslatePipe, TranslateService } from '@ngx-translate/core';\nimport { MatOption } from '@angular/material/core';\nimport {\n debounceTime,\n map,\n Observable,\n startWith,\n Subject,\n takeUntil,\n} from 'rxjs';\nimport { AsyncPipe } from '@angular/common';\nimport { MatIcon } from '@angular/material/icon';\nimport { MatSelectModule } from '@angular/material/select';\nimport { MatSelectSearchComponent } from '@onemrvapublic/design-system/mat-select-search';\n\nlet NEXT_ID = 0;\n\n/**\n * Multi-value searchable select implementing MatFormFieldControl.\n *\n * Exposes 8 inputs and 0 outputs.\n * Inputs: multiple, formControl (required): FormControl, role, label, invalid, showFilter, selectionToggle, dataCy.\n * Outputs: none.\n *\n * @MatKeywords multi-select, select, dropdown, multiple, forms\n * @MatGroup Forms\n */\n@Component({\n selector: 'onemrva-mat-multi-select',\n templateUrl: 'onemrva-mat-multi-select.component.html',\n styleUrl: 'onemrva-mat-multi-select.component.scss',\n host: {\n '[style.opacity]': '_opacity()',\n },\n providers: [\n {\n provide: MatFormFieldControl,\n useExisting: OnemrvaMatMultiSelectComponent,\n multi: false,\n },\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => OnemrvaMatMultiSelectComponent),\n multi: true,\n },\n ],\n imports: [\n TranslatePipe,\n ReactiveFormsModule,\n MatSelectModule,\n AsyncPipe,\n MatIcon,\n MatSelectSearchComponent,\n ],\n standalone: true,\n encapsulation: ViewEncapsulation.Emulated,\n})\nexport class OnemrvaMatMultiSelectComponent\n extends MatFormFieldControl<any>\n implements OnInit, OnDestroy, AfterContentChecked\n{\n counter = 0;\n _values: any[] = [];\n public override stateChanges = new Subject<void>();\n\n readonly multiple = input(true);\n\n readonly formControl = input.required<FormControl>();\n\n // eslint-disable-next-line @angular-eslint/no-input-rename\n public readonly role = input('select', { alias: 'attr.role' });\n\n // eslint-disable-next-line @angular-eslint/no-input-rename\n public readonly label = input('', { alias: 'attr.aria-label' });\n\n // eslint-disable-next-line @angular-eslint/no-input-rename\n public readonly invalid = input(false, { alias: 'attr.aria-invalid' });\n\n readonly showFilter = input(true);\n\n readonly selectionToggle = input(true);\n\n public readonly dataCy = input(`onemrva-mat-multi-select-${NEXT_ID++}`, {\n // eslint-disable-next-line @angular-eslint/no-input-rename\n alias: 'attr.data-cy',\n });\n\n searchFilter: FormControl = new FormControl<string>('');\n\n readonly matOptions = contentChildren(MatOption);\n matOptions$?: Observable<MatOption<any>[]>;\n onDestroy$: Subject<any> = new Subject<any>();\n\n readonly _opacity = computed(() => (this.disabled ? 0.4 : 1));\n\n override focused = false;\n\n onFocus() {\n this.focused = true;\n this.stateChanges.next();\n }\n\n onBlur() {\n this.focused = false;\n this.stateChanges.next();\n }\n\n translate = inject(TranslateService);\n cd = inject(ChangeDetectorRef);\n\n constructor() {\n super();\n setTimeout(() => {\n this.focused = false;\n }, 3000);\n }\n\n // Function to call when the rating changes.\n onChange = (_values: any[]) => {\n //\n };\n\n // Function to call when the input is touched (when a star is clicked).\n onTouched = () => {\n //\n };\n\n // Allows Angular to update the model (rating).\n // Update the model and changes needed for the view here.\n writeValue(values: any[] | any | undefined | null): void {\n if (this.multiple()) {\n this.counter = 0;\n if (Array.isArray(values)) this.counter = values.length;\n //else if (Array.isArray(this._values)) this.counter = this._values.length;\n }\n this._values = values;\n this.onChange(this._values);\n }\n\n // Allows Angular to register a function to call when the model (rating) changes.\n // Save the function as a property to call later here.\n registerOnChange(fn: (value: any[]) => void): void {\n this.onChange = fn;\n }\n\n // Allows Angular to register a function to call when the input has been touched.\n // Save the function as a property to call later here.\n registerOnTouched(fn: () => void): void {\n this.onTouched = fn;\n }\n\n isAllSelected() {\n return this.counter === this.matOptions().length;\n }\n\n selectAll() {\n this._values = this.matOptions().map(option => {\n return option.value;\n });\n this.formControl().setValue(this._values);\n }\n\n isNoneSelected() {\n return this.counter === 0;\n }\n\n deselectAll(_$event: MouseEvent) {\n this._values = [];\n this.formControl().setValue(this._values);\n }\n\n onContainerClick(_event: MouseEvent): void {\n //\n }\n\n setDescribedByIds(_ids: string[]): void {\n //\n }\n\n ngOnDestroy(): void {\n this.onDestroy$.next('');\n this.onDestroy$.complete();\n }\n\n optionSize = 0;\n\n ngOnInit(): void {\n this.matOptions$ = this.searchFilter.valueChanges.pipe(\n debounceTime(200),\n startWith(''),\n map((value: string) => {\n this.optionSize = this.matOptions().length;\n if (this._values !== null) {\n this.counter = this._values.length;\n }\n if (value === '') {\n return this.matOptions().filter(_o => {\n return true;\n });\n }\n return this.matOptions().filter(option => {\n return option?._text?.nativeElement.innerHTML\n .toLowerCase()\n .includes(value.toLowerCase());\n });\n }),\n );\n this.formControl()\n .valueChanges.pipe(takeUntil(this.onDestroy$))\n .subscribe(values => {\n this._values = values;\n if (this._values !== null && this._values !== undefined) {\n this.counter = this._values.length;\n } else {\n this.counter = 0;\n }\n });\n }\n\n ngAfterContentChecked(): void {\n const matOptions = this.matOptions();\n if (matOptions.length !== this.optionSize) {\n this.optionSize = matOptions.length;\n this.counter = 0;\n this.searchFilter.updateValueAndValidity({ emitEvent: true });\n }\n }\n}\n","<mat-select\n [multiple]=\"multiple()\"\n [formControl]=\"formControl()\"\n [attr.data-cy]=\"dataCy()\"\n [attr.aria-label]=\"label()\"\n (focus)=\"onFocus()\"\n (blur)=\"onBlur()\"\n [placeholder]=\"placeholder\"\n [disabled]=\"disabled\"\n>\n @if (multiple() && selectionToggle()) {\n <div class=\"selection-choice text-right\">\n <a\n tabindex=\"1\"\n [class.mat-disabled]=\"isAllSelected()\"\n (click)=\"selectAll()\"\n >{{ 'select.select.all' | translate }}</a\n ><span class=\"separator\">&nbsp;&nbsp;|&nbsp;&nbsp;</span>\n <a\n tabindex=\"2\"\n [class.mat-disabled]=\"isNoneSelected()\"\n (click)=\"deselectAll($event)\"\n >{{ 'select.deselect.all' | translate }}</a\n >\n </div>\n }\n <div class=\"option-list\">\n @if (showFilter()) {\n <mat-option>\n <mat-select-search\n [formControl]=\"searchFilter\"\n ariaLabel=\"{{ 'select.search.filter' | translate }}\"\n noEntriesFoundLabel=\"{{ 'select.search.notFound' | translate }}\"\n placeholderLabel=\"{{ 'select.search.filter' | translate }}\"\n />\n </mat-option>\n }\n @for (matOption of matOptions$ | async; track matOption.value) {\n <ng-container>\n <mat-option\n [disabled]=\"matOption.disabled\"\n [value]=\"matOption.value\"\n [attr.data-cy]=\"matOption._getHostElement().dataset['cy']\"\n >\n {{ matOption._text?.nativeElement?.textContent }}\n </mat-option>\n </ng-container>\n }\n </div>\n</mat-select>\n@if (multiple() && counter > 0) {\n <div class=\"mat-select-counter float-right position-absolute text-center\">\n <span class=\"text\">{{ counter }}</span\n ><mat-icon (click)=\"deselectAll($event)\">close</mat-icon>\n </div>\n}\n","import { NgModule } from '@angular/core';\nimport { OnemrvaMatMultiSelectComponent } from './onemrva-mat-multi-select.component';\n\n@NgModule({\n declarations: [],\n imports: [OnemrvaMatMultiSelectComponent],\n exports: [],\n})\nexport class OnemrvaMatMultiSelectModule {}\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-multi-select.mjs","sources":["../../../../projects/onemrva/design-system/mat-multi-select/src/onemrva-mat-multi-select.component.ts","../../../../projects/onemrva/design-system/mat-multi-select/src/onemrva-mat-multi-select.component.html","../../../../projects/onemrva/design-system/mat-multi-select/src/onemrva-mat-multi-select.module.ts","../../../../projects/onemrva/design-system/mat-multi-select/onemrvapublic-design-system-mat-multi-select.ts"],"sourcesContent":["import {\n AfterContentChecked,\n ChangeDetectorRef,\n Component,\n forwardRef,\n inject,\n OnDestroy,\n OnInit,\n ViewEncapsulation,\n input,\n contentChildren,\n computed,\n} from '@angular/core';\nimport {\n FormControl,\n NG_VALUE_ACCESSOR,\n ReactiveFormsModule,\n} from '@angular/forms';\nimport { MatFormFieldControl } from '@angular/material/form-field';\nimport { TranslatePipe, TranslateService } from '@ngx-translate/core';\nimport { MatOption } from '@angular/material/core';\nimport {\n debounceTime,\n map,\n Observable,\n startWith,\n Subject,\n takeUntil,\n} from 'rxjs';\nimport { AsyncPipe } from '@angular/common';\nimport { MatIcon } from '@angular/material/icon';\nimport { MatSelectModule } from '@angular/material/select';\nimport { MatSelectSearchComponent } from '@onemrvapublic/design-system/mat-select-search';\n\nlet NEXT_ID = 0;\n\n/**\n * Multi-value searchable select implementing MatFormFieldControl.\n *\n * Exposes 8 inputs and 0 outputs.\n * Inputs: multiple, formControl (required): FormControl, role, label, invalid, showFilter, selectionToggle, dataCy.\n * Outputs: none.\n *\n * @MatKeywords multi-select, select, dropdown, multiple, forms\n * @MatGroup Forms\n */\n@Component({\n selector: 'onemrva-mat-multi-select',\n templateUrl: 'onemrva-mat-multi-select.component.html',\n styleUrl: 'onemrva-mat-multi-select.component.scss',\n host: {\n '[style.opacity]': '_opacity()',\n },\n providers: [\n {\n provide: MatFormFieldControl,\n useExisting: OnemrvaMatMultiSelectComponent,\n multi: false,\n },\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => OnemrvaMatMultiSelectComponent),\n multi: true,\n },\n ],\n imports: [\n TranslatePipe,\n ReactiveFormsModule,\n MatSelectModule,\n AsyncPipe,\n MatIcon,\n MatSelectSearchComponent,\n ],\n standalone: true,\n encapsulation: ViewEncapsulation.Emulated,\n})\nexport class OnemrvaMatMultiSelectComponent\n extends MatFormFieldControl<any>\n implements OnInit, OnDestroy, AfterContentChecked\n{\n counter = 0;\n _values: any[] = [];\n public override stateChanges = new Subject<void>();\n\n readonly multiple = input(true);\n\n readonly formControl = input.required<FormControl>();\n\n // eslint-disable-next-line @angular-eslint/no-input-rename\n public readonly role = input('select', { alias: 'attr.role' });\n\n // eslint-disable-next-line @angular-eslint/no-input-rename\n public readonly label = input('', { alias: 'attr.aria-label' });\n\n // eslint-disable-next-line @angular-eslint/no-input-rename\n public readonly invalid = input(false, { alias: 'attr.aria-invalid' });\n\n readonly showFilter = input(true);\n\n readonly selectionToggle = input(true);\n\n public readonly dataCy = input(`onemrva-mat-multi-select-${NEXT_ID++}`, {\n // eslint-disable-next-line @angular-eslint/no-input-rename\n alias: 'attr.data-cy',\n });\n\n searchFilter: FormControl = new FormControl<string>('');\n\n readonly matOptions = contentChildren(MatOption);\n matOptions$?: Observable<MatOption<any>[]>;\n onDestroy$: Subject<any> = new Subject<any>();\n\n readonly _opacity = computed(() => (this.disabled ? 0.4 : 1));\n\n override focused = false;\n\n onFocus() {\n this.focused = true;\n this.stateChanges.next();\n }\n\n onBlur() {\n this.focused = false;\n this.stateChanges.next();\n }\n\n translate = inject(TranslateService);\n cd = inject(ChangeDetectorRef);\n\n constructor() {\n super();\n setTimeout(() => {\n this.focused = false;\n }, 3000);\n }\n\n // Function to call when the rating changes.\n onChange = (_values: any[]) => {\n //\n };\n\n // Function to call when the input is touched (when a star is clicked).\n onTouched = () => {\n //\n };\n\n // Allows Angular to update the model (rating).\n // Update the model and changes needed for the view here.\n writeValue(values: any[] | any | undefined | null): void {\n if (this.multiple()) {\n this.counter = 0;\n if (Array.isArray(values)) this.counter = values.length;\n //else if (Array.isArray(this._values)) this.counter = this._values.length;\n }\n this._values = values;\n this.onChange(this._values);\n }\n\n // Allows Angular to register a function to call when the model (rating) changes.\n // Save the function as a property to call later here.\n registerOnChange(fn: (value: any[]) => void): void {\n this.onChange = fn;\n }\n\n // Allows Angular to register a function to call when the input has been touched.\n // Save the function as a property to call later here.\n registerOnTouched(fn: () => void): void {\n this.onTouched = fn;\n }\n\n isAllSelected() {\n return this.counter === this.matOptions().length;\n }\n\n selectAll() {\n this._values = this.matOptions().map(option => {\n return option.value;\n });\n this.formControl().setValue(this._values);\n }\n\n isNoneSelected() {\n return this.counter === 0;\n }\n\n deselectAll(_$event: MouseEvent) {\n this._values = [];\n this.formControl().setValue(this._values);\n }\n\n onContainerClick(_event: MouseEvent): void {\n //\n }\n\n setDescribedByIds(_ids: string[]): void {\n //\n }\n\n ngOnDestroy(): void {\n this.onDestroy$.next('');\n this.onDestroy$.complete();\n }\n\n optionSize = 0;\n\n ngOnInit(): void {\n this.matOptions$ = this.searchFilter.valueChanges.pipe(\n debounceTime(200),\n startWith(''),\n map((value: string) => {\n this.optionSize = this.matOptions().length;\n if (this._values !== null) {\n this.counter = this._values.length;\n }\n if (value === '') {\n return this.matOptions().filter(_o => {\n return true;\n });\n }\n return this.matOptions().filter(option => {\n return option?._text?.nativeElement.innerHTML\n .toLowerCase()\n .includes(value.toLowerCase());\n });\n }),\n );\n this.formControl()\n .valueChanges.pipe(takeUntil(this.onDestroy$))\n .subscribe(values => {\n this._values = values;\n if (this._values !== null && this._values !== undefined) {\n this.counter = this._values.length;\n } else {\n this.counter = 0;\n }\n });\n }\n\n ngAfterContentChecked(): void {\n const matOptions = this.matOptions();\n if (matOptions.length !== this.optionSize) {\n this.optionSize = matOptions.length;\n this.counter = 0;\n this.searchFilter.updateValueAndValidity({ emitEvent: true });\n }\n }\n}\n","<mat-select\n [multiple]=\"multiple()\"\n [formControl]=\"formControl()\"\n [attr.data-cy]=\"dataCy()\"\n [attr.aria-label]=\"label()\"\n (focus)=\"onFocus()\"\n (blur)=\"onBlur()\"\n [placeholder]=\"placeholder\"\n [disabled]=\"disabled\"\n>\n @if (multiple() && selectionToggle()) {\n <div class=\"selection-choice text-right\">\n <a\n tabindex=\"1\"\n [class.mat-disabled]=\"isAllSelected()\"\n (click)=\"selectAll()\"\n >{{ 'select.select.all' | translate }}</a\n ><span class=\"separator\">&nbsp;&nbsp;|&nbsp;&nbsp;</span>\n <a\n tabindex=\"2\"\n [class.mat-disabled]=\"isNoneSelected()\"\n (click)=\"deselectAll($event)\"\n >{{ 'select.deselect.all' | translate }}</a\n >\n </div>\n }\n <div class=\"option-list\">\n @if (showFilter()) {\n <mat-option>\n <mat-select-search\n [formControl]=\"searchFilter\"\n ariaLabel=\"{{ 'select.search.filter' | translate }}\"\n noEntriesFoundLabel=\"{{ 'select.search.notFound' | translate }}\"\n placeholderLabel=\"{{ 'select.search.filter' | translate }}\"\n />\n </mat-option>\n }\n @for (matOption of matOptions$ | async; track matOption.value) {\n <ng-container>\n <mat-option\n [disabled]=\"matOption.disabled\"\n [value]=\"matOption.value\"\n [attr.data-cy]=\"matOption._getHostElement().dataset['cy']\"\n >\n {{ matOption._text?.nativeElement?.textContent }}\n </mat-option>\n </ng-container>\n }\n </div>\n</mat-select>\n@if (multiple() && counter > 0) {\n <div class=\"mat-select-counter float-right position-absolute text-center\">\n <span class=\"text\">{{ counter }}</span\n ><mat-icon (click)=\"deselectAll($event)\">close</mat-icon>\n </div>\n}\n","import { NgModule } from '@angular/core';\nimport { OnemrvaMatMultiSelectComponent } from './onemrva-mat-multi-select.component';\n\n@NgModule({\n declarations: [],\n imports: [OnemrvaMatMultiSelectComponent],\n exports: [],\n})\nexport class OnemrvaMatMultiSelectModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -2062,7 +2062,7 @@ function onemrvaDateLuxonYearMonthProvider() {
2062
2062
  }
2063
2063
 
2064
2064
  // Auto-generated — do not edit
2065
- const VERSION = '22.5.0-develop.3';
2065
+ const VERSION = '22.5.0-develop.4';
2066
2066
 
2067
2067
  function onemrvaThemeProvider() {
2068
2068
  return makeEnvironmentProviders([