@nldd/design-system 0.8.41 → 0.8.42
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/README.md +18 -1
- package/dist/assets/styles/tokens.d.ts +25 -0
- package/dist/assets/styles/tokens.d.ts.map +1 -0
- package/dist/assets/styles/tokens.js +25 -0
- package/dist/assets/styles/tokens.js.map +1 -0
- package/dist/components/actions/button/button.d.ts +5 -0
- package/dist/components/actions/button/button.d.ts.map +1 -1
- package/dist/components/actions/button/button.js +7 -0
- package/dist/components/actions/button/button.js.map +1 -1
- package/dist/components/actions/icon-button/icon-button.d.ts +5 -0
- package/dist/components/actions/icon-button/icon-button.d.ts.map +1 -1
- package/dist/components/actions/icon-button/icon-button.js +7 -0
- package/dist/components/actions/icon-button/icon-button.js.map +1 -1
- package/dist/components/actions/link/link.d.ts +17 -6
- package/dist/components/actions/link/link.d.ts.map +1 -1
- package/dist/components/actions/link/link.js +15 -5
- package/dist/components/actions/link/link.js.map +1 -1
- package/dist/components/actions/link/link.styles.d.ts.map +1 -1
- package/dist/components/actions/link/link.styles.js +44 -6
- package/dist/components/actions/link/link.styles.js.map +1 -1
- package/dist/components/actions/link/link.template.d.ts.map +1 -1
- package/dist/components/actions/link/link.template.js +7 -9
- package/dist/components/actions/link/link.template.js.map +1 -1
- package/dist/components/components.js +1 -1
- package/dist/components/content/icon/icon-aliases.d.ts.map +1 -1
- package/dist/components/content/icon/icon-aliases.js +6 -1
- package/dist/components/content/icon/icon-aliases.js.map +1 -1
- package/dist/components/content/icon/icon-registry.d.ts.map +1 -1
- package/dist/components/content/icon/icon-registry.js +11 -7
- package/dist/components/content/icon/icon-registry.js.map +1 -1
- package/dist/components/forms/form-field/form-field.styles.js +1 -1
- package/dist/components/{index-DMYkp2tq.js → index-CJ3mdHHo.js} +1573 -403
- package/dist/components/inputs/combo-box/combo-box.d.ts +27 -3
- package/dist/components/inputs/combo-box/combo-box.d.ts.map +1 -1
- package/dist/components/inputs/combo-box/combo-box.js +78 -21
- package/dist/components/inputs/combo-box/combo-box.js.map +1 -1
- package/dist/components/inputs/combo-box/combo-box.template.js +2 -2
- package/dist/components/inputs/combo-box/combo-box.template.js.map +1 -1
- package/dist/components/inputs/dropdown/dropdown.template.js +1 -1
- package/dist/components/inputs/number-field/number-field.d.ts +5 -0
- package/dist/components/inputs/number-field/number-field.d.ts.map +1 -1
- package/dist/components/inputs/number-field/number-field.js +7 -0
- package/dist/components/inputs/number-field/number-field.js.map +1 -1
- package/dist/components/inputs/search-field/search-field.d.ts +5 -0
- package/dist/components/inputs/search-field/search-field.d.ts.map +1 -1
- package/dist/components/inputs/search-field/search-field.js +7 -0
- package/dist/components/inputs/search-field/search-field.js.map +1 -1
- package/dist/components/inputs/switch/switch.d.ts +5 -0
- package/dist/components/inputs/switch/switch.d.ts.map +1 -1
- package/dist/components/inputs/switch/switch.js +7 -0
- package/dist/components/inputs/switch/switch.js.map +1 -1
- package/dist/components/inputs/switch-field/switch-field.d.ts +6 -0
- package/dist/components/inputs/switch-field/switch-field.d.ts.map +1 -1
- package/dist/components/inputs/switch-field/switch-field.js +8 -0
- package/dist/components/inputs/switch-field/switch-field.js.map +1 -1
- package/dist/components/inputs/text-field/text-field.d.ts +5 -1
- package/dist/components/inputs/text-field/text-field.d.ts.map +1 -1
- package/dist/components/inputs/text-field/text-field.js +7 -3
- package/dist/components/inputs/text-field/text-field.js.map +1 -1
- package/dist/components/layout/spacer/spacer.d.ts +28 -3
- package/dist/components/layout/spacer/spacer.d.ts.map +1 -1
- package/dist/components/layout/spacer/spacer.js +33 -2
- package/dist/components/layout/spacer/spacer.js.map +1 -1
- package/dist/components/layout/spacer/spacer.styles.d.ts.map +1 -1
- package/dist/components/layout/spacer/spacer.styles.js +157 -110
- package/dist/components/layout/spacer/spacer.styles.js.map +1 -1
- package/dist/components/lists-and-menus/cells/icon-cell/icon-cell.d.ts +2 -2
- package/dist/components/lists-and-menus/cells/icon-cell/icon-cell.d.ts.map +1 -1
- package/dist/components/lists-and-menus/cells/icon-cell/icon-cell.js +1 -1
- package/dist/components/lists-and-menus/cells/icon-cell/icon-cell.styles.d.ts.map +1 -1
- package/dist/components/lists-and-menus/cells/icon-cell/icon-cell.styles.js +50 -14
- package/dist/components/lists-and-menus/cells/icon-cell/icon-cell.styles.js.map +1 -1
- package/dist/components/lists-and-menus/cells/text-cell/text-cell.d.ts +28 -5
- package/dist/components/lists-and-menus/cells/text-cell/text-cell.d.ts.map +1 -1
- package/dist/components/lists-and-menus/cells/text-cell/text-cell.js +58 -5
- package/dist/components/lists-and-menus/cells/text-cell/text-cell.js.map +1 -1
- package/dist/components/lists-and-menus/cells/text-cell/text-cell.styles.d.ts.map +1 -1
- package/dist/components/lists-and-menus/cells/text-cell/text-cell.styles.js +29 -5
- package/dist/components/lists-and-menus/cells/text-cell/text-cell.styles.js.map +1 -1
- package/dist/components/lists-and-menus/cells/text-cell/text-cell.template.d.ts.map +1 -1
- package/dist/components/lists-and-menus/cells/text-cell/text-cell.template.js +33 -3
- package/dist/components/lists-and-menus/cells/text-cell/text-cell.template.js.map +1 -1
- package/dist/components/lists-and-menus/cells/title-cell/title-cell.d.ts +28 -5
- package/dist/components/lists-and-menus/cells/title-cell/title-cell.d.ts.map +1 -1
- package/dist/components/lists-and-menus/cells/title-cell/title-cell.js +58 -5
- package/dist/components/lists-and-menus/cells/title-cell/title-cell.js.map +1 -1
- package/dist/components/lists-and-menus/cells/title-cell/title-cell.styles.d.ts.map +1 -1
- package/dist/components/lists-and-menus/cells/title-cell/title-cell.styles.js +48 -5
- package/dist/components/lists-and-menus/cells/title-cell/title-cell.styles.js.map +1 -1
- package/dist/components/lists-and-menus/cells/title-cell/title-cell.template.d.ts.map +1 -1
- package/dist/components/lists-and-menus/cells/title-cell/title-cell.template.js +36 -7
- package/dist/components/lists-and-menus/cells/title-cell/title-cell.template.js.map +1 -1
- package/dist/components/lists-and-menus/list-item/list-item.d.ts +5 -0
- package/dist/components/lists-and-menus/list-item/list-item.d.ts.map +1 -1
- package/dist/components/lists-and-menus/list-item/list-item.js +7 -0
- package/dist/components/lists-and-menus/list-item/list-item.js.map +1 -1
- package/dist/components/lists-and-menus/list-item/list-item.styles.js +1 -1
- package/dist/components/lists-and-menus/menu/menu.d.ts +254 -0
- package/dist/components/lists-and-menus/menu/menu.d.ts.map +1 -1
- package/dist/components/lists-and-menus/menu/menu.i18n.d.ts +1 -0
- package/dist/components/lists-and-menus/menu/menu.i18n.d.ts.map +1 -1
- package/dist/components/lists-and-menus/menu/menu.i18n.js +1 -0
- package/dist/components/lists-and-menus/menu/menu.i18n.js.map +1 -1
- package/dist/components/lists-and-menus/menu/menu.js +906 -15
- package/dist/components/lists-and-menus/menu/menu.js.map +1 -1
- package/dist/components/lists-and-menus/menu/menu.styles.d.ts +1 -0
- package/dist/components/lists-and-menus/menu/menu.styles.d.ts.map +1 -1
- package/dist/components/lists-and-menus/menu/menu.styles.js +141 -2
- package/dist/components/lists-and-menus/menu/menu.styles.js.map +1 -1
- package/dist/components/lists-and-menus/menu/menu.template.d.ts +2 -1
- package/dist/components/lists-and-menus/menu/menu.template.d.ts.map +1 -1
- package/dist/components/lists-and-menus/menu/menu.template.js +60 -0
- package/dist/components/lists-and-menus/menu/menu.template.js.map +1 -1
- package/dist/components/navigation/document-tab-bar/document-tab-bar.styles.js +1 -1
- package/dist/components/navigation/pagination/pagination.template.js +1 -1
- package/dist/components/{prism-typescript-9LDqHHRS.js → prism-typescript-Cdpexfvg.js} +1 -1
- package/dist/components/status-and-feedback/badge/badge.styles.d.ts.map +1 -1
- package/dist/components/status-and-feedback/badge/badge.styles.js +1 -0
- package/dist/components/status-and-feedback/badge/badge.styles.js.map +1 -1
- package/dist/components/status-and-feedback/inline-dialog/inline-dialog.d.ts +7 -4
- package/dist/components/status-and-feedback/inline-dialog/inline-dialog.d.ts.map +1 -1
- package/dist/components/status-and-feedback/inline-dialog/inline-dialog.js +10 -3
- package/dist/components/status-and-feedback/inline-dialog/inline-dialog.js.map +1 -1
- package/dist/components/status-and-feedback/inline-dialog/inline-dialog.styles.d.ts.map +1 -1
- package/dist/components/status-and-feedback/inline-dialog/inline-dialog.styles.js +12 -2
- package/dist/components/status-and-feedback/inline-dialog/inline-dialog.styles.js.map +1 -1
- package/dist/css/settings.css +30 -17
- package/dist/fonts/JetBrainsMono-Italic[wght].woff2 +0 -0
- package/dist/fonts/JetBrainsMono[wght].woff2 +0 -0
- package/dist/fonts/RijksSansWeb-Italic.woff2 +0 -0
- package/dist/fonts/RijksSansWeb-Regular.woff2 +0 -0
- package/package.json +7 -3
- package/dist/fonts/IBMPlexMono-Bold.woff2 +0 -0
- package/dist/fonts/IBMPlexMono-Regular.woff2 +0 -0
- package/dist/fonts/RijksSansVF-Italic.ttf +0 -0
- package/dist/fonts/RijksSansVF-Regular.ttf +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"title-cell.js","sourceRoot":"","sources":["../../../../../src/components/lists-and-menus/cells/title-cell/title-cell.ts"],"names":[],"mappings":";;;;;;AAAA
|
|
1
|
+
{"version":3,"file":"title-cell.js","sourceRoot":"","sources":["../../../../../src/components/lists-and-menus/cells/title-cell/title-cell.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"title-cell.styles.d.ts","sourceRoot":"","sources":["../../../../../src/components/lists-and-menus/cells/title-cell/title-cell.styles.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,eAAe,
|
|
1
|
+
{"version":3,"file":"title-cell.styles.d.ts","sourceRoot":"","sources":["../../../../../src/components/lists-and-menus/cells/title-cell/title-cell.styles.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,eAAe,yBAgO3B,CAAC"}
|
|
@@ -88,6 +88,7 @@ export const titleCellStyles = css `
|
|
|
88
88
|
margin: 0;
|
|
89
89
|
align-self: stretch;
|
|
90
90
|
min-width: 0;
|
|
91
|
+
overflow-wrap: anywhere;
|
|
91
92
|
font: var(--primitives-font-body-xs-regular-tight);
|
|
92
93
|
color: var(--context-cell-content-color, var(--semantics-content-secondary-color));
|
|
93
94
|
}
|
|
@@ -103,6 +104,7 @@ export const titleCellStyles = css `
|
|
|
103
104
|
margin: 0;
|
|
104
105
|
align-self: stretch;
|
|
105
106
|
min-width: 0;
|
|
107
|
+
overflow-wrap: break-word;
|
|
106
108
|
color: var(--context-cell-content-color, var(--semantics-content-color));
|
|
107
109
|
text-wrap: pretty;
|
|
108
110
|
}
|
|
@@ -155,6 +157,7 @@ export const titleCellStyles = css `
|
|
|
155
157
|
margin: 0;
|
|
156
158
|
align-self: stretch;
|
|
157
159
|
min-width: 0;
|
|
160
|
+
overflow-wrap: anywhere;
|
|
158
161
|
font: var(--primitives-font-body-sm-regular-tight);
|
|
159
162
|
color: var(--context-cell-content-color, var(--semantics-content-secondary-color));
|
|
160
163
|
}
|
|
@@ -164,12 +167,52 @@ export const titleCellStyles = css `
|
|
|
164
167
|
}
|
|
165
168
|
|
|
166
169
|
|
|
167
|
-
/* # Color
|
|
170
|
+
/* # Color */
|
|
168
171
|
|
|
169
|
-
:
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
172
|
+
/* ## Color: secondary
|
|
173
|
+
*
|
|
174
|
+
* Overline and supporting-text are already muted by default, so we only
|
|
175
|
+
* demote the title to make the whole cell read as secondary.
|
|
176
|
+
*/
|
|
177
|
+
|
|
178
|
+
:host([color='secondary']) .title-cell__title {
|
|
179
|
+
color: var(--context-cell-content-secondary-color, var(--semantics-content-secondary-color));
|
|
180
|
+
}
|
|
181
|
+
|
|
182
|
+
/* ## Color: accent
|
|
183
|
+
*
|
|
184
|
+
* Applies to all three text regions so the cell reads as a coherent
|
|
185
|
+
* highlight, not a mix of accent + muted overline / supporting-text.
|
|
186
|
+
*/
|
|
187
|
+
|
|
188
|
+
:host([color='accent']) .title-cell__title,
|
|
189
|
+
:host([color='accent']) .title-cell__overline,
|
|
190
|
+
:host([color='accent']) .title-cell__supporting-text {
|
|
191
|
+
color: var(--context-cell-content-accent-color, var(--semantics-content-accent-color));
|
|
192
|
+
}
|
|
193
|
+
|
|
194
|
+
/* ## Color: success */
|
|
195
|
+
|
|
196
|
+
:host([color='success']) .title-cell__title,
|
|
197
|
+
:host([color='success']) .title-cell__overline,
|
|
198
|
+
:host([color='success']) .title-cell__supporting-text {
|
|
199
|
+
color: var(--context-cell-content-success-color, var(--semantics-content-success-color));
|
|
200
|
+
}
|
|
201
|
+
|
|
202
|
+
/* ## Color: warning */
|
|
203
|
+
|
|
204
|
+
:host([color='warning']) .title-cell__title,
|
|
205
|
+
:host([color='warning']) .title-cell__overline,
|
|
206
|
+
:host([color='warning']) .title-cell__supporting-text {
|
|
207
|
+
color: var(--context-cell-content-warning-color, var(--semantics-content-warning-color));
|
|
208
|
+
}
|
|
209
|
+
|
|
210
|
+
/* ## Color: critical */
|
|
211
|
+
|
|
212
|
+
:host([color='critical']) .title-cell__title,
|
|
213
|
+
:host([color='critical']) .title-cell__overline,
|
|
214
|
+
:host([color='critical']) .title-cell__supporting-text {
|
|
215
|
+
color: var(--context-cell-content-critical-color, var(--semantics-content-critical-color));
|
|
173
216
|
}
|
|
174
217
|
|
|
175
218
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"title-cell.styles.js","sourceRoot":"","sources":["../../../../../src/components/lists-and-menus/cells/title-cell/title-cell.styles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,eAAe,GAAG,GAAG,CAAA
|
|
1
|
+
{"version":3,"file":"title-cell.styles.js","sourceRoot":"","sources":["../../../../../src/components/lists-and-menus/cells/title-cell/title-cell.styles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,eAAe,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAgOjC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"title-cell.template.d.ts","sourceRoot":"","sources":["../../../../../src/components/lists-and-menus/cells/title-cell/title-cell.template.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"title-cell.template.d.ts","sourceRoot":"","sources":["../../../../../src/components/lists-and-menus/cells/title-cell/title-cell.template.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAyCrD,eAAO,MAAM,QAAQ,GAAa,MAAM,aAAa,yCAsBpD,CAAC"}
|
|
@@ -13,21 +13,50 @@ const HEADING_TAGS = {
|
|
|
13
13
|
5: unsafeStatic('h5'),
|
|
14
14
|
6: unsafeStatic('h6'),
|
|
15
15
|
};
|
|
16
|
+
// Fallback content (the rendered text attribute) is rendered as a sibling of
|
|
17
|
+
// the slot, NOT inside it. Native slot fallback gets suppressed as soon as ANY
|
|
18
|
+
// node is assigned to the slot — including whitespace-only text nodes that
|
|
19
|
+
// consumers introduce inadvertently. By rendering the attribute path outside
|
|
20
|
+
// the slot, we control visibility purely via the `_has*Slotted` state (which
|
|
21
|
+
// filters whitespace).
|
|
16
22
|
function renderTitle(component) {
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
23
|
+
const fallback = component.text && !component._hasDefaultSlotted
|
|
24
|
+
? renderQueryMark(component.text, component.query, component.queryMarkMode)
|
|
25
|
+
: nothing;
|
|
26
|
+
const isHidden = !component.text && !component._hasDefaultSlotted;
|
|
20
27
|
const tag = HEADING_TAGS[component.headingLevel];
|
|
21
28
|
if (tag) {
|
|
22
|
-
return staticHtml `<${tag}
|
|
29
|
+
return staticHtml `<${tag}
|
|
30
|
+
class="title-cell__title"
|
|
31
|
+
?hidden=${isHidden}
|
|
32
|
+
>${fallback}<slot @slotchange=${component._onSlotChange}></slot></${tag}>`;
|
|
23
33
|
}
|
|
24
|
-
return html `<p
|
|
34
|
+
return html `<p
|
|
35
|
+
class="title-cell__title"
|
|
36
|
+
?hidden=${isHidden}
|
|
37
|
+
>${fallback}<slot @slotchange=${component._onSlotChange}></slot></p>`;
|
|
25
38
|
}
|
|
26
39
|
export const template = function () {
|
|
27
40
|
return html `
|
|
28
|
-
|
|
41
|
+
<p
|
|
42
|
+
class="title-cell__overline"
|
|
43
|
+
?hidden=${!this.overline && !this._hasOverlineSlotted}
|
|
44
|
+
>
|
|
45
|
+
${this.overline && !this._hasOverlineSlotted
|
|
46
|
+
? renderQueryMark(this.overline, this.query, this.queryMarkMode)
|
|
47
|
+
: nothing}
|
|
48
|
+
<slot name="overline" @slotchange=${this._onSlotChange}></slot>
|
|
49
|
+
</p>
|
|
29
50
|
${renderTitle(this)}
|
|
30
|
-
|
|
51
|
+
<p
|
|
52
|
+
class="title-cell__supporting-text"
|
|
53
|
+
?hidden=${!this.supportingText && !this._hasSupportingTextSlotted}
|
|
54
|
+
>
|
|
55
|
+
${this.supportingText && !this._hasSupportingTextSlotted
|
|
56
|
+
? renderQueryMark(this.supportingText, this.query, this.queryMarkMode)
|
|
57
|
+
: nothing}
|
|
58
|
+
<slot name="supporting-text" @slotchange=${this._onSlotChange}></slot>
|
|
59
|
+
</p>
|
|
31
60
|
`;
|
|
32
61
|
};
|
|
33
62
|
//# sourceMappingURL=title-cell.template.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"title-cell.template.js","sourceRoot":"","sources":["../../../../../src/components/lists-and-menus/cells/title-cell/title-cell.template.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,KAAK,CAAC;AACpC,OAAO,EAAE,IAAI,IAAI,UAAU,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAEtE,OAAO,EAAE,eAAe,EAAE,MAAM,wCAAwC,CAAC;AAEzE,8DAA8D;AAC9D,mEAAmE;AACnE,kEAAkE;AAClE,qBAAqB;AACrB,MAAM,YAAY,GAAoD;IACrE,CAAC,EAAE,YAAY,CAAC,IAAI,CAAC;IACrB,CAAC,EAAE,YAAY,CAAC,IAAI,CAAC;IACrB,CAAC,EAAE,YAAY,CAAC,IAAI,CAAC;IACrB,CAAC,EAAE,YAAY,CAAC,IAAI,CAAC;IACrB,CAAC,EAAE,YAAY,CAAC,IAAI,CAAC;IACrB,CAAC,EAAE,YAAY,CAAC,IAAI,CAAC;CACrB,CAAC;AAEF,SAAS,WAAW,CAAC,SAAwB;IAC5C,
|
|
1
|
+
{"version":3,"file":"title-cell.template.js","sourceRoot":"","sources":["../../../../../src/components/lists-and-menus/cells/title-cell/title-cell.template.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,KAAK,CAAC;AACpC,OAAO,EAAE,IAAI,IAAI,UAAU,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAEtE,OAAO,EAAE,eAAe,EAAE,MAAM,wCAAwC,CAAC;AAEzE,8DAA8D;AAC9D,mEAAmE;AACnE,kEAAkE;AAClE,qBAAqB;AACrB,MAAM,YAAY,GAAoD;IACrE,CAAC,EAAE,YAAY,CAAC,IAAI,CAAC;IACrB,CAAC,EAAE,YAAY,CAAC,IAAI,CAAC;IACrB,CAAC,EAAE,YAAY,CAAC,IAAI,CAAC;IACrB,CAAC,EAAE,YAAY,CAAC,IAAI,CAAC;IACrB,CAAC,EAAE,YAAY,CAAC,IAAI,CAAC;IACrB,CAAC,EAAE,YAAY,CAAC,IAAI,CAAC;CACrB,CAAC;AAEF,6EAA6E;AAC7E,+EAA+E;AAC/E,2EAA2E;AAC3E,6EAA6E;AAC7E,6EAA6E;AAC7E,uBAAuB;AACvB,SAAS,WAAW,CAAC,SAAwB;IAC5C,MAAM,QAAQ,GAAG,SAAS,CAAC,IAAI,IAAI,CAAC,SAAS,CAAC,kBAAkB;QAC/D,CAAC,CAAC,eAAe,CAAC,SAAS,CAAC,IAAI,EAAE,SAAS,CAAC,KAAK,EAAE,SAAS,CAAC,aAAa,CAAC;QAC3E,CAAC,CAAC,OAAO,CAAC;IACX,MAAM,QAAQ,GAAG,CAAC,SAAS,CAAC,IAAI,IAAI,CAAC,SAAS,CAAC,kBAAkB,CAAC;IAClE,MAAM,GAAG,GAAG,YAAY,CAAC,SAAS,CAAC,YAAsB,CAAC,CAAC;IAE3D,IAAI,GAAG,EAAE,CAAC;QACT,OAAO,UAAU,CAAA,IAAI,GAAG;;aAEb,QAAQ;KAChB,QAAQ,qBAAqB,SAAS,CAAC,aAAa,aAAa,GAAG,GAAG,CAAC;IAC5E,CAAC;IACD,OAAO,IAAI,CAAA;;YAEA,QAAQ;IAChB,QAAQ,qBAAqB,SAAS,CAAC,aAAa,cAAc,CAAC;AACvE,CAAC;AAED,MAAM,CAAC,MAAM,QAAQ,GAAG;IACvB,OAAO,IAAI,CAAA;;;aAGC,CAAC,IAAI,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,mBAAmB;;KAEnD,IAAI,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,mBAAmB;QAC3C,CAAC,CAAC,eAAe,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,aAAa,CAAC;QAChE,CAAC,CAAC,OAAO;uCAC0B,IAAI,CAAC,aAAa;;IAErD,WAAW,CAAC,IAAI,CAAC;;;aAGR,CAAC,IAAI,CAAC,cAAc,IAAI,CAAC,IAAI,CAAC,yBAAyB;;KAE/D,IAAI,CAAC,cAAc,IAAI,CAAC,IAAI,CAAC,yBAAyB;QACvD,CAAC,CAAC,eAAe,CAAC,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,aAAa,CAAC;QACtE,CAAC,CAAC,OAAO;8CACiC,IAAI,CAAC,aAAa;;EAE9D,CAAC;AACH,CAAC,CAAC"}
|
|
@@ -52,6 +52,11 @@ export declare class NLDDListItem extends LitElement {
|
|
|
52
52
|
private _handleClick;
|
|
53
53
|
private _handleFocusIn;
|
|
54
54
|
private _handleFocusOut;
|
|
55
|
+
/**
|
|
56
|
+
* Delegates focus to the inner `.list-item__action` (the button or anchor),
|
|
57
|
+
* so consumers can call `listItemEl.focus()` without reaching into shadow DOM.
|
|
58
|
+
*/
|
|
59
|
+
focus(options?: FocusOptions): void;
|
|
55
60
|
render(): import("lit-html").TemplateResult<1>;
|
|
56
61
|
}
|
|
57
62
|
declare global {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"list-item.d.ts","sourceRoot":"","sources":["../../../../src/components/lists-and-menus/list-item/list-item.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,KAAK,CAAC;AAMjC,OAAO,qCAAqC,CAAC;AAE7C,MAAM,MAAM,YAAY,GAAG,IAAI,GAAG,IAAI,CAAC;AACvC,MAAM,MAAM,YAAY,GAAG,QAAQ,CAAC;AAEpC;;;;;;;;;;;;;GAaG;AACH,qBACa,YAAa,SAAQ,UAAU;IAC3C,OAAgB,MAAM,4BAAoB;IAG1C,IAAI,EAAE,YAAY,CAAQ;IAG1B,QAAQ,UAAS;IAEjB,8CAA8C;IAE9C,IAAI,CAAC,EAAE,YAAY,CAAC;IAEpB,4CAA4C;IAE5C,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd,8GAA8G;IAE9G,WAAW,UAAS;IAGpB,OAAO,CAAC,UAAU,CAAS;IAG3B,OAAO,CAAC,QAAQ,CAAS;IAGzB,OAAO,CAAC,WAAW,CAAoB;IAGvC,OAAO,CAAC,OAAO,CAAC,CAAc;IAE9B,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,aAAa,CAAiC;IAE7C,iBAAiB;IAajB,oBAAoB;IASpB,YAAY;IAaZ,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC;IAM9C;;;;;OAKG;IACH,OAAO,CAAC,aAAa;IAoBrB,OAAO,CAAC,aAAa;IAMrB,OAAO,CAAC,gBAAgB;IAIxB,OAAO,CAAC,gBAAgB;IAYxB,OAAO,CAAC,iBAAiB;IAOzB,OAAO,CAAC,iBAAiB;IAKzB,OAAO,CAAC,eAAe;IAKvB,OAAO,CAAC,YAAY,CAIlB;IAEF,OAAO,CAAC,cAAc,CAOpB;IAEF,OAAO,CAAC,eAAe,CAErB;
|
|
1
|
+
{"version":3,"file":"list-item.d.ts","sourceRoot":"","sources":["../../../../src/components/lists-and-menus/list-item/list-item.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,KAAK,CAAC;AAMjC,OAAO,qCAAqC,CAAC;AAE7C,MAAM,MAAM,YAAY,GAAG,IAAI,GAAG,IAAI,CAAC;AACvC,MAAM,MAAM,YAAY,GAAG,QAAQ,CAAC;AAEpC;;;;;;;;;;;;;GAaG;AACH,qBACa,YAAa,SAAQ,UAAU;IAC3C,OAAgB,MAAM,4BAAoB;IAG1C,IAAI,EAAE,YAAY,CAAQ;IAG1B,QAAQ,UAAS;IAEjB,8CAA8C;IAE9C,IAAI,CAAC,EAAE,YAAY,CAAC;IAEpB,4CAA4C;IAE5C,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd,8GAA8G;IAE9G,WAAW,UAAS;IAGpB,OAAO,CAAC,UAAU,CAAS;IAG3B,OAAO,CAAC,QAAQ,CAAS;IAGzB,OAAO,CAAC,WAAW,CAAoB;IAGvC,OAAO,CAAC,OAAO,CAAC,CAAc;IAE9B,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,aAAa,CAAiC;IAE7C,iBAAiB;IAajB,oBAAoB;IASpB,YAAY;IAaZ,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC;IAM9C;;;;;OAKG;IACH,OAAO,CAAC,aAAa;IAoBrB,OAAO,CAAC,aAAa;IAMrB,OAAO,CAAC,gBAAgB;IAIxB,OAAO,CAAC,gBAAgB;IAYxB,OAAO,CAAC,iBAAiB;IAOzB,OAAO,CAAC,iBAAiB;IAKzB,OAAO,CAAC,eAAe;IAKvB,OAAO,CAAC,YAAY,CAIlB;IAEF,OAAO,CAAC,cAAc,CAOpB;IAEF,OAAO,CAAC,eAAe,CAErB;IAEF;;;OAGG;IACM,KAAK,CAAC,OAAO,CAAC,EAAE,YAAY,GAAG,IAAI;IAInC,MAAM;CAQf;AAED,OAAO,CAAC,MAAM,CAAC;IACd,UAAU,qBAAqB;QAC9B,gBAAgB,EAAE,YAAY,CAAC;KAC/B;CACD"}
|
|
@@ -149,6 +149,13 @@ let NLDDListItem = class NLDDListItem extends LitElement {
|
|
|
149
149
|
const slot = this.shadowRoot?.querySelector('slot[name="end"]');
|
|
150
150
|
slot?.addEventListener('slotchange', () => this._updateVisibility());
|
|
151
151
|
}
|
|
152
|
+
/**
|
|
153
|
+
* Delegates focus to the inner `.list-item__action` (the button or anchor),
|
|
154
|
+
* so consumers can call `listItemEl.focus()` without reaching into shadow DOM.
|
|
155
|
+
*/
|
|
156
|
+
focus(options) {
|
|
157
|
+
this._action?.focus(options);
|
|
158
|
+
}
|
|
152
159
|
render() {
|
|
153
160
|
return template(this.type, this.href, this._showStart, this._showEnd);
|
|
154
161
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"list-item.js","sourceRoot":"","sources":["../../../../src/components/lists-and-menus/list-item/list-item.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,KAAK,CAAC;AACjC,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAC1E,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,sCAAsC,CAAC;AAErE,OAAO,qCAAqC,CAAC;AAK7C;;;;;;;;;;;;;GAaG;AAEI,IAAM,YAAY,GAAlB,MAAM,YAAa,SAAQ,UAAU;IAArC;;QAIN,SAAI,GAAiB,IAAI,CAAC;QAG1B,aAAQ,GAAG,KAAK,CAAC;QAUjB,8GAA8G;QAE9G,gBAAW,GAAG,KAAK,CAAC;QAGZ,eAAU,GAAG,KAAK,CAAC;QAGnB,aAAQ,GAAG,KAAK,CAAC;QAGjB,gBAAW,GAAa,MAAM,CAAC;QAK/B,aAAQ,GAAG,KAAK,CAAC;QACjB,kBAAa,GAA4B,IAAI,CAAC;QA4G9C,iBAAY,GAAG,GAAG,EAAE;YAC3B,sEAAsE;YACtE,yEAAyE;YACzE,IAAI,CAAC,OAAO,EAAE,KAAK,EAAE,CAAC;QACvB,CAAC,CAAC;QAEM,mBAAc,GAAG,GAAG,EAAE;YAC7B,wEAAwE;YACxE,uEAAuE;YACvE,uEAAuE;YACvE,qEAAqE;YACrE,sEAAsE;YACtE,IAAI,CAAC,OAAO,EAAE,SAAS,CAAC,MAAM,CAAC,kBAAkB,EAAE,aAAa,EAAE,CAAC,CAAC;QACrE,CAAC,CAAC;QAEM,oBAAe,GAAG,GAAG,EAAE;YAC9B,IAAI,CAAC,OAAO,EAAE,SAAS,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC;QACpD,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"list-item.js","sourceRoot":"","sources":["../../../../src/components/lists-and-menus/list-item/list-item.ts"],"names":[],"mappings":"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"}
|
|
@@ -10,6 +10,33 @@ export declare class NLDDMenuDivider extends LitElement {
|
|
|
10
10
|
static styles: import("lit").CSSResult;
|
|
11
11
|
render(): import("lit-html").TemplateResult<1>;
|
|
12
12
|
}
|
|
13
|
+
/**
|
|
14
|
+
* A labelled group of menu items inside an nldd-menu. Wraps its slotted
|
|
15
|
+
* items in `role="group"` with `aria-labelledby` pointing to the group's
|
|
16
|
+
* `text`, providing native ARIA group semantics that a flat title element
|
|
17
|
+
* can't deliver.
|
|
18
|
+
*
|
|
19
|
+
* The group renders an automatic divider above itself, except when it's
|
|
20
|
+
* the first child of the menu — so consumers don't need to manage
|
|
21
|
+
* separator placement around groups themselves. Spacing above the title
|
|
22
|
+
* is intentionally larger than below, to bind the title visually to the
|
|
23
|
+
* items it labels.
|
|
24
|
+
*
|
|
25
|
+
* Use the wrapper for grouping with a title; for ungrouped flat menus or
|
|
26
|
+
* a divider without a title, the existing `nldd-menu-item` +
|
|
27
|
+
* `nldd-menu-divider` flat structure keeps working unchanged.
|
|
28
|
+
*
|
|
29
|
+
* @attr {string} text - Group title text shown above the items.
|
|
30
|
+
*
|
|
31
|
+
* @slot - nldd-menu-item children (the items belonging to this group).
|
|
32
|
+
*/
|
|
33
|
+
export declare class NLDDMenuGroup extends LitElement {
|
|
34
|
+
static styles: import("lit").CSSResult;
|
|
35
|
+
text: string;
|
|
36
|
+
private static _idCounter;
|
|
37
|
+
readonly _titleId: string;
|
|
38
|
+
render(): import("lit-html").TemplateResult<1>;
|
|
39
|
+
}
|
|
13
40
|
/**
|
|
14
41
|
* A single item within an nldd-menu.
|
|
15
42
|
*
|
|
@@ -42,9 +69,21 @@ export declare class NLDDMenuItem extends LitElement {
|
|
|
42
69
|
queryMarkMode: QueryMarkMode;
|
|
43
70
|
/** Set by nldd-menu. Not part of the public API. */
|
|
44
71
|
menuVariant: 'menu' | 'listbox';
|
|
72
|
+
/** Tracks whether this item's submenu (if any) is currently open. Set by
|
|
73
|
+
* the parent nldd-menu via the `submenu-open`/`submenu-close` lifecycle. */
|
|
74
|
+
_submenuOpen: boolean;
|
|
45
75
|
private static _idCounter;
|
|
46
76
|
connectedCallback(): void;
|
|
47
77
|
focus(options?: FocusOptions): void;
|
|
78
|
+
/** Cached reference to the direct child `<nldd-menu>` (this item's
|
|
79
|
+
* submenu). Resolved once at firstUpdated; mutating the children after
|
|
80
|
+
* mount is not supported in v1. */
|
|
81
|
+
private _cachedSubmenuEl;
|
|
82
|
+
private _submenuMutationObserver;
|
|
83
|
+
get _submenuEl(): NLDDMenu | null;
|
|
84
|
+
get _hasSubmenu(): boolean;
|
|
85
|
+
firstUpdated(): void;
|
|
86
|
+
disconnectedCallback(): void;
|
|
48
87
|
_handleClick(): void;
|
|
49
88
|
/** Programmatically select this item. */
|
|
50
89
|
select(): void;
|
|
@@ -101,24 +140,213 @@ export declare class NLDDMenu extends LitElement {
|
|
|
101
140
|
* Unset keys fall back to the Dutch default.
|
|
102
141
|
*/
|
|
103
142
|
translations: Partial<NLDDMenuTranslations>;
|
|
143
|
+
/**
|
|
144
|
+
* @internal — development only.
|
|
145
|
+
*
|
|
146
|
+
* Renders a translucent SVG overlay showing the safe triangle's current
|
|
147
|
+
* shape. Reflected as `debug-safe-triangle` so it can be toggled at
|
|
148
|
+
* runtime in DevTools, but it must not be enabled in shipped code: the
|
|
149
|
+
* overlay attaches a popover to `document.body` and is intended purely
|
|
150
|
+
* as a development aid.
|
|
151
|
+
*/
|
|
152
|
+
debugSafeTriangle: boolean;
|
|
104
153
|
/**
|
|
105
154
|
* Custom filter function. Defaults to case-insensitive substring match
|
|
106
155
|
* on text, value, and aliases attributes.
|
|
107
156
|
*/
|
|
108
157
|
filterFn: (query: string, item: NLDDMenuItem) => boolean;
|
|
109
158
|
private _isEmpty;
|
|
159
|
+
/** Currently open child submenu (a direct descendant nldd-menu opened
|
|
160
|
+
* by one of this menu's items). null when no submenu is open. */
|
|
161
|
+
private _activeSubmenu;
|
|
162
|
+
private _activeSubmenuOpener;
|
|
163
|
+
/** When this menu is itself a submenu, points to the parent menu that
|
|
164
|
+
* opened it. Set by the parent's _handleSubmenuOpen. null on the root.
|
|
165
|
+
* @internal */
|
|
166
|
+
_parentMenu: NLDDMenu | null;
|
|
167
|
+
/** The menu-item that triggered this submenu — used to label the back
|
|
168
|
+
* button in drill-in mode.
|
|
169
|
+
* @internal */
|
|
170
|
+
_parentItem: NLDDMenuItem | null;
|
|
110
171
|
private _isOpen;
|
|
111
172
|
private _closedAt;
|
|
112
173
|
private _cleanupAutoUpdate;
|
|
113
174
|
private _t;
|
|
114
175
|
/** Resolved empty text: emptyText attribute takes precedence, then i18n fallback. */
|
|
115
176
|
get _resolvedEmptyText(): string;
|
|
177
|
+
/** Accessible name for the drill-in back button. Prefixes the parent
|
|
178
|
+
* item's label with the localised "back" word so AT announces "Back:
|
|
179
|
+
* Bestand" instead of an ambiguous "Bestand, button". Only used when
|
|
180
|
+
* this menu is itself a submenu in drill-in mode. */
|
|
181
|
+
get _resolvedBackLabel(): string;
|
|
116
182
|
updated(changedProperties: Map<string, unknown>): void;
|
|
117
183
|
private _getAnchorEl;
|
|
118
184
|
private _handleDocumentClick;
|
|
185
|
+
private _hoverOpenTimer;
|
|
186
|
+
private _hoverCloseTimer;
|
|
187
|
+
private _safeTriangleListener;
|
|
188
|
+
private _safeTriangleStallTimer;
|
|
189
|
+
private _lastCursorPos;
|
|
190
|
+
private _safeTriangleApex;
|
|
191
|
+
private _safeTriangleSubmenu;
|
|
192
|
+
private _movingTowardSubmenu;
|
|
193
|
+
/** Wait this long after cursor stops being on a path toward the submenu
|
|
194
|
+
* before closing. Smooths over brief cursor stalls and accidental nudges. */
|
|
195
|
+
private static readonly _SUBMENU_LINGER_CLOSE_MS;
|
|
196
|
+
/** When the cursor sits motionless inside the safe triangle for this
|
|
197
|
+
* long, dismiss the triangle and let whatever item is under the cursor
|
|
198
|
+
* become interactive. Without this, a paused cursor would stay
|
|
199
|
+
* "protected" indefinitely and the user couldn't peer-hover. */
|
|
200
|
+
private static readonly _SAFE_TRIANGLE_STALL_DISMISS_MS;
|
|
201
|
+
/** Pull the wedge apex this many pixels away from the submenu edge (i.e.
|
|
202
|
+
* to the left when the submenu is on the right). Widens the wedge near
|
|
203
|
+
* the cursor so brief diagonal wobble doesn't pop the cursor out at the
|
|
204
|
+
* apex, and avoids the degenerate single-line wedge when the cursor
|
|
205
|
+
* crossed the opener edge exactly at the same x as the near submenu
|
|
206
|
+
* corner. The shift is always negative — the standard placement is
|
|
207
|
+
* submenu-right, so "left" is the intuitive forgive direction. */
|
|
208
|
+
private static readonly _SAFE_TRIANGLE_APEX_X_OFFSET;
|
|
119
209
|
private _handleMenuItemMouseenter;
|
|
210
|
+
/**
|
|
211
|
+
* Item-activation logic shared between the native `mouseenter` capture
|
|
212
|
+
* handler and the safe-triangle recovery paths (sideways exit, direction
|
|
213
|
+
* reversal, stall dismissal). Those paths know which item is under the
|
|
214
|
+
* cursor — they don't need to synthesize a MouseEvent just to re-enter
|
|
215
|
+
* the handler. Factoring out the body keeps the entry contracts honest:
|
|
216
|
+
* the recovery sites pass an already-resolved item rather than relying
|
|
217
|
+
* on `event.target` semantics they'd have to fake.
|
|
218
|
+
*/
|
|
219
|
+
private _activateItem;
|
|
220
|
+
/** Resolve the menu-item under a viewport point and activate it via
|
|
221
|
+
* `_activateItem`. Used by safe-triangle recovery paths whose natural
|
|
222
|
+
* mouseenter has already fired (and bailed) — they need to re-trigger
|
|
223
|
+
* activation without synthesizing a MouseEvent. */
|
|
224
|
+
private _activateItemAt;
|
|
120
225
|
private _handleMouseleave;
|
|
226
|
+
/** Start the global mouse tracker that powers the safe triangle. Called
|
|
227
|
+
* by _handleSubmenuOpen when a submenu opens in cascade mode. The
|
|
228
|
+
* listener is a thin orchestrator over the named phase methods below. */
|
|
229
|
+
private _startSafeTriangle;
|
|
230
|
+
/** Cursor entered the submenu (or any nested submenu) — clean up triangle
|
|
231
|
+
* state but leave the window mousemove listener alive. The listener still
|
|
232
|
+
* needs to fire while the cursor is inside the submenu so we can detect a
|
|
233
|
+
* return trip to the opener and re-pin a fresh apex for another exit. */
|
|
234
|
+
private _safeTriangleArrived;
|
|
235
|
+
/** Cursor still on the opener — wait for an exit direction. Sets the
|
|
236
|
+
* "in transit" flag (so brief peer pass-throughs don't activate) and
|
|
237
|
+
* renders a live debug preview that follows the cursor. */
|
|
238
|
+
private _safeTriangleWaitOnOpener;
|
|
239
|
+
/** Cursor crossed the opener's top or bottom edge — pin apex there.
|
|
240
|
+
* x is clamped to the opener's range so the wedge starts at the visual
|
|
241
|
+
* edge regardless of how far past the edge this mousemove sample is, then
|
|
242
|
+
* shifted by _SAFE_TRIANGLE_APEX_X_OFFSET to widen the wedge at the
|
|
243
|
+
* cursor side (the 4px headroom that makes brief diagonal wobble forgive). */
|
|
244
|
+
private _safeTrianglePinApex;
|
|
245
|
+
/** Cursor exited the opener sideways (left/right) or with no opener
|
|
246
|
+
* history — no triangle protection. Drop the flag and the overlay,
|
|
247
|
+
* and synthesize mouseenter on the element under the cursor so peers
|
|
248
|
+
* activate immediately (the natural mouseenter fired with flag=true
|
|
249
|
+
* during the on-opener phase and got bailed). */
|
|
250
|
+
private _safeTriangleSidewaysExit;
|
|
251
|
+
/** Apex pinned — test whether the current cursor position is inside the
|
|
252
|
+
* wedge. Picks the submenu edge facing the cursor (left for right-start,
|
|
253
|
+
* right when floating-ui flipped it). */
|
|
254
|
+
private _safeTrianglePolygonTest;
|
|
255
|
+
/** Sync opener highlight with the in-transit flag. Uses _setHighlight so
|
|
256
|
+
* any peer that briefly got highlighted (e.g. via the synthetic
|
|
257
|
+
* mouseenter on a wedge-edge wobble) is cleared. Skip when the opener
|
|
258
|
+
* already has the attribute to avoid DOM churn each frame. */
|
|
259
|
+
private _safeTriangleSyncOpenerHighlight;
|
|
260
|
+
/** When the in-transit flag flips true → false, the cursor may already
|
|
261
|
+
* be sitting on a peer item whose natural mouseenter fired (and bailed)
|
|
262
|
+
* earlier. mouseenter won't re-fire until the cursor leaves and re-
|
|
263
|
+
* enters, so synthesize one here to activate the peer immediately. */
|
|
264
|
+
private _safeTriangleDirectionReversalRecovery;
|
|
265
|
+
/** Re-arm the stall-dismissal timer. If the cursor sits motionless
|
|
266
|
+
* inside the safe triangle long enough, drop the protection so the
|
|
267
|
+
* element under the cursor can become interactive without nudging. */
|
|
268
|
+
private _safeTriangleScheduleStall;
|
|
269
|
+
/** Schedule submenu close when cursor sits outside the parent menu rect.
|
|
270
|
+
* No-op if cursor is inside the menu (peer-hover logic handles it) or
|
|
271
|
+
* if a close is already scheduled. */
|
|
272
|
+
private _safeTriangleMaybeScheduleLingerClose;
|
|
273
|
+
/** True when the rect contains the point (inclusive). Returns false for
|
|
274
|
+
* a missing rect or point — convenient for the optional-chained call
|
|
275
|
+
* sites in the safe-triangle logic. */
|
|
276
|
+
private static _rectContainsPoint;
|
|
277
|
+
private _stopSafeTriangle;
|
|
278
|
+
private _safeTriangleOverlay;
|
|
279
|
+
private _renderSafeTriangleOverlay;
|
|
280
|
+
private _removeSafeTriangleOverlay;
|
|
281
|
+
private _cancelHoverOpen;
|
|
282
|
+
private _cancelHoverClose;
|
|
283
|
+
/** Recursively checks whether a point sits inside the given menu OR any of
|
|
284
|
+
* its descendant submenus. Used by the hover guard so a cursor deep inside
|
|
285
|
+
* a nested submenu still reads as "in the safe area" for ancestor menus —
|
|
286
|
+
* without this, an ancestor's linger-close fires and cascades the whole
|
|
287
|
+
* chain shut. */
|
|
288
|
+
private static _isPointInMenuTree;
|
|
289
|
+
/** Convex point-in-polygon test via consistent edge-cross-product sign.
|
|
290
|
+
* Vertices must be ordered (clockwise or counter-clockwise). */
|
|
291
|
+
private static _pointInPolygon;
|
|
121
292
|
private _handleMenuItemFocused;
|
|
293
|
+
/**
|
|
294
|
+
* Drill-in mode is the touch-friendly rendering: a submenu replaces its
|
|
295
|
+
* parent's view by anchoring to the root anchor (so visually it stacks
|
|
296
|
+
* over the parent) and gets a back-button header. Otherwise (cascade)
|
|
297
|
+
* the submenu opens beside its parent item.
|
|
298
|
+
*
|
|
299
|
+
* Detection is based on pointer type and viewport width — touch devices
|
|
300
|
+
* and narrow viewports drill in, everything else cascades. No consumer
|
|
301
|
+
* override; the choice is environment-driven.
|
|
302
|
+
*
|
|
303
|
+
* Cached MediaQueryList shared across instances — `matchMedia()` returns
|
|
304
|
+
* a live object and re-evaluating it for every mouseenter/submenu-open
|
|
305
|
+
* is wasteful. Instances also subscribe to `change` so resize events
|
|
306
|
+
* naturally route through `_handleViewportResize`.
|
|
307
|
+
*/
|
|
308
|
+
private static _drillInModeQuery;
|
|
309
|
+
private static _getDrillInModeQuery;
|
|
310
|
+
get _drillInMode(): boolean;
|
|
311
|
+
/** Walks the parent-menu chain up to the root (the menu that wasn't
|
|
312
|
+
* opened by another menu — has no _parentMenu). */
|
|
313
|
+
get _rootMenu(): NLDDMenu;
|
|
314
|
+
/** True when this menu is itself a submenu (was opened by another menu's
|
|
315
|
+
* item). The root menu returns false. */
|
|
316
|
+
get _isSubmenu(): boolean;
|
|
317
|
+
/**
|
|
318
|
+
* Open a submenu in response to one of this menu's items dispatching
|
|
319
|
+
* `submenu-open`. Branches on drill-in vs cascade mode for anchor +
|
|
320
|
+
* placement, but the lifecycle (popover.show, listen for close, clear
|
|
321
|
+
* state on hide) is the same for both modes.
|
|
322
|
+
*/
|
|
323
|
+
private _handleSubmenuOpen;
|
|
324
|
+
/** Close this submenu when the back button is clicked, returning to the
|
|
325
|
+
* parent view (which is still open as a popover behind this one in
|
|
326
|
+
* drill-in mode).
|
|
327
|
+
* @internal */
|
|
328
|
+
_handleBack: () => void;
|
|
329
|
+
/** Cursor moved onto the drill-in back button — clear any item highlight
|
|
330
|
+
* so we don't show two "active" elements at once (back button + first
|
|
331
|
+
* item that was auto-highlighted on open).
|
|
332
|
+
* @internal */
|
|
333
|
+
_handleBackMouseenter: () => void;
|
|
334
|
+
/** Last cached drill-in mode value, so we only act when it actually
|
|
335
|
+
* changes across a resize event. */
|
|
336
|
+
private _lastDrillInMode;
|
|
337
|
+
/** Close any open submenu when the cascade ↔ drill-in threshold is
|
|
338
|
+
* crossed during a resize. Switching the rendering of an already-open
|
|
339
|
+
* submenu mid-flight (anchor + placement + back button) is more
|
|
340
|
+
* disorienting than a clean reset to the root view. */
|
|
341
|
+
private _handleViewportResize;
|
|
342
|
+
/**
|
|
343
|
+
* Close this menu when a `select` event bubbles up — selecting an item
|
|
344
|
+
* anywhere in the menu (or any descendant submenu) closes the entire
|
|
345
|
+
* popover chain so the action feels final. The select event is dispatched
|
|
346
|
+
* with `composed: true` so it crosses every ancestor menu in the chain.
|
|
347
|
+
*/
|
|
348
|
+
private _handleSelectChainClose;
|
|
349
|
+
private static _menuIdCounter;
|
|
122
350
|
connectedCallback(): void;
|
|
123
351
|
firstUpdated(): void;
|
|
124
352
|
disconnectedCallback(): void;
|
|
@@ -138,6 +366,12 @@ export declare class NLDDMenu extends LitElement {
|
|
|
138
366
|
* When the query is empty, all items are shown and `query` is cleared.
|
|
139
367
|
*/
|
|
140
368
|
filter(query: string): void;
|
|
369
|
+
/**
|
|
370
|
+
* Hide each nldd-menu-group whose items are all filtered out — a labelled
|
|
371
|
+
* heading above an empty section reads as broken. Runs after filter() has
|
|
372
|
+
* updated individual item visibility.
|
|
373
|
+
*/
|
|
374
|
+
private _updateGroupVisibility;
|
|
141
375
|
/**
|
|
142
376
|
* Move both focus and highlight to the next, previous, or first visible item.
|
|
143
377
|
*/
|
|
@@ -154,6 +388,25 @@ export declare class NLDDMenu extends LitElement {
|
|
|
154
388
|
/** Recalculate position and size relative to the anchor element. */
|
|
155
389
|
reposition(): Promise<void>;
|
|
156
390
|
private _handleKeydown;
|
|
391
|
+
private _typeaheadBuffer;
|
|
392
|
+
private _typeaheadTimer;
|
|
393
|
+
/** Reset the typeahead buffer after this much idle time. 500ms is the
|
|
394
|
+
* common ARIA APG / OS convention — long enough to type a 2-3 char prefix
|
|
395
|
+
* comfortably, short enough that an unrelated later keystroke starts a
|
|
396
|
+
* fresh search. */
|
|
397
|
+
private static readonly _TYPEAHEAD_RESET_MS;
|
|
398
|
+
/**
|
|
399
|
+
* ARIA APG typeahead: characters typed within 500ms accumulate into a
|
|
400
|
+
* buffer; the menu jumps to the first item whose text starts with the
|
|
401
|
+
* buffer (case-insensitive).
|
|
402
|
+
*
|
|
403
|
+
* Single-char buffer (first press or after reset) cycles through matches
|
|
404
|
+
* — repeated presses of the same letter step through every item starting
|
|
405
|
+
* with it. Multi-char buffer matches from the currently-focused item, so
|
|
406
|
+
* extending the prefix while the current item still matches keeps focus
|
|
407
|
+
* stable instead of jumping forward.
|
|
408
|
+
*/
|
|
409
|
+
private _handleTypeahead;
|
|
157
410
|
private _handleToggle;
|
|
158
411
|
render(): import("lit-html").TemplateResult<1>;
|
|
159
412
|
}
|
|
@@ -162,6 +415,7 @@ declare global {
|
|
|
162
415
|
'nldd-menu': NLDDMenu;
|
|
163
416
|
'nldd-menu-item': NLDDMenuItem;
|
|
164
417
|
'nldd-menu-divider': NLDDMenuDivider;
|
|
418
|
+
'nldd-menu-group': NLDDMenuGroup;
|
|
165
419
|
}
|
|
166
420
|
}
|
|
167
421
|
//# sourceMappingURL=menu.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"menu.d.ts","sourceRoot":"","sources":["../../../../src/components/lists-and-menus/menu/menu.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,KAAK,CAAC;AAMjC,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qCAAqC,CAAC;AACzE,OAAO,oDAAoD,CAAC;AAC5D,OAAO,wDAAwD,CAAC;AAChE,OAAO,oDAAoD,CAAC;AAC5D,OAAO,4BAA4B,CAAC;AACpC,OAAO,0DAA0D,CAAC;
|
|
1
|
+
{"version":3,"file":"menu.d.ts","sourceRoot":"","sources":["../../../../src/components/lists-and-menus/menu/menu.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"menu.i18n.d.ts","sourceRoot":"","sources":["../../../../src/components/lists-and-menus/menu/menu.i18n.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,oBAAoB
|
|
1
|
+
{"version":3,"file":"menu.i18n.d.ts","sourceRoot":"","sources":["../../../../src/components/lists-and-menus/menu/menu.i18n.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,oBAAoB;;;CAGhC,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG,OAAO,oBAAoB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"menu.i18n.js","sourceRoot":"","sources":["../../../../src/components/lists-and-menus/menu/menu.i18n.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,oBAAoB,GAAG;IACnC,4BAA4B,EAAE,yBAAyB;
|
|
1
|
+
{"version":3,"file":"menu.i18n.js","sourceRoot":"","sources":["../../../../src/components/lists-and-menus/menu/menu.i18n.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,oBAAoB,GAAG;IACnC,4BAA4B,EAAE,yBAAyB;IACvD,sBAAsB,EAAE,OAAO;CAC/B,CAAC"}
|