@lucca-front/ng 22.0.4 → 22.0.5-rc.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -79,7 +79,7 @@ class OptionComponent {
79
79
  #parentOptionRef;
80
80
  #defaultGroupId;
81
81
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.4", ngImport: i0, type: OptionComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
82
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.1.4", type: OptionComponent, isStandalone: true, selector: "lu-listbox-option", inputs: { elementId: { classPropertyName: "elementId", publicName: "elementId", isSignal: true, isRequired: false, transformFunction: null }, checked: { classPropertyName: "checked", publicName: "checked", isSignal: true, isRequired: false, transformFunction: null }, mixed: { classPropertyName: "mixed", publicName: "mixed", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, hovered: { classPropertyName: "hovered", publicName: "hovered", isSignal: true, isRequired: false, transformFunction: null }, add: { classPropertyName: "add", publicName: "add", isSignal: true, isRequired: false, transformFunction: null }, group: { classPropertyName: "group", publicName: "group", isSignal: true, isRequired: false, transformFunction: null }, groupId: { classPropertyName: "groupId", publicName: "groupId", isSignal: true, isRequired: false, transformFunction: null }, select: { classPropertyName: "select", publicName: "select", isSignal: true, isRequired: false, transformFunction: null }, selectAll: { classPropertyName: "selectAll", publicName: "selectAll", isSignal: true, isRequired: false, transformFunction: null }, treeitemLevel: { classPropertyName: "treeitemLevel", publicName: "treeitemLevel", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "attr.role": "group() ? \"group\" : tree() ? \"treeitem\" : \"option\"", "attr.aria-labelledby": "group() ? groupLabelId() : null", "attr.aria-selected": "add() ? null : mixed() ? \"mixed\" : checked()", "attr.aria-disabled": "disabled()", "attr.aria-hidden": "empty()", "attr.id": "empty() ? id() : elementId()", "class.is-selected": "checked()", "class.is-disabled": "disabled()", "class.mod-add": "add()", "class.mod-select": "select()" }, classAttribute: "listboxOption" }, providers: [{ provide: OPTION_INSTANCE, useExisting: forwardRef(() => OptionComponent) }], queries: [{ propertyName: "treeitemContent", first: true, predicate: Treeitem, descendants: true, isSignal: true }], ngImport: i0, template: "<div class=\"listboxOption-content\" [class.is-hovered]=\"hovered()\" [attr.id]=\"group() ? groupLabelId() : null\">\n\t@if (multiple() && !add() && !selectAll() && !select()) {\n\t\t<span class=\"listboxOption-content-checkboxField checkboxField\" aria-hidden=\"true\">\n\t\t\t<span class=\"listboxOption-content-checkboxField-input checkboxField-input\"></span>\n\t\t\t<span class=\"checkboxField-icon\"><span class=\"checkboxField-icon-check\"></span></span>\n\t\t</span>\n\t}\n\t@if (add()) {\n\t\t<lu-icon icon=\"mathsPlus\" />\n\t}\n\t<ng-content />\n\t<ng-content select=\"[group-action]\" />\n\t@if (selectAll()) {\n\t\t<lu-listbox-option [elementId]=\"elementId() + '-selectAll'\" select>{{ selectAll() }}</lu-listbox-option>\n\t}\n</div>\n<ng-content select=\"[optgroup]\" />\n\n@if (hasTreeitems()) {\n\t<div class=\"listboxOptionWrapper\" role=\"group\" [attr.style]=\"'--components-listboxOptionWrapper-level: ' + wrapperLevel()\">\n\t\t<ng-content select=\"[treeitem]\" />\n\t</div>\n}\n", dependencies: [{ kind: "component", type: OptionComponent, selector: "lu-listbox-option", inputs: ["elementId", "checked", "mixed", "disabled", "hovered", "add", "group", "groupId", "select", "selectAll", "treeitemLevel"] }, { kind: "component", type: IconComponent, selector: "lu-icon, pr-icon", inputs: ["icon", "alt", "size", "color", "AI"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
82
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.1.4", type: OptionComponent, isStandalone: true, selector: "lu-listbox-option", inputs: { elementId: { classPropertyName: "elementId", publicName: "elementId", isSignal: true, isRequired: false, transformFunction: null }, checked: { classPropertyName: "checked", publicName: "checked", isSignal: true, isRequired: false, transformFunction: null }, mixed: { classPropertyName: "mixed", publicName: "mixed", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, hovered: { classPropertyName: "hovered", publicName: "hovered", isSignal: true, isRequired: false, transformFunction: null }, add: { classPropertyName: "add", publicName: "add", isSignal: true, isRequired: false, transformFunction: null }, group: { classPropertyName: "group", publicName: "group", isSignal: true, isRequired: false, transformFunction: null }, groupId: { classPropertyName: "groupId", publicName: "groupId", isSignal: true, isRequired: false, transformFunction: null }, select: { classPropertyName: "select", publicName: "select", isSignal: true, isRequired: false, transformFunction: null }, selectAll: { classPropertyName: "selectAll", publicName: "selectAll", isSignal: true, isRequired: false, transformFunction: null }, treeitemLevel: { classPropertyName: "treeitemLevel", publicName: "treeitemLevel", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "attr.role": "group() ? \"group\" : tree() ? \"treeitem\" : \"option\"", "attr.aria-labelledby": "group() ? groupLabelId() : null", "attr.aria-selected": "add() || mixed() ? null : checked()", "attr.aria-checked": "mixed() ? \"mixed\" : null", "attr.aria-disabled": "disabled()", "attr.aria-hidden": "empty()", "attr.id": "empty() ? id() : elementId()", "class.is-selected": "checked()", "class.is-disabled": "disabled()", "class.mod-add": "add()", "class.mod-select": "select()" }, classAttribute: "listboxOption" }, providers: [{ provide: OPTION_INSTANCE, useExisting: forwardRef(() => OptionComponent) }], queries: [{ propertyName: "treeitemContent", first: true, predicate: Treeitem, descendants: true, isSignal: true }], ngImport: i0, template: "<div class=\"listboxOption-content\" [class.is-hovered]=\"hovered()\" [attr.id]=\"group() ? groupLabelId() : null\">\n\t@if (multiple() && !add() && !selectAll() && !select()) {\n\t\t<span class=\"listboxOption-content-checkboxField checkboxField\" aria-hidden=\"true\">\n\t\t\t<span class=\"listboxOption-content-checkboxField-input checkboxField-input\"></span>\n\t\t\t<span class=\"checkboxField-icon\"><span class=\"checkboxField-icon-check\"></span></span>\n\t\t</span>\n\t}\n\t@if (add()) {\n\t\t<lu-icon icon=\"mathsPlus\" />\n\t}\n\t<ng-content />\n\t<ng-content select=\"[group-action]\" />\n\t@if (selectAll()) {\n\t\t<lu-listbox-option [elementId]=\"elementId() + '-selectAll'\" select>{{ selectAll() }}</lu-listbox-option>\n\t}\n</div>\n<ng-content select=\"[optgroup]\" />\n\n@if (hasTreeitems()) {\n\t<div class=\"listboxOptionWrapper\" role=\"group\" [attr.style]=\"'--components-listboxOptionWrapper-level: ' + wrapperLevel()\">\n\t\t<ng-content select=\"[treeitem]\" />\n\t</div>\n}\n", dependencies: [{ kind: "component", type: OptionComponent, selector: "lu-listbox-option", inputs: ["elementId", "checked", "mixed", "disabled", "hovered", "add", "group", "groupId", "select", "selectAll", "treeitemLevel"] }, { kind: "component", type: IconComponent, selector: "lu-icon, pr-icon", inputs: ["icon", "alt", "size", "color", "AI"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
83
83
  }
84
84
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.4", ngImport: i0, type: OptionComponent, decorators: [{
85
85
  type: Component,
@@ -87,7 +87,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.4", ngImpor
87
87
  class: 'listboxOption',
88
88
  '[attr.role]': 'group() ? "group" : tree() ? "treeitem" : "option"',
89
89
  '[attr.aria-labelledby]': 'group() ? groupLabelId() : null',
90
- '[attr.aria-selected]': 'add() ? null : mixed() ? "mixed" : checked()',
90
+ '[attr.aria-selected]': 'add() || mixed() ? null : checked()',
91
+ '[attr.aria-checked]': 'mixed() ? "mixed" : null',
91
92
  '[attr.aria-disabled]': 'disabled()',
92
93
  '[attr.aria-hidden]': 'empty()',
93
94
  // The empty status option is the target of the listbox `aria-describedby`, so it must
@@ -1 +1 @@
1
- {"version":3,"file":"lucca-front-ng-listbox.mjs","sources":["../../../packages/ng/listbox/listbox.type.ts","../../../packages/ng/listbox/tokens.ts","../../../packages/ng/listbox/option/option.component.ts","../../../packages/ng/listbox/option/option.component.html","../../../packages/ng/listbox/listbox.component.ts","../../../packages/ng/listbox/listbox.component.html","../../../packages/ng/listbox/lucca-front-ng-listbox.ts"],"sourcesContent":["/**\n * Available ListboxComponent Types\n */\n\nexport const LISTBOX_STATE = ['loading', 'empty'] as const;\nexport type ListboxState = (typeof LISTBOX_STATE)[number];\n","import { InjectionToken } from '@angular/core';\nimport { ListboxComponent } from './listbox.component';\nimport { OptionComponent } from './option/option.component';\n\nexport const LISTBOX_INSTANCE = new InjectionToken<ListboxComponent>('LuListboxInstance');\nexport const OPTION_INSTANCE = new InjectionToken<OptionComponent>('LuOptionInstance');\n","import { ChangeDetectionStrategy, Component, computed, contentChild, Directive, forwardRef, inject, input, ViewEncapsulation } from '@angular/core';\nimport { luBooleanAttribute } from '@lucca-front/ng/core';\nimport { IconComponent } from '@lucca-front/ng/icon';\nimport { LISTBOX_INSTANCE, OPTION_INSTANCE } from '../tokens';\n\nlet nextId = 0;\n\n@Directive({\n\t// eslint-disable-next-line @angular-eslint/directive-selector\n\tselector: '[treeitem]',\n})\nexport class Treeitem {}\n\n@Component({\n\tselector: 'lu-listbox-option',\n\ttemplateUrl: './option.component.html',\n\tencapsulation: ViewEncapsulation.None,\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\thost: {\n\t\tclass: 'listboxOption',\n\t\t'[attr.role]': 'group() ? \"group\" : tree() ? \"treeitem\" : \"option\"',\n\t\t'[attr.aria-labelledby]': 'group() ? groupLabelId() : null',\n\t\t'[attr.aria-selected]': 'add() ? null : mixed() ? \"mixed\" : checked()',\n\t\t'[attr.aria-disabled]': 'disabled()',\n\t\t'[attr.aria-hidden]': 'empty()',\n\t\t// The empty status option is the target of the listbox `aria-describedby`, so it must\n\t\t// carry the listbox id even though no consumer sets an elementId on it.\n\t\t'[attr.id]': 'empty() ? id() : elementId()',\n\t\t'[class.is-selected]': 'checked()',\n\t\t'[class.is-disabled]': 'disabled()',\n\t\t'[class.mod-add]': 'add()',\n\t\t'[class.mod-select]': 'select()',\n\t},\n\timports: [IconComponent],\n\tproviders: [{ provide: OPTION_INSTANCE, useExisting: forwardRef(() => OptionComponent) }],\n})\nexport class OptionComponent {\n\t// Optional so the option can live outside a lu-listbox, e.g. a sticky \"add option\" row\n\t// rendered next to the listbox but inside the same scroll container.\n\t#listboxRef = inject(LISTBOX_INSTANCE, { optional: true });\n\t#parentOptionRef = inject(OPTION_INSTANCE, { skipSelf: true, optional: true });\n\n\treadonly elementId = input<string | null>(null);\n\n\treadonly checked = input(false, { transform: luBooleanAttribute });\n\n\treadonly mixed = input(false, { transform: luBooleanAttribute });\n\n\treadonly disabled = input(false, { transform: luBooleanAttribute });\n\n\treadonly hovered = input(false, { transform: luBooleanAttribute });\n\n\treadonly add = input(false, { transform: luBooleanAttribute });\n\n\treadonly group = input(false, { transform: luBooleanAttribute });\n\n\t/**\n\t * Overrides the generated id used to label the group, so consumers can provide\n\t * a deterministic id (e.g. derived from a select id and a group key).\n\t */\n\treadonly groupId = input<string | null>(null);\n\n\treadonly select = input(false, { transform: luBooleanAttribute });\n\n\treadonly selectAll = input<'string' | null>();\n\n\treadonly multiple = computed(() => this.#listboxRef?.multiple() ?? false);\n\treadonly tree = computed(() => this.#listboxRef?.tree() ?? false);\n\treadonly empty = computed(() => this.#listboxRef?.state() === 'empty');\n\treadonly id = computed(() => this.#listboxRef?.listboxId ?? null);\n\n\treadonly groupLabelId = computed(() => this.groupId() ?? this.#defaultGroupId);\n\n\treadonly #defaultGroupId = `group${nextId++}`;\n\n\treadonly treeitemContent = contentChild(Treeitem);\n\n\t/**\n\t * Depth of the nested `[treeitem]` wrapper, for consumers that hand their own projected\n\t * content over to this option: a content query does not cross an `ng-content` boundary, so\n\t * the option can then neither see those children nor derive the depth it sits at. Setting it\n\t * renders the wrapper and pins its level; leave it null to let both be worked out here.\n\t */\n\treadonly treeitemLevel = input<number | null>(null);\n\n\treadonly level: number = (this.#parentOptionRef?.level || 0) + 1;\n\n\treadonly hasTreeitems = computed(() => !!this.treeitemContent() || this.treeitemLevel() !== null);\n\n\treadonly wrapperLevel = computed(() => this.treeitemLevel() ?? this.level);\n}\n","<div class=\"listboxOption-content\" [class.is-hovered]=\"hovered()\" [attr.id]=\"group() ? groupLabelId() : null\">\n\t@if (multiple() && !add() && !selectAll() && !select()) {\n\t\t<span class=\"listboxOption-content-checkboxField checkboxField\" aria-hidden=\"true\">\n\t\t\t<span class=\"listboxOption-content-checkboxField-input checkboxField-input\"></span>\n\t\t\t<span class=\"checkboxField-icon\"><span class=\"checkboxField-icon-check\"></span></span>\n\t\t</span>\n\t}\n\t@if (add()) {\n\t\t<lu-icon icon=\"mathsPlus\" />\n\t}\n\t<ng-content />\n\t<ng-content select=\"[group-action]\" />\n\t@if (selectAll()) {\n\t\t<lu-listbox-option [elementId]=\"elementId() + '-selectAll'\" select>{{ selectAll() }}</lu-listbox-option>\n\t}\n</div>\n<ng-content select=\"[optgroup]\" />\n\n@if (hasTreeitems()) {\n\t<div class=\"listboxOptionWrapper\" role=\"group\" [attr.style]=\"'--components-listboxOptionWrapper-level: ' + wrapperLevel()\">\n\t\t<ng-content select=\"[treeitem]\" />\n\t</div>\n}\n","import { ChangeDetectionStrategy, Component, computed, forwardRef, input, ViewEncapsulation } from '@angular/core';\n\nimport { luBooleanAttribute } from '@lucca-front/ng/core';\nimport { ListboxState } from './listbox.type';\nimport { OptionComponent } from './option/option.component';\nimport { LISTBOX_INSTANCE } from './tokens';\n\nlet nextId = 0;\n\n@Component({\n\tselector: 'lu-listbox',\n\ttemplateUrl: './listbox.component.html',\n\tencapsulation: ViewEncapsulation.None,\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\thost: {\n\t\tclass: 'listboxOptionWrapper',\n\t\t'[attr.role]': 'tree() ? \"tree\" : \"listbox\"',\n\t\t'[attr.aria-multiselectable]': 'multiple() ? true : null',\n\t\t'[class.mod-multiple]': 'multiple()',\n\t\t'[attr.aria-busy]': 'state() === \"loading\"',\n\t\t'[attr.aria-describedby]': 'state() === \"empty\" ? listboxId : null',\n\t},\n\timports: [OptionComponent],\n\tproviders: [{ provide: LISTBOX_INSTANCE, useExisting: forwardRef(() => ListboxComponent) }],\n})\nexport class ListboxComponent {\n\t/**\n\t * Applies multiple mod to the listbox\n\t */\n\treadonly multiple = input(false, { transform: luBooleanAttribute });\n\n\t/**\n\t * Defines listbox role tree or listbox by default\n\t */\n\treadonly tree = input(false, { transform: luBooleanAttribute });\n\n\t/**\n\t * Listbox state\n\t */\n\treadonly state = input<ListboxState | null>(null);\n\n\t/**\n\t * Add message when listbox state loading or empty\n\t */\n\treadonly statusMsg = input<string | null>(null);\n\n\treadonly listboxId = `listbox${nextId++}`;\n\n\treadonly skeletonWidth = computed(() => (this.state() === 'loading' ? `${Math.floor(Math.random() * 60 + 20)}%` : null));\n}\n","<ng-content select=\"[listbox-header]\" />\n@if (state() !== \"empty\") {\n\t<ng-content />\n}\n@if (state() === \"empty\") {\n\t<lu-listbox-option empty>{{ statusMsg() }}</lu-listbox-option>\n} @else if (state() === \"loading\") {\n\t<lu-listbox-option class=\"skeleton is-loading\" inert=\"inert\">\n\t\t<span class=\"skeleton-item\" [style.--components-skeleton-text-width]=\"skeletonWidth()\"></span>\n\t</lu-listbox-option>\n\t<span class=\"pr-u-mask\">{{ statusMsg() }}</span>\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["nextId"],"mappings":"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"}
1
+ {"version":3,"file":"lucca-front-ng-listbox.mjs","sources":["../../../packages/ng/listbox/listbox.type.ts","../../../packages/ng/listbox/tokens.ts","../../../packages/ng/listbox/option/option.component.ts","../../../packages/ng/listbox/option/option.component.html","../../../packages/ng/listbox/listbox.component.ts","../../../packages/ng/listbox/listbox.component.html","../../../packages/ng/listbox/lucca-front-ng-listbox.ts"],"sourcesContent":["/**\n * Available ListboxComponent Types\n */\n\nexport const LISTBOX_STATE = ['loading', 'empty'] as const;\nexport type ListboxState = (typeof LISTBOX_STATE)[number];\n","import { InjectionToken } from '@angular/core';\nimport { ListboxComponent } from './listbox.component';\nimport { OptionComponent } from './option/option.component';\n\nexport const LISTBOX_INSTANCE = new InjectionToken<ListboxComponent>('LuListboxInstance');\nexport const OPTION_INSTANCE = new InjectionToken<OptionComponent>('LuOptionInstance');\n","import { ChangeDetectionStrategy, Component, computed, contentChild, Directive, forwardRef, inject, input, ViewEncapsulation } from '@angular/core';\nimport { luBooleanAttribute } from '@lucca-front/ng/core';\nimport { IconComponent } from '@lucca-front/ng/icon';\nimport { LISTBOX_INSTANCE, OPTION_INSTANCE } from '../tokens';\n\nlet nextId = 0;\n\n@Directive({\n\t// eslint-disable-next-line @angular-eslint/directive-selector\n\tselector: '[treeitem]',\n})\nexport class Treeitem {}\n\n@Component({\n\tselector: 'lu-listbox-option',\n\ttemplateUrl: './option.component.html',\n\tencapsulation: ViewEncapsulation.None,\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\thost: {\n\t\tclass: 'listboxOption',\n\t\t'[attr.role]': 'group() ? \"group\" : tree() ? \"treeitem\" : \"option\"',\n\t\t'[attr.aria-labelledby]': 'group() ? groupLabelId() : null',\n\t\t'[attr.aria-selected]': 'add() || mixed() ? null : checked()',\n\t\t'[attr.aria-checked]': 'mixed() ? \"mixed\" : null',\n\t\t'[attr.aria-disabled]': 'disabled()',\n\t\t'[attr.aria-hidden]': 'empty()',\n\t\t// The empty status option is the target of the listbox `aria-describedby`, so it must\n\t\t// carry the listbox id even though no consumer sets an elementId on it.\n\t\t'[attr.id]': 'empty() ? id() : elementId()',\n\t\t'[class.is-selected]': 'checked()',\n\t\t'[class.is-disabled]': 'disabled()',\n\t\t'[class.mod-add]': 'add()',\n\t\t'[class.mod-select]': 'select()',\n\t},\n\timports: [IconComponent],\n\tproviders: [{ provide: OPTION_INSTANCE, useExisting: forwardRef(() => OptionComponent) }],\n})\nexport class OptionComponent {\n\t// Optional so the option can live outside a lu-listbox, e.g. a sticky \"add option\" row\n\t// rendered next to the listbox but inside the same scroll container.\n\t#listboxRef = inject(LISTBOX_INSTANCE, { optional: true });\n\t#parentOptionRef = inject(OPTION_INSTANCE, { skipSelf: true, optional: true });\n\n\treadonly elementId = input<string | null>(null);\n\n\treadonly checked = input(false, { transform: luBooleanAttribute });\n\n\treadonly mixed = input(false, { transform: luBooleanAttribute });\n\n\treadonly disabled = input(false, { transform: luBooleanAttribute });\n\n\treadonly hovered = input(false, { transform: luBooleanAttribute });\n\n\treadonly add = input(false, { transform: luBooleanAttribute });\n\n\treadonly group = input(false, { transform: luBooleanAttribute });\n\n\t/**\n\t * Overrides the generated id used to label the group, so consumers can provide\n\t * a deterministic id (e.g. derived from a select id and a group key).\n\t */\n\treadonly groupId = input<string | null>(null);\n\n\treadonly select = input(false, { transform: luBooleanAttribute });\n\n\treadonly selectAll = input<'string' | null>();\n\n\treadonly multiple = computed(() => this.#listboxRef?.multiple() ?? false);\n\treadonly tree = computed(() => this.#listboxRef?.tree() ?? false);\n\treadonly empty = computed(() => this.#listboxRef?.state() === 'empty');\n\treadonly id = computed(() => this.#listboxRef?.listboxId ?? null);\n\n\treadonly groupLabelId = computed(() => this.groupId() ?? this.#defaultGroupId);\n\n\treadonly #defaultGroupId = `group${nextId++}`;\n\n\treadonly treeitemContent = contentChild(Treeitem);\n\n\t/**\n\t * Depth of the nested `[treeitem]` wrapper, for consumers that hand their own projected\n\t * content over to this option: a content query does not cross an `ng-content` boundary, so\n\t * the option can then neither see those children nor derive the depth it sits at. Setting it\n\t * renders the wrapper and pins its level; leave it null to let both be worked out here.\n\t */\n\treadonly treeitemLevel = input<number | null>(null);\n\n\treadonly level: number = (this.#parentOptionRef?.level || 0) + 1;\n\n\treadonly hasTreeitems = computed(() => !!this.treeitemContent() || this.treeitemLevel() !== null);\n\n\treadonly wrapperLevel = computed(() => this.treeitemLevel() ?? this.level);\n}\n","<div class=\"listboxOption-content\" [class.is-hovered]=\"hovered()\" [attr.id]=\"group() ? groupLabelId() : null\">\n\t@if (multiple() && !add() && !selectAll() && !select()) {\n\t\t<span class=\"listboxOption-content-checkboxField checkboxField\" aria-hidden=\"true\">\n\t\t\t<span class=\"listboxOption-content-checkboxField-input checkboxField-input\"></span>\n\t\t\t<span class=\"checkboxField-icon\"><span class=\"checkboxField-icon-check\"></span></span>\n\t\t</span>\n\t}\n\t@if (add()) {\n\t\t<lu-icon icon=\"mathsPlus\" />\n\t}\n\t<ng-content />\n\t<ng-content select=\"[group-action]\" />\n\t@if (selectAll()) {\n\t\t<lu-listbox-option [elementId]=\"elementId() + '-selectAll'\" select>{{ selectAll() }}</lu-listbox-option>\n\t}\n</div>\n<ng-content select=\"[optgroup]\" />\n\n@if (hasTreeitems()) {\n\t<div class=\"listboxOptionWrapper\" role=\"group\" [attr.style]=\"'--components-listboxOptionWrapper-level: ' + wrapperLevel()\">\n\t\t<ng-content select=\"[treeitem]\" />\n\t</div>\n}\n","import { ChangeDetectionStrategy, Component, computed, forwardRef, input, ViewEncapsulation } from '@angular/core';\n\nimport { luBooleanAttribute } from '@lucca-front/ng/core';\nimport { ListboxState } from './listbox.type';\nimport { OptionComponent } from './option/option.component';\nimport { LISTBOX_INSTANCE } from './tokens';\n\nlet nextId = 0;\n\n@Component({\n\tselector: 'lu-listbox',\n\ttemplateUrl: './listbox.component.html',\n\tencapsulation: ViewEncapsulation.None,\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\thost: {\n\t\tclass: 'listboxOptionWrapper',\n\t\t'[attr.role]': 'tree() ? \"tree\" : \"listbox\"',\n\t\t'[attr.aria-multiselectable]': 'multiple() ? true : null',\n\t\t'[class.mod-multiple]': 'multiple()',\n\t\t'[attr.aria-busy]': 'state() === \"loading\"',\n\t\t'[attr.aria-describedby]': 'state() === \"empty\" ? listboxId : null',\n\t},\n\timports: [OptionComponent],\n\tproviders: [{ provide: LISTBOX_INSTANCE, useExisting: forwardRef(() => ListboxComponent) }],\n})\nexport class ListboxComponent {\n\t/**\n\t * Applies multiple mod to the listbox\n\t */\n\treadonly multiple = input(false, { transform: luBooleanAttribute });\n\n\t/**\n\t * Defines listbox role tree or listbox by default\n\t */\n\treadonly tree = input(false, { transform: luBooleanAttribute });\n\n\t/**\n\t * Listbox state\n\t */\n\treadonly state = input<ListboxState | null>(null);\n\n\t/**\n\t * Add message when listbox state loading or empty\n\t */\n\treadonly statusMsg = input<string | null>(null);\n\n\treadonly listboxId = `listbox${nextId++}`;\n\n\treadonly skeletonWidth = computed(() => (this.state() === 'loading' ? `${Math.floor(Math.random() * 60 + 20)}%` : null));\n}\n","<ng-content select=\"[listbox-header]\" />\n@if (state() !== \"empty\") {\n\t<ng-content />\n}\n@if (state() === \"empty\") {\n\t<lu-listbox-option empty>{{ statusMsg() }}</lu-listbox-option>\n} @else if (state() === \"loading\") {\n\t<lu-listbox-option class=\"skeleton is-loading\" inert=\"inert\">\n\t\t<span class=\"skeleton-item\" [style.--components-skeleton-text-width]=\"skeletonWidth()\"></span>\n\t</lu-listbox-option>\n\t<span class=\"pr-u-mask\">{{ statusMsg() }}</span>\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["nextId"],"mappings":";;;;;AAAA;;AAEG;MAEU,aAAa,GAAG,CAAC,SAAS,EAAE,OAAO;;MCAnC,gBAAgB,GAAG,IAAI,cAAc,CAAmB,mBAAmB;MAC3E,eAAe,GAAG,IAAI,cAAc,CAAkB,kBAAkB;;ACArF,IAAIA,QAAM,GAAG,CAAC;MAMD,QAAQ,CAAA;8GAAR,QAAQ,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;kGAAR,QAAQ,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,YAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;2FAAR,QAAQ,EAAA,UAAA,EAAA,CAAA;kBAJpB,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;;AAEV,oBAAA,QAAQ,EAAE,YAAY;AACtB,iBAAA;;MA2BY,eAAe,CAAA;AAxB5B,IAAA,WAAA,GAAA;;;QA2BC,IAAA,CAAA,WAAW,GAAG,MAAM,CAAC,gBAAgB,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;AAC1D,QAAA,IAAA,CAAA,gBAAgB,GAAG,MAAM,CAAC,eAAe,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;QAErE,IAAA,CAAA,SAAS,GAAG,KAAK,CAAgB,IAAI;sFAAC;QAEtC,IAAA,CAAA,OAAO,GAAG,KAAK,CAAC,KAAK,+EAAI,SAAS,EAAE,kBAAkB,EAAA,CAAG;QAEzD,IAAA,CAAA,KAAK,GAAG,KAAK,CAAC,KAAK,6EAAI,SAAS,EAAE,kBAAkB,EAAA,CAAG;QAEvD,IAAA,CAAA,QAAQ,GAAG,KAAK,CAAC,KAAK,gFAAI,SAAS,EAAE,kBAAkB,EAAA,CAAG;QAE1D,IAAA,CAAA,OAAO,GAAG,KAAK,CAAC,KAAK,+EAAI,SAAS,EAAE,kBAAkB,EAAA,CAAG;QAEzD,IAAA,CAAA,GAAG,GAAG,KAAK,CAAC,KAAK,2EAAI,SAAS,EAAE,kBAAkB,EAAA,CAAG;QAErD,IAAA,CAAA,KAAK,GAAG,KAAK,CAAC,KAAK,6EAAI,SAAS,EAAE,kBAAkB,EAAA,CAAG;AAEhE;;;AAGG;QACM,IAAA,CAAA,OAAO,GAAG,KAAK,CAAgB,IAAI;oFAAC;QAEpC,IAAA,CAAA,MAAM,GAAG,KAAK,CAAC,KAAK,8EAAI,SAAS,EAAE,kBAAkB,EAAA,CAAG;AAExD,QAAA,IAAA,CAAA,SAAS,GAAG,KAAK;iGAAmB;AAEpC,QAAA,IAAA,CAAA,QAAQ,GAAG,QAAQ,CAAC,MAAM,IAAI,CAAC,WAAW,EAAE,QAAQ,EAAE,IAAI,KAAK;qFAAC;AAChE,QAAA,IAAA,CAAA,IAAI,GAAG,QAAQ,CAAC,MAAM,IAAI,CAAC,WAAW,EAAE,IAAI,EAAE,IAAI,KAAK;iFAAC;AACxD,QAAA,IAAA,CAAA,KAAK,GAAG,QAAQ,CAAC,MAAM,IAAI,CAAC,WAAW,EAAE,KAAK,EAAE,KAAK,OAAO;kFAAC;AAC7D,QAAA,IAAA,CAAA,EAAE,GAAG,QAAQ,CAAC,MAAM,IAAI,CAAC,WAAW,EAAE,SAAS,IAAI,IAAI;+EAAC;AAExD,QAAA,IAAA,CAAA,YAAY,GAAG,QAAQ,CAAC,MAAM,IAAI,CAAC,OAAO,EAAE,IAAI,IAAI,CAAC,eAAe;yFAAC;AAErE,QAAA,IAAA,CAAA,eAAe,GAAG,CAAA,KAAA,EAAQA,QAAM,EAAE,EAAE;QAEpC,IAAA,CAAA,eAAe,GAAG,YAAY,CAAC,QAAQ;4FAAC;AAEjD;;;;;AAKG;QACM,IAAA,CAAA,aAAa,GAAG,KAAK,CAAgB,IAAI;0FAAC;AAE1C,QAAA,IAAA,CAAA,KAAK,GAAW,CAAC,IAAI,CAAC,gBAAgB,EAAE,KAAK,IAAI,CAAC,IAAI,CAAC;AAEvD,QAAA,IAAA,CAAA,YAAY,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,eAAe,EAAE,IAAI,IAAI,CAAC,aAAa,EAAE,KAAK,IAAI;yFAAC;AAExF,QAAA,IAAA,CAAA,YAAY,GAAG,QAAQ,CAAC,MAAM,IAAI,CAAC,aAAa,EAAE,IAAI,IAAI,CAAC,KAAK;yFAAC;AAC1E,IAAA;;;AAnDA,IAAA,WAAW;AACX,IAAA,gBAAgB;AAiCP,IAAA,eAAe;8GArCZ,eAAe,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;kGAAf,eAAe,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,mBAAA,EAAA,MAAA,EAAA,EAAA,SAAA,EAAA,EAAA,iBAAA,EAAA,WAAA,EAAA,UAAA,EAAA,WAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,OAAA,EAAA,EAAA,iBAAA,EAAA,SAAA,EAAA,UAAA,EAAA,SAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,KAAA,EAAA,EAAA,iBAAA,EAAA,OAAA,EAAA,UAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,QAAA,EAAA,EAAA,iBAAA,EAAA,UAAA,EAAA,UAAA,EAAA,UAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,OAAA,EAAA,EAAA,iBAAA,EAAA,SAAA,EAAA,UAAA,EAAA,SAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,GAAA,EAAA,EAAA,iBAAA,EAAA,KAAA,EAAA,UAAA,EAAA,KAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,KAAA,EAAA,EAAA,iBAAA,EAAA,OAAA,EAAA,UAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,OAAA,EAAA,EAAA,iBAAA,EAAA,SAAA,EAAA,UAAA,EAAA,SAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,MAAA,EAAA,EAAA,iBAAA,EAAA,QAAA,EAAA,UAAA,EAAA,QAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,iBAAA,EAAA,WAAA,EAAA,UAAA,EAAA,WAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,aAAA,EAAA,EAAA,iBAAA,EAAA,eAAA,EAAA,UAAA,EAAA,eAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,WAAA,EAAA,0DAAA,EAAA,sBAAA,EAAA,iCAAA,EAAA,oBAAA,EAAA,qCAAA,EAAA,mBAAA,EAAA,4BAAA,EAAA,oBAAA,EAAA,YAAA,EAAA,kBAAA,EAAA,SAAA,EAAA,SAAA,EAAA,8BAAA,EAAA,mBAAA,EAAA,WAAA,EAAA,mBAAA,EAAA,YAAA,EAAA,eAAA,EAAA,OAAA,EAAA,kBAAA,EAAA,UAAA,EAAA,EAAA,cAAA,EAAA,eAAA,EAAA,EAAA,SAAA,EAFhB,CAAC,EAAE,OAAO,EAAE,eAAe,EAAE,WAAW,EAAE,UAAU,CAAC,MAAM,eAAe,CAAC,EAAE,CAAC,EAAA,OAAA,EAAA,CAAA,EAAA,YAAA,EAAA,iBAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAyCjD,QAAQ,EAAA,WAAA,EAAA,IAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EC5EjD,2+BAuBA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EDca,eAAe,EAAA,QAAA,EAAA,mBAAA,EAAA,MAAA,EAAA,CAAA,WAAA,EAAA,SAAA,EAAA,OAAA,EAAA,UAAA,EAAA,SAAA,EAAA,KAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,WAAA,EAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAHjB,aAAa,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,KAAA,EAAA,MAAA,EAAA,OAAA,EAAA,IAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;;2FAGX,eAAe,EAAA,UAAA,EAAA,CAAA;kBAxB3B,SAAS;+BACC,mBAAmB,EAAA,aAAA,EAEd,iBAAiB,CAAC,IAAI,mBACpB,uBAAuB,CAAC,MAAM,EAAA,IAAA,EACzC;AACL,wBAAA,KAAK,EAAE,eAAe;AACtB,wBAAA,aAAa,EAAE,oDAAoD;AACnE,wBAAA,wBAAwB,EAAE,iCAAiC;AAC3D,wBAAA,sBAAsB,EAAE,qCAAqC;AAC7D,wBAAA,qBAAqB,EAAE,0BAA0B;AACjD,wBAAA,sBAAsB,EAAE,YAAY;AACpC,wBAAA,oBAAoB,EAAE,SAAS;;;AAG/B,wBAAA,WAAW,EAAE,8BAA8B;AAC3C,wBAAA,qBAAqB,EAAE,WAAW;AAClC,wBAAA,qBAAqB,EAAE,YAAY;AACnC,wBAAA,iBAAiB,EAAE,OAAO;AAC1B,wBAAA,oBAAoB,EAAE,UAAU;AAChC,qBAAA,EAAA,OAAA,EACQ,CAAC,aAAa,CAAC,aACb,CAAC,EAAE,OAAO,EAAE,eAAe,EAAE,WAAW,EAAE,UAAU,CAAC,MAAK,eAAgB,CAAC,EAAE,CAAC,EAAA,QAAA,EAAA,2+BAAA,EAAA;wgCAyCjD,QAAQ,CAAA,EAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,CAAA,EAAA,aAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,eAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,EAAA,CAAA;;AErEjD,IAAI,MAAM,GAAG,CAAC;MAkBD,gBAAgB,CAAA;AAhB7B,IAAA,WAAA,GAAA;AAiBC;;AAEG;QACM,IAAA,CAAA,QAAQ,GAAG,KAAK,CAAC,KAAK,gFAAI,SAAS,EAAE,kBAAkB,EAAA,CAAG;AAEnE;;AAEG;QACM,IAAA,CAAA,IAAI,GAAG,KAAK,CAAC,KAAK,4EAAI,SAAS,EAAE,kBAAkB,EAAA,CAAG;AAE/D;;AAEG;QACM,IAAA,CAAA,KAAK,GAAG,KAAK,CAAsB,IAAI;kFAAC;AAEjD;;AAEG;QACM,IAAA,CAAA,SAAS,GAAG,KAAK,CAAgB,IAAI;sFAAC;AAEtC,QAAA,IAAA,CAAA,SAAS,GAAG,CAAA,OAAA,EAAU,MAAM,EAAE,EAAE;AAEhC,QAAA,IAAA,CAAA,aAAa,GAAG,QAAQ,CAAC,OAAO,IAAI,CAAC,KAAK,EAAE,KAAK,SAAS,GAAG,CAAA,EAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,CAAA,CAAA,CAAG,GAAG,IAAI,CAAC;0FAAC;AACxH,IAAA;8GAxBY,gBAAgB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;kGAAhB,gBAAgB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,YAAA,EAAA,MAAA,EAAA,EAAA,QAAA,EAAA,EAAA,iBAAA,EAAA,UAAA,EAAA,UAAA,EAAA,UAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,IAAA,EAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,UAAA,EAAA,MAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,KAAA,EAAA,EAAA,iBAAA,EAAA,OAAA,EAAA,UAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,iBAAA,EAAA,WAAA,EAAA,UAAA,EAAA,WAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,WAAA,EAAA,iCAAA,EAAA,2BAAA,EAAA,0BAAA,EAAA,oBAAA,EAAA,YAAA,EAAA,gBAAA,EAAA,yBAAA,EAAA,uBAAA,EAAA,0CAAA,EAAA,EAAA,cAAA,EAAA,sBAAA,EAAA,EAAA,SAAA,EAFjB,CAAC,EAAE,OAAO,EAAE,gBAAgB,EAAE,WAAW,EAAE,UAAU,CAAC,MAAM,gBAAgB,CAAC,EAAE,CAAC,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECvB5F,yeAYA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EDUW,eAAe,EAAA,QAAA,EAAA,mBAAA,EAAA,MAAA,EAAA,CAAA,WAAA,EAAA,SAAA,EAAA,OAAA,EAAA,UAAA,EAAA,SAAA,EAAA,KAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,WAAA,EAAA,eAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;;2FAGb,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAhB5B,SAAS;+BACC,YAAY,EAAA,aAAA,EAEP,iBAAiB,CAAC,IAAI,mBACpB,uBAAuB,CAAC,MAAM,EAAA,IAAA,EACzC;AACL,wBAAA,KAAK,EAAE,sBAAsB;AAC7B,wBAAA,aAAa,EAAE,6BAA6B;AAC5C,wBAAA,6BAA6B,EAAE,0BAA0B;AACzD,wBAAA,sBAAsB,EAAE,YAAY;AACpC,wBAAA,kBAAkB,EAAE,uBAAuB;AAC3C,wBAAA,yBAAyB,EAAE,wCAAwC;AACnE,qBAAA,EAAA,OAAA,EACQ,CAAC,eAAe,CAAC,aACf,CAAC,EAAE,OAAO,EAAE,gBAAgB,EAAE,WAAW,EAAE,UAAU,CAAC,MAAK,gBAAiB,CAAC,EAAE,CAAC,EAAA,QAAA,EAAA,yeAAA,EAAA;;;AEvB5F;;AAEG;;"}
@@ -566,7 +566,8 @@ class LuMultiSelectInputComponent extends ALuSelectInputComponent {
566
566
  const result = label(count);
567
567
  return typeof result === 'string' ? result : getIntlPluralLabel(this.pluralRules, result, count);
568
568
  }
569
- return `${count} ${this.filterPillLabelPlural()}`;
569
+ const deprecatedLabel = this.filterPillLabelPlural();
570
+ return deprecatedLabel ? `${count} ${deprecatedLabel}` : `${count}`;
570
571
  }, /* @ts-ignore */
571
572
  ...(ngDevMode ? [{ debugName: "filterPillLabelPluralValue" }] : /* istanbul ignore next */ []));
572
573
  this.selectParent$ = new Subject();