@ngrok/mantle 0.0.42 → 0.1.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 (212) hide show
  1. package/README.md +23 -0
  2. package/assets/mantle.css +1 -5
  3. package/dist/alert.d.ts +26 -0
  4. package/dist/alert.js +2 -0
  5. package/dist/alert.js.map +1 -0
  6. package/dist/{components/anchor/src/anchor.d.ts → anchor.d.ts} +6 -4
  7. package/dist/anchor.js +2 -0
  8. package/dist/anchor.js.map +1 -0
  9. package/dist/{components/types/src/as-child.d.ts → as-child-BjnPZ1DU.d.ts} +3 -2
  10. package/dist/button.d.ts +92 -0
  11. package/dist/button.js +2 -0
  12. package/dist/button.js.map +1 -0
  13. package/dist/card.d.ts +29 -0
  14. package/dist/card.js +2 -0
  15. package/dist/card.js.map +1 -0
  16. package/dist/checkbox.d.ts +6 -0
  17. package/dist/checkbox.js +2 -0
  18. package/dist/checkbox.js.map +1 -0
  19. package/dist/chunk-A5H52ODC.js +2 -0
  20. package/dist/chunk-A5H52ODC.js.map +1 -0
  21. package/dist/chunk-C2ECUIPG.js +2 -0
  22. package/dist/chunk-C2ECUIPG.js.map +1 -0
  23. package/dist/chunk-IGCOSMVM.js +2 -0
  24. package/dist/chunk-IGCOSMVM.js.map +1 -0
  25. package/dist/chunk-LFUD45DV.js +2 -0
  26. package/dist/chunk-LFUD45DV.js.map +1 -0
  27. package/dist/chunk-VT3Y7SNW.js +2 -0
  28. package/dist/chunk-VT3Y7SNW.js.map +1 -0
  29. package/dist/code-block.d.ts +108 -0
  30. package/dist/code-block.js +4 -0
  31. package/dist/code-block.js.map +1 -0
  32. package/dist/{components/core/src/cx.d.ts → cx.d.ts} +5 -3
  33. package/dist/cx.js +2 -0
  34. package/dist/cx.js.map +1 -0
  35. package/dist/{components/types/src/deep-non-nullable.d.ts → deep-non-nullable-SmpSvoSd.d.ts} +3 -2
  36. package/dist/dialog.d.ts +26 -0
  37. package/dist/dialog.js +2 -0
  38. package/dist/dialog.js.map +1 -0
  39. package/dist/dropdown-menu.d.ts +37 -0
  40. package/dist/dropdown-menu.js +2 -0
  41. package/dist/dropdown-menu.js.map +1 -0
  42. package/dist/hooks.d.ts +15 -0
  43. package/dist/hooks.js +2 -0
  44. package/dist/hooks.js.map +1 -0
  45. package/dist/{components/icon/src/icon.d.ts → icon.d.ts} +7 -6
  46. package/dist/icon.js +2 -0
  47. package/dist/icon.js.map +1 -0
  48. package/dist/inline-code.d.ts +9 -0
  49. package/dist/inline-code.js +2 -0
  50. package/dist/inline-code.js.map +1 -0
  51. package/dist/input.d.ts +75 -0
  52. package/dist/input.js +2 -0
  53. package/dist/input.js.map +1 -0
  54. package/dist/{components/media-object/src/media-object.d.ts → media-object.d.ts} +8 -6
  55. package/dist/media-object.js +2 -0
  56. package/dist/media-object.js.map +1 -0
  57. package/dist/popover.d.ts +8 -0
  58. package/dist/popover.js +2 -0
  59. package/dist/popover.js.map +1 -0
  60. package/dist/select.d.ts +19 -0
  61. package/dist/select.js +2 -0
  62. package/dist/select.js.map +1 -0
  63. package/dist/separator.d.ts +9 -0
  64. package/dist/separator.js +2 -0
  65. package/dist/separator.js.map +1 -0
  66. package/dist/sheet.d.ts +22 -0
  67. package/dist/sheet.js +2 -0
  68. package/dist/sheet.js.map +1 -0
  69. package/dist/{components/skeleton/src/skeleton.d.ts → skeleton.d.ts} +5 -3
  70. package/dist/skeleton.js +2 -0
  71. package/dist/skeleton.js.map +1 -0
  72. package/dist/table.d.ts +13 -0
  73. package/dist/table.js +2 -0
  74. package/dist/table.js.map +1 -0
  75. package/dist/tailwind-preset.d.ts +475 -0
  76. package/dist/tailwind-preset.js +2 -0
  77. package/dist/tailwind-preset.js.map +1 -0
  78. package/dist/text-area.d.ts +19 -0
  79. package/dist/text-area.js +2 -0
  80. package/dist/text-area.js.map +1 -0
  81. package/dist/{components/theme-provider/src/theme-provider.d.ts → theme-provider.d.ts} +15 -16
  82. package/dist/theme-provider.js +29 -0
  83. package/dist/theme-provider.js.map +1 -0
  84. package/dist/tooltip.d.ts +15 -0
  85. package/dist/tooltip.js +2 -0
  86. package/dist/tooltip.js.map +1 -0
  87. package/dist/types.d.ts +6 -0
  88. package/dist/types.js +1 -0
  89. package/dist/types.js.map +1 -0
  90. package/dist/variant-props-Dc9PJLzN.d.ts +11 -0
  91. package/dist/{components/types/src/with-style-props.d.ts → with-style-props-VnLWm0Yd.d.ts} +5 -3
  92. package/package.json +109 -42
  93. package/dist/components/alert/index.d.ts +0 -2
  94. package/dist/components/alert/index.d.ts.map +0 -1
  95. package/dist/components/alert/src/alert.d.ts +0 -21
  96. package/dist/components/alert/src/alert.d.ts.map +0 -1
  97. package/dist/components/anchor/index.d.ts +0 -2
  98. package/dist/components/anchor/index.d.ts.map +0 -1
  99. package/dist/components/anchor/src/anchor.d.ts.map +0 -1
  100. package/dist/components/back-to-top-button/index.d.ts +0 -9
  101. package/dist/components/back-to-top-button/index.d.ts.map +0 -1
  102. package/dist/components/button/index.d.ts +0 -5
  103. package/dist/components/button/index.d.ts.map +0 -1
  104. package/dist/components/button/src/button.d.ts +0 -43
  105. package/dist/components/button/src/button.d.ts.map +0 -1
  106. package/dist/components/button/src/icon-button.d.ts +0 -49
  107. package/dist/components/button/src/icon-button.d.ts.map +0 -1
  108. package/dist/components/card/index.d.ts +0 -3
  109. package/dist/components/card/index.d.ts.map +0 -1
  110. package/dist/components/card/src/card.d.ts +0 -26
  111. package/dist/components/card/src/card.d.ts.map +0 -1
  112. package/dist/components/checkbox/index.d.ts +0 -2
  113. package/dist/components/checkbox/index.d.ts.map +0 -1
  114. package/dist/components/checkbox/src/checkbox.d.ts +0 -5
  115. package/dist/components/checkbox/src/checkbox.d.ts.map +0 -1
  116. package/dist/components/code-block/index.d.ts +0 -7
  117. package/dist/components/code-block/index.d.ts.map +0 -1
  118. package/dist/components/code-block/src/code-block.d.ts +0 -56
  119. package/dist/components/code-block/src/code-block.d.ts.map +0 -1
  120. package/dist/components/code-block/src/fmt-code.d.ts +0 -7
  121. package/dist/components/code-block/src/fmt-code.d.ts.map +0 -1
  122. package/dist/components/code-block/src/line-numbers.d.ts +0 -9
  123. package/dist/components/code-block/src/line-numbers.d.ts.map +0 -1
  124. package/dist/components/code-block/src/parse-metastring.d.ts +0 -49
  125. package/dist/components/code-block/src/parse-metastring.d.ts.map +0 -1
  126. package/dist/components/code-block/src/supported-languages.d.ts +0 -26
  127. package/dist/components/code-block/src/supported-languages.d.ts.map +0 -1
  128. package/dist/components/core/index.d.ts +0 -2
  129. package/dist/components/core/index.d.ts.map +0 -1
  130. package/dist/components/core/src/cx.d.ts.map +0 -1
  131. package/dist/components/dialog/index.d.ts +0 -2
  132. package/dist/components/dialog/index.d.ts.map +0 -1
  133. package/dist/components/dialog/src/dialog.d.ts +0 -24
  134. package/dist/components/dialog/src/dialog.d.ts.map +0 -1
  135. package/dist/components/dropdown-menu/index.d.ts +0 -2
  136. package/dist/components/dropdown-menu/index.d.ts.map +0 -1
  137. package/dist/components/dropdown-menu/src/dropdown-menu.d.ts +0 -33
  138. package/dist/components/dropdown-menu/src/dropdown-menu.d.ts.map +0 -1
  139. package/dist/components/hooks/use-isomorphic-layout-effect.d.ts +0 -6
  140. package/dist/components/hooks/use-isomorphic-layout-effect.d.ts.map +0 -1
  141. package/dist/components/hooks/use-matches-media-query.d.ts +0 -2
  142. package/dist/components/hooks/use-matches-media-query.d.ts.map +0 -1
  143. package/dist/components/hooks/use-prefers-reduced-motion.d.ts +0 -5
  144. package/dist/components/hooks/use-prefers-reduced-motion.d.ts.map +0 -1
  145. package/dist/components/icon/index.d.ts +0 -3
  146. package/dist/components/icon/index.d.ts.map +0 -1
  147. package/dist/components/icon/src/icon.d.ts.map +0 -1
  148. package/dist/components/index.d.ts +0 -24
  149. package/dist/components/index.d.ts.map +0 -1
  150. package/dist/components/inline-code/index.d.ts +0 -2
  151. package/dist/components/inline-code/index.d.ts.map +0 -1
  152. package/dist/components/inline-code/src/inline-code.d.ts +0 -7
  153. package/dist/components/inline-code/src/inline-code.d.ts.map +0 -1
  154. package/dist/components/input/index.d.ts +0 -6
  155. package/dist/components/input/index.d.ts.map +0 -1
  156. package/dist/components/input/src/input.d.ts +0 -21
  157. package/dist/components/input/src/input.d.ts.map +0 -1
  158. package/dist/components/input/src/password-input.d.ts +0 -7
  159. package/dist/components/input/src/password-input.d.ts.map +0 -1
  160. package/dist/components/input/src/types.d.ts +0 -51
  161. package/dist/components/input/src/types.d.ts.map +0 -1
  162. package/dist/components/media-object/index.d.ts +0 -2
  163. package/dist/components/media-object/index.d.ts.map +0 -1
  164. package/dist/components/media-object/src/media-object.d.ts.map +0 -1
  165. package/dist/components/popover/index.d.ts +0 -2
  166. package/dist/components/popover/index.d.ts.map +0 -1
  167. package/dist/components/popover/src/popover.d.ts +0 -7
  168. package/dist/components/popover/src/popover.d.ts.map +0 -1
  169. package/dist/components/portal/index.d.ts +0 -7
  170. package/dist/components/portal/index.d.ts.map +0 -1
  171. package/dist/components/select/index.d.ts +0 -2
  172. package/dist/components/select/index.d.ts.map +0 -1
  173. package/dist/components/select/src/select.d.ts +0 -17
  174. package/dist/components/select/src/select.d.ts.map +0 -1
  175. package/dist/components/separator/index.d.ts +0 -2
  176. package/dist/components/separator/index.d.ts.map +0 -1
  177. package/dist/components/separator/src/separator.d.ts +0 -8
  178. package/dist/components/separator/src/separator.d.ts.map +0 -1
  179. package/dist/components/sheet/index.d.ts +0 -2
  180. package/dist/components/sheet/index.d.ts.map +0 -1
  181. package/dist/components/sheet/src/sheet.d.ts +0 -18
  182. package/dist/components/sheet/src/sheet.d.ts.map +0 -1
  183. package/dist/components/skeleton/index.d.ts +0 -2
  184. package/dist/components/skeleton/index.d.ts.map +0 -1
  185. package/dist/components/skeleton/src/skeleton.d.ts.map +0 -1
  186. package/dist/components/table/index.d.ts +0 -2
  187. package/dist/components/table/index.d.ts.map +0 -1
  188. package/dist/components/table/src/table.d.ts +0 -11
  189. package/dist/components/table/src/table.d.ts.map +0 -1
  190. package/dist/components/text-area/index.d.ts +0 -3
  191. package/dist/components/text-area/index.d.ts.map +0 -1
  192. package/dist/components/text-area/src/text-area.d.ts +0 -14
  193. package/dist/components/text-area/src/text-area.d.ts.map +0 -1
  194. package/dist/components/theme-provider/index.d.ts +0 -5
  195. package/dist/components/theme-provider/index.d.ts.map +0 -1
  196. package/dist/components/theme-provider/src/preload-fonts.d.ts +0 -7
  197. package/dist/components/theme-provider/src/preload-fonts.d.ts.map +0 -1
  198. package/dist/components/theme-provider/src/theme-provider.d.ts.map +0 -1
  199. package/dist/components/tooltip/index.d.ts +0 -2
  200. package/dist/components/tooltip/index.d.ts.map +0 -1
  201. package/dist/components/tooltip/src/tooltip.d.ts +0 -11
  202. package/dist/components/tooltip/src/tooltip.d.ts.map +0 -1
  203. package/dist/components/types/index.d.ts +0 -5
  204. package/dist/components/types/index.d.ts.map +0 -1
  205. package/dist/components/types/src/as-child.d.ts.map +0 -1
  206. package/dist/components/types/src/deep-non-nullable.d.ts.map +0 -1
  207. package/dist/components/types/src/variant-props.d.ts +0 -9
  208. package/dist/components/types/src/variant-props.d.ts.map +0 -1
  209. package/dist/components/types/src/with-style-props.d.ts.map +0 -1
  210. package/dist/index.js +0 -2140
  211. package/dist/index.js.map +0 -1
  212. package/dist/tsconfig.publish.tsbuildinfo +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../packages/tailwind-preset/src/tailwind.preset.ts","../packages/tailwind-preset/src/tailwind-plugin-firefox-variant.ts"],"sourcesContent":["import type { Config } from \"tailwindcss\";\nimport tailwindCssAnimatePlugin from \"tailwindcss-animate\";\nimport defaultTheme from \"tailwindcss/defaultTheme\";\nimport plugin from \"tailwindcss/plugin\";\nimport { firefoxVariantPlugin } from \"./tailwind-plugin-firefox-variant.js\";\n\nconst colors = {\n\tinherit: \"inherit\",\n\tcurrent: \"currentColor\",\n\ttransparent: \"transparent\",\n\twhite: \"hsl(var(--white) / <alpha-value>)\",\n\tblack: \"hsl(var(--black) / <alpha-value>)\",\n\tgray: {\n\t\t50: \"hsl(var(--gray-50) / <alpha-value>)\",\n\t\t100: \"hsl(var(--gray-100) / <alpha-value>)\",\n\t\t200: \"hsl(var(--gray-200) / <alpha-value>)\",\n\t\t300: \"hsl(var(--gray-300) / <alpha-value>)\",\n\t\t400: \"hsl(var(--gray-400) / <alpha-value>)\",\n\t\t500: \"hsl(var(--gray-500) / <alpha-value>)\",\n\t\t600: \"hsl(var(--gray-600) / <alpha-value>)\",\n\t\t700: \"hsl(var(--gray-700) / <alpha-value>)\",\n\t\t800: \"hsl(var(--gray-800) / <alpha-value>)\",\n\t\t900: \"hsl(var(--gray-900) / <alpha-value>)\",\n\t\t950: \"hsl(var(--gray-950) / <alpha-value>)\",\n\t},\n\tred: {\n\t\t50: \"hsl(var(--red-50) / <alpha-value>)\",\n\t\t100: \"hsl(var(--red-100) / <alpha-value>)\",\n\t\t200: \"hsl(var(--red-200) / <alpha-value>)\",\n\t\t300: \"hsl(var(--red-300) / <alpha-value>)\",\n\t\t400: \"hsl(var(--red-400) / <alpha-value>)\",\n\t\t500: \"hsl(var(--red-500) / <alpha-value>)\",\n\t\t600: \"hsl(var(--red-600) / <alpha-value>)\",\n\t\t700: \"hsl(var(--red-700) / <alpha-value>)\",\n\t\t800: \"hsl(var(--red-800) / <alpha-value>)\",\n\t\t900: \"hsl(var(--red-900) / <alpha-value>)\",\n\t\t950: \"hsl(var(--red-950) / <alpha-value>)\",\n\t},\n\torange: {\n\t\t50: \"hsl(var(--orange-50) / <alpha-value>)\",\n\t\t100: \"hsl(var(--orange-100) / <alpha-value>)\",\n\t\t200: \"hsl(var(--orange-200) / <alpha-value>)\",\n\t\t300: \"hsl(var(--orange-300) / <alpha-value>)\",\n\t\t400: \"hsl(var(--orange-400) / <alpha-value>)\",\n\t\t500: \"hsl(var(--orange-500) / <alpha-value>)\",\n\t\t600: \"hsl(var(--orange-600) / <alpha-value>)\",\n\t\t700: \"hsl(var(--orange-700) / <alpha-value>)\",\n\t\t800: \"hsl(var(--orange-800) / <alpha-value>)\",\n\t\t900: \"hsl(var(--orange-900) / <alpha-value>)\",\n\t\t950: \"hsl(var(--orange-950) / <alpha-value>)\",\n\t},\n\tamber: {\n\t\t50: \"hsl(var(--amber-50) / <alpha-value>)\",\n\t\t100: \"hsl(var(--amber-100) / <alpha-value>)\",\n\t\t200: \"hsl(var(--amber-200) / <alpha-value>)\",\n\t\t300: \"hsl(var(--amber-300) / <alpha-value>)\",\n\t\t400: \"hsl(var(--amber-400) / <alpha-value>)\",\n\t\t500: \"hsl(var(--amber-500) / <alpha-value>)\",\n\t\t600: \"hsl(var(--amber-600) / <alpha-value>)\",\n\t\t700: \"hsl(var(--amber-700) / <alpha-value>)\",\n\t\t800: \"hsl(var(--amber-800) / <alpha-value>)\",\n\t\t900: \"hsl(var(--amber-900) / <alpha-value>)\",\n\t\t950: \"hsl(var(--amber-950) / <alpha-value>)\",\n\t},\n\tyellow: {\n\t\t50: \"hsl(var(--yellow-50) / <alpha-value>)\",\n\t\t100: \"hsl(var(--yellow-100) / <alpha-value>)\",\n\t\t200: \"hsl(var(--yellow-200) / <alpha-value>)\",\n\t\t300: \"hsl(var(--yellow-300) / <alpha-value>)\",\n\t\t400: \"hsl(var(--yellow-400) / <alpha-value>)\",\n\t\t500: \"hsl(var(--yellow-500) / <alpha-value>)\",\n\t\t600: \"hsl(var(--yellow-600) / <alpha-value>)\",\n\t\t700: \"hsl(var(--yellow-700) / <alpha-value>)\",\n\t\t800: \"hsl(var(--yellow-800) / <alpha-value>)\",\n\t\t900: \"hsl(var(--yellow-900) / <alpha-value>)\",\n\t\t950: \"hsl(var(--yellow-950) / <alpha-value>)\",\n\t},\n\tlime: {\n\t\t50: \"hsl(var(--lime-50) / <alpha-value>)\",\n\t\t100: \"hsl(var(--lime-100) / <alpha-value>)\",\n\t\t200: \"hsl(var(--lime-200) / <alpha-value>)\",\n\t\t300: \"hsl(var(--lime-300) / <alpha-value>)\",\n\t\t400: \"hsl(var(--lime-400) / <alpha-value>)\",\n\t\t500: \"hsl(var(--lime-500) / <alpha-value>)\",\n\t\t600: \"hsl(var(--lime-600) / <alpha-value>)\",\n\t\t700: \"hsl(var(--lime-700) / <alpha-value>)\",\n\t\t800: \"hsl(var(--lime-800) / <alpha-value>)\",\n\t\t900: \"hsl(var(--lime-900) / <alpha-value>)\",\n\t\t950: \"hsl(var(--lime-950) / <alpha-value>)\",\n\t},\n\tgreen: {\n\t\t50: \"hsl(var(--green-50) / <alpha-value>)\",\n\t\t100: \"hsl(var(--green-100) / <alpha-value>)\",\n\t\t200: \"hsl(var(--green-200) / <alpha-value>)\",\n\t\t300: \"hsl(var(--green-300) / <alpha-value>)\",\n\t\t400: \"hsl(var(--green-400) / <alpha-value>)\",\n\t\t500: \"hsl(var(--green-500) / <alpha-value>)\",\n\t\t600: \"hsl(var(--green-600) / <alpha-value>)\",\n\t\t700: \"hsl(var(--green-700) / <alpha-value>)\",\n\t\t800: \"hsl(var(--green-800) / <alpha-value>)\",\n\t\t900: \"hsl(var(--green-900) / <alpha-value>)\",\n\t\t950: \"hsl(var(--green-950) / <alpha-value>)\",\n\t},\n\temerald: {\n\t\t50: \"hsl(var(--emerald-50) / <alpha-value>)\",\n\t\t100: \"hsl(var(--emerald-100) / <alpha-value>)\",\n\t\t200: \"hsl(var(--emerald-200) / <alpha-value>)\",\n\t\t300: \"hsl(var(--emerald-300) / <alpha-value>)\",\n\t\t400: \"hsl(var(--emerald-400) / <alpha-value>)\",\n\t\t500: \"hsl(var(--emerald-500) / <alpha-value>)\",\n\t\t600: \"hsl(var(--emerald-600) / <alpha-value>)\",\n\t\t700: \"hsl(var(--emerald-700) / <alpha-value>)\",\n\t\t800: \"hsl(var(--emerald-800) / <alpha-value>)\",\n\t\t900: \"hsl(var(--emerald-900) / <alpha-value>)\",\n\t\t950: \"hsl(var(--emerald-950) / <alpha-value>)\",\n\t},\n\tteal: {\n\t\t50: \"hsl(var(--teal-50) / <alpha-value>)\",\n\t\t100: \"hsl(var(--teal-100) / <alpha-value>)\",\n\t\t200: \"hsl(var(--teal-200) / <alpha-value>)\",\n\t\t300: \"hsl(var(--teal-300) / <alpha-value>)\",\n\t\t400: \"hsl(var(--teal-400) / <alpha-value>)\",\n\t\t500: \"hsl(var(--teal-500) / <alpha-value>)\",\n\t\t600: \"hsl(var(--teal-600) / <alpha-value>)\",\n\t\t700: \"hsl(var(--teal-700) / <alpha-value>)\",\n\t\t800: \"hsl(var(--teal-800) / <alpha-value>)\",\n\t\t900: \"hsl(var(--teal-900) / <alpha-value>)\",\n\t\t950: \"hsl(var(--teal-950) / <alpha-value>)\",\n\t},\n\tcyan: {\n\t\t50: \"hsl(var(--cyan-50) / <alpha-value>)\",\n\t\t100: \"hsl(var(--cyan-100) / <alpha-value>)\",\n\t\t200: \"hsl(var(--cyan-200) / <alpha-value>)\",\n\t\t300: \"hsl(var(--cyan-300) / <alpha-value>)\",\n\t\t400: \"hsl(var(--cyan-400) / <alpha-value>)\",\n\t\t500: \"hsl(var(--cyan-500) / <alpha-value>)\",\n\t\t600: \"hsl(var(--cyan-600) / <alpha-value>)\",\n\t\t700: \"hsl(var(--cyan-700) / <alpha-value>)\",\n\t\t800: \"hsl(var(--cyan-800) / <alpha-value>)\",\n\t\t900: \"hsl(var(--cyan-900) / <alpha-value>)\",\n\t\t950: \"hsl(var(--cyan-950) / <alpha-value>)\",\n\t},\n\tsky: {\n\t\t50: \"hsl(var(--sky-50) / <alpha-value>)\",\n\t\t100: \"hsl(var(--sky-100) / <alpha-value>)\",\n\t\t200: \"hsl(var(--sky-200) / <alpha-value>)\",\n\t\t300: \"hsl(var(--sky-300) / <alpha-value>)\",\n\t\t400: \"hsl(var(--sky-400) / <alpha-value>)\",\n\t\t500: \"hsl(var(--sky-500) / <alpha-value>)\",\n\t\t600: \"hsl(var(--sky-600) / <alpha-value>)\",\n\t\t700: \"hsl(var(--sky-700) / <alpha-value>)\",\n\t\t800: \"hsl(var(--sky-800) / <alpha-value>)\",\n\t\t900: \"hsl(var(--sky-900) / <alpha-value>)\",\n\t\t950: \"hsl(var(--sky-950) / <alpha-value>)\",\n\t},\n\tblue: {\n\t\t50: \"hsl(var(--blue-50) / <alpha-value>)\",\n\t\t100: \"hsl(var(--blue-100) / <alpha-value>)\",\n\t\t200: \"hsl(var(--blue-200) / <alpha-value>)\",\n\t\t300: \"hsl(var(--blue-300) / <alpha-value>)\",\n\t\t400: \"hsl(var(--blue-400) / <alpha-value>)\",\n\t\t500: \"hsl(var(--blue-500) / <alpha-value>)\",\n\t\t600: \"hsl(var(--blue-600) / <alpha-value>)\",\n\t\t700: \"hsl(var(--blue-700) / <alpha-value>)\",\n\t\t800: \"hsl(var(--blue-800) / <alpha-value>)\",\n\t\t900: \"hsl(var(--blue-900) / <alpha-value>)\",\n\t\t950: \"hsl(var(--blue-950) / <alpha-value>)\",\n\t},\n\tindigo: {\n\t\t50: \"hsl(var(--indigo-50) / <alpha-value>)\",\n\t\t100: \"hsl(var(--indigo-100) / <alpha-value>)\",\n\t\t200: \"hsl(var(--indigo-200) / <alpha-value>)\",\n\t\t300: \"hsl(var(--indigo-300) / <alpha-value>)\",\n\t\t400: \"hsl(var(--indigo-400) / <alpha-value>)\",\n\t\t500: \"hsl(var(--indigo-500) / <alpha-value>)\",\n\t\t600: \"hsl(var(--indigo-600) / <alpha-value>)\",\n\t\t700: \"hsl(var(--indigo-700) / <alpha-value>)\",\n\t\t800: \"hsl(var(--indigo-800) / <alpha-value>)\",\n\t\t900: \"hsl(var(--indigo-900) / <alpha-value>)\",\n\t\t950: \"hsl(var(--indigo-950) / <alpha-value>)\",\n\t},\n\tviolet: {\n\t\t50: \"hsl(var(--violet-50) / <alpha-value>)\",\n\t\t100: \"hsl(var(--violet-100) / <alpha-value>)\",\n\t\t200: \"hsl(var(--violet-200) / <alpha-value>)\",\n\t\t300: \"hsl(var(--violet-300) / <alpha-value>)\",\n\t\t400: \"hsl(var(--violet-400) / <alpha-value>)\",\n\t\t500: \"hsl(var(--violet-500) / <alpha-value>)\",\n\t\t600: \"hsl(var(--violet-600) / <alpha-value>)\",\n\t\t700: \"hsl(var(--violet-700) / <alpha-value>)\",\n\t\t800: \"hsl(var(--violet-800) / <alpha-value>)\",\n\t\t900: \"hsl(var(--violet-900) / <alpha-value>)\",\n\t\t950: \"hsl(var(--violet-950) / <alpha-value>)\",\n\t},\n\tpurple: {\n\t\t50: \"hsl(var(--purple-50) / <alpha-value>)\",\n\t\t100: \"hsl(var(--purple-100) / <alpha-value>)\",\n\t\t200: \"hsl(var(--purple-200) / <alpha-value>)\",\n\t\t300: \"hsl(var(--purple-300) / <alpha-value>)\",\n\t\t400: \"hsl(var(--purple-400) / <alpha-value>)\",\n\t\t500: \"hsl(var(--purple-500) / <alpha-value>)\",\n\t\t600: \"hsl(var(--purple-600) / <alpha-value>)\",\n\t\t700: \"hsl(var(--purple-700) / <alpha-value>)\",\n\t\t800: \"hsl(var(--purple-800) / <alpha-value>)\",\n\t\t900: \"hsl(var(--purple-900) / <alpha-value>)\",\n\t\t950: \"hsl(var(--purple-950) / <alpha-value>)\",\n\t},\n\tfuchsia: {\n\t\t50: \"hsl(var(--fuchsia-50) / <alpha-value>)\",\n\t\t100: \"hsl(var(--fuchsia-100) / <alpha-value>)\",\n\t\t200: \"hsl(var(--fuchsia-200) / <alpha-value>)\",\n\t\t300: \"hsl(var(--fuchsia-300) / <alpha-value>)\",\n\t\t400: \"hsl(var(--fuchsia-400) / <alpha-value>)\",\n\t\t500: \"hsl(var(--fuchsia-500) / <alpha-value>)\",\n\t\t600: \"hsl(var(--fuchsia-600) / <alpha-value>)\",\n\t\t700: \"hsl(var(--fuchsia-700) / <alpha-value>)\",\n\t\t800: \"hsl(var(--fuchsia-800) / <alpha-value>)\",\n\t\t900: \"hsl(var(--fuchsia-900) / <alpha-value>)\",\n\t\t950: \"hsl(var(--fuchsia-950) / <alpha-value>)\",\n\t},\n\tpink: {\n\t\t50: \"hsl(var(--pink-50) / <alpha-value>)\",\n\t\t100: \"hsl(var(--pink-100) / <alpha-value>)\",\n\t\t200: \"hsl(var(--pink-200) / <alpha-value>)\",\n\t\t300: \"hsl(var(--pink-300) / <alpha-value>)\",\n\t\t400: \"hsl(var(--pink-400) / <alpha-value>)\",\n\t\t500: \"hsl(var(--pink-500) / <alpha-value>)\",\n\t\t600: \"hsl(var(--pink-600) / <alpha-value>)\",\n\t\t700: \"hsl(var(--pink-700) / <alpha-value>)\",\n\t\t800: \"hsl(var(--pink-800) / <alpha-value>)\",\n\t\t900: \"hsl(var(--pink-900) / <alpha-value>)\",\n\t\t950: \"hsl(var(--pink-950) / <alpha-value>)\",\n\t},\n\trose: {\n\t\t50: \"hsl(var(--rose-50) / <alpha-value>)\",\n\t\t100: \"hsl(var(--rose-100) / <alpha-value>)\",\n\t\t200: \"hsl(var(--rose-200) / <alpha-value>)\",\n\t\t300: \"hsl(var(--rose-300) / <alpha-value>)\",\n\t\t400: \"hsl(var(--rose-400) / <alpha-value>)\",\n\t\t500: \"hsl(var(--rose-500) / <alpha-value>)\",\n\t\t600: \"hsl(var(--rose-600) / <alpha-value>)\",\n\t\t700: \"hsl(var(--rose-700) / <alpha-value>)\",\n\t\t800: \"hsl(var(--rose-800) / <alpha-value>)\",\n\t\t900: \"hsl(var(--rose-900) / <alpha-value>)\",\n\t\t950: \"hsl(var(--rose-950) / <alpha-value>)\",\n\t},\n\tneutral: {\n\t\t50: \"hsl(var(--neutral-50) / <alpha-value>)\",\n\t\t100: \"hsl(var(--neutral-100) / <alpha-value>)\",\n\t\t200: \"hsl(var(--neutral-200) / <alpha-value>)\",\n\t\t300: \"hsl(var(--neutral-300) / <alpha-value>)\",\n\t\t400: \"hsl(var(--neutral-400) / <alpha-value>)\",\n\t\t500: \"hsl(var(--neutral-500) / <alpha-value>)\",\n\t\t600: \"hsl(var(--neutral-600) / <alpha-value>)\",\n\t\t700: \"hsl(var(--neutral-700) / <alpha-value>)\",\n\t\t800: \"hsl(var(--neutral-800) / <alpha-value>)\",\n\t\t900: \"hsl(var(--neutral-900) / <alpha-value>)\",\n\t\t950: \"hsl(var(--neutral-950) / <alpha-value>)\",\n\t},\n\taccent: {\n\t\t50: \"hsl(var(--accent-50) / <alpha-value>)\",\n\t\t100: \"hsl(var(--accent-100) / <alpha-value>)\",\n\t\t200: \"hsl(var(--accent-200) / <alpha-value>)\",\n\t\t300: \"hsl(var(--accent-300) / <alpha-value>)\",\n\t\t400: \"hsl(var(--accent-400) / <alpha-value>)\",\n\t\t500: \"hsl(var(--accent-500) / <alpha-value>)\",\n\t\t600: \"hsl(var(--accent-600) / <alpha-value>)\",\n\t\t700: \"hsl(var(--accent-700) / <alpha-value>)\",\n\t\t800: \"hsl(var(--accent-800) / <alpha-value>)\",\n\t\t900: \"hsl(var(--accent-900) / <alpha-value>)\",\n\t\t950: \"hsl(var(--accent-950) / <alpha-value>)\",\n\t},\n\tdanger: {\n\t\t50: \"hsl(var(--danger-50) / <alpha-value>)\",\n\t\t100: \"hsl(var(--danger-100) / <alpha-value>)\",\n\t\t200: \"hsl(var(--danger-200) / <alpha-value>)\",\n\t\t300: \"hsl(var(--danger-300) / <alpha-value>)\",\n\t\t400: \"hsl(var(--danger-400) / <alpha-value>)\",\n\t\t500: \"hsl(var(--danger-500) / <alpha-value>)\",\n\t\t600: \"hsl(var(--danger-600) / <alpha-value>)\",\n\t\t700: \"hsl(var(--danger-700) / <alpha-value>)\",\n\t\t800: \"hsl(var(--danger-800) / <alpha-value>)\",\n\t\t900: \"hsl(var(--danger-900) / <alpha-value>)\",\n\t\t950: \"hsl(var(--danger-950) / <alpha-value>)\",\n\t},\n\twarning: {\n\t\t50: \"hsl(var(--warning-50) / <alpha-value>)\",\n\t\t100: \"hsl(var(--warning-100) / <alpha-value>)\",\n\t\t200: \"hsl(var(--warning-200) / <alpha-value>)\",\n\t\t300: \"hsl(var(--warning-300) / <alpha-value>)\",\n\t\t400: \"hsl(var(--warning-400) / <alpha-value>)\",\n\t\t500: \"hsl(var(--warning-500) / <alpha-value>)\",\n\t\t600: \"hsl(var(--warning-600) / <alpha-value>)\",\n\t\t700: \"hsl(var(--warning-700) / <alpha-value>)\",\n\t\t800: \"hsl(var(--warning-800) / <alpha-value>)\",\n\t\t900: \"hsl(var(--warning-900) / <alpha-value>)\",\n\t\t950: \"hsl(var(--warning-950) / <alpha-value>)\",\n\t},\n\tsuccess: {\n\t\t50: \"hsl(var(--success-50) / <alpha-value>)\",\n\t\t100: \"hsl(var(--success-100) / <alpha-value>)\",\n\t\t200: \"hsl(var(--success-200) / <alpha-value>)\",\n\t\t300: \"hsl(var(--success-300) / <alpha-value>)\",\n\t\t400: \"hsl(var(--success-400) / <alpha-value>)\",\n\t\t500: \"hsl(var(--success-500) / <alpha-value>)\",\n\t\t600: \"hsl(var(--success-600) / <alpha-value>)\",\n\t\t700: \"hsl(var(--success-700) / <alpha-value>)\",\n\t\t800: \"hsl(var(--success-800) / <alpha-value>)\",\n\t\t900: \"hsl(var(--success-900) / <alpha-value>)\",\n\t\t950: \"hsl(var(--success-950) / <alpha-value>)\",\n\t},\n};\n\nconst mantlePreset = {\n\tcontent: [],\n\tdarkMode: \"class\",\n\ttheme: {\n\t\tcolors,\n\t\tcontainer: {\n\t\t\tcenter: true,\n\t\t\tpadding: \"2rem\",\n\t\t\tscreens: {\n\t\t\t\t\"2xl\": \"1400px\",\n\t\t\t},\n\t\t},\n\t\textend: {\n\t\t\tanimation: {\n\t\t\t\t\"accordion-down\": \"accordion-down 0.2s ease-out\",\n\t\t\t\t\"accordion-up\": \"accordion-up 0.2s ease-out\",\n\t\t\t},\n\t\t\taria: {\n\t\t\t\tcollapsed: 'expanded=\"false\"',\n\t\t\t\tinvalid: 'invalid=\"true\"',\n\t\t\t\tunchecked: 'checked=\"false\"',\n\t\t\t},\n\t\t\tboxShadow: {\n\t\t\t\tsm: \"0px 1px 2px 0 hsl(var(--shadow-color) / var(--shadow-first))\",\n\t\t\t\tDEFAULT:\n\t\t\t\t\t\"0px 1px 2px -1px hsl(var(--shadow-color) / var(--shadow-second)), 0px 1px 3px 0px hsl(var(--shadow-color) / var(--shadow-second))\",\n\t\t\t\tmd: \"0px 2px 13px 0px hsl(var(--shadow-color) / var(--shadow-first)), 0px 2px 4px -2px hsl(var(--shadow-color) / var(--shadow-second)), 0px 4px 6px -1px hsl(var(--shadow-color) / var(--shadow-second))\",\n\t\t\t\tlg: \"0px 1px 13px 0px hsl(var(--shadow-color) / var(--shadow-first)), 0px 4px 6px -4px hsl(var(--shadow-color) / var(--shadow-second)), 0px 10px 15px -3px hsl(var(--shadow-color) / var(--shadow-second))\",\n\t\t\t\txl: \"0px 0px 15px 0px hsl(var(--shadow-color) / var(--shadow-first)), 0px 8px 10px -6px hsl(var(--shadow-color) / var(--shadow-second)), 0px 20px 25px -5px hsl(var(--shadow-color) / var(--shadow-second))\",\n\t\t\t\t\"2xl\":\n\t\t\t\t\t\"0px 0px 15px 0px hsl(var(--shadow-color) / var(--shadow-first)), 0px 11px 10px 0px hsl(var(--shadow-color) / var(--shadow-first)), 0px 17px 25px 2px hsl(var(--shadow-color) / var(--shadow-second))\",\n\t\t\t\tinner: \"inset 0px 2px 4px 0px hsl(var(--shadow-color) / var(--shadow-first))\",\n\t\t\t},\n\t\t\tbackgroundColor: {\n\t\t\t\tbase: \"hsl(var(--bg-base))\",\n\t\t\t\tcard: \"hsl(var(--bg-card))\",\n\t\t\t\tdialog: \"hsl(var(--bg-dialog))\",\n\t\t\t\tform: \"hsl(var(--bg-form))\",\n\t\t\t\toverlay: \"hsl(var(--bg-overlay))\",\n\t\t\t\tpopover: \"hsl(var(--bg-popover))\",\n\t\t\t\ttooltip: \"hsl(var(--bg-tooltip))\",\n\t\t\t\t\"base-hover\": \"hsl(var(--bg-base-hover))\",\n\t\t\t\t\"card-hover\": \"hsl(var(--bg-card-hover))\",\n\t\t\t\t\"filled-accent-active\": \"hsl(var(--bg-filled-accent-active))\",\n\t\t\t\t\"filled-accent-hover\": \"hsl(var(--bg-filled-accent-hover))\",\n\t\t\t\t\"filled-accent\": \"hsl(var(--bg-filled-accent))\",\n\t\t\t\t\"filled-danger-active\": \"hsl(var(--bg-filled-danger-active))\",\n\t\t\t\t\"filled-danger-hover\": \"hsl(var(--bg-filled-danger-hover))\",\n\t\t\t\t\"filled-danger\": \"hsl(var(--bg-filled-danger))\",\n\t\t\t\t\"filled-neutral-active\": \"hsl(var(--bg-filled-neutral-active))\",\n\t\t\t\t\"filled-neutral-hover\": \"hsl(var(--bg-filled-neutral-hover))\",\n\t\t\t\t\"filled-neutral\": \"hsl(var(--bg-filled-neutral))\",\n\t\t\t\t\"filled-success-active\": \"hsl(var(--bg-filled-success-active))\",\n\t\t\t\t\"filled-success-hover\": \"hsl(var(--bg-filled-success-hover))\",\n\t\t\t\t\"filled-success\": \"hsl(var(--bg-filled-success))\",\n\t\t\t\t\"filled-warning-active\": \"hsl(var(--bg-filled-warning-active))\",\n\t\t\t\t\"filled-warning-hover\": \"hsl(var(--bg-filled-warning-hover))\",\n\t\t\t\t\"filled-warning\": \"hsl(var(--bg-filled-warning))\",\n\t\t\t\t\"form-active\": \"hsl(var(--bg-form-active))\",\n\t\t\t\t\"form-hover\": \"hsl(var(--bg-form-hover))\",\n\t\t\t\t\"popover-hover\": \"hsl(var(--bg-popover-hover))\",\n\t\t\t},\n\t\t\ttextColor: {\n\t\t\t\tbody: \"hsl(var(--text-body))\",\n\t\t\t\tmuted: \"hsl(var(--text-muted))\",\n\t\t\t\tplaceholder: \"hsl(var(--text-placeholder))\",\n\t\t\t\tstrong: \"hsl(var(--text-strong))\",\n\t\t\t\ttooltip: \"hsl(var(--text-tooltip))\",\n\t\t\t\t\"on-filled\": \"hsl(var(--text-on-filled))\",\n\t\t\t},\n\t\t\tborderColor: {\n\t\t\t\tbase: \"hsl(var(--border-base))\",\n\t\t\t\tcard: \"hsl(var(--border-card))\",\n\t\t\t\tdialog: \"hsl(var(--border-dialog))\",\n\t\t\t\tform: \"hsl(var(--border-form))\",\n\t\t\t\tpopover: \"hsl(var(--border-popover))\",\n\t\t\t\t\"base-muted\": \"hsl(var(--border-base-muted))\",\n\t\t\t\t\"card-muted\": \"hsl(var(--border-card-muted))\",\n\t\t\t\t\"dialog-muted\": \"hsl(var(--border-dialog-muted))\",\n\t\t\t\t\"popover-muted\": \"hsl(var(--border-popover-muted))\",\n\t\t\t},\n\t\t\tringColor: {\n\t\t\t\t\"focus-accent\": \"hsl(var(--ring-focus-accent))\",\n\t\t\t\t\"focus-danger\": \"hsl(var(--ring-focus-danger))\",\n\t\t\t\t\"focus-neutral\": \"hsl(var(--ring-focus-neutral))\",\n\t\t\t\t\"focus-success\": \"hsl(var(--ring-focus-success))\",\n\t\t\t\t\"focus-warning\": \"hsl(var(--ring-focus-warning))\",\n\t\t\t},\n\t\t\tcursor: {\n\t\t\t\tinherit: \"inherit\",\n\t\t\t\tinitial: \"initial\",\n\t\t\t},\n\t\t\tdata: {\n\t\t\t\t\"active-item\": \"active-item\",\n\t\t\t\t\"drag-over\": 'drag-over=\"true\"',\n\t\t\t\t\"orientation-horizontal\": 'orientation=\"horizontal\"',\n\t\t\t\t\"orientation-vertical\": 'orientation=\"vertical\"',\n\t\t\t\t\"side-bottom\": 'side=\"bottom\"',\n\t\t\t\t\"side-left\": 'side=\"left\"',\n\t\t\t\t\"side-right\": 'side=\"right\"',\n\t\t\t\t\"side-top\": 'side=\"top\"',\n\t\t\t\t\"state-checked\": 'state~=\"checked\"',\n\t\t\t\t\"state-closed\": 'state~=\"closed\"',\n\t\t\t\t\"state-idle\": 'state~=\"idle\"',\n\t\t\t\t\"state-indeterminate\": 'state~=\"indeterminate\"',\n\t\t\t\t\"state-open\": 'state~=\"open\"',\n\t\t\t\t\"state-pending\": 'state~=\"pending\"',\n\t\t\t\t\"state-selected\": 'state~=\"selected\"',\n\t\t\t\t\"state-submitting\": 'state~=\"submitting\"',\n\t\t\t\t\"state-unchecked\": 'state~=\"unchecked\"',\n\t\t\t\tdisabled: \"disabled\",\n\t\t\t\thighlighted: \"highlighted\",\n\t\t\t},\n\t\t\tfontFamily: {\n\t\t\t\tsans: [\"EuclidSquare\", ...defaultTheme.fontFamily.sans],\n\t\t\t\tmono: [\"IBMPlexMono\", ...defaultTheme.fontFamily.mono],\n\t\t\t},\n\t\t\tfontSize: {\n\t\t\t\t\"size-inherit\": \"inherit\",\n\t\t\t},\n\t\t\tfontWeight: {\n\t\t\t\tinitial: \"initial\",\n\t\t\t},\n\t\t\tkeyframes: {\n\t\t\t\t\"accordion-down\": {\n\t\t\t\t\tfrom: { height: \"0\" },\n\t\t\t\t\tto: { height: \"var(--radix-accordion-content-height)\" },\n\t\t\t\t},\n\t\t\t\t\"accordion-up\": {\n\t\t\t\t\tfrom: { height: \"var(--radix-accordion-content-height)\" },\n\t\t\t\t\tto: { height: \"0\" },\n\t\t\t\t},\n\t\t\t},\n\t\t\tlineHeight: {\n\t\t\t\t0: \"0\",\n\t\t\t\tinitial: \"initial\",\n\t\t\t},\n\t\t\tscreens: {\n\t\t\t\txs: \"480px\",\n\t\t\t},\n\t\t\tspacing: {\n\t\t\t\t\"1.25\": \"0.3125rem\",\n\t\t\t},\n\t\t\ttransitionProperty: {\n\t\t\t\t\"max-height\": \"max-height\",\n\t\t\t},\n\t\t\tzIndex: {\n\t\t\t\t1: \"1\",\n\t\t\t\tmax: \"2147483647\",\n\t\t\t},\n\t\t},\n\t},\n\tplugins: [\n\t\ttailwindCssAnimatePlugin,\n\t\tfirefoxVariantPlugin,\n\t\tplugin(function ({ addVariant }) {\n\t\t\taddVariant(\"dark-high-contrast\", [\":is(.dark-high-contrast &)\"]);\n\t\t\taddVariant(\"high-contrast\", [\":is(.light-high-contrast &)\"]);\n\t\t}),\n\t],\n} satisfies Config;\n\nexport type MantlePreset = typeof mantlePreset;\n\nexport { mantlePreset };\n","import type { Postcss, Root } from \"postcss\";\nimport plugin from \"tailwindcss/plugin\";\nimport type { PluginAPI } from \"tailwindcss/types/config\";\n\n/**\n * This plugin adds a `firefox` variant to TailwindCSS.\n *\n * @see https://gist.github.com/samselikoff/b3c5126ee4f4e69e60b0af0aa5bfb2e7\n */\nconst firefoxVariantPlugin = plugin(\n\t// @ts-expect-error PluginAPI is not typed correctly, missing postcss\n\t(api: PluginAPI & { postcss: Postcss }) => {\n\t\t// @ts-expect-error addVariant is not typed correctly\n\t\tapi.addVariant(\"firefox\", ({ container, separator }: { container: Root; separator: string }) => {\n\t\t\tconst isFirefoxRule = api.postcss.atRule({\n\t\t\t\tname: \"supports\",\n\t\t\t\tparams: \"(-moz-appearance:none)\",\n\t\t\t});\n\t\t\tisFirefoxRule.append(container.nodes);\n\t\t\tcontainer.append(isFirefoxRule);\n\t\t\tisFirefoxRule.walkRules((rule) => {\n\t\t\t\trule.selector = `.${api.e(`firefox${separator}${rule.selector.slice(1).replace(/\\\\/g, \"\")}`)}`;\n\t\t\t});\n\t\t});\n\t},\n);\n\nexport { firefoxVariantPlugin };\n"],"mappings":"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","names":["tailwindCssAnimatePlugin","defaultTheme","plugin","plugin","firefoxVariantPlugin","api","container","separator","isFirefoxRule","rule","colors","mantlePreset","defaultTheme","tailwindCssAnimatePlugin","firefoxVariantPlugin","plugin","addVariant"]}
@@ -0,0 +1,19 @@
1
+ import * as react from 'react';
2
+ import { TextareaHTMLAttributes } from 'react';
3
+ import { V as VariantProps } from './variant-props-Dc9PJLzN.js';
4
+ import { D as DeepNonNullable } from './deep-non-nullable-SmpSvoSd.js';
5
+ import * as class_variance_authority from 'class-variance-authority';
6
+ import * as class_variance_authority_types from 'class-variance-authority/types';
7
+
8
+ declare const textAreaVariants: (props?: ({
9
+ invalid?: boolean | null | undefined;
10
+ appearance?: "monospaced" | null | undefined;
11
+ } & class_variance_authority_types.ClassProp) | undefined) => string;
12
+ type TextAreaVariants = VariantProps<typeof textAreaVariants>;
13
+ type TextAreaProps = TextareaHTMLAttributes<HTMLTextAreaElement> & TextAreaVariants;
14
+ declare const TextArea: react.ForwardRefExoticComponent<TextareaHTMLAttributes<HTMLTextAreaElement> & Partial<DeepNonNullable<class_variance_authority.VariantProps<(props?: ({
15
+ invalid?: boolean | null | undefined;
16
+ appearance?: "monospaced" | null | undefined;
17
+ } & class_variance_authority_types.ClassProp) | undefined) => string>>> & react.RefAttributes<HTMLTextAreaElement>>;
18
+
19
+ export { TextArea, type TextAreaProps };
@@ -0,0 +1,2 @@
1
+ import{a as n}from"./chunk-A5H52ODC.js";import{cva as g}from"class-variance-authority";import{forwardRef as v,useRef as T,useState as b}from"react";import{jsx as y}from"react/jsx-runtime";var A=g("border-input flex min-h-24 w-full rounded-md border bg-form px-3 py-[calc(theme(spacing[2.5])-1px)] focus-visible:outline-none focus-visible:ring-4 disabled:pointer-events-none disabled:opacity-50 data-drag-over:border-dashed data-drag-over:ring-4 sm:py-[calc(theme(spacing[2])-1px)] sm:text-sm",{variants:{invalid:{false:"border-form text-strong ring-focus-accent placeholder:text-placeholder focus:border-accent-600 data-drag-over:border-accent-600",true:"border-danger-600 ring-focus-danger placeholder:text-placeholder focus:border-danger-600 data-drag-over:border-dashed data-drag-over:border-danger-600"},appearance:{monospaced:"font-mono text-[0.9375rem] sm:text-[0.8125rem]"}},defaultVariants:{invalid:!1}}),s=v(({appearance:d,"aria-invalid":i,className:p,invalid:t,onDragEnter:c,onDragLeave:l,onDropCapture:f,...x},r)=>{let m=i??t,[u,a]=b(!1),o=T(null);return y("textarea",{"aria-invalid":m,className:n(A({appearance:d,invalid:t}),p),"data-drag-over":u,onDragEnter:e=>{a(!0),c?.(e)},onDragLeave:e=>{a(!1),l?.(e)},onDropCapture:e=>{a(!1),o.current?.focus(),f?.(e)},ref:e=>{o.current=e,typeof r=="function"?r(e):r&&(r.current=e)},...x})});s.displayName="TextArea";export{s as TextArea};
2
+ //# sourceMappingURL=text-area.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../packages/text-area/src/text-area.tsx"],"sourcesContent":["import { cva } from \"class-variance-authority\";\nimport { forwardRef, useRef, useState } from \"react\";\nimport type { TextareaHTMLAttributes } from \"react\";\nimport { cx } from \"../../cx\";\nimport { VariantProps } from \"../../types\";\n\nconst textAreaVariants = cva(\n\t\"border-input flex min-h-24 w-full rounded-md border bg-form px-3 py-[calc(theme(spacing[2.5])-1px)] focus-visible:outline-none focus-visible:ring-4 disabled:pointer-events-none disabled:opacity-50 data-drag-over:border-dashed data-drag-over:ring-4 sm:py-[calc(theme(spacing[2])-1px)] sm:text-sm\",\n\t{\n\t\tvariants: {\n\t\t\t/**\n\t\t\t * Whether or not the textarea has a validation error.\n\t\t\t */\n\t\t\tinvalid: {\n\t\t\t\tfalse:\n\t\t\t\t\t\"border-form text-strong ring-focus-accent placeholder:text-placeholder focus:border-accent-600 data-drag-over:border-accent-600\",\n\t\t\t\ttrue: \"border-danger-600 ring-focus-danger placeholder:text-placeholder focus:border-danger-600 data-drag-over:border-dashed data-drag-over:border-danger-600\",\n\t\t\t},\n\t\t\t/**\n\t\t\t * The visual style of the textarea.\n\t\t\t */\n\t\t\tappearance: {\n\t\t\t\tmonospaced: \"font-mono text-[0.9375rem] sm:text-[0.8125rem]\",\n\t\t\t},\n\t\t},\n\t\tdefaultVariants: {\n\t\t\tinvalid: false,\n\t\t},\n\t},\n);\n\nexport type TextAreaVariants = VariantProps<typeof textAreaVariants>;\n\nexport type TextAreaProps = TextareaHTMLAttributes<HTMLTextAreaElement> & TextAreaVariants;\n\nconst TextArea = forwardRef<HTMLTextAreaElement, TextAreaProps>(\n\t(\n\t\t{ appearance, \"aria-invalid\": _ariaInvalid, className, invalid, onDragEnter, onDragLeave, onDropCapture, ...props },\n\t\tref,\n\t) => {\n\t\tconst ariaInvalid = _ariaInvalid ?? invalid;\n\t\tconst [isDragOver, setIsDragOver] = useState(false);\n\t\tconst _ref = useRef<HTMLTextAreaElement | null>(null);\n\n\t\treturn (\n\t\t\t<textarea\n\t\t\t\taria-invalid={ariaInvalid}\n\t\t\t\tclassName={cx(textAreaVariants({ appearance, invalid }), className)}\n\t\t\t\tdata-drag-over={isDragOver}\n\t\t\t\tonDragEnter={(event) => {\n\t\t\t\t\tsetIsDragOver(true);\n\t\t\t\t\tonDragEnter?.(event);\n\t\t\t\t}}\n\t\t\t\tonDragLeave={(event) => {\n\t\t\t\t\tsetIsDragOver(false);\n\t\t\t\t\tonDragLeave?.(event);\n\t\t\t\t}}\n\t\t\t\tonDropCapture={(event) => {\n\t\t\t\t\tsetIsDragOver(false);\n\t\t\t\t\t_ref.current?.focus();\n\t\t\t\t\tonDropCapture?.(event);\n\t\t\t\t}}\n\t\t\t\tref={(node) => {\n\t\t\t\t\t_ref.current = node;\n\t\t\t\t\tif (typeof ref === \"function\") {\n\t\t\t\t\t\tref(node);\n\t\t\t\t\t} else if (ref) {\n\t\t\t\t\t\tref.current = node;\n\t\t\t\t\t}\n\t\t\t\t}}\n\t\t\t\t{...props}\n\t\t\t/>\n\t\t);\n\t},\n);\nTextArea.displayName = \"TextArea\";\n\nexport { TextArea };\n"],"mappings":"wCAAA,OAAS,OAAAA,MAAW,2BACpB,OAAS,cAAAC,EAAY,UAAAC,EAAQ,YAAAC,MAAgB,QA4C1C,cAAAC,MAAA,oBAvCH,IAAMC,EAAmBC,EACxB,ySACA,CACC,SAAU,CAIT,QAAS,CACR,MACC,kIACD,KAAM,wJACP,EAIA,WAAY,CACX,WAAY,gDACb,CACD,EACA,gBAAiB,CAChB,QAAS,EACV,CACD,CACD,EAMMC,EAAWC,EAChB,CACC,CAAE,WAAAC,EAAY,eAAgBC,EAAc,UAAAC,EAAW,QAAAC,EAAS,YAAAC,EAAa,YAAAC,EAAa,cAAAC,EAAe,GAAGC,CAAM,EAClHC,IACI,CACJ,IAAMC,EAAcR,GAAgBE,EAC9B,CAACO,EAAYC,CAAa,EAAIC,EAAS,EAAK,EAC5CC,EAAOC,EAAmC,IAAI,EAEpD,OACCnB,EAAC,YACA,eAAcc,EACd,UAAWM,EAAGnB,EAAiB,CAAE,WAAAI,EAAY,QAAAG,CAAQ,CAAC,EAAGD,CAAS,EAClE,iBAAgBQ,EAChB,YAAcM,GAAU,CACvBL,EAAc,EAAI,EAClBP,IAAcY,CAAK,CACpB,EACA,YAAcA,GAAU,CACvBL,EAAc,EAAK,EACnBN,IAAcW,CAAK,CACpB,EACA,cAAgBA,GAAU,CACzBL,EAAc,EAAK,EACnBE,EAAK,SAAS,MAAM,EACpBP,IAAgBU,CAAK,CACtB,EACA,IAAMC,GAAS,CACdJ,EAAK,QAAUI,EACX,OAAOT,GAAQ,WAClBA,EAAIS,CAAI,EACET,IACVA,EAAI,QAAUS,EAEhB,EACC,GAAGV,EACL,CAEF,CACD,EACAT,EAAS,YAAc","names":["cva","forwardRef","useRef","useState","jsx","textAreaVariants","cva","TextArea","forwardRef","appearance","_ariaInvalid","className","invalid","onDragEnter","onDragLeave","onDropCapture","props","ref","ariaInvalid","isDragOver","setIsDragOver","useState","_ref","useRef","cx","event","node"]}
@@ -1,4 +1,6 @@
1
- import type { PropsWithChildren } from "react";
1
+ import * as react_jsx_runtime from 'react/jsx-runtime';
2
+ import { PropsWithChildren } from 'react';
3
+
2
4
  /**
3
5
  * themes is a tuple of valid themes.
4
6
  */
@@ -10,7 +12,7 @@ type Theme = (typeof themes)[number];
10
12
  /**
11
13
  * theme is a helper which translates the Theme type into a string literal type.
12
14
  */
13
- declare const theme: <T extends "dark" | "light" | "system" | "light-high-contrast" | "dark-high-contrast">(value: T) => T;
15
+ declare const theme: <T extends "system" | "light" | "dark" | "light-high-contrast" | "dark-high-contrast">(value: T) => T;
14
16
  /**
15
17
  * Type predicate that checks if a value is a valid theme.
16
18
  */
@@ -26,7 +28,7 @@ type ThemeProviderProps = PropsWithChildren & {
26
28
  /**
27
29
  * ThemeProvider is a React Context Provider that provides the current theme and a function to set the theme.
28
30
  */
29
- declare function ThemeProvider({ children, defaultTheme, storageKey }: ThemeProviderProps): import("react/jsx-runtime").JSX.Element;
31
+ declare function ThemeProvider({ children, defaultTheme, storageKey }: ThemeProviderProps): react_jsx_runtime.JSX.Element;
30
32
  /**
31
33
  * useTheme returns the current theme and a function to set the theme.
32
34
  *
@@ -37,15 +39,7 @@ declare function useTheme(): ThemeProviderState;
37
39
  * If the theme is "system", it will resolve the theme based on the user's media query preferences, otherwise it will return the theme as is.
38
40
  * This will mirror the result that gets applied to the <html> element.
39
41
  */
40
- declare function useAppliedTheme(): "dark" | "light" | "light-high-contrast" | "dark-high-contrast";
41
- /**
42
- * determineThemeFromMediaQuery returns the theme that should be used based on the user's media query preferences.
43
- * @private
44
- */
45
- export declare function determineThemeFromMediaQuery({ prefersDarkMode, prefersHighContrast, }: {
46
- prefersDarkMode: boolean;
47
- prefersHighContrast: boolean;
48
- }): "dark" | "light" | "light-high-contrast" | "dark-high-contrast";
42
+ declare function useAppliedTheme(): "light" | "dark" | "light-high-contrast" | "dark-high-contrast";
49
43
  declare function preventWrongThemeFlashScriptContent({ defaultTheme, storageKey, }: {
50
44
  defaultTheme?: Theme;
51
45
  storageKey?: string;
@@ -57,7 +51,7 @@ declare function preventWrongThemeFlashScriptContent({ defaultTheme, storageKey,
57
51
  declare const MantleThemeHeadContent: ({ defaultTheme, storageKey, }: {
58
52
  defaultTheme?: Theme;
59
53
  storageKey?: string;
60
- }) => import("react/jsx-runtime").JSX.Element;
54
+ }) => react_jsx_runtime.JSX.Element;
61
55
  type InitialThemeProps = {
62
56
  className: string;
63
57
  "data-applied-theme": Omit<Theme, "system">;
@@ -71,6 +65,11 @@ declare function useInitialHtmlThemeProps(props?: {
71
65
  defaultTheme?: Theme;
72
66
  storageKey?: string;
73
67
  }): InitialThemeProps;
74
- export type { Theme, ThemeProviderProps };
75
- export { isTheme, MantleThemeHeadContent, preventWrongThemeFlashScriptContent, theme, ThemeProvider, useAppliedTheme, useInitialHtmlThemeProps, useTheme, };
76
- //# sourceMappingURL=theme-provider.d.ts.map
68
+
69
+ /**
70
+ * Preload custom fonts used in the theme. This should be added to the head of the document in your application, preferably as high as possible.
71
+ * Normally you won't use this directly, but instead use the `MantleThemeHeadContent` component which includes this.
72
+ */
73
+ declare const PreloadFonts: () => react_jsx_runtime.JSX.Element;
74
+
75
+ export { MantleThemeHeadContent, PreloadFonts, type Theme, ThemeProvider, type ThemeProviderProps, isTheme, preventWrongThemeFlashScriptContent, theme, useAppliedTheme, useInitialHtmlThemeProps, useTheme };
@@ -0,0 +1,29 @@
1
+ import{a as T}from"./chunk-IGCOSMVM.js";import v from"clsx";import{createContext as D,useContext as L,useEffect as P,useMemo as S,useState as F}from"react";import W from"tiny-invariant";import{Fragment as q,jsx as M}from"react/jsx-runtime";var C="https://cdn.ngrok.com/static/fonts",I=["euclid-square/EuclidSquare-Regular-WebS.woff","euclid-square/EuclidSquare-RegularItalic-WebS.woff","euclid-square/EuclidSquare-Medium-WebS.woff","euclid-square/EuclidSquare-Semibold-WebS.woff","euclid-square/EuclidSquare-MediumItalic-WebS.woff","ibm-plex-mono/IBMPlexMono-Text.woff","ibm-plex-mono/IBMPlexMono-TextItalic.woff","ibm-plex-mono/IBMPlexMono-SemiBold.woff","ibm-plex-mono/IBMPlexMono-SemiBoldItalic.woff"],H=e=>[C,e].join("/"),u=()=>M(q,{children:I.map(e=>M("link",{rel:"preload",href:H(e),as:"font",type:"font/woff",crossOrigin:"anonymous"},e))});import{Fragment as R,jsx as p,jsxs as G}from"react/jsx-runtime";var i="(prefers-color-scheme: dark)",a="(prefers-contrast: more)",g=["system","light","dark","light-high-contrast","dark-high-contrast"],B=e=>e;function b(e){return typeof e!="string"?!1:g.includes(e)}var l="mantle-ui-theme",N=["system",()=>null],k=D(N),w=()=>typeof window<"u";function d(e,t="system"){let r=t??"system";if(w()){let n=window.localStorage.getItem(e);return b(n)?n:r}return r}function $({children:e,defaultTheme:t="system",storageKey:r=l}){let[n,s]=F(()=>{let o=d(r,t);return c(o),o});P(()=>{let o=d(r,t);s(o),c(o)},[t,r]),P(()=>{let o=window.matchMedia(i),m=window.matchMedia(a),h=()=>{d(r,t)==="system"&&c("system")};return o.addEventListener("change",h),m.addEventListener("change",h),()=>{o.removeEventListener("change",h),m.removeEventListener("change",h)}},[t,r]);let f=S(()=>[n,o=>{window.localStorage.setItem(r,o),s(o),c(o)}],[r,n]);return p(k.Provider,{value:f,children:e})}function x(){let e=L(k);return W(e,"useTheme must be used within a ThemeProvider"),e}function c(e){if(!w())return;let t=window.document.documentElement;t.classList.remove(...g);let r=window.matchMedia(i).matches,n=window.matchMedia(a).matches,s=y(e,{prefersDarkMode:r,prefersHighContrast:n});t.classList.add(s),t.dataset.appliedTheme=s,t.dataset.theme=e}function y(e,{prefersDarkMode:t,prefersHighContrast:r}){return e==="system"?O({prefersDarkMode:t,prefersHighContrast:r}):e}function A(){let[e]=x(),t=T(i),r=T(a);return y(e,{prefersDarkMode:t,prefersHighContrast:r})}function O({prefersDarkMode:e,prefersHighContrast:t}){return t?e?"dark-high-contrast":"light-high-contrast":e?"dark":"light"}function E({defaultTheme:e="system",storageKey:t=l}){return`
2
+ (function() {
3
+ const themes = ${JSON.stringify(g)};
4
+ const isTheme = (value) => typeof value === "string" && themes.includes(value);
5
+ const fallbackTheme = "${e}" ?? "system";
6
+ const maybeStoredTheme = window.localStorage.getItem("${t}");
7
+ const hasStoredTheme = isTheme(maybeStoredTheme);
8
+ if (!hasStoredTheme) {
9
+ window.localStorage.setItem("${t}", fallbackTheme);
10
+ }
11
+ const themePreference = hasStoredTheme ? maybeStoredTheme : fallbackTheme;
12
+ const prefersDarkMode = window.matchMedia("${i}").matches;
13
+ const prefersHighContrast = window.matchMedia("${a}").matches;
14
+ let initialTheme = themePreference;
15
+ if (initialTheme === "system") {
16
+ if (prefersHighContrast) {
17
+ initialTheme = prefersDarkMode ? "dark-high-contrast" : "light-high-contrast";
18
+ } else {
19
+ initialTheme = prefersDarkMode ? "dark" : "light";
20
+ }
21
+ }
22
+ const htmlElement = document.documentElement;
23
+ htmlElement.classList.remove(...themes);
24
+ htmlElement.classList.add(initialTheme);
25
+ htmlElement.dataset.appliedTheme = initialTheme;
26
+ htmlElement.dataset.theme = themePreference;
27
+ })();
28
+ `.trim()}var Q=({defaultTheme:e="system",storageKey:t=l})=>G(R,{children:[p("script",{dangerouslySetInnerHTML:{__html:E({defaultTheme:e,storageKey:t})}}),p(u,{})]});function _(e){let{className:t="",defaultTheme:r="system",storageKey:n=l}=e??{};return S(()=>{if(!w())return{className:v(t),"data-applied-theme":"system","data-theme":"system"};let s=window.matchMedia(i).matches,f=window.matchMedia(a).matches,o=d(n,r),m=y(o,{prefersDarkMode:s,prefersHighContrast:f});return{className:v(t,m),"data-applied-theme":m,"data-theme":o}},[t,r,n])}export{Q as MantleThemeHeadContent,u as PreloadFonts,$ as ThemeProvider,b as isTheme,E as preventWrongThemeFlashScriptContent,B as theme,A as useAppliedTheme,_ as useInitialHtmlThemeProps,x as useTheme};
29
+ //# sourceMappingURL=theme-provider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../packages/theme-provider/src/theme-provider.tsx","../packages/theme-provider/src/preload-fonts.tsx"],"sourcesContent":["import clsx from \"clsx\";\nimport type { PropsWithChildren } from \"react\";\nimport { createContext, useContext, useEffect, useMemo, useState } from \"react\";\nimport invariant from \"tiny-invariant\";\nimport { useMatchesMediaQuery } from \"../../hooks/src/use-matches-media-query\";\nimport { PreloadFonts } from \"./preload-fonts\";\n\n/**\n * prefersDarkModeMediaQuery is the media query used to detect if the user prefers dark mode.\n */\nconst prefersDarkModeMediaQuery = \"(prefers-color-scheme: dark)\";\n\n/**\n * prefersHighContrastMediaQuery is the media query used to detect if the user prefers high contrast mode.\n */\nconst prefersHighContrastMediaQuery = \"(prefers-contrast: more)\";\n\n/**\n * themes is a tuple of valid themes.\n */\nconst themes = [\"system\", \"light\", \"dark\", \"light-high-contrast\", \"dark-high-contrast\"] as const;\n\n/**\n * Theme is a string literal type that represents a valid theme.\n */\ntype Theme = (typeof themes)[number];\n\n/**\n * theme is a helper which translates the Theme type into a string literal type.\n */\nconst theme = <T extends Theme>(value: T) => value;\n\n/**\n * Type predicate that checks if a value is a valid theme.\n */\nfunction isTheme(value: unknown): value is Theme {\n\tif (typeof value !== \"string\") {\n\t\treturn false;\n\t}\n\n\treturn themes.includes(value as Theme);\n}\n\n/**\n * DEFAULT_STORAGE_KEY is the default key used to store the theme in localStorage.\n */\nconst DEFAULT_STORAGE_KEY = \"mantle-ui-theme\";\n\n/**\n * ThemeProviderState is the shape of the state returned by the ThemeProviderContext.\n */\ntype ThemeProviderState = [theme: Theme, setTheme: (theme: Theme) => void];\n\n/**\n * Initial state for the ThemeProviderContext.\n */\nconst initialState: ThemeProviderState = [\"system\", () => null];\n\n/**\n * ThemeProviderContext is a React Context that provides the current theme and a function to set the theme.\n */\nconst ThemeProviderContext = createContext<ThemeProviderState>(initialState);\n\n/**\n * isBrowser returns true if the code is running in a browser environment.\n */\nconst isBrowser = () => typeof window !== \"undefined\";\n\n/**\n * Gets the stored theme from localStorage or returns the default theme if no theme is stored.\n */\nfunction getStoredTheme(storageKey: string, defaultTheme: Theme = \"system\") {\n\tconst fallbackTheme = defaultTheme ?? \"system\";\n\tif (isBrowser()) {\n\t\tconst storedTheme = window.localStorage.getItem(storageKey);\n\t\treturn isTheme(storedTheme) ? storedTheme : fallbackTheme;\n\t}\n\treturn fallbackTheme;\n}\n\ntype ThemeProviderProps = PropsWithChildren & {\n\tdefaultTheme?: Theme;\n\tstorageKey?: string;\n};\n\n/**\n * ThemeProvider is a React Context Provider that provides the current theme and a function to set the theme.\n */\nfunction ThemeProvider({ children, defaultTheme = \"system\", storageKey = DEFAULT_STORAGE_KEY }: ThemeProviderProps) {\n\tconst [theme, setTheme] = useState<Theme>(() => {\n\t\tconst initialTheme = getStoredTheme(storageKey, defaultTheme);\n\t\tapplyTheme(initialTheme);\n\t\treturn initialTheme;\n\t});\n\n\tuseEffect(() => {\n\t\tconst storedTheme = getStoredTheme(storageKey, defaultTheme);\n\t\tsetTheme(storedTheme);\n\t\tapplyTheme(storedTheme);\n\t}, [defaultTheme, storageKey]);\n\n\tuseEffect(() => {\n\t\tconst prefersDarkMql = window.matchMedia(prefersDarkModeMediaQuery);\n\t\tconst prefersHighContrastMql = window.matchMedia(prefersHighContrastMediaQuery);\n\n\t\tconst onChange = () => {\n\t\t\tconst storedTheme = getStoredTheme(storageKey, defaultTheme);\n\n\t\t\t// If the stored theme is not \"system\", then the user has explicitly set a theme and we should not\n\t\t\t// automatically change the theme when the user's system preferences change.\n\t\t\tif (storedTheme !== \"system\") {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tapplyTheme(\"system\");\n\t\t};\n\n\t\tprefersDarkMql.addEventListener(\"change\", onChange);\n\t\tprefersHighContrastMql.addEventListener(\"change\", onChange);\n\n\t\treturn () => {\n\t\t\tprefersDarkMql.removeEventListener(\"change\", onChange);\n\t\t\tprefersHighContrastMql.removeEventListener(\"change\", onChange);\n\t\t};\n\t}, [defaultTheme, storageKey]);\n\n\tconst value: ThemeProviderState = useMemo(\n\t\t() => [\n\t\t\ttheme,\n\t\t\t(theme: Theme) => {\n\t\t\t\twindow.localStorage.setItem(storageKey, theme);\n\t\t\t\tsetTheme(theme);\n\t\t\t\tapplyTheme(theme);\n\t\t\t},\n\t\t],\n\t\t[storageKey, theme],\n\t);\n\n\treturn <ThemeProviderContext.Provider value={value}>{children}</ThemeProviderContext.Provider>;\n}\n\n/**\n * useTheme returns the current theme and a function to set the theme.\n *\n * @note This function will throw an error if used outside of a ThemeProvider context tree.\n */\nfunction useTheme() {\n\tconst context = useContext(ThemeProviderContext);\n\n\tinvariant(context, \"useTheme must be used within a ThemeProvider\");\n\n\treturn context;\n}\n\n/**\n * Applies the given theme to the <html> element.\n */\nfunction applyTheme(theme: Theme) {\n\tif (!isBrowser()) {\n\t\treturn;\n\t}\n\n\tconst htmlElement = window.document.documentElement;\n\thtmlElement.classList.remove(...themes);\n\tconst prefersDarkMode = window.matchMedia(prefersDarkModeMediaQuery).matches;\n\tconst prefersHighContrast = window.matchMedia(prefersHighContrastMediaQuery).matches;\n\tconst newTheme = resolveTheme(theme, { prefersDarkMode, prefersHighContrast });\n\thtmlElement.classList.add(newTheme);\n\thtmlElement.dataset.appliedTheme = newTheme;\n\thtmlElement.dataset.theme = theme;\n}\n\n/**\n * If the theme is \"system\", it will resolve the theme based on the user's media query preferences, otherwise it will return the theme as is.\n * This will mirror the result that gets applied to the <html> element.\n */\nfunction resolveTheme(\n\ttheme: Theme,\n\t{ prefersDarkMode, prefersHighContrast }: { prefersDarkMode: boolean; prefersHighContrast: boolean },\n) {\n\tif (theme === \"system\") {\n\t\treturn determineThemeFromMediaQuery({ prefersDarkMode, prefersHighContrast });\n\t}\n\n\treturn theme;\n}\n\n/**\n * If the theme is \"system\", it will resolve the theme based on the user's media query preferences, otherwise it will return the theme as is.\n * This will mirror the result that gets applied to the <html> element.\n */\nfunction useAppliedTheme() {\n\tconst [theme] = useTheme();\n\n\tconst prefersDarkMode = useMatchesMediaQuery(prefersDarkModeMediaQuery);\n\tconst prefersHighContrast = useMatchesMediaQuery(prefersHighContrastMediaQuery);\n\n\treturn resolveTheme(theme, { prefersDarkMode, prefersHighContrast });\n}\n\n/**\n * determineThemeFromMediaQuery returns the theme that should be used based on the user's media query preferences.\n * @private\n */\nexport function determineThemeFromMediaQuery({\n\tprefersDarkMode,\n\tprefersHighContrast,\n}: {\n\tprefersDarkMode: boolean;\n\tprefersHighContrast: boolean;\n}) {\n\tif (prefersHighContrast) {\n\t\treturn prefersDarkMode ? \"dark-high-contrast\" : \"light-high-contrast\";\n\t}\n\n\treturn prefersDarkMode ? \"dark\" : \"light\";\n}\n\nfunction preventWrongThemeFlashScriptContent({\n\tdefaultTheme = \"system\",\n\tstorageKey = DEFAULT_STORAGE_KEY,\n}: {\n\tdefaultTheme?: Theme;\n\tstorageKey?: string;\n}) {\n\treturn `\n(function() {\n\tconst themes = ${JSON.stringify(themes)};\n\tconst isTheme = (value) => typeof value === \"string\" && themes.includes(value);\n\tconst fallbackTheme = \"${defaultTheme}\" ?? \"system\";\n\tconst maybeStoredTheme = window.localStorage.getItem(\"${storageKey}\");\n\tconst hasStoredTheme = isTheme(maybeStoredTheme);\n\tif (!hasStoredTheme) {\n\t\twindow.localStorage.setItem(\"${storageKey}\", fallbackTheme);\n\t}\n\tconst themePreference = hasStoredTheme ? maybeStoredTheme : fallbackTheme;\n\tconst prefersDarkMode = window.matchMedia(\"${prefersDarkModeMediaQuery}\").matches;\n\tconst prefersHighContrast = window.matchMedia(\"${prefersHighContrastMediaQuery}\").matches;\n\tlet initialTheme = themePreference;\n\tif (initialTheme === \"system\") {\n\t\tif (prefersHighContrast) {\n\t\t\tinitialTheme = prefersDarkMode ? \"dark-high-contrast\" : \"light-high-contrast\";\n\t\t} else {\n\t\t\tinitialTheme = prefersDarkMode ? \"dark\" : \"light\";\n\t\t}\n\t}\n\tconst htmlElement = document.documentElement;\n\thtmlElement.classList.remove(...themes);\n\thtmlElement.classList.add(initialTheme);\n\thtmlElement.dataset.appliedTheme = initialTheme;\n\thtmlElement.dataset.theme = themePreference;\n})();\n`.trim();\n}\n\n/**\n * MantleThemeHeadContent is a React component that prevents the wrong theme from flashing on initial page load.\n * Render as high as possible in the <head> element.\n */\nconst MantleThemeHeadContent = ({\n\tdefaultTheme = \"system\",\n\tstorageKey = DEFAULT_STORAGE_KEY,\n}: {\n\tdefaultTheme?: Theme;\n\tstorageKey?: string;\n}) => (\n\t<>\n\t\t<script\n\t\t\tdangerouslySetInnerHTML={{\n\t\t\t\t__html: preventWrongThemeFlashScriptContent({ defaultTheme, storageKey }),\n\t\t\t}}\n\t\t/>\n\t\t<PreloadFonts />\n\t</>\n);\n\ntype InitialThemeProps = {\n\tclassName: string;\n\t\"data-applied-theme\": Omit<Theme, \"system\">;\n\t\"data-theme\": Theme;\n};\n\n/**\n * useInitialHtmlThemeProps returns the initial props that should be applied to the <html> element to prevent react hydration errors.\n */\nfunction useInitialHtmlThemeProps(props?: {\n\tclassName?: string;\n\tdefaultTheme?: Theme;\n\tstorageKey?: string;\n}): InitialThemeProps {\n\tconst { className = \"\", defaultTheme = \"system\", storageKey = DEFAULT_STORAGE_KEY } = props ?? {};\n\n\treturn useMemo(() => {\n\t\tif (!isBrowser()) {\n\t\t\treturn {\n\t\t\t\tclassName: clsx(className),\n\t\t\t\t\"data-applied-theme\": \"system\",\n\t\t\t\t\"data-theme\": \"system\",\n\t\t\t};\n\t\t}\n\n\t\tconst prefersDarkMode = window.matchMedia(prefersDarkModeMediaQuery).matches;\n\t\tconst prefersHighContrast = window.matchMedia(prefersHighContrastMediaQuery).matches;\n\t\tconst initialTheme = getStoredTheme(storageKey, defaultTheme);\n\t\tconst reolvedTheme = resolveTheme(initialTheme, { prefersDarkMode, prefersHighContrast });\n\n\t\treturn {\n\t\t\tclassName: clsx(className, reolvedTheme),\n\t\t\t\"data-applied-theme\": reolvedTheme,\n\t\t\t\"data-theme\": initialTheme,\n\t\t};\n\t}, [className, defaultTheme, storageKey]);\n}\n\nexport type { Theme, ThemeProviderProps };\nexport {\n\tisTheme,\n\tMantleThemeHeadContent,\n\tpreventWrongThemeFlashScriptContent,\n\ttheme,\n\tThemeProvider,\n\tuseAppliedTheme,\n\tuseInitialHtmlThemeProps,\n\tuseTheme,\n};\n","const cdnBase = \"https://cdn.ngrok.com/static/fonts\";\n\nconst fonts = [\n\t\"euclid-square/EuclidSquare-Regular-WebS.woff\",\n\t\"euclid-square/EuclidSquare-RegularItalic-WebS.woff\",\n\t\"euclid-square/EuclidSquare-Medium-WebS.woff\",\n\t\"euclid-square/EuclidSquare-Semibold-WebS.woff\",\n\t\"euclid-square/EuclidSquare-MediumItalic-WebS.woff\",\n\t\"ibm-plex-mono/IBMPlexMono-Text.woff\",\n\t\"ibm-plex-mono/IBMPlexMono-TextItalic.woff\",\n\t\"ibm-plex-mono/IBMPlexMono-SemiBold.woff\",\n\t\"ibm-plex-mono/IBMPlexMono-SemiBoldItalic.woff\",\n] as const;\n\ntype Font = (typeof fonts)[number];\n\nconst fontHref = <T extends Font>(font: T) => [cdnBase, font].join(\"/\");\n\n/**\n * Preload custom fonts used in the theme. This should be added to the head of the document in your application, preferably as high as possible.\n * Normally you won't use this directly, but instead use the `MantleThemeHeadContent` component which includes this.\n */\nconst PreloadFonts = () => (\n\t<>\n\t\t{fonts.map((font) => (\n\t\t\t<link key={font} rel=\"preload\" href={fontHref(font)} as=\"font\" type=\"font/woff\" crossOrigin=\"anonymous\" />\n\t\t))}\n\t</>\n);\n\nexport { PreloadFonts };\n"],"mappings":"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","names":["clsx","createContext","useContext","useEffect","useMemo","useState","invariant","Fragment","jsx","cdnBase","fonts","fontHref","font","PreloadFonts","Fragment","jsx","jsxs","prefersDarkModeMediaQuery","prefersHighContrastMediaQuery","themes","theme","value","isTheme","DEFAULT_STORAGE_KEY","initialState","ThemeProviderContext","createContext","isBrowser","getStoredTheme","storageKey","defaultTheme","fallbackTheme","storedTheme","ThemeProvider","children","setTheme","useState","initialTheme","applyTheme","useEffect","prefersDarkMql","prefersHighContrastMql","onChange","useMemo","useTheme","context","useContext","invariant","htmlElement","prefersDarkMode","prefersHighContrast","newTheme","resolveTheme","determineThemeFromMediaQuery","useAppliedTheme","useMatchesMediaQuery","preventWrongThemeFlashScriptContent","MantleThemeHeadContent","PreloadFonts","useInitialHtmlThemeProps","props","className","clsx","reolvedTheme"]}
@@ -0,0 +1,15 @@
1
+ import * as react from 'react';
2
+ import { ComponentPropsWithoutRef } from 'react';
3
+ import * as _radix_ui_react_tooltip from '@radix-ui/react-tooltip';
4
+ import { Provider } from '@radix-ui/react-tooltip';
5
+ import * as react_jsx_runtime from 'react/jsx-runtime';
6
+
7
+ /**
8
+ * Wraps your app to provide global functionality to your tooltips.
9
+ */
10
+ declare const TooltipProvider: ({ delayDuration, ...props }: ComponentPropsWithoutRef<typeof Provider>) => react_jsx_runtime.JSX.Element;
11
+ declare const Tooltip: react.FC<_radix_ui_react_tooltip.TooltipProps>;
12
+ declare const TooltipTrigger: react.ForwardRefExoticComponent<_radix_ui_react_tooltip.TooltipTriggerProps & react.RefAttributes<HTMLButtonElement>>;
13
+ declare const TooltipContent: react.ForwardRefExoticComponent<Omit<_radix_ui_react_tooltip.TooltipContentProps & react.RefAttributes<HTMLDivElement>, "ref"> & react.RefAttributes<HTMLDivElement>>;
14
+
15
+ export { Tooltip, TooltipContent, TooltipProvider, TooltipTrigger };
@@ -0,0 +1,2 @@
1
+ import{a as e}from"./chunk-A5H52ODC.js";import{Content as p,Provider as s,Root as f,Trigger as l}from"@radix-ui/react-tooltip";import{forwardRef as m}from"react";import{jsx as n}from"react/jsx-runtime";var T=({delayDuration:o=0,...t})=>n(s,{delayDuration:o??0,...t}),C=f,g=l,i=m(({children:o,className:t,sideOffset:r=4,...d},a)=>n(p,{ref:a,sideOffset:r,className:e("z-50 overflow-hidden rounded-md bg-tooltip px-3 py-1.5 text-sm text-tooltip shadow animate-in fade-in-0 zoom-in-95 data-side-bottom:slide-in-from-top-2 data-side-left:slide-in-from-right-2 data-side-right:slide-in-from-left-2 data-side-top:slide-in-from-bottom-2 data-state-closed:animate-out data-state-closed:fade-out-0 data-state-closed:zoom-out-95",t),...d,children:o}));i.displayName="TooltipContent";export{C as Tooltip,i as TooltipContent,T as TooltipProvider,g as TooltipTrigger};
2
+ //# sourceMappingURL=tooltip.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../packages/tooltip/src/tooltip.tsx"],"sourcesContent":["import { Content, Provider, Root, Trigger } from \"@radix-ui/react-tooltip\";\nimport { ComponentPropsWithoutRef, ElementRef, forwardRef } from \"react\";\nimport { cx } from \"../../cx\";\n\n/**\n * Wraps your app to provide global functionality to your tooltips.\n */\nconst TooltipProvider = ({ delayDuration = 0, ...props }: ComponentPropsWithoutRef<typeof Provider>) => (\n\t<Provider delayDuration={delayDuration ?? 0} {...props} />\n);\n\nconst Tooltip = Root;\n\nconst TooltipTrigger = Trigger;\n\nconst TooltipContent = forwardRef<ElementRef<typeof Content>, ComponentPropsWithoutRef<typeof Content>>(\n\t({ children, className, sideOffset = 4, ...props }, ref) => (\n\t\t<Content\n\t\t\tref={ref}\n\t\t\tsideOffset={sideOffset}\n\t\t\tclassName={cx(\n\t\t\t\t\"z-50 overflow-hidden rounded-md bg-tooltip px-3 py-1.5 text-sm text-tooltip shadow animate-in fade-in-0 zoom-in-95 data-side-bottom:slide-in-from-top-2 data-side-left:slide-in-from-right-2 data-side-right:slide-in-from-left-2 data-side-top:slide-in-from-bottom-2 data-state-closed:animate-out data-state-closed:fade-out-0 data-state-closed:zoom-out-95\",\n\t\t\t\tclassName,\n\t\t\t)}\n\t\t\t{...props}\n\t\t>\n\t\t\t{children}\n\t\t</Content>\n\t),\n);\nTooltipContent.displayName = \"TooltipContent\";\n\nexport { Tooltip, TooltipTrigger, TooltipContent, TooltipProvider };\n"],"mappings":"wCAAA,OAAS,WAAAA,EAAS,YAAAC,EAAU,QAAAC,EAAM,WAAAC,MAAe,0BACjD,OAA+C,cAAAC,MAAkB,QAOhE,cAAAC,MAAA,oBADD,IAAMC,EAAkB,CAAC,CAAE,cAAAC,EAAgB,EAAG,GAAGC,CAAM,IACtDH,EAACI,EAAA,CAAS,cAAeF,GAAiB,EAAI,GAAGC,EAAO,EAGnDE,EAAUC,EAEVC,EAAiBC,EAEjBC,EAAiBC,EACtB,CAAC,CAAE,SAAAC,EAAU,UAAAC,EAAW,WAAAC,EAAa,EAAG,GAAGV,CAAM,EAAGW,IACnDd,EAACe,EAAA,CACA,IAAKD,EACL,WAAYD,EACZ,UAAWG,EACV,kWACAJ,CACD,EACC,GAAGT,EAEH,SAAAQ,EACF,CAEF,EACAF,EAAe,YAAc","names":["Content","Provider","Root","Trigger","forwardRef","jsx","TooltipProvider","delayDuration","props","Provider","Tooltip","Root","TooltipTrigger","Trigger","TooltipContent","forwardRef","children","className","sideOffset","ref","Content","cx"]}
@@ -0,0 +1,6 @@
1
+ export { W as WithAsChild } from './as-child-BjnPZ1DU.js';
2
+ export { W as WithStyleProps } from './with-style-props-VnLWm0Yd.js';
3
+ export { V as VariantProps } from './variant-props-Dc9PJLzN.js';
4
+ export { D as DeepNonNullable } from './deep-non-nullable-SmpSvoSd.js';
5
+ import 'react';
6
+ import 'class-variance-authority';
package/dist/types.js ADDED
@@ -0,0 +1 @@
1
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
@@ -0,0 +1,11 @@
1
+ import { VariantProps as VariantProps$1 } from 'class-variance-authority';
2
+ import { D as DeepNonNullable } from './deep-non-nullable-SmpSvoSd.js';
3
+
4
+ /**
5
+ * Variant props that are optional and cannot be `null`.
6
+ *
7
+ * Using VariantProps directly from CVA produces that can be `null`, which is not what we want.
8
+ */
9
+ type VariantProps<Variants extends (props?: Record<PropertyKey, unknown> | undefined) => string> = Partial<DeepNonNullable<VariantProps$1<Variants>>>;
10
+
11
+ export type { VariantProps as V };
@@ -1,9 +1,10 @@
1
- import { CSSProperties } from "react";
1
+ import { CSSProperties } from 'react';
2
+
2
3
  /**
3
4
  * Helper type that includes an optional className and style prop for react
4
5
  * components.
5
6
  */
6
- export type WithStyleProps = {
7
+ type WithStyleProps = {
7
8
  /**
8
9
  * A string. Specifies the element’s CSS class name.
9
10
  *
@@ -22,4 +23,5 @@ export type WithStyleProps = {
22
23
  */
23
24
  style?: CSSProperties;
24
25
  };
25
- //# sourceMappingURL=with-style-props.d.ts.map
26
+
27
+ export type { WithStyleProps as W };
package/package.json CHANGED
@@ -3,15 +3,12 @@
3
3
  "description": "mantle is ngrok's UI library and design system.",
4
4
  "author": "ngrok",
5
5
  "license": "MIT",
6
- "version": "0.0.42",
6
+ "version": "0.1.1",
7
7
  "homepage": "https://mantle.ngrok.com",
8
8
  "repository": {
9
9
  "type": "git",
10
10
  "url": "https://github.com/ngrok-oss/mantle"
11
11
  },
12
- "workspaces": [
13
- "packages/*"
14
- ],
15
12
  "sideEffects": [
16
13
  "*.css"
17
14
  ],
@@ -19,18 +16,6 @@
19
16
  "browserslist": [
20
17
  "last 2 years, not dead, > 0.2%"
21
18
  ],
22
- "main": "./dist/index.js",
23
- "source": "./components/index.tsx",
24
- "types": "./dist/components/index.d.ts",
25
- "exports": {
26
- ".": {
27
- "import": "./dist/index.js",
28
- "require": "./dist/index.js",
29
- "types": "./dist/components/index.d.ts",
30
- "default": "./dist/index.js"
31
- },
32
- "./mantle.css": "./assets/mantle.css"
33
- },
34
19
  "files": [
35
20
  "dist",
36
21
  "assets"
@@ -40,7 +25,6 @@
40
25
  },
41
26
  "dependencies": {
42
27
  "@ariakit/react": "0.4.5",
43
- "@phosphor-icons/react": "2.0.15",
44
28
  "@radix-ui/react-checkbox": "1.0.4",
45
29
  "@radix-ui/react-dialog": "1.0.5",
46
30
  "@radix-ui/react-dropdown-menu": "2.0.6",
@@ -59,35 +43,24 @@
59
43
  "isbot": "5.1.4",
60
44
  "prismjs": "1.29.0",
61
45
  "tailwind-merge": "2.2.2",
46
+ "tailwindcss-animate": "1.0.7",
62
47
  "tiny-invariant": "1.3.3"
63
48
  },
64
49
  "devDependencies": {
65
- "@chromatic-com/storybook": "1.3.0",
66
50
  "@commander-js/extra-typings": "12.0.1",
67
51
  "@ianvs/prettier-plugin-sort-imports": "4.2.1",
68
- "@parcel/packager-ts": "2.12.0",
69
- "@parcel/transformer-typescript-types": "2.12.0",
52
+ "@phosphor-icons/react": "2.1.3",
70
53
  "@remix-run/dev": "2.8.1",
71
54
  "@remix-run/eslint-config": "2.8.1",
72
- "@storybook/addon-essentials": "7.6.17",
73
- "@storybook/addon-interactions": "7.6.17",
74
- "@storybook/addon-links": "7.6.17",
75
- "@storybook/addon-onboarding": "1.0.11",
76
- "@storybook/addon-styling": "1.3.7",
77
- "@storybook/blocks": "7.6.17",
78
- "@storybook/builder-vite": "7.6.17",
79
- "@storybook/react": "7.6.17",
80
- "@storybook/react-vite": "7.6.17",
81
- "@storybook/testing-library": "0.2.2",
82
- "@testing-library/react": "14.2.2",
55
+ "@testing-library/react": "14.3.0",
83
56
  "@testing-library/user-event": "14.5.2",
84
- "@types/node": "20.12.4",
57
+ "@types/node": "20.12.5",
85
58
  "@types/prismjs": "1.26.3",
86
59
  "@types/react": "18.2.74",
87
60
  "@types/react-dom": "18.2.24",
88
61
  "@typescript-eslint/eslint-plugin": "7.5.0",
89
62
  "@typescript-eslint/parser": "7.5.0",
90
- "@vitejs/plugin-react-swc": "3.6.0",
63
+ "@vitejs/plugin-react": "4.2.1",
91
64
  "@vitest/ui": "1.4.0",
92
65
  "autoprefixer": "10.4.19",
93
66
  "browserslist": "4.23.0",
@@ -97,19 +70,16 @@
97
70
  "eslint-config-prettier": "9.1.0",
98
71
  "eslint-plugin-react": "7.34.1",
99
72
  "eslint-plugin-react-hooks": "4.6.0",
100
- "eslint-plugin-storybook": "0.8.0",
101
73
  "fast-glob": "3.3.2",
102
74
  "jsdom": "24.0.0",
103
- "parcel": "2.12.0",
104
75
  "postcss": "8.4.38",
105
76
  "prettier": "3.2.5",
106
77
  "prettier-plugin-tailwindcss": "0.5.13",
107
78
  "react": "18.2.0",
108
79
  "react-dom": "18.2.0",
109
80
  "react-router-dom": "6.22.3",
110
- "storybook": "7.6.17",
111
81
  "tailwindcss": "3.4.3",
112
- "tailwindcss-animate": "1.0.7",
82
+ "tsup": "8.0.2",
113
83
  "tsx": "4.7.2",
114
84
  "typescript": "5.4.4",
115
85
  "vite": "5.2.8",
@@ -119,17 +89,115 @@
119
89
  "zod": "3.22.4"
120
90
  },
121
91
  "peerDependencies": {
92
+ "@phosphor-icons/react": "2.1.3",
122
93
  "@types/react": "^18.2.0",
123
94
  "@types/react-dom": "^18.2.0",
95
+ "postcss": "^8.0.0",
124
96
  "react": "^18.2.0",
125
97
  "react-dom": "^18.2.0",
98
+ "tailwindcss": "^3.4.3",
126
99
  "zod": "^3.22.4"
127
100
  },
101
+ "exports": {
102
+ "./mantle.css": "./assets/mantle.css",
103
+ "./tailwind-preset": {
104
+ "import": "./dist/tailwind-preset.js",
105
+ "types": "./dist/tailwind-preset.d.ts"
106
+ },
107
+ "./alert": {
108
+ "import": "./dist/alert.js",
109
+ "types": "./dist/alert.d.ts"
110
+ },
111
+ "./anchor": {
112
+ "import": "./dist/anchor.js",
113
+ "types": "./dist/anchor.d.ts"
114
+ },
115
+ "./button": {
116
+ "import": "./dist/button.js",
117
+ "types": "./dist/button.d.ts"
118
+ },
119
+ "./card": {
120
+ "import": "./dist/card.js",
121
+ "types": "./dist/card.d.ts"
122
+ },
123
+ "./checkbox": {
124
+ "import": "./dist/checkbox.js",
125
+ "types": "./dist/checkbox.d.ts"
126
+ },
127
+ "./code-block": {
128
+ "import": "./dist/code-block.js",
129
+ "types": "./dist/code-block.d.ts"
130
+ },
131
+ "./core": {
132
+ "import": "./dist/core.js",
133
+ "types": "./dist/core.d.ts"
134
+ },
135
+ "./dialog": {
136
+ "import": "./dist/dialog.js",
137
+ "types": "./dist/dialog.d.ts"
138
+ },
139
+ "./dropdown-menu": {
140
+ "import": "./dist/dropdown-menu.js",
141
+ "types": "./dist/dropdown-menu.d.ts"
142
+ },
143
+ "./icon": {
144
+ "import": "./dist/icon.js",
145
+ "types": "./dist/icon.d.ts"
146
+ },
147
+ "./inline-code": {
148
+ "import": "./dist/inline-code.js",
149
+ "types": "./dist/inline-code.d.ts"
150
+ },
151
+ "./input": {
152
+ "import": "./dist/input.js",
153
+ "types": "./dist/input.d.ts"
154
+ },
155
+ "./media-object": {
156
+ "import": "./dist/media-object.js",
157
+ "types": "./dist/media-object.d.ts"
158
+ },
159
+ "./popover": {
160
+ "import": "./dist/popover.js",
161
+ "types": "./dist/popover.d.ts"
162
+ },
163
+ "./select": {
164
+ "import": "./dist/select.js",
165
+ "types": "./dist/select.d.ts"
166
+ },
167
+ "./separator": {
168
+ "import": "./dist/separator.js",
169
+ "types": "./dist/separator.d.ts"
170
+ },
171
+ "./sheet": {
172
+ "import": "./dist/sheet.js",
173
+ "types": "./dist/sheet.d.ts"
174
+ },
175
+ "./skeleton": {
176
+ "import": "./dist/skeleton.js",
177
+ "types": "./dist/skeleton.d.ts"
178
+ },
179
+ "./table": {
180
+ "import": "./dist/table.js",
181
+ "types": "./dist/table.d.ts"
182
+ },
183
+ "./text-area": {
184
+ "import": "./dist/text-area.js",
185
+ "types": "./dist/text-area.d.ts"
186
+ },
187
+ "./theme-provider": {
188
+ "import": "./dist/theme-provider.js",
189
+ "types": "./dist/theme-provider.d.ts"
190
+ },
191
+ "./tooltip": {
192
+ "import": "./dist/tooltip.js",
193
+ "types": "./dist/tooltip.d.ts"
194
+ },
195
+ "./types": {
196
+ "types": "./dist/types.d.ts"
197
+ }
198
+ },
128
199
  "scripts": {
129
- "build-storybook": "storybook build",
130
- "build:types": "tsc --project ./tsconfig.publish.json",
131
- "build": "rm -rf dist .parcel-cache && parcel build --no-cache --dist-dir dist && pnpm run build:types",
132
- "cmd:storybook": "STORYBOOK_DISABLE_TELEMETRY=1 storybook",
200
+ "build": "rm -rf dist && tsup",
133
201
  "docs:build": "remix build",
134
202
  "docs:dev": "remix dev --manual",
135
203
  "docs:serve": "remix-serve ./build/index.js",
@@ -137,7 +205,6 @@
137
205
  "fmt": "prettier --write .",
138
206
  "gen:docs-routes": "tsx scripts/gen-docs-routes",
139
207
  "lint": "eslint . --ext ts,tsx --report-unused-disable-directives --max-warnings 0",
140
- "storybook": "storybook dev -p 6006",
141
208
  "test": "TZ=UTC vitest",
142
209
  "typecheck": "tsc --incremental --noEmit --skipLibCheck"
143
210
  }
@@ -1,2 +0,0 @@
1
- export { Alert, AlertContent, AlertTitle, AlertDescription } from "./src/alert";
2
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../components/alert/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC"}
@@ -1,21 +0,0 @@
1
- import type { HTMLAttributes } from "react";
2
- /**
3
- * Displays a callout for user attention.
4
- */
5
- declare const Alert: import("react").ForwardRefExoticComponent<HTMLAttributes<HTMLDivElement> & Partial<import("../../types").DeepNonNullable<import("class-variance-authority").VariantProps<(props?: ({
6
- priority?: "danger" | "default" | "info" | "success" | "warning" | null | undefined;
7
- } & import("class-variance-authority/types").ClassProp) | undefined) => string>>> & import("react").RefAttributes<HTMLDivElement>>;
8
- /**
9
- * The container for the content slot of an alert. Place the title and description as direct children.
10
- */
11
- declare const AlertContent: import("react").ForwardRefExoticComponent<HTMLAttributes<HTMLDivElement> & import("react").RefAttributes<HTMLDivElement>>;
12
- /**
13
- * The title of an alert.
14
- */
15
- declare const AlertTitle: import("react").ForwardRefExoticComponent<HTMLAttributes<HTMLHeadingElement> & import("react").RefAttributes<HTMLParagraphElement>>;
16
- /**
17
- * The description of an alert.
18
- */
19
- declare const AlertDescription: import("react").ForwardRefExoticComponent<HTMLAttributes<HTMLParagraphElement> & import("react").RefAttributes<HTMLParagraphElement>>;
20
- export { Alert, AlertContent, AlertTitle, AlertDescription };
21
- //# sourceMappingURL=alert.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"alert.d.ts","sourceRoot":"","sources":["../../../../components/alert/src/alert.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AA0B5C;;GAEG;AACH,QAAA,MAAM,KAAK;;kIAIV,CAAC;AAGF;;GAEG;AACH,QAAA,MAAM,YAAY,2HAEhB,CAAC;AAGH;;GAEG;AACH,QAAA,MAAM,UAAU,qIAEf,CAAC;AAGF;;GAEG;AACH,QAAA,MAAM,gBAAgB,uIAErB,CAAC;AAGF,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,UAAU,EAAE,gBAAgB,EAAE,CAAC"}
@@ -1,2 +0,0 @@
1
- export { Anchor, anchorClassNames } from "./src/anchor";
2
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../components/anchor/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC"}