igniteui-webcomponents 5.0.0 → 5.0.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.
package/CHANGELOG.md CHANGED
@@ -4,6 +4,14 @@ All notable changes to this project will be documented in this file.
4
4
  The format is based on [Keep a Changelog](http://keepachangelog.com/)
5
5
  and this project adheres to [Semantic Versioning](http://semver.org/).
6
6
 
7
+ ## [5.0.1] - 2024-08-30
8
+ ### Added
9
+ - Checkbox, Radio, Switch - Exported the `CheckboxChangeEventArgs` and `RadioChangeEventArgs` types for public use, providing more flexibility and control over event handling.
10
+
11
+ ### Fixed
12
+ - Select - Resolved an issue where pressing the Tab key while a Select component's dropdown was open would incorrectly return focus to the document. Now, focus is correctly returned to the Select component after closing the dropdown.
13
+ - Radio - Prevented form submission if a Radio component/group is invalid on initial render within a form context. This ensures that forms with invalid Radio components are not submitted prematurely.
14
+
7
15
  ## [5.0.0] - 2024-08-27
8
16
  ### Added
9
17
  - Icon Registry [#1304](https://github.com/IgniteUI/igniteui-webcomponents/issues/1304)
@@ -558,6 +566,7 @@ Initial release of Ignite UI Web Components
558
566
  - Ripple component
559
567
  - Switch component
560
568
 
569
+ [5.0.1]: https://github.com/IgniteUI/igniteui-webcomponents/compare/5.0.0...5.0.1
561
570
  [5.0.0]: https://github.com/IgniteUI/igniteui-webcomponents/compare/4.11.1...5.0.0
562
571
  [4.11.1]: https://github.com/IgniteUI/igniteui-webcomponents/compare/4.11.0...4.11.1
563
572
  [4.11.0]: https://github.com/IgniteUI/igniteui-webcomponents/compare/4.10.0...4.11.0
@@ -42,7 +42,7 @@ let IgcRadioComponent = IgcRadioComponent_1 = class IgcRadioComponent extends Fo
42
42
  return getGroup(this).checked;
43
43
  }
44
44
  setDefaultValue() {
45
- this._defaultValue = this === this._checkedRadios[0];
45
+ this._defaultValue = this === last(this._checkedRadios);
46
46
  }
47
47
  set value(value) {
48
48
  this._value = value;
@@ -1 +1 @@
1
- {"version":3,"file":"radio.js","sourceRoot":"","sources":["../../../src/components/radio/radio.ts"],"names":[],"mappings":"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","sourcesContent":["import { LitElement, html } from 'lit';\nimport { property, query, queryAssignedNodes, state } from 'lit/decorators.js';\nimport { ifDefined } from 'lit/directives/if-defined.js';\nimport { live } from 'lit/directives/live.js';\n\nimport { themes } from '../../theming/theming-decorator.js';\nimport { addKeyboardFocusRing } from '../common/controllers/focus-ring.js';\nimport {\n addKeybindings,\n arrowDown,\n arrowLeft,\n arrowRight,\n arrowUp,\n} from '../common/controllers/key-bindings.js';\nimport { watch } from '../common/decorators/watch.js';\nimport { registerComponent } from '../common/definitions/register.js';\nimport type { Constructor } from '../common/mixins/constructor.js';\nimport { EventEmitterMixin } from '../common/mixins/event-emitter.js';\nimport { FormAssociatedRequiredMixin } from '../common/mixins/form-associated-required.js';\nimport {\n createCounter,\n isLTR,\n last,\n partNameMap,\n wrap,\n} from '../common/util.js';\nimport { styles } from './themes/radio.base.css.js';\nimport { styles as shared } from './themes/shared/radio.common.css.js';\nimport { all } from './themes/themes.js';\nimport { getGroup } from './utils.js';\nimport { radioValidators } from './validators.js';\n\nexport interface RadioChangeEventArgs {\n checked: boolean;\n value?: string;\n}\n\nexport interface IgcRadioEventMap {\n igcChange: CustomEvent<RadioChangeEventArgs>;\n // For analyzer meta only:\n /* skipWCPrefix */\n focus: FocusEvent;\n /* skipWCPrefix */\n blur: FocusEvent;\n}\n\n/**\n * @element igc-radio\n *\n * @slot - The radio label.\n *\n * @fires igcChange - Emitted when the control's checked state changes.\n *\n * @csspart base - The radio control base wrapper.\n * @csspart control - The radio input control.\n * @csspart label - The radio control label.\n */\n@themes(all)\nexport default class IgcRadioComponent extends FormAssociatedRequiredMixin(\n EventEmitterMixin<IgcRadioEventMap, Constructor<LitElement>>(LitElement)\n) {\n public static readonly tagName = 'igc-radio';\n protected static styles = [styles, shared];\n\n /* blazorSuppress */\n public static register() {\n registerComponent(IgcRadioComponent);\n }\n\n private static readonly increment = createCounter();\n\n protected override get __validators() {\n return radioValidators;\n }\n\n private inputId = `radio-${IgcRadioComponent.increment()}`;\n private labelId = `radio-label-${this.inputId}`;\n private _kbFocus = addKeyboardFocusRing(this);\n\n protected _checked = false;\n protected _value!: string;\n\n @query('input[type=\"radio\"]')\n protected input!: HTMLInputElement;\n\n @queryAssignedNodes({ flatten: true })\n protected label!: Array<Node>;\n\n @state()\n private _tabIndex = 0;\n\n @state()\n protected hideLabel = false;\n\n /** Returns all radio elements from the group, that is having the same name property. */\n private get _radios() {\n return getGroup(this).radios;\n }\n\n /** All sibling radio elements of the one invoking the getter. */\n private get _siblings() {\n return getGroup(this).siblings;\n }\n\n /** All non-disabled radio elements from the group. */\n private get _active() {\n return getGroup(this).active;\n }\n\n /** All checked radio elements from the group. */\n private get _checkedRadios() {\n return getGroup(this).checked;\n }\n\n protected override setDefaultValue(): void {\n this._defaultValue = this === this._checkedRadios[0];\n }\n\n /**\n * The value attribute of the control.\n * @attr\n */\n @property()\n public set value(value: string) {\n this._value = value;\n if (this._checked) {\n this.setFormValue(this._value || 'on');\n }\n }\n\n public get value(): string {\n return this._value;\n }\n\n /* @tsTwoWayProperty(true, \"igcChange\", \"detail.checked\", false) */\n /**\n * The checked state of the control.\n * @attr\n */\n @property({ type: Boolean })\n public set checked(value: boolean) {\n this._checked = Boolean(value);\n if (this.hasUpdated) {\n this._checked ? this._updateCheckedState() : this._updateUncheckedState();\n }\n }\n\n public get checked(): boolean {\n return this._checked;\n }\n\n /**\n * The label position of the radio control.\n * @attr label-position\n */\n @property({ reflect: true, attribute: 'label-position' })\n public labelPosition: 'before' | 'after' = 'after';\n\n constructor() {\n super();\n\n addKeybindings(this, {\n skip: () => this.disabled,\n bindingDefaults: { preventDefault: true, triggers: ['keydownRepeat'] },\n })\n .set(arrowLeft, () => this.navigate(isLTR(this) ? -1 : 1))\n .set(arrowRight, () => this.navigate(isLTR(this) ? 1 : -1))\n .set(arrowUp, () => this.navigate(-1))\n .set(arrowDown, () => this.navigate(1));\n }\n\n protected override createRenderRoot() {\n const root = super.createRenderRoot();\n root.addEventListener('slotchange', () => {\n this.hideLabel = this.label.length < 1;\n });\n return root;\n }\n\n public override connectedCallback() {\n super.connectedCallback();\n this.updateValidity();\n }\n\n protected override async firstUpdated() {\n await this.updateComplete;\n this._checked && this === last(this._checkedRadios)\n ? this._updateCheckedState()\n : this.updateValidity();\n }\n\n /** Simulates a click on the radio control. */\n public override click() {\n this.input.click();\n }\n\n /* alternateName: focusComponent */\n /** Sets focus on the radio control. */\n public override focus(options?: FocusOptions) {\n this.input.focus(options);\n }\n\n /* alternateName: blurComponent */\n /** Removes focus from the radio control. */\n public override blur() {\n this.input.blur();\n }\n\n /**\n * Sets a custom validation message for the control.\n * As long as `message` is not empty, the control is considered invalid.\n */\n public override setCustomValidity(message: string): void {\n const radios = this._radios;\n\n for (const radio of radios) {\n radio.updateValidity(message);\n radio.setInvalidState();\n }\n }\n\n @watch('required', { waitUntilFirstUpdate: true })\n protected override requiredChange(): void {\n const radios = this._radios;\n\n for (const radio of radios) {\n radio.updateValidity();\n radio.setInvalidState();\n }\n }\n\n private _updateCheckedState() {\n const siblings = this._siblings;\n\n this.setFormValue(this.value || 'on');\n this.updateValidity();\n this.setInvalidState();\n\n this._tabIndex = 0;\n this.input?.focus();\n\n for (const radio of siblings) {\n radio.checked = false;\n radio._tabIndex = -1;\n radio.updateValidity();\n radio.setInvalidState();\n }\n }\n\n private _updateUncheckedState() {\n const siblings = this._siblings;\n\n this.setFormValue(null);\n this.updateValidity();\n this.setInvalidState();\n\n this._tabIndex = -1;\n\n for (const radio of siblings) {\n radio.updateValidity();\n }\n }\n\n protected override formResetCallback() {\n super.formResetCallback();\n this._resetTabIndexes();\n }\n\n /** Called after a form reset callback to restore default keyboard navigation. */\n private _resetTabIndexes() {\n const radios = this._radios;\n for (const radio of radios) {\n radio._tabIndex = 0;\n }\n }\n\n protected handleClick() {\n if (this.checked) {\n return;\n }\n\n this.checked = true;\n this.emitEvent('igcChange', {\n detail: {\n checked: this.checked,\n value: this.value,\n },\n });\n }\n\n protected handleBlur() {\n this._kbFocus.reset();\n }\n\n protected navigate(idx: number) {\n const active = this._active;\n const nextIdx = wrap(0, active.length - 1, active.indexOf(this) + idx);\n const radio = active[nextIdx];\n\n radio.focus();\n radio.checked = true;\n radio.emitEvent('igcChange', {\n detail: { checked: radio.checked, value: radio.value },\n });\n }\n\n protected override render() {\n const labelledBy = this.getAttribute('aria-labelledby');\n const checked = this.checked;\n\n return html`\n <label\n part=${partNameMap({\n base: true,\n checked,\n focused: this._kbFocus.focused,\n })}\n for=${this.inputId}\n @pointerdown=${this._kbFocus.reset}\n >\n <input\n id=${this.inputId}\n type=\"radio\"\n name=${ifDefined(this.name)}\n value=${ifDefined(this.value)}\n .required=${this.required}\n .disabled=${this.disabled}\n .checked=${live(checked)}\n tabindex=${this._tabIndex}\n aria-checked=${checked ? 'true' : 'false'}\n aria-disabled=${this.disabled ? 'true' : 'false'}\n aria-labelledby=${labelledBy ? labelledBy : this.labelId}\n @click=${this.handleClick}\n @blur=${this.handleBlur}\n />\n <span part=${partNameMap({ control: true, checked })}>\n <span\n .hidden=${this.disabled}\n part=${partNameMap({ ripple: true, checked })}\n ></span>\n </span>\n <span\n .hidden=${this.hideLabel}\n part=${partNameMap({ label: true, checked })}\n id=${this.labelId}\n >\n <slot></slot>\n </span>\n </label>\n `;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'igc-radio': IgcRadioComponent;\n }\n}\n"]}
1
+ {"version":3,"file":"radio.js","sourceRoot":"","sources":["../../../src/components/radio/radio.ts"],"names":[],"mappings":"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","sourcesContent":["import { LitElement, html } from 'lit';\nimport { property, query, queryAssignedNodes, state } from 'lit/decorators.js';\nimport { ifDefined } from 'lit/directives/if-defined.js';\nimport { live } from 'lit/directives/live.js';\n\nimport { themes } from '../../theming/theming-decorator.js';\nimport { addKeyboardFocusRing } from '../common/controllers/focus-ring.js';\nimport {\n addKeybindings,\n arrowDown,\n arrowLeft,\n arrowRight,\n arrowUp,\n} from '../common/controllers/key-bindings.js';\nimport { watch } from '../common/decorators/watch.js';\nimport { registerComponent } from '../common/definitions/register.js';\nimport type { Constructor } from '../common/mixins/constructor.js';\nimport { EventEmitterMixin } from '../common/mixins/event-emitter.js';\nimport { FormAssociatedRequiredMixin } from '../common/mixins/form-associated-required.js';\nimport {\n createCounter,\n isLTR,\n last,\n partNameMap,\n wrap,\n} from '../common/util.js';\nimport { styles } from './themes/radio.base.css.js';\nimport { styles as shared } from './themes/shared/radio.common.css.js';\nimport { all } from './themes/themes.js';\nimport { getGroup } from './utils.js';\nimport { radioValidators } from './validators.js';\n\nexport interface RadioChangeEventArgs {\n checked: boolean;\n value?: string;\n}\n\nexport interface IgcRadioEventMap {\n igcChange: CustomEvent<RadioChangeEventArgs>;\n // For analyzer meta only:\n /* skipWCPrefix */\n focus: FocusEvent;\n /* skipWCPrefix */\n blur: FocusEvent;\n}\n\n/**\n * @element igc-radio\n *\n * @slot - The radio label.\n *\n * @fires igcChange - Emitted when the control's checked state changes.\n *\n * @csspart base - The radio control base wrapper.\n * @csspart control - The radio input control.\n * @csspart label - The radio control label.\n */\n@themes(all)\nexport default class IgcRadioComponent extends FormAssociatedRequiredMixin(\n EventEmitterMixin<IgcRadioEventMap, Constructor<LitElement>>(LitElement)\n) {\n public static readonly tagName = 'igc-radio';\n protected static styles = [styles, shared];\n\n /* blazorSuppress */\n public static register() {\n registerComponent(IgcRadioComponent);\n }\n\n private static readonly increment = createCounter();\n\n protected override get __validators() {\n return radioValidators;\n }\n\n private inputId = `radio-${IgcRadioComponent.increment()}`;\n private labelId = `radio-label-${this.inputId}`;\n private _kbFocus = addKeyboardFocusRing(this);\n\n protected _checked = false;\n protected _value!: string;\n\n @query('input[type=\"radio\"]')\n protected input!: HTMLInputElement;\n\n @queryAssignedNodes({ flatten: true })\n protected label!: Array<Node>;\n\n @state()\n private _tabIndex = 0;\n\n @state()\n protected hideLabel = false;\n\n /** Returns all radio elements from the group, that is having the same name property. */\n private get _radios() {\n return getGroup(this).radios;\n }\n\n /** All sibling radio elements of the one invoking the getter. */\n private get _siblings() {\n return getGroup(this).siblings;\n }\n\n /** All non-disabled radio elements from the group. */\n private get _active() {\n return getGroup(this).active;\n }\n\n /** All checked radio elements from the group. */\n private get _checkedRadios() {\n return getGroup(this).checked;\n }\n\n protected override setDefaultValue(): void {\n this._defaultValue = this === last(this._checkedRadios);\n }\n\n /**\n * The value attribute of the control.\n * @attr\n */\n @property()\n public set value(value: string) {\n this._value = value;\n if (this._checked) {\n this.setFormValue(this._value || 'on');\n }\n }\n\n public get value(): string {\n return this._value;\n }\n\n /* @tsTwoWayProperty(true, \"igcChange\", \"detail.checked\", false) */\n /**\n * The checked state of the control.\n * @attr\n */\n @property({ type: Boolean })\n public set checked(value: boolean) {\n this._checked = Boolean(value);\n if (this.hasUpdated) {\n this._checked ? this._updateCheckedState() : this._updateUncheckedState();\n }\n }\n\n public get checked(): boolean {\n return this._checked;\n }\n\n /**\n * The label position of the radio control.\n * @attr label-position\n */\n @property({ reflect: true, attribute: 'label-position' })\n public labelPosition: 'before' | 'after' = 'after';\n\n constructor() {\n super();\n\n addKeybindings(this, {\n skip: () => this.disabled,\n bindingDefaults: { preventDefault: true, triggers: ['keydownRepeat'] },\n })\n .set(arrowLeft, () => this.navigate(isLTR(this) ? -1 : 1))\n .set(arrowRight, () => this.navigate(isLTR(this) ? 1 : -1))\n .set(arrowUp, () => this.navigate(-1))\n .set(arrowDown, () => this.navigate(1));\n }\n\n protected override createRenderRoot() {\n const root = super.createRenderRoot();\n root.addEventListener('slotchange', () => {\n this.hideLabel = this.label.length < 1;\n });\n return root;\n }\n\n public override connectedCallback() {\n super.connectedCallback();\n this.updateValidity();\n }\n\n protected override async firstUpdated() {\n await this.updateComplete;\n this._checked && this === last(this._checkedRadios)\n ? this._updateCheckedState()\n : this.updateValidity();\n }\n\n /** Simulates a click on the radio control. */\n public override click() {\n this.input.click();\n }\n\n /* alternateName: focusComponent */\n /** Sets focus on the radio control. */\n public override focus(options?: FocusOptions) {\n this.input.focus(options);\n }\n\n /* alternateName: blurComponent */\n /** Removes focus from the radio control. */\n public override blur() {\n this.input.blur();\n }\n\n /**\n * Sets a custom validation message for the control.\n * As long as `message` is not empty, the control is considered invalid.\n */\n public override setCustomValidity(message: string): void {\n const radios = this._radios;\n\n for (const radio of radios) {\n radio.updateValidity(message);\n radio.setInvalidState();\n }\n }\n\n @watch('required', { waitUntilFirstUpdate: true })\n protected override requiredChange(): void {\n const radios = this._radios;\n\n for (const radio of radios) {\n radio.updateValidity();\n radio.setInvalidState();\n }\n }\n\n private _updateCheckedState() {\n const siblings = this._siblings;\n\n this.setFormValue(this.value || 'on');\n this.updateValidity();\n this.setInvalidState();\n\n this._tabIndex = 0;\n this.input?.focus();\n\n for (const radio of siblings) {\n radio.checked = false;\n radio._tabIndex = -1;\n radio.updateValidity();\n radio.setInvalidState();\n }\n }\n\n private _updateUncheckedState() {\n const siblings = this._siblings;\n\n this.setFormValue(null);\n this.updateValidity();\n this.setInvalidState();\n\n this._tabIndex = -1;\n\n for (const radio of siblings) {\n radio.updateValidity();\n }\n }\n\n protected override formResetCallback() {\n super.formResetCallback();\n this._resetTabIndexes();\n }\n\n /** Called after a form reset callback to restore default keyboard navigation. */\n private _resetTabIndexes() {\n const radios = this._radios;\n for (const radio of radios) {\n radio._tabIndex = 0;\n }\n }\n\n protected handleClick() {\n if (this.checked) {\n return;\n }\n\n this.checked = true;\n this.emitEvent('igcChange', {\n detail: {\n checked: this.checked,\n value: this.value,\n },\n });\n }\n\n protected handleBlur() {\n this._kbFocus.reset();\n }\n\n protected navigate(idx: number) {\n const active = this._active;\n const nextIdx = wrap(0, active.length - 1, active.indexOf(this) + idx);\n const radio = active[nextIdx];\n\n radio.focus();\n radio.checked = true;\n radio.emitEvent('igcChange', {\n detail: { checked: radio.checked, value: radio.value },\n });\n }\n\n protected override render() {\n const labelledBy = this.getAttribute('aria-labelledby');\n const checked = this.checked;\n\n return html`\n <label\n part=${partNameMap({\n base: true,\n checked,\n focused: this._kbFocus.focused,\n })}\n for=${this.inputId}\n @pointerdown=${this._kbFocus.reset}\n >\n <input\n id=${this.inputId}\n type=\"radio\"\n name=${ifDefined(this.name)}\n value=${ifDefined(this.value)}\n .required=${this.required}\n .disabled=${this.disabled}\n .checked=${live(checked)}\n tabindex=${this._tabIndex}\n aria-checked=${checked ? 'true' : 'false'}\n aria-disabled=${this.disabled ? 'true' : 'false'}\n aria-labelledby=${labelledBy ? labelledBy : this.labelId}\n @click=${this.handleClick}\n @blur=${this.handleBlur}\n />\n <span part=${partNameMap({ control: true, checked })}>\n <span\n .hidden=${this.disabled}\n part=${partNameMap({ ripple: true, checked })}\n ></span>\n </span>\n <span\n .hidden=${this.hideLabel}\n part=${partNameMap({ label: true, checked })}\n id=${this.labelId}\n >\n <slot></slot>\n </span>\n </label>\n `;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'igc-radio': IgcRadioComponent;\n }\n}\n"]}
@@ -16,7 +16,7 @@ export function getGroup(member) {
16
16
  }
17
17
  return result;
18
18
  }
19
- const iterator = iterNodes(globalThis.document.documentElement, 'SHOW_ELEMENT', (radio) => radio.matches(`${member.tagName}[name='${member.name}']`));
19
+ const iterator = iterNodes(globalThis.document.documentElement, 'SHOW_ELEMENT', (radio) => radio.matches(member.tagName) && radio.name === member.name);
20
20
  for (const each of iterator) {
21
21
  result.radios.push(each);
22
22
  if (!each.disabled) {
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/components/radio/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAc9C,MAAM,UAAU,QAAQ,CAAC,MAAyB;IAChD,MAAM,MAAM,GAAqB;QAC/B,MAAM,EAAE,EAAE;QACV,OAAO,EAAE,EAAE;QACX,MAAM,EAAE,EAAE;QACV,QAAQ,EAAE,EAAE;KACb,CAAC;IAIF,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;QACjB,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAE3B,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YACnB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC9B,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;YACrB,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC7B,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,MAAM,QAAQ,GAAG,SAAS,CACxB,UAAU,CAAC,QAAQ,CAAC,eAAe,EACnC,cAAc,EACd,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,MAAM,CAAC,OAAO,UAAU,MAAM,CAAC,IAAI,IAAI,CAAC,CACrE,CAAC;IAEF,KAAK,MAAM,IAAI,IAAI,QAAQ,EAAE,CAAC;QAC5B,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAEzB,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACnB,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC3B,CAAC;QAED,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACjB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC5B,CAAC;QAED,IAAI,IAAI,KAAK,MAAM,EAAE,CAAC;YACpB,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC7B,CAAC;IACH,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC","sourcesContent":["import { iterNodes } from '../common/util.js';\nimport type IgcRadioComponent from './radio.js';\n\ntype RadioQueryResult = {\n /** Radio components under the same group name */\n radios: IgcRadioComponent[];\n /** Radio components under the same group name that are not disabled */\n active: IgcRadioComponent[];\n /** Radio components under the same group name sans the radio member passed in `getGroup` */\n siblings: IgcRadioComponent[];\n /** Radio components under the same group name that are marked as checked */\n checked: IgcRadioComponent[];\n};\n\nexport function getGroup(member: IgcRadioComponent) {\n const result: RadioQueryResult = {\n active: [],\n checked: [],\n radios: [],\n siblings: [],\n };\n\n // No name property for the passed radio. Skip DOM search and return a group of one radio\n // with appropriate states.\n if (!member.name) {\n result.radios.push(member);\n\n if (member.checked) {\n result.checked.push(member);\n }\n\n if (!member.disabled) {\n result.active.push(member);\n }\n\n return result;\n }\n\n const iterator = iterNodes<IgcRadioComponent>(\n globalThis.document.documentElement,\n 'SHOW_ELEMENT',\n (radio) => radio.matches(`${member.tagName}[name='${member.name}']`)\n );\n\n for (const each of iterator) {\n result.radios.push(each);\n\n if (!each.disabled) {\n result.active.push(each);\n }\n\n if (each.checked) {\n result.checked.push(each);\n }\n\n if (each !== member) {\n result.siblings.push(each);\n }\n }\n\n return result;\n}\n"]}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/components/radio/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAc9C,MAAM,UAAU,QAAQ,CAAC,MAAyB;IAChD,MAAM,MAAM,GAAqB;QAC/B,MAAM,EAAE,EAAE;QACV,OAAO,EAAE,EAAE;QACX,MAAM,EAAE,EAAE;QACV,QAAQ,EAAE,EAAE;KACb,CAAC;IAIF,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;QACjB,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAE3B,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YACnB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC9B,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;YACrB,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC7B,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,MAAM,QAAQ,GAAG,SAAS,CACxB,UAAU,CAAC,QAAQ,CAAC,eAAe,EACnC,cAAc,EACd,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM,CAAC,IAAI,CACvE,CAAC;IAEF,KAAK,MAAM,IAAI,IAAI,QAAQ,EAAE,CAAC;QAC5B,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAEzB,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACnB,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC3B,CAAC;QAED,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACjB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC5B,CAAC;QAED,IAAI,IAAI,KAAK,MAAM,EAAE,CAAC;YACpB,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC7B,CAAC;IACH,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC","sourcesContent":["import { iterNodes } from '../common/util.js';\nimport type IgcRadioComponent from './radio.js';\n\ntype RadioQueryResult = {\n /** Radio components under the same group name */\n radios: IgcRadioComponent[];\n /** Radio components under the same group name that are not disabled */\n active: IgcRadioComponent[];\n /** Radio components under the same group name sans the radio member passed in `getGroup` */\n siblings: IgcRadioComponent[];\n /** Radio components under the same group name that are marked as checked */\n checked: IgcRadioComponent[];\n};\n\nexport function getGroup(member: IgcRadioComponent) {\n const result: RadioQueryResult = {\n active: [],\n checked: [],\n radios: [],\n siblings: [],\n };\n\n // No name property for the passed radio. Skip DOM search and return a group of one radio\n // with appropriate states.\n if (!member.name) {\n result.radios.push(member);\n\n if (member.checked) {\n result.checked.push(member);\n }\n\n if (!member.disabled) {\n result.active.push(member);\n }\n\n return result;\n }\n\n const iterator = iterNodes<IgcRadioComponent>(\n globalThis.document.documentElement,\n 'SHOW_ELEMENT',\n (radio) => radio.matches(member.tagName) && radio.name === member.name\n );\n\n for (const each of iterator) {\n result.radios.push(each);\n\n if (!each.disabled) {\n result.active.push(each);\n }\n\n if (each.checked) {\n result.checked.push(each);\n }\n\n if (each !== member) {\n result.siblings.push(each);\n }\n }\n\n return result;\n}\n"]}
@@ -206,7 +206,7 @@ let IgcSelectComponent = IgcSelectComponent_1 = class IgcSelectComponent extends
206
206
  onTabKey(event) {
207
207
  if (this.open) {
208
208
  event.preventDefault();
209
- this._selectItem(this._activeItem);
209
+ this._selectItem(this._activeItem ?? this._selectedItem);
210
210
  this._hide(true);
211
211
  }
212
212
  }
@@ -242,12 +242,11 @@ let IgcSelectComponent = IgcSelectComponent_1 = class IgcSelectComponent extends
242
242
  this._updateValue();
243
243
  return null;
244
244
  }
245
- const items = this.items;
246
- const [previous, current] = [
247
- items.indexOf(this._selectedItem),
248
- items.indexOf(item),
249
- ];
250
- if (previous === current) {
245
+ const shouldFocus = emit && this.open;
246
+ const shouldHide = emit && !this.keepOpenOnSelect;
247
+ if (this._selectedItem === item) {
248
+ if (shouldFocus)
249
+ this.input.focus();
251
250
  return this._selectedItem;
252
251
  }
253
252
  const newItem = this.setSelectedItem(item);
@@ -255,9 +254,9 @@ let IgcSelectComponent = IgcSelectComponent_1 = class IgcSelectComponent extends
255
254
  this._updateValue(newItem.value);
256
255
  if (emit)
257
256
  this.handleChange(newItem);
258
- if (emit && this.open)
257
+ if (shouldFocus)
259
258
  this.input.focus();
260
- if (emit && !this.keepOpenOnSelect)
259
+ if (shouldHide)
261
260
  this._hide(true);
262
261
  return this._selectedItem;
263
262
  }
@@ -292,7 +291,6 @@ let IgcSelectComponent = IgcSelectComponent_1 = class IgcSelectComponent extends
292
291
  }
293
292
  blur() {
294
293
  this.input.blur();
295
- super.blur();
296
294
  }
297
295
  reportValidity() {
298
296
  const valid = super.reportValidity();
@@ -1 +1 @@
1
- {"version":3,"file":"select.js","sourceRoot":"","sources":["../../../src/components/select/select.ts"],"names":[],"mappings":"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","sourcesContent":["import { html } from 'lit';\nimport {\n property,\n query,\n queryAssignedElements,\n state,\n} from 'lit/decorators.js';\nimport { ifDefined } from 'lit/directives/if-defined.js';\n\nimport { themes } from '../../theming/theming-decorator.js';\nimport {\n addKeybindings,\n altKey,\n arrowDown,\n arrowLeft,\n arrowRight,\n arrowUp,\n endKey,\n enterKey,\n escapeKey,\n homeKey,\n spaceBar,\n tabKey,\n} from '../common/controllers/key-bindings.js';\nimport { addRootScrollHandler } from '../common/controllers/root-scroll.js';\nimport { blazorAdditionalDependencies } from '../common/decorators/blazorAdditionalDependencies.js';\nimport { watch } from '../common/decorators/watch.js';\nimport { registerComponent } from '../common/definitions/register.js';\nimport {\n IgcBaseComboBoxLikeComponent,\n getActiveItems,\n getItems,\n getNextActiveItem,\n getPreviousActiveItem,\n setInitialSelectionState,\n} from '../common/mixins/combo-box.js';\nimport type { AbstractConstructor } from '../common/mixins/constructor.js';\nimport { EventEmitterMixin } from '../common/mixins/event-emitter.js';\nimport { FormAssociatedRequiredMixin } from '../common/mixins/form-associated-required.js';\nimport { findElementFromEventPath, partNameMap } from '../common/util.js';\nimport IgcIconComponent from '../icon/icon.js';\nimport IgcInputComponent from '../input/input.js';\nimport IgcPopoverComponent, { type IgcPlacement } from '../popover/popover.js';\nimport IgcSelectGroupComponent from './select-group.js';\nimport IgcSelectHeaderComponent from './select-header.js';\nimport IgcSelectItemComponent from './select-item.js';\nimport { styles } from './themes/select.base.css.js';\nimport { styles as shared } from './themes/shared/select.common.css.js';\nimport { all } from './themes/themes.js';\nimport { selectValidators } from './validators.js';\n\nexport interface IgcSelectEventMap {\n igcChange: CustomEvent<IgcSelectItemComponent>;\n // For analyzer meta only:\n /* skipWCPrefix */\n focus: FocusEvent;\n /* skipWCPrefix */\n blur: FocusEvent;\n igcOpening: CustomEvent<void>;\n igcOpened: CustomEvent<void>;\n igcClosing: CustomEvent<void>;\n igcClosed: CustomEvent<void>;\n}\n\n/**\n * Represents a control that provides a menu of options.\n *\n * @element igc-select\n *\n * @slot - Renders the list of select items.\n * @slot prefix - Renders content before the input.\n * @slot suffix - Renders content after input.\n * @slot header - Renders a container before the list of options.\n * @slot footer - Renders a container after the list of options.\n * @slot helper-text - Renders content below the input.\n * @slot toggle-icon - Renders content inside the suffix container.\n * @slot toggle-icon-expanded - Renders content for the toggle icon when the component is in open state.\n *\n * @fires igcChange - Emitted when the control's checked state changes.\n * @fires igcOpening - Emitted just before the list of options is opened.\n * @fires igcOpened - Emitted after the list of options is opened.\n * @fires igcClosing - Emitter just before the list of options is closed.\n * @fires igcClosed - Emitted after the list of options is closed.\n *\n * @csspart list - The list wrapping container for the items of the igc-select.\n * @csspart input - The encapsulated igc-input of the igc-select.\n * @csspart label - The encapsulated text label of the igc-select.\n * @csspart prefix - The prefix wrapper of the input of the igc-select.\n * @csspart suffix - The suffix wrapper of the input of the igc-select.\n * @csspart toggle-icon - The toggle icon wrapper of the igc-select.\n * @csspart helper-text - The helper text wrapper of the igc-select.\n */\n@themes(all)\n@blazorAdditionalDependencies(\n 'IgcIconComponent, IgcInputComponent, IgcSelectGroupComponent, IgcSelectHeaderComponent, IgcSelectItemComponent'\n)\nexport default class IgcSelectComponent extends FormAssociatedRequiredMixin(\n EventEmitterMixin<\n IgcSelectEventMap,\n AbstractConstructor<IgcBaseComboBoxLikeComponent>\n >(IgcBaseComboBoxLikeComponent)\n) {\n public static readonly tagName = 'igc-select';\n public static styles = [styles, shared];\n\n /* blazorSuppress */\n public static register() {\n registerComponent(\n IgcSelectComponent,\n IgcIconComponent,\n IgcInputComponent,\n IgcPopoverComponent,\n IgcSelectGroupComponent,\n IgcSelectHeaderComponent,\n IgcSelectItemComponent\n );\n }\n\n private _value!: string;\n private _searchTerm = '';\n private _lastKeyTime = 0;\n\n private _rootScrollController = addRootScrollHandler(this, {\n hideCallback: this.handleClosing,\n });\n\n private get _activeItems() {\n return Array.from(\n getActiveItems<IgcSelectItemComponent>(\n this,\n IgcSelectItemComponent.tagName\n )\n );\n }\n\n @state()\n protected _selectedItem: IgcSelectItemComponent | null = null;\n\n @state()\n protected _activeItem!: IgcSelectItemComponent;\n\n protected override get __validators() {\n return selectValidators;\n }\n\n @query(IgcInputComponent.tagName, true)\n protected input!: IgcInputComponent;\n\n @queryAssignedElements({ slot: 'helper-text' })\n protected helperText!: Array<HTMLElement>;\n\n @queryAssignedElements({ slot: 'suffix' })\n protected inputSuffix!: Array<HTMLElement>;\n\n @queryAssignedElements({ slot: 'prefix' })\n protected inputPrefix!: Array<HTMLElement>;\n\n @queryAssignedElements({ slot: 'toggle-icon-expanded' })\n protected _expandedIconSlot!: Array<HTMLElement>;\n\n protected get hasExpandedIcon() {\n return this._expandedIconSlot.length > 0;\n }\n\n protected get hasPrefixes() {\n return this.inputPrefix.length > 0;\n }\n\n protected get hasSuffixes() {\n return this.inputSuffix.length > 0;\n }\n\n protected get hasHelperText() {\n return this.helperText.length > 0;\n }\n\n /**\n * The value attribute of the control.\n * @attr\n */\n @property()\n public get value(): string {\n return this._value;\n }\n\n /* @tsTwoWayProperty(true, \"igcChange\", \"detail.value\", false) */\n public set value(value: string) {\n this._updateValue(value);\n const item = this.getItem(this._value);\n item ? this.setSelectedItem(item) : this.clearSelectedItem();\n }\n\n /**\n * The outlined attribute of the control.\n * @attr\n */\n @property({ reflect: true, type: Boolean })\n public outlined = false;\n\n /**\n * The autofocus attribute of the control.\n * @attr\n */\n @property({ type: Boolean })\n public override autofocus!: boolean;\n\n /**\n * The distance of the select dropdown from its input.\n * @attr\n */\n @property({ type: Number })\n public distance = 0;\n\n /**\n * The label attribute of the control.\n * @attr\n */\n @property()\n public label!: string;\n\n /**\n * The placeholder attribute of the control.\n * @attr\n */\n @property()\n public placeholder!: string;\n\n /** The preferred placement of the select dropdown around its input.\n * @type {'top' | 'top-start' | 'top-end' | 'bottom' | 'bottom-start' | 'bottom-end' | 'right' | 'right-start' | 'right-end' | 'left' | 'left-start' | 'left-end'}\n * @attr\n */\n @property()\n public placement: IgcPlacement = 'bottom-start';\n\n /**\n * Determines the behavior of the component during scrolling of the parent container.\n * @attr scroll-strategy\n */\n @property({ attribute: 'scroll-strategy' })\n public scrollStrategy: 'scroll' | 'block' | 'close' = 'scroll';\n\n /** Returns the items of the igc-select component. */\n public get items() {\n return Array.from(\n getItems<IgcSelectItemComponent>(this, IgcSelectItemComponent.tagName)\n );\n }\n\n /** Returns the groups of the igc-select component. */\n public get groups() {\n return Array.from(\n getItems<IgcSelectGroupComponent>(this, IgcSelectGroupComponent.tagName)\n );\n }\n\n /** Returns the selected item from the dropdown or null. */\n public get selectedItem() {\n return this._selectedItem;\n }\n\n @watch('scrollStrategy', { waitUntilFirstUpdate: true })\n protected scrollStrategyChanged() {\n this._rootScrollController.update({ resetListeners: true });\n }\n\n @watch('open', { waitUntilFirstUpdate: true })\n protected openChange() {\n this._rootClickController.update();\n this._rootScrollController.update();\n }\n\n constructor() {\n super();\n\n this._rootClickController.update({ hideCallback: this.handleClosing });\n\n addKeybindings(this, {\n skip: () => this.disabled,\n bindingDefaults: { preventDefault: true, triggers: ['keydownRepeat'] },\n })\n .set([altKey, arrowDown], this.altArrowDown)\n .set([altKey, arrowUp], this.altArrowUp)\n .set(arrowDown, this.onArrowDown)\n .set(arrowUp, this.onArrowUp)\n .set(arrowLeft, this.onArrowUp)\n .set(arrowRight, this.onArrowDown)\n .set(tabKey, this.onTabKey, { preventDefault: false })\n .set(escapeKey, this.onEscapeKey)\n .set(homeKey, this.onHomeKey)\n .set(endKey, this.onEndKey)\n .set(spaceBar, this.onSpaceBarKey)\n .set(enterKey, this.onEnterKey);\n\n this.addEventListener('keydown', this.handleSearch);\n this.addEventListener('focusin', this.handleFocusIn);\n this.addEventListener('focusout', this.handleFocusOut);\n }\n\n protected override createRenderRoot() {\n const root = super.createRenderRoot();\n root.addEventListener('slotchange', () => this.requestUpdate());\n return root;\n }\n\n protected override async firstUpdated() {\n await this.updateComplete;\n const selected = setInitialSelectionState(this.items);\n\n if (this.value && !selected) {\n this._selectItem(this.getItem(this.value), false);\n }\n\n if (selected && selected.value !== this.value) {\n this._defaultValue = selected.value;\n this._selectItem(selected, false);\n }\n\n if (this.autofocus) {\n this.focus();\n }\n\n this.updateValidity();\n }\n\n private handleFocusIn({ relatedTarget }: FocusEvent) {\n this._dirty = true;\n\n if (this.contains(relatedTarget as Node) || this.open) {\n return;\n }\n }\n\n private handleFocusOut({ relatedTarget }: FocusEvent) {\n if (this.contains(relatedTarget as Node)) {\n return;\n }\n\n this.checkValidity();\n }\n\n private handleClick(event: MouseEvent) {\n const item = findElementFromEventPath<IgcSelectItemComponent>(\n IgcSelectItemComponent.tagName,\n event\n );\n if (item && this._activeItems.includes(item)) {\n this._selectItem(item);\n }\n }\n\n private handleChange(item: IgcSelectItemComponent) {\n return this.emitEvent('igcChange', { detail: item });\n }\n\n private handleSearch(event: KeyboardEvent) {\n if (!/^.$/u.test(event.key)) {\n return;\n }\n\n event.preventDefault();\n const now = Date.now();\n\n if (now - this._lastKeyTime > 500) {\n this._searchTerm = '';\n }\n\n this._lastKeyTime = now;\n this._searchTerm += event.key.toLocaleLowerCase();\n\n const item = this._activeItems.find((item) =>\n item.textContent?.trim().toLocaleLowerCase().startsWith(this._searchTerm)\n );\n\n if (item) {\n this.open ? this.activateItem(item) : this._selectItem(item);\n this._activeItem.focus();\n }\n }\n\n protected override handleAnchorClick(): void {\n super.handleAnchorClick();\n this.focusItemOnOpen();\n }\n\n private onEnterKey() {\n this.open && this._activeItem\n ? this._selectItem(this._activeItem)\n : this.handleAnchorClick();\n }\n\n private onSpaceBarKey() {\n if (!this.open) {\n this.handleAnchorClick();\n }\n }\n\n private onArrowDown() {\n const item = getNextActiveItem(this.items, this._activeItem);\n this.open ? this._navigateToActiveItem(item) : this._selectItem(item);\n }\n\n private onArrowUp() {\n const item = getPreviousActiveItem(this.items, this._activeItem);\n this.open ? this._navigateToActiveItem(item) : this._selectItem(item);\n }\n\n private altArrowDown() {\n if (!this.open) {\n this._show(true);\n this.focusItemOnOpen();\n }\n }\n\n private async altArrowUp() {\n if (this.open && (await this._hide(true))) {\n this.input.focus();\n }\n }\n\n protected async onEscapeKey() {\n if (await this._hide(true)) {\n this.input.focus();\n }\n }\n\n private onTabKey(event: KeyboardEvent) {\n if (this.open) {\n event.preventDefault();\n this._selectItem(this._activeItem);\n this._hide(true);\n }\n }\n\n protected onHomeKey() {\n const item = this._activeItems.at(0);\n this.open ? this._navigateToActiveItem(item) : this._selectItem(item);\n }\n\n protected onEndKey() {\n const item = this._activeItems.at(-1);\n this.open ? this._navigateToActiveItem(item) : this._selectItem(item);\n }\n\n protected handleClosing() {\n this._hide(true);\n }\n\n private activateItem(item: IgcSelectItemComponent) {\n if (this._activeItem) {\n this._activeItem.active = false;\n }\n\n this._activeItem = item;\n this._activeItem.active = true;\n }\n\n private setSelectedItem(item: IgcSelectItemComponent) {\n if (this._selectedItem) {\n this._selectedItem.selected = false;\n }\n\n this._selectedItem = item;\n this._selectedItem.selected = true;\n\n return this._selectedItem;\n }\n\n private _selectItem(item?: IgcSelectItemComponent, emit = true) {\n if (!item) {\n this.clearSelectedItem();\n this._updateValue();\n return null;\n }\n\n const items = this.items;\n const [previous, current] = [\n items.indexOf(this._selectedItem!),\n items.indexOf(item),\n ];\n\n if (previous === current) {\n return this._selectedItem;\n }\n\n const newItem = this.setSelectedItem(item);\n this.activateItem(newItem);\n this._updateValue(newItem.value);\n\n if (emit) this.handleChange(newItem);\n if (emit && this.open) this.input.focus();\n if (emit && !this.keepOpenOnSelect) this._hide(true);\n\n return this._selectedItem;\n }\n\n private _navigateToActiveItem(item?: IgcSelectItemComponent) {\n if (item) {\n this.activateItem(item);\n this._activeItem.focus({ preventScroll: true });\n item.scrollIntoView({ behavior: 'auto', block: 'nearest' });\n }\n }\n\n private _updateValue(value?: string) {\n this._value = value as string;\n this.setFormValue(this._value ? this._value : null);\n this.updateValidity();\n this.setInvalidState();\n }\n\n private clearSelectedItem() {\n if (this._selectedItem) {\n this._selectedItem.selected = false;\n }\n this._selectedItem = null;\n }\n\n private async focusItemOnOpen() {\n await this.updateComplete;\n (this._selectedItem || this._activeItem)?.focus();\n }\n\n protected getItem(value: string) {\n return this.items.find((item) => item.value === value);\n }\n\n /* alternateName: focusComponent */\n /** Sets focus on the component. */\n public override focus(options?: FocusOptions) {\n this.input.focus(options);\n }\n\n /* alternateName: blurComponent */\n /** Removes focus from the component. */\n public override blur() {\n this.input.blur();\n super.blur();\n }\n\n /** Checks the validity of the control and moves the focus to it if it is not valid. */\n public override reportValidity() {\n const valid = super.reportValidity();\n if (!valid) this.input.focus();\n return valid;\n }\n\n /* blazorSuppress */\n /** Navigates to the item with the specified value. If it exists, returns the found item, otherwise - null. */\n public navigateTo(value: string): IgcSelectItemComponent | null;\n /* blazorSuppress */\n /** Navigates to the item at the specified index. If it exists, returns the found item, otherwise - null. */\n public navigateTo(index: number): IgcSelectItemComponent | null;\n /* blazorSuppress */\n /** Navigates to the specified item. If it exists, returns the found item, otherwise - null. */\n public navigateTo(value: string | number): IgcSelectItemComponent | null {\n const item =\n typeof value === 'string' ? this.getItem(value) : this.items[value];\n\n if (item) {\n this._navigateToActiveItem(item);\n }\n\n return item ?? null;\n }\n\n /* blazorSuppress */\n /** Selects the item with the specified value. If it exists, returns the found item, otherwise - null. */\n public select(value: string): IgcSelectItemComponent | null;\n /* blazorSuppress */\n /** Selects the item at the specified index. If it exists, returns the found item, otherwise - null. */\n public select(index: number): IgcSelectItemComponent | null;\n /* blazorSuppress */\n /** Selects the specified item. If it exists, returns the found item, otherwise - null. */\n public select(value: string | number): IgcSelectItemComponent | null {\n const item =\n typeof value === 'string' ? this.getItem(value) : this.items[value];\n return item ? this._selectItem(item, false) : null;\n }\n\n /** Resets the current value and selection of the component. */\n public clearSelection() {\n this._updateValue();\n this.clearSelectedItem();\n }\n\n protected renderInputSlots() {\n const prefixName = this.hasPrefixes ? 'prefix' : '';\n const suffixName = this.hasSuffixes ? 'suffix' : '';\n\n return html`\n <span slot=${prefixName}>\n <slot name=\"prefix\"></slot>\n </span>\n\n <span slot=${suffixName}>\n <slot name=\"suffix\"></slot>\n </span>\n `;\n }\n\n protected renderToggleIcon() {\n const parts = partNameMap({ 'toggle-icon': true, filled: this.value! });\n const iconHidden = this.open && this.hasExpandedIcon;\n const iconExpandedHidden = !(this.hasExpandedIcon && this.open);\n\n return html`\n <span slot=\"suffix\" part=${parts} aria-hidden=\"true\">\n <slot name=\"toggle-icon\" ?hidden=${iconHidden}>\n <igc-icon\n name=${this.open ? 'input_collapse' : 'input_expand'}\n collection=\"default\"\n ></igc-icon>\n </slot>\n <slot name=\"toggle-icon-expanded\" ?hidden=${iconExpandedHidden}></slot>\n </span>\n `;\n }\n\n protected renderHelperText() {\n return html`\n <div\n id=\"helper-text\"\n part=\"helper-text\"\n slot=\"anchor\"\n ?hidden=${!this.hasHelperText}\n >\n <slot name=\"helper-text\"></slot>\n </div>\n `;\n }\n\n protected renderInputAnchor() {\n const value = this.selectedItem?.textContent?.trim();\n\n return html`\n <igc-input\n id=\"input\"\n slot=\"anchor\"\n role=\"combobox\"\n readonly\n aria-controls=\"dropdown\"\n aria-describedby=\"helper-text\"\n aria-expanded=${this.open ? 'true' : 'false'}\n exportparts=\"container: input, input: native-input, label, prefix, suffix\"\n tabIndex=${this.disabled ? -1 : 0}\n value=${ifDefined(value)}\n placeholder=${ifDefined(this.placeholder)}\n label=${ifDefined(this.label)}\n .disabled=${this.disabled}\n .required=${this.required}\n .invalid=${this.invalid}\n .outlined=${this.outlined}\n @click=${this.handleAnchorClick}\n >\n ${this.renderInputSlots()} ${this.renderToggleIcon()}\n </igc-input>\n\n ${this.renderHelperText()}\n `;\n }\n\n protected renderDropdown() {\n return html`<div part=\"base\" .inert=${!this.open}>\n <div\n id=\"dropdown\"\n role=\"listbox\"\n part=\"list\"\n aria-labelledby=\"input\"\n @click=${this.handleClick}\n >\n <slot name=\"header\"></slot>\n <slot></slot>\n <slot name=\"footer\"></slot>\n </div>\n </div>`;\n }\n\n protected override render() {\n return html`<igc-popover\n ?open=${this.open}\n flip\n shift\n same-width\n .offset=${this.distance}\n .placement=${this.placement}\n >${this.renderInputAnchor()} ${this.renderDropdown()}\n </igc-popover>`;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'igc-select': IgcSelectComponent;\n }\n}\n"]}
1
+ {"version":3,"file":"select.js","sourceRoot":"","sources":["../../../src/components/select/select.ts"],"names":[],"mappings":"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","sourcesContent":["import { html } from 'lit';\nimport {\n property,\n query,\n queryAssignedElements,\n state,\n} from 'lit/decorators.js';\nimport { ifDefined } from 'lit/directives/if-defined.js';\n\nimport { themes } from '../../theming/theming-decorator.js';\nimport {\n addKeybindings,\n altKey,\n arrowDown,\n arrowLeft,\n arrowRight,\n arrowUp,\n endKey,\n enterKey,\n escapeKey,\n homeKey,\n spaceBar,\n tabKey,\n} from '../common/controllers/key-bindings.js';\nimport { addRootScrollHandler } from '../common/controllers/root-scroll.js';\nimport { blazorAdditionalDependencies } from '../common/decorators/blazorAdditionalDependencies.js';\nimport { watch } from '../common/decorators/watch.js';\nimport { registerComponent } from '../common/definitions/register.js';\nimport {\n IgcBaseComboBoxLikeComponent,\n getActiveItems,\n getItems,\n getNextActiveItem,\n getPreviousActiveItem,\n setInitialSelectionState,\n} from '../common/mixins/combo-box.js';\nimport type { AbstractConstructor } from '../common/mixins/constructor.js';\nimport { EventEmitterMixin } from '../common/mixins/event-emitter.js';\nimport { FormAssociatedRequiredMixin } from '../common/mixins/form-associated-required.js';\nimport { findElementFromEventPath, partNameMap } from '../common/util.js';\nimport IgcIconComponent from '../icon/icon.js';\nimport IgcInputComponent from '../input/input.js';\nimport IgcPopoverComponent, { type IgcPlacement } from '../popover/popover.js';\nimport IgcSelectGroupComponent from './select-group.js';\nimport IgcSelectHeaderComponent from './select-header.js';\nimport IgcSelectItemComponent from './select-item.js';\nimport { styles } from './themes/select.base.css.js';\nimport { styles as shared } from './themes/shared/select.common.css.js';\nimport { all } from './themes/themes.js';\nimport { selectValidators } from './validators.js';\n\nexport interface IgcSelectEventMap {\n igcChange: CustomEvent<IgcSelectItemComponent>;\n // For analyzer meta only:\n /* skipWCPrefix */\n focus: FocusEvent;\n /* skipWCPrefix */\n blur: FocusEvent;\n igcOpening: CustomEvent<void>;\n igcOpened: CustomEvent<void>;\n igcClosing: CustomEvent<void>;\n igcClosed: CustomEvent<void>;\n}\n\n/**\n * Represents a control that provides a menu of options.\n *\n * @element igc-select\n *\n * @slot - Renders the list of select items.\n * @slot prefix - Renders content before the input.\n * @slot suffix - Renders content after input.\n * @slot header - Renders a container before the list of options.\n * @slot footer - Renders a container after the list of options.\n * @slot helper-text - Renders content below the input.\n * @slot toggle-icon - Renders content inside the suffix container.\n * @slot toggle-icon-expanded - Renders content for the toggle icon when the component is in open state.\n *\n * @fires igcChange - Emitted when the control's checked state changes.\n * @fires igcOpening - Emitted just before the list of options is opened.\n * @fires igcOpened - Emitted after the list of options is opened.\n * @fires igcClosing - Emitter just before the list of options is closed.\n * @fires igcClosed - Emitted after the list of options is closed.\n *\n * @csspart list - The list wrapping container for the items of the igc-select.\n * @csspart input - The encapsulated igc-input of the igc-select.\n * @csspart label - The encapsulated text label of the igc-select.\n * @csspart prefix - The prefix wrapper of the input of the igc-select.\n * @csspart suffix - The suffix wrapper of the input of the igc-select.\n * @csspart toggle-icon - The toggle icon wrapper of the igc-select.\n * @csspart helper-text - The helper text wrapper of the igc-select.\n */\n@themes(all)\n@blazorAdditionalDependencies(\n 'IgcIconComponent, IgcInputComponent, IgcSelectGroupComponent, IgcSelectHeaderComponent, IgcSelectItemComponent'\n)\nexport default class IgcSelectComponent extends FormAssociatedRequiredMixin(\n EventEmitterMixin<\n IgcSelectEventMap,\n AbstractConstructor<IgcBaseComboBoxLikeComponent>\n >(IgcBaseComboBoxLikeComponent)\n) {\n public static readonly tagName = 'igc-select';\n public static styles = [styles, shared];\n\n /* blazorSuppress */\n public static register() {\n registerComponent(\n IgcSelectComponent,\n IgcIconComponent,\n IgcInputComponent,\n IgcPopoverComponent,\n IgcSelectGroupComponent,\n IgcSelectHeaderComponent,\n IgcSelectItemComponent\n );\n }\n\n private _value!: string;\n private _searchTerm = '';\n private _lastKeyTime = 0;\n\n private _rootScrollController = addRootScrollHandler(this, {\n hideCallback: this.handleClosing,\n });\n\n private get _activeItems() {\n return Array.from(\n getActiveItems<IgcSelectItemComponent>(\n this,\n IgcSelectItemComponent.tagName\n )\n );\n }\n\n @state()\n protected _selectedItem: IgcSelectItemComponent | null = null;\n\n @state()\n protected _activeItem!: IgcSelectItemComponent;\n\n protected override get __validators() {\n return selectValidators;\n }\n\n @query(IgcInputComponent.tagName, true)\n protected input!: IgcInputComponent;\n\n @queryAssignedElements({ slot: 'helper-text' })\n protected helperText!: Array<HTMLElement>;\n\n @queryAssignedElements({ slot: 'suffix' })\n protected inputSuffix!: Array<HTMLElement>;\n\n @queryAssignedElements({ slot: 'prefix' })\n protected inputPrefix!: Array<HTMLElement>;\n\n @queryAssignedElements({ slot: 'toggle-icon-expanded' })\n protected _expandedIconSlot!: Array<HTMLElement>;\n\n protected get hasExpandedIcon() {\n return this._expandedIconSlot.length > 0;\n }\n\n protected get hasPrefixes() {\n return this.inputPrefix.length > 0;\n }\n\n protected get hasSuffixes() {\n return this.inputSuffix.length > 0;\n }\n\n protected get hasHelperText() {\n return this.helperText.length > 0;\n }\n\n /**\n * The value attribute of the control.\n * @attr\n */\n @property()\n public get value(): string {\n return this._value;\n }\n\n /* @tsTwoWayProperty(true, \"igcChange\", \"detail.value\", false) */\n public set value(value: string) {\n this._updateValue(value);\n const item = this.getItem(this._value);\n item ? this.setSelectedItem(item) : this.clearSelectedItem();\n }\n\n /**\n * The outlined attribute of the control.\n * @attr\n */\n @property({ reflect: true, type: Boolean })\n public outlined = false;\n\n /**\n * The autofocus attribute of the control.\n * @attr\n */\n @property({ type: Boolean })\n public override autofocus!: boolean;\n\n /**\n * The distance of the select dropdown from its input.\n * @attr\n */\n @property({ type: Number })\n public distance = 0;\n\n /**\n * The label attribute of the control.\n * @attr\n */\n @property()\n public label!: string;\n\n /**\n * The placeholder attribute of the control.\n * @attr\n */\n @property()\n public placeholder!: string;\n\n /** The preferred placement of the select dropdown around its input.\n * @type {'top' | 'top-start' | 'top-end' | 'bottom' | 'bottom-start' | 'bottom-end' | 'right' | 'right-start' | 'right-end' | 'left' | 'left-start' | 'left-end'}\n * @attr\n */\n @property()\n public placement: IgcPlacement = 'bottom-start';\n\n /**\n * Determines the behavior of the component during scrolling of the parent container.\n * @attr scroll-strategy\n */\n @property({ attribute: 'scroll-strategy' })\n public scrollStrategy: 'scroll' | 'block' | 'close' = 'scroll';\n\n /** Returns the items of the igc-select component. */\n public get items() {\n return Array.from(\n getItems<IgcSelectItemComponent>(this, IgcSelectItemComponent.tagName)\n );\n }\n\n /** Returns the groups of the igc-select component. */\n public get groups() {\n return Array.from(\n getItems<IgcSelectGroupComponent>(this, IgcSelectGroupComponent.tagName)\n );\n }\n\n /** Returns the selected item from the dropdown or null. */\n public get selectedItem() {\n return this._selectedItem;\n }\n\n @watch('scrollStrategy', { waitUntilFirstUpdate: true })\n protected scrollStrategyChanged() {\n this._rootScrollController.update({ resetListeners: true });\n }\n\n @watch('open', { waitUntilFirstUpdate: true })\n protected openChange() {\n this._rootClickController.update();\n this._rootScrollController.update();\n }\n\n constructor() {\n super();\n\n this._rootClickController.update({ hideCallback: this.handleClosing });\n\n addKeybindings(this, {\n skip: () => this.disabled,\n bindingDefaults: { preventDefault: true, triggers: ['keydownRepeat'] },\n })\n .set([altKey, arrowDown], this.altArrowDown)\n .set([altKey, arrowUp], this.altArrowUp)\n .set(arrowDown, this.onArrowDown)\n .set(arrowUp, this.onArrowUp)\n .set(arrowLeft, this.onArrowUp)\n .set(arrowRight, this.onArrowDown)\n .set(tabKey, this.onTabKey, { preventDefault: false })\n .set(escapeKey, this.onEscapeKey)\n .set(homeKey, this.onHomeKey)\n .set(endKey, this.onEndKey)\n .set(spaceBar, this.onSpaceBarKey)\n .set(enterKey, this.onEnterKey);\n\n this.addEventListener('keydown', this.handleSearch);\n this.addEventListener('focusin', this.handleFocusIn);\n this.addEventListener('focusout', this.handleFocusOut);\n }\n\n protected override createRenderRoot() {\n const root = super.createRenderRoot();\n root.addEventListener('slotchange', () => this.requestUpdate());\n return root;\n }\n\n protected override async firstUpdated() {\n await this.updateComplete;\n const selected = setInitialSelectionState(this.items);\n\n if (this.value && !selected) {\n this._selectItem(this.getItem(this.value), false);\n }\n\n if (selected && selected.value !== this.value) {\n this._defaultValue = selected.value;\n this._selectItem(selected, false);\n }\n\n if (this.autofocus) {\n this.focus();\n }\n\n this.updateValidity();\n }\n\n private handleFocusIn({ relatedTarget }: FocusEvent) {\n this._dirty = true;\n\n if (this.contains(relatedTarget as Node) || this.open) {\n return;\n }\n }\n\n private handleFocusOut({ relatedTarget }: FocusEvent) {\n if (this.contains(relatedTarget as Node)) {\n return;\n }\n\n this.checkValidity();\n }\n\n private handleClick(event: MouseEvent) {\n const item = findElementFromEventPath<IgcSelectItemComponent>(\n IgcSelectItemComponent.tagName,\n event\n );\n if (item && this._activeItems.includes(item)) {\n this._selectItem(item);\n }\n }\n\n private handleChange(item: IgcSelectItemComponent) {\n return this.emitEvent('igcChange', { detail: item });\n }\n\n private handleSearch(event: KeyboardEvent) {\n if (!/^.$/u.test(event.key)) {\n return;\n }\n\n event.preventDefault();\n const now = Date.now();\n\n if (now - this._lastKeyTime > 500) {\n this._searchTerm = '';\n }\n\n this._lastKeyTime = now;\n this._searchTerm += event.key.toLocaleLowerCase();\n\n const item = this._activeItems.find((item) =>\n item.textContent?.trim().toLocaleLowerCase().startsWith(this._searchTerm)\n );\n\n if (item) {\n this.open ? this.activateItem(item) : this._selectItem(item);\n this._activeItem.focus();\n }\n }\n\n protected override handleAnchorClick(): void {\n super.handleAnchorClick();\n this.focusItemOnOpen();\n }\n\n private onEnterKey() {\n this.open && this._activeItem\n ? this._selectItem(this._activeItem)\n : this.handleAnchorClick();\n }\n\n private onSpaceBarKey() {\n if (!this.open) {\n this.handleAnchorClick();\n }\n }\n\n private onArrowDown() {\n const item = getNextActiveItem(this.items, this._activeItem);\n this.open ? this._navigateToActiveItem(item) : this._selectItem(item);\n }\n\n private onArrowUp() {\n const item = getPreviousActiveItem(this.items, this._activeItem);\n this.open ? this._navigateToActiveItem(item) : this._selectItem(item);\n }\n\n private altArrowDown() {\n if (!this.open) {\n this._show(true);\n this.focusItemOnOpen();\n }\n }\n\n private async altArrowUp() {\n if (this.open && (await this._hide(true))) {\n this.input.focus();\n }\n }\n\n protected async onEscapeKey() {\n if (await this._hide(true)) {\n this.input.focus();\n }\n }\n\n private onTabKey(event: KeyboardEvent) {\n if (this.open) {\n event.preventDefault();\n this._selectItem(this._activeItem ?? this._selectedItem);\n this._hide(true);\n }\n }\n\n protected onHomeKey() {\n const item = this._activeItems.at(0);\n this.open ? this._navigateToActiveItem(item) : this._selectItem(item);\n }\n\n protected onEndKey() {\n const item = this._activeItems.at(-1);\n this.open ? this._navigateToActiveItem(item) : this._selectItem(item);\n }\n\n protected handleClosing() {\n this._hide(true);\n }\n\n private activateItem(item: IgcSelectItemComponent) {\n if (this._activeItem) {\n this._activeItem.active = false;\n }\n\n this._activeItem = item;\n this._activeItem.active = true;\n }\n\n private setSelectedItem(item: IgcSelectItemComponent) {\n if (this._selectedItem) {\n this._selectedItem.selected = false;\n }\n\n this._selectedItem = item;\n this._selectedItem.selected = true;\n\n return this._selectedItem;\n }\n\n private _selectItem(item?: IgcSelectItemComponent, emit = true) {\n if (!item) {\n this.clearSelectedItem();\n this._updateValue();\n return null;\n }\n\n const shouldFocus = emit && this.open;\n const shouldHide = emit && !this.keepOpenOnSelect;\n\n if (this._selectedItem === item) {\n if (shouldFocus) this.input.focus();\n return this._selectedItem;\n }\n\n const newItem = this.setSelectedItem(item);\n this.activateItem(newItem);\n this._updateValue(newItem.value);\n\n if (emit) this.handleChange(newItem);\n if (shouldFocus) this.input.focus();\n if (shouldHide) this._hide(true);\n\n return this._selectedItem;\n }\n\n private _navigateToActiveItem(item?: IgcSelectItemComponent) {\n if (item) {\n this.activateItem(item);\n this._activeItem.focus({ preventScroll: true });\n item.scrollIntoView({ behavior: 'auto', block: 'nearest' });\n }\n }\n\n private _updateValue(value?: string) {\n this._value = value as string;\n this.setFormValue(this._value ? this._value : null);\n this.updateValidity();\n this.setInvalidState();\n }\n\n private clearSelectedItem() {\n if (this._selectedItem) {\n this._selectedItem.selected = false;\n }\n this._selectedItem = null;\n }\n\n private async focusItemOnOpen() {\n await this.updateComplete;\n (this._selectedItem || this._activeItem)?.focus();\n }\n\n protected getItem(value: string) {\n return this.items.find((item) => item.value === value);\n }\n\n /* alternateName: focusComponent */\n /** Sets focus on the component. */\n public override focus(options?: FocusOptions) {\n this.input.focus(options);\n }\n\n /* alternateName: blurComponent */\n /** Removes focus from the component. */\n public override blur() {\n this.input.blur();\n }\n\n /** Checks the validity of the control and moves the focus to it if it is not valid. */\n public override reportValidity() {\n const valid = super.reportValidity();\n if (!valid) this.input.focus();\n return valid;\n }\n\n /* blazorSuppress */\n /** Navigates to the item with the specified value. If it exists, returns the found item, otherwise - null. */\n public navigateTo(value: string): IgcSelectItemComponent | null;\n /* blazorSuppress */\n /** Navigates to the item at the specified index. If it exists, returns the found item, otherwise - null. */\n public navigateTo(index: number): IgcSelectItemComponent | null;\n /* blazorSuppress */\n /** Navigates to the specified item. If it exists, returns the found item, otherwise - null. */\n public navigateTo(value: string | number): IgcSelectItemComponent | null {\n const item =\n typeof value === 'string' ? this.getItem(value) : this.items[value];\n\n if (item) {\n this._navigateToActiveItem(item);\n }\n\n return item ?? null;\n }\n\n /* blazorSuppress */\n /** Selects the item with the specified value. If it exists, returns the found item, otherwise - null. */\n public select(value: string): IgcSelectItemComponent | null;\n /* blazorSuppress */\n /** Selects the item at the specified index. If it exists, returns the found item, otherwise - null. */\n public select(index: number): IgcSelectItemComponent | null;\n /* blazorSuppress */\n /** Selects the specified item. If it exists, returns the found item, otherwise - null. */\n public select(value: string | number): IgcSelectItemComponent | null {\n const item =\n typeof value === 'string' ? this.getItem(value) : this.items[value];\n return item ? this._selectItem(item, false) : null;\n }\n\n /** Resets the current value and selection of the component. */\n public clearSelection() {\n this._updateValue();\n this.clearSelectedItem();\n }\n\n protected renderInputSlots() {\n const prefixName = this.hasPrefixes ? 'prefix' : '';\n const suffixName = this.hasSuffixes ? 'suffix' : '';\n\n return html`\n <span slot=${prefixName}>\n <slot name=\"prefix\"></slot>\n </span>\n\n <span slot=${suffixName}>\n <slot name=\"suffix\"></slot>\n </span>\n `;\n }\n\n protected renderToggleIcon() {\n const parts = partNameMap({ 'toggle-icon': true, filled: this.value! });\n const iconHidden = this.open && this.hasExpandedIcon;\n const iconExpandedHidden = !(this.hasExpandedIcon && this.open);\n\n return html`\n <span slot=\"suffix\" part=${parts} aria-hidden=\"true\">\n <slot name=\"toggle-icon\" ?hidden=${iconHidden}>\n <igc-icon\n name=${this.open ? 'input_collapse' : 'input_expand'}\n collection=\"default\"\n ></igc-icon>\n </slot>\n <slot name=\"toggle-icon-expanded\" ?hidden=${iconExpandedHidden}></slot>\n </span>\n `;\n }\n\n protected renderHelperText() {\n return html`\n <div\n id=\"helper-text\"\n part=\"helper-text\"\n slot=\"anchor\"\n ?hidden=${!this.hasHelperText}\n >\n <slot name=\"helper-text\"></slot>\n </div>\n `;\n }\n\n protected renderInputAnchor() {\n const value = this.selectedItem?.textContent?.trim();\n\n return html`\n <igc-input\n id=\"input\"\n slot=\"anchor\"\n role=\"combobox\"\n readonly\n aria-controls=\"dropdown\"\n aria-describedby=\"helper-text\"\n aria-expanded=${this.open ? 'true' : 'false'}\n exportparts=\"container: input, input: native-input, label, prefix, suffix\"\n tabIndex=${this.disabled ? -1 : 0}\n value=${ifDefined(value)}\n placeholder=${ifDefined(this.placeholder)}\n label=${ifDefined(this.label)}\n .disabled=${this.disabled}\n .required=${this.required}\n .invalid=${this.invalid}\n .outlined=${this.outlined}\n @click=${this.handleAnchorClick}\n >\n ${this.renderInputSlots()} ${this.renderToggleIcon()}\n </igc-input>\n\n ${this.renderHelperText()}\n `;\n }\n\n protected renderDropdown() {\n return html`<div part=\"base\" .inert=${!this.open}>\n <div\n id=\"dropdown\"\n role=\"listbox\"\n part=\"list\"\n aria-labelledby=\"input\"\n @click=${this.handleClick}\n >\n <slot name=\"header\"></slot>\n <slot></slot>\n <slot name=\"footer\"></slot>\n </div>\n </div>`;\n }\n\n protected override render() {\n return html`<igc-popover\n ?open=${this.open}\n flip\n shift\n same-width\n .offset=${this.distance}\n .placement=${this.placement}\n >${this.renderInputAnchor()} ${this.renderDropdown()}\n </igc-popover>`;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'igc-select': IgcSelectComponent;\n }\n}\n"]}
@@ -48522,6 +48522,14 @@
48522
48522
  "module": "./components/calendar/types.js"
48523
48523
  }
48524
48524
  },
48525
+ {
48526
+ "kind": "js",
48527
+ "name": "CheckboxChangeEventArgs",
48528
+ "declaration": {
48529
+ "name": "CheckboxChangeEventArgs",
48530
+ "module": "./components/checkbox/checkbox-base.js"
48531
+ }
48532
+ },
48525
48533
  {
48526
48534
  "kind": "js",
48527
48535
  "name": "DatePart",
@@ -48538,6 +48546,14 @@
48538
48546
  "module": "./components/date-time-input/date-util.js"
48539
48547
  }
48540
48548
  },
48549
+ {
48550
+ "kind": "js",
48551
+ "name": "RadioChangeEventArgs",
48552
+ "declaration": {
48553
+ "name": "RadioChangeEventArgs",
48554
+ "module": "./components/radio/radio.js"
48555
+ }
48556
+ },
48541
48557
  {
48542
48558
  "kind": "js",
48543
48559
  "name": "IgcRangeSliderValue",
package/index.d.ts CHANGED
@@ -68,7 +68,9 @@ export { IgcCalendarResourceStringEN } from './components/common/i18n/calendar.r
68
68
  export type { RangeTextSelectMode, SelectionRangeDirection, StyleVariant, } from './components/types.js';
69
69
  export type { DateRangeDescriptor, WeekDays, } from './components/calendar/types.js';
70
70
  export { DateRangeType } from './components/calendar/types.js';
71
+ export type { CheckboxChangeEventArgs } from './components/checkbox/checkbox-base.js';
71
72
  export type { DatePart, DatePartDeltas, } from './components/date-time-input/date-util.js';
73
+ export type { RadioChangeEventArgs } from './components/radio/radio.js';
72
74
  export type { IgcRangeSliderValue } from './components/slider/range-slider.js';
73
75
  export type { IgcActiveStepChangingArgs, IgcActiveStepChangedArgs, } from './components/stepper/stepper.common.js';
74
76
  export type { ComboItemTemplate, IgcComboChangeEventArgs, } from './components/combo/types.js';
package/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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","sourcesContent":["// Components\nexport { default as IgcAvatarComponent } from './components/avatar/avatar.js';\nexport { default as IgcAccordionComponent } from './components/accordion/accordion.js';\nexport { default as IgcBadgeComponent } from './components/badge/badge.js';\nexport { default as IgcBannerComponent } from './components/banner/banner.js';\nexport { default as IgcButtonComponent } from './components/button/button.js';\nexport { default as IgcButtonGroupComponent } from './components/button-group/button-group.js';\nexport { default as IgcCalendarComponent } from './components/calendar/calendar.js';\nexport { default as IgcCardComponent } from './components/card/card.js';\nexport { default as IgcCardActionsComponent } from './components/card/card.actions.js';\nexport { default as IgcCardContentComponent } from './components/card/card.content.js';\nexport { default as IgcCardHeaderComponent } from './components/card/card.header.js';\nexport { default as IgcCardMediaComponent } from './components/card/card.media.js';\nexport { default as IgcCheckboxComponent } from './components/checkbox/checkbox.js';\nexport { default as IgcCircularProgressComponent } from './components/progress/circular-progress.js';\nexport { default as IgcCircularGradientComponent } from './components/progress/circular-gradient.js';\nexport { default as IgcChipComponent } from './components/chip/chip.js';\nexport { default as IgcComboComponent } from './components/combo/combo.js';\nexport { default as IgcDatePickerComponent } from './components/date-picker/date-picker.js';\nexport { default as IgcDateTimeInputComponent } from './components/date-time-input/date-time-input.js';\nexport { default as IgcDialogComponent } from './components/dialog/dialog.js';\nexport { default as IgcDividerComponent } from './components/divider/divider.js';\nexport { default as IgcDropdownComponent } from './components/dropdown/dropdown.js';\nexport { default as IgcDropdownGroupComponent } from './components/dropdown/dropdown-group.js';\nexport { default as IgcDropdownHeaderComponent } from './components/dropdown/dropdown-header.js';\nexport { default as IgcDropdownItemComponent } from './components/dropdown/dropdown-item.js';\nexport { default as IgcSelectComponent } from './components/select/select.js';\nexport { default as IgcSelectGroupComponent } from './components/select/select-group.js';\nexport { default as IgcSelectHeaderComponent } from './components/select/select-header.js';\nexport { default as IgcSelectItemComponent } from './components/select/select-item.js';\nexport { default as IgcExpansionPanelComponent } from './components/expansion-panel/expansion-panel.js';\nexport { default as IgcIconComponent } from './components/icon/icon.js';\nexport { default as IgcIconButtonComponent } from './components/button/icon-button.js';\nexport { default as IgcInputComponent } from './components/input/input.js';\nexport { default as IgcLinearProgressComponent } from './components/progress/linear-progress.js';\nexport { default as IgcListComponent } from './components/list/list.js';\nexport { default as IgcListHeaderComponent } from './components/list/list-header.js';\nexport { default as IgcListItemComponent } from './components/list/list-item.js';\nexport { default as IgcMaskInputComponent } from './components/mask-input/mask-input.js';\nexport { default as IgcNavDrawerComponent } from './components/nav-drawer/nav-drawer.js';\nexport { default as IgcNavDrawerHeaderItemComponent } from './components/nav-drawer/nav-drawer-header-item.js';\nexport { default as IgcNavDrawerItemComponent } from './components/nav-drawer/nav-drawer-item.js';\nexport { default as IgcNavbarComponent } from './components/navbar/navbar.js';\nexport { default as IgcRadioGroupComponent } from './components/radio-group/radio-group.js';\nexport { default as IgcRadioComponent } from './components/radio/radio.js';\nexport { default as IgcRatingComponent } from './components/rating/rating.js';\nexport { default as IgcRatingSymbolComponent } from './components/rating/rating-symbol.js';\nexport { default as IgcRippleComponent } from './components/ripple/ripple.js';\nexport { default as IgcRangeSliderComponent } from './components/slider/range-slider.js';\nexport { default as IgcSnackbarComponent } from './components/snackbar/snackbar.js';\nexport { default as IgcSliderComponent } from './components/slider/slider.js';\nexport { default as IgcSliderLabelComponent } from './components/slider/slider-label.js';\nexport { default as IgcTabsComponent } from './components/tabs/tabs.js';\nexport { default as IgcTabComponent } from './components/tabs/tab.js';\nexport { default as IgcTabPanelComponent } from './components/tabs/tab-panel.js';\nexport { default as IgcToastComponent } from './components/toast/toast.js';\nexport { default as IgcToggleButtonComponent } from './components/button-group/toggle-button.js';\nexport { default as IgcSwitchComponent } from './components/checkbox/switch.js';\nexport { default as IgcTextareaComponent } from './components/textarea/textarea.js';\nexport { default as IgcTreeComponent } from './components/tree/tree.js';\nexport { default as IgcTreeItemComponent } from './components/tree/tree-item.js';\nexport { default as IgcStepperComponent } from './components/stepper/stepper.js';\nexport { default as IgcStepComponent } from './components/stepper/step.js';\n\n// definitions\nexport { defineComponents } from './components/common/definitions/defineComponents.js';\nexport { defineAllComponents } from './components/common/definitions/defineAllComponents.js';\n\n// icon registration\nexport {\n registerIcon,\n registerIconFromText,\n setIconRef,\n} from './components/icon/icon.registry.js';\n\n// theming configuration\nexport { configureTheme } from './theming/config.js';\n\n// localization objects\nexport { IgcCalendarResourceStringEN } from './components/common/i18n/calendar.resources.js';\n\n// Types\nexport type {\n RangeTextSelectMode,\n SelectionRangeDirection,\n StyleVariant,\n} from './components/types.js';\nexport type {\n DateRangeDescriptor,\n WeekDays,\n} from './components/calendar/types.js';\nexport { DateRangeType } from './components/calendar/types.js';\nexport type {\n DatePart,\n DatePartDeltas,\n} from './components/date-time-input/date-util.js';\nexport type { IgcRangeSliderValue } from './components/slider/range-slider.js';\nexport type {\n IgcActiveStepChangingArgs,\n IgcActiveStepChangedArgs,\n} from './components/stepper/stepper.common.js';\nexport type {\n ComboItemTemplate,\n IgcComboChangeEventArgs,\n} from './components/combo/types.js';\nexport type { IconMeta } from './components/icon/registry/types.js';\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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","sourcesContent":["// Components\nexport { default as IgcAvatarComponent } from './components/avatar/avatar.js';\nexport { default as IgcAccordionComponent } from './components/accordion/accordion.js';\nexport { default as IgcBadgeComponent } from './components/badge/badge.js';\nexport { default as IgcBannerComponent } from './components/banner/banner.js';\nexport { default as IgcButtonComponent } from './components/button/button.js';\nexport { default as IgcButtonGroupComponent } from './components/button-group/button-group.js';\nexport { default as IgcCalendarComponent } from './components/calendar/calendar.js';\nexport { default as IgcCardComponent } from './components/card/card.js';\nexport { default as IgcCardActionsComponent } from './components/card/card.actions.js';\nexport { default as IgcCardContentComponent } from './components/card/card.content.js';\nexport { default as IgcCardHeaderComponent } from './components/card/card.header.js';\nexport { default as IgcCardMediaComponent } from './components/card/card.media.js';\nexport { default as IgcCheckboxComponent } from './components/checkbox/checkbox.js';\nexport { default as IgcCircularProgressComponent } from './components/progress/circular-progress.js';\nexport { default as IgcCircularGradientComponent } from './components/progress/circular-gradient.js';\nexport { default as IgcChipComponent } from './components/chip/chip.js';\nexport { default as IgcComboComponent } from './components/combo/combo.js';\nexport { default as IgcDatePickerComponent } from './components/date-picker/date-picker.js';\nexport { default as IgcDateTimeInputComponent } from './components/date-time-input/date-time-input.js';\nexport { default as IgcDialogComponent } from './components/dialog/dialog.js';\nexport { default as IgcDividerComponent } from './components/divider/divider.js';\nexport { default as IgcDropdownComponent } from './components/dropdown/dropdown.js';\nexport { default as IgcDropdownGroupComponent } from './components/dropdown/dropdown-group.js';\nexport { default as IgcDropdownHeaderComponent } from './components/dropdown/dropdown-header.js';\nexport { default as IgcDropdownItemComponent } from './components/dropdown/dropdown-item.js';\nexport { default as IgcSelectComponent } from './components/select/select.js';\nexport { default as IgcSelectGroupComponent } from './components/select/select-group.js';\nexport { default as IgcSelectHeaderComponent } from './components/select/select-header.js';\nexport { default as IgcSelectItemComponent } from './components/select/select-item.js';\nexport { default as IgcExpansionPanelComponent } from './components/expansion-panel/expansion-panel.js';\nexport { default as IgcIconComponent } from './components/icon/icon.js';\nexport { default as IgcIconButtonComponent } from './components/button/icon-button.js';\nexport { default as IgcInputComponent } from './components/input/input.js';\nexport { default as IgcLinearProgressComponent } from './components/progress/linear-progress.js';\nexport { default as IgcListComponent } from './components/list/list.js';\nexport { default as IgcListHeaderComponent } from './components/list/list-header.js';\nexport { default as IgcListItemComponent } from './components/list/list-item.js';\nexport { default as IgcMaskInputComponent } from './components/mask-input/mask-input.js';\nexport { default as IgcNavDrawerComponent } from './components/nav-drawer/nav-drawer.js';\nexport { default as IgcNavDrawerHeaderItemComponent } from './components/nav-drawer/nav-drawer-header-item.js';\nexport { default as IgcNavDrawerItemComponent } from './components/nav-drawer/nav-drawer-item.js';\nexport { default as IgcNavbarComponent } from './components/navbar/navbar.js';\nexport { default as IgcRadioGroupComponent } from './components/radio-group/radio-group.js';\nexport { default as IgcRadioComponent } from './components/radio/radio.js';\nexport { default as IgcRatingComponent } from './components/rating/rating.js';\nexport { default as IgcRatingSymbolComponent } from './components/rating/rating-symbol.js';\nexport { default as IgcRippleComponent } from './components/ripple/ripple.js';\nexport { default as IgcRangeSliderComponent } from './components/slider/range-slider.js';\nexport { default as IgcSnackbarComponent } from './components/snackbar/snackbar.js';\nexport { default as IgcSliderComponent } from './components/slider/slider.js';\nexport { default as IgcSliderLabelComponent } from './components/slider/slider-label.js';\nexport { default as IgcTabsComponent } from './components/tabs/tabs.js';\nexport { default as IgcTabComponent } from './components/tabs/tab.js';\nexport { default as IgcTabPanelComponent } from './components/tabs/tab-panel.js';\nexport { default as IgcToastComponent } from './components/toast/toast.js';\nexport { default as IgcToggleButtonComponent } from './components/button-group/toggle-button.js';\nexport { default as IgcSwitchComponent } from './components/checkbox/switch.js';\nexport { default as IgcTextareaComponent } from './components/textarea/textarea.js';\nexport { default as IgcTreeComponent } from './components/tree/tree.js';\nexport { default as IgcTreeItemComponent } from './components/tree/tree-item.js';\nexport { default as IgcStepperComponent } from './components/stepper/stepper.js';\nexport { default as IgcStepComponent } from './components/stepper/step.js';\n\n// definitions\nexport { defineComponents } from './components/common/definitions/defineComponents.js';\nexport { defineAllComponents } from './components/common/definitions/defineAllComponents.js';\n\n// icon registration\nexport {\n registerIcon,\n registerIconFromText,\n setIconRef,\n} from './components/icon/icon.registry.js';\n\n// theming configuration\nexport { configureTheme } from './theming/config.js';\n\n// localization objects\nexport { IgcCalendarResourceStringEN } from './components/common/i18n/calendar.resources.js';\n\n// Types\nexport type {\n RangeTextSelectMode,\n SelectionRangeDirection,\n StyleVariant,\n} from './components/types.js';\nexport type {\n DateRangeDescriptor,\n WeekDays,\n} from './components/calendar/types.js';\nexport { DateRangeType } from './components/calendar/types.js';\nexport type { CheckboxChangeEventArgs } from './components/checkbox/checkbox-base.js';\nexport type {\n DatePart,\n DatePartDeltas,\n} from './components/date-time-input/date-util.js';\nexport type { RadioChangeEventArgs } from './components/radio/radio.js';\nexport type { IgcRangeSliderValue } from './components/slider/range-slider.js';\nexport type {\n IgcActiveStepChangingArgs,\n IgcActiveStepChangedArgs,\n} from './components/stepper/stepper.common.js';\nexport type {\n ComboItemTemplate,\n IgcComboChangeEventArgs,\n} from './components/combo/types.js';\nexport type { IconMeta } from './components/icon/registry/types.js';\n"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "igniteui-webcomponents",
3
- "version": "5.0.0",
3
+ "version": "5.0.1",
4
4
  "description": "Ignite UI for Web Components is a complete library of UI components, giving you the ability to build modern web applications using encapsulation and the concept of reusable components in a dependency-free approach.",
5
5
  "author": "Infragistics",
6
6
  "license": "SEE LICENSE IN LICENSE",