@ai-matrx/design-system 0.86.354 → 0.86.356

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 (60) hide show
  1. package/CHANGELOG.md +31 -2
  2. package/dist/carousel.js +3 -3
  3. package/dist/{chunk-UGQRAQTE.js → chunk-2PO3N42Q.js} +3 -3
  4. package/dist/{chunk-ZRHVA3DL.js → chunk-AV5C4YLL.js} +2 -1
  5. package/dist/{chunk-ZRHVA3DL.js.map → chunk-AV5C4YLL.js.map} +1 -1
  6. package/dist/chunk-LJKF267O.js +168 -0
  7. package/dist/chunk-LJKF267O.js.map +1 -0
  8. package/dist/{chunk-CFCWQDGC.js → chunk-RLM4RSED.js} +5 -23
  9. package/dist/chunk-RLM4RSED.js.map +1 -0
  10. package/dist/{chunk-FLWSEDUW.js → chunk-ZMUPFGQO.js} +2 -2
  11. package/dist/controls.cjs +86 -1
  12. package/dist/controls.cjs.map +1 -1
  13. package/dist/controls.js +3 -3
  14. package/dist/data-table/drill-chart.cjs +85 -1
  15. package/dist/data-table/drill-chart.cjs.map +1 -1
  16. package/dist/data-table/drill-chart.js +1 -1
  17. package/dist/data-table/index.cjs +85 -1
  18. package/dist/data-table/index.cjs.map +1 -1
  19. package/dist/data-table/index.js +1 -1
  20. package/dist/desktop.cjs +159 -81
  21. package/dist/desktop.cjs.map +1 -1
  22. package/dist/desktop.css +8 -5
  23. package/dist/desktop.d.cts +0 -5
  24. package/dist/desktop.d.ts +0 -5
  25. package/dist/desktop.js +70 -70
  26. package/dist/desktop.js.map +1 -1
  27. package/dist/email-input-dialog.cjs +85 -1
  28. package/dist/email-input-dialog.cjs.map +1 -1
  29. package/dist/email-input-dialog.js +1 -1
  30. package/dist/index.cjs +114 -19
  31. package/dist/index.cjs.map +1 -1
  32. package/dist/index.d.cts +38 -22
  33. package/dist/index.d.ts +38 -22
  34. package/dist/index.js +16 -8
  35. package/dist/index.js.map +1 -1
  36. package/dist/lite-table.cjs +86 -19
  37. package/dist/lite-table.cjs.map +1 -1
  38. package/dist/lite-table.js +2 -2
  39. package/dist/notice-material.css +28 -0
  40. package/dist/record-list.cjs +86 -19
  41. package/dist/record-list.cjs.map +1 -1
  42. package/dist/record-list.js +2 -2
  43. package/dist/settings.cjs +1 -0
  44. package/dist/settings.cjs.map +1 -1
  45. package/dist/settings.js +1 -1
  46. package/dist/styles.css +1 -0
  47. package/dist/swipe-deck.cjs +95 -2
  48. package/dist/swipe-deck.cjs.map +1 -1
  49. package/dist/swipe-deck.css +2 -0
  50. package/dist/swipe-deck.js +11 -2
  51. package/dist/swipe-deck.js.map +1 -1
  52. package/dist/text-input-dialog.cjs +85 -1
  53. package/dist/text-input-dialog.cjs.map +1 -1
  54. package/dist/text-input-dialog.js +1 -1
  55. package/package.json +2 -2
  56. package/dist/chunk-CFCWQDGC.js.map +0 -1
  57. package/dist/chunk-HKLIRHT2.js +0 -71
  58. package/dist/chunk-HKLIRHT2.js.map +0 -1
  59. /package/dist/{chunk-UGQRAQTE.js.map → chunk-2PO3N42Q.js.map} +0 -0
  60. /package/dist/{chunk-FLWSEDUW.js.map → chunk-ZMUPFGQO.js.map} +0 -0
@@ -67,6 +67,8 @@
67
67
  @media (pointer: coarse) {
68
68
  .matrx-sd[data-layout="inline"] { height: var(--sd-inline-height, clamp(400px, 58dvh, 540px)); }
69
69
  }
70
+ /* A full deck takes focus back after an answer (keys keep working); it draws no ring for it. */
71
+ .matrx-sd:not([data-layout="inline"]):focus { outline: none; }
70
72
  .matrx-sd[data-layout="inline"]:focus-visible { outline: 2px solid var(--sd-sel); outline-offset: 2px; }
71
73
  .matrx-sd[data-layout="inline"] .matrx-sd-frame { padding: 12px 10px 10px; }
72
74
  .matrx-sd[data-layout="inline"] .matrx-sd-progress { left: 12px; right: 12px; top: 5px; }
@@ -1,7 +1,7 @@
1
1
  "use client";
2
2
  import {
3
3
  ErrorBox
4
- } from "./chunk-HKLIRHT2.js";
4
+ } from "./chunk-LJKF267O.js";
5
5
  import {
6
6
  Input
7
7
  } from "./chunk-TDMVH77G.js";
@@ -1709,6 +1709,15 @@ function SwipeDeck(props) {
1709
1709
  view.addEventListener("keydown", onKey);
1710
1710
  return () => view.removeEventListener("keydown", onKey);
1711
1711
  }, [keyboard, layout]);
1712
+ const cardId = cardItem?.id ?? null;
1713
+ React4.useEffect(() => {
1714
+ if (!keyboard || layout === "inline" || cardId === null) return;
1715
+ const root = rootRef.current;
1716
+ const active = root?.ownerDocument.activeElement;
1717
+ if (!root || active && root.contains(active)) return;
1718
+ if (active?.closest("input, textarea, select, [contenteditable='true'], [role='dialog'], [role='alertdialog'], [role='menu'], [role='listbox']")) return;
1719
+ root.focus({ preventScroll: true });
1720
+ }, [cardId, keyboard, layout]);
1712
1721
  const fingerRef = React4.useRef(null);
1713
1722
  const ringRef = React4.useRef(null);
1714
1723
  const capRef = React4.useRef(null);
@@ -1877,7 +1886,7 @@ function SwipeDeck(props) {
1877
1886
  const root = e.currentTarget;
1878
1887
  if (!root.contains(root.ownerDocument.activeElement)) root.focus({ preventScroll: true });
1879
1888
  }
1880
- } : {},
1889
+ } : { tabIndex: -1 },
1881
1890
  children: [
1882
1891
  /* @__PURE__ */ jsx3("div", { className: "matrx-sd-progress", "aria-hidden": "true", children: progress.map((s, k) => {
1883
1892
  const tone = k === stepIndex ? "current" : s.kind === "card" ? findAnswer(rules, s.item, state.answers[s.item.id])?.tone : s.kind === "pick" && state.picks[s.group] ? "primary" : void 0;