@godxjp/ui 6.0.0 → 6.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (434) hide show
  1. package/dist/app/index.d.ts +140 -0
  2. package/dist/app/index.js +38 -0
  3. package/dist/app.prop-IobwLwaM.d.ts +90 -0
  4. package/dist/checkbox-NkFkqsQ8.d.ts +13 -0
  5. package/dist/chunk-2XW7J3EI.js +226 -0
  6. package/dist/chunk-3F2AKYRD.js +416 -0
  7. package/dist/chunk-3KPEZ5CF.js +37 -0
  8. package/dist/chunk-3UGU5TYP.js +89 -0
  9. package/{src/props/registry.ts → dist/chunk-6RA3KSVK.js} +118 -133
  10. package/dist/chunk-7NZFVD24.js +122 -0
  11. package/dist/chunk-7PWBC4BY.js +25 -0
  12. package/dist/chunk-7S7MYFXE.js +61 -0
  13. package/dist/chunk-7WRZG2IG.js +71 -0
  14. package/dist/chunk-B775Y6BE.js +1 -0
  15. package/dist/chunk-BHV2FUOA.js +111 -0
  16. package/dist/chunk-BI3HERR7.js +70 -0
  17. package/dist/chunk-BPSKQUL2.js +68 -0
  18. package/dist/chunk-CDWPQ5RP.js +187 -0
  19. package/dist/chunk-CP2LET6N.js +244 -0
  20. package/dist/chunk-CQBADMFG.js +20 -0
  21. package/dist/chunk-CRERCLIZ.js +33 -0
  22. package/dist/chunk-DU6ZYZRP.js +238 -0
  23. package/dist/chunk-DY5C44UP.js +55 -0
  24. package/dist/chunk-E4HJNQ62.js +117 -0
  25. package/dist/chunk-E76QIYSY.js +93 -0
  26. package/dist/chunk-F7PG4OEV.js +37 -0
  27. package/dist/chunk-GDSVW62T.js +171 -0
  28. package/dist/chunk-H2FHJOLU.js +178 -0
  29. package/dist/chunk-HJEBRCXL.js +55 -0
  30. package/dist/chunk-ICM6XBST.js +16 -0
  31. package/{src/components/data-entry/calendar.tsx → dist/chunk-IK7I3ABN.js} +33 -35
  32. package/dist/chunk-L6J44O74.js +144 -0
  33. package/dist/chunk-LDSLS6HE.js +1 -0
  34. package/dist/chunk-LVNUHUEZ.js +191 -0
  35. package/dist/chunk-M64MVRLS.js +92 -0
  36. package/dist/chunk-NGQW3KEM.js +402 -0
  37. package/dist/chunk-NZ4FOC5N.js +559 -0
  38. package/dist/chunk-PIIRNAXA.js +26 -0
  39. package/dist/chunk-S66TJXJU.js +33 -0
  40. package/dist/chunk-SMLKNECP.js +133 -0
  41. package/dist/chunk-TAHBM3F2.js +66 -0
  42. package/dist/chunk-TO33OY4L.js +150 -0
  43. package/dist/chunk-TO7URV7U.js +51 -0
  44. package/dist/chunk-TOO5AEKL.js +81 -0
  45. package/dist/chunk-U3GHAOIJ.js +299 -0
  46. package/dist/chunk-U7N2A7A3.js +9 -0
  47. package/dist/chunk-UX634MYF.js +123 -0
  48. package/dist/chunk-V6UWJKZF.js +28 -0
  49. package/{src/components/data-entry/input.tsx → dist/chunk-VOHTRR5X.js} +18 -16
  50. package/dist/chunk-WRFKVUPW.js +332 -0
  51. package/dist/chunk-WXW43RK5.js +24 -0
  52. package/{src/components/navigation/tabs.tsx → dist/chunk-XG7XDYIM.js} +46 -53
  53. package/dist/chunk-YFCQKO3B.js +842 -0
  54. package/dist/chunk-ZDWXGWLY.js +73 -0
  55. package/dist/chunk-ZLK5SPT6.js +11 -0
  56. package/dist/chunk-ZS6DTAM2.js +31 -0
  57. package/dist/chunk-ZT5UEUBO.js +1 -0
  58. package/dist/components/admin/index.d.ts +80 -0
  59. package/dist/components/admin/index.js +38 -0
  60. package/dist/components/data-display/badge.d.ts +12 -0
  61. package/dist/components/data-display/badge.js +3 -0
  62. package/dist/components/data-display/card.d.ts +87 -0
  63. package/dist/components/data-display/card.js +2 -0
  64. package/dist/components/data-display/index.d.ts +72 -0
  65. package/dist/components/data-display/index.js +89 -0
  66. package/dist/components/data-display/popover.d.ts +13 -0
  67. package/dist/components/data-display/popover.js +2 -0
  68. package/dist/components/data-display/scroll-area.d.ts +7 -0
  69. package/dist/components/data-display/scroll-area.js +2 -0
  70. package/dist/components/data-display/table.d.ts +10 -0
  71. package/dist/components/data-display/table.js +3 -0
  72. package/dist/components/data-entry/autocomplete.d.ts +16 -0
  73. package/dist/components/data-entry/autocomplete.js +8 -0
  74. package/dist/components/data-entry/calendar.d.ts +16 -0
  75. package/dist/components/data-entry/calendar.js +4 -0
  76. package/dist/components/data-entry/cascader.d.ts +32 -0
  77. package/dist/components/data-entry/cascader.js +13 -0
  78. package/dist/components/data-entry/checkbox.d.ts +13 -0
  79. package/dist/components/data-entry/checkbox.js +4 -0
  80. package/dist/components/data-entry/color-picker.d.ts +16 -0
  81. package/dist/components/data-entry/color-picker.js +6 -0
  82. package/dist/components/data-entry/command.d.ts +69 -0
  83. package/dist/components/data-entry/command.js +3 -0
  84. package/dist/components/data-entry/date-picker.d.ts +16 -0
  85. package/dist/components/data-entry/date-picker.js +8 -0
  86. package/dist/components/data-entry/date-range-picker.d.ts +16 -0
  87. package/dist/components/data-entry/date-range-picker.js +8 -0
  88. package/dist/components/data-entry/index.d.ts +53 -0
  89. package/dist/components/data-entry/index.js +152 -0
  90. package/dist/components/data-entry/input.d.ts +6 -0
  91. package/dist/components/data-entry/input.js +2 -0
  92. package/dist/components/data-entry/label.d.ts +8 -0
  93. package/dist/components/data-entry/label.js +2 -0
  94. package/dist/components/data-entry/radio.d.ts +24 -0
  95. package/dist/components/data-entry/radio.js +4 -0
  96. package/dist/components/data-entry/select.d.ts +18 -0
  97. package/dist/components/data-entry/select.js +3 -0
  98. package/dist/components/data-entry/slider.d.ts +16 -0
  99. package/dist/components/data-entry/slider.js +2 -0
  100. package/dist/components/data-entry/switch.d.ts +17 -0
  101. package/dist/components/data-entry/switch.js +2 -0
  102. package/dist/components/data-entry/textarea.d.ts +6 -0
  103. package/dist/components/data-entry/textarea.js +3 -0
  104. package/dist/components/data-entry/time-picker.d.ts +16 -0
  105. package/dist/components/data-entry/time-picker.js +7 -0
  106. package/dist/components/data-entry/transfer.d.ts +17 -0
  107. package/dist/components/data-entry/transfer.js +11 -0
  108. package/dist/components/data-entry/tree-select.d.ts +26 -0
  109. package/dist/components/data-entry/tree-select.js +13 -0
  110. package/dist/components/data-entry/upload.d.ts +42 -0
  111. package/dist/components/data-entry/upload.js +11 -0
  112. package/dist/components/feedback/alert.d.ts +60 -0
  113. package/dist/components/feedback/alert.js +7 -0
  114. package/dist/components/feedback/dialog.d.ts +64 -0
  115. package/dist/components/feedback/dialog.js +7 -0
  116. package/dist/components/feedback/index.d.ts +16 -0
  117. package/dist/components/feedback/index.js +14 -0
  118. package/dist/components/feedback/sheet.d.ts +24 -0
  119. package/dist/components/feedback/sheet.js +2 -0
  120. package/dist/components/feedback/sonner.d.ts +6 -0
  121. package/dist/components/feedback/sonner.js +1 -0
  122. package/dist/components/general/button.d.ts +20 -0
  123. package/dist/components/general/button.js +2 -0
  124. package/dist/components/general/index.d.ts +6 -0
  125. package/dist/components/general/index.js +2 -0
  126. package/dist/components/layout/index.d.ts +71 -0
  127. package/dist/components/layout/index.js +5 -0
  128. package/dist/components/navigation/dropdown-menu.d.ts +28 -0
  129. package/dist/components/navigation/dropdown-menu.js +2 -0
  130. package/dist/components/navigation/index.d.ts +32 -0
  131. package/dist/components/navigation/index.js +12 -0
  132. package/dist/components/navigation/pagination.d.ts +11 -0
  133. package/dist/components/navigation/pagination.js +7 -0
  134. package/dist/components/navigation/steps.d.ts +12 -0
  135. package/dist/components/navigation/steps.js +3 -0
  136. package/dist/components/navigation/tabs-items.d.ts +12 -0
  137. package/dist/components/navigation/tabs-items.js +3 -0
  138. package/dist/components/navigation/tabs.d.ts +12 -0
  139. package/dist/components/navigation/tabs.js +2 -0
  140. package/dist/components/query/index.d.ts +43 -0
  141. package/dist/components/query/index.js +8 -0
  142. package/dist/components/ui/index.d.ts +57 -0
  143. package/dist/components/ui/index.js +37 -0
  144. package/{src/props/vocabulary/content.prop.ts → dist/content.prop-D1Dd3TAc.d.ts} +16 -20
  145. package/dist/data-display.prop-DNTAzmDy.d.ts +58 -0
  146. package/dist/data-entry.prop-BEGA1lTq.d.ts +323 -0
  147. package/dist/data-table-D1u_rKLK.d.ts +83 -0
  148. package/dist/data.prop-BVvfKC_g.d.ts +41 -0
  149. package/dist/feedback.prop-BmxUlpAW.d.ts +64 -0
  150. package/dist/filter-bar-B7OGFO9S.d.ts +10 -0
  151. package/dist/form/index.d.ts +21 -0
  152. package/dist/form/index.js +4 -0
  153. package/dist/form.prop-BHgpuFFm.d.ts +41 -0
  154. package/dist/format-date-ByyZoqI5.d.ts +51 -0
  155. package/dist/general.prop-D7brMPNL.d.ts +16 -0
  156. package/dist/i18n/index.d.ts +217 -0
  157. package/dist/i18n/index.js +2 -0
  158. package/dist/index.d.ts +53 -0
  159. package/dist/index.js +39 -0
  160. package/dist/inline-C5u6ptJV.d.ts +10 -0
  161. package/dist/interaction.prop-Cdn7wOtq.d.ts +25 -0
  162. package/{src/props/vocabulary/layout.prop.ts → dist/layout.prop-4TCNvyQZ.d.ts} +9 -14
  163. package/dist/layout.prop-C795F0qg.d.ts +112 -0
  164. package/dist/lib/datetime/index.d.ts +31 -0
  165. package/dist/lib/datetime/index.js +1 -0
  166. package/dist/lib/utils.d.ts +5 -0
  167. package/dist/lib/utils.js +1 -0
  168. package/dist/navigation.prop-DpZqcXey.d.ts +78 -0
  169. package/dist/navigation.prop-DxBiClEH.d.ts +20 -0
  170. package/dist/props/components/index.d.ts +27 -0
  171. package/dist/props/components/index.js +1 -0
  172. package/dist/props/index.d.ts +28 -0
  173. package/dist/props/index.js +3 -0
  174. package/dist/props/registry.d.ts +649 -0
  175. package/dist/props/registry.js +1 -0
  176. package/dist/props/vocabulary/index.d.ts +7 -0
  177. package/dist/props/vocabulary/index.js +1 -0
  178. package/dist/query.prop-hIPrk2zI.d.ts +71 -0
  179. package/dist/search-input-uP01rY1L.d.ts +22 -0
  180. package/dist/shared.prop-BNRJc9K0.d.ts +45 -0
  181. package/dist/types-mvzYGrma.d.ts +37 -0
  182. package/dist/use-toast-Dol5bdY3.d.ts +34 -0
  183. package/package.json +233 -67
  184. package/src/app/__tests__/app-provider.test.tsx +0 -232
  185. package/src/app/__tests__/date-format-labels.test.ts +0 -36
  186. package/src/app/__tests__/date-formats.test.ts +0 -44
  187. package/src/app/__tests__/timezones.test.ts +0 -65
  188. package/src/app/app-provider.tsx +0 -227
  189. package/src/app/date-format-labels.ts +0 -21
  190. package/src/app/date-formats.ts +0 -30
  191. package/src/app/index.ts +0 -40
  192. package/src/app/locales.ts +0 -32
  193. package/src/app/request-headers.ts +0 -31
  194. package/src/app/storage.ts +0 -44
  195. package/src/app/time-format-labels.ts +0 -19
  196. package/src/app/time-formats.ts +0 -15
  197. package/src/app/timezones.ts +0 -208
  198. package/src/app/types.ts +0 -39
  199. package/src/app/use-formatting.ts +0 -47
  200. package/src/components/__tests__/accessibility-primitives.test.tsx +0 -65
  201. package/src/components/__tests__/docs-parity.test.ts +0 -41
  202. package/src/components/__tests__/shadcn-release-guardrails.test.ts +0 -71
  203. package/src/components/__tests__/theme-axes-integration.test.tsx +0 -242
  204. package/src/components/admin/index.ts +0 -76
  205. package/src/components/data-display/__tests__/card-table.test.tsx +0 -328
  206. package/src/components/data-display/__tests__/data-display.test.tsx +0 -73
  207. package/src/components/data-display/__tests__/data-table.test.tsx +0 -84
  208. package/src/components/data-display/__tests__/popover.test.tsx +0 -92
  209. package/src/components/data-display/__tests__/scroll-area-collapsible.test.tsx +0 -66
  210. package/src/components/data-display/badge.tsx +0 -27
  211. package/src/components/data-display/card.tsx +0 -194
  212. package/src/components/data-display/code-badge.tsx +0 -28
  213. package/src/components/data-display/collapsible.tsx +0 -5
  214. package/src/components/data-display/data-table.tsx +0 -476
  215. package/src/components/data-display/empty-state.tsx +0 -22
  216. package/src/components/data-display/index.ts +0 -41
  217. package/src/components/data-display/key-value-grid.tsx +0 -46
  218. package/src/components/data-display/popover.tsx +0 -62
  219. package/src/components/data-display/progress-meter.tsx +0 -20
  220. package/src/components/data-display/scan-panel.tsx +0 -16
  221. package/src/components/data-display/scroll-area.tsx +0 -42
  222. package/src/components/data-display/status-badge.tsx +0 -83
  223. package/src/components/data-display/table.tsx +0 -59
  224. package/src/components/data-display/timeline.tsx +0 -42
  225. package/src/components/data-display/tree-list.tsx +0 -42
  226. package/src/components/data-entry/__fixtures__/tree-options.ts +0 -80
  227. package/src/components/data-entry/__tests__/cascader-tree-transfer.test.tsx +0 -417
  228. package/src/components/data-entry/__tests__/checkbox-group.test.tsx +0 -40
  229. package/src/components/data-entry/__tests__/checkbox.test.tsx +0 -20
  230. package/src/components/data-entry/__tests__/date-autocomplete.test.tsx +0 -94
  231. package/src/components/data-entry/__tests__/form-field.test.tsx +0 -49
  232. package/src/components/data-entry/__tests__/input-textarea.test.tsx +0 -38
  233. package/src/components/data-entry/__tests__/label-select.test.tsx +0 -62
  234. package/src/components/data-entry/__tests__/pickers.test.tsx +0 -74
  235. package/src/components/data-entry/__tests__/radio.test.tsx +0 -46
  236. package/src/components/data-entry/__tests__/search-input.test.tsx +0 -32
  237. package/src/components/data-entry/__tests__/switch-field.test.tsx +0 -52
  238. package/src/components/data-entry/__tests__/upload.test.tsx +0 -125
  239. package/src/components/data-entry/autocomplete.tsx +0 -91
  240. package/src/components/data-entry/cascader.tsx +0 -305
  241. package/src/components/data-entry/checkbox-group.tsx +0 -90
  242. package/src/components/data-entry/checkbox.tsx +0 -30
  243. package/src/components/data-entry/choice-field.tsx +0 -27
  244. package/src/components/data-entry/choice-option.ts +0 -20
  245. package/src/components/data-entry/color-picker.tsx +0 -75
  246. package/src/components/data-entry/command.tsx +0 -56
  247. package/src/components/data-entry/country-select.tsx +0 -88
  248. package/src/components/data-entry/date-picker.tsx +0 -69
  249. package/src/components/data-entry/date-range-picker.tsx +0 -75
  250. package/src/components/data-entry/form-field.tsx +0 -59
  251. package/src/components/data-entry/index.ts +0 -62
  252. package/src/components/data-entry/label.tsx +0 -25
  253. package/src/components/data-entry/radio.tsx +0 -109
  254. package/src/components/data-entry/search-input.tsx +0 -103
  255. package/src/components/data-entry/select.tsx +0 -149
  256. package/src/components/data-entry/slider.tsx +0 -38
  257. package/src/components/data-entry/switch-field.tsx +0 -91
  258. package/src/components/data-entry/switch.tsx +0 -24
  259. package/src/components/data-entry/textarea.tsx +0 -12
  260. package/src/components/data-entry/time-picker.tsx +0 -214
  261. package/src/components/data-entry/transfer.tsx +0 -231
  262. package/src/components/data-entry/tree-select-strategy.ts +0 -6
  263. package/src/components/data-entry/tree-select.tsx +0 -279
  264. package/src/components/data-entry/tree-utils.ts +0 -221
  265. package/src/components/data-entry/upload-crop-dialog.tsx +0 -109
  266. package/src/components/data-entry/upload-types.ts +0 -86
  267. package/src/components/data-entry/upload.tsx +0 -498
  268. package/src/components/data-entry/use-upload-draft.ts +0 -93
  269. package/src/components/feedback/__tests__/alert.test.tsx +0 -127
  270. package/src/components/feedback/__tests__/dialog.test.tsx +0 -290
  271. package/src/components/feedback/__tests__/sheet.test.tsx +0 -94
  272. package/src/components/feedback/__tests__/skeleton.test.tsx +0 -25
  273. package/src/components/feedback/__tests__/toast.test.tsx +0 -52
  274. package/src/components/feedback/alert.tsx +0 -167
  275. package/src/components/feedback/dialog.tsx +0 -325
  276. package/src/components/feedback/index.ts +0 -53
  277. package/src/components/feedback/sheet.tsx +0 -130
  278. package/src/components/feedback/skeleton.tsx +0 -95
  279. package/src/components/feedback/sonner.tsx +0 -54
  280. package/src/components/feedback/toaster.tsx +0 -1
  281. package/src/components/feedback/use-toast.ts +0 -62
  282. package/src/components/general/__tests__/button.test.tsx +0 -71
  283. package/src/components/general/button.tsx +0 -61
  284. package/src/components/general/index.ts +0 -2
  285. package/src/components/layout/__tests__/page-container.test.tsx +0 -69
  286. package/src/components/layout/__tests__/page-inset.test.tsx +0 -14
  287. package/src/components/layout/__tests__/stack-inline.test.tsx +0 -39
  288. package/src/components/layout/app-shell.tsx +0 -42
  289. package/src/components/layout/breadcrumb.tsx +0 -35
  290. package/src/components/layout/index.ts +0 -31
  291. package/src/components/layout/inline.tsx +0 -13
  292. package/src/components/layout/menu.tsx +0 -34
  293. package/src/components/layout/mobile-frame.tsx +0 -57
  294. package/src/components/layout/page-container.tsx +0 -81
  295. package/src/components/layout/page-inset.tsx +0 -16
  296. package/src/components/layout/responsive-grid.tsx +0 -14
  297. package/src/components/layout/shell-app.tsx +0 -30
  298. package/src/components/layout/sidebar.tsx +0 -98
  299. package/src/components/layout/split-pane.tsx +0 -16
  300. package/src/components/layout/stack.tsx +0 -13
  301. package/src/components/layout/topbar.tsx +0 -108
  302. package/src/components/navigation/__tests__/app-pickers.test.tsx +0 -118
  303. package/src/components/navigation/__tests__/dropdown-menu.test.tsx +0 -104
  304. package/src/components/navigation/__tests__/navigation.test.tsx +0 -61
  305. package/src/components/navigation/__tests__/pagination-steps-tabs.test.tsx +0 -76
  306. package/src/components/navigation/date-format-picker.tsx +0 -55
  307. package/src/components/navigation/dropdown-menu.tsx +0 -190
  308. package/src/components/navigation/filter-bar.tsx +0 -38
  309. package/src/components/navigation/index.ts +0 -28
  310. package/src/components/navigation/locale-picker.tsx +0 -49
  311. package/src/components/navigation/page-header.tsx +0 -50
  312. package/src/components/navigation/pagination-utils.ts +0 -35
  313. package/src/components/navigation/pagination.tsx +0 -168
  314. package/src/components/navigation/steps.tsx +0 -163
  315. package/src/components/navigation/tabs-items.tsx +0 -69
  316. package/src/components/navigation/time-format-picker.tsx +0 -55
  317. package/src/components/navigation/timezone-picker.tsx +0 -63
  318. package/src/components/query/__tests__/data-state.test.tsx +0 -214
  319. package/src/components/query/__tests__/infinite-prefetch.test.tsx +0 -105
  320. package/src/components/query/__tests__/query-helpers.test.tsx +0 -61
  321. package/src/components/query/data-state.tsx +0 -58
  322. package/src/components/query/index.ts +0 -10
  323. package/src/components/query/infinite-query-state.tsx +0 -99
  324. package/src/components/query/mutation-feedback.tsx +0 -31
  325. package/src/components/query/prefetch-link.tsx +0 -45
  326. package/src/components/query/query-refetch-button.tsx +0 -41
  327. package/src/components/ui/alert-dialog.tsx +0 -1
  328. package/src/components/ui/alert.tsx +0 -1
  329. package/src/components/ui/autocomplete.tsx +0 -1
  330. package/src/components/ui/badge.tsx +0 -1
  331. package/src/components/ui/button.tsx +0 -1
  332. package/src/components/ui/calendar.tsx +0 -1
  333. package/src/components/ui/card.tsx +0 -1
  334. package/src/components/ui/checkbox.tsx +0 -1
  335. package/src/components/ui/color-picker.tsx +0 -1
  336. package/src/components/ui/command.tsx +0 -1
  337. package/src/components/ui/date-picker.tsx +0 -1
  338. package/src/components/ui/date-range-picker.tsx +0 -1
  339. package/src/components/ui/dialog.tsx +0 -1
  340. package/src/components/ui/dropdown-menu.tsx +0 -1
  341. package/src/components/ui/index.tsx +0 -31
  342. package/src/components/ui/input.tsx +0 -1
  343. package/src/components/ui/label.tsx +0 -1
  344. package/src/components/ui/pagination.tsx +0 -1
  345. package/src/components/ui/popover.tsx +0 -1
  346. package/src/components/ui/radio.tsx +0 -1
  347. package/src/components/ui/scroll-area.tsx +0 -1
  348. package/src/components/ui/select.tsx +0 -1
  349. package/src/components/ui/sheet.tsx +0 -1
  350. package/src/components/ui/slider.tsx +0 -1
  351. package/src/components/ui/sonner.tsx +0 -1
  352. package/src/components/ui/switch.tsx +0 -1
  353. package/src/components/ui/table.tsx +0 -1
  354. package/src/components/ui/tabs-items.tsx +0 -1
  355. package/src/components/ui/tabs.tsx +0 -1
  356. package/src/components/ui/textarea.tsx +0 -1
  357. package/src/components/ui/time-picker.tsx +0 -1
  358. package/src/components/ui/upload.tsx +0 -1
  359. package/src/form/__tests__/use-zod-form.test.tsx +0 -97
  360. package/src/form/form-field-control.tsx +0 -44
  361. package/src/form/form-root.tsx +0 -29
  362. package/src/form/index.ts +0 -7
  363. package/src/form/use-zod-form.ts +0 -29
  364. package/src/i18n/__tests__/translate.test.ts +0 -23
  365. package/src/i18n/index.ts +0 -9
  366. package/src/i18n/messages/en.json +0 -171
  367. package/src/i18n/messages/ja.json +0 -171
  368. package/src/i18n/messages/vi.json +0 -171
  369. package/src/i18n/translate.ts +0 -74
  370. package/src/i18n/use-translation.ts +0 -53
  371. package/src/index.ts +0 -3
  372. package/src/lib/__tests__/control-styles.test.ts +0 -78
  373. package/src/lib/__tests__/datetime.test.ts +0 -77
  374. package/src/lib/__tests__/format-date.test.ts +0 -97
  375. package/src/lib/__tests__/format.test.ts +0 -62
  376. package/src/lib/__tests__/theme-tokens-audit.test.ts +0 -176
  377. package/src/lib/__tests__/theme-tokens-css.test.ts +0 -118
  378. package/src/lib/__tests__/token-governance.test.ts +0 -191
  379. package/src/lib/__tests__/variants.test.ts +0 -18
  380. package/src/lib/control-styles.ts +0 -33
  381. package/src/lib/datetime/detect.ts +0 -25
  382. package/src/lib/datetime/format-date.ts +0 -100
  383. package/src/lib/datetime/format.ts +0 -140
  384. package/src/lib/datetime/index.ts +0 -25
  385. package/src/lib/datetime/parse.ts +0 -51
  386. package/src/lib/datetime/sync.ts +0 -48
  387. package/src/lib/format.ts +0 -114
  388. package/src/lib/hooks.ts +0 -54
  389. package/src/lib/utils.ts +0 -6
  390. package/src/lib/variants.ts +0 -40
  391. package/src/props/components/app.prop.ts +0 -99
  392. package/src/props/components/data-display.prop.ts +0 -73
  393. package/src/props/components/data-entry.prop.ts +0 -334
  394. package/src/props/components/feedback.prop.ts +0 -80
  395. package/src/props/components/form.prop.ts +0 -46
  396. package/src/props/components/general.prop.ts +0 -18
  397. package/src/props/components/index.ts +0 -99
  398. package/src/props/components/layout.prop.ts +0 -130
  399. package/src/props/components/navigation.prop.ts +0 -88
  400. package/src/props/components/query.prop.ts +0 -94
  401. package/src/props/index.ts +0 -17
  402. package/src/props/vocabulary/data.prop.ts +0 -46
  403. package/src/props/vocabulary/index.ts +0 -73
  404. package/src/props/vocabulary/interaction.prop.ts +0 -42
  405. package/src/props/vocabulary/navigation.prop.ts +0 -19
  406. package/src/props/vocabulary/shared.prop.ts +0 -59
  407. package/src/test/__tests__/render-loop-guard.test.tsx +0 -38
  408. package/src/test/jest-dom.d.ts +0 -4
  409. package/src/test/render-loop-guard.tsx +0 -50
  410. package/src/test/render.tsx +0 -29
  411. package/src/test/theme-globals.test.ts +0 -77
  412. package/src/test/theme-globals.ts +0 -134
  413. package/src/test/theme-test-utils.tsx +0 -67
  414. /package/{src → dist}/styles/alert-layout.css +0 -0
  415. /package/{src → dist}/styles/badge-layout.css +0 -0
  416. /package/{src → dist}/styles/card-layout.css +0 -0
  417. /package/{src → dist}/styles/control.css +0 -0
  418. /package/{src → dist}/styles/data-display-layout.css +0 -0
  419. /package/{src → dist}/styles/density.css +0 -0
  420. /package/{src → dist}/styles/dialog-layout.css +0 -0
  421. /package/{src → dist}/styles/index.css +0 -0
  422. /package/{src → dist}/styles/layout.css +0 -0
  423. /package/{src → dist}/styles/shell-layout.css +0 -0
  424. /package/{src → dist}/styles/table-layout.css +0 -0
  425. /package/{src → dist}/theme/example.service.css +0 -0
  426. /package/{src → dist}/tokens/base.css +0 -0
  427. /package/{src → dist}/tokens/foundation.css +0 -0
  428. /package/{src → dist}/tokens/primitives/badge.css +0 -0
  429. /package/{src → dist}/tokens/primitives/card.css +0 -0
  430. /package/{src → dist}/tokens/primitives/control.css +0 -0
  431. /package/{src → dist}/tokens/primitives/feedback.css +0 -0
  432. /package/{src → dist}/tokens/primitives/layout.css +0 -0
  433. /package/{src → dist}/tokens/primitives/navigation.css +0 -0
  434. /package/{src → dist}/tokens/primitives/table.css +0 -0
@@ -1,99 +0,0 @@
1
- /** App shell prop types — @see docs/COMPONENTS.md#app */
2
- import type { Locale } from "date-fns";
3
- import type { DayPickerProps } from "react-day-picker";
4
- import type {
5
- AppLocale,
6
- AppRequestHeaders,
7
- AppTimeFormat,
8
- AppTimezone,
9
- AppTimezoneDefault,
10
- AppDateFormat,
11
- } from "../../app/types";
12
- import type { ChildrenProp, ClassNameProp, DisabledProp, IdProp } from "../vocabulary";
13
-
14
- /** @see AppProvider */
15
- export type AppProviderProp = {
16
- children: ChildrenProp;
17
- /** Initial locale when nothing in storage. Default: `vi`. */
18
- defaultLocale?: AppLocale;
19
- /** Fallback when a translation key is missing. Default: `en`. */
20
- fallbackLocale?: AppLocale;
21
- /** Initial timezone: IANA id, `browser`, or `system`. Default: `browser`. */
22
- defaultTimezone?: AppTimezoneDefault;
23
- /** Backend/system timezone when `defaultTimezone` is `system`. */
24
- systemTimezone?: AppTimezone;
25
- /** Initial clock format. `"locale"` derives from `defaultLocale`. Default: `"locale"`. */
26
- defaultTimeFormat?: AppTimeFormat | "locale";
27
- /** Initial date display format. `"locale"` derives from `defaultLocale`. Default: `"locale"`. */
28
- defaultDateFormat?: AppDateFormat | "locale";
29
- /**
30
- * IANA ids shown in `TimezonePicker`.
31
- * Omit for the full IANA list; set to restrict (e.g. `APP_TIMEZONE_PRESET`).
32
- */
33
- timezoneOptions?: readonly AppTimezone[];
34
- /** localStorage key. Default: `godxjp.app`. */
35
- storageKey?: string;
36
- /** Persist user choices. Default: true. */
37
- persist?: boolean;
38
- onLocaleChange?: (locale: AppLocale) => void;
39
- onTimezoneChange?: (timezone: AppTimezone) => void;
40
- onTimeFormatChange?: (timeFormat: AppTimeFormat) => void;
41
- onDateFormatChange?: (dateFormat: AppDateFormat) => void;
42
- };
43
-
44
- /** @see LocalePicker */
45
- export type LocalePickerProp = {
46
- className?: ClassNameProp;
47
- disabled?: DisabledProp;
48
- id?: IdProp;
49
- /** Controlled value; default reads/writes AppProvider. */
50
- value?: AppLocale;
51
- onChange?: (locale: AppLocale) => void;
52
- };
53
-
54
- /** @see TimezonePicker */
55
- export type TimezonePickerProp = {
56
- className?: ClassNameProp;
57
- disabled?: DisabledProp;
58
- id?: IdProp;
59
- value?: AppTimezone;
60
- onChange?: (timezone: AppTimezone) => void;
61
- /** Override AppProvider list; omit to use context or full IANA. */
62
- options?: readonly AppTimezone[];
63
- };
64
-
65
- /** @see TimeFormatPicker */
66
- export type TimeFormatPickerProp = {
67
- className?: ClassNameProp;
68
- disabled?: DisabledProp;
69
- id?: IdProp;
70
- value?: AppTimeFormat;
71
- onChange?: (timeFormat: AppTimeFormat) => void;
72
- };
73
-
74
- /** @see DateFormatPicker */
75
- export type DateFormatPickerProp = {
76
- className?: ClassNameProp;
77
- disabled?: DisabledProp;
78
- id?: IdProp;
79
- value?: AppDateFormat;
80
- onChange?: (dateFormat: AppDateFormat) => void;
81
- };
82
-
83
- /** Value exposed by `useAppContext`. */
84
- export type AppContextValue = {
85
- locale: AppLocale;
86
- fallbackLocale: AppLocale;
87
- timezone: AppTimezone;
88
- timeFormat: AppTimeFormat;
89
- dateFormat: AppDateFormat;
90
- dateFnsLocale: Locale;
91
- dayPickerLocale: NonNullable<DayPickerProps["locale"]>;
92
- requestHeaders: AppRequestHeaders;
93
- /** Configured picker list; `undefined` → full IANA in TimezonePicker. */
94
- timezoneOptions?: readonly AppTimezone[];
95
- setLocale: (locale: AppLocale) => void;
96
- setTimezone: (timezone: AppTimezone) => void;
97
- setTimeFormat: (timeFormat: AppTimeFormat) => void;
98
- setDateFormat: (dateFormat: AppDateFormat) => void;
99
- };
@@ -1,73 +0,0 @@
1
- /** Data Display component prop types — @see docs/COMPONENTS.md#data-display */
2
- import type * as React from "react";
3
- import type {
4
- ActionProp,
5
- ClassNameProp,
6
- DescriptionProp,
7
- IconProp,
8
- TitleProp,
9
- ColumnDefProp,
10
- GetRowIdProp,
11
- OnRowClickProp,
12
- OnSelectChangeProp,
13
- OnSortChangeProp,
14
- OnTableDensityChangeProp,
15
- SelectedIdsProp,
16
- SortStateProp,
17
- StatusToneProp,
18
- TableDensityProp,
19
- ChildrenProp,
20
- } from "../vocabulary";
21
-
22
- /** @see EmptyState */
23
- export type EmptyStateProp = {
24
- icon?: IconProp;
25
- title: TitleProp;
26
- description?: DescriptionProp;
27
- action?: ActionProp;
28
- className?: ClassNameProp;
29
- };
30
-
31
- /** @see KeyValueGrid */
32
- export type KeyValueGridProp = {
33
- items: KeyValueGridItemProp[];
34
- columns?: 1 | 2 | 3;
35
- className?: ClassNameProp;
36
- };
37
-
38
- export type KeyValueGridItemProp = {
39
- label: React.ReactNode;
40
- value: React.ReactNode;
41
- mono?: boolean;
42
- };
43
-
44
- /** @see StatusBadge */
45
- export type StatusBadgeProp = {
46
- status: string;
47
- tone?: StatusToneProp;
48
- className?: ClassNameProp;
49
- };
50
-
51
- /** @see DataTable */
52
- export type DataTableProp<T> = {
53
- data: T[];
54
- columns: ColumnDefProp<T>[];
55
- getRowId?: GetRowIdProp<T>;
56
- selectable?: boolean;
57
- selected?: SelectedIdsProp;
58
- onSelectChange?: OnSelectChangeProp;
59
- onRowClick?: OnRowClickProp<T>;
60
- density?: TableDensityProp;
61
- onDensityChange?: OnTableDensityChangeProp;
62
- sort?: SortStateProp;
63
- onSortChange?: OnSortChangeProp;
64
- loading?: boolean;
65
- empty?: React.ReactNode;
66
- className?: ClassNameProp;
67
- children?: ChildrenProp;
68
- };
69
-
70
- /** @see Badge */
71
- export type BadgeProp = React.HTMLAttributes<HTMLDivElement> & {
72
- variant?: "default" | "secondary" | "destructive" | "outline" | "success" | "warning";
73
- };
@@ -1,334 +0,0 @@
1
- /** Data Entry component prop types — @see docs/COMPONENTS.md#data-entry */
2
- import type * as CheckboxPrimitive from "@radix-ui/react-checkbox";
3
- import type * as RadioGroupPrimitive from "@radix-ui/react-radio-group";
4
- import type * as SliderPrimitive from "@radix-ui/react-slider";
5
- import type * as SwitchPrimitive from "@radix-ui/react-switch";
6
- import type { DayPickerProps } from "react-day-picker";
7
- import type { DateRange } from "react-day-picker";
8
- import type * as React from "react";
9
- import type { UploadFileItem } from "../../components/data-entry/upload-types";
10
- import type {
11
- ClassNameProp,
12
- DisabledProp,
13
- ErrorProp,
14
- HelperProp,
15
- IdProp,
16
- LabelProp,
17
- OnChangeProp,
18
- OnSearchChangeProp,
19
- PlaceholderProp,
20
- RequiredProp,
21
- ValueProp,
22
- } from "../vocabulary";
23
-
24
- /** @see Input */
25
- export type InputProp = React.InputHTMLAttributes<HTMLInputElement>;
26
-
27
- /** @see Textarea */
28
- export type TextareaProp = React.TextareaHTMLAttributes<HTMLTextAreaElement>;
29
-
30
- /** @see FormField */
31
- export type FormFieldProp = {
32
- id: IdProp;
33
- label: LabelProp;
34
- required?: RequiredProp;
35
- helper?: HelperProp;
36
- error?: ErrorProp;
37
- /** Optional control rendered inline after the label (e.g. a help button). */
38
- labelAddon?: React.ReactNode;
39
- className?: ClassNameProp;
40
- children: React.ReactNode;
41
- };
42
-
43
- /** @see SearchInput */
44
- export type SearchInputProp = {
45
- id?: IdProp;
46
- label?: LabelProp;
47
- placeholder?: PlaceholderProp;
48
- value?: ValueProp;
49
- onChange?: OnChangeProp;
50
- onDebouncedChange?: OnSearchChangeProp;
51
- debounceMs?: number;
52
- className?: ClassNameProp;
53
- };
54
-
55
- /** @see Checkbox — extends Radix checkbox root props. */
56
- export type CheckboxProp = React.ComponentPropsWithoutRef<typeof CheckboxPrimitive.Root>;
57
-
58
- /** Shared option row — Ant Design `CheckboxOptionType`. */
59
- export type ChoiceOptionProp = {
60
- label: React.ReactNode;
61
- value: string;
62
- disabled?: boolean;
63
- description?: React.ReactNode;
64
- };
65
-
66
- /** @see Checkbox.Group */
67
- export type CheckboxGroupProp = {
68
- value?: string[];
69
- defaultValue?: string[];
70
- onChange?: (value: string[]) => void;
71
- options?: ChoiceOptionProp[];
72
- orientation?: "horizontal" | "vertical";
73
- disabled?: DisabledProp;
74
- name?: string;
75
- className?: ClassNameProp;
76
- children?: React.ReactNode;
77
- };
78
-
79
- /** @see Radio.Group */
80
- export type RadioGroupProp = {
81
- value?: string;
82
- defaultValue?: string;
83
- onValueChange?: (value: string) => void;
84
- options?: ChoiceOptionProp[];
85
- orientation?: "horizontal" | "vertical";
86
- disabled?: DisabledProp;
87
- name?: string;
88
- className?: ClassNameProp;
89
- children?: React.ReactNode;
90
- };
91
-
92
- /** @see Radio.Item — Radix radio group item. */
93
- export type RadioProp = React.ComponentPropsWithoutRef<typeof RadioGroupPrimitive.Item>;
94
-
95
- /** @see Switch — extends Radix switch root props. */
96
- export type SwitchProp = React.ComponentPropsWithoutRef<typeof SwitchPrimitive.Root> & {
97
- size?: "sm" | "default";
98
- };
99
-
100
- /** @see SwitchField — labelled switch with hidden input for HTML forms. */
101
- export type SwitchFieldProp = {
102
- id: IdProp;
103
- label: LabelProp;
104
- name: string;
105
- required?: RequiredProp;
106
- helper?: HelperProp;
107
- error?: ErrorProp;
108
- labelAddon?: React.ReactNode;
109
- className?: ClassNameProp;
110
- checked?: boolean;
111
- defaultChecked?: boolean;
112
- onCheckedChange?: (checked: boolean) => void;
113
- disabled?: DisabledProp;
114
- size?: SwitchProp["size"];
115
- };
116
-
117
- /** Country row accepted by CountrySelect / CountryOptionLabel.
118
- * Accepts either a select-option (`value`) or a summary (`code`). */
119
- export type CountryOptionProp = {
120
- name: string;
121
- nativeName?: string | null;
122
- flagSvgPath?: string | null;
123
- value?: string;
124
- code?: string;
125
- label?: string;
126
- };
127
-
128
- /** @see CountryOptionLabel — flag + name (+ optional code) row. */
129
- export type CountryOptionLabelProp = {
130
- country: CountryOptionProp;
131
- showCode?: boolean;
132
- className?: ClassNameProp;
133
- };
134
-
135
- /** @see CountrySelect — country picker built on Select. */
136
- export type CountrySelectProp = {
137
- id: IdProp;
138
- name: string;
139
- options: CountryOptionProp[];
140
- defaultValue?: string | null;
141
- required?: RequiredProp;
142
- allowEmpty?: boolean;
143
- emptyLabel?: string;
144
- placeholder?: PlaceholderProp;
145
- invalid?: boolean;
146
- };
147
-
148
- /** @see Slider — numeric range (Radix Slider). */
149
- export type SliderProp = React.ComponentPropsWithoutRef<typeof SliderPrimitive.Root>;
150
-
151
- /** @see Calendar — react-day-picker DayPicker. */
152
- export type CalendarProp = DayPickerProps;
153
-
154
- /** @see DatePicker */
155
- export type DatePickerProp = {
156
- value?: Date;
157
- onChange?: (date: Date | undefined) => void;
158
- placeholder?: PlaceholderProp;
159
- disabled?: DisabledProp;
160
- className?: ClassNameProp;
161
- id?: IdProp;
162
- locale?: DayPickerProps["locale"];
163
- fromDate?: Date;
164
- toDate?: Date;
165
- };
166
-
167
- /** @see DateRangePicker */
168
- export type DateRangePickerProp = {
169
- value?: DateRange;
170
- onChange?: (range: DateRange | undefined) => void;
171
- placeholder?: PlaceholderProp;
172
- disabled?: DisabledProp;
173
- className?: ClassNameProp;
174
- id?: IdProp;
175
- locale?: DayPickerProps["locale"];
176
- fromDate?: Date;
177
- toDate?: Date;
178
- };
179
-
180
- /** @see TimePicker — popover HH:mm picker (canonical 24h storage). */
181
- export type TimePickerProp = {
182
- value?: string;
183
- defaultValue?: string;
184
- onChange?: (value: string) => void;
185
- placeholder?: PlaceholderProp;
186
- disabled?: DisabledProp;
187
- className?: ClassNameProp;
188
- id?: IdProp;
189
- /** Minute column step — default 5 (logistics cut-offs). */
190
- minuteStep?: number;
191
- };
192
-
193
- /** @see ColorPicker */
194
- export type ColorPickerProp = {
195
- value?: string;
196
- onChange?: (hex: string) => void;
197
- disabled?: DisabledProp;
198
- className?: ClassNameProp;
199
- id?: IdProp;
200
- showHexInput?: boolean;
201
- };
202
-
203
- /** Autocomplete option row. */
204
- export type AutocompleteOptionProp = {
205
- value: string;
206
- label: string;
207
- };
208
-
209
- /** @see Autocomplete — searchable combobox. */
210
- export type AutocompleteProp = {
211
- options: AutocompleteOptionProp[];
212
- value?: ValueProp;
213
- onValueChange?: (value: string) => void;
214
- placeholder?: PlaceholderProp;
215
- searchPlaceholder?: PlaceholderProp;
216
- emptyMessage?: string;
217
- disabled?: DisabledProp;
218
- className?: ClassNameProp;
219
- id?: IdProp;
220
- };
221
-
222
- /** @see UploadFileItem */
223
- export type UploadFileItemProp = UploadFileItem;
224
-
225
- /** @see Upload */
226
- export type UploadVariantProp =
227
- | "dropzone"
228
- | "button"
229
- | "picture-card"
230
- | "picture"
231
- | "avatar"
232
- | "avatar-crop";
233
-
234
- /** @see Upload — presentational; wire `onUpload` to media-service in app api.ts */
235
- export type UploadProp = {
236
- variant?: UploadVariantProp;
237
- value?: UploadFileItemProp[];
238
- defaultValue?: UploadFileItemProp[];
239
- onChange?: (items: UploadFileItemProp[]) => void;
240
- accept?: string;
241
- multiple?: boolean;
242
- maxCount?: number;
243
- maxSizeBytes?: number;
244
- disabled?: DisabledProp;
245
- removable?: boolean;
246
- /** App: issue → PUT → complete; return mediaId + optional preview URL */
247
- onUpload?: (
248
- file: File,
249
- item: UploadFileItemProp,
250
- ) => Promise<{ mediaId: string; previewUrl?: string }>;
251
- className?: ClassNameProp;
252
- children?: React.ReactNode;
253
- };
254
-
255
- /** Tree node — shared by Cascader options & TreeSelect treeData. */
256
- export type TreeOptionProp = {
257
- value: string;
258
- label: React.ReactNode;
259
- disabled?: boolean;
260
- disableCheckbox?: boolean;
261
- isLeaf?: boolean;
262
- children?: TreeOptionProp[];
263
- };
264
-
265
- export type TreeFieldNamesProp = {
266
- label?: string;
267
- value?: string;
268
- children?: string;
269
- };
270
-
271
- /** @see Cascader — cascade picker (Popover + multi-column). */
272
- export type CascaderProp = {
273
- options: TreeOptionProp[];
274
- value?: string[] | string[][];
275
- defaultValue?: string[] | string[][];
276
- onChange?: (
277
- value: string[] | string[][],
278
- selectedOptions?: TreeOptionProp[] | TreeOptionProp[][],
279
- ) => void;
280
- multiple?: boolean;
281
- changeOnSelect?: boolean;
282
- showSearch?: boolean;
283
- placeholder?: PlaceholderProp;
284
- disabled?: DisabledProp;
285
- className?: ClassNameProp;
286
- id?: IdProp;
287
- expandTrigger?: "click" | "hover";
288
- fieldNames?: TreeFieldNamesProp;
289
- allowClear?: boolean;
290
- };
291
-
292
- export type ShowCheckedStrategyProp = "SHOW_CHILD" | "SHOW_PARENT" | "SHOW_ALL";
293
-
294
- /** @see TreeSelect — tree in Popover (cmdk search + expand/collapse). */
295
- export type TreeSelectProp = {
296
- treeData: TreeOptionProp[];
297
- value?: string | string[];
298
- defaultValue?: string | string[];
299
- onChange?: (value: string | string[] | undefined) => void;
300
- multiple?: boolean;
301
- treeCheckable?: boolean;
302
- treeCheckStrictly?: boolean;
303
- showSearch?: boolean;
304
- showCheckedStrategy?: ShowCheckedStrategyProp;
305
- treeDefaultExpandAll?: boolean;
306
- placeholder?: PlaceholderProp;
307
- disabled?: DisabledProp;
308
- allowClear?: boolean;
309
- className?: ClassNameProp;
310
- id?: IdProp;
311
- fieldNames?: TreeFieldNamesProp;
312
- };
313
-
314
- /** @see TransferItem */
315
- export type TransferItemProp = {
316
- key: string;
317
- title: React.ReactNode;
318
- description?: React.ReactNode;
319
- disabled?: boolean;
320
- };
321
-
322
- /** @see Transfer — dual-list shuttle (Checkbox + SearchInput). */
323
- export type TransferProp = {
324
- dataSource: TransferItemProp[];
325
- targetKeys: string[];
326
- onChange?: (targetKeys: string[], direction: "left" | "right", moveKeys: string[]) => void;
327
- titles?: [React.ReactNode, React.ReactNode];
328
- showSearch?: boolean;
329
- oneWay?: boolean;
330
- disabled?: DisabledProp;
331
- className?: ClassNameProp;
332
- selectedKeys?: [string[], string[]];
333
- onSelectChange?: (sourceSelectedKeys: string[], targetSelectedKeys: string[]) => void;
334
- };
@@ -1,80 +0,0 @@
1
- /** Feedback component prop types — @see docs/COMPONENTS.md#feedback */
2
- import type * as React from "react";
3
- import type {
4
- AlertVariantProp,
5
- CancelLabelProp,
6
- ChildrenProp,
7
- ClassNameProp,
8
- ConfirmLabelProp,
9
- ConfirmVariantProp,
10
- DescriptionProp,
11
- HandlerProp,
12
- IconProp,
13
- OpenProp,
14
- OnOpenChangeProp,
15
- PendingProp,
16
- TitleProp,
17
- } from "../vocabulary";
18
-
19
- /** @see Dialog.Confirm */
20
- export type DialogConfirmProp = {
21
- open: OpenProp;
22
- onOpenChange: OnOpenChangeProp;
23
- title: TitleProp;
24
- description?: DescriptionProp;
25
- confirmLabel?: ConfirmLabelProp;
26
- cancelLabel?: CancelLabelProp;
27
- variant?: ConfirmVariantProp;
28
- /** Type-to-confirm friction — enables destructive flow (GitHub/Stripe style). */
29
- confirmPhrase?: string;
30
- onConfirm: HandlerProp;
31
- keepOpenOnConfirm?: boolean;
32
- pending?: PendingProp;
33
- };
34
-
35
- /** @see Alert */
36
- export type AlertQueryErrorProp = {
37
- error: unknown;
38
- onRetry?: HandlerProp;
39
- className?: ClassNameProp;
40
- };
41
-
42
- /** @see Alert */
43
- export type AlertProp = React.HTMLAttributes<HTMLDivElement> & {
44
- variant?: AlertVariantProp;
45
- /** Pass `false` to hide the default variant icon. */
46
- icon?: IconProp | false;
47
- onDismiss?: HandlerProp;
48
- className?: ClassNameProp;
49
- children?: ChildrenProp;
50
- };
51
-
52
- /** @see AlertTitle */
53
- export type AlertTitleProp = React.HTMLAttributes<HTMLParagraphElement> & {
54
- className?: ClassNameProp;
55
- children?: ChildrenProp;
56
- };
57
-
58
- /** @see AlertContent — groups title + description; pairs with {@link AlertActions}. */
59
- export type AlertContentProp = React.HTMLAttributes<HTMLDivElement> & {
60
- className?: ClassNameProp;
61
- children?: ChildrenProp;
62
- };
63
-
64
- /** @see AlertDescription */
65
- export type AlertDescriptionProp = React.HTMLAttributes<HTMLParagraphElement> & {
66
- className?: ClassNameProp;
67
- children?: ChildrenProp;
68
- };
69
-
70
- /** @see AlertActions */
71
- export type AlertActionsProp = React.HTMLAttributes<HTMLDivElement> & {
72
- className?: ClassNameProp;
73
- children?: ChildrenProp;
74
- };
75
-
76
- /** @see SkeletonRows */
77
- export type SkeletonRowsProp = {
78
- rows?: number;
79
- columns?: number;
80
- };
@@ -1,46 +0,0 @@
1
- /** Form module prop types — react-hook-form + Zod 4 only. */
2
- import type * as React from "react";
3
- import type { FieldPath, FieldValues, UseFormProps, UseFormReturn } from "react-hook-form";
4
- import type { z } from "zod";
5
- import type { ErrorProp, HelperProp, IdProp, LabelProp, RequiredProp } from "../vocabulary";
6
-
7
- /** Schema passed to useZodForm — must be Zod 4 object schema. */
8
- export type ZodSchemaProp<T extends z.ZodType = z.ZodType> = T;
9
-
10
- /** Options for useZodForm (resolver injected automatically). */
11
- export type UseZodFormOptionsProp<TFieldValues extends FieldValues> = Omit<
12
- UseFormProps<TFieldValues>,
13
- "resolver"
14
- >;
15
-
16
- /** Return type of useZodForm. */
17
- export type UseZodFormReturnProp<TFieldValues extends FieldValues> = UseFormReturn<TFieldValues>;
18
-
19
- /** @see FormRoot */
20
- export type FormRootProp<TFieldValues extends FieldValues> = {
21
- form: UseZodFormReturnProp<TFieldValues>;
22
- onSubmit: (values: TFieldValues) => void | Promise<void>;
23
- children: React.ReactNode;
24
- className?: string;
25
- id?: IdProp;
26
- };
27
-
28
- /** @see FormFieldControl */
29
- export type FormFieldControlProp<TFieldValues extends FieldValues> = {
30
- name: FieldPath<TFieldValues>;
31
- label: LabelProp;
32
- required?: RequiredProp;
33
- helper?: HelperProp;
34
- className?: string;
35
- children: (field: {
36
- id: string;
37
- name: string;
38
- value: unknown;
39
- onChange: (...args: unknown[]) => void;
40
- onBlur: () => void;
41
- ref: React.Ref<HTMLInputElement>;
42
- }) => React.ReactNode;
43
- };
44
-
45
- /** Mapped field error from RHF — displayed via FormField error slot. */
46
- export type FieldErrorMessageProp = ErrorProp;
@@ -1,18 +0,0 @@
1
- /** Foundation component prop types — @see docs/COMPONENTS.md#foundation */
2
- import type * as React from "react";
3
- import type {
4
- AsChildProp,
5
- ButtonSizeProp,
6
- ButtonVariantProp,
7
- DisabledProp,
8
- OnClickProp,
9
- } from "../vocabulary";
10
-
11
- /** @see Button */
12
- export type ButtonProp = React.ButtonHTMLAttributes<HTMLButtonElement> & {
13
- variant?: ButtonVariantProp;
14
- size?: ButtonSizeProp;
15
- asChild?: AsChildProp;
16
- onClick?: OnClickProp;
17
- disabled?: DisabledProp;
18
- };