@quartzds/core 1.0.0-beta.123 → 1.0.0-beta.124
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 +28 -0
- package/components/index.js +1 -1
- package/components/{p-CVuTVnQo.js → p-B6ToH-uM.js} +4 -4
- package/components/p-B6ToH-uM.js.map +1 -0
- package/components/{p-CbY4T0d2.js → p-BGAgQ6J5.js} +3 -3
- package/components/{p-CbY4T0d2.js.map → p-BGAgQ6J5.js.map} +1 -1
- package/components/{p-BZlKeCFb.js → p-BPNu4xuI.js} +9 -9
- package/components/{p-BZlKeCFb.js.map → p-BPNu4xuI.js.map} +1 -1
- package/components/{p-BoSYRCNp.js → p-BceRDckL.js} +4 -4
- package/components/{p-BoSYRCNp.js.map → p-BceRDckL.js.map} +1 -1
- package/components/{p-BalM52S_.js → p-Bm_hrsjc.js} +6 -3
- package/components/p-Bm_hrsjc.js.map +1 -0
- package/components/{p-C93kOEAe.js → p-BxrR19WD.js} +5 -5
- package/components/{p-C93kOEAe.js.map → p-BxrR19WD.js.map} +1 -1
- package/components/{p-CowZ-pDD.js → p-CsIsG3ra.js} +75 -39
- package/components/p-CsIsG3ra.js.map +1 -0
- package/components/{p-BvRd7jA2.js → p-D5u-bDNf.js} +6 -6
- package/components/{p-BvRd7jA2.js.map → p-D5u-bDNf.js.map} +1 -1
- package/components/{p-B7s906mS.js → p-DVXvtEPn.js} +6 -6
- package/components/{p-B7s906mS.js.map → p-DVXvtEPn.js.map} +1 -1
- package/components/{p-yb0Kv4Y6.js → p-De7cAKF1.js} +24 -9
- package/components/p-De7cAKF1.js.map +1 -0
- package/components/{p-C9R8N06B.js → p-EjoVBa5a.js} +3 -3
- package/components/{p-C9R8N06B.js.map → p-EjoVBa5a.js.map} +1 -1
- package/components/{p-CKp062X8.js → p-Vtb6GsBy.js} +6 -6
- package/components/{p-CKp062X8.js.map → p-Vtb6GsBy.js.map} +1 -1
- package/components/qds-action-item.js +3 -3
- package/components/qds-avatar-media.js +1 -1
- package/components/qds-breadcrumb-item.js +11 -6
- package/components/qds-breadcrumb-item.js.map +1 -1
- package/components/qds-button.js +9 -9
- package/components/qds-button.js.map +1 -1
- package/components/qds-checkbox.js +1 -1
- package/components/qds-chip.js +4 -4
- package/components/qds-dialog.js +5 -5
- package/components/qds-dialog.js.map +1 -1
- package/components/qds-divider.js +1 -1
- package/components/qds-dropdown.js +1 -1
- package/components/qds-form-message.js +23 -17
- package/components/qds-form-message.js.map +1 -1
- package/components/qds-icon-button.js +1 -1
- package/components/qds-icon-tab.js +4 -4
- package/components/qds-icon.js +1 -1
- package/components/qds-inline-link.js +5 -5
- package/components/qds-inline-link.js.map +1 -1
- package/components/qds-input.js +4 -4
- package/components/qds-label.js +2 -2
- package/components/qds-list-item.js +16 -13
- package/components/qds-list-item.js.map +1 -1
- package/components/qds-loader.js +1 -1
- package/components/qds-menu-item.js +38 -12
- package/components/qds-menu-item.js.map +1 -1
- package/components/qds-mini-button.js +1 -1
- package/components/qds-progress-bar.js +1 -1
- package/components/qds-radio.js +1 -1
- package/components/qds-select.js +3 -3
- package/components/qds-standalone-link.js +4 -4
- package/components/qds-switch.js +5 -5
- package/components/qds-tab.js +7 -7
- package/components/qds-tabbar.js +59 -38
- package/components/qds-tabbar.js.map +1 -1
- package/components/qds-table-cell.js +2 -2
- package/components/qds-table-head-cell.js +2 -2
- package/components/qds-table-row.js +1 -1
- package/components/qds-table.js +1 -1
- package/components/qds-tag.js +1 -1
- package/components/qds-textarea.js +3 -3
- package/components/qds-title.js +1 -1
- package/components/qds-tooltip.js +1 -1
- package/dist/cjs/{helpers-Qs3cpKiI.js → helpers-CPSgo4Ef.js} +8 -2
- package/dist/cjs/{helpers-Qs3cpKiI.js.map → helpers-CPSgo4Ef.js.map} +1 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/qds-action-item.cjs.entry.js +1 -1
- package/dist/cjs/qds-avatar-media.qds-checkbox.qds-radio.entry.cjs.js.map +1 -1
- package/dist/cjs/qds-avatar-media_3.cjs.entry.js +72 -36
- package/dist/cjs/qds-breadcrumb-item.cjs.entry.js +9 -4
- package/dist/cjs/qds-breadcrumb-item.entry.cjs.js.map +1 -1
- package/dist/cjs/qds-button.cjs.entry.js +7 -7
- package/dist/cjs/qds-button.entry.cjs.js.map +1 -1
- package/dist/cjs/qds-chip.cjs.entry.js +1 -1
- package/dist/cjs/qds-dialog.cjs.entry.js +2 -2
- package/dist/cjs/qds-dialog.entry.cjs.js.map +1 -1
- package/dist/cjs/qds-divider.qds-icon-button.entry.cjs.js.map +1 -1
- package/dist/cjs/qds-divider_2.cjs.entry.js +4 -4
- package/dist/cjs/qds-dropdown.cjs.entry.js +20 -6
- package/dist/cjs/qds-dropdown.entry.cjs.js.map +1 -1
- package/dist/cjs/qds-form-message.cjs.entry.js +26 -16
- package/dist/cjs/qds-form-message.entry.cjs.js.map +1 -1
- package/dist/cjs/qds-icon-tab.cjs.entry.js +1 -1
- package/dist/cjs/qds-icon.cjs.entry.js +1 -1
- package/dist/cjs/qds-inline-link.cjs.entry.js +4 -4
- package/dist/cjs/qds-inline-link.entry.cjs.js.map +1 -1
- package/dist/cjs/qds-input.cjs.entry.js +2 -2
- package/dist/cjs/qds-label.cjs.entry.js +1 -1
- package/dist/cjs/qds-list-item.cjs.entry.js +8 -5
- package/dist/cjs/qds-list-item.entry.cjs.js.map +1 -1
- package/dist/cjs/qds-menu-item.cjs.entry.js +34 -8
- package/dist/cjs/qds-menu-item.entry.cjs.js.map +1 -1
- package/dist/cjs/qds-mini-button.cjs.entry.js +2 -2
- package/dist/cjs/qds-progress-bar.cjs.entry.js +1 -1
- package/dist/cjs/qds-select.cjs.entry.js +2 -2
- package/dist/cjs/qds-standalone-link.cjs.entry.js +3 -3
- package/dist/cjs/qds-switch.cjs.entry.js +4 -4
- package/dist/cjs/qds-tab.cjs.entry.js +4 -4
- package/dist/cjs/qds-tabbar.cjs.entry.js +57 -33
- package/dist/cjs/qds-tabbar.entry.cjs.js.map +1 -1
- package/dist/cjs/qds-table-cell.cjs.entry.js +2 -2
- package/dist/cjs/qds-table-head-cell.cjs.entry.js +2 -2
- package/dist/cjs/qds-table-row.cjs.entry.js +1 -1
- package/dist/cjs/qds-table.cjs.entry.js +1 -1
- package/dist/cjs/qds-tag.cjs.entry.js +3 -3
- package/dist/cjs/qds-textarea.cjs.entry.js +3 -3
- package/dist/cjs/qds-title.cjs.entry.js +3 -3
- package/dist/cjs/qds-tooltip.cjs.entry.js +1 -1
- package/dist/cjs/qds.cjs.js +1 -1
- package/dist/custom-elements.json +224 -70
- package/dist/docs.json +48 -6
- package/dist/esm/{helpers-Fe2AA6uo.js → helpers-JWnSavo8.js} +6 -3
- package/dist/esm/{helpers-Fe2AA6uo.js.map → helpers-JWnSavo8.js.map} +1 -1
- package/dist/esm/loader.js +1 -1
- package/dist/esm/qds-action-item.entry.js +1 -1
- package/dist/esm/qds-avatar-media.qds-checkbox.qds-radio.entry.js.map +1 -1
- package/dist/esm/qds-avatar-media_3.entry.js +72 -36
- package/dist/esm/qds-breadcrumb-item.entry.js +9 -4
- package/dist/esm/qds-breadcrumb-item.entry.js.map +1 -1
- package/dist/esm/qds-button.entry.js +7 -7
- package/dist/esm/qds-button.entry.js.map +1 -1
- package/dist/esm/qds-chip.entry.js +1 -1
- package/dist/esm/qds-dialog.entry.js +2 -2
- package/dist/esm/qds-dialog.entry.js.map +1 -1
- package/dist/esm/qds-divider.qds-icon-button.entry.js.map +1 -1
- package/dist/esm/qds-divider_2.entry.js +4 -4
- package/dist/esm/qds-dropdown.entry.js +20 -6
- package/dist/esm/qds-dropdown.entry.js.map +1 -1
- package/dist/esm/qds-form-message.entry.js +26 -16
- package/dist/esm/qds-form-message.entry.js.map +1 -1
- package/dist/esm/qds-icon-tab.entry.js +1 -1
- package/dist/esm/qds-icon.entry.js +1 -1
- package/dist/esm/qds-inline-link.entry.js +4 -4
- package/dist/esm/qds-inline-link.entry.js.map +1 -1
- package/dist/esm/qds-input.entry.js +2 -2
- package/dist/esm/qds-label.entry.js +1 -1
- package/dist/esm/qds-list-item.entry.js +8 -5
- package/dist/esm/qds-list-item.entry.js.map +1 -1
- package/dist/esm/qds-menu-item.entry.js +34 -8
- package/dist/esm/qds-menu-item.entry.js.map +1 -1
- package/dist/esm/qds-mini-button.entry.js +2 -2
- package/dist/esm/qds-progress-bar.entry.js +1 -1
- package/dist/esm/qds-select.entry.js +2 -2
- package/dist/esm/qds-standalone-link.entry.js +3 -3
- package/dist/esm/qds-switch.entry.js +4 -4
- package/dist/esm/qds-tab.entry.js +4 -4
- package/dist/esm/qds-tabbar.entry.js +57 -33
- package/dist/esm/qds-tabbar.entry.js.map +1 -1
- package/dist/esm/qds-table-cell.entry.js +2 -2
- package/dist/esm/qds-table-head-cell.entry.js +2 -2
- package/dist/esm/qds-table-row.entry.js +1 -1
- package/dist/esm/qds-table.entry.js +1 -1
- package/dist/esm/qds-tag.entry.js +3 -3
- package/dist/esm/qds-textarea.entry.js +3 -3
- package/dist/esm/qds-title.entry.js +3 -3
- package/dist/esm/qds-tooltip.entry.js +1 -1
- package/dist/esm/qds.js +1 -1
- package/dist/types/components/checkbox/checkbox.d.ts +9 -9
- package/dist/types/components/dropdown/dropdown.d.ts +1 -0
- package/dist/types/components/form-message/form-message.d.ts +2 -0
- package/dist/types/components/menu-item/menu-item.d.ts +1 -0
- package/dist/types/components/tabbar/tabbar.d.ts +2 -0
- package/dist/types/components.d.ts +3 -2
- package/dist/types/helpers.d.ts +6 -1
- package/dist/vscode.html-custom-data.json +1 -1
- package/hydrate/index.js +305 -183
- package/hydrate/index.mjs +305 -183
- package/package.json +1 -1
- package/components/p-BalM52S_.js.map +0 -1
- package/components/p-CVuTVnQo.js.map +0 -1
- package/components/p-CowZ-pDD.js.map +0 -1
- package/components/p-yb0Kv4Y6.js.map +0 -1
package/components/qds-label.js
CHANGED
|
@@ -4,8 +4,8 @@
|
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
6
|
import { p as proxyCustomElement, H, d as readTask, h } from './p-D2489VzR.js';
|
|
7
|
-
import { a as isEllipsisActive } from './p-
|
|
8
|
-
import { d as defineCustomElement$2 } from './p-
|
|
7
|
+
import { a as isEllipsisActive } from './p-Bm_hrsjc.js';
|
|
8
|
+
import { d as defineCustomElement$2 } from './p-BGAgQ6J5.js';
|
|
9
9
|
|
|
10
10
|
const labelCss = ":host([hidden]){display:none!important}:host{display:inline-block}.qds-label{align-items:center;box-sizing:border-box;color:var(--qds-theme-control-text-standard);display:inline-flex;gap:var(--qds-text-icon-gap);width:100%}.qds-label:focus-visible{border-radius:var(--qds-focus-border-radius);outline:var(--qds-focus-border-width) solid var(--qds-theme-focus-border);outline-offset:var(--qds-focus-border-offset)}.qds-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.qds-required{color:var(--qds-theme-feedback-field-required);-webkit-user-select:none;user-select:none}[data-size=small][data-importance=standard]{font:var(--qds-form-small-text)}[data-size=small][data-importance=emphasized] .qds-text{font:var(--qds-form-small-text-emphasized)}.qds-inline[data-size=small]{min-height:var(--qds-control-small-height)}.qds-icon[data-size=small]{height:var(--qds-form-small-icon-size);min-width:var(--qds-form-small-icon-size);width:var(--qds-form-small-icon-size)}[data-size=standard][data-importance=standard]{font:var(--qds-form-standard-text)}[data-size=standard][data-importance=emphasized] .qds-text{font:var(--qds-form-standard-text-emphasized)}.qds-inline[data-size=standard]{min-height:var(--qds-control-standard-height)}.qds-icon[data-size=standard]{height:var(--qds-form-standard-icon-size);min-width:var(--qds-form-standard-icon-size);width:var(--qds-form-standard-icon-size)}[data-size=large][data-importance=standard]{font:var(--qds-form-large-text)}[data-size=large][data-importance=emphasized] .qds-text{font:var(--qds-form-large-text-emphasized)}.qds-inline[data-size=large]{min-height:var(--qds-control-large-height)}.qds-icon[data-size=large]{height:var(--qds-form-large-icon-size);min-width:var(--qds-form-large-icon-size);width:var(--qds-form-large-icon-size)}";
|
|
11
11
|
|
|
@@ -4,17 +4,17 @@
|
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
6
|
import { p as proxyCustomElement, H, c as createEvent, d as readTask, h, e as Host } from './p-D2489VzR.js';
|
|
7
|
-
import { p as pickFocusEventAttributes, i as invariant, a as isEllipsisActive } from './p-
|
|
8
|
-
import { d as defineCustomElement$b } from './p-
|
|
7
|
+
import { p as pickFocusEventAttributes, i as invariant, a as isEllipsisActive } from './p-Bm_hrsjc.js';
|
|
8
|
+
import { d as defineCustomElement$b } from './p-BceRDckL.js';
|
|
9
9
|
import { d as defineCustomElement$a } from './p-XP2CY_fo.js';
|
|
10
10
|
import { d as defineCustomElement$9 } from './p-U2Q0vF-d.js';
|
|
11
|
-
import { d as defineCustomElement$8 } from './p-
|
|
12
|
-
import { d as defineCustomElement$7 } from './p-
|
|
13
|
-
import { d as defineCustomElement$6 } from './p-
|
|
14
|
-
import { d as defineCustomElement$5 } from './p-
|
|
15
|
-
import { d as defineCustomElement$4 } from './p-
|
|
16
|
-
import { d as defineCustomElement$3 } from './p-
|
|
17
|
-
import { d as defineCustomElement$2 } from './p-
|
|
11
|
+
import { d as defineCustomElement$8 } from './p-CsIsG3ra.js';
|
|
12
|
+
import { d as defineCustomElement$7 } from './p-B6ToH-uM.js';
|
|
13
|
+
import { d as defineCustomElement$6 } from './p-De7cAKF1.js';
|
|
14
|
+
import { d as defineCustomElement$5 } from './p-EjoVBa5a.js';
|
|
15
|
+
import { d as defineCustomElement$4 } from './p-DVXvtEPn.js';
|
|
16
|
+
import { d as defineCustomElement$3 } from './p-BPNu4xuI.js';
|
|
17
|
+
import { d as defineCustomElement$2 } from './p-BGAgQ6J5.js';
|
|
18
18
|
|
|
19
19
|
const listItemCss = ":host([hidden]){display:none!important}:host{display:block}.qds-disabled{opacity:var(--qds-theme-disabled);pointer-events:none}.qds-indented-content,.qds-list-item{align-items:center;border-radius:var(--qds-control-border-radius);box-sizing:border-box}.qds-indented-content{align-self:stretch;cursor:default;display:flex;flex:1 0}.qds-destination{transform:scaleX(var(--qds-direction-factor,1))}.qds-icon,.qds-main-icon{color:var(--qds-theme-text-standard)}.qds-picture{flex-shrink:0}.qds-texts{display:flex;flex:1 0;flex-direction:column;justify-items:center;padding:0;position:relative}.qds-texts:focus-visible{border-radius:var(--qds-control-border-radius);box-shadow:0 0 0 var(--qds-focus-heavy-border-width) var(--qds-theme-focus-border);outline:var(--qds-theme-focus-border-contrast) solid var(--qds-focus-light-border-width);outline-offset:0}.qds-input{-webkit-appearance:none;appearance:none;background:none;border:none;border-radius:var(--qds-control-border-radius);inset:0;margin:0;outline:none;position:absolute}.qds-title{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.qds-title,.qds-tooltip-title{color:var(--qds-theme-title)}.qds-subtitle{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:5;overflow:hidden}.qds-subtitle,.qds-tooltip-subtitle{color:var(--qds-theme-subtitle)}.qds-kicker{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1;overflow:hidden}.qds-kicker,.qds-tooltip-kicker{color:var(--qds-theme-kicker)}.qds-draggable{cursor:grab}.qds-cursor-pointer{cursor:pointer}[data-size=small] .qds-indented-content{gap:var(--qds-list-item-small-gap-internal);min-height:var(--qds-list-item-small-height);padding:var(--qds-list-item-small-padding-vertical) var(--qds-list-item-small-padding-horizontal)}[data-size=small] .qds-icon{height:var(--qds-control-small-icon-size);width:var(--qds-control-small-icon-size)}[data-size=small] .qds-main-icon{height:var(--qds-list-item-small-icon-size);width:var(--qds-list-item-small-icon-size)}[data-size=small] .qds-texts{gap:var(--qds-list-item-small-titles-gap)}[data-size=small] .qds-kicker,[data-size=small] .qds-tooltip-kicker{font:var(--qds-list-item-small-kicker)}[data-size=small] .qds-title,[data-size=small] .qds-tooltip-title{font:var(--qds-list-item-small-title)}[data-size=small] .qds-subtitle,[data-size=small] .qds-tooltip-subtitle{font:var(--qds-list-item-small-subtitle)}[data-size=small] .qds-picture{height:var(--qds-list-item-small-picture-size);width:var(--qds-list-item-small-picture-size)}[data-size=standard] .qds-indented-content{gap:var(--qds-list-item-standard-gap-internal);min-height:var(--qds-list-item-standard-height);padding:var(--qds-list-item-standard-padding-vertical) var(--qds-list-item-standard-padding-horizontal)}[data-size=standard] .qds-icon{height:var(--qds-control-standard-icon-size);width:var(--qds-control-standard-icon-size)}[data-size=standard] .qds-main-icon{height:var(--qds-list-item-standard-icon-size);width:var(--qds-list-item-standard-icon-size)}[data-size=standard] .qds-texts{gap:var(--qds-list-item-standard-titles-gap)}[data-size=standard] .qds-kicker,[data-size=standard] .qds-tooltip-kicker{font:var(--qds-list-item-standard-kicker)}[data-size=standard] .qds-title,[data-size=standard] .qds-tooltip-title{font:var(--qds-list-item-standard-title)}[data-size=standard] .qds-subtitle,[data-size=standard] .qds-tooltip-subtitle{font:var(--qds-list-item-standard-subtitle)}[data-size=standard] .qds-picture{height:var(--qds-list-item-standard-picture-size);width:var(--qds-list-item-standard-picture-size)}[data-size=large] .qds-indented-content{gap:var(--qds-list-item-large-gap-internal);min-height:var(--qds-list-item-large-height);padding:var(--qds-list-item-large-padding-vertical) var(--qds-list-item-large-padding-horizontal)}[data-size=large] .qds-icon{height:var(--qds-control-large-icon-size);width:var(--qds-control-large-icon-size)}[data-size=large] .qds-main-icon{height:var(--qds-list-item-large-icon-size);width:var(--qds-list-item-large-icon-size)}[data-size=large] .qds-texts{gap:var(--qds-list-item-large-titles-gap)}[data-size=large] .qds-kicker,[data-size=large] .qds-tooltip-kicker{font:var(--qds-list-item-large-kicker)}[data-size=large] .qds-title,[data-size=large] .qds-tooltip-title{font:var(--qds-list-item-large-title)}[data-size=large] .qds-subtitle,[data-size=large] .qds-tooltip-subtitle{font:var(--qds-list-item-large-subtitle)}[data-size=large] .qds-picture{height:var(--qds-list-item-large-picture-size);width:var(--qds-list-item-large-picture-size)}.qds-list-item{display:block}.qds-list-item:hover:not(.qds-static){background-color:var(--qds-theme-interactive-background-hover)}.qds-list-item:active:not(.qds-static),.qds-list-item:not(.qds-has-submenu):not(.qds-static):active{background-color:var(--qds-theme-interactive-background-pressed)}.qds-selected.qds-list-item{background-color:var(--qds-theme-interactive-background-selected)}.qds-selected.qds-list-item:hover{background-color:var(--qds-theme-interactive-background-selected-hover)}.qds-selected.qds-list-item:active{background-color:var(\n --qds-theme-interactive-background-selected-pressed\n )}.qds-selected[data-size=small] .qds-title{font:var(--qds-list-item-small-title-emphasized)}.qds-selected[data-size=standard] .qds-title{font:var(--qds-list-item-standard-title-emphasized)}.qds-selected[data-size=large] .qds-title{font:var(--qds-list-item-large-title-emphasized)}";
|
|
20
20
|
|
|
@@ -38,6 +38,9 @@ var __classPrivateFieldSet = (undefined && undefined.__classPrivateFieldSet) ||
|
|
|
38
38
|
return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
|
|
39
39
|
};
|
|
40
40
|
var _ListItem_instances, _ListItem_roText, _ListItem_roSubTitle, _ListItem_text, _ListItem_subtitle, _ListItem_iconButton, _ListItem_checkbox, _ListItem_radio, _ListItem_computedDestination_get, _ListItem_computedIndeterminate_get, _ListItem_computedListAction_get, _ListItem_computedSelected_get, _ListItem_computedSize_get, _ListItem_hasSubmenu_get, _ListItem_onBlur, _ListItem_onFocus, _ListItem_onCheck, _ListItem_onSelect, _ListItem_divTitleRef, _ListItem_divSubtitleRef, _ListItem_textTooltipRef, _ListItem_iconButtonRef, _ListItem_onSlotChange, _ListItem_checkboxRef, _ListItem_radioRef;
|
|
41
|
+
const stopImmediatePropagation = (event) => {
|
|
42
|
+
event.stopImmediatePropagation();
|
|
43
|
+
};
|
|
41
44
|
const ListItem = /*@__PURE__*/ proxyCustomElement(class ListItem extends H {
|
|
42
45
|
constructor(registerHost) {
|
|
43
46
|
super();
|
|
@@ -232,18 +235,18 @@ const ListItem = /*@__PURE__*/ proxyCustomElement(class ListItem extends H {
|
|
|
232
235
|
this.subtitleChanged();
|
|
233
236
|
}
|
|
234
237
|
render() {
|
|
235
|
-
return (h(Host, { key: '
|
|
238
|
+
return (h(Host, { key: '5a3a3df94d196e2c3740c9a7cd47b9cd28f6259c' }, h("div", { key: '19458ba3e18483d63c3e1d767198757c40f8af1d', class: {
|
|
236
239
|
'qds-list-item': true,
|
|
237
240
|
'qds-has-submenu': __classPrivateFieldGet(this, _ListItem_instances, "a", _ListItem_hasSubmenu_get),
|
|
238
241
|
'qds-disabled': this.disabled,
|
|
239
242
|
'qds-selected': __classPrivateFieldGet(this, _ListItem_instances, "a", _ListItem_computedSelected_get),
|
|
240
243
|
'qds-static': __classPrivateFieldGet(this, _ListItem_instances, "a", _ListItem_computedListAction_get) === 'none',
|
|
241
|
-
}, "data-size": __classPrivateFieldGet(this, _ListItem_instances, "a", _ListItem_computedSize_get) }, h("div", { key: '
|
|
244
|
+
}, "data-size": __classPrivateFieldGet(this, _ListItem_instances, "a", _ListItem_computedSize_get) }, h("div", { key: '330677408fefe3434033699287497cdbb0229de8', class: {
|
|
242
245
|
'qds-indented-content': true,
|
|
243
246
|
'qds-cursor-pointer': !this.disabled && __classPrivateFieldGet(this, _ListItem_instances, "a", _ListItem_computedListAction_get) !== 'none',
|
|
244
|
-
} }, __classPrivateFieldGet(this, _ListItem_instances, "a", _ListItem_computedListAction_get) === 'multiselect' && (h("qds-checkbox", { key: '
|
|
247
|
+
} }, __classPrivateFieldGet(this, _ListItem_instances, "a", _ListItem_computedListAction_get) === 'multiselect' && (h("qds-checkbox", { key: '6951ebdb2c5d31b045e867c08f8f7a59b477d7a3', checked: this.selected, indeterminate: this.indeterminate, size: this.size, text: this.text, disabled: this.disabled, checkboxOnly: true, onQdsChange: stopImmediatePropagation, ref: __classPrivateFieldGet(this, _ListItem_checkboxRef, "f") })), __classPrivateFieldGet(this, _ListItem_instances, "a", _ListItem_computedListAction_get) === 'radio' && (h("qds-radio", { key: 'afe26df255406172e85866f9f8ad0c117dd7c80d', checked: this.selected, size: this.size, onQdsChange: __classPrivateFieldGet(this, _ListItem_onSelect, "f"), disabled: this.disabled, "aria-label": this.text, ref: __classPrivateFieldGet(this, _ListItem_radioRef, "f") })), this.host.draggable && (h("qds-icon", { key: 'f5398339399b1b5ed40eb99fddfd4da70e46cc06', class: "qds-icon qds-list-action qds-draggable", library: "core", name: "draggable" })), this.imageSrc !== undefined && this.imageSrc !== '' && (h("img", { key: '92330554b0bac82bb1830518f646fbc07494028f', class: "qds-picture", src: this.imageSrc, alt: "" })), this.iconName !== undefined && this.iconName !== '' && (h("qds-icon", { key: '59ec62d45dd9f0970435f33492625f78dbf5917f', class: "qds-main-icon", library: this.iconLibrary, name: this.iconName })), this.avatarSrc !== undefined && this.avatarSrc !== '' && (h("qds-avatar-media", { key: '48638dc5625c1b452cef3425aa154809f9db119b', class: "qds-picture", src: this.avatarSrc })), h("div", { key: '77a1f8424be02a7d363edc66db61ad3b55b3b29b', class: "qds-texts", role: __classPrivateFieldGet(this, _ListItem_instances, "a", _ListItem_computedListAction_get) === 'select' ? 'option' : undefined, tabIndex: __classPrivateFieldGet(this, _ListItem_instances, "a", _ListItem_computedListAction_get) === 'select' && !this.disabled
|
|
245
248
|
? 0
|
|
246
|
-
: undefined, onFocus: __classPrivateFieldGet(this, _ListItem_onFocus, "f"), onBlur: __classPrivateFieldGet(this, _ListItem_onBlur, "f") }, this.kicker !== undefined && this.kicker !== '' && (h("div", { key: '
|
|
249
|
+
: undefined, onFocus: __classPrivateFieldGet(this, _ListItem_onFocus, "f"), onBlur: __classPrivateFieldGet(this, _ListItem_onBlur, "f") }, this.kicker !== undefined && this.kicker !== '' && (h("div", { key: 'bd286572a596d6834deb37c78355fd0c513b507b', class: "qds-kicker" }, this.kicker)), h("div", { key: 'e47ad0f2262a6b703ad60910ecda70f9055a99cd', class: "qds-title", ref: __classPrivateFieldGet(this, _ListItem_divTitleRef, "f") }, this.text), this.subtitle !== undefined && this.subtitle !== '' && (h("div", { key: '454e29db383d4d42388302c2a0c2e3e829110d69', class: "qds-subtitle", ref: __classPrivateFieldGet(this, _ListItem_divSubtitleRef, "f") }, this.subtitle))), this.badge !== undefined && this.badge !== '' && (h("qds-badge-counter", { key: '954a084ce37eb83a184e21b34f04a552384d113a', size: __classPrivateFieldGet(this, _ListItem_instances, "a", _ListItem_computedSize_get), strokeRing: true, value: this.badge, description: this.badgeDescription })), __classPrivateFieldGet(this, _ListItem_instances, "a", _ListItem_hasSubmenu_get) && (h("qds-icon-button", { key: 'ee6d36f38f7f2503dfbbf59add9dd381ce9634d4', iconName: "dots-3-vertical", importance: "subdued", "aria-label": "more actions", disabled: this.disabled, ref: __classPrivateFieldGet(this, _ListItem_iconButtonRef, "f") })), __classPrivateFieldGet(this, _ListItem_instances, "a", _ListItem_computedDestination_get) !== undefined && (h("qds-icon", { key: '07065d6e8cb830d7df88fa2222418957a352f36a', class: "qds-icon qds-destination", library: "core", name: __classPrivateFieldGet(this, _ListItem_instances, "a", _ListItem_computedDestination_get) }))), __classPrivateFieldGet(this, _ListItem_instances, "a", _ListItem_hasSubmenu_get) && (h("qds-dropdown", { key: '89fd9526aabb5d3d51252b767abf4b61cfad3699', class: "qds-accessory qds-related", placement: "right-start", target: __classPrivateFieldGet(this, _ListItem_iconButtonRef, "f"), role: "menu" }, h("slot", { key: '8543f5c404208d1a8e2e2e7b7504fb212caef8f1', onSlotchange: __classPrivateFieldGet(this, _ListItem_onSlotChange, "f") }))), this.showDivider && h("qds-divider", { key: '147261b3b694ab5fc53cde8f92bf2d4bf9db78aa' }), (this.textTooltip || this.subtitleTooltip) && (h("qds-tooltip", { key: 'd241910d595e17d4624fbfeaebb3c592e9861250', "aria-hidden": "true", ref: __classPrivateFieldGet(this, _ListItem_textTooltipRef, "f") }, h("div", { key: '2e0fbef65e5aff8fd9cd6a746914e19c4509e5ae', class: "qds-tooltip-kicker" }, this.kicker), h("div", { key: '0258af911af8835bf23bed6ab204e47b50dde61d', class: "qds-tooltip-title" }, this.text), h("div", { key: 'cd81e5f0a52ad03b876967bb41549af3a3603d5f', class: "qds-tooltip-subtitle" }, this.subtitle))))));
|
|
247
250
|
}
|
|
248
251
|
get host() { return this; }
|
|
249
252
|
static get watchers() { return {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"file":"qds-list-item.js","mappings":"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","names":["__stencil_proxyCustomElement","HTMLElement"],"sources":["src/components/list-item/list-item.css?tag=qds-list-item&encapsulation=shadow","src/components/list-item/list-item.tsx"],"sourcesContent":["/*\n * SPDX-FileCopyrightText: © 2024 Schneider Electric\n *\n * SPDX-License-Identifier: Apache-2.0\n */\n\n@import url('../shared.css');\n\n:host {\n display: block;\n}\n\n.qds-disabled {\n opacity: var(--qds-theme-disabled);\n pointer-events: none;\n}\n\n.qds-list-item,\n.qds-indented-content {\n align-items: center;\n box-sizing: border-box;\n border-radius: var(--qds-control-border-radius);\n}\n\n.qds-indented-content {\n display: flex;\n flex: 1 0;\n align-self: stretch;\n cursor: default;\n}\n\n.qds-destination {\n transform: scaleX(var(--qds-direction-factor, 1));\n}\n\n.qds-icon,\n.qds-main-icon {\n color: var(--qds-theme-text-standard);\n}\n\n.qds-picture {\n flex-shrink: 0;\n}\n\n.qds-texts {\n justify-items: center;\n display: flex;\n flex: 1 0;\n flex-direction: column;\n padding: 0;\n position: relative;\n\n &:focus-visible {\n /* inner ring */\n outline: var(--qds-theme-focus-border-contrast) solid\n var(--qds-focus-light-border-width);\n outline-offset: 0;\n\n /* outer ring */\n box-shadow: 0 0 0 var(--qds-focus-heavy-border-width)\n var(--qds-theme-focus-border);\n border-radius: var(--qds-control-border-radius);\n }\n}\n\n.qds-input {\n appearance: none;\n background: none;\n border: none;\n border-radius: var(--qds-control-border-radius);\n inset: 0;\n margin: 0;\n outline: none;\n position: absolute;\n}\n\n.qds-title {\n color: var(--qds-theme-title);\n display: -webkit-box;\n -webkit-box-orient: vertical;\n -webkit-line-clamp: 2;\n overflow: hidden;\n}\n\n.qds-tooltip-title {\n color: var(--qds-theme-title);\n}\n\n.qds-subtitle {\n color: var(--qds-theme-subtitle);\n display: -webkit-box;\n -webkit-box-orient: vertical;\n -webkit-line-clamp: 5;\n overflow: hidden;\n}\n\n.qds-tooltip-subtitle {\n color: var(--qds-theme-subtitle);\n}\n\n.qds-kicker {\n color: var(--qds-theme-kicker);\n display: -webkit-box;\n -webkit-box-orient: vertical;\n -webkit-line-clamp: 1;\n overflow: hidden;\n}\n\n.qds-tooltip-kicker {\n color: var(--qds-theme-kicker);\n}\n\n.qds-draggable {\n cursor: grab;\n}\n\n.qds-cursor-pointer {\n cursor: pointer;\n}\n\n[data-size='small'] {\n .qds-indented-content {\n gap: var(--qds-list-item-small-gap-internal);\n min-height: var(--qds-list-item-small-height);\n padding: var(--qds-list-item-small-padding-vertical)\n var(--qds-list-item-small-padding-horizontal);\n }\n\n .qds-icon {\n height: var(--qds-control-small-icon-size);\n width: var(--qds-control-small-icon-size);\n }\n\n .qds-main-icon {\n height: var(--qds-list-item-small-icon-size);\n width: var(--qds-list-item-small-icon-size);\n }\n\n .qds-texts {\n gap: var(--qds-list-item-small-titles-gap);\n }\n\n .qds-kicker,\n .qds-tooltip-kicker {\n font: var(--qds-list-item-small-kicker);\n }\n\n .qds-title,\n .qds-tooltip-title {\n font: var(--qds-list-item-small-title);\n }\n\n .qds-subtitle,\n .qds-tooltip-subtitle {\n font: var(--qds-list-item-small-subtitle);\n }\n\n .qds-picture {\n height: var(--qds-list-item-small-picture-size);\n width: var(--qds-list-item-small-picture-size);\n }\n}\n\n[data-size='standard'] {\n .qds-indented-content {\n gap: var(--qds-list-item-standard-gap-internal);\n min-height: var(--qds-list-item-standard-height);\n padding: var(--qds-list-item-standard-padding-vertical)\n var(--qds-list-item-standard-padding-horizontal);\n }\n\n .qds-icon {\n height: var(--qds-control-standard-icon-size);\n width: var(--qds-control-standard-icon-size);\n }\n\n .qds-main-icon {\n height: var(--qds-list-item-standard-icon-size);\n width: var(--qds-list-item-standard-icon-size);\n }\n\n .qds-texts {\n gap: var(--qds-list-item-standard-titles-gap);\n }\n\n .qds-kicker,\n .qds-tooltip-kicker {\n font: var(--qds-list-item-standard-kicker);\n }\n\n .qds-title,\n .qds-tooltip-title {\n font: var(--qds-list-item-standard-title);\n }\n\n .qds-subtitle,\n .qds-tooltip-subtitle {\n font: var(--qds-list-item-standard-subtitle);\n }\n\n .qds-picture {\n height: var(--qds-list-item-standard-picture-size);\n width: var(--qds-list-item-standard-picture-size);\n }\n}\n\n[data-size='large'] {\n .qds-indented-content {\n gap: var(--qds-list-item-large-gap-internal);\n min-height: var(--qds-list-item-large-height);\n padding: var(--qds-list-item-large-padding-vertical)\n var(--qds-list-item-large-padding-horizontal);\n }\n\n .qds-icon {\n height: var(--qds-control-large-icon-size);\n width: var(--qds-control-large-icon-size);\n }\n\n .qds-main-icon {\n height: var(--qds-list-item-large-icon-size);\n width: var(--qds-list-item-large-icon-size);\n }\n\n .qds-texts {\n gap: var(--qds-list-item-large-titles-gap);\n }\n\n .qds-kicker,\n .qds-tooltip-kicker {\n font: var(--qds-list-item-large-kicker);\n }\n\n .qds-title,\n .qds-tooltip-title {\n font: var(--qds-list-item-large-title);\n }\n\n .qds-subtitle,\n .qds-tooltip-subtitle {\n font: var(--qds-list-item-large-subtitle);\n }\n\n .qds-picture {\n height: var(--qds-list-item-large-picture-size);\n width: var(--qds-list-item-large-picture-size);\n }\n}\n\n.qds-list-item {\n display: block;\n\n &:hover:not(.qds-static) {\n background-color: var(--qds-theme-interactive-background-hover);\n }\n\n &:active:not(.qds-static) {\n background-color: var(--qds-theme-interactive-background-pressed);\n }\n\n &:not(.qds-has-submenu, .qds-static):active {\n background-color: var(--qds-theme-interactive-background-pressed);\n }\n}\n\n.qds-selected {\n &.qds-list-item {\n background-color: var(--qds-theme-interactive-background-selected);\n\n &:hover {\n background-color: var(--qds-theme-interactive-background-selected-hover);\n }\n\n &:active {\n background-color: var(\n --qds-theme-interactive-background-selected-pressed\n );\n }\n }\n\n &[data-size='small'] .qds-title {\n font: var(--qds-list-item-small-title-emphasized);\n }\n\n &[data-size='standard'] .qds-title {\n font: var(--qds-list-item-standard-title-emphasized);\n }\n\n &[data-size='large'] .qds-title {\n font: var(--qds-list-item-large-title-emphasized);\n }\n}\n","// SPDX-FileCopyrightText: © 2024 Schneider Electric\n//\n// SPDX-License-Identifier: Apache-2.0\n\nimport type { ComponentInterface, EventEmitter } from '@stencil/core'\nimport {\n AttachInternals,\n Component,\n Element,\n Event,\n h,\n Host,\n Listen,\n Prop,\n readTask,\n State,\n Watch,\n} from '@stencil/core'\n\nimport type { QdsFocusEventDetail } from '../../helpers'\nimport {\n invariant,\n isEllipsisActive,\n pickFocusEventAttributes,\n} from '../../helpers'\nimport type { Size } from '../shared'\n\nexport type Destination = 'navigation'\nexport type ListAction = 'multiselect' | 'none' | 'radio' | 'select'\n\n/**\n *\n *\n * @see https://quartz.se.com/build/components/list-item\n */\n@Component({\n tag: 'qds-list-item',\n shadow: { delegatesFocus: false },\n styleUrl: 'list-item.css',\n})\nexport class ListItem implements ComponentInterface {\n /**\n * The destination action that the list item denotes through its rightmost icon.\n */\n @Prop() public readonly destination?: Destination\n\n /**\n * Prevents the list item from being interacted with: it cannot be selected\n * or focused.\n */\n @Prop() public readonly disabled: boolean = false\n\n /**\n * Control how to display the bottom divider line.\n *\n * By default, the divider is not visible.\n */\n @Prop() public readonly showDivider: boolean = false\n\n /**\n * The name of the icon to render.\n *\n * Available names depend on the icon library being used.\n */\n @Prop() public readonly iconName?: string\n\n /**\n * The name of a registered icon library.\n */\n @Prop() public readonly iconLibrary: string = 'default'\n\n /**\n * The URL of the avatar image to display.\n */\n @Prop() public readonly avatarSrc?: string\n\n /**\n * The URL of the picture to display.\n *\n * This is used to display a picture in the list item.\n * It is not used for the avatar image.\n */\n @Prop() public readonly imageSrc?: string\n\n /**\n * Text to display for the kicker.\n */\n @Prop() public readonly kicker?: string\n\n /**\n * The type of list-level action that the list item supports\n */\n @Prop() public readonly listAction: ListAction = 'select'\n\n /**\n * The list items's size.\n */\n @Prop() public readonly size?: Size = 'standard'\n\n /**\n * Whether or not the list item is selected.\n */\n @Prop({ mutable: true }) public selected?: boolean\n\n /**\n * Sets the list item to an indeterminate state, only when `list-action=\"indeterminate\"`.\n * This is usually applied to items that represent a \"select all/none\" behavior when associated\n * items have a mix of selected and unselected states.\n *\n * @webnative\n */\n @Prop({ mutable: true }) public indeterminate?: boolean\n\n /**\n * The primary text of the list item.\n */\n @Prop() public readonly text!: string\n\n /**\n * Text to display below the primary text.\n */\n @Prop() public readonly subtitle?: string\n\n /**\n * Displays a counter badge if a number or string representing a number is used.\n *\n * @webnative\n */\n @Prop() public readonly badge?: number | string\n\n /**\n * The counter badge's accessible text that will be used by\n * screen readers.\n */\n @Prop() public readonly badgeDescription?: string\n\n /**\n * Emitted when the list item loses focus.\n */\n @Event({ eventName: 'qdsBlur', bubbles: false, cancelable: false })\n private readonly blurEmitter!: EventEmitter<QdsFocusEventDetail>\n\n /**\n * Emitted when a change to the checkbox's state is committed by the user.\n */\n @Event({ eventName: 'qdsChange', cancelable: false })\n private readonly changeEmitter!: EventEmitter<void>\n\n /**\n * Emitted when the list item gains focus.\n */\n @Event({ eventName: 'qdsFocus', bubbles: false, cancelable: false })\n private readonly focusEmitter!: EventEmitter<QdsFocusEventDetail>\n\n @AttachInternals() private readonly internals!: ElementInternals\n\n @Element() private readonly host!: HTMLElement\n\n @State() private textTooltip = false\n\n @State() private subtitleTooltip = false\n\n @State() private hasSubmenuSlot = false\n\n #roText?: ResizeObserver\n\n #roSubTitle?: ResizeObserver\n\n #text?: HTMLDivElement\n\n #subtitle?: HTMLDivElement\n\n #iconButton!: HTMLQdsIconButtonElement\n\n #checkbox?: HTMLQdsCheckboxElement\n\n #radio?: HTMLQdsRadioElement\n\n get #computedDestination(): Destination | undefined {\n switch (this.destination) {\n case 'navigation': {\n return this.destination\n }\n default: {\n return undefined\n }\n }\n }\n\n get #computedIndeterminate(): boolean {\n return this.indeterminate ?? false\n }\n\n get #computedListAction(): ListAction {\n switch (this.listAction) {\n case 'radio':\n case 'multiselect':\n case 'select':\n case 'none': {\n return this.listAction\n }\n default: {\n return 'select'\n }\n }\n }\n\n get #computedSelected(): boolean {\n return this.selected ?? false\n }\n\n get #computedSize(): Size {\n switch (this.size) {\n case 'standard':\n case 'small':\n case 'large': {\n return this.size\n }\n default: {\n return 'standard'\n }\n }\n }\n\n get #hasSubmenu(): boolean {\n return this.hasSubmenuSlot\n }\n\n @Listen('click')\n protected onClick(event: MouseEvent): void {\n if (this.disabled || this.hasSubmenuSlot) {\n event.stopImmediatePropagation()\n return\n }\n\n if (this.#computedListAction === 'multiselect') {\n invariant(this.#checkbox)\n this.#onCheck(event)\n }\n\n if (this.#computedListAction === 'radio') {\n invariant(this.#radio)\n this.#onSelect(event)\n }\n // Always prevent default behavior to avoid the internal `<input>`\n // to toggle `checked` state inappropriately.\n //\n // Note that this will need adjustments once we add the `item-action` slot.\n event.preventDefault()\n }\n\n @Listen('keydown')\n protected onKeydown(event: KeyboardEvent): void {\n if (event.key === 'Enter') this.host.click()\n }\n\n @Listen('keyup')\n protected onKeyup(event: KeyboardEvent): void {\n if (event.key === ' ') this.host.click()\n }\n\n @Listen('dragstart')\n protected onDragstart(): void {\n if (!this.host.draggable) return\n this.host.setAttribute('aria-grabbed', 'true')\n }\n\n @Listen('dragend')\n protected onDragend(): void {\n if (!this.host.draggable) return\n this.host.removeAttribute('aria-grabbed')\n }\n\n @Watch('disabled')\n protected disabledChanged(): void {\n this.internals.ariaDisabled = this.disabled.toString()\n }\n\n @Watch('listAction')\n protected listActionChanged(newValue: ListAction | undefined): void {\n this.internals.ariaChecked =\n (newValue === 'radio' || newValue === 'multiselect') &&\n this.#computedSelected\n ? 'true'\n : 'false'\n }\n\n @Watch('text')\n protected textChanged(): void {\n if (this.#roText) this.#roText.disconnect()\n\n if (!this.#text || !this.text) return\n\n invariant(this.#text)\n\n const div = this.#text\n readTask(() => {\n this.textTooltip = isEllipsisActive(div)\n })\n this.#roText = new ResizeObserver(([divEntry]) => {\n this.textTooltip = isEllipsisActive(divEntry.target as HTMLDivElement)\n })\n this.#roText.observe(this.#text)\n }\n\n @Watch('subtitle')\n protected subtitleChanged(): void {\n if (this.#roSubTitle) this.#roSubTitle.disconnect()\n\n if (!this.#subtitle || this.subtitle === undefined || this.subtitle === '')\n return\n\n invariant(this.#subtitle)\n const div = this.#subtitle\n readTask(() => {\n this.subtitleTooltip = isEllipsisActive(div)\n })\n this.#roSubTitle = new ResizeObserver(([divEntry]) => {\n this.subtitleTooltip = isEllipsisActive(divEntry.target as HTMLDivElement)\n })\n this.#roSubTitle.observe(this.#subtitle)\n }\n\n public componentWillLoad(): void {\n this.hasSubmenuSlot = this.host.hasChildNodes()\n\n const subtitle =\n this.subtitle === undefined || this.subtitle === ''\n ? ''\n : ` ${this.subtitle}`\n const kicker =\n this.kicker === undefined || this.kicker === '' ? '' : ` ${this.kicker}`\n this.internals.ariaLabel = `${this.text} ${subtitle} ${kicker}`.trim()\n switch (this.listAction) {\n case 'select': {\n this.internals.role = 'generic'\n break\n }\n default: {\n this.internals.role = 'listitem'\n break\n }\n }\n this.disabledChanged()\n }\n\n public componentDidLoad(): void {\n this.textChanged()\n this.subtitleChanged()\n }\n\n public render() {\n return (\n <Host>\n <div\n class={{\n 'qds-list-item': true,\n 'qds-has-submenu': this.#hasSubmenu,\n 'qds-disabled': this.disabled,\n 'qds-selected': this.#computedSelected,\n 'qds-static': this.#computedListAction === 'none',\n }}\n data-size={this.#computedSize}\n >\n <div\n class={{\n 'qds-indented-content': true,\n 'qds-cursor-pointer':\n !this.disabled && this.#computedListAction !== 'none',\n }}\n >\n {this.#computedListAction === 'multiselect' && (\n <qds-checkbox\n checked={this.selected}\n indeterminate={this.indeterminate}\n size={this.size}\n text={this.text}\n disabled={this.disabled}\n checkboxOnly\n onQdsChange={this.#onCheck}\n ref={this.#checkboxRef}\n />\n )}\n\n {this.#computedListAction === 'radio' && (\n <qds-radio\n checked={this.selected}\n size={this.size}\n onQdsChange={this.#onSelect}\n disabled={this.disabled}\n aria-label={this.text}\n ref={this.#radioRef}\n />\n )}\n\n {this.host.draggable && (\n <qds-icon\n class=\"qds-icon qds-list-action qds-draggable\"\n library=\"core\"\n name=\"draggable\"\n />\n )}\n\n {this.imageSrc !== undefined && this.imageSrc !== '' && (\n <img class=\"qds-picture\" src={this.imageSrc} alt=\"\" />\n )}\n\n {this.iconName !== undefined && this.iconName !== '' && (\n <qds-icon\n class=\"qds-main-icon\"\n library={this.iconLibrary}\n name={this.iconName}\n />\n )}\n {this.avatarSrc !== undefined && this.avatarSrc !== '' && (\n <qds-avatar-media class=\"qds-picture\" src={this.avatarSrc} />\n )}\n\n <div\n class=\"qds-texts\"\n role={\n this.#computedListAction === 'select' ? 'option' : undefined\n }\n tabIndex={\n this.#computedListAction === 'select' && !this.disabled\n ? 0\n : undefined\n }\n onFocus={this.#onFocus}\n onBlur={this.#onBlur}\n >\n {this.kicker !== undefined && this.kicker !== '' && (\n <div class=\"qds-kicker\">{this.kicker}</div>\n )}\n <div class=\"qds-title\" ref={this.#divTitleRef}>\n {this.text}\n </div>\n {this.subtitle !== undefined && this.subtitle !== '' && (\n <div class=\"qds-subtitle\" ref={this.#divSubtitleRef}>\n {this.subtitle}\n </div>\n )}\n </div>\n\n {this.badge !== undefined && this.badge !== '' && (\n <qds-badge-counter\n size={this.#computedSize}\n strokeRing\n value={this.badge}\n description={this.badgeDescription}\n />\n )}\n\n {this.#hasSubmenu && (\n <qds-icon-button\n iconName=\"dots-3-vertical\"\n importance=\"subdued\"\n aria-label=\"more actions\"\n disabled={this.disabled}\n ref={this.#iconButtonRef}\n />\n )}\n\n {this.#computedDestination !== undefined && (\n <qds-icon\n class=\"qds-icon qds-destination\"\n library=\"core\"\n name={this.#computedDestination}\n />\n )}\n </div>\n {this.#hasSubmenu && (\n <qds-dropdown\n class=\"qds-accessory qds-related\"\n placement=\"right-start\"\n target={this.#iconButtonRef}\n role=\"menu\"\n >\n <slot onSlotchange={this.#onSlotChange} />\n </qds-dropdown>\n )}\n {this.showDivider && <qds-divider />}\n {(this.textTooltip || this.subtitleTooltip) && (\n <qds-tooltip aria-hidden=\"true\" ref={this.#textTooltipRef}>\n <div class=\"qds-tooltip-kicker\">{this.kicker}</div>\n <div class=\"qds-tooltip-title\">{this.text}</div>\n <div class=\"qds-tooltip-subtitle\">{this.subtitle}</div>\n </qds-tooltip>\n )}\n </div>\n </Host>\n )\n }\n\n readonly #onBlur = (event: FocusEvent): void => {\n this.blurEmitter.emit(pickFocusEventAttributes(event))\n }\n\n readonly #onFocus = (event: FocusEvent): void => {\n this.focusEmitter.emit(pickFocusEventAttributes(event))\n }\n\n readonly #onCheck = (event: Event): void => {\n event.stopImmediatePropagation()\n this.selected = this.#computedIndeterminate ? true : !this.#computedSelected\n this.changeEmitter.emit()\n this.indeterminate = false\n }\n\n readonly #onSelect = (event: Event): void => {\n event.stopImmediatePropagation()\n if (!this.#computedSelected) {\n this.selected = !this.#computedSelected\n this.changeEmitter.emit()\n }\n }\n\n readonly #divTitleRef = (div?: HTMLDivElement): void => {\n this.#text = div\n }\n\n readonly #divSubtitleRef = (div?: HTMLDivElement): void => {\n this.#subtitle = div\n }\n\n readonly #textTooltipRef = (tooltip?: HTMLQdsTooltipElement): void => {\n if (tooltip)\n // eslint-disable-next-line no-param-reassign\n tooltip.target = this.host\n }\n\n readonly #iconButtonRef = (\n iconButton?: HTMLQdsIconButtonElement,\n ): HTMLQdsIconButtonElement => {\n if (iconButton) {\n this.#iconButton = iconButton\n }\n\n return this.#iconButton\n }\n\n readonly #onSlotChange = (event: Event): void => {\n invariant(event.target instanceof HTMLSlotElement)\n const slot = event.target\n this.hasSubmenuSlot = slot.assignedNodes().length > 0\n }\n\n readonly #checkboxRef = (checkbox?: HTMLQdsCheckboxElement): void => {\n this.#checkbox = checkbox\n }\n\n readonly #radioRef = (radio?: HTMLQdsRadioElement): void => {\n this.#radio = radio\n }\n}\n"],"version":3}
|
|
1
|
+
{"file":"qds-list-item.js","mappings":"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","names":["__stencil_proxyCustomElement","HTMLElement"],"sources":["src/components/list-item/list-item.css?tag=qds-list-item&encapsulation=shadow","src/components/list-item/list-item.tsx"],"sourcesContent":["/*\n * SPDX-FileCopyrightText: © 2024 Schneider Electric\n *\n * SPDX-License-Identifier: Apache-2.0\n */\n\n@import url('../shared.css');\n\n:host {\n display: block;\n}\n\n.qds-disabled {\n opacity: var(--qds-theme-disabled);\n pointer-events: none;\n}\n\n.qds-list-item,\n.qds-indented-content {\n align-items: center;\n box-sizing: border-box;\n border-radius: var(--qds-control-border-radius);\n}\n\n.qds-indented-content {\n display: flex;\n flex: 1 0;\n align-self: stretch;\n cursor: default;\n}\n\n.qds-destination {\n transform: scaleX(var(--qds-direction-factor, 1));\n}\n\n.qds-icon,\n.qds-main-icon {\n color: var(--qds-theme-text-standard);\n}\n\n.qds-picture {\n flex-shrink: 0;\n}\n\n.qds-texts {\n justify-items: center;\n display: flex;\n flex: 1 0;\n flex-direction: column;\n padding: 0;\n position: relative;\n\n &:focus-visible {\n /* inner ring */\n outline: var(--qds-theme-focus-border-contrast) solid\n var(--qds-focus-light-border-width);\n outline-offset: 0;\n\n /* outer ring */\n box-shadow: 0 0 0 var(--qds-focus-heavy-border-width)\n var(--qds-theme-focus-border);\n border-radius: var(--qds-control-border-radius);\n }\n}\n\n.qds-input {\n appearance: none;\n background: none;\n border: none;\n border-radius: var(--qds-control-border-radius);\n inset: 0;\n margin: 0;\n outline: none;\n position: absolute;\n}\n\n.qds-title {\n color: var(--qds-theme-title);\n display: -webkit-box;\n -webkit-box-orient: vertical;\n -webkit-line-clamp: 2;\n overflow: hidden;\n}\n\n.qds-tooltip-title {\n color: var(--qds-theme-title);\n}\n\n.qds-subtitle {\n color: var(--qds-theme-subtitle);\n display: -webkit-box;\n -webkit-box-orient: vertical;\n -webkit-line-clamp: 5;\n overflow: hidden;\n}\n\n.qds-tooltip-subtitle {\n color: var(--qds-theme-subtitle);\n}\n\n.qds-kicker {\n color: var(--qds-theme-kicker);\n display: -webkit-box;\n -webkit-box-orient: vertical;\n -webkit-line-clamp: 1;\n overflow: hidden;\n}\n\n.qds-tooltip-kicker {\n color: var(--qds-theme-kicker);\n}\n\n.qds-draggable {\n cursor: grab;\n}\n\n.qds-cursor-pointer {\n cursor: pointer;\n}\n\n[data-size='small'] {\n .qds-indented-content {\n gap: var(--qds-list-item-small-gap-internal);\n min-height: var(--qds-list-item-small-height);\n padding: var(--qds-list-item-small-padding-vertical)\n var(--qds-list-item-small-padding-horizontal);\n }\n\n .qds-icon {\n height: var(--qds-control-small-icon-size);\n width: var(--qds-control-small-icon-size);\n }\n\n .qds-main-icon {\n height: var(--qds-list-item-small-icon-size);\n width: var(--qds-list-item-small-icon-size);\n }\n\n .qds-texts {\n gap: var(--qds-list-item-small-titles-gap);\n }\n\n .qds-kicker,\n .qds-tooltip-kicker {\n font: var(--qds-list-item-small-kicker);\n }\n\n .qds-title,\n .qds-tooltip-title {\n font: var(--qds-list-item-small-title);\n }\n\n .qds-subtitle,\n .qds-tooltip-subtitle {\n font: var(--qds-list-item-small-subtitle);\n }\n\n .qds-picture {\n height: var(--qds-list-item-small-picture-size);\n width: var(--qds-list-item-small-picture-size);\n }\n}\n\n[data-size='standard'] {\n .qds-indented-content {\n gap: var(--qds-list-item-standard-gap-internal);\n min-height: var(--qds-list-item-standard-height);\n padding: var(--qds-list-item-standard-padding-vertical)\n var(--qds-list-item-standard-padding-horizontal);\n }\n\n .qds-icon {\n height: var(--qds-control-standard-icon-size);\n width: var(--qds-control-standard-icon-size);\n }\n\n .qds-main-icon {\n height: var(--qds-list-item-standard-icon-size);\n width: var(--qds-list-item-standard-icon-size);\n }\n\n .qds-texts {\n gap: var(--qds-list-item-standard-titles-gap);\n }\n\n .qds-kicker,\n .qds-tooltip-kicker {\n font: var(--qds-list-item-standard-kicker);\n }\n\n .qds-title,\n .qds-tooltip-title {\n font: var(--qds-list-item-standard-title);\n }\n\n .qds-subtitle,\n .qds-tooltip-subtitle {\n font: var(--qds-list-item-standard-subtitle);\n }\n\n .qds-picture {\n height: var(--qds-list-item-standard-picture-size);\n width: var(--qds-list-item-standard-picture-size);\n }\n}\n\n[data-size='large'] {\n .qds-indented-content {\n gap: var(--qds-list-item-large-gap-internal);\n min-height: var(--qds-list-item-large-height);\n padding: var(--qds-list-item-large-padding-vertical)\n var(--qds-list-item-large-padding-horizontal);\n }\n\n .qds-icon {\n height: var(--qds-control-large-icon-size);\n width: var(--qds-control-large-icon-size);\n }\n\n .qds-main-icon {\n height: var(--qds-list-item-large-icon-size);\n width: var(--qds-list-item-large-icon-size);\n }\n\n .qds-texts {\n gap: var(--qds-list-item-large-titles-gap);\n }\n\n .qds-kicker,\n .qds-tooltip-kicker {\n font: var(--qds-list-item-large-kicker);\n }\n\n .qds-title,\n .qds-tooltip-title {\n font: var(--qds-list-item-large-title);\n }\n\n .qds-subtitle,\n .qds-tooltip-subtitle {\n font: var(--qds-list-item-large-subtitle);\n }\n\n .qds-picture {\n height: var(--qds-list-item-large-picture-size);\n width: var(--qds-list-item-large-picture-size);\n }\n}\n\n.qds-list-item {\n display: block;\n\n &:hover:not(.qds-static) {\n background-color: var(--qds-theme-interactive-background-hover);\n }\n\n &:active:not(.qds-static) {\n background-color: var(--qds-theme-interactive-background-pressed);\n }\n\n &:not(.qds-has-submenu, .qds-static):active {\n background-color: var(--qds-theme-interactive-background-pressed);\n }\n}\n\n.qds-selected {\n &.qds-list-item {\n background-color: var(--qds-theme-interactive-background-selected);\n\n &:hover {\n background-color: var(--qds-theme-interactive-background-selected-hover);\n }\n\n &:active {\n background-color: var(\n --qds-theme-interactive-background-selected-pressed\n );\n }\n }\n\n &[data-size='small'] .qds-title {\n font: var(--qds-list-item-small-title-emphasized);\n }\n\n &[data-size='standard'] .qds-title {\n font: var(--qds-list-item-standard-title-emphasized);\n }\n\n &[data-size='large'] .qds-title {\n font: var(--qds-list-item-large-title-emphasized);\n }\n}\n","// SPDX-FileCopyrightText: © 2024 Schneider Electric\n//\n// SPDX-License-Identifier: Apache-2.0\n\nimport type { ComponentInterface, EventEmitter } from '@stencil/core'\nimport {\n AttachInternals,\n Component,\n Element,\n Event,\n h,\n Host,\n Listen,\n Prop,\n readTask,\n State,\n Watch,\n} from '@stencil/core'\n\nimport type { QdsFocusEventDetail } from '../../helpers'\nimport {\n invariant,\n isEllipsisActive,\n pickFocusEventAttributes,\n} from '../../helpers'\nimport type { Size } from '../shared'\n\nexport type Destination = 'navigation'\nexport type ListAction = 'multiselect' | 'none' | 'radio' | 'select'\n\nconst stopImmediatePropagation = (event: Event): void => {\n event.stopImmediatePropagation()\n}\n\n/**\n *\n *\n * @see https://quartz.se.com/build/components/list-item\n */\n@Component({\n tag: 'qds-list-item',\n shadow: { delegatesFocus: false },\n styleUrl: 'list-item.css',\n})\nexport class ListItem implements ComponentInterface {\n /**\n * The destination action that the list item denotes through its rightmost icon.\n */\n @Prop() public readonly destination?: Destination\n\n /**\n * Prevents the list item from being interacted with: it cannot be selected\n * or focused.\n */\n @Prop() public readonly disabled: boolean = false\n\n /**\n * Control how to display the bottom divider line.\n *\n * By default, the divider is not visible.\n */\n @Prop() public readonly showDivider: boolean = false\n\n /**\n * The name of the icon to render.\n *\n * Available names depend on the icon library being used.\n */\n @Prop() public readonly iconName?: string\n\n /**\n * The name of a registered icon library.\n */\n @Prop() public readonly iconLibrary: string = 'default'\n\n /**\n * The URL of the avatar image to display.\n */\n @Prop() public readonly avatarSrc?: string\n\n /**\n * The URL of the picture to display.\n *\n * This is used to display a picture in the list item.\n * It is not used for the avatar image.\n */\n @Prop() public readonly imageSrc?: string\n\n /**\n * Text to display for the kicker.\n */\n @Prop() public readonly kicker?: string\n\n /**\n * The type of list-level action that the list item supports\n */\n @Prop() public readonly listAction: ListAction = 'select'\n\n /**\n * The list items's size.\n */\n @Prop() public readonly size?: Size = 'standard'\n\n /**\n * Whether or not the list item is selected.\n */\n @Prop({ mutable: true }) public selected?: boolean\n\n /**\n * Sets the list item to an indeterminate state, only when `list-action=\"indeterminate\"`.\n * This is usually applied to items that represent a \"select all/none\" behavior when associated\n * items have a mix of selected and unselected states.\n *\n * @webnative\n */\n @Prop({ mutable: true }) public indeterminate?: boolean\n\n /**\n * The primary text of the list item.\n */\n @Prop() public readonly text!: string\n\n /**\n * Text to display below the primary text.\n */\n @Prop() public readonly subtitle?: string\n\n /**\n * Displays a counter badge if a number or string representing a number is used.\n *\n * @webnative\n */\n @Prop() public readonly badge?: number | string\n\n /**\n * The counter badge's accessible text that will be used by\n * screen readers.\n */\n @Prop() public readonly badgeDescription?: string\n\n /**\n * Emitted when the list item loses focus.\n */\n @Event({ eventName: 'qdsBlur', bubbles: false, cancelable: false })\n private readonly blurEmitter!: EventEmitter<QdsFocusEventDetail>\n\n /**\n * Emitted when a change to the checkbox's state is committed by the user.\n */\n @Event({ eventName: 'qdsChange', cancelable: false })\n private readonly changeEmitter!: EventEmitter<void>\n\n /**\n * Emitted when the list item gains focus.\n */\n @Event({ eventName: 'qdsFocus', bubbles: false, cancelable: false })\n private readonly focusEmitter!: EventEmitter<QdsFocusEventDetail>\n\n @AttachInternals() private readonly internals!: ElementInternals\n\n @Element() private readonly host!: HTMLElement\n\n @State() private textTooltip = false\n\n @State() private subtitleTooltip = false\n\n @State() private hasSubmenuSlot = false\n\n #roText?: ResizeObserver\n\n #roSubTitle?: ResizeObserver\n\n #text?: HTMLDivElement\n\n #subtitle?: HTMLDivElement\n\n #iconButton!: HTMLQdsIconButtonElement\n\n #checkbox?: HTMLQdsCheckboxElement\n\n #radio?: HTMLQdsRadioElement\n\n get #computedDestination(): Destination | undefined {\n switch (this.destination) {\n case 'navigation': {\n return this.destination\n }\n default: {\n return undefined\n }\n }\n }\n\n get #computedIndeterminate(): boolean {\n return this.indeterminate ?? false\n }\n\n get #computedListAction(): ListAction {\n switch (this.listAction) {\n case 'radio':\n case 'multiselect':\n case 'select':\n case 'none': {\n return this.listAction\n }\n default: {\n return 'select'\n }\n }\n }\n\n get #computedSelected(): boolean {\n return this.selected ?? false\n }\n\n get #computedSize(): Size {\n switch (this.size) {\n case 'standard':\n case 'small':\n case 'large': {\n return this.size\n }\n default: {\n return 'standard'\n }\n }\n }\n\n get #hasSubmenu(): boolean {\n return this.hasSubmenuSlot\n }\n\n @Listen('click')\n protected onClick(event: MouseEvent): void {\n if (this.disabled || this.hasSubmenuSlot) {\n event.stopImmediatePropagation()\n return\n }\n\n if (this.#computedListAction === 'multiselect') {\n invariant(this.#checkbox)\n this.#onCheck(event)\n }\n\n if (this.#computedListAction === 'radio') {\n invariant(this.#radio)\n this.#onSelect(event)\n }\n // Always prevent default behavior to avoid the internal `<input>`\n // to toggle `checked` state inappropriately.\n //\n // Note that this will need adjustments once we add the `item-action` slot.\n event.preventDefault()\n }\n\n @Listen('keydown')\n protected onKeydown(event: KeyboardEvent): void {\n if (event.key === 'Enter') this.host.click()\n }\n\n @Listen('keyup')\n protected onKeyup(event: KeyboardEvent): void {\n if (event.key === ' ') this.host.click()\n }\n\n @Listen('dragstart')\n protected onDragstart(): void {\n if (!this.host.draggable) return\n this.host.setAttribute('aria-grabbed', 'true')\n }\n\n @Listen('dragend')\n protected onDragend(): void {\n if (!this.host.draggable) return\n this.host.removeAttribute('aria-grabbed')\n }\n\n @Watch('disabled')\n protected disabledChanged(): void {\n this.internals.ariaDisabled = this.disabled.toString()\n }\n\n @Watch('listAction')\n protected listActionChanged(newValue: ListAction | undefined): void {\n this.internals.ariaChecked =\n (newValue === 'radio' || newValue === 'multiselect') &&\n this.#computedSelected\n ? 'true'\n : 'false'\n }\n\n @Watch('text')\n protected textChanged(): void {\n if (this.#roText) this.#roText.disconnect()\n\n if (!this.#text || !this.text) return\n\n invariant(this.#text)\n\n const div = this.#text\n readTask(() => {\n this.textTooltip = isEllipsisActive(div)\n })\n this.#roText = new ResizeObserver(([divEntry]) => {\n this.textTooltip = isEllipsisActive(divEntry.target as HTMLDivElement)\n })\n this.#roText.observe(this.#text)\n }\n\n @Watch('subtitle')\n protected subtitleChanged(): void {\n if (this.#roSubTitle) this.#roSubTitle.disconnect()\n\n if (!this.#subtitle || this.subtitle === undefined || this.subtitle === '')\n return\n\n invariant(this.#subtitle)\n const div = this.#subtitle\n readTask(() => {\n this.subtitleTooltip = isEllipsisActive(div)\n })\n this.#roSubTitle = new ResizeObserver(([divEntry]) => {\n this.subtitleTooltip = isEllipsisActive(divEntry.target as HTMLDivElement)\n })\n this.#roSubTitle.observe(this.#subtitle)\n }\n\n public componentWillLoad(): void {\n this.hasSubmenuSlot = this.host.hasChildNodes()\n\n const subtitle =\n this.subtitle === undefined || this.subtitle === ''\n ? ''\n : ` ${this.subtitle}`\n const kicker =\n this.kicker === undefined || this.kicker === '' ? '' : ` ${this.kicker}`\n this.internals.ariaLabel = `${this.text} ${subtitle} ${kicker}`.trim()\n switch (this.listAction) {\n case 'select': {\n this.internals.role = 'generic'\n break\n }\n default: {\n this.internals.role = 'listitem'\n break\n }\n }\n this.disabledChanged()\n }\n\n public componentDidLoad(): void {\n this.textChanged()\n this.subtitleChanged()\n }\n\n public render() {\n return (\n <Host>\n <div\n class={{\n 'qds-list-item': true,\n 'qds-has-submenu': this.#hasSubmenu,\n 'qds-disabled': this.disabled,\n 'qds-selected': this.#computedSelected,\n 'qds-static': this.#computedListAction === 'none',\n }}\n data-size={this.#computedSize}\n >\n <div\n class={{\n 'qds-indented-content': true,\n 'qds-cursor-pointer':\n !this.disabled && this.#computedListAction !== 'none',\n }}\n >\n {this.#computedListAction === 'multiselect' && (\n <qds-checkbox\n checked={this.selected}\n indeterminate={this.indeterminate}\n size={this.size}\n text={this.text}\n disabled={this.disabled}\n checkboxOnly\n onQdsChange={stopImmediatePropagation}\n ref={this.#checkboxRef}\n />\n )}\n\n {this.#computedListAction === 'radio' && (\n <qds-radio\n checked={this.selected}\n size={this.size}\n onQdsChange={this.#onSelect}\n disabled={this.disabled}\n aria-label={this.text}\n ref={this.#radioRef}\n />\n )}\n\n {this.host.draggable && (\n <qds-icon\n class=\"qds-icon qds-list-action qds-draggable\"\n library=\"core\"\n name=\"draggable\"\n />\n )}\n\n {this.imageSrc !== undefined && this.imageSrc !== '' && (\n <img class=\"qds-picture\" src={this.imageSrc} alt=\"\" />\n )}\n\n {this.iconName !== undefined && this.iconName !== '' && (\n <qds-icon\n class=\"qds-main-icon\"\n library={this.iconLibrary}\n name={this.iconName}\n />\n )}\n {this.avatarSrc !== undefined && this.avatarSrc !== '' && (\n <qds-avatar-media class=\"qds-picture\" src={this.avatarSrc} />\n )}\n\n <div\n class=\"qds-texts\"\n role={\n this.#computedListAction === 'select' ? 'option' : undefined\n }\n tabIndex={\n this.#computedListAction === 'select' && !this.disabled\n ? 0\n : undefined\n }\n onFocus={this.#onFocus}\n onBlur={this.#onBlur}\n >\n {this.kicker !== undefined && this.kicker !== '' && (\n <div class=\"qds-kicker\">{this.kicker}</div>\n )}\n <div class=\"qds-title\" ref={this.#divTitleRef}>\n {this.text}\n </div>\n {this.subtitle !== undefined && this.subtitle !== '' && (\n <div class=\"qds-subtitle\" ref={this.#divSubtitleRef}>\n {this.subtitle}\n </div>\n )}\n </div>\n\n {this.badge !== undefined && this.badge !== '' && (\n <qds-badge-counter\n size={this.#computedSize}\n strokeRing\n value={this.badge}\n description={this.badgeDescription}\n />\n )}\n\n {this.#hasSubmenu && (\n <qds-icon-button\n iconName=\"dots-3-vertical\"\n importance=\"subdued\"\n aria-label=\"more actions\"\n disabled={this.disabled}\n ref={this.#iconButtonRef}\n />\n )}\n\n {this.#computedDestination !== undefined && (\n <qds-icon\n class=\"qds-icon qds-destination\"\n library=\"core\"\n name={this.#computedDestination}\n />\n )}\n </div>\n {this.#hasSubmenu && (\n <qds-dropdown\n class=\"qds-accessory qds-related\"\n placement=\"right-start\"\n target={this.#iconButtonRef}\n role=\"menu\"\n >\n <slot onSlotchange={this.#onSlotChange} />\n </qds-dropdown>\n )}\n {this.showDivider && <qds-divider />}\n {(this.textTooltip || this.subtitleTooltip) && (\n <qds-tooltip aria-hidden=\"true\" ref={this.#textTooltipRef}>\n <div class=\"qds-tooltip-kicker\">{this.kicker}</div>\n <div class=\"qds-tooltip-title\">{this.text}</div>\n <div class=\"qds-tooltip-subtitle\">{this.subtitle}</div>\n </qds-tooltip>\n )}\n </div>\n </Host>\n )\n }\n\n readonly #onBlur = (event: FocusEvent): void => {\n this.blurEmitter.emit(pickFocusEventAttributes(event))\n }\n\n readonly #onFocus = (event: FocusEvent): void => {\n this.focusEmitter.emit(pickFocusEventAttributes(event))\n }\n\n readonly #onCheck = (event: Event): void => {\n event.stopImmediatePropagation()\n this.selected = this.#computedIndeterminate ? true : !this.#computedSelected\n this.changeEmitter.emit()\n this.indeterminate = false\n }\n\n readonly #onSelect = (event: Event): void => {\n event.stopImmediatePropagation()\n if (!this.#computedSelected) {\n this.selected = !this.#computedSelected\n this.changeEmitter.emit()\n }\n }\n\n readonly #divTitleRef = (div?: HTMLDivElement): void => {\n this.#text = div\n }\n\n readonly #divSubtitleRef = (div?: HTMLDivElement): void => {\n this.#subtitle = div\n }\n\n readonly #textTooltipRef = (tooltip?: HTMLQdsTooltipElement): void => {\n if (tooltip)\n // eslint-disable-next-line no-param-reassign\n tooltip.target = this.host\n }\n\n readonly #iconButtonRef = (\n iconButton?: HTMLQdsIconButtonElement,\n ): HTMLQdsIconButtonElement => {\n if (iconButton) {\n this.#iconButton = iconButton\n }\n\n return this.#iconButton\n }\n\n readonly #onSlotChange = (event: Event): void => {\n invariant(event.target instanceof HTMLSlotElement)\n const slot = event.target\n this.hasSubmenuSlot = slot.assignedNodes().length > 0\n }\n\n readonly #checkboxRef = (checkbox?: HTMLQdsCheckboxElement): void => {\n this.#checkbox = checkbox\n }\n\n readonly #radioRef = (radio?: HTMLQdsRadioElement): void => {\n this.#radio = radio\n }\n}\n"],"version":3}
|
package/components/qds-loader.js
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
6
|
import { p as proxyCustomElement, H, h } from './p-D2489VzR.js';
|
|
7
|
-
import { d as defineCustomElement$2 } from './p-
|
|
7
|
+
import { d as defineCustomElement$2 } from './p-EjoVBa5a.js';
|
|
8
8
|
|
|
9
9
|
const loaderCss = ":host([hidden]){display:none!important}:host{display:inline-block}.qds-loader{border-radius:var(--qds-control-rounded-border-radius);box-sizing:border-box;color:var(--qds-theme-feedback-action-destructive-contrast)}[data-size=small]{height:var(--qds-feedback-loader-small-size);width:var(--qds-feedback-loader-small-size)}[data-size=small][data-status=loading]{padding:var(--qds-signature-circle-progress-small-border-width)}[data-size=standard]{height:var(--qds-feedback-loader-standard-size);width:var(--qds-feedback-loader-standard-size)}[data-size=standard][data-status=loading]{padding:var(--qds-signature-circle-progress-standard-border-width)}[data-size=large]{height:var(--qds-feedback-loader-large-size);width:var(--qds-feedback-loader-large-size)}[data-size=large][data-status=loading]{padding:var(--qds-signature-circle-progress-large-border-width)}[data-size=jumbo]{height:var(--qds-feedback-loader-jumbo-size);width:var(--qds-feedback-loader-jumbo-size)}[data-size=jumbo][data-status=loading]{padding:var(--qds-signature-circle-progress-jumbo-border-width)}[data-size=hero]{height:var(--qds-feedback-loader-hero-size);width:var(--qds-feedback-loader-hero-size)}[data-size=hero][data-status=loading]{padding:var(--qds-signature-circle-progress-hero-border-width)}[data-status=loading]{animation:a 1s linear infinite;-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude}[data-status=loading][data-importance=standard]{background-image:var(--qds-theme-feedback-loader-standard-indeterminate)}[data-status=loading][data-importance=destructive]{background-image:var(\n --qds-theme-feedback-loader-destructive-indeterminate\n )}[data-status=loading][data-importance=informative]{background-image:var(\n --qds-theme-feedback-loader-informational-indeterminate\n )}[data-status=loading][data-importance=neutral-contrast]{background-image:var(\n --qds-theme-feedback-loader-neutral-contrast-indeterminate\n );border:var(--qds-theme-feedback-loader-neutral-contrast-indeterminate)}[data-status=loading][data-importance=neutral]{background-image:var(--qds-theme-feedback-loader-neutral-indeterminate);border:var(--qds-theme-feedback-loader-neutral-indeterminate)}@keyframes a{to{transform:rotate(1turn)}}[data-status=success]{color:var(--qds-theme-feedback-result-success)}[data-status=warning]{color:var(--qds-theme-feedback-result-partial-success)}[data-status=error]{color:var(--qds-theme-feedback-result-failure)}";
|
|
10
10
|
|
|
@@ -4,12 +4,12 @@
|
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
6
|
import { p as proxyCustomElement, H, c as createEvent, d as readTask, h } from './p-D2489VzR.js';
|
|
7
|
-
import { p as pickFocusEventAttributes, i as invariant, a as isEllipsisActive } from './p-
|
|
8
|
-
import { d as defineCustomElement$4 } from './p-
|
|
9
|
-
import { d as defineCustomElement$3 } from './p-
|
|
10
|
-
import { d as defineCustomElement$2 } from './p-
|
|
7
|
+
import { p as pickFocusEventAttributes, g as isRTL, h as getSubmenuOpenKey, i as invariant, a as isEllipsisActive } from './p-Bm_hrsjc.js';
|
|
8
|
+
import { d as defineCustomElement$4 } from './p-De7cAKF1.js';
|
|
9
|
+
import { d as defineCustomElement$3 } from './p-EjoVBa5a.js';
|
|
10
|
+
import { d as defineCustomElement$2 } from './p-BGAgQ6J5.js';
|
|
11
11
|
|
|
12
|
-
const menuItemCss = ":host([hidden]){display:none!important}:host{display:block}:host(:focus-visible){border-radius:var(--qds-control-border-radius);box-shadow:0 0 0 var(--qds-focus-heavy-border-width) var(--qds-theme-focus-border);outline:var(--qds-theme-focus-border-contrast) solid var(--qds-focus-light-border-width);outline-offset:0}.qds-menu-item-container{align-items:center;display:flex;flex-grow:1}.qds-disabled{cursor:not-allowed;opacity:var(--qds-theme-disabled);pointer-events:none}.qds-icon{color:var(--qds-theme-text-standard)}.qds-text{color:var(--qds-theme-title);flex-grow:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.qds-shortcut{color:var(--qds-theme-text-subdued)}[data-size=small] .qds-menu-item-container{gap:var(--qds-list-item-small-gap-internal);padding-block:var(--qds-list-item-small-padding-vertical);padding-inline:var(--qds-list-item-small-padding-horizontal)}[data-size=small] .menu-item-checkable,[data-size=small] .qds-icon{height:var(--qds-control-small-icon-size);width:var(--qds-control-small-icon-size)}[data-size=small] .qds-text{font:var(--qds-list-item-small-title)}[data-size=standard] .qds-menu-item-container{gap:var(--qds-list-item-standard-gap-internal);padding-block:var(--qds-list-item-standard-padding-vertical);padding-inline:var(--qds-list-item-standard-padding-horizontal)}[data-size=standard] .menu-item-checkable,[data-size=standard] .qds-icon{height:var(--qds-control-standard-icon-size);width:var(--qds-control-standard-icon-size)}[data-size=standard] .qds-text{font:var(--qds-list-item-standard-title)}[data-size=large] .qds-menu-item-container{gap:var(--qds-list-item-large-gap-internal);padding-block:var(--qds-list-item-large-padding-vertical);padding-inline:var(--qds-list-item-large-padding-horizontal)}[data-size=large] .menu-item-checkable,[data-size=large] .qds-icon{height:var(--qds-control-large-icon-size);width:var(--qds-control-large-icon-size)}[data-size=large] .qds-text{font:var(--qds-list-item-large-title)}.qds-menu-item{align-items:center;-webkit-appearance:none;appearance:none;border:none;border-radius:var(--qds-control-border-radius);box-sizing:border-box;color:var(--qds-theme-text-standard);cursor:pointer;display:flex;flex-grow:1;text-align:initial;-webkit-text-decoration:none;text-decoration:none}.qds-menu-item:not(.qds-selected):not(.qds-disabled):hover{background-color:var(--qds-theme-interactive-background-hover)}.qds-menu-item:not(.qds-selected):not(.qds-disabled):active{background-color:var(--qds-theme-interactive-background-pressed)}";
|
|
12
|
+
const menuItemCss = ":host([hidden]){display:none!important}:host{display:block}:host(:focus-visible){border-radius:var(--qds-control-border-radius);box-shadow:0 0 0 var(--qds-focus-heavy-border-width) var(--qds-theme-focus-border);outline:var(--qds-theme-focus-border-contrast) solid var(--qds-focus-light-border-width);outline-offset:0}.qds-menu-item-container{align-items:center;display:flex;flex-grow:1}.qds-disabled{cursor:not-allowed;opacity:var(--qds-theme-disabled);pointer-events:none}.qds-icon{color:var(--qds-theme-text-standard);transform:scaleX(var(--qds-direction-factor,1))}.qds-text{color:var(--qds-theme-title);flex-grow:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.qds-shortcut{color:var(--qds-theme-text-subdued)}[data-size=small] .qds-menu-item-container{gap:var(--qds-list-item-small-gap-internal);padding-block:var(--qds-list-item-small-padding-vertical);padding-inline:var(--qds-list-item-small-padding-horizontal)}[data-size=small] .menu-item-checkable,[data-size=small] .qds-icon{height:var(--qds-control-small-icon-size);width:var(--qds-control-small-icon-size)}[data-size=small] .qds-text{font:var(--qds-list-item-small-title)}[data-size=standard] .qds-menu-item-container{gap:var(--qds-list-item-standard-gap-internal);padding-block:var(--qds-list-item-standard-padding-vertical);padding-inline:var(--qds-list-item-standard-padding-horizontal)}[data-size=standard] .menu-item-checkable,[data-size=standard] .qds-icon{height:var(--qds-control-standard-icon-size);width:var(--qds-control-standard-icon-size)}[data-size=standard] .qds-text{font:var(--qds-list-item-standard-title)}[data-size=large] .qds-menu-item-container{gap:var(--qds-list-item-large-gap-internal);padding-block:var(--qds-list-item-large-padding-vertical);padding-inline:var(--qds-list-item-large-padding-horizontal)}[data-size=large] .menu-item-checkable,[data-size=large] .qds-icon{height:var(--qds-control-large-icon-size);width:var(--qds-control-large-icon-size)}[data-size=large] .qds-text{font:var(--qds-list-item-large-title)}.qds-menu-item{align-items:center;-webkit-appearance:none;appearance:none;border:none;border-radius:var(--qds-control-border-radius);box-sizing:border-box;color:var(--qds-theme-text-standard);cursor:pointer;display:flex;flex-grow:1;text-align:initial;-webkit-text-decoration:none;text-decoration:none}.qds-menu-item:not(.qds-selected):not(.qds-disabled):hover{background-color:var(--qds-theme-interactive-background-hover)}.qds-menu-item:not(.qds-selected):not(.qds-disabled):active{background-color:var(--qds-theme-interactive-background-pressed)}";
|
|
13
13
|
|
|
14
14
|
// SPDX-FileCopyrightText: © 2025 Schneider Electric
|
|
15
15
|
//
|
|
@@ -30,7 +30,7 @@ var __classPrivateFieldSet = (undefined && undefined.__classPrivateFieldSet) ||
|
|
|
30
30
|
throw new TypeError("Cannot write private member to an object whose class did not declare it");
|
|
31
31
|
return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
|
|
32
32
|
};
|
|
33
|
-
var _MenuItem_instances, _MenuItem_ro, _MenuItem_menuItem, _MenuItem_span, _MenuItem_computedSize_get, _MenuItem_computedType_get, _MenuItem_computedCheckable_get, _MenuItem_computedChecked_get, _MenuItem_computedDisabled_get, _MenuItem_hasSubmenu_get, _MenuItem_menuitemDivRef, _MenuItem_spanRef, _MenuItem_tooltipRef;
|
|
33
|
+
var _MenuItem_instances, _MenuItem_ro, _MenuItem_menuItem, _MenuItem_span, _MenuItem_submenuDropdown, _MenuItem_submenuPlacement_get, _MenuItem_computedSize_get, _MenuItem_computedType_get, _MenuItem_computedCheckable_get, _MenuItem_computedChecked_get, _MenuItem_computedDisabled_get, _MenuItem_hasSubmenu_get, _MenuItem_menuitemDivRef, _MenuItem_spanRef, _MenuItem_tooltipRef;
|
|
34
34
|
const MenuItem = /*@__PURE__*/ proxyCustomElement(class MenuItem extends H {
|
|
35
35
|
constructor(registerHost) {
|
|
36
36
|
super();
|
|
@@ -61,6 +61,7 @@ const MenuItem = /*@__PURE__*/ proxyCustomElement(class MenuItem extends H {
|
|
|
61
61
|
_MenuItem_ro.set(this, void 0);
|
|
62
62
|
_MenuItem_menuItem.set(this, void 0);
|
|
63
63
|
_MenuItem_span.set(this, void 0);
|
|
64
|
+
_MenuItem_submenuDropdown.set(this, void 0);
|
|
64
65
|
_MenuItem_menuitemDivRef.set(this, (menuItem) => {
|
|
65
66
|
if (menuItem) {
|
|
66
67
|
__classPrivateFieldSet(this, _MenuItem_menuItem, menuItem, "f");
|
|
@@ -91,6 +92,24 @@ const MenuItem = /*@__PURE__*/ proxyCustomElement(class MenuItem extends H {
|
|
|
91
92
|
this.checked = !__classPrivateFieldGet(this, _MenuItem_instances, "a", _MenuItem_computedChecked_get);
|
|
92
93
|
this.selectEmitter.emit();
|
|
93
94
|
}
|
|
95
|
+
if (__classPrivateFieldGet(this, _MenuItem_instances, "a", _MenuItem_hasSubmenu_get) && __classPrivateFieldGet(this, _MenuItem_submenuDropdown, "f")) {
|
|
96
|
+
__classPrivateFieldGet(this, _MenuItem_submenuDropdown, "f").placement = isRTL(this.host)
|
|
97
|
+
? __classPrivateFieldGet(this, _MenuItem_instances, "a", _MenuItem_submenuPlacement_get)
|
|
98
|
+
: __classPrivateFieldGet(this, _MenuItem_instances, "a", _MenuItem_submenuPlacement_get);
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
async onKeydown(event) {
|
|
102
|
+
if (!__classPrivateFieldGet(this, _MenuItem_instances, "a", _MenuItem_hasSubmenu_get) || !__classPrivateFieldGet(this, _MenuItem_submenuDropdown, "f"))
|
|
103
|
+
return;
|
|
104
|
+
const openKey = getSubmenuOpenKey(this.host);
|
|
105
|
+
if (event.key === openKey || event.key === ' ' || event.key === 'Enter') {
|
|
106
|
+
event.preventDefault();
|
|
107
|
+
event.stopPropagation();
|
|
108
|
+
__classPrivateFieldGet(this, _MenuItem_submenuDropdown, "f").placement =
|
|
109
|
+
event.key === openKey ? __classPrivateFieldGet(this, _MenuItem_instances, "a", _MenuItem_submenuPlacement_get) : __classPrivateFieldGet(this, _MenuItem_instances, "a", _MenuItem_submenuPlacement_get);
|
|
110
|
+
await __classPrivateFieldGet(this, _MenuItem_submenuDropdown, "f").show();
|
|
111
|
+
await __classPrivateFieldGet(this, _MenuItem_submenuDropdown, "f").focusFirstItem();
|
|
112
|
+
}
|
|
94
113
|
}
|
|
95
114
|
disabledChanged() {
|
|
96
115
|
this.internals.ariaDisabled = __classPrivateFieldGet(this, _MenuItem_instances, "a", _MenuItem_computedDisabled_get).toString();
|
|
@@ -112,16 +131,21 @@ const MenuItem = /*@__PURE__*/ proxyCustomElement(class MenuItem extends H {
|
|
|
112
131
|
}
|
|
113
132
|
componentWillLoad() {
|
|
114
133
|
this.hasSubmenuSlot = this.host.hasChildNodes();
|
|
115
|
-
this.internals.role =
|
|
116
|
-
|
|
134
|
+
this.internals.role = this.hasSubmenuSlot
|
|
135
|
+
? 'menu'
|
|
136
|
+
: this.type === 'checkbox'
|
|
137
|
+
? 'menuitemcheckbox'
|
|
138
|
+
: 'menuitem';
|
|
117
139
|
this.disabledChanged();
|
|
118
140
|
}
|
|
119
141
|
render() {
|
|
120
|
-
return (h("div", { key: '
|
|
142
|
+
return (h("div", { key: 'fae8f24bbefcdc64c004b8da65a70cd8b9fe8438', class: {
|
|
121
143
|
'qds-menu-item': true,
|
|
122
144
|
'qds-disabled': __classPrivateFieldGet(this, _MenuItem_instances, "a", _MenuItem_computedDisabled_get),
|
|
123
145
|
'qds-has-submenu': __classPrivateFieldGet(this, _MenuItem_instances, "a", _MenuItem_hasSubmenu_get),
|
|
124
|
-
}, ref: __classPrivateFieldGet(this, _MenuItem_menuitemDivRef, "f"), "data-size": __classPrivateFieldGet(this, _MenuItem_instances, "a", _MenuItem_computedSize_get), "aria-hidden": "true" }, h("div", { key: '
|
|
146
|
+
}, ref: __classPrivateFieldGet(this, _MenuItem_menuitemDivRef, "f"), "data-size": __classPrivateFieldGet(this, _MenuItem_instances, "a", _MenuItem_computedSize_get), "aria-hidden": "true" }, h("div", { key: 'b45e71326da41fc69fd8c9a39ba169eb47f2c8dc', class: "qds-menu-item-container" }, __classPrivateFieldGet(this, _MenuItem_instances, "a", _MenuItem_computedCheckable_get) && !__classPrivateFieldGet(this, _MenuItem_instances, "a", _MenuItem_computedChecked_get) && (h("span", { key: 'd71f665a70cd44ca1fd13715a7caebf01714993c', class: "menu-item-checkable" })), __classPrivateFieldGet(this, _MenuItem_instances, "a", _MenuItem_computedChecked_get) && (h("qds-icon", { key: '6e50fb81a27ef336c33a7d0a0efe073f0760e5c0', class: "qds-icon", library: "core", name: "checked" })), this.iconName !== undefined && this.iconName !== '' && (h("qds-icon", { key: '1c746859fb0e38ea9ad2cbce505dfba50db6342a', class: "qds-icon", library: this.iconLibrary, name: this.iconName })), h("span", { key: '035d26a96b245959e98a89b652b60af3feb837c5', class: "qds-text", ref: __classPrivateFieldGet(this, _MenuItem_spanRef, "f") }, this.text), this.shortcut !== undefined && this.shortcut !== '' && (h("span", { key: 'ab0cae8c88d869426ebb91769ec45186f1f73342', class: "qds-shortcut" }, this.shortcut)), __classPrivateFieldGet(this, _MenuItem_instances, "a", _MenuItem_hasSubmenu_get) && (h("qds-icon", { key: '363565cb9b80eb1063fc95c46bc59bbf5d5f2ae3', class: "qds-icon", library: "core", name: "navigation" }))), __classPrivateFieldGet(this, _MenuItem_instances, "a", _MenuItem_hasSubmenu_get) && (h("qds-dropdown", { key: 'f44a9870d3b5c5cdc24f27ba67e4bfda6f00252a', class: "qds-accessory qds-related", target: __classPrivateFieldGet(this, _MenuItem_menuitemDivRef, "f"), ref: (element) => {
|
|
147
|
+
__classPrivateFieldSet(this, _MenuItem_submenuDropdown, element, "f");
|
|
148
|
+
} }, h("slot", { key: '45c0814fb09df52fc2cbc63f0d35e6d4f09f2a55' }))), this.tooltip && (h("qds-tooltip", { key: '2dac01c4221bd941b3b62946f5ddc92f4682182a', ref: __classPrivateFieldGet(this, _MenuItem_tooltipRef, "f") }, this.text))));
|
|
125
149
|
}
|
|
126
150
|
get host() { return this; }
|
|
127
151
|
static get watchers() { return {
|
|
@@ -140,11 +164,13 @@ const MenuItem = /*@__PURE__*/ proxyCustomElement(class MenuItem extends H {
|
|
|
140
164
|
"shortcut": [1],
|
|
141
165
|
"hasSubmenuSlot": [32],
|
|
142
166
|
"tooltip": [32]
|
|
143
|
-
}, [[0, "blur", "onBlur"], [0, "focus", "onFocus"], [0, "click", "onClick"]], {
|
|
167
|
+
}, [[0, "blur", "onBlur"], [0, "focus", "onFocus"], [0, "click", "onClick"], [0, "keydown", "onKeydown"]], {
|
|
144
168
|
"disabled": ["disabledChanged"],
|
|
145
169
|
"checked": ["checkedChanged"]
|
|
146
170
|
}]);
|
|
147
|
-
_MenuItem_ro = new WeakMap(), _MenuItem_menuItem = new WeakMap(), _MenuItem_span = new WeakMap(), _MenuItem_menuitemDivRef = new WeakMap(), _MenuItem_spanRef = new WeakMap(), _MenuItem_tooltipRef = new WeakMap(), _MenuItem_instances = new WeakSet(),
|
|
171
|
+
_MenuItem_ro = new WeakMap(), _MenuItem_menuItem = new WeakMap(), _MenuItem_span = new WeakMap(), _MenuItem_submenuDropdown = new WeakMap(), _MenuItem_menuitemDivRef = new WeakMap(), _MenuItem_spanRef = new WeakMap(), _MenuItem_tooltipRef = new WeakMap(), _MenuItem_instances = new WeakSet(), _MenuItem_submenuPlacement_get = function _MenuItem_submenuPlacement_get() {
|
|
172
|
+
return isRTL(this.host) ? 'left-start' : 'right-start';
|
|
173
|
+
}, _MenuItem_computedSize_get = function _MenuItem_computedSize_get() {
|
|
148
174
|
switch (this.size) {
|
|
149
175
|
case 'standard':
|
|
150
176
|
case 'small':
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"file":"qds-menu-item.js","mappings":"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","names":["__stencil_proxyCustomElement","HTMLElement"],"sources":["src/components/menu-item/menu-item.css?tag=qds-menu-item&encapsulation=shadow","src/components/menu-item/menu-item.tsx"],"sourcesContent":["/*\n * SPDX-FileCopyrightText: © 2025 Schneider Electric\n *\n * SPDX-License-Identifier: Apache-2.0\n */\n\n@import url('../shared.css');\n\n:host {\n display: block;\n}\n\n:host(:focus-visible) {\n /* inner ring */\n outline: var(--qds-theme-focus-border-contrast) solid\n var(--qds-focus-light-border-width);\n outline-offset: 0;\n\n /* outer ring */\n box-shadow: 0 0 0 var(--qds-focus-heavy-border-width)\n var(--qds-theme-focus-border);\n border-radius: var(--qds-control-border-radius);\n}\n\n.qds-menu-item-container {\n display: flex;\n align-items: center;\n flex-grow: 1;\n}\n\n.qds-disabled {\n opacity: var(--qds-theme-disabled);\n pointer-events: none;\n cursor: not-allowed;\n}\n\n.qds-icon {\n color: var(--qds-theme-text-standard);\n}\n\n.qds-text {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n color: var(--qds-theme-title);\n flex-grow: 1;\n}\n\n.qds-shortcut {\n color: var(--qds-theme-text-subdued);\n}\n\n[data-size='small'] {\n .qds-menu-item-container {\n gap: var(--qds-list-item-small-gap-internal);\n padding-inline: var(--qds-list-item-small-padding-horizontal);\n padding-block: var(--qds-list-item-small-padding-vertical);\n }\n\n .menu-item-checkable,\n .qds-icon {\n height: var(--qds-control-small-icon-size);\n width: var(--qds-control-small-icon-size);\n }\n\n .qds-text {\n font: var(--qds-list-item-small-title);\n }\n}\n\n[data-size='standard'] {\n .qds-menu-item-container {\n gap: var(--qds-list-item-standard-gap-internal);\n padding-inline: var(--qds-list-item-standard-padding-horizontal);\n padding-block: var(--qds-list-item-standard-padding-vertical);\n }\n\n .menu-item-checkable,\n .qds-icon {\n height: var(--qds-control-standard-icon-size);\n width: var(--qds-control-standard-icon-size);\n }\n\n .qds-text {\n font: var(--qds-list-item-standard-title);\n }\n}\n\n[data-size='large'] {\n .qds-menu-item-container {\n gap: var(--qds-list-item-large-gap-internal);\n padding-inline: var(--qds-list-item-large-padding-horizontal);\n padding-block: var(--qds-list-item-large-padding-vertical);\n }\n\n .menu-item-checkable,\n .qds-icon {\n height: var(--qds-control-large-icon-size);\n width: var(--qds-control-large-icon-size);\n }\n\n .qds-text {\n font: var(--qds-list-item-large-title);\n }\n}\n\n.qds-menu-item {\n box-sizing: border-box;\n display: flex;\n flex-grow: 1;\n align-items: center;\n appearance: none;\n border: none;\n border-radius: var(--qds-control-border-radius);\n cursor: pointer;\n text-align: initial;\n text-decoration: none;\n color: var(--qds-theme-text-standard);\n\n &:not(.qds-selected, .qds-disabled) {\n &:hover {\n background-color: var(--qds-theme-interactive-background-hover);\n }\n\n &:active {\n background-color: var(--qds-theme-interactive-background-pressed);\n }\n }\n}\n","// SPDX-FileCopyrightText: © 2025 Schneider Electric\n//\n// SPDX-License-Identifier: Apache-2.0\n\nimport type { ComponentInterface, EventEmitter } from '@stencil/core'\nimport {\n AttachInternals,\n Component,\n Element,\n Event,\n h,\n Listen,\n Prop,\n readTask,\n State,\n Watch,\n} from '@stencil/core'\n\nimport type { QdsFocusEventDetail } from '../../helpers'\nimport {\n invariant,\n isEllipsisActive,\n pickFocusEventAttributes,\n} from '../../helpers'\nimport type { Size } from '../shared'\n\nexport type Type = 'checkbox' | undefined\n\n/**\n *\n *\n * @see https://quartz.se.com/build/components/menu-item\n */\n@Component({\n tag: 'qds-menu-item',\n shadow: true,\n styleUrl: 'menu-item.css',\n})\nexport class MenuItem implements ComponentInterface {\n /**\n * Prevents the menu item from being interacted with: it cannot be clicked\n * or focused.\n */\n @Prop() public readonly disabled?: boolean = false\n\n /**\n * The name of the icon to render.\n *\n * Available names depend on the icon library being used.\n */\n @Prop() public readonly iconName?: string\n\n /**\n * The name of a registered icon library.\n */\n @Prop() public readonly iconLibrary: string = 'default'\n\n /**\n * The menu item's size.\n */\n @Prop() public readonly size?: Size = 'standard'\n\n /**\n * Whether or not the menu item should be selectable.\n */\n @Prop() public type: Type\n\n /**\n * Whether or not the menu item is checked.\n */\n @Prop({ mutable: true }) public checked?: boolean\n\n /**\n * The menu item's text\n */\n @Prop() public readonly text!: string\n\n /**\n * The shortcut of the action.\n */\n @Prop() public readonly shortcut?: string\n\n @State() private hasSubmenuSlot = false\n\n @State() private tooltip = false\n\n /**\n * Emitted when the menu item loses focus.\n */\n @Event({ eventName: 'qdsBlur', bubbles: false, cancelable: false })\n private readonly blurEmitter!: EventEmitter<QdsFocusEventDetail>\n\n /**\n * Emitted when the menu item gains focus.\n */\n @Event({ eventName: 'qdsFocus', bubbles: false, cancelable: false })\n private readonly focusEmitter!: EventEmitter<QdsFocusEventDetail>\n\n /**\n * Emitted when the menu item is checked.\n */\n @Event({ eventName: 'qdsSelect', cancelable: false })\n private readonly selectEmitter!: EventEmitter<void>\n\n @Element() private readonly host!: HTMLElement\n\n @AttachInternals() private readonly internals!: ElementInternals\n\n #ro?: ResizeObserver\n\n #menuItem!: HTMLDivElement\n\n #span?: HTMLSpanElement\n\n get #computedSize(): Size {\n switch (this.size) {\n case 'standard':\n case 'small':\n case 'large': {\n return this.size\n }\n default: {\n return 'standard'\n }\n }\n }\n\n get #computedType(): Type {\n return this.type ?? undefined\n }\n\n get #computedCheckable(): boolean {\n return this.#computedType === 'checkbox'\n }\n\n get #computedChecked(): boolean {\n return (\n (this.#computedCheckable && !this.#hasSubmenu && this.checked) ?? false\n )\n }\n\n get #computedDisabled(): boolean {\n return this.disabled ?? false\n }\n\n get #hasSubmenu(): boolean {\n return this.hasSubmenuSlot\n }\n\n @Listen('blur')\n protected onBlur(event: FocusEvent): void {\n this.blurEmitter.emit(pickFocusEventAttributes(event))\n }\n\n @Listen('focus')\n protected onFocus(event: FocusEvent): void {\n this.focusEmitter.emit(pickFocusEventAttributes(event))\n }\n\n @Listen('click')\n protected onClick(event: MouseEvent): void {\n if (this.#computedDisabled) {\n event.stopImmediatePropagation()\n return\n }\n\n if (this.#computedCheckable) {\n this.checked = !this.#computedChecked\n this.selectEmitter.emit()\n }\n }\n\n @Watch('disabled')\n protected disabledChanged(): void {\n this.internals.ariaDisabled = this.#computedDisabled.toString()\n }\n\n @Watch('checked')\n protected checkedChanged(): void {\n this.internals.ariaChecked = this.#computedChecked.toString()\n }\n\n public componentDidLoad(): void {\n this.checkedChanged()\n invariant(this.#span)\n\n const span = this.#span\n readTask(() => {\n this.tooltip = isEllipsisActive(span)\n })\n this.#ro = new ResizeObserver(([spanEntry]) => {\n this.tooltip = isEllipsisActive(spanEntry.target as HTMLSpanElement)\n })\n this.#ro.observe(this.#span)\n }\n\n public componentWillLoad(): void {\n this.hasSubmenuSlot = this.host.hasChildNodes()\n this.internals.role =\n this.type === 'checkbox' ? 'menuitemcheckbox' : 'menuitem'\n this.disabledChanged()\n }\n\n public render() {\n return (\n <div\n class={{\n 'qds-menu-item': true,\n 'qds-disabled': this.#computedDisabled,\n 'qds-has-submenu': this.#hasSubmenu,\n }}\n ref={this.#menuitemDivRef}\n data-size={this.#computedSize}\n aria-hidden=\"true\"\n >\n <div class=\"qds-menu-item-container\">\n {this.#computedCheckable && !this.#computedChecked && (\n <span class=\"menu-item-checkable\" />\n )}\n {this.#computedChecked && (\n <qds-icon class=\"qds-icon\" library=\"core\" name=\"checked\" />\n )}\n {this.iconName !== undefined && this.iconName !== '' && (\n <qds-icon\n class=\"qds-icon\"\n library={this.iconLibrary}\n name={this.iconName}\n />\n )}\n <span class=\"qds-text\" ref={this.#spanRef}>\n {this.text}\n </span>\n {this.shortcut !== undefined && this.shortcut !== '' && (\n <span class=\"qds-shortcut\">{this.shortcut}</span>\n )}\n {this.#hasSubmenu && (\n <qds-icon class=\"qds-icon\" library=\"core\" name=\"navigation\" />\n )}\n </div>\n {this.#hasSubmenu && (\n <qds-dropdown\n class=\"qds-accessory qds-related\"\n placement=\"right-start\"\n target={this.#menuitemDivRef}\n >\n <slot />\n </qds-dropdown>\n )}\n {this.tooltip && (\n <qds-tooltip ref={this.#tooltipRef}>{this.text}</qds-tooltip>\n )}\n </div>\n )\n }\n\n readonly #menuitemDivRef = (menuItem?: HTMLDivElement): HTMLDivElement => {\n if (menuItem) {\n this.#menuItem = menuItem\n }\n\n return this.#menuItem\n }\n\n readonly #spanRef = (span?: HTMLSpanElement): void => {\n this.#span = span\n }\n\n readonly #tooltipRef = (tooltip?: HTMLQdsTooltipElement): void => {\n if (tooltip)\n // eslint-disable-next-line no-param-reassign\n tooltip.target = this.#menuItem\n }\n}\n"],"version":3}
|
|
1
|
+
{"file":"qds-menu-item.js","mappings":"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","names":["__stencil_proxyCustomElement","HTMLElement"],"sources":["src/components/menu-item/menu-item.css?tag=qds-menu-item&encapsulation=shadow","src/components/menu-item/menu-item.tsx"],"sourcesContent":["/*\n * SPDX-FileCopyrightText: © 2025 Schneider Electric\n *\n * SPDX-License-Identifier: Apache-2.0\n */\n\n@import url('../shared.css');\n\n:host {\n display: block;\n}\n\n:host(:focus-visible) {\n /* inner ring */\n outline: var(--qds-theme-focus-border-contrast) solid\n var(--qds-focus-light-border-width);\n outline-offset: 0;\n\n /* outer ring */\n box-shadow: 0 0 0 var(--qds-focus-heavy-border-width)\n var(--qds-theme-focus-border);\n border-radius: var(--qds-control-border-radius);\n}\n\n.qds-menu-item-container {\n display: flex;\n align-items: center;\n flex-grow: 1;\n}\n\n.qds-disabled {\n opacity: var(--qds-theme-disabled);\n pointer-events: none;\n cursor: not-allowed;\n}\n\n.qds-icon {\n color: var(--qds-theme-text-standard);\n transform: scaleX(var(--qds-direction-factor, 1));\n}\n\n.qds-text {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n color: var(--qds-theme-title);\n flex-grow: 1;\n}\n\n.qds-shortcut {\n color: var(--qds-theme-text-subdued);\n}\n\n[data-size='small'] {\n .qds-menu-item-container {\n gap: var(--qds-list-item-small-gap-internal);\n padding-inline: var(--qds-list-item-small-padding-horizontal);\n padding-block: var(--qds-list-item-small-padding-vertical);\n }\n\n .menu-item-checkable,\n .qds-icon {\n height: var(--qds-control-small-icon-size);\n width: var(--qds-control-small-icon-size);\n }\n\n .qds-text {\n font: var(--qds-list-item-small-title);\n }\n}\n\n[data-size='standard'] {\n .qds-menu-item-container {\n gap: var(--qds-list-item-standard-gap-internal);\n padding-inline: var(--qds-list-item-standard-padding-horizontal);\n padding-block: var(--qds-list-item-standard-padding-vertical);\n }\n\n .menu-item-checkable,\n .qds-icon {\n height: var(--qds-control-standard-icon-size);\n width: var(--qds-control-standard-icon-size);\n }\n\n .qds-text {\n font: var(--qds-list-item-standard-title);\n }\n}\n\n[data-size='large'] {\n .qds-menu-item-container {\n gap: var(--qds-list-item-large-gap-internal);\n padding-inline: var(--qds-list-item-large-padding-horizontal);\n padding-block: var(--qds-list-item-large-padding-vertical);\n }\n\n .menu-item-checkable,\n .qds-icon {\n height: var(--qds-control-large-icon-size);\n width: var(--qds-control-large-icon-size);\n }\n\n .qds-text {\n font: var(--qds-list-item-large-title);\n }\n}\n\n.qds-menu-item {\n box-sizing: border-box;\n display: flex;\n flex-grow: 1;\n align-items: center;\n appearance: none;\n border: none;\n border-radius: var(--qds-control-border-radius);\n cursor: pointer;\n text-align: initial;\n text-decoration: none;\n color: var(--qds-theme-text-standard);\n\n &:not(.qds-selected, .qds-disabled) {\n &:hover {\n background-color: var(--qds-theme-interactive-background-hover);\n }\n\n &:active {\n background-color: var(--qds-theme-interactive-background-pressed);\n }\n }\n}\n","// SPDX-FileCopyrightText: © 2025 Schneider Electric\n//\n// SPDX-License-Identifier: Apache-2.0\n\nimport type { ComponentInterface, EventEmitter } from '@stencil/core'\nimport {\n AttachInternals,\n Component,\n Element,\n Event,\n h,\n Listen,\n Prop,\n readTask,\n State,\n Watch,\n} from '@stencil/core'\n\nimport type { QdsFocusEventDetail } from '../../helpers'\nimport {\n getSubmenuOpenKey,\n invariant,\n isEllipsisActive,\n isRTL,\n pickFocusEventAttributes,\n} from '../../helpers'\nimport type { Size } from '../shared'\n\nexport type Type = 'checkbox' | undefined\n\n/**\n *\n *\n * @see https://quartz.se.com/build/components/menu-item\n */\n@Component({\n tag: 'qds-menu-item',\n shadow: true,\n styleUrl: 'menu-item.css',\n})\nexport class MenuItem implements ComponentInterface {\n /**\n * Prevents the menu item from being interacted with: it cannot be clicked\n * or focused.\n */\n @Prop() public readonly disabled?: boolean = false\n\n /**\n * The name of the icon to render.\n *\n * Available names depend on the icon library being used.\n */\n @Prop() public readonly iconName?: string\n\n /**\n * The name of a registered icon library.\n */\n @Prop() public readonly iconLibrary: string = 'default'\n\n /**\n * The menu item's size.\n */\n @Prop() public readonly size?: Size = 'standard'\n\n /**\n * Whether or not the menu item should be selectable.\n */\n @Prop() public type: Type\n\n /**\n * Whether or not the menu item is checked.\n */\n @Prop({ mutable: true }) public checked?: boolean\n\n /**\n * The menu item's text\n */\n @Prop() public readonly text!: string\n\n /**\n * The shortcut of the action.\n */\n @Prop() public readonly shortcut?: string\n\n @State() private hasSubmenuSlot = false\n\n @State() private tooltip = false\n\n /**\n * Emitted when the menu item loses focus.\n */\n @Event({ eventName: 'qdsBlur', bubbles: false, cancelable: false })\n private readonly blurEmitter!: EventEmitter<QdsFocusEventDetail>\n\n /**\n * Emitted when the menu item gains focus.\n */\n @Event({ eventName: 'qdsFocus', bubbles: false, cancelable: false })\n private readonly focusEmitter!: EventEmitter<QdsFocusEventDetail>\n\n /**\n * Emitted when the menu item is checked.\n */\n @Event({ eventName: 'qdsSelect', cancelable: false })\n private readonly selectEmitter!: EventEmitter<void>\n\n @Element() private readonly host!: HTMLElement\n\n @AttachInternals() private readonly internals!: ElementInternals\n\n #ro?: ResizeObserver\n\n #menuItem!: HTMLDivElement\n\n #span?: HTMLSpanElement\n\n #submenuDropdown?: HTMLQdsDropdownElement\n\n get #submenuPlacement(): 'left-start' | 'right-start' {\n return isRTL(this.host) ? 'left-start' : 'right-start'\n }\n\n get #computedSize(): Size {\n switch (this.size) {\n case 'standard':\n case 'small':\n case 'large': {\n return this.size\n }\n default: {\n return 'standard'\n }\n }\n }\n\n get #computedType(): Type {\n return this.type ?? undefined\n }\n\n get #computedCheckable(): boolean {\n return this.#computedType === 'checkbox'\n }\n\n get #computedChecked(): boolean {\n return (\n (this.#computedCheckable && !this.#hasSubmenu && this.checked) ?? false\n )\n }\n\n get #computedDisabled(): boolean {\n return this.disabled ?? false\n }\n\n get #hasSubmenu(): boolean {\n return this.hasSubmenuSlot\n }\n\n @Listen('blur')\n protected onBlur(event: FocusEvent): void {\n this.blurEmitter.emit(pickFocusEventAttributes(event))\n }\n\n @Listen('focus')\n protected onFocus(event: FocusEvent): void {\n this.focusEmitter.emit(pickFocusEventAttributes(event))\n }\n\n @Listen('click')\n protected onClick(event: MouseEvent): void {\n if (this.#computedDisabled) {\n event.stopImmediatePropagation()\n return\n }\n\n if (this.#computedCheckable) {\n this.checked = !this.#computedChecked\n this.selectEmitter.emit()\n }\n\n if (this.#hasSubmenu && this.#submenuDropdown) {\n this.#submenuDropdown.placement = isRTL(this.host)\n ? this.#submenuPlacement\n : this.#submenuPlacement\n }\n }\n\n @Listen('keydown')\n protected async onKeydown(event: KeyboardEvent): Promise<void> {\n if (!this.#hasSubmenu || !this.#submenuDropdown) return\n\n const openKey = getSubmenuOpenKey(this.host)\n if (event.key === openKey || event.key === ' ' || event.key === 'Enter') {\n event.preventDefault()\n event.stopPropagation()\n this.#submenuDropdown.placement =\n event.key === openKey ? this.#submenuPlacement : this.#submenuPlacement\n await this.#submenuDropdown.show()\n await this.#submenuDropdown.focusFirstItem()\n }\n }\n\n @Watch('disabled')\n protected disabledChanged(): void {\n this.internals.ariaDisabled = this.#computedDisabled.toString()\n }\n\n @Watch('checked')\n protected checkedChanged(): void {\n this.internals.ariaChecked = this.#computedChecked.toString()\n }\n\n public componentDidLoad(): void {\n this.checkedChanged()\n invariant(this.#span)\n\n const span = this.#span\n readTask(() => {\n this.tooltip = isEllipsisActive(span)\n })\n this.#ro = new ResizeObserver(([spanEntry]) => {\n this.tooltip = isEllipsisActive(spanEntry.target as HTMLSpanElement)\n })\n this.#ro.observe(this.#span)\n }\n\n public componentWillLoad(): void {\n this.hasSubmenuSlot = this.host.hasChildNodes()\n\n this.internals.role = this.hasSubmenuSlot\n ? 'menu'\n : this.type === 'checkbox'\n ? 'menuitemcheckbox'\n : 'menuitem'\n\n this.disabledChanged()\n }\n\n public render() {\n return (\n <div\n class={{\n 'qds-menu-item': true,\n 'qds-disabled': this.#computedDisabled,\n 'qds-has-submenu': this.#hasSubmenu,\n }}\n ref={this.#menuitemDivRef}\n data-size={this.#computedSize}\n aria-hidden=\"true\"\n >\n <div class=\"qds-menu-item-container\">\n {this.#computedCheckable && !this.#computedChecked && (\n <span class=\"menu-item-checkable\" />\n )}\n {this.#computedChecked && (\n <qds-icon class=\"qds-icon\" library=\"core\" name=\"checked\" />\n )}\n {this.iconName !== undefined && this.iconName !== '' && (\n <qds-icon\n class=\"qds-icon\"\n library={this.iconLibrary}\n name={this.iconName}\n />\n )}\n <span class=\"qds-text\" ref={this.#spanRef}>\n {this.text}\n </span>\n {this.shortcut !== undefined && this.shortcut !== '' && (\n <span class=\"qds-shortcut\">{this.shortcut}</span>\n )}\n {this.#hasSubmenu && (\n <qds-icon class=\"qds-icon\" library=\"core\" name=\"navigation\" />\n )}\n </div>\n {this.#hasSubmenu && (\n <qds-dropdown\n class=\"qds-accessory qds-related\"\n target={this.#menuitemDivRef}\n ref={(element: HTMLQdsDropdownElement | undefined) => {\n this.#submenuDropdown = element\n }}\n >\n <slot />\n </qds-dropdown>\n )}\n {this.tooltip && (\n <qds-tooltip ref={this.#tooltipRef}>{this.text}</qds-tooltip>\n )}\n </div>\n )\n }\n\n readonly #menuitemDivRef = (menuItem?: HTMLDivElement): HTMLDivElement => {\n if (menuItem) {\n this.#menuItem = menuItem\n }\n\n return this.#menuItem\n }\n\n readonly #spanRef = (span?: HTMLSpanElement): void => {\n this.#span = span\n }\n\n readonly #tooltipRef = (tooltip?: HTMLQdsTooltipElement): void => {\n if (tooltip)\n // eslint-disable-next-line no-param-reassign\n tooltip.target = this.#menuItem\n }\n}\n"],"version":3}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
*
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
|
-
import { M as MiniButton, d as defineCustomElement$1 } from './p-
|
|
6
|
+
import { M as MiniButton, d as defineCustomElement$1 } from './p-BxrR19WD.js';
|
|
7
7
|
|
|
8
8
|
const QdsMiniButton = MiniButton;
|
|
9
9
|
const defineCustomElement = defineCustomElement$1;
|
|
@@ -88,7 +88,7 @@ const ProgressBar = /*@__PURE__*/ proxyCustomElement(class ProgressBar extends H
|
|
|
88
88
|
this.valueChanged();
|
|
89
89
|
}
|
|
90
90
|
render() {
|
|
91
|
-
return (h("div", { key: '
|
|
91
|
+
return (h("div", { key: 'dceeec47c9023f86eb5c0be5535f04de6d9e0502', "aria-hidden": "true", class: "qds-track", "data-size": __classPrivateFieldGet(this, _ProgressBar_instances, "a", _ProgressBar_computedSize_get) }, h("div", { key: 'd8e61e369da33e1e661a021f05adf57691975e45', class: {
|
|
92
92
|
'qds-bar': true,
|
|
93
93
|
'qds-indeterminate': __classPrivateFieldGet(this, _ProgressBar_position, "f") === -1,
|
|
94
94
|
}, "data-size": __classPrivateFieldGet(this, _ProgressBar_instances, "a", _ProgressBar_computedSize_get), style: { width: this.width } })));
|
package/components/qds-radio.js
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
*
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
|
-
import { R as Radio, d as defineCustomElement$1 } from './p-
|
|
6
|
+
import { R as Radio, d as defineCustomElement$1 } from './p-BPNu4xuI.js';
|
|
7
7
|
|
|
8
8
|
const QdsRadio = Radio;
|
|
9
9
|
const defineCustomElement = defineCustomElement$1;
|
package/components/qds-select.js
CHANGED
|
@@ -4,11 +4,11 @@
|
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
6
|
import { p as proxyCustomElement, H, c as createEvent, h } from './p-D2489VzR.js';
|
|
7
|
-
import { i as invariant, p as pickFocusEventAttributes, e as pickInputEventAttributes, c as inheritAriaAttributes } from './p-
|
|
7
|
+
import { i as invariant, p as pickFocusEventAttributes, e as pickInputEventAttributes, c as inheritAriaAttributes } from './p-Bm_hrsjc.js';
|
|
8
8
|
import { V as VALID_STATE, C as CUSTOM_ERROR_FLAGS, N as NO_ERROR_FLAGS } from './p-CZRW1LV_.js';
|
|
9
|
-
import { d as defineCustomElement$2 } from './p-
|
|
9
|
+
import { d as defineCustomElement$2 } from './p-EjoVBa5a.js';
|
|
10
10
|
|
|
11
|
-
const selectCss = ":host([hidden]){display:none!important}:host{display:inline-block}slot{display:none}.qds-container{box-sizing:border-box;display:grid;grid-template-areas:\"
|
|
11
|
+
const selectCss = ":host([hidden]){display:none!important}:host{display:inline-block}slot{display:none}.qds-container{box-sizing:border-box;display:grid;grid-template-areas:\"j\"}.qds-container,.qds-select{width:inherit}.qds-icon,.qds-select{color:var(--qds-theme-form-input-text-active);grid-area:j}.qds-icon{place-self:center end;pointer-events:none}.qds-select{-webkit-appearance:none;appearance:none;background-color:var(--qds-theme-form-input-background-default);border-color:var(--qds-theme-form-input-border-default);border-radius:var(\n --qds-form-input-border-radius-top-left,var(--qds-form-input-border-radius)\n ) var(\n --qds-form-input-border-radius-top-right,var(--qds-form-input-border-radius)\n ) var(\n --qds-form-input-border-radius-bottom-right,var(--qds-form-input-border-radius)\n ) var(\n --qds-form-input-border-radius-bottom-left,var(--qds-form-input-border-radius)\n );border-style:solid;border-width:var(--qds-form-input-border-width-default) var(\n --qds-form-input-border-width-inline-end,var(--qds-form-input-border-width-default)\n ) var(\n --qds-form-input-border-width-block-end,var(--qds-form-input-border-width-default)\n ) var(--qds-form-input-border-width-default);margin:0;outline:0;padding-block:0;text-overflow:ellipsis}.qds-select:enabled:hover{background-color:var(--qds-theme-form-input-background-hover);border-color:var(--qds-theme-form-input-border-hover)}.qds-select:enabled:active{background-color:var(--qds-theme-form-input-background-active);color:var(--qds-theme-form-input-text-active)}.qds-select:not(:focus):user-invalid{border-color:var(--qds-theme-feedback-result-failure)}.qds-select[data-status]{border-width:var(--qds-form-input-border-width-status) var(\n --qds-form-input-border-width-inline-end,var(--qds-form-input-border-width-status)\n ) var(\n --qds-form-input-border-width-block-end,var(--qds-form-input-border-width-status)\n ) var(--qds-form-input-border-width-status)}.qds-select[data-status=success]{border-color:var(--qds-theme-form-input-border-success)}.qds-select[data-status=warning]{border-color:var(--qds-theme-form-input-border-warning)}.qds-select :not(:focus):user-invalid,.qds-select[data-status=error]{border-color:var(--qds-theme-form-input-border-error)}.qds-select:disabled,.qds-select:disabled+.qds-icon{opacity:var(--qds-theme-disabled)}:is(::slotted(optgroup),::slotted(optgroup:not(:disabled)>option),::slotted(option)):disabled{opacity:var(--qds-theme-disabled)}::slotted(optgroup){font:var(--qds-accessory-section-title)}::slotted(optgroup>option),::slotted(option){font:var(--qds-list-item-label-main)}.qds-select[data-size=small]{font:var(--qds-form-small-text);padding-inline:var(--qds-form-input-small-padding-start) var(--qds-form-input-small-padding-end)}.qds-select[data-size=small]:not([multiple]){min-height:var(--qds-form-input-small-height);padding-inline-end:calc(var(--qds-control-small-icon-size) + var(--qds-form-input-small-gap-internal) + var(--qds-form-input-small-padding-end))}.qds-icon[data-size=small]{height:var(--qds-control-small-icon-size);margin-inline-end:calc(var(--qds-form-input-small-padding-end) + var(--qds-form-input-border-width-default));width:var(--qds-control-small-icon-size)}.qds-select[data-size=standard]{font:var(--qds-form-standard-text);padding-inline:var(--qds-form-input-standard-padding-start) var(--qds-form-input-standard-padding-end)}.qds-select[data-size=standard]:not([multiple]){min-height:var(--qds-form-input-standard-height);padding-inline-end:calc(var(--qds-control-standard-icon-size) + var(--qds-form-input-standard-gap-internal) + var(--qds-form-input-standard-padding-end))}.qds-icon[data-size=standard]{height:var(--qds-control-standard-icon-size);margin-inline-end:calc(var(--qds-form-input-standard-padding-end) + var(--qds-form-input-border-width-default));width:var(--qds-control-standard-icon-size)}.qds-select[data-size=large]{font:var(--qds-form-large-text);padding-inline:var(--qds-form-input-large-padding-start) var(--qds-form-input-large-padding-end)}.qds-select[data-size=large]:not([multiple]){min-height:var(--qds-form-input-large-height);padding-inline-end:calc(var(--qds-control-large-icon-size) + var(--qds-form-input-large-gap-internal) + var(--qds-form-input-large-padding-end))}.qds-icon[data-size=large]{height:var(--qds-control-large-icon-size);margin-inline-end:calc(var(--qds-form-input-large-padding-end) + var(--qds-form-input-border-width-default));width:var(--qds-control-large-icon-size)}.qds-focus-ring{border-radius:max(1px,var(\n --qds-form-input-border-radius-top-left,var(--qds-form-input-border-radius)\n )) max(1px,var(\n --qds-form-input-border-radius-top-right,var(--qds-form-input-border-radius)\n )) max(1px,var(\n --qds-form-input-border-radius-bottom-right,var(--qds-form-input-border-radius)\n )) max(1px,var(\n --qds-form-input-border-radius-bottom-left,var(--qds-form-input-border-radius)\n ));box-shadow:0 0 0 var(--qds-focus-heavy-border-width) var(--qds-theme-focus-border);grid-area:j;height:calc(100% + var(--qds-form-input-border-width-default) - var(\n --qds-form-input-border-width-block-end,\n var(--qds-form-input-border-width-default)\n ));isolation:isolate;outline:var(--qds-theme-focus-border-contrast) solid var(--qds-focus-light-border-width);outline-offset:0;pointer-events:none;visibility:hidden;width:calc(100% + var(--qds-form-input-border-width-default) - var(\n --qds-form-input-border-width-inline-end,\n var(--qds-form-input-border-width-default)\n ))}.qds-select:focus-visible~.qds-focus-ring{visibility:visible}";
|
|
12
12
|
|
|
13
13
|
// SPDX-FileCopyrightText: © 2024 Schneider Electric
|
|
14
14
|
//
|