@onemrvapublic/design-system 20.3.0-develop.5 → 20.3.0-develop.7

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.
@@ -78,7 +78,7 @@ class OnemRvaAddress {
78
78
  }
79
79
  }
80
80
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.7", ngImport: i0, type: OnemRvaAddress, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
81
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.1.7", type: OnemRvaAddress, isStandalone: true, selector: "onemrva-address", inputs: { defaultCountry: "defaultCountry", form: "form" }, outputs: { update: "update" }, ngImport: i0, template: "<onemrva-mat-input-country\n [country]=\"countryForm\"\n label=\"{{ 'input.country.label' | translate }}\"\n noEntriesFoundLabel=\"{{ 'input.country.not.found' | translate }}\"\n placeholderLabel=\"{{ 'input.country.search' | translate }}\"\n searchAriaLabel=\"{{ 'input.country.search' | translate }}\"\n></onemrva-mat-input-country>\n\n<div class=\"container\">\n <div class=\"row\">\n <div class=\"col-12-small col-8-medium\">\n <onemrva-mat-input-address\n class=\"mr-m\"\n mode=\"road-only\"\n [countryCodes]=\"[countryForm.value || '']\"\n [address]=\"streetControl\"\n (getAddress)=\"onAddressSelected($event)\"\n />\n </div>\n\n <div class=\"col-6-small col-2-medium\">\n <mat-form-field class=\"ml-m-medium\">\n <mat-label>{{ 'input.address.number.label' | translate }}</mat-label>\n <input\n matInput\n [formControl]=\"numeroControl\"\n [placeholder]=\"'input.address.number.placeholder' | translate\"\n />\n </mat-form-field>\n </div>\n\n <div class=\"col-6-small col-2-medium\">\n <mat-form-field class=\"ml-m-medium ml-s-small\">\n <mat-label>{{'input.address.box.label' | translate}}</mat-label>\n <input\n matInput\n [formControl]=\"boxControl\"\n [placeholder]=\"'input.address.box.placeholder' | translate\"\n />\n </mat-form-field>\n </div>\n </div>\n\n <div class=\"row\">\n <div class=\"col-12-small col-4-medium\">\n <mat-form-field class=\"mr-m-medium\">\n <mat-label\n >{{ 'input.address.postal-code.label' | translate}}</mat-label\n >\n <input\n matInput\n [formControl]=\"postalCodeControl\"\n [placeholder]=\"'input.address.postal-code.label' | translate\"\n />\n </mat-form-field>\n </div>\n\n <mat-form-field class=\"col-12-small col-8-medium\">\n <mat-label>{{ 'input.address.city.label' | translate }}</mat-label>\n <input\n matInput\n [formControl]=\"cityControl\"\n [placeholder]=\"'input.address.city.placeholder' | translate\"\n />\n </mat-form-field>\n </div>\n</div>\n", styles: [":host{display:flex;flex-direction:column;width:100%}:host mat-form-field{display:flex}:host onemrva-mat-input-country{display:flex;width:100%}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: MatFormFieldModule }, { kind: "component", type: i1.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i1.MatLabel, selector: "mat-label" }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i2.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: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: OnemrvaMatInputCountryComponent, selector: "onemrva-mat-input-country", inputs: ["country", "readonly", "disabled", "label", "noEntriesFoundLabel", "hint", "placeholderLabel", "searchAriaLabel"], outputs: ["getCountry"] }, { kind: "ngmodule", type: MatInputModule }, { kind: "directive", type: i3.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: "ngmodule", type: TranslateModule }, { kind: "component", type: OnemrvaMatInputAddressComponent, selector: "onemrva-mat-input-address", inputs: ["placeholder", "readonly", "address", "mode", "label", "noEntriesFoundLabel", "hint", "countryCodes"], outputs: ["getAddress"] }, { kind: "pipe", type: i4.TranslatePipe, name: "translate" }] }); }
81
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.1.7", type: OnemRvaAddress, isStandalone: true, selector: "onemrva-address", inputs: { defaultCountry: "defaultCountry", form: "form" }, outputs: { update: "update" }, ngImport: i0, template: "<onemrva-mat-input-country\n [country]=\"countryForm\"\n label=\"{{ 'input.country.label' | translate }}\"\n noEntriesFoundLabel=\"{{ 'input.country.not.found' | translate }}\"\n placeholderLabel=\"{{ 'input.country.search' | translate }}\"\n searchAriaLabel=\"{{ 'input.country.search' | translate }}\"\n></onemrva-mat-input-country>\n\n<div class=\"container\">\n <div class=\"row\">\n <div class=\"col-12-small col-8-medium\">\n <onemrva-mat-input-address\n class=\"mr-m\"\n mode=\"road-only\"\n [countryCodes]=\"[countryForm.value || '']\"\n [address]=\"streetControl\"\n (getAddress)=\"onAddressSelected($event)\"\n />\n </div>\n\n <div class=\"col-6-small col-2-medium\">\n <mat-form-field class=\"ml-m-medium\">\n <mat-label>{{ 'input.address.number.label' | translate }}</mat-label>\n <input\n matInput\n [formControl]=\"numeroControl\"\n [placeholder]=\"'input.address.number.placeholder' | translate\"\n />\n </mat-form-field>\n </div>\n\n <div class=\"col-6-small col-2-medium\">\n <mat-form-field class=\"ml-m-medium ml-s-small\">\n <mat-label>{{'input.address.box.label' | translate}}</mat-label>\n <input\n matInput\n [formControl]=\"boxControl\"\n [placeholder]=\"'input.address.box.placeholder' | translate\"\n />\n </mat-form-field>\n </div>\n </div>\n\n <div class=\"row\">\n <div class=\"col-12-small col-4-medium\">\n <mat-form-field class=\"mr-m-medium\">\n <mat-label\n >{{ 'input.address.postal-code.label' | translate}}</mat-label\n >\n <input\n matInput\n [formControl]=\"postalCodeControl\"\n [placeholder]=\"'input.address.postal-code.label' | translate\"\n />\n </mat-form-field>\n </div>\n\n <div class=\"col-12-small col-8-medium\">\n <mat-form-field>\n <mat-label>{{ 'input.address.city.label' | translate }}</mat-label>\n <input\n matInput\n [formControl]=\"cityControl\"\n [placeholder]=\"'input.address.city.placeholder' | translate\"\n />\n </mat-form-field>\n </div>\n </div>\n</div>\n", styles: [":host{display:flex;flex-direction:column;width:100%}:host mat-form-field{display:flex}:host onemrva-mat-input-country{display:flex;width:100%}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: MatFormFieldModule }, { kind: "component", type: i1.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i1.MatLabel, selector: "mat-label" }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i2.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: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: OnemrvaMatInputCountryComponent, selector: "onemrva-mat-input-country", inputs: ["country", "readonly", "disabled", "label", "noEntriesFoundLabel", "hint", "placeholderLabel", "searchAriaLabel"], outputs: ["getCountry"] }, { kind: "ngmodule", type: MatInputModule }, { kind: "directive", type: i3.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: "ngmodule", type: TranslateModule }, { kind: "component", type: OnemrvaMatInputAddressComponent, selector: "onemrva-mat-input-address", inputs: ["placeholder", "readonly", "address", "mode", "label", "noEntriesFoundLabel", "hint", "countryCodes"], outputs: ["getAddress"] }, { kind: "pipe", type: i4.TranslatePipe, name: "translate" }] }); }
82
82
  }
83
83
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.7", ngImport: i0, type: OnemRvaAddress, decorators: [{
84
84
  type: Component,
@@ -90,7 +90,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.7", ngImpor
90
90
  MatInputModule,
91
91
  TranslateModule,
92
92
  OnemrvaMatInputAddressComponent,
93
- ], standalone: true, template: "<onemrva-mat-input-country\n [country]=\"countryForm\"\n label=\"{{ 'input.country.label' | translate }}\"\n noEntriesFoundLabel=\"{{ 'input.country.not.found' | translate }}\"\n placeholderLabel=\"{{ 'input.country.search' | translate }}\"\n searchAriaLabel=\"{{ 'input.country.search' | translate }}\"\n></onemrva-mat-input-country>\n\n<div class=\"container\">\n <div class=\"row\">\n <div class=\"col-12-small col-8-medium\">\n <onemrva-mat-input-address\n class=\"mr-m\"\n mode=\"road-only\"\n [countryCodes]=\"[countryForm.value || '']\"\n [address]=\"streetControl\"\n (getAddress)=\"onAddressSelected($event)\"\n />\n </div>\n\n <div class=\"col-6-small col-2-medium\">\n <mat-form-field class=\"ml-m-medium\">\n <mat-label>{{ 'input.address.number.label' | translate }}</mat-label>\n <input\n matInput\n [formControl]=\"numeroControl\"\n [placeholder]=\"'input.address.number.placeholder' | translate\"\n />\n </mat-form-field>\n </div>\n\n <div class=\"col-6-small col-2-medium\">\n <mat-form-field class=\"ml-m-medium ml-s-small\">\n <mat-label>{{'input.address.box.label' | translate}}</mat-label>\n <input\n matInput\n [formControl]=\"boxControl\"\n [placeholder]=\"'input.address.box.placeholder' | translate\"\n />\n </mat-form-field>\n </div>\n </div>\n\n <div class=\"row\">\n <div class=\"col-12-small col-4-medium\">\n <mat-form-field class=\"mr-m-medium\">\n <mat-label\n >{{ 'input.address.postal-code.label' | translate}}</mat-label\n >\n <input\n matInput\n [formControl]=\"postalCodeControl\"\n [placeholder]=\"'input.address.postal-code.label' | translate\"\n />\n </mat-form-field>\n </div>\n\n <mat-form-field class=\"col-12-small col-8-medium\">\n <mat-label>{{ 'input.address.city.label' | translate }}</mat-label>\n <input\n matInput\n [formControl]=\"cityControl\"\n [placeholder]=\"'input.address.city.placeholder' | translate\"\n />\n </mat-form-field>\n </div>\n</div>\n", styles: [":host{display:flex;flex-direction:column;width:100%}:host mat-form-field{display:flex}:host onemrva-mat-input-country{display:flex;width:100%}\n"] }]
93
+ ], standalone: true, template: "<onemrva-mat-input-country\n [country]=\"countryForm\"\n label=\"{{ 'input.country.label' | translate }}\"\n noEntriesFoundLabel=\"{{ 'input.country.not.found' | translate }}\"\n placeholderLabel=\"{{ 'input.country.search' | translate }}\"\n searchAriaLabel=\"{{ 'input.country.search' | translate }}\"\n></onemrva-mat-input-country>\n\n<div class=\"container\">\n <div class=\"row\">\n <div class=\"col-12-small col-8-medium\">\n <onemrva-mat-input-address\n class=\"mr-m\"\n mode=\"road-only\"\n [countryCodes]=\"[countryForm.value || '']\"\n [address]=\"streetControl\"\n (getAddress)=\"onAddressSelected($event)\"\n />\n </div>\n\n <div class=\"col-6-small col-2-medium\">\n <mat-form-field class=\"ml-m-medium\">\n <mat-label>{{ 'input.address.number.label' | translate }}</mat-label>\n <input\n matInput\n [formControl]=\"numeroControl\"\n [placeholder]=\"'input.address.number.placeholder' | translate\"\n />\n </mat-form-field>\n </div>\n\n <div class=\"col-6-small col-2-medium\">\n <mat-form-field class=\"ml-m-medium ml-s-small\">\n <mat-label>{{'input.address.box.label' | translate}}</mat-label>\n <input\n matInput\n [formControl]=\"boxControl\"\n [placeholder]=\"'input.address.box.placeholder' | translate\"\n />\n </mat-form-field>\n </div>\n </div>\n\n <div class=\"row\">\n <div class=\"col-12-small col-4-medium\">\n <mat-form-field class=\"mr-m-medium\">\n <mat-label\n >{{ 'input.address.postal-code.label' | translate}}</mat-label\n >\n <input\n matInput\n [formControl]=\"postalCodeControl\"\n [placeholder]=\"'input.address.postal-code.label' | translate\"\n />\n </mat-form-field>\n </div>\n\n <div class=\"col-12-small col-8-medium\">\n <mat-form-field>\n <mat-label>{{ 'input.address.city.label' | translate }}</mat-label>\n <input\n matInput\n [formControl]=\"cityControl\"\n [placeholder]=\"'input.address.city.placeholder' | translate\"\n />\n </mat-form-field>\n </div>\n </div>\n</div>\n", styles: [":host{display:flex;flex-direction:column;width:100%}:host mat-form-field{display:flex}:host onemrva-mat-input-country{display:flex;width:100%}\n"] }]
94
94
  }], propDecorators: { defaultCountry: [{
95
95
  type: Input
96
96
  }], form: [{
@@ -1 +1 @@
1
- {"version":3,"file":"onemrvapublic-design-system-mat-address.mjs","sources":["../../../../projects/onemrva/design-system/mat-address/src/onemrva-address.ts","../../../../projects/onemrva/design-system/mat-address/src/onemrva-address.html","../../../../projects/onemrva/design-system/mat-address/index.ts","../../../../projects/onemrva/design-system/mat-address/onemrvapublic-design-system-mat-address.ts"],"sourcesContent":["import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { FormControl, FormGroup, ReactiveFormsModule } from '@angular/forms';\nimport { OnemrvaMatInputAddressComponent } from '@onemrvapublic/design-system/mat-input-address';\nimport { OnemrvaMatInputCountryComponent } from '@onemrvapublic/design-system/mat-input-country';\nimport { OSMResult } from '@onemrvapublic/design-system/shared';\nimport { MatInputModule } from '@angular/material/input';\nimport { TranslateModule } from '@ngx-translate/core';\nimport { merge } from 'rxjs';\n\n@Component({\n selector: 'onemrva-address',\n imports: [\n CommonModule,\n MatFormFieldModule,\n ReactiveFormsModule,\n OnemrvaMatInputCountryComponent,\n MatInputModule,\n TranslateModule,\n OnemrvaMatInputAddressComponent,\n ],\n templateUrl: './onemrva-address.html',\n standalone: true,\n styleUrl: './onemrva-address.scss',\n})\nexport class OnemRvaAddress implements OnInit {\n @Input()\n defaultCountry = 'be';\n\n @Input()\n form = new FormGroup({\n country: new FormControl(''),\n street: new FormControl(''),\n postal_code: new FormControl(''),\n city: new FormControl(''),\n street_number: new FormControl(''),\n box: new FormControl(''),\n });\n\n @Output()\n update = new EventEmitter<{\n country?: string;\n street?: string;\n postal_code?: string;\n city?: string;\n street_number?: string;\n box?: string;\n }>();\n\n // Keep existing property names as getters to avoid template changes\n get countryForm(): FormControl<string | null> {\n return this.form.get('country') as FormControl<string | null>;\n }\n get streetControl(): FormControl<string | null> {\n return this.form.get('street') as FormControl<string | null>;\n }\n get postalCodeControl(): FormControl<string | null> {\n return this.form.get('postal_code') as FormControl<string | null>;\n }\n get cityControl(): FormControl<string | null> {\n return this.form.get('city') as FormControl<string | null>;\n }\n get boxControl(): FormControl<string | null> {\n return this.form.get('box') as FormControl<string | null>;\n }\n get numeroControl(): FormControl<string | null> {\n return this.form.get('street_number') as FormControl<string | null>;\n }\n\n ngOnInit() {\n // Emit on any form change\n merge(this.form.valueChanges).subscribe(() => {\n const v = this.form.value;\n const change = {\n country: v.country || undefined,\n street: v.street || undefined,\n postal_code: v.postal_code || undefined,\n city: v.city || undefined,\n street_number: v.street_number || undefined,\n };\n this.update.emit(change);\n });\n }\n\n onAddressSelected(result: OSMResult) {\n const city =\n result.address.city || result.address.village || result.address.town;\n const patch: any = {};\n\n if (city) {\n patch.city = city;\n }\n\n const houseNumber = result.address.house_number;\n if (houseNumber) {\n patch.street_number = houseNumber;\n }\n\n const postalCode = result.address.postcode;\n if (postalCode) {\n patch.postal_code = postalCode;\n }\n\n if (Object.keys(patch).length > 0) {\n this.form.patchValue(patch);\n }\n }\n}\n","<onemrva-mat-input-country\n [country]=\"countryForm\"\n label=\"{{ 'input.country.label' | translate }}\"\n noEntriesFoundLabel=\"{{ 'input.country.not.found' | translate }}\"\n placeholderLabel=\"{{ 'input.country.search' | translate }}\"\n searchAriaLabel=\"{{ 'input.country.search' | translate }}\"\n></onemrva-mat-input-country>\n\n<div class=\"container\">\n <div class=\"row\">\n <div class=\"col-12-small col-8-medium\">\n <onemrva-mat-input-address\n class=\"mr-m\"\n mode=\"road-only\"\n [countryCodes]=\"[countryForm.value || '']\"\n [address]=\"streetControl\"\n (getAddress)=\"onAddressSelected($event)\"\n />\n </div>\n\n <div class=\"col-6-small col-2-medium\">\n <mat-form-field class=\"ml-m-medium\">\n <mat-label>{{ 'input.address.number.label' | translate }}</mat-label>\n <input\n matInput\n [formControl]=\"numeroControl\"\n [placeholder]=\"'input.address.number.placeholder' | translate\"\n />\n </mat-form-field>\n </div>\n\n <div class=\"col-6-small col-2-medium\">\n <mat-form-field class=\"ml-m-medium ml-s-small\">\n <mat-label>{{'input.address.box.label' | translate}}</mat-label>\n <input\n matInput\n [formControl]=\"boxControl\"\n [placeholder]=\"'input.address.box.placeholder' | translate\"\n />\n </mat-form-field>\n </div>\n </div>\n\n <div class=\"row\">\n <div class=\"col-12-small col-4-medium\">\n <mat-form-field class=\"mr-m-medium\">\n <mat-label\n >{{ 'input.address.postal-code.label' | translate}}</mat-label\n >\n <input\n matInput\n [formControl]=\"postalCodeControl\"\n [placeholder]=\"'input.address.postal-code.label' | translate\"\n />\n </mat-form-field>\n </div>\n\n <mat-form-field class=\"col-12-small col-8-medium\">\n <mat-label>{{ 'input.address.city.label' | translate }}</mat-label>\n <input\n matInput\n [formControl]=\"cityControl\"\n [placeholder]=\"'input.address.city.placeholder' | translate\"\n />\n </mat-form-field>\n </div>\n</div>\n","/*\n * Public API Surface of mat-bank-account-input\n */\n\nexport * from './src/onemrva-address';\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-address.mjs","sources":["../../../../projects/onemrva/design-system/mat-address/src/onemrva-address.ts","../../../../projects/onemrva/design-system/mat-address/src/onemrva-address.html","../../../../projects/onemrva/design-system/mat-address/index.ts","../../../../projects/onemrva/design-system/mat-address/onemrvapublic-design-system-mat-address.ts"],"sourcesContent":["import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { FormControl, FormGroup, ReactiveFormsModule } from '@angular/forms';\nimport { OnemrvaMatInputAddressComponent } from '@onemrvapublic/design-system/mat-input-address';\nimport { OnemrvaMatInputCountryComponent } from '@onemrvapublic/design-system/mat-input-country';\nimport { OSMResult } from '@onemrvapublic/design-system/shared';\nimport { MatInputModule } from '@angular/material/input';\nimport { TranslateModule } from '@ngx-translate/core';\nimport { merge } from 'rxjs';\n\n@Component({\n selector: 'onemrva-address',\n imports: [\n CommonModule,\n MatFormFieldModule,\n ReactiveFormsModule,\n OnemrvaMatInputCountryComponent,\n MatInputModule,\n TranslateModule,\n OnemrvaMatInputAddressComponent,\n ],\n templateUrl: './onemrva-address.html',\n standalone: true,\n styleUrl: './onemrva-address.scss',\n})\nexport class OnemRvaAddress implements OnInit {\n @Input()\n defaultCountry = 'be';\n\n @Input()\n form = new FormGroup({\n country: new FormControl(''),\n street: new FormControl(''),\n postal_code: new FormControl(''),\n city: new FormControl(''),\n street_number: new FormControl(''),\n box: new FormControl(''),\n });\n\n @Output()\n update = new EventEmitter<{\n country?: string;\n street?: string;\n postal_code?: string;\n city?: string;\n street_number?: string;\n box?: string;\n }>();\n\n // Keep existing property names as getters to avoid template changes\n get countryForm(): FormControl<string | null> {\n return this.form.get('country') as FormControl<string | null>;\n }\n get streetControl(): FormControl<string | null> {\n return this.form.get('street') as FormControl<string | null>;\n }\n get postalCodeControl(): FormControl<string | null> {\n return this.form.get('postal_code') as FormControl<string | null>;\n }\n get cityControl(): FormControl<string | null> {\n return this.form.get('city') as FormControl<string | null>;\n }\n get boxControl(): FormControl<string | null> {\n return this.form.get('box') as FormControl<string | null>;\n }\n get numeroControl(): FormControl<string | null> {\n return this.form.get('street_number') as FormControl<string | null>;\n }\n\n ngOnInit() {\n // Emit on any form change\n merge(this.form.valueChanges).subscribe(() => {\n const v = this.form.value;\n const change = {\n country: v.country || undefined,\n street: v.street || undefined,\n postal_code: v.postal_code || undefined,\n city: v.city || undefined,\n street_number: v.street_number || undefined,\n };\n this.update.emit(change);\n });\n }\n\n onAddressSelected(result: OSMResult) {\n const city =\n result.address.city || result.address.village || result.address.town;\n const patch: any = {};\n\n if (city) {\n patch.city = city;\n }\n\n const houseNumber = result.address.house_number;\n if (houseNumber) {\n patch.street_number = houseNumber;\n }\n\n const postalCode = result.address.postcode;\n if (postalCode) {\n patch.postal_code = postalCode;\n }\n\n if (Object.keys(patch).length > 0) {\n this.form.patchValue(patch);\n }\n }\n}\n","<onemrva-mat-input-country\n [country]=\"countryForm\"\n label=\"{{ 'input.country.label' | translate }}\"\n noEntriesFoundLabel=\"{{ 'input.country.not.found' | translate }}\"\n placeholderLabel=\"{{ 'input.country.search' | translate }}\"\n searchAriaLabel=\"{{ 'input.country.search' | translate }}\"\n></onemrva-mat-input-country>\n\n<div class=\"container\">\n <div class=\"row\">\n <div class=\"col-12-small col-8-medium\">\n <onemrva-mat-input-address\n class=\"mr-m\"\n mode=\"road-only\"\n [countryCodes]=\"[countryForm.value || '']\"\n [address]=\"streetControl\"\n (getAddress)=\"onAddressSelected($event)\"\n />\n </div>\n\n <div class=\"col-6-small col-2-medium\">\n <mat-form-field class=\"ml-m-medium\">\n <mat-label>{{ 'input.address.number.label' | translate }}</mat-label>\n <input\n matInput\n [formControl]=\"numeroControl\"\n [placeholder]=\"'input.address.number.placeholder' | translate\"\n />\n </mat-form-field>\n </div>\n\n <div class=\"col-6-small col-2-medium\">\n <mat-form-field class=\"ml-m-medium ml-s-small\">\n <mat-label>{{'input.address.box.label' | translate}}</mat-label>\n <input\n matInput\n [formControl]=\"boxControl\"\n [placeholder]=\"'input.address.box.placeholder' | translate\"\n />\n </mat-form-field>\n </div>\n </div>\n\n <div class=\"row\">\n <div class=\"col-12-small col-4-medium\">\n <mat-form-field class=\"mr-m-medium\">\n <mat-label\n >{{ 'input.address.postal-code.label' | translate}}</mat-label\n >\n <input\n matInput\n [formControl]=\"postalCodeControl\"\n [placeholder]=\"'input.address.postal-code.label' | translate\"\n />\n </mat-form-field>\n </div>\n\n <div class=\"col-12-small col-8-medium\">\n <mat-form-field>\n <mat-label>{{ 'input.address.city.label' | translate }}</mat-label>\n <input\n matInput\n [formControl]=\"cityControl\"\n [placeholder]=\"'input.address.city.placeholder' | translate\"\n />\n </mat-form-field>\n </div>\n </div>\n</div>\n","/*\n * Public API Surface of mat-bank-account-input\n */\n\nexport * from './src/onemrva-address';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -9,6 +9,7 @@ import { MatIconModule } from '@angular/material/icon';
9
9
  let NEXT_ID = 0;
10
10
  const MatAvatarType = mkenum({
11
11
  INITIALS: 'initials',
12
+ TEXT: 'text',
12
13
  IMAGE: 'image',
13
14
  ICON: 'icon',
14
15
  CUSTOM: 'custom',
@@ -105,6 +106,15 @@ class OnemrvaMatAvatarComponent {
105
106
  * ```
106
107
  */
107
108
  this.initials = '';
109
+ /**
110
+ * Sets text to the avatar.
111
+ *
112
+ * @example
113
+ * ```html
114
+ * <onemrva-mat-avatar text="100%"></onemrva-mat-avatar>
115
+ * ```
116
+ */
117
+ this.text = '';
108
118
  /**
109
119
  * Sets an icon to the avatar. All icons from the material icon set are supported.
110
120
  *
@@ -131,6 +141,8 @@ class OnemrvaMatAvatarComponent {
131
141
  /** @hidden @internal */
132
142
  this.initialsTemplate = null;
133
143
  /** @hidden @internal */
144
+ this.textTemplate = null;
145
+ /** @hidden @internal */
134
146
  this.iconTemplate = null;
135
147
  this.elementRef = inject(ElementRef);
136
148
  }
@@ -143,6 +155,9 @@ class OnemrvaMatAvatarComponent {
143
155
  * ```
144
156
  */
145
157
  get type() {
158
+ if (this.text) {
159
+ return MatAvatarType.TEXT;
160
+ }
146
161
  if (this.src) {
147
162
  return MatAvatarType.IMAGE;
148
163
  }
@@ -166,6 +181,10 @@ class OnemrvaMatAvatarComponent {
166
181
  get _isInitialsType() {
167
182
  return this.type === MatAvatarType.INITIALS;
168
183
  }
184
+ /** @hidden @internal */
185
+ get _isTextType() {
186
+ return this.type === MatAvatarType.TEXT;
187
+ }
169
188
  /**
170
189
  * Returns the template of the avatar.
171
190
  *
@@ -178,6 +197,8 @@ class OnemrvaMatAvatarComponent {
178
197
  return this.imageTemplate;
179
198
  case MatAvatarType.INITIALS:
180
199
  return this.initialsTemplate;
200
+ case MatAvatarType.TEXT:
201
+ return this.textTemplate;
181
202
  case MatAvatarType.ICON:
182
203
  return this.iconTemplate;
183
204
  default:
@@ -211,11 +232,11 @@ class OnemrvaMatAvatarComponent {
211
232
  }
212
233
  }
213
234
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.7", ngImport: i0, type: OnemrvaMatAvatarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
214
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.1.7", type: OnemrvaMatAvatarComponent, isStandalone: true, selector: "onemrva-mat-avatar", inputs: { id: "id", roundShape: "roundShape", initials: "initials", icon: "icon", src: "src" }, host: { properties: { "attr.aria-label": "this.ariaLabel", "attr.role": "this.role", "class.onemrva-mat-avatar": "this.cssClass", "attr.aria-roledescription": "this.roleDescription", "attr.id": "this.id", "class.onemrva-mat-avatar--rounded": "this.roundShape", "class.onemrva-mat-avatar--image": "this._isImageType", "class.onemrva-mat-avatar--icon": "this._isIconType", "class.onemrva-mat-avatar--initials": "this._isInitialsType" } }, viewQueries: [{ propertyName: "defaultTemplate", first: true, predicate: ["defaultTemplate"], descendants: true, read: TemplateRef, static: true }, { propertyName: "imageTemplate", first: true, predicate: ["imageTemplate"], descendants: true, read: TemplateRef, static: true }, { propertyName: "initialsTemplate", first: true, predicate: ["initialsTemplate"], descendants: true, read: TemplateRef, static: true }, { propertyName: "iconTemplate", first: true, predicate: ["iconTemplate"], descendants: true, read: TemplateRef, static: true }], ngImport: i0, template: "<ng-template #defaultTemplate>\n <ng-content></ng-content>\n</ng-template>\n\n<ng-template #imageTemplate>\n <div\n #image\n class=\"onemrva-avatar__image\"\n [style.backgroundImage]=\"getSrcUrl()\"\n ></div>\n</ng-template>\n\n<ng-template #initialsTemplate>\n <span>{{ initials | slice: 0 : 2 }}</span>\n</ng-template>\n\n<ng-template #iconTemplate>\n <mat-icon>{{ icon }}</mat-icon>\n</ng-template>\n\n<ng-container *ngTemplateOutlet=\"template\"></ng-container>\n", styles: [":host{position:relative;display:inline-flex;justify-content:center;align-items:center;-webkit-user-select:none;user-select:none;vertical-align:middle;outline-style:none;flex-shrink:0;font-family:var(--text-font);font-weight:500;font-size:var(--avatar-font-size);line-height:calc(var(--avatar-size) / 2);width:var(--avatar-size);height:var(--avatar-size)}:host.mat-primary,:host.mat-success,:host.mat-info,:host.mat-warn,:host.mat-neutral{background:var(--mat-sys-primary);color:var(--mat-sys-on-primary)}:host.mat-error{background:var(--mat-sys-error);color:var(--mat-sys-on-error)}:host.mat-accent{background:var(--background-gradient);color:var(--on-background-gradient)}:host.onemrva-mat-avatar--icon{background:var(--mat-sys-on-surface);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;font-variation-settings:\"FILL\" 0,\"wght\" 900,\"GRAD\" 0,\"opsz\" 48}:host.onemrva-mat-avatar--icon.mat-accent{background:var(--background-gradient);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}:host.onemrva-mat-avatar--icon.mat-primary,:host.onemrva-mat-avatar--icon.mat-success,:host.onemrva-mat-avatar--icon.mat-info,:host.onemrva-mat-avatar--icon.mat-warn,:host.onemrva-mat-avatar--icon.mat-neutral{background:var(--mat-sys-primary);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}:host.onemrva-mat-avatar--icon.mat-error{background:var(--mat-sys-error);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}:host mat-icon.material-icons{font-size:calc(var(--avatar-size) + var(--avatar-resize));margin-top:calc(-1 * var(--avatar-resize));margin-left:calc(-1 * var(--avatar-resize));width:var(--avatar-size);height:var(--avatar-size);line-height:calc(var(--avatar-size) + var(--avatar-resize))}:host .onemrva-avatar__image{width:100%;height:100%;border-radius:inherit;background-color:var(--mat-sys-background);background-size:cover;background-repeat:no-repeat;background-position:center}:host.onemrva-mat-avatar--rounded{border-radius:var(--avatar-size)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "pipe", type: i1.SlicePipe, name: "slice" }] }); }
235
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.1.7", type: OnemrvaMatAvatarComponent, isStandalone: true, selector: "onemrva-mat-avatar", inputs: { id: "id", roundShape: "roundShape", initials: "initials", text: "text", icon: "icon", src: "src" }, host: { properties: { "attr.aria-label": "this.ariaLabel", "attr.role": "this.role", "class.onemrva-mat-avatar": "this.cssClass", "attr.aria-roledescription": "this.roleDescription", "attr.id": "this.id", "class.onemrva-mat-avatar--rounded": "this.roundShape", "class.onemrva-mat-avatar--image": "this._isImageType", "class.onemrva-mat-avatar--icon": "this._isIconType", "class.onemrva-mat-avatar--initials": "this._isInitialsType", "class.onemrva-mat-avatar--text": "this._isTextType" } }, viewQueries: [{ propertyName: "defaultTemplate", first: true, predicate: ["defaultTemplate"], descendants: true, read: TemplateRef, static: true }, { propertyName: "imageTemplate", first: true, predicate: ["imageTemplate"], descendants: true, read: TemplateRef, static: true }, { propertyName: "initialsTemplate", first: true, predicate: ["initialsTemplate"], descendants: true, read: TemplateRef, static: true }, { propertyName: "textTemplate", first: true, predicate: ["textTemplate"], descendants: true, read: TemplateRef, static: true }, { propertyName: "iconTemplate", first: true, predicate: ["iconTemplate"], descendants: true, read: TemplateRef, static: true }], ngImport: i0, template: "<ng-template #defaultTemplate>\n <ng-content></ng-content>\n</ng-template>\n\n<ng-template #imageTemplate>\n <div\n #image\n class=\"onemrva-avatar__image\"\n [style.backgroundImage]=\"getSrcUrl()\"\n ></div>\n</ng-template>\n\n<ng-template #initialsTemplate>\n <span>{{ initials | slice: 0 : 2 }}</span>\n</ng-template>\n\n<ng-template #textTemplate>\n <span>{{ text }}</span>\n</ng-template>\n\n<ng-template #iconTemplate>\n <mat-icon>{{ icon }}</mat-icon>\n</ng-template>\n\n<ng-container *ngTemplateOutlet=\"template\"></ng-container>\n", styles: [":host{position:relative;display:inline-flex;justify-content:center;align-items:center;-webkit-user-select:none;user-select:none;vertical-align:middle;outline-style:none;flex-shrink:0;font-family:var(--text-font);font-weight:500;font-size:var(--avatar-font-size);line-height:calc(var(--avatar-size) / 2);width:var(--avatar-size);height:var(--avatar-size)}:host.mat-primary,:host.mat-success,:host.mat-info,:host.mat-warn,:host.mat-neutral{background:var(--mat-sys-primary);color:var(--mat-sys-on-primary)}:host.mat-error{background:var(--mat-sys-error);color:var(--mat-sys-on-error)}:host.mat-accent{background:var(--background-gradient);color:var(--on-background-gradient)}:host.onemrva-mat-avatar--icon{background:var(--mat-sys-on-surface);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;font-variation-settings:\"FILL\" 0,\"wght\" 900,\"GRAD\" 0,\"opsz\" 48}:host.onemrva-mat-avatar--icon.mat-accent{background:var(--background-gradient);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}:host.onemrva-mat-avatar--icon.mat-primary,:host.onemrva-mat-avatar--icon.mat-success,:host.onemrva-mat-avatar--icon.mat-info,:host.onemrva-mat-avatar--icon.mat-warn,:host.onemrva-mat-avatar--icon.mat-neutral{background:var(--mat-sys-primary);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}:host.onemrva-mat-avatar--icon.mat-error{background:var(--mat-sys-error);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}:host mat-icon.material-icons{font-size:calc(var(--avatar-size) + var(--avatar-resize));margin-top:calc(-1 * var(--avatar-resize));margin-left:calc(-1 * var(--avatar-resize));width:var(--avatar-size);height:var(--avatar-size);line-height:calc(var(--avatar-size) + var(--avatar-resize))}:host .onemrva-avatar__image{width:100%;height:100%;border-radius:inherit;background-color:var(--mat-sys-background);background-size:cover;background-repeat:no-repeat;background-position:center}:host.onemrva-mat-avatar--rounded{border-radius:var(--avatar-size)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "pipe", type: i1.SlicePipe, name: "slice" }] }); }
215
236
  }
216
237
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.7", ngImport: i0, type: OnemrvaMatAvatarComponent, decorators: [{
217
238
  type: Component,
218
- args: [{ selector: 'onemrva-mat-avatar', standalone: true, imports: [CommonModule, MatIconModule], template: "<ng-template #defaultTemplate>\n <ng-content></ng-content>\n</ng-template>\n\n<ng-template #imageTemplate>\n <div\n #image\n class=\"onemrva-avatar__image\"\n [style.backgroundImage]=\"getSrcUrl()\"\n ></div>\n</ng-template>\n\n<ng-template #initialsTemplate>\n <span>{{ initials | slice: 0 : 2 }}</span>\n</ng-template>\n\n<ng-template #iconTemplate>\n <mat-icon>{{ icon }}</mat-icon>\n</ng-template>\n\n<ng-container *ngTemplateOutlet=\"template\"></ng-container>\n", styles: [":host{position:relative;display:inline-flex;justify-content:center;align-items:center;-webkit-user-select:none;user-select:none;vertical-align:middle;outline-style:none;flex-shrink:0;font-family:var(--text-font);font-weight:500;font-size:var(--avatar-font-size);line-height:calc(var(--avatar-size) / 2);width:var(--avatar-size);height:var(--avatar-size)}:host.mat-primary,:host.mat-success,:host.mat-info,:host.mat-warn,:host.mat-neutral{background:var(--mat-sys-primary);color:var(--mat-sys-on-primary)}:host.mat-error{background:var(--mat-sys-error);color:var(--mat-sys-on-error)}:host.mat-accent{background:var(--background-gradient);color:var(--on-background-gradient)}:host.onemrva-mat-avatar--icon{background:var(--mat-sys-on-surface);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;font-variation-settings:\"FILL\" 0,\"wght\" 900,\"GRAD\" 0,\"opsz\" 48}:host.onemrva-mat-avatar--icon.mat-accent{background:var(--background-gradient);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}:host.onemrva-mat-avatar--icon.mat-primary,:host.onemrva-mat-avatar--icon.mat-success,:host.onemrva-mat-avatar--icon.mat-info,:host.onemrva-mat-avatar--icon.mat-warn,:host.onemrva-mat-avatar--icon.mat-neutral{background:var(--mat-sys-primary);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}:host.onemrva-mat-avatar--icon.mat-error{background:var(--mat-sys-error);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}:host mat-icon.material-icons{font-size:calc(var(--avatar-size) + var(--avatar-resize));margin-top:calc(-1 * var(--avatar-resize));margin-left:calc(-1 * var(--avatar-resize));width:var(--avatar-size);height:var(--avatar-size);line-height:calc(var(--avatar-size) + var(--avatar-resize))}:host .onemrva-avatar__image{width:100%;height:100%;border-radius:inherit;background-color:var(--mat-sys-background);background-size:cover;background-repeat:no-repeat;background-position:center}:host.onemrva-mat-avatar--rounded{border-radius:var(--avatar-size)}\n"] }]
239
+ args: [{ selector: 'onemrva-mat-avatar', standalone: true, imports: [CommonModule, MatIconModule], template: "<ng-template #defaultTemplate>\n <ng-content></ng-content>\n</ng-template>\n\n<ng-template #imageTemplate>\n <div\n #image\n class=\"onemrva-avatar__image\"\n [style.backgroundImage]=\"getSrcUrl()\"\n ></div>\n</ng-template>\n\n<ng-template #initialsTemplate>\n <span>{{ initials | slice: 0 : 2 }}</span>\n</ng-template>\n\n<ng-template #textTemplate>\n <span>{{ text }}</span>\n</ng-template>\n\n<ng-template #iconTemplate>\n <mat-icon>{{ icon }}</mat-icon>\n</ng-template>\n\n<ng-container *ngTemplateOutlet=\"template\"></ng-container>\n", styles: [":host{position:relative;display:inline-flex;justify-content:center;align-items:center;-webkit-user-select:none;user-select:none;vertical-align:middle;outline-style:none;flex-shrink:0;font-family:var(--text-font);font-weight:500;font-size:var(--avatar-font-size);line-height:calc(var(--avatar-size) / 2);width:var(--avatar-size);height:var(--avatar-size)}:host.mat-primary,:host.mat-success,:host.mat-info,:host.mat-warn,:host.mat-neutral{background:var(--mat-sys-primary);color:var(--mat-sys-on-primary)}:host.mat-error{background:var(--mat-sys-error);color:var(--mat-sys-on-error)}:host.mat-accent{background:var(--background-gradient);color:var(--on-background-gradient)}:host.onemrva-mat-avatar--icon{background:var(--mat-sys-on-surface);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;font-variation-settings:\"FILL\" 0,\"wght\" 900,\"GRAD\" 0,\"opsz\" 48}:host.onemrva-mat-avatar--icon.mat-accent{background:var(--background-gradient);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}:host.onemrva-mat-avatar--icon.mat-primary,:host.onemrva-mat-avatar--icon.mat-success,:host.onemrva-mat-avatar--icon.mat-info,:host.onemrva-mat-avatar--icon.mat-warn,:host.onemrva-mat-avatar--icon.mat-neutral{background:var(--mat-sys-primary);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}:host.onemrva-mat-avatar--icon.mat-error{background:var(--mat-sys-error);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}:host mat-icon.material-icons{font-size:calc(var(--avatar-size) + var(--avatar-resize));margin-top:calc(-1 * var(--avatar-resize));margin-left:calc(-1 * var(--avatar-resize));width:var(--avatar-size);height:var(--avatar-size);line-height:calc(var(--avatar-size) + var(--avatar-resize))}:host .onemrva-avatar__image{width:100%;height:100%;border-radius:inherit;background-color:var(--mat-sys-background);background-size:cover;background-repeat:no-repeat;background-position:center}:host.onemrva-mat-avatar--rounded{border-radius:var(--avatar-size)}\n"] }]
219
240
  }], propDecorators: { ariaLabel: [{
220
241
  type: HostBinding,
221
242
  args: ['attr.aria-label']
@@ -240,6 +261,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.7", ngImpor
240
261
  type: Input
241
262
  }], initials: [{
242
263
  type: Input
264
+ }], text: [{
265
+ type: Input
243
266
  }], icon: [{
244
267
  type: Input
245
268
  }], src: [{
@@ -253,6 +276,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.7", ngImpor
253
276
  }], initialsTemplate: [{
254
277
  type: ViewChild,
255
278
  args: ['initialsTemplate', { read: TemplateRef, static: true }]
279
+ }], textTemplate: [{
280
+ type: ViewChild,
281
+ args: ['textTemplate', { read: TemplateRef, static: true }]
256
282
  }], iconTemplate: [{
257
283
  type: ViewChild,
258
284
  args: ['iconTemplate', { read: TemplateRef, static: true }]
@@ -265,6 +291,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.7", ngImpor
265
291
  }], _isInitialsType: [{
266
292
  type: HostBinding,
267
293
  args: ['class.onemrva-mat-avatar--initials']
294
+ }], _isTextType: [{
295
+ type: HostBinding,
296
+ args: ['class.onemrva-mat-avatar--text']
268
297
  }] } });
269
298
 
270
299
  class OnemrvaMatAvatarModule {
@@ -1 +1 @@
1
- {"version":3,"file":"onemrvapublic-design-system-mat-avatar.mjs","sources":["../../../../projects/onemrva/design-system/mat-avatar/src/onemrva-mat-avatar.component.ts","../../../../projects/onemrva/design-system/mat-avatar/src/onemrva-mat-avatar.component.html","../../../../projects/onemrva/design-system/mat-avatar/src/onemrva-mat-avatar.module.ts","../../../../projects/onemrva/design-system/mat-avatar/onemrvapublic-design-system-mat-avatar.ts"],"sourcesContent":["import {\n Component,\n ElementRef,\n HostBinding,\n inject,\n Input,\n OnInit,\n TemplateRef,\n ViewChild,\n} from '@angular/core';\nimport { mkenum } from '@onemrvapublic/design-system/utils';\nimport { CommonModule } from '@angular/common';\nimport { MatIconModule } from '@angular/material/icon';\n\nlet NEXT_ID = 0;\n\nexport const MatAvatarType = mkenum({\n INITIALS: 'initials',\n IMAGE: 'image',\n ICON: 'icon',\n CUSTOM: 'custom',\n});\nexport type MatAvatarType = (typeof MatAvatarType)[keyof typeof MatAvatarType];\n\n/**\n * Avatar provides a way to display an image, icon or initials to the user.\n *\n * @MatModule OnemrvaMatAvatarModule\n *\n * @MatTheme onemrva-mat-avatar-theme, onemrva-mat-icon-theme\n *\n * @MatKeywords avatar, profile, picture, initials\n *\n * @MatGroup Layouts\n *\n * @remarks\n *\n * The Ignite UI Avatar provides an easy way to add an avatar icon to your application. This icon can be an\n * image, someone's initials or a material icon from the Google Material icon set.\n *\n * @example\n * ```html\n * <onemrva-mat-avatar initials=\"MS\" [roundShape]=\"true\" size=\"large\">\n * </onemrva-mat-avatar>\n * ```\n */\n@Component({\n selector: 'onemrva-mat-avatar',\n templateUrl: 'onemrva-mat-avatar.component.html',\n styleUrl: 'onemrva-mat-avatar.component.scss',\n standalone: true,\n imports: [CommonModule, MatIconModule],\n})\nexport class OnemrvaMatAvatarComponent implements OnInit {\n /**\n * Returns the `aria-label` attribute of the avatar.\n *\n * @example\n * ```typescript\n * let ariaLabel = this.avatar.ariaLabel;\n * ```\n *\n */\n @HostBinding('attr.aria-label')\n public ariaLabel = 'avatar';\n\n /**\n * Returns the `role` attribute of the avatar.\n *\n * @example\n * ```typescript\n * let avatarRole = this.avatar.role;\n * ```\n */\n @HostBinding('attr.role')\n public role = 'img';\n\n /**\n * Host `class.onemrva-mat-avatar` binding.\n *\n * @hidden\n * @internal\n */\n @HostBinding('class.onemrva-mat-avatar')\n public cssClass = 'onemrva-mat-avatar';\n\n /**\n * Returns the type of the avatar.\n * The avatar can be:\n * - `\"initials type avatar\"`\n * - `\"icon type avatar\"`\n * - `\"image type avatar\"`.\n * - `\"custom type avatar\"`.\n *\n * @example\n * ```typescript\n * let avatarDescription = this.avatar.roleDescription;\n * ```\n */\n @HostBinding('attr.aria-roledescription')\n public roleDescription = '';\n\n /**\n * Sets the `id` of the avatar. If not set, the first avatar component will have `id` = `\"onemrva-mat-avatar-0\"`.\n *\n * @example\n * ```html\n * <onemrva-mat-avatar id=\"my-first-avatar\"></onemrva-mat-avatar>\n * ```\n */\n @HostBinding('attr.id')\n @Input()\n public id = `onemrva-mat-avatar-${NEXT_ID++}`;\n\n /**\n * Sets a round shape to the avatar, if `[roundShape]` is set to `true`.\n * By default the shape of the avatar is a square.\n *\n * @example\n * ```html\n * <onemrva-mat-avatar [roundShape]=\"true\" ></onemrva-mat-avatar>\n * ```\n */\n\n @HostBinding('class.onemrva-mat-avatar--rounded')\n @Input()\n public roundShape = true;\n\n /**\n * Sets initials to the avatar.\n *\n * @example\n * ```html\n * <onemrva-mat-avatar initials=\"MN\"></onemrva-mat-avatar>\n * ```\n */\n @Input()\n public initials = '';\n\n /**\n * Sets an icon to the avatar. All icons from the material icon set are supported.\n *\n * @example\n * ```html\n * <onemrva-mat-avatar icon=\"phone\"></onemrva-mat-avatar>\n * ```\n */\n @Input()\n public icon = '';\n\n /**\n * Sets the image source of the avatar.\n *\n * @example\n * ```html\n * <onemrva-mat-avatar src=\"images/picture.jpg\"></onemrva-mat-avatar>\n * ```\n * @MatFriendlyName Image URL\n */\n @Input()\n public src = '';\n\n /** @hidden @internal */\n @ViewChild('defaultTemplate', { read: TemplateRef, static: true })\n protected defaultTemplate: TemplateRef<any> | null = null;\n\n /** @hidden @internal */\n @ViewChild('imageTemplate', { read: TemplateRef, static: true })\n protected imageTemplate: TemplateRef<any> | null = null;\n\n /** @hidden @internal */\n @ViewChild('initialsTemplate', { read: TemplateRef, static: true })\n protected initialsTemplate: TemplateRef<any> | null = null;\n\n /** @hidden @internal */\n @ViewChild('iconTemplate', { read: TemplateRef, static: true })\n protected iconTemplate: TemplateRef<any> | null = null;\n\n /**\n * Returns the type of the avatar.\n *\n * @example\n * ```typescript\n * let avatarType = this.avatar.type;\n * ```\n */\n public get type(): MatAvatarType {\n if (this.src) {\n return MatAvatarType.IMAGE;\n }\n\n if (this.icon) {\n return MatAvatarType.ICON;\n }\n\n if (this.initials) {\n return MatAvatarType.INITIALS;\n }\n\n return MatAvatarType.CUSTOM;\n }\n\n /** @hidden @internal */\n @HostBinding('class.onemrva-mat-avatar--image')\n public get _isImageType(): boolean {\n return this.type === MatAvatarType.IMAGE;\n }\n /** @hidden @internal */\n @HostBinding('class.onemrva-mat-avatar--icon')\n public get _isIconType(): boolean {\n return this.type === MatAvatarType.ICON;\n }\n /** @hidden @internal */\n @HostBinding('class.onemrva-mat-avatar--initials')\n public get _isInitialsType(): boolean {\n return this.type === MatAvatarType.INITIALS;\n }\n\n /**\n * Returns the template of the avatar.\n *\n * @hidden\n * @internal\n */\n public get template(): TemplateRef<any> | null {\n switch (this.type) {\n case MatAvatarType.IMAGE:\n return this.imageTemplate;\n case MatAvatarType.INITIALS:\n return this.initialsTemplate;\n case MatAvatarType.ICON:\n return this.iconTemplate;\n default:\n return this.defaultTemplate;\n }\n }\n\n public elementRef = inject(ElementRef);\n\n /**\n * Returns the css url of the image.\n *\n * @hidden\n * @internal\n */\n public getSrcUrl() {\n return `url(${this.src})`;\n }\n\n /** @hidden @internal */\n public ngOnInit() {\n this.roleDescription = this.getRole();\n }\n\n /** @hidden @internal */\n private getRole(): string {\n switch (this.type) {\n case MatAvatarType.IMAGE:\n return 'image avatar';\n case MatAvatarType.ICON:\n return 'icon avatar';\n case MatAvatarType.INITIALS:\n return 'initials avatar';\n default:\n return 'custom avatar';\n }\n }\n}\n","<ng-template #defaultTemplate>\n <ng-content></ng-content>\n</ng-template>\n\n<ng-template #imageTemplate>\n <div\n #image\n class=\"onemrva-avatar__image\"\n [style.backgroundImage]=\"getSrcUrl()\"\n ></div>\n</ng-template>\n\n<ng-template #initialsTemplate>\n <span>{{ initials | slice: 0 : 2 }}</span>\n</ng-template>\n\n<ng-template #iconTemplate>\n <mat-icon>{{ icon }}</mat-icon>\n</ng-template>\n\n<ng-container *ngTemplateOutlet=\"template\"></ng-container>\n","import { NgModule } from '@angular/core';\nimport { OnemrvaMatAvatarComponent } from './onemrva-mat-avatar.component';\n\n@NgModule({\n declarations: [],\n imports: [OnemrvaMatAvatarComponent],\n exports: [OnemrvaMatAvatarComponent],\n})\nexport class OnemrvaMatAvatarModule {}\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-avatar.mjs","sources":["../../../../projects/onemrva/design-system/mat-avatar/src/onemrva-mat-avatar.component.ts","../../../../projects/onemrva/design-system/mat-avatar/src/onemrva-mat-avatar.component.html","../../../../projects/onemrva/design-system/mat-avatar/src/onemrva-mat-avatar.module.ts","../../../../projects/onemrva/design-system/mat-avatar/onemrvapublic-design-system-mat-avatar.ts"],"sourcesContent":["import {\n Component,\n ElementRef,\n HostBinding,\n inject,\n Input,\n OnInit,\n TemplateRef,\n ViewChild,\n} from '@angular/core';\nimport { mkenum } from '@onemrvapublic/design-system/utils';\nimport { CommonModule } from '@angular/common';\nimport { MatIconModule } from '@angular/material/icon';\n\nlet NEXT_ID = 0;\n\nexport const MatAvatarType = mkenum({\n INITIALS: 'initials',\n TEXT: 'text',\n IMAGE: 'image',\n ICON: 'icon',\n CUSTOM: 'custom',\n});\nexport type MatAvatarType = (typeof MatAvatarType)[keyof typeof MatAvatarType];\n\n/**\n * Avatar provides a way to display an image, icon or initials to the user.\n *\n * @MatModule OnemrvaMatAvatarModule\n *\n * @MatTheme onemrva-mat-avatar-theme, onemrva-mat-icon-theme\n *\n * @MatKeywords avatar, profile, picture, initials\n *\n * @MatGroup Layouts\n *\n * @remarks\n *\n * The Ignite UI Avatar provides an easy way to add an avatar icon to your application. This icon can be an\n * image, someone's initials or a material icon from the Google Material icon set.\n *\n * @example\n * ```html\n * <onemrva-mat-avatar initials=\"MS\" [roundShape]=\"true\" size=\"large\">\n * </onemrva-mat-avatar>\n * ```\n */\n@Component({\n selector: 'onemrva-mat-avatar',\n templateUrl: 'onemrva-mat-avatar.component.html',\n styleUrl: 'onemrva-mat-avatar.component.scss',\n standalone: true,\n imports: [CommonModule, MatIconModule],\n})\nexport class OnemrvaMatAvatarComponent implements OnInit {\n /**\n * Returns the `aria-label` attribute of the avatar.\n *\n * @example\n * ```typescript\n * let ariaLabel = this.avatar.ariaLabel;\n * ```\n *\n */\n @HostBinding('attr.aria-label')\n public ariaLabel = 'avatar';\n\n /**\n * Returns the `role` attribute of the avatar.\n *\n * @example\n * ```typescript\n * let avatarRole = this.avatar.role;\n * ```\n */\n @HostBinding('attr.role')\n public role = 'img';\n\n /**\n * Host `class.onemrva-mat-avatar` binding.\n *\n * @hidden\n * @internal\n */\n @HostBinding('class.onemrva-mat-avatar')\n public cssClass = 'onemrva-mat-avatar';\n\n /**\n * Returns the type of the avatar.\n * The avatar can be:\n * - `\"initials type avatar\"`\n * - `\"icon type avatar\"`\n * - `\"image type avatar\"`.\n * - `\"custom type avatar\"`.\n *\n * @example\n * ```typescript\n * let avatarDescription = this.avatar.roleDescription;\n * ```\n */\n @HostBinding('attr.aria-roledescription')\n public roleDescription = '';\n\n /**\n * Sets the `id` of the avatar. If not set, the first avatar component will have `id` = `\"onemrva-mat-avatar-0\"`.\n *\n * @example\n * ```html\n * <onemrva-mat-avatar id=\"my-first-avatar\"></onemrva-mat-avatar>\n * ```\n */\n @HostBinding('attr.id')\n @Input()\n public id = `onemrva-mat-avatar-${NEXT_ID++}`;\n\n /**\n * Sets a round shape to the avatar, if `[roundShape]` is set to `true`.\n * By default the shape of the avatar is a square.\n *\n * @example\n * ```html\n * <onemrva-mat-avatar [roundShape]=\"true\" ></onemrva-mat-avatar>\n * ```\n */\n\n @HostBinding('class.onemrva-mat-avatar--rounded')\n @Input()\n public roundShape = true;\n\n /**\n * Sets initials to the avatar.\n *\n * @example\n * ```html\n * <onemrva-mat-avatar initials=\"MN\"></onemrva-mat-avatar>\n * ```\n */\n @Input()\n public initials = '';\n\n /**\n * Sets text to the avatar.\n *\n * @example\n * ```html\n * <onemrva-mat-avatar text=\"100%\"></onemrva-mat-avatar>\n * ```\n */\n @Input()\n public text = '';\n\n /**\n * Sets an icon to the avatar. All icons from the material icon set are supported.\n *\n * @example\n * ```html\n * <onemrva-mat-avatar icon=\"phone\"></onemrva-mat-avatar>\n * ```\n */\n @Input()\n public icon = '';\n\n /**\n * Sets the image source of the avatar.\n *\n * @example\n * ```html\n * <onemrva-mat-avatar src=\"images/picture.jpg\"></onemrva-mat-avatar>\n * ```\n * @MatFriendlyName Image URL\n */\n @Input()\n public src = '';\n\n /** @hidden @internal */\n @ViewChild('defaultTemplate', { read: TemplateRef, static: true })\n protected defaultTemplate: TemplateRef<any> | null = null;\n\n /** @hidden @internal */\n @ViewChild('imageTemplate', { read: TemplateRef, static: true })\n protected imageTemplate: TemplateRef<any> | null = null;\n\n /** @hidden @internal */\n @ViewChild('initialsTemplate', { read: TemplateRef, static: true })\n protected initialsTemplate: TemplateRef<any> | null = null;\n\n /** @hidden @internal */\n @ViewChild('textTemplate', { read: TemplateRef, static: true })\n protected textTemplate: TemplateRef<any> | null = null;\n\n /** @hidden @internal */\n @ViewChild('iconTemplate', { read: TemplateRef, static: true })\n protected iconTemplate: TemplateRef<any> | null = null;\n\n /**\n * Returns the type of the avatar.\n *\n * @example\n * ```typescript\n * let avatarType = this.avatar.type;\n * ```\n */\n public get type(): MatAvatarType {\n if (this.text) {\n return MatAvatarType.TEXT;\n }\n\n if (this.src) {\n return MatAvatarType.IMAGE;\n }\n\n if (this.icon) {\n return MatAvatarType.ICON;\n }\n\n if (this.initials) {\n return MatAvatarType.INITIALS;\n }\n\n return MatAvatarType.CUSTOM;\n }\n\n /** @hidden @internal */\n @HostBinding('class.onemrva-mat-avatar--image')\n public get _isImageType(): boolean {\n return this.type === MatAvatarType.IMAGE;\n }\n /** @hidden @internal */\n @HostBinding('class.onemrva-mat-avatar--icon')\n public get _isIconType(): boolean {\n return this.type === MatAvatarType.ICON;\n }\n /** @hidden @internal */\n @HostBinding('class.onemrva-mat-avatar--initials')\n public get _isInitialsType(): boolean {\n return this.type === MatAvatarType.INITIALS;\n }\n /** @hidden @internal */\n @HostBinding('class.onemrva-mat-avatar--text')\n public get _isTextType(): boolean {\n return this.type === MatAvatarType.TEXT;\n }\n\n /**\n * Returns the template of the avatar.\n *\n * @hidden\n * @internal\n */\n public get template(): TemplateRef<any> | null {\n switch (this.type) {\n case MatAvatarType.IMAGE:\n return this.imageTemplate;\n case MatAvatarType.INITIALS:\n return this.initialsTemplate;\n case MatAvatarType.TEXT:\n return this.textTemplate;\n case MatAvatarType.ICON:\n return this.iconTemplate;\n default:\n return this.defaultTemplate;\n }\n }\n\n public elementRef = inject(ElementRef);\n\n /**\n * Returns the css url of the image.\n *\n * @hidden\n * @internal\n */\n public getSrcUrl() {\n return `url(${this.src})`;\n }\n\n /** @hidden @internal */\n public ngOnInit() {\n this.roleDescription = this.getRole();\n }\n\n /** @hidden @internal */\n private getRole(): string {\n switch (this.type) {\n case MatAvatarType.IMAGE:\n return 'image avatar';\n case MatAvatarType.ICON:\n return 'icon avatar';\n case MatAvatarType.INITIALS:\n return 'initials avatar';\n default:\n return 'custom avatar';\n }\n }\n}\n","<ng-template #defaultTemplate>\n <ng-content></ng-content>\n</ng-template>\n\n<ng-template #imageTemplate>\n <div\n #image\n class=\"onemrva-avatar__image\"\n [style.backgroundImage]=\"getSrcUrl()\"\n ></div>\n</ng-template>\n\n<ng-template #initialsTemplate>\n <span>{{ initials | slice: 0 : 2 }}</span>\n</ng-template>\n\n<ng-template #textTemplate>\n <span>{{ text }}</span>\n</ng-template>\n\n<ng-template #iconTemplate>\n <mat-icon>{{ icon }}</mat-icon>\n</ng-template>\n\n<ng-container *ngTemplateOutlet=\"template\"></ng-container>\n","import { NgModule } from '@angular/core';\nimport { OnemrvaMatAvatarComponent } from './onemrva-mat-avatar.component';\n\n@NgModule({\n declarations: [],\n imports: [OnemrvaMatAvatarComponent],\n exports: [OnemrvaMatAvatarComponent],\n})\nexport class OnemrvaMatAvatarModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -2166,6 +2166,7 @@ function onemrvaThemeProvider() {
2166
2166
  useValue: {
2167
2167
  appearance: 'outline',
2168
2168
  floatLabel: 'always',
2169
+ subscriptSizing: 'dynamic',
2169
2170
  },
2170
2171
  },
2171
2172
  {