@ai-matrx/design-system 0.86.332 → 0.86.333

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 (130) hide show
  1. package/CHANGELOG.md +2 -1
  2. package/dist/auth-gate-dialog.js +4 -4
  3. package/dist/carousel.js +18 -18
  4. package/dist/{chunk-MVGMI6UZ.js → chunk-3MQMVPKO.js} +5 -5
  5. package/dist/{chunk-TBDMTCRW.js → chunk-6YZMGSQY.js} +10 -10
  6. package/dist/{chunk-OFJ5LGBU.js → chunk-7NEVJKDZ.js} +8 -8
  7. package/dist/{chunk-XTNAKJSH.js → chunk-B3LDW3IQ.js} +2 -2
  8. package/dist/{chunk-VTJWQPYR.js → chunk-BM2YYBUO.js} +5 -5
  9. package/dist/{chunk-FTZCPGTH.js → chunk-CFCWQDGC.js} +4 -4
  10. package/dist/{chunk-CN7C4KQB.js → chunk-CH2NWSES.js} +2 -2
  11. package/dist/{chunk-CJCUD62M.js → chunk-CSSD6NS4.js} +5 -5
  12. package/dist/{chunk-W3QSRJ3O.js → chunk-E4GS5QH7.js} +7 -7
  13. package/dist/{chunk-O4KANICE.js → chunk-FRJ4PPA2.js} +5 -5
  14. package/dist/{chunk-4PCLJAW2.js → chunk-FXT7PZAF.js} +5 -14
  15. package/dist/chunk-FXT7PZAF.js.map +1 -0
  16. package/dist/{chunk-D45XDOJS.js → chunk-GHPUO3O7.js} +2 -2
  17. package/dist/{chunk-RPUC5MNH.js → chunk-GLZJ7WZK.js} +3 -3
  18. package/dist/{chunk-VKWQTSB6.js → chunk-HEFTQUJ5.js} +6 -6
  19. package/dist/{chunk-KWBYKUKP.js → chunk-J6637L6D.js} +4 -4
  20. package/dist/chunk-KGW373MK.js +21 -0
  21. package/dist/chunk-KGW373MK.js.map +1 -0
  22. package/dist/{chunk-5LT34PFX.js → chunk-MEJVHDYJ.js} +18 -18
  23. package/dist/{chunk-PPB52S7F.js → chunk-MFUNGDHO.js} +7 -7
  24. package/dist/{chunk-LCPHFONA.js → chunk-MIJMP4WI.js} +5 -5
  25. package/dist/{chunk-2WL2SGKL.js → chunk-NNETFHGX.js} +8 -8
  26. package/dist/{chunk-XREKZXAL.js → chunk-SMJGESH7.js} +6 -6
  27. package/dist/{chunk-SNHCBHBE.js → chunk-U24MOJWK.js} +4 -4
  28. package/dist/{chunk-DO6G4EKJ.js → chunk-UWTODOMD.js} +2 -2
  29. package/dist/{chunk-BQR4N24F.js → chunk-VLLUUOYJ.js} +4 -4
  30. package/dist/{chunk-FD6V6JBN.js → chunk-VV6WZTH5.js} +8 -8
  31. package/dist/{chunk-LVM7XZRJ.js → chunk-WQ2QCMMA.js} +4 -4
  32. package/dist/{chunk-57OD2WTY.js → chunk-X6ZRHJQP.js} +6 -6
  33. package/dist/{chunk-PLFWDUJW.js → chunk-XEXSZBXV.js} +3 -3
  34. package/dist/{chunk-JSXNITMG.js → chunk-YC5GAO35.js} +2 -2
  35. package/dist/{chunk-5TF2AFDM.js → chunk-ZCRPESQX.js} +4 -4
  36. package/dist/{chunk-5IKQ6RU4.js → chunk-ZOQ2XKXF.js} +9 -9
  37. package/dist/clipboard-fallback-dialog.js +10 -10
  38. package/dist/controls.js +15 -15
  39. package/dist/data-table/data-row-inspector.js +15 -14
  40. package/dist/data-table/data-row-window.js +20 -19
  41. package/dist/data-table/index.cjs +16 -12
  42. package/dist/data-table/index.cjs.map +1 -1
  43. package/dist/data-table/index.js +37 -36
  44. package/dist/data-table/index.js.map +1 -1
  45. package/dist/data-table/layered-filter-builder.js +4 -4
  46. package/dist/data-table/pagination.js +8 -8
  47. package/dist/data-table/uuid-cell.js +8 -8
  48. package/dist/desktop.js +22 -22
  49. package/dist/email-input-dialog.js +7 -7
  50. package/dist/index.cjs +16 -12
  51. package/dist/index.cjs.map +1 -1
  52. package/dist/index.d.cts +5 -7
  53. package/dist/index.d.ts +5 -7
  54. package/dist/index.js +88 -86
  55. package/dist/index.js.map +1 -1
  56. package/dist/intro-stage.js +3 -3
  57. package/dist/item.js +15 -15
  58. package/dist/lite-table.js +10 -10
  59. package/dist/menu-look.js +3 -3
  60. package/dist/record-list.js +13 -13
  61. package/dist/sandbox-gate-dialog.js +8 -8
  62. package/dist/scope-mismatch-dialog.js +7 -7
  63. package/dist/settings.cjs +16 -12
  64. package/dist/settings.cjs.map +1 -1
  65. package/dist/settings.js +20 -19
  66. package/dist/settings.js.map +1 -1
  67. package/dist/site-icon.js +2 -2
  68. package/dist/swipe-deck.js +1 -1
  69. package/dist/tap-shortcut.cjs +40 -0
  70. package/dist/tap-shortcut.cjs.map +1 -0
  71. package/dist/tap-shortcut.d.cts +13 -0
  72. package/dist/tap-shortcut.d.ts +13 -0
  73. package/dist/tap-shortcut.js +10 -0
  74. package/dist/tap-shortcut.js.map +1 -0
  75. package/dist/tap-target/ai-buttons.cjs +16 -12
  76. package/dist/tap-target/ai-buttons.cjs.map +1 -1
  77. package/dist/tap-target/ai-buttons.js +4 -3
  78. package/dist/tap-target/ai-buttons.js.map +1 -1
  79. package/dist/tap-target/buttons.cjs +16 -12
  80. package/dist/tap-target/buttons.cjs.map +1 -1
  81. package/dist/tap-target/buttons.d.cts +3 -5
  82. package/dist/tap-target/buttons.d.ts +3 -5
  83. package/dist/tap-target/buttons.js +4 -3
  84. package/dist/tap-target.cjs +16 -12
  85. package/dist/tap-target.cjs.map +1 -1
  86. package/dist/tap-target.d.cts +5 -7
  87. package/dist/tap-target.d.ts +5 -7
  88. package/dist/tap-target.js +6 -4
  89. package/dist/text-input-dialog.js +10 -10
  90. package/dist/thumbnail-grid.js +2 -2
  91. package/dist/transcript-scroll-nav.cjs +16 -12
  92. package/dist/transcript-scroll-nav.cjs.map +1 -1
  93. package/dist/transcript-scroll-nav.js +2 -1
  94. package/dist/transcript-scroll-nav.js.map +1 -1
  95. package/dist/value-prompts-dialog.js +5 -5
  96. package/dist/writing-field.cjs +16 -12
  97. package/dist/writing-field.cjs.map +1 -1
  98. package/dist/writing-field.js +21 -20
  99. package/dist/writing-field.js.map +1 -1
  100. package/package.json +12 -2
  101. package/dist/chunk-4PCLJAW2.js.map +0 -1
  102. /package/dist/{chunk-MVGMI6UZ.js.map → chunk-3MQMVPKO.js.map} +0 -0
  103. /package/dist/{chunk-TBDMTCRW.js.map → chunk-6YZMGSQY.js.map} +0 -0
  104. /package/dist/{chunk-OFJ5LGBU.js.map → chunk-7NEVJKDZ.js.map} +0 -0
  105. /package/dist/{chunk-XTNAKJSH.js.map → chunk-B3LDW3IQ.js.map} +0 -0
  106. /package/dist/{chunk-VTJWQPYR.js.map → chunk-BM2YYBUO.js.map} +0 -0
  107. /package/dist/{chunk-FTZCPGTH.js.map → chunk-CFCWQDGC.js.map} +0 -0
  108. /package/dist/{chunk-CN7C4KQB.js.map → chunk-CH2NWSES.js.map} +0 -0
  109. /package/dist/{chunk-CJCUD62M.js.map → chunk-CSSD6NS4.js.map} +0 -0
  110. /package/dist/{chunk-W3QSRJ3O.js.map → chunk-E4GS5QH7.js.map} +0 -0
  111. /package/dist/{chunk-O4KANICE.js.map → chunk-FRJ4PPA2.js.map} +0 -0
  112. /package/dist/{chunk-D45XDOJS.js.map → chunk-GHPUO3O7.js.map} +0 -0
  113. /package/dist/{chunk-RPUC5MNH.js.map → chunk-GLZJ7WZK.js.map} +0 -0
  114. /package/dist/{chunk-VKWQTSB6.js.map → chunk-HEFTQUJ5.js.map} +0 -0
  115. /package/dist/{chunk-KWBYKUKP.js.map → chunk-J6637L6D.js.map} +0 -0
  116. /package/dist/{chunk-5LT34PFX.js.map → chunk-MEJVHDYJ.js.map} +0 -0
  117. /package/dist/{chunk-PPB52S7F.js.map → chunk-MFUNGDHO.js.map} +0 -0
  118. /package/dist/{chunk-LCPHFONA.js.map → chunk-MIJMP4WI.js.map} +0 -0
  119. /package/dist/{chunk-2WL2SGKL.js.map → chunk-NNETFHGX.js.map} +0 -0
  120. /package/dist/{chunk-XREKZXAL.js.map → chunk-SMJGESH7.js.map} +0 -0
  121. /package/dist/{chunk-SNHCBHBE.js.map → chunk-U24MOJWK.js.map} +0 -0
  122. /package/dist/{chunk-DO6G4EKJ.js.map → chunk-UWTODOMD.js.map} +0 -0
  123. /package/dist/{chunk-BQR4N24F.js.map → chunk-VLLUUOYJ.js.map} +0 -0
  124. /package/dist/{chunk-FD6V6JBN.js.map → chunk-VV6WZTH5.js.map} +0 -0
  125. /package/dist/{chunk-LVM7XZRJ.js.map → chunk-WQ2QCMMA.js.map} +0 -0
  126. /package/dist/{chunk-57OD2WTY.js.map → chunk-X6ZRHJQP.js.map} +0 -0
  127. /package/dist/{chunk-PLFWDUJW.js.map → chunk-XEXSZBXV.js.map} +0 -0
  128. /package/dist/{chunk-JSXNITMG.js.map → chunk-YC5GAO35.js.map} +0 -0
  129. /package/dist/{chunk-5TF2AFDM.js.map → chunk-ZCRPESQX.js.map} +0 -0
  130. /package/dist/{chunk-5IKQ6RU4.js.map → chunk-ZOQ2XKXF.js.map} +0 -0
@@ -1,11 +1,11 @@
1
1
  "use client";
2
- import {
3
- cn
4
- } from "./chunk-M6KA5EHN.js";
5
2
  import {
6
3
  ArrowRightIcon,
7
4
  ExternalLinkIcon
8
5
  } from "./chunk-YCUFQCJW.js";
6
+ import {
7
+ cn
8
+ } from "./chunk-M6KA5EHN.js";
9
9
 
10
10
  // src/intro-stage/IntroStage.tsx
11
11
  import { Fragment, jsx, jsxs } from "react/jsx-runtime";
package/dist/item.js CHANGED
@@ -12,31 +12,31 @@ import {
12
12
  runCommand,
13
13
  runToggle,
14
14
  useItemMenuHost
15
- } from "./chunk-2WL2SGKL.js";
16
- import "./chunk-KWBYKUKP.js";
17
- import "./chunk-VKWQTSB6.js";
15
+ } from "./chunk-NNETFHGX.js";
16
+ import "./chunk-J6637L6D.js";
17
+ import "./chunk-HEFTQUJ5.js";
18
18
  import "./chunk-K4XCB576.js";
19
19
  import {
20
20
  InputWithPrefix
21
21
  } from "./chunk-TDMVH77G.js";
22
22
  import {
23
23
  Checkbox
24
- } from "./chunk-BQR4N24F.js";
24
+ } from "./chunk-VLLUUOYJ.js";
25
25
  import {
26
26
  Dialog,
27
27
  DialogContent,
28
28
  DialogFooter,
29
29
  DialogHeader,
30
30
  DialogTitle
31
- } from "./chunk-DO6G4EKJ.js";
32
- import "./chunk-SNHCBHBE.js";
31
+ } from "./chunk-UWTODOMD.js";
32
+ import "./chunk-U24MOJWK.js";
33
33
  import "./chunk-NDTDBBMM.js";
34
34
  import "./chunk-LEPD6TV7.js";
35
35
  import "./chunk-KPZX2M2C.js";
36
36
  import "./chunk-WFBPCMPF.js";
37
- import "./chunk-5IKQ6RU4.js";
38
- import "./chunk-BKCJUFD3.js";
37
+ import "./chunk-ZOQ2XKXF.js";
39
38
  import "./chunk-BD77DHUO.js";
39
+ import "./chunk-BKCJUFD3.js";
40
40
  import "./chunk-MOZRIHJF.js";
41
41
  import {
42
42
  DropdownMenu,
@@ -48,27 +48,27 @@ import {
48
48
  DropdownMenuSubContent,
49
49
  DropdownMenuSubTrigger,
50
50
  DropdownMenuTrigger
51
- } from "./chunk-57OD2WTY.js";
51
+ } from "./chunk-X6ZRHJQP.js";
52
52
  import "./chunk-BNXNIN2S.js";
53
53
  import "./chunk-POJ3RR3K.js";
54
- import "./chunk-XREKZXAL.js";
54
+ import "./chunk-SMJGESH7.js";
55
+ import "./chunk-WAT2XW7L.js";
55
56
  import {
56
57
  Button
57
58
  } from "./chunk-7IOSA55D.js";
58
- import "./chunk-WAT2XW7L.js";
59
59
  import "./chunk-FXXSZNER.js";
60
60
  import "./chunk-DGNHZBJY.js";
61
61
  import "./chunk-XIUVUL2Y.js";
62
- import "./chunk-IMOOQQOO.js";
63
- import {
64
- cn
65
- } from "./chunk-M6KA5EHN.js";
66
62
  import {
67
63
  ChevronRightIcon,
68
64
  MoreHorizontalIcon,
69
65
  PlusIcon,
70
66
  SearchIcon
71
67
  } from "./chunk-YCUFQCJW.js";
68
+ import "./chunk-IMOOQQOO.js";
69
+ import {
70
+ cn
71
+ } from "./chunk-M6KA5EHN.js";
72
72
 
73
73
  // src/item/ProductSidebarTop.tsx
74
74
  import { Fragment, jsx, jsxs } from "react/jsx-runtime";
@@ -6,7 +6,7 @@ import {
6
6
  ReadEmpty,
7
7
  ReadStaleNotice,
8
8
  readOf
9
- } from "./chunk-FTZCPGTH.js";
9
+ } from "./chunk-CFCWQDGC.js";
10
10
  import {
11
11
  MAC_TABLE_ATTRIBUTE,
12
12
  MAC_TABLE_SLOTS
@@ -17,26 +17,26 @@ import {
17
17
  } from "./chunk-WFBPCMPF.js";
18
18
  import {
19
19
  Button
20
- } from "./chunk-5IKQ6RU4.js";
21
- import "./chunk-BKCJUFD3.js";
20
+ } from "./chunk-ZOQ2XKXF.js";
22
21
  import "./chunk-BD77DHUO.js";
23
- import "./chunk-57OD2WTY.js";
22
+ import "./chunk-BKCJUFD3.js";
23
+ import "./chunk-X6ZRHJQP.js";
24
24
  import "./chunk-BNXNIN2S.js";
25
- import "./chunk-XREKZXAL.js";
26
- import "./chunk-7IOSA55D.js";
25
+ import "./chunk-SMJGESH7.js";
27
26
  import "./chunk-WAT2XW7L.js";
27
+ import "./chunk-7IOSA55D.js";
28
28
  import "./chunk-FXXSZNER.js";
29
29
  import "./chunk-DGNHZBJY.js";
30
30
  import "./chunk-XIUVUL2Y.js";
31
- import "./chunk-IMOOQQOO.js";
32
- import {
33
- cn
34
- } from "./chunk-M6KA5EHN.js";
35
31
  import {
36
32
  CheckIcon,
37
33
  ChevronDownIcon,
38
34
  CopyIcon
39
35
  } from "./chunk-YCUFQCJW.js";
36
+ import "./chunk-IMOOQQOO.js";
37
+ import {
38
+ cn
39
+ } from "./chunk-M6KA5EHN.js";
40
40
 
41
41
  // src/lite-table/LiteTable.tsx
42
42
  import {
package/dist/menu-look.js CHANGED
@@ -3,16 +3,16 @@ import {
3
3
  DropdownMenuContent,
4
4
  DropdownMenuSubContent,
5
5
  DropdownMenuSubTrigger
6
- } from "./chunk-57OD2WTY.js";
6
+ } from "./chunk-X6ZRHJQP.js";
7
7
  import "./chunk-BNXNIN2S.js";
8
8
  import "./chunk-FXXSZNER.js";
9
9
  import "./chunk-DGNHZBJY.js";
10
10
  import "./chunk-XIUVUL2Y.js";
11
- import "./chunk-IMOOQQOO.js";
12
- import "./chunk-M6KA5EHN.js";
13
11
  import {
14
12
  RadixCheckIcon
15
13
  } from "./chunk-YCUFQCJW.js";
14
+ import "./chunk-IMOOQQOO.js";
15
+ import "./chunk-M6KA5EHN.js";
16
16
 
17
17
  // src/menu-look.tsx
18
18
  import * as React from "react";
@@ -1,17 +1,17 @@
1
1
  "use client";
2
+ import {
3
+ ItemRow
4
+ } from "./chunk-NNETFHGX.js";
2
5
  import {
3
6
  ListEmptyView
4
7
  } from "./chunk-PRJW34R6.js";
5
- import {
6
- ItemRow
7
- } from "./chunk-2WL2SGKL.js";
8
+ import "./chunk-J6637L6D.js";
8
9
  import {
9
10
  ReadEmpty,
10
11
  ReadStaleNotice,
11
12
  readOf
12
- } from "./chunk-FTZCPGTH.js";
13
- import "./chunk-KWBYKUKP.js";
14
- import "./chunk-VKWQTSB6.js";
13
+ } from "./chunk-CFCWQDGC.js";
14
+ import "./chunk-HEFTQUJ5.js";
15
15
  import {
16
16
  MAC_LIST_ATTRIBUTE
17
17
  } from "./chunk-5JZSBNEY.js";
@@ -19,28 +19,28 @@ import "./chunk-K4XCB576.js";
19
19
  import "./chunk-HKLIRHT2.js";
20
20
  import {
21
21
  Checkbox
22
- } from "./chunk-BQR4N24F.js";
22
+ } from "./chunk-VLLUUOYJ.js";
23
23
  import "./chunk-NDTDBBMM.js";
24
24
  import "./chunk-KPZX2M2C.js";
25
25
  import "./chunk-WFBPCMPF.js";
26
- import "./chunk-5IKQ6RU4.js";
27
- import "./chunk-BKCJUFD3.js";
26
+ import "./chunk-ZOQ2XKXF.js";
28
27
  import "./chunk-BD77DHUO.js";
28
+ import "./chunk-BKCJUFD3.js";
29
29
  import "./chunk-MOZRIHJF.js";
30
- import "./chunk-57OD2WTY.js";
30
+ import "./chunk-X6ZRHJQP.js";
31
31
  import "./chunk-BNXNIN2S.js";
32
32
  import "./chunk-POJ3RR3K.js";
33
- import "./chunk-XREKZXAL.js";
34
- import "./chunk-7IOSA55D.js";
33
+ import "./chunk-SMJGESH7.js";
35
34
  import "./chunk-WAT2XW7L.js";
35
+ import "./chunk-7IOSA55D.js";
36
36
  import "./chunk-FXXSZNER.js";
37
37
  import "./chunk-DGNHZBJY.js";
38
38
  import "./chunk-XIUVUL2Y.js";
39
+ import "./chunk-YCUFQCJW.js";
39
40
  import "./chunk-IMOOQQOO.js";
40
41
  import {
41
42
  cn
42
43
  } from "./chunk-M6KA5EHN.js";
43
- import "./chunk-YCUFQCJW.js";
44
44
 
45
45
  // src/record-list/RecordList.tsx
46
46
  import { useRef } from "react";
@@ -1,8 +1,4 @@
1
1
  "use client";
2
- import {
3
- UNCONFIGURED,
4
- announceStandIn
5
- } from "./chunk-IMQ3RX35.js";
6
2
  import {
7
3
  Dialog,
8
4
  DialogContent,
@@ -10,8 +6,12 @@ import {
10
6
  DialogFooter,
11
7
  DialogHeader,
12
8
  DialogTitle
13
- } from "./chunk-DO6G4EKJ.js";
14
- import "./chunk-SNHCBHBE.js";
9
+ } from "./chunk-UWTODOMD.js";
10
+ import {
11
+ UNCONFIGURED,
12
+ announceStandIn
13
+ } from "./chunk-IMQ3RX35.js";
14
+ import "./chunk-U24MOJWK.js";
15
15
  import "./chunk-NDTDBBMM.js";
16
16
  import "./chunk-LEPD6TV7.js";
17
17
  import "./chunk-MOZRIHJF.js";
@@ -20,11 +20,11 @@ import {
20
20
  } from "./chunk-7IOSA55D.js";
21
21
  import "./chunk-DGNHZBJY.js";
22
22
  import "./chunk-XIUVUL2Y.js";
23
- import "./chunk-IMOOQQOO.js";
24
- import "./chunk-M6KA5EHN.js";
25
23
  import {
26
24
  AlertTriangleIcon
27
25
  } from "./chunk-YCUFQCJW.js";
26
+ import "./chunk-IMOOQQOO.js";
27
+ import "./chunk-M6KA5EHN.js";
28
28
 
29
29
  // src/sandbox-gate-dialog.tsx
30
30
  import * as React from "react";
@@ -1,8 +1,4 @@
1
1
  "use client";
2
- import {
3
- UNCONFIGURED,
4
- announceStandIn
5
- } from "./chunk-IMQ3RX35.js";
6
2
  import {
7
3
  Dialog,
8
4
  DialogContent,
@@ -10,8 +6,12 @@ import {
10
6
  DialogFooter,
11
7
  DialogHeader,
12
8
  DialogTitle
13
- } from "./chunk-DO6G4EKJ.js";
14
- import "./chunk-SNHCBHBE.js";
9
+ } from "./chunk-UWTODOMD.js";
10
+ import {
11
+ UNCONFIGURED,
12
+ announceStandIn
13
+ } from "./chunk-IMQ3RX35.js";
14
+ import "./chunk-U24MOJWK.js";
15
15
  import "./chunk-NDTDBBMM.js";
16
16
  import "./chunk-LEPD6TV7.js";
17
17
  import "./chunk-MOZRIHJF.js";
@@ -20,9 +20,9 @@ import {
20
20
  } from "./chunk-7IOSA55D.js";
21
21
  import "./chunk-DGNHZBJY.js";
22
22
  import "./chunk-XIUVUL2Y.js";
23
+ import "./chunk-YCUFQCJW.js";
23
24
  import "./chunk-IMOOQQOO.js";
24
25
  import "./chunk-M6KA5EHN.js";
25
- import "./chunk-YCUFQCJW.js";
26
26
 
27
27
  // src/scope-mismatch-dialog.tsx
28
28
  import * as React from "react";
package/dist/settings.cjs CHANGED
@@ -1942,6 +1942,22 @@ function useTapSurface(explicit) {
1942
1942
 
1943
1943
  // src/tap-target/tap-features.tsx
1944
1944
  var import_react5 = require("react");
1945
+
1946
+ // src/tap-shortcut.ts
1947
+ var IS_APPLE = typeof navigator !== "undefined" && /Mac|iPhone|iPad|iPod/.test(navigator.platform || navigator.userAgent);
1948
+ function parseShortcut(shortcut) {
1949
+ const parts = shortcut.toLowerCase().split("+");
1950
+ const key = parts.pop() ?? "";
1951
+ return { mod: parts.includes("mod"), shift: parts.includes("shift"), alt: parts.includes("alt"), key };
1952
+ }
1953
+ function formatTapShortcut(shortcut) {
1954
+ const p = parseShortcut(shortcut);
1955
+ const key = p.key.length === 1 ? p.key.toUpperCase() : p.key[0].toUpperCase() + p.key.slice(1);
1956
+ if (IS_APPLE) return `${p.alt ? "\u2325" : ""}${p.shift ? "\u21E7" : ""}${p.mod ? "\u2318" : ""}${key}`;
1957
+ return [p.mod && "Ctrl", p.alt && "Alt", p.shift && "Shift", key].filter(Boolean).join("+");
1958
+ }
1959
+
1960
+ // src/tap-target/tap-features.tsx
1945
1961
  var import_jsx_runtime17 = require("react/jsx-runtime");
1946
1962
  var TAP_TONE_CLASS = {
1947
1963
  default: "text-foreground",
@@ -1959,18 +1975,6 @@ var TAP_SOLID_TONE = {
1959
1975
  warning: { fill: "bg-warning group-hover/tap:bg-warning/85", glyph: "text-warning-foreground" },
1960
1976
  neutral: { fill: "bg-foreground group-hover/tap:bg-foreground/85", glyph: "text-background" }
1961
1977
  };
1962
- var IS_APPLE = typeof navigator !== "undefined" && /Mac|iPhone|iPad|iPod/.test(navigator.platform || navigator.userAgent);
1963
- function parseShortcut(shortcut) {
1964
- const parts = shortcut.toLowerCase().split("+");
1965
- const key = parts.pop() ?? "";
1966
- return { mod: parts.includes("mod"), shift: parts.includes("shift"), alt: parts.includes("alt"), key };
1967
- }
1968
- function formatTapShortcut(shortcut) {
1969
- const p = parseShortcut(shortcut);
1970
- const key = p.key.length === 1 ? p.key.toUpperCase() : p.key[0].toUpperCase() + p.key.slice(1);
1971
- if (IS_APPLE) return `${p.alt ? "\u2325" : ""}${p.shift ? "\u21E7" : ""}${p.mod ? "\u2318" : ""}${key}`;
1972
- return [p.mod && "Ctrl", p.alt && "Alt", p.shift && "Shift", key].filter(Boolean).join("+");
1973
- }
1974
1978
  function isTyping(target) {
1975
1979
  const el = target;
1976
1980
  return !!el && (el.isContentEditable || /^(INPUT|TEXTAREA|SELECT)$/.test(el.tagName));