@mantis-core/ui 0.5.0 → 0.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (379) hide show
  1. package/CHANGELOG.md +144 -0
  2. package/COMPONENTS.md +71 -73
  3. package/README.md +13 -6
  4. package/catalog.json +3031 -0
  5. package/dist/components/Buttons/Button.d.ts +39 -9
  6. package/dist/components/Buttons/Button.d.ts.map +1 -1
  7. package/dist/components/Buttons/Button.js +21 -13
  8. package/dist/components/Buttons/Button.js.map +1 -1
  9. package/dist/components/Forms/AutoCompleteField.d.ts +60 -0
  10. package/dist/components/Forms/AutoCompleteField.d.ts.map +1 -0
  11. package/dist/components/Forms/AutoCompleteField.js +125 -0
  12. package/dist/components/Forms/AutoCompleteField.js.map +1 -0
  13. package/dist/components/Forms/CKEditorInput.d.ts +5 -2
  14. package/dist/components/Forms/CKEditorInput.d.ts.map +1 -1
  15. package/dist/components/Forms/CKEditorInput.js +5 -2
  16. package/dist/components/Forms/CKEditorInput.js.map +1 -1
  17. package/dist/components/Forms/CheckboxField.d.ts +14 -0
  18. package/dist/components/Forms/CheckboxField.d.ts.map +1 -0
  19. package/dist/components/Forms/CheckboxField.js +26 -0
  20. package/dist/components/Forms/CheckboxField.js.map +1 -0
  21. package/dist/components/Forms/ColorPickerInput.d.ts +27 -8
  22. package/dist/components/Forms/ColorPickerInput.d.ts.map +1 -1
  23. package/dist/components/Forms/ColorPickerInput.js +57 -11
  24. package/dist/components/Forms/ColorPickerInput.js.map +1 -1
  25. package/dist/components/Forms/DateField.d.ts +68 -0
  26. package/dist/components/Forms/DateField.d.ts.map +1 -0
  27. package/dist/components/Forms/DateField.js +108 -0
  28. package/dist/components/Forms/DateField.js.map +1 -0
  29. package/dist/components/Forms/DatePresets.d.ts.map +1 -1
  30. package/dist/components/Forms/DatePresets.js +6 -3
  31. package/dist/components/Forms/DatePresets.js.map +1 -1
  32. package/dist/components/Forms/FieldShell.d.ts +24 -0
  33. package/dist/components/Forms/FieldShell.d.ts.map +1 -0
  34. package/dist/components/Forms/FieldShell.js +39 -0
  35. package/dist/components/Forms/FieldShell.js.map +1 -0
  36. package/dist/components/Forms/FileDropzone.d.ts +4 -2
  37. package/dist/components/Forms/FileDropzone.d.ts.map +1 -1
  38. package/dist/components/Forms/FileDropzone.js.map +1 -1
  39. package/dist/components/Forms/FormActionsBar.js +2 -2
  40. package/dist/components/Forms/FormActionsBar.js.map +1 -1
  41. package/dist/components/Forms/FormWizard.d.ts +1 -1
  42. package/dist/components/Forms/FormWizard.d.ts.map +1 -1
  43. package/dist/components/Forms/FormWizard.js +4 -5
  44. package/dist/components/Forms/FormWizard.js.map +1 -1
  45. package/dist/components/Forms/HiddenField.d.ts +12 -6
  46. package/dist/components/Forms/HiddenField.d.ts.map +1 -1
  47. package/dist/components/Forms/HiddenField.js +14 -5
  48. package/dist/components/Forms/HiddenField.js.map +1 -1
  49. package/dist/components/Forms/MaskField.d.ts +28 -0
  50. package/dist/components/Forms/MaskField.d.ts.map +1 -0
  51. package/dist/components/Forms/MaskField.js +74 -0
  52. package/dist/components/Forms/MaskField.js.map +1 -0
  53. package/dist/components/Forms/NumberField.d.ts +14 -0
  54. package/dist/components/Forms/NumberField.d.ts.map +1 -0
  55. package/dist/components/Forms/NumberField.js +51 -0
  56. package/dist/components/Forms/NumberField.js.map +1 -0
  57. package/dist/components/Forms/OtpInput.d.ts +23 -8
  58. package/dist/components/Forms/OtpInput.d.ts.map +1 -1
  59. package/dist/components/Forms/OtpInput.js +37 -8
  60. package/dist/components/Forms/OtpInput.js.map +1 -1
  61. package/dist/components/Forms/PasswordInput.d.ts +22 -9
  62. package/dist/components/Forms/PasswordInput.d.ts.map +1 -1
  63. package/dist/components/Forms/PasswordInput.js +63 -28
  64. package/dist/components/Forms/PasswordInput.js.map +1 -1
  65. package/dist/components/Forms/PhoneInput.d.ts +16 -8
  66. package/dist/components/Forms/PhoneInput.d.ts.map +1 -1
  67. package/dist/components/Forms/PhoneInput.js +13 -6
  68. package/dist/components/Forms/PhoneInput.js.map +1 -1
  69. package/dist/components/Forms/RadioGroup.d.ts +34 -13
  70. package/dist/components/Forms/RadioGroup.d.ts.map +1 -1
  71. package/dist/components/Forms/RadioGroup.js +49 -6
  72. package/dist/components/Forms/RadioGroup.js.map +1 -1
  73. package/dist/components/Forms/RangeSlider.d.ts +26 -11
  74. package/dist/components/Forms/RangeSlider.d.ts.map +1 -1
  75. package/dist/components/Forms/RangeSlider.js +40 -7
  76. package/dist/components/Forms/RangeSlider.js.map +1 -1
  77. package/dist/components/Forms/RatingInput.d.ts +24 -8
  78. package/dist/components/Forms/RatingInput.d.ts.map +1 -1
  79. package/dist/components/Forms/RatingInput.js +41 -9
  80. package/dist/components/Forms/RatingInput.js.map +1 -1
  81. package/dist/components/Forms/SearchInput.d.ts +18 -10
  82. package/dist/components/Forms/SearchInput.d.ts.map +1 -1
  83. package/dist/components/Forms/SearchInput.js +44 -23
  84. package/dist/components/Forms/SearchInput.js.map +1 -1
  85. package/dist/components/Forms/SelectField.d.ts +41 -0
  86. package/dist/components/Forms/SelectField.d.ts.map +1 -0
  87. package/dist/components/Forms/SelectField.js +110 -0
  88. package/dist/components/Forms/SelectField.js.map +1 -0
  89. package/dist/components/Forms/SwitchField.d.ts +14 -0
  90. package/dist/components/Forms/SwitchField.d.ts.map +1 -0
  91. package/dist/components/Forms/SwitchField.js +26 -0
  92. package/dist/components/Forms/SwitchField.js.map +1 -0
  93. package/dist/components/Forms/TagsInput.d.ts +29 -8
  94. package/dist/components/Forms/TagsInput.d.ts.map +1 -1
  95. package/dist/components/Forms/TagsInput.js +53 -9
  96. package/dist/components/Forms/TagsInput.js.map +1 -1
  97. package/dist/components/Forms/TextArea.d.ts +13 -10
  98. package/dist/components/Forms/TextArea.d.ts.map +1 -1
  99. package/dist/components/Forms/TextArea.js +27 -9
  100. package/dist/components/Forms/TextArea.js.map +1 -1
  101. package/dist/components/Forms/TextField.d.ts +14 -0
  102. package/dist/components/Forms/TextField.d.ts.map +1 -0
  103. package/dist/components/Forms/TextField.js +29 -0
  104. package/dist/components/Forms/TextField.js.map +1 -0
  105. package/dist/components/Forms/ToggleInlineButton.d.ts +33 -12
  106. package/dist/components/Forms/ToggleInlineButton.d.ts.map +1 -1
  107. package/dist/components/Forms/ToggleInlineButton.js +56 -6
  108. package/dist/components/Forms/ToggleInlineButton.js.map +1 -1
  109. package/dist/components/Forms/UploadFilesPreview.js +3 -3
  110. package/dist/components/Forms/UploadFilesPreview.js.map +1 -1
  111. package/dist/components/Forms/field-typing.test-d.d.ts +2 -0
  112. package/dist/components/Forms/field-typing.test-d.d.ts.map +1 -0
  113. package/dist/components/Forms/field-typing.test-d.js +24 -0
  114. package/dist/components/Forms/field-typing.test-d.js.map +1 -0
  115. package/dist/components/Forms/useFieldController.d.ts +85 -0
  116. package/dist/components/Forms/useFieldController.d.ts.map +1 -0
  117. package/dist/components/Forms/useFieldController.js +54 -0
  118. package/dist/components/Forms/useFieldController.js.map +1 -0
  119. package/dist/components/Loaders/Loading.d.ts.map +1 -1
  120. package/dist/components/Loaders/Loading.js +3 -2
  121. package/dist/components/Loaders/Loading.js.map +1 -1
  122. package/dist/components/Tables/ActionColumn.d.ts +20 -4
  123. package/dist/components/Tables/ActionColumn.d.ts.map +1 -1
  124. package/dist/components/Tables/ActionColumn.js +24 -5
  125. package/dist/components/Tables/ActionColumn.js.map +1 -1
  126. package/dist/components/Tables/FilterPannel.d.ts +9 -2
  127. package/dist/components/Tables/FilterPannel.d.ts.map +1 -1
  128. package/dist/components/Tables/FilterPannel.js +15 -11
  129. package/dist/components/Tables/FilterPannel.js.map +1 -1
  130. package/dist/components/Tables/IndexColumn.d.ts +12 -3
  131. package/dist/components/Tables/IndexColumn.d.ts.map +1 -1
  132. package/dist/components/Tables/IndexColumn.js +21 -5
  133. package/dist/components/Tables/IndexColumn.js.map +1 -1
  134. package/dist/components/Tables/MantisDataTable.d.ts +45 -0
  135. package/dist/components/Tables/MantisDataTable.d.ts.map +1 -0
  136. package/dist/components/Tables/MantisDataTable.js +63 -0
  137. package/dist/components/Tables/MantisDataTable.js.map +1 -0
  138. package/dist/components/Tables/MenuButton.d.ts +28 -7
  139. package/dist/components/Tables/MenuButton.d.ts.map +1 -1
  140. package/dist/components/Tables/MenuButton.js +20 -10
  141. package/dist/components/Tables/MenuButton.js.map +1 -1
  142. package/dist/components/Tables/PaginatedTable.d.ts +26 -17
  143. package/dist/components/Tables/PaginatedTable.d.ts.map +1 -1
  144. package/dist/components/Tables/PaginatedTable.js +24 -22
  145. package/dist/components/Tables/PaginatedTable.js.map +1 -1
  146. package/dist/components/Tables/cell-presets.d.ts +35 -0
  147. package/dist/components/Tables/cell-presets.d.ts.map +1 -0
  148. package/dist/components/Tables/cell-presets.js +40 -0
  149. package/dist/components/Tables/cell-presets.js.map +1 -0
  150. package/dist/components/Tables/columns.d.ts +40 -0
  151. package/dist/components/Tables/columns.d.ts.map +1 -0
  152. package/dist/components/Tables/columns.js +2 -0
  153. package/dist/components/Tables/columns.js.map +1 -0
  154. package/dist/components/Tables/filters/MultiSelectFilter.d.ts +24 -6
  155. package/dist/components/Tables/filters/MultiSelectFilter.d.ts.map +1 -1
  156. package/dist/components/Tables/filters/MultiSelectFilter.js +19 -6
  157. package/dist/components/Tables/filters/MultiSelectFilter.js.map +1 -1
  158. package/dist/components/auth/ChangePasswordForm.d.ts.map +1 -1
  159. package/dist/components/auth/ChangePasswordForm.js +12 -12
  160. package/dist/components/auth/ChangePasswordForm.js.map +1 -1
  161. package/dist/components/auth/ForgotPasswordForm.d.ts.map +1 -1
  162. package/dist/components/auth/ForgotPasswordForm.js +7 -5
  163. package/dist/components/auth/ForgotPasswordForm.js.map +1 -1
  164. package/dist/components/auth/LoginForm.d.ts +2 -2
  165. package/dist/components/auth/LoginForm.d.ts.map +1 -1
  166. package/dist/components/auth/LoginForm.js +15 -15
  167. package/dist/components/auth/LoginForm.js.map +1 -1
  168. package/dist/components/auth/ResetPasswordForm.d.ts.map +1 -1
  169. package/dist/components/auth/ResetPasswordForm.js +11 -12
  170. package/dist/components/auth/ResetPasswordForm.js.map +1 -1
  171. package/dist/components/auth/UserMenu.d.ts +11 -1
  172. package/dist/components/auth/UserMenu.d.ts.map +1 -1
  173. package/dist/components/auth/UserMenu.js +30 -87
  174. package/dist/components/auth/UserMenu.js.map +1 -1
  175. package/dist/components/data/Timeline.d.ts +2 -2
  176. package/dist/components/data/Timeline.d.ts.map +1 -1
  177. package/dist/components/data/Timeline.js +17 -17
  178. package/dist/components/data/Timeline.js.map +1 -1
  179. package/dist/components/feedback/Avatar.d.ts +4 -2
  180. package/dist/components/feedback/Avatar.d.ts.map +1 -1
  181. package/dist/components/feedback/Avatar.js +4 -4
  182. package/dist/components/feedback/Avatar.js.map +1 -1
  183. package/dist/components/feedback/CardSkeleton.d.ts.map +1 -1
  184. package/dist/components/feedback/CardSkeleton.js +3 -3
  185. package/dist/components/feedback/CardSkeleton.js.map +1 -1
  186. package/dist/components/feedback/TableSkeleton.d.ts.map +1 -1
  187. package/dist/components/feedback/TableSkeleton.js +3 -3
  188. package/dist/components/feedback/TableSkeleton.js.map +1 -1
  189. package/dist/components/feedback/Tag.d.ts +4 -2
  190. package/dist/components/feedback/Tag.d.ts.map +1 -1
  191. package/dist/components/feedback/Tag.js +4 -4
  192. package/dist/components/feedback/Tag.js.map +1 -1
  193. package/dist/components/navigation/CommandPalette.d.ts.map +1 -1
  194. package/dist/components/navigation/CommandPalette.js +5 -2
  195. package/dist/components/navigation/CommandPalette.js.map +1 -1
  196. package/dist/components/navigation/PageTabs.d.ts +10 -8
  197. package/dist/components/navigation/PageTabs.d.ts.map +1 -1
  198. package/dist/components/navigation/PageTabs.js +17 -13
  199. package/dist/components/navigation/PageTabs.js.map +1 -1
  200. package/dist/components/overlays/Drawer.d.ts +16 -3
  201. package/dist/components/overlays/Drawer.d.ts.map +1 -1
  202. package/dist/components/overlays/Drawer.js +9 -5
  203. package/dist/components/overlays/Drawer.js.map +1 -1
  204. package/dist/components/overlays/Modal.d.ts +18 -3
  205. package/dist/components/overlays/Modal.d.ts.map +1 -1
  206. package/dist/components/overlays/Modal.js +13 -5
  207. package/dist/components/overlays/Modal.js.map +1 -1
  208. package/dist/components/pages/app-shell/AppShell.d.ts.map +1 -1
  209. package/dist/components/pages/app-shell/AppShell.js +6 -6
  210. package/dist/components/pages/app-shell/AppShell.js.map +1 -1
  211. package/dist/components/ui/ConfirmDialog.d.ts +1 -2
  212. package/dist/components/ui/ConfirmDialog.d.ts.map +1 -1
  213. package/dist/components/ui/ConfirmDialog.js +10 -4
  214. package/dist/components/ui/ConfirmDialog.js.map +1 -1
  215. package/dist/components/ui/DataState.js +2 -2
  216. package/dist/components/ui/DataState.js.map +1 -1
  217. package/dist/index.d.ts +71 -42
  218. package/dist/index.d.ts.map +1 -1
  219. package/dist/index.js +114 -22
  220. package/dist/index.js.map +1 -1
  221. package/docs/README.md +1 -1
  222. package/docs/components/action-column.md +33 -7
  223. package/docs/components/admin-page-configurator.md +24 -5
  224. package/docs/components/admin-page-header.md +21 -3
  225. package/docs/components/admin-page-layout-shell.md +18 -4
  226. package/docs/components/admin-page-layout.md +34 -5
  227. package/docs/components/app-shell.md +31 -6
  228. package/docs/components/auto-complete-field.md +60 -0
  229. package/docs/components/avatar.md +18 -8
  230. package/docs/components/bar-chart.md +25 -7
  231. package/docs/components/breadcrumbs.md +15 -2
  232. package/docs/components/button.md +34 -15
  233. package/docs/components/card-skeleton.md +9 -3
  234. package/docs/components/change-password-form.md +23 -4
  235. package/docs/components/checkbox-field.md +38 -0
  236. package/docs/components/ckeditor-input.md +40 -8
  237. package/docs/components/color-picker-input.md +19 -8
  238. package/docs/components/command-palette.md +23 -2
  239. package/docs/components/confirm-dialog.md +36 -9
  240. package/docs/components/data-state.md +31 -6
  241. package/docs/components/date-field.md +39 -0
  242. package/docs/components/date-presets.md +19 -5
  243. package/docs/components/description-list.md +20 -2
  244. package/docs/components/dirty-form-guard.md +16 -4
  245. package/docs/components/donut-chart.md +24 -7
  246. package/docs/components/drawer.md +27 -8
  247. package/docs/components/empty-state.md +12 -2
  248. package/docs/components/error-boundary.md +16 -2
  249. package/docs/components/error-message.md +22 -3
  250. package/docs/components/field-shell.md +47 -0
  251. package/docs/components/file-dropzone.md +22 -6
  252. package/docs/components/filter-pannel.md +34 -7
  253. package/docs/components/forgot-password-form.md +23 -5
  254. package/docs/components/form-actions-bar.md +21 -2
  255. package/docs/components/form-field-render.md +36 -8
  256. package/docs/components/form-section.md +13 -1
  257. package/docs/components/form-wizard.md +34 -5
  258. package/docs/components/hidden-field.md +22 -6
  259. package/docs/components/index-column.md +25 -5
  260. package/docs/components/line-chart.md +25 -7
  261. package/docs/components/loading.md +14 -5
  262. package/docs/components/login-form.md +31 -6
  263. package/docs/components/mantis-data-table.md +61 -0
  264. package/docs/components/map-picker-client.md +29 -8
  265. package/docs/components/map-picker-osm.md +27 -9
  266. package/docs/components/map-picker.md +25 -4
  267. package/docs/components/mask-field.md +31 -0
  268. package/docs/components/menu-button.md +22 -7
  269. package/docs/components/modal.md +34 -9
  270. package/docs/components/multi-select-filter.md +25 -7
  271. package/docs/components/number-field.md +40 -0
  272. package/docs/components/otp-input.md +20 -7
  273. package/docs/components/page-tabs.md +23 -4
  274. package/docs/components/page-title.md +6 -1
  275. package/docs/components/paginated-table.md +36 -13
  276. package/docs/components/pagination.md +20 -7
  277. package/docs/components/password-input.md +20 -8
  278. package/docs/components/phone-input.md +17 -7
  279. package/docs/components/radio-group.md +39 -9
  280. package/docs/components/range-slider.md +18 -6
  281. package/docs/components/rating-input.md +19 -8
  282. package/docs/components/render-field.md +31 -3
  283. package/docs/components/reset-password-form.md +24 -4
  284. package/docs/components/rich-text-preview.md +17 -5
  285. package/docs/components/search-input.md +18 -7
  286. package/docs/components/select-field.md +55 -0
  287. package/docs/components/stat-card.md +14 -3
  288. package/docs/components/status-badge.md +17 -7
  289. package/docs/components/switch-field.md +32 -0
  290. package/docs/components/table-filter-field.md +22 -4
  291. package/docs/components/table-skeleton.md +9 -3
  292. package/docs/components/table-toolbar.md +18 -5
  293. package/docs/components/tag.md +16 -7
  294. package/docs/components/tags-input.md +21 -8
  295. package/docs/components/text-area.md +18 -8
  296. package/docs/components/text-field.md +32 -0
  297. package/docs/components/timeline.md +19 -3
  298. package/docs/components/toggle-inline-button.md +42 -10
  299. package/docs/components/upload-files-preview.md +23 -2
  300. package/docs/components/use-field-controller.md +58 -0
  301. package/docs/components/user-menu.md +26 -6
  302. package/docs/contracts/STORYBOOK_IMPLEMENTATION_AND_VOBO.md +92 -0
  303. package/docs/contracts/STORYBOOK_VOBO_LEDGER.md +195 -0
  304. package/docs/contracts/component-doc-schema.md +57 -15
  305. package/docs/contracts/dependency-map.md +50 -52
  306. package/docs/contracts/field-controller.md +138 -0
  307. package/docs/contracts/style-imports.md +1 -20
  308. package/llms.txt +70 -72
  309. package/package.json +39 -10
  310. package/dist/components/Forms/AsyncSelect.d.ts +0 -20
  311. package/dist/components/Forms/AsyncSelect.d.ts.map +0 -1
  312. package/dist/components/Forms/AsyncSelect.js +0 -77
  313. package/dist/components/Forms/AsyncSelect.js.map +0 -1
  314. package/dist/components/Forms/Combobox.d.ts +0 -10
  315. package/dist/components/Forms/Combobox.d.ts.map +0 -1
  316. package/dist/components/Forms/Combobox.js +0 -11
  317. package/dist/components/Forms/Combobox.js.map +0 -1
  318. package/dist/components/Forms/CurrencyInput.d.ts +0 -12
  319. package/dist/components/Forms/CurrencyInput.d.ts.map +0 -1
  320. package/dist/components/Forms/CurrencyInput.js +0 -9
  321. package/dist/components/Forms/CurrencyInput.js.map +0 -1
  322. package/dist/components/Forms/DateInput.d.ts +0 -10
  323. package/dist/components/Forms/DateInput.d.ts.map +0 -1
  324. package/dist/components/Forms/DateInput.js +0 -11
  325. package/dist/components/Forms/DateInput.js.map +0 -1
  326. package/dist/components/Forms/DateRangeInput.d.ts +0 -10
  327. package/dist/components/Forms/DateRangeInput.d.ts.map +0 -1
  328. package/dist/components/Forms/DateRangeInput.js +0 -13
  329. package/dist/components/Forms/DateRangeInput.js.map +0 -1
  330. package/dist/components/Forms/DropDown.d.ts +0 -10
  331. package/dist/components/Forms/DropDown.d.ts.map +0 -1
  332. package/dist/components/Forms/DropDown.js +0 -11
  333. package/dist/components/Forms/DropDown.js.map +0 -1
  334. package/dist/components/Forms/MultiSelect.d.ts +0 -10
  335. package/dist/components/Forms/MultiSelect.d.ts.map +0 -1
  336. package/dist/components/Forms/MultiSelect.js +0 -13
  337. package/dist/components/Forms/MultiSelect.js.map +0 -1
  338. package/dist/components/Forms/NumberInput.d.ts +0 -10
  339. package/dist/components/Forms/NumberInput.d.ts.map +0 -1
  340. package/dist/components/Forms/NumberInput.js +0 -16
  341. package/dist/components/Forms/NumberInput.js.map +0 -1
  342. package/dist/components/Forms/Select.d.ts +0 -15
  343. package/dist/components/Forms/Select.d.ts.map +0 -1
  344. package/dist/components/Forms/Select.js +0 -48
  345. package/dist/components/Forms/Select.js.map +0 -1
  346. package/dist/components/Forms/Switch.d.ts +0 -18
  347. package/dist/components/Forms/Switch.d.ts.map +0 -1
  348. package/dist/components/Forms/Switch.js +0 -30
  349. package/dist/components/Forms/Switch.js.map +0 -1
  350. package/dist/components/Forms/TextInput.d.ts +0 -11
  351. package/dist/components/Forms/TextInput.d.ts.map +0 -1
  352. package/dist/components/Forms/TextInput.js +0 -12
  353. package/dist/components/Forms/TextInput.js.map +0 -1
  354. package/dist/components/Forms/TimePicker.d.ts +0 -13
  355. package/dist/components/Forms/TimePicker.d.ts.map +0 -1
  356. package/dist/components/Forms/TimePicker.js +0 -19
  357. package/dist/components/Forms/TimePicker.js.map +0 -1
  358. package/dist/components/Forms/Toggle.d.ts +0 -14
  359. package/dist/components/Forms/Toggle.d.ts.map +0 -1
  360. package/dist/components/Forms/Toggle.js +0 -10
  361. package/dist/components/Forms/Toggle.js.map +0 -1
  362. package/dist/components/Forms/types.d.ts +0 -9
  363. package/dist/components/Forms/types.d.ts.map +0 -1
  364. package/dist/components/Forms/types.js +0 -2
  365. package/dist/components/Forms/types.js.map +0 -1
  366. package/docs/components/async-select.md +0 -27
  367. package/docs/components/combobox.md +0 -19
  368. package/docs/components/currency-input.md +0 -21
  369. package/docs/components/date-input.md +0 -21
  370. package/docs/components/date-range-input.md +0 -20
  371. package/docs/components/drop-down.md +0 -26
  372. package/docs/components/multi-select.md +0 -22
  373. package/docs/components/number-input.md +0 -21
  374. package/docs/components/select.md +0 -28
  375. package/docs/components/switch.md +0 -24
  376. package/docs/components/text-input.md +0 -24
  377. package/docs/components/time-picker.md +0 -25
  378. package/docs/components/toggle.md +0 -24
  379. package/docs/contracts/controller-props.md +0 -28
@@ -1,11 +0,0 @@
1
- import { InputTextProps } from 'primereact/inputtext';
2
- import React from 'react';
3
- import { ControllerProps } from './types';
4
- export interface TextInputProps extends Omit<InputTextProps, 'name' | 'defaultValue'> {
5
- controller: ControllerProps;
6
- block?: boolean;
7
- defaultValue?: string;
8
- }
9
- declare const TextInput: React.FC<TextInputProps>;
10
- export default TextInput;
11
- //# sourceMappingURL=TextInput.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"TextInput.d.ts","sourceRoot":"","sources":["../../../src/components/Forms/TextInput.tsx"],"names":[],"mappings":"AACA,OAAO,EAAa,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACjE,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAE1C,MAAM,WAAW,cACf,SAAQ,IAAI,CAAC,cAAc,EAAE,MAAM,GAAG,cAAc,CAAC;IACrD,UAAU,EAAE,eAAe,CAAC;IAC5B,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,QAAA,MAAM,SAAS,EAAE,KAAK,CAAC,EAAE,CAAC,cAAc,CAqBvC,CAAC;AAEF,eAAe,SAAS,CAAC"}
@@ -1,12 +0,0 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
2
- import classNames from 'classnames';
3
- import { InputText } from 'primereact/inputtext';
4
- import { Controller } from 'react-hook-form';
5
- const TextInput = (props) => {
6
- const { controller, block, defaultValue = '', ...rest } = props;
7
- return (_jsx(Controller, { defaultValue: controller?.defaultValue || defaultValue, ...controller, render: ({ field, fieldState, formState }) => (_jsx(InputText, { id: rest.id || field.name, ...rest, disabled: formState.isSubmitting || rest.disabled, invalid: fieldState.invalid, className: classNames(rest.className, {
8
- 'w-full': block,
9
- }), ...field })) }));
10
- };
11
- export default TextInput;
12
- //# sourceMappingURL=TextInput.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"TextInput.js","sourceRoot":"","sources":["../../../src/components/Forms/TextInput.tsx"],"names":[],"mappings":";AAAA,OAAO,UAAU,MAAM,YAAY,CAAC;AACpC,OAAO,EAAE,SAAS,EAAkB,MAAM,sBAAsB,CAAC;AAEjE,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAU7C,MAAM,SAAS,GAA6B,CAAC,KAAK,EAAE,EAAE;IACpD,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,YAAY,GAAG,EAAE,EAAE,GAAG,IAAI,EAAE,GAAG,KAAK,CAAC;IAEhE,OAAO,CACL,KAAC,UAAU,IACT,YAAY,EAAE,UAAU,EAAE,YAAY,IAAI,YAAY,KAClD,UAAU,EACd,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC,CAC5C,KAAC,SAAS,IACR,EAAE,EAAE,IAAI,CAAC,EAAE,IAAI,KAAK,CAAC,IAAI,KACrB,IAAI,EACR,QAAQ,EAAE,SAAS,CAAC,YAAY,IAAI,IAAI,CAAC,QAAQ,EACjD,OAAO,EAAE,UAAU,CAAC,OAAO,EAC3B,SAAS,EAAE,UAAU,CAAC,IAAI,CAAC,SAAS,EAAE;gBACpC,QAAQ,EAAE,KAAK;aAChB,CAAC,KACE,KAAK,GACT,CACH,GACD,CACH,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,SAAS,CAAC"}
@@ -1,13 +0,0 @@
1
- import React from "react";
2
- import { DatePickerProps } from "react-datepicker";
3
- import { ControllerProps } from "./types";
4
- export interface TimePickerProps {
5
- controller: ControllerProps;
6
- block?: boolean;
7
- datePicker?: DatePickerProps;
8
- className?: string;
9
- timePeriod?: "AM" | "PM";
10
- }
11
- declare const TimePicker: React.FC<TimePickerProps>;
12
- export default TimePicker;
13
- //# sourceMappingURL=TimePicker.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"TimePicker.d.ts","sourceRoot":"","sources":["../../../src/components/Forms/TimePicker.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAqB,MAAM,OAAO,CAAC;AAC1C,OAAmB,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAE/D,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAE1C,MAAM,WAAW,eAAe;IAC9B,UAAU,EAAE,eAAe,CAAC;IAC5B,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,UAAU,CAAC,EAAE,eAAe,CAAC;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,IAAI,GAAG,IAAI,CAAC;CAC1B;AAiBD,QAAA,MAAM,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,eAAe,CAqCzC,CAAC;AAEF,eAAe,UAAU,CAAC"}
@@ -1,19 +0,0 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
2
- import classNames from "classnames";
3
- import { InputText } from "primereact/inputtext";
4
- import { forwardRef } from "react";
5
- import DatePicker from "react-datepicker";
6
- import { Controller } from "react-hook-form";
7
- const TimeInput = forwardRef(({ value, onClick, className, disabled, ...rest }, ref) => (_jsx(InputText, { role: 'button', value: value, onClick: onClick, ...rest, className: classNames("cursor-pointer", className), ref: ref, readOnly: true, disabled: disabled })));
8
- TimeInput.displayName = "TimeInput";
9
- const TimePicker = (props) => {
10
- const { controller, block, datePicker, className } = props;
11
- return (_jsx(Controller, { ...controller, render: ({ field, fieldState }) => (_jsx(DatePicker, { locale: 'es', className: classNames("p-inputtext p-component font-semibold text-center uppercase", className, {
12
- "w-full": block,
13
- "p-invalid": fieldState.invalid,
14
- }), calendarClassName: 'p-input w-full', showTimeSelect: true, showTimeSelectOnly: true, timeIntervals: 15, timeCaption: 'Horas', dateFormat: 'h:mm aa', timeFormat: 'h:mm aa', ...datePicker, selected: field.value, onChange: field.onChange, onBlur: field.onBlur, wrapperClassName: classNames(datePicker?.wrapperClassName, {
15
- "w-full": block,
16
- }), customInput: _jsx(TimeInput, {}) })) }));
17
- };
18
- export default TimePicker;
19
- //# sourceMappingURL=TimePicker.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"TimePicker.js","sourceRoot":"","sources":["../../../src/components/Forms/TimePicker.tsx"],"names":[],"mappings":";AAAA,OAAO,UAAU,MAAM,YAAY,CAAC;AACpC,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAc,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AAC1C,OAAO,UAA+B,MAAM,kBAAkB,CAAC;AAC/D,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAW7C,MAAM,SAAS,GAAG,UAAU,CAAW,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,IAAI,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC,CAChG,KAAC,SAAS,IACR,IAAI,EAAC,QAAQ,EACb,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,OAAO,KACZ,IAAI,EACR,SAAS,EAAE,UAAU,CAAC,gBAAgB,EAAE,SAAS,CAAC,EAClD,GAAG,EAAE,GAAG,EACR,QAAQ,QACR,QAAQ,EAAE,QAAQ,GAClB,CACH,CAAC,CAAC;AAEH,SAAS,CAAC,WAAW,GAAG,WAAW,CAAC;AAEpC,MAAM,UAAU,GAA8B,CAAC,KAAK,EAAE,EAAE;IACtD,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,GAAG,KAAK,CAAC;IAE3D,OAAO,CACL,KAAC,UAAU,OACL,UAAU,EACd,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC,CACjC,KAAC,UAAU,IACT,MAAM,EAAC,IAAI,EACX,SAAS,EAAE,UAAU,CACnB,6DAA6D,EAC7D,SAAS,EACT;gBACE,QAAQ,EAAE,KAAK;gBACf,WAAW,EAAE,UAAU,CAAC,OAAO;aAChC,CACF,EACD,iBAAiB,EAAC,gBAAgB,EAClC,cAAc,QACd,kBAAkB,QAClB,aAAa,EAAE,EAAE,EACjB,WAAW,EAAC,OAAO,EACnB,UAAU,EAAC,SAAS,EACpB,UAAU,EAAC,SAAS,KAChB,UAAU,EACd,QAAQ,EAAE,KAAK,CAAC,KAAK,EACrB,QAAQ,EAAE,KAAK,CAAC,QAAQ,EACxB,MAAM,EAAE,KAAK,CAAC,MAAM,EACpB,gBAAgB,EAAE,UAAU,CAAC,UAAU,EAAE,gBAAgB,EAAE;gBACzD,QAAQ,EAAE,KAAK;aAChB,CAAC,EACF,WAAW,EAAE,KAAC,SAAS,KAAG,GAE1B,CACH,GACD,CACH,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,UAAU,CAAC"}
@@ -1,14 +0,0 @@
1
- import React from "react";
2
- import { ControllerProps } from "./types";
3
- export interface ToggleProps extends ControllerProps {
4
- on?: string | any;
5
- off?: string | any;
6
- size?: "sm" | "lg" | "md";
7
- offstyle?: "primary" | "secondary" | "dark";
8
- onstyle?: "primary" | "secondary" | "dark";
9
- onClick?: any;
10
- active?: boolean;
11
- }
12
- declare const Toggle: React.FC<ToggleProps>;
13
- export default Toggle;
14
- //# sourceMappingURL=Toggle.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Toggle.d.ts","sourceRoot":"","sources":["../../../src/components/Forms/Toggle.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAE1C,MAAM,WAAW,WAAY,SAAQ,eAAe;IAClD,EAAE,CAAC,EAAE,MAAM,GAAG,GAAG,CAAC;IAClB,GAAG,CAAC,EAAE,MAAM,GAAG,GAAG,CAAC;IACnB,IAAI,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;IAC1B,QAAQ,CAAC,EAAE,SAAS,GAAG,WAAW,GAAG,MAAM,CAAC;IAC5C,OAAO,CAAC,EAAE,SAAS,GAAG,WAAW,GAAG,MAAM,CAAC;IAC3C,OAAO,CAAC,EAAE,GAAG,CAAC;IACd,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,QAAA,MAAM,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC,WAAW,CAoCjC,CAAC;AAEF,eAAe,MAAM,CAAC"}
@@ -1,10 +0,0 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { Checkbox } from "primereact/checkbox";
3
- import { Controller } from "react-hook-form";
4
- const Toggle = ({ name, rules, defaultValue, on = "SI", off = "NO", size, }) => {
5
- return (_jsx(Controller, { name: name, rules: rules, defaultValue: defaultValue, render: ({ field }) => (_jsxs("div", { className: 'flex align-items-center gap-2', children: [_jsx(Checkbox, { inputId: name, checked: field.value, onChange: (e) => {
6
- field.onChange(e.checked);
7
- } }), field?.value && (_jsx("label", { className: 'text-base text-primary', htmlFor: name, children: on })), !field?.value && (_jsx("label", { className: 'text-base text-primary', htmlFor: name, children: off }))] })) }));
8
- };
9
- export default Toggle;
10
- //# sourceMappingURL=Toggle.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Toggle.js","sourceRoot":"","sources":["../../../src/components/Forms/Toggle.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAE/C,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAa7C,MAAM,MAAM,GAA0B,CAAC,EACrC,IAAI,EACJ,KAAK,EACL,YAAY,EACZ,EAAE,GAAG,IAAI,EACT,GAAG,GAAG,IAAI,EACV,IAAI,GACL,EAAE,EAAE;IACH,OAAO,CACL,KAAC,UAAU,IACT,IAAI,EAAE,IAAI,EACV,KAAK,EAAE,KAAK,EACZ,YAAY,EAAE,YAAY,EAC1B,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CACrB,eAAK,SAAS,EAAC,+BAA+B,aAC5C,KAAC,QAAQ,IACP,OAAO,EAAE,IAAI,EACb,OAAO,EAAE,KAAK,CAAC,KAAK,EACpB,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE;wBACd,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;oBAC5B,CAAC,GACD,EACD,KAAK,EAAE,KAAK,IAAI,CACf,gBAAO,SAAS,EAAC,wBAAwB,EAAC,OAAO,EAAE,IAAI,YACpD,EAAE,GACG,CACT,EACA,CAAC,KAAK,EAAE,KAAK,IAAI,CAChB,gBAAO,SAAS,EAAC,wBAAwB,EAAC,OAAO,EAAE,IAAI,YACpD,GAAG,GACE,CACT,IACG,CACP,GACD,CACH,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,MAAM,CAAC"}
@@ -1,9 +0,0 @@
1
- import { Control, RegisterOptions } from 'react-hook-form';
2
- export interface ControllerProps {
3
- name: string;
4
- rules?: RegisterOptions;
5
- shouldUnregister?: boolean;
6
- defaultValue?: any;
7
- control?: Control;
8
- }
9
- //# sourceMappingURL=types.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/components/Forms/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAE3D,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,eAAe,CAAC;IACxB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,YAAY,CAAC,EAAE,GAAG,CAAC;IACnB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=types.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/components/Forms/types.ts"],"names":[],"mappings":""}
@@ -1,27 +0,0 @@
1
- ---
2
- name: AsyncSelect
3
- category: forms
4
- import: '@mantis-core/ui/components/Forms/AsyncSelect'
5
- whenToUse: Searchable select that loads options asynchronously via loadOptions callback.
6
- baseLibrary: react-select/async
7
- formContract: ControllerProps
8
- requiredStyles: [scss/select.scss]
9
- relatedComponents: [FormFieldRender, Select]
10
- relatedNextCore: []
11
- props:
12
- - { name: controller, type: ControllerProps, required: true }
13
- - { name: loadOptions, type: '(inputValue: string) => Promise<OptionsOrGroups>', required: true }
14
- - { name: isCreatable, type: boolean, required: false, default: 'false' }
15
- - { name: debounceMs, type: number, required: false, default: '250' }
16
- - { name: block, type: boolean, required: false }
17
- ---
18
- ## Example
19
-
20
- ```tsx
21
- <AsyncSelect controller={{ name: 'client' }} loadOptions={searchClients} block />
22
- ```
23
-
24
- ## Notes
25
-
26
- - `loadOptions` is required.
27
- - Debouncing is implemented inside the wrapper.
@@ -1,19 +0,0 @@
1
- ---
2
- name: Combobox
3
- category: forms
4
- import: '@mantis-core/ui/components/Forms/Combobox'
5
- whenToUse: Autocomplete text input (PrimeReact AutoComplete) wired to react-hook-form; pass suggestions via the suggestions prop.
6
- baseLibrary: custom
7
- formContract: ControllerProps
8
- relatedNextCore: []
9
- props:
10
- - { name: controller, type: ControllerProps, required: true }
11
- - { name: suggestions, type: 'any[]', required: false }
12
- - { name: completeMethod, type: '(e: AutoCompleteCompleteEvent) => void', required: false }
13
- - { name: block, type: boolean, required: false }
14
- ---
15
- ## Example
16
-
17
- ```tsx
18
- <Combobox controller={{ name: 'city' }} suggestions={cities} completeMethod={searchCities} block />
19
- ```
@@ -1,21 +0,0 @@
1
- ---
2
- name: CurrencyInput
3
- category: forms
4
- import: '@mantis-core/ui/components/Forms/CurrencyInput'
5
- whenToUse: 'Numeric input pre-configured for currency display (mode=currency).'
6
- baseLibrary: custom
7
- formContract: ControllerProps
8
- requiredStyles: [scss/inputs.scss]
9
- relatedComponents: [FormFieldRender, NumberInput]
10
- relatedNextCore: []
11
- props:
12
- - { name: controller, type: ControllerProps, required: true }
13
- - { name: currency, type: string, required: false, default: '''USD''' }
14
- - { name: locale, type: string, required: false, default: '''en-US''' }
15
- - { name: block, type: boolean, required: false }
16
- ---
17
- ## Example
18
-
19
- ```tsx
20
- <CurrencyInput controller={{ name: 'price' }} currency='USD' block />
21
- ```
@@ -1,21 +0,0 @@
1
- ---
2
- name: DateInput
3
- category: forms
4
- import: '@mantis-core/ui/components/Forms/DateInput'
5
- whenToUse: 'Single date picker (PrimeReact Calendar, locale=es, format=dd/mm/yy).'
6
- baseLibrary: primereact/calendar
7
- formContract: ControllerProps
8
- requiredStyles: [scss/inputs.scss]
9
- relatedComponents: [FormFieldRender, DateRangeInput]
10
- relatedNextCore: []
11
- props:
12
- - { name: controller, type: ControllerProps, required: true }
13
- - { name: block, type: boolean, required: false }
14
- - { name: showTime, type: boolean, required: false }
15
- - { name: minDate, type: Date, required: false }
16
- ---
17
- ## Example
18
-
19
- ```tsx
20
- <DateInput controller={{ name: 'publishedAt' }} block />
21
- ```
@@ -1,20 +0,0 @@
1
- ---
2
- name: DateRangeInput
3
- category: forms
4
- import: '@mantis-core/ui/components/Forms/DateRangeInput'
5
- whenToUse: 'Date range picker that stores [startDate, endDate] array; selectionMode is locked to ''range''.'
6
- baseLibrary: custom
7
- formContract: ControllerProps
8
- requiredStyles: [scss/inputs.scss]
9
- relatedComponents: [FormFieldRender, DateInput]
10
- relatedNextCore: []
11
- props:
12
- - { name: controller, type: ControllerProps, required: true }
13
- - { name: block, type: boolean, required: false }
14
- - { name: showTime, type: boolean, required: false }
15
- ---
16
- ## Example
17
-
18
- ```tsx
19
- <DateRangeInput controller={{ name: 'period' }} block />
20
- ```
@@ -1,26 +0,0 @@
1
- ---
2
- name: DropDown
3
- category: forms
4
- import: '@mantis-core/ui/components/Forms/DropDown'
5
- whenToUse: PrimeReact Dropdown (single select with filter) wired to react-hook-form; use when you need PrimeReact styling over react-select.
6
- baseLibrary: primereact/dropdown
7
- formContract: ControllerProps
8
- requiredStyles: [scss/inputs.scss]
9
- relatedComponents: [FormFieldRender]
10
- relatedNextCore: []
11
- props:
12
- - { name: controller, type: ControllerProps, required: true }
13
- - { name: options, type: 'any[]', required: false }
14
- - { name: optionLabel, type: string, required: false }
15
- - { name: optionValue, type: string, required: false }
16
- - { name: block, type: boolean, required: false }
17
- ---
18
- ## Example
19
-
20
- ```tsx
21
- <DropDown controller={{ name: 'category' }} options={categories} optionLabel='name' optionValue='id' block />
22
- ```
23
-
24
- ## Notes
25
-
26
- - This is the PrimeReact dropdown wrapper, not the `react-select` wrapper.
@@ -1,22 +0,0 @@
1
- ---
2
- name: MultiSelect
3
- category: forms
4
- import: '@mantis-core/ui/components/Forms/MultiSelect'
5
- whenToUse: Multi-value select (PrimeReact) wired to react-hook-form.
6
- baseLibrary: primereact/multiselect
7
- formContract: ControllerProps
8
- requiredStyles: [scss/inputs.scss]
9
- relatedComponents: [FormFieldRender, MultiSelectFilter]
10
- relatedNextCore: []
11
- props:
12
- - { name: controller, type: ControllerProps, required: true }
13
- - { name: options, type: 'any[]', required: false }
14
- - { name: optionLabel, type: string, required: false }
15
- - { name: optionValue, type: string, required: false }
16
- - { name: block, type: boolean, required: false }
17
- ---
18
- ## Example
19
-
20
- ```tsx
21
- <MultiSelect controller={{ name: 'tags' }} options={tagOptions} optionLabel='name' optionValue='id' block />
22
- ```
@@ -1,21 +0,0 @@
1
- ---
2
- name: NumberInput
3
- category: forms
4
- import: '@mantis-core/ui/components/Forms/NumberInput'
5
- whenToUse: Numeric input (integer or decimal) wired to react-hook-form.
6
- baseLibrary: primereact/inputnumber
7
- formContract: ControllerProps
8
- requiredStyles: [scss/inputs.scss]
9
- relatedComponents: [FormFieldRender]
10
- relatedNextCore: []
11
- props:
12
- - { name: controller, type: ControllerProps, required: true }
13
- - { name: block, type: boolean, required: false }
14
- - { name: min, type: number, required: false }
15
- - { name: max, type: number, required: false }
16
- ---
17
- ## Example
18
-
19
- ```tsx
20
- <NumberInput controller={{ name: 'price', rules: { min: 0 } }} block />
21
- ```
@@ -1,28 +0,0 @@
1
- ---
2
- name: Select
3
- category: forms
4
- import: '@mantis-core/ui/components/Forms/Select'
5
- whenToUse: Single-value searchable select (react-select); supports creatable mode.
6
- baseLibrary: react-select
7
- formContract: ControllerProps
8
- requiredStyles: [scss/select.scss]
9
- relatedComponents: [FormFieldRender, AsyncSelect, DropDown]
10
- relatedNextCore: []
11
- props:
12
- - { name: controller, type: ControllerProps, required: true }
13
- - { name: options, type: OptionsOrGroups, required: false }
14
- - { name: isCreatable, type: boolean, required: false, default: 'false' }
15
- - { name: variant, type: ButtonVariant, required: false, default: '''primary''' }
16
- - { name: block, type: boolean, required: false }
17
- - { name: isLoading, type: boolean, required: false }
18
- ---
19
- ## Example
20
-
21
- ```tsx
22
- <Select controller={{ name: 'status' }} options={statusOptions} block />
23
- ```
24
-
25
- ## Notes
26
-
27
- - This is not PrimeReact.
28
- - Keep `classNamePrefix="react-select"` behavior so the shared SCSS continues to match.
@@ -1,24 +0,0 @@
1
- ---
2
- name: Switch
3
- category: forms
4
- import: '@mantis-core/ui/components/Forms/Switch'
5
- whenToUse: Toggle/boolean switch wired to react-hook-form.
6
- baseLibrary: custom
7
- formContract: ControllerProps
8
- requiredStyles: [scss/switch.scss]
9
- relatedComponents: [FormFieldRender, Toggle]
10
- relatedNextCore: []
11
- props:
12
- - { name: controller, type: ControllerProps, required: true }
13
- - { name: label, type: string, required: false }
14
- - { name: block, type: boolean, required: false }
15
- ---
16
- ## Example
17
-
18
- ```tsx
19
- <Switch controller={{ name: 'isActive' }} label='Active' />
20
- ```
21
-
22
- ## Notes
23
-
24
- - This is not PrimeReact `InputSwitch`.
@@ -1,24 +0,0 @@
1
- ---
2
- name: TextInput
3
- category: forms
4
- import: '@mantis-core/ui/components/Forms/TextInput'
5
- whenToUse: Single-line text field wired to react-hook-form.
6
- baseLibrary: primereact/inputtext
7
- formContract: ControllerProps
8
- requiredStyles: [scss/inputs.scss]
9
- relatedComponents: [FormFieldRender, TextArea]
10
- relatedNextCore: []
11
- props:
12
- - { name: controller, type: ControllerProps, required: true }
13
- - { name: block, type: boolean, required: false, default: 'false' }
14
- - { name: defaultValue, type: string, required: false, default: '''''' }
15
- ---
16
- ## Example
17
-
18
- ```tsx
19
- <TextInput controller={{ name: 'email', rules: { required: true } }} block />
20
- ```
21
-
22
- ## Notes
23
-
24
- - Use this when you want PrimeReact `InputText` behavior with `react-hook-form` wiring.
@@ -1,25 +0,0 @@
1
- ---
2
- name: TimePicker
3
- category: forms
4
- import: '@mantis-core/ui/components/Forms/TimePicker'
5
- whenToUse: Time-only picker (15-min intervals) wired to react-hook-form; renders as a styled InputText trigger.
6
- baseLibrary: react-datepicker
7
- formContract: ControllerProps
8
- requiredStyles: [scss/inputs.scss]
9
- relatedNextCore: []
10
- props:
11
- - { name: controller, type: ControllerProps, required: true, description: 'react-hook-form controller config' }
12
- - { name: block, type: boolean, required: false, default: 'false', description: 'Expand to full width' }
13
- - { name: datePicker, type: DatePickerProps, required: false, description: 'Passthrough props for react-datepicker' }
14
- - { name: className, type: string, required: false, description: 'Additional CSS class on the DatePicker wrapper' }
15
- - { name: timePeriod, type: '''AM'' | ''PM''', required: false, description: 'Default time period hint' }
16
- ---
17
- ## Example
18
-
19
- ```tsx
20
- {/* TODO: add example */}
21
- ```
22
-
23
- ## Notes
24
-
25
- - This is not PrimeReact `Calendar`.
@@ -1,24 +0,0 @@
1
- ---
2
- name: Toggle
3
- category: forms
4
- import: '@mantis-core/ui/components/Forms/Toggle'
5
- whenToUse: Checkbox-based boolean toggle wired to react-hook-form with configurable on/off labels.
6
- baseLibrary: primereact/checkbox
7
- formContract: ControllerProps
8
- relatedComponents: [FormFieldRender, Switch]
9
- relatedNextCore: []
10
- props:
11
- - { name: controller, type: ControllerProps, required: true, description: 'react-hook-form controller config (name, rules, defaultValue)' }
12
- - { name: on, type: 'string | any', required: false, default: '''SI''', description: 'Label shown when value is true' }
13
- - { name: off, type: 'string | any', required: false, default: '''NO''', description: 'Label shown when value is false' }
14
- - { name: size, type: '''sm'' | ''lg'' | ''md''', required: false, description: 'Visual size variant' }
15
- - { name: offstyle, type: '''primary'' | ''secondary'' | ''dark''', required: false, description: 'Style when off' }
16
- - { name: onstyle, type: '''primary'' | ''secondary'' | ''dark''', required: false, description: 'Style when on' }
17
- - { name: onClick, type: any, required: false, description: 'Click handler passthrough' }
18
- - { name: active, type: boolean, required: false, description: 'Controlled active state' }
19
- ---
20
- ## Example
21
-
22
- ```tsx
23
- {/* TODO: add example */}
24
- ```
@@ -1,28 +0,0 @@
1
- # Controller Props
2
-
3
- Shared form wrappers in `@mantis-core/ui` use this contract:
4
-
5
- ```ts
6
- export interface ControllerProps {
7
- name: string;
8
- rules?: RegisterOptions;
9
- shouldUnregister?: boolean;
10
- defaultValue?: any;
11
- control?: Control;
12
- }
13
- ```
14
-
15
- ## Usage
16
-
17
- ```tsx
18
- controller={{
19
- name: "title",
20
- control: form.control,
21
- rules: { required: "Title is required" },
22
- }}
23
- ```
24
-
25
- ## Notes
26
-
27
- - Components that expose `controller: ControllerProps` are designed for `react-hook-form`.
28
- - Some components, such as `FileDropzone`, also support plain controlled mode without `controller`.