@nexus-cross/design-system 2.0.5 → 2.0.7

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 (259) hide show
  1. package/cursor-rules/nexus-ui-api.mdc +4 -2
  2. package/dist/accordion.js +1 -0
  3. package/dist/accordion.mjs +1 -0
  4. package/dist/alert.js +1 -0
  5. package/dist/alert.mjs +1 -0
  6. package/dist/avatar.js +1 -0
  7. package/dist/avatar.mjs +1 -0
  8. package/dist/badge.js +1 -0
  9. package/dist/badge.mjs +1 -0
  10. package/dist/breadcrumb.js +1 -0
  11. package/dist/breadcrumb.mjs +1 -0
  12. package/dist/button.js +1 -0
  13. package/dist/button.mjs +1 -0
  14. package/dist/carousel.js +1 -0
  15. package/dist/carousel.mjs +1 -0
  16. package/dist/checkbox.js +1 -0
  17. package/dist/checkbox.mjs +1 -0
  18. package/dist/chip.js +1 -0
  19. package/dist/chip.mjs +1 -0
  20. package/dist/chunks/chunk-2JTPRBHZ.mjs +1 -0
  21. package/dist/chunks/chunk-2MC7XJSE.js +1 -0
  22. package/dist/chunks/chunk-2RPRCWKV.mjs +1 -0
  23. package/dist/chunks/chunk-2UPGFY6E.mjs +1 -0
  24. package/dist/chunks/chunk-2Z52NPWB.js +1 -0
  25. package/dist/chunks/chunk-3BMVYJCA.js +16 -0
  26. package/dist/chunks/chunk-3HHJORN7.mjs +1 -0
  27. package/dist/chunks/chunk-3PCNRCTB.js +1 -0
  28. package/dist/chunks/chunk-3RK3UT2O.js +1 -0
  29. package/dist/chunks/chunk-46P52MFM.mjs +1 -0
  30. package/dist/chunks/chunk-4J3GCZ7W.mjs +1 -0
  31. package/dist/chunks/chunk-4KBFVIKX.js +1 -0
  32. package/dist/chunks/chunk-53BHDUID.mjs +1 -0
  33. package/dist/chunks/chunk-54IA2P2Z.mjs +1 -0
  34. package/dist/chunks/chunk-5JHJNN2K.js +1 -0
  35. package/dist/chunks/chunk-5PQ3UCKF.js +1 -0
  36. package/dist/chunks/chunk-6DBRL6NA.mjs +1 -0
  37. package/dist/chunks/chunk-6FMDO6TT.mjs +1 -0
  38. package/dist/chunks/chunk-7WWQ5DS3.mjs +1 -0
  39. package/dist/chunks/chunk-AAITRHED.mjs +1 -0
  40. package/dist/chunks/chunk-ADO7PDLY.mjs +1 -0
  41. package/dist/chunks/chunk-AG2UJPFX.mjs +1 -0
  42. package/dist/chunks/chunk-AOXXE5UQ.mjs +1 -0
  43. package/dist/chunks/chunk-ATZE57ZO.mjs +1 -0
  44. package/dist/chunks/chunk-AZ2URLDD.js +1 -0
  45. package/dist/chunks/chunk-B5O6W3Z4.mjs +1 -0
  46. package/dist/chunks/chunk-B6G5TJRO.js +1 -0
  47. package/dist/chunks/chunk-BBLBTOP4.js +1 -0
  48. package/dist/chunks/chunk-BJMXZJWO.mjs +1 -0
  49. package/dist/chunks/chunk-BLGQHR3M.js +1 -0
  50. package/dist/chunks/chunk-BPUQ2CO2.mjs +1 -0
  51. package/dist/chunks/chunk-BSZ2LN6E.js +1 -0
  52. package/dist/chunks/chunk-C2DSAJTL.js +1 -0
  53. package/dist/chunks/chunk-CA3SOLI3.mjs +1 -0
  54. package/dist/chunks/chunk-CSJDDREF.js +1 -0
  55. package/dist/chunks/chunk-CUTMLBC3.mjs +1 -0
  56. package/dist/chunks/chunk-CZC76ZD5.js +1 -0
  57. package/dist/chunks/chunk-DDY7ENHX.mjs +1 -0
  58. package/dist/chunks/chunk-DICN6GKE.js +1 -0
  59. package/dist/chunks/chunk-DLFV7ZZV.js +1 -0
  60. package/dist/chunks/chunk-DYPPVXQF.js +1 -0
  61. package/dist/chunks/{chunk-2BINGHGR.js → chunk-EBMOQIY5.js} +18 -3
  62. package/dist/chunks/chunk-EHAUUUWB.mjs +1 -0
  63. package/dist/chunks/chunk-EVOOTSY5.js +1 -0
  64. package/dist/chunks/chunk-F24AY3HI.js +1 -0
  65. package/dist/chunks/chunk-FBC53TOS.mjs +1 -0
  66. package/dist/chunks/{chunk-RL5UAEGQ.mjs → chunk-FMUWSORG.mjs} +18 -3
  67. package/dist/chunks/chunk-FY2N42XN.mjs +1 -0
  68. package/dist/chunks/chunk-GX6GSWX3.mjs +1 -0
  69. package/dist/chunks/chunk-H2G5FMRN.mjs +1 -0
  70. package/dist/chunks/chunk-H2V7RHYV.mjs +1 -0
  71. package/dist/chunks/chunk-HU6E2R2T.js +1 -0
  72. package/dist/chunks/chunk-IE4DGLMH.js +1 -0
  73. package/dist/chunks/chunk-INP2AH3B.js +1 -0
  74. package/dist/chunks/chunk-IOSIQLZL.js +1 -0
  75. package/dist/chunks/chunk-J5ZKGPBY.js +1 -0
  76. package/dist/chunks/chunk-JBMN6DY3.mjs +1 -0
  77. package/dist/chunks/chunk-JLDQNDFT.js +1 -0
  78. package/dist/chunks/chunk-K3CK7NTP.js +1 -0
  79. package/dist/chunks/chunk-KHCPES3K.mjs +13 -0
  80. package/dist/chunks/{chunk-4ENXP7WH.js → chunk-L7SGGDY3.js} +5 -12
  81. package/dist/chunks/chunk-LI7SFBUQ.mjs +1 -0
  82. package/dist/chunks/chunk-LMMON5AU.mjs +1 -0
  83. package/dist/chunks/chunk-LOQXCHKL.js +1 -0
  84. package/dist/chunks/chunk-LTS674LF.js +1 -0
  85. package/dist/chunks/chunk-LYPBQI3Y.js +1 -0
  86. package/dist/chunks/chunk-MA2VCCIY.js +1 -0
  87. package/dist/chunks/chunk-MCKOWMLS.mjs +1 -0
  88. package/dist/chunks/chunk-MRRKW5QN.mjs +1 -0
  89. package/dist/chunks/chunk-NFIPQZ4O.js +1 -0
  90. package/dist/chunks/chunk-NHDGKOAM.js +1 -0
  91. package/dist/chunks/chunk-NRO7I4EI.js +1 -0
  92. package/dist/chunks/chunk-OMN5YQCE.js +1 -0
  93. package/dist/chunks/chunk-OTGS6BDQ.mjs +1 -0
  94. package/dist/chunks/chunk-P2T72N62.mjs +1 -0
  95. package/dist/chunks/chunk-P3DZKXG4.js +1 -0
  96. package/dist/chunks/chunk-P4JV4WRB.mjs +1 -0
  97. package/dist/chunks/chunk-PDJTSQOC.js +1 -0
  98. package/dist/chunks/chunk-PIGHBDK5.mjs +1 -0
  99. package/dist/chunks/{chunk-WGGBE4ZD.mjs → chunk-QBMDWUQU.mjs} +2 -9
  100. package/dist/chunks/chunk-QK6NCII4.js +1 -0
  101. package/dist/chunks/chunk-R744EATX.js +1 -0
  102. package/dist/chunks/chunk-RC2Y4UH7.js +1 -0
  103. package/dist/chunks/chunk-RCIBLLSF.js +1 -0
  104. package/dist/chunks/chunk-RS3SBY3I.js +1 -0
  105. package/dist/chunks/chunk-RSFLNWOM.mjs +1 -0
  106. package/dist/chunks/chunk-RX5UKRYK.mjs +1 -0
  107. package/dist/chunks/chunk-S2GMEC43.js +1 -0
  108. package/dist/chunks/chunk-SGNRVYYQ.mjs +1 -0
  109. package/dist/chunks/chunk-SJMCPSVH.mjs +1 -0
  110. package/dist/chunks/chunk-T2IY2TSR.js +1 -0
  111. package/dist/chunks/chunk-TAHDSSA6.js +1 -0
  112. package/dist/chunks/chunk-THBE27U3.mjs +1 -0
  113. package/dist/chunks/chunk-U6OEUBIF.mjs +1 -0
  114. package/dist/chunks/chunk-UKRU46PH.mjs +1 -0
  115. package/dist/chunks/chunk-ULGYTBCT.mjs +1 -0
  116. package/dist/chunks/chunk-USPFWZ7H.js +1 -0
  117. package/dist/chunks/chunk-VDEB5BMT.js +1 -0
  118. package/dist/chunks/chunk-VIGRCJAE.mjs +1 -0
  119. package/dist/chunks/chunk-VVXQZ4XH.mjs +1 -0
  120. package/dist/chunks/chunk-W4GG5A7K.mjs +1 -0
  121. package/dist/chunks/chunk-WATCVNBT.js +1 -0
  122. package/dist/chunks/chunk-WBCXHGRL.mjs +1 -0
  123. package/dist/chunks/chunk-WKCXACMZ.js +1 -0
  124. package/dist/chunks/chunk-WZFKTTVX.mjs +1 -0
  125. package/dist/chunks/chunk-X2SHTVZQ.js +1 -0
  126. package/dist/chunks/chunk-XG6QG65W.mjs +1 -0
  127. package/dist/chunks/chunk-XGIJZ3NZ.js +1 -0
  128. package/dist/chunks/chunk-YB5ZKHVB.js +1 -0
  129. package/dist/chunks/chunk-YCG4FZC3.js +1 -0
  130. package/dist/chunks/chunk-YLO4UKSC.mjs +1 -0
  131. package/dist/chunks/chunk-YMLPMIWX.js +1 -0
  132. package/dist/chunks/chunk-YO5MSDPX.mjs +1 -0
  133. package/dist/chunks/chunk-ZI4LN2B2.js +1 -0
  134. package/dist/chunks/chunk-ZU4AWAFT.mjs +1 -0
  135. package/dist/chunks/chunk-ZWSIIGA3.mjs +1 -0
  136. package/dist/client-only.js +1 -0
  137. package/dist/client-only.mjs +1 -0
  138. package/dist/combobox.js +1 -0
  139. package/dist/combobox.mjs +1 -0
  140. package/dist/components/NumberInput.d.ts +8 -0
  141. package/dist/components/NumberInput.d.ts.map +1 -1
  142. package/dist/components/PriceInput.d.ts.map +1 -1
  143. package/dist/countdown.js +1 -0
  144. package/dist/countdown.mjs +1 -0
  145. package/dist/counter.js +1 -0
  146. package/dist/counter.mjs +1 -0
  147. package/dist/data-grid.js +1 -0
  148. package/dist/data-grid.mjs +1 -0
  149. package/dist/data-list.js +1 -0
  150. package/dist/data-list.mjs +1 -0
  151. package/dist/date-picker.js +1 -0
  152. package/dist/date-picker.mjs +1 -0
  153. package/dist/divider.js +1 -0
  154. package/dist/divider.mjs +1 -0
  155. package/dist/drawer.js +1 -0
  156. package/dist/drawer.mjs +1 -0
  157. package/dist/dropdown-menu.js +1 -0
  158. package/dist/dropdown-menu.mjs +1 -0
  159. package/dist/ellipsis.js +1 -0
  160. package/dist/ellipsis.mjs +1 -0
  161. package/dist/empty-state.js +1 -0
  162. package/dist/empty-state.mjs +1 -0
  163. package/dist/error-boundary.js +1 -0
  164. package/dist/error-boundary.mjs +1 -0
  165. package/dist/hooks/useCheckDevice.js +1 -0
  166. package/dist/hooks/useCheckDevice.mjs +1 -0
  167. package/dist/hooks/useClickOutside.js +1 -0
  168. package/dist/hooks/useClickOutside.mjs +1 -0
  169. package/dist/hooks/useDraggableBottomSheet.js +1 -0
  170. package/dist/hooks/useDraggableBottomSheet.mjs +1 -0
  171. package/dist/hooks/useDraggableWindow.js +1 -0
  172. package/dist/hooks/useDraggableWindow.mjs +1 -0
  173. package/dist/hooks/useInView.js +1 -0
  174. package/dist/hooks/useInView.mjs +1 -0
  175. package/dist/hooks/useModal.js +1 -0
  176. package/dist/hooks/useModal.mjs +1 -0
  177. package/dist/image-upload.js +1 -0
  178. package/dist/image-upload.mjs +1 -0
  179. package/dist/index.js +9 -7
  180. package/dist/index.mjs +4 -2
  181. package/dist/infinite-scroll.js +1 -0
  182. package/dist/infinite-scroll.mjs +1 -0
  183. package/dist/marquee.js +1 -0
  184. package/dist/marquee.mjs +1 -0
  185. package/dist/modal/index.js +1 -0
  186. package/dist/modal/index.mjs +1 -0
  187. package/dist/number-input.js +6 -4
  188. package/dist/number-input.mjs +3 -1
  189. package/dist/nx-image.js +1 -0
  190. package/dist/nx-image.mjs +1 -0
  191. package/dist/pagination.js +1 -0
  192. package/dist/pagination.mjs +1 -0
  193. package/dist/popover.js +1 -0
  194. package/dist/popover.mjs +1 -0
  195. package/dist/price-input.js +5 -3
  196. package/dist/price-input.mjs +3 -1
  197. package/dist/progress.js +1 -0
  198. package/dist/progress.mjs +1 -0
  199. package/dist/radio-group.js +1 -0
  200. package/dist/radio-group.mjs +1 -0
  201. package/dist/schemas/_all.json +6 -1
  202. package/dist/schemas/number-input.d.ts +3 -0
  203. package/dist/schemas/number-input.d.ts.map +1 -1
  204. package/dist/schemas/numberInput.json +6 -1
  205. package/dist/schemas.js +7 -2
  206. package/dist/schemas.mjs +7 -2
  207. package/dist/select.js +1 -0
  208. package/dist/select.mjs +1 -0
  209. package/dist/skeleton.js +1 -0
  210. package/dist/skeleton.mjs +1 -0
  211. package/dist/slider.js +1 -0
  212. package/dist/slider.mjs +1 -0
  213. package/dist/spinner.js +1 -0
  214. package/dist/spinner.mjs +1 -0
  215. package/dist/stepper.js +1 -0
  216. package/dist/stepper.mjs +1 -0
  217. package/dist/styles/layer.js +1 -0
  218. package/dist/styles/layer.mjs +1 -0
  219. package/dist/styles.js +1 -0
  220. package/dist/styles.mjs +1 -0
  221. package/dist/switch.js +1 -0
  222. package/dist/switch.mjs +1 -0
  223. package/dist/tab.js +1 -0
  224. package/dist/tab.mjs +1 -0
  225. package/dist/table.js +1 -0
  226. package/dist/table.mjs +1 -0
  227. package/dist/tag-input.js +1 -0
  228. package/dist/tag-input.mjs +1 -0
  229. package/dist/text-area.js +1 -0
  230. package/dist/text-area.mjs +1 -0
  231. package/dist/text-input.js +1 -0
  232. package/dist/text-input.mjs +1 -0
  233. package/dist/toast.js +1 -0
  234. package/dist/toast.mjs +1 -0
  235. package/dist/toggle-group.js +1 -0
  236. package/dist/toggle-group.mjs +1 -0
  237. package/dist/tokens/company.css +1 -1
  238. package/dist/tokens/css.css +1 -1
  239. package/dist/tokens/index.js +1 -0
  240. package/dist/tokens/index.mjs +1 -0
  241. package/dist/tokens/tailwind.js +1 -0
  242. package/dist/tokens-domains/gamehub-vars.css +1 -1
  243. package/dist/tokens-domains/gamehub.css +1 -1
  244. package/dist/tokens-domains/index.js +1 -0
  245. package/dist/tokens-domains/index.mjs +1 -0
  246. package/dist/tokens-domains/prediction-vars.css +1 -1
  247. package/dist/tokens-domains/prediction.css +1 -1
  248. package/dist/tokens-domains/tailwind.js +1 -0
  249. package/dist/tooltip.js +1 -0
  250. package/dist/tooltip.mjs +1 -0
  251. package/dist/utils/cn.js +1 -0
  252. package/dist/utils/cn.mjs +1 -0
  253. package/dist/utils/numberFormat.d.ts +15 -0
  254. package/dist/utils/numberFormat.d.ts.map +1 -0
  255. package/dist/utils/scroll.js +1 -0
  256. package/dist/utils/scroll.mjs +1 -0
  257. package/dist/virtual-scroll.js +1 -0
  258. package/dist/virtual-scroll.mjs +1 -0
  259. package/package.json +3 -3
@@ -1,3 +1,4 @@
1
+ "use client";
1
2
  'use strict';
2
3
 
3
4
  var chunkRS3SBY3I_js = require('./chunks/chunk-RS3SBY3I.js');
@@ -1,2 +1,3 @@
1
+ "use client";
1
2
  export { Pagination, pageButtonVariants, paginationVariants } from './chunks/chunk-2RPRCWKV.mjs';
2
3
  import './chunks/chunk-MCKOWMLS.mjs';
package/dist/popover.js CHANGED
@@ -1,3 +1,4 @@
1
+ "use client";
1
2
  'use strict';
2
3
 
3
4
  var chunkLOQXCHKL_js = require('./chunks/chunk-LOQXCHKL.js');
package/dist/popover.mjs CHANGED
@@ -1,2 +1,3 @@
1
+ "use client";
1
2
  export { Popover, PopoverArrow, PopoverClose, PopoverContent, PopoverTrigger, popoverContentClasses } from './chunks/chunk-ULGYTBCT.mjs';
2
3
  import './chunks/chunk-MCKOWMLS.mjs';
@@ -1,15 +1,17 @@
1
+ "use client";
1
2
  'use strict';
2
3
 
3
- var chunk4ENXP7WH_js = require('./chunks/chunk-4ENXP7WH.js');
4
+ var chunkL7SGGDY3_js = require('./chunks/chunk-L7SGGDY3.js');
5
+ require('./chunks/chunk-3BMVYJCA.js');
4
6
  require('./chunks/chunk-CZC76ZD5.js');
5
7
 
6
8
 
7
9
 
8
10
  Object.defineProperty(exports, "PriceInput", {
9
11
  enumerable: true,
10
- get: function () { return chunk4ENXP7WH_js.PriceInput; }
12
+ get: function () { return chunkL7SGGDY3_js.PriceInput; }
11
13
  });
12
14
  Object.defineProperty(exports, "priceInputVariants", {
13
15
  enumerable: true,
14
- get: function () { return chunk4ENXP7WH_js.priceInputVariants; }
16
+ get: function () { return chunkL7SGGDY3_js.priceInputVariants; }
15
17
  });
@@ -1,2 +1,4 @@
1
- export { PriceInput, priceInputVariants } from './chunks/chunk-WGGBE4ZD.mjs';
1
+ "use client";
2
+ export { PriceInput, priceInputVariants } from './chunks/chunk-QBMDWUQU.mjs';
3
+ import './chunks/chunk-KHCPES3K.mjs';
2
4
  import './chunks/chunk-MCKOWMLS.mjs';
package/dist/progress.js CHANGED
@@ -1,3 +1,4 @@
1
+ "use client";
1
2
  'use strict';
2
3
 
3
4
  var chunkZI4LN2B2_js = require('./chunks/chunk-ZI4LN2B2.js');
package/dist/progress.mjs CHANGED
@@ -1,2 +1,3 @@
1
+ "use client";
1
2
  export { Progress, progressVariants } from './chunks/chunk-B5O6W3Z4.mjs';
2
3
  import './chunks/chunk-MCKOWMLS.mjs';
@@ -1,3 +1,4 @@
1
+ "use client";
1
2
  'use strict';
2
3
 
3
4
  var chunkJLDQNDFT_js = require('./chunks/chunk-JLDQNDFT.js');
@@ -1,2 +1,3 @@
1
+ "use client";
1
2
  export { RadioGroup, RadioItem, radioGroupVariants, radioItemVariants } from './chunks/chunk-BJMXZJWO.mjs';
2
3
  import './chunks/chunk-MCKOWMLS.mjs';
@@ -2101,6 +2101,11 @@
2101
2101
  "type": "string",
2102
2102
  "description": "Placeholder (default: \"0\")"
2103
2103
  },
2104
+ "separator": {
2105
+ "type": "boolean",
2106
+ "default": false,
2107
+ "description": "Display thousand-separator commas (e.g. 1,000). onValueChange still receives raw number without commas. Decimal part is not separated (1,234.567)."
2108
+ },
2104
2109
  "name": {
2105
2110
  "type": "string",
2106
2111
  "description": "Form field name"
@@ -2128,7 +2133,7 @@
2128
2133
  }
2129
2134
  },
2130
2135
  "additionalProperties": false,
2131
- "description": "Number input with two variants: basic (chevron arrows) and bind (+/- buttons). Supports label, description, max display (click to fill), accelerated increment on long press. numberInputBind(ref, direction) binds acceleration to external buttons.\n\nWHEN TO USE:\n • Any numeric field — quantity, score, age, count\n • Currency with thousand separators → PriceInput instead\n • Date / time → DatePicker instead\n\nANTI-PATTERNS:\n ✗ <TextInput type=\"number\"> → <NumberInput> (loses keyboard ↑↓, step, accelerated long-press, max click)\n ✗ Custom +/- buttons + <input> → variant=\"bind\" (or numberInputBind for external)\n ✗ Manual thousand separators for currencyPriceInput\n ✗ Inline unit text inside label/description → use prefixIcon/suffixIcon (e.g. suffixIcon=\"%\")"
2136
+ "description": "Number input with two variants: basic (chevron arrows) and bind (+/- buttons). Supports label, description, max display (click to fill), accelerated increment on long press. numberInputBind(ref, direction) binds acceleration to external buttons.\n\nWHEN TO USE:\n • Any numeric field — quantity, score, age, count\n • Need thousand separators? Set separator={true}\n • Currency UX (prefix $, balance, maxBalance, click-to-fill balance) → PriceInput instead\n • Date / time → DatePicker instead\n\nANTI-PATTERNS:\n ✗ <TextInput type=\"number\"> → <NumberInput> (loses keyboard ↑↓, step, accelerated long-press, max click)\n ✗ Custom +/- buttons + <input> → variant=\"bind\" (or numberInputBind for external)\n ✗ Manual thousand separator string formattinguse separator={true}\n ✗ Inline unit text inside label/description → use prefixIcon/suffixIcon (e.g. suffixIcon=\"%\")"
2132
2137
  }
2133
2138
  },
2134
2139
  "$schema": "http://json-schema.org/draft-07/schema#"
@@ -17,6 +17,7 @@ export declare const numberInputPropsSchema: z.ZodObject<{
17
17
  disabled: z.ZodOptional<z.ZodBoolean>;
18
18
  readOnly: z.ZodOptional<z.ZodBoolean>;
19
19
  placeholder: z.ZodOptional<z.ZodString>;
20
+ separator: z.ZodDefault<z.ZodBoolean>;
20
21
  name: z.ZodOptional<z.ZodString>;
21
22
  id: z.ZodOptional<z.ZodString>;
22
23
  autoFocus: z.ZodOptional<z.ZodBoolean>;
@@ -25,6 +26,7 @@ export declare const numberInputPropsSchema: z.ZodObject<{
25
26
  onFocus: z.ZodOptional<z.ZodAny>;
26
27
  className: z.ZodOptional<z.ZodString>;
27
28
  }, "strip", z.ZodTypeAny, {
29
+ separator: boolean;
28
30
  size: "xl" | "lg" | "md";
29
31
  variant: "basic" | "bind";
30
32
  step: number;
@@ -55,6 +57,7 @@ export declare const numberInputPropsSchema: z.ZodObject<{
55
57
  id?: string | undefined;
56
58
  error?: boolean | undefined;
57
59
  label?: string | undefined;
60
+ separator?: boolean | undefined;
58
61
  description?: string | undefined;
59
62
  value?: string | number | undefined;
60
63
  size?: "xl" | "lg" | "md" | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"number-input.d.ts","sourceRoot":"","sources":["../../src/schemas/number-input.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA0EhC,CAAC"}
1
+ {"version":3,"file":"number-input.d.ts","sourceRoot":"","sources":["../../src/schemas/number-input.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAiFhC,CAAC"}
@@ -87,6 +87,11 @@
87
87
  "type": "string",
88
88
  "description": "Placeholder (default: \"0\")"
89
89
  },
90
+ "separator": {
91
+ "type": "boolean",
92
+ "default": false,
93
+ "description": "Display thousand-separator commas (e.g. 1,000). onValueChange still receives raw number without commas. Decimal part is not separated (1,234.567)."
94
+ },
90
95
  "name": {
91
96
  "type": "string",
92
97
  "description": "Form field name"
@@ -114,7 +119,7 @@
114
119
  }
115
120
  },
116
121
  "additionalProperties": false,
117
- "description": "Number input with two variants: basic (chevron arrows) and bind (+/- buttons). Supports label, description, max display (click to fill), accelerated increment on long press. numberInputBind(ref, direction) binds acceleration to external buttons.\n\nWHEN TO USE:\n • Any numeric field — quantity, score, age, count\n • Currency with thousand separators → PriceInput instead\n • Date / time → DatePicker instead\n\nANTI-PATTERNS:\n ✗ <TextInput type=\"number\"> → <NumberInput> (loses keyboard ↑↓, step, accelerated long-press, max click)\n ✗ Custom +/- buttons + <input> → variant=\"bind\" (or numberInputBind for external)\n ✗ Manual thousand separators for currencyPriceInput\n ✗ Inline unit text inside label/description → use prefixIcon/suffixIcon (e.g. suffixIcon=\"%\")"
122
+ "description": "Number input with two variants: basic (chevron arrows) and bind (+/- buttons). Supports label, description, max display (click to fill), accelerated increment on long press. numberInputBind(ref, direction) binds acceleration to external buttons.\n\nWHEN TO USE:\n • Any numeric field — quantity, score, age, count\n • Need thousand separators? Set separator={true}\n • Currency UX (prefix $, balance, maxBalance, click-to-fill balance) → PriceInput instead\n • Date / time → DatePicker instead\n\nANTI-PATTERNS:\n ✗ <TextInput type=\"number\"> → <NumberInput> (loses keyboard ↑↓, step, accelerated long-press, max click)\n ✗ Custom +/- buttons + <input> → variant=\"bind\" (or numberInputBind for external)\n ✗ Manual thousand separator string formattinguse separator={true}\n ✗ Inline unit text inside label/description → use prefixIcon/suffixIcon (e.g. suffixIcon=\"%\")"
118
123
  }
119
124
  },
120
125
  "$schema": "http://json-schema.org/draft-07/schema#"
package/dist/schemas.js CHANGED
@@ -1,3 +1,4 @@
1
+ "use client";
1
2
  'use strict';
2
3
 
3
4
  var zod = require('zod');
@@ -1186,6 +1187,9 @@ var numberInputPropsSchema = zod.z.object({
1186
1187
  disabled: zod.z.boolean().optional().describe("Disabled"),
1187
1188
  readOnly: zod.z.boolean().optional().describe("Read-only (includes hiding buttons)"),
1188
1189
  placeholder: zod.z.string().optional().describe('Placeholder (default: "0")'),
1190
+ separator: zod.z.boolean().default(false).describe(
1191
+ "Display thousand-separator commas (e.g. 1,000). onValueChange still receives raw number without commas. Decimal part is not separated (1,234.567)."
1192
+ ),
1189
1193
  name: zod.z.string().optional().describe("Form field name"),
1190
1194
  id: zod.z.string().optional().describe("Element ID"),
1191
1195
  autoFocus: zod.z.boolean().optional().describe("Auto focus"),
@@ -1198,13 +1202,14 @@ var numberInputPropsSchema = zod.z.object({
1198
1202
 
1199
1203
  WHEN TO USE:
1200
1204
  \u2022 Any numeric field \u2014 quantity, score, age, count
1201
- \u2022 Currency with thousand separators \u2192 PriceInput instead
1205
+ \u2022 Need thousand separators? Set separator={true}
1206
+ \u2022 Currency UX (prefix $, balance, maxBalance, click-to-fill balance) \u2192 PriceInput instead
1202
1207
  \u2022 Date / time \u2192 DatePicker instead
1203
1208
 
1204
1209
  ANTI-PATTERNS:
1205
1210
  \u2717 <TextInput type="number"> \u2192 <NumberInput> (loses keyboard \u2191\u2193, step, accelerated long-press, max click)
1206
1211
  \u2717 Custom +/- buttons + <input> \u2192 variant="bind" (or numberInputBind for external)
1207
- \u2717 Manual thousand separators for currency \u2192 PriceInput
1212
+ \u2717 Manual thousand separator string formatting \u2192 use separator={true}
1208
1213
  \u2717 Inline unit text inside label/description \u2192 use prefixIcon/suffixIcon (e.g. suffixIcon="%")`
1209
1214
  );
1210
1215
  var priceInputPropsSchema = zod.z.object({
package/dist/schemas.mjs CHANGED
@@ -1,3 +1,4 @@
1
+ "use client";
1
2
  import { z } from 'zod';
2
3
 
3
4
  // src/schemas/breadcrumb.ts
@@ -1184,6 +1185,9 @@ var numberInputPropsSchema = z.object({
1184
1185
  disabled: z.boolean().optional().describe("Disabled"),
1185
1186
  readOnly: z.boolean().optional().describe("Read-only (includes hiding buttons)"),
1186
1187
  placeholder: z.string().optional().describe('Placeholder (default: "0")'),
1188
+ separator: z.boolean().default(false).describe(
1189
+ "Display thousand-separator commas (e.g. 1,000). onValueChange still receives raw number without commas. Decimal part is not separated (1,234.567)."
1190
+ ),
1187
1191
  name: z.string().optional().describe("Form field name"),
1188
1192
  id: z.string().optional().describe("Element ID"),
1189
1193
  autoFocus: z.boolean().optional().describe("Auto focus"),
@@ -1196,13 +1200,14 @@ var numberInputPropsSchema = z.object({
1196
1200
 
1197
1201
  WHEN TO USE:
1198
1202
  \u2022 Any numeric field \u2014 quantity, score, age, count
1199
- \u2022 Currency with thousand separators \u2192 PriceInput instead
1203
+ \u2022 Need thousand separators? Set separator={true}
1204
+ \u2022 Currency UX (prefix $, balance, maxBalance, click-to-fill balance) \u2192 PriceInput instead
1200
1205
  \u2022 Date / time \u2192 DatePicker instead
1201
1206
 
1202
1207
  ANTI-PATTERNS:
1203
1208
  \u2717 <TextInput type="number"> \u2192 <NumberInput> (loses keyboard \u2191\u2193, step, accelerated long-press, max click)
1204
1209
  \u2717 Custom +/- buttons + <input> \u2192 variant="bind" (or numberInputBind for external)
1205
- \u2717 Manual thousand separators for currency \u2192 PriceInput
1210
+ \u2717 Manual thousand separator string formatting \u2192 use separator={true}
1206
1211
  \u2717 Inline unit text inside label/description \u2192 use prefixIcon/suffixIcon (e.g. suffixIcon="%")`
1207
1212
  );
1208
1213
  var priceInputPropsSchema = z.object({
package/dist/select.js CHANGED
@@ -1,3 +1,4 @@
1
+ "use client";
1
2
  'use strict';
2
3
 
3
4
  var chunkHU6E2R2T_js = require('./chunks/chunk-HU6E2R2T.js');
package/dist/select.mjs CHANGED
@@ -1,2 +1,3 @@
1
+ "use client";
1
2
  export { Select, SelectItem, selectContentVariants, selectTriggerVariants } from './chunks/chunk-53BHDUID.mjs';
2
3
  import './chunks/chunk-MCKOWMLS.mjs';
package/dist/skeleton.js CHANGED
@@ -1,3 +1,4 @@
1
+ "use client";
1
2
  'use strict';
2
3
 
3
4
  var chunkBLGQHR3M_js = require('./chunks/chunk-BLGQHR3M.js');
package/dist/skeleton.mjs CHANGED
@@ -1,2 +1,3 @@
1
+ "use client";
1
2
  export { Skeleton } from './chunks/chunk-P2T72N62.mjs';
2
3
  import './chunks/chunk-MCKOWMLS.mjs';
package/dist/slider.js CHANGED
@@ -1,3 +1,4 @@
1
+ "use client";
1
2
  'use strict';
2
3
 
3
4
  var chunkDICN6GKE_js = require('./chunks/chunk-DICN6GKE.js');
package/dist/slider.mjs CHANGED
@@ -1,2 +1,3 @@
1
+ "use client";
1
2
  export { Slider, sliderVariants } from './chunks/chunk-H2G5FMRN.mjs';
2
3
  import './chunks/chunk-MCKOWMLS.mjs';
package/dist/spinner.js CHANGED
@@ -1,3 +1,4 @@
1
+ "use client";
1
2
  'use strict';
2
3
 
3
4
  var chunkIOSIQLZL_js = require('./chunks/chunk-IOSIQLZL.js');
package/dist/spinner.mjs CHANGED
@@ -1,2 +1,3 @@
1
+ "use client";
1
2
  export { Spinner } from './chunks/chunk-BPUQ2CO2.mjs';
2
3
  import './chunks/chunk-MCKOWMLS.mjs';
package/dist/stepper.js CHANGED
@@ -1,3 +1,4 @@
1
+ "use client";
1
2
  'use strict';
2
3
 
3
4
  var chunk4KBFVIKX_js = require('./chunks/chunk-4KBFVIKX.js');
package/dist/stepper.mjs CHANGED
@@ -1,2 +1,3 @@
1
+ "use client";
1
2
  export { Stepper, stepperVariants } from './chunks/chunk-RSFLNWOM.mjs';
2
3
  import './chunks/chunk-MCKOWMLS.mjs';
@@ -1,3 +1,4 @@
1
+ "use client";
1
2
  'use strict';
2
3
 
3
4
  var chunkYMLPMIWX_js = require('../chunks/chunk-YMLPMIWX.js');
@@ -1,3 +1,4 @@
1
+ "use client";
1
2
  import { built_default } from '../chunks/chunk-JBMN6DY3.mjs';
2
3
 
3
4
  // src/styles/inject-layer.ts
package/dist/styles.js CHANGED
@@ -1,3 +1,4 @@
1
+ "use client";
1
2
  'use strict';
2
3
 
3
4
  var chunkYMLPMIWX_js = require('./chunks/chunk-YMLPMIWX.js');
package/dist/styles.mjs CHANGED
@@ -1,3 +1,4 @@
1
+ "use client";
1
2
  import { built_default } from './chunks/chunk-JBMN6DY3.mjs';
2
3
 
3
4
  // src/styles/inject.ts
package/dist/switch.js CHANGED
@@ -1,3 +1,4 @@
1
+ "use client";
1
2
  'use strict';
2
3
 
3
4
  var chunkX2SHTVZQ_js = require('./chunks/chunk-X2SHTVZQ.js');
package/dist/switch.mjs CHANGED
@@ -1,2 +1,3 @@
1
+ "use client";
1
2
  export { Switch, switchVariants } from './chunks/chunk-ADO7PDLY.mjs';
2
3
  import './chunks/chunk-MCKOWMLS.mjs';
package/dist/tab.js CHANGED
@@ -1,3 +1,4 @@
1
+ "use client";
1
2
  'use strict';
2
3
 
3
4
  var chunkVDEB5BMT_js = require('./chunks/chunk-VDEB5BMT.js');
package/dist/tab.mjs CHANGED
@@ -1,2 +1,3 @@
1
+ "use client";
1
2
  export { Tab, tabListVariants, tabTriggerVariants } from './chunks/chunk-ATZE57ZO.mjs';
2
3
  import './chunks/chunk-MCKOWMLS.mjs';
package/dist/table.js CHANGED
@@ -1,3 +1,4 @@
1
+ "use client";
1
2
  'use strict';
2
3
 
3
4
  var chunk3RK3UT2O_js = require('./chunks/chunk-3RK3UT2O.js');
package/dist/table.mjs CHANGED
@@ -1,3 +1,4 @@
1
+ "use client";
1
2
  export { Table, TableHighlightProvider, TableRow, TdColumn, tableRowVariants, useTableHighlight } from './chunks/chunk-AAITRHED.mjs';
2
3
  import './chunks/chunk-P2T72N62.mjs';
3
4
  import './chunks/chunk-MCKOWMLS.mjs';
package/dist/tag-input.js CHANGED
@@ -1,3 +1,4 @@
1
+ "use client";
1
2
  'use strict';
2
3
 
3
4
  var chunkDYPPVXQF_js = require('./chunks/chunk-DYPPVXQF.js');
@@ -1,2 +1,3 @@
1
+ "use client";
1
2
  export { TagInput, tagInputVariants } from './chunks/chunk-H2V7RHYV.mjs';
2
3
  import './chunks/chunk-MCKOWMLS.mjs';
package/dist/text-area.js CHANGED
@@ -1,3 +1,4 @@
1
+ "use client";
1
2
  'use strict';
2
3
 
3
4
  var chunkXGIJZ3NZ_js = require('./chunks/chunk-XGIJZ3NZ.js');
@@ -1,2 +1,3 @@
1
+ "use client";
1
2
  export { TextArea, textAreaVariants } from './chunks/chunk-ZU4AWAFT.mjs';
2
3
  import './chunks/chunk-MCKOWMLS.mjs';
@@ -1,3 +1,4 @@
1
+ "use client";
1
2
  'use strict';
2
3
 
3
4
  var chunkBBLBTOP4_js = require('./chunks/chunk-BBLBTOP4.js');
@@ -1,2 +1,3 @@
1
+ "use client";
1
2
  export { TextInput, textInputVariants } from './chunks/chunk-UKRU46PH.mjs';
2
3
  import './chunks/chunk-MCKOWMLS.mjs';
package/dist/toast.js CHANGED
@@ -1,3 +1,4 @@
1
+ "use client";
1
2
  'use strict';
2
3
 
3
4
  var chunkYB5ZKHVB_js = require('./chunks/chunk-YB5ZKHVB.js');
package/dist/toast.mjs CHANGED
@@ -1,2 +1,3 @@
1
+ "use client";
1
2
  export { Toaster, toast, useToast } from './chunks/chunk-ZWSIIGA3.mjs';
2
3
  import './chunks/chunk-MCKOWMLS.mjs';
@@ -1,3 +1,4 @@
1
+ "use client";
1
2
  'use strict';
2
3
 
3
4
  var chunkK3CK7NTP_js = require('./chunks/chunk-K3CK7NTP.js');
@@ -1,2 +1,3 @@
1
+ "use client";
1
2
  export { ToggleGroup, toggleGroupVariants } from './chunks/chunk-PIGHBDK5.mjs';
2
3
  import './chunks/chunk-MCKOWMLS.mjs';
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * Company CSS — Tailwind v4 (@theme + .dark)
3
3
  * 자동 생성: scripts/generate-css.js
4
- * 생성일: 2026-05-14T03:22:06.241Z
4
+ * 생성일: 2026-06-04T08:30:19.247Z
5
5
  *
6
6
  * @theme: Tailwind 유틸리티 클래스 자동 생성
7
7
  * :root: 순수 CSS 변수 (var()로 직접 사용)
@@ -2,7 +2,7 @@
2
2
  * Company CSS — 순수 CSS 변수 (:root + .dark)
3
3
  * Tailwind 없이 var(--*) 로 사용 가능
4
4
  * 자동 생성: scripts/generate-css.js
5
- * 생성일: 2026-05-14T03:22:06.246Z
5
+ * 생성일: 2026-06-04T08:30:19.252Z
6
6
  */
7
7
 
8
8
  :root {
@@ -1,3 +1,4 @@
1
+ "use client";
1
2
  'use strict';
2
3
 
3
4
  var tokens = require('@nexus-cross/tokens');
@@ -1 +1,2 @@
1
+ "use client";
1
2
  export * from '@nexus-cross/tokens';
@@ -1,3 +1,4 @@
1
+ "use client";
1
2
  /**
2
3
  * @nexus-cross/tokens - Tailwind CSS v3 Preset
3
4
  *
@@ -2,7 +2,7 @@
2
2
  * Gamehub Domain CSS — 순수 CSS 변수
3
3
  * Tailwind 없이 var(--*) 로 사용 가능
4
4
  * 자동 생성: scripts/generate-css.js
5
- * 생성일: 2026-05-14T03:22:06.251Z
5
+ * 생성일: 2026-06-04T08:30:19.258Z
6
6
  */
7
7
 
8
8
  :root {
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * Gamehub Domain CSS — Tailwind v4 (@theme + .gamehub)
3
3
  * 자동 생성: scripts/generate-css.js
4
- * 생성일: 2026-05-14T03:22:06.250Z
4
+ * 생성일: 2026-06-04T08:30:19.257Z
5
5
  */
6
6
 
7
7
  @theme {
@@ -1,3 +1,4 @@
1
+ "use client";
1
2
  'use strict';
2
3
 
3
4
  var tokensDomains = require('@nexus-cross/tokens-domains');
@@ -1 +1,2 @@
1
+ "use client";
1
2
  export * from '@nexus-cross/tokens-domains';
@@ -2,7 +2,7 @@
2
2
  * Prediction Domain CSS — 순수 CSS 변수
3
3
  * Tailwind 없이 var(--*) 로 사용 가능
4
4
  * 자동 생성: scripts/generate-css.js
5
- * 생성일: 2026-05-14T03:22:06.253Z
5
+ * 생성일: 2026-06-04T08:30:19.259Z
6
6
  */
7
7
 
8
8
  :root {
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * Prediction Domain CSS — Tailwind v4 (@theme + .prediction)
3
3
  * 자동 생성: scripts/generate-css.js
4
- * 생성일: 2026-05-14T03:22:06.252Z
4
+ * 생성일: 2026-06-04T08:30:19.259Z
5
5
  */
6
6
 
7
7
  @theme {
@@ -1,3 +1,4 @@
1
+ "use client";
1
2
  /**
2
3
  * @nexus-cross/tokens-domains - Tailwind CSS v3 Preset
3
4
  *
package/dist/tooltip.js CHANGED
@@ -1,3 +1,4 @@
1
+ "use client";
1
2
  'use strict';
2
3
 
3
4
  var chunkIE4DGLMH_js = require('./chunks/chunk-IE4DGLMH.js');
package/dist/tooltip.mjs CHANGED
@@ -1,2 +1,3 @@
1
+ "use client";
1
2
  export { Tooltip, TooltipProvider, tooltipContentVariants } from './chunks/chunk-W4GG5A7K.mjs';
2
3
  import './chunks/chunk-MCKOWMLS.mjs';
package/dist/utils/cn.js CHANGED
@@ -1,3 +1,4 @@
1
+ "use client";
1
2
  'use strict';
2
3
 
3
4
  var chunkCZC76ZD5_js = require('../chunks/chunk-CZC76ZD5.js');
package/dist/utils/cn.mjs CHANGED
@@ -1 +1,2 @@
1
+ "use client";
1
2
  export { cn } from '../chunks/chunk-MCKOWMLS.mjs';
@@ -0,0 +1,15 @@
1
+ /**
2
+ * 천단위 콤마(,) 포맷 / 언포맷 유틸.
3
+ *
4
+ * NumberInput, PriceInput 등 숫자 입력 컴포넌트에서 `separator` 옵션이 켜졌을 때 공통으로 사용한다.
5
+ *
6
+ * - `formatWithComma('1234567.89') → '1,234,567.89'` (소수부는 콤마 미적용)
7
+ * - `formatWithComma('-1234') → '-1,234'`
8
+ * - `stripComma('1,234,567') → '1234567'`
9
+ *
10
+ * `value` 가 `string` 타입인 것은 입력 도중 사용자가 타이핑하는 부분 문자열
11
+ * (예: '-', '12.', '0.0') 을 손상 없이 유지하기 위함이다.
12
+ */
13
+ export declare function formatWithComma(value: string): string;
14
+ export declare function stripComma(value: string): string;
15
+ //# sourceMappingURL=numberFormat.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"numberFormat.d.ts","sourceRoot":"","sources":["../../src/utils/numberFormat.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAKrD;AAED,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAEhD"}
@@ -1,3 +1,4 @@
1
+ "use client";
1
2
  'use strict';
2
3
 
3
4
  var chunkT2IY2TSR_js = require('../chunks/chunk-T2IY2TSR.js');
@@ -1 +1,2 @@
1
+ "use client";
1
2
  export { scrollFreeze, scrollRelease } from '../chunks/chunk-54IA2P2Z.mjs';
@@ -1,3 +1,4 @@
1
+ "use client";
1
2
  'use strict';
2
3
 
3
4
  var chunkOMN5YQCE_js = require('./chunks/chunk-OMN5YQCE.js');
@@ -1,2 +1,3 @@
1
+ "use client";
1
2
  export { VirtualGrid, VirtualList } from './chunks/chunk-EHAUUUWB.mjs';
2
3
  import './chunks/chunk-MCKOWMLS.mjs';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nexus-cross/design-system",
3
- "version": "2.0.5",
3
+ "version": "2.0.7",
4
4
  "description": "NEXUS Design System UI Components",
5
5
  "main": "./dist/index.js",
6
6
  "module": "./dist/index.mjs",
@@ -361,8 +361,8 @@
361
361
  "sonner": "^2.0.7",
362
362
  "vaul": "^1.1.2",
363
363
  "zod": "^3.25.76",
364
- "@nexus-cross/tokens": "2.0.5",
365
- "@nexus-cross/tokens-domains": "2.0.5"
364
+ "@nexus-cross/tokens": "2.0.7",
365
+ "@nexus-cross/tokens-domains": "2.0.7"
366
366
  },
367
367
  "devDependencies": {
368
368
  "@testing-library/jest-dom": "^6.9.1",