igniteui-webcomponents 4.6.0 → 4.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +16 -0
- package/animations/player.js.map +1 -1
- package/components/accordion/accordion.js.map +1 -1
- package/components/avatar/avatar.d.ts +4 -3
- package/components/avatar/avatar.js +20 -24
- package/components/avatar/avatar.js.map +1 -1
- package/components/avatar/themes/themes.js +8 -9
- package/components/avatar/themes/themes.js.map +1 -1
- package/components/badge/badge.d.ts +4 -1
- package/components/badge/badge.js +15 -5
- package/components/badge/badge.js.map +1 -1
- package/components/badge/themes/themes.js +8 -9
- package/components/badge/themes/themes.js.map +1 -1
- package/components/button/button-base.d.ts +5 -6
- package/components/button/button-base.js +13 -26
- package/components/button/button-base.js.map +1 -1
- package/components/button/button.d.ts +2 -8
- package/components/button/button.js +6 -14
- package/components/button/button.js.map +1 -1
- package/components/button/icon-button.d.ts +1 -1
- package/components/button/icon-button.js +2 -1
- package/components/button/icon-button.js.map +1 -1
- package/components/button/themes/button/themes.js +8 -9
- package/components/button/themes/button/themes.js.map +1 -1
- package/components/button/themes/icon-button/themes.js +8 -9
- package/components/button/themes/icon-button/themes.js.map +1 -1
- package/components/button-group/button-group.d.ts +1 -1
- package/components/button-group/button-group.js +2 -1
- package/components/button-group/button-group.js.map +1 -1
- package/components/button-group/themes/button.js +6 -13
- package/components/button-group/themes/button.js.map +1 -1
- package/components/button-group/themes/group.js +8 -9
- package/components/button-group/themes/group.js.map +1 -1
- package/components/button-group/toggle-button.d.ts +2 -2
- package/components/button-group/toggle-button.js +7 -13
- package/components/button-group/toggle-button.js.map +1 -1
- package/components/calendar/calendar.d.ts +1 -1
- package/components/calendar/calendar.js +2 -1
- package/components/calendar/calendar.js.map +1 -1
- package/components/calendar/common/calendar-base.js.map +1 -1
- package/components/calendar/common/calendar.model.js.map +1 -1
- package/components/calendar/common/utils.js.map +1 -1
- package/components/calendar/days-view/days-view.js.map +1 -1
- package/components/calendar/months-view/months-view.js.map +1 -1
- package/components/calendar/themes/calendar.js +8 -9
- package/components/calendar/themes/calendar.js.map +1 -1
- package/components/calendar/years-view/years-view.js.map +1 -1
- package/components/card/card.content.d.ts +1 -1
- package/components/card/card.content.js +2 -1
- package/components/card/card.content.js.map +1 -1
- package/components/card/card.d.ts +1 -1
- package/components/card/card.header.d.ts +1 -1
- package/components/card/card.header.js +2 -1
- package/components/card/card.header.js.map +1 -1
- package/components/card/card.js +2 -1
- package/components/card/card.js.map +1 -1
- package/components/card/themes/container.js +8 -9
- package/components/card/themes/container.js.map +1 -1
- package/components/card/themes/content.js +8 -9
- package/components/card/themes/content.js.map +1 -1
- package/components/card/themes/header.js +8 -9
- package/components/card/themes/header.js.map +1 -1
- package/components/checkbox/checkbox-base.js.map +1 -1
- package/components/chip/chip.d.ts +1 -1
- package/components/chip/chip.js +2 -1
- package/components/chip/chip.js.map +1 -1
- package/components/chip/themes/themes.js +8 -9
- package/components/chip/themes/themes.js.map +1 -1
- package/components/combo/combo-item.d.ts +2 -0
- package/components/combo/combo-item.js +10 -11
- package/components/combo/combo-item.js.map +1 -1
- package/components/combo/combo-list.d.ts +0 -1
- package/components/combo/combo-list.js +0 -6
- package/components/combo/combo-list.js.map +1 -1
- package/components/combo/combo.d.ts +4 -5
- package/components/combo/combo.js +51 -39
- package/components/combo/combo.js.map +1 -1
- package/components/combo/controllers/navigation.js.map +1 -1
- package/components/combo/controllers/selection.js.map +1 -1
- package/components/combo/operations/group.d.ts +2 -2
- package/components/combo/operations/group.js +13 -26
- package/components/combo/operations/group.js.map +1 -1
- package/components/combo/themes/dark/combo.bootstrap.css.js +1 -1
- package/components/combo/themes/dark/combo.bootstrap.css.js.map +1 -1
- package/components/combo/themes/dark/combo.fluent.css.js +1 -1
- package/components/combo/themes/dark/combo.fluent.css.js.map +1 -1
- package/components/combo/themes/light/combo.bootstrap.css.js +1 -1
- package/components/combo/themes/light/combo.bootstrap.css.js.map +1 -1
- package/components/combo/themes/light/combo.fluent.css.js +1 -1
- package/components/combo/themes/light/combo.fluent.css.js.map +1 -1
- package/components/common/controllers/key-bindings.js.map +1 -1
- package/components/common/controllers/root-click.d.ts +1 -1
- package/components/common/controllers/root-click.js.map +1 -1
- package/components/common/controllers/root-scroll.js.map +1 -1
- package/components/common/decorators/watch.js.map +1 -1
- package/components/common/definitions/defineComponents.js.map +1 -1
- package/components/common/definitions/register.js.map +1 -1
- package/components/common/mixins/alert.js.map +1 -1
- package/components/common/mixins/combo-box.js.map +1 -1
- package/components/common/mixins/form-associated.js.map +1 -1
- package/components/common/util.js.map +1 -1
- package/components/date-time-input/date-time-input.js.map +1 -1
- package/components/date-time-input/date-util.js.map +1 -1
- package/components/dialog/dialog.js +2 -1
- package/components/dialog/dialog.js.map +1 -1
- package/components/dialog/themes/themes.js +8 -9
- package/components/dialog/themes/themes.js.map +1 -1
- package/components/dropdown/dropdown.js.map +1 -1
- package/components/dropdown/themes/dark/dropdown.bootstrap.css.js +1 -1
- package/components/dropdown/themes/dark/dropdown.bootstrap.css.js.map +1 -1
- package/components/dropdown/themes/dark/dropdown.fluent.css.js +1 -1
- package/components/dropdown/themes/dark/dropdown.fluent.css.js.map +1 -1
- package/components/dropdown/themes/light/dropdown.bootstrap.css.js +1 -1
- package/components/dropdown/themes/light/dropdown.bootstrap.css.js.map +1 -1
- package/components/dropdown/themes/light/dropdown.fluent.css.js +1 -1
- package/components/dropdown/themes/light/dropdown.fluent.css.js.map +1 -1
- package/components/dropdown/themes/shared/item/dropdown-item.fluent.css.js +1 -1
- package/components/dropdown/themes/shared/item/dropdown-item.fluent.css.js.map +1 -1
- package/components/expansion-panel/expansion-panel.d.ts +1 -1
- package/components/expansion-panel/expansion-panel.js +2 -1
- package/components/expansion-panel/expansion-panel.js.map +1 -1
- package/components/expansion-panel/themes/themes.js +8 -9
- package/components/expansion-panel/themes/themes.js.map +1 -1
- package/components/form/form.js.map +1 -1
- package/components/icon/icon.d.ts +2 -2
- package/components/icon/icon.js +6 -7
- package/components/icon/icon.js.map +1 -1
- package/components/icon/icon.registry.js.map +1 -1
- package/components/icon/themes/themes.js +8 -9
- package/components/icon/themes/themes.js.map +1 -1
- package/components/input/input-base.js +0 -4
- package/components/input/input-base.js.map +1 -1
- package/components/list/list-header.d.ts +1 -1
- package/components/list/list-header.js +2 -1
- package/components/list/list-header.js.map +1 -1
- package/components/list/list-item.d.ts +1 -1
- package/components/list/list-item.js +2 -1
- package/components/list/list-item.js.map +1 -1
- package/components/list/themes/header.js +8 -9
- package/components/list/themes/header.js.map +1 -1
- package/components/list/themes/item.js +8 -9
- package/components/list/themes/item.js.map +1 -1
- package/components/mask-input/mask-input-base.js.map +1 -1
- package/components/mask-input/mask-input.js.map +1 -1
- package/components/mask-input/mask-parser.js.map +1 -1
- package/components/nav-drawer/nav-drawer-header-item.d.ts +1 -1
- package/components/nav-drawer/nav-drawer-header-item.js +2 -1
- package/components/nav-drawer/nav-drawer-header-item.js.map +1 -1
- package/components/nav-drawer/nav-drawer-item.d.ts +1 -1
- package/components/nav-drawer/nav-drawer-item.js +2 -1
- package/components/nav-drawer/nav-drawer-item.js.map +1 -1
- package/components/nav-drawer/nav-drawer.d.ts +1 -1
- package/components/nav-drawer/nav-drawer.js +2 -1
- package/components/nav-drawer/nav-drawer.js.map +1 -1
- package/components/nav-drawer/themes/container.base.css.js +1 -1
- package/components/nav-drawer/themes/container.base.css.js.map +1 -1
- package/components/nav-drawer/themes/container.js +8 -9
- package/components/nav-drawer/themes/container.js.map +1 -1
- package/components/nav-drawer/themes/header-item.js +2 -21
- package/components/nav-drawer/themes/header-item.js.map +1 -1
- package/components/nav-drawer/themes/item.js +4 -17
- package/components/nav-drawer/themes/item.js.map +1 -1
- package/components/navbar/navbar.d.ts +1 -1
- package/components/navbar/navbar.js +2 -1
- package/components/navbar/navbar.js.map +1 -1
- package/components/navbar/themes/themes.js +8 -9
- package/components/navbar/themes/themes.js.map +1 -1
- package/components/popover/popover.js.map +1 -1
- package/components/progress/base.js.map +1 -1
- package/components/progress/circular-progress.d.ts +1 -1
- package/components/progress/circular-progress.js +2 -1
- package/components/progress/circular-progress.js.map +1 -1
- package/components/progress/linear-progress.d.ts +1 -1
- package/components/progress/linear-progress.js +2 -1
- package/components/progress/linear-progress.js.map +1 -1
- package/components/progress/themes/circular/themes.js +8 -9
- package/components/progress/themes/circular/themes.js.map +1 -1
- package/components/progress/themes/linear/themes.js +8 -9
- package/components/progress/themes/linear/themes.js.map +1 -1
- package/components/radio/radio.js.map +1 -1
- package/components/radio/utils.js.map +1 -1
- package/components/rating/rating.d.ts +5 -0
- package/components/rating/rating.js +13 -2
- package/components/rating/rating.js.map +1 -1
- package/components/rating/themes/themes.js +8 -9
- package/components/rating/themes/themes.js.map +1 -1
- package/components/select/select-group.js.map +1 -1
- package/components/select/select-item.js.map +1 -1
- package/components/select/select.js.map +1 -1
- package/components/select/themes/dark/select.bootstrap.css.js +1 -1
- package/components/select/themes/dark/select.bootstrap.css.js.map +1 -1
- package/components/select/themes/dark/select.fluent.css.js +1 -1
- package/components/select/themes/dark/select.fluent.css.js.map +1 -1
- package/components/select/themes/light/select.bootstrap.css.js +1 -1
- package/components/select/themes/light/select.bootstrap.css.js.map +1 -1
- package/components/select/themes/light/select.fluent.css.js +1 -1
- package/components/select/themes/light/select.fluent.css.js.map +1 -1
- package/components/slider/range-slider.js.map +1 -1
- package/components/slider/slider-base.js.map +1 -1
- package/components/slider/slider.js.map +1 -1
- package/components/snackbar/snackbar.d.ts +1 -1
- package/components/snackbar/snackbar.js +2 -1
- package/components/snackbar/snackbar.js.map +1 -1
- package/components/snackbar/themes/themes.js +8 -9
- package/components/snackbar/themes/themes.js.map +1 -1
- package/components/stepper/step.d.ts +1 -1
- package/components/stepper/step.js +2 -1
- package/components/stepper/step.js.map +1 -1
- package/components/stepper/stepper.js.map +1 -1
- package/components/stepper/themes/step/themes.js +8 -9
- package/components/stepper/themes/step/themes.js.map +1 -1
- package/components/tabs/tab.d.ts +1 -1
- package/components/tabs/tab.js +2 -1
- package/components/tabs/tab.js.map +1 -1
- package/components/tabs/tabs.d.ts +1 -1
- package/components/tabs/tabs.js +2 -1
- package/components/tabs/tabs.js.map +1 -1
- package/components/tabs/themes/tab-themes.js +4 -17
- package/components/tabs/themes/tab-themes.js.map +1 -1
- package/components/tabs/themes/tabs-themes.js +8 -9
- package/components/tabs/themes/tabs-themes.js.map +1 -1
- package/components/textarea/textarea.js.map +1 -1
- package/components/toast/themes/themes.js +8 -9
- package/components/toast/themes/themes.js.map +1 -1
- package/components/toast/toast.js +2 -1
- package/components/toast/toast.js.map +1 -1
- package/components/tree/tree-item.d.ts +1 -1
- package/components/tree/tree-item.js +20 -4
- package/components/tree/tree-item.js.map +1 -1
- package/components/tree/tree.d.ts +5 -0
- package/components/tree/tree.js +4 -0
- package/components/tree/tree.js.map +1 -1
- package/components/tree/tree.navigation.js.map +1 -1
- package/components/tree/tree.selection.js.map +1 -1
- package/custom-elements.json +190 -378
- package/package.json +1 -1
- package/theming/config.js.map +1 -1
- package/theming/theming-controller.js.map +1 -1
- package/theming/utils.js.map +1 -1
- package/components/toggle/toggle.controller.d.ts +0 -52
- package/components/toggle/toggle.controller.js +0 -92
- package/components/toggle/toggle.controller.js.map +0 -1
- package/components/toggle/toggle.directive.d.ts +0 -20
- package/components/toggle/toggle.directive.js +0 -94
- package/components/toggle/toggle.directive.js.map +0 -1
- package/components/toggle/types.d.ts +0 -51
- package/components/toggle/types.js +0 -2
- package/components/toggle/types.js.map +0 -1
|
@@ -8,35 +8,34 @@ import { styles as fluentLight } from './light/chip.fluent.css.js';
|
|
|
8
8
|
import { styles as indigoLight } from './light/chip.indigo.css.js';
|
|
9
9
|
import { styles as materialLight } from './light/chip.material.css.js';
|
|
10
10
|
import { styles as bootstrap } from './shared/chip.bootstrap.css.js';
|
|
11
|
-
import { styles as shared } from './shared/chip.common.css.js';
|
|
12
11
|
import { styles as fluent } from './shared/chip.fluent.css.js';
|
|
13
12
|
import { styles as indigo } from './shared/chip.indigo.css.js';
|
|
14
13
|
const light = {
|
|
15
14
|
bootstrap: css `
|
|
16
|
-
${
|
|
15
|
+
${bootstrap} ${bootstrapLight}
|
|
17
16
|
`,
|
|
18
17
|
material: css `
|
|
19
|
-
${
|
|
18
|
+
${materialLight}
|
|
20
19
|
`,
|
|
21
20
|
fluent: css `
|
|
22
|
-
${
|
|
21
|
+
${fluent} ${fluentLight}
|
|
23
22
|
`,
|
|
24
23
|
indigo: css `
|
|
25
|
-
${
|
|
24
|
+
${indigo} ${indigoLight}
|
|
26
25
|
`,
|
|
27
26
|
};
|
|
28
27
|
const dark = {
|
|
29
28
|
bootstrap: css `
|
|
30
|
-
${
|
|
29
|
+
${bootstrap} ${bootstrapDark}
|
|
31
30
|
`,
|
|
32
31
|
material: css `
|
|
33
|
-
${
|
|
32
|
+
${materialDark}
|
|
34
33
|
`,
|
|
35
34
|
fluent: css `
|
|
36
|
-
${
|
|
35
|
+
${fluent} ${fluentDark}
|
|
37
36
|
`,
|
|
38
37
|
indigo: css `
|
|
39
|
-
${
|
|
38
|
+
${indigo} ${indigoDark}
|
|
40
39
|
`,
|
|
41
40
|
};
|
|
42
41
|
export const all = { light, dark };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"themes.js","sourceRoot":"","sources":["../../../../src/components/chip/themes/themes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAG1B,OAAO,EAAE,MAAM,IAAI,aAAa,EAAE,MAAM,8BAA8B,CAAC;AACvE,OAAO,EAAE,MAAM,IAAI,UAAU,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,MAAM,IAAI,UAAU,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,MAAM,IAAI,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAErE,OAAO,EAAE,MAAM,IAAI,cAAc,EAAE,MAAM,+BAA+B,CAAC;AACzE,OAAO,EAAE,MAAM,IAAI,WAAW,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,EAAE,MAAM,IAAI,WAAW,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,EAAE,MAAM,IAAI,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAEvE,OAAO,EAAE,MAAM,IAAI,SAAS,EAAE,MAAM,gCAAgC,CAAC;AACrE,OAAO,EAAE,MAAM,IAAI,MAAM,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,EAAE,MAAM,IAAI,MAAM,EAAE,MAAM,6BAA6B,CAAC;
|
|
1
|
+
{"version":3,"file":"themes.js","sourceRoot":"","sources":["../../../../src/components/chip/themes/themes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAG1B,OAAO,EAAE,MAAM,IAAI,aAAa,EAAE,MAAM,8BAA8B,CAAC;AACvE,OAAO,EAAE,MAAM,IAAI,UAAU,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,MAAM,IAAI,UAAU,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,MAAM,IAAI,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAErE,OAAO,EAAE,MAAM,IAAI,cAAc,EAAE,MAAM,+BAA+B,CAAC;AACzE,OAAO,EAAE,MAAM,IAAI,WAAW,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,EAAE,MAAM,IAAI,WAAW,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,EAAE,MAAM,IAAI,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAEvE,OAAO,EAAE,MAAM,IAAI,SAAS,EAAE,MAAM,gCAAgC,CAAC;AACrE,OAAO,EAAE,MAAM,IAAI,MAAM,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,EAAE,MAAM,IAAI,MAAM,EAAE,MAAM,6BAA6B,CAAC;AAG/D,MAAM,KAAK,GAAG;IACZ,SAAS,EAAE,GAAG,CAAA;MACV,SAAS,IAAI,cAAc;GAC9B;IACD,QAAQ,EAAE,GAAG,CAAA;MACT,aAAa;GAChB;IACD,MAAM,EAAE,GAAG,CAAA;MACP,MAAM,IAAI,WAAW;GACxB;IACD,MAAM,EAAE,GAAG,CAAA;MACP,MAAM,IAAI,WAAW;GACxB;CACF,CAAC;AAEF,MAAM,IAAI,GAAG;IACX,SAAS,EAAE,GAAG,CAAA;MACV,SAAS,IAAI,aAAa;GAC7B;IACD,QAAQ,EAAE,GAAG,CAAA;MACT,YAAY;GACf;IACD,MAAM,EAAE,GAAG,CAAA;MACP,MAAM,IAAI,UAAU;GACvB;IACD,MAAM,EAAE,GAAG,CAAA;MACP,MAAM,IAAI,UAAU;GACvB;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,GAAG,GAAW,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC","sourcesContent":["import { css } from 'lit';\n\n// Dark Overrides\nimport { styles as bootstrapDark } from './dark/chip.bootstrap.css.js';\nimport { styles as fluentDark } from './dark/chip.fluent.css.js';\nimport { styles as indigoDark } from './dark/chip.indigo.css.js';\nimport { styles as materialDark } from './dark/chip.material.css.js';\n// Light Overrides\nimport { styles as bootstrapLight } from './light/chip.bootstrap.css.js';\nimport { styles as fluentLight } from './light/chip.fluent.css.js';\nimport { styles as indigoLight } from './light/chip.indigo.css.js';\nimport { styles as materialLight } from './light/chip.material.css.js';\n// Shared Styles\nimport { styles as bootstrap } from './shared/chip.bootstrap.css.js';\nimport { styles as fluent } from './shared/chip.fluent.css.js';\nimport { styles as indigo } from './shared/chip.indigo.css.js';\nimport { Themes } from '../../../theming/types.js';\n\nconst light = {\n bootstrap: css`\n ${bootstrap} ${bootstrapLight}\n `,\n material: css`\n ${materialLight}\n `,\n fluent: css`\n ${fluent} ${fluentLight}\n `,\n indigo: css`\n ${indigo} ${indigoLight}\n `,\n};\n\nconst dark = {\n bootstrap: css`\n ${bootstrap} ${bootstrapDark}\n `,\n material: css`\n ${materialDark}\n `,\n fluent: css`\n ${fluent} ${fluentDark}\n `,\n indigo: css`\n ${indigo} ${indigoDark}\n `,\n};\n\nexport const all: Themes = { light, dark };\n"]}
|
|
@@ -3,6 +3,7 @@ export default class IgcComboItemComponent extends LitElement {
|
|
|
3
3
|
static readonly tagName: string;
|
|
4
4
|
static styles: import("lit").CSSResult;
|
|
5
5
|
static register(): void;
|
|
6
|
+
private _internals;
|
|
6
7
|
index: number;
|
|
7
8
|
/**
|
|
8
9
|
* Determines whether the item is selected.
|
|
@@ -19,6 +20,7 @@ export default class IgcComboItemComponent extends LitElement {
|
|
|
19
20
|
*/
|
|
20
21
|
hideCheckbox: boolean;
|
|
21
22
|
protected selectedChange(): void;
|
|
23
|
+
constructor();
|
|
22
24
|
connectedCallback(): void;
|
|
23
25
|
private renderCheckbox;
|
|
24
26
|
protected render(): import("lit-html").TemplateResult<1>;
|
|
@@ -13,19 +13,19 @@ import { watch } from '../common/decorators/watch.js';
|
|
|
13
13
|
import { registerComponent } from '../common/definitions/register.js';
|
|
14
14
|
import { all } from '../dropdown/themes/item.js';
|
|
15
15
|
let IgcComboItemComponent = class IgcComboItemComponent extends LitElement {
|
|
16
|
-
constructor() {
|
|
17
|
-
super(...arguments);
|
|
18
|
-
this.selected = false;
|
|
19
|
-
this.active = false;
|
|
20
|
-
this.hideCheckbox = false;
|
|
21
|
-
}
|
|
22
16
|
static register() {
|
|
23
17
|
registerComponent(this, IgcCheckboxComponent);
|
|
24
18
|
}
|
|
25
19
|
selectedChange() {
|
|
26
|
-
this.selected
|
|
27
|
-
|
|
28
|
-
|
|
20
|
+
this._internals.ariaSelected = `${this.selected}`;
|
|
21
|
+
}
|
|
22
|
+
constructor() {
|
|
23
|
+
super();
|
|
24
|
+
this.selected = false;
|
|
25
|
+
this.active = false;
|
|
26
|
+
this.hideCheckbox = false;
|
|
27
|
+
this._internals = this.attachInternals();
|
|
28
|
+
this._internals.role = 'option';
|
|
29
29
|
}
|
|
30
30
|
connectedCallback() {
|
|
31
31
|
super.connectedCallback();
|
|
@@ -34,9 +34,8 @@ let IgcComboItemComponent = class IgcComboItemComponent extends LitElement {
|
|
|
34
34
|
renderCheckbox() {
|
|
35
35
|
return html `<section part="prefix">
|
|
36
36
|
<igc-checkbox
|
|
37
|
-
|
|
37
|
+
inert
|
|
38
38
|
?checked=${this.selected}
|
|
39
|
-
tabindex="-1"
|
|
40
39
|
exportparts="control: checkbox, indicator: checkbox-indicator, checked"
|
|
41
40
|
></igc-checkbox>
|
|
42
41
|
</section>`;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"combo-item.js","sourceRoot":"","sources":["../../../src/components/combo/combo-item.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,KAAK,CAAC;AAChD,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAE7C,OAAO,EAAE,MAAM,EAAE,MAAM,iCAAiC,CAAC;AACzD,OAAO,EAAE,MAAM,EAAE,MAAM,oCAAoC,CAAC;AAC5D,OAAO,oBAAoB,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAE,KAAK,EAAE,MAAM,+BAA+B,CAAC;AACtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AACtE,OAAO,EAAE,GAAG,EAAE,MAAM,4BAA4B,CAAC;AAIlC,IAAM,qBAAqB,GAA3B,MAAM,qBAAsB,SAAQ,UAAU;
|
|
1
|
+
{"version":3,"file":"combo-item.js","sourceRoot":"","sources":["../../../src/components/combo/combo-item.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,KAAK,CAAC;AAChD,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAE7C,OAAO,EAAE,MAAM,EAAE,MAAM,iCAAiC,CAAC;AACzD,OAAO,EAAE,MAAM,EAAE,MAAM,oCAAoC,CAAC;AAC5D,OAAO,oBAAoB,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAE,KAAK,EAAE,MAAM,+BAA+B,CAAC;AACtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AACtE,OAAO,EAAE,GAAG,EAAE,MAAM,4BAA4B,CAAC;AAIlC,IAAM,qBAAqB,GAA3B,MAAM,qBAAsB,SAAQ,UAAU;IAIpD,MAAM,CAAC,QAAQ;QACpB,iBAAiB,CAAC,IAAI,EAAE,oBAAoB,CAAC,CAAC;IAChD,CAAC;IA4BS,cAAc;QACtB,IAAI,CAAC,UAAU,CAAC,YAAY,GAAG,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;IACpD,CAAC;IAED;QACE,KAAK,EAAE,CAAC;QArBH,aAAQ,GAAG,KAAK,CAAC;QAMjB,WAAM,GAAG,KAAK,CAAC;QAOf,iBAAY,GAAG,KAAK,CAAC;QAU1B,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;QACzC,IAAI,CAAC,UAAU,CAAC,IAAI,GAAG,QAAQ,CAAC;IAClC,CAAC;IAEe,iBAAiB;QAC/B,KAAK,CAAC,iBAAiB,EAAE,CAAC;QAC1B,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IACtC,CAAC;IAEO,cAAc;QACpB,OAAO,IAAI,CAAA;;;mBAGI,IAAI,CAAC,QAAQ;;;eAGjB,CAAC;IACd,CAAC;IAEkB,MAAM;QACvB,OAAO,IAAI,CAAA;QACP,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC,OAAO;;;;KAIvD,CAAC;IACJ,CAAC;;AAlEsB,6BAAO,GAAW,gBAAgB,AAA3B,CAA4B;AACnC,4BAAM,GAAG,MAAM,AAAT,CAAU;AAShC;IADN,QAAQ,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC;oDACT;AAOf;IADN,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;uDACnB;AAMjB;IADN,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;qDACrB;AAOf;IADN,QAAQ,CAAC,EAAE,SAAS,EAAE,eAAe,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;2DAC5C;AAGlB;IADT,KAAK,CAAC,UAAU,CAAC;2DAGjB;AApCkB,qBAAqB;IADzC,MAAM,CAAC,GAAG,CAAC;GACS,qBAAqB,CAoEzC;eApEoB,qBAAqB","sourcesContent":["import { LitElement, html, nothing } from 'lit';\nimport { property } from 'lit/decorators.js';\n\nimport { styles } from './themes/combo-item.base.css.js';\nimport { themes } from '../../theming/theming-decorator.js';\nimport IgcCheckboxComponent from '../checkbox/checkbox.js';\nimport { watch } from '../common/decorators/watch.js';\nimport { registerComponent } from '../common/definitions/register.js';\nimport { all } from '../dropdown/themes/item.js';\n\n/* blazorSuppress */\n@themes(all)\nexport default class IgcComboItemComponent extends LitElement {\n public static readonly tagName: string = 'igc-combo-item';\n public static override styles = styles;\n\n public static register() {\n registerComponent(this, IgcCheckboxComponent);\n }\n\n private _internals: ElementInternals;\n\n @property({ attribute: false })\n public index!: number;\n\n /**\n * Determines whether the item is selected.\n * @attr selected\n */\n @property({ type: Boolean, reflect: true })\n public selected = false;\n\n /**\n * Determines whether the item is active.\n */\n @property({ type: Boolean, reflect: true })\n public active = false;\n\n /**\n * Determines whether the item is active.\n * @attr hide-checkbox\n */\n @property({ attribute: 'hide-checkbox', type: Boolean, reflect: false })\n public hideCheckbox = false;\n\n @watch('selected')\n protected selectedChange() {\n this._internals.ariaSelected = `${this.selected}`;\n }\n\n constructor() {\n super();\n\n this._internals = this.attachInternals();\n this._internals.role = 'option';\n }\n\n public override connectedCallback() {\n super.connectedCallback();\n this.setAttribute('role', 'option');\n }\n\n private renderCheckbox() {\n return html`<section part=\"prefix\">\n <igc-checkbox\n inert\n ?checked=${this.selected}\n exportparts=\"control: checkbox, indicator: checkbox-indicator, checked\"\n ></igc-checkbox>\n </section>`;\n }\n\n protected override render() {\n return html`\n ${!this.hideCheckbox ? this.renderCheckbox() : nothing}\n <section id=\"content\" part=\"content\">\n <slot></slot>\n </section>\n `;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'igc-combo-item': IgcComboItemComponent;\n }\n}\n"]}
|
|
@@ -8,12 +8,6 @@ class IgcComboListComponent extends LitVirtualizer {
|
|
|
8
8
|
static register() {
|
|
9
9
|
registerComponent(this);
|
|
10
10
|
}
|
|
11
|
-
async connectedCallback() {
|
|
12
|
-
await super.layoutComplete;
|
|
13
|
-
super.connectedCallback();
|
|
14
|
-
this.setAttribute('tabindex', '0');
|
|
15
|
-
this.setAttribute('role', 'listbox');
|
|
16
|
-
}
|
|
17
11
|
}
|
|
18
12
|
IgcComboListComponent.tagName = 'igc-combo-list';
|
|
19
13
|
export default IgcComboListComponent;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"combo-list.js","sourceRoot":"","sources":["../../../src/components/combo/combo-list.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,yCAAyC,CAAC;AAEzE,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AAItE,MAAqB,qBAAsB,SAAQ,cAAc;IAAjE;;QAEkB,aAAQ,GAAG,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"combo-list.js","sourceRoot":"","sources":["../../../src/components/combo/combo-list.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,yCAAyC,CAAC;AAEzE,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AAItE,MAAqB,qBAAsB,SAAQ,cAAc;IAAjE;;QAEkB,aAAQ,GAAG,IAAI,CAAC;IAKlC,CAAC;IAHQ,MAAM,CAAC,QAAQ;QACpB,iBAAiB,CAAC,IAAI,CAAC,CAAC;IAC1B,CAAC;;AALsB,6BAAO,GAAG,gBAAgB,AAAnB,CAAoB;eAD/B,qBAAqB","sourcesContent":["import { LitVirtualizer } from '@lit-labs/virtualizer/LitVirtualizer.js';\n\nimport { registerComponent } from '../common/definitions/register.js';\n\n/* blazorSuppress */\n/* blazorAlternateBaseType: BaseElement */\nexport default class IgcComboListComponent extends LitVirtualizer {\n public static readonly tagName = 'igc-combo-list';\n public override scroller = true;\n\n public static register() {\n registerComponent(this);\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'igc-combo-list': IgcComboListComponent;\n }\n}\n"]}
|
|
@@ -7,8 +7,6 @@ import { themeSymbol } from '../../theming/theming-decorator.js';
|
|
|
7
7
|
import { Constructor } from '../common/mixins/constructor.js';
|
|
8
8
|
import type { Validator } from '../common/validators.js';
|
|
9
9
|
import IgcInputComponent from '../input/input.js';
|
|
10
|
-
import { IgcToggleController } from '../toggle/toggle.controller.js';
|
|
11
|
-
import { IgcToggleComponent } from '../toggle/types.js';
|
|
12
10
|
declare const IgcComboComponent_base: Constructor<import("../common/mixins/form-associated-required.js").FormRequiredInterface & import("../common/mixins/form-associated.js").FormAssociatedElementInterface> & import("../common/mixins/constructor.js").AbstractConstructor<import("../common/mixins/event-emitter.js").EventEmitterInterface<IgcComboEventMap>> & Constructor<LitElement>;
|
|
13
11
|
/**
|
|
14
12
|
* The Combo component is similar to the Select component in that it provides a list of options from which the user can make a selection.
|
|
@@ -58,18 +56,18 @@ declare const IgcComboComponent_base: Constructor<import("../common/mixins/form-
|
|
|
58
56
|
* @csspart footer - The container holding the footer content.
|
|
59
57
|
* @csspart empty - The container holding the empty content.
|
|
60
58
|
*/
|
|
61
|
-
export default class IgcComboComponent<T extends object = any> extends IgcComboComponent_base
|
|
59
|
+
export default class IgcComboComponent<T extends object = any> extends IgcComboComponent_base {
|
|
62
60
|
static readonly tagName = "igc-combo";
|
|
63
61
|
static styles: import("lit").CSSResult;
|
|
64
62
|
static register(): void;
|
|
65
63
|
private _value;
|
|
64
|
+
private _activeDescendant;
|
|
66
65
|
private _displayValue;
|
|
67
66
|
private _filteringOptions;
|
|
68
67
|
protected validators: Validator<this>[];
|
|
69
68
|
protected navigationController: NavigationController<T>;
|
|
70
69
|
protected selectionController: SelectionController<T>;
|
|
71
70
|
protected dataController: DataController<T>;
|
|
72
|
-
protected toggleController: IgcToggleController;
|
|
73
71
|
private readonly [themeSymbol];
|
|
74
72
|
protected helperText: Array<HTMLElement>;
|
|
75
73
|
protected inputSuffix: Array<HTMLElement>;
|
|
@@ -188,8 +186,8 @@ export default class IgcComboComponent<T extends object = any> extends IgcComboC
|
|
|
188
186
|
protected updateFilterKey(): void;
|
|
189
187
|
protected pipeline(): Promise<void>;
|
|
190
188
|
protected toggleDirectiveChange(): void;
|
|
189
|
+
private _rootClickController;
|
|
191
190
|
constructor();
|
|
192
|
-
protected getUpdateComplete(): Promise<boolean>;
|
|
193
191
|
protected resetSearchTerm(): void;
|
|
194
192
|
protected resetState(): void;
|
|
195
193
|
protected requiredChange(): Promise<void>;
|
|
@@ -310,6 +308,7 @@ export default class IgcComboComponent<T extends object = any> extends IgcComboC
|
|
|
310
308
|
protected toggleCaseSensitivity(): void;
|
|
311
309
|
protected get hasPrefixes(): boolean;
|
|
312
310
|
protected get hasSuffixes(): boolean;
|
|
311
|
+
private _stopPropagation;
|
|
313
312
|
private renderToggleIcon;
|
|
314
313
|
private renderClearIcon;
|
|
315
314
|
private renderMainInput;
|
|
@@ -8,7 +8,6 @@ import { LitElement, html } from 'lit';
|
|
|
8
8
|
import { property, query, queryAssignedElements, state, } from 'lit/decorators.js';
|
|
9
9
|
import { ifDefined } from 'lit/directives/if-defined.js';
|
|
10
10
|
import { live } from 'lit/directives/live.js';
|
|
11
|
-
import { styleMap } from 'lit/directives/style-map.js';
|
|
12
11
|
import IgcComboHeaderComponent from './combo-header.js';
|
|
13
12
|
import IgcComboItemComponent from './combo-item.js';
|
|
14
13
|
import IgcComboListComponent from './combo-list.js';
|
|
@@ -18,6 +17,7 @@ import { SelectionController } from './controllers/selection.js';
|
|
|
18
17
|
import { styles } from './themes/combo.base.css.js';
|
|
19
18
|
import { all } from './themes/themes.js';
|
|
20
19
|
import { themeSymbol, themes } from '../../theming/theming-decorator.js';
|
|
20
|
+
import { addRootClickHandler } from '../common/controllers/root-click.js';
|
|
21
21
|
import { blazorAdditionalDependencies } from '../common/decorators/blazorAdditionalDependencies.js';
|
|
22
22
|
import { blazorIndirectRender } from '../common/decorators/blazorIndirectRender.js';
|
|
23
23
|
import { watch } from '../common/decorators/watch.js';
|
|
@@ -28,10 +28,10 @@ import { FormAssociatedRequiredMixin } from '../common/mixins/form-associated-re
|
|
|
28
28
|
import { partNameMap } from '../common/util.js';
|
|
29
29
|
import IgcIconComponent from '../icon/icon.js';
|
|
30
30
|
import IgcInputComponent from '../input/input.js';
|
|
31
|
-
import
|
|
31
|
+
import IgcPopoverComponent from '../popover/popover.js';
|
|
32
32
|
let IgcComboComponent = class IgcComboComponent extends FormAssociatedRequiredMixin(EventEmitterMixin(LitElement)) {
|
|
33
33
|
static register() {
|
|
34
|
-
registerComponent(this, IgcIconComponent, IgcComboListComponent, IgcComboItemComponent, IgcComboHeaderComponent, IgcInputComponent);
|
|
34
|
+
registerComponent(this, IgcIconComponent, IgcComboListComponent, IgcComboItemComponent, IgcComboHeaderComponent, IgcInputComponent, IgcPopoverComponent);
|
|
35
35
|
}
|
|
36
36
|
get filteringOptions() {
|
|
37
37
|
return this._filteringOptions;
|
|
@@ -61,10 +61,7 @@ let IgcComboComponent = class IgcComboComponent extends FormAssociatedRequiredMi
|
|
|
61
61
|
this.dataState = await this.dataController.apply([...this.data]);
|
|
62
62
|
}
|
|
63
63
|
toggleDirectiveChange() {
|
|
64
|
-
|
|
65
|
-
return;
|
|
66
|
-
this.toggleController.target = this.target;
|
|
67
|
-
this.target.setAttribute('aria-expanded', this.open ? 'true' : 'false');
|
|
64
|
+
this._rootClickController.update();
|
|
68
65
|
}
|
|
69
66
|
constructor() {
|
|
70
67
|
super();
|
|
@@ -109,6 +106,15 @@ let IgcComboComponent = class IgcComboComponent extends FormAssociatedRequiredMi
|
|
|
109
106
|
this.positionStrategy = 'fixed';
|
|
110
107
|
this.sameWidth = true;
|
|
111
108
|
this.dataState = [];
|
|
109
|
+
this._rootClickController = addRootClickHandler(this, {
|
|
110
|
+
hideCallback: async () => {
|
|
111
|
+
if (!this.handleClosing())
|
|
112
|
+
return;
|
|
113
|
+
this.open = false;
|
|
114
|
+
await this.updateComplete;
|
|
115
|
+
this.emitEvent('igcClosed');
|
|
116
|
+
},
|
|
117
|
+
});
|
|
112
118
|
this.itemRenderer = (item, index) => {
|
|
113
119
|
const record = item;
|
|
114
120
|
const dataItem = this.data.at(record.dataIndex);
|
|
@@ -117,17 +123,22 @@ let IgcComboComponent = class IgcComboComponent extends FormAssociatedRequiredMi
|
|
|
117
123
|
const headerTemplate = html `<igc-combo-header part="group-header"
|
|
118
124
|
>${this.groupHeaderTemplate({ item: record.value })}</igc-combo-header
|
|
119
125
|
>`;
|
|
120
|
-
const
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
126
|
+
const itemPosition = index + 1;
|
|
127
|
+
const itemId = this.id
|
|
128
|
+
? `${this.id}-item-${itemPosition}`
|
|
129
|
+
: `item-${itemPosition}`;
|
|
130
|
+
if (active) {
|
|
131
|
+
this._activeDescendant = itemId;
|
|
132
|
+
}
|
|
125
133
|
const itemTemplate = html `<igc-combo-item
|
|
126
|
-
|
|
134
|
+
id=${itemId}
|
|
135
|
+
part=${partNameMap({ item: true, selected, active })}
|
|
136
|
+
aria-setsize=${this.dataState.length}
|
|
137
|
+
aria-posinset=${itemPosition}
|
|
127
138
|
exportparts="checkbox, checkbox-indicator, checked"
|
|
128
139
|
@click=${this.itemClickHandler.bind(this)}
|
|
129
140
|
.index=${index}
|
|
130
|
-
|
|
141
|
+
?active=${active}
|
|
131
142
|
?selected=${selected}
|
|
132
143
|
?hide-checkbox=${this.singleSelect}
|
|
133
144
|
>${this.itemTemplate({ item: record.value })}</igc-combo-item
|
|
@@ -136,16 +147,6 @@ let IgcComboComponent = class IgcComboComponent extends FormAssociatedRequiredMi
|
|
|
136
147
|
? headerTemplate
|
|
137
148
|
: itemTemplate}`;
|
|
138
149
|
};
|
|
139
|
-
this.toggleController = new IgcToggleController(this, {
|
|
140
|
-
target: this.target,
|
|
141
|
-
closeCallback: async () => {
|
|
142
|
-
if (!this.handleClosing())
|
|
143
|
-
return;
|
|
144
|
-
this.open = false;
|
|
145
|
-
await this.updateComplete;
|
|
146
|
-
this.emitEvent('igcClosed');
|
|
147
|
-
},
|
|
148
|
-
});
|
|
149
150
|
this.addEventListener('focus', () => {
|
|
150
151
|
this.emitEvent('igcFocus');
|
|
151
152
|
});
|
|
@@ -160,11 +161,6 @@ let IgcComboComponent = class IgcComboComponent extends FormAssociatedRequiredMi
|
|
|
160
161
|
});
|
|
161
162
|
this.addEventListener('keydown', this.navigationController.navigateHost.bind(this.navigationController));
|
|
162
163
|
}
|
|
163
|
-
async getUpdateComplete() {
|
|
164
|
-
const result = await super.getUpdateComplete();
|
|
165
|
-
await this.toggleController.rendered;
|
|
166
|
-
return result;
|
|
167
|
-
}
|
|
168
164
|
resetSearchTerm() {
|
|
169
165
|
this.dataController.searchTerm = '';
|
|
170
166
|
}
|
|
@@ -380,6 +376,9 @@ let IgcComboComponent = class IgcComboComponent extends FormAssociatedRequiredMi
|
|
|
380
376
|
get hasSuffixes() {
|
|
381
377
|
return this.inputSuffix.length > 0;
|
|
382
378
|
}
|
|
379
|
+
_stopPropagation(e) {
|
|
380
|
+
e.stopPropagation();
|
|
381
|
+
}
|
|
383
382
|
renderToggleIcon() {
|
|
384
383
|
const openIcon = this[themeSymbol] === 'material' ? 'keyboard_arrow_up' : 'arrow_drop_up';
|
|
385
384
|
const closeIcon = this[themeSymbol] === 'material'
|
|
@@ -424,8 +423,11 @@ let IgcComboComponent = class IgcComboComponent extends FormAssociatedRequiredMi
|
|
|
424
423
|
renderMainInput() {
|
|
425
424
|
return html `<igc-input
|
|
426
425
|
id="target"
|
|
426
|
+
slot="anchor"
|
|
427
427
|
role="combobox"
|
|
428
428
|
aria-controls="dropdown"
|
|
429
|
+
aria-owns="dropdown"
|
|
430
|
+
aria-expanded=${this.open ? 'true' : 'false'}
|
|
429
431
|
aria-describedby="helper-text"
|
|
430
432
|
aria-disabled=${this.disabled}
|
|
431
433
|
exportparts="container: input, input: native-input, label, prefix, suffix"
|
|
@@ -435,14 +437,14 @@ let IgcComboComponent = class IgcComboComponent extends FormAssociatedRequiredMi
|
|
|
435
437
|
}}
|
|
436
438
|
placeholder=${ifDefined(this.placeholder)}
|
|
437
439
|
label=${ifDefined(this.label)}
|
|
438
|
-
@igcChange=${
|
|
440
|
+
@igcChange=${this._stopPropagation}
|
|
439
441
|
@igcFocus=${(e) => {
|
|
440
442
|
e.stopPropagation();
|
|
441
443
|
requestAnimationFrame(() => {
|
|
442
444
|
this.target.select();
|
|
443
445
|
});
|
|
444
446
|
}}
|
|
445
|
-
@igcBlur=${
|
|
447
|
+
@igcBlur=${this._stopPropagation}
|
|
446
448
|
@igcInput=${this.handleMainInput}
|
|
447
449
|
@keydown=${this.handleMainInputKeydown}
|
|
448
450
|
.value=${this._displayValue}
|
|
@@ -472,8 +474,8 @@ let IgcComboComponent = class IgcComboComponent extends FormAssociatedRequiredMi
|
|
|
472
474
|
part="search-input"
|
|
473
475
|
placeholder=${this.placeholderSearch}
|
|
474
476
|
exportparts="input: search-input"
|
|
475
|
-
@igcFocus=${
|
|
476
|
-
@igcBlur=${
|
|
477
|
+
@igcFocus=${this._stopPropagation}
|
|
478
|
+
@igcBlur=${this._stopPropagation}
|
|
477
479
|
@igcInput=${this.handleSearchInput}
|
|
478
480
|
@keydown=${this.handleSearchInputKeydown}
|
|
479
481
|
>
|
|
@@ -496,23 +498,27 @@ let IgcComboComponent = class IgcComboComponent extends FormAssociatedRequiredMi
|
|
|
496
498
|
</div>`;
|
|
497
499
|
}
|
|
498
500
|
renderList() {
|
|
501
|
+
const hasItems = this.dataState.length > 0;
|
|
499
502
|
return html `<div
|
|
503
|
+
.inert=${!this.open}
|
|
500
504
|
@keydown=${this.listKeydownHandler}
|
|
501
505
|
part="list-wrapper"
|
|
502
|
-
style=${styleMap({ position: this.positionStrategy })}
|
|
503
|
-
${this.toggleController.toggleDirective}
|
|
504
506
|
>
|
|
505
507
|
${this.renderSearchInput()}
|
|
506
508
|
<div part="header">
|
|
507
509
|
<slot name="header"></slot>
|
|
508
510
|
</div>
|
|
509
511
|
<igc-combo-list
|
|
512
|
+
aria-multiselectable=${!this.singleSelect}
|
|
510
513
|
id="dropdown"
|
|
511
514
|
part="list"
|
|
512
|
-
|
|
515
|
+
role="listbox"
|
|
516
|
+
tabindex="0"
|
|
517
|
+
aria-labelledby="target"
|
|
518
|
+
aria-activedescendant=${ifDefined(this._activeDescendant)}
|
|
513
519
|
.items=${this.dataState}
|
|
514
520
|
.renderItem=${this.itemRenderer}
|
|
515
|
-
?hidden=${
|
|
521
|
+
?hidden=${!hasItems}
|
|
516
522
|
>
|
|
517
523
|
</igc-combo-list>
|
|
518
524
|
${this.renderEmptyTemplate()}
|
|
@@ -532,12 +538,18 @@ let IgcComboComponent = class IgcComboComponent extends FormAssociatedRequiredMi
|
|
|
532
538
|
}
|
|
533
539
|
render() {
|
|
534
540
|
return html `
|
|
535
|
-
|
|
541
|
+
<igc-popover ?open=${this.open} flip shift same-width strategy="fixed">
|
|
542
|
+
${this.renderMainInput()} ${this.renderList()}
|
|
543
|
+
</igc-popover>
|
|
544
|
+
${this.renderHelperText()}
|
|
536
545
|
`;
|
|
537
546
|
}
|
|
538
547
|
};
|
|
539
548
|
IgcComboComponent.tagName = 'igc-combo';
|
|
540
549
|
IgcComboComponent.styles = styles;
|
|
550
|
+
__decorate([
|
|
551
|
+
state()
|
|
552
|
+
], IgcComboComponent.prototype, "_activeDescendant", void 0);
|
|
541
553
|
__decorate([
|
|
542
554
|
state()
|
|
543
555
|
], IgcComboComponent.prototype, "_displayValue", void 0);
|
|
@@ -650,7 +662,7 @@ __decorate([
|
|
|
650
662
|
], IgcComboComponent.prototype, "value", null);
|
|
651
663
|
IgcComboComponent = __decorate([
|
|
652
664
|
themes(all),
|
|
653
|
-
blazorAdditionalDependencies('IgcIconComponent, IgcInputComponent'),
|
|
665
|
+
blazorAdditionalDependencies('IgcIconComponent, IgcInputComponent, IgcPopoverComponent'),
|
|
654
666
|
blazorIndirectRender
|
|
655
667
|
], IgcComboComponent);
|
|
656
668
|
export default IgcComboComponent;
|