@godxjp/ui 6.0.0 → 6.0.2

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/{src → dist}/styles/control.css +1 -1
  182. package/dist/types-mvzYGrma.d.ts +37 -0
  183. package/dist/use-toast-Dol5bdY3.d.ts +34 -0
  184. package/package.json +234 -68
  185. package/src/app/__tests__/app-provider.test.tsx +0 -232
  186. package/src/app/__tests__/date-format-labels.test.ts +0 -36
  187. package/src/app/__tests__/date-formats.test.ts +0 -44
  188. package/src/app/__tests__/timezones.test.ts +0 -65
  189. package/src/app/app-provider.tsx +0 -227
  190. package/src/app/date-format-labels.ts +0 -21
  191. package/src/app/date-formats.ts +0 -30
  192. package/src/app/index.ts +0 -40
  193. package/src/app/locales.ts +0 -32
  194. package/src/app/request-headers.ts +0 -31
  195. package/src/app/storage.ts +0 -44
  196. package/src/app/time-format-labels.ts +0 -19
  197. package/src/app/time-formats.ts +0 -15
  198. package/src/app/timezones.ts +0 -208
  199. package/src/app/types.ts +0 -39
  200. package/src/app/use-formatting.ts +0 -47
  201. package/src/components/__tests__/accessibility-primitives.test.tsx +0 -65
  202. package/src/components/__tests__/docs-parity.test.ts +0 -41
  203. package/src/components/__tests__/shadcn-release-guardrails.test.ts +0 -71
  204. package/src/components/__tests__/theme-axes-integration.test.tsx +0 -242
  205. package/src/components/admin/index.ts +0 -76
  206. package/src/components/data-display/__tests__/card-table.test.tsx +0 -328
  207. package/src/components/data-display/__tests__/data-display.test.tsx +0 -73
  208. package/src/components/data-display/__tests__/data-table.test.tsx +0 -84
  209. package/src/components/data-display/__tests__/popover.test.tsx +0 -92
  210. package/src/components/data-display/__tests__/scroll-area-collapsible.test.tsx +0 -66
  211. package/src/components/data-display/badge.tsx +0 -27
  212. package/src/components/data-display/card.tsx +0 -194
  213. package/src/components/data-display/code-badge.tsx +0 -28
  214. package/src/components/data-display/collapsible.tsx +0 -5
  215. package/src/components/data-display/data-table.tsx +0 -476
  216. package/src/components/data-display/empty-state.tsx +0 -22
  217. package/src/components/data-display/index.ts +0 -41
  218. package/src/components/data-display/key-value-grid.tsx +0 -46
  219. package/src/components/data-display/popover.tsx +0 -62
  220. package/src/components/data-display/progress-meter.tsx +0 -20
  221. package/src/components/data-display/scan-panel.tsx +0 -16
  222. package/src/components/data-display/scroll-area.tsx +0 -42
  223. package/src/components/data-display/status-badge.tsx +0 -83
  224. package/src/components/data-display/table.tsx +0 -59
  225. package/src/components/data-display/timeline.tsx +0 -42
  226. package/src/components/data-display/tree-list.tsx +0 -42
  227. package/src/components/data-entry/__fixtures__/tree-options.ts +0 -80
  228. package/src/components/data-entry/__tests__/cascader-tree-transfer.test.tsx +0 -417
  229. package/src/components/data-entry/__tests__/checkbox-group.test.tsx +0 -40
  230. package/src/components/data-entry/__tests__/checkbox.test.tsx +0 -20
  231. package/src/components/data-entry/__tests__/date-autocomplete.test.tsx +0 -94
  232. package/src/components/data-entry/__tests__/form-field.test.tsx +0 -49
  233. package/src/components/data-entry/__tests__/input-textarea.test.tsx +0 -38
  234. package/src/components/data-entry/__tests__/label-select.test.tsx +0 -62
  235. package/src/components/data-entry/__tests__/pickers.test.tsx +0 -74
  236. package/src/components/data-entry/__tests__/radio.test.tsx +0 -46
  237. package/src/components/data-entry/__tests__/search-input.test.tsx +0 -32
  238. package/src/components/data-entry/__tests__/switch-field.test.tsx +0 -52
  239. package/src/components/data-entry/__tests__/upload.test.tsx +0 -125
  240. package/src/components/data-entry/autocomplete.tsx +0 -91
  241. package/src/components/data-entry/cascader.tsx +0 -305
  242. package/src/components/data-entry/checkbox-group.tsx +0 -90
  243. package/src/components/data-entry/checkbox.tsx +0 -30
  244. package/src/components/data-entry/choice-field.tsx +0 -27
  245. package/src/components/data-entry/choice-option.ts +0 -20
  246. package/src/components/data-entry/color-picker.tsx +0 -75
  247. package/src/components/data-entry/command.tsx +0 -56
  248. package/src/components/data-entry/country-select.tsx +0 -88
  249. package/src/components/data-entry/date-picker.tsx +0 -69
  250. package/src/components/data-entry/date-range-picker.tsx +0 -75
  251. package/src/components/data-entry/form-field.tsx +0 -59
  252. package/src/components/data-entry/index.ts +0 -62
  253. package/src/components/data-entry/label.tsx +0 -25
  254. package/src/components/data-entry/radio.tsx +0 -109
  255. package/src/components/data-entry/search-input.tsx +0 -103
  256. package/src/components/data-entry/select.tsx +0 -149
  257. package/src/components/data-entry/slider.tsx +0 -38
  258. package/src/components/data-entry/switch-field.tsx +0 -91
  259. package/src/components/data-entry/switch.tsx +0 -24
  260. package/src/components/data-entry/textarea.tsx +0 -12
  261. package/src/components/data-entry/time-picker.tsx +0 -214
  262. package/src/components/data-entry/transfer.tsx +0 -231
  263. package/src/components/data-entry/tree-select-strategy.ts +0 -6
  264. package/src/components/data-entry/tree-select.tsx +0 -279
  265. package/src/components/data-entry/tree-utils.ts +0 -221
  266. package/src/components/data-entry/upload-crop-dialog.tsx +0 -109
  267. package/src/components/data-entry/upload-types.ts +0 -86
  268. package/src/components/data-entry/upload.tsx +0 -498
  269. package/src/components/data-entry/use-upload-draft.ts +0 -93
  270. package/src/components/feedback/__tests__/alert.test.tsx +0 -127
  271. package/src/components/feedback/__tests__/dialog.test.tsx +0 -290
  272. package/src/components/feedback/__tests__/sheet.test.tsx +0 -94
  273. package/src/components/feedback/__tests__/skeleton.test.tsx +0 -25
  274. package/src/components/feedback/__tests__/toast.test.tsx +0 -52
  275. package/src/components/feedback/alert.tsx +0 -167
  276. package/src/components/feedback/dialog.tsx +0 -325
  277. package/src/components/feedback/index.ts +0 -53
  278. package/src/components/feedback/sheet.tsx +0 -130
  279. package/src/components/feedback/skeleton.tsx +0 -95
  280. package/src/components/feedback/sonner.tsx +0 -54
  281. package/src/components/feedback/toaster.tsx +0 -1
  282. package/src/components/feedback/use-toast.ts +0 -62
  283. package/src/components/general/__tests__/button.test.tsx +0 -71
  284. package/src/components/general/button.tsx +0 -61
  285. package/src/components/general/index.ts +0 -2
  286. package/src/components/layout/__tests__/page-container.test.tsx +0 -69
  287. package/src/components/layout/__tests__/page-inset.test.tsx +0 -14
  288. package/src/components/layout/__tests__/stack-inline.test.tsx +0 -39
  289. package/src/components/layout/app-shell.tsx +0 -42
  290. package/src/components/layout/breadcrumb.tsx +0 -35
  291. package/src/components/layout/index.ts +0 -31
  292. package/src/components/layout/inline.tsx +0 -13
  293. package/src/components/layout/menu.tsx +0 -34
  294. package/src/components/layout/mobile-frame.tsx +0 -57
  295. package/src/components/layout/page-container.tsx +0 -81
  296. package/src/components/layout/page-inset.tsx +0 -16
  297. package/src/components/layout/responsive-grid.tsx +0 -14
  298. package/src/components/layout/shell-app.tsx +0 -30
  299. package/src/components/layout/sidebar.tsx +0 -98
  300. package/src/components/layout/split-pane.tsx +0 -16
  301. package/src/components/layout/stack.tsx +0 -13
  302. package/src/components/layout/topbar.tsx +0 -108
  303. package/src/components/navigation/__tests__/app-pickers.test.tsx +0 -118
  304. package/src/components/navigation/__tests__/dropdown-menu.test.tsx +0 -104
  305. package/src/components/navigation/__tests__/navigation.test.tsx +0 -61
  306. package/src/components/navigation/__tests__/pagination-steps-tabs.test.tsx +0 -76
  307. package/src/components/navigation/date-format-picker.tsx +0 -55
  308. package/src/components/navigation/dropdown-menu.tsx +0 -190
  309. package/src/components/navigation/filter-bar.tsx +0 -38
  310. package/src/components/navigation/index.ts +0 -28
  311. package/src/components/navigation/locale-picker.tsx +0 -49
  312. package/src/components/navigation/page-header.tsx +0 -50
  313. package/src/components/navigation/pagination-utils.ts +0 -35
  314. package/src/components/navigation/pagination.tsx +0 -168
  315. package/src/components/navigation/steps.tsx +0 -163
  316. package/src/components/navigation/tabs-items.tsx +0 -69
  317. package/src/components/navigation/time-format-picker.tsx +0 -55
  318. package/src/components/navigation/timezone-picker.tsx +0 -63
  319. package/src/components/query/__tests__/data-state.test.tsx +0 -214
  320. package/src/components/query/__tests__/infinite-prefetch.test.tsx +0 -105
  321. package/src/components/query/__tests__/query-helpers.test.tsx +0 -61
  322. package/src/components/query/data-state.tsx +0 -58
  323. package/src/components/query/index.ts +0 -10
  324. package/src/components/query/infinite-query-state.tsx +0 -99
  325. package/src/components/query/mutation-feedback.tsx +0 -31
  326. package/src/components/query/prefetch-link.tsx +0 -45
  327. package/src/components/query/query-refetch-button.tsx +0 -41
  328. package/src/components/ui/alert-dialog.tsx +0 -1
  329. package/src/components/ui/alert.tsx +0 -1
  330. package/src/components/ui/autocomplete.tsx +0 -1
  331. package/src/components/ui/badge.tsx +0 -1
  332. package/src/components/ui/button.tsx +0 -1
  333. package/src/components/ui/calendar.tsx +0 -1
  334. package/src/components/ui/card.tsx +0 -1
  335. package/src/components/ui/checkbox.tsx +0 -1
  336. package/src/components/ui/color-picker.tsx +0 -1
  337. package/src/components/ui/command.tsx +0 -1
  338. package/src/components/ui/date-picker.tsx +0 -1
  339. package/src/components/ui/date-range-picker.tsx +0 -1
  340. package/src/components/ui/dialog.tsx +0 -1
  341. package/src/components/ui/dropdown-menu.tsx +0 -1
  342. package/src/components/ui/index.tsx +0 -31
  343. package/src/components/ui/input.tsx +0 -1
  344. package/src/components/ui/label.tsx +0 -1
  345. package/src/components/ui/pagination.tsx +0 -1
  346. package/src/components/ui/popover.tsx +0 -1
  347. package/src/components/ui/radio.tsx +0 -1
  348. package/src/components/ui/scroll-area.tsx +0 -1
  349. package/src/components/ui/select.tsx +0 -1
  350. package/src/components/ui/sheet.tsx +0 -1
  351. package/src/components/ui/slider.tsx +0 -1
  352. package/src/components/ui/sonner.tsx +0 -1
  353. package/src/components/ui/switch.tsx +0 -1
  354. package/src/components/ui/table.tsx +0 -1
  355. package/src/components/ui/tabs-items.tsx +0 -1
  356. package/src/components/ui/tabs.tsx +0 -1
  357. package/src/components/ui/textarea.tsx +0 -1
  358. package/src/components/ui/time-picker.tsx +0 -1
  359. package/src/components/ui/upload.tsx +0 -1
  360. package/src/form/__tests__/use-zod-form.test.tsx +0 -97
  361. package/src/form/form-field-control.tsx +0 -44
  362. package/src/form/form-root.tsx +0 -29
  363. package/src/form/index.ts +0 -7
  364. package/src/form/use-zod-form.ts +0 -29
  365. package/src/i18n/__tests__/translate.test.ts +0 -23
  366. package/src/i18n/index.ts +0 -9
  367. package/src/i18n/messages/en.json +0 -171
  368. package/src/i18n/messages/ja.json +0 -171
  369. package/src/i18n/messages/vi.json +0 -171
  370. package/src/i18n/translate.ts +0 -74
  371. package/src/i18n/use-translation.ts +0 -53
  372. package/src/index.ts +0 -3
  373. package/src/lib/__tests__/control-styles.test.ts +0 -78
  374. package/src/lib/__tests__/datetime.test.ts +0 -77
  375. package/src/lib/__tests__/format-date.test.ts +0 -97
  376. package/src/lib/__tests__/format.test.ts +0 -62
  377. package/src/lib/__tests__/theme-tokens-audit.test.ts +0 -176
  378. package/src/lib/__tests__/theme-tokens-css.test.ts +0 -118
  379. package/src/lib/__tests__/token-governance.test.ts +0 -191
  380. package/src/lib/__tests__/variants.test.ts +0 -18
  381. package/src/lib/control-styles.ts +0 -33
  382. package/src/lib/datetime/detect.ts +0 -25
  383. package/src/lib/datetime/format-date.ts +0 -100
  384. package/src/lib/datetime/format.ts +0 -140
  385. package/src/lib/datetime/index.ts +0 -25
  386. package/src/lib/datetime/parse.ts +0 -51
  387. package/src/lib/datetime/sync.ts +0 -48
  388. package/src/lib/format.ts +0 -114
  389. package/src/lib/hooks.ts +0 -54
  390. package/src/lib/utils.ts +0 -6
  391. package/src/lib/variants.ts +0 -40
  392. package/src/props/components/app.prop.ts +0 -99
  393. package/src/props/components/data-display.prop.ts +0 -73
  394. package/src/props/components/data-entry.prop.ts +0 -334
  395. package/src/props/components/feedback.prop.ts +0 -80
  396. package/src/props/components/form.prop.ts +0 -46
  397. package/src/props/components/general.prop.ts +0 -18
  398. package/src/props/components/index.ts +0 -99
  399. package/src/props/components/layout.prop.ts +0 -130
  400. package/src/props/components/navigation.prop.ts +0 -88
  401. package/src/props/components/query.prop.ts +0 -94
  402. package/src/props/index.ts +0 -17
  403. package/src/props/vocabulary/data.prop.ts +0 -46
  404. package/src/props/vocabulary/index.ts +0 -73
  405. package/src/props/vocabulary/interaction.prop.ts +0 -42
  406. package/src/props/vocabulary/navigation.prop.ts +0 -19
  407. package/src/props/vocabulary/shared.prop.ts +0 -59
  408. package/src/test/__tests__/render-loop-guard.test.tsx +0 -38
  409. package/src/test/jest-dom.d.ts +0 -4
  410. package/src/test/render-loop-guard.tsx +0 -50
  411. package/src/test/render.tsx +0 -29
  412. package/src/test/theme-globals.test.ts +0 -77
  413. package/src/test/theme-globals.ts +0 -134
  414. package/src/test/theme-test-utils.tsx +0 -67
  415. /package/{src → dist}/styles/alert-layout.css +0 -0
  416. /package/{src → dist}/styles/badge-layout.css +0 -0
  417. /package/{src → dist}/styles/card-layout.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
- };