@mantis-core/ui 0.5.0 → 0.7.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 (378) hide show
  1. package/CHANGELOG.md +155 -0
  2. package/COMPONENTS.md +71 -73
  3. package/README.md +19 -6
  4. package/bin/mantis-llm.mjs +242 -0
  5. package/catalog.json +3031 -0
  6. package/dist/components/Buttons/Button.d.ts +39 -9
  7. package/dist/components/Buttons/Button.d.ts.map +1 -1
  8. package/dist/components/Buttons/Button.js +21 -13
  9. package/dist/components/Buttons/Button.js.map +1 -1
  10. package/dist/components/Forms/AutoCompleteField.d.ts +60 -0
  11. package/dist/components/Forms/AutoCompleteField.d.ts.map +1 -0
  12. package/dist/components/Forms/AutoCompleteField.js +125 -0
  13. package/dist/components/Forms/AutoCompleteField.js.map +1 -0
  14. package/dist/components/Forms/CKEditorInput.d.ts +5 -2
  15. package/dist/components/Forms/CKEditorInput.d.ts.map +1 -1
  16. package/dist/components/Forms/CKEditorInput.js +5 -2
  17. package/dist/components/Forms/CKEditorInput.js.map +1 -1
  18. package/dist/components/Forms/CheckboxField.d.ts +14 -0
  19. package/dist/components/Forms/CheckboxField.d.ts.map +1 -0
  20. package/dist/components/Forms/CheckboxField.js +26 -0
  21. package/dist/components/Forms/CheckboxField.js.map +1 -0
  22. package/dist/components/Forms/ColorPickerInput.d.ts +27 -8
  23. package/dist/components/Forms/ColorPickerInput.d.ts.map +1 -1
  24. package/dist/components/Forms/ColorPickerInput.js +57 -11
  25. package/dist/components/Forms/ColorPickerInput.js.map +1 -1
  26. package/dist/components/Forms/DateField.d.ts +68 -0
  27. package/dist/components/Forms/DateField.d.ts.map +1 -0
  28. package/dist/components/Forms/DateField.js +108 -0
  29. package/dist/components/Forms/DateField.js.map +1 -0
  30. package/dist/components/Forms/DatePresets.d.ts.map +1 -1
  31. package/dist/components/Forms/DatePresets.js +6 -3
  32. package/dist/components/Forms/DatePresets.js.map +1 -1
  33. package/dist/components/Forms/FieldShell.d.ts +24 -0
  34. package/dist/components/Forms/FieldShell.d.ts.map +1 -0
  35. package/dist/components/Forms/FieldShell.js +39 -0
  36. package/dist/components/Forms/FieldShell.js.map +1 -0
  37. package/dist/components/Forms/FileDropzone.d.ts +4 -2
  38. package/dist/components/Forms/FileDropzone.d.ts.map +1 -1
  39. package/dist/components/Forms/FileDropzone.js.map +1 -1
  40. package/dist/components/Forms/FormActionsBar.js +2 -2
  41. package/dist/components/Forms/FormActionsBar.js.map +1 -1
  42. package/dist/components/Forms/FormWizard.d.ts +1 -1
  43. package/dist/components/Forms/FormWizard.d.ts.map +1 -1
  44. package/dist/components/Forms/FormWizard.js +4 -5
  45. package/dist/components/Forms/FormWizard.js.map +1 -1
  46. package/dist/components/Forms/HiddenField.d.ts +12 -6
  47. package/dist/components/Forms/HiddenField.d.ts.map +1 -1
  48. package/dist/components/Forms/HiddenField.js +14 -5
  49. package/dist/components/Forms/HiddenField.js.map +1 -1
  50. package/dist/components/Forms/MaskField.d.ts +28 -0
  51. package/dist/components/Forms/MaskField.d.ts.map +1 -0
  52. package/dist/components/Forms/MaskField.js +74 -0
  53. package/dist/components/Forms/MaskField.js.map +1 -0
  54. package/dist/components/Forms/NumberField.d.ts +14 -0
  55. package/dist/components/Forms/NumberField.d.ts.map +1 -0
  56. package/dist/components/Forms/NumberField.js +51 -0
  57. package/dist/components/Forms/NumberField.js.map +1 -0
  58. package/dist/components/Forms/OtpInput.d.ts +23 -8
  59. package/dist/components/Forms/OtpInput.d.ts.map +1 -1
  60. package/dist/components/Forms/OtpInput.js +37 -8
  61. package/dist/components/Forms/OtpInput.js.map +1 -1
  62. package/dist/components/Forms/PasswordInput.d.ts +22 -9
  63. package/dist/components/Forms/PasswordInput.d.ts.map +1 -1
  64. package/dist/components/Forms/PasswordInput.js +63 -28
  65. package/dist/components/Forms/PasswordInput.js.map +1 -1
  66. package/dist/components/Forms/PhoneInput.d.ts +16 -8
  67. package/dist/components/Forms/PhoneInput.d.ts.map +1 -1
  68. package/dist/components/Forms/PhoneInput.js +13 -6
  69. package/dist/components/Forms/PhoneInput.js.map +1 -1
  70. package/dist/components/Forms/RadioGroup.d.ts +34 -13
  71. package/dist/components/Forms/RadioGroup.d.ts.map +1 -1
  72. package/dist/components/Forms/RadioGroup.js +49 -6
  73. package/dist/components/Forms/RadioGroup.js.map +1 -1
  74. package/dist/components/Forms/RangeSlider.d.ts +26 -11
  75. package/dist/components/Forms/RangeSlider.d.ts.map +1 -1
  76. package/dist/components/Forms/RangeSlider.js +40 -7
  77. package/dist/components/Forms/RangeSlider.js.map +1 -1
  78. package/dist/components/Forms/RatingInput.d.ts +24 -8
  79. package/dist/components/Forms/RatingInput.d.ts.map +1 -1
  80. package/dist/components/Forms/RatingInput.js +41 -9
  81. package/dist/components/Forms/RatingInput.js.map +1 -1
  82. package/dist/components/Forms/SearchInput.d.ts +18 -10
  83. package/dist/components/Forms/SearchInput.d.ts.map +1 -1
  84. package/dist/components/Forms/SearchInput.js +44 -23
  85. package/dist/components/Forms/SearchInput.js.map +1 -1
  86. package/dist/components/Forms/SelectField.d.ts +41 -0
  87. package/dist/components/Forms/SelectField.d.ts.map +1 -0
  88. package/dist/components/Forms/SelectField.js +110 -0
  89. package/dist/components/Forms/SelectField.js.map +1 -0
  90. package/dist/components/Forms/SwitchField.d.ts +14 -0
  91. package/dist/components/Forms/SwitchField.d.ts.map +1 -0
  92. package/dist/components/Forms/SwitchField.js +26 -0
  93. package/dist/components/Forms/SwitchField.js.map +1 -0
  94. package/dist/components/Forms/TagsInput.d.ts +29 -8
  95. package/dist/components/Forms/TagsInput.d.ts.map +1 -1
  96. package/dist/components/Forms/TagsInput.js +53 -9
  97. package/dist/components/Forms/TagsInput.js.map +1 -1
  98. package/dist/components/Forms/TextArea.d.ts +13 -10
  99. package/dist/components/Forms/TextArea.d.ts.map +1 -1
  100. package/dist/components/Forms/TextArea.js +27 -9
  101. package/dist/components/Forms/TextArea.js.map +1 -1
  102. package/dist/components/Forms/TextField.d.ts +14 -0
  103. package/dist/components/Forms/TextField.d.ts.map +1 -0
  104. package/dist/components/Forms/TextField.js +29 -0
  105. package/dist/components/Forms/TextField.js.map +1 -0
  106. package/dist/components/Forms/ToggleInlineButton.d.ts +33 -12
  107. package/dist/components/Forms/ToggleInlineButton.d.ts.map +1 -1
  108. package/dist/components/Forms/ToggleInlineButton.js +56 -6
  109. package/dist/components/Forms/ToggleInlineButton.js.map +1 -1
  110. package/dist/components/Forms/UploadFilesPreview.js +3 -3
  111. package/dist/components/Forms/UploadFilesPreview.js.map +1 -1
  112. package/dist/components/Forms/field-typing.test-d.d.ts +2 -0
  113. package/dist/components/Forms/field-typing.test-d.d.ts.map +1 -0
  114. package/dist/components/Forms/field-typing.test-d.js +24 -0
  115. package/dist/components/Forms/field-typing.test-d.js.map +1 -0
  116. package/dist/components/Forms/useFieldController.d.ts +85 -0
  117. package/dist/components/Forms/useFieldController.d.ts.map +1 -0
  118. package/dist/components/Forms/useFieldController.js +54 -0
  119. package/dist/components/Forms/useFieldController.js.map +1 -0
  120. package/dist/components/Loaders/Loading.d.ts.map +1 -1
  121. package/dist/components/Loaders/Loading.js +3 -2
  122. package/dist/components/Loaders/Loading.js.map +1 -1
  123. package/dist/components/Tables/ActionColumn.d.ts +20 -4
  124. package/dist/components/Tables/ActionColumn.d.ts.map +1 -1
  125. package/dist/components/Tables/ActionColumn.js +24 -5
  126. package/dist/components/Tables/ActionColumn.js.map +1 -1
  127. package/dist/components/Tables/FilterPannel.d.ts +9 -2
  128. package/dist/components/Tables/FilterPannel.d.ts.map +1 -1
  129. package/dist/components/Tables/FilterPannel.js +15 -11
  130. package/dist/components/Tables/FilterPannel.js.map +1 -1
  131. package/dist/components/Tables/IndexColumn.d.ts +12 -3
  132. package/dist/components/Tables/IndexColumn.d.ts.map +1 -1
  133. package/dist/components/Tables/IndexColumn.js +21 -5
  134. package/dist/components/Tables/IndexColumn.js.map +1 -1
  135. package/dist/components/Tables/MantisDataTable.d.ts +45 -0
  136. package/dist/components/Tables/MantisDataTable.d.ts.map +1 -0
  137. package/dist/components/Tables/MantisDataTable.js +63 -0
  138. package/dist/components/Tables/MantisDataTable.js.map +1 -0
  139. package/dist/components/Tables/MenuButton.d.ts +28 -7
  140. package/dist/components/Tables/MenuButton.d.ts.map +1 -1
  141. package/dist/components/Tables/MenuButton.js +20 -10
  142. package/dist/components/Tables/MenuButton.js.map +1 -1
  143. package/dist/components/Tables/PaginatedTable.d.ts +26 -17
  144. package/dist/components/Tables/PaginatedTable.d.ts.map +1 -1
  145. package/dist/components/Tables/PaginatedTable.js +24 -22
  146. package/dist/components/Tables/PaginatedTable.js.map +1 -1
  147. package/dist/components/Tables/cell-presets.d.ts +35 -0
  148. package/dist/components/Tables/cell-presets.d.ts.map +1 -0
  149. package/dist/components/Tables/cell-presets.js +40 -0
  150. package/dist/components/Tables/cell-presets.js.map +1 -0
  151. package/dist/components/Tables/columns.d.ts +40 -0
  152. package/dist/components/Tables/columns.d.ts.map +1 -0
  153. package/dist/components/Tables/columns.js +2 -0
  154. package/dist/components/Tables/columns.js.map +1 -0
  155. package/dist/components/Tables/filters/MultiSelectFilter.d.ts +24 -6
  156. package/dist/components/Tables/filters/MultiSelectFilter.d.ts.map +1 -1
  157. package/dist/components/Tables/filters/MultiSelectFilter.js +19 -6
  158. package/dist/components/Tables/filters/MultiSelectFilter.js.map +1 -1
  159. package/dist/components/auth/ChangePasswordForm.d.ts.map +1 -1
  160. package/dist/components/auth/ChangePasswordForm.js +12 -12
  161. package/dist/components/auth/ChangePasswordForm.js.map +1 -1
  162. package/dist/components/auth/ForgotPasswordForm.d.ts.map +1 -1
  163. package/dist/components/auth/ForgotPasswordForm.js +7 -5
  164. package/dist/components/auth/ForgotPasswordForm.js.map +1 -1
  165. package/dist/components/auth/LoginForm.d.ts +2 -2
  166. package/dist/components/auth/LoginForm.d.ts.map +1 -1
  167. package/dist/components/auth/LoginForm.js +15 -15
  168. package/dist/components/auth/LoginForm.js.map +1 -1
  169. package/dist/components/auth/ResetPasswordForm.d.ts.map +1 -1
  170. package/dist/components/auth/ResetPasswordForm.js +11 -12
  171. package/dist/components/auth/ResetPasswordForm.js.map +1 -1
  172. package/dist/components/auth/UserMenu.d.ts +11 -1
  173. package/dist/components/auth/UserMenu.d.ts.map +1 -1
  174. package/dist/components/auth/UserMenu.js +30 -87
  175. package/dist/components/auth/UserMenu.js.map +1 -1
  176. package/dist/components/data/Timeline.d.ts +2 -2
  177. package/dist/components/data/Timeline.d.ts.map +1 -1
  178. package/dist/components/data/Timeline.js +17 -17
  179. package/dist/components/data/Timeline.js.map +1 -1
  180. package/dist/components/feedback/Avatar.d.ts +4 -2
  181. package/dist/components/feedback/Avatar.d.ts.map +1 -1
  182. package/dist/components/feedback/Avatar.js +4 -4
  183. package/dist/components/feedback/Avatar.js.map +1 -1
  184. package/dist/components/feedback/CardSkeleton.d.ts.map +1 -1
  185. package/dist/components/feedback/CardSkeleton.js +3 -3
  186. package/dist/components/feedback/CardSkeleton.js.map +1 -1
  187. package/dist/components/feedback/TableSkeleton.d.ts.map +1 -1
  188. package/dist/components/feedback/TableSkeleton.js +3 -3
  189. package/dist/components/feedback/TableSkeleton.js.map +1 -1
  190. package/dist/components/feedback/Tag.d.ts +4 -2
  191. package/dist/components/feedback/Tag.d.ts.map +1 -1
  192. package/dist/components/feedback/Tag.js +4 -4
  193. package/dist/components/feedback/Tag.js.map +1 -1
  194. package/dist/components/navigation/CommandPalette.d.ts.map +1 -1
  195. package/dist/components/navigation/CommandPalette.js +5 -2
  196. package/dist/components/navigation/CommandPalette.js.map +1 -1
  197. package/dist/components/navigation/PageTabs.d.ts +10 -8
  198. package/dist/components/navigation/PageTabs.d.ts.map +1 -1
  199. package/dist/components/navigation/PageTabs.js +17 -13
  200. package/dist/components/navigation/PageTabs.js.map +1 -1
  201. package/dist/components/overlays/Drawer.d.ts +16 -3
  202. package/dist/components/overlays/Drawer.d.ts.map +1 -1
  203. package/dist/components/overlays/Drawer.js +9 -5
  204. package/dist/components/overlays/Drawer.js.map +1 -1
  205. package/dist/components/overlays/Modal.d.ts +18 -3
  206. package/dist/components/overlays/Modal.d.ts.map +1 -1
  207. package/dist/components/overlays/Modal.js +13 -5
  208. package/dist/components/overlays/Modal.js.map +1 -1
  209. package/dist/components/pages/app-shell/AppShell.d.ts.map +1 -1
  210. package/dist/components/pages/app-shell/AppShell.js +6 -6
  211. package/dist/components/pages/app-shell/AppShell.js.map +1 -1
  212. package/dist/components/ui/ConfirmDialog.d.ts +1 -2
  213. package/dist/components/ui/ConfirmDialog.d.ts.map +1 -1
  214. package/dist/components/ui/ConfirmDialog.js +10 -4
  215. package/dist/components/ui/ConfirmDialog.js.map +1 -1
  216. package/dist/components/ui/DataState.js +2 -2
  217. package/dist/components/ui/DataState.js.map +1 -1
  218. package/dist/index.d.ts +71 -42
  219. package/dist/index.d.ts.map +1 -1
  220. package/dist/index.js +114 -22
  221. package/dist/index.js.map +1 -1
  222. package/docs/README.md +1 -1
  223. package/docs/components/action-column.md +33 -7
  224. package/docs/components/admin-page-configurator.md +24 -5
  225. package/docs/components/admin-page-header.md +21 -3
  226. package/docs/components/admin-page-layout-shell.md +18 -4
  227. package/docs/components/admin-page-layout.md +34 -5
  228. package/docs/components/app-shell.md +31 -6
  229. package/docs/components/auto-complete-field.md +60 -0
  230. package/docs/components/avatar.md +18 -8
  231. package/docs/components/bar-chart.md +25 -7
  232. package/docs/components/breadcrumbs.md +15 -2
  233. package/docs/components/button.md +34 -15
  234. package/docs/components/card-skeleton.md +9 -3
  235. package/docs/components/change-password-form.md +23 -4
  236. package/docs/components/checkbox-field.md +38 -0
  237. package/docs/components/ckeditor-input.md +40 -8
  238. package/docs/components/color-picker-input.md +19 -8
  239. package/docs/components/command-palette.md +23 -2
  240. package/docs/components/confirm-dialog.md +36 -9
  241. package/docs/components/data-state.md +31 -6
  242. package/docs/components/date-field.md +39 -0
  243. package/docs/components/date-presets.md +19 -5
  244. package/docs/components/description-list.md +20 -2
  245. package/docs/components/dirty-form-guard.md +16 -4
  246. package/docs/components/donut-chart.md +24 -7
  247. package/docs/components/drawer.md +27 -8
  248. package/docs/components/empty-state.md +12 -2
  249. package/docs/components/error-boundary.md +16 -2
  250. package/docs/components/error-message.md +22 -3
  251. package/docs/components/field-shell.md +47 -0
  252. package/docs/components/file-dropzone.md +22 -6
  253. package/docs/components/filter-pannel.md +34 -7
  254. package/docs/components/forgot-password-form.md +23 -5
  255. package/docs/components/form-actions-bar.md +21 -2
  256. package/docs/components/form-field-render.md +36 -8
  257. package/docs/components/form-section.md +13 -1
  258. package/docs/components/form-wizard.md +34 -5
  259. package/docs/components/hidden-field.md +22 -6
  260. package/docs/components/index-column.md +25 -5
  261. package/docs/components/line-chart.md +25 -7
  262. package/docs/components/loading.md +14 -5
  263. package/docs/components/login-form.md +31 -6
  264. package/docs/components/mantis-data-table.md +61 -0
  265. package/docs/components/map-picker-client.md +29 -8
  266. package/docs/components/map-picker-osm.md +27 -9
  267. package/docs/components/map-picker.md +25 -4
  268. package/docs/components/mask-field.md +31 -0
  269. package/docs/components/menu-button.md +22 -7
  270. package/docs/components/modal.md +34 -9
  271. package/docs/components/multi-select-filter.md +25 -7
  272. package/docs/components/number-field.md +40 -0
  273. package/docs/components/otp-input.md +20 -7
  274. package/docs/components/page-tabs.md +23 -4
  275. package/docs/components/page-title.md +6 -1
  276. package/docs/components/paginated-table.md +36 -13
  277. package/docs/components/pagination.md +20 -7
  278. package/docs/components/password-input.md +20 -8
  279. package/docs/components/phone-input.md +17 -7
  280. package/docs/components/radio-group.md +39 -9
  281. package/docs/components/range-slider.md +18 -6
  282. package/docs/components/rating-input.md +19 -8
  283. package/docs/components/render-field.md +31 -3
  284. package/docs/components/reset-password-form.md +24 -4
  285. package/docs/components/rich-text-preview.md +17 -5
  286. package/docs/components/search-input.md +18 -7
  287. package/docs/components/select-field.md +55 -0
  288. package/docs/components/stat-card.md +14 -3
  289. package/docs/components/status-badge.md +17 -7
  290. package/docs/components/switch-field.md +32 -0
  291. package/docs/components/table-filter-field.md +22 -4
  292. package/docs/components/table-skeleton.md +9 -3
  293. package/docs/components/table-toolbar.md +18 -5
  294. package/docs/components/tag.md +16 -7
  295. package/docs/components/tags-input.md +21 -8
  296. package/docs/components/text-area.md +18 -8
  297. package/docs/components/text-field.md +32 -0
  298. package/docs/components/timeline.md +19 -3
  299. package/docs/components/toggle-inline-button.md +42 -10
  300. package/docs/components/upload-files-preview.md +23 -2
  301. package/docs/components/use-field-controller.md +58 -0
  302. package/docs/components/user-menu.md +26 -6
  303. package/docs/contracts/dependency-map.md +50 -52
  304. package/docs/contracts/field-controller.md +138 -0
  305. package/docs/contracts/style-imports.md +1 -20
  306. package/llms.txt +70 -72
  307. package/package.json +48 -11
  308. package/dist/components/Forms/AsyncSelect.d.ts +0 -20
  309. package/dist/components/Forms/AsyncSelect.d.ts.map +0 -1
  310. package/dist/components/Forms/AsyncSelect.js +0 -77
  311. package/dist/components/Forms/AsyncSelect.js.map +0 -1
  312. package/dist/components/Forms/Combobox.d.ts +0 -10
  313. package/dist/components/Forms/Combobox.d.ts.map +0 -1
  314. package/dist/components/Forms/Combobox.js +0 -11
  315. package/dist/components/Forms/Combobox.js.map +0 -1
  316. package/dist/components/Forms/CurrencyInput.d.ts +0 -12
  317. package/dist/components/Forms/CurrencyInput.d.ts.map +0 -1
  318. package/dist/components/Forms/CurrencyInput.js +0 -9
  319. package/dist/components/Forms/CurrencyInput.js.map +0 -1
  320. package/dist/components/Forms/DateInput.d.ts +0 -10
  321. package/dist/components/Forms/DateInput.d.ts.map +0 -1
  322. package/dist/components/Forms/DateInput.js +0 -11
  323. package/dist/components/Forms/DateInput.js.map +0 -1
  324. package/dist/components/Forms/DateRangeInput.d.ts +0 -10
  325. package/dist/components/Forms/DateRangeInput.d.ts.map +0 -1
  326. package/dist/components/Forms/DateRangeInput.js +0 -13
  327. package/dist/components/Forms/DateRangeInput.js.map +0 -1
  328. package/dist/components/Forms/DropDown.d.ts +0 -10
  329. package/dist/components/Forms/DropDown.d.ts.map +0 -1
  330. package/dist/components/Forms/DropDown.js +0 -11
  331. package/dist/components/Forms/DropDown.js.map +0 -1
  332. package/dist/components/Forms/MultiSelect.d.ts +0 -10
  333. package/dist/components/Forms/MultiSelect.d.ts.map +0 -1
  334. package/dist/components/Forms/MultiSelect.js +0 -13
  335. package/dist/components/Forms/MultiSelect.js.map +0 -1
  336. package/dist/components/Forms/NumberInput.d.ts +0 -10
  337. package/dist/components/Forms/NumberInput.d.ts.map +0 -1
  338. package/dist/components/Forms/NumberInput.js +0 -16
  339. package/dist/components/Forms/NumberInput.js.map +0 -1
  340. package/dist/components/Forms/Select.d.ts +0 -15
  341. package/dist/components/Forms/Select.d.ts.map +0 -1
  342. package/dist/components/Forms/Select.js +0 -48
  343. package/dist/components/Forms/Select.js.map +0 -1
  344. package/dist/components/Forms/Switch.d.ts +0 -18
  345. package/dist/components/Forms/Switch.d.ts.map +0 -1
  346. package/dist/components/Forms/Switch.js +0 -30
  347. package/dist/components/Forms/Switch.js.map +0 -1
  348. package/dist/components/Forms/TextInput.d.ts +0 -11
  349. package/dist/components/Forms/TextInput.d.ts.map +0 -1
  350. package/dist/components/Forms/TextInput.js +0 -12
  351. package/dist/components/Forms/TextInput.js.map +0 -1
  352. package/dist/components/Forms/TimePicker.d.ts +0 -13
  353. package/dist/components/Forms/TimePicker.d.ts.map +0 -1
  354. package/dist/components/Forms/TimePicker.js +0 -19
  355. package/dist/components/Forms/TimePicker.js.map +0 -1
  356. package/dist/components/Forms/Toggle.d.ts +0 -14
  357. package/dist/components/Forms/Toggle.d.ts.map +0 -1
  358. package/dist/components/Forms/Toggle.js +0 -10
  359. package/dist/components/Forms/Toggle.js.map +0 -1
  360. package/dist/components/Forms/types.d.ts +0 -9
  361. package/dist/components/Forms/types.d.ts.map +0 -1
  362. package/dist/components/Forms/types.js +0 -2
  363. package/dist/components/Forms/types.js.map +0 -1
  364. package/docs/components/async-select.md +0 -27
  365. package/docs/components/combobox.md +0 -19
  366. package/docs/components/currency-input.md +0 -21
  367. package/docs/components/date-input.md +0 -21
  368. package/docs/components/date-range-input.md +0 -20
  369. package/docs/components/drop-down.md +0 -26
  370. package/docs/components/multi-select.md +0 -22
  371. package/docs/components/number-input.md +0 -21
  372. package/docs/components/select.md +0 -28
  373. package/docs/components/switch.md +0 -24
  374. package/docs/components/text-input.md +0 -24
  375. package/docs/components/time-picker.md +0 -25
  376. package/docs/components/toggle.md +0 -24
  377. package/docs/contracts/component-doc-schema.md +0 -78
  378. package/docs/contracts/controller-props.md +0 -28
@@ -1,8 +1,17 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
- import { Controller } from 'react-hook-form';
3
- const HiddenField = (props) => {
4
- const { hidden = true, ...rest } = props;
5
- return (_jsx(Controller, { name: rest.name, defaultValue: rest.defaultValue, shouldUnregister: rest.shouldUnregister, rules: rest.rules, render: ({ field }) => (_jsx("small", { style: { display: 'none' }, children: JSON.stringify(field.value) })) }));
6
- };
2
+ import { useFieldController } from "./useFieldController";
3
+ /**
4
+ * RHF-bound `<input type="hidden">` registers a field and mirrors its value
5
+ * into a hidden native input (so it participates in native form serialization)
6
+ * without rendering any visible control.
7
+ *
8
+ * @example
9
+ * <HiddenField name="id" control={control} />
10
+ */
11
+ export function HiddenField(props) {
12
+ const f = useFieldController(props);
13
+ const { ref: fieldRef } = f.field;
14
+ return (_jsx("input", { type: 'hidden', id: f.id, name: f.field.name, ref: fieldRef, value: f.field.value ?? "", onChange: (e) => f.field.onChange(e.target.value), onBlur: f.field.onBlur }));
15
+ }
7
16
  export default HiddenField;
8
17
  //# sourceMappingURL=HiddenField.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"HiddenField.js","sourceRoot":"","sources":["../../../src/components/Forms/HiddenField.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAM7C,MAAM,WAAW,GAA+B,CAAC,KAAK,EAAE,EAAE;IACxD,MAAM,EAAE,MAAM,GAAG,IAAI,EAAE,GAAG,IAAI,EAAE,GAAG,KAAK,CAAC;IACzC,OAAO,CACL,KAAC,UAAU,IACT,IAAI,EAAE,IAAI,CAAC,IAAI,EACf,YAAY,EAAE,IAAI,CAAC,YAAY,EAC/B,gBAAgB,EAAE,IAAI,CAAC,gBAAgB,EACvC,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CACrB,gBAAO,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,YAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC,GAAS,CACzE,GACD,CACH,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,WAAW,CAAC"}
1
+ {"version":3,"file":"HiddenField.js","sourceRoot":"","sources":["../../../src/components/Forms/HiddenField.tsx"],"names":[],"mappings":";AACA,OAAO,EAA6B,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAarF;;;;;;;GAOG;AACH,MAAM,UAAU,WAAW,CAGzB,KAA4C;IAC5C,MAAM,CAAC,GAAG,kBAAkB,CAAsB,KAAK,CAAC,CAAC;IAEzD,MAAM,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC;IAElC,OAAO,CACL,gBACE,IAAI,EAAC,QAAQ,EACb,EAAE,EAAE,CAAC,CAAC,EAAE,EACR,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,IAAI,EAClB,GAAG,EAAE,QAAQ,EACb,KAAK,EAAG,CAAC,CAAC,KAAK,CAAC,KAAqC,IAAI,EAAE,EAC3D,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EACjD,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,MAAM,GACtB,CACH,CAAC;AACJ,CAAC;AAED,eAAe,WAAW,CAAC"}
@@ -0,0 +1,28 @@
1
+ import type { InputTextProps } from "@primereact/types/primitive/inputtext";
2
+ import type * as React from "react";
3
+ import type { FieldPath, FieldValues } from "react-hook-form";
4
+ import { type FieldControllerProps } from "./useFieldController";
5
+ /**
6
+ * Apply `mask` to `raw`, keeping only characters that satisfy each token slot
7
+ * and interleaving the mask's literals. Deterministic and side-effect free:
8
+ * `applyMask("5551234567", "(999) 999-9999") === "(555) 123-4567"`.
9
+ * Extra input past the mask length is dropped.
10
+ */
11
+ export declare function applyMask(raw: string, mask: string): string;
12
+ type InputTextExtras = Omit<InputTextProps & React.InputHTMLAttributes<HTMLInputElement>, "id" | "name" | "value" | "onChange" | "onBlur" | "defaultValue" | "invalid" | "disabled">;
13
+ export interface MaskFieldOwnProps {
14
+ /** Mask pattern. `9`=digit, `a`=letter, `*`=alphanumeric; other chars are literals. */
15
+ mask: string;
16
+ }
17
+ /**
18
+ * RHF-bound masked text input over PR11 `InputText`. The wrapper owns the mask
19
+ * (PR11 has no inputmask primitive). Value = the **masked** string as displayed
20
+ * (e.g. `"(555) 123-4567"`) — the format the user sees is exactly what the form
21
+ * stores. Use `PhoneInput` for the common phone preset.
22
+ *
23
+ * @example
24
+ * <MaskField name="phone" control={control} mask="(999) 999-9999" label="Teléfono" />
25
+ */
26
+ export declare function MaskField<TFieldValues extends FieldValues = FieldValues, TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>>(props: FieldControllerProps<TFieldValues, TName> & MaskFieldOwnProps & InputTextExtras): import("react/jsx-runtime").JSX.Element;
27
+ export default MaskField;
28
+ //# sourceMappingURL=MaskField.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MaskField.d.ts","sourceRoot":"","sources":["../../../src/components/Forms/MaskField.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uCAAuC,CAAC;AAG5E,OAAO,KAAK,KAAK,KAAK,MAAM,OAAO,CAAC;AACpC,OAAO,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAE9D,OAAO,EAAE,KAAK,oBAAoB,EAAsB,MAAM,sBAAsB,CAAC;AAerF;;;;;GAKG;AACH,wBAAgB,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAmB3D;AAED,KAAK,eAAe,GAAG,IAAI,CACzB,cAAc,GAAG,KAAK,CAAC,mBAAmB,CAAC,gBAAgB,CAAC,EAC5D,IAAI,GAAG,MAAM,GAAG,OAAO,GAAG,UAAU,GAAG,QAAQ,GAAG,cAAc,GAAG,SAAS,GAAG,UAAU,CAC1F,CAAC;AAEF,MAAM,WAAW,iBAAiB;IAChC,uFAAuF;IACvF,IAAI,EAAE,MAAM,CAAC;CACd;AAED;;;;;;;;GAQG;AACH,wBAAgB,SAAS,CACvB,YAAY,SAAS,WAAW,GAAG,WAAW,EAC9C,KAAK,SAAS,SAAS,CAAC,YAAY,CAAC,GAAG,SAAS,CAAC,YAAY,CAAC,EAC/D,KAAK,EAAE,oBAAoB,CAAC,YAAY,EAAE,KAAK,CAAC,GAAG,iBAAiB,GAAG,eAAe,2CAwEvF;AAED,eAAe,SAAS,CAAC"}
@@ -0,0 +1,74 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { InputText } from "@primereact/ui/inputtext";
3
+ import clsx from "clsx";
4
+ import { FieldShell } from "./FieldShell";
5
+ import { useFieldController } from "./useFieldController";
6
+ // PR11 dropped the `inputmask` primitive, so mantis-core owns the mask. This is
7
+ // a lightweight formatter over InputText — NO react-imask dependency.
8
+ //
9
+ // Mask tokens (a subset of the classic PrimeReact InputMask alphabet):
10
+ // 9 → digit (0-9) a → letter (A-Z, a-z) * → alphanumeric
11
+ // Any other character in the mask is a literal (e.g. the `(`, `)`, `-`, spaces
12
+ // in a phone pattern) and is emitted automatically as the user types.
13
+ const TOKENS = {
14
+ "9": /\d/,
15
+ a: /[A-Za-z]/,
16
+ "*": /[A-Za-z0-9]/,
17
+ };
18
+ /**
19
+ * Apply `mask` to `raw`, keeping only characters that satisfy each token slot
20
+ * and interleaving the mask's literals. Deterministic and side-effect free:
21
+ * `applyMask("5551234567", "(999) 999-9999") === "(555) 123-4567"`.
22
+ * Extra input past the mask length is dropped.
23
+ */
24
+ export function applyMask(raw, mask) {
25
+ let out = "";
26
+ let ri = 0;
27
+ for (let mi = 0; mi < mask.length && ri < raw.length; mi++) {
28
+ const token = TOKENS[mask[mi]];
29
+ if (!token) {
30
+ // Literal: emit it, and let a matching typed char pass through it too.
31
+ out += mask[mi];
32
+ if (raw[ri] === mask[mi])
33
+ ri++;
34
+ continue;
35
+ }
36
+ // Advance over input chars until one satisfies this slot (drops garbage).
37
+ while (ri < raw.length && !token.test(raw[ri]))
38
+ ri++;
39
+ if (ri < raw.length) {
40
+ out += raw[ri];
41
+ ri++;
42
+ }
43
+ }
44
+ return out;
45
+ }
46
+ /**
47
+ * RHF-bound masked text input over PR11 `InputText`. The wrapper owns the mask
48
+ * (PR11 has no inputmask primitive). Value = the **masked** string as displayed
49
+ * (e.g. `"(555) 123-4567"`) — the format the user sees is exactly what the form
50
+ * stores. Use `PhoneInput` for the common phone preset.
51
+ *
52
+ * @example
53
+ * <MaskField name="phone" control={control} mask="(999) 999-9999" label="Teléfono" />
54
+ */
55
+ export function MaskField(props) {
56
+ const { name, control, rules, defaultValue, shouldUnregister, disabled, label, labelMode, floatVariant, addonBefore, addonAfter, required, helpText, id, variant, size, mask, className, fluid, ...rest } = props;
57
+ const f = useFieldController({
58
+ name,
59
+ control,
60
+ rules,
61
+ defaultValue,
62
+ shouldUnregister,
63
+ disabled,
64
+ helpText,
65
+ id,
66
+ variant,
67
+ size,
68
+ fluid,
69
+ });
70
+ const { ref: fieldRef } = f.field;
71
+ return (_jsx(FieldShell, { id: f.id, label: label, labelMode: labelMode, floatVariant: floatVariant, addonBefore: addonBefore, addonAfter: addonAfter, required: required, helpText: helpText, errorMessage: f.errorMessage, children: _jsx(InputText, { id: f.id, name: f.field.name, ref: fieldRef, value: f.field.value ?? "", onChange: (e) => f.field.onChange(applyMask(e.target.value, mask)), onBlur: f.field.onBlur, invalid: f.invalid, disabled: f.disabled, variant: f.variant, size: f.size, fluid: f.fluid, inputMode: /^[9\s()+\-.]*$/.test(mask) ? "tel" : undefined, className: clsx(f.fluid && "w-full", className), ...rest, ...f.aria }) }));
72
+ }
73
+ export default MaskField;
74
+ //# sourceMappingURL=MaskField.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MaskField.js","sourceRoot":"","sources":["../../../src/components/Forms/MaskField.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,14 @@
1
+ import type { InputNumberRootProps } from "@primereact/types/primitive/inputnumber";
2
+ import type { FieldPath, FieldValues } from "react-hook-form";
3
+ import { type FieldControllerProps } from "./useFieldController";
4
+ type InputNumberExtras = Omit<InputNumberRootProps, "value" | "onValueChange" | "invalid" | "disabled" | "children">;
5
+ /**
6
+ * RHF-bound numeric input over PR11 `InputNumber` (compound Root/Input, emits
7
+ * `onValueChange` with a `{ value }` event — not native onChange).
8
+ *
9
+ * @example
10
+ * <NumberField name="price" control={control} label="Precio" mode="currency" currency="USD" />
11
+ */
12
+ export declare function NumberField<TFieldValues extends FieldValues = FieldValues, TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>>(props: FieldControllerProps<TFieldValues, TName> & InputNumberExtras): import("react/jsx-runtime").JSX.Element;
13
+ export {};
14
+ //# sourceMappingURL=NumberField.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NumberField.d.ts","sourceRoot":"","sources":["../../../src/components/Forms/NumberField.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,yCAAyC,CAAC;AAGpF,OAAO,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAE9D,OAAO,EAAE,KAAK,oBAAoB,EAAsB,MAAM,sBAAsB,CAAC;AAMrF,KAAK,iBAAiB,GAAG,IAAI,CAC3B,oBAAoB,EACpB,OAAO,GAAG,eAAe,GAAG,SAAS,GAAG,UAAU,GAAG,UAAU,CAChE,CAAC;AAEF;;;;;;GAMG;AACH,wBAAgB,WAAW,CACzB,YAAY,SAAS,WAAW,GAAG,WAAW,EAC9C,KAAK,SAAS,SAAS,CAAC,YAAY,CAAC,GAAG,SAAS,CAAC,YAAY,CAAC,EAC/D,KAAK,EAAE,oBAAoB,CAAC,YAAY,EAAE,KAAK,CAAC,GAAG,iBAAiB,2CAiFrE"}
@@ -0,0 +1,51 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { InputNumber } from "@primereact/ui/inputnumber";
3
+ import { Fragment } from "react";
4
+ import { FieldShell } from "./FieldShell";
5
+ import { useFieldController } from "./useFieldController";
6
+ /**
7
+ * RHF-bound numeric input over PR11 `InputNumber` (compound Root/Input, emits
8
+ * `onValueChange` with a `{ value }` event — not native onChange).
9
+ *
10
+ * @example
11
+ * <NumberField name="price" control={control} label="Precio" mode="currency" currency="USD" />
12
+ */
13
+ export function NumberField(props) {
14
+ const { name, control, rules, defaultValue, shouldUnregister, disabled, label, labelMode, floatVariant, addonBefore, addonAfter, required, helpText, id, variant, size, fluid, ...rest } = props;
15
+ const f = useFieldController({
16
+ name,
17
+ control,
18
+ rules,
19
+ defaultValue,
20
+ shouldUnregister,
21
+ disabled,
22
+ helpText,
23
+ id,
24
+ variant,
25
+ size,
26
+ fluid,
27
+ });
28
+ const { ref: fieldRef } = f.field;
29
+ return (_jsx(FieldShell, { id: f.id, label: label, labelMode: labelMode, floatVariant: floatVariant, addonBefore: addonBefore, addonAfter: addonAfter, required: required, helpText: helpText, errorMessage: f.errorMessage, children: _jsx(InputNumber.Root
30
+ // Inside an InputGroup the Root must render as a Fragment so it does NOT
31
+ // emit its own `<span class="p-inputnumber">` wrapper — that extra wrapper
32
+ // breaks the group's border-join and makes the addons render detached
33
+ // (inputgroup.md "Multiple": `<InputNumber.Root as={React.Fragment}>`).
34
+ // Standalone (no addons) keeps the normal Root + `fluid` for full width
35
+ // (inputnumber.md puts `fluid` on Root in every example).
36
+ , {
37
+ // Inside an InputGroup the Root must render as a Fragment so it does NOT
38
+ // emit its own `<span class="p-inputnumber">` wrapper — that extra wrapper
39
+ // breaks the group's border-join and makes the addons render detached
40
+ // (inputgroup.md "Multiple": `<InputNumber.Root as={React.Fragment}>`).
41
+ // Standalone (no addons) keeps the normal Root + `fluid` for full width
42
+ // (inputnumber.md puts `fluid` on Root in every example).
43
+ as: addonBefore || addonAfter ? Fragment : undefined, fluid: addonBefore || addonAfter ? undefined : f.fluid, value: f.field.value ?? null, onValueChange: (e) => {
44
+ // PR11 types e.value as `number`, but an emptied input emits null at
45
+ // runtime. Normalize empty/NaN → null so a `number | null` field can
46
+ // actually be cleared (the event type otherwise makes null unreachable).
47
+ const raw = e.value;
48
+ f.field.onChange(raw == null || Number.isNaN(raw) ? null : raw);
49
+ }, invalid: f.invalid, disabled: f.disabled, variant: f.variant, size: f.size, ...rest, children: _jsx(InputNumber.Input, { id: f.id, name: f.field.name, ref: fieldRef, onBlur: f.field.onBlur, ...f.aria }) }) }));
50
+ }
51
+ //# sourceMappingURL=NumberField.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NumberField.js","sourceRoot":"","sources":["../../../src/components/Forms/NumberField.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,WAAW,EAAwC,MAAM,4BAA4B,CAAC;AAC/F,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAEjC,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAA6B,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAWrF;;;;;;GAMG;AACH,MAAM,UAAU,WAAW,CAGzB,KAAoE;IACpE,MAAM,EACJ,IAAI,EACJ,OAAO,EACP,KAAK,EACL,YAAY,EACZ,gBAAgB,EAChB,QAAQ,EACR,KAAK,EACL,SAAS,EACT,YAAY,EACZ,WAAW,EACX,UAAU,EACV,QAAQ,EACR,QAAQ,EACR,EAAE,EACF,OAAO,EACP,IAAI,EACJ,KAAK,EACL,GAAG,IAAI,EACR,GAAG,KAAK,CAAC;IAEV,MAAM,CAAC,GAAG,kBAAkB,CAAsB;QAChD,IAAI;QACJ,OAAO;QACP,KAAK;QACL,YAAY;QACZ,gBAAgB;QAChB,QAAQ;QACR,QAAQ;QACR,EAAE;QACF,OAAO;QACP,IAAI;QACJ,KAAK;KACN,CAAC,CAAC;IAEH,MAAM,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC;IAElC,OAAO,CACL,KAAC,UAAU,IACT,EAAE,EAAE,CAAC,CAAC,EAAE,EACR,KAAK,EAAE,KAAK,EACZ,SAAS,EAAE,SAAS,EACpB,YAAY,EAAE,YAAY,EAC1B,WAAW,EAAE,WAAW,EACxB,UAAU,EAAE,UAAU,EACtB,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,QAAQ,EAClB,YAAY,EAAE,CAAC,CAAC,YAAY,YAC5B,KAAC,WAAW,CAAC,IAAI;QACf,yEAAyE;QACzE,2EAA2E;QAC3E,sEAAsE;QACtE,wEAAwE;QACxE,wEAAwE;QACxE,0DAA0D;;YAL1D,yEAAyE;YACzE,2EAA2E;YAC3E,sEAAsE;YACtE,wEAAwE;YACxE,wEAAwE;YACxE,0DAA0D;YAC1D,EAAE,EAAE,WAAW,IAAI,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,EACpD,KAAK,EAAE,WAAW,IAAI,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,EACtD,KAAK,EAAG,CAAC,CAAC,KAAK,CAAC,KAAmC,IAAI,IAAI,EAC3D,aAAa,EAAE,CAAC,CAAkC,EAAE,EAAE;gBACpD,qEAAqE;gBACrE,qEAAqE;gBACrE,yEAAyE;gBACzE,MAAM,GAAG,GAAG,CAAC,CAAC,KAAkC,CAAC;gBACjD,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,IAAI,IAAI,IAAI,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;YAClE,CAAC,EACD,OAAO,EAAE,CAAC,CAAC,OAAO,EAClB,QAAQ,EAAE,CAAC,CAAC,QAAQ,EACpB,OAAO,EAAE,CAAC,CAAC,OAAO,EAClB,IAAI,EAAE,CAAC,CAAC,IAAI,KACR,IAAI,YACR,KAAC,WAAW,CAAC,KAAK,IAChB,EAAE,EAAE,CAAC,CAAC,EAAE,EACR,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,IAAI,EAClB,GAAG,EAAE,QAAQ,EACb,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,MAAM,KAClB,CAAC,CAAC,IAAI,GACV,GACe,GACR,CACd,CAAC;AACJ,CAAC"}
@@ -1,11 +1,26 @@
1
- import { InputOtpProps } from "primereact/inputotp";
2
- import React from "react";
3
- import { ControllerProps } from "./types";
4
- export interface OtpInputProps extends Omit<InputOtpProps, "name" | "defaultValue" | "value" | "onChange"> {
5
- controller: ControllerProps;
1
+ import type { InputOtpRootProps } from "@primereact/types/primitive/inputotp";
2
+ import type { FieldPath, FieldValues } from "react-hook-form";
3
+ import { type ChoiceFieldControllerProps } from "./useFieldController";
4
+ type InputOtpExtras = Omit<InputOtpRootProps, "value" | "defaultValue" | "onValueChange" | "invalid" | "disabled" | "children">;
5
+ /**
6
+ * RHF-bound one-time-password input over PR11's compound `InputOtp`
7
+ * (Root → Text slots). Renders `length` segmented boxes; typing advances focus,
8
+ * backspace retreats, paste distributes across slots.
9
+ *
10
+ * Value shape: `string` (the concatenated code) or `""` when unset. `onValueChange`
11
+ * writes the string into RHF. Pass `integerOnly` for numeric-only codes, `mask`
12
+ * to obscure each slot.
13
+ *
14
+ * NOTE (PR11 11.0.0-rc.1): `InputOtp.Root` is a single control — `value`/
15
+ * `onValueChange` reach the `Text` slot children directly (verified in-browser),
16
+ * so no per-part binding fallback is needed.
17
+ *
18
+ * @example
19
+ * <OtpInput name="code" control={control} label="Código" />
20
+ * <OtpInput name="code" control={control} label="PIN" length={4} integerOnly />
21
+ */
22
+ export declare function OtpInput<TFieldValues extends FieldValues = FieldValues, TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>>(props: ChoiceFieldControllerProps<TFieldValues, TName> & InputOtpExtras & {
6
23
  length?: number;
7
- block?: boolean;
8
- }
9
- declare const OtpInput: React.FC<OtpInputProps>;
24
+ }): import("react/jsx-runtime").JSX.Element;
10
25
  export default OtpInput;
11
26
  //# sourceMappingURL=OtpInput.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"OtpInput.d.ts","sourceRoot":"","sources":["../../../src/components/Forms/OtpInput.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAY,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAC9D,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAE1C,MAAM,WAAW,aACf,SAAQ,IAAI,CAAC,aAAa,EAAE,MAAM,GAAG,cAAc,GAAG,OAAO,GAAG,UAAU,CAAC;IAC3E,UAAU,EAAE,eAAe,CAAC;IAC5B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED,QAAA,MAAM,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC,aAAa,CAmBrC,CAAC;AAEF,eAAe,QAAQ,CAAC"}
1
+ {"version":3,"file":"OtpInput.d.ts","sourceRoot":"","sources":["../../../src/components/Forms/OtpInput.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAgC,MAAM,sCAAsC,CAAC;AAE5G,OAAO,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAE9D,OAAO,EAAE,KAAK,0BAA0B,EAAsB,MAAM,sBAAsB,CAAC;AAK3F,KAAK,cAAc,GAAG,IAAI,CACxB,iBAAiB,EACjB,OAAO,GAAG,cAAc,GAAG,eAAe,GAAG,SAAS,GAAG,UAAU,GAAG,UAAU,CACjF,CAAC;AAEF;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,QAAQ,CACtB,YAAY,SAAS,WAAW,GAAG,WAAW,EAC9C,KAAK,SAAS,SAAS,CAAC,YAAY,CAAC,GAAG,SAAS,CAAC,YAAY,CAAC,EAC/D,KAAK,EAAE,0BAA0B,CAAC,YAAY,EAAE,KAAK,CAAC,GAAG,cAAc,GAAG;IAAE,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,2CAmD9F;AAED,eAAe,QAAQ,CAAC"}
@@ -1,11 +1,40 @@
1
- "use client";
2
1
  import { jsx as _jsx } from "react/jsx-runtime";
3
- import classNames from "classnames";
4
- import { InputOtp } from "primereact/inputotp";
5
- import { Controller } from "react-hook-form";
6
- const OtpInput = (props) => {
7
- const { controller, length = 6, block, ...rest } = props;
8
- return (_jsx(Controller, { ...controller, render: ({ field, fieldState, formState }) => (_jsx(InputOtp, { id: field.name, ...rest, length: length, value: field.value ?? "", onChange: (e) => field.onChange(e.value), disabled: formState.isSubmitting || rest.disabled, invalid: fieldState.invalid, className: classNames(rest.className, { "w-full": block }) })) }));
9
- };
2
+ import { InputOtp } from "@primereact/ui/inputotp";
3
+ import { FieldShell } from "./FieldShell";
4
+ import { useFieldController } from "./useFieldController";
5
+ /**
6
+ * RHF-bound one-time-password input over PR11's compound `InputOtp`
7
+ * (Root Text slots). Renders `length` segmented boxes; typing advances focus,
8
+ * backspace retreats, paste distributes across slots.
9
+ *
10
+ * Value shape: `string` (the concatenated code) or `""` when unset. `onValueChange`
11
+ * writes the string into RHF. Pass `integerOnly` for numeric-only codes, `mask`
12
+ * to obscure each slot.
13
+ *
14
+ * NOTE (PR11 11.0.0-rc.1): `InputOtp.Root` is a single control — `value`/
15
+ * `onValueChange` reach the `Text` slot children directly (verified in-browser),
16
+ * so no per-part binding fallback is needed.
17
+ *
18
+ * @example
19
+ * <OtpInput name="code" control={control} label="Código" />
20
+ * <OtpInput name="code" control={control} label="PIN" length={4} integerOnly />
21
+ */
22
+ export function OtpInput(props) {
23
+ const { name, control, rules, defaultValue, shouldUnregister, disabled, label, labelMode, required, helpText, id, length = 6, ...rest } = props;
24
+ const f = useFieldController({
25
+ name,
26
+ control,
27
+ rules,
28
+ defaultValue,
29
+ shouldUnregister,
30
+ disabled,
31
+ helpText,
32
+ id,
33
+ });
34
+ return (_jsx(FieldShell, { id: f.id, label: label, labelMode: labelMode ?? "top", required: required, helpText: helpText, errorMessage: f.errorMessage, children: _jsx(InputOtp.Root, { value: f.field.value ?? "", onValueChange: (e) => f.field.onChange(e.value),
35
+ // InputOtp.Text slots render native <input>, so pass invalid only when
36
+ // truthy — invalid={false} warns on a native input.
37
+ invalid: f.invalid || undefined, disabled: f.disabled, ...rest, ...f.aria, children: Array.from({ length }, (_, i) => (_jsx(InputOtp.Text, { index: i }, i))) }) }));
38
+ }
10
39
  export default OtpInput;
11
40
  //# sourceMappingURL=OtpInput.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"OtpInput.js","sourceRoot":"","sources":["../../../src/components/Forms/OtpInput.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AACb,OAAO,UAAU,MAAM,YAAY,CAAC;AACpC,OAAO,EAAE,QAAQ,EAAiB,MAAM,qBAAqB,CAAC;AAE9D,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAU7C,MAAM,QAAQ,GAA4B,CAAC,KAAK,EAAE,EAAE;IAClD,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,CAAC,EAAE,KAAK,EAAE,GAAG,IAAI,EAAE,GAAG,KAAK,CAAC;IACzD,OAAO,CACL,KAAC,UAAU,OACL,UAAU,EACd,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC,CAC5C,KAAC,QAAQ,IACP,EAAE,EAAE,KAAK,CAAC,IAAI,KACV,IAAI,EACR,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,KAAK,CAAC,KAAK,IAAI,EAAE,EACxB,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,EACxC,QAAQ,EAAE,SAAS,CAAC,YAAY,IAAI,IAAI,CAAC,QAAQ,EACjD,OAAO,EAAE,UAAU,CAAC,OAAO,EAC3B,SAAS,EAAE,UAAU,CAAC,IAAI,CAAC,SAAS,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,GAC1D,CACH,GACD,CACH,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,QAAQ,CAAC"}
1
+ {"version":3,"file":"OtpInput.js","sourceRoot":"","sources":["../../../src/components/Forms/OtpInput.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAEnD,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAmC,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAU3F;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,UAAU,QAAQ,CAGtB,KAA6F;IAC7F,MAAM,EACJ,IAAI,EACJ,OAAO,EACP,KAAK,EACL,YAAY,EACZ,gBAAgB,EAChB,QAAQ,EACR,KAAK,EACL,SAAS,EACT,QAAQ,EACR,QAAQ,EACR,EAAE,EACF,MAAM,GAAG,CAAC,EACV,GAAG,IAAI,EACR,GAAG,KAAK,CAAC;IAEV,MAAM,CAAC,GAAG,kBAAkB,CAAsB;QAChD,IAAI;QACJ,OAAO;QACP,KAAK;QACL,YAAY;QACZ,gBAAgB;QAChB,QAAQ;QACR,QAAQ;QACR,EAAE;KACH,CAAC,CAAC;IAEH,OAAO,CACL,KAAC,UAAU,IACT,EAAE,EAAE,CAAC,CAAC,EAAE,EACR,KAAK,EAAE,KAAK,EACZ,SAAS,EAAE,SAAS,IAAI,KAAK,EAC7B,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,QAAQ,EAClB,YAAY,EAAE,CAAC,CAAC,YAAY,YAC5B,KAAC,QAAQ,CAAC,IAAI,IACZ,KAAK,EAAG,CAAC,CAAC,KAAK,CAAC,KAAmC,IAAI,EAAE,EACzD,aAAa,EAAE,CAAC,CAA+B,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC;YAC7E,uEAAuE;YACvE,oDAAoD;YACpD,OAAO,EAAE,CAAC,CAAC,OAAO,IAAI,SAAS,EAC/B,QAAQ,EAAE,CAAC,CAAC,QAAQ,KAChB,IAAI,KACJ,CAAC,CAAC,IAAI,YACT,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAChC,KAAC,QAAQ,CAAC,IAAI,IAAS,KAAK,EAAE,CAAC,IAAX,CAAC,CAAc,CACpC,CAAC,GACY,GACL,CACd,CAAC;AACJ,CAAC;AAED,eAAe,QAAQ,CAAC"}
@@ -1,12 +1,25 @@
1
- import { InputTextProps } from 'primereact/inputtext';
2
- import React from 'react';
3
- import { ControllerProps } from './types';
4
- export interface PasswordInputProps extends Omit<InputTextProps, 'name' | 'defaultValue'> {
5
- controller: ControllerProps;
6
- block?: boolean;
7
- defaultValue?: string;
1
+ import type { InputPasswordProps } from "@primereact/types/primitive/inputpassword";
2
+ import type * as React from "react";
3
+ import type { FieldPath, FieldValues } from "react-hook-form";
4
+ import { type FieldControllerProps } from "./useFieldController";
5
+ type InputPasswordExtras = Omit<InputPasswordProps & React.InputHTMLAttributes<HTMLInputElement>, "id" | "name" | "value" | "defaultValue" | "onChange" | "onValueChange" | "onBlur" | "mask" | "onMaskChange" | "invalid" | "disabled">;
6
+ /**
7
+ * RHF-bound password input over PR11 `InputPassword` (value = `string`).
8
+ *
9
+ * Show/hide uses the component's NATIVE mask state — mirrors the official
10
+ * ToggleMaskDemo (`IconField.Root` + `IconField.Inset` with an Eye/EyeSlash
11
+ * that flips `mask`). The old custom lucide toggle + relative-positioned button
12
+ * is gone. `feedback` (default true) renders a lightweight deterministic
13
+ * strength meter from the value; PR11 has no built-in meter so this is ours.
14
+ *
15
+ * @example
16
+ * <PasswordInput name="password" control={control} label="Contraseña" rules={{ required: "…" }} />
17
+ */
18
+ export declare function PasswordInput<TFieldValues extends FieldValues = FieldValues, TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>>(props: FieldControllerProps<TFieldValues, TName> & InputPasswordExtras & {
19
+ /** Show the show/hide (mask) toggle. Default true. */
8
20
  showToggle?: boolean;
9
- }
10
- declare const PasswordInput: React.FC<PasswordInputProps>;
21
+ /** Show the strength meter below the input. Default true. */
22
+ feedback?: boolean;
23
+ }): import("react/jsx-runtime").JSX.Element;
11
24
  export default PasswordInput;
12
25
  //# sourceMappingURL=PasswordInput.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"PasswordInput.d.ts","sourceRoot":"","sources":["../../../src/components/Forms/PasswordInput.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAa,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACjE,OAAO,KAAmB,MAAM,OAAO,CAAC;AAExC,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAE1C,MAAM,WAAW,kBAAmB,SAAQ,IAAI,CAAC,cAAc,EAAE,MAAM,GAAG,cAAc,CAAC;IACvF,UAAU,EAAE,eAAe,CAAC;IAC5B,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED,QAAA,MAAM,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC,kBAAkB,CAyD/C,CAAC;AAEF,eAAe,aAAa,CAAC"}
1
+ {"version":3,"file":"PasswordInput.d.ts","sourceRoot":"","sources":["../../../src/components/Forms/PasswordInput.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2CAA2C,CAAC;AAMpF,OAAO,KAAK,KAAK,KAAK,MAAM,OAAO,CAAC;AACpC,OAAO,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAE9D,OAAO,EAAE,KAAK,oBAAoB,EAAsB,MAAM,sBAAsB,CAAC;AAOrF,KAAK,mBAAmB,GAAG,IAAI,CAC7B,kBAAkB,GAAG,KAAK,CAAC,mBAAmB,CAAC,gBAAgB,CAAC,EAChE,IAAI,GAAG,MAAM,GAAG,OAAO,GAAG,cAAc,GAAG,UAAU,GAAG,eAAe,GAAG,QAAQ,GAAG,MAAM,GAAG,cAAc,GAAG,SAAS,GAAG,UAAU,CACtI,CAAC;AAqBF;;;;;;;;;;;GAWG;AACH,wBAAgB,aAAa,CAC3B,YAAY,SAAS,WAAW,GAAG,WAAW,EAC9C,KAAK,SAAS,SAAS,CAAC,YAAY,CAAC,GAAG,SAAS,CAAC,YAAY,CAAC,EAE/D,KAAK,EAAE,oBAAoB,CAAC,YAAY,EAAE,KAAK,CAAC,GAC9C,mBAAmB,GAAG;IACpB,sDAAsD;IACtD,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,6DAA6D;IAC7D,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB,2CAuGJ;AAED,eAAe,aAAa,CAAC"}
@@ -1,31 +1,66 @@
1
- "use client";
2
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
- import classNames from 'classnames';
4
- import { Eye, EyeOff } from 'lucide-react';
5
- import { InputText } from 'primereact/inputtext';
6
- import { useState } from 'react';
7
- import { Controller } from 'react-hook-form';
8
- const PasswordInput = (props) => {
9
- const { controller, block, defaultValue = '', showToggle = true, ...rest } = props;
10
- const [visible, setVisible] = useState(false);
11
- return (_jsx(Controller, { defaultValue: controller?.defaultValue || defaultValue, ...controller, render: ({ field, fieldState, formState }) => {
12
- const inputEl = (_jsx(InputText, { id: rest.id || field.name, ...rest, type: showToggle ? (visible ? 'text' : 'password') : 'password', disabled: formState.isSubmitting || rest.disabled, invalid: fieldState.invalid, className: classNames(rest.className, { 'w-full': block }), ...field }));
13
- if (!showToggle)
14
- return inputEl;
15
- return (_jsxs("div", { className: classNames('mantis-core-password-input', { 'w-full': block }), style: { position: 'relative' }, children: [inputEl, _jsx("button", { type: "button", className: "mantis-core-password-input__toggle", onClick: () => setVisible((v) => !v), disabled: formState.isSubmitting || rest.disabled, style: {
16
- position: 'absolute',
17
- right: '0.75rem',
18
- top: '50%',
19
- transform: 'translateY(-50%)',
20
- background: 'none',
21
- border: 'none',
22
- cursor: 'pointer',
23
- padding: '0',
24
- display: 'flex',
25
- alignItems: 'center',
26
- color: 'var(--text-color-secondary)',
27
- }, tabIndex: -1, "aria-label": visible ? 'Ocultar contraseña' : 'Mostrar contraseña', children: visible ? _jsx(EyeOff, { size: 16 }) : _jsx(Eye, { size: 16 }) })] }));
28
- } }));
29
- };
2
+ import { Eye } from "@primeicons/react/eye";
3
+ import { EyeSlash } from "@primeicons/react/eye-slash";
4
+ import { IconField } from "@primereact/ui/iconfield";
5
+ import { InputPassword } from "@primereact/ui/inputpassword";
6
+ import clsx from "clsx";
7
+ import { useState } from "react";
8
+ import { FieldShell } from "./FieldShell";
9
+ import { useFieldController } from "./useFieldController";
10
+ /** Deterministic 0–4 strength score from length + character-class variety. */
11
+ function scorePassword(v) {
12
+ if (!v)
13
+ return 0;
14
+ let score = 0;
15
+ if (v.length >= 8)
16
+ score++;
17
+ if (v.length >= 12)
18
+ score++;
19
+ if (/[a-z]/.test(v) && /[A-Z]/.test(v))
20
+ score++;
21
+ if (/\d/.test(v) && /[^A-Za-z0-9]/.test(v))
22
+ score++;
23
+ return score;
24
+ }
25
+ const STRENGTH = [
26
+ { label: "", cls: "" },
27
+ { label: "Débil", cls: "bg-red-500 w-1/4" },
28
+ { label: "Regular", cls: "bg-amber-500 w-2/4" },
29
+ { label: "Buena", cls: "bg-lime-500 w-3/4" },
30
+ { label: "Fuerte", cls: "bg-green-600 w-full" },
31
+ ];
32
+ /**
33
+ * RHF-bound password input over PR11 `InputPassword` (value = `string`).
34
+ *
35
+ * Show/hide uses the component's NATIVE mask state — mirrors the official
36
+ * ToggleMaskDemo (`IconField.Root` + `IconField.Inset` with an Eye/EyeSlash
37
+ * that flips `mask`). The old custom lucide toggle + relative-positioned button
38
+ * is gone. `feedback` (default true) renders a lightweight deterministic
39
+ * strength meter from the value; PR11 has no built-in meter so this is ours.
40
+ *
41
+ * @example
42
+ * <PasswordInput name="password" control={control} label="Contraseña" rules={{ required: "…" }} />
43
+ */
44
+ export function PasswordInput(props) {
45
+ const { name, control, rules, defaultValue, shouldUnregister, disabled, label, labelMode, floatVariant, addonBefore, addonAfter, required, helpText, id, className, fluid, showToggle = true, feedback = true, ...rest } = props;
46
+ const [mask, setMask] = useState(true);
47
+ const f = useFieldController({
48
+ name,
49
+ control,
50
+ rules,
51
+ defaultValue,
52
+ shouldUnregister,
53
+ disabled,
54
+ helpText,
55
+ id,
56
+ fluid,
57
+ });
58
+ const { ref: fieldRef } = f.field;
59
+ const value = f.field.value ?? "";
60
+ const score = feedback ? scorePassword(value) : 0;
61
+ const strength = STRENGTH[score];
62
+ const input = (_jsx(InputPassword, { id: f.id, name: f.field.name, ref: fieldRef, value: value, onValueChange: (e) => f.field.onChange(e.value), onBlur: f.field.onBlur, mask: showToggle ? mask : true, onMaskChange: (e) => setMask(e.value), invalid: f.invalid, disabled: f.disabled, fluid: f.fluid, className: clsx("w-full", className), ...rest, ...f.aria }));
63
+ return (_jsxs(FieldShell, { id: f.id, label: label, labelMode: labelMode, floatVariant: floatVariant, addonBefore: addonBefore, addonAfter: addonAfter, required: required, helpText: helpText, errorMessage: f.errorMessage, children: [showToggle ? (_jsxs(IconField.Root, { className: 'w-full', children: [input, _jsx(IconField.Inset, { children: _jsx("button", { type: 'button', tabIndex: -1, "aria-label": mask ? "Mostrar contraseña" : "Ocultar contraseña", className: 'flex cursor-pointer items-center border-0 bg-transparent p-0 text-surface-500', onClick: () => setMask((m) => !m), disabled: f.disabled, children: mask ? _jsx(Eye, {}) : _jsx(EyeSlash, {}) }) })] })) : (input), feedback && value ? (_jsxs("div", { className: 'flex items-center gap-2', children: [_jsx("div", { className: 'h-1 flex-1 overflow-hidden rounded bg-surface-200 dark:bg-surface-700', children: _jsx("div", { className: clsx("h-full rounded transition-all", strength.cls) }) }), strength.label ? (_jsx("small", { className: 'text-xs text-surface-500', children: strength.label })) : null] })) : null] }));
64
+ }
30
65
  export default PasswordInput;
31
66
  //# sourceMappingURL=PasswordInput.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"PasswordInput.js","sourceRoot":"","sources":["../../../src/components/Forms/PasswordInput.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AACb,OAAO,UAAU,MAAM,YAAY,CAAC;AACpC,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,SAAS,EAAkB,MAAM,sBAAsB,CAAC;AACjE,OAAc,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACxC,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAU7C,MAAM,aAAa,GAAiC,CAAC,KAAK,EAAE,EAAE;IAC5D,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,YAAY,GAAG,EAAE,EAAE,UAAU,GAAG,IAAI,EAAE,GAAG,IAAI,EAAE,GAAG,KAAK,CAAC;IACnF,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAE9C,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;YAC3C,MAAM,OAAO,GAAG,CACd,KAAC,SAAS,IACR,EAAE,EAAE,IAAI,CAAC,EAAE,IAAI,KAAK,CAAC,IAAI,KACrB,IAAI,EACR,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,EAC/D,QAAQ,EAAE,SAAS,CAAC,YAAY,IAAI,IAAI,CAAC,QAAQ,EACjD,OAAO,EAAE,UAAU,CAAC,OAAO,EAC3B,SAAS,EAAE,UAAU,CAAC,IAAI,CAAC,SAAS,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,KACtD,KAAK,GACT,CACH,CAAC;YAEF,IAAI,CAAC,UAAU;gBAAE,OAAO,OAAO,CAAC;YAEhC,OAAO,CACL,eACE,SAAS,EAAE,UAAU,CAAC,4BAA4B,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,EACxE,KAAK,EAAE,EAAE,QAAQ,EAAE,UAAU,EAAE,aAE9B,OAAO,EACR,iBACE,IAAI,EAAC,QAAQ,EACb,SAAS,EAAC,oCAAoC,EAC9C,OAAO,EAAE,GAAG,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EACpC,QAAQ,EAAE,SAAS,CAAC,YAAY,IAAI,IAAI,CAAC,QAAQ,EACjD,KAAK,EAAE;4BACL,QAAQ,EAAE,UAAU;4BACpB,KAAK,EAAE,SAAS;4BAChB,GAAG,EAAE,KAAK;4BACV,SAAS,EAAE,kBAAkB;4BAC7B,UAAU,EAAE,MAAM;4BAClB,MAAM,EAAE,MAAM;4BACd,MAAM,EAAE,SAAS;4BACjB,OAAO,EAAE,GAAG;4BACZ,OAAO,EAAE,MAAM;4BACf,UAAU,EAAE,QAAQ;4BACpB,KAAK,EAAE,6BAA6B;yBACrC,EACD,QAAQ,EAAE,CAAC,CAAC,gBACA,OAAO,CAAC,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAC,oBAAoB,YAEhE,OAAO,CAAC,CAAC,CAAC,KAAC,MAAM,IAAC,IAAI,EAAE,EAAE,GAAI,CAAC,CAAC,CAAC,KAAC,GAAG,IAAC,IAAI,EAAE,EAAE,GAAI,GAC5C,IACL,CACP,CAAC;QACJ,CAAC,GACD,CACH,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,aAAa,CAAC"}
1
+ {"version":3,"file":"PasswordInput.js","sourceRoot":"","sources":["../../../src/components/Forms/PasswordInput.tsx"],"names":[],"mappings":"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"}
@@ -1,11 +1,19 @@
1
- import { InputMaskProps } from 'primereact/inputmask';
2
- import React from 'react';
3
- import { ControllerProps } from './types';
4
- export interface PhoneInputProps extends Omit<InputMaskProps, 'name' | 'defaultValue'> {
5
- controller: ControllerProps;
6
- block?: boolean;
1
+ import type { InputTextProps } from "@primereact/types/primitive/inputtext";
2
+ import type * as React from "react";
3
+ import type { FieldPath, FieldValues } from "react-hook-form";
4
+ import type { FieldControllerProps } from "./useFieldController";
5
+ type InputTextExtras = Omit<InputTextProps & React.InputHTMLAttributes<HTMLInputElement>, "id" | "name" | "value" | "onChange" | "onBlur" | "defaultValue" | "invalid" | "disabled">;
6
+ /**
7
+ * Phone-number preset of {@link MaskField}. Defaults to a US-style
8
+ * `(999) 999-9999` mask; override `mask` for other formats. Value = the masked
9
+ * string (e.g. `"(555) 123-4567"`).
10
+ *
11
+ * @example
12
+ * <PhoneInput name="phone" control={control} label="Teléfono" />
13
+ */
14
+ export declare function PhoneInput<TFieldValues extends FieldValues = FieldValues, TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>>(props: FieldControllerProps<TFieldValues, TName> & InputTextExtras & {
15
+ /** Override the phone mask. Default `(999) 999-9999`. */
7
16
  mask?: string;
8
- }
9
- declare const PhoneInput: React.FC<PhoneInputProps>;
17
+ }): import("react/jsx-runtime").JSX.Element;
10
18
  export default PhoneInput;
11
19
  //# sourceMappingURL=PhoneInput.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"PhoneInput.d.ts","sourceRoot":"","sources":["../../../src/components/Forms/PhoneInput.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,eAAgB,SAAQ,IAAI,CAAC,cAAc,EAAE,MAAM,GAAG,cAAc,CAAC;IACpF,UAAU,EAAE,eAAe,CAAC;IAC5B,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,QAAA,MAAM,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,eAAe,CAqBzC,CAAC;AAEF,eAAe,UAAU,CAAC"}
1
+ {"version":3,"file":"PhoneInput.d.ts","sourceRoot":"","sources":["../../../src/components/Forms/PhoneInput.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uCAAuC,CAAC;AAC5E,OAAO,KAAK,KAAK,KAAK,MAAM,OAAO,CAAC;AACpC,OAAO,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAE9D,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAEjE,KAAK,eAAe,GAAG,IAAI,CACzB,cAAc,GAAG,KAAK,CAAC,mBAAmB,CAAC,gBAAgB,CAAC,EAC5D,IAAI,GAAG,MAAM,GAAG,OAAO,GAAG,UAAU,GAAG,QAAQ,GAAG,cAAc,GAAG,SAAS,GAAG,UAAU,CAC1F,CAAC;AAEF;;;;;;;GAOG;AACH,wBAAgB,UAAU,CACxB,YAAY,SAAS,WAAW,GAAG,WAAW,EAC9C,KAAK,SAAS,SAAS,CAAC,YAAY,CAAC,GAAG,SAAS,CAAC,YAAY,CAAC,EAE/D,KAAK,EAAE,oBAAoB,CAAC,YAAY,EAAE,KAAK,CAAC,GAC9C,eAAe,GAAG;IAChB,yDAAyD;IACzD,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,2CAIJ;AAED,eAAe,UAAU,CAAC"}
@@ -1,9 +1,16 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
- import classNames from 'classnames';
3
- import { InputMask } from 'primereact/inputmask';
4
- import { Controller } from 'react-hook-form';
5
- const PhoneInput = ({ controller, block, mask = '(999) 999-9999', ...rest }) => {
6
- return (_jsx(Controller, { ...controller, render: ({ field, fieldState, formState }) => (_jsx(InputMask, { id: rest.id || field.name, ...rest, mask: mask, name: field.name, value: field.value ?? '', onBlur: field.onBlur, onChange: (e) => field.onChange(e.value), ref: field.ref, disabled: formState.isSubmitting || rest.disabled, invalid: fieldState.invalid, className: classNames(rest.className, { 'w-full': block }) })) }));
7
- };
2
+ import { MaskField } from "./MaskField";
3
+ /**
4
+ * Phone-number preset of {@link MaskField}. Defaults to a US-style
5
+ * `(999) 999-9999` mask; override `mask` for other formats. Value = the masked
6
+ * string (e.g. `"(555) 123-4567"`).
7
+ *
8
+ * @example
9
+ * <PhoneInput name="phone" control={control} label="Teléfono" />
10
+ */
11
+ export function PhoneInput(props) {
12
+ const { mask = "(999) 999-9999", ...rest } = props;
13
+ return _jsx(MaskField, { mask: mask, ...rest });
14
+ }
8
15
  export default PhoneInput;
9
16
  //# sourceMappingURL=PhoneInput.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"PhoneInput.js","sourceRoot":"","sources":["../../../src/components/Forms/PhoneInput.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;AAS7C,MAAM,UAAU,GAA8B,CAAC,EAAE,UAAU,EAAE,KAAK,EAAE,IAAI,GAAG,gBAAgB,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE;IACxG,OAAO,CACL,KAAC,UAAU,OACL,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,IAAI,EAAE,IAAI,EACV,IAAI,EAAE,KAAK,CAAC,IAAI,EAChB,KAAK,EAAE,KAAK,CAAC,KAAK,IAAI,EAAE,EACxB,MAAM,EAAE,KAAK,CAAC,MAAM,EACpB,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,EACxC,GAAG,EAAE,KAAK,CAAC,GAAG,EACd,QAAQ,EAAE,SAAS,CAAC,YAAY,IAAI,IAAI,CAAC,QAAQ,EACjD,OAAO,EAAE,UAAU,CAAC,OAAO,EAC3B,SAAS,EAAE,UAAU,CAAC,IAAI,CAAC,SAAS,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,GAC1D,CACH,GACD,CACH,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,UAAU,CAAC"}
1
+ {"version":3,"file":"PhoneInput.js","sourceRoot":"","sources":["../../../src/components/Forms/PhoneInput.tsx"],"names":[],"mappings":";AAGA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAQxC;;;;;;;GAOG;AACH,MAAM,UAAU,UAAU,CAIxB,KAIG;IAEH,MAAM,EAAE,IAAI,GAAG,gBAAgB,EAAE,GAAG,IAAI,EAAE,GAAG,KAAK,CAAC;IACnD,OAAO,KAAC,SAAS,IAAsB,IAAI,EAAE,IAAI,KAAM,IAAI,GAAI,CAAC;AAClE,CAAC;AAED,eAAe,UAAU,CAAC"}