@nuxt/ui 3.0.0-alpha.8 → 3.0.0-alpha.9

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 (121) hide show
  1. package/.nuxt/ui/button.ts +1 -1
  2. package/.nuxt/ui/card.ts +1 -1
  3. package/.nuxt/ui/carousel.ts +2 -2
  4. package/.nuxt/ui/container.ts +1 -1
  5. package/.nuxt/ui/index.ts +2 -0
  6. package/.nuxt/ui/input-menu.ts +3 -3
  7. package/.nuxt/ui/input-number.ts +204 -0
  8. package/.nuxt/ui/input.ts +2 -2
  9. package/.nuxt/ui/navigation-menu.ts +1 -1
  10. package/.nuxt/ui/pin-input.ts +145 -0
  11. package/.nuxt/ui/select-menu.ts +8 -13
  12. package/.nuxt/ui/select.ts +2 -2
  13. package/.nuxt/ui/table.ts +1 -0
  14. package/.nuxt/ui/tabs.ts +1 -1
  15. package/.nuxt/ui/textarea.ts +2 -2
  16. package/.nuxt/ui/toaster.ts +1 -1
  17. package/.nuxt/ui/tooltip.ts +1 -1
  18. package/README.md +52 -12
  19. package/cli/commands/{init.mjs → make/component.mjs} +4 -4
  20. package/cli/commands/make/index.mjs +14 -0
  21. package/cli/commands/make/locale.mjs +64 -0
  22. package/cli/index.mjs +2 -2
  23. package/cli/templates.mjs +46 -1
  24. package/cli/utils.mjs +14 -0
  25. package/dist/chunks/component-meta.cjs +7320 -3335
  26. package/dist/chunks/component-meta.mjs +7320 -3335
  27. package/dist/client/devtools/200.html +1 -1
  28. package/dist/client/devtools/404.html +1 -1
  29. package/dist/client/devtools/_nuxt/{hKiujHsR.js → BDC8ywlR.js} +1 -1
  30. package/dist/client/devtools/_nuxt/{DM3_wAgz.js → BT004Uxp.js} +22 -31
  31. package/dist/client/devtools/_nuxt/{Bj9hdafK.js → C1H2Soz3.js} +1 -1
  32. package/dist/client/devtools/_nuxt/builds/latest.json +1 -1
  33. package/dist/client/devtools/_nuxt/builds/meta/f98c13ea-d751-4b37-8ce3-94e99708745f.json +1 -0
  34. package/dist/client/devtools/_nuxt/entry.Bx6WJjrx.css +1 -0
  35. package/dist/client/devtools/_nuxt/error-404.Cq4qshcf.css +1 -0
  36. package/dist/client/devtools/_nuxt/error-500.ax1aM34m.css +1 -0
  37. package/dist/client/devtools/index.html +1 -1
  38. package/dist/module.cjs +13 -12
  39. package/dist/module.json +1 -1
  40. package/dist/module.mjs +13 -12
  41. package/dist/runtime/components/Alert.vue +4 -1
  42. package/dist/runtime/components/App.vue +11 -5
  43. package/dist/runtime/components/Breadcrumb.vue +8 -3
  44. package/dist/runtime/components/Carousel.vue +11 -7
  45. package/dist/runtime/components/CommandPalette.vue +5 -3
  46. package/dist/runtime/components/ContextMenuContent.vue +2 -0
  47. package/dist/runtime/components/DropdownMenuContent.vue +2 -0
  48. package/dist/runtime/components/Form.vue +18 -20
  49. package/dist/runtime/components/FormField.vue +7 -3
  50. package/dist/runtime/components/InputMenu.vue +97 -21
  51. package/dist/runtime/components/InputNumber.vue +192 -0
  52. package/dist/runtime/components/Link.vue +19 -5
  53. package/dist/runtime/components/Modal.vue +12 -3
  54. package/dist/runtime/components/NavigationMenu.vue +4 -2
  55. package/dist/runtime/components/Pagination.vue +12 -5
  56. package/dist/runtime/components/PinInput.vue +96 -0
  57. package/dist/runtime/components/Popover.vue +17 -1
  58. package/dist/runtime/components/Select.vue +1 -1
  59. package/dist/runtime/components/SelectMenu.vue +106 -30
  60. package/dist/runtime/components/Slideover.vue +12 -3
  61. package/dist/runtime/components/Table.vue +11 -1
  62. package/dist/runtime/components/Textarea.vue +1 -1
  63. package/dist/runtime/components/Toast.vue +4 -1
  64. package/dist/runtime/components/Toaster.vue +22 -14
  65. package/dist/runtime/composables/defineLocale.d.ts +9 -0
  66. package/dist/runtime/composables/defineLocale.js +4 -0
  67. package/dist/runtime/composables/useFormField.d.ts +4 -1
  68. package/dist/runtime/composables/useFormField.js +1 -1
  69. package/dist/runtime/composables/useLocale.d.ts +4 -0
  70. package/dist/runtime/composables/useLocale.js +10 -0
  71. package/dist/runtime/index.css +1 -1
  72. package/dist/runtime/locale/ar.d.ts +2 -0
  73. package/dist/runtime/locale/ar.js +47 -0
  74. package/dist/runtime/locale/cs.d.ts +2 -0
  75. package/dist/runtime/locale/cs.js +46 -0
  76. package/dist/runtime/locale/de.d.ts +2 -0
  77. package/dist/runtime/locale/de.js +46 -0
  78. package/dist/runtime/locale/en.d.ts +2 -0
  79. package/dist/runtime/locale/en.js +46 -0
  80. package/dist/runtime/locale/es.d.ts +2 -0
  81. package/dist/runtime/locale/es.js +46 -0
  82. package/dist/runtime/locale/fa_ir.d.ts +2 -0
  83. package/dist/runtime/locale/fa_ir.js +47 -0
  84. package/dist/runtime/locale/fr.d.ts +2 -0
  85. package/dist/runtime/locale/fr.js +46 -0
  86. package/dist/runtime/locale/index.d.ts +12 -0
  87. package/dist/runtime/locale/index.js +12 -0
  88. package/dist/runtime/locale/it.d.ts +2 -0
  89. package/dist/runtime/locale/it.js +46 -0
  90. package/dist/runtime/locale/pl.d.ts +2 -0
  91. package/dist/runtime/locale/pl.js +46 -0
  92. package/dist/runtime/locale/ru.d.ts +2 -0
  93. package/dist/runtime/locale/ru.js +46 -0
  94. package/dist/runtime/locale/zh_hans.d.ts +2 -0
  95. package/dist/runtime/locale/zh_hans.js +46 -0
  96. package/dist/runtime/locale/zh_hant.d.ts +2 -0
  97. package/dist/runtime/locale/zh_hant.js +46 -0
  98. package/dist/runtime/types/form.d.ts +7 -2
  99. package/dist/runtime/types/index.d.ts +3 -0
  100. package/dist/runtime/types/index.js +3 -0
  101. package/dist/runtime/types/locale.d.ts +48 -0
  102. package/dist/runtime/types/locale.js +0 -0
  103. package/dist/runtime/utils/form.d.ts +5 -9
  104. package/dist/runtime/utils/form.js +115 -50
  105. package/dist/runtime/utils/link.d.ts +1 -1
  106. package/dist/runtime/utils/locale.d.ts +15 -0
  107. package/dist/runtime/utils/locale.js +25 -0
  108. package/dist/shared/{ui.BU7wzH0D.cjs → ui.BPnAe4QS.cjs} +194 -36
  109. package/dist/shared/{ui.BufKhDiD.mjs → ui.d52SSCwA.mjs} +194 -36
  110. package/dist/unplugin.cjs +1 -1
  111. package/dist/unplugin.d.cts +5 -3
  112. package/dist/unplugin.d.mts +5 -3
  113. package/dist/unplugin.d.ts +5 -3
  114. package/dist/unplugin.mjs +1 -1
  115. package/dist/vite.cjs +1 -1
  116. package/dist/vite.mjs +1 -1
  117. package/package.json +33 -26
  118. package/dist/client/devtools/_nuxt/builds/meta/e6b425f7-b919-4014-915b-0ea07c316790.json +0 -1
  119. package/dist/client/devtools/_nuxt/entry.DaJP-ZMB.css +0 -24
  120. package/dist/client/devtools/_nuxt/error-404.B0Nmv3fV.css +0 -1
  121. package/dist/client/devtools/_nuxt/error-500.C8fgTxVz.css +0 -1
@@ -7,20 +7,22 @@ const kit = require('@nuxt/kit');
7
7
  const defu = require('defu');
8
8
 
9
9
  const icons = {
10
+ arrowLeft: "i-lucide-arrow-left",
11
+ arrowRight: "i-lucide-arrow-right",
12
+ check: "i-lucide-check",
10
13
  chevronDoubleLeft: "i-lucide-chevrons-left",
11
14
  chevronDoubleRight: "i-lucide-chevrons-right",
12
15
  chevronDown: "i-lucide-chevron-down",
13
16
  chevronLeft: "i-lucide-chevron-left",
14
17
  chevronRight: "i-lucide-chevron-right",
15
- arrowLeft: "i-lucide-arrow-left",
16
- arrowRight: "i-lucide-arrow-right",
17
- check: "i-lucide-check",
18
18
  close: "i-lucide-x",
19
19
  ellipsis: "i-lucide-ellipsis",
20
20
  external: "i-lucide-arrow-up-right",
21
21
  loading: "i-lucide-refresh-ccw",
22
22
  minus: "i-lucide-minus",
23
- search: "i-lucide-search"
23
+ plus: "i-lucide-plus",
24
+ search: "i-lucide-search",
25
+ chevronUp: "i-lucide-chevron-up"
24
26
  };
25
27
 
26
28
  const getDefaultUiConfig = (colors) => ({
@@ -504,7 +506,7 @@ const button = (options) => ({
504
506
  })), {
505
507
  color: "neutral",
506
508
  variant: "solid",
507
- class: "text-[var(--ui-bg)] bg-[var(--ui-bg-inverted)] hover:bg-[var(--ui-bg-inverted)]/80 disabled:bg-[var(--ui-bg-inverted)] aria-disabled:bg-[var(--ui-bg-inverted)] focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-[var(--ui-border-inverted)]"
509
+ class: "text-[var(--ui-bg)] bg-[var(--ui-bg-inverted)] hover:bg-[var(--ui-bg-inverted)]/90 disabled:bg-[var(--ui-bg-inverted)] aria-disabled:bg-[var(--ui-bg-inverted)] focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-[var(--ui-border-inverted)]"
508
510
  }, {
509
511
  color: "neutral",
510
512
  variant: "outline",
@@ -568,7 +570,7 @@ const button = (options) => ({
568
570
 
569
571
  const card = {
570
572
  slots: {
571
- root: "bg-[var(--ui-bg)] ring ring-[var(--ui-border)] divide-y divide-[var(--ui-border)] rounded-[calc(var(--ui-radius)*2)] shadow",
573
+ root: "bg-[var(--ui-bg)] ring ring-[var(--ui-border)] divide-y divide-[var(--ui-border)] rounded-[calc(var(--ui-radius)*2)] shadow-sm",
572
574
  header: "p-4 sm:px-6",
573
575
  body: "p-4 sm:p-6",
574
576
  footer: "p-4 sm:px-6"
@@ -593,8 +595,8 @@ const carousel = (options) => ({
593
595
  vertical: {
594
596
  container: "flex-col -mt-4",
595
597
  item: "pt-4",
596
- prev: "-top-12 left-1/2 -translate-x-1/2 rotate-90",
597
- next: "-bottom-12 left-1/2 -translate-x-1/2 rotate-90"
598
+ prev: "-top-12 left-1/2 -translate-x-1/2 rotate-90 rtl:-rotate-90",
599
+ next: "-bottom-12 left-1/2 -translate-x-1/2 rotate-90 rtl:-rotate-90"
598
600
  },
599
601
  horizontal: {
600
602
  container: "flex-row -ms-4",
@@ -788,7 +790,7 @@ const commandPalette = (options) => ({
788
790
  });
789
791
 
790
792
  const container = {
791
- base: "max-w-7xl mx-auto px-4 sm:px-6 lg:px-8"
793
+ base: "max-w-[var(--ui-container)] mx-auto px-4 sm:px-6 lg:px-8"
792
794
  };
793
795
 
794
796
  const contextMenu = (options) => ({
@@ -1143,8 +1145,8 @@ const input = (options) => ({
1143
1145
  outline: "text-[var(--ui-text-highlighted)] bg-[var(--ui-bg)] ring ring-inset ring-[var(--ui-border-accented)]",
1144
1146
  soft: "text-[var(--ui-text-highlighted)] bg-[var(--ui-bg-elevated)]/50 hover:bg-[var(--ui-bg-elevated)] focus:bg-[var(--ui-bg-elevated)] disabled:bg-[var(--ui-bg-elevated)]/50",
1145
1147
  subtle: "text-[var(--ui-text-highlighted)] bg-[var(--ui-bg-elevated)] ring ring-inset ring-[var(--ui-border-accented)]",
1146
- ghost: "text-[var(--ui-text-highlighted)] hover:bg-[var(--ui-bg-elevated)] focus:bg-[var(--ui-bg-elevated)] disabled:bg-transparent dark:disabled:bg-transparent",
1147
- none: "text-[var(--ui-text-highlighted)]"
1148
+ ghost: "text-[var(--ui-text-highlighted)] bg-transparent hover:bg-[var(--ui-bg-elevated)] focus:bg-[var(--ui-bg-elevated)] disabled:bg-transparent dark:disabled:bg-transparent",
1149
+ none: "text-[var(--ui-text-highlighted)] bg-transparent"
1148
1150
  },
1149
1151
  color: {
1150
1152
  ...Object.fromEntries((options.theme.colors || []).map((color) => [color, ""])),
@@ -1275,7 +1277,7 @@ const inputMenu = (options) => {
1275
1277
  true: {
1276
1278
  root: "flex-wrap",
1277
1279
  base: "",
1278
- tagsInput: "border-0 placeholder:text-[var(--ui-text-dimmed)] focus:outline-none disabled:cursor-not-allowed disabled:opacity-75"
1280
+ tagsInput: "border-0 bg-transparent placeholder:text-[var(--ui-text-dimmed)] focus:outline-none disabled:cursor-not-allowed disabled:opacity-75"
1279
1281
  },
1280
1282
  false: {
1281
1283
  base: "w-full border-0 placeholder:text-[var(--ui-text-dimmed)] focus:outline-none disabled:cursor-not-allowed disabled:opacity-75"
@@ -1353,6 +1355,116 @@ const inputMenu = (options) => {
1353
1355
  }, input(options));
1354
1356
  };
1355
1357
 
1358
+ const inputNumber = (options) => {
1359
+ const input$1 = input(options);
1360
+ return {
1361
+ slots: {
1362
+ root: "relative inline-flex items-center",
1363
+ base: ["w-full rounded-[calc(var(--ui-radius)*1.5)] border-0 placeholder:text-[var(--ui-text-dimmed)] focus:outline-none disabled:cursor-not-allowed disabled:opacity-75", options.theme.transitions && "transition-colors"],
1364
+ increment: "absolute flex items-center",
1365
+ decrement: "absolute flex items-center"
1366
+ },
1367
+ variants: {
1368
+ color: {
1369
+ ...Object.fromEntries((options.theme.colors || []).map((color) => [color, ""])),
1370
+ neutral: ""
1371
+ },
1372
+ size: {
1373
+ xs: "px-2 py-1 text-xs gap-1",
1374
+ sm: "px-2.5 py-1.5 text-xs gap-1.5",
1375
+ md: "px-2.5 py-1.5 text-sm gap-1.5",
1376
+ lg: "px-3 py-2 text-sm gap-2",
1377
+ xl: "px-3 py-2 text-base gap-2"
1378
+ },
1379
+ variant: {
1380
+ ...input$1.variants.variant
1381
+ },
1382
+ disabled: {
1383
+ true: {
1384
+ increment: "opacity-75 cursor-not-allowed",
1385
+ decrement: "opacity-75 cursor-not-allowed"
1386
+ }
1387
+ },
1388
+ orientation: {
1389
+ horizontal: {
1390
+ base: "text-center",
1391
+ increment: "inset-y-0 end-0 pe-1",
1392
+ decrement: "inset-y-0 start-0 ps-1"
1393
+ },
1394
+ vertical: {
1395
+ increment: "top-0 end-0 pe-1 [&>button]:py-0 scale-80",
1396
+ decrement: "bottom-0 end-0 pe-1 [&>button]:py-0 scale-80"
1397
+ }
1398
+ },
1399
+ highlight: {
1400
+ true: ""
1401
+ }
1402
+ },
1403
+ compoundVariants: [...(options.theme.colors || []).map((color) => ({
1404
+ color,
1405
+ variant: ["outline", "subtle"],
1406
+ class: `focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-[var(--ui-${color})]`
1407
+ })), ...(options.theme.colors || []).map((color) => ({
1408
+ color,
1409
+ highlight: true,
1410
+ class: `ring ring-inset ring-[var(--ui-${color})]`
1411
+ })), {
1412
+ color: "neutral",
1413
+ variant: ["outline", "subtle"],
1414
+ class: "focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-[var(--ui-border-inverted)]"
1415
+ }, {
1416
+ color: "neutral",
1417
+ highlight: true,
1418
+ class: "ring ring-inset ring-[var(--ui-border-inverted)]"
1419
+ }, {
1420
+ orientation: "horizontal",
1421
+ size: "xs",
1422
+ class: "px-7"
1423
+ }, {
1424
+ orientation: "horizontal",
1425
+ size: "sm",
1426
+ class: "px-8"
1427
+ }, {
1428
+ orientation: "horizontal",
1429
+ size: "md",
1430
+ class: "px-9"
1431
+ }, {
1432
+ orientation: "horizontal",
1433
+ size: "lg",
1434
+ class: "px-10"
1435
+ }, {
1436
+ orientation: "horizontal",
1437
+ size: "xl",
1438
+ class: "px-11"
1439
+ }, {
1440
+ orientation: "vertical",
1441
+ size: "xs",
1442
+ class: "pe-7"
1443
+ }, {
1444
+ orientation: "vertical",
1445
+ size: "sm",
1446
+ class: "pe-8"
1447
+ }, {
1448
+ orientation: "vertical",
1449
+ size: "md",
1450
+ class: "pe-9"
1451
+ }, {
1452
+ orientation: "vertical",
1453
+ size: "lg",
1454
+ class: "pe-10"
1455
+ }, {
1456
+ orientation: "vertical",
1457
+ size: "xl",
1458
+ class: "pe-11"
1459
+ }],
1460
+ defaultVariants: {
1461
+ size: "md",
1462
+ color: "primary",
1463
+ variant: "outline"
1464
+ }
1465
+ };
1466
+ };
1467
+
1356
1468
  const kbd = {
1357
1469
  base: "inline-flex items-center justify-center px-1 rounded-[var(--ui-radius)] font-medium font-sans",
1358
1470
  variants: {
@@ -1425,7 +1537,7 @@ const navigationMenu = (options) => ({
1425
1537
  linkLeadingAvatar: "shrink-0",
1426
1538
  linkLeadingAvatarSize: "2xs",
1427
1539
  linkTrailing: "ms-auto inline-flex",
1428
- linkTrailingBadge: "shrink-0 rounded",
1540
+ linkTrailingBadge: "shrink-0 rounded-[calc(var(--ui-radius)]",
1429
1541
  linkTrailingBadgeSize: "sm",
1430
1542
  linkTrailingIcon: "size-5 transform shrink-0 group-data-[state=open]:rotate-180 transition-transform duration-200",
1431
1543
  linkLabel: "truncate",
@@ -1624,6 +1736,68 @@ const pagination = {
1624
1736
  }
1625
1737
  };
1626
1738
 
1739
+ const pinInput = (options) => ({
1740
+ slots: {
1741
+ root: "relative inline-flex items-center gap-1.5",
1742
+ base: ["rounded-[calc(var(--ui-radius)*1.5)] border-0 placeholder:text-[var(--ui-text-dimmed)] text-center focus:outline-none disabled:cursor-not-allowed disabled:opacity-75", options.theme.transitions && "transition-colors"]
1743
+ },
1744
+ variants: {
1745
+ size: {
1746
+ xs: {
1747
+ base: "size-6 text-xs"
1748
+ },
1749
+ sm: {
1750
+ base: "size-7 text-xs"
1751
+ },
1752
+ md: {
1753
+ base: "size-8 text-sm"
1754
+ },
1755
+ lg: {
1756
+ base: "size-9 text-sm"
1757
+ },
1758
+ xl: {
1759
+ base: "size-10 text-base"
1760
+ }
1761
+ },
1762
+ variant: {
1763
+ outline: "text-[var(--ui-text-highlighted)] bg-[var(--ui-bg)] ring ring-inset ring-[var(--ui-border-accented)]",
1764
+ soft: "text-[var(--ui-text-highlighted)] bg-[var(--ui-bg-elevated)]/50 hover:bg-[var(--ui-bg-elevated)] focus:bg-[var(--ui-bg-elevated)] disabled:bg-[var(--ui-bg-elevated)]/50",
1765
+ subtle: "text-[var(--ui-text-highlighted)] bg-[var(--ui-bg-elevated)] ring ring-inset ring-[var(--ui-border-accented)]",
1766
+ ghost: "text-[var(--ui-text-highlighted)] bg-transparent hover:bg-[var(--ui-bg-elevated)] focus:bg-[var(--ui-bg-elevated)] disabled:bg-transparent dark:disabled:bg-transparent",
1767
+ none: "text-[var(--ui-text-highlighted)] bg-transparent"
1768
+ },
1769
+ color: {
1770
+ ...Object.fromEntries((options.theme.colors || []).map((color) => [color, ""])),
1771
+ neutral: ""
1772
+ },
1773
+ highlight: {
1774
+ true: ""
1775
+ }
1776
+ },
1777
+ compoundVariants: [...(options.theme.colors || []).map((color) => ({
1778
+ color,
1779
+ variant: ["outline", "subtle"],
1780
+ class: `focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-[var(--ui-${color})]`
1781
+ })), ...(options.theme.colors || []).map((color) => ({
1782
+ color,
1783
+ highlight: true,
1784
+ class: `ring ring-inset ring-[var(--ui-${color})]`
1785
+ })), {
1786
+ color: "neutral",
1787
+ variant: ["outline", "subtle"],
1788
+ class: "focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-[var(--ui-border-inverted)]"
1789
+ }, {
1790
+ color: "neutral",
1791
+ highlight: true,
1792
+ class: "ring ring-inset ring-[var(--ui-border-inverted)]"
1793
+ }],
1794
+ defaultVariants: {
1795
+ size: "md",
1796
+ color: "primary",
1797
+ variant: "outline"
1798
+ }
1799
+ });
1800
+
1627
1801
  const popover = {
1628
1802
  slots: {
1629
1803
  content: "bg-[var(--ui-bg)] shadow-lg rounded-[calc(var(--ui-radius)*1.5)] ring ring-[var(--ui-border)] data-[state=open]:animate-[scale-in_100ms_ease-out] data-[state=closed]:animate-[scale-out_100ms_ease-in] focus:outline-none",
@@ -2019,26 +2193,7 @@ const selectMenu = (options) => {
2019
2193
  slots: {
2020
2194
  value: "truncate",
2021
2195
  placeholder: "truncate text-[var(--ui-text-dimmed)]",
2022
- input: "placeholder:text-[var(--ui-text-dimmed)] border-0 border-b border-[var(--ui-border)] focus:outline-none"
2023
- },
2024
- variants: {
2025
- size: {
2026
- xs: {
2027
- input: "text-xs px-2 py-1"
2028
- },
2029
- sm: {
2030
- input: "text-xs px-2.5 py-1.5"
2031
- },
2032
- md: {
2033
- input: "text-sm px-2.5 py-1.5"
2034
- },
2035
- lg: {
2036
- input: "text-sm px-3 py-2"
2037
- },
2038
- xl: {
2039
- input: "text-base px-3 py-2"
2040
- }
2041
- }
2196
+ input: "border-b border-[var(--ui-border)]"
2042
2197
  }
2043
2198
  }, select(options));
2044
2199
  };
@@ -2410,6 +2565,7 @@ const table = (options) => ({
2410
2565
  slots: {
2411
2566
  root: "relative overflow-auto",
2412
2567
  base: "min-w-full overflow-clip",
2568
+ caption: "sr-only",
2413
2569
  thead: "relative [&>tr]:after:absolute [&>tr]:after:inset-x-0 [&>tr]:after:bottom-0 [&>tr]:after:h-px [&>tr]:after:bg-[var(--ui-border-accented)]",
2414
2570
  tbody: "divide-y divide-[var(--ui-border)]",
2415
2571
  tr: "data-[selected=true]:bg-[var(--ui-bg-elevated)]/50",
@@ -2509,7 +2665,7 @@ const tabs = (options) => ({
2509
2665
  pill: {
2510
2666
  list: "bg-[var(--ui-bg-elevated)] rounded-[calc(var(--ui-radius)*2)]",
2511
2667
  trigger: "flex-1 w-full",
2512
- indicator: "rounded-[calc(var(--ui-radius)*1.5)] shadow-sm"
2668
+ indicator: "rounded-[calc(var(--ui-radius)*1.5)] shadow-xs"
2513
2669
  },
2514
2670
  link: {
2515
2671
  list: "border-[var(--ui-border)]",
@@ -2668,7 +2824,7 @@ const toast = (options) => ({
2668
2824
  const toaster = {
2669
2825
  slots: {
2670
2826
  viewport: "fixed flex flex-col w-[calc(100%-2rem)] sm:w-96 z-[100] data-[expanded=true]:h-[var(--height)] focus:outline-none",
2671
- base: "absolute inset-x-0 z-[var(--index)] transform-[var(--transform)] data-[expanded=false]:data-[front=false]:h-[var(--front-height)] data-[expanded=false]:data-[front=false]:*:invisible data-[state=closed]:animate-[toast-closed_200ms_ease-in-out] data-[state=closed]:data-[expanded=false]:data-[front=false]:animate-[toast-collapsed-closed_200ms_ease-in-out] data-[swipe=move]:transition-none transition-[transform,translate,height] duration-200 ease-out"
2827
+ base: "pointer-events-auto absolute inset-x-0 z-[var(--index)] transform-[var(--transform)] data-[expanded=false]:data-[front=false]:h-[var(--front-height)] data-[expanded=false]:data-[front=false]:*:invisible data-[state=closed]:animate-[toast-closed_200ms_ease-in-out] data-[state=closed]:data-[expanded=false]:data-[front=false]:animate-[toast-collapsed-closed_200ms_ease-in-out] data-[swipe=move]:transition-none transition-[transform,translate,height] duration-200 ease-out"
2672
2828
  },
2673
2829
  variants: {
2674
2830
  position: {
@@ -2724,7 +2880,7 @@ const toaster = {
2724
2880
 
2725
2881
  const tooltip = {
2726
2882
  slots: {
2727
- content: "flex items-center gap-1 bg-[var(--ui-bg)] text-[var(--ui-text-highlighted)] shadow rounded-[var(--ui-radius)] ring ring-[var(--ui-border)] h-6 px-2 py-1 text-xs select-none data-[state=delayed-open]:animate-[scale-in_100ms_ease-out] data-[state=closed]:animate-[scale-out_100ms_ease-in]",
2883
+ content: "flex items-center gap-1 bg-[var(--ui-bg)] text-[var(--ui-text-highlighted)] shadow-sm rounded-[var(--ui-radius)] ring ring-[var(--ui-border)] h-6 px-2 py-1 text-xs select-none data-[state=delayed-open]:animate-[scale-in_100ms_ease-out] data-[state=closed]:animate-[scale-out_100ms_ease-in]",
2728
2884
  arrow: "fill-[var(--ui-border)]",
2729
2885
  text: "truncate",
2730
2886
  kbds: `hidden lg:inline-flex items-center shrink-0 gap-0.5 before:content-['\xB7'] before:me-0.5`,
@@ -2756,11 +2912,13 @@ const theme = {
2756
2912
  formField: formField,
2757
2913
  input: input,
2758
2914
  inputMenu: inputMenu,
2915
+ inputNumber: inputNumber,
2759
2916
  kbd: kbd,
2760
2917
  link: link,
2761
2918
  modal: modal,
2762
2919
  navigationMenu: navigationMenu,
2763
2920
  pagination: pagination,
2921
+ pinInput: pinInput,
2764
2922
  popover: popover,
2765
2923
  progress: progress,
2766
2924
  radioGroup: radioGroup,