igniteui-webcomponents 3.3.0 → 3.4.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 +24 -0
- package/README.md +7 -2
- package/components/accordion/accordion.js +3 -1
- package/components/accordion/accordion.js.map +1 -1
- package/components/button/button-base.js +7 -2
- package/components/button/button-base.js.map +1 -1
- package/components/button/themes/button/light/button.base.css.js +1 -1
- package/components/button/themes/button/light/button.base.css.js.map +1 -1
- package/components/button/themes/button/light/button.material.css.js +1 -1
- package/components/button/themes/button/light/button.material.css.js.map +1 -1
- package/components/calendar/common/calendar-base.js +3 -1
- package/components/calendar/common/calendar-base.js.map +1 -1
- package/components/calendar/days-view/days-view.d.ts +2 -0
- package/components/calendar/days-view/days-view.js +17 -5
- package/components/calendar/days-view/days-view.js.map +1 -1
- package/components/checkbox/checkbox-base.js +7 -2
- package/components/checkbox/checkbox-base.js.map +1 -1
- package/components/chip/chip.d.ts +1 -0
- package/components/chip/chip.js +9 -0
- package/components/chip/chip.js.map +1 -1
- package/components/common/decorators/blazorDeepImport.d.ts +4 -0
- package/components/common/decorators/blazorDeepImport.js +2 -0
- package/components/common/decorators/blazorDeepImport.js.map +1 -0
- package/components/common/util.d.ts +1 -0
- package/components/common/util.js +3 -0
- package/components/common/util.js.map +1 -1
- package/components/dialog/dialog.d.ts +69 -0
- package/components/dialog/dialog.js +168 -0
- package/components/dialog/dialog.js.map +1 -0
- package/components/dialog/themes/light/dialog.base.css.d.ts +1 -0
- package/components/dialog/themes/light/dialog.base.css.js +3 -0
- package/components/dialog/themes/light/dialog.base.css.js.map +1 -0
- package/components/dialog/themes/light/dialog.bootstrap.css.d.ts +1 -0
- package/components/dialog/themes/light/dialog.bootstrap.css.js +3 -0
- package/components/dialog/themes/light/dialog.bootstrap.css.js.map +1 -0
- package/components/dialog/themes/light/dialog.fluent.css.d.ts +1 -0
- package/components/dialog/themes/light/dialog.fluent.css.js +3 -0
- package/components/dialog/themes/light/dialog.fluent.css.js.map +1 -0
- package/components/dialog/themes/light/dialog.indigo.css.d.ts +1 -0
- package/components/dialog/themes/light/dialog.indigo.css.js +3 -0
- package/components/dialog/themes/light/dialog.indigo.css.js.map +1 -0
- package/components/dialog/themes/light/dialog.material.css.d.ts +1 -0
- package/components/dialog/themes/light/dialog.material.css.js +3 -0
- package/components/dialog/themes/light/dialog.material.css.js.map +1 -0
- package/components/dropdown/dropdown-group.d.ts +2 -2
- package/components/dropdown/dropdown-group.js +1 -1
- package/components/dropdown/dropdown-group.js.map +1 -1
- package/components/dropdown/dropdown-header.d.ts +1 -1
- package/components/dropdown/dropdown-header.js.map +1 -1
- package/components/dropdown/dropdown-item.d.ts +1 -1
- package/components/dropdown/dropdown-item.js.map +1 -1
- package/components/dropdown/dropdown.d.ts +10 -8
- package/components/dropdown/dropdown.js +15 -10
- package/components/dropdown/dropdown.js.map +1 -1
- package/components/dropdown/themes/light/dropdown-group.base.css.js +1 -1
- package/components/dropdown/themes/light/dropdown-group.base.css.js.map +1 -1
- package/components/dropdown/themes/light/dropdown-group.fluent.css.js +1 -1
- package/components/dropdown/themes/light/dropdown-group.fluent.css.js.map +1 -1
- package/components/dropdown/themes/light/dropdown-item.base.css.js +1 -1
- package/components/dropdown/themes/light/dropdown-item.base.css.js.map +1 -1
- package/components/dropdown/themes/light/dropdown.base.css.js +1 -1
- package/components/dropdown/themes/light/dropdown.base.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/form/form.js +4 -3
- package/components/form/form.js.map +1 -1
- package/components/icon/icon.js +3 -1
- package/components/icon/icon.js.map +1 -1
- package/components/input/input-base.js +3 -1
- package/components/input/input-base.js.map +1 -1
- package/components/input/input.d.ts +1 -0
- package/components/input/input.js +5 -0
- package/components/input/input.js.map +1 -1
- package/components/input/themes/light/input.base.css.js +1 -1
- package/components/input/themes/light/input.base.css.js.map +1 -1
- package/components/input/themes/light/input.bootstrap.css.js +1 -1
- package/components/input/themes/light/input.bootstrap.css.js.map +1 -1
- package/components/input/themes/light/input.fluent.css.js +1 -1
- package/components/input/themes/light/input.fluent.css.js.map +1 -1
- package/components/input/themes/light/input.indigo.css.js +1 -1
- package/components/input/themes/light/input.indigo.css.js.map +1 -1
- package/components/mask-input/mask-input-base.js +7 -2
- package/components/mask-input/mask-input-base.js.map +1 -1
- package/components/progress/linear-progress.js +1 -0
- package/components/progress/linear-progress.js.map +1 -1
- package/components/progress/themes/circular/circular.progress.base.css.js +1 -1
- package/components/progress/themes/circular/circular.progress.base.css.js.map +1 -1
- package/components/progress/themes/linear/linear.progress.base.css.js +1 -1
- package/components/progress/themes/linear/linear.progress.base.css.js.map +1 -1
- package/components/progress/themes/linear/linear.progress.bootstrap.css.js +1 -1
- package/components/progress/themes/linear/linear.progress.bootstrap.css.js.map +1 -1
- package/components/progress/themes/linear/linear.progress.fluent.css.js +1 -1
- package/components/progress/themes/linear/linear.progress.fluent.css.js.map +1 -1
- package/components/progress/themes/linear/linear.progress.indigo.css.js +1 -1
- package/components/progress/themes/linear/linear.progress.indigo.css.js.map +1 -1
- package/components/radio-group/radio-group.d.ts +0 -1
- package/components/radio-group/radio-group.js +7 -6
- package/components/radio-group/radio-group.js.map +1 -1
- package/components/rating/rating.d.ts +21 -9
- package/components/rating/rating.js +50 -33
- package/components/rating/rating.js.map +1 -1
- package/components/select/select-group.d.ts +31 -0
- package/components/select/select-group.js +69 -0
- package/components/select/select-group.js.map +1 -0
- package/components/select/select-header.d.ts +15 -0
- package/components/select/select-header.js +5 -0
- package/components/select/select-header.js.map +1 -0
- package/components/select/select-item.d.ts +30 -0
- package/components/select/select-item.js +39 -0
- package/components/select/select-item.js.map +1 -0
- package/components/select/select.d.ts +112 -0
- package/components/select/select.js +343 -0
- package/components/select/select.js.map +1 -0
- package/components/select/themes/dark/select.bootstrap.css.d.ts +1 -0
- package/components/select/themes/dark/select.bootstrap.css.js +3 -0
- package/components/select/themes/dark/select.bootstrap.css.js.map +1 -0
- package/components/select/themes/dark/select.fluent.css.d.ts +1 -0
- package/components/select/themes/dark/select.fluent.css.js +3 -0
- package/components/select/themes/dark/select.fluent.css.js.map +1 -0
- package/components/select/themes/dark/select.indigo.css.d.ts +1 -0
- package/components/select/themes/dark/select.indigo.css.js +3 -0
- package/components/select/themes/dark/select.indigo.css.js.map +1 -0
- package/components/select/themes/dark/select.material.css.d.ts +1 -0
- package/components/select/themes/dark/select.material.css.js +3 -0
- package/components/select/themes/dark/select.material.css.js.map +1 -0
- package/components/select/themes/light/select.base.css.d.ts +1 -0
- package/components/select/themes/light/select.base.css.js +3 -0
- package/components/select/themes/light/select.base.css.js.map +1 -0
- package/components/select/themes/light/select.bootstrap.css.d.ts +1 -0
- package/components/select/themes/light/select.bootstrap.css.js +3 -0
- package/components/select/themes/light/select.bootstrap.css.js.map +1 -0
- package/components/select/themes/light/select.fluent.css.d.ts +1 -0
- package/components/select/themes/light/select.fluent.css.js +3 -0
- package/components/select/themes/light/select.fluent.css.js.map +1 -0
- package/components/select/themes/light/select.indigo.css.d.ts +1 -0
- package/components/select/themes/light/select.indigo.css.js +3 -0
- package/components/select/themes/light/select.indigo.css.js.map +1 -0
- package/components/select/themes/light/select.material.css.d.ts +1 -0
- package/components/select/themes/light/select.material.css.js +3 -0
- package/components/select/themes/light/select.material.css.js.map +1 -0
- package/components/slider/range-slider.d.ts +2 -0
- package/components/slider/range-slider.js +61 -0
- package/components/slider/range-slider.js.map +1 -1
- package/components/slider/slider-base.d.ts +7 -8
- package/components/slider/slider-base.js +8 -8
- package/components/slider/slider-base.js.map +1 -1
- package/components/tabs/tabs.d.ts +0 -1
- package/components/tabs/tabs.js +7 -9
- package/components/tabs/tabs.js.map +1 -1
- package/components/toast/toast.d.ts +1 -0
- package/components/toast/toast.js +9 -0
- package/components/toast/toast.js.map +1 -1
- package/components/toggle/toggle.controller.d.ts +7 -2
- package/components/toggle/toggle.controller.js +21 -20
- package/components/toggle/toggle.controller.js.map +1 -1
- package/components/tree/themes/light/tree.base.css.js +1 -1
- package/components/tree/themes/light/tree.base.css.js.map +1 -1
- package/custom-elements.json +613 -14
- package/index.d.ts +5 -0
- package/index.js +5 -0
- package/index.js.map +1 -1
- package/package.json +3 -3
- package/themes/dark/bootstrap.css +1 -1
- package/themes/dark/fluent.css +1 -1
- package/themes/dark/indigo.css +1 -1
- package/themes/dark/material.css +1 -1
- package/vscode-html-custom-data.json +282 -14
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dialog.base.css.js","sourceRoot":"","sources":["../../../../../src/components/dialog/themes/light/dialog.base.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,2pFAA2pF,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`:host{position:relative;-webkit-box-sizing:border-box;box-sizing:border-box;scrollbar-width:var(--scrolbar-size, 0.875rem);scrollbar-color:var(--igc-scrollbar-thumb-color, hsla(var(--igc-gray-400), var(--igc-gray-a))) var(--igc-scrollbar-track-color, hsla(var(--igc-gray-200), var(--igc-gray-a)))}:host *,:host *::before,:host *::after{-webkit-box-sizing:border-box;box-sizing:border-box}:host ::-webkit-scrollbar{width:var(--scrolbar-size, 0.875rem);height:var(--scrolbar-size, 0.875rem);background:var(--igc-scrollbar-track-color, hsla(var(--igc-gray-200), var(--igc-gray-a)))}:host ::-webkit-scrollbar-thumb{background:var(--igc-scrollbar-thumb-color, hsla(var(--igc-gray-400), var(--igc-gray-a)))}[hidden]{display:none !important}:host{border-radius:clamp(0rem,var(--igc-radius-factor)*2px,2px);background:hsla(var(--igc-surface-500), var(--igc-surface-a));color:var(--igc-surface-500-contrast);border-style:none;padding:unset}[part=base]{background:inherit;color:inherit;border-style:inherit;padding:inherit;border:inherit;border-radius:inherit;min-width:inherit;-webkit-box-shadow:var(--igc-elevation-24);box-shadow:var(--igc-elevation-24)}[part=content]{max-width:40ch;color:var(--content-color, hsla(var(--igc-gray-700), var(--igc-gray-a)));font-family:var(--igc-body-1-font-family);font-weight:var(--igc-body-1-font-weight);font-size:var(--igc-body-1-font-size);font-style:var(--igc-body-1-font-style);letter-spacing:var(--igc-body-1-letter-spacing);text-transform:var(--igc-body-1-text-transform);line-height:var(--igc-body-1-line-height);margin-top:var(--igc-body-1-margin-top);margin-bottom:var(--igc-body-1-margin-bottom);margin:0}[part=title],[part=footer]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;color:hsla(var(--igc-gray-900), var(--igc-gray-a));font-family:var(--igc-h6-font-family);font-weight:var(--igc-h6-font-weight);font-size:var(--igc-h6-font-size);font-style:var(--igc-h6-font-style);letter-spacing:var(--igc-h6-letter-spacing);text-transform:var(--igc-h6-text-transform);line-height:var(--igc-h6-line-height);margin-top:var(--igc-h6-margin-top);margin-bottom:var(--igc-h6-margin-bottom);margin:0}[part=footer]{-ms-flex-wrap:nowrap;flex-wrap:nowrap;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}::slotted(*){font:inherit;letter-spacing:inherit;line-height:inherit;text-transform:inherit;margin:0}slot[name=title]::slotted(:not(:last-child)),slot[name=footer]::slotted(:not(:last-child)){-webkit-margin-end:.5rem;margin-inline-end:.5rem}dialog::-webkit-backdrop{background:none}dialog::backdrop{background:none}[part=backdrop]{position:fixed;inset:0;background:hsla(var(--igc-gray-500), 0.54)}`;\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const styles: import("lit").CSSResult;
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import { css } from 'lit';
|
|
2
|
+
export const styles = css `:host{border-radius:clamp(0rem,var(--igc-radius-factor)*4px,4px)}[part=base]{min-width:18rem;border:1px solid var(--border-color, hsla(var(--igc-gray-300), var(--igc-gray-a)));-webkit-box-shadow:none;box-shadow:none}[part=title],[part=footer]{font-family:var(--igc-h5-font-family);font-weight:var(--igc-h5-font-weight);font-size:var(--igc-h5-font-size);font-style:var(--igc-h5-font-style);letter-spacing:var(--igc-h5-letter-spacing);text-transform:var(--igc-h5-text-transform);line-height:var(--igc-h5-line-height);margin-top:var(--igc-h5-margin-top);margin-bottom:var(--igc-h5-margin-bottom);margin:0;padding:1rem}[part=content]{padding:1rem}[part=title]{-webkit-border-after:1px solid var(--border-color, hsla(var(--igc-gray-300), var(--igc-gray-a)));border-block-end:1px solid var(--border-color, hsla(var(--igc-gray-300), var(--igc-gray-a)))}[part=footer]{-webkit-border-before:1px solid var(--border-color, hsla(var(--igc-gray-300), var(--igc-gray-a)));border-block-start:1px solid var(--border-color, hsla(var(--igc-gray-300), var(--igc-gray-a)))}`;
|
|
3
|
+
//# sourceMappingURL=dialog.bootstrap.css.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dialog.bootstrap.css.js","sourceRoot":"","sources":["../../../../../src/components/dialog/themes/light/dialog.bootstrap.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,+hCAA+hC,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`:host{border-radius:clamp(0rem,var(--igc-radius-factor)*4px,4px)}[part=base]{min-width:18rem;border:1px solid var(--border-color, hsla(var(--igc-gray-300), var(--igc-gray-a)));-webkit-box-shadow:none;box-shadow:none}[part=title],[part=footer]{font-family:var(--igc-h5-font-family);font-weight:var(--igc-h5-font-weight);font-size:var(--igc-h5-font-size);font-style:var(--igc-h5-font-style);letter-spacing:var(--igc-h5-letter-spacing);text-transform:var(--igc-h5-text-transform);line-height:var(--igc-h5-line-height);margin-top:var(--igc-h5-margin-top);margin-bottom:var(--igc-h5-margin-bottom);margin:0;padding:1rem}[part=content]{padding:1rem}[part=title]{-webkit-border-after:1px solid var(--border-color, hsla(var(--igc-gray-300), var(--igc-gray-a)));border-block-end:1px solid var(--border-color, hsla(var(--igc-gray-300), var(--igc-gray-a)))}[part=footer]{-webkit-border-before:1px solid var(--border-color, hsla(var(--igc-gray-300), var(--igc-gray-a)));border-block-start:1px solid var(--border-color, hsla(var(--igc-gray-300), var(--igc-gray-a)))}`;\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const styles: import("lit").CSSResult;
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import { css } from 'lit';
|
|
2
|
+
export const styles = css `[part=title]{padding:1.5rem;-webkit-padding-before:1rem;padding-block-start:1rem}[part=content]{padding-inline:1.5rem;-webkit-padding-after:1.25rem;padding-block-end:1.25rem}[part=footer]{padding:1.5rem;-webkit-padding-before:0;padding-block-start:0}[part=backdrop]{background:rgba(255,255,255,.4)}`;
|
|
3
|
+
//# sourceMappingURL=dialog.fluent.css.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dialog.fluent.css.js","sourceRoot":"","sources":["../../../../../src/components/dialog/themes/light/dialog.fluent.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,4SAA4S,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`[part=title]{padding:1.5rem;-webkit-padding-before:1rem;padding-block-start:1rem}[part=content]{padding-inline:1.5rem;-webkit-padding-after:1.25rem;padding-block-end:1.25rem}[part=footer]{padding:1.5rem;-webkit-padding-before:0;padding-block-start:0}[part=backdrop]{background:rgba(255,255,255,.4)}`;\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const styles: import("lit").CSSResult;
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import { css } from 'lit';
|
|
2
|
+
export const styles = css `[part=title]{padding:1rem 1.5rem}[part=content]{padding-inline:1.5rem;-webkit-padding-after:.5rem;padding-block-end:.5rem;color:hsla(var(--igc-gray-500), var(--igc-gray-a))}[part=footer]{padding:.5rem}`;
|
|
3
|
+
//# sourceMappingURL=dialog.indigo.css.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dialog.indigo.css.js","sourceRoot":"","sources":["../../../../../src/components/dialog/themes/light/dialog.indigo.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,2MAA2M,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`[part=title]{padding:1rem 1.5rem}[part=content]{padding-inline:1.5rem;-webkit-padding-after:.5rem;padding-block-end:.5rem;color:hsla(var(--igc-gray-500), var(--igc-gray-a))}[part=footer]{padding:.5rem}`;\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const styles: import("lit").CSSResult;
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import { css } from 'lit';
|
|
2
|
+
export const styles = css `[part=title]{padding-inline:1.5rem;-webkit-padding-before:1rem;padding-block-start:1rem}[part=content]{padding:.875rem 1.5rem}[part=footer]{padding:.5rem;-webkit-padding-before:0;padding-block-start:0}`;
|
|
3
|
+
//# sourceMappingURL=dialog.material.css.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dialog.material.css.js","sourceRoot":"","sources":["../../../../../src/components/dialog/themes/light/dialog.material.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,2MAA2M,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`[part=title]{padding-inline:1.5rem;-webkit-padding-before:1rem;padding-block-start:1rem}[part=content]{padding:.875rem 1.5rem}[part=footer]{padding:.5rem;-webkit-padding-before:0;padding-block-start:0}`;\n"]}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { LitElement } from 'lit';
|
|
2
|
-
import type IgcDropdownItemComponent from './dropdown-item';
|
|
3
2
|
import { SizableInterface } from '../common/mixins/sizable.js';
|
|
3
|
+
import type IgcDropdownItemComponent from './dropdown-item';
|
|
4
4
|
/**
|
|
5
5
|
* @element igc-dropdown-group - A container for a group of `igc-dropdown-item` components.
|
|
6
6
|
*
|
|
@@ -10,7 +10,7 @@ import { SizableInterface } from '../common/mixins/sizable.js';
|
|
|
10
10
|
* @csspart label - The native label element.
|
|
11
11
|
*/
|
|
12
12
|
export default class IgcDropdownGroupComponent extends LitElement {
|
|
13
|
-
static readonly tagName
|
|
13
|
+
static readonly tagName: string;
|
|
14
14
|
static styles: import("lit").CSSResult;
|
|
15
15
|
protected parent: SizableInterface;
|
|
16
16
|
/** All child `igc-dropdown-item`s. */
|
|
@@ -7,9 +7,9 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
7
7
|
import { html, LitElement } from 'lit';
|
|
8
8
|
import { queryAssignedElements } from 'lit/decorators.js';
|
|
9
9
|
import { themes } from '../../theming/theming-decorator.js';
|
|
10
|
+
import { blazorSuppress } from '../common/decorators/blazorSuppress.js';
|
|
10
11
|
import { styles } from './themes/light/dropdown-group.base.css.js';
|
|
11
12
|
import { styles as fluent } from './themes/light/dropdown-group.fluent.css.js';
|
|
12
|
-
import { blazorSuppress } from '../common/decorators/blazorSuppress.js';
|
|
13
13
|
let IgcDropdownGroupComponent = class IgcDropdownGroupComponent extends LitElement {
|
|
14
14
|
connectedCallback() {
|
|
15
15
|
super.connectedCallback();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dropdown-group.js","sourceRoot":"","sources":["../../../src/components/dropdown/dropdown-group.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,KAAK,CAAC;AACvC,OAAO,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAC1D,OAAO,EAAE,MAAM,EAAE,MAAM,oCAAoC,CAAC;AAC5D,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"dropdown-group.js","sourceRoot":"","sources":["../../../src/components/dropdown/dropdown-group.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,KAAK,CAAC;AACvC,OAAO,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAC1D,OAAO,EAAE,MAAM,EAAE,MAAM,oCAAoC,CAAC;AAC5D,OAAO,EAAE,cAAc,EAAE,MAAM,wCAAwC,CAAC;AAGxE,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AACnE,OAAO,EAAE,MAAM,IAAI,MAAM,EAAE,MAAM,6CAA6C,CAAC;AAW/E,IAAqB,yBAAyB,GAA9C,MAAqB,yBAA0B,SAAQ,UAAU;IAW/C,iBAAiB;QAC/B,KAAK,CAAC,iBAAiB,EAAE,CAAC;QAE1B,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACnC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;IACjC,CAAC;IAES,SAAS;QACjB,OAAO,IAAI,CAAC,OAAO,CAAC,cAAc,CAAE,CAAC;IACvC,CAAC;IAEkB,MAAM;;QACvB,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,MAAA,MAAA,IAAI,CAAC,MAAM,0CAAE,IAAI,mCAAI,OAAO,CAAC,CAAC;QAExD,OAAO,IAAI,CAAA;;;KAGV,CAAC;IACJ,CAAC;CACF,CAAA;AA7BwB,iCAAO,GAAW,oBAAqB,CAAA;AAEvC,gCAAM,GAAG,MAAO,CAAA;AAMvC;IAFC,cAAc,EAAE;IAChB,qBAAqB,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,mBAAmB,EAAE,CAAC;wDACzB;AAT5B,yBAAyB;IAD7C,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;GACE,yBAAyB,CA8B7C;eA9BoB,yBAAyB","sourcesContent":["import { html, LitElement } from 'lit';\nimport { queryAssignedElements } from 'lit/decorators.js';\nimport { themes } from '../../theming/theming-decorator.js';\nimport { blazorSuppress } from '../common/decorators/blazorSuppress.js';\nimport { SizableInterface } from '../common/mixins/sizable.js';\nimport type IgcDropdownItemComponent from './dropdown-item';\nimport { styles } from './themes/light/dropdown-group.base.css.js';\nimport { styles as fluent } from './themes/light/dropdown-group.fluent.css.js';\n\n/**\n * @element igc-dropdown-group - A container for a group of `igc-dropdown-item` components.\n *\n * @slot label - Contains the group's label.\n * @slot - Intended to contain the items belonging to this group.\n *\n * @csspart label - The native label element.\n */\n@themes({ fluent })\nexport default class IgcDropdownGroupComponent extends LitElement {\n public static readonly tagName: string = 'igc-dropdown-group';\n\n public static override styles = styles;\n protected parent!: SizableInterface;\n\n /** All child `igc-dropdown-item`s. */\n @blazorSuppress()\n @queryAssignedElements({ flatten: true, selector: 'igc-dropdown-item' })\n public items!: Array<IgcDropdownItemComponent>;\n\n public override connectedCallback() {\n super.connectedCallback();\n\n this.setAttribute('role', 'group');\n this.parent = this.getParent();\n }\n\n protected getParent() {\n return this.closest('igc-dropdown')!;\n }\n\n protected override render() {\n this.setAttribute('size', this.parent?.size ?? 'large');\n\n return html`\n <label part=\"label\"><slot name=\"label\"></slot></label>\n <slot></slot>\n `;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'igc-dropdown-group': IgcDropdownGroupComponent;\n }\n}\n"]}
|
|
@@ -5,7 +5,7 @@ import { LitElement } from 'lit';
|
|
|
5
5
|
* @slot - Renders the header.
|
|
6
6
|
*/
|
|
7
7
|
export default class IgcDropdownHeaderComponent extends LitElement {
|
|
8
|
-
static readonly tagName
|
|
8
|
+
static readonly tagName: string;
|
|
9
9
|
static styles: import("lit").CSSResult;
|
|
10
10
|
protected render(): import("lit-html").TemplateResult<1>;
|
|
11
11
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dropdown-header.js","sourceRoot":"","sources":["../../../src/components/dropdown/dropdown-header.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,KAAK,CAAC;AACvC,OAAO,EAAE,MAAM,EAAE,MAAM,oCAAoC,CAAC;AAC5D,OAAO,EAAE,MAAM,EAAE,MAAM,4CAA4C,CAAC;AACpE,OAAO,EAAE,MAAM,IAAI,SAAS,EAAE,MAAM,iDAAiD,CAAC;AAQtF,IAAqB,0BAA0B,GAA/C,MAAqB,0BAA2B,SAAQ,UAAU;IAK7C,MAAM;QACvB,OAAO,IAAI,CAAA,eAAe,CAAC;IAC7B,CAAC;CACF,CAAA;AAPwB,kCAAO,
|
|
1
|
+
{"version":3,"file":"dropdown-header.js","sourceRoot":"","sources":["../../../src/components/dropdown/dropdown-header.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,KAAK,CAAC;AACvC,OAAO,EAAE,MAAM,EAAE,MAAM,oCAAoC,CAAC;AAC5D,OAAO,EAAE,MAAM,EAAE,MAAM,4CAA4C,CAAC;AACpE,OAAO,EAAE,MAAM,IAAI,SAAS,EAAE,MAAM,iDAAiD,CAAC;AAQtF,IAAqB,0BAA0B,GAA/C,MAAqB,0BAA2B,SAAQ,UAAU;IAK7C,MAAM;QACvB,OAAO,IAAI,CAAA,eAAe,CAAC;IAC7B,CAAC;CACF,CAAA;AAPwB,kCAAO,GAAW,qBAAsB,CAAA;AAExC,iCAAM,GAAG,MAAO,CAAA;AAHpB,0BAA0B;IAD9C,MAAM,CAAC,EAAE,SAAS,EAAE,CAAC;GACD,0BAA0B,CAQ9C;eARoB,0BAA0B","sourcesContent":["import { html, LitElement } from 'lit';\nimport { themes } from '../../theming/theming-decorator.js';\nimport { styles } from './themes/light/dropdown-header.base.css.js';\nimport { styles as bootstrap } from './themes/light/dropdown-header.bootstrap.css.js';\n\n/**\n * @element igc-dropdown-header - Represents a header item in a dropdown list.\n *\n * @slot - Renders the header.\n */\n@themes({ bootstrap })\nexport default class IgcDropdownHeaderComponent extends LitElement {\n public static readonly tagName: string = 'igc-dropdown-header';\n\n public static override styles = styles;\n\n protected override render() {\n return html`<slot></slot>`;\n }\n}\ndeclare global {\n interface HTMLElementTagNameMap {\n 'igc-dropdown-header': IgcDropdownHeaderComponent;\n }\n}\n"]}
|
|
@@ -13,7 +13,7 @@ import { LitElement } from 'lit';
|
|
|
13
13
|
* @csspart suffix - The suffix wrapper.
|
|
14
14
|
*/
|
|
15
15
|
export default class IgcDropdownItemComponent extends LitElement {
|
|
16
|
-
static readonly tagName
|
|
16
|
+
static readonly tagName: string;
|
|
17
17
|
static styles: import("lit").CSSResult;
|
|
18
18
|
private _value;
|
|
19
19
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dropdown-item.js","sourceRoot":"","sources":["../../../src/components/dropdown/dropdown-item.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,KAAK,CAAC;AACvC,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAE,MAAM,EAAE,MAAM,oCAAoC,CAAC;AAC5D,OAAO,EAAE,KAAK,EAAE,MAAM,+BAA+B,CAAC;AACtD,OAAO,EAAE,MAAM,EAAE,MAAM,0CAA0C,CAAC;AAClE,OAAO,EAAE,MAAM,IAAI,SAAS,EAAE,MAAM,+CAA+C,CAAC;AACpF,OAAO,EAAE,MAAM,IAAI,MAAM,EAAE,MAAM,4CAA4C,CAAC;AAC9E,OAAO,EAAE,MAAM,IAAI,MAAM,EAAE,MAAM,4CAA4C,CAAC;AAgB9E,IAAqB,wBAAwB,GAA7C,MAAqB,wBAAyB,SAAQ,UAAU;IAAhE;;QA0BS,aAAQ,GAAG,KAAK,CAAC;QAMjB,WAAM,GAAG,KAAK,CAAC;QAMf,aAAQ,GAAG,KAAK,CAAC;IA6B1B,CAAC;IAvDC,IAAW,KAAK;;QACd,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,MAAA,IAAI,CAAC,WAAW,mCAAI,EAAE,CAAC;IAC5D,CAAC;IAED,IAAW,KAAK,CAAC,KAAa;QAC5B,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC3B,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QACpB,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IACtC,CAAC;IAqBS,cAAc;QACtB,IAAI,CAAC,QAAQ;YACX,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,eAAe,EAAE,MAAM,CAAC;YAC5C,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,eAAe,CAAC,CAAC;QAC1C,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC;IAC9B,CAAC;IAGS,cAAc;QACtB,IAAI,CAAC,QAAQ;YACX,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,eAAe,EAAE,MAAM,CAAC;YAC5C,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,eAAe,CAAC,CAAC;IAC5C,CAAC;IAEe,iBAAiB;QAC/B,KAAK,CAAC,iBAAiB,EAAE,CAAC;QAC1B,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IACtC,CAAC;IAEkB,MAAM;QACvB,OAAO,IAAI,CAAA;;;;KAIV,CAAC;IACJ,CAAC;CACF,CAAA;AAlEwB,gCAAO,
|
|
1
|
+
{"version":3,"file":"dropdown-item.js","sourceRoot":"","sources":["../../../src/components/dropdown/dropdown-item.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,KAAK,CAAC;AACvC,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAE,MAAM,EAAE,MAAM,oCAAoC,CAAC;AAC5D,OAAO,EAAE,KAAK,EAAE,MAAM,+BAA+B,CAAC;AACtD,OAAO,EAAE,MAAM,EAAE,MAAM,0CAA0C,CAAC;AAClE,OAAO,EAAE,MAAM,IAAI,SAAS,EAAE,MAAM,+CAA+C,CAAC;AACpF,OAAO,EAAE,MAAM,IAAI,MAAM,EAAE,MAAM,4CAA4C,CAAC;AAC9E,OAAO,EAAE,MAAM,IAAI,MAAM,EAAE,MAAM,4CAA4C,CAAC;AAgB9E,IAAqB,wBAAwB,GAA7C,MAAqB,wBAAyB,SAAQ,UAAU;IAAhE;;QA0BS,aAAQ,GAAG,KAAK,CAAC;QAMjB,WAAM,GAAG,KAAK,CAAC;QAMf,aAAQ,GAAG,KAAK,CAAC;IA6B1B,CAAC;IAvDC,IAAW,KAAK;;QACd,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,MAAA,IAAI,CAAC,WAAW,mCAAI,EAAE,CAAC;IAC5D,CAAC;IAED,IAAW,KAAK,CAAC,KAAa;QAC5B,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC3B,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QACpB,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IACtC,CAAC;IAqBS,cAAc;QACtB,IAAI,CAAC,QAAQ;YACX,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,eAAe,EAAE,MAAM,CAAC;YAC5C,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,eAAe,CAAC,CAAC;QAC1C,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC;IAC9B,CAAC;IAGS,cAAc;QACtB,IAAI,CAAC,QAAQ;YACX,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,eAAe,EAAE,MAAM,CAAC;YAC5C,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,eAAe,CAAC,CAAC;IAC5C,CAAC;IAEe,iBAAiB;QAC/B,KAAK,CAAC,iBAAiB,EAAE,CAAC;QAC1B,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IACtC,CAAC;IAEkB,MAAM;QACvB,OAAO,IAAI,CAAA;;;;KAIV,CAAC;IACJ,CAAC;CACF,CAAA;AAlEwB,gCAAO,GAAW,mBAAoB,CAAA;AAEtC,+BAAM,GAAG,MAAO,CAAA;AASvC;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;qDAG1B;AAYD;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;0DACnB;AAMxB;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;wDACrB;AAMtB;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;0DACnB;AAGxB;IADC,KAAK,CAAC,UAAU,CAAC;8DAMjB;AAGD;IADC,KAAK,CAAC,UAAU,CAAC;8DAKjB;AArDkB,wBAAwB;IAD5C,MAAM,CAAC,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;GACjB,wBAAwB,CAmE5C;eAnEoB,wBAAwB","sourcesContent":["import { html, LitElement } from 'lit';\nimport { property } from 'lit/decorators.js';\nimport { themes } from '../../theming/theming-decorator.js';\nimport { watch } from '../common/decorators/watch.js';\nimport { styles } from './themes/light/dropdown-item.base.css.js';\nimport { styles as bootstrap } from './themes/light/dropdown-item.bootstrap.css.js';\nimport { styles as fluent } from './themes/light/dropdown-item.fluent.css.js';\nimport { styles as indigo } from './themes/light/dropdown-item.indigo.css.js';\n\n/**\n * Represents an item in a dropdown list.\n *\n * @element igc-dropdown-item\n *\n * @slot prefix - Renders content before the item's main content.\n * @slot - Renders the item's main content.\n * @slot suffix - Renders content after the item's main content.\n *\n * @csspart prefix - The prefix wrapper.\n * @csspart content - The main content wrapper.\n * @csspart suffix - The suffix wrapper.\n */\n@themes({ bootstrap, fluent, indigo })\nexport default class IgcDropdownItemComponent extends LitElement {\n public static readonly tagName: string = 'igc-dropdown-item';\n\n public static override styles = styles;\n\n private _value!: string;\n\n /**\n * Тhe current value of the item.\n * If not specified, the element's text content is used.\n */\n @property({ type: String })\n public get value() {\n return this._value ? this._value : this.textContent ?? '';\n }\n\n public set value(value: string) {\n const oldVal = this._value;\n this._value = value;\n this.requestUpdate('value', oldVal);\n }\n\n /**\n * Determines whether the item is 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 disabled.\n */\n @property({ type: Boolean, reflect: true })\n public disabled = false;\n\n @watch('selected')\n protected selectedChange() {\n this.selected\n ? this.setAttribute('aria-selected', 'true')\n : this.removeAttribute('aria-selected');\n this.active = this.selected;\n }\n\n @watch('disabled')\n protected disabledChange() {\n this.disabled\n ? this.setAttribute('aria-disabled', 'true')\n : this.removeAttribute('aria-disabled');\n }\n\n public override connectedCallback() {\n super.connectedCallback();\n this.setAttribute('role', 'option');\n }\n\n protected override render() {\n return html`\n <section part=\"prefix\"><slot name=\"prefix\"></slot></section>\n <section part=\"content\"><slot></slot></section>\n <section part=\"suffix\"><slot name=\"suffix\"></slot></section>\n `;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'igc-dropdown-item': IgcDropdownItemComponent;\n }\n}\n"]}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { LitElement } from 'lit';
|
|
2
2
|
import { Constructor } from '../common/mixins/constructor.js';
|
|
3
|
+
import { IgcToggleController } from '../toggle/toggle.controller.js';
|
|
3
4
|
import type { IgcPlacement, IgcToggleComponent, IgcToggleEventMap } from '../toggle/types';
|
|
4
5
|
import IgcDropdownGroupComponent from './dropdown-group.js';
|
|
5
6
|
import IgcDropdownItemComponent from './dropdown-item.js';
|
|
@@ -25,12 +26,13 @@ declare const IgcDropdownComponent_base: Constructor<import("../common/mixins/si
|
|
|
25
26
|
* @csspart list - The dropdown list.
|
|
26
27
|
*/
|
|
27
28
|
export default class IgcDropdownComponent extends IgcDropdownComponent_base implements IgcToggleComponent {
|
|
28
|
-
|
|
29
|
+
/** @private */
|
|
30
|
+
static readonly tagName: string;
|
|
29
31
|
static styles: import("lit").CSSResult;
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
32
|
+
protected toggleController: IgcToggleController;
|
|
33
|
+
protected selectedItem: IgcDropdownItemComponent | null;
|
|
34
|
+
protected activeItem: IgcDropdownItemComponent;
|
|
35
|
+
protected target: HTMLElement;
|
|
34
36
|
private readonly keyDownHandlers;
|
|
35
37
|
protected get allItems(): IgcDropdownItemComponent[];
|
|
36
38
|
private targetNodes;
|
|
@@ -89,11 +91,11 @@ export default class IgcDropdownComponent extends IgcDropdownComponent_base impl
|
|
|
89
91
|
protected navigate(direction: -1 | 1, currentIndex?: number): void;
|
|
90
92
|
private navigateItem;
|
|
91
93
|
private scrollToHiddenItem;
|
|
92
|
-
|
|
94
|
+
protected getNearestSiblingFocusableItemIndex(startIndex: number, direction: -1 | 1): number;
|
|
93
95
|
private navigateNext;
|
|
94
96
|
private navigatePrev;
|
|
95
|
-
|
|
96
|
-
|
|
97
|
+
protected onArrowDownKeyDown(): void;
|
|
98
|
+
protected onArrowUpKeyDown(): void;
|
|
97
99
|
private _hide;
|
|
98
100
|
/** Shows the dropdown. */
|
|
99
101
|
show(target?: HTMLElement): void;
|
|
@@ -5,19 +5,19 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
5
5
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
6
|
};
|
|
7
7
|
import { html, LitElement } from 'lit';
|
|
8
|
-
import { property, query, queryAssignedElements } from 'lit/decorators.js';
|
|
8
|
+
import { property, query, queryAssignedElements, state, } from 'lit/decorators.js';
|
|
9
|
+
import { styleMap } from 'lit/directives/style-map.js';
|
|
10
|
+
import { themes } from '../../theming/theming-decorator.js';
|
|
11
|
+
import { blazorAdditionalDependencies } from '../common/decorators/blazorAdditionalDependencies.js';
|
|
12
|
+
import { blazorSuppress } from '../common/decorators/blazorSuppress.js';
|
|
13
|
+
import { watch } from '../common/decorators/watch.js';
|
|
9
14
|
import { EventEmitterMixin } from '../common/mixins/event-emitter.js';
|
|
15
|
+
import { SizableMixin } from '../common/mixins/sizable.js';
|
|
16
|
+
import { IgcToggleController } from '../toggle/toggle.controller.js';
|
|
10
17
|
import { styles } from './themes/light/dropdown.base.css.js';
|
|
11
18
|
import { styles as bootstrap } from './themes/light/dropdown.bootstrap.css.js';
|
|
12
19
|
import { styles as fluent } from './themes/light/dropdown.fluent.css.js';
|
|
13
20
|
import { styles as indigo } from './themes/light/dropdown.indigo.css.js';
|
|
14
|
-
import { IgcToggleController } from '../toggle/toggle.controller.js';
|
|
15
|
-
import { styleMap } from 'lit/directives/style-map.js';
|
|
16
|
-
import { SizableMixin } from '../common/mixins/sizable.js';
|
|
17
|
-
import { themes } from '../../theming/theming-decorator.js';
|
|
18
|
-
import { watch } from '../common/decorators/watch.js';
|
|
19
|
-
import { blazorSuppress } from '../common/decorators/blazorSuppress.js';
|
|
20
|
-
import { blazorAdditionalDependencies } from '../common/decorators/blazorAdditionalDependencies.js';
|
|
21
21
|
import { defineComponents } from '../common/definitions/defineComponents.js';
|
|
22
22
|
import IgcDropdownGroupComponent from './dropdown-group.js';
|
|
23
23
|
import IgcDropdownHeaderComponent from './dropdown-header.js';
|
|
@@ -31,6 +31,8 @@ let IgcDropdownComponent = class IgcDropdownComponent extends SizableMixin(Event
|
|
|
31
31
|
Enter: this.onEnterKey,
|
|
32
32
|
ArrowUp: this.onArrowUpKeyDown,
|
|
33
33
|
ArrowDown: this.onArrowDownKeyDown,
|
|
34
|
+
ArrowLeft: this.onArrowUpKeyDown,
|
|
35
|
+
ArrowRight: this.onArrowDownKeyDown,
|
|
34
36
|
Home: this.onHomeKey,
|
|
35
37
|
End: this.onEndKey,
|
|
36
38
|
}));
|
|
@@ -252,10 +254,10 @@ let IgcDropdownComponent = class IgcDropdownComponent extends SizableMixin(Event
|
|
|
252
254
|
this.navigatePrev();
|
|
253
255
|
}
|
|
254
256
|
async _hide(emit = true) {
|
|
255
|
-
if (emit && !this.handleClosing())
|
|
256
|
-
return;
|
|
257
257
|
if (!this.open)
|
|
258
258
|
return;
|
|
259
|
+
if (emit && !this.handleClosing())
|
|
260
|
+
return;
|
|
259
261
|
this.open = false;
|
|
260
262
|
if (emit) {
|
|
261
263
|
await this.updateComplete;
|
|
@@ -315,6 +317,9 @@ let IgcDropdownComponent = class IgcDropdownComponent extends SizableMixin(Event
|
|
|
315
317
|
};
|
|
316
318
|
IgcDropdownComponent.tagName = 'igc-dropdown';
|
|
317
319
|
IgcDropdownComponent.styles = styles;
|
|
320
|
+
__decorate([
|
|
321
|
+
state()
|
|
322
|
+
], IgcDropdownComponent.prototype, "activeItem", void 0);
|
|
318
323
|
__decorate([
|
|
319
324
|
queryAssignedElements({ slot: 'target' })
|
|
320
325
|
], IgcDropdownComponent.prototype, "targetNodes", void 0);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dropdown.js","sourceRoot":"","sources":["../../../src/components/dropdown/dropdown.ts"],"names":[],"mappings":"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","sourcesContent":["import { html, LitElement } from 'lit';\nimport { property, query, queryAssignedElements } from 'lit/decorators.js';\nimport { Constructor } from '../common/mixins/constructor.js';\nimport { EventEmitterMixin } from '../common/mixins/event-emitter.js';\nimport { styles } from './themes/light/dropdown.base.css.js';\nimport { styles as bootstrap } from './themes/light/dropdown.bootstrap.css.js';\nimport { styles as fluent } from './themes/light/dropdown.fluent.css.js';\nimport { styles as indigo } from './themes/light/dropdown.indigo.css.js';\nimport type {\n IgcPlacement,\n IgcToggleComponent,\n IgcToggleEventMap,\n} from '../toggle/types';\nimport { IgcToggleController } from '../toggle/toggle.controller.js';\nimport { styleMap } from 'lit/directives/style-map.js';\nimport { SizableMixin } from '../common/mixins/sizable.js';\nimport { themes } from '../../theming/theming-decorator.js';\nimport { watch } from '../common/decorators/watch.js';\nimport { blazorSuppress } from '../common/decorators/blazorSuppress.js';\nimport { blazorAdditionalDependencies } from '../common/decorators/blazorAdditionalDependencies.js';\n\nimport { defineComponents } from '../common/definitions/defineComponents.js';\nimport IgcDropdownGroupComponent from './dropdown-group.js';\nimport IgcDropdownHeaderComponent from './dropdown-header.js';\nimport IgcDropdownItemComponent from './dropdown-item.js';\n\ndefineComponents(\n IgcDropdownGroupComponent,\n IgcDropdownHeaderComponent,\n IgcDropdownItemComponent\n);\n\nexport interface IgcDropdownEventMap extends IgcToggleEventMap {\n igcChange: CustomEvent<IgcDropdownItemComponent>;\n}\n\n/**\n * Represents a DropDown component.\n *\n * @element igc-dropdown\n *\n * @fires igcChange - Emitted when the selected item changes.\n * @fires igcOpening - Emitted just before the dropdown is open.\n * @fires igcOpened - Emitted after the dropdown is open.\n * @fires igcClosing - Emitter just before the dropdown is closed.\n * @fires igcClosed - Emitted after closing the dropdown.\n *\n * @slot target - Renders the dropdown's target element.\n * @slot - Renders the dropdown list items.\n *\n * @csspart base - The dropdown list wrapper.\n * @csspart list - The dropdown list.\n */\n@themes({ bootstrap, fluent, indigo })\n@blazorAdditionalDependencies(\n 'IgcDropdownItemComponent, IgcDropdownHeaderComponent, IgcDropdownGroupComponent'\n)\nexport default class IgcDropdownComponent\n extends SizableMixin(\n EventEmitterMixin<IgcDropdownEventMap, Constructor<LitElement>>(LitElement)\n )\n implements IgcToggleComponent\n{\n public static readonly tagName = 'igc-dropdown';\n\n public static styles = styles;\n\n private toggleController!: IgcToggleController;\n private selectedItem!: IgcDropdownItemComponent | null;\n private activeItem!: IgcDropdownItemComponent;\n private target!: HTMLElement;\n\n private readonly keyDownHandlers: Map<string, Function> = new Map(\n Object.entries({\n Escape: this.onEscapeKey,\n Enter: this.onEnterKey,\n ArrowUp: this.onArrowUpKeyDown,\n ArrowDown: this.onArrowDownKeyDown,\n Home: this.onHomeKey,\n End: this.onEndKey,\n })\n );\n\n protected get allItems() {\n return [...this.items, ...this.groups.flatMap((group) => group.items)];\n }\n\n @queryAssignedElements({ slot: 'target' })\n private targetNodes!: Array<HTMLElement>;\n\n @query('[part=\"base\"]')\n protected content!: HTMLElement;\n\n @query('[part=\"list\"]')\n protected scrollContainer!: HTMLElement;\n\n @queryAssignedElements({ flatten: true, selector: 'igc-dropdown-item' })\n protected items!: Array<IgcDropdownItemComponent>;\n\n @queryAssignedElements({ flatten: true, selector: 'igc-dropdown-group' })\n protected groups!: Array<IgcDropdownGroupComponent>;\n\n /** Whether the dropdown should be kept open on selection. */\n @property({ type: Boolean, attribute: 'keep-open-on-select' })\n public keepOpenOnSelect = false;\n\n /** Sets the open state of the component. */\n @property({ type: Boolean })\n public open = false;\n\n /** The preferred placement of the component around the target element.\n * @type {\"top\" | \"top-start\" | \"top-end\" | \"bottom\" | \"bottom-start\" | \"bottom-end\" | \"right\" | \"right-start\" | \"right-end\" | \"left\" | \"left-start\" | \"left-end\"}\n */\n @property()\n public placement: IgcPlacement = 'bottom-start';\n\n /** Sets the component's positioning strategy. */\n @property({ attribute: 'position-strategy' })\n public positionStrategy: 'absolute' | 'fixed' = 'absolute';\n\n /** Determines the behavior of the component during scrolling the container. */\n @property({ attribute: 'scroll-strategy' })\n public scrollStrategy: 'scroll' | 'block' | 'close' = 'scroll';\n\n /**\n * Whether the component should be flipped to the opposite side of the target once it's about to overflow the visible area.\n * When true, once enough space is detected on its preferred side, it will flip back.\n */\n @property({ type: Boolean })\n public flip = false;\n\n /** The distance from the target element. */\n @property({ type: Number })\n public distance = 0;\n\n /** Whether the component should be kept open on clicking outside of it. */\n @property({ type: Boolean, attribute: 'keep-open-on-outside-click' })\n public keepOpenOnOutsideClick = false;\n\n /** Whether the dropdown's width should be the same as the target's one. */\n @property({ type: Boolean, attribute: 'same-width' })\n public sameWidth = false;\n\n @watch('open')\n protected toggleDirectiveChange() {\n if (!this.target) return;\n this.toggleController.target = this.target;\n\n if (this.open) {\n document.addEventListener('keydown', this.handleKeyDown);\n this.target.addEventListener('focusout', this.handleFocusout);\n this.selectedItem = this.allItems.find((i) => i.selected) ?? null;\n } else {\n document.removeEventListener('keydown', this.handleKeyDown);\n this.target.removeEventListener('focusout', this.handleFocusout);\n }\n\n this.target.setAttribute('aria-expanded', this.open ? 'true' : 'false');\n }\n\n @watch('placement')\n @watch('flip')\n @watch('positionStrategy')\n @watch('closeOnOutsideClick')\n @watch('distance')\n @watch('sameWidth')\n protected updateOptions() {\n if (!this.toggleController) return;\n\n this.toggleController.update();\n }\n\n @watch('size')\n protected sizeChange() {\n this.groups.forEach((g) => g.requestUpdate());\n }\n\n constructor() {\n super();\n this.toggleController = new IgcToggleController(this, {\n target: this.target,\n closeCallback: () => this._hide(),\n });\n }\n\n public override async firstUpdated() {\n if (this.targetNodes.length) {\n this.target = this.targetNodes[0];\n this.target.setAttribute('aria-haspopup', 'listbox');\n }\n\n await this.updateComplete;\n this.setInitialSelection();\n }\n\n protected override async getUpdateComplete() {\n const result = await super.getUpdateComplete();\n await this.toggleController.rendered;\n return result;\n }\n\n protected setInitialSelection() {\n const item = this.allItems.filter((item) => item.selected).at(-1);\n this.allItems.forEach((item) => (item.selected = false));\n if (item) {\n this.selectItem(item, false);\n }\n }\n\n protected handleKeyDown = (event: KeyboardEvent) => {\n const path = event.composedPath();\n if (!(path.includes(this.target) || path.includes(this.content))) return;\n\n if (this.keyDownHandlers.has(event.key)) {\n event.preventDefault();\n event.stopPropagation();\n this.keyDownHandlers.get(event.key)?.call(this);\n }\n };\n\n protected onHomeKey() {\n this.navigateTo(\n this.allItems.filter((item) => !item.disabled).at(0)!.value\n );\n }\n\n protected onEndKey() {\n this.navigateTo(\n this.allItems.filter((item) => !item.disabled).at(-1)!.value\n );\n }\n\n protected onEscapeKey() {\n this._hide();\n }\n\n protected onEnterKey() {\n this.selectItem(this.activeItem);\n }\n\n protected handleClick(event: MouseEvent) {\n const item = event\n .composedPath()\n .find(\n (e) => e instanceof IgcDropdownItemComponent\n ) as IgcDropdownItemComponent;\n\n if (!item || item.disabled) return;\n\n this.selectItem(item);\n }\n\n protected handleTargetClick = async () => {\n if (!this.open) {\n if (!this.handleOpening()) return;\n this.show();\n await this.updateComplete;\n this.emitEvent('igcOpened');\n } else {\n this._hide();\n }\n };\n\n protected handleOpening() {\n const args = { cancelable: true };\n return this.emitEvent('igcOpening', args);\n }\n\n protected handleClosing(): boolean {\n const args = { cancelable: true };\n return this.emitEvent('igcClosing', args);\n }\n\n protected handleChange(item: IgcDropdownItemComponent) {\n const args = { detail: item };\n this.emitEvent('igcChange', args);\n }\n\n protected handleSlotChange() {\n if (!this.target) return;\n this.target.setAttribute('aria-expanded', this.open ? 'true' : 'false');\n }\n\n protected handleFocusout(event: Event) {\n event.preventDefault();\n (event.target as HTMLElement).focus();\n }\n\n protected getItem(value: string) {\n let itemIndex = -1;\n let item!: IgcDropdownItemComponent;\n this.allItems.find((i, index) => {\n if (i.value === value) {\n item = i;\n itemIndex = index;\n }\n });\n return { item: item, index: itemIndex };\n }\n\n protected activateItem(value: IgcDropdownItemComponent) {\n if (!value) return;\n\n if (this.activeItem) {\n this.activeItem.active = false;\n }\n\n this.activeItem = value;\n this.activeItem.active = true;\n }\n\n protected selectItem(\n item: IgcDropdownItemComponent,\n emit = true\n ): IgcDropdownItemComponent | null {\n if (!item) return null;\n\n if (this.selectedItem) {\n this.selectedItem.selected = false;\n }\n\n this.activateItem(item);\n this.selectedItem = item;\n this.selectedItem.selected = true;\n if (emit) this.handleChange(this.selectedItem);\n if (emit && !this.keepOpenOnSelect) this._hide();\n\n return this.selectedItem;\n }\n\n protected navigate(direction: -1 | 1, currentIndex?: number) {\n let index = -1;\n if (this.activeItem) {\n index = currentIndex\n ? currentIndex\n : [...this.allItems].indexOf(this.activeItem) ?? index;\n }\n\n const newIndex = this.getNearestSiblingFocusableItemIndex(index, direction);\n this.navigateItem(newIndex);\n }\n\n private navigateItem(newIndex: number): IgcDropdownItemComponent | null {\n if (!this.allItems) {\n return null;\n }\n\n if (newIndex < 0 || newIndex >= this.allItems.length) {\n return null;\n }\n\n const newItem = this.allItems[newIndex];\n\n this.activateItem(newItem);\n this.scrollToHiddenItem(newItem);\n\n return newItem;\n }\n\n private scrollToHiddenItem(newItem: IgcDropdownItemComponent) {\n const elementRect = newItem.getBoundingClientRect();\n const parentRect = this.content.getBoundingClientRect();\n if (parentRect.top > elementRect.top) {\n this.content.scrollTop -= parentRect.top - elementRect.top;\n }\n\n if (parentRect.bottom < elementRect.bottom) {\n this.content.scrollTop += elementRect.bottom - parentRect.bottom;\n }\n }\n\n private getNearestSiblingFocusableItemIndex(\n startIndex: number,\n direction: -1 | 1\n ): number {\n let index = startIndex;\n const items = this.allItems;\n if (!items) {\n return -1;\n }\n\n while (items[index + direction] && items[index + direction].disabled) {\n index += direction;\n }\n\n index += direction;\n\n return index > -1 && index < items.length ? index : -1;\n }\n\n private navigateNext() {\n this.navigate(1);\n }\n\n private navigatePrev() {\n this.navigate(-1);\n }\n\n private onArrowDownKeyDown() {\n this.navigateNext();\n }\n\n private onArrowUpKeyDown() {\n this.navigatePrev();\n }\n\n private async _hide(emit = true) {\n if (emit && !this.handleClosing()) return;\n\n if (!this.open) return;\n\n this.open = false;\n\n if (emit) {\n await this.updateComplete;\n this.emitEvent('igcClosed');\n }\n }\n\n /** Shows the dropdown. */\n @blazorSuppress()\n public show(target?: HTMLElement) {\n if (this.open && !target) return;\n\n if (target) this.target = target;\n\n this.open = true;\n }\n\n /** Hides the dropdown. */\n public hide(): void {\n this._hide(false);\n }\n\n /** Toggles the open state of the dropdown. */\n @blazorSuppress()\n public toggle(target?: HTMLElement): void {\n this.open ? this.hide() : this.show(target);\n }\n\n /** Navigates to the item with the specified value. If it exists, returns the found item, otherwise - null. */\n public navigateTo(value: string): IgcDropdownItemComponent | null;\n /** Navigates to the item at the specified index. If it exists, returns the found item, otherwise - null. */\n public navigateTo(index: number): IgcDropdownItemComponent | null;\n /** Navigates to the specified item. If it exists, returns the found item, otherwise - null. */\n @blazorSuppress()\n public navigateTo(value: string | number): IgcDropdownItemComponent | null {\n const index =\n typeof value === 'string' ? this.getItem(value).index : (value as number);\n\n return this.navigateItem(index);\n }\n\n /** Selects the item with the specified value. If it exists, returns the found item, otherwise - null. */\n public select(value: string): IgcDropdownItemComponent | null;\n /** Selects the item at the specified index. If it exists, returns the found item, otherwise - null. */\n public select(index: number): IgcDropdownItemComponent | null;\n /** Selects the specified item. If it exists, returns the found item, otherwise - null. */\n @blazorSuppress()\n public select(value: string | number): IgcDropdownItemComponent | null {\n const item =\n typeof value === 'string'\n ? this.getItem(value).item\n : this.allItems[value as number];\n\n return this.selectItem(item, false);\n }\n\n /** Clears the current selection of the dropdown. */\n public clearSelection() {\n if (this.selectedItem) {\n this.selectedItem.selected = false;\n }\n this.selectedItem = null;\n }\n\n protected override render() {\n return html`\n <slot\n id=\"igcDDLTarget\"\n name=\"target\"\n @click=${this.handleTargetClick}\n @slotchange=${this.handleSlotChange}\n >\n </slot>\n <div\n part=\"base\"\n style=${styleMap({ position: this.positionStrategy })}\n @click=${this.handleClick}\n ${this.toggleController.toggleDirective}\n >\n <div role=\"listbox\" part=\"list\" aria-labelledby=\"igcDDLTarget\">\n <slot></slot>\n </div>\n </div>\n `;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'igc-dropdown': IgcDropdownComponent;\n }\n}\n"]}
|
|
1
|
+
{"version":3,"file":"dropdown.js","sourceRoot":"","sources":["../../../src/components/dropdown/dropdown.ts"],"names":[],"mappings":"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","sourcesContent":["import { html, LitElement } from 'lit';\nimport {\n property,\n query,\n queryAssignedElements,\n state,\n} from 'lit/decorators.js';\nimport { styleMap } from 'lit/directives/style-map.js';\nimport { themes } from '../../theming/theming-decorator.js';\nimport { blazorAdditionalDependencies } from '../common/decorators/blazorAdditionalDependencies.js';\nimport { blazorSuppress } from '../common/decorators/blazorSuppress.js';\nimport { watch } from '../common/decorators/watch.js';\nimport { Constructor } from '../common/mixins/constructor.js';\nimport { EventEmitterMixin } from '../common/mixins/event-emitter.js';\nimport { SizableMixin } from '../common/mixins/sizable.js';\nimport { IgcToggleController } from '../toggle/toggle.controller.js';\nimport type {\n IgcPlacement,\n IgcToggleComponent,\n IgcToggleEventMap,\n} from '../toggle/types';\nimport { styles } from './themes/light/dropdown.base.css.js';\nimport { styles as bootstrap } from './themes/light/dropdown.bootstrap.css.js';\nimport { styles as fluent } from './themes/light/dropdown.fluent.css.js';\nimport { styles as indigo } from './themes/light/dropdown.indigo.css.js';\n\nimport { defineComponents } from '../common/definitions/defineComponents.js';\nimport IgcDropdownGroupComponent from './dropdown-group.js';\nimport IgcDropdownHeaderComponent from './dropdown-header.js';\nimport IgcDropdownItemComponent from './dropdown-item.js';\n\ndefineComponents(\n IgcDropdownGroupComponent,\n IgcDropdownHeaderComponent,\n IgcDropdownItemComponent\n);\n\nexport interface IgcDropdownEventMap extends IgcToggleEventMap {\n igcChange: CustomEvent<IgcDropdownItemComponent>;\n}\n\n/**\n * Represents a DropDown component.\n *\n * @element igc-dropdown\n *\n * @fires igcChange - Emitted when the selected item changes.\n * @fires igcOpening - Emitted just before the dropdown is open.\n * @fires igcOpened - Emitted after the dropdown is open.\n * @fires igcClosing - Emitter just before the dropdown is closed.\n * @fires igcClosed - Emitted after closing the dropdown.\n *\n * @slot target - Renders the dropdown's target element.\n * @slot - Renders the dropdown list items.\n *\n * @csspart base - The dropdown list wrapper.\n * @csspart list - The dropdown list.\n */\n@themes({ bootstrap, fluent, indigo })\n@blazorAdditionalDependencies(\n 'IgcDropdownItemComponent, IgcDropdownHeaderComponent, IgcDropdownGroupComponent'\n)\nexport default class IgcDropdownComponent\n extends SizableMixin(\n EventEmitterMixin<IgcDropdownEventMap, Constructor<LitElement>>(LitElement)\n )\n implements IgcToggleComponent\n{\n /** @private */\n public static readonly tagName: string = 'igc-dropdown';\n\n public static styles = styles;\n\n protected toggleController!: IgcToggleController;\n protected selectedItem!: IgcDropdownItemComponent | null;\n\n @state()\n protected activeItem!: IgcDropdownItemComponent;\n\n protected target!: HTMLElement;\n\n private readonly keyDownHandlers: Map<string, Function> = new Map(\n Object.entries({\n Escape: this.onEscapeKey,\n Enter: this.onEnterKey,\n ArrowUp: this.onArrowUpKeyDown,\n ArrowDown: this.onArrowDownKeyDown,\n ArrowLeft: this.onArrowUpKeyDown,\n ArrowRight: this.onArrowDownKeyDown,\n Home: this.onHomeKey,\n End: this.onEndKey,\n })\n );\n\n protected get allItems() {\n return [...this.items, ...this.groups.flatMap((group) => group.items)];\n }\n\n @queryAssignedElements({ slot: 'target' })\n private targetNodes!: Array<HTMLElement>;\n\n @query('[part=\"base\"]')\n protected content!: HTMLElement;\n\n @query('[part=\"list\"]')\n protected scrollContainer!: HTMLElement;\n\n @queryAssignedElements({ flatten: true, selector: 'igc-dropdown-item' })\n protected items!: Array<IgcDropdownItemComponent>;\n\n @queryAssignedElements({ flatten: true, selector: 'igc-dropdown-group' })\n protected groups!: Array<IgcDropdownGroupComponent>;\n\n /** Whether the dropdown should be kept open on selection. */\n @property({ type: Boolean, attribute: 'keep-open-on-select' })\n public keepOpenOnSelect = false;\n\n /** Sets the open state of the component. */\n @property({ type: Boolean })\n public open = false;\n\n /** The preferred placement of the component around the target element.\n * @type {\"top\" | \"top-start\" | \"top-end\" | \"bottom\" | \"bottom-start\" | \"bottom-end\" | \"right\" | \"right-start\" | \"right-end\" | \"left\" | \"left-start\" | \"left-end\"}\n */\n @property()\n public placement: IgcPlacement = 'bottom-start';\n\n /** Sets the component's positioning strategy. */\n @property({ attribute: 'position-strategy' })\n public positionStrategy: 'absolute' | 'fixed' = 'absolute';\n\n /** Determines the behavior of the component during scrolling the container. */\n @property({ attribute: 'scroll-strategy' })\n public scrollStrategy: 'scroll' | 'block' | 'close' = 'scroll';\n\n /**\n * Whether the component should be flipped to the opposite side of the target once it's about to overflow the visible area.\n * When true, once enough space is detected on its preferred side, it will flip back.\n */\n @property({ type: Boolean })\n public flip = false;\n\n /** The distance from the target element. */\n @property({ type: Number })\n public distance = 0;\n\n /** Whether the component should be kept open on clicking outside of it. */\n @property({ type: Boolean, attribute: 'keep-open-on-outside-click' })\n public keepOpenOnOutsideClick = false;\n\n /** Whether the dropdown's width should be the same as the target's one. */\n @property({ type: Boolean, attribute: 'same-width' })\n public sameWidth = false;\n\n @watch('open')\n protected toggleDirectiveChange() {\n if (!this.target) return;\n this.toggleController.target = this.target;\n\n if (this.open) {\n document.addEventListener('keydown', this.handleKeyDown);\n this.target.addEventListener('focusout', this.handleFocusout);\n this.selectedItem = this.allItems.find((i) => i.selected) ?? null;\n } else {\n document.removeEventListener('keydown', this.handleKeyDown);\n this.target.removeEventListener('focusout', this.handleFocusout);\n }\n\n this.target.setAttribute('aria-expanded', this.open ? 'true' : 'false');\n }\n\n @watch('placement')\n @watch('flip')\n @watch('positionStrategy')\n @watch('closeOnOutsideClick')\n @watch('distance')\n @watch('sameWidth')\n protected updateOptions() {\n if (!this.toggleController) return;\n\n this.toggleController.update();\n }\n\n @watch('size')\n protected sizeChange() {\n this.groups.forEach((g) => g.requestUpdate());\n }\n\n constructor() {\n super();\n this.toggleController = new IgcToggleController(this, {\n target: this.target,\n closeCallback: () => this._hide(),\n });\n }\n\n public override async firstUpdated() {\n if (this.targetNodes.length) {\n this.target = this.targetNodes[0];\n this.target.setAttribute('aria-haspopup', 'listbox');\n }\n\n await this.updateComplete;\n this.setInitialSelection();\n }\n\n protected override async getUpdateComplete() {\n const result = await super.getUpdateComplete();\n await this.toggleController.rendered;\n return result;\n }\n\n protected setInitialSelection() {\n const item = this.allItems.filter((item) => item.selected).at(-1);\n this.allItems.forEach((item) => (item.selected = false));\n if (item) {\n this.selectItem(item, false);\n }\n }\n\n protected handleKeyDown = (event: KeyboardEvent) => {\n const path = event.composedPath();\n if (!(path.includes(this.target) || path.includes(this.content))) return;\n\n if (this.keyDownHandlers.has(event.key)) {\n event.preventDefault();\n event.stopPropagation();\n this.keyDownHandlers.get(event.key)?.call(this);\n }\n };\n\n protected onHomeKey() {\n this.navigateTo(\n this.allItems.filter((item) => !item.disabled).at(0)!.value\n );\n }\n\n protected onEndKey() {\n this.navigateTo(\n this.allItems.filter((item) => !item.disabled).at(-1)!.value\n );\n }\n\n protected onEscapeKey() {\n this._hide();\n }\n\n protected onEnterKey() {\n this.selectItem(this.activeItem);\n }\n\n protected handleClick(event: MouseEvent) {\n const item = event\n .composedPath()\n .find(\n (e) => e instanceof IgcDropdownItemComponent\n ) as IgcDropdownItemComponent;\n\n if (!item || item.disabled) return;\n\n this.selectItem(item);\n }\n\n protected handleTargetClick = async () => {\n if (!this.open) {\n if (!this.handleOpening()) return;\n this.show();\n await this.updateComplete;\n this.emitEvent('igcOpened');\n } else {\n this._hide();\n }\n };\n\n protected handleOpening() {\n const args = { cancelable: true };\n return this.emitEvent('igcOpening', args);\n }\n\n protected handleClosing(): boolean {\n const args = { cancelable: true };\n return this.emitEvent('igcClosing', args);\n }\n\n protected handleChange(item: IgcDropdownItemComponent) {\n const args = { detail: item };\n this.emitEvent('igcChange', args);\n }\n\n protected handleSlotChange() {\n if (!this.target) return;\n this.target.setAttribute('aria-expanded', this.open ? 'true' : 'false');\n }\n\n protected handleFocusout(event: Event) {\n event.preventDefault();\n (event.target as HTMLElement).focus();\n }\n\n protected getItem(value: string) {\n let itemIndex = -1;\n let item!: IgcDropdownItemComponent;\n this.allItems.find((i, index) => {\n if (i.value === value) {\n item = i;\n itemIndex = index;\n }\n });\n return { item: item, index: itemIndex };\n }\n\n protected activateItem(value: IgcDropdownItemComponent) {\n if (!value) return;\n\n if (this.activeItem) {\n this.activeItem.active = false;\n }\n\n this.activeItem = value;\n this.activeItem.active = true;\n }\n\n protected selectItem(\n item: IgcDropdownItemComponent,\n emit = true\n ): IgcDropdownItemComponent | null {\n if (!item) return null;\n\n if (this.selectedItem) {\n this.selectedItem.selected = false;\n }\n\n this.activateItem(item);\n this.selectedItem = item;\n this.selectedItem.selected = true;\n if (emit) this.handleChange(this.selectedItem);\n if (emit && !this.keepOpenOnSelect) this._hide();\n\n return this.selectedItem;\n }\n\n protected navigate(direction: -1 | 1, currentIndex?: number) {\n let index = -1;\n if (this.activeItem) {\n index = currentIndex\n ? currentIndex\n : [...this.allItems].indexOf(this.activeItem) ?? index;\n }\n\n const newIndex = this.getNearestSiblingFocusableItemIndex(index, direction);\n this.navigateItem(newIndex);\n }\n\n private navigateItem(newIndex: number): IgcDropdownItemComponent | null {\n if (!this.allItems) {\n return null;\n }\n\n if (newIndex < 0 || newIndex >= this.allItems.length) {\n return null;\n }\n\n const newItem = this.allItems[newIndex];\n\n this.activateItem(newItem);\n this.scrollToHiddenItem(newItem);\n\n return newItem;\n }\n\n private scrollToHiddenItem(newItem: IgcDropdownItemComponent) {\n const elementRect = newItem.getBoundingClientRect();\n const parentRect = this.content.getBoundingClientRect();\n if (parentRect.top > elementRect.top) {\n this.content.scrollTop -= parentRect.top - elementRect.top;\n }\n\n if (parentRect.bottom < elementRect.bottom) {\n this.content.scrollTop += elementRect.bottom - parentRect.bottom;\n }\n }\n\n protected getNearestSiblingFocusableItemIndex(\n startIndex: number,\n direction: -1 | 1\n ): number {\n let index = startIndex;\n const items = this.allItems;\n if (!items) {\n return -1;\n }\n\n while (items[index + direction] && items[index + direction].disabled) {\n index += direction;\n }\n\n index += direction;\n\n return index > -1 && index < items.length ? index : -1;\n }\n\n private navigateNext() {\n this.navigate(1);\n }\n\n private navigatePrev() {\n this.navigate(-1);\n }\n\n protected onArrowDownKeyDown() {\n this.navigateNext();\n }\n\n protected onArrowUpKeyDown() {\n this.navigatePrev();\n }\n\n private async _hide(emit = true) {\n if (!this.open) return;\n if (emit && !this.handleClosing()) return;\n\n this.open = false;\n\n if (emit) {\n await this.updateComplete;\n this.emitEvent('igcClosed');\n }\n }\n\n /** Shows the dropdown. */\n @blazorSuppress()\n public show(target?: HTMLElement) {\n if (this.open && !target) return;\n\n if (target) this.target = target;\n\n this.open = true;\n }\n\n /** Hides the dropdown. */\n public hide(): void {\n this._hide(false);\n }\n\n /** Toggles the open state of the dropdown. */\n @blazorSuppress()\n public toggle(target?: HTMLElement): void {\n this.open ? this.hide() : this.show(target);\n }\n\n /** Navigates to the item with the specified value. If it exists, returns the found item, otherwise - null. */\n public navigateTo(value: string): IgcDropdownItemComponent | null;\n /** Navigates to the item at the specified index. If it exists, returns the found item, otherwise - null. */\n public navigateTo(index: number): IgcDropdownItemComponent | null;\n /** Navigates to the specified item. If it exists, returns the found item, otherwise - null. */\n @blazorSuppress()\n public navigateTo(value: string | number): IgcDropdownItemComponent | null {\n const index =\n typeof value === 'string' ? this.getItem(value).index : (value as number);\n\n return this.navigateItem(index);\n }\n\n /** Selects the item with the specified value. If it exists, returns the found item, otherwise - null. */\n public select(value: string): IgcDropdownItemComponent | null;\n /** Selects the item at the specified index. If it exists, returns the found item, otherwise - null. */\n public select(index: number): IgcDropdownItemComponent | null;\n /** Selects the specified item. If it exists, returns the found item, otherwise - null. */\n @blazorSuppress()\n public select(value: string | number): IgcDropdownItemComponent | null {\n const item =\n typeof value === 'string'\n ? this.getItem(value).item\n : this.allItems[value as number];\n\n return this.selectItem(item, false);\n }\n\n /** Clears the current selection of the dropdown. */\n public clearSelection() {\n if (this.selectedItem) {\n this.selectedItem.selected = false;\n }\n this.selectedItem = null;\n }\n\n protected override render() {\n return html`\n <slot\n id=\"igcDDLTarget\"\n name=\"target\"\n @click=${this.handleTargetClick}\n @slotchange=${this.handleSlotChange}\n >\n </slot>\n <div\n part=\"base\"\n style=${styleMap({ position: this.positionStrategy })}\n @click=${this.handleClick}\n ${this.toggleController.toggleDirective}\n >\n <div role=\"listbox\" part=\"list\" aria-labelledby=\"igcDDLTarget\">\n <slot></slot>\n </div>\n </div>\n `;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'igc-dropdown': IgcDropdownComponent;\n }\n}\n"]}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import { css } from 'lit';
|
|
2
|
-
export const styles = css `:host{position:relative;-webkit-box-sizing:border-box;box-sizing:border-box;scrollbar-width:var(--scrolbar-size, 0.875rem);scrollbar-color:var(--igc-scrollbar-thumb-color, hsla(var(--igc-gray-400), var(--igc-gray-a))) var(--igc-scrollbar-track-color, hsla(var(--igc-gray-200), var(--igc-gray-a)))}:host *,:host *::before,:host *::after{-webkit-box-sizing:border-box;box-sizing:border-box}:host ::-webkit-scrollbar{width:var(--scrolbar-size, 0.875rem);height:var(--scrolbar-size, 0.875rem);background:var(--igc-scrollbar-track-color, hsla(var(--igc-gray-200), var(--igc-gray-a)))}:host ::-webkit-scrollbar-thumb{background:var(--igc-scrollbar-thumb-color, hsla(var(--igc-gray-400), var(--igc-gray-a)))}[hidden]{display:none !important}:host{pointer-events:auto}:host ::slotted([slot=label]){font-family:var(--igc-overline-font-family);font-weight:var(--igc-overline-font-weight);font-size:var(--igc-overline-font-size);font-style:var(--igc-overline-font-style);letter-spacing:var(--igc-overline-letter-spacing);text-transform:var(--igc-overline-text-transform);line-height:var(--igc-overline-line-height);margin-top:var(--igc-overline-margin-top);margin-bottom:var(--igc-overline-margin-bottom);white-space:nowrap;-o-text-overflow:ellipsis;text-overflow:ellipsis;overflow:hidden;display:block;white-space:nowrap;position:relative;color:hsla(var(--igc-secondary-500), var(--igc-secondary-a));pointer-events:none}:host([size=small]) ::slotted(igc-dropdown-item){padding:var(--igc-spacing-small) calc(var(--igc-spacing-small)*3)}:host([size=small]) ::slotted([slot=label]){padding:var(--igc-spacing-small) calc(var(--igc-spacing-small)*2)}:host([size=medium]) ::slotted(igc-dropdown-item){padding:var(--igc-spacing-medium) calc(var(--igc-spacing-medium)*3)}:host([size=medium]) ::slotted([slot=label]){padding:var(--igc-spacing-medium) calc(var(--igc-spacing-medium)*2)}:host([size=large]) ::slotted(igc-dropdown-item){padding:var(--igc-spacing-large) calc(var(--igc-spacing-large)*3)}:host([size=large]) ::slotted([slot=label]){padding:var(--igc-spacing-large) calc(var(--igc-spacing-large)*2)}`;
|
|
2
|
+
export const styles = css `:host{position:relative;-webkit-box-sizing:border-box;box-sizing:border-box;scrollbar-width:var(--scrolbar-size, 0.875rem);scrollbar-color:var(--igc-scrollbar-thumb-color, hsla(var(--igc-gray-400), var(--igc-gray-a))) var(--igc-scrollbar-track-color, hsla(var(--igc-gray-200), var(--igc-gray-a)))}:host *,:host *::before,:host *::after{-webkit-box-sizing:border-box;box-sizing:border-box}:host ::-webkit-scrollbar{width:var(--scrolbar-size, 0.875rem);height:var(--scrolbar-size, 0.875rem);background:var(--igc-scrollbar-track-color, hsla(var(--igc-gray-200), var(--igc-gray-a)))}:host ::-webkit-scrollbar-thumb{background:var(--igc-scrollbar-thumb-color, hsla(var(--igc-gray-400), var(--igc-gray-a)))}[hidden]{display:none !important}:host{pointer-events:auto}:host ::slotted([slot=label]){font-family:var(--igc-overline-font-family);font-weight:var(--igc-overline-font-weight);font-size:var(--igc-overline-font-size);font-style:var(--igc-overline-font-style);letter-spacing:var(--igc-overline-letter-spacing);text-transform:var(--igc-overline-text-transform);line-height:var(--igc-overline-line-height);margin-top:var(--igc-overline-margin-top);margin-bottom:var(--igc-overline-margin-bottom);white-space:nowrap;-o-text-overflow:ellipsis;text-overflow:ellipsis;overflow:hidden;display:block;white-space:nowrap;position:relative;color:hsla(var(--igc-secondary-500), var(--igc-secondary-a));pointer-events:none}:host([size=small]) ::slotted(igc-dropdown-item),:host([size=small]) ::slotted(igc-select-item){padding:var(--igc-spacing-small) calc(var(--igc-spacing-small)*3)}:host([size=small]) ::slotted([slot=label]){padding:var(--igc-spacing-small) calc(var(--igc-spacing-small)*2)}:host([size=medium]) ::slotted(igc-dropdown-item),:host([size=medium]) ::slotted(igc-select-item){padding:var(--igc-spacing-medium) calc(var(--igc-spacing-medium)*3)}:host([size=medium]) ::slotted([slot=label]){padding:var(--igc-spacing-medium) calc(var(--igc-spacing-medium)*2)}:host([size=large]) ::slotted(igc-dropdown-item),:host([size=large]) ::slotted(igc-select-item){padding:var(--igc-spacing-large) calc(var(--igc-spacing-large)*3)}:host([size=large]) ::slotted([slot=label]){padding:var(--igc-spacing-large) calc(var(--igc-spacing-large)*2)}`;
|
|
3
3
|
//# sourceMappingURL=dropdown-group.base.css.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dropdown-group.base.css.js","sourceRoot":"","sources":["../../../../../src/components/dropdown/themes/light/dropdown-group.base.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,
|
|
1
|
+
{"version":3,"file":"dropdown-group.base.css.js","sourceRoot":"","sources":["../../../../../src/components/dropdown/themes/light/dropdown-group.base.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,2rEAA2rE,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`:host{position:relative;-webkit-box-sizing:border-box;box-sizing:border-box;scrollbar-width:var(--scrolbar-size, 0.875rem);scrollbar-color:var(--igc-scrollbar-thumb-color, hsla(var(--igc-gray-400), var(--igc-gray-a))) var(--igc-scrollbar-track-color, hsla(var(--igc-gray-200), var(--igc-gray-a)))}:host *,:host *::before,:host *::after{-webkit-box-sizing:border-box;box-sizing:border-box}:host ::-webkit-scrollbar{width:var(--scrolbar-size, 0.875rem);height:var(--scrolbar-size, 0.875rem);background:var(--igc-scrollbar-track-color, hsla(var(--igc-gray-200), var(--igc-gray-a)))}:host ::-webkit-scrollbar-thumb{background:var(--igc-scrollbar-thumb-color, hsla(var(--igc-gray-400), var(--igc-gray-a)))}[hidden]{display:none !important}:host{pointer-events:auto}:host ::slotted([slot=label]){font-family:var(--igc-overline-font-family);font-weight:var(--igc-overline-font-weight);font-size:var(--igc-overline-font-size);font-style:var(--igc-overline-font-style);letter-spacing:var(--igc-overline-letter-spacing);text-transform:var(--igc-overline-text-transform);line-height:var(--igc-overline-line-height);margin-top:var(--igc-overline-margin-top);margin-bottom:var(--igc-overline-margin-bottom);white-space:nowrap;-o-text-overflow:ellipsis;text-overflow:ellipsis;overflow:hidden;display:block;white-space:nowrap;position:relative;color:hsla(var(--igc-secondary-500), var(--igc-secondary-a));pointer-events:none}:host([size=small]) ::slotted(igc-dropdown-item),:host([size=small]) ::slotted(igc-select-item){padding:var(--igc-spacing-small) calc(var(--igc-spacing-small)*3)}:host([size=small]) ::slotted([slot=label]){padding:var(--igc-spacing-small) calc(var(--igc-spacing-small)*2)}:host([size=medium]) ::slotted(igc-dropdown-item),:host([size=medium]) ::slotted(igc-select-item){padding:var(--igc-spacing-medium) calc(var(--igc-spacing-medium)*3)}:host([size=medium]) ::slotted([slot=label]){padding:var(--igc-spacing-medium) calc(var(--igc-spacing-medium)*2)}:host([size=large]) ::slotted(igc-dropdown-item),:host([size=large]) ::slotted(igc-select-item){padding:var(--igc-spacing-large) calc(var(--igc-spacing-large)*3)}:host([size=large]) ::slotted([slot=label]){padding:var(--igc-spacing-large) calc(var(--igc-spacing-large)*2)}`;\n"]}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import { css } from 'lit';
|
|
2
|
-
export const styles = css `:host([size=small]) ::slotted(igc-dropdown-item),:host([size=small]) ::slotted([slot=label]){padding:var(--igc-spacing-small)}:host([size=medium]) ::slotted(igc-dropdown-item),:host([size=medium]) ::slotted([slot=label]){padding:var(--igc-spacing-medium)}:host([size=large]) ::slotted(igc-dropdown-item),:host([size=large]) ::slotted([slot=label]){padding:var(--igc-spacing-large)}`;
|
|
2
|
+
export const styles = css `:host([size=small]) ::slotted(igc-dropdown-item),:host([size=small]) ::slotted(igc-select-item),:host([size=small]) ::slotted([slot=label]){padding:var(--igc-spacing-small)}:host([size=medium]) ::slotted(igc-dropdown-item),:host([size=medium]) ::slotted(igc-select-item),:host([size=medium]) ::slotted([slot=label]){padding:var(--igc-spacing-medium)}:host([size=large]) ::slotted(igc-dropdown-item),:host([size=large]) ::slotted(igc-select-item),:host([size=large]) ::slotted([slot=label]){padding:var(--igc-spacing-large)}`;
|
|
3
3
|
//# sourceMappingURL=dropdown-group.fluent.css.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dropdown-group.fluent.css.js","sourceRoot":"","sources":["../../../../../src/components/dropdown/themes/light/dropdown-group.fluent.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA
|
|
1
|
+
{"version":3,"file":"dropdown-group.fluent.css.js","sourceRoot":"","sources":["../../../../../src/components/dropdown/themes/light/dropdown-group.fluent.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,6gBAA6gB,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`:host([size=small]) ::slotted(igc-dropdown-item),:host([size=small]) ::slotted(igc-select-item),:host([size=small]) ::slotted([slot=label]){padding:var(--igc-spacing-small)}:host([size=medium]) ::slotted(igc-dropdown-item),:host([size=medium]) ::slotted(igc-select-item),:host([size=medium]) ::slotted([slot=label]){padding:var(--igc-spacing-medium)}:host([size=large]) ::slotted(igc-dropdown-item),:host([size=large]) ::slotted(igc-select-item),:host([size=large]) ::slotted([slot=label]){padding:var(--igc-spacing-large)}`;\n"]}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import { css } from 'lit';
|
|
2
|
-
export const styles = css `:host{position:relative;-webkit-box-sizing:border-box;box-sizing:border-box;scrollbar-width:var(--scrolbar-size, 0.875rem);scrollbar-color:var(--igc-scrollbar-thumb-color, hsla(var(--igc-gray-400), var(--igc-gray-a))) var(--igc-scrollbar-track-color, hsla(var(--igc-gray-200), var(--igc-gray-a)))}:host *,:host *::before,:host *::after{-webkit-box-sizing:border-box;box-sizing:border-box}:host ::-webkit-scrollbar{width:var(--scrolbar-size, 0.875rem);height:var(--scrolbar-size, 0.875rem);background:var(--igc-scrollbar-track-color, hsla(var(--igc-gray-200), var(--igc-gray-a)))}:host ::-webkit-scrollbar-thumb{background:var(--igc-scrollbar-thumb-color, hsla(var(--igc-gray-400), var(--igc-gray-a)))}[hidden]{display:none !important}:host{font-family:var(--igc-body-2-font-family);font-weight:var(--igc-body-2-font-weight);font-size:var(--igc-body-2-font-size);font-style:var(--igc-body-2-font-style);letter-spacing:var(--igc-body-2-letter-spacing);text-transform:var(--igc-body-2-text-transform);line-height:var(--igc-body-2-line-height);margin-top:var(--igc-body-2-margin-top);margin-bottom:var(--igc-body-2-margin-bottom);display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start;-webkit-box-align:center;-ms-flex-align:center;align-items:center;width:100%;white-space:nowrap;position:relative;cursor:pointer;color:hsla(var(--igc-gray-800), var(--igc-gray-a))}:host(:hover),:host([active]){background:hsla(var(--igc-gray-200), var(--igc-gray-a))}:host([selected]){background:hsla(var(--igc-secondary-100), var(--igc-secondary-a));color:var(--igc-secondary-100-contrast)}:host([selected]:hover),:host([selected][active]){background:hsla(var(--igc-secondary-200), var(--igc-secondary-a));color:var(--igc-secondary-200-contrast)}:host([disabled]){color:hsla(var(--igc-gray-500), var(--igc-gray-a));cursor:default;pointer-events:none}::slotted(*){font:inherit}[part=content]{white-space:nowrap;-o-text-overflow:ellipsis;text-overflow:ellipsis;overflow:hidden;display:block;width:100%;-webkit-box-align:center;-ms-flex-align:center;align-items:center}[part=prefix],[part=suffix]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}[name=prefix]::slotted(*){-webkit-margin-end:calc(var(--igc-spacing-large)*2);margin-inline-end:calc(var(--igc-spacing-large)*2)}[name=suffix]::slotted(*){-webkit-margin-start:calc(var(--igc-spacing-large)*2);margin-inline-start:calc(var(--igc-spacing-large)*2)}`;
|
|
2
|
+
export const styles = css `:host{position:relative;-webkit-box-sizing:border-box;box-sizing:border-box;scrollbar-width:var(--scrolbar-size, 0.875rem);scrollbar-color:var(--igc-scrollbar-thumb-color, hsla(var(--igc-gray-400), var(--igc-gray-a))) var(--igc-scrollbar-track-color, hsla(var(--igc-gray-200), var(--igc-gray-a)))}:host *,:host *::before,:host *::after{-webkit-box-sizing:border-box;box-sizing:border-box}:host ::-webkit-scrollbar{width:var(--scrolbar-size, 0.875rem);height:var(--scrolbar-size, 0.875rem);background:var(--igc-scrollbar-track-color, hsla(var(--igc-gray-200), var(--igc-gray-a)))}:host ::-webkit-scrollbar-thumb{background:var(--igc-scrollbar-thumb-color, hsla(var(--igc-gray-400), var(--igc-gray-a)))}[hidden]{display:none !important}:host{font-family:var(--igc-body-2-font-family);font-weight:var(--igc-body-2-font-weight);font-size:var(--igc-body-2-font-size);font-style:var(--igc-body-2-font-style);letter-spacing:var(--igc-body-2-letter-spacing);text-transform:var(--igc-body-2-text-transform);line-height:var(--igc-body-2-line-height);margin-top:var(--igc-body-2-margin-top);margin-bottom:var(--igc-body-2-margin-bottom);display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start;-webkit-box-align:center;-ms-flex-align:center;align-items:center;width:100%;white-space:nowrap;position:relative;cursor:pointer;color:hsla(var(--igc-gray-800), var(--igc-gray-a));outline-style:none}:host(:hover),:host([active]){background:hsla(var(--igc-gray-200), var(--igc-gray-a))}:host([selected]){background:hsla(var(--igc-secondary-100), var(--igc-secondary-a));color:var(--igc-secondary-100-contrast)}:host([selected]:hover),:host([selected][active]){background:hsla(var(--igc-secondary-200), var(--igc-secondary-a));color:var(--igc-secondary-200-contrast)}:host([disabled]){color:hsla(var(--igc-gray-500), var(--igc-gray-a));cursor:default;pointer-events:none}::slotted(*){font:inherit}[part=content]{white-space:nowrap;-o-text-overflow:ellipsis;text-overflow:ellipsis;overflow:hidden;display:block;width:100%;-webkit-box-align:center;-ms-flex-align:center;align-items:center}[part=prefix],[part=suffix]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}[name=prefix]::slotted(*){-webkit-margin-end:calc(var(--igc-spacing-large)*2);margin-inline-end:calc(var(--igc-spacing-large)*2)}[name=suffix]::slotted(*){-webkit-margin-start:calc(var(--igc-spacing-large)*2);margin-inline-start:calc(var(--igc-spacing-large)*2)}`;
|
|
3
3
|
//# sourceMappingURL=dropdown-item.base.css.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dropdown-item.base.css.js","sourceRoot":"","sources":["../../../../../src/components/dropdown/themes/light/dropdown-item.base.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,
|
|
1
|
+
{"version":3,"file":"dropdown-item.base.css.js","sourceRoot":"","sources":["../../../../../src/components/dropdown/themes/light/dropdown-item.base.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,qjFAAqjF,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`:host{position:relative;-webkit-box-sizing:border-box;box-sizing:border-box;scrollbar-width:var(--scrolbar-size, 0.875rem);scrollbar-color:var(--igc-scrollbar-thumb-color, hsla(var(--igc-gray-400), var(--igc-gray-a))) var(--igc-scrollbar-track-color, hsla(var(--igc-gray-200), var(--igc-gray-a)))}:host *,:host *::before,:host *::after{-webkit-box-sizing:border-box;box-sizing:border-box}:host ::-webkit-scrollbar{width:var(--scrolbar-size, 0.875rem);height:var(--scrolbar-size, 0.875rem);background:var(--igc-scrollbar-track-color, hsla(var(--igc-gray-200), var(--igc-gray-a)))}:host ::-webkit-scrollbar-thumb{background:var(--igc-scrollbar-thumb-color, hsla(var(--igc-gray-400), var(--igc-gray-a)))}[hidden]{display:none !important}:host{font-family:var(--igc-body-2-font-family);font-weight:var(--igc-body-2-font-weight);font-size:var(--igc-body-2-font-size);font-style:var(--igc-body-2-font-style);letter-spacing:var(--igc-body-2-letter-spacing);text-transform:var(--igc-body-2-text-transform);line-height:var(--igc-body-2-line-height);margin-top:var(--igc-body-2-margin-top);margin-bottom:var(--igc-body-2-margin-bottom);display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start;-webkit-box-align:center;-ms-flex-align:center;align-items:center;width:100%;white-space:nowrap;position:relative;cursor:pointer;color:hsla(var(--igc-gray-800), var(--igc-gray-a));outline-style:none}:host(:hover),:host([active]){background:hsla(var(--igc-gray-200), var(--igc-gray-a))}:host([selected]){background:hsla(var(--igc-secondary-100), var(--igc-secondary-a));color:var(--igc-secondary-100-contrast)}:host([selected]:hover),:host([selected][active]){background:hsla(var(--igc-secondary-200), var(--igc-secondary-a));color:var(--igc-secondary-200-contrast)}:host([disabled]){color:hsla(var(--igc-gray-500), var(--igc-gray-a));cursor:default;pointer-events:none}::slotted(*){font:inherit}[part=content]{white-space:nowrap;-o-text-overflow:ellipsis;text-overflow:ellipsis;overflow:hidden;display:block;width:100%;-webkit-box-align:center;-ms-flex-align:center;align-items:center}[part=prefix],[part=suffix]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}[name=prefix]::slotted(*){-webkit-margin-end:calc(var(--igc-spacing-large)*2);margin-inline-end:calc(var(--igc-spacing-large)*2)}[name=suffix]::slotted(*){-webkit-margin-start:calc(var(--igc-spacing-large)*2);margin-inline-start:calc(var(--igc-spacing-large)*2)}`;\n"]}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import { css } from 'lit';
|
|
2
|
-
export const styles = css `:host{position:relative;-webkit-box-sizing:border-box;box-sizing:border-box;scrollbar-width:var(--scrolbar-size, 0.875rem);scrollbar-color:var(--igc-scrollbar-thumb-color, hsla(var(--igc-gray-400), var(--igc-gray-a))) var(--igc-scrollbar-track-color, hsla(var(--igc-gray-200), var(--igc-gray-a)))}:host *,:host *::before,:host *::after{-webkit-box-sizing:border-box;box-sizing:border-box}:host ::-webkit-scrollbar{width:var(--scrolbar-size, 0.875rem);height:var(--scrolbar-size, 0.875rem);background:var(--igc-scrollbar-track-color, hsla(var(--igc-gray-200), var(--igc-gray-a)))}:host ::-webkit-scrollbar-thumb{background:var(--igc-scrollbar-thumb-color, hsla(var(--igc-gray-400), var(--igc-gray-a)))}[hidden]{display:none !important}:host{display:-webkit-box;display:-ms-flexbox;display:flex;font-family:var(--igc-font-family)}[part=base]{border-radius:clamp(0rem,var(--igc-radius-factor)*.25rem,.25rem);overflow-y:auto;overflow-x:hidden;background:hsla(var(--igc-surface-500), var(--igc-surface-a));-webkit-box-shadow:var(--igc-elevation-8);box-shadow:var(--igc-elevation-8);min-width:7rem;padding:.5rem 0;z-index:10005}:host([size=small]) ::slotted(igc-dropdown-item){padding:var(--igc-spacing-small) calc(var(--igc-spacing-small)*3)}:host([size=small]) ::slotted(igc-dropdown-header){padding:var(--igc-spacing-small) calc(var(--igc-spacing-small)*2)}:host([size=medium]) ::slotted(igc-dropdown-item){padding:var(--igc-spacing-medium) calc(var(--igc-spacing-medium)*3)}:host([size=medium]) ::slotted(igc-dropdown-header){padding:var(--igc-spacing-medium) calc(var(--igc-spacing-medium)*2)}:host([size=large]) ::slotted(igc-dropdown-item){padding:var(--igc-spacing-large) calc(var(--igc-spacing-large)*3)}:host([size=large]) ::slotted(igc-dropdown-header){padding:var(--igc-spacing-large) calc(var(--igc-spacing-large)*2)}`;
|
|
2
|
+
export const styles = css `:host{position:relative;-webkit-box-sizing:border-box;box-sizing:border-box;scrollbar-width:var(--scrolbar-size, 0.875rem);scrollbar-color:var(--igc-scrollbar-thumb-color, hsla(var(--igc-gray-400), var(--igc-gray-a))) var(--igc-scrollbar-track-color, hsla(var(--igc-gray-200), var(--igc-gray-a)))}:host *,:host *::before,:host *::after{-webkit-box-sizing:border-box;box-sizing:border-box}:host ::-webkit-scrollbar{width:var(--scrolbar-size, 0.875rem);height:var(--scrolbar-size, 0.875rem);background:var(--igc-scrollbar-track-color, hsla(var(--igc-gray-200), var(--igc-gray-a)))}:host ::-webkit-scrollbar-thumb{background:var(--igc-scrollbar-thumb-color, hsla(var(--igc-gray-400), var(--igc-gray-a)))}[hidden]{display:none !important}:host{display:-webkit-box;display:-ms-flexbox;display:flex;font-family:var(--igc-font-family)}[part=base]{border-radius:clamp(0rem,var(--igc-radius-factor)*.25rem,.25rem);overflow-y:auto;overflow-x:hidden;background:hsla(var(--igc-surface-500), var(--igc-surface-a));-webkit-box-shadow:var(--igc-elevation-8);box-shadow:var(--igc-elevation-8);min-width:7rem;padding:.5rem 0;z-index:10005}:host([size=small]) ::slotted(igc-dropdown-item),:host([size=small]) ::slotted(igc-select-item){padding:var(--igc-spacing-small) calc(var(--igc-spacing-small)*3)}:host([size=small]) ::slotted(igc-dropdown-header){padding:var(--igc-spacing-small) calc(var(--igc-spacing-small)*2)}:host([size=medium]) ::slotted(igc-dropdown-item),:host([size=medium]) ::slotted(igc-select-item){padding:var(--igc-spacing-medium) calc(var(--igc-spacing-medium)*3)}:host([size=medium]) ::slotted(igc-dropdown-header){padding:var(--igc-spacing-medium) calc(var(--igc-spacing-medium)*2)}:host([size=large]) ::slotted(igc-dropdown-item),:host([size=large]) ::slotted(igc-select-item){padding:var(--igc-spacing-large) calc(var(--igc-spacing-large)*3)}:host([size=large]) ::slotted(igc-dropdown-header){padding:var(--igc-spacing-large) calc(var(--igc-spacing-large)*2)}`;
|
|
3
3
|
//# sourceMappingURL=dropdown.base.css.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dropdown.base.css.js","sourceRoot":"","sources":["../../../../../src/components/dropdown/themes/light/dropdown.base.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,
|
|
1
|
+
{"version":3,"file":"dropdown.base.css.js","sourceRoot":"","sources":["../../../../../src/components/dropdown/themes/light/dropdown.base.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,g7DAAg7D,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`:host{position:relative;-webkit-box-sizing:border-box;box-sizing:border-box;scrollbar-width:var(--scrolbar-size, 0.875rem);scrollbar-color:var(--igc-scrollbar-thumb-color, hsla(var(--igc-gray-400), var(--igc-gray-a))) var(--igc-scrollbar-track-color, hsla(var(--igc-gray-200), var(--igc-gray-a)))}:host *,:host *::before,:host *::after{-webkit-box-sizing:border-box;box-sizing:border-box}:host ::-webkit-scrollbar{width:var(--scrolbar-size, 0.875rem);height:var(--scrolbar-size, 0.875rem);background:var(--igc-scrollbar-track-color, hsla(var(--igc-gray-200), var(--igc-gray-a)))}:host ::-webkit-scrollbar-thumb{background:var(--igc-scrollbar-thumb-color, hsla(var(--igc-gray-400), var(--igc-gray-a)))}[hidden]{display:none !important}:host{display:-webkit-box;display:-ms-flexbox;display:flex;font-family:var(--igc-font-family)}[part=base]{border-radius:clamp(0rem,var(--igc-radius-factor)*.25rem,.25rem);overflow-y:auto;overflow-x:hidden;background:hsla(var(--igc-surface-500), var(--igc-surface-a));-webkit-box-shadow:var(--igc-elevation-8);box-shadow:var(--igc-elevation-8);min-width:7rem;padding:.5rem 0;z-index:10005}:host([size=small]) ::slotted(igc-dropdown-item),:host([size=small]) ::slotted(igc-select-item){padding:var(--igc-spacing-small) calc(var(--igc-spacing-small)*3)}:host([size=small]) ::slotted(igc-dropdown-header){padding:var(--igc-spacing-small) calc(var(--igc-spacing-small)*2)}:host([size=medium]) ::slotted(igc-dropdown-item),:host([size=medium]) ::slotted(igc-select-item){padding:var(--igc-spacing-medium) calc(var(--igc-spacing-medium)*3)}:host([size=medium]) ::slotted(igc-dropdown-header){padding:var(--igc-spacing-medium) calc(var(--igc-spacing-medium)*2)}:host([size=large]) ::slotted(igc-dropdown-item),:host([size=large]) ::slotted(igc-select-item){padding:var(--igc-spacing-large) calc(var(--igc-spacing-large)*3)}:host([size=large]) ::slotted(igc-dropdown-header){padding:var(--igc-spacing-large) calc(var(--igc-spacing-large)*2)}`;\n"]}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import { css } from 'lit';
|
|
2
|
-
export const styles = css `:host([size=small]) ::slotted(igc-dropdown-item),:host([size=small]) ::slotted(igc-dropdown-header){padding:var(--igc-spacing-small)}:host([size=medium]) ::slotted(igc-dropdown-item),:host([size=medium]) ::slotted(igc-dropdown-header){padding:var(--igc-spacing-medium)}:host([size=large]) ::slotted(igc-dropdown-item),:host([size=large]) ::slotted(igc-dropdown-header){padding:var(--igc-spacing-large)}[part=base]{border-radius:clamp(0rem,var(--igc-radius-factor)*.125rem,.125rem);-webkit-box-shadow:var(--igc-elevation-4);box-shadow:var(--igc-elevation-4);padding:0}`;
|
|
2
|
+
export const styles = css `:host([size=small]) ::slotted(igc-dropdown-item),:host([size=small]) ::slotted(igc-select-item),:host([size=small]) ::slotted(igc-dropdown-header){padding:var(--igc-spacing-small)}:host([size=medium]) ::slotted(igc-dropdown-item),:host([size=medium]) ::slotted(igc-select-item),:host([size=medium]) ::slotted(igc-dropdown-header){padding:var(--igc-spacing-medium)}:host([size=large]) ::slotted(igc-dropdown-item),:host([size=large]) ::slotted(igc-select-item),:host([size=large]) ::slotted(igc-dropdown-header){padding:var(--igc-spacing-large)}[part=base]{border-radius:clamp(0rem,var(--igc-radius-factor)*.125rem,.125rem);-webkit-box-shadow:var(--igc-elevation-4);box-shadow:var(--igc-elevation-4);padding:0}`;
|
|
3
3
|
//# sourceMappingURL=dropdown.fluent.css.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dropdown.fluent.css.js","sourceRoot":"","sources":["../../../../../src/components/dropdown/themes/light/dropdown.fluent.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,
|
|
1
|
+
{"version":3,"file":"dropdown.fluent.css.js","sourceRoot":"","sources":["../../../../../src/components/dropdown/themes/light/dropdown.fluent.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,usBAAusB,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`:host([size=small]) ::slotted(igc-dropdown-item),:host([size=small]) ::slotted(igc-select-item),:host([size=small]) ::slotted(igc-dropdown-header){padding:var(--igc-spacing-small)}:host([size=medium]) ::slotted(igc-dropdown-item),:host([size=medium]) ::slotted(igc-select-item),:host([size=medium]) ::slotted(igc-dropdown-header){padding:var(--igc-spacing-medium)}:host([size=large]) ::slotted(igc-dropdown-item),:host([size=large]) ::slotted(igc-select-item),:host([size=large]) ::slotted(igc-dropdown-header){padding:var(--igc-spacing-large)}[part=base]{border-radius:clamp(0rem,var(--igc-radius-factor)*.125rem,.125rem);-webkit-box-shadow:var(--igc-elevation-4);box-shadow:var(--igc-elevation-4);padding:0}`;\n"]}
|
package/components/form/form.js
CHANGED
|
@@ -25,6 +25,7 @@ export default class IgcFormComponent extends EventEmitterMixin(LitElement) {
|
|
|
25
25
|
'igc-mask-input',
|
|
26
26
|
'textarea',
|
|
27
27
|
'igc-rating',
|
|
28
|
+
'igc-select',
|
|
28
29
|
'igc-date-time-input',
|
|
29
30
|
];
|
|
30
31
|
this._controlsThatSubmit = [
|
|
@@ -117,13 +118,13 @@ export default class IgcFormComponent extends EventEmitterMixin(LitElement) {
|
|
|
117
118
|
element.reportValidity() === false);
|
|
118
119
|
}
|
|
119
120
|
handleClick(event) {
|
|
120
|
-
var _a;
|
|
121
|
+
var _a, _b;
|
|
121
122
|
const targetElement = event.target;
|
|
122
123
|
if (this._controlsThatSubmit.includes(targetElement.tagName.toLowerCase()) &&
|
|
123
|
-
targetElement.type.toLowerCase() === 'submit') {
|
|
124
|
+
((_a = targetElement.type) === null || _a === void 0 ? void 0 : _a.toLowerCase()) === 'submit') {
|
|
124
125
|
this.submit();
|
|
125
126
|
}
|
|
126
|
-
else if (((
|
|
127
|
+
else if (((_b = targetElement.type) === null || _b === void 0 ? void 0 : _b.toLowerCase()) === 'reset') {
|
|
127
128
|
this.reset();
|
|
128
129
|
}
|
|
129
130
|
return true;
|