@nayhoo/ui 0.11.1 → 0.13.0

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 (215) hide show
  1. package/dist/{chunk-V5HG6GHI.mjs → chunk-24DFRL5Q.mjs} +13 -10
  2. package/dist/chunk-24DFRL5Q.mjs.map +1 -0
  3. package/dist/{chunk-OCXG5SMA.mjs → chunk-2WZQZIYN.mjs} +8 -5
  4. package/dist/chunk-2WZQZIYN.mjs.map +1 -0
  5. package/dist/chunk-66WXCRN4.mjs +12 -0
  6. package/dist/chunk-66WXCRN4.mjs.map +1 -0
  7. package/dist/chunk-BALC5CGU.mjs +23 -0
  8. package/dist/chunk-BALC5CGU.mjs.map +1 -0
  9. package/dist/chunk-DQ4T4WV3.mjs +16 -0
  10. package/dist/chunk-DQ4T4WV3.mjs.map +1 -0
  11. package/dist/{chunk-C53FYO65.mjs → chunk-ELXCOK2T.mjs} +8 -5
  12. package/dist/chunk-ELXCOK2T.mjs.map +1 -0
  13. package/dist/chunk-GED6IT3S.mjs +1 -0
  14. package/dist/{chunk-JMSIWH37.mjs → chunk-JCN2TBLD.mjs} +10 -10
  15. package/dist/chunk-JCN2TBLD.mjs.map +1 -0
  16. package/dist/chunk-KE7EIF6L.mjs +12 -0
  17. package/dist/chunk-KE7EIF6L.mjs.map +1 -0
  18. package/dist/{chunk-OKNO3BFR.mjs → chunk-L2MODHAE.mjs} +12 -9
  19. package/dist/chunk-L2MODHAE.mjs.map +1 -0
  20. package/dist/{chunk-WPNBONR3.mjs → chunk-LSB5JVS2.mjs} +1 -1
  21. package/dist/chunk-LSB5JVS2.mjs.map +1 -0
  22. package/dist/{chunk-HNOMBFLC.mjs → chunk-MIRMF5N3.mjs} +8 -5
  23. package/dist/chunk-MIRMF5N3.mjs.map +1 -0
  24. package/dist/chunk-S6KKPOPH.mjs +12 -0
  25. package/dist/chunk-S6KKPOPH.mjs.map +1 -0
  26. package/dist/{chunk-L5HQ3AVO.mjs → chunk-XWF2DDXB.mjs} +9 -6
  27. package/dist/chunk-XWF2DDXB.mjs.map +1 -0
  28. package/dist/components/avatar.d.mts +1 -1
  29. package/dist/components/avatar.d.ts +1 -1
  30. package/dist/components/avatar.js +34 -9
  31. package/dist/components/avatar.js.map +1 -1
  32. package/dist/components/avatar.mjs +18 -11
  33. package/dist/components/avatar.mjs.map +1 -1
  34. package/dist/components/badge.d.mts +1 -1
  35. package/dist/components/badge.d.ts +1 -1
  36. package/dist/components/badge.js +24 -5
  37. package/dist/components/badge.js.map +1 -1
  38. package/dist/components/badge.mjs +8 -4
  39. package/dist/components/badge.mjs.map +1 -1
  40. package/dist/components/box.d.mts +1 -1
  41. package/dist/components/box.d.ts +1 -1
  42. package/dist/components/box.js.map +1 -1
  43. package/dist/components/box.mjs +1 -1
  44. package/dist/components/button.css +25 -25
  45. package/dist/components/button.css.map +1 -1
  46. package/dist/components/button.js +35 -13
  47. package/dist/components/button.js.map +1 -1
  48. package/dist/components/button.mjs +5 -4
  49. package/dist/components/card.d.mts +1 -1
  50. package/dist/components/card.d.ts +1 -1
  51. package/dist/components/card.js.map +1 -1
  52. package/dist/components/card.mjs.map +1 -1
  53. package/dist/components/checkbox.d.mts +1 -1
  54. package/dist/components/checkbox.d.ts +1 -1
  55. package/dist/components/checkbox.js +26 -6
  56. package/dist/components/checkbox.js.map +1 -1
  57. package/dist/components/checkbox.mjs +10 -5
  58. package/dist/components/checkbox.mjs.map +1 -1
  59. package/dist/components/container.d.mts +1 -1
  60. package/dist/components/container.d.ts +1 -1
  61. package/dist/components/container.js +24 -5
  62. package/dist/components/container.js.map +1 -1
  63. package/dist/components/container.mjs +8 -4
  64. package/dist/components/container.mjs.map +1 -1
  65. package/dist/components/dropdown-menu.css +126 -126
  66. package/dist/components/dropdown-menu.css.map +1 -1
  67. package/dist/components/dropdown-menu.d.mts +5 -1
  68. package/dist/components/dropdown-menu.d.ts +5 -1
  69. package/dist/components/dropdown-menu.js +24 -5
  70. package/dist/components/dropdown-menu.js.map +1 -1
  71. package/dist/components/dropdown-menu.mjs +5 -4
  72. package/dist/components/dropdown-menu.mjs.map +1 -1
  73. package/dist/components/flex.css +126 -126
  74. package/dist/components/flex.css.map +1 -1
  75. package/dist/components/flex.d.mts +1 -1
  76. package/dist/components/flex.d.ts +1 -1
  77. package/dist/components/flex.js +27 -8
  78. package/dist/components/flex.js.map +1 -1
  79. package/dist/components/flex.mjs +4 -3
  80. package/dist/components/form.d.mts +4 -1
  81. package/dist/components/form.d.ts +4 -1
  82. package/dist/components/form.js +26 -7
  83. package/dist/components/form.js.map +1 -1
  84. package/dist/components/form.mjs +10 -6
  85. package/dist/components/form.mjs.map +1 -1
  86. package/dist/components/grid.css +306 -306
  87. package/dist/components/grid.css.map +1 -1
  88. package/dist/components/grid.d.mts +1 -1
  89. package/dist/components/grid.d.ts +1 -1
  90. package/dist/components/grid.js +27 -8
  91. package/dist/components/grid.js.map +1 -1
  92. package/dist/components/grid.mjs +9 -5
  93. package/dist/components/grid.mjs.map +1 -1
  94. package/dist/components/icon-button.d.mts +1 -1
  95. package/dist/components/icon-button.d.ts +1 -1
  96. package/dist/components/icon-button.js +32 -10
  97. package/dist/components/icon-button.js.map +1 -1
  98. package/dist/components/icon-button.mjs +4 -3
  99. package/dist/components/label.d.mts +1 -1
  100. package/dist/components/label.d.ts +1 -1
  101. package/dist/components/label.js.map +1 -1
  102. package/dist/components/label.mjs.map +1 -1
  103. package/dist/components/link.d.mts +1 -1
  104. package/dist/components/link.d.ts +1 -1
  105. package/dist/components/link.js +24 -5
  106. package/dist/components/link.js.map +1 -1
  107. package/dist/components/link.mjs +8 -4
  108. package/dist/components/link.mjs.map +1 -1
  109. package/dist/components/menu.css +126 -126
  110. package/dist/components/menu.css.map +1 -1
  111. package/dist/components/menu.d.mts +3 -1
  112. package/dist/components/menu.d.ts +3 -1
  113. package/dist/components/menu.js +24 -5
  114. package/dist/components/menu.js.map +1 -1
  115. package/dist/components/menu.mjs +5 -4
  116. package/dist/components/menu.mjs.map +1 -1
  117. package/dist/components/panel.d.mts +1 -1
  118. package/dist/components/panel.d.ts +1 -1
  119. package/dist/components/panel.js.map +1 -1
  120. package/dist/components/panel.mjs.map +1 -1
  121. package/dist/components/paragraph.d.mts +1 -1
  122. package/dist/components/paragraph.d.ts +1 -1
  123. package/dist/components/paragraph.js.map +1 -1
  124. package/dist/components/paragraph.mjs.map +1 -1
  125. package/dist/components/popover.d.mts +4 -1
  126. package/dist/components/popover.d.ts +4 -1
  127. package/dist/components/popover.js.map +1 -1
  128. package/dist/components/popover.mjs +2 -2
  129. package/dist/components/popover.mjs.map +1 -1
  130. package/dist/components/select.css +25 -25
  131. package/dist/components/select.css.map +1 -1
  132. package/dist/components/select.d.mts +3 -1
  133. package/dist/components/select.d.ts +3 -1
  134. package/dist/components/select.js +32 -10
  135. package/dist/components/select.js.map +1 -1
  136. package/dist/components/select.mjs +5 -4
  137. package/dist/components/select.mjs.map +1 -1
  138. package/dist/components/separator.d.mts +1 -1
  139. package/dist/components/separator.d.ts +1 -1
  140. package/dist/components/separator.js.map +1 -1
  141. package/dist/components/separator.mjs.map +1 -1
  142. package/dist/components/skeleton.d.mts +1 -1
  143. package/dist/components/skeleton.d.ts +1 -1
  144. package/dist/components/skeleton.js +24 -5
  145. package/dist/components/skeleton.js.map +1 -1
  146. package/dist/components/skeleton.mjs +8 -4
  147. package/dist/components/skeleton.mjs.map +1 -1
  148. package/dist/components/spinner.d.mts +1 -1
  149. package/dist/components/spinner.d.ts +1 -1
  150. package/dist/components/spinner.js +24 -5
  151. package/dist/components/spinner.js.map +1 -1
  152. package/dist/components/spinner.mjs +3 -2
  153. package/dist/components/status.d.mts +1 -1
  154. package/dist/components/status.d.ts +1 -1
  155. package/dist/components/status.js +24 -5
  156. package/dist/components/status.js.map +1 -1
  157. package/dist/components/status.mjs +3 -2
  158. package/dist/components/switch.d.mts +1 -1
  159. package/dist/components/switch.d.ts +1 -1
  160. package/dist/components/switch.js +31 -9
  161. package/dist/components/switch.js.map +1 -1
  162. package/dist/components/switch.mjs +15 -8
  163. package/dist/components/switch.mjs.map +1 -1
  164. package/dist/components/text-field.d.mts +1 -1
  165. package/dist/components/text-field.d.ts +1 -1
  166. package/dist/components/text-field.js +24 -5
  167. package/dist/components/text-field.js.map +1 -1
  168. package/dist/components/text-field.mjs +8 -4
  169. package/dist/components/text-field.mjs.map +1 -1
  170. package/dist/components/text.d.mts +1 -1
  171. package/dist/components/text.d.ts +1 -1
  172. package/dist/components/text.js +24 -5
  173. package/dist/components/text.js.map +1 -1
  174. package/dist/components/text.mjs +3 -2
  175. package/dist/components/tooltip.d.mts +1 -1
  176. package/dist/components/tooltip.d.ts +1 -1
  177. package/dist/components/tooltip.js +28 -6
  178. package/dist/components/tooltip.js.map +1 -1
  179. package/dist/components/tooltip.mjs +14 -10
  180. package/dist/components/tooltip.mjs.map +1 -1
  181. package/dist/providers/index.css +25 -25
  182. package/dist/providers/index.css.map +1 -1
  183. package/dist/providers/index.js +48 -20
  184. package/dist/providers/index.js.map +1 -1
  185. package/dist/providers/index.mjs +8 -7
  186. package/dist/providers/index.mjs.map +1 -1
  187. package/dist/theme/index.css +457 -457
  188. package/dist/theme/index.css.map +1 -1
  189. package/dist/theme/index.js +9 -9
  190. package/dist/theme/index.js.map +1 -1
  191. package/dist/theme/index.mjs +4 -4
  192. package/dist/utils/index.d.mts +3 -1
  193. package/dist/utils/index.d.ts +3 -1
  194. package/dist/utils/index.js +11 -0
  195. package/dist/utils/index.js.map +1 -1
  196. package/dist/utils/index.mjs +4 -2
  197. package/package.json +3 -3
  198. package/dist/chunk-2HP5I6IA.mjs +0 -12
  199. package/dist/chunk-2HP5I6IA.mjs.map +0 -1
  200. package/dist/chunk-4N6P3Y54.mjs +0 -13
  201. package/dist/chunk-4N6P3Y54.mjs.map +0 -1
  202. package/dist/chunk-C53FYO65.mjs.map +0 -1
  203. package/dist/chunk-CYDWEPFL.mjs +0 -1
  204. package/dist/chunk-HNOMBFLC.mjs.map +0 -1
  205. package/dist/chunk-JMSIWH37.mjs.map +0 -1
  206. package/dist/chunk-L5HQ3AVO.mjs.map +0 -1
  207. package/dist/chunk-OCXG5SMA.mjs.map +0 -1
  208. package/dist/chunk-OKNO3BFR.mjs.map +0 -1
  209. package/dist/chunk-OQCPCSYI.mjs +0 -12
  210. package/dist/chunk-OQCPCSYI.mjs.map +0 -1
  211. package/dist/chunk-TVN4PN7X.mjs +0 -12
  212. package/dist/chunk-TVN4PN7X.mjs.map +0 -1
  213. package/dist/chunk-V5HG6GHI.mjs.map +0 -1
  214. package/dist/chunk-WPNBONR3.mjs.map +0 -1
  215. /package/dist/{chunk-CYDWEPFL.mjs.map → chunk-GED6IT3S.mjs.map} +0 -0
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/components/switch.tsx","../../src/theme/recipes/switch.css.ts","../../src/utils/merge-classes.ts","../../src/utils/pick.ts"],"sourcesContent":["import {\n switchRecipe,\n switchThumbRecipe,\n SwitchThumbVariants,\n SwitchVariants,\n} from \"@/theme/recipes/switch.css\";\nimport { mergeClasses } from \"@/utils/merge-classes\";\nimport { pick } from \"@/utils/pick\";\nimport * as SwitchPrimitive from \"@radix-ui/react-switch\";\n\ntype SwitchThumbProps = SwitchPrimitive.SwitchThumbProps & SwitchThumbVariants;\n\nexport const SwitchThumb = ({ ...props }: SwitchThumbProps) => {\n const variants = pick(props, ...switchThumbRecipe.variants());\n const switchThumb = switchThumbRecipe(variants);\n\n return (\n <SwitchPrimitive.Thumb\n {...props}\n className={mergeClasses(switchThumb, props.className)}\n />\n );\n};\n\ntype SwitchProps = SwitchPrimitive.SwitchProps & SwitchVariants;\n\nexport const Switch = ({ ...props }: SwitchProps) => {\n const variants = pick(props, ...switchRecipe.variants());\n const _switch = switchRecipe(variants); // 'switch' is not allowed as a variable declaration name.ts(1389)\n\n return (\n <SwitchPrimitive.Root\n {...props}\n className={mergeClasses(_switch, props.className)}\n >\n <SwitchThumb size={variants.size} />\n </SwitchPrimitive.Root>\n );\n};\n","import 'src/theme/recipes/switch.css.ts.vanilla.css?source=#H4sIAAAAAAAAA51T0W6bMBR9z1dYfUqluQLarClVn/YH0x4mTRO6tm+wG4M925Sk0/59wjSEopAuEwhj+9577jk+vvGtClwW/fAVubJYFKnQn/1zmpDfC0JA65w0tcfwuCCEAd+WzjS1oNxo43LyAm5J+4mnXkPA/rsqivShZrgW6b66jrnGCXTUgVCNPyR2M0U3jdZDfFaaGG+NV0GZOicONQT1gt0qbZFtVaABLJWqlFqVMhyacSWDZfKJvL3Xj4s/i5uzHPON4Y2PTJnZUS9BmDYnSXwyu5vltx7xs/8A9ENAAOoDBHy64hL5FsXVzx54RlSPFdRB8S89uHWqArc/jA9Hwfiv+Qa8esUiHfpII2KrRJADjHpFT1cj/XnUX2In7fuou1EU+wA0G0CzOdD7UTmcBZ22NgX9JpuKTfS+PWFeobzVsM8J04ZvT9u5lSrg/7g1OKgPfo3/G+MqkiZJ5Yftbultt7PQ92VmdzG5VVpTLqEucZT9/hIA80Y3fXMaNyEnSSxsbN4Z9bwsExfczR3I7YgXzB7INOoS5DP34LRGaRJF+hDjaLfVmF2WdNocefTzS6pd3vG67/gvekyJa14FAAA=';\nimport { createRuntimeFn as _7a468 } from '@vanilla-extract/recipes/createRuntimeFn';\nexport var switchRecipe = _7a468({defaultClassName:'switch_switchRecipe__1dl6sj10',variantClassNames:{size:{'1':'switch_switchRecipe_size_1__1dl6sj11','2':'switch_switchRecipe_size_2__1dl6sj12'}},defaultVariants:{size:'1'},compoundVariants:[]});\nexport var switchThumbRecipe = _7a468({defaultClassName:'switch_switchThumbRecipe__1dl6sj13',variantClassNames:{size:{'1':'switch_switchThumbRecipe_size_1__1dl6sj14','2':'switch_switchThumbRecipe_size_2__1dl6sj15'}},defaultVariants:{size:'1'},compoundVariants:[]});","export function mergeClasses(...classes: (string | undefined)[]): string {\n return classes.filter((cls): cls is string => Boolean(cls)).join(\" \");\n}\n","/**\n * https://stackoverflow.com/a/47232883\n */\nexport function pick<T, K extends keyof T>(obj: T, ...keys: K[]): Pick<T, K> {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const ret: any = {};\n keys.forEach((key) => {\n ret[key] = obj[key];\n });\n\n return ret;\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACCA,6BAA0C;AACnC,IAAI,mBAAe,uBAAAA,iBAAO,EAAC,kBAAiB,iCAAgC,mBAAkB,EAAC,MAAK,EAAC,KAAI,wCAAuC,KAAI,uCAAsC,EAAC,GAAE,iBAAgB,EAAC,MAAK,IAAG,GAAE,kBAAiB,CAAC,EAAC,CAAC;AAC5O,IAAI,wBAAoB,uBAAAA,iBAAO,EAAC,kBAAiB,sCAAqC,mBAAkB,EAAC,MAAK,EAAC,KAAI,6CAA4C,KAAI,4CAA2C,EAAC,GAAE,iBAAgB,EAAC,MAAK,IAAG,GAAE,kBAAiB,CAAC,EAAC,CAAC;;;ACHhQ,SAAS,gBAAgB,SAAyC;AACvE,SAAO,QAAQ,OAAO,CAAC,QAAuB,QAAQ,GAAG,CAAC,EAAE,KAAK,GAAG;AACtE;;;ACCO,SAAS,KAA2B,QAAW,MAAuB;AAE3E,QAAM,MAAW,CAAC;AAClB,OAAK,QAAQ,CAAC,QAAQ;AACpB,QAAI,GAAG,IAAI,IAAI,GAAG;AAAA,EACpB,CAAC;AAED,SAAO;AACT;;;AHHA,sBAAiC;AAS7B;AALG,IAAM,cAAc,CAAC,EAAE,GAAG,MAAM,MAAwB;AAC7D,QAAM,WAAW,KAAK,OAAO,GAAG,kBAAkB,SAAS,CAAC;AAC5D,QAAM,cAAc,kBAAkB,QAAQ;AAE9C,SACE;AAAA,IAAiB;AAAA,IAAhB;AAAA,MACE,GAAG;AAAA,MACJ,WAAW,aAAa,aAAa,MAAM,SAAS;AAAA;AAAA,EACtD;AAEJ;AAIO,IAAM,SAAS,CAAC,EAAE,GAAG,MAAM,MAAmB;AACnD,QAAM,WAAW,KAAK,OAAO,GAAG,aAAa,SAAS,CAAC;AACvD,QAAM,UAAU,aAAa,QAAQ;AAErC,SACE;AAAA,IAAiB;AAAA,IAAhB;AAAA,MACE,GAAG;AAAA,MACJ,WAAW,aAAa,SAAS,MAAM,SAAS;AAAA,MAEhD,sDAAC,eAAY,MAAM,SAAS,MAAM;AAAA;AAAA,EACpC;AAEJ;","names":["_7a468"]}
1
+ {"version":3,"sources":["../../src/components/switch.tsx","../../src/theme/recipes/switch.css.ts","../../src/utils/omit.ts","../../src/utils/pick.ts","../../src/utils/get-variants.ts","../../src/utils/merge-classes.ts"],"sourcesContent":["import {\n switchRecipe,\n switchThumbRecipe,\n SwitchThumbVariants,\n SwitchVariants,\n} from \"@/theme/recipes/switch.css\";\nimport { extractVariantsFromProps } from \"@/utils/get-variants\";\nimport { mergeClasses } from \"@/utils/merge-classes\";\nimport * as SwitchPrimitive from \"@radix-ui/react-switch\";\n\nexport type SwitchThumbProps = SwitchPrimitive.SwitchThumbProps &\n SwitchThumbVariants;\n\nexport const SwitchThumb = ({ ...props }: SwitchThumbProps) => {\n const [variants, rest] = extractVariantsFromProps(\n props,\n ...switchThumbRecipe.variants(),\n );\n const switchThumb = switchThumbRecipe(variants);\n\n return (\n <SwitchPrimitive.Thumb\n {...rest}\n className={mergeClasses(switchThumb, rest.className)}\n />\n );\n};\n\nexport type SwitchProps = SwitchPrimitive.SwitchProps & SwitchVariants;\n\nexport const Switch = ({ ...props }: SwitchProps) => {\n const [variants, rest] = extractVariantsFromProps(\n props,\n ...switchRecipe.variants(),\n );\n const _switch = switchRecipe(variants); // 'switch' is not allowed as a variable declaration name.ts(1389)\n\n return (\n <SwitchPrimitive.Root\n {...rest}\n className={mergeClasses(_switch, rest.className)}\n >\n <SwitchThumb size={variants.size} />\n </SwitchPrimitive.Root>\n );\n};\n","import 'src/theme/recipes/switch.css.ts.vanilla.css?source=#H4sIAAAAAAAAA51T0W6bMBR9z1dYfUqluQLarClVn/YH0x4mTRO6tm+wG4M925Sk0/59wjSEopAuEwhj+9577jk+vvGtClwW/fAVubJYFKnQn/1zmpDfC0JA65w0tcfwuCCEAd+WzjS1oNxo43LyAm5J+4mnXkPA/rsqivShZrgW6b66jrnGCXTUgVCNPyR2M0U3jdZDfFaaGG+NV0GZOicONQT1gt0qbZFtVaABLJWqlFqVMhyacSWDZfKJvL3Xj4s/i5uzHPON4Y2PTJnZUS9BmDYnSXwyu5vltx7xs/8A9ENAAOoDBHy64hL5FsXVzx54RlSPFdRB8S89uHWqArc/jA9Hwfiv+Qa8esUiHfpII2KrRJADjHpFT1cj/XnUX2In7fuou1EU+wA0G0CzOdD7UTmcBZ22NgX9JpuKTfS+PWFeobzVsM8J04ZvT9u5lSrg/7g1OKgPfo3/G+MqkiZJ5Yftbultt7PQ92VmdzG5VVpTLqEucZT9/hIA80Y3fXMaNyEnSSxsbN4Z9bwsExfczR3I7YgXzB7INOoS5DP34LRGaRJF+hDjaLfVmF2WdNocefTzS6pd3vG67/gvekyJa14FAAA=';\nimport { createRuntimeFn as _7a468 } from '@vanilla-extract/recipes/createRuntimeFn';\nexport var switchRecipe = _7a468({defaultClassName:'switch_switchRecipe__1dl6sj10',variantClassNames:{size:{'1':'switch_switchRecipe_size_1__1dl6sj11','2':'switch_switchRecipe_size_2__1dl6sj12'}},defaultVariants:{size:'1'},compoundVariants:[]});\nexport var switchThumbRecipe = _7a468({defaultClassName:'switch_switchThumbRecipe__1dl6sj13',variantClassNames:{size:{'1':'switch_switchThumbRecipe_size_1__1dl6sj14','2':'switch_switchThumbRecipe_size_2__1dl6sj15'}},defaultVariants:{size:'1'},compoundVariants:[]});","export function omit<T, K extends keyof T>(obj: T, ...keys: K[]): Omit<T, K> {\n const ret = { ...obj };\n keys.forEach((key) => {\n delete ret[key];\n });\n\n return ret;\n}\n","/**\n * https://stackoverflow.com/a/47232883\n */\nexport function pick<T, K extends keyof T>(obj: T, ...keys: K[]): Pick<T, K> {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const ret: any = {};\n keys.forEach((key) => {\n ret[key] = obj[key];\n });\n\n return ret;\n}\n","import { omit } from \"./omit\";\nimport { pick } from \"./pick\";\n\n/**\n * TODO\n * @param obj\n * @param keys\n * @returns [variants, props]\n */\nexport function extractVariantsFromProps<T, K extends keyof T>(\n obj: T,\n ...keys: K[]\n): [Pick<T, K>, Omit<T, K>] {\n const variants = pick(obj, ...keys);\n const rest = omit(obj, ...keys);\n\n return [variants, rest];\n}\n","export function mergeClasses(...classes: (string | undefined)[]): string {\n return classes.filter((cls): cls is string => Boolean(cls)).join(\" \");\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACCA,6BAA0C;AACnC,IAAI,mBAAe,uBAAAA,iBAAO,EAAC,kBAAiB,iCAAgC,mBAAkB,EAAC,MAAK,EAAC,KAAI,wCAAuC,KAAI,uCAAsC,EAAC,GAAE,iBAAgB,EAAC,MAAK,IAAG,GAAE,kBAAiB,CAAC,EAAC,CAAC;AAC5O,IAAI,wBAAoB,uBAAAA,iBAAO,EAAC,kBAAiB,sCAAqC,mBAAkB,EAAC,MAAK,EAAC,KAAI,6CAA4C,KAAI,4CAA2C,EAAC,GAAE,iBAAgB,EAAC,MAAK,IAAG,GAAE,kBAAiB,CAAC,EAAC,CAAC;;;ACHhQ,SAAS,KAA2B,QAAW,MAAuB;AAC3E,QAAM,MAAM,EAAE,GAAG,IAAI;AACrB,OAAK,QAAQ,CAAC,QAAQ;AACpB,WAAO,IAAI,GAAG;AAAA,EAChB,CAAC;AAED,SAAO;AACT;;;ACJO,SAAS,KAA2B,QAAW,MAAuB;AAE3E,QAAM,MAAW,CAAC;AAClB,OAAK,QAAQ,CAAC,QAAQ;AACpB,QAAI,GAAG,IAAI,IAAI,GAAG;AAAA,EACpB,CAAC;AAED,SAAO;AACT;;;ACFO,SAAS,yBACd,QACG,MACuB;AAC1B,QAAM,WAAW,KAAK,KAAK,GAAG,IAAI;AAClC,QAAM,OAAO,KAAK,KAAK,GAAG,IAAI;AAE9B,SAAO,CAAC,UAAU,IAAI;AACxB;;;ACjBO,SAAS,gBAAgB,SAAyC;AACvE,SAAO,QAAQ,OAAO,CAAC,QAAuB,QAAQ,GAAG,CAAC,EAAE,KAAK,GAAG;AACtE;;;ALMA,sBAAiC;AAa7B;AARG,IAAM,cAAc,CAAC,EAAE,GAAG,MAAM,MAAwB;AAC7D,QAAM,CAAC,UAAU,IAAI,IAAI;AAAA,IACvB;AAAA,IACA,GAAG,kBAAkB,SAAS;AAAA,EAChC;AACA,QAAM,cAAc,kBAAkB,QAAQ;AAE9C,SACE;AAAA,IAAiB;AAAA,IAAhB;AAAA,MACE,GAAG;AAAA,MACJ,WAAW,aAAa,aAAa,KAAK,SAAS;AAAA;AAAA,EACrD;AAEJ;AAIO,IAAM,SAAS,CAAC,EAAE,GAAG,MAAM,MAAmB;AACnD,QAAM,CAAC,UAAU,IAAI,IAAI;AAAA,IACvB;AAAA,IACA,GAAG,aAAa,SAAS;AAAA,EAC3B;AACA,QAAM,UAAU,aAAa,QAAQ;AAErC,SACE;AAAA,IAAiB;AAAA,IAAhB;AAAA,MACE,GAAG;AAAA,MACJ,WAAW,aAAa,SAAS,KAAK,SAAS;AAAA,MAE/C,sDAAC,eAAY,MAAM,SAAS,MAAM;AAAA;AAAA,EACpC;AAEJ;","names":["_7a468"]}
@@ -3,8 +3,9 @@ import {
3
3
  switchThumbRecipe
4
4
  } from "../chunk-C4NLMHMQ.mjs";
5
5
  import {
6
- pick
7
- } from "../chunk-4N6P3Y54.mjs";
6
+ extractVariantsFromProps
7
+ } from "../chunk-DQ4T4WV3.mjs";
8
+ import "../chunk-BALC5CGU.mjs";
8
9
  import {
9
10
  mergeClasses
10
11
  } from "../chunk-7EGQM3ZL.mjs";
@@ -13,24 +14,30 @@ import {
13
14
  import * as SwitchPrimitive from "@radix-ui/react-switch";
14
15
  import { jsx } from "react/jsx-runtime";
15
16
  var SwitchThumb = ({ ...props }) => {
16
- const variants = pick(props, ...switchThumbRecipe.variants());
17
+ const [variants, rest] = extractVariantsFromProps(
18
+ props,
19
+ ...switchThumbRecipe.variants()
20
+ );
17
21
  const switchThumb = switchThumbRecipe(variants);
18
22
  return /* @__PURE__ */ jsx(
19
23
  SwitchPrimitive.Thumb,
20
24
  {
21
- ...props,
22
- className: mergeClasses(switchThumb, props.className)
25
+ ...rest,
26
+ className: mergeClasses(switchThumb, rest.className)
23
27
  }
24
28
  );
25
29
  };
26
30
  var Switch = ({ ...props }) => {
27
- const variants = pick(props, ...switchRecipe.variants());
31
+ const [variants, rest] = extractVariantsFromProps(
32
+ props,
33
+ ...switchRecipe.variants()
34
+ );
28
35
  const _switch = switchRecipe(variants);
29
36
  return /* @__PURE__ */ jsx(
30
37
  SwitchPrimitive.Root,
31
38
  {
32
- ...props,
33
- className: mergeClasses(_switch, props.className),
39
+ ...rest,
40
+ className: mergeClasses(_switch, rest.className),
34
41
  children: /* @__PURE__ */ jsx(SwitchThumb, { size: variants.size })
35
42
  }
36
43
  );
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/components/switch.tsx"],"sourcesContent":["import {\n switchRecipe,\n switchThumbRecipe,\n SwitchThumbVariants,\n SwitchVariants,\n} from \"@/theme/recipes/switch.css\";\nimport { mergeClasses } from \"@/utils/merge-classes\";\nimport { pick } from \"@/utils/pick\";\nimport * as SwitchPrimitive from \"@radix-ui/react-switch\";\n\ntype SwitchThumbProps = SwitchPrimitive.SwitchThumbProps & SwitchThumbVariants;\n\nexport const SwitchThumb = ({ ...props }: SwitchThumbProps) => {\n const variants = pick(props, ...switchThumbRecipe.variants());\n const switchThumb = switchThumbRecipe(variants);\n\n return (\n <SwitchPrimitive.Thumb\n {...props}\n className={mergeClasses(switchThumb, props.className)}\n />\n );\n};\n\ntype SwitchProps = SwitchPrimitive.SwitchProps & SwitchVariants;\n\nexport const Switch = ({ ...props }: SwitchProps) => {\n const variants = pick(props, ...switchRecipe.variants());\n const _switch = switchRecipe(variants); // 'switch' is not allowed as a variable declaration name.ts(1389)\n\n return (\n <SwitchPrimitive.Root\n {...props}\n className={mergeClasses(_switch, props.className)}\n >\n <SwitchThumb size={variants.size} />\n </SwitchPrimitive.Root>\n );\n};\n"],"mappings":";;;;;;;;;;;;AAQA,YAAY,qBAAqB;AAS7B;AALG,IAAM,cAAc,CAAC,EAAE,GAAG,MAAM,MAAwB;AAC7D,QAAM,WAAW,KAAK,OAAO,GAAG,kBAAkB,SAAS,CAAC;AAC5D,QAAM,cAAc,kBAAkB,QAAQ;AAE9C,SACE;AAAA,IAAiB;AAAA,IAAhB;AAAA,MACE,GAAG;AAAA,MACJ,WAAW,aAAa,aAAa,MAAM,SAAS;AAAA;AAAA,EACtD;AAEJ;AAIO,IAAM,SAAS,CAAC,EAAE,GAAG,MAAM,MAAmB;AACnD,QAAM,WAAW,KAAK,OAAO,GAAG,aAAa,SAAS,CAAC;AACvD,QAAM,UAAU,aAAa,QAAQ;AAErC,SACE;AAAA,IAAiB;AAAA,IAAhB;AAAA,MACE,GAAG;AAAA,MACJ,WAAW,aAAa,SAAS,MAAM,SAAS;AAAA,MAEhD,8BAAC,eAAY,MAAM,SAAS,MAAM;AAAA;AAAA,EACpC;AAEJ;","names":[]}
1
+ {"version":3,"sources":["../../src/components/switch.tsx"],"sourcesContent":["import {\n switchRecipe,\n switchThumbRecipe,\n SwitchThumbVariants,\n SwitchVariants,\n} from \"@/theme/recipes/switch.css\";\nimport { extractVariantsFromProps } from \"@/utils/get-variants\";\nimport { mergeClasses } from \"@/utils/merge-classes\";\nimport * as SwitchPrimitive from \"@radix-ui/react-switch\";\n\nexport type SwitchThumbProps = SwitchPrimitive.SwitchThumbProps &\n SwitchThumbVariants;\n\nexport const SwitchThumb = ({ ...props }: SwitchThumbProps) => {\n const [variants, rest] = extractVariantsFromProps(\n props,\n ...switchThumbRecipe.variants(),\n );\n const switchThumb = switchThumbRecipe(variants);\n\n return (\n <SwitchPrimitive.Thumb\n {...rest}\n className={mergeClasses(switchThumb, rest.className)}\n />\n );\n};\n\nexport type SwitchProps = SwitchPrimitive.SwitchProps & SwitchVariants;\n\nexport const Switch = ({ ...props }: SwitchProps) => {\n const [variants, rest] = extractVariantsFromProps(\n props,\n ...switchRecipe.variants(),\n );\n const _switch = switchRecipe(variants); // 'switch' is not allowed as a variable declaration name.ts(1389)\n\n return (\n <SwitchPrimitive.Root\n {...rest}\n className={mergeClasses(_switch, rest.className)}\n >\n <SwitchThumb size={variants.size} />\n </SwitchPrimitive.Root>\n );\n};\n"],"mappings":";;;;;;;;;;;;;AAQA,YAAY,qBAAqB;AAa7B;AARG,IAAM,cAAc,CAAC,EAAE,GAAG,MAAM,MAAwB;AAC7D,QAAM,CAAC,UAAU,IAAI,IAAI;AAAA,IACvB;AAAA,IACA,GAAG,kBAAkB,SAAS;AAAA,EAChC;AACA,QAAM,cAAc,kBAAkB,QAAQ;AAE9C,SACE;AAAA,IAAiB;AAAA,IAAhB;AAAA,MACE,GAAG;AAAA,MACJ,WAAW,aAAa,aAAa,KAAK,SAAS;AAAA;AAAA,EACrD;AAEJ;AAIO,IAAM,SAAS,CAAC,EAAE,GAAG,MAAM,MAAmB;AACnD,QAAM,CAAC,UAAU,IAAI,IAAI;AAAA,IACvB;AAAA,IACA,GAAG,aAAa,SAAS;AAAA,EAC3B;AACA,QAAM,UAAU,aAAa,QAAQ;AAErC,SACE;AAAA,IAAiB;AAAA,IAAhB;AAAA,MACE,GAAG;AAAA,MACJ,WAAW,aAAa,SAAS,KAAK,SAAS;AAAA,MAE/C,8BAAC,eAAY,MAAM,SAAS,MAAM;AAAA;AAAA,EACpC;AAEJ;","names":[]}
@@ -7,4 +7,4 @@ declare const defaultElement = "input";
7
7
  type TextFieldProps = ComponentProps<typeof defaultElement, TextFieldVariants>;
8
8
  declare const TextField: ({ asChild, ...props }: TextFieldProps) => react_jsx_runtime.JSX.Element;
9
9
 
10
- export { TextField };
10
+ export { TextField, type TextFieldProps };
@@ -7,4 +7,4 @@ declare const defaultElement = "input";
7
7
  type TextFieldProps = ComponentProps<typeof defaultElement, TextFieldVariants>;
8
8
  declare const TextField: ({ asChild, ...props }: TextFieldProps) => react_jsx_runtime.JSX.Element;
9
9
 
10
- export { TextField };
10
+ export { TextField, type TextFieldProps };
@@ -28,9 +28,13 @@ module.exports = __toCommonJS(text_field_exports);
28
28
  var import_createRuntimeFn = require("@vanilla-extract/recipes/createRuntimeFn");
29
29
  var textFieldRecipe = (0, import_createRuntimeFn.createRuntimeFn)({ defaultClassName: "text-field_textFieldRecipe__i0hdwa0", variantClassNames: { size: { "1": "text-field_textFieldRecipe_size_1__i0hdwa1", "2": "text-field_textFieldRecipe_size_2__i0hdwa2", "3": "text-field_textFieldRecipe_size_3__i0hdwa3" }, error: { true: "text-field_textFieldRecipe_error_true__i0hdwa4" }, cursor: { "default": "text-field_textFieldRecipe_cursor_default__i0hdwa5", text: "text-field_textFieldRecipe_cursor_text__i0hdwa6" }, variant: { outline: "text-field_textFieldRecipe_variant_outline__i0hdwa7", ghost: "text-field_textFieldRecipe_variant_ghost__i0hdwa8" } }, defaultVariants: { size: "2", variant: "outline" }, compoundVariants: [] });
30
30
 
31
- // src/utils/merge-classes.ts
32
- function mergeClasses(...classes) {
33
- return classes.filter((cls) => Boolean(cls)).join(" ");
31
+ // src/utils/omit.ts
32
+ function omit(obj, ...keys) {
33
+ const ret = { ...obj };
34
+ keys.forEach((key) => {
35
+ delete ret[key];
36
+ });
37
+ return ret;
34
38
  }
35
39
 
36
40
  // src/utils/pick.ts
@@ -42,15 +46,30 @@ function pick(obj, ...keys) {
42
46
  return ret;
43
47
  }
44
48
 
49
+ // src/utils/get-variants.ts
50
+ function extractVariantsFromProps(obj, ...keys) {
51
+ const variants = pick(obj, ...keys);
52
+ const rest = omit(obj, ...keys);
53
+ return [variants, rest];
54
+ }
55
+
56
+ // src/utils/merge-classes.ts
57
+ function mergeClasses(...classes) {
58
+ return classes.filter((cls) => Boolean(cls)).join(" ");
59
+ }
60
+
45
61
  // src/components/text-field.tsx
46
62
  var import_react_slot = require("@radix-ui/react-slot");
47
63
  var import_jsx_runtime = require("react/jsx-runtime");
48
64
  var defaultElement = "input";
49
65
  var TextField = ({ asChild, ...props }) => {
50
- const variants = pick(props, ...textFieldRecipe.variants());
66
+ const [variants, rest] = extractVariantsFromProps(
67
+ props,
68
+ ...textFieldRecipe.variants()
69
+ );
51
70
  const textField = textFieldRecipe(variants);
52
71
  const Comp = asChild ? import_react_slot.Slot : defaultElement;
53
- return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Comp, { ...props, className: mergeClasses(textField, props.className), children: props.children });
72
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Comp, { ...rest, className: mergeClasses(textField, rest.className), children: rest.children });
54
73
  };
55
74
  // Annotate the CommonJS export names for ESM import in node:
56
75
  0 && (module.exports = {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/components/text-field.tsx","../../src/theme/recipes/text-field.css.ts","../../src/utils/merge-classes.ts","../../src/utils/pick.ts"],"sourcesContent":["import {\n TextFieldVariants,\n textFieldRecipe,\n} from \"@/theme/recipes/text-field.css\";\nimport { ComponentProps } from \"@/types/component-props\";\nimport { mergeClasses } from \"@/utils/merge-classes\";\nimport { pick } from \"@/utils/pick\";\nimport { Slot } from \"@radix-ui/react-slot\";\n\nconst defaultElement = \"input\";\n\ntype TextFieldProps = ComponentProps<typeof defaultElement, TextFieldVariants>;\n\nexport const TextField = ({ asChild, ...props }: TextFieldProps) => {\n const variants = pick(props, ...textFieldRecipe.variants());\n const textField = textFieldRecipe(variants);\n const Comp = asChild ? Slot : defaultElement;\n\n return (\n <Comp {...props} className={mergeClasses(textField, props.className)}>\n {props.children}\n </Comp>\n );\n};\n","import 'src/theme/recipes/text-field.css.ts.vanilla.css?source=#H4sIAAAAAAAAA7VW247TMBB971cEIaSthFdpy96yTwgJ7SOCR4SiSTxJzLp2ZDttt4h/R3biXNhtk9KlUdN0PD5nfGY88aXBnSEZQ05j+/jZPn3FlJUYxyws6BbC4NcsCKAsERSIFKNASIH3syBIpKKoyJZRU0RBWJt2RLM9E3nkhxO5syOZFIZksGb8KQqYKFAxY+1rUDkTzXRZGc5Ej6IESh2YG26YFmH4zv4lW0wemSEGSlKwvOAsLwxJJZcqClSewEX43l1zFxqkj7mSlaDexSgQugSFwkXSWHuxuZg3oBgIQ0S1RsXSKDCQVByUNej72e/Z5QQNo0JuUDkln8exAXVBiMY1CMPST9aoSS+4Bzs3jhd3IsFbusyy+WTaCDLjeQ+kZipSgplU+BpQlGlIONKjcqS1DJqDwfq+bCVYPP2ct9VWAJVbmzaNJgjdtSh3L6B8bH5uOpx9XRojxLc94rKeUCltZwhpCHAut0hdtUomDCqCGxRG+yqeqEom00o7SdpdYNehJWc0eBu6z2QwhUCJFPzpTI2n0X2nYIAwsQHO6I+uRIapKXftt0vQX1WPSklV3++6isfliaGUHFIsJKeo6nCO7jTcmS/dhN5Go6O0mu0xXnj2RbN0tyMUUFZpz2n/MbLowPPCVVKBtmm1kbE9anLV80rnbSOyg97RGr455w7ybt7rmIRj1sGWkCLp5XbgqQYRvOhqy5FMCfUktSLfwKEyMmOcR1HGlDbE0jkpJ697Au/S8y7HsrTsLYqN6b9qnZNDUlnTg7Noct0rr83BCuh55XQkrV0Ay7G0Dl1P0uysXA01msC78ryrV83Vh9Y5PV7WNz1UPJil516Hs9RRr8ayNHQ9Sa2zsjRU5ziv69CxUVXbeT/8l7YfvGHrUioD9oh2PKT6nRxTzKDixod1Vbf/5n3dDP4jVO8V7QHtzIlo1uyhrk8GaU6hcXM28EA356heA7XtCEez7oPIC6nbtdw+C6E59vwBDpIHZFwMAAA=';\nimport { createRuntimeFn as _7a468 } from '@vanilla-extract/recipes/createRuntimeFn';\nexport var textFieldRecipe = _7a468({defaultClassName:'text-field_textFieldRecipe__i0hdwa0',variantClassNames:{size:{'1':'text-field_textFieldRecipe_size_1__i0hdwa1','2':'text-field_textFieldRecipe_size_2__i0hdwa2','3':'text-field_textFieldRecipe_size_3__i0hdwa3'},error:{true:'text-field_textFieldRecipe_error_true__i0hdwa4'},cursor:{'default':'text-field_textFieldRecipe_cursor_default__i0hdwa5',text:'text-field_textFieldRecipe_cursor_text__i0hdwa6'},variant:{outline:'text-field_textFieldRecipe_variant_outline__i0hdwa7',ghost:'text-field_textFieldRecipe_variant_ghost__i0hdwa8'}},defaultVariants:{size:'2',variant:'outline'},compoundVariants:[]});","export function mergeClasses(...classes: (string | undefined)[]): string {\n return classes.filter((cls): cls is string => Boolean(cls)).join(\" \");\n}\n","/**\n * https://stackoverflow.com/a/47232883\n */\nexport function pick<T, K extends keyof T>(obj: T, ...keys: K[]): Pick<T, K> {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const ret: any = {};\n keys.forEach((key) => {\n ret[key] = obj[key];\n });\n\n return ret;\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACCA,6BAA0C;AACnC,IAAI,sBAAkB,uBAAAA,iBAAO,EAAC,kBAAiB,uCAAsC,mBAAkB,EAAC,MAAK,EAAC,KAAI,8CAA6C,KAAI,8CAA6C,KAAI,6CAA4C,GAAE,OAAM,EAAC,MAAK,iDAAgD,GAAE,QAAO,EAAC,WAAU,sDAAqD,MAAK,kDAAiD,GAAE,SAAQ,EAAC,SAAQ,uDAAsD,OAAM,oDAAmD,EAAC,GAAE,iBAAgB,EAAC,MAAK,KAAI,SAAQ,UAAS,GAAE,kBAAiB,CAAC,EAAC,CAAC;;;ACFnoB,SAAS,gBAAgB,SAAyC;AACvE,SAAO,QAAQ,OAAO,CAAC,QAAuB,QAAQ,GAAG,CAAC,EAAE,KAAK,GAAG;AACtE;;;ACCO,SAAS,KAA2B,QAAW,MAAuB;AAE3E,QAAM,MAAW,CAAC;AAClB,OAAK,QAAQ,CAAC,QAAQ;AACpB,QAAI,GAAG,IAAI,IAAI,GAAG;AAAA,EACpB,CAAC;AAED,SAAO;AACT;;;AHJA,wBAAqB;AAYjB;AAVJ,IAAM,iBAAiB;AAIhB,IAAM,YAAY,CAAC,EAAE,SAAS,GAAG,MAAM,MAAsB;AAClE,QAAM,WAAW,KAAK,OAAO,GAAG,gBAAgB,SAAS,CAAC;AAC1D,QAAM,YAAY,gBAAgB,QAAQ;AAC1C,QAAM,OAAO,UAAU,yBAAO;AAE9B,SACE,4CAAC,QAAM,GAAG,OAAO,WAAW,aAAa,WAAW,MAAM,SAAS,GAChE,gBAAM,UACT;AAEJ;","names":["_7a468"]}
1
+ {"version":3,"sources":["../../src/components/text-field.tsx","../../src/theme/recipes/text-field.css.ts","../../src/utils/omit.ts","../../src/utils/pick.ts","../../src/utils/get-variants.ts","../../src/utils/merge-classes.ts"],"sourcesContent":["import {\n TextFieldVariants,\n textFieldRecipe,\n} from \"@/theme/recipes/text-field.css\";\nimport { ComponentProps } from \"@/types/component-props\";\nimport { extractVariantsFromProps } from \"@/utils/get-variants\";\nimport { mergeClasses } from \"@/utils/merge-classes\";\nimport { Slot } from \"@radix-ui/react-slot\";\n\nconst defaultElement = \"input\";\n\nexport type TextFieldProps = ComponentProps<\n typeof defaultElement,\n TextFieldVariants\n>;\n\nexport const TextField = ({ asChild, ...props }: TextFieldProps) => {\n const [variants, rest] = extractVariantsFromProps(\n props,\n ...textFieldRecipe.variants(),\n );\n const textField = textFieldRecipe(variants);\n const Comp = asChild ? Slot : defaultElement;\n\n return (\n <Comp {...rest} className={mergeClasses(textField, rest.className)}>\n {rest.children}\n </Comp>\n );\n};\n","import 'src/theme/recipes/text-field.css.ts.vanilla.css?source=#H4sIAAAAAAAAA7VW247TMBB971cEIaSthFdpy96yTwgJ7SOCR4SiSTxJzLp2ZDttt4h/R3biXNhtk9KlUdN0PD5nfGY88aXBnSEZQ05j+/jZPn3FlJUYxyws6BbC4NcsCKAsERSIFKNASIH3syBIpKKoyJZRU0RBWJt2RLM9E3nkhxO5syOZFIZksGb8KQqYKFAxY+1rUDkTzXRZGc5Ej6IESh2YG26YFmH4zv4lW0wemSEGSlKwvOAsLwxJJZcqClSewEX43l1zFxqkj7mSlaDexSgQugSFwkXSWHuxuZg3oBgIQ0S1RsXSKDCQVByUNej72e/Z5QQNo0JuUDkln8exAXVBiMY1CMPST9aoSS+4Bzs3jhd3IsFbusyy+WTaCDLjeQ+kZipSgplU+BpQlGlIONKjcqS1DJqDwfq+bCVYPP2ct9VWAJVbmzaNJgjdtSh3L6B8bH5uOpx9XRojxLc94rKeUCltZwhpCHAut0hdtUomDCqCGxRG+yqeqEom00o7SdpdYNehJWc0eBu6z2QwhUCJFPzpTI2n0X2nYIAwsQHO6I+uRIapKXftt0vQX1WPSklV3++6isfliaGUHFIsJKeo6nCO7jTcmS/dhN5Go6O0mu0xXnj2RbN0tyMUUFZpz2n/MbLowPPCVVKBtmm1kbE9anLV80rnbSOyg97RGr455w7ybt7rmIRj1sGWkCLp5XbgqQYRvOhqy5FMCfUktSLfwKEyMmOcR1HGlDbE0jkpJ697Au/S8y7HsrTsLYqN6b9qnZNDUlnTg7Noct0rr83BCuh55XQkrV0Ay7G0Dl1P0uysXA01msC78ryrV83Vh9Y5PV7WNz1UPJil516Hs9RRr8ayNHQ9Sa2zsjRU5ziv69CxUVXbeT/8l7YfvGHrUioD9oh2PKT6nRxTzKDixod1Vbf/5n3dDP4jVO8V7QHtzIlo1uyhrk8GaU6hcXM28EA356heA7XtCEez7oPIC6nbtdw+C6E59vwBDpIHZFwMAAA=';\nimport { createRuntimeFn as _7a468 } from '@vanilla-extract/recipes/createRuntimeFn';\nexport var textFieldRecipe = _7a468({defaultClassName:'text-field_textFieldRecipe__i0hdwa0',variantClassNames:{size:{'1':'text-field_textFieldRecipe_size_1__i0hdwa1','2':'text-field_textFieldRecipe_size_2__i0hdwa2','3':'text-field_textFieldRecipe_size_3__i0hdwa3'},error:{true:'text-field_textFieldRecipe_error_true__i0hdwa4'},cursor:{'default':'text-field_textFieldRecipe_cursor_default__i0hdwa5',text:'text-field_textFieldRecipe_cursor_text__i0hdwa6'},variant:{outline:'text-field_textFieldRecipe_variant_outline__i0hdwa7',ghost:'text-field_textFieldRecipe_variant_ghost__i0hdwa8'}},defaultVariants:{size:'2',variant:'outline'},compoundVariants:[]});","export function omit<T, K extends keyof T>(obj: T, ...keys: K[]): Omit<T, K> {\n const ret = { ...obj };\n keys.forEach((key) => {\n delete ret[key];\n });\n\n return ret;\n}\n","/**\n * https://stackoverflow.com/a/47232883\n */\nexport function pick<T, K extends keyof T>(obj: T, ...keys: K[]): Pick<T, K> {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const ret: any = {};\n keys.forEach((key) => {\n ret[key] = obj[key];\n });\n\n return ret;\n}\n","import { omit } from \"./omit\";\nimport { pick } from \"./pick\";\n\n/**\n * TODO\n * @param obj\n * @param keys\n * @returns [variants, props]\n */\nexport function extractVariantsFromProps<T, K extends keyof T>(\n obj: T,\n ...keys: K[]\n): [Pick<T, K>, Omit<T, K>] {\n const variants = pick(obj, ...keys);\n const rest = omit(obj, ...keys);\n\n return [variants, rest];\n}\n","export function mergeClasses(...classes: (string | undefined)[]): string {\n return classes.filter((cls): cls is string => Boolean(cls)).join(\" \");\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACCA,6BAA0C;AACnC,IAAI,sBAAkB,uBAAAA,iBAAO,EAAC,kBAAiB,uCAAsC,mBAAkB,EAAC,MAAK,EAAC,KAAI,8CAA6C,KAAI,8CAA6C,KAAI,6CAA4C,GAAE,OAAM,EAAC,MAAK,iDAAgD,GAAE,QAAO,EAAC,WAAU,sDAAqD,MAAK,kDAAiD,GAAE,SAAQ,EAAC,SAAQ,uDAAsD,OAAM,oDAAmD,EAAC,GAAE,iBAAgB,EAAC,MAAK,KAAI,SAAQ,UAAS,GAAE,kBAAiB,CAAC,EAAC,CAAC;;;ACFnoB,SAAS,KAA2B,QAAW,MAAuB;AAC3E,QAAM,MAAM,EAAE,GAAG,IAAI;AACrB,OAAK,QAAQ,CAAC,QAAQ;AACpB,WAAO,IAAI,GAAG;AAAA,EAChB,CAAC;AAED,SAAO;AACT;;;ACJO,SAAS,KAA2B,QAAW,MAAuB;AAE3E,QAAM,MAAW,CAAC;AAClB,OAAK,QAAQ,CAAC,QAAQ;AACpB,QAAI,GAAG,IAAI,IAAI,GAAG;AAAA,EACpB,CAAC;AAED,SAAO;AACT;;;ACFO,SAAS,yBACd,QACG,MACuB;AAC1B,QAAM,WAAW,KAAK,KAAK,GAAG,IAAI;AAClC,QAAM,OAAO,KAAK,KAAK,GAAG,IAAI;AAE9B,SAAO,CAAC,UAAU,IAAI;AACxB;;;ACjBO,SAAS,gBAAgB,SAAyC;AACvE,SAAO,QAAQ,OAAO,CAAC,QAAuB,QAAQ,GAAG,CAAC,EAAE,KAAK,GAAG;AACtE;;;ALKA,wBAAqB;AAkBjB;AAhBJ,IAAM,iBAAiB;AAOhB,IAAM,YAAY,CAAC,EAAE,SAAS,GAAG,MAAM,MAAsB;AAClE,QAAM,CAAC,UAAU,IAAI,IAAI;AAAA,IACvB;AAAA,IACA,GAAG,gBAAgB,SAAS;AAAA,EAC9B;AACA,QAAM,YAAY,gBAAgB,QAAQ;AAC1C,QAAM,OAAO,UAAU,yBAAO;AAE9B,SACE,4CAAC,QAAM,GAAG,MAAM,WAAW,aAAa,WAAW,KAAK,SAAS,GAC9D,eAAK,UACR;AAEJ;","names":["_7a468"]}
@@ -2,8 +2,9 @@ import {
2
2
  textFieldRecipe
3
3
  } from "../chunk-DXKT5AFF.mjs";
4
4
  import {
5
- pick
6
- } from "../chunk-4N6P3Y54.mjs";
5
+ extractVariantsFromProps
6
+ } from "../chunk-DQ4T4WV3.mjs";
7
+ import "../chunk-BALC5CGU.mjs";
7
8
  import {
8
9
  mergeClasses
9
10
  } from "../chunk-7EGQM3ZL.mjs";
@@ -13,10 +14,13 @@ import { Slot } from "@radix-ui/react-slot";
13
14
  import { jsx } from "react/jsx-runtime";
14
15
  var defaultElement = "input";
15
16
  var TextField = ({ asChild, ...props }) => {
16
- const variants = pick(props, ...textFieldRecipe.variants());
17
+ const [variants, rest] = extractVariantsFromProps(
18
+ props,
19
+ ...textFieldRecipe.variants()
20
+ );
17
21
  const textField = textFieldRecipe(variants);
18
22
  const Comp = asChild ? Slot : defaultElement;
19
- return /* @__PURE__ */ jsx(Comp, { ...props, className: mergeClasses(textField, props.className), children: props.children });
23
+ return /* @__PURE__ */ jsx(Comp, { ...rest, className: mergeClasses(textField, rest.className), children: rest.children });
20
24
  };
21
25
  export {
22
26
  TextField
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/components/text-field.tsx"],"sourcesContent":["import {\n TextFieldVariants,\n textFieldRecipe,\n} from \"@/theme/recipes/text-field.css\";\nimport { ComponentProps } from \"@/types/component-props\";\nimport { mergeClasses } from \"@/utils/merge-classes\";\nimport { pick } from \"@/utils/pick\";\nimport { Slot } from \"@radix-ui/react-slot\";\n\nconst defaultElement = \"input\";\n\ntype TextFieldProps = ComponentProps<typeof defaultElement, TextFieldVariants>;\n\nexport const TextField = ({ asChild, ...props }: TextFieldProps) => {\n const variants = pick(props, ...textFieldRecipe.variants());\n const textField = textFieldRecipe(variants);\n const Comp = asChild ? Slot : defaultElement;\n\n return (\n <Comp {...props} className={mergeClasses(textField, props.className)}>\n {props.children}\n </Comp>\n );\n};\n"],"mappings":";;;;;;;;;;;AAOA,SAAS,YAAY;AAYjB;AAVJ,IAAM,iBAAiB;AAIhB,IAAM,YAAY,CAAC,EAAE,SAAS,GAAG,MAAM,MAAsB;AAClE,QAAM,WAAW,KAAK,OAAO,GAAG,gBAAgB,SAAS,CAAC;AAC1D,QAAM,YAAY,gBAAgB,QAAQ;AAC1C,QAAM,OAAO,UAAU,OAAO;AAE9B,SACE,oBAAC,QAAM,GAAG,OAAO,WAAW,aAAa,WAAW,MAAM,SAAS,GAChE,gBAAM,UACT;AAEJ;","names":[]}
1
+ {"version":3,"sources":["../../src/components/text-field.tsx"],"sourcesContent":["import {\n TextFieldVariants,\n textFieldRecipe,\n} from \"@/theme/recipes/text-field.css\";\nimport { ComponentProps } from \"@/types/component-props\";\nimport { extractVariantsFromProps } from \"@/utils/get-variants\";\nimport { mergeClasses } from \"@/utils/merge-classes\";\nimport { Slot } from \"@radix-ui/react-slot\";\n\nconst defaultElement = \"input\";\n\nexport type TextFieldProps = ComponentProps<\n typeof defaultElement,\n TextFieldVariants\n>;\n\nexport const TextField = ({ asChild, ...props }: TextFieldProps) => {\n const [variants, rest] = extractVariantsFromProps(\n props,\n ...textFieldRecipe.variants(),\n );\n const textField = textFieldRecipe(variants);\n const Comp = asChild ? Slot : defaultElement;\n\n return (\n <Comp {...rest} className={mergeClasses(textField, rest.className)}>\n {rest.children}\n </Comp>\n );\n};\n"],"mappings":";;;;;;;;;;;;AAOA,SAAS,YAAY;AAkBjB;AAhBJ,IAAM,iBAAiB;AAOhB,IAAM,YAAY,CAAC,EAAE,SAAS,GAAG,MAAM,MAAsB;AAClE,QAAM,CAAC,UAAU,IAAI,IAAI;AAAA,IACvB;AAAA,IACA,GAAG,gBAAgB,SAAS;AAAA,EAC9B;AACA,QAAM,YAAY,gBAAgB,QAAQ;AAC1C,QAAM,OAAO,UAAU,OAAO;AAE9B,SACE,oBAAC,QAAM,GAAG,MAAM,WAAW,aAAa,WAAW,KAAK,SAAS,GAC9D,eAAK,UACR;AAEJ;","names":[]}
@@ -7,4 +7,4 @@ declare const defaultElement = "span";
7
7
  type TextProps = ComponentProps<typeof defaultElement, TextVariants>;
8
8
  declare const Text: ({ asChild, ...props }: TextProps) => react_jsx_runtime.JSX.Element;
9
9
 
10
- export { Text };
10
+ export { Text, type TextProps };
@@ -7,4 +7,4 @@ declare const defaultElement = "span";
7
7
  type TextProps = ComponentProps<typeof defaultElement, TextVariants>;
8
8
  declare const Text: ({ asChild, ...props }: TextProps) => react_jsx_runtime.JSX.Element;
9
9
 
10
- export { Text };
10
+ export { Text, type TextProps };
@@ -28,9 +28,13 @@ module.exports = __toCommonJS(text_exports);
28
28
  var import_createRuntimeFn = require("@vanilla-extract/recipes/createRuntimeFn");
29
29
  var textRecipe = (0, import_createRuntimeFn.createRuntimeFn)({ defaultClassName: "text_textRecipe__1y7s4vx0", variantClassNames: { color: { primary: "text_textRecipe_color_primary__1y7s4vx1", secondary: "text_textRecipe_color_secondary__1y7s4vx2", error: "text_textRecipe_color_error__1y7s4vx3", subtle: "text_textRecipe_color_subtle__1y7s4vx4" }, size: { "1": "text_textRecipe_size_1__1y7s4vx5", "2": "text_textRecipe_size_2__1y7s4vx6", "3": "text_textRecipe_size_3__1y7s4vx7", "4": "text_textRecipe_size_4__1y7s4vx8", "5": "text_textRecipe_size_5__1y7s4vx9", "6": "text_textRecipe_size_6__1y7s4vxa", "7": "text_textRecipe_size_7__1y7s4vxb", "8": "text_textRecipe_size_8__1y7s4vxc", "9": "text_textRecipe_size_9__1y7s4vxd" }, weight: { regular: "text_textRecipe_weight_regular__1y7s4vxe", medium: "text_textRecipe_weight_medium__1y7s4vxf", bold: "text_textRecipe_weight_bold__1y7s4vxg" } }, defaultVariants: { size: "3" }, compoundVariants: [] });
30
30
 
31
- // src/utils/merge-classes.ts
32
- function mergeClasses(...classes) {
33
- return classes.filter((cls) => Boolean(cls)).join(" ");
31
+ // src/utils/omit.ts
32
+ function omit(obj, ...keys) {
33
+ const ret = { ...obj };
34
+ keys.forEach((key) => {
35
+ delete ret[key];
36
+ });
37
+ return ret;
34
38
  }
35
39
 
36
40
  // src/utils/pick.ts
@@ -42,15 +46,30 @@ function pick(obj, ...keys) {
42
46
  return ret;
43
47
  }
44
48
 
49
+ // src/utils/get-variants.ts
50
+ function extractVariantsFromProps(obj, ...keys) {
51
+ const variants = pick(obj, ...keys);
52
+ const rest = omit(obj, ...keys);
53
+ return [variants, rest];
54
+ }
55
+
56
+ // src/utils/merge-classes.ts
57
+ function mergeClasses(...classes) {
58
+ return classes.filter((cls) => Boolean(cls)).join(" ");
59
+ }
60
+
45
61
  // src/components/text.tsx
46
62
  var import_react_slot = require("@radix-ui/react-slot");
47
63
  var import_jsx_runtime = require("react/jsx-runtime");
48
64
  var defaultElement = "span";
49
65
  var Text = ({ asChild, ...props }) => {
50
- const variants = pick(props, ...textRecipe.variants());
66
+ const [variants, rest] = extractVariantsFromProps(
67
+ props,
68
+ ...textRecipe.variants()
69
+ );
51
70
  const text = textRecipe(variants);
52
71
  const Comp = asChild ? import_react_slot.Slot : defaultElement;
53
- return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Comp, { ...props, className: mergeClasses(text, props.className), children: props.children });
72
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Comp, { ...rest, className: mergeClasses(text, rest.className), children: rest.children });
54
73
  };
55
74
  // Annotate the CommonJS export names for ESM import in node:
56
75
  0 && (module.exports = {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/components/text.tsx","../../src/theme/recipes/text.css.ts","../../src/utils/merge-classes.ts","../../src/utils/pick.ts"],"sourcesContent":["import { TextVariants, textRecipe } from \"@/theme/recipes/text.css\";\nimport { ComponentProps } from \"@/types/component-props\";\nimport { mergeClasses } from \"@/utils/merge-classes\";\nimport { pick } from \"@/utils/pick\";\nimport { Slot } from \"@radix-ui/react-slot\";\n\nconst defaultElement = \"span\";\n\ntype TextProps = ComponentProps<typeof defaultElement, TextVariants>;\n\nexport const Text = ({ asChild, ...props }: TextProps) => {\n const variants = pick(props, ...textRecipe.variants());\n const text = textRecipe(variants);\n const Comp = asChild ? Slot : defaultElement;\n\n return (\n <Comp {...props} className={mergeClasses(text, props.className)}>\n {props.children}\n </Comp>\n );\n};\n","import 'src/theme/recipes/text.css.ts.vanilla.css?source=#H4sIAAAAAAAAA5XUzXKCMBAH8DtPkWM9xBHED/TYN6iHHpkQFsw0BJugFTt9905QFqajib2AJNnff5Zgpg2cm9Re3oCLA6Rp2K5MfDrPyHdAiBQK6B5EuW82JNwGhFRMl0JtyMw+FLVq6Ndt+sT0C6V26L0bMVRDeZRMp2mYqAzWeVSoCZadmBZMNVQdK9CCb0jDMrvaDhi7KhfmIFm7IZms+QfWFawSsh3HGdo1MaSIyTb4CaZ/W+O1rHV60KJiusVGw67Rbq5HDVRMNYK/2kFDbxX9PRmS+KcryQCvVT7OirxZWDP8GuXl4MoDrWuNWXNvVrf+eh1lQOTs6Zg1cvhKYm+IFXZ9Ub9B/H6EERdIQ8QXHd5tup0Zb/lOXMDQEMnEAUYILn1ghCBzgHMEVz5wjmDmAGME1z4wRtD1DhcIJj5wgWDuAJcIMh+4RPDBx9qBKwQzH7hCsHCAawS5D1wjWDrABMHcBw7/nv198HpEpsN5eIVhgP97iD4OqSAXxwozimcysKaPqJ0RWS1zDCifCbhV9PzB8r9d18CZewYAAA==';\nimport { createRuntimeFn as _7a468 } from '@vanilla-extract/recipes/createRuntimeFn';\nexport var textRecipe = _7a468({defaultClassName:'text_textRecipe__1y7s4vx0',variantClassNames:{color:{primary:'text_textRecipe_color_primary__1y7s4vx1',secondary:'text_textRecipe_color_secondary__1y7s4vx2',error:'text_textRecipe_color_error__1y7s4vx3',subtle:'text_textRecipe_color_subtle__1y7s4vx4'},size:{'1':'text_textRecipe_size_1__1y7s4vx5','2':'text_textRecipe_size_2__1y7s4vx6','3':'text_textRecipe_size_3__1y7s4vx7','4':'text_textRecipe_size_4__1y7s4vx8','5':'text_textRecipe_size_5__1y7s4vx9','6':'text_textRecipe_size_6__1y7s4vxa','7':'text_textRecipe_size_7__1y7s4vxb','8':'text_textRecipe_size_8__1y7s4vxc','9':'text_textRecipe_size_9__1y7s4vxd'},weight:{regular:'text_textRecipe_weight_regular__1y7s4vxe',medium:'text_textRecipe_weight_medium__1y7s4vxf',bold:'text_textRecipe_weight_bold__1y7s4vxg'}},defaultVariants:{size:'3'},compoundVariants:[]});","export function mergeClasses(...classes: (string | undefined)[]): string {\n return classes.filter((cls): cls is string => Boolean(cls)).join(\" \");\n}\n","/**\n * https://stackoverflow.com/a/47232883\n */\nexport function pick<T, K extends keyof T>(obj: T, ...keys: K[]): Pick<T, K> {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const ret: any = {};\n keys.forEach((key) => {\n ret[key] = obj[key];\n });\n\n return ret;\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACCA,6BAA0C;AACnC,IAAI,iBAAa,uBAAAA,iBAAO,EAAC,kBAAiB,6BAA4B,mBAAkB,EAAC,OAAM,EAAC,SAAQ,2CAA0C,WAAU,6CAA4C,OAAM,yCAAwC,QAAO,yCAAwC,GAAE,MAAK,EAAC,KAAI,oCAAmC,KAAI,oCAAmC,KAAI,oCAAmC,KAAI,oCAAmC,KAAI,oCAAmC,KAAI,oCAAmC,KAAI,oCAAmC,KAAI,oCAAmC,KAAI,mCAAkC,GAAE,QAAO,EAAC,SAAQ,4CAA2C,QAAO,2CAA0C,MAAK,wCAAuC,EAAC,GAAE,iBAAgB,EAAC,MAAK,IAAG,GAAE,kBAAiB,CAAC,EAAC,CAAC;;;ACFv1B,SAAS,gBAAgB,SAAyC;AACvE,SAAO,QAAQ,OAAO,CAAC,QAAuB,QAAQ,GAAG,CAAC,EAAE,KAAK,GAAG;AACtE;;;ACCO,SAAS,KAA2B,QAAW,MAAuB;AAE3E,QAAM,MAAW,CAAC;AAClB,OAAK,QAAQ,CAAC,QAAQ;AACpB,QAAI,GAAG,IAAI,IAAI,GAAG;AAAA,EACpB,CAAC;AAED,SAAO;AACT;;;AHPA,wBAAqB;AAYjB;AAVJ,IAAM,iBAAiB;AAIhB,IAAM,OAAO,CAAC,EAAE,SAAS,GAAG,MAAM,MAAiB;AACxD,QAAM,WAAW,KAAK,OAAO,GAAG,WAAW,SAAS,CAAC;AACrD,QAAM,OAAO,WAAW,QAAQ;AAChC,QAAM,OAAO,UAAU,yBAAO;AAE9B,SACE,4CAAC,QAAM,GAAG,OAAO,WAAW,aAAa,MAAM,MAAM,SAAS,GAC3D,gBAAM,UACT;AAEJ;","names":["_7a468"]}
1
+ {"version":3,"sources":["../../src/components/text.tsx","../../src/theme/recipes/text.css.ts","../../src/utils/omit.ts","../../src/utils/pick.ts","../../src/utils/get-variants.ts","../../src/utils/merge-classes.ts"],"sourcesContent":["import { TextVariants, textRecipe } from \"@/theme/recipes/text.css\";\nimport { ComponentProps } from \"@/types/component-props\";\nimport { extractVariantsFromProps } from \"@/utils/get-variants\";\nimport { mergeClasses } from \"@/utils/merge-classes\";\nimport { Slot } from \"@radix-ui/react-slot\";\n\nconst defaultElement = \"span\";\n\nexport type TextProps = ComponentProps<typeof defaultElement, TextVariants>;\n\nexport const Text = ({ asChild, ...props }: TextProps) => {\n const [variants, rest] = extractVariantsFromProps(\n props,\n ...textRecipe.variants(),\n );\n const text = textRecipe(variants);\n const Comp = asChild ? Slot : defaultElement;\n\n return (\n <Comp {...rest} className={mergeClasses(text, rest.className)}>\n {rest.children}\n </Comp>\n );\n};\n","import 'src/theme/recipes/text.css.ts.vanilla.css?source=#H4sIAAAAAAAAA5XUzXKCMBAH8DtPkWM9xBHED/TYN6iHHpkQFsw0BJugFTt9905QFqajib2AJNnff5Zgpg2cm9Re3oCLA6Rp2K5MfDrPyHdAiBQK6B5EuW82JNwGhFRMl0JtyMw+FLVq6Ndt+sT0C6V26L0bMVRDeZRMp2mYqAzWeVSoCZadmBZMNVQdK9CCb0jDMrvaDhi7KhfmIFm7IZms+QfWFawSsh3HGdo1MaSIyTb4CaZ/W+O1rHV60KJiusVGw67Rbq5HDVRMNYK/2kFDbxX9PRmS+KcryQCvVT7OirxZWDP8GuXl4MoDrWuNWXNvVrf+eh1lQOTs6Zg1cvhKYm+IFXZ9Ub9B/H6EERdIQ8QXHd5tup0Zb/lOXMDQEMnEAUYILn1ghCBzgHMEVz5wjmDmAGME1z4wRtD1DhcIJj5wgWDuAJcIMh+4RPDBx9qBKwQzH7hCsHCAawS5D1wjWDrABMHcBw7/nv198HpEpsN5eIVhgP97iD4OqSAXxwozimcysKaPqJ0RWS1zDCifCbhV9PzB8r9d18CZewYAAA==';\nimport { createRuntimeFn as _7a468 } from '@vanilla-extract/recipes/createRuntimeFn';\nexport var textRecipe = _7a468({defaultClassName:'text_textRecipe__1y7s4vx0',variantClassNames:{color:{primary:'text_textRecipe_color_primary__1y7s4vx1',secondary:'text_textRecipe_color_secondary__1y7s4vx2',error:'text_textRecipe_color_error__1y7s4vx3',subtle:'text_textRecipe_color_subtle__1y7s4vx4'},size:{'1':'text_textRecipe_size_1__1y7s4vx5','2':'text_textRecipe_size_2__1y7s4vx6','3':'text_textRecipe_size_3__1y7s4vx7','4':'text_textRecipe_size_4__1y7s4vx8','5':'text_textRecipe_size_5__1y7s4vx9','6':'text_textRecipe_size_6__1y7s4vxa','7':'text_textRecipe_size_7__1y7s4vxb','8':'text_textRecipe_size_8__1y7s4vxc','9':'text_textRecipe_size_9__1y7s4vxd'},weight:{regular:'text_textRecipe_weight_regular__1y7s4vxe',medium:'text_textRecipe_weight_medium__1y7s4vxf',bold:'text_textRecipe_weight_bold__1y7s4vxg'}},defaultVariants:{size:'3'},compoundVariants:[]});","export function omit<T, K extends keyof T>(obj: T, ...keys: K[]): Omit<T, K> {\n const ret = { ...obj };\n keys.forEach((key) => {\n delete ret[key];\n });\n\n return ret;\n}\n","/**\n * https://stackoverflow.com/a/47232883\n */\nexport function pick<T, K extends keyof T>(obj: T, ...keys: K[]): Pick<T, K> {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const ret: any = {};\n keys.forEach((key) => {\n ret[key] = obj[key];\n });\n\n return ret;\n}\n","import { omit } from \"./omit\";\nimport { pick } from \"./pick\";\n\n/**\n * TODO\n * @param obj\n * @param keys\n * @returns [variants, props]\n */\nexport function extractVariantsFromProps<T, K extends keyof T>(\n obj: T,\n ...keys: K[]\n): [Pick<T, K>, Omit<T, K>] {\n const variants = pick(obj, ...keys);\n const rest = omit(obj, ...keys);\n\n return [variants, rest];\n}\n","export function mergeClasses(...classes: (string | undefined)[]): string {\n return classes.filter((cls): cls is string => Boolean(cls)).join(\" \");\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACCA,6BAA0C;AACnC,IAAI,iBAAa,uBAAAA,iBAAO,EAAC,kBAAiB,6BAA4B,mBAAkB,EAAC,OAAM,EAAC,SAAQ,2CAA0C,WAAU,6CAA4C,OAAM,yCAAwC,QAAO,yCAAwC,GAAE,MAAK,EAAC,KAAI,oCAAmC,KAAI,oCAAmC,KAAI,oCAAmC,KAAI,oCAAmC,KAAI,oCAAmC,KAAI,oCAAmC,KAAI,oCAAmC,KAAI,oCAAmC,KAAI,mCAAkC,GAAE,QAAO,EAAC,SAAQ,4CAA2C,QAAO,2CAA0C,MAAK,wCAAuC,EAAC,GAAE,iBAAgB,EAAC,MAAK,IAAG,GAAE,kBAAiB,CAAC,EAAC,CAAC;;;ACFv1B,SAAS,KAA2B,QAAW,MAAuB;AAC3E,QAAM,MAAM,EAAE,GAAG,IAAI;AACrB,OAAK,QAAQ,CAAC,QAAQ;AACpB,WAAO,IAAI,GAAG;AAAA,EAChB,CAAC;AAED,SAAO;AACT;;;ACJO,SAAS,KAA2B,QAAW,MAAuB;AAE3E,QAAM,MAAW,CAAC;AAClB,OAAK,QAAQ,CAAC,QAAQ;AACpB,QAAI,GAAG,IAAI,IAAI,GAAG;AAAA,EACpB,CAAC;AAED,SAAO;AACT;;;ACFO,SAAS,yBACd,QACG,MACuB;AAC1B,QAAM,WAAW,KAAK,KAAK,GAAG,IAAI;AAClC,QAAM,OAAO,KAAK,KAAK,GAAG,IAAI;AAE9B,SAAO,CAAC,UAAU,IAAI;AACxB;;;ACjBO,SAAS,gBAAgB,SAAyC;AACvE,SAAO,QAAQ,OAAO,CAAC,QAAuB,QAAQ,GAAG,CAAC,EAAE,KAAK,GAAG;AACtE;;;ALEA,wBAAqB;AAejB;AAbJ,IAAM,iBAAiB;AAIhB,IAAM,OAAO,CAAC,EAAE,SAAS,GAAG,MAAM,MAAiB;AACxD,QAAM,CAAC,UAAU,IAAI,IAAI;AAAA,IACvB;AAAA,IACA,GAAG,WAAW,SAAS;AAAA,EACzB;AACA,QAAM,OAAO,WAAW,QAAQ;AAChC,QAAM,OAAO,UAAU,yBAAO;AAE9B,SACE,4CAAC,QAAM,GAAG,MAAM,WAAW,aAAa,MAAM,KAAK,SAAS,GACzD,eAAK,UACR;AAEJ;","names":["_7a468"]}
@@ -1,8 +1,9 @@
1
1
  import {
2
2
  Text
3
- } from "../chunk-C53FYO65.mjs";
3
+ } from "../chunk-ELXCOK2T.mjs";
4
4
  import "../chunk-JZBPCPSP.mjs";
5
- import "../chunk-4N6P3Y54.mjs";
5
+ import "../chunk-DQ4T4WV3.mjs";
6
+ import "../chunk-BALC5CGU.mjs";
6
7
  import "../chunk-7EGQM3ZL.mjs";
7
8
  export {
8
9
  Text
@@ -8,4 +8,4 @@ type TooltipPrimitiveProps = react__default.ComponentProps<typeof TooltipPrimiti
8
8
  type TooltipProps = TooltipPrimitiveProps & TooltipPrimitive.TooltipContentProps & TooltipContentVariants;
9
9
  declare function Tooltip({ children, content, open, defaultOpen, onOpenChange, delayDuration, disableHoverableContent, ...props }: TooltipProps): react_jsx_runtime.JSX.Element;
10
10
 
11
- export { Tooltip };
11
+ export { Tooltip, type TooltipProps };
@@ -8,4 +8,4 @@ type TooltipPrimitiveProps = react__default.ComponentProps<typeof TooltipPrimiti
8
8
  type TooltipProps = TooltipPrimitiveProps & TooltipPrimitive.TooltipContentProps & TooltipContentVariants;
9
9
  declare function Tooltip({ children, content, open, defaultOpen, onOpenChange, delayDuration, disableHoverableContent, ...props }: TooltipProps): react_jsx_runtime.JSX.Element;
10
10
 
11
- export { Tooltip };
11
+ export { Tooltip, type TooltipProps };
@@ -55,6 +55,15 @@ var Box = ({ asChild, ...props }) => {
55
55
  var import_createRuntimeFn = require("@vanilla-extract/recipes/createRuntimeFn");
56
56
  var textRecipe = (0, import_createRuntimeFn.createRuntimeFn)({ defaultClassName: "text_textRecipe__1y7s4vx0", variantClassNames: { color: { primary: "text_textRecipe_color_primary__1y7s4vx1", secondary: "text_textRecipe_color_secondary__1y7s4vx2", error: "text_textRecipe_color_error__1y7s4vx3", subtle: "text_textRecipe_color_subtle__1y7s4vx4" }, size: { "1": "text_textRecipe_size_1__1y7s4vx5", "2": "text_textRecipe_size_2__1y7s4vx6", "3": "text_textRecipe_size_3__1y7s4vx7", "4": "text_textRecipe_size_4__1y7s4vx8", "5": "text_textRecipe_size_5__1y7s4vx9", "6": "text_textRecipe_size_6__1y7s4vxa", "7": "text_textRecipe_size_7__1y7s4vxb", "8": "text_textRecipe_size_8__1y7s4vxc", "9": "text_textRecipe_size_9__1y7s4vxd" }, weight: { regular: "text_textRecipe_weight_regular__1y7s4vxe", medium: "text_textRecipe_weight_medium__1y7s4vxf", bold: "text_textRecipe_weight_bold__1y7s4vxg" } }, defaultVariants: { size: "3" }, compoundVariants: [] });
57
57
 
58
+ // src/utils/omit.ts
59
+ function omit(obj, ...keys) {
60
+ const ret = { ...obj };
61
+ keys.forEach((key) => {
62
+ delete ret[key];
63
+ });
64
+ return ret;
65
+ }
66
+
58
67
  // src/utils/pick.ts
59
68
  function pick(obj, ...keys) {
60
69
  const ret = {};
@@ -64,15 +73,25 @@ function pick(obj, ...keys) {
64
73
  return ret;
65
74
  }
66
75
 
76
+ // src/utils/get-variants.ts
77
+ function extractVariantsFromProps(obj, ...keys) {
78
+ const variants = pick(obj, ...keys);
79
+ const rest = omit(obj, ...keys);
80
+ return [variants, rest];
81
+ }
82
+
67
83
  // src/components/text.tsx
68
84
  var import_react_slot2 = require("@radix-ui/react-slot");
69
85
  var import_jsx_runtime2 = require("react/jsx-runtime");
70
86
  var defaultElement2 = "span";
71
87
  var Text = ({ asChild, ...props }) => {
72
- const variants = pick(props, ...textRecipe.variants());
88
+ const [variants, rest] = extractVariantsFromProps(
89
+ props,
90
+ ...textRecipe.variants()
91
+ );
73
92
  const text = textRecipe(variants);
74
93
  const Comp = asChild ? import_react_slot2.Slot : defaultElement2;
75
- return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(Comp, { ...props, className: mergeClasses(text, props.className), children: props.children });
94
+ return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(Comp, { ...rest, className: mergeClasses(text, rest.className), children: rest.children });
76
95
  };
77
96
 
78
97
  // src/theme/recipes/tooltip.css.ts
@@ -102,7 +121,10 @@ function Tooltip({
102
121
  delayDuration,
103
122
  disableHoverableContent
104
123
  };
105
- const variants = pick(props, ...tooltipContentRecipe.variants());
124
+ const [variants, rest] = extractVariantsFromProps(
125
+ props,
126
+ ...tooltipContentRecipe.variants()
127
+ );
106
128
  const tooltipContent = tooltipContentRecipe(variants);
107
129
  return /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(TooltipPrimitive.Provider, { children: /* @__PURE__ */ (0, import_jsx_runtime3.jsxs)(TooltipPrimitive.Root, { ...rootProps, children: [
108
130
  /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(TooltipPrimitive.Trigger, { asChild: true, children }),
@@ -112,15 +134,15 @@ function Tooltip({
112
134
  side: "top",
113
135
  align: "center",
114
136
  sideOffset: 5,
115
- ...props,
116
- className: mergeClasses(tooltipContent, props.className),
137
+ ...rest,
138
+ className: mergeClasses(tooltipContent, rest.className),
117
139
  children: [
118
140
  /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(
119
141
  Text,
120
142
  {
121
143
  size: "1",
122
144
  style: {
123
- lineHeight: props.multiline ? "20px" : void 0
145
+ lineHeight: variants.multiline ? "20px" : void 0
124
146
  },
125
147
  children: content
126
148
  }