@nxgt/material 2.17.0 → 2.18.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (43) hide show
  1. package/CHANGELOG.md +28 -0
  2. package/dist/{blockDiagram-BEXU5L5S-K2MjXCm9.js → blockDiagram-BEXU5L5S-iNiTd2F6.js} +1 -1
  3. package/dist/{chunk-3FUC2YCW-6KyD6CAZ.js → chunk-3FUC2YCW-C3_88DyD.js} +1 -1
  4. package/dist/{chunk-7M6MHVWA-CNWcBB_6.js → chunk-7M6MHVWA-DSA5AJyK.js} +1 -1
  5. package/dist/{chunk-GNY47TPC-DdqgSBxM.js → chunk-GNY47TPC-AFxr6Xhs.js} +4 -4
  6. package/dist/{chunk-NETBCI7D-ZnunhYtw.js → chunk-NETBCI7D-DUZYHta0.js} +1 -1
  7. package/dist/{chunk-Z7XXMR3K-C8MhuVIi.js → chunk-Z7XXMR3K-DDFBvLN4.js} +1 -1
  8. package/dist/{classDiagram-v2-NBCMYWYE-ByUAGkfa.js → classDiagram-v2-NBCMYWYE-Cx1q9jwX.js} +2 -2
  9. package/dist/{components-CIYQrI45.js → components-CEXxj5QP.js} +21391 -21379
  10. package/dist/components.js +2 -2
  11. package/dist/{dagre-6A5THRUB-C2vz5UY9.js → dagre-6A5THRUB-B3FAoh2m.js} +3 -3
  12. package/dist/{diagram-22UHCM2B-DREk9ku4.js → diagram-22UHCM2B-B1mxqDwI.js} +2 -2
  13. package/dist/{diagram-3UASUU5V-CYkPaos5.js → diagram-3UASUU5V-DKbBxWI5.js} +1 -1
  14. package/dist/{elk-276RUBZZ-CK4KoCtK.js → elk-276RUBZZ-CeiRDj87.js} +3 -3
  15. package/dist/{erDiagram-OPXOYQCR-CTfn8QUl.js → erDiagram-OPXOYQCR-nyCpuYg6.js} +2 -2
  16. package/dist/{field-blur-3RW0mJb2.js → field-blur-DNHXOY0J.js} +1 -1
  17. package/dist/{flowDiagram-KWPJA3E3-CDzuzre6.js → flowDiagram-KWPJA3E3-CAt7iv16.js} +3 -3
  18. package/dist/{ganttDiagram-FUAMR5RP-Ci-9ZJz5.js → ganttDiagram-FUAMR5RP-g4YEKVC-.js} +1 -1
  19. package/dist/{journeyDiagram-ZHPQQLJL-CwFYd51O.js → journeyDiagram-ZHPQQLJL-v7NsJ_vl.js} +1 -1
  20. package/dist/lib/components/ui/selection/autocomplete/types.d.ts +10 -2
  21. package/dist/lib/components/ui/selection/autocomplete/use-autocomplete-status.d.ts +2 -2
  22. package/dist/lib/components/ui/selection/autocomplete/use-autocomplete.d.ts +2 -2
  23. package/dist/lib/components/ui/selection/autocomplete/use-query-report.d.ts +8 -0
  24. package/dist/main.js +2 -2
  25. package/dist/map.js +1 -1
  26. package/dist/material.css +1 -1
  27. package/dist/{mermaid.core-DW7UlwJu.js → mermaid.core-BHmjz3IJ.js} +21 -21
  28. package/dist/{mindmap-definition-NLK3R4M7-CsLyIyEF.js → mindmap-definition-NLK3R4M7-xOeGZSSo.js} +2 -2
  29. package/dist/{pieDiagram-5QR66LMP-C-dfffj5.js → pieDiagram-5QR66LMP-5nOKLXqH.js} +1 -1
  30. package/dist/{quadrantDiagram-O4NWA36T-DZ0TivLD.js → quadrantDiagram-O4NWA36T-B0RNQlBB.js} +1 -1
  31. package/dist/{requirementDiagram-PLB6GJNP-3brF-h1L.js → requirementDiagram-PLB6GJNP-Cw85zSzP.js} +2 -2
  32. package/dist/{sankeyDiagram-IPEJSGJF-BY-LLyiZ.js → sankeyDiagram-IPEJSGJF-APZoNvA9.js} +1 -1
  33. package/dist/{stateDiagram-v2-GCMORJYK-BGavr7Nm.js → stateDiagram-v2-GCMORJYK-CfSjJkc3.js} +2 -2
  34. package/dist/{swimlanes-2SLR337P-B6Fkr7-U.js → swimlanes-2SLR337P-Bv2VKn_d.js} +3 -3
  35. package/dist/{swimlanesDiagram-TC7HE7FX-Dt6Tqj4h.js → swimlanesDiagram-TC7HE7FX-Jk8do14f.js} +3 -3
  36. package/dist/{timeline-definition-EJHVYXUP-CE-3KwYd.js → timeline-definition-EJHVYXUP-Bc40K9sk.js} +1 -1
  37. package/dist/{usecaseDiagram-POWQR4AR-CPOCe5We.js → usecaseDiagram-POWQR4AR-CKd5UWWw.js} +2 -2
  38. package/dist/{xychartDiagram-PMCCYNJV-Cleaihn8.js → xychartDiagram-PMCCYNJV-CQJbSV7N.js} +1 -1
  39. package/docs/components/feedback-and-status.md +2 -0
  40. package/docs/components/overlays-and-menus.md +18 -0
  41. package/docs/components/selection-and-choice.md +13 -5
  42. package/docs/troubleshooting.md +84 -0
  43. package/package.json +1 -1
@@ -8,9 +8,9 @@ import { a as he } from "./chunk-MBY4JIJT-BFIqOe-8.js";
8
8
  import "./chunk-7PRAP22T-0C6_H8Li.js";
9
9
  import "./chunk-7INBJB4K-k-I67NSP.js";
10
10
  import "./chunk-5DYCD2WN-Cd1zazNp.js";
11
- import "./chunk-Z7XXMR3K-C8MhuVIi.js";
11
+ import "./chunk-Z7XXMR3K-DDFBvLN4.js";
12
12
  import "./chunk-UA2S7LBM-ChuksCDg.js";
13
- import { n as ge } from "./chunk-GNY47TPC-DdqgSBxM.js";
13
+ import { n as ge } from "./chunk-GNY47TPC-AFxr6Xhs.js";
14
14
  import { n as _e, t as ve } from "./chunk-LNGE3PJU-DJjGTS7O.js";
15
15
  //#region ../../node_modules/es-toolkit/dist/compat/_internal/isPrototype.mjs
16
16
  function ye(e) {
@@ -302,7 +302,7 @@ var qe = "c4", Je = {
302
302
  id: Ye,
303
303
  detector: /* @__PURE__ */ p((e) => /^\s*(graph|flowchart)/.test(e), "detector"),
304
304
  loader: /* @__PURE__ */ p(async () => {
305
- let { diagram: e } = await import("./flowDiagram-KWPJA3E3-CDzuzre6.js");
305
+ let { diagram: e } = await import("./flowDiagram-KWPJA3E3-CAt7iv16.js");
306
306
  return {
307
307
  id: Ye,
308
308
  diagram: e
@@ -312,7 +312,7 @@ var qe = "c4", Je = {
312
312
  id: Ze,
313
313
  detector: /* @__PURE__ */ p((e) => /^\s*agentflow-beta\b/.test(e), "detector"),
314
314
  loader: /* @__PURE__ */ p(async () => {
315
- let { diagram: e } = await import("./diagram-22UHCM2B-DREk9ku4.js");
315
+ let { diagram: e } = await import("./diagram-22UHCM2B-B1mxqDwI.js");
316
316
  return {
317
317
  id: Ze,
318
318
  diagram: e
@@ -322,7 +322,7 @@ var qe = "c4", Je = {
322
322
  id: $e,
323
323
  detector: /* @__PURE__ */ p((e) => /^\s*swimlane-beta\b/.test(e), "detector"),
324
324
  loader: /* @__PURE__ */ p(async () => {
325
- let { diagram: e } = await import("./swimlanesDiagram-TC7HE7FX-Dt6Tqj4h.js");
325
+ let { diagram: e } = await import("./swimlanesDiagram-TC7HE7FX-Jk8do14f.js");
326
326
  return {
327
327
  id: $e,
328
328
  diagram: e
@@ -332,7 +332,7 @@ var qe = "c4", Je = {
332
332
  id: tt,
333
333
  detector: /* @__PURE__ */ p((e) => /^\s*erDiagram/.test(e), "detector"),
334
334
  loader: /* @__PURE__ */ p(async () => {
335
- let { diagram: e } = await import("./erDiagram-OPXOYQCR-CTfn8QUl.js");
335
+ let { diagram: e } = await import("./erDiagram-OPXOYQCR-nyCpuYg6.js");
336
336
  return {
337
337
  id: tt,
338
338
  diagram: e
@@ -352,7 +352,7 @@ var qe = "c4", Je = {
352
352
  id: at,
353
353
  detector: /* @__PURE__ */ p((e) => /^\s*gantt/.test(e), "detector"),
354
354
  loader: /* @__PURE__ */ p(async () => {
355
- let { diagram: e } = await import("./ganttDiagram-FUAMR5RP-Ci-9ZJz5.js");
355
+ let { diagram: e } = await import("./ganttDiagram-FUAMR5RP-g4YEKVC-.js");
356
356
  return {
357
357
  id: at,
358
358
  diagram: e
@@ -372,7 +372,7 @@ var qe = "c4", Je = {
372
372
  id: lt,
373
373
  detector: /* @__PURE__ */ p((e) => /^\s*pie/.test(e), "detector"),
374
374
  loader: /* @__PURE__ */ p(async () => {
375
- let { diagram: e } = await import("./pieDiagram-5QR66LMP-C-dfffj5.js");
375
+ let { diagram: e } = await import("./pieDiagram-5QR66LMP-5nOKLXqH.js");
376
376
  return {
377
377
  id: lt,
378
378
  diagram: e
@@ -382,7 +382,7 @@ var qe = "c4", Je = {
382
382
  id: dt,
383
383
  detector: /* @__PURE__ */ p((e) => /^\s*quadrantChart/.test(e), "detector"),
384
384
  loader: /* @__PURE__ */ p(async () => {
385
- let { diagram: e } = await import("./quadrantDiagram-O4NWA36T-DZ0TivLD.js");
385
+ let { diagram: e } = await import("./quadrantDiagram-O4NWA36T-B0RNQlBB.js");
386
386
  return {
387
387
  id: dt,
388
388
  diagram: e
@@ -392,7 +392,7 @@ var qe = "c4", Je = {
392
392
  id: pt,
393
393
  detector: /* @__PURE__ */ p((e) => /^\s*xychart(-beta)?/.test(e), "detector"),
394
394
  loader: /* @__PURE__ */ p(async () => {
395
- let { diagram: e } = await import("./xychartDiagram-PMCCYNJV-Cleaihn8.js");
395
+ let { diagram: e } = await import("./xychartDiagram-PMCCYNJV-CQJbSV7N.js");
396
396
  return {
397
397
  id: pt,
398
398
  diagram: e
@@ -402,7 +402,7 @@ var qe = "c4", Je = {
402
402
  id: ht,
403
403
  detector: /* @__PURE__ */ p((e) => /^\s*requirement(Diagram)?/.test(e), "detector"),
404
404
  loader: /* @__PURE__ */ p(async () => {
405
- let { diagram: e } = await import("./requirementDiagram-PLB6GJNP-3brF-h1L.js");
405
+ let { diagram: e } = await import("./requirementDiagram-PLB6GJNP-Cw85zSzP.js");
406
406
  return {
407
407
  id: ht,
408
408
  diagram: e
@@ -422,7 +422,7 @@ var qe = "c4", Je = {
422
422
  id: yt,
423
423
  detector: /* @__PURE__ */ p((e) => /^\s*classDiagram/.test(e), "detector"),
424
424
  loader: /* @__PURE__ */ p(async () => {
425
- let { diagram: e } = await import("./classDiagram-v2-NBCMYWYE-ByUAGkfa.js");
425
+ let { diagram: e } = await import("./classDiagram-v2-NBCMYWYE-Cx1q9jwX.js");
426
426
  return {
427
427
  id: yt,
428
428
  diagram: e
@@ -432,7 +432,7 @@ var qe = "c4", Je = {
432
432
  id: xt,
433
433
  detector: /* @__PURE__ */ p((e) => /^\s*stateDiagram/.test(e), "detector"),
434
434
  loader: /* @__PURE__ */ p(async () => {
435
- let { diagram: e } = await import("./stateDiagram-v2-GCMORJYK-BGavr7Nm.js");
435
+ let { diagram: e } = await import("./stateDiagram-v2-GCMORJYK-CfSjJkc3.js");
436
436
  return {
437
437
  id: xt,
438
438
  diagram: e
@@ -442,7 +442,7 @@ var qe = "c4", Je = {
442
442
  id: Ct,
443
443
  detector: /* @__PURE__ */ p((e) => /^\s*journey/.test(e), "detector"),
444
444
  loader: /* @__PURE__ */ p(async () => {
445
- let { diagram: e } = await import("./journeyDiagram-ZHPQQLJL-CwFYd51O.js");
445
+ let { diagram: e } = await import("./journeyDiagram-ZHPQQLJL-v7NsJ_vl.js");
446
446
  return {
447
447
  id: Ct,
448
448
  diagram: e
@@ -460,7 +460,7 @@ var qe = "c4", Je = {
460
460
  id: Ot,
461
461
  detector: /* @__PURE__ */ p((e, t = {}) => /^\s*flowchart-elk/.test(e) ? (t.layout = "elk", !0) : !1, "detector"),
462
462
  loader: /* @__PURE__ */ p(async () => {
463
- let { diagram: e } = await import("./flowDiagram-KWPJA3E3-CDzuzre6.js");
463
+ let { diagram: e } = await import("./flowDiagram-KWPJA3E3-CAt7iv16.js");
464
464
  return {
465
465
  id: Ot,
466
466
  diagram: e
@@ -470,7 +470,7 @@ var qe = "c4", Je = {
470
470
  id: At,
471
471
  detector: /* @__PURE__ */ p((e) => /^\s*timeline/.test(e), "detector"),
472
472
  loader: /* @__PURE__ */ p(async () => {
473
- let { diagram: e } = await import("./timeline-definition-EJHVYXUP-CE-3KwYd.js");
473
+ let { diagram: e } = await import("./timeline-definition-EJHVYXUP-Bc40K9sk.js");
474
474
  return {
475
475
  id: At,
476
476
  diagram: e
@@ -480,7 +480,7 @@ var qe = "c4", Je = {
480
480
  id: Mt,
481
481
  detector: /* @__PURE__ */ p((e) => /^\s*mindmap/.test(e), "detector"),
482
482
  loader: /* @__PURE__ */ p(async () => {
483
- let { diagram: e } = await import("./mindmap-definition-NLK3R4M7-CsLyIyEF.js");
483
+ let { diagram: e } = await import("./mindmap-definition-NLK3R4M7-xOeGZSSo.js");
484
484
  return {
485
485
  id: Mt,
486
486
  diagram: e
@@ -500,7 +500,7 @@ var qe = "c4", Je = {
500
500
  id: It,
501
501
  detector: /* @__PURE__ */ p((e) => /^\s*sankey(-beta)?/.test(e), "detector"),
502
502
  loader: /* @__PURE__ */ p(async () => {
503
- let { diagram: e } = await import("./sankeyDiagram-IPEJSGJF-BY-LLyiZ.js");
503
+ let { diagram: e } = await import("./sankeyDiagram-IPEJSGJF-APZoNvA9.js");
504
504
  return {
505
505
  id: It,
506
506
  diagram: e
@@ -530,7 +530,7 @@ var qe = "c4", Je = {
530
530
  id: Ht,
531
531
  detector: /* @__PURE__ */ p((e) => /^\s*block(-beta)?/.test(e), "detector"),
532
532
  loader: /* @__PURE__ */ p(async () => {
533
- let { diagram: e } = await import("./blockDiagram-BEXU5L5S-K2MjXCm9.js");
533
+ let { diagram: e } = await import("./blockDiagram-BEXU5L5S-iNiTd2F6.js");
534
534
  return {
535
535
  id: Ht,
536
536
  diagram: e
@@ -590,7 +590,7 @@ var qe = "c4", Je = {
590
590
  id: en,
591
591
  detector: /* @__PURE__ */ p((e) => /^\s*treemap/.test(e), "detector"),
592
592
  loader: /* @__PURE__ */ p(async () => {
593
- let { diagram: e } = await import("./diagram-3UASUU5V-CYkPaos5.js");
593
+ let { diagram: e } = await import("./diagram-3UASUU5V-DKbBxWI5.js");
594
594
  return {
595
595
  id: en,
596
596
  diagram: e
@@ -600,7 +600,7 @@ var qe = "c4", Je = {
600
600
  id: nn,
601
601
  detector: /* @__PURE__ */ p((e) => /^\s*usecase-beta(?:\s|$)/.test(e), "detector"),
602
602
  loader: /* @__PURE__ */ p(async () => {
603
- let { diagram: e } = await import("./usecaseDiagram-POWQR4AR-CPOCe5We.js");
603
+ let { diagram: e } = await import("./usecaseDiagram-POWQR4AR-CKd5UWWw.js");
604
604
  return {
605
605
  id: nn,
606
606
  diagram: e
@@ -7,11 +7,11 @@ import "./chunk-MBY4JIJT-BFIqOe-8.js";
7
7
  import "./chunk-7PRAP22T-0C6_H8Li.js";
8
8
  import "./chunk-7INBJB4K-k-I67NSP.js";
9
9
  import "./chunk-5DYCD2WN-Cd1zazNp.js";
10
- import "./chunk-Z7XXMR3K-C8MhuVIi.js";
10
+ import "./chunk-Z7XXMR3K-DDFBvLN4.js";
11
11
  import { t as u } from "./chunk-XXDRQBXY-dKXxu_aj.js";
12
12
  import { t as d } from "./chunk-WEXAMYUT-CbFOhEve.js";
13
13
  import "./chunk-UA2S7LBM-ChuksCDg.js";
14
- import { r as f, t as p } from "./chunk-GNY47TPC-DdqgSBxM.js";
14
+ import { r as f, t as p } from "./chunk-GNY47TPC-AFxr6Xhs.js";
15
15
  //#region ../../node_modules/uuid/dist/stringify.js
16
16
  var m = [];
17
17
  for (let e = 0; e < 256; ++e) m.push((e + 256).toString(16).slice(1));
@@ -1,4 +1,4 @@
1
- import { ct as e, ot as t } from "./components-CIYQrI45.js";
1
+ import { ct as e, ot as t } from "./components-CEXxj5QP.js";
2
2
  import { n } from "./src-CsLQInsN.js";
3
3
  import { i as r, p as i } from "./chunk-ZIGJFQKS-9VXArDKF.js";
4
4
  import { t as a } from "./ordinal-DwxdXP1t.js";
@@ -1,4 +1,4 @@
1
- import { rt as e } from "./components-CIYQrI45.js";
1
+ import { rt as e } from "./components-CEXxj5QP.js";
2
2
  import { n as t, t as n } from "./src-CsLQInsN.js";
3
3
  import { n as r } from "./chunk-Y2CYZVJY-BAad7w_K.js";
4
4
  import { D as i, H as a, U as o, a as s, c, f as l, q as u, v as d, w as f, x as p, y as m, z as h } from "./chunk-O7XYJQB3-BChweQ_V.js";
@@ -8,11 +8,11 @@ import "./chunk-7PRAP22T-0C6_H8Li.js";
8
8
  import { a as p, i as m, o as h, r as g } from "./chunk-J5ZVWO5B-DmRRmhon.js";
9
9
  import "./chunk-7INBJB4K-k-I67NSP.js";
10
10
  import "./chunk-5DYCD2WN-Cd1zazNp.js";
11
- import "./chunk-Z7XXMR3K-C8MhuVIi.js";
11
+ import "./chunk-Z7XXMR3K-DDFBvLN4.js";
12
12
  import { t as _ } from "./chunk-XXDRQBXY-dKXxu_aj.js";
13
13
  import { t as v } from "./chunk-WEXAMYUT-CbFOhEve.js";
14
14
  import "./chunk-UA2S7LBM-ChuksCDg.js";
15
- import { r as y, t as b } from "./chunk-GNY47TPC-DdqgSBxM.js";
15
+ import { r as y, t as b } from "./chunk-GNY47TPC-AFxr6Xhs.js";
16
16
  //#region ../../node_modules/mermaid/dist/chunks/mermaid.core/requirementDiagram-PLB6GJNP.mjs
17
17
  var x = (function() {
18
18
  var e = /* @__PURE__ */ n(function(e, t, n, r) {
@@ -1,4 +1,4 @@
1
- import { V as e } from "./components-CIYQrI45.js";
1
+ import { V as e } from "./components-CEXxj5QP.js";
2
2
  import { t } from "./src-CsLQInsN.js";
3
3
  import { t as n } from "./ordinal-DwxdXP1t.js";
4
4
  import { n as r } from "./chunk-Y2CYZVJY-BAad7w_K.js";
@@ -8,12 +8,12 @@ import "./chunk-7PRAP22T-0C6_H8Li.js";
8
8
  import { a as h, i as g, o as _, r as v } from "./chunk-J5ZVWO5B-DmRRmhon.js";
9
9
  import "./chunk-7INBJB4K-k-I67NSP.js";
10
10
  import "./chunk-5DYCD2WN-Cd1zazNp.js";
11
- import "./chunk-Z7XXMR3K-C8MhuVIi.js";
11
+ import "./chunk-Z7XXMR3K-DDFBvLN4.js";
12
12
  import { t as y } from "./chunk-GWA4HPMP-B8jXI0Tl.js";
13
13
  import { t as b } from "./chunk-XXDRQBXY-dKXxu_aj.js";
14
14
  import { t as x } from "./chunk-WEXAMYUT-CbFOhEve.js";
15
15
  import "./chunk-UA2S7LBM-ChuksCDg.js";
16
- import { r as S, t as C } from "./chunk-GNY47TPC-DdqgSBxM.js";
16
+ import { r as S, t as C } from "./chunk-GNY47TPC-AFxr6Xhs.js";
17
17
  //#region ../../node_modules/mermaid/dist/chunks/mermaid.core/stateDiagram-v2-GCMORJYK.mjs
18
18
  var w = (function() {
19
19
  var e = /* @__PURE__ */ i(function(e, t, n, r) {
@@ -7,10 +7,10 @@ import "./chunk-MBY4JIJT-BFIqOe-8.js";
7
7
  import "./chunk-7PRAP22T-0C6_H8Li.js";
8
8
  import "./chunk-7INBJB4K-k-I67NSP.js";
9
9
  import "./chunk-5DYCD2WN-Cd1zazNp.js";
10
- import "./chunk-Z7XXMR3K-C8MhuVIi.js";
10
+ import "./chunk-Z7XXMR3K-DDFBvLN4.js";
11
11
  import "./chunk-UA2S7LBM-ChuksCDg.js";
12
- import { r as n } from "./chunk-3FUC2YCW-6KyD6CAZ.js";
13
- import { t as r } from "./chunk-NETBCI7D-ZnunhYtw.js";
12
+ import { r as n } from "./chunk-3FUC2YCW-C3_88DyD.js";
13
+ import { t as r } from "./chunk-NETBCI7D-DUZYHta0.js";
14
14
  //#region ../../node_modules/mermaid/dist/chunks/mermaid.core/swimlanes-2SLR337P.mjs
15
15
  function i(e, { measure: t }) {
16
16
  let n = e.config?.swimlane?.lineHops;
@@ -7,14 +7,14 @@ import "./chunk-MBY4JIJT-BFIqOe-8.js";
7
7
  import "./chunk-7PRAP22T-0C6_H8Li.js";
8
8
  import "./chunk-7INBJB4K-k-I67NSP.js";
9
9
  import "./chunk-5DYCD2WN-Cd1zazNp.js";
10
- import "./chunk-Z7XXMR3K-C8MhuVIi.js";
10
+ import "./chunk-Z7XXMR3K-DDFBvLN4.js";
11
11
  import "./chunk-GWA4HPMP-B8jXI0Tl.js";
12
12
  import "./chunk-XXDRQBXY-dKXxu_aj.js";
13
13
  import "./chunk-WEXAMYUT-CbFOhEve.js";
14
14
  import "./chunk-UA2S7LBM-ChuksCDg.js";
15
- import "./chunk-GNY47TPC-DdqgSBxM.js";
15
+ import "./chunk-GNY47TPC-AFxr6Xhs.js";
16
16
  import "./chunk-LNGE3PJU-DJjGTS7O.js";
17
- import { r as t, t as n } from "./chunk-7M6MHVWA-CNWcBB_6.js";
17
+ import { r as t, t as n } from "./chunk-7M6MHVWA-DSA5AJyK.js";
18
18
  //#region ../../node_modules/mermaid/dist/chunks/mermaid.core/swimlanesDiagram-TC7HE7FX.mjs
19
19
  var r = n({ styles: /* @__PURE__ */ e((e) => `${t(e)}
20
20
  .swimlane.cluster:not([data-color-id]) rect {
@@ -1,4 +1,4 @@
1
- import { ct as e } from "./components-CIYQrI45.js";
1
+ import { ct as e } from "./components-CEXxj5QP.js";
2
2
  import { n as t, t as n } from "./src-CsLQInsN.js";
3
3
  import { p as r } from "./chunk-ZIGJFQKS-9VXArDKF.js";
4
4
  import { n as i, t as a } from "./chunk-Y2CYZVJY-BAad7w_K.js";
@@ -8,11 +8,11 @@ import "./chunk-7PRAP22T-0C6_H8Li.js";
8
8
  import { a as g, i as _, o as v, r as y } from "./chunk-J5ZVWO5B-DmRRmhon.js";
9
9
  import "./chunk-7INBJB4K-k-I67NSP.js";
10
10
  import "./chunk-5DYCD2WN-Cd1zazNp.js";
11
- import "./chunk-Z7XXMR3K-C8MhuVIi.js";
11
+ import "./chunk-Z7XXMR3K-DDFBvLN4.js";
12
12
  import { t as ee } from "./chunk-XXDRQBXY-dKXxu_aj.js";
13
13
  import { t as te } from "./chunk-WEXAMYUT-CbFOhEve.js";
14
14
  import "./chunk-UA2S7LBM-ChuksCDg.js";
15
- import { r as ne, t as re } from "./chunk-GNY47TPC-DdqgSBxM.js";
15
+ import { r as ne, t as re } from "./chunk-GNY47TPC-AFxr6Xhs.js";
16
16
  //#region ../../node_modules/chevrotain/node_modules/lodash-es/_freeGlobal.js
17
17
  var ie = typeof global == "object" && global && global.Object === Object && global, ae = typeof self == "object" && self && self.Object === Object && self, b = ie || ae || Function("return this")(), oe = b.Symbol, se = Object.prototype, ce = se.hasOwnProperty, le = se.toString, ue = oe ? oe.toStringTag : void 0;
18
18
  function de(e) {
@@ -1,4 +1,4 @@
1
- import { at as e, rt as t, st as n } from "./components-CIYQrI45.js";
1
+ import { at as e, rt as t, st as n } from "./components-CEXxj5QP.js";
2
2
  import { n as r } from "./src-CsLQInsN.js";
3
3
  import { i } from "./chunk-ZIGJFQKS-9VXArDKF.js";
4
4
  import { n as a } from "./chunk-Y2CYZVJY-BAad7w_K.js";
@@ -149,6 +149,8 @@ the element that had it when it opened (the button of yours that opened a
149
149
  controlled `AlertDialog`, too), unless focus already went elsewhere or your
150
150
  `onCloseAutoFocus` calls `event.preventDefault()`.
151
151
 
152
+ `AlertDialogContent` is capped to the viewport height and scrolls inside itself, like `DialogContent` ([Dialog](overlays-and-menus.md#dialog)).
153
+
152
154
  **Storybook:** `Feedback & status/AlertDialog` · **Vue:** `AlertDialog` (same parts)
153
155
 
154
156
  ---
@@ -109,6 +109,21 @@ export function Terms() {
109
109
  | `asChild` (`DialogTrigger`) | `boolean` | **`true`** | the trigger is its child — pass one element, usually a `Button` |
110
110
  | `variant`, `color` (`DialogClose`) | as `IconButton` | `'ghost'` | a top-right X button, named "Close" (`material.buttons.close`, translated) while it shows only the icon; text children or an `aria-label` name it instead, and icon-only children leave it unnamed; children replace the X |
111
111
 
112
+ `DialogContent` and `AlertDialogContent` are capped at `100dvh - 2rem` (`100vh`
113
+ where `dvh` is unsupported) and scroll inside themselves, so a long body never
114
+ pushes the title off-screen on a phone. A close button inside the content scrolls with it (`DialogContent` renders no X itself). On
115
+ browsers with `dvh` support, your own `max-h-*` through `className` wins over the
116
+ cap. To remove the cap and the scroll, pass `className="max-h-none overflow-visible"`:
117
+
118
+ ```tsx
119
+ <DialogContent className="max-h-none overflow-visible">
120
+ ```
121
+
122
+ Content wider than the dialog now scrolls horizontally or is clipped
123
+ (`overflow-visible` restores the old behaviour). `DialogScrollContent` is for a
124
+ dialog that should grow taller than the screen and scroll inside the overlay
125
+ instead of capping; it does not pin the header or footer.
126
+
112
127
  `DialogContent` does not render a close button by itself — add `DialogClose`.
113
128
  It ignores outside clicks that land on an open `Combobox` list, so a combobox
114
129
  inside a dialog works. On open it moves focus into the dialog: to its first
@@ -191,6 +206,9 @@ Parts: `Sheet`, `SheetTrigger`, `SheetContent`, `SheetHeader`, `SheetTitle`,
191
206
  | `withCloseButton` (`SheetContent`) | `boolean` | — | adds a tonal X button top-right, named "Close" (`material.buttons.close`, translated) |
192
207
  | `defaultOpen` / `open`, `onOpenChange`, `modal` (`Sheet`) | as `Dialog` | — | a sheet is a Radix dialog |
193
208
 
209
+ `SheetContent` scrolls inside itself, and a top or bottom sheet is capped at
210
+ `100dvh`. Override the cap with `max-h-*` through `className`.
211
+
194
212
  `SheetTrigger` is **not** `asChild` by default, unlike `DialogTrigger`.
195
213
  `SheetContent` moves focus in on open and hands it back on close as
196
214
  `DialogContent` does: back to the
@@ -287,17 +287,17 @@ Parts: `Autocomplete`, `AutocompleteChips` (the chips row it uses in
287
287
  | `mode` | `'single' \| 'multiple'` | — | required; decides the `value` type |
288
288
  | `value` | `string` / `string[]` | — | required, per `mode` |
289
289
  | `onValueChange` | `(value?: string \| null) => void` / `(value?: string[] \| null) => void` | — | per `mode` |
290
- | `options` | `T[]` (`{ value, label }` by default) | `[]` | the items; with `onSearch`, the list before a search and the selected options' labels |
290
+ | `options` | `T[]` (`{ value, label, disabled? }` by default) | `[]` | the items (`disabled` on one: listed, announced as disabled, never picked); with `onSearch`, the list before a search and the selected options' labels |
291
291
  | `getOptionValue`, `getOptionLabel` | `(option: T) => string` | `.value`, `.label` | for other option shapes |
292
292
  | `filter` | `'accent-insensitive' \| 'none' \| (option: T, query: string) => boolean` | `'accent-insensitive'`, `'none'` with `onSearch` | how the list is filtered as the user types: label or value, ignoring case and accents (`e` finds "École") in the provider's language; `'none'` shows `options` as given; a function gets the trimmed query, never an empty one |
293
293
  | `freeSolo` | `boolean` | — | accept a typed value that is not an option |
294
294
  | `onSearch` | `(query: string, { signal }: { signal: AbortSignal }) => Promise<T[]>` | — | server search: called once typing pauses; its results become the list. Each search aborts the previous one, and a response that lands after a newer one is dropped |
295
295
  | `onSearchError` | `(error: unknown) => void` | — | `onSearch` rejected (an abort is not a rejection) |
296
296
  | `minQueryLength` | `number` | `1` | `onSearch` waits for this many characters; below it the list says "Type at least N characters to search." |
297
- | `debounceMs` | `number` | `250` | the pause before `onSearch` and `onQueryChange` run |
298
- | `onQueryChange` | `(query: string) => void` | — | the query once typing pauses — fetch `options` yourself here |
297
+ | `debounceMs` | `number` | `250` | the pause before `onSearch` and `onQueryChange` run on typed text; an emptied query is reported to `onQueryChange` at once, and `onSearch` never runs on it unless `minQueryLength` is `0` (then it follows the pause) |
298
+ | `onQueryChange` | `(query: string) => void` | — | the query once typing pauses, and `''` at once when it empties (a pick, a clear) — fetch `options` yourself here |
299
299
  | `loading` | `boolean` | — | with `onQueryChange`: "Loading…" in the list, `aria-busy` on the listbox, announced |
300
- | `searchError` | `ReactNode` | — | with `onQueryChange`: shown and announced in place of the options |
300
+ | `searchError` | `ReactNode` | — | shown and announced in place of the options; with `onSearch` it replaces the generic "The search failed. Try again." |
301
301
  | `empty` | `ReactNode` | "No option found." | text when nothing matches |
302
302
  | `actions` | `ReactNode \| ((query: string) => ReactNode)` | — | buttons at the end of the list ("Create …") |
303
303
  | `required` | `boolean` | — | the asterisk, and `aria-required` on the `combobox` input, which the label names |
@@ -346,7 +346,10 @@ export function PersonField() {
346
346
  With `onSearch`, `minQueryLength` defaults to 1, `debounceMs` to 250 and `filter` to `'none'`
347
347
  (the server filters). A rejected search shows and announces "The search
348
348
  failed. Try again." by itself and hands the error to `onSearchError`; an abort is
349
- never an error. Type your search with `AutocompleteSearch<T>` (its second
349
+ never an error. To say why instead (the API's own refusal, "the service is
350
+ unreachable"), keep the reason in your state from `onSearchError` and pass it as
351
+ `searchError`: it takes precedence over the generic text, in the list and in the
352
+ live region. Type your search with `AutocompleteSearch<T>` (its second
350
353
  argument is `AutocompleteSearchContext`, `{ signal }`); `AutocompleteFilter<T>`
351
354
  and `AutocompleteSearchProps<T>` are exported from `@nxgt/material/components` too.
352
355
 
@@ -354,6 +357,11 @@ To fetch it yourself instead, keep `options` and `loading` in your state,
354
357
  update them from `onQueryChange`, and pass `filter="none"` when the server
355
358
  already filtered.
356
359
 
360
+ A disabled option (`disabled: true` on it, in `options` or in what `onSearch`
361
+ returns) is greyed out, carries `aria-disabled`, and is never picked, by click
362
+ or by Enter, in `single` and `multiple` mode. As in the combobox pattern, the
363
+ arrow keys still reach it so that it is announced; Enter on it does nothing.
364
+
357
365
  **Accessibility.** A polite live region (`role="status"`) says "Loading…",
358
366
  then "3 results" or "No results" (or the failure) once the search answers or
359
367
  typing pauses — never on every keystroke. The listbox is `aria-busy` while
@@ -27,6 +27,7 @@ words in your error.
27
27
  - [Dialogs, toasts or buttons no longer animate](#dialogs-toasts-or-buttons-no-longer-animate)
28
28
  - [A Content-Security-Policy reports a `data:` image on every form with a required field](#a-content-security-policy-reports-a-data-image-on-every-form-with-a-required-field)
29
29
  - [A Button's label overflows a card on a phone](#a-buttons-label-overflows-a-card-on-a-phone)
30
+ - [A dialog or sheet scrolls, or clips a child, after upgrading](#a-dialog-or-sheet-scrolls-or-clips-a-child-after-upgrading)
30
31
 
31
32
  **Feedback**
32
33
 
@@ -150,7 +151,10 @@ words in your error.
150
151
  - [A test no longer finds `aria-invalid` on a `Switch` row or an `Autocomplete`'s chips](#a-test-no-longer-finds-aria-invalid-on-a-switch-row-or-an-autocompletes-chips)
151
152
  - [An `Autocomplete` lists more options than before, or "ecole" finds "École"](#an-autocomplete-lists-more-options-than-before-or-ecole-finds-école)
152
153
  - [`onQueryChange` runs more often after upgrading](#onquerychange-runs-more-often-after-upgrading)
154
+ - [A click on the next field right after an `Autocomplete` pick is lost](#a-click-on-the-next-field-right-after-an-autocomplete-pick-is-lost)
153
155
  - [An older search's results replace the newer ones in an `Autocomplete`](#an-older-searchs-results-replace-the-newer-ones-in-an-autocomplete)
156
+ - [An `Autocomplete` option does nothing on click or Enter](#an-autocomplete-option-does-nothing-on-click-or-enter)
157
+ - ["The search failed. Try again." no longer shows in an `Autocomplete`](#the-search-failed-try-again-no-longer-shows-in-an-autocomplete)
154
158
  - [A test no longer finds `aria-invalid` on an `OtpField` slot](#a-test-no-longer-finds-aria-invalid-on-an-otpfield-slot)
155
159
  - [A test no longer finds the breadcrumb's home button](#a-test-no-longer-finds-the-breadcrumbs-home-button)
156
160
  - [A test no longer finds a sidebar entry by the `button` role](#a-test-no-longer-finds-a-sidebar-entry-by-the-button-role)
@@ -616,6 +620,27 @@ your own through `className`. With `asChild`, put the label in a `<span>`:
616
620
  </Button>
617
621
  ```
618
622
 
623
+ ### A dialog or sheet scrolls, or clips a child, after upgrading
624
+
625
+ **When:** after upgrading, a tall `DialogContent`, `AlertDialogContent` or
626
+ `SheetContent` shows a scrollbar, or a child that stuck out of it (a popover, a
627
+ focus ring, a wide table) is clipped.
628
+ **Why:** these contents are now capped to the viewport (`max-h-[calc(100dvh-2rem)]`,
629
+ `100vh` where `dvh` is unsupported; a top or bottom sheet is capped at `100dvh`)
630
+ and carry `overflow-y-auto`, so a long body scrolls inside them instead of
631
+ leaving the title off-screen. Setting `overflow-y` makes `overflow-x` clip or
632
+ scroll too.
633
+ **Fix:** to keep the old behaviour on one dialog, remove the cap and the scroll
634
+ with `className="max-h-none overflow-visible"`; to change the cap, pass your own
635
+ `max-h-*` (it wins on browsers with `dvh` support):
636
+
637
+ ```tsx
638
+ <DialogContent className="max-h-none overflow-visible">
639
+ ```
640
+
641
+ For a dialog that should grow taller than the screen and scroll inside the
642
+ overlay instead of capping, use `DialogScrollContent`.
643
+
619
644
  ## Feedback
620
645
 
621
646
  ### A toast with an action never goes away
@@ -2887,6 +2912,20 @@ was a fixed 1 s.
2887
2912
  **Fix:** set the pause you had, `debounceMs={1000}`, or move the fetch to `onSearch`, which
2888
2913
  also aborts the previous request and drops a stale response.
2889
2914
 
2915
+ ### A click on the next field right after an `Autocomplete` pick is lost
2916
+
2917
+ **When:** before 2.18.1, in a dialog, a `Select` (or any field) right below an
2918
+ `Autocomplete` whose `onQueryChange` shows or hides something (a line naming
2919
+ who is already linked, a result count): a click on that field's option just
2920
+ after a pick does nothing, now and then (more often in Firefox and on a slow
2921
+ machine; an end-to-end test flakes).
2922
+ **Why:** a pick empties the query, and `onQueryChange('')` came only after
2923
+ `debounceMs`. The line it removed then shrank the centred dialog, which moved
2924
+ the open list by half that height between the pointer's press and its release:
2925
+ the release landed on another option, and nothing was chosen.
2926
+ **Fix:** upgrade: an emptied query is reported at once, with the pick, before
2927
+ the next click. Waiting in a test until no `listbox` is left only hid it.
2928
+
2890
2929
  ### An older search's results replace the newer ones in an `Autocomplete`
2891
2930
 
2892
2931
  **When:** you fetch `options` yourself from `onQueryChange`, and a slow response
@@ -2909,6 +2948,51 @@ an older query, even from an API that ignores the signal:
2909
2948
  />
2910
2949
  ```
2911
2950
 
2951
+ ### An `Autocomplete` option does nothing on click or Enter
2952
+
2953
+ **When:** one option of an `Autocomplete` is greyed out and clicking it, or
2954
+ pressing Enter on it, changes nothing, with no error.
2955
+ **Why:** that option has `disabled: true` (in the local `options` or in what
2956
+ `onSearch` returns). It is listed and announced with `aria-disabled`, and never
2957
+ picked, in `single` and `multiple` mode; the arrow keys still reach a disabled option so that it is announced, but Enter does not pick it.
2958
+ **Fix:** drop `disabled` from the option, or build it only for the options that
2959
+ may be chosen:
2960
+
2961
+ ```tsx
2962
+ <Autocomplete
2963
+ mode="single"
2964
+ value={value}
2965
+ onValueChange={setValue}
2966
+ options={[
2967
+ { value: 'a', label: 'Alpha', disabled: true }, // listed, never picked
2968
+ { value: 'b', label: 'Beta' },
2969
+ ]}
2970
+ />
2971
+ ```
2972
+
2973
+ ### "The search failed. Try again." no longer shows in an `Autocomplete`
2974
+
2975
+ **When:** after upgrading, an `Autocomplete` whose `onSearch` rejects shows
2976
+ your own text, or nothing generic, where it used to say "The search failed. Try
2977
+ again."
2978
+ **Why:** `searchError` now takes precedence over the generic text with `onSearch`
2979
+ too, in the list and in the live announcement. The generic text only shows
2980
+ while `searchError` is unset.
2981
+ **Fix:** nothing, if the reason is what you want. To get the generic text back,
2982
+ leave `searchError` unset or empty; to show a reason, keep it from `onSearchError` and pass it
2983
+ back:
2984
+
2985
+ ```tsx
2986
+ <Autocomplete
2987
+ mode="single"
2988
+ value={value}
2989
+ onValueChange={setValue}
2990
+ onSearch={search}
2991
+ onSearchError={() => setReason('Directory unreachable')}
2992
+ searchError={reason}
2993
+ />
2994
+ ```
2995
+
2912
2996
  ### A test no longer finds `aria-invalid` on an `OtpField` slot
2913
2997
 
2914
2998
  **When:** `[data-slot="input-otp-slot"][aria-invalid]` (or
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nxgt/material",
3
- "version": "2.17.0",
3
+ "version": "2.18.1",
4
4
  "license": "MIT",
5
5
  "bugs": {
6
6
  "email": "stevegires@gmail.com"