@acorex/components 21.0.3-next.1 → 21.0.3-next.11

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.
@@ -12,7 +12,7 @@ import * as i0 from '@angular/core';
12
12
  import { input, inject, ElementRef, signal, linkedSignal, afterNextRender, forwardRef, HostListener, ViewChild, ContentChild, Input, ViewEncapsulation, ChangeDetectionStrategy, Component, NgModule } from '@angular/core';
13
13
  import * as i1 from '@angular/forms';
14
14
  import { FormsModule, NG_VALUE_ACCESSOR } from '@angular/forms';
15
- import { isEqual, last, findLastIndex, get, nth } from 'lodash-es';
15
+ import { isEqual, get, last, findLastIndex, nth } from 'lodash-es';
16
16
  import { classes } from 'polytype';
17
17
  import { AXBadgeModule } from '@acorex/components/badge';
18
18
  import { AXCheckBoxModule } from '@acorex/components/check-box';
@@ -143,7 +143,8 @@ class AXSelectBoxComponent extends classes(MXDropdownBoxBaseComponent, MXSelecti
143
143
  * This prevents showing "loading..." when the component has a value.
144
144
  */
145
145
  async fetchItemDataIfNeeded() {
146
- if (this.value && this._listDataSource && !this.selectedItems?.length) {
146
+ const isEmptyValue = this.value == null || (Array.isArray(this.value) && this.value.length === 0);
147
+ if (!isEmptyValue && this._listDataSource && !this.selectedItems?.length) {
147
148
  try {
148
149
  const item = await this.getItemByKey(this.value);
149
150
  if (item) {
@@ -167,16 +168,26 @@ class AXSelectBoxComponent extends classes(MXDropdownBoxBaseComponent, MXSelecti
167
168
  * @param {any} key
168
169
  */
169
170
  getItemByKey(key) {
170
- // Use the data source's byKey method if available
171
- if (this._listDataSource && typeof this._listDataSource.byKey === 'function') {
172
- return this._listDataSource.byKey(key);
171
+ // Static array data sources resolve synchronously to avoid a false loading state
172
+ // for primitive values (e.g. color format "hex" / "rgba").
173
+ if (Array.isArray(this._originalDataSource)) {
174
+ for (const candidate of this._originalDataSource) {
175
+ if (candidate != null && typeof candidate === 'object') {
176
+ if (get(candidate, this.valueField) == key || get(candidate, this.textField) == key) {
177
+ return candidate;
178
+ }
179
+ }
180
+ else if (candidate == key) {
181
+ return { [this.valueField]: candidate, [this.textField]: String(candidate ?? '') };
182
+ }
183
+ }
184
+ return null;
173
185
  }
174
- // Fallback to find method if byKey is not available
175
186
  if (this._listDataSource && typeof this._listDataSource.find === 'function') {
176
187
  return this._listDataSource.find(key);
177
188
  }
178
189
  // If neither method is available, return null
179
- console.warn('No byKey or find method available on data source');
190
+ console.warn('No find method available on data source');
180
191
  return null;
181
192
  }
182
193
  /** @ignore */
@@ -1 +1 @@
1
- {"version":3,"file":"acorex-components-select-box.mjs","sources":["../../../../packages/components/select-box/src/lib/select-box.component.ts","../../../../packages/components/select-box/src/lib/select-box.component.html","../../../../packages/components/select-box/src/lib/select-box.module.ts","../../../../packages/components/select-box/src/acorex-components-select-box.ts"],"sourcesContent":["import {\n AXClearableComponent,\n AXClosableComponent,\n AXComponent,\n AXDataSource,\n AXEvent,\n AXFocusableComponent,\n AXHotkeysService,\n AXItemClickEvent,\n AXItemSelectedEvent,\n AXSearchableComponent,\n AXValuableComponent,\n AXValueChangedEvent,\n AX_SELECTION_DATA_TOKEN,\n MXLookComponent,\n MXSelectionBridgeService,\n MXSelectionValueComponent,\n convertArrayToDataSource,\n} from '@acorex/cdk/common';\nimport { AXDecoratorCloseButtonComponent, AXDecoratorGenericComponent } from '@acorex/components/decorators';\nimport { AXDropdownBoxComponent, MXDropdownBoxBaseComponent } from '@acorex/components/dropdown';\nimport { AXListComponent } from '@acorex/components/list';\nimport { AXLoadingComponent } from '@acorex/components/loading';\nimport { AXSearchBoxComponent } from '@acorex/components/search-box';\nimport { AXTagComponent } from '@acorex/components/tag';\nimport { AXTranslatorPipe } from '@acorex/core/translation';\nimport { AXUnsubscriber } from '@acorex/core/utils';\nimport { AsyncPipe, NgClass, NgTemplateOutlet } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n ContentChild,\n ElementRef,\n HostListener,\n Input,\n OnDestroy,\n TemplateRef,\n ViewChild,\n ViewEncapsulation,\n afterNextRender,\n forwardRef,\n inject,\n input,\n linkedSignal,\n signal,\n} from '@angular/core';\nimport { FormsModule, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { findLastIndex, get, isEqual, last, nth } from 'lodash-es';\nimport { classes } from 'polytype';\nimport { Observable, Subscription } from 'rxjs';\n\n/**\n * The Button is a component which detects user interaction and triggers a corresponding event\n * @category\n */\n@Component({\n selector: 'ax-select-box',\n templateUrl: './select-box.component.html',\n styleUrl: './select-box.component.compiled.css',\n inputs: [\n 'disabled',\n 'readonly',\n 'tabIndex',\n 'placeholder',\n 'minValue',\n 'maxValue',\n 'value',\n 'state',\n 'name',\n 'id',\n 'type',\n 'look',\n 'multiple',\n 'valueField',\n 'textField',\n 'disabledField',\n 'textTemplate',\n 'selectedItems',\n ],\n outputs: [\n 'valueChange',\n 'stateChange',\n 'onValueChanged',\n 'onBlur',\n 'onFocus',\n 'readonlyChange',\n 'disabledChange',\n 'onOpened',\n 'onClosed',\n 'onItemSelected',\n 'onItemClick',\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n providers: [\n { provide: AXComponent, useExisting: AXSelectBoxComponent },\n { provide: AXFocusableComponent, useExisting: AXSelectBoxComponent },\n { provide: AXValuableComponent, useExisting: AXSelectBoxComponent },\n { provide: AXClearableComponent, useExisting: AXSelectBoxComponent },\n { provide: AXClosableComponent, useExisting: AXSelectBoxComponent },\n { provide: AXSearchableComponent, useExisting: AXSelectBoxComponent },\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => AXSelectBoxComponent),\n multi: true,\n },\n {\n provide: AX_SELECTION_DATA_TOKEN,\n useClass: MXSelectionBridgeService,\n },\n AXUnsubscriber,\n ],\n host: { ngSkipHydration: 'true' },\n imports: [\n AXDropdownBoxComponent,\n NgTemplateOutlet,\n NgClass,\n AXDecoratorGenericComponent,\n AXDecoratorCloseButtonComponent,\n AXListComponent,\n FormsModule,\n AXLoadingComponent,\n AsyncPipe,\n AXTranslatorPipe,\n AXTagComponent,\n ],\n})\nexport class AXSelectBoxComponent\n extends classes(MXDropdownBoxBaseComponent, MXSelectionValueComponent, MXLookComponent)\n implements OnDestroy\n{\n /**\n * Determines if an item is truncated.\n *\n * @defaultValue true\n */\n readonly isItemTruncated = input(true);\n\n /**\n * Determines if a tooltip is shown for an item.\n *\n * @defaultValue false\n */\n readonly showItemTooltip = input(false);\n\n private host = inject(ElementRef);\n\n /** Height of each list item in pixels, or 'auto' to let list measure. */\n itemHeight = input<number | 'auto'>(40);\n\n /** Maximum number of visible items before scrolling. */\n maxVisibleItems = input(5);\n\n /** @ignore */\n private hotKeyService: AXHotkeysService = inject(AXHotkeysService);\n\n /** @ignore */\n protected isLoading = signal(false);\n\n /** @ignore */\n protected searchValue = signal('');\n\n /** @ignore */\n protected renderList = signal(false);\n\n /** @ignore */\n protected _dropdownWidth = linkedSignal<string>(() => this.dropdownWidth());\n\n /** @ignore */\n protected _dropdownHeight = signal<string>('auto');\n\n /** @ignore */\n protected _listDataSource: AXDataSource<any> = convertArrayToDataSource([], {\n key: this.valueField,\n pageSize: 10,\n });\n\n /** @ignore */\n private _originalDataSource: AXDataSource<any> | any[];\n\n /** @ignore */\n private onChangedSubscription: Subscription;\n\n /** @ignore */\n private onLoadingChangedSubscription: Subscription;\n\n #init = afterNextRender(() => {\n const formField = this.getHostElement().closest('ax-form-field');\n if (formField?.classList.contains('ax-state-floating-label')) {\n this.getHostElement().classList.add('ax-float-label');\n }\n });\n\n /**\n * Gets the data source for the component, which can be either an `AXDataSource` or an array of items.\n * @returns {AXDataSource<any> | any[]}\n */\n public get dataSource(): AXDataSource<any> | any[] {\n return this._originalDataSource;\n }\n\n /**\n * Sets the data source, either as an `AXDataSource` or an array.\n * @param {AXDataSource<any> | any[]} v\n */\n @Input()\n public set dataSource(v: AXDataSource<any> | any[]) {\n // check if the data source is the same\n if (Array.isArray(v) && Array.isArray(this._originalDataSource) && isEqual(v, this._originalDataSource)) {\n return;\n }\n if (v instanceof AXDataSource && v == this._originalDataSource) {\n return;\n }\n //\n this._originalDataSource = v;\n if (Array.isArray(v)) {\n this._listDataSource = convertArrayToDataSource(v, {\n key: this.valueField,\n pageSize: v.length || 10,\n });\n } else {\n this._listDataSource = this.dataSource as AXDataSource<any>;\n }\n //\n this.onChangedSubscription?.unsubscribe();\n this.onChangedSubscription = this._listDataSource.onChanged\n .pipe(this._unsubscriber.takeUntilDestroy)\n .subscribe(() => {\n this.updateDropdownSize();\n // Force refresh of selected items when data source changes\n this.forceRefreshSelectedItems();\n });\n //\n this.onLoadingChangedSubscription?.unsubscribe();\n this.onLoadingChangedSubscription = this._listDataSource.onLoadingChanged\n .pipe(this._unsubscriber.takeUntilDestroy)\n .subscribe((loading) => {\n this.isLoading.set(loading);\n });\n\n // After setting data source, try to fetch item data if needed\n setTimeout(() => this.fetchItemDataIfNeeded(), 0);\n }\n\n /**\n * The placeholder text displayed when the component is empty.\n * @param {string} placeholder\n */\n @Input()\n placeholder: string;\n\n /**\n * The minRecordsForSearch defines the minimum number of records required to display the search box.\n * @param {number} minRecordsForSearch\n */\n @Input()\n minRecordsForSearch: number;\n\n /**\n * The caption text to be displayed in the component.\n * @param {string} caption\n */\n @Input()\n caption: string;\n\n /**\n * The template used to customize the rendering of items.\n * @param {TemplateRef<any>} itemTemplate\n */\n @Input()\n itemTemplate: TemplateRef<any>;\n\n /**\n * The template used to customize the rendering of selected items.\n * @param {TemplateRef<any>} selectedTemplate\n */\n @Input()\n selectedTemplate: TemplateRef<any>;\n\n /**\n * The template used to display when there are no items.\n * @param {TemplateRef<any>} emptyTemplate\n */\n @Input()\n emptyTemplate: TemplateRef<any>;\n\n /**\n * The template used to display while loading.\n * @param {TemplateRef<any>} loadingTemplate\n */\n @Input()\n loadingTemplate: TemplateRef<any>;\n\n /**\n * The width of the dropdown in pixels.\n * @defaultValue null\n */\n dropdownWidth = input<string>(null);\n\n /** @ignore */\n @ViewChild('panel') panel!: ElementRef<HTMLDivElement>;\n\n /** @ignore */\n @ViewChild(AXListComponent)\n list: AXListComponent;\n\n /** @ignore */\n @ContentChild(AXSearchBoxComponent)\n searchBox: AXSearchBoxComponent;\n\n searchBoxAutoFocus = input(true);\n\n /** @ignore */\n @ViewChild(AXDropdownBoxComponent, { static: true })\n protected dropdown: AXDropdownBoxComponent;\n\n /**\n * Service for managing selection data, injected via `AX_SELECTION_DATA_TOKEN`.\n */\n public selectionService = inject(AX_SELECTION_DATA_TOKEN);\n\n searchEvent: Observable<any>;\n\n /** @ignore */\n private _unsubscriber = inject(AXUnsubscriber);\n\n /** @ignore */\n protected override ngOnInit(): void {\n super.ngOnInit();\n //\n this.registerValidation();\n // Proactively fetch item data if we have a value but no corresponding item\n this.fetchItemDataIfNeeded();\n }\n\n /**\n * Proactively fetches item data if the component has a value but no corresponding item data.\n * This prevents showing \"loading...\" when the component has a value.\n */\n private async fetchItemDataIfNeeded(): Promise<void> {\n if (this.value && this._listDataSource && !this.selectedItems?.length) {\n try {\n const item = await this.getItemByKey(this.value);\n if (item) {\n // Force refresh to update the display\n this.forceRefreshSelectedItems();\n }\n } catch (error) {\n console.warn('Failed to fetch item data:', error);\n }\n }\n }\n\n /** @ignore */\n override ngOnDestroy(): void {\n this.searchBox?.onKeyDown.unsubscribe();\n this.onChangedSubscription?.unsubscribe();\n this.onLoadingChangedSubscription?.unsubscribe();\n }\n\n /**\n * Retrieves an item by its key.\n * @param {any} key\n */\n getItemByKey(key: any): Promise<any> | any {\n // Use the data source's byKey method if available\n if (this._listDataSource && typeof (this._listDataSource as any).byKey === 'function') {\n return (this._listDataSource as any).byKey(key);\n }\n\n // Fallback to find method if byKey is not available\n if (this._listDataSource && typeof this._listDataSource.find === 'function') {\n return this._listDataSource.find(key);\n }\n\n // If neither method is available, return null\n console.warn('No byKey or find method available on data source');\n return null;\n }\n\n /** @ignore */\n protected _handleOnOpenedEvent(e: AXEvent) {\n if (!this.renderList()) {\n this.renderList.set(true);\n } else if (!this._listDataSource.totalCount || this._listDataSource.totalCount == 0) {\n this.list?.refresh(false);\n }\n this._handleFocus();\n //\n this.onOpened.emit({\n component: this,\n isUserInteraction: e.isUserInteraction,\n });\n this.updateDropdownSize();\n\n // Force refresh of selected items when opening to show updated text\n this.forceRefreshSelectedItems();\n }\n\n /** @ignore */\n protected _handleOnClosedEvent(e: AXEvent) {\n this.onClosed.emit({\n component: this,\n isUserInteraction: e.isUserInteraction,\n });\n this._unsubscriber.unsubscribe();\n }\n\n /** @ignore */\n protected _handleFocus() {\n setTimeout(() => {\n if (this.searchBox) {\n this.searchBox.look = 'flat';\n if (this.searchBoxAutoFocus()) {\n this.searchBox.focus();\n }\n //TODO: unsubscribe\n this.hotKeyService\n .addShortcut({ keys: 'Control.f', element: this.panel.nativeElement })\n .pipe(this._unsubscriber.takeUntilDestroy)\n .subscribe(() => {\n this.searchBox.focus();\n });\n this.searchBox.onKeyDown.pipe(this._unsubscriber.takeUntilDestroy).subscribe((e) => {\n if (e.nativeEvent.code === 'ArrowDown' || e.nativeEvent.key === 'ArrowDown') {\n this.list?.focus();\n e.nativeEvent.preventDefault();\n }\n });\n } else {\n this.list?.focus();\n }\n });\n }\n\n /** @ignore */\n protected _handleBadgeRemove(e: MouseEvent, item) {\n this.unselectItems(item);\n e.stopPropagation();\n }\n\n /** @ignore */\n protected _handleValueChanged(e: AXValueChangedEvent) {\n if (e.isUserInteraction) {\n if (!this.multiple) {\n this.close();\n }\n this.commitValue(e.component.selectedItems, true);\n }\n }\n\n /** @ignore */\n protected _handleItemClick(e: AXItemClickEvent) {\n this.onItemClick.emit(e);\n if (!this.multiple) {\n this.close();\n }\n }\n\n /** @ignore */\n protected _handleItemSelected(e: AXItemSelectedEvent) {\n this.onItemSelected.emit(e);\n this.resetSearchAfterSelection();\n if (!this.multiple) {\n this.close();\n }\n }\n\n private resetSearchAfterSelection(): void {\n if (!this.searchBox && !this.searchBox?.value) return;\n if (this.searchBox && this.searchBox?.value) this.searchBox.commitValue('', false);\n }\n\n /** @ignore */\n private setDropdownSize(count = 0) {\n if (this.dropdown.isActionsheetStyle) {\n const itemPx = typeof this.itemHeight() === 'number' ? (this.itemHeight() as number) : 40;\n this._dropdownHeight.set(\n ['auto', '0px'].includes(this._dropdownHeight()) ? `${Math.min(15, count) * itemPx}px` : this._dropdownHeight(),\n );\n this._dropdownWidth.set('100%');\n } else {\n const hostWidth = Math.max(this.getHostElement().offsetWidth, Number(this.dropdownWidth()) || 0);\n const itemPx = typeof this.itemHeight() === 'number' ? (this.itemHeight() as number) : 40;\n const maxItems = Number(this.maxVisibleItems());\n this._dropdownWidth.set(`${hostWidth}px`);\n this._dropdownHeight.set(count == 0 ? 'auto' : `${Math.min(maxItems, count) * itemPx}px`);\n }\n setTimeout(() => {\n this.dropdown.updatePosition();\n });\n }\n\n private updateDropdownPosition() {\n setTimeout(() => {\n this.dropdown.updatePosition();\n });\n }\n\n private updateDropdownSize() {\n setTimeout(() => {\n this.setDropdownSize(this._listDataSource.totalCount);\n this.updateDropdownPosition();\n this.list?.render();\n if (!this.isItemTruncated()) {\n setTimeout(() => {\n this._fitDropdownToContent();\n setTimeout(() => this._fitDropdownToContent(), 100);\n });\n }\n });\n }\n\n private _fitDropdownToContent() {\n const panel = this.panel?.nativeElement;\n if (!panel) return;\n\n const hostWidth = Math.max(this.getHostElement().offsetWidth, Number(this.dropdownWidth()) || 0);\n let contentWidth = hostWidth;\n\n panel.querySelectorAll<HTMLElement>('li.list-item').forEach((item) => {\n const label = item.querySelector<HTMLElement>('.ax-label-container span');\n if (label) {\n const labelContainer = label.parentElement;\n const horizontalPadding = labelContainer\n ? item.offsetWidth - labelContainer.clientWidth\n : 0;\n contentWidth = Math.max(contentWidth, label.scrollWidth + horizontalPadding);\n } else {\n contentWidth = Math.max(contentWidth, item.scrollWidth);\n }\n });\n\n const nextWidth = `${Math.max(hostWidth, contentWidth)}px`;\n if (this._dropdownWidth() !== nextWidth) {\n this._dropdownWidth.set(nextWidth);\n this.dropdown.updatePosition();\n }\n }\n\n override internalValueChanged(value: any) {\n super.internalValueChanged(value);\n this.updateDropdownPosition();\n // Try to fetch item data when value changes\n setTimeout(() => this.fetchItemDataIfNeeded(), 0);\n }\n\n /** @ignore */\n @HostListener('keydown', ['$event'])\n _handleKeydown(e: KeyboardEvent) {\n if (e.code === 'ArrowDown' || e.code === 'ArrowUp') {\n this.selectItemByNav(e.code === 'ArrowDown' ? 1 : -1);\n e.preventDefault();\n } else if (e.code === 'Backspace') {\n this.unselectItems(this.selectedItems.pop());\n e.preventDefault();\n }\n // if ((e.code === 'Space' || e.code === 'Enter') && this.hasItems) {\n // if (this.readonly || this.disabled) {\n // e.preventDefault();\n // e.stopPropagation();\n // return;\n // }\n // const id = document.activeElement?.closest('li')?.dataset?.id;\n // this.toggleSelect(id);\n // e.preventDefault();\n // e.stopPropagation()\n // }\n }\n\n /** @ignore */\n private selectItemByNav(sign: 1 | -1) {\n if (Array.isArray(this.dataSource) && !this.multiple) {\n const items = this.normalizeItemsList(this.dataSource);\n const _last: any = last(this.selectedItems);\n let i = -1;\n if (_last) {\n i = findLastIndex(items, [this.valueField, get(_last as Record<string, unknown>, this.valueField)]);\n }\n i += sign;\n if (i < 0 || i >= items.length) return;\n const next = nth<any>(items, i);\n if (next) {\n this.selectItems(next);\n }\n } else {\n this.open();\n }\n }\n\n /**\n * Filters the data source based on the provided search term.\n * @param {string} term\n */\n search(term: string) {\n this.searchValue.set(term);\n if (term) {\n this._listDataSource.filter({\n field: this.textField,\n value: term,\n operator: { type: 'contains' },\n });\n } else {\n this._listDataSource.clearFilter();\n }\n this._listDataSource.refresh();\n }\n\n /**\n * Refreshes the component by resetting state, clearing selection cache, refreshing the list, and closing the component.\n */\n refresh() {\n this.reset(false);\n this.clearSelectionCache();\n this.list?.refresh();\n this.close();\n }\n\n @HostListener('click')\n hostClickListener() {\n this.toggle();\n }\n}\n","<ax-dropdown-box\n [class.ax-state-multiple]=\"multiple\"\n (onOpened)=\"_handleOnOpenedEvent($event)\"\n (onClosed)=\"_handleOnClosedEvent($event)\"\n (focus)=\"emitOnFocusEvent($event)\"\n (blur)=\"emitOnBlurEvent($event)\"\n [disabled]=\"disabled\"\n [look]=\"look\"\n [popoverWidth]=\"dropdownWidth()\"\n>\n <ng-container input>\n <ng-content select=\"ax-prefix\"> </ng-content>\n <div\n class=\"ax-editor ax-chips-container ax-content ax-input\"\n [class.ax-state-multiple]=\"multiple\"\n [tabindex]=\"tabIndex\"\n >\n @if (selectedItems.length === 0) {\n <div class=\"ax-placeholder\" role=\"textbox\" area-readonly=\"true\">\n {{ placeholder | translate | async }}\n </div>\n }\n @for (item of selectedItems; track $index) {\n @if (selectedTemplate) {\n <ng-template\n [ngTemplateOutlet]=\"selectedTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: { data: item } }\"\n ></ng-template>\n } @else {\n @if (multiple) {\n <!-- <div class=\"bg-surface border-surface flex items-center justify-center gap-2 rounded-full border px-2 py-1\">\n <ax-text>{{ getDisplayText(item) | translate | async }}</ax-text>\n @if (!disabled && !readonly && multiple) {\n <span class=\"ax-icon ax-icon-close\" (click)=\"_handleBadgeRemove($event, item)\"></span>\n }\n </div> -->\n <ax-tag [text]=\"getDisplayText(item) | translate | async\" look=\"twotone\">\n @if (!disabled && !readonly && multiple) {\n <ax-suffix>\n <span class=\"ax-icon ax-icon-close\" (click)=\"_handleBadgeRemove($event, item)\"></span>\n </ax-suffix>\n }\n </ax-tag>\n } @else {\n {{ getDisplayText(item) | translate | async }}\n }\n }\n }\n </div>\n @if (selectedItems?.length && !disabled && !readonly) {\n <ng-content select=\"ax-clear-button\"></ng-content>\n }\n <button type=\"button\" [disabled]=\"disabled\" [tabIndex]=\"-1\" class=\"ax-general-button-icon\">\n @if (isLoading()) {\n <ax-loading></ax-loading>\n } @else {\n <span\n class=\"ax-icon\"\n [ngClass]=\"{\n 'ax-icon-chevron-down': !isOpen,\n 'ax-icon-chevron-up': isOpen,\n }\"\n ></span>\n }\n </button>\n <ng-content select=\"ax-suffix\"> </ng-content>\n <ng-template #search>\n <ng-content select=\"ax-search-box\"> </ng-content>\n </ng-template>\n </ng-container>\n <ng-container panel>\n <div\n #panel\n class=\"ax-select-box-panel\"\n [class.ax-no-truncate]=\"!isItemTruncated()\"\n [style.min-width]=\"_dropdownWidth()\"\n >\n @if (dropdown.isActionsheetStyle) {\n <ax-header class=\"ax-solid\">\n <ax-title>{{ caption || placeholder || '@acorex:selectbox.popover.title' | translate | async }}</ax-title>\n <ax-close-button [icon]=\"multiple ? 'ax-icon ax-icon-check' : 'ax-icon ax-icon-close'\"></ax-close-button>\n </ax-header>\n }\n @if (searchBox && (!minRecordsForSearch || _listDataSource.totalCount >= minRecordsForSearch || searchValue())) {\n <div class=\"ax-search-container\">\n <ng-template [ngTemplateOutlet]=\"search\"></ng-template>\n </div>\n }\n @if (renderList()) {\n <ax-list\n [name]=\"name\"\n [ngModel]=\"value\"\n [readonly]=\"readonly\"\n [multiple]=\"multiple\"\n [textField]=\"textField\"\n [selectionMode]=\"'item'\"\n [valueField]=\"valueField\"\n [itemHeight]=\"itemHeight()\"\n [itemTemplate]=\"itemTemplate\"\n [textTemplate]=\"textTemplate\"\n [dataSource]=\"_listDataSource\"\n [style.height]=\"_dropdownHeight()\"\n [loadingTemplate]=\"loadingTemplate\"\n [isItemTruncated]=\"isItemTruncated()\"\n [showItemTooltip]=\"showItemTooltip()\"\n (onItemClick)=\"_handleItemClick($event)\"\n [emptyTemplate]=\"emptyTemplate ?? empty\"\n (onValueChanged)=\"_handleValueChanged($event)\"\n (onItemSelected)=\"_handleItemSelected($event)\"\n >\n </ax-list>\n <ng-template #empty>\n {{ '@acorex:common.general.no-result-found' | translate | async }}\n </ng-template>\n }\n\n @if (isLoading()) {\n @if (loadingTemplate) {\n <ng-template [ngTemplateOutlet]=\"loadingTemplate\"></ng-template>\n }\n }\n\n <ng-content select=\"ax-footer\"> </ng-content>\n </div>\n </ng-container>\n</ax-dropdown-box>\n<ng-content select=\"ax-validation-rule\"> </ng-content>\n","import { AXBadgeModule } from '@acorex/components/badge';\nimport { AXCheckBoxModule } from '@acorex/components/check-box';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXLoadingModule } from '@acorex/components/loading';\nimport { AXPopoverModule } from '@acorex/components/popover';\nimport { AXTranslationModule } from '@acorex/core/translation';\nimport { A11yModule } from '@angular/cdk/a11y';\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\nimport { AXCommonModule } from '@acorex/cdk/common';\nimport { AXDropdownModule } from '@acorex/components/dropdown';\nimport { AXListModule } from '@acorex/components/list';\nimport { AXTextBoxModule } from '@acorex/components/text-box';\nimport { AXSelectBoxComponent } from './select-box.component';\n\n@NgModule({\n imports: [\n CommonModule,\n AXCommonModule,\n FormsModule,\n AXCheckBoxModule,\n AXBadgeModule,\n AXDecoratorModule,\n AXTranslationModule,\n AXPopoverModule,\n AXLoadingModule,\n A11yModule,\n AXTextBoxModule,\n AXDropdownModule,\n AXListModule,\n AXSelectBoxComponent,\n ],\n exports: [AXSelectBoxComponent],\n providers: [],\n})\nexport class AXSelectBoxModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"acorex-components-select-box.mjs","sources":["../../../../packages/components/select-box/src/lib/select-box.component.ts","../../../../packages/components/select-box/src/lib/select-box.component.html","../../../../packages/components/select-box/src/lib/select-box.module.ts","../../../../packages/components/select-box/src/acorex-components-select-box.ts"],"sourcesContent":["import {\n AXClearableComponent,\n AXClosableComponent,\n AXComponent,\n AXDataSource,\n AXEvent,\n AXFocusableComponent,\n AXHotkeysService,\n AXItemClickEvent,\n AXItemSelectedEvent,\n AXSearchableComponent,\n AXValuableComponent,\n AXValueChangedEvent,\n AX_SELECTION_DATA_TOKEN,\n MXLookComponent,\n MXSelectionBridgeService,\n MXSelectionValueComponent,\n convertArrayToDataSource,\n} from '@acorex/cdk/common';\nimport { AXDecoratorCloseButtonComponent, AXDecoratorGenericComponent } from '@acorex/components/decorators';\nimport { AXDropdownBoxComponent, MXDropdownBoxBaseComponent } from '@acorex/components/dropdown';\nimport { AXListComponent } from '@acorex/components/list';\nimport { AXLoadingComponent } from '@acorex/components/loading';\nimport { AXSearchBoxComponent } from '@acorex/components/search-box';\nimport { AXTagComponent } from '@acorex/components/tag';\nimport { AXTranslatorPipe } from '@acorex/core/translation';\nimport { AXUnsubscriber } from '@acorex/core/utils';\nimport { AsyncPipe, NgClass, NgTemplateOutlet } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n ContentChild,\n ElementRef,\n HostListener,\n Input,\n OnDestroy,\n TemplateRef,\n ViewChild,\n ViewEncapsulation,\n afterNextRender,\n forwardRef,\n inject,\n input,\n linkedSignal,\n signal,\n} from '@angular/core';\nimport { FormsModule, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { findLastIndex, get, isEqual, last, nth } from 'lodash-es';\nimport { classes } from 'polytype';\nimport { Observable, Subscription } from 'rxjs';\n\n/**\n * The Button is a component which detects user interaction and triggers a corresponding event\n * @category\n */\n@Component({\n selector: 'ax-select-box',\n templateUrl: './select-box.component.html',\n styleUrl: './select-box.component.compiled.css',\n inputs: [\n 'disabled',\n 'readonly',\n 'tabIndex',\n 'placeholder',\n 'minValue',\n 'maxValue',\n 'value',\n 'state',\n 'name',\n 'id',\n 'type',\n 'look',\n 'multiple',\n 'valueField',\n 'textField',\n 'disabledField',\n 'textTemplate',\n 'selectedItems',\n ],\n outputs: [\n 'valueChange',\n 'stateChange',\n 'onValueChanged',\n 'onBlur',\n 'onFocus',\n 'readonlyChange',\n 'disabledChange',\n 'onOpened',\n 'onClosed',\n 'onItemSelected',\n 'onItemClick',\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n providers: [\n { provide: AXComponent, useExisting: AXSelectBoxComponent },\n { provide: AXFocusableComponent, useExisting: AXSelectBoxComponent },\n { provide: AXValuableComponent, useExisting: AXSelectBoxComponent },\n { provide: AXClearableComponent, useExisting: AXSelectBoxComponent },\n { provide: AXClosableComponent, useExisting: AXSelectBoxComponent },\n { provide: AXSearchableComponent, useExisting: AXSelectBoxComponent },\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => AXSelectBoxComponent),\n multi: true,\n },\n {\n provide: AX_SELECTION_DATA_TOKEN,\n useClass: MXSelectionBridgeService,\n },\n AXUnsubscriber,\n ],\n host: { ngSkipHydration: 'true' },\n imports: [\n AXDropdownBoxComponent,\n NgTemplateOutlet,\n NgClass,\n AXDecoratorGenericComponent,\n AXDecoratorCloseButtonComponent,\n AXListComponent,\n FormsModule,\n AXLoadingComponent,\n AsyncPipe,\n AXTranslatorPipe,\n AXTagComponent,\n ],\n})\nexport class AXSelectBoxComponent\n extends classes(MXDropdownBoxBaseComponent, MXSelectionValueComponent, MXLookComponent)\n implements OnDestroy\n{\n /**\n * Determines if an item is truncated.\n *\n * @defaultValue true\n */\n readonly isItemTruncated = input(true);\n\n /**\n * Determines if a tooltip is shown for an item.\n *\n * @defaultValue false\n */\n readonly showItemTooltip = input(false);\n\n private host = inject(ElementRef);\n\n /** Height of each list item in pixels, or 'auto' to let list measure. */\n itemHeight = input<number | 'auto'>(40);\n\n /** Maximum number of visible items before scrolling. */\n maxVisibleItems = input(5);\n\n /** @ignore */\n private hotKeyService: AXHotkeysService = inject(AXHotkeysService);\n\n /** @ignore */\n protected isLoading = signal(false);\n\n /** @ignore */\n protected searchValue = signal('');\n\n /** @ignore */\n protected renderList = signal(false);\n\n /** @ignore */\n protected _dropdownWidth = linkedSignal<string>(() => this.dropdownWidth());\n\n /** @ignore */\n protected _dropdownHeight = signal<string>('auto');\n\n /** @ignore */\n protected _listDataSource: AXDataSource<any> = convertArrayToDataSource([], {\n key: this.valueField,\n pageSize: 10,\n });\n\n /** @ignore */\n private _originalDataSource: AXDataSource<any> | any[];\n\n /** @ignore */\n private onChangedSubscription: Subscription;\n\n /** @ignore */\n private onLoadingChangedSubscription: Subscription;\n\n #init = afterNextRender(() => {\n const formField = this.getHostElement().closest('ax-form-field');\n if (formField?.classList.contains('ax-state-floating-label')) {\n this.getHostElement().classList.add('ax-float-label');\n }\n });\n\n /**\n * Gets the data source for the component, which can be either an `AXDataSource` or an array of items.\n * @returns {AXDataSource<any> | any[]}\n */\n public get dataSource(): AXDataSource<any> | any[] {\n return this._originalDataSource;\n }\n\n /**\n * Sets the data source, either as an `AXDataSource` or an array.\n * @param {AXDataSource<any> | any[]} v\n */\n @Input()\n public set dataSource(v: AXDataSource<any> | any[]) {\n // check if the data source is the same\n if (Array.isArray(v) && Array.isArray(this._originalDataSource) && isEqual(v, this._originalDataSource)) {\n return;\n }\n if (v instanceof AXDataSource && v == this._originalDataSource) {\n return;\n }\n //\n this._originalDataSource = v;\n if (Array.isArray(v)) {\n this._listDataSource = convertArrayToDataSource(v, {\n key: this.valueField,\n pageSize: v.length || 10,\n });\n } else {\n this._listDataSource = this.dataSource as AXDataSource<any>;\n }\n //\n this.onChangedSubscription?.unsubscribe();\n this.onChangedSubscription = this._listDataSource.onChanged\n .pipe(this._unsubscriber.takeUntilDestroy)\n .subscribe(() => {\n this.updateDropdownSize();\n // Force refresh of selected items when data source changes\n this.forceRefreshSelectedItems();\n });\n //\n this.onLoadingChangedSubscription?.unsubscribe();\n this.onLoadingChangedSubscription = this._listDataSource.onLoadingChanged\n .pipe(this._unsubscriber.takeUntilDestroy)\n .subscribe((loading) => {\n this.isLoading.set(loading);\n });\n\n // After setting data source, try to fetch item data if needed\n setTimeout(() => this.fetchItemDataIfNeeded(), 0);\n }\n\n /**\n * The placeholder text displayed when the component is empty.\n * @param {string} placeholder\n */\n @Input()\n placeholder: string;\n\n /**\n * The minRecordsForSearch defines the minimum number of records required to display the search box.\n * @param {number} minRecordsForSearch\n */\n @Input()\n minRecordsForSearch: number;\n\n /**\n * The caption text to be displayed in the component.\n * @param {string} caption\n */\n @Input()\n caption: string;\n\n /**\n * The template used to customize the rendering of items.\n * @param {TemplateRef<any>} itemTemplate\n */\n @Input()\n itemTemplate: TemplateRef<any>;\n\n /**\n * The template used to customize the rendering of selected items.\n * @param {TemplateRef<any>} selectedTemplate\n */\n @Input()\n selectedTemplate: TemplateRef<any>;\n\n /**\n * The template used to display when there are no items.\n * @param {TemplateRef<any>} emptyTemplate\n */\n @Input()\n emptyTemplate: TemplateRef<any>;\n\n /**\n * The template used to display while loading.\n * @param {TemplateRef<any>} loadingTemplate\n */\n @Input()\n loadingTemplate: TemplateRef<any>;\n\n /**\n * The width of the dropdown in pixels.\n * @defaultValue null\n */\n dropdownWidth = input<string>(null);\n\n /** @ignore */\n @ViewChild('panel') panel!: ElementRef<HTMLDivElement>;\n\n /** @ignore */\n @ViewChild(AXListComponent)\n list: AXListComponent;\n\n /** @ignore */\n @ContentChild(AXSearchBoxComponent)\n searchBox: AXSearchBoxComponent;\n\n searchBoxAutoFocus = input(true);\n\n /** @ignore */\n @ViewChild(AXDropdownBoxComponent, { static: true })\n protected dropdown: AXDropdownBoxComponent;\n\n /**\n * Service for managing selection data, injected via `AX_SELECTION_DATA_TOKEN`.\n */\n public selectionService = inject(AX_SELECTION_DATA_TOKEN);\n\n searchEvent: Observable<any>;\n\n /** @ignore */\n private _unsubscriber = inject(AXUnsubscriber);\n\n /** @ignore */\n protected override ngOnInit(): void {\n super.ngOnInit();\n //\n this.registerValidation();\n // Proactively fetch item data if we have a value but no corresponding item\n this.fetchItemDataIfNeeded();\n }\n\n /**\n * Proactively fetches item data if the component has a value but no corresponding item data.\n * This prevents showing \"loading...\" when the component has a value.\n */\n private async fetchItemDataIfNeeded(): Promise<void> {\n const isEmptyValue =\n this.value == null || (Array.isArray(this.value) && this.value.length === 0);\n\n if (!isEmptyValue && this._listDataSource && !this.selectedItems?.length) {\n try {\n const item = await this.getItemByKey(this.value);\n if (item) {\n // Force refresh to update the display\n this.forceRefreshSelectedItems();\n }\n } catch (error) {\n console.warn('Failed to fetch item data:', error);\n }\n }\n }\n\n /** @ignore */\n override ngOnDestroy(): void {\n this.searchBox?.onKeyDown.unsubscribe();\n this.onChangedSubscription?.unsubscribe();\n this.onLoadingChangedSubscription?.unsubscribe();\n }\n\n /**\n * Retrieves an item by its key.\n * @param {any} key\n */\n getItemByKey(key: any): Promise<any> | any {\n // Static array data sources resolve synchronously to avoid a false loading state\n // for primitive values (e.g. color format \"hex\" / \"rgba\").\n if (Array.isArray(this._originalDataSource)) {\n for (const candidate of this._originalDataSource) {\n if (candidate != null && typeof candidate === 'object') {\n if (get(candidate, this.valueField) == key || get(candidate, this.textField) == key) {\n return candidate;\n }\n } else if (candidate == key) {\n return { [this.valueField]: candidate, [this.textField]: String(candidate ?? '') };\n }\n }\n return null;\n }\n\n if (this._listDataSource && typeof this._listDataSource.find === 'function') {\n return this._listDataSource.find(key);\n }\n\n // If neither method is available, return null\n console.warn('No find method available on data source');\n return null;\n }\n\n /** @ignore */\n protected _handleOnOpenedEvent(e: AXEvent) {\n if (!this.renderList()) {\n this.renderList.set(true);\n } else if (!this._listDataSource.totalCount || this._listDataSource.totalCount == 0) {\n this.list?.refresh(false);\n }\n this._handleFocus();\n //\n this.onOpened.emit({\n component: this,\n isUserInteraction: e.isUserInteraction,\n });\n this.updateDropdownSize();\n\n // Force refresh of selected items when opening to show updated text\n this.forceRefreshSelectedItems();\n }\n\n /** @ignore */\n protected _handleOnClosedEvent(e: AXEvent) {\n this.onClosed.emit({\n component: this,\n isUserInteraction: e.isUserInteraction,\n });\n this._unsubscriber.unsubscribe();\n }\n\n /** @ignore */\n protected _handleFocus() {\n setTimeout(() => {\n if (this.searchBox) {\n this.searchBox.look = 'flat';\n if (this.searchBoxAutoFocus()) {\n this.searchBox.focus();\n }\n //TODO: unsubscribe\n this.hotKeyService\n .addShortcut({ keys: 'Control.f', element: this.panel.nativeElement })\n .pipe(this._unsubscriber.takeUntilDestroy)\n .subscribe(() => {\n this.searchBox.focus();\n });\n this.searchBox.onKeyDown.pipe(this._unsubscriber.takeUntilDestroy).subscribe((e) => {\n if (e.nativeEvent.code === 'ArrowDown' || e.nativeEvent.key === 'ArrowDown') {\n this.list?.focus();\n e.nativeEvent.preventDefault();\n }\n });\n } else {\n this.list?.focus();\n }\n });\n }\n\n /** @ignore */\n protected _handleBadgeRemove(e: MouseEvent, item) {\n this.unselectItems(item);\n e.stopPropagation();\n }\n\n /** @ignore */\n protected _handleValueChanged(e: AXValueChangedEvent) {\n if (e.isUserInteraction) {\n if (!this.multiple) {\n this.close();\n }\n this.commitValue(e.component.selectedItems, true);\n }\n }\n\n /** @ignore */\n protected _handleItemClick(e: AXItemClickEvent) {\n this.onItemClick.emit(e);\n if (!this.multiple) {\n this.close();\n }\n }\n\n /** @ignore */\n protected _handleItemSelected(e: AXItemSelectedEvent) {\n this.onItemSelected.emit(e);\n this.resetSearchAfterSelection();\n if (!this.multiple) {\n this.close();\n }\n }\n\n private resetSearchAfterSelection(): void {\n if (!this.searchBox && !this.searchBox?.value) return;\n if (this.searchBox && this.searchBox?.value) this.searchBox.commitValue('', false);\n }\n\n /** @ignore */\n private setDropdownSize(count = 0) {\n if (this.dropdown.isActionsheetStyle) {\n const itemPx = typeof this.itemHeight() === 'number' ? (this.itemHeight() as number) : 40;\n this._dropdownHeight.set(\n ['auto', '0px'].includes(this._dropdownHeight()) ? `${Math.min(15, count) * itemPx}px` : this._dropdownHeight(),\n );\n this._dropdownWidth.set('100%');\n } else {\n const hostWidth = Math.max(this.getHostElement().offsetWidth, Number(this.dropdownWidth()) || 0);\n const itemPx = typeof this.itemHeight() === 'number' ? (this.itemHeight() as number) : 40;\n const maxItems = Number(this.maxVisibleItems());\n this._dropdownWidth.set(`${hostWidth}px`);\n this._dropdownHeight.set(count == 0 ? 'auto' : `${Math.min(maxItems, count) * itemPx}px`);\n }\n setTimeout(() => {\n this.dropdown.updatePosition();\n });\n }\n\n private updateDropdownPosition() {\n setTimeout(() => {\n this.dropdown.updatePosition();\n });\n }\n\n private updateDropdownSize() {\n setTimeout(() => {\n this.setDropdownSize(this._listDataSource.totalCount);\n this.updateDropdownPosition();\n this.list?.render();\n if (!this.isItemTruncated()) {\n setTimeout(() => {\n this._fitDropdownToContent();\n setTimeout(() => this._fitDropdownToContent(), 100);\n });\n }\n });\n }\n\n private _fitDropdownToContent() {\n const panel = this.panel?.nativeElement;\n if (!panel) return;\n\n const hostWidth = Math.max(this.getHostElement().offsetWidth, Number(this.dropdownWidth()) || 0);\n let contentWidth = hostWidth;\n\n panel.querySelectorAll<HTMLElement>('li.list-item').forEach((item) => {\n const label = item.querySelector<HTMLElement>('.ax-label-container span');\n if (label) {\n const labelContainer = label.parentElement;\n const horizontalPadding = labelContainer\n ? item.offsetWidth - labelContainer.clientWidth\n : 0;\n contentWidth = Math.max(contentWidth, label.scrollWidth + horizontalPadding);\n } else {\n contentWidth = Math.max(contentWidth, item.scrollWidth);\n }\n });\n\n const nextWidth = `${Math.max(hostWidth, contentWidth)}px`;\n if (this._dropdownWidth() !== nextWidth) {\n this._dropdownWidth.set(nextWidth);\n this.dropdown.updatePosition();\n }\n }\n\n override internalValueChanged(value: any) {\n super.internalValueChanged(value);\n this.updateDropdownPosition();\n // Try to fetch item data when value changes\n setTimeout(() => this.fetchItemDataIfNeeded(), 0);\n }\n\n /** @ignore */\n @HostListener('keydown', ['$event'])\n _handleKeydown(e: KeyboardEvent) {\n if (e.code === 'ArrowDown' || e.code === 'ArrowUp') {\n this.selectItemByNav(e.code === 'ArrowDown' ? 1 : -1);\n e.preventDefault();\n } else if (e.code === 'Backspace') {\n this.unselectItems(this.selectedItems.pop());\n e.preventDefault();\n }\n // if ((e.code === 'Space' || e.code === 'Enter') && this.hasItems) {\n // if (this.readonly || this.disabled) {\n // e.preventDefault();\n // e.stopPropagation();\n // return;\n // }\n // const id = document.activeElement?.closest('li')?.dataset?.id;\n // this.toggleSelect(id);\n // e.preventDefault();\n // e.stopPropagation()\n // }\n }\n\n /** @ignore */\n private selectItemByNav(sign: 1 | -1) {\n if (Array.isArray(this.dataSource) && !this.multiple) {\n const items = this.normalizeItemsList(this.dataSource);\n const _last: any = last(this.selectedItems);\n let i = -1;\n if (_last) {\n i = findLastIndex(items, [this.valueField, get(_last as Record<string, unknown>, this.valueField)]);\n }\n i += sign;\n if (i < 0 || i >= items.length) return;\n const next = nth<any>(items, i);\n if (next) {\n this.selectItems(next);\n }\n } else {\n this.open();\n }\n }\n\n /**\n * Filters the data source based on the provided search term.\n * @param {string} term\n */\n search(term: string) {\n this.searchValue.set(term);\n if (term) {\n this._listDataSource.filter({\n field: this.textField,\n value: term,\n operator: { type: 'contains' },\n });\n } else {\n this._listDataSource.clearFilter();\n }\n this._listDataSource.refresh();\n }\n\n /**\n * Refreshes the component by resetting state, clearing selection cache, refreshing the list, and closing the component.\n */\n refresh() {\n this.reset(false);\n this.clearSelectionCache();\n this.list?.refresh();\n this.close();\n }\n\n @HostListener('click')\n hostClickListener() {\n this.toggle();\n }\n}\n","<ax-dropdown-box\n [class.ax-state-multiple]=\"multiple\"\n (onOpened)=\"_handleOnOpenedEvent($event)\"\n (onClosed)=\"_handleOnClosedEvent($event)\"\n (focus)=\"emitOnFocusEvent($event)\"\n (blur)=\"emitOnBlurEvent($event)\"\n [disabled]=\"disabled\"\n [look]=\"look\"\n [popoverWidth]=\"dropdownWidth()\"\n>\n <ng-container input>\n <ng-content select=\"ax-prefix\"> </ng-content>\n <div\n class=\"ax-editor ax-chips-container ax-content ax-input\"\n [class.ax-state-multiple]=\"multiple\"\n [tabindex]=\"tabIndex\"\n >\n @if (selectedItems.length === 0) {\n <div class=\"ax-placeholder\" role=\"textbox\" area-readonly=\"true\">\n {{ placeholder | translate | async }}\n </div>\n }\n @for (item of selectedItems; track $index) {\n @if (selectedTemplate) {\n <ng-template\n [ngTemplateOutlet]=\"selectedTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: { data: item } }\"\n ></ng-template>\n } @else {\n @if (multiple) {\n <!-- <div class=\"bg-surface border-surface flex items-center justify-center gap-2 rounded-full border px-2 py-1\">\n <ax-text>{{ getDisplayText(item) | translate | async }}</ax-text>\n @if (!disabled && !readonly && multiple) {\n <span class=\"ax-icon ax-icon-close\" (click)=\"_handleBadgeRemove($event, item)\"></span>\n }\n </div> -->\n <ax-tag [text]=\"getDisplayText(item) | translate | async\" look=\"twotone\">\n @if (!disabled && !readonly && multiple) {\n <ax-suffix>\n <span class=\"ax-icon ax-icon-close\" (click)=\"_handleBadgeRemove($event, item)\"></span>\n </ax-suffix>\n }\n </ax-tag>\n } @else {\n {{ getDisplayText(item) | translate | async }}\n }\n }\n }\n </div>\n @if (selectedItems?.length && !disabled && !readonly) {\n <ng-content select=\"ax-clear-button\"></ng-content>\n }\n <button type=\"button\" [disabled]=\"disabled\" [tabIndex]=\"-1\" class=\"ax-general-button-icon\">\n @if (isLoading()) {\n <ax-loading></ax-loading>\n } @else {\n <span\n class=\"ax-icon\"\n [ngClass]=\"{\n 'ax-icon-chevron-down': !isOpen,\n 'ax-icon-chevron-up': isOpen,\n }\"\n ></span>\n }\n </button>\n <ng-content select=\"ax-suffix\"> </ng-content>\n <ng-template #search>\n <ng-content select=\"ax-search-box\"> </ng-content>\n </ng-template>\n </ng-container>\n <ng-container panel>\n <div\n #panel\n class=\"ax-select-box-panel\"\n [class.ax-no-truncate]=\"!isItemTruncated()\"\n [style.min-width]=\"_dropdownWidth()\"\n >\n @if (dropdown.isActionsheetStyle) {\n <ax-header class=\"ax-solid\">\n <ax-title>{{ caption || placeholder || '@acorex:selectbox.popover.title' | translate | async }}</ax-title>\n <ax-close-button [icon]=\"multiple ? 'ax-icon ax-icon-check' : 'ax-icon ax-icon-close'\"></ax-close-button>\n </ax-header>\n }\n @if (searchBox && (!minRecordsForSearch || _listDataSource.totalCount >= minRecordsForSearch || searchValue())) {\n <div class=\"ax-search-container\">\n <ng-template [ngTemplateOutlet]=\"search\"></ng-template>\n </div>\n }\n @if (renderList()) {\n <ax-list\n [name]=\"name\"\n [ngModel]=\"value\"\n [readonly]=\"readonly\"\n [multiple]=\"multiple\"\n [textField]=\"textField\"\n [selectionMode]=\"'item'\"\n [valueField]=\"valueField\"\n [itemHeight]=\"itemHeight()\"\n [itemTemplate]=\"itemTemplate\"\n [textTemplate]=\"textTemplate\"\n [dataSource]=\"_listDataSource\"\n [style.height]=\"_dropdownHeight()\"\n [loadingTemplate]=\"loadingTemplate\"\n [isItemTruncated]=\"isItemTruncated()\"\n [showItemTooltip]=\"showItemTooltip()\"\n (onItemClick)=\"_handleItemClick($event)\"\n [emptyTemplate]=\"emptyTemplate ?? empty\"\n (onValueChanged)=\"_handleValueChanged($event)\"\n (onItemSelected)=\"_handleItemSelected($event)\"\n >\n </ax-list>\n <ng-template #empty>\n {{ '@acorex:common.general.no-result-found' | translate | async }}\n </ng-template>\n }\n\n @if (isLoading()) {\n @if (loadingTemplate) {\n <ng-template [ngTemplateOutlet]=\"loadingTemplate\"></ng-template>\n }\n }\n\n <ng-content select=\"ax-footer\"> </ng-content>\n </div>\n </ng-container>\n</ax-dropdown-box>\n<ng-content select=\"ax-validation-rule\"> </ng-content>\n","import { AXBadgeModule } from '@acorex/components/badge';\nimport { AXCheckBoxModule } from '@acorex/components/check-box';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXLoadingModule } from '@acorex/components/loading';\nimport { AXPopoverModule } from '@acorex/components/popover';\nimport { AXTranslationModule } from '@acorex/core/translation';\nimport { A11yModule } from '@angular/cdk/a11y';\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\nimport { AXCommonModule } from '@acorex/cdk/common';\nimport { AXDropdownModule } from '@acorex/components/dropdown';\nimport { AXListModule } from '@acorex/components/list';\nimport { AXTextBoxModule } from '@acorex/components/text-box';\nimport { AXSelectBoxComponent } from './select-box.component';\n\n@NgModule({\n imports: [\n CommonModule,\n AXCommonModule,\n FormsModule,\n AXCheckBoxModule,\n AXBadgeModule,\n AXDecoratorModule,\n AXTranslationModule,\n AXPopoverModule,\n AXLoadingModule,\n A11yModule,\n AXTextBoxModule,\n AXDropdownModule,\n AXListModule,\n AXSelectBoxComponent,\n ],\n exports: [AXSelectBoxComponent],\n providers: [],\n})\nexport class AXSelectBoxModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,9 +1,9 @@
1
1
  {
2
2
  "name": "@acorex/components",
3
- "version": "21.0.3-next.1",
3
+ "version": "21.0.3-next.11",
4
4
  "peerDependencies": {
5
- "@acorex/core": "21.0.3-next.1",
6
- "@acorex/cdk": "21.0.3-next.1",
5
+ "@acorex/core": "21.0.3-next.11",
6
+ "@acorex/cdk": "21.0.3-next.11",
7
7
  "polytype": ">=0.17.0",
8
8
  "angular-imask": ">=7.6.1",
9
9
  "gridstack": ">=12.0.0",