mapa-library-ui 0.26.0 → 0.27.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -98,7 +98,7 @@ class MapaDropdownComponent {
98
98
  return;
99
99
  }
100
100
  // get the search keyword
101
- let search = this.element.search?.formControl?.value;
101
+ let search = this.element.search?.formControl?.value.toLowerCase();
102
102
  if (this.isOptionsGroup) {
103
103
  const groups = this.element.options;
104
104
  this.filteredGroupCache = groups
@@ -1 +1 @@
1
- {"version":3,"file":"mapa-library-ui-src-lib-components-chart.mjs","sources":["../../../projects/mapa-library-ui/src/lib/components/button/src/button.component.ts","../../../projects/mapa-library-ui/src/lib/components/button/src/button.component.html","../../../projects/mapa-library-ui/src/lib/components/dropdown/src/dropdown.component.ts","../../../projects/mapa-library-ui/src/lib/components/dropdown/src/dropdown.component.html","../../../projects/mapa-library-ui/src/lib/components/chart/src/chart.component.ts","../../../projects/mapa-library-ui/src/lib/components/chart/src/chart.component.html","../../../projects/mapa-library-ui/src/lib/components/button/src/button.module.ts","../../../projects/mapa-library-ui/src/lib/components/button/public-api.ts","../../../projects/mapa-library-ui/src/lib/components/dropdown/src/dropdown.module.ts","../../../projects/mapa-library-ui/src/lib/components/dropdown/public-api.ts","../../../projects/mapa-library-ui/src/lib/components/chart/src/chart.module.ts","../../../projects/mapa-library-ui/src/lib/components/chart/public-api.ts","../../../projects/mapa-library-ui/src/chart.ts","../../../projects/mapa-library-ui/src/mapa-library-ui-src-lib-components-chart.ts"],"sourcesContent":["import { Component, EventEmitter, Input, Output } from '@angular/core';\n\n@Component({\n selector: 'mapa-button',\n templateUrl: './button.component.html',\n styleUrls: ['./button.component.scss']\n})\nexport class ButtonComponent {\n @Input() color: 'primary' | 'accent' | 'basic' | null | undefined;\n @Input() disabled!: boolean;\n @Output() clicked: EventEmitter<void> = new EventEmitter<void>();\n\n onClick(): void {\n this.clicked.emit();\n }\n}\n","<button\n class=\"mapa-button\"\n (click)=\"onClick()\"\n [class.primary]=\"color === 'primary'\"\n [class.accent]=\"color === 'accent'\"\n [class.basic]=\"color === 'basic'\"\n [disabled]=\"disabled\"\n>\n <ng-content></ng-content>\n</button> ","import {\n AfterViewInit,\n Component,\n Input,\n OnChanges,\n OnDestroy,\n OnInit,\n SimpleChanges,\n ViewChild,\n ViewEncapsulation,\n} from \"@angular/core\";\nimport { FormControl } from \"@angular/forms\";\n\nimport { MatSelect } from \"@angular/material/select\";\n\nimport { ReplaySubject } from \"rxjs/internal/ReplaySubject\";\nimport { Subject } from \"rxjs/internal/Subject\";\n//import { take, takeUntil } from \"rxjs/operators\";\n\nimport { ElementOption } from \"../../../core/interfaces/element-option.interface\";\nimport { Dropdown } from \"../../../core/elements/dropdown\";\nimport { ElementGroup } from \"../../../core/interfaces/element-group.interface\";\n\n@Component({\n selector: \"mapa-dropdown\",\n templateUrl: \"./dropdown.component.html\",\n styleUrls: [\"./dropdown.component.scss\"],\n encapsulation: ViewEncapsulation.None,\n})\nexport class MapaDropdownComponent implements OnInit, OnDestroy, OnChanges {\n @Input() formControl!: FormControl;\n @Input() formControlSearch!: FormControl;\n @Input() element!: Dropdown;\n @Input() border: \"soft\" | \"tag\" | \"highlight\" | null | undefined;\n\n @ViewChild(\"dropdown\", { static: true }) dropdown!: MatSelect;\n\n public filteredOptions: ReplaySubject<ElementOption[]> = new ReplaySubject<\n ElementOption[]\n >(1);\n public filteredGroups: ReplaySubject<ElementGroup[]> = new ReplaySubject<\n ElementGroup[]\n >(1);\n protected filteredOptionsCache: ElementOption[] = [];\n protected filteredGroupCache: ElementGroup[] = [];\n protected _onDestroy = new Subject<void>();\n\n isIndeterminate = false;\n isChecked = false;\n isOptionsGroup = false;\n\n constructor() {}\n\n ngOnInit() {\n this.setOptions();\n\n if (this.element.search) {\n this.element.search.formControl?.valueChanges\n //.pipe(takeUntil(this._onDestroy))\n .subscribe(() => {\n this.filterOptions();\n this.setToggleAllCheckboxState();\n });\n }\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n if (\n changes[\"element\"].previousValue?.controlType === \"dropdown\" &&\n changes[\"element\"].previousValue?.options !== changes[\"element\"].currentValue?.options\n ) {\n this.element.options = changes[\"element\"].currentValue.options;\n this.setOptions();\n }\n }\n\n ngOnDestroy() {\n this._onDestroy.next();\n this._onDestroy.complete();\n }\n\n setOptions(): void {\n this.isOptionsGroup = this.isElementGroup(this.element.options[0]);\n\n if (this.isOptionsGroup) {\n this.filteredGroupCache = (this.element\n .options as ElementGroup[]).slice();\n this.filteredGroups.next(this.filteredGroupCache);\n } else {\n this.filteredOptionsCache = (this.element\n .options as ElementOption[]).slice();\n this.filteredOptions.next(this.filteredOptionsCache);\n }\n }\n\n protected filterOptionsFromGroup(\n group: ElementGroup,\n value: string\n ): ElementOption[] {\n const filterValue = value.toLocaleLowerCase();\n\n return group.label.toLocaleLowerCase().includes(filterValue)\n ? group.options\n : group.options.filter((item) =>\n item.value.toLocaleLowerCase().includes(filterValue)\n );\n }\n\n protected filterOptions() {\n if (!this.element.options) {\n return;\n }\n // get the search keyword\n let search = this.element.search?.formControl?.value;\n\n if (this.isOptionsGroup) {\n const groups = this.element.options as ElementGroup[];\n this.filteredGroupCache = groups\n .map((group: ElementGroup) => ({\n label: group.label,\n options: this.filterOptionsFromGroup(group, search),\n }))\n .filter((group) => group.options.length > 0);\n this.filteredGroups.next(this.filteredGroupCache);\n } else {\n const options = this.element.options as ElementOption[];\n if (!search) {\n this.filteredOptionsCache = options.slice();\n this.filteredOptions.next(this.filteredOptionsCache);\n return;\n }\n // filter the options\n this.filteredOptionsCache = options.filter(\n (option: ElementOption) =>\n option.value.toLowerCase().indexOf(search) > -1\n );\n this.filteredOptions.next(this.filteredOptionsCache);\n }\n }\n\n protected setToggleAllCheckboxState() {\n let filteredLength = 0;\n let search = this.element.search?.formControl?.value;\n\n if (search && search.value) {\n this.filteredOptionsCache.forEach((el) => {\n if (search.value.toLowerCase().indexOf(el) > -1) {\n filteredLength++;\n }\n });\n this.isIndeterminate =\n filteredLength > 0 && filteredLength < this.filteredOptionsCache.length;\n this.isChecked =\n filteredLength > 0 &&\n filteredLength === this.filteredOptionsCache.length;\n }\n }\n\n toggleSelectAll(selectAllValue: boolean) {\n this.filteredOptions.subscribe((options: ElementOption[]) => {\n if (selectAllValue) {\n this.formControl?.patchValue(options);\n } else {\n this.formControl?.patchValue([]);\n }\n });\n this.filteredGroups.subscribe((groups: ElementGroup[]) => {\n if (selectAllValue) {\n this.formControl?.patchValue(\n groups.map((group: ElementGroup) => group.options)\n );\n } else {\n this.formControl?.patchValue([]);\n }\n });\n }\n\n isElementGroup(object: ElementGroup | ElementOption): object is ElementGroup {\n try {\n return (\n (object as ElementGroup).label !== undefined &&\n (object as ElementGroup).options !== undefined\n );\n } catch (e) {\n return false;\n }\n }\n\n compareFn(c1: any, c2: any): boolean {\n return c1 && c2 ? c1.key === c2.key : c1 === c2;\n }\n \n hasValue(): boolean {\n return !!this.formControl.value;\n }\n\n clearValue(event: any): void {\n event.stopPropagation();\n this.formControl.setValue(null);\n }\n}\n","<div *ngIf=\"element\">\n <label *ngIf=\"element.label\" class=\"mapa-dropdown__label\">\n {{ element.label }}\n </label>\n <div class=\"mapa-form--inline\">\n <mat-form-field\n appearance=\"outline\"\n class=\"mapa-dropdown\"\n [class.mapa-dropdown--highlight]=\"border === 'highlight'\"\n [class.mapa-dropdown--soft-border]=\"border === 'soft'\"\n [class.mapa-dropdown--tag]=\"border === 'tag'\"\n [class.mapa-dropdown--labeled]=\"!!element.label\"\n >\n <mat-select\n #dropdown\n ngDefaultControl\n [formControl]=\"formControl\"\n [multiple]=\"element.multiple\"\n [placeholder]=\"element.placeholder || ''\"\n [compareWith]=\"compareFn\"\n >\n <mat-option *ngIf=\"element.search\" class=\"mapa-dropdown__search\">\n <ngx-mat-select-search\n *ngIf=\"element.search.formControl\"\n [showToggleAllCheckbox]=\"true\"\n [formControl]=\"element.search.formControl\"\n [placeholderLabel]=\"element.search.placeholder || ''\"\n i18n-placeholderLabel\n [noEntriesFoundLabel]=\"element.search.noEntriesFoundLabel || ''\"\n [toggleAllCheckboxIndeterminate]=\"isIndeterminate\"\n [toggleAllCheckboxChecked]=\"isChecked\"\n (toggleAll)=\"toggleSelectAll($event)\"\n ></ngx-mat-select-search>\n </mat-option>\n\n <ng-container *ngIf=\"isOptionsGroup; else isElementOptions\">\n <mat-optgroup\n *ngFor=\"let group of filteredGroups | async\"\n [label]=\"group.label\"\n >\n <mat-option *ngFor=\"let option of group.options\" [value]=\"option\">\n {{ option.value }}\n </mat-option>\n </mat-optgroup>\n </ng-container>\n <ng-template #isElementOptions>\n <mat-option\n *ngFor=\"let option of filteredOptions | async\"\n [value]=\"option\"\n >\n {{ option.value }}\n </mat-option>\n </ng-template>\n </mat-select>\n <mat-error *ngIf=\"formControl?.hasError('required')\">\n {{ element.errors?.required }}\n </mat-error>\n <mat-error *ngIf=\"formControl?.hasError('minlength')\">\n {{ element.errors?.minlength }}\n </mat-error>\n <mat-error *ngIf=\"formControl?.hasError('cpf')\">\n {{ element.errors?.cpf }}\n </mat-error>\n <mat-error *ngIf=\"formControl?.hasError('cnpj')\">\n {{ element.errors?.cnpj }}\n </mat-error>\n <mat-error *ngIf=\"formControl?.hasError('email')\">\n {{ element.errors?.email }}\n </mat-error>\n <mat-error *ngIf=\"formControl?.hasError('pattern')\">\n {{ element.errors?.pattern }}\n </mat-error>\n <mat-error *ngIf=\"formControl?.hasError('min')\">\n {{ element.errors?.min }}\n </mat-error>\n <mat-error *ngIf=\"formControl?.hasError('max')\">\n {{ element.errors?.max }}\n </mat-error>\n <mat-error *ngIf=\"formControl?.hasError('minLength')\">\n {{ element.errors?.minLength }}\n </mat-error>\n <mat-error *ngIf=\"formControl?.hasError('maxLength')\">\n {{ element.errors?.maxLength }}\n </mat-error>\n <mat-icon\n *ngIf=\"hasValue() && !formControl.disabled && element.clearValue\"\n (click)=\"clearValue($event)\"\n class=\"mapa-input--close\"\n >close</mat-icon\n >\n </mat-form-field>\n <div *ngIf=\"element.actionButton\" class=\"mapa-form--action\">\n <mapa-button\n color=\"basic\"\n (click)=\"element.actionButton.action.emit(true)\"\n >\n {{ element.actionButton.label }}\n </mapa-button>\n </div>\n </div>\n</div>\n","import {\n Component,\n EventEmitter,\n Input,\n OnInit,\n Output,\n ViewEncapsulation,\n} from \"@angular/core\";\nimport { FormControl } from \"@angular/forms\";\n\nimport { ChartOptions } from \"../../../core/interfaces/chart-options.interface\";\nimport { ElementOption } from \"../../../core/interfaces/element-option.interface\";\n\n@Component({\n selector: \"mapa-chart\",\n templateUrl: \"./chart.component.html\",\n styleUrls: [\"./chart.component.scss\"],\n encapsulation: ViewEncapsulation.None,\n})\nexport class MapaChartComponent implements OnInit {\n @Input() options!: Partial<ChartOptions>;\n\n private colors = [\"#EA561D\", \"#6195FB\", \"#2ED47A\", \"#EEDB2A\"];\n public chartOptions!: Partial<ChartOptions>;\n\n constructor() {}\n\n ngOnInit(): void {\n this.generateChart();\n }\n\n private generateChart(): void {\n if (this.options) {\n this.chartOptions = {\n series: this.options.series,\n chart: {\n height: 500,\n width: \"100%\",\n type: this.options.chart?.type || \"radar\",\n events: {\n beforeMount: (chart) => {\n chart.windowResizeHandler();\n },\n },\n toolbar: {\n show: false,\n },\n },\n stroke: {\n width: 1,\n colors: this.colors,\n },\n fill: {\n opacity: 0.3,\n colors: this.colors,\n },\n markers: {\n size: 2,\n shape: \"circle\",\n colors: this.colors,\n strokeColors: this.colors,\n },\n xaxis: {\n categories: this.options.xaxis?.categories,\n labels: {\n style: {\n colors: new Array(this.options.xaxis?.categories.length).fill(\n \"#666666\"\n ),\n fontSize: \"12px\",\n fontFamily: \"SF-Pro\",\n },\n },\n },\n yaxis: {\n labels: {\n style: {\n colors: \"#9B9B9B\",\n fontSize: \"12px\",\n fontFamily: \"SF-Pro\",\n },\n },\n tickAmount: 10,\n min: 0,\n max: 100,\n },\n legend: {\n position: \"right\",\n horizontalAlign: \"center\",\n height: 500,\n fontSize: \"12px\",\n fontFamily: \"SF-Pro\",\n containerMargin: { left: 30 },\n markers: {\n fillColors: this.colors,\n },\n },\n responsive: [\n {\n breakpoint: 1300,\n options: {\n chart: {\n width: \"100%\",\n height: 550,\n },\n legend: {\n position: \"bottom\",\n horizontalAlign: \"center\",\n height: 100,\n },\n },\n },\n ],\n };\n }\n }\n}\n","<section>\n <div class=\"chart\" *ngIf=\"chartOptions\">\n <div class=\"chart__dropdown\" *ngIf=\"options.dropdown\">\n <mapa-dropdown\n [formControl]=\"options.dropdown.formControl\"\n [element]=\"options.dropdown.element\"\n ></mapa-dropdown>\n </div>\n <apx-chart\n [series]=\"chartOptions.series!\"\n [chart]=\"chartOptions.chart!\"\n [xaxis]=\"chartOptions.xaxis!\"\n [yaxis]=\"chartOptions.yaxis!\"\n [stroke]=\"chartOptions.stroke!\"\n [markers]=\"chartOptions.markers!\"\n [fill]=\"chartOptions.fill!\"\n [title]=\"chartOptions.title!\"\n [legend]=\"chartOptions.legend!\"\n [responsive]=\"chartOptions.responsive!\"width\n ></apx-chart>\n </div>\n</section>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { MatButtonModule } from '@angular/material/button';\n\nimport { ButtonComponent } from './button.component';\n\n@NgModule({\n declarations: [ButtonComponent],\n exports: [ButtonComponent],\n imports: [CommonModule, MatButtonModule],\n})\nexport class MapaButtonModule {}\n","/*\n * Public API Surface of mapa-library-ui button\n */\n\nexport * from './src/button.component';\nexport * from './src/button.module';\n","import { NgModule } from \"@angular/core\";\nimport { CommonModule } from \"@angular/common\";\n\nimport { FormsModule, ReactiveFormsModule } from \"@angular/forms\";\n\nimport { MatListModule } from \"@angular/material/list\";\nimport { MatIconModule } from \"@angular/material/icon\";\n\nimport { MapaDropdownComponent } from \"./dropdown.component\";\nimport { MAT_SELECT_CONFIG, MatSelectModule } from \"@angular/material/select\";\nimport { NgxMatSelectSearchModule } from \"ngx-mat-select-search\";\nimport { MAT_FORM_FIELD_DEFAULT_OPTIONS } from \"@angular/material/form-field\";\nimport { MatButtonModule } from \"@angular/material/button\";\nimport { MapaButtonModule } from \"../../button/public-api\";\n\n@NgModule({\n declarations: [MapaDropdownComponent],\n exports: [MapaDropdownComponent],\n imports: [\n CommonModule,\n FormsModule,\n ReactiveFormsModule,\n MatButtonModule,\n MapaButtonModule,\n MatListModule,\n MatIconModule,\n MatSelectModule,\n NgxMatSelectSearchModule,\n ],\n providers: [\n {\n provide: MAT_SELECT_CONFIG,\n useValue: { overlayPanelClass: \"mapa-overlay-dropdown\" },\n },\n {\n provide: MAT_FORM_FIELD_DEFAULT_OPTIONS,\n useValue: { appearance: \"outline\" },\n },\n ],\n})\nexport class MapaDropdownModule {}\n","/*\n * Public API Surface of mapa-library-ui dropdown\n */\n\nexport * from './src/dropdown.component';\nexport * from './src/dropdown.module';\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { NgApexchartsModule } from 'ng-apexcharts';\n\nimport { MapaChartComponent } from './chart.component';\nimport { MapaDropdownModule } from '../../dropdown/public-api';\n\n@NgModule({\n declarations: [\n MapaChartComponent\n ],\n exports: [\n MapaChartComponent\n ],\n imports: [\n CommonModule,\n NgApexchartsModule,\n MapaDropdownModule,\n ]\n})\nexport class MapaChartModule { }\n","/*\n * Public API Surface of mapa-library-ui chart\n */\n\nexport * from './src/chart.component';\nexport * from './src/chart.module';\n","/*\n * Public API Surface of mapa-library-ui chart\n */\n\nexport * from './lib/components/chart/public-api';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './chart';\n"],"names":["i3.ButtonComponent","i2","i3.MapaDropdownComponent"],"mappings":"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"}
1
+ {"version":3,"file":"mapa-library-ui-src-lib-components-chart.mjs","sources":["../../../projects/mapa-library-ui/src/lib/components/button/src/button.component.ts","../../../projects/mapa-library-ui/src/lib/components/button/src/button.component.html","../../../projects/mapa-library-ui/src/lib/components/dropdown/src/dropdown.component.ts","../../../projects/mapa-library-ui/src/lib/components/dropdown/src/dropdown.component.html","../../../projects/mapa-library-ui/src/lib/components/chart/src/chart.component.ts","../../../projects/mapa-library-ui/src/lib/components/chart/src/chart.component.html","../../../projects/mapa-library-ui/src/lib/components/button/src/button.module.ts","../../../projects/mapa-library-ui/src/lib/components/button/public-api.ts","../../../projects/mapa-library-ui/src/lib/components/dropdown/src/dropdown.module.ts","../../../projects/mapa-library-ui/src/lib/components/dropdown/public-api.ts","../../../projects/mapa-library-ui/src/lib/components/chart/src/chart.module.ts","../../../projects/mapa-library-ui/src/lib/components/chart/public-api.ts","../../../projects/mapa-library-ui/src/chart.ts","../../../projects/mapa-library-ui/src/mapa-library-ui-src-lib-components-chart.ts"],"sourcesContent":["import { Component, EventEmitter, Input, Output } from '@angular/core';\n\n@Component({\n selector: 'mapa-button',\n templateUrl: './button.component.html',\n styleUrls: ['./button.component.scss']\n})\nexport class ButtonComponent {\n @Input() color: 'primary' | 'accent' | 'basic' | null | undefined;\n @Input() disabled!: boolean;\n @Output() clicked: EventEmitter<void> = new EventEmitter<void>();\n\n onClick(): void {\n this.clicked.emit();\n }\n}\n","<button\n class=\"mapa-button\"\n (click)=\"onClick()\"\n [class.primary]=\"color === 'primary'\"\n [class.accent]=\"color === 'accent'\"\n [class.basic]=\"color === 'basic'\"\n [disabled]=\"disabled\"\n>\n <ng-content></ng-content>\n</button> ","import {\n AfterViewInit,\n Component,\n Input,\n OnChanges,\n OnDestroy,\n OnInit,\n SimpleChanges,\n ViewChild,\n ViewEncapsulation,\n} from \"@angular/core\";\nimport { FormControl } from \"@angular/forms\";\n\nimport { MatSelect } from \"@angular/material/select\";\n\nimport { ReplaySubject } from \"rxjs/internal/ReplaySubject\";\nimport { Subject } from \"rxjs/internal/Subject\";\n//import { take, takeUntil } from \"rxjs/operators\";\n\nimport { ElementOption } from \"../../../core/interfaces/element-option.interface\";\nimport { Dropdown } from \"../../../core/elements/dropdown\";\nimport { ElementGroup } from \"../../../core/interfaces/element-group.interface\";\n\n@Component({\n selector: \"mapa-dropdown\",\n templateUrl: \"./dropdown.component.html\",\n styleUrls: [\"./dropdown.component.scss\"],\n encapsulation: ViewEncapsulation.None,\n})\nexport class MapaDropdownComponent implements OnInit, OnDestroy, OnChanges {\n @Input() formControl!: FormControl;\n @Input() formControlSearch!: FormControl;\n @Input() element!: Dropdown;\n @Input() border: \"soft\" | \"tag\" | \"highlight\" | null | undefined;\n\n @ViewChild(\"dropdown\", { static: true }) dropdown!: MatSelect;\n\n public filteredOptions: ReplaySubject<ElementOption[]> = new ReplaySubject<\n ElementOption[]\n >(1);\n public filteredGroups: ReplaySubject<ElementGroup[]> = new ReplaySubject<\n ElementGroup[]\n >(1);\n protected filteredOptionsCache: ElementOption[] = [];\n protected filteredGroupCache: ElementGroup[] = [];\n protected _onDestroy = new Subject<void>();\n\n isIndeterminate = false;\n isChecked = false;\n isOptionsGroup = false;\n\n constructor() {}\n\n ngOnInit() {\n this.setOptions();\n\n if (this.element.search) {\n this.element.search.formControl?.valueChanges\n //.pipe(takeUntil(this._onDestroy))\n .subscribe(() => {\n this.filterOptions();\n this.setToggleAllCheckboxState();\n });\n }\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n if (\n changes[\"element\"].previousValue?.controlType === \"dropdown\" &&\n changes[\"element\"].previousValue?.options !== changes[\"element\"].currentValue?.options\n ) {\n this.element.options = changes[\"element\"].currentValue.options;\n this.setOptions();\n }\n }\n\n ngOnDestroy() {\n this._onDestroy.next();\n this._onDestroy.complete();\n }\n\n setOptions(): void {\n this.isOptionsGroup = this.isElementGroup(this.element.options[0]);\n\n if (this.isOptionsGroup) {\n this.filteredGroupCache = (this.element\n .options as ElementGroup[]).slice();\n this.filteredGroups.next(this.filteredGroupCache);\n } else {\n this.filteredOptionsCache = (this.element\n .options as ElementOption[]).slice();\n this.filteredOptions.next(this.filteredOptionsCache);\n }\n }\n\n protected filterOptionsFromGroup(\n group: ElementGroup,\n value: string\n ): ElementOption[] {\n const filterValue = value.toLocaleLowerCase();\n\n return group.label.toLocaleLowerCase().includes(filterValue)\n ? group.options\n : group.options.filter((item) =>\n item.value.toLocaleLowerCase().includes(filterValue)\n );\n }\n\n protected filterOptions() {\n if (!this.element.options) {\n return;\n }\n // get the search keyword\n let search = this.element.search?.formControl?.value.toLowerCase();\n\n if (this.isOptionsGroup) {\n const groups = this.element.options as ElementGroup[];\n this.filteredGroupCache = groups\n .map((group: ElementGroup) => ({\n label: group.label,\n options: this.filterOptionsFromGroup(group, search),\n }))\n .filter((group) => group.options.length > 0);\n this.filteredGroups.next(this.filteredGroupCache);\n } else {\n const options = this.element.options as ElementOption[];\n if (!search) {\n this.filteredOptionsCache = options.slice();\n this.filteredOptions.next(this.filteredOptionsCache);\n return;\n }\n // filter the options\n this.filteredOptionsCache = options.filter(\n (option: ElementOption) =>\n option.value.toLowerCase().indexOf(search) > -1\n );\n this.filteredOptions.next(this.filteredOptionsCache);\n }\n }\n\n protected setToggleAllCheckboxState() {\n let filteredLength = 0;\n let search = this.element.search?.formControl?.value;\n\n if (search && search.value) {\n this.filteredOptionsCache.forEach((el) => {\n if (search.value.toLowerCase().indexOf(el) > -1) {\n filteredLength++;\n }\n });\n this.isIndeterminate =\n filteredLength > 0 && filteredLength < this.filteredOptionsCache.length;\n this.isChecked =\n filteredLength > 0 &&\n filteredLength === this.filteredOptionsCache.length;\n }\n }\n\n toggleSelectAll(selectAllValue: boolean) {\n this.filteredOptions.subscribe((options: ElementOption[]) => {\n if (selectAllValue) {\n this.formControl?.patchValue(options);\n } else {\n this.formControl?.patchValue([]);\n }\n });\n this.filteredGroups.subscribe((groups: ElementGroup[]) => {\n if (selectAllValue) {\n this.formControl?.patchValue(\n groups.map((group: ElementGroup) => group.options)\n );\n } else {\n this.formControl?.patchValue([]);\n }\n });\n }\n\n isElementGroup(object: ElementGroup | ElementOption): object is ElementGroup {\n try {\n return (\n (object as ElementGroup).label !== undefined &&\n (object as ElementGroup).options !== undefined\n );\n } catch (e) {\n return false;\n }\n }\n\n compareFn(c1: any, c2: any): boolean {\n return c1 && c2 ? c1.key === c2.key : c1 === c2;\n }\n \n hasValue(): boolean {\n return !!this.formControl.value;\n }\n\n clearValue(event: any): void {\n event.stopPropagation();\n this.formControl.setValue(null);\n }\n}\n","<div *ngIf=\"element\">\n <label *ngIf=\"element.label\" class=\"mapa-dropdown__label\">\n {{ element.label }}\n </label>\n <div class=\"mapa-form--inline\">\n <mat-form-field\n appearance=\"outline\"\n class=\"mapa-dropdown\"\n [class.mapa-dropdown--highlight]=\"border === 'highlight'\"\n [class.mapa-dropdown--soft-border]=\"border === 'soft'\"\n [class.mapa-dropdown--tag]=\"border === 'tag'\"\n [class.mapa-dropdown--labeled]=\"!!element.label\"\n >\n <mat-select\n #dropdown\n ngDefaultControl\n [formControl]=\"formControl\"\n [multiple]=\"element.multiple\"\n [placeholder]=\"element.placeholder || ''\"\n [compareWith]=\"compareFn\"\n >\n <mat-option *ngIf=\"element.search\" class=\"mapa-dropdown__search\">\n <ngx-mat-select-search\n *ngIf=\"element.search.formControl\"\n [showToggleAllCheckbox]=\"true\"\n [formControl]=\"element.search.formControl\"\n [placeholderLabel]=\"element.search.placeholder || ''\"\n i18n-placeholderLabel\n [noEntriesFoundLabel]=\"element.search.noEntriesFoundLabel || ''\"\n [toggleAllCheckboxIndeterminate]=\"isIndeterminate\"\n [toggleAllCheckboxChecked]=\"isChecked\"\n (toggleAll)=\"toggleSelectAll($event)\"\n ></ngx-mat-select-search>\n </mat-option>\n\n <ng-container *ngIf=\"isOptionsGroup; else isElementOptions\">\n <mat-optgroup\n *ngFor=\"let group of filteredGroups | async\"\n [label]=\"group.label\"\n >\n <mat-option *ngFor=\"let option of group.options\" [value]=\"option\">\n {{ option.value }}\n </mat-option>\n </mat-optgroup>\n </ng-container>\n <ng-template #isElementOptions>\n <mat-option\n *ngFor=\"let option of filteredOptions | async\"\n [value]=\"option\"\n >\n {{ option.value }}\n </mat-option>\n </ng-template>\n </mat-select>\n <mat-error *ngIf=\"formControl?.hasError('required')\">\n {{ element.errors?.required }}\n </mat-error>\n <mat-error *ngIf=\"formControl?.hasError('minlength')\">\n {{ element.errors?.minlength }}\n </mat-error>\n <mat-error *ngIf=\"formControl?.hasError('cpf')\">\n {{ element.errors?.cpf }}\n </mat-error>\n <mat-error *ngIf=\"formControl?.hasError('cnpj')\">\n {{ element.errors?.cnpj }}\n </mat-error>\n <mat-error *ngIf=\"formControl?.hasError('email')\">\n {{ element.errors?.email }}\n </mat-error>\n <mat-error *ngIf=\"formControl?.hasError('pattern')\">\n {{ element.errors?.pattern }}\n </mat-error>\n <mat-error *ngIf=\"formControl?.hasError('min')\">\n {{ element.errors?.min }}\n </mat-error>\n <mat-error *ngIf=\"formControl?.hasError('max')\">\n {{ element.errors?.max }}\n </mat-error>\n <mat-error *ngIf=\"formControl?.hasError('minLength')\">\n {{ element.errors?.minLength }}\n </mat-error>\n <mat-error *ngIf=\"formControl?.hasError('maxLength')\">\n {{ element.errors?.maxLength }}\n </mat-error>\n <mat-icon\n *ngIf=\"hasValue() && !formControl.disabled && element.clearValue\"\n (click)=\"clearValue($event)\"\n class=\"mapa-input--close\"\n >close</mat-icon\n >\n </mat-form-field>\n <div *ngIf=\"element.actionButton\" class=\"mapa-form--action\">\n <mapa-button\n color=\"basic\"\n (click)=\"element.actionButton.action.emit(true)\"\n >\n {{ element.actionButton.label }}\n </mapa-button>\n </div>\n </div>\n</div>\n","import {\n Component,\n EventEmitter,\n Input,\n OnInit,\n Output,\n ViewEncapsulation,\n} from \"@angular/core\";\nimport { FormControl } from \"@angular/forms\";\n\nimport { ChartOptions } from \"../../../core/interfaces/chart-options.interface\";\nimport { ElementOption } from \"../../../core/interfaces/element-option.interface\";\n\n@Component({\n selector: \"mapa-chart\",\n templateUrl: \"./chart.component.html\",\n styleUrls: [\"./chart.component.scss\"],\n encapsulation: ViewEncapsulation.None,\n})\nexport class MapaChartComponent implements OnInit {\n @Input() options!: Partial<ChartOptions>;\n\n private colors = [\"#EA561D\", \"#6195FB\", \"#2ED47A\", \"#EEDB2A\"];\n public chartOptions!: Partial<ChartOptions>;\n\n constructor() {}\n\n ngOnInit(): void {\n this.generateChart();\n }\n\n private generateChart(): void {\n if (this.options) {\n this.chartOptions = {\n series: this.options.series,\n chart: {\n height: 500,\n width: \"100%\",\n type: this.options.chart?.type || \"radar\",\n events: {\n beforeMount: (chart) => {\n chart.windowResizeHandler();\n },\n },\n toolbar: {\n show: false,\n },\n },\n stroke: {\n width: 1,\n colors: this.colors,\n },\n fill: {\n opacity: 0.3,\n colors: this.colors,\n },\n markers: {\n size: 2,\n shape: \"circle\",\n colors: this.colors,\n strokeColors: this.colors,\n },\n xaxis: {\n categories: this.options.xaxis?.categories,\n labels: {\n style: {\n colors: new Array(this.options.xaxis?.categories.length).fill(\n \"#666666\"\n ),\n fontSize: \"12px\",\n fontFamily: \"SF-Pro\",\n },\n },\n },\n yaxis: {\n labels: {\n style: {\n colors: \"#9B9B9B\",\n fontSize: \"12px\",\n fontFamily: \"SF-Pro\",\n },\n },\n tickAmount: 10,\n min: 0,\n max: 100,\n },\n legend: {\n position: \"right\",\n horizontalAlign: \"center\",\n height: 500,\n fontSize: \"12px\",\n fontFamily: \"SF-Pro\",\n containerMargin: { left: 30 },\n markers: {\n fillColors: this.colors,\n },\n },\n responsive: [\n {\n breakpoint: 1300,\n options: {\n chart: {\n width: \"100%\",\n height: 550,\n },\n legend: {\n position: \"bottom\",\n horizontalAlign: \"center\",\n height: 100,\n },\n },\n },\n ],\n };\n }\n }\n}\n","<section>\n <div class=\"chart\" *ngIf=\"chartOptions\">\n <div class=\"chart__dropdown\" *ngIf=\"options.dropdown\">\n <mapa-dropdown\n [formControl]=\"options.dropdown.formControl\"\n [element]=\"options.dropdown.element\"\n ></mapa-dropdown>\n </div>\n <apx-chart\n [series]=\"chartOptions.series!\"\n [chart]=\"chartOptions.chart!\"\n [xaxis]=\"chartOptions.xaxis!\"\n [yaxis]=\"chartOptions.yaxis!\"\n [stroke]=\"chartOptions.stroke!\"\n [markers]=\"chartOptions.markers!\"\n [fill]=\"chartOptions.fill!\"\n [title]=\"chartOptions.title!\"\n [legend]=\"chartOptions.legend!\"\n [responsive]=\"chartOptions.responsive!\"width\n ></apx-chart>\n </div>\n</section>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { MatButtonModule } from '@angular/material/button';\n\nimport { ButtonComponent } from './button.component';\n\n@NgModule({\n declarations: [ButtonComponent],\n exports: [ButtonComponent],\n imports: [CommonModule, MatButtonModule],\n})\nexport class MapaButtonModule {}\n","/*\n * Public API Surface of mapa-library-ui button\n */\n\nexport * from './src/button.component';\nexport * from './src/button.module';\n","import { NgModule } from \"@angular/core\";\nimport { CommonModule } from \"@angular/common\";\n\nimport { FormsModule, ReactiveFormsModule } from \"@angular/forms\";\n\nimport { MatListModule } from \"@angular/material/list\";\nimport { MatIconModule } from \"@angular/material/icon\";\n\nimport { MapaDropdownComponent } from \"./dropdown.component\";\nimport { MAT_SELECT_CONFIG, MatSelectModule } from \"@angular/material/select\";\nimport { NgxMatSelectSearchModule } from \"ngx-mat-select-search\";\nimport { MAT_FORM_FIELD_DEFAULT_OPTIONS } from \"@angular/material/form-field\";\nimport { MatButtonModule } from \"@angular/material/button\";\nimport { MapaButtonModule } from \"../../button/public-api\";\n\n@NgModule({\n declarations: [MapaDropdownComponent],\n exports: [MapaDropdownComponent],\n imports: [\n CommonModule,\n FormsModule,\n ReactiveFormsModule,\n MatButtonModule,\n MapaButtonModule,\n MatListModule,\n MatIconModule,\n MatSelectModule,\n NgxMatSelectSearchModule,\n ],\n providers: [\n {\n provide: MAT_SELECT_CONFIG,\n useValue: { overlayPanelClass: \"mapa-overlay-dropdown\" },\n },\n {\n provide: MAT_FORM_FIELD_DEFAULT_OPTIONS,\n useValue: { appearance: \"outline\" },\n },\n ],\n})\nexport class MapaDropdownModule {}\n","/*\n * Public API Surface of mapa-library-ui dropdown\n */\n\nexport * from './src/dropdown.component';\nexport * from './src/dropdown.module';\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { NgApexchartsModule } from 'ng-apexcharts';\n\nimport { MapaChartComponent } from './chart.component';\nimport { MapaDropdownModule } from '../../dropdown/public-api';\n\n@NgModule({\n declarations: [\n MapaChartComponent\n ],\n exports: [\n MapaChartComponent\n ],\n imports: [\n CommonModule,\n NgApexchartsModule,\n MapaDropdownModule,\n ]\n})\nexport class MapaChartModule { }\n","/*\n * Public API Surface of mapa-library-ui chart\n */\n\nexport * from './src/chart.component';\nexport * from './src/chart.module';\n","/*\n * Public API Surface of mapa-library-ui chart\n */\n\nexport * from './lib/components/chart/public-api';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './chart';\n"],"names":["i3.ButtonComponent","i2","i3.MapaDropdownComponent"],"mappings":";;;;;;;;;;;;;;;;;;;;;;MAOa,eAAe,CAAA;AAL5B,IAAA,WAAA,GAAA;AAQY,QAAA,IAAA,CAAA,OAAO,GAAuB,IAAI,YAAY,EAAQ,CAAC;AAKlE,KAAA;IAHC,OAAO,GAAA;AACL,QAAA,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;KACrB;;6GAPU,eAAe,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAf,eAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,eAAe,sICP5B,8PASW,EAAA,MAAA,EAAA,CAAA,ujBAAA,CAAA,EAAA,CAAA,CAAA;4FDFE,eAAe,EAAA,UAAA,EAAA,CAAA;kBAL3B,SAAS;+BACE,aAAa,EAAA,QAAA,EAAA,8PAAA,EAAA,MAAA,EAAA,CAAA,ujBAAA,CAAA,EAAA,CAAA;8BAKd,KAAK,EAAA,CAAA;sBAAb,KAAK;gBACG,QAAQ,EAAA,CAAA;sBAAhB,KAAK;gBACI,OAAO,EAAA,CAAA;sBAAhB,MAAM;;;MEmBI,qBAAqB,CAAA;AAsBhC,IAAA,WAAA,GAAA;AAdO,QAAA,IAAA,CAAA,eAAe,GAAmC,IAAI,aAAa,CAExE,CAAC,CAAC,CAAC;AACE,QAAA,IAAA,CAAA,cAAc,GAAkC,IAAI,aAAa,CAEtE,CAAC,CAAC,CAAC;QACK,IAAoB,CAAA,oBAAA,GAAoB,EAAE,CAAC;QAC3C,IAAkB,CAAA,kBAAA,GAAmB,EAAE,CAAC;AACxC,QAAA,IAAA,CAAA,UAAU,GAAG,IAAI,OAAO,EAAQ,CAAC;QAE3C,IAAe,CAAA,eAAA,GAAG,KAAK,CAAC;QACxB,IAAS,CAAA,SAAA,GAAG,KAAK,CAAC;QAClB,IAAc,CAAA,cAAA,GAAG,KAAK,CAAC;KAEP;IAEhB,QAAQ,GAAA;QACN,IAAI,CAAC,UAAU,EAAE,CAAC;AAElB,QAAA,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE;AACvB,YAAA,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW,EAAE,YAAY;;iBAE1C,SAAS,CAAC,MAAK;gBACd,IAAI,CAAC,aAAa,EAAE,CAAC;gBACrB,IAAI,CAAC,yBAAyB,EAAE,CAAC;AACnC,aAAC,CAAC,CAAC;AACN,SAAA;KACF;AAED,IAAA,WAAW,CAAC,OAAsB,EAAA;QAChC,IACE,OAAO,CAAC,SAAS,CAAC,CAAC,aAAa,EAAE,WAAW,KAAK,UAAU;AAC5D,YAAA,OAAO,CAAC,SAAS,CAAC,CAAC,aAAa,EAAE,OAAO,KAAK,OAAO,CAAC,SAAS,CAAC,CAAC,YAAY,EAAE,OAAO,EACtF;AACA,YAAA,IAAI,CAAC,OAAO,CAAC,OAAO,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC;YAC/D,IAAI,CAAC,UAAU,EAAE,CAAC;AACnB,SAAA;KACF;IAED,WAAW,GAAA;AACT,QAAA,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC;AACvB,QAAA,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC;KAC5B;IAED,UAAU,GAAA;AACR,QAAA,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;QAEnE,IAAI,IAAI,CAAC,cAAc,EAAE;AACvB,YAAA,IAAI,CAAC,kBAAkB,GAAI,IAAI,CAAC,OAAO;iBACpC,OAA0B,CAAC,KAAK,EAAE,CAAC;YACtC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;AACnD,SAAA;AAAM,aAAA;AACL,YAAA,IAAI,CAAC,oBAAoB,GAAI,IAAI,CAAC,OAAO;iBACtC,OAA2B,CAAC,KAAK,EAAE,CAAC;YACvC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;AACtD,SAAA;KACF;IAES,sBAAsB,CAC9B,KAAmB,EACnB,KAAa,EAAA;AAEb,QAAA,MAAM,WAAW,GAAG,KAAK,CAAC,iBAAiB,EAAE,CAAC;QAE9C,OAAO,KAAK,CAAC,KAAK,CAAC,iBAAiB,EAAE,CAAC,QAAQ,CAAC,WAAW,CAAC;cACxD,KAAK,CAAC,OAAO;cACb,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,IAAI,KACxB,IAAI,CAAC,KAAK,CAAC,iBAAiB,EAAE,CAAC,QAAQ,CAAC,WAAW,CAAC,CACrD,CAAC;KACP;IAES,aAAa,GAAA;AACrB,QAAA,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE;YACzB,OAAO;AACR,SAAA;;AAED,QAAA,IAAI,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,WAAW,EAAE,KAAK,CAAC,WAAW,EAAE,CAAC;QAEnE,IAAI,IAAI,CAAC,cAAc,EAAE;AACvB,YAAA,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,OAAyB,CAAC;YACtD,IAAI,CAAC,kBAAkB,GAAG,MAAM;AAC7B,iBAAA,GAAG,CAAC,CAAC,KAAmB,MAAM;gBAC7B,KAAK,EAAE,KAAK,CAAC,KAAK;gBAClB,OAAO,EAAE,IAAI,CAAC,sBAAsB,CAAC,KAAK,EAAE,MAAM,CAAC;AACpD,aAAA,CAAC,CAAC;AACF,iBAAA,MAAM,CAAC,CAAC,KAAK,KAAK,KAAK,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;YAC/C,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;AACnD,SAAA;AAAM,aAAA;AACL,YAAA,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,OAA0B,CAAC;YACxD,IAAI,CAAC,MAAM,EAAE;AACX,gBAAA,IAAI,CAAC,oBAAoB,GAAG,OAAO,CAAC,KAAK,EAAE,CAAC;gBAC5C,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;gBACrD,OAAO;AACR,aAAA;;YAED,IAAI,CAAC,oBAAoB,GAAG,OAAO,CAAC,MAAM,CACxC,CAAC,MAAqB,KACpB,MAAM,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAClD,CAAC;YACF,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;AACtD,SAAA;KACF;IAES,yBAAyB,GAAA;QACjC,IAAI,cAAc,GAAG,CAAC,CAAC;QACvB,IAAI,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,WAAW,EAAE,KAAK,CAAC;AAErD,QAAA,IAAI,MAAM,IAAI,MAAM,CAAC,KAAK,EAAE;YAC1B,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC,EAAE,KAAI;AACvC,gBAAA,IAAI,MAAM,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE;AAC/C,oBAAA,cAAc,EAAE,CAAC;AAClB,iBAAA;AACH,aAAC,CAAC,CAAC;AACH,YAAA,IAAI,CAAC,eAAe;gBAClB,cAAc,GAAG,CAAC,IAAI,cAAc,GAAG,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC;AAC1E,YAAA,IAAI,CAAC,SAAS;AACZ,gBAAA,cAAc,GAAG,CAAC;AAClB,oBAAA,cAAc,KAAK,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC;AACvD,SAAA;KACF;AAED,IAAA,eAAe,CAAC,cAAuB,EAAA;QACrC,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC,OAAwB,KAAI;AAC1D,YAAA,IAAI,cAAc,EAAE;AAClB,gBAAA,IAAI,CAAC,WAAW,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC;AACvC,aAAA;AAAM,iBAAA;AACL,gBAAA,IAAI,CAAC,WAAW,EAAE,UAAU,CAAC,EAAE,CAAC,CAAC;AAClC,aAAA;AACH,SAAC,CAAC,CAAC;QACH,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC,MAAsB,KAAI;AACvD,YAAA,IAAI,cAAc,EAAE;AAClB,gBAAA,IAAI,CAAC,WAAW,EAAE,UAAU,CAC1B,MAAM,CAAC,GAAG,CAAC,CAAC,KAAmB,KAAK,KAAK,CAAC,OAAO,CAAC,CACnD,CAAC;AACH,aAAA;AAAM,iBAAA;AACL,gBAAA,IAAI,CAAC,WAAW,EAAE,UAAU,CAAC,EAAE,CAAC,CAAC;AAClC,aAAA;AACH,SAAC,CAAC,CAAC;KACJ;AAED,IAAA,cAAc,CAAC,MAAoC,EAAA;QACjD,IAAI;AACF,YAAA,QACG,MAAuB,CAAC,KAAK,KAAK,SAAS;AAC3C,gBAAA,MAAuB,CAAC,OAAO,KAAK,SAAS,EAC9C;AACH,SAAA;AAAC,QAAA,OAAO,CAAC,EAAE;AACV,YAAA,OAAO,KAAK,CAAC;AACd,SAAA;KACF;IAED,SAAS,CAAC,EAAO,EAAE,EAAO,EAAA;AACxB,QAAA,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,GAAG,GAAG,EAAE,KAAK,EAAE,CAAC;KACjD;IAED,QAAQ,GAAA;AACN,QAAA,OAAO,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC;KACjC;AAED,IAAA,UAAU,CAAC,KAAU,EAAA;QACnB,KAAK,CAAC,eAAe,EAAE,CAAC;AACxB,QAAA,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;KACjC;;mHA1KU,qBAAqB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAArB,qBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,qBAAqB,oTC7BlC,2tHAqGA,EAAA,MAAA,EAAA,CAAA,86IAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,cAAA,EAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,oBAAA,EAAA,QAAA,EAAA,8MAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,eAAA,EAAA,QAAA,EAAA,2CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,oBAAA,EAAA,QAAA,EAAA,eAAA,EAAA,MAAA,EAAA,CAAA,aAAA,EAAA,UAAA,EAAA,SAAA,CAAA,EAAA,OAAA,EAAA,CAAA,eAAA,CAAA,EAAA,QAAA,EAAA,CAAA,QAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,eAAA,EAAA,QAAA,EAAA,aAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,UAAA,CAAA,EAAA,OAAA,EAAA,CAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,UAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,SAAA,EAAA,SAAA,EAAA,UAAA,CAAA,EAAA,QAAA,EAAA,CAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,QAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,IAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,YAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,YAAA,EAAA,oBAAA,EAAA,WAAA,EAAA,YAAA,CAAA,EAAA,QAAA,EAAA,CAAA,cAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,SAAA,EAAA,QAAA,EAAA,YAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,eAAA,EAAA,UAAA,CAAA,EAAA,QAAA,EAAA,CAAA,WAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,SAAA,EAAA,QAAA,EAAA,YAAA,EAAA,QAAA,EAAA,CAAA,WAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,WAAA,EAAA,QAAA,EAAA,cAAA,EAAA,MAAA,EAAA,CAAA,UAAA,CAAA,EAAA,QAAA,EAAA,CAAA,aAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,wBAAA,EAAA,QAAA,EAAA,uBAAA,EAAA,MAAA,EAAA,CAAA,kBAAA,EAAA,MAAA,EAAA,WAAA,EAAA,cAAA,EAAA,qBAAA,EAAA,kBAAA,EAAA,WAAA,EAAA,qBAAA,EAAA,4BAAA,EAAA,8BAAA,EAAA,uCAAA,EAAA,WAAA,EAAA,uBAAA,EAAA,0BAAA,EAAA,gCAAA,EAAA,iCAAA,EAAA,kCAAA,EAAA,uBAAA,EAAA,mCAAA,CAAA,EAAA,OAAA,EAAA,CAAA,WAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,EAAA,CAAA,SAAA,EAAA,IAAA,EAAA,OAAA,EAAA,CAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;4FDxEa,qBAAqB,EAAA,UAAA,EAAA,CAAA;kBANjC,SAAS;+BACE,eAAe,EAAA,aAAA,EAGV,iBAAiB,CAAC,IAAI,EAAA,QAAA,EAAA,2tHAAA,EAAA,MAAA,EAAA,CAAA,86IAAA,CAAA,EAAA,CAAA;0EAG5B,WAAW,EAAA,CAAA;sBAAnB,KAAK;gBACG,iBAAiB,EAAA,CAAA;sBAAzB,KAAK;gBACG,OAAO,EAAA,CAAA;sBAAf,KAAK;gBACG,MAAM,EAAA,CAAA;sBAAd,KAAK;gBAEmC,QAAQ,EAAA,CAAA;sBAAhD,SAAS;AAAC,gBAAA,IAAA,EAAA,CAAA,UAAU,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAA;;;MEhB5B,kBAAkB,CAAA;AAM7B,IAAA,WAAA,GAAA;QAHQ,IAAM,CAAA,MAAA,GAAG,CAAC,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;KAG9C;IAEhB,QAAQ,GAAA;QACN,IAAI,CAAC,aAAa,EAAE,CAAC;KACtB;IAEO,aAAa,GAAA;QACnB,IAAI,IAAI,CAAC,OAAO,EAAE;YAChB,IAAI,CAAC,YAAY,GAAG;AAClB,gBAAA,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM;AAC3B,gBAAA,KAAK,EAAE;AACL,oBAAA,MAAM,EAAE,GAAG;AACX,oBAAA,KAAK,EAAE,MAAM;oBACb,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,IAAI,IAAI,OAAO;AACzC,oBAAA,MAAM,EAAE;AACN,wBAAA,WAAW,EAAE,CAAC,KAAK,KAAI;4BACrB,KAAK,CAAC,mBAAmB,EAAE,CAAC;yBAC7B;AACF,qBAAA;AACD,oBAAA,OAAO,EAAE;AACP,wBAAA,IAAI,EAAE,KAAK;AACZ,qBAAA;AACF,iBAAA;AACD,gBAAA,MAAM,EAAE;AACN,oBAAA,KAAK,EAAE,CAAC;oBACR,MAAM,EAAE,IAAI,CAAC,MAAM;AACpB,iBAAA;AACD,gBAAA,IAAI,EAAE;AACJ,oBAAA,OAAO,EAAE,GAAG;oBACZ,MAAM,EAAE,IAAI,CAAC,MAAM;AACpB,iBAAA;AACD,gBAAA,OAAO,EAAE;AACP,oBAAA,IAAI,EAAE,CAAC;AACP,oBAAA,KAAK,EAAE,QAAQ;oBACf,MAAM,EAAE,IAAI,CAAC,MAAM;oBACnB,YAAY,EAAE,IAAI,CAAC,MAAM;AAC1B,iBAAA;AACD,gBAAA,KAAK,EAAE;AACL,oBAAA,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,UAAU;AAC1C,oBAAA,MAAM,EAAE;AACN,wBAAA,KAAK,EAAE;AACL,4BAAA,MAAM,EAAE,IAAI,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC,IAAI,CAC3D,SAAS,CACV;AACD,4BAAA,QAAQ,EAAE,MAAM;AAChB,4BAAA,UAAU,EAAE,QAAQ;AACrB,yBAAA;AACF,qBAAA;AACF,iBAAA;AACD,gBAAA,KAAK,EAAE;AACL,oBAAA,MAAM,EAAE;AACN,wBAAA,KAAK,EAAE;AACL,4BAAA,MAAM,EAAE,SAAS;AACjB,4BAAA,QAAQ,EAAE,MAAM;AAChB,4BAAA,UAAU,EAAE,QAAQ;AACrB,yBAAA;AACF,qBAAA;AACD,oBAAA,UAAU,EAAE,EAAE;AACd,oBAAA,GAAG,EAAE,CAAC;AACN,oBAAA,GAAG,EAAE,GAAG;AACT,iBAAA;AACD,gBAAA,MAAM,EAAE;AACN,oBAAA,QAAQ,EAAE,OAAO;AACjB,oBAAA,eAAe,EAAE,QAAQ;AACzB,oBAAA,MAAM,EAAE,GAAG;AACX,oBAAA,QAAQ,EAAE,MAAM;AAChB,oBAAA,UAAU,EAAE,QAAQ;AACpB,oBAAA,eAAe,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE;AAC7B,oBAAA,OAAO,EAAE;wBACP,UAAU,EAAE,IAAI,CAAC,MAAM;AACxB,qBAAA;AACF,iBAAA;AACD,gBAAA,UAAU,EAAE;AACV,oBAAA;AACE,wBAAA,UAAU,EAAE,IAAI;AAChB,wBAAA,OAAO,EAAE;AACP,4BAAA,KAAK,EAAE;AACL,gCAAA,KAAK,EAAE,MAAM;AACb,gCAAA,MAAM,EAAE,GAAG;AACZ,6BAAA;AACD,4BAAA,MAAM,EAAE;AACN,gCAAA,QAAQ,EAAE,QAAQ;AAClB,gCAAA,eAAe,EAAE,QAAQ;AACzB,gCAAA,MAAM,EAAE,GAAG;AACZ,6BAAA;AACF,yBAAA;AACF,qBAAA;AACF,iBAAA;aACF,CAAC;AACH,SAAA;KACF;;gHAhGU,kBAAkB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAlB,kBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,kBAAkB,kFCnB/B,svBAsBA,EAAA,MAAA,EAAA,CAAA,gRAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,IAAA,CAAA,cAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,aAAA,EAAA,QAAA,EAAA,YAAA,EAAA,QAAA,EAAA,QAAA,EAAA,QAAA,EAAA,QAAA,EAAA,SAAA,EAAA,QAAA,EAAA,MAAA,EAAA,SAAA,EAAA,aAAA,EAAA,YAAA,EAAA,OAAA,EAAA,OAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,QAAA,EAAA,OAAA,EAAA,UAAA,EAAA,OAAA,EAAA,kBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,qBAAA,EAAA,QAAA,EAAA,eAAA,EAAA,MAAA,EAAA,CAAA,aAAA,EAAA,mBAAA,EAAA,SAAA,EAAA,QAAA,CAAA,EAAA,CAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;4FDHa,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAN9B,SAAS;+BACE,YAAY,EAAA,aAAA,EAGP,iBAAiB,CAAC,IAAI,EAAA,QAAA,EAAA,svBAAA,EAAA,MAAA,EAAA,CAAA,gRAAA,CAAA,EAAA,CAAA;0EAG5B,OAAO,EAAA,CAAA;sBAAf,KAAK;;;MERK,gBAAgB,CAAA;;8GAAhB,gBAAgB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAhB,gBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,gBAAgB,iBAJZ,eAAe,CAAA,EAAA,OAAA,EAAA,CAEpB,YAAY,EAAE,eAAe,aAD7B,eAAe,CAAA,EAAA,CAAA,CAAA;+GAGd,gBAAgB,EAAA,OAAA,EAAA,CAFjB,YAAY,EAAE,eAAe,CAAA,EAAA,CAAA,CAAA;4FAE5B,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAL5B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACR,YAAY,EAAE,CAAC,eAAe,CAAC;oBAC/B,OAAO,EAAE,CAAC,eAAe,CAAC;AAC1B,oBAAA,OAAO,EAAE,CAAC,YAAY,EAAE,eAAe,CAAC;AACzC,iBAAA,CAAA;;;ACXD;;AAEG;;MCsCU,kBAAkB,CAAA;;gHAAlB,kBAAkB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;iHAAlB,kBAAkB,EAAA,YAAA,EAAA,CAxBd,qBAAqB,CAAA,EAAA,OAAA,EAAA,CAGlC,YAAY;QACZ,WAAW;QACX,mBAAmB;QACnB,eAAe;QACf,gBAAgB;QAChB,aAAa;QACb,aAAa;QACb,eAAe;AACf,QAAA,wBAAwB,aAVhB,qBAAqB,CAAA,EAAA,CAAA,CAAA;AAuBpB,kBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,kBAAkB,EAXlB,SAAA,EAAA;AACT,QAAA;AACE,YAAA,OAAO,EAAE,iBAAiB;AAC1B,YAAA,QAAQ,EAAE,EAAE,iBAAiB,EAAE,uBAAuB,EAAE;AACzD,SAAA;AACD,QAAA;AACE,YAAA,OAAO,EAAE,8BAA8B;AACvC,YAAA,QAAQ,EAAE,EAAE,UAAU,EAAE,SAAS,EAAE;AACpC,SAAA;AACF,KAAA,EAAA,OAAA,EAAA,CAnBC,YAAY;QACZ,WAAW;QACX,mBAAmB;QACnB,eAAe;QACf,gBAAgB;QAChB,aAAa;QACb,aAAa;QACb,eAAe;QACf,wBAAwB,CAAA,EAAA,CAAA,CAAA;4FAaf,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAzB9B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACR,YAAY,EAAE,CAAC,qBAAqB,CAAC;oBACrC,OAAO,EAAE,CAAC,qBAAqB,CAAC;AAChC,oBAAA,OAAO,EAAE;wBACP,YAAY;wBACZ,WAAW;wBACX,mBAAmB;wBACnB,eAAe;wBACf,gBAAgB;wBAChB,aAAa;wBACb,aAAa;wBACb,eAAe;wBACf,wBAAwB;AACzB,qBAAA;AACD,oBAAA,SAAS,EAAE;AACT,wBAAA;AACE,4BAAA,OAAO,EAAE,iBAAiB;AAC1B,4BAAA,QAAQ,EAAE,EAAE,iBAAiB,EAAE,uBAAuB,EAAE;AACzD,yBAAA;AACD,wBAAA;AACE,4BAAA,OAAO,EAAE,8BAA8B;AACvC,4BAAA,QAAQ,EAAE,EAAE,UAAU,EAAE,SAAS,EAAE;AACpC,yBAAA;AACF,qBAAA;AACF,iBAAA,CAAA;;;ACvCD;;AAEG;;MCmBU,eAAe,CAAA;;6GAAf,eAAe,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;8GAAf,eAAe,EAAA,YAAA,EAAA,CAXxB,kBAAkB,CAAA,EAAA,OAAA,EAAA,CAMlB,YAAY;QACZ,kBAAkB;AAClB,QAAA,kBAAkB,aALlB,kBAAkB,CAAA,EAAA,CAAA,CAAA;AAQT,eAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,eAAe,YALxB,YAAY;QACZ,kBAAkB;QAClB,kBAAkB,CAAA,EAAA,CAAA,CAAA;4FAGT,eAAe,EAAA,UAAA,EAAA,CAAA;kBAb3B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,YAAY,EAAE;wBACZ,kBAAkB;AACnB,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACP,kBAAkB;AACnB,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACP,YAAY;wBACZ,kBAAkB;wBAClB,kBAAkB;AACnB,qBAAA;AACF,iBAAA,CAAA;;;ACpBD;;AAEG;;ACFH;;AAEG;;ACFH;;AAEG;;;;"}
@@ -133,7 +133,7 @@ class MapaDropdownComponent {
133
133
  return;
134
134
  }
135
135
  // get the search keyword
136
- let search = this.element.search?.formControl?.value;
136
+ let search = this.element.search?.formControl?.value.toLowerCase();
137
137
  if (this.isOptionsGroup) {
138
138
  const groups = this.element.options;
139
139
  this.filteredGroupCache = groups
@@ -1 +1 @@
1
- {"version":3,"file":"mapa-library-ui-src-lib-components-dropdown.mjs","sources":["../../../projects/mapa-library-ui/src/lib/core/elements/element-base.ts","../../../projects/mapa-library-ui/src/lib/core/elements/dropdown.ts","../../../projects/mapa-library-ui/src/lib/components/button/src/button.component.ts","../../../projects/mapa-library-ui/src/lib/components/button/src/button.component.html","../../../projects/mapa-library-ui/src/lib/components/dropdown/src/dropdown.component.ts","../../../projects/mapa-library-ui/src/lib/components/dropdown/src/dropdown.component.html","../../../projects/mapa-library-ui/src/lib/components/button/src/button.module.ts","../../../projects/mapa-library-ui/src/lib/components/button/public-api.ts","../../../projects/mapa-library-ui/src/lib/components/dropdown/src/dropdown.module.ts","../../../projects/mapa-library-ui/src/lib/components/dropdown/public-api.ts","../../../projects/mapa-library-ui/src/dropdown.ts","../../../projects/mapa-library-ui/src/mapa-library-ui-src-lib-components-dropdown.ts"],"sourcesContent":["import { ElementGroup } from \"../interfaces/element-group.interface\";\nimport { ElementOption } from \"../interfaces/element-option.interface\";\nimport { ActionButton } from \"./action-button\";\nimport { ElementSearch } from \"./element-search\";\nimport { Errors } from \"./errors\";\n\nexport class ElementBase {\n value: string;\n key: string;\n label: string;\n required: boolean;\n order: number;\n controlType: string;\n type: string;\n placeholder?: string;\n hint?: string;\n prefix?: string;\n suffix?: string;\n autosize?: boolean;\n autosizeMinWidth?: string;\n autosizeMaxWidth?: string;\n autosizeMinRow?: number;\n autosizeMaxRow?: number;\n options: ElementOption[] | ElementGroup[];\n multiple?: boolean;\n search?: ElementSearch;\n maxLength!: string | number | null;\n errors?: Errors;\n actionButton?: ActionButton;\n mask?: string;\n autocomplete?: string;\n clearValue?: boolean;\n\n constructor(\n options: {\n value?: string;\n key?: string;\n label?: string;\n required?: boolean;\n order?: number;\n controlType?: string;\n type?: string;\n placeholder?: string;\n hint?: string;\n prefix?: string;\n suffix?: string;\n autosize?: boolean;\n autosizeMinWidth?: string;\n autosizeMaxWidth?: string;\n autosizeMinRow?: number;\n autosizeMaxRow?: number;\n options?: ElementOption[] | ElementGroup[];\n multiple?: boolean;\n search?: ElementSearch;\n maxLength?: string | number | null;\n errors?: Errors;\n actionButton?: ActionButton;\n mask?: string;\n autocomplete?: string;\n clearValue?: boolean;\n } = {}\n ) {\n this.value = options.value || \"\";\n this.key = options.key || \"\";\n this.label = options.label || \"\";\n this.required = !!options.required;\n this.order = options.order === undefined ? 1 : options.order;\n this.controlType = options.controlType || \"\";\n this.type = options.type || \"\";\n this.placeholder = options.placeholder || \"\";\n this.hint = options.hint || \"\";\n this.prefix = options.prefix || \"\";\n this.suffix = options.suffix || \"\";\n this.autosize = options.autosize || false;\n this.autosizeMinWidth = options.autosizeMinWidth || \"212px\";\n this.autosizeMaxWidth = options.autosizeMaxWidth || \"400px\";\n this.autosizeMinRow = options.autosizeMinRow || 2;\n this.autosizeMaxRow = options.autosizeMaxRow || 5;\n this.options = options.options || [];\n this.multiple = options.multiple || false;\n this.search = options.search || undefined;\n this.maxLength = options.maxLength || null;\n this.errors = options.errors || undefined;\n this.actionButton = options.actionButton || undefined;\n this.mask = options.mask || undefined;\n this.autocomplete = options.autocomplete || '';\n this.clearValue = options.clearValue !== undefined ? options.clearValue : true;\n }\n}\n","import { ElementBase } from './element-base';\n\nexport class Dropdown extends ElementBase {\n override controlType = 'dropdown';\n}\n","import { Component, EventEmitter, Input, Output } from '@angular/core';\n\n@Component({\n selector: 'mapa-button',\n templateUrl: './button.component.html',\n styleUrls: ['./button.component.scss']\n})\nexport class ButtonComponent {\n @Input() color: 'primary' | 'accent' | 'basic' | null | undefined;\n @Input() disabled!: boolean;\n @Output() clicked: EventEmitter<void> = new EventEmitter<void>();\n\n onClick(): void {\n this.clicked.emit();\n }\n}\n","<button\n class=\"mapa-button\"\n (click)=\"onClick()\"\n [class.primary]=\"color === 'primary'\"\n [class.accent]=\"color === 'accent'\"\n [class.basic]=\"color === 'basic'\"\n [disabled]=\"disabled\"\n>\n <ng-content></ng-content>\n</button> ","import {\n AfterViewInit,\n Component,\n Input,\n OnChanges,\n OnDestroy,\n OnInit,\n SimpleChanges,\n ViewChild,\n ViewEncapsulation,\n} from \"@angular/core\";\nimport { FormControl } from \"@angular/forms\";\n\nimport { MatSelect } from \"@angular/material/select\";\n\nimport { ReplaySubject } from \"rxjs/internal/ReplaySubject\";\nimport { Subject } from \"rxjs/internal/Subject\";\n//import { take, takeUntil } from \"rxjs/operators\";\n\nimport { ElementOption } from \"../../../core/interfaces/element-option.interface\";\nimport { Dropdown } from \"../../../core/elements/dropdown\";\nimport { ElementGroup } from \"../../../core/interfaces/element-group.interface\";\n\n@Component({\n selector: \"mapa-dropdown\",\n templateUrl: \"./dropdown.component.html\",\n styleUrls: [\"./dropdown.component.scss\"],\n encapsulation: ViewEncapsulation.None,\n})\nexport class MapaDropdownComponent implements OnInit, OnDestroy, OnChanges {\n @Input() formControl!: FormControl;\n @Input() formControlSearch!: FormControl;\n @Input() element!: Dropdown;\n @Input() border: \"soft\" | \"tag\" | \"highlight\" | null | undefined;\n\n @ViewChild(\"dropdown\", { static: true }) dropdown!: MatSelect;\n\n public filteredOptions: ReplaySubject<ElementOption[]> = new ReplaySubject<\n ElementOption[]\n >(1);\n public filteredGroups: ReplaySubject<ElementGroup[]> = new ReplaySubject<\n ElementGroup[]\n >(1);\n protected filteredOptionsCache: ElementOption[] = [];\n protected filteredGroupCache: ElementGroup[] = [];\n protected _onDestroy = new Subject<void>();\n\n isIndeterminate = false;\n isChecked = false;\n isOptionsGroup = false;\n\n constructor() {}\n\n ngOnInit() {\n this.setOptions();\n\n if (this.element.search) {\n this.element.search.formControl?.valueChanges\n //.pipe(takeUntil(this._onDestroy))\n .subscribe(() => {\n this.filterOptions();\n this.setToggleAllCheckboxState();\n });\n }\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n if (\n changes[\"element\"].previousValue?.controlType === \"dropdown\" &&\n changes[\"element\"].previousValue?.options !== changes[\"element\"].currentValue?.options\n ) {\n this.element.options = changes[\"element\"].currentValue.options;\n this.setOptions();\n }\n }\n\n ngOnDestroy() {\n this._onDestroy.next();\n this._onDestroy.complete();\n }\n\n setOptions(): void {\n this.isOptionsGroup = this.isElementGroup(this.element.options[0]);\n\n if (this.isOptionsGroup) {\n this.filteredGroupCache = (this.element\n .options as ElementGroup[]).slice();\n this.filteredGroups.next(this.filteredGroupCache);\n } else {\n this.filteredOptionsCache = (this.element\n .options as ElementOption[]).slice();\n this.filteredOptions.next(this.filteredOptionsCache);\n }\n }\n\n protected filterOptionsFromGroup(\n group: ElementGroup,\n value: string\n ): ElementOption[] {\n const filterValue = value.toLocaleLowerCase();\n\n return group.label.toLocaleLowerCase().includes(filterValue)\n ? group.options\n : group.options.filter((item) =>\n item.value.toLocaleLowerCase().includes(filterValue)\n );\n }\n\n protected filterOptions() {\n if (!this.element.options) {\n return;\n }\n // get the search keyword\n let search = this.element.search?.formControl?.value;\n\n if (this.isOptionsGroup) {\n const groups = this.element.options as ElementGroup[];\n this.filteredGroupCache = groups\n .map((group: ElementGroup) => ({\n label: group.label,\n options: this.filterOptionsFromGroup(group, search),\n }))\n .filter((group) => group.options.length > 0);\n this.filteredGroups.next(this.filteredGroupCache);\n } else {\n const options = this.element.options as ElementOption[];\n if (!search) {\n this.filteredOptionsCache = options.slice();\n this.filteredOptions.next(this.filteredOptionsCache);\n return;\n }\n // filter the options\n this.filteredOptionsCache = options.filter(\n (option: ElementOption) =>\n option.value.toLowerCase().indexOf(search) > -1\n );\n this.filteredOptions.next(this.filteredOptionsCache);\n }\n }\n\n protected setToggleAllCheckboxState() {\n let filteredLength = 0;\n let search = this.element.search?.formControl?.value;\n\n if (search && search.value) {\n this.filteredOptionsCache.forEach((el) => {\n if (search.value.toLowerCase().indexOf(el) > -1) {\n filteredLength++;\n }\n });\n this.isIndeterminate =\n filteredLength > 0 && filteredLength < this.filteredOptionsCache.length;\n this.isChecked =\n filteredLength > 0 &&\n filteredLength === this.filteredOptionsCache.length;\n }\n }\n\n toggleSelectAll(selectAllValue: boolean) {\n this.filteredOptions.subscribe((options: ElementOption[]) => {\n if (selectAllValue) {\n this.formControl?.patchValue(options);\n } else {\n this.formControl?.patchValue([]);\n }\n });\n this.filteredGroups.subscribe((groups: ElementGroup[]) => {\n if (selectAllValue) {\n this.formControl?.patchValue(\n groups.map((group: ElementGroup) => group.options)\n );\n } else {\n this.formControl?.patchValue([]);\n }\n });\n }\n\n isElementGroup(object: ElementGroup | ElementOption): object is ElementGroup {\n try {\n return (\n (object as ElementGroup).label !== undefined &&\n (object as ElementGroup).options !== undefined\n );\n } catch (e) {\n return false;\n }\n }\n\n compareFn(c1: any, c2: any): boolean {\n return c1 && c2 ? c1.key === c2.key : c1 === c2;\n }\n \n hasValue(): boolean {\n return !!this.formControl.value;\n }\n\n clearValue(event: any): void {\n event.stopPropagation();\n this.formControl.setValue(null);\n }\n}\n","<div *ngIf=\"element\">\n <label *ngIf=\"element.label\" class=\"mapa-dropdown__label\">\n {{ element.label }}\n </label>\n <div class=\"mapa-form--inline\">\n <mat-form-field\n appearance=\"outline\"\n class=\"mapa-dropdown\"\n [class.mapa-dropdown--highlight]=\"border === 'highlight'\"\n [class.mapa-dropdown--soft-border]=\"border === 'soft'\"\n [class.mapa-dropdown--tag]=\"border === 'tag'\"\n [class.mapa-dropdown--labeled]=\"!!element.label\"\n >\n <mat-select\n #dropdown\n ngDefaultControl\n [formControl]=\"formControl\"\n [multiple]=\"element.multiple\"\n [placeholder]=\"element.placeholder || ''\"\n [compareWith]=\"compareFn\"\n >\n <mat-option *ngIf=\"element.search\" class=\"mapa-dropdown__search\">\n <ngx-mat-select-search\n *ngIf=\"element.search.formControl\"\n [showToggleAllCheckbox]=\"true\"\n [formControl]=\"element.search.formControl\"\n [placeholderLabel]=\"element.search.placeholder || ''\"\n i18n-placeholderLabel\n [noEntriesFoundLabel]=\"element.search.noEntriesFoundLabel || ''\"\n [toggleAllCheckboxIndeterminate]=\"isIndeterminate\"\n [toggleAllCheckboxChecked]=\"isChecked\"\n (toggleAll)=\"toggleSelectAll($event)\"\n ></ngx-mat-select-search>\n </mat-option>\n\n <ng-container *ngIf=\"isOptionsGroup; else isElementOptions\">\n <mat-optgroup\n *ngFor=\"let group of filteredGroups | async\"\n [label]=\"group.label\"\n >\n <mat-option *ngFor=\"let option of group.options\" [value]=\"option\">\n {{ option.value }}\n </mat-option>\n </mat-optgroup>\n </ng-container>\n <ng-template #isElementOptions>\n <mat-option\n *ngFor=\"let option of filteredOptions | async\"\n [value]=\"option\"\n >\n {{ option.value }}\n </mat-option>\n </ng-template>\n </mat-select>\n <mat-error *ngIf=\"formControl?.hasError('required')\">\n {{ element.errors?.required }}\n </mat-error>\n <mat-error *ngIf=\"formControl?.hasError('minlength')\">\n {{ element.errors?.minlength }}\n </mat-error>\n <mat-error *ngIf=\"formControl?.hasError('cpf')\">\n {{ element.errors?.cpf }}\n </mat-error>\n <mat-error *ngIf=\"formControl?.hasError('cnpj')\">\n {{ element.errors?.cnpj }}\n </mat-error>\n <mat-error *ngIf=\"formControl?.hasError('email')\">\n {{ element.errors?.email }}\n </mat-error>\n <mat-error *ngIf=\"formControl?.hasError('pattern')\">\n {{ element.errors?.pattern }}\n </mat-error>\n <mat-error *ngIf=\"formControl?.hasError('min')\">\n {{ element.errors?.min }}\n </mat-error>\n <mat-error *ngIf=\"formControl?.hasError('max')\">\n {{ element.errors?.max }}\n </mat-error>\n <mat-error *ngIf=\"formControl?.hasError('minLength')\">\n {{ element.errors?.minLength }}\n </mat-error>\n <mat-error *ngIf=\"formControl?.hasError('maxLength')\">\n {{ element.errors?.maxLength }}\n </mat-error>\n <mat-icon\n *ngIf=\"hasValue() && !formControl.disabled && element.clearValue\"\n (click)=\"clearValue($event)\"\n class=\"mapa-input--close\"\n >close</mat-icon\n >\n </mat-form-field>\n <div *ngIf=\"element.actionButton\" class=\"mapa-form--action\">\n <mapa-button\n color=\"basic\"\n (click)=\"element.actionButton.action.emit(true)\"\n >\n {{ element.actionButton.label }}\n </mapa-button>\n </div>\n </div>\n</div>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { MatButtonModule } from '@angular/material/button';\n\nimport { ButtonComponent } from './button.component';\n\n@NgModule({\n declarations: [ButtonComponent],\n exports: [ButtonComponent],\n imports: [CommonModule, MatButtonModule],\n})\nexport class MapaButtonModule {}\n","/*\n * Public API Surface of mapa-library-ui button\n */\n\nexport * from './src/button.component';\nexport * from './src/button.module';\n","import { NgModule } from \"@angular/core\";\nimport { CommonModule } from \"@angular/common\";\n\nimport { FormsModule, ReactiveFormsModule } from \"@angular/forms\";\n\nimport { MatListModule } from \"@angular/material/list\";\nimport { MatIconModule } from \"@angular/material/icon\";\n\nimport { MapaDropdownComponent } from \"./dropdown.component\";\nimport { MAT_SELECT_CONFIG, MatSelectModule } from \"@angular/material/select\";\nimport { NgxMatSelectSearchModule } from \"ngx-mat-select-search\";\nimport { MAT_FORM_FIELD_DEFAULT_OPTIONS } from \"@angular/material/form-field\";\nimport { MatButtonModule } from \"@angular/material/button\";\nimport { MapaButtonModule } from \"../../button/public-api\";\n\n@NgModule({\n declarations: [MapaDropdownComponent],\n exports: [MapaDropdownComponent],\n imports: [\n CommonModule,\n FormsModule,\n ReactiveFormsModule,\n MatButtonModule,\n MapaButtonModule,\n MatListModule,\n MatIconModule,\n MatSelectModule,\n NgxMatSelectSearchModule,\n ],\n providers: [\n {\n provide: MAT_SELECT_CONFIG,\n useValue: { overlayPanelClass: \"mapa-overlay-dropdown\" },\n },\n {\n provide: MAT_FORM_FIELD_DEFAULT_OPTIONS,\n useValue: { appearance: \"outline\" },\n },\n ],\n})\nexport class MapaDropdownModule {}\n","/*\n * Public API Surface of mapa-library-ui dropdown\n */\n\nexport * from './src/dropdown.component';\nexport * from './src/dropdown.module';\n","/*\n * Public API Surface of mapa-library-ui dropdown\n */\n\nexport * from './lib/core/elements/element-search';\nexport * from './lib/core/elements/element-base';\nexport * from './lib/core/elements/dropdown';\n\nexport * from './lib/components/dropdown/public-api';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './dropdown';\n"],"names":["i3.ButtonComponent"],"mappings":"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"}
1
+ {"version":3,"file":"mapa-library-ui-src-lib-components-dropdown.mjs","sources":["../../../projects/mapa-library-ui/src/lib/core/elements/element-base.ts","../../../projects/mapa-library-ui/src/lib/core/elements/dropdown.ts","../../../projects/mapa-library-ui/src/lib/components/button/src/button.component.ts","../../../projects/mapa-library-ui/src/lib/components/button/src/button.component.html","../../../projects/mapa-library-ui/src/lib/components/dropdown/src/dropdown.component.ts","../../../projects/mapa-library-ui/src/lib/components/dropdown/src/dropdown.component.html","../../../projects/mapa-library-ui/src/lib/components/button/src/button.module.ts","../../../projects/mapa-library-ui/src/lib/components/button/public-api.ts","../../../projects/mapa-library-ui/src/lib/components/dropdown/src/dropdown.module.ts","../../../projects/mapa-library-ui/src/lib/components/dropdown/public-api.ts","../../../projects/mapa-library-ui/src/dropdown.ts","../../../projects/mapa-library-ui/src/mapa-library-ui-src-lib-components-dropdown.ts"],"sourcesContent":["import { ElementGroup } from \"../interfaces/element-group.interface\";\nimport { ElementOption } from \"../interfaces/element-option.interface\";\nimport { ActionButton } from \"./action-button\";\nimport { ElementSearch } from \"./element-search\";\nimport { Errors } from \"./errors\";\n\nexport class ElementBase {\n value: string;\n key: string;\n label: string;\n required: boolean;\n order: number;\n controlType: string;\n type: string;\n placeholder?: string;\n hint?: string;\n prefix?: string;\n suffix?: string;\n autosize?: boolean;\n autosizeMinWidth?: string;\n autosizeMaxWidth?: string;\n autosizeMinRow?: number;\n autosizeMaxRow?: number;\n options: ElementOption[] | ElementGroup[];\n multiple?: boolean;\n search?: ElementSearch;\n maxLength!: string | number | null;\n errors?: Errors;\n actionButton?: ActionButton;\n mask?: string;\n autocomplete?: string;\n clearValue?: boolean;\n\n constructor(\n options: {\n value?: string;\n key?: string;\n label?: string;\n required?: boolean;\n order?: number;\n controlType?: string;\n type?: string;\n placeholder?: string;\n hint?: string;\n prefix?: string;\n suffix?: string;\n autosize?: boolean;\n autosizeMinWidth?: string;\n autosizeMaxWidth?: string;\n autosizeMinRow?: number;\n autosizeMaxRow?: number;\n options?: ElementOption[] | ElementGroup[];\n multiple?: boolean;\n search?: ElementSearch;\n maxLength?: string | number | null;\n errors?: Errors;\n actionButton?: ActionButton;\n mask?: string;\n autocomplete?: string;\n clearValue?: boolean;\n } = {}\n ) {\n this.value = options.value || \"\";\n this.key = options.key || \"\";\n this.label = options.label || \"\";\n this.required = !!options.required;\n this.order = options.order === undefined ? 1 : options.order;\n this.controlType = options.controlType || \"\";\n this.type = options.type || \"\";\n this.placeholder = options.placeholder || \"\";\n this.hint = options.hint || \"\";\n this.prefix = options.prefix || \"\";\n this.suffix = options.suffix || \"\";\n this.autosize = options.autosize || false;\n this.autosizeMinWidth = options.autosizeMinWidth || \"212px\";\n this.autosizeMaxWidth = options.autosizeMaxWidth || \"400px\";\n this.autosizeMinRow = options.autosizeMinRow || 2;\n this.autosizeMaxRow = options.autosizeMaxRow || 5;\n this.options = options.options || [];\n this.multiple = options.multiple || false;\n this.search = options.search || undefined;\n this.maxLength = options.maxLength || null;\n this.errors = options.errors || undefined;\n this.actionButton = options.actionButton || undefined;\n this.mask = options.mask || undefined;\n this.autocomplete = options.autocomplete || '';\n this.clearValue = options.clearValue !== undefined ? options.clearValue : true;\n }\n}\n","import { ElementBase } from './element-base';\n\nexport class Dropdown extends ElementBase {\n override controlType = 'dropdown';\n}\n","import { Component, EventEmitter, Input, Output } from '@angular/core';\n\n@Component({\n selector: 'mapa-button',\n templateUrl: './button.component.html',\n styleUrls: ['./button.component.scss']\n})\nexport class ButtonComponent {\n @Input() color: 'primary' | 'accent' | 'basic' | null | undefined;\n @Input() disabled!: boolean;\n @Output() clicked: EventEmitter<void> = new EventEmitter<void>();\n\n onClick(): void {\n this.clicked.emit();\n }\n}\n","<button\n class=\"mapa-button\"\n (click)=\"onClick()\"\n [class.primary]=\"color === 'primary'\"\n [class.accent]=\"color === 'accent'\"\n [class.basic]=\"color === 'basic'\"\n [disabled]=\"disabled\"\n>\n <ng-content></ng-content>\n</button> ","import {\n AfterViewInit,\n Component,\n Input,\n OnChanges,\n OnDestroy,\n OnInit,\n SimpleChanges,\n ViewChild,\n ViewEncapsulation,\n} from \"@angular/core\";\nimport { FormControl } from \"@angular/forms\";\n\nimport { MatSelect } from \"@angular/material/select\";\n\nimport { ReplaySubject } from \"rxjs/internal/ReplaySubject\";\nimport { Subject } from \"rxjs/internal/Subject\";\n//import { take, takeUntil } from \"rxjs/operators\";\n\nimport { ElementOption } from \"../../../core/interfaces/element-option.interface\";\nimport { Dropdown } from \"../../../core/elements/dropdown\";\nimport { ElementGroup } from \"../../../core/interfaces/element-group.interface\";\n\n@Component({\n selector: \"mapa-dropdown\",\n templateUrl: \"./dropdown.component.html\",\n styleUrls: [\"./dropdown.component.scss\"],\n encapsulation: ViewEncapsulation.None,\n})\nexport class MapaDropdownComponent implements OnInit, OnDestroy, OnChanges {\n @Input() formControl!: FormControl;\n @Input() formControlSearch!: FormControl;\n @Input() element!: Dropdown;\n @Input() border: \"soft\" | \"tag\" | \"highlight\" | null | undefined;\n\n @ViewChild(\"dropdown\", { static: true }) dropdown!: MatSelect;\n\n public filteredOptions: ReplaySubject<ElementOption[]> = new ReplaySubject<\n ElementOption[]\n >(1);\n public filteredGroups: ReplaySubject<ElementGroup[]> = new ReplaySubject<\n ElementGroup[]\n >(1);\n protected filteredOptionsCache: ElementOption[] = [];\n protected filteredGroupCache: ElementGroup[] = [];\n protected _onDestroy = new Subject<void>();\n\n isIndeterminate = false;\n isChecked = false;\n isOptionsGroup = false;\n\n constructor() {}\n\n ngOnInit() {\n this.setOptions();\n\n if (this.element.search) {\n this.element.search.formControl?.valueChanges\n //.pipe(takeUntil(this._onDestroy))\n .subscribe(() => {\n this.filterOptions();\n this.setToggleAllCheckboxState();\n });\n }\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n if (\n changes[\"element\"].previousValue?.controlType === \"dropdown\" &&\n changes[\"element\"].previousValue?.options !== changes[\"element\"].currentValue?.options\n ) {\n this.element.options = changes[\"element\"].currentValue.options;\n this.setOptions();\n }\n }\n\n ngOnDestroy() {\n this._onDestroy.next();\n this._onDestroy.complete();\n }\n\n setOptions(): void {\n this.isOptionsGroup = this.isElementGroup(this.element.options[0]);\n\n if (this.isOptionsGroup) {\n this.filteredGroupCache = (this.element\n .options as ElementGroup[]).slice();\n this.filteredGroups.next(this.filteredGroupCache);\n } else {\n this.filteredOptionsCache = (this.element\n .options as ElementOption[]).slice();\n this.filteredOptions.next(this.filteredOptionsCache);\n }\n }\n\n protected filterOptionsFromGroup(\n group: ElementGroup,\n value: string\n ): ElementOption[] {\n const filterValue = value.toLocaleLowerCase();\n\n return group.label.toLocaleLowerCase().includes(filterValue)\n ? group.options\n : group.options.filter((item) =>\n item.value.toLocaleLowerCase().includes(filterValue)\n );\n }\n\n protected filterOptions() {\n if (!this.element.options) {\n return;\n }\n // get the search keyword\n let search = this.element.search?.formControl?.value.toLowerCase();\n\n if (this.isOptionsGroup) {\n const groups = this.element.options as ElementGroup[];\n this.filteredGroupCache = groups\n .map((group: ElementGroup) => ({\n label: group.label,\n options: this.filterOptionsFromGroup(group, search),\n }))\n .filter((group) => group.options.length > 0);\n this.filteredGroups.next(this.filteredGroupCache);\n } else {\n const options = this.element.options as ElementOption[];\n if (!search) {\n this.filteredOptionsCache = options.slice();\n this.filteredOptions.next(this.filteredOptionsCache);\n return;\n }\n // filter the options\n this.filteredOptionsCache = options.filter(\n (option: ElementOption) =>\n option.value.toLowerCase().indexOf(search) > -1\n );\n this.filteredOptions.next(this.filteredOptionsCache);\n }\n }\n\n protected setToggleAllCheckboxState() {\n let filteredLength = 0;\n let search = this.element.search?.formControl?.value;\n\n if (search && search.value) {\n this.filteredOptionsCache.forEach((el) => {\n if (search.value.toLowerCase().indexOf(el) > -1) {\n filteredLength++;\n }\n });\n this.isIndeterminate =\n filteredLength > 0 && filteredLength < this.filteredOptionsCache.length;\n this.isChecked =\n filteredLength > 0 &&\n filteredLength === this.filteredOptionsCache.length;\n }\n }\n\n toggleSelectAll(selectAllValue: boolean) {\n this.filteredOptions.subscribe((options: ElementOption[]) => {\n if (selectAllValue) {\n this.formControl?.patchValue(options);\n } else {\n this.formControl?.patchValue([]);\n }\n });\n this.filteredGroups.subscribe((groups: ElementGroup[]) => {\n if (selectAllValue) {\n this.formControl?.patchValue(\n groups.map((group: ElementGroup) => group.options)\n );\n } else {\n this.formControl?.patchValue([]);\n }\n });\n }\n\n isElementGroup(object: ElementGroup | ElementOption): object is ElementGroup {\n try {\n return (\n (object as ElementGroup).label !== undefined &&\n (object as ElementGroup).options !== undefined\n );\n } catch (e) {\n return false;\n }\n }\n\n compareFn(c1: any, c2: any): boolean {\n return c1 && c2 ? c1.key === c2.key : c1 === c2;\n }\n \n hasValue(): boolean {\n return !!this.formControl.value;\n }\n\n clearValue(event: any): void {\n event.stopPropagation();\n this.formControl.setValue(null);\n }\n}\n","<div *ngIf=\"element\">\n <label *ngIf=\"element.label\" class=\"mapa-dropdown__label\">\n {{ element.label }}\n </label>\n <div class=\"mapa-form--inline\">\n <mat-form-field\n appearance=\"outline\"\n class=\"mapa-dropdown\"\n [class.mapa-dropdown--highlight]=\"border === 'highlight'\"\n [class.mapa-dropdown--soft-border]=\"border === 'soft'\"\n [class.mapa-dropdown--tag]=\"border === 'tag'\"\n [class.mapa-dropdown--labeled]=\"!!element.label\"\n >\n <mat-select\n #dropdown\n ngDefaultControl\n [formControl]=\"formControl\"\n [multiple]=\"element.multiple\"\n [placeholder]=\"element.placeholder || ''\"\n [compareWith]=\"compareFn\"\n >\n <mat-option *ngIf=\"element.search\" class=\"mapa-dropdown__search\">\n <ngx-mat-select-search\n *ngIf=\"element.search.formControl\"\n [showToggleAllCheckbox]=\"true\"\n [formControl]=\"element.search.formControl\"\n [placeholderLabel]=\"element.search.placeholder || ''\"\n i18n-placeholderLabel\n [noEntriesFoundLabel]=\"element.search.noEntriesFoundLabel || ''\"\n [toggleAllCheckboxIndeterminate]=\"isIndeterminate\"\n [toggleAllCheckboxChecked]=\"isChecked\"\n (toggleAll)=\"toggleSelectAll($event)\"\n ></ngx-mat-select-search>\n </mat-option>\n\n <ng-container *ngIf=\"isOptionsGroup; else isElementOptions\">\n <mat-optgroup\n *ngFor=\"let group of filteredGroups | async\"\n [label]=\"group.label\"\n >\n <mat-option *ngFor=\"let option of group.options\" [value]=\"option\">\n {{ option.value }}\n </mat-option>\n </mat-optgroup>\n </ng-container>\n <ng-template #isElementOptions>\n <mat-option\n *ngFor=\"let option of filteredOptions | async\"\n [value]=\"option\"\n >\n {{ option.value }}\n </mat-option>\n </ng-template>\n </mat-select>\n <mat-error *ngIf=\"formControl?.hasError('required')\">\n {{ element.errors?.required }}\n </mat-error>\n <mat-error *ngIf=\"formControl?.hasError('minlength')\">\n {{ element.errors?.minlength }}\n </mat-error>\n <mat-error *ngIf=\"formControl?.hasError('cpf')\">\n {{ element.errors?.cpf }}\n </mat-error>\n <mat-error *ngIf=\"formControl?.hasError('cnpj')\">\n {{ element.errors?.cnpj }}\n </mat-error>\n <mat-error *ngIf=\"formControl?.hasError('email')\">\n {{ element.errors?.email }}\n </mat-error>\n <mat-error *ngIf=\"formControl?.hasError('pattern')\">\n {{ element.errors?.pattern }}\n </mat-error>\n <mat-error *ngIf=\"formControl?.hasError('min')\">\n {{ element.errors?.min }}\n </mat-error>\n <mat-error *ngIf=\"formControl?.hasError('max')\">\n {{ element.errors?.max }}\n </mat-error>\n <mat-error *ngIf=\"formControl?.hasError('minLength')\">\n {{ element.errors?.minLength }}\n </mat-error>\n <mat-error *ngIf=\"formControl?.hasError('maxLength')\">\n {{ element.errors?.maxLength }}\n </mat-error>\n <mat-icon\n *ngIf=\"hasValue() && !formControl.disabled && element.clearValue\"\n (click)=\"clearValue($event)\"\n class=\"mapa-input--close\"\n >close</mat-icon\n >\n </mat-form-field>\n <div *ngIf=\"element.actionButton\" class=\"mapa-form--action\">\n <mapa-button\n color=\"basic\"\n (click)=\"element.actionButton.action.emit(true)\"\n >\n {{ element.actionButton.label }}\n </mapa-button>\n </div>\n </div>\n</div>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { MatButtonModule } from '@angular/material/button';\n\nimport { ButtonComponent } from './button.component';\n\n@NgModule({\n declarations: [ButtonComponent],\n exports: [ButtonComponent],\n imports: [CommonModule, MatButtonModule],\n})\nexport class MapaButtonModule {}\n","/*\n * Public API Surface of mapa-library-ui button\n */\n\nexport * from './src/button.component';\nexport * from './src/button.module';\n","import { NgModule } from \"@angular/core\";\nimport { CommonModule } from \"@angular/common\";\n\nimport { FormsModule, ReactiveFormsModule } from \"@angular/forms\";\n\nimport { MatListModule } from \"@angular/material/list\";\nimport { MatIconModule } from \"@angular/material/icon\";\n\nimport { MapaDropdownComponent } from \"./dropdown.component\";\nimport { MAT_SELECT_CONFIG, MatSelectModule } from \"@angular/material/select\";\nimport { NgxMatSelectSearchModule } from \"ngx-mat-select-search\";\nimport { MAT_FORM_FIELD_DEFAULT_OPTIONS } from \"@angular/material/form-field\";\nimport { MatButtonModule } from \"@angular/material/button\";\nimport { MapaButtonModule } from \"../../button/public-api\";\n\n@NgModule({\n declarations: [MapaDropdownComponent],\n exports: [MapaDropdownComponent],\n imports: [\n CommonModule,\n FormsModule,\n ReactiveFormsModule,\n MatButtonModule,\n MapaButtonModule,\n MatListModule,\n MatIconModule,\n MatSelectModule,\n NgxMatSelectSearchModule,\n ],\n providers: [\n {\n provide: MAT_SELECT_CONFIG,\n useValue: { overlayPanelClass: \"mapa-overlay-dropdown\" },\n },\n {\n provide: MAT_FORM_FIELD_DEFAULT_OPTIONS,\n useValue: { appearance: \"outline\" },\n },\n ],\n})\nexport class MapaDropdownModule {}\n","/*\n * Public API Surface of mapa-library-ui dropdown\n */\n\nexport * from './src/dropdown.component';\nexport * from './src/dropdown.module';\n","/*\n * Public API Surface of mapa-library-ui dropdown\n */\n\nexport * from './lib/core/elements/element-search';\nexport * from './lib/core/elements/element-base';\nexport * from './lib/core/elements/dropdown';\n\nexport * from './lib/components/dropdown/public-api';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './dropdown';\n"],"names":["i3.ButtonComponent"],"mappings":"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"}
Binary file
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "mapa-library-ui",
3
- "version": "0.26.0",
3
+ "version": "0.27.0",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^15.2.0",
6
6
  "@angular/core": "^15.2.0"
Binary file