@stackcraftmx/calcita 0.47.0 → 0.51.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 (488) hide show
  1. package/README.md +173 -12
  2. package/cli/calcita.js +15 -0
  3. package/cli/checkTexts.js +209 -0
  4. package/cli/packageVersions.js +6 -1
  5. package/cli/projectFiles.js +4 -2
  6. package/cli/templates/project/README.md.tpl +21 -1
  7. package/cli/templates/project/eslint.config.js.tpl +27 -0
  8. package/cli/templates/project/src/app/appTexts.js.tpl +2 -1
  9. package/cli/templates/project/src/core/publicPaths.js.tpl +10 -2
  10. package/cli/templates/project/vite.config.js.tpl +8 -1
  11. package/dist/DataTable/AuditTrailDialog.js +3 -2
  12. package/dist/DataTable/AuditTrailDialog.js.map +1 -1
  13. package/dist/DataTable/ColumnFilters/HeaderFilterPopover.js +3 -2
  14. package/dist/DataTable/ColumnFilters/HeaderFilterPopover.js.map +1 -1
  15. package/dist/DataTable/ColumnFilters/MultiSelectColumnFilter.js +3 -2
  16. package/dist/DataTable/ColumnFilters/MultiSelectColumnFilter.js.map +1 -1
  17. package/dist/DataTable/ColumnFilters/SortableFilterHeader.js +3 -2
  18. package/dist/DataTable/ColumnFilters/SortableFilterHeader.js.map +1 -1
  19. package/dist/DataTable/EmptyState.js +3 -2
  20. package/dist/DataTable/EmptyState.js.map +1 -1
  21. package/dist/DataTable/FilterChips.js +3 -2
  22. package/dist/DataTable/FilterChips.js.map +1 -1
  23. package/dist/DataTable/GoToPage.js +3 -2
  24. package/dist/DataTable/GoToPage.js.map +1 -1
  25. package/dist/DataTable/ServerTable.js +95 -28
  26. package/dist/DataTable/ServerTable.js.map +1 -1
  27. package/dist/DataTable/ServerTableFilterDrawer.js +8 -3
  28. package/dist/DataTable/ServerTableFilterDrawer.js.map +1 -1
  29. package/dist/DataTable/StackedCell.js +60 -0
  30. package/dist/DataTable/StackedCell.js.map +1 -0
  31. package/dist/DataTable/TableCardsView.js +88 -0
  32. package/dist/DataTable/TableCardsView.js.map +1 -0
  33. package/dist/DataTable/columnWidths.js +30 -0
  34. package/dist/DataTable/columnWidths.js.map +1 -0
  35. package/dist/DataTable/columns.js +47 -1
  36. package/dist/DataTable/columns.js.map +1 -1
  37. package/dist/DataTable/fixedColumns.js +24 -0
  38. package/dist/DataTable/fixedColumns.js.map +1 -0
  39. package/dist/DataTable/useTableView.js +29 -0
  40. package/dist/DataTable/useTableView.js.map +1 -0
  41. package/dist/access/PermissionMatrix.js +3 -2
  42. package/dist/access/PermissionMatrix.js.map +1 -1
  43. package/dist/account/AccountProvider.js +1 -1
  44. package/dist/account/AccountSecuritySection.js +3 -2
  45. package/dist/account/AccountSecuritySection.js.map +1 -1
  46. package/dist/account/DemoTotpCodeButton.js +3 -2
  47. package/dist/account/DemoTotpCodeButton.js.map +1 -1
  48. package/dist/account/ProfileScreen.js +3 -2
  49. package/dist/account/ProfileScreen.js.map +1 -1
  50. package/dist/account/SignInScreen.js +3 -2
  51. package/dist/account/SignInScreen.js.map +1 -1
  52. package/dist/appShell/AccountMenu.js +3 -2
  53. package/dist/appShell/AccountMenu.js.map +1 -1
  54. package/dist/appShell/AppLayout.js +3 -2
  55. package/dist/appShell/AppLayout.js.map +1 -1
  56. package/dist/appShell/AppearanceSettings.js +3 -2
  57. package/dist/appShell/AppearanceSettings.js.map +1 -1
  58. package/dist/appShell/AuthLayout.js +3 -2
  59. package/dist/appShell/AuthLayout.js.map +1 -1
  60. package/dist/appShell/BarActionButton.js +11 -4
  61. package/dist/appShell/BarActionButton.js.map +1 -1
  62. package/dist/appShell/BarActions.js +3 -2
  63. package/dist/appShell/BarActions.js.map +1 -1
  64. package/dist/appShell/BarCapsule.js +3 -2
  65. package/dist/appShell/BarCapsule.js.map +1 -1
  66. package/dist/appShell/BarSearch.js +3 -2
  67. package/dist/appShell/BarSearch.js.map +1 -1
  68. package/dist/appShell/HeaderTools.js +3 -2
  69. package/dist/appShell/HeaderTools.js.map +1 -1
  70. package/dist/appShell/MobileTabBar.js +3 -2
  71. package/dist/appShell/MobileTabBar.js.map +1 -1
  72. package/dist/appShell/SettingsMenu.js +3 -2
  73. package/dist/appShell/SettingsMenu.js.map +1 -1
  74. package/dist/appShell/SideMenu.js +3 -2
  75. package/dist/appShell/SideMenu.js.map +1 -1
  76. package/dist/appShell/SideMenuEntry.js +3 -2
  77. package/dist/appShell/SideMenuEntry.js.map +1 -1
  78. package/dist/appShell/SubmenuActionsMenu.js +3 -2
  79. package/dist/appShell/SubmenuActionsMenu.js.map +1 -1
  80. package/dist/appShell/TabBarEditor.js +3 -2
  81. package/dist/appShell/TabBarEditor.js.map +1 -1
  82. package/dist/appShell/TopMenu.js +3 -2
  83. package/dist/appShell/TopMenu.js.map +1 -1
  84. package/dist/appShell/Wordmark.js +3 -2
  85. package/dist/appShell/Wordmark.js.map +1 -1
  86. package/dist/auth/PasswordChecklist.js +3 -2
  87. package/dist/auth/PasswordChecklist.js.map +1 -1
  88. package/dist/calendar/EventCalendar.js +3 -2
  89. package/dist/calendar/EventCalendar.js.map +1 -1
  90. package/dist/calendar/EventDetails.js +3 -2
  91. package/dist/calendar/EventDetails.js.map +1 -1
  92. package/dist/datePickers/DateInput.js +28 -22
  93. package/dist/datePickers/DateInput.js.map +1 -1
  94. package/dist/datePickers/DateTimeInput.js +33 -27
  95. package/dist/datePickers/DateTimeInput.js.map +1 -1
  96. package/dist/datePickers/MonthInput.js +27 -21
  97. package/dist/datePickers/MonthInput.js.map +1 -1
  98. package/dist/datePickers/TimeInput.js +26 -20
  99. package/dist/datePickers/TimeInput.js.map +1 -1
  100. package/dist/datePickers/usePickerField.js +5 -4
  101. package/dist/datePickers/usePickerField.js.map +1 -1
  102. package/dist/downloads/DownloadManager.js +3 -2
  103. package/dist/downloads/DownloadManager.js.map +1 -1
  104. package/dist/feedback/ConfirmDialog.js +3 -2
  105. package/dist/feedback/ConfirmDialog.js.map +1 -1
  106. package/dist/feedback/ModalWaiting.js +3 -2
  107. package/dist/feedback/ModalWaiting.js.map +1 -1
  108. package/dist/feedback/NewBuildNotice.js +3 -2
  109. package/dist/feedback/NewBuildNotice.js.map +1 -1
  110. package/dist/filepond/FileDropzone.js +3 -2
  111. package/dist/filepond/FileDropzone.js.map +1 -1
  112. package/dist/forms/FormProblemAlert.js +3 -2
  113. package/dist/forms/FormProblemAlert.js.map +1 -1
  114. package/dist/forms/SubmitButton.js +7 -2
  115. package/dist/forms/SubmitButton.js.map +1 -1
  116. package/dist/forms/auth/SignInForm.js +3 -2
  117. package/dist/forms/auth/SignInForm.js.map +1 -1
  118. package/dist/forms/fieldRules.js +30 -0
  119. package/dist/forms/fieldRules.js.map +1 -0
  120. package/dist/forms/security/SecondStepForm.js +3 -2
  121. package/dist/forms/security/SecondStepForm.js.map +1 -1
  122. package/dist/forms/security/TwoStepVerificationCard.js +3 -2
  123. package/dist/forms/security/TwoStepVerificationCard.js.map +1 -1
  124. package/dist/forms/useValidationText.js +18 -0
  125. package/dist/forms/useValidationText.js.map +1 -0
  126. package/dist/forms/validation.js +35 -31
  127. package/dist/forms/validation.js.map +1 -1
  128. package/dist/forms/validationMessages.js +64 -7
  129. package/dist/forms/validationMessages.js.map +1 -1
  130. package/dist/forms.js +3 -0
  131. package/dist/forms.js.map +1 -1
  132. package/dist/hookForm/FormProblemAlert.js +3 -2
  133. package/dist/hookForm/FormProblemAlert.js.map +1 -1
  134. package/dist/hookForm/SubmitButton.js +7 -2
  135. package/dist/hookForm/SubmitButton.js.map +1 -1
  136. package/dist/inbox/InboxLayout.js +3 -2
  137. package/dist/inbox/InboxLayout.js.map +1 -1
  138. package/dist/inbox/MessageList.js +3 -2
  139. package/dist/inbox/MessageList.js.map +1 -1
  140. package/dist/inbox/MessageView.js +3 -2
  141. package/dist/inbox/MessageView.js.map +1 -1
  142. package/dist/index.js +186 -163
  143. package/dist/index.js.map +1 -1
  144. package/dist/inputs/CatalogInput.js +32 -25
  145. package/dist/inputs/CatalogInput.js.map +1 -1
  146. package/dist/inputs/CheckboxGroupInput.js +8 -5
  147. package/dist/inputs/CheckboxGroupInput.js.map +1 -1
  148. package/dist/inputs/ColorInput.js +7 -4
  149. package/dist/inputs/ColorInput.js.map +1 -1
  150. package/dist/inputs/FieldFrame.js +10 -4
  151. package/dist/inputs/FieldFrame.js.map +1 -1
  152. package/dist/inputs/FormSection.js +1 -1
  153. package/dist/inputs/MaskedInput.js +1 -0
  154. package/dist/inputs/MaskedInput.js.map +1 -1
  155. package/dist/inputs/NumberInput.js +29 -24
  156. package/dist/inputs/NumberInput.js.map +1 -1
  157. package/dist/inputs/RepeatingFields.js +8 -5
  158. package/dist/inputs/RepeatingFields.js.map +1 -1
  159. package/dist/inputs/SelectInput.js +8 -5
  160. package/dist/inputs/SelectInput.js.map +1 -1
  161. package/dist/inputs/TextInput.js +5 -3
  162. package/dist/inputs/TextInput.js.map +1 -1
  163. package/dist/inputs/TransferListInput.js +8 -5
  164. package/dist/inputs/TransferListInput.js.map +1 -1
  165. package/dist/inputs/WizardLayout.js +3 -2
  166. package/dist/inputs/WizardLayout.js.map +1 -1
  167. package/dist/kanban/KanbanBoard.js +3 -2
  168. package/dist/kanban/KanbanBoard.js.map +1 -1
  169. package/dist/legal/CookieNotice.js +3 -2
  170. package/dist/legal/CookieNotice.js.map +1 -1
  171. package/dist/legal/TermsAcceptanceDialog.js +3 -2
  172. package/dist/legal/TermsAcceptanceDialog.js.map +1 -1
  173. package/dist/locales/en.js +24 -0
  174. package/dist/locales/en.js.map +1 -1
  175. package/dist/locales/es.js +24 -0
  176. package/dist/locales/es.js.map +1 -1
  177. package/dist/maps/MapView.js +3 -2
  178. package/dist/maps/MapView.js.map +1 -1
  179. package/dist/mexico/CfdiSummary.js +3 -2
  180. package/dist/mexico/CfdiSummary.js.map +1 -1
  181. package/dist/mexico/EfirmaFields.js +3 -2
  182. package/dist/mexico/EfirmaFields.js.map +1 -1
  183. package/dist/mexico/mexicoIdentifiers.js +5 -0
  184. package/dist/mexico/mexicoIdentifiers.js.map +1 -1
  185. package/dist/mexico/mexicoRules.js +9 -4
  186. package/dist/mexico/mexicoRules.js.map +1 -1
  187. package/dist/mexico.js +4 -2
  188. package/dist/pwa/InstallAppSetting.js +3 -2
  189. package/dist/pwa/InstallAppSetting.js.map +1 -1
  190. package/dist/pwa/InstallInstructionsDialog.js +3 -2
  191. package/dist/pwa/InstallInstructionsDialog.js.map +1 -1
  192. package/dist/pwa/InstallPromptBanner.js +3 -2
  193. package/dist/pwa/InstallPromptBanner.js.map +1 -1
  194. package/dist/react-hook-form.js +3 -0
  195. package/dist/react-hook-form.js.map +1 -1
  196. package/dist/richText/RichTextEditor.js +7 -4
  197. package/dist/richText/RichTextEditor.js.map +1 -1
  198. package/dist/richText/RichTextView.js +3 -2
  199. package/dist/richText/RichTextView.js.map +1 -1
  200. package/dist/security/ActivityLog.js +3 -2
  201. package/dist/security/ActivityLog.js.map +1 -1
  202. package/dist/security/RecoveryCodesDialog.js +3 -2
  203. package/dist/security/RecoveryCodesDialog.js.map +1 -1
  204. package/dist/security/SessionsCard.js +3 -2
  205. package/dist/security/SessionsCard.js.map +1 -1
  206. package/dist/table.js +21 -2
  207. package/dist/table.js.map +1 -1
  208. package/dist/theme/themePieces.js +70 -4
  209. package/dist/theme/themePieces.js.map +1 -1
  210. package/dist/toolkit/ToolkitProvider.js +8 -1
  211. package/dist/toolkit/ToolkitProvider.js.map +1 -1
  212. package/dist/toolkit/browserNavigation.js +19 -4
  213. package/dist/toolkit/browserNavigation.js.map +1 -1
  214. package/dist/toolkit/combineTexts.js +32 -0
  215. package/dist/toolkit/combineTexts.js.map +1 -0
  216. package/dist/toolkit/hashNavigation.js +17 -3
  217. package/dist/toolkit/hashNavigation.js.map +1 -1
  218. package/dist/toolkit/navigationPaths.js +15 -0
  219. package/dist/toolkit/navigationPaths.js.map +1 -1
  220. package/dist/toolkit/pathIndex.js +66 -0
  221. package/dist/toolkit/pathIndex.js.map +1 -0
  222. package/dist/toolkit/toolkitSettings.js +19 -1
  223. package/dist/toolkit/toolkitSettings.js.map +1 -1
  224. package/dist/types/DataTable/AuditTrailDialog.d.ts +6 -17
  225. package/dist/types/DataTable/ColumnFilters/HeaderFilterPopover.d.ts +6 -5
  226. package/dist/types/DataTable/ColumnFilters/MultiSelectColumnFilter.d.ts +6 -9
  227. package/dist/types/DataTable/ColumnFilters/SortableFilterHeader.d.ts +6 -14
  228. package/dist/types/DataTable/EmptyState.d.ts +6 -9
  229. package/dist/types/DataTable/FilterChips.d.ts +6 -11
  230. package/dist/types/DataTable/GoToPage.d.ts +6 -9
  231. package/dist/types/DataTable/ServerTable.d.ts +16 -80
  232. package/dist/types/DataTable/ServerTableFilterDrawer.d.ts +6 -13
  233. package/dist/types/DataTable/StackedCell.d.ts +12 -0
  234. package/dist/types/DataTable/TableCardsView.d.ts +27 -0
  235. package/dist/types/DataTable/columnWidths.d.ts +21 -0
  236. package/dist/types/DataTable/columns.d.ts +111 -0
  237. package/dist/types/DataTable/fixedColumns.d.ts +29 -0
  238. package/dist/types/DataTable/index.d.ts +6 -1
  239. package/dist/types/DataTable/useTableView.d.ts +22 -0
  240. package/dist/types/access/PermissionMatrix.d.ts +6 -10
  241. package/dist/types/account/AccountSecuritySection.d.ts +6 -7
  242. package/dist/types/account/DemoTotpCodeButton.d.ts +6 -5
  243. package/dist/types/account/ProfileScreen.d.ts +6 -18
  244. package/dist/types/account/SignInScreen.d.ts +6 -13
  245. package/dist/types/appShell/AccountMenu.d.ts +6 -11
  246. package/dist/types/appShell/AppLayout.d.ts +3 -40
  247. package/dist/types/appShell/AppearanceSettings.d.ts +6 -12
  248. package/dist/types/appShell/AuthLayout.d.ts +3 -11
  249. package/dist/types/appShell/BarActionButton.d.ts +6 -10
  250. package/dist/types/appShell/BarActions.d.ts +6 -15
  251. package/dist/types/appShell/BarCapsule.d.ts +6 -9
  252. package/dist/types/appShell/BarSearch.d.ts +6 -15
  253. package/dist/types/appShell/HeaderTools.d.ts +6 -16
  254. package/dist/types/appShell/MobileTabBar.d.ts +6 -13
  255. package/dist/types/appShell/SettingsMenu.d.ts +6 -10
  256. package/dist/types/appShell/SideMenu.d.ts +6 -20
  257. package/dist/types/appShell/SideMenuEntry.d.ts +6 -11
  258. package/dist/types/appShell/SubmenuActionsMenu.d.ts +6 -12
  259. package/dist/types/appShell/TabBarEditor.d.ts +6 -9
  260. package/dist/types/appShell/TopMenu.d.ts +6 -5
  261. package/dist/types/appShell/Wordmark.d.ts +6 -7
  262. package/dist/types/auth/PasswordChecklist.d.ts +6 -9
  263. package/dist/types/calendar/EventCalendar.d.ts +6 -23
  264. package/dist/types/calendar/EventDetails.d.ts +6 -10
  265. package/dist/types/datePickers/DateInput.d.ts +7 -22
  266. package/dist/types/datePickers/DateTimeInput.d.ts +7 -27
  267. package/dist/types/datePickers/MonthInput.d.ts +7 -21
  268. package/dist/types/datePickers/TimeInput.d.ts +7 -21
  269. package/dist/types/datePickers/usePickerField.d.ts +5 -1
  270. package/dist/types/downloads/DownloadManager.d.ts +6 -6
  271. package/dist/types/feedback/ConfirmDialog.d.ts +6 -18
  272. package/dist/types/feedback/ModalWaiting.d.ts +6 -9
  273. package/dist/types/feedback/NewBuildNotice.d.ts +6 -10
  274. package/dist/types/filepond/FileDropzone.d.ts +6 -29
  275. package/dist/types/forms/FormProblemAlert.d.ts +6 -5
  276. package/dist/types/forms/SubmitButton.d.ts +6 -6
  277. package/dist/types/forms/auth/SignInForm.d.ts +6 -11
  278. package/dist/types/forms/fieldRules.d.ts +44 -0
  279. package/dist/types/forms/index.d.ts +1 -0
  280. package/dist/types/forms/security/SecondStepForm.d.ts +6 -14
  281. package/dist/types/forms/security/TwoStepVerificationCard.d.ts +6 -21
  282. package/dist/types/forms/useValidationText.d.ts +12 -0
  283. package/dist/types/forms/validation.d.ts +117 -174
  284. package/dist/types/forms/validationMessages.d.ts +54 -6
  285. package/dist/types/forms.d.ts +1 -1
  286. package/dist/types/hookForm/FormProblemAlert.d.ts +6 -5
  287. package/dist/types/hookForm/SubmitButton.d.ts +6 -13
  288. package/dist/types/inbox/InboxLayout.d.ts +6 -17
  289. package/dist/types/inbox/MessageList.d.ts +6 -18
  290. package/dist/types/inbox/MessageView.d.ts +6 -14
  291. package/dist/types/index.d.ts +8 -1
  292. package/dist/types/inputs/CatalogInput.d.ts +7 -24
  293. package/dist/types/inputs/CheckboxGroupInput.d.ts +7 -18
  294. package/dist/types/inputs/ColorInput.d.ts +7 -16
  295. package/dist/types/inputs/FieldFrame.d.ts +6 -10
  296. package/dist/types/inputs/MaskedInput.d.ts +3 -0
  297. package/dist/types/inputs/NumberInput.d.ts +7 -20
  298. package/dist/types/inputs/RepeatingFields.d.ts +7 -28
  299. package/dist/types/inputs/SelectInput.d.ts +7 -20
  300. package/dist/types/inputs/TextInput.d.ts +3 -0
  301. package/dist/types/inputs/TransferListInput.d.ts +7 -20
  302. package/dist/types/inputs/WizardLayout.d.ts +6 -19
  303. package/dist/types/kanban/KanbanBoard.d.ts +6 -25
  304. package/dist/types/legal/CookieNotice.d.ts +6 -16
  305. package/dist/types/legal/TermsAcceptanceDialog.d.ts +6 -18
  306. package/dist/types/locales/en.d.ts +24 -0
  307. package/dist/types/locales/es.d.ts +24 -0
  308. package/dist/types/maps/MapView.d.ts +6 -17
  309. package/dist/types/mexico/CfdiSummary.d.ts +6 -11
  310. package/dist/types/mexico/EfirmaFields.d.ts +6 -16
  311. package/dist/types/mexico/mexicoIdentifiers.d.ts +7 -0
  312. package/dist/types/mexico/mexicoRules.d.ts +19 -3
  313. package/dist/types/mexico.d.ts +2 -2
  314. package/dist/types/pwa/InstallAppSetting.d.ts +6 -6
  315. package/dist/types/pwa/InstallInstructionsDialog.d.ts +6 -9
  316. package/dist/types/pwa/InstallPromptBanner.d.ts +6 -11
  317. package/dist/types/react-hook-form.d.ts +1 -0
  318. package/dist/types/richText/RichTextEditor.d.ts +7 -22
  319. package/dist/types/richText/RichTextView.d.ts +6 -9
  320. package/dist/types/security/ActivityLog.d.ts +6 -9
  321. package/dist/types/security/RecoveryCodesDialog.d.ts +6 -11
  322. package/dist/types/security/SessionsCard.d.ts +6 -11
  323. package/dist/types/table.d.ts +3 -1
  324. package/dist/types/theme/themePieces.d.ts +55 -3
  325. package/dist/types/toolkit/ToolkitProvider.d.ts +13 -1
  326. package/dist/types/toolkit/browserNavigation.d.ts +7 -3
  327. package/dist/types/toolkit/combineTexts.d.ts +6 -0
  328. package/dist/types/toolkit/hashNavigation.d.ts +4 -2
  329. package/dist/types/toolkit/navigationPaths.d.ts +35 -0
  330. package/dist/types/toolkit/pathIndex.d.ts +27 -0
  331. package/dist/types/toolkit/toolkitSettings.d.ts +7 -4
  332. package/dist/types/ui/actions/ActionsMenu.d.ts +9 -11
  333. package/dist/types/ui/actions/CopyButton.d.ts +6 -12
  334. package/dist/types/ui/actions/DownloadMenu.d.ts +6 -29
  335. package/dist/types/ui/actions/SecretField.d.ts +6 -11
  336. package/dist/types/ui/actions/SelectionActions.d.ts +6 -13
  337. package/dist/types/ui/cards/RecordCard.d.ts +6 -31
  338. package/dist/types/ui/cards/RecordCardSkeleton.d.ts +6 -11
  339. package/dist/types/ui/countdown/Countdown.d.ts +6 -15
  340. package/dist/types/ui/documents/PdfViewerDialog.d.ts +6 -13
  341. package/dist/types/ui/filters/DateRangeFilter.d.ts +6 -10
  342. package/dist/types/ui/filters/FilterDrawer.d.ts +6 -17
  343. package/dist/types/ui/filters/PeriodRangeSelector.d.ts +6 -13
  344. package/dist/types/ui/filters/QuickFilters.d.ts +6 -12
  345. package/dist/types/ui/help/HelpButton.d.ts +6 -10
  346. package/dist/types/ui/help/HelpCarouselDialog.d.ts +6 -14
  347. package/dist/types/ui/labels/MarkedText.d.ts +10 -0
  348. package/dist/types/ui/labels/Tag.d.ts +6 -12
  349. package/dist/types/ui/labels/markedTextPieces.d.ts +22 -0
  350. package/dist/types/ui/layout/CollapsibleSection.d.ts +6 -12
  351. package/dist/types/ui/layout/ContentDialog.d.ts +6 -10
  352. package/dist/types/ui/layout/DefinitionList.d.ts +6 -9
  353. package/dist/types/ui/layout/DetailHeader.d.ts +6 -10
  354. package/dist/types/ui/layout/ErrorPage.d.ts +6 -17
  355. package/dist/types/ui/layout/FullPageLoader.d.ts +6 -6
  356. package/dist/types/ui/layout/GlassPanel.d.ts +6 -8
  357. package/dist/types/ui/layout/PageHeader.d.ts +6 -10
  358. package/dist/types/ui/layout/PageHeading.d.ts +6 -11
  359. package/dist/types/ui/layout/ProfileHeader.d.ts +6 -11
  360. package/dist/types/ui/layout/ScrollableRow.d.ts +6 -13
  361. package/dist/types/ui/layout/SectionCard.d.ts +6 -8
  362. package/dist/types/ui/metrics/BarList.d.ts +6 -12
  363. package/dist/types/ui/metrics/CalendarHeatmap.d.ts +6 -19
  364. package/dist/types/ui/metrics/ChartTooltip.d.ts +6 -6
  365. package/dist/types/ui/metrics/ColumnChart.d.ts +6 -25
  366. package/dist/types/ui/metrics/LineChart.d.ts +6 -20
  367. package/dist/types/ui/metrics/MetricCard.d.ts +6 -17
  368. package/dist/types/ui/metrics/TableToggle.d.ts +6 -6
  369. package/dist/types/ui/metrics/chartParts.d.ts +15 -30
  370. package/dist/types/ui/navigation/BackButton.d.ts +6 -9
  371. package/dist/types/ui/navigation/ColorSchemeToggle.d.ts +6 -9
  372. package/dist/types/ui/navigation/FontSizeToggle.d.ts +6 -8
  373. package/dist/types/ui/navigation/LanguageToggle.d.ts +6 -8
  374. package/dist/types/ui/navigation/PageBreadcrumbs.d.ts +6 -7
  375. package/dist/types/ui/navigation/RouteTabs.d.ts +7 -12
  376. package/dist/types/ui/timeline/GroupedTimeline.d.ts +6 -23
  377. package/dist/types/upload/AttachmentsInput.d.ts +11 -1
  378. package/dist/types/upload/FileDropzone.d.ts +6 -21
  379. package/dist/types/upload/FileInput.d.ts +7 -24
  380. package/dist/types/upload/FileUploadInput.d.ts +7 -31
  381. package/dist/types/upload/ImageInput.d.ts +7 -25
  382. package/dist/types/upload/TemplateDownloadButton.d.ts +6 -18
  383. package/dist/ui/actions/ActionsMenu.js +14 -5
  384. package/dist/ui/actions/ActionsMenu.js.map +1 -1
  385. package/dist/ui/actions/CopyButton.js +8 -3
  386. package/dist/ui/actions/CopyButton.js.map +1 -1
  387. package/dist/ui/actions/DownloadMenu.js +3 -2
  388. package/dist/ui/actions/DownloadMenu.js.map +1 -1
  389. package/dist/ui/actions/SecretField.js +8 -3
  390. package/dist/ui/actions/SecretField.js.map +1 -1
  391. package/dist/ui/actions/SelectionActions.js +3 -2
  392. package/dist/ui/actions/SelectionActions.js.map +1 -1
  393. package/dist/ui/cards/RecordCard.js +4 -3
  394. package/dist/ui/cards/RecordCard.js.map +1 -1
  395. package/dist/ui/cards/RecordCardSkeleton.js +8 -3
  396. package/dist/ui/cards/RecordCardSkeleton.js.map +1 -1
  397. package/dist/ui/countdown/Countdown.js +3 -2
  398. package/dist/ui/countdown/Countdown.js.map +1 -1
  399. package/dist/ui/documents/PdfViewerDialog.js +3 -2
  400. package/dist/ui/documents/PdfViewerDialog.js.map +1 -1
  401. package/dist/ui/filters/DateRangeFilter.js +3 -2
  402. package/dist/ui/filters/DateRangeFilter.js.map +1 -1
  403. package/dist/ui/filters/FilterDrawer.js +3 -2
  404. package/dist/ui/filters/FilterDrawer.js.map +1 -1
  405. package/dist/ui/filters/PeriodRangeSelector.js +3 -2
  406. package/dist/ui/filters/PeriodRangeSelector.js.map +1 -1
  407. package/dist/ui/filters/QuickFilters.js +3 -2
  408. package/dist/ui/filters/QuickFilters.js.map +1 -1
  409. package/dist/ui/help/HelpButton.js +8 -3
  410. package/dist/ui/help/HelpButton.js.map +1 -1
  411. package/dist/ui/help/HelpCarouselDialog.js +3 -2
  412. package/dist/ui/help/HelpCarouselDialog.js.map +1 -1
  413. package/dist/ui/labels/MarkedText.js +31 -0
  414. package/dist/ui/labels/MarkedText.js.map +1 -0
  415. package/dist/ui/labels/Tag.js +3 -2
  416. package/dist/ui/labels/Tag.js.map +1 -1
  417. package/dist/ui/labels/markedTextPieces.js +64 -0
  418. package/dist/ui/labels/markedTextPieces.js.map +1 -0
  419. package/dist/ui/layout/CollapsibleSection.js +3 -2
  420. package/dist/ui/layout/CollapsibleSection.js.map +1 -1
  421. package/dist/ui/layout/ContentDialog.js +3 -2
  422. package/dist/ui/layout/ContentDialog.js.map +1 -1
  423. package/dist/ui/layout/DefinitionList.js +3 -2
  424. package/dist/ui/layout/DefinitionList.js.map +1 -1
  425. package/dist/ui/layout/DetailHeader.js +3 -2
  426. package/dist/ui/layout/DetailHeader.js.map +1 -1
  427. package/dist/ui/layout/ErrorPage.js +3 -2
  428. package/dist/ui/layout/ErrorPage.js.map +1 -1
  429. package/dist/ui/layout/FullPageLoader.js +3 -2
  430. package/dist/ui/layout/FullPageLoader.js.map +1 -1
  431. package/dist/ui/layout/GlassPanel.js +3 -2
  432. package/dist/ui/layout/GlassPanel.js.map +1 -1
  433. package/dist/ui/layout/PageHeader.js +3 -2
  434. package/dist/ui/layout/PageHeader.js.map +1 -1
  435. package/dist/ui/layout/PageHeading.js +3 -2
  436. package/dist/ui/layout/PageHeading.js.map +1 -1
  437. package/dist/ui/layout/ProfileHeader.js +3 -2
  438. package/dist/ui/layout/ProfileHeader.js.map +1 -1
  439. package/dist/ui/layout/ScrollableRow.js +3 -2
  440. package/dist/ui/layout/ScrollableRow.js.map +1 -1
  441. package/dist/ui/layout/SectionCard.js +3 -2
  442. package/dist/ui/layout/SectionCard.js.map +1 -1
  443. package/dist/ui/metrics/BarList.js +3 -2
  444. package/dist/ui/metrics/BarList.js.map +1 -1
  445. package/dist/ui/metrics/CalendarHeatmap.js +3 -2
  446. package/dist/ui/metrics/CalendarHeatmap.js.map +1 -1
  447. package/dist/ui/metrics/ChartTooltip.js +3 -2
  448. package/dist/ui/metrics/ChartTooltip.js.map +1 -1
  449. package/dist/ui/metrics/ColumnChart.js +3 -2
  450. package/dist/ui/metrics/ColumnChart.js.map +1 -1
  451. package/dist/ui/metrics/LineChart.js +3 -2
  452. package/dist/ui/metrics/LineChart.js.map +1 -1
  453. package/dist/ui/metrics/MetricCard.js +3 -2
  454. package/dist/ui/metrics/MetricCard.js.map +1 -1
  455. package/dist/ui/metrics/TableToggle.js +3 -2
  456. package/dist/ui/metrics/TableToggle.js.map +1 -1
  457. package/dist/ui/metrics/chartParts.js +7 -4
  458. package/dist/ui/metrics/chartParts.js.map +1 -1
  459. package/dist/ui/navigation/BackButton.js +7 -2
  460. package/dist/ui/navigation/BackButton.js.map +1 -1
  461. package/dist/ui/navigation/ColorSchemeToggle.js +3 -2
  462. package/dist/ui/navigation/ColorSchemeToggle.js.map +1 -1
  463. package/dist/ui/navigation/FontSizeToggle.js +3 -2
  464. package/dist/ui/navigation/FontSizeToggle.js.map +1 -1
  465. package/dist/ui/navigation/LanguageToggle.js +3 -2
  466. package/dist/ui/navigation/LanguageToggle.js.map +1 -1
  467. package/dist/ui/navigation/PageBreadcrumbs.js +3 -2
  468. package/dist/ui/navigation/PageBreadcrumbs.js.map +1 -1
  469. package/dist/ui/navigation/RouteTabs.js +8 -4
  470. package/dist/ui/navigation/RouteTabs.js.map +1 -1
  471. package/dist/ui/timeline/GroupedTimeline.js +3 -2
  472. package/dist/ui/timeline/GroupedTimeline.js.map +1 -1
  473. package/dist/upload/AttachmentsInput.js +9 -6
  474. package/dist/upload/AttachmentsInput.js.map +1 -1
  475. package/dist/upload/FileChip.js +2 -1
  476. package/dist/upload/FileChip.js.map +1 -1
  477. package/dist/upload/FileDropzone.js +5 -4
  478. package/dist/upload/FileDropzone.js.map +1 -1
  479. package/dist/upload/FileInput.js +9 -6
  480. package/dist/upload/FileInput.js.map +1 -1
  481. package/dist/upload/FileUploadInput.js +9 -6
  482. package/dist/upload/FileUploadInput.js.map +1 -1
  483. package/dist/upload/ImageInput.js +8 -5
  484. package/dist/upload/ImageInput.js.map +1 -1
  485. package/dist/upload/TemplateDownloadButton.js +3 -2
  486. package/dist/upload/TemplateDownloadButton.js.map +1 -1
  487. package/package.json +1 -1
  488. package/cli/templates/project/src/app/combineTexts.js.tpl +0 -31
@@ -62,6 +62,26 @@ declare const _default: Readonly<{
62
62
  all: string;
63
63
  countAriaLabel: string;
64
64
  };
65
+ views: {
66
+ label: string;
67
+ table: string;
68
+ cards: string;
69
+ };
70
+ cards: {
71
+ label: string;
72
+ pagination: {
73
+ page: string;
74
+ first: string;
75
+ last: string;
76
+ next: string;
77
+ previous: string;
78
+ "start-ellipsis": string;
79
+ "end-ellipsis": string;
80
+ };
81
+ };
82
+ cells: {
83
+ empty: string;
84
+ };
65
85
  detail: {
66
86
  tooltip: string;
67
87
  ariaLabel: string;
@@ -684,6 +704,10 @@ declare const _default: Readonly<{
684
704
  rfc: string;
685
705
  curp: string;
686
706
  clabe: string;
707
+ sameAs: string;
708
+ sameAsUnnamed: string;
709
+ percent: string;
710
+ postalCode: string;
687
711
  listDuplicate: string;
688
712
  listOrderBetween: string;
689
713
  listOrderAbovePrevious: string;
@@ -3,22 +3,7 @@ export declare const OPEN_STREET_MAP_TILES: Readonly<{
3
3
  url: "https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png";
4
4
  attribution: "&copy; <a href=\"https://www.openstreetmap.org/copyright\">OpenStreetMap</a>";
5
5
  }>;
6
- /**
7
- * @param {object} props
8
- * @param {Array<{id: string, position: [number, number], title: string, description?: string, tone?: string} & Record<string, any>>} props.markers
9
- * tone: un color del tema (primary, success, warning, error, info…); por omisión primary
10
- * @param {string|null} [props.selectedId]
11
- * @param {(markerId: string) => void} [props.onSelect] al picar un marcador
12
- * @param {string} props.ariaLabel ya traducido: qué enseña el mapa
13
- * @param {number} [props.height] px
14
- * @param {{url: string, attribution: string}} [props.tileLayer] por omisión OpenStreetMap
15
- * @param {(marker: any) => import('react').ReactNode} [props.renderPopup] lo que dice el globo de un marcador (recibe el
16
- * marcador tal cual, con sus campos propios); por omisión su título y su descripción
17
- * @param {(position: [number, number]) => void} [props.onMapClick] al picar el mapa fuera de un marcador
18
- * @param {import('react').ReactNode} [props.children] capas propias de react-leaflet (Circle, Polygon, GeoJSON…)
19
- * @param {object} [props.mapProps] lo demás de MapContainer de react-leaflet (scrollWheelZoom, minZoom…)
20
- */
21
- export default function MapView(props: {
6
+ declare const MapView: (props: {
22
7
  markers: Array<{
23
8
  id: string;
24
9
  position: [number, number];
@@ -38,4 +23,8 @@ export default function MapView(props: {
38
23
  onMapClick?: (position: [number, number]) => void;
39
24
  children?: import('react').ReactNode;
40
25
  mapProps?: object;
41
- }): import("react").JSX.Element;
26
+ } & {
27
+ slots?: Record<string, import('react').ElementType>;
28
+ slotProps?: Record<string, object | ((partProps: object) => object)>;
29
+ }) => import("react").JSX.Element;
30
+ export default MapView;
@@ -1,17 +1,12 @@
1
- /**
2
- * @param {object} props
3
- * @param {import('./cfdiReader.js').Cfdi} props.cfdi lo que regresa readCfdi
4
- * @param {string} [props.expectedReceiverRfc] el RFC que debe recibirla (el de la empresa); si es otro, se avisa
5
- * @param {boolean} [props.showConcepts] por omisión, sí
6
- * @param {import('react').ReactNode} [props.actions] botones suyos abajo («Cargar la factura»)
7
- * @param {object} [props.sx]
8
- * @param {object} [props.texts] los textos que cambian, con la forma de `mexico` en los textos del paquete
9
- */
10
- export default function CfdiSummary(props: {
1
+ declare const CfdiSummary: (props: {
11
2
  cfdi: import('./cfdiReader.js').Cfdi;
12
3
  expectedReceiverRfc?: string;
13
4
  showConcepts?: boolean;
14
5
  actions?: import('react').ReactNode;
15
6
  sx?: object;
16
7
  texts?: object;
17
- }): import("react").JSX.Element;
8
+ } & {
9
+ slots?: Record<string, import('react').ElementType>;
10
+ slotProps?: Record<string, object | ((partProps: object) => object)>;
11
+ }) => import("react").JSX.Element;
12
+ export default CfdiSummary;
@@ -1,18 +1,4 @@
1
- /**
2
- * @param {object} props
3
- * @param {{certificateFile: File|null, keyFile: File|null, password: string}} [props.value]
4
- * @param {(value: {certificateFile: File|null, keyFile: File|null, password: string}) => void} props.onChange el valor completo
5
- * @param {string} [props.expectedRfc] el RFC que debe traer el certificado (el de la empresa); si es otro, se avisa
6
- * @param {(certificate: ReturnType<typeof import('./certificateReader.js').readCertificate>|null) => void} [props.onCertificateRead] lo que dice el certificado al elegirlo (null al quitarlo
7
- * o si no se pudo leer)
8
- * @param {(input: {certificateFile: File, keyFile: File, password: string, certificate: ReturnType<typeof import('./certificateReader.js').readCertificate>}) => Promise<void>} [props.onVerifyKey]
9
- * la revisión del proyecto (su API); si truena, su mensaje se enseña. Sin él, se abre en el navegador con jsrsasign
10
- * @param {string} [props.verifyLabel] ya traducido; por omisión «Revisar la e.firma»
11
- * @param {boolean} [props.disabled]
12
- * @param {object} [props.sx]
13
- * @param {object} [props.texts] los textos que cambian, con la forma de `mexico` en los textos del paquete
14
- */
15
- export default function EfirmaFields(props: {
1
+ declare const EfirmaFields: (props: {
16
2
  value?: {
17
3
  certificateFile: File | null;
18
4
  keyFile: File | null;
@@ -35,4 +21,8 @@ export default function EfirmaFields(props: {
35
21
  disabled?: boolean;
36
22
  sx?: object;
37
23
  texts?: object;
38
- }): import("react").JSX.Element;
24
+ } & {
25
+ slots?: Record<string, import('react').ElementType>;
26
+ slotProps?: Record<string, object | ((partProps: object) => object)>;
27
+ }) => import("react").JSX.Element;
28
+ export default EfirmaFields;
@@ -59,3 +59,10 @@ export declare function clabeCheckDigitOf(clabe: string): string;
59
59
  * @returns {boolean}
60
60
  */
61
61
  export declare function isValidClabe(clabe: string | null | undefined): boolean;
62
+ /**
63
+ * ¿El código postal está bien escrito? 5 dígitos (los espacios no cuentan) que no empiezan con 00.
64
+ *
65
+ * @param {string|null|undefined} postalCode
66
+ * @returns {boolean}
67
+ */
68
+ export declare function isValidPostalCode(postalCode: string | null | undefined): boolean;
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * @param {{strict?: boolean}} [options] strict: también el dígito verificador (ver isValidRfc)
3
- * @returns {{name: string, message: {key: string}, test: (value: unknown) => boolean}}
3
+ * @returns {{name: string, message: {key: string, values: object, rule: string}, test: (value: unknown) => boolean}}
4
4
  */
5
5
  export declare function rfcRule({ strict }?: {
6
6
  strict?: boolean;
@@ -8,22 +8,38 @@ export declare function rfcRule({ strict }?: {
8
8
  name: string;
9
9
  message: {
10
10
  key: string;
11
+ values: object;
12
+ rule: string;
11
13
  };
12
14
  test: (value: unknown) => boolean;
13
15
  };
14
- /** @returns {{name: string, message: {key: string}, test: (value: unknown) => boolean}} */
16
+ /** @returns {{name: string, message: {key: string, values: object, rule: string}, test: (value: unknown) => boolean}} */
15
17
  export declare function curpRule(): {
16
18
  name: string;
17
19
  message: {
18
20
  key: string;
21
+ values: object;
22
+ rule: string;
19
23
  };
20
24
  test: (value: unknown) => boolean;
21
25
  };
22
- /** @returns {{name: string, message: {key: string}, test: (value: unknown) => boolean}} */
26
+ /** @returns {{name: string, message: {key: string, values: object, rule: string}, test: (value: unknown) => boolean}} */
23
27
  export declare function clabeRule(): {
24
28
  name: string;
25
29
  message: {
26
30
  key: string;
31
+ values: object;
32
+ rule: string;
33
+ };
34
+ test: (value: unknown) => boolean;
35
+ };
36
+ /** @returns {{name: string, message: {key: string, values: object, rule: string}, test: (value: unknown) => boolean}} */
37
+ export declare function postalCodeRule(): {
38
+ name: string;
39
+ message: {
40
+ key: string;
41
+ values: object;
42
+ rule: string;
27
43
  };
28
44
  test: (value: unknown) => boolean;
29
45
  };
@@ -1,5 +1,5 @@
1
- export { RFC_KIND, clabeCheckDigitOf, curpCheckDigitOf, isValidClabe, isValidCurp, isValidRfc, rfcCheckDigitOf, rfcKindOf, } from './mexico/mexicoIdentifiers.js';
2
- export { clabeRule, curpRule, rfcRule } from './mexico/mexicoRules.js';
1
+ export { RFC_KIND, clabeCheckDigitOf, curpCheckDigitOf, isValidClabe, isValidCurp, isValidPostalCode, isValidRfc, rfcCheckDigitOf, rfcKindOf, } from './mexico/mexicoIdentifiers.js';
2
+ export { clabeRule, curpRule, postalCodeRule, rfcRule } from './mexico/mexicoRules.js';
3
3
  export { CERTIFICATE_STATUS, certificateStatusOf, readCertificate } from './mexico/certificateReader.js';
4
4
  export { CFDI_VOUCHER_TYPE, readCfdi, readCfdiFile } from './mexico/cfdiReader.js';
5
5
  export { EFIRMA_KEY_PROBLEM, EfirmaKeyError, verifyEfirmaKey } from './mexico/efirmaKey.js';
@@ -1,7 +1,7 @@
1
- /**
2
- * @param {object} [props]
3
- * @param {object} [props.texts] los textos que cambian, con la forma de `common` en los textos del paquete
4
- */
5
- export default function InstallAppSetting({ texts, ...unknownProps }?: {
1
+ declare const InstallAppSetting: (props: {
6
2
  texts?: object;
7
- }): import("react").JSX.Element | null;
3
+ } & {
4
+ slots?: Record<string, import('react').ElementType>;
5
+ slotProps?: Record<string, object | ((partProps: object) => object)>;
6
+ }) => import("react").JSX.Element | null;
7
+ export default InstallAppSetting;
@@ -5,16 +5,13 @@
5
5
  * @returns {boolean}
6
6
  */
7
7
  export declare function variantHasInstructions(variant: string | null): boolean;
8
- /**
9
- * @param {object} props
10
- * @param {string|null} props.variant una de INSTALL_VARIANT (useInstallPrompt)
11
- * @param {boolean} props.open
12
- * @param {() => void} props.onClose
13
- * @param {object} [props.texts] los textos que cambian, con la forma de `common` en los textos del paquete
14
- */
15
- export default function InstallInstructionsDialog(props: {
8
+ declare const InstallInstructionsDialog: (props: {
16
9
  variant: string | null;
17
10
  open: boolean;
18
11
  onClose: () => void;
19
12
  texts?: object;
20
- }): import("react").JSX.Element | null;
13
+ } & {
14
+ slots?: Record<string, import('react').ElementType>;
15
+ slotProps?: Record<string, object | ((partProps: object) => object)>;
16
+ }) => import("react").JSX.Element | null;
17
+ export default InstallInstructionsDialog;
@@ -1,16 +1,11 @@
1
- /**
2
- * @param {object} [props]
3
- * @param {string} [props.message] ya traducido; por omisión el del paquete con el nombre de la app (appName de ToolkitProvider)
4
- * @param {(outcome: 'accepted'|'dismissed'|null) => void} [props.onInstallChoice] lo que contestó la persona al diálogo de
5
- * instalar del navegador (Chrome, Edge, Android)
6
- * @param {() => void} [props.onShowSteps] abrió los pasos para instalar (iPhone, iPad, Firefox de Android)
7
- * @param {() => void} [props.onDismiss] dijo «Ahora no» (o cerró los pasos): no se le vuelve a ofrecer en este navegador
8
- * @param {object} [props.texts] los textos que cambian, con la forma de `common` en los textos del paquete
9
- */
10
- export default function InstallPromptBanner(props?: {
1
+ declare const InstallPromptBanner: (props: {
11
2
  message?: string;
12
3
  onInstallChoice?: (outcome: 'accepted' | 'dismissed' | null) => void;
13
4
  onShowSteps?: () => void;
14
5
  onDismiss?: () => void;
15
6
  texts?: object;
16
- }): import("react").JSX.Element | null;
7
+ } & {
8
+ slots?: Record<string, import('react').ElementType>;
9
+ slotProps?: Record<string, object | ((partProps: object) => object)>;
10
+ }) => import("react").JSX.Element | null;
11
+ export default InstallPromptBanner;
@@ -13,6 +13,7 @@ export { default as FormProblemAlert } from './hookForm/FormProblemAlert.js';
13
13
  export { default as FormRepeatingFields } from './hookForm/FormRepeatingFields.js';
14
14
  export { default as FormTransferListField } from './hookForm/FormTransferListField.js';
15
15
  export { listTotalAtMostRule, listTotalOf, orderedInListRule, uniqueInListRule } from './forms/listRules.js';
16
+ export { percentRule, sameAsFieldRule } from './forms/fieldRules.js';
16
17
  export { default as FormSelectField } from './hookForm/FormSelectField.js';
17
18
  export { default as FormWizard } from './hookForm/FormWizard.js';
18
19
  export { default as FormTextField } from './hookForm/FormTextField.js';
@@ -1,24 +1,4 @@
1
- /**
2
- * @param {object} props
3
- * @param {string} [props.name]
4
- * @param {import('react').ReactNode} props.label ya traducida
5
- * @param {string|null|undefined} props.value el HTML guardado ('' sin texto)
6
- * @param {(html: string) => void} props.onChange recibe el HTML ('' si se borra todo)
7
- * @param {() => void} [props.onBlur]
8
- * @param {string} [props.placeholder] ya traducido: lo que se ve con el editor vacío
9
- * @param {string|{key: string, values?: object}} [props.error]
10
- * @param {string} [props.helperText] ya traducida
11
- * @param {number} [props.maxLength] el tope de caracteres (con su contador abajo)
12
- * @param {string[]} [props.features] los botones de la barra (RICH_TEXT_FEATURE); por omisión todos
13
- * @param {Array<object>} [props.extensions] extensiones de Tiptap del proyecto
14
- * @param {import('react').ReactNode} [props.toolbarActions] botones propios al final de la barra
15
- * @param {(editor: import('@tiptap/react').Editor) => void} [props.onEditorReady] el editor de Tiptap, al estar listo
16
- * @param {number} [props.minHeight] el alto mínimo del texto en px; por omisión 160
17
- * @param {boolean} [props.disabled]
18
- * @param {object} [props.sx]
19
- * @param {object} [props.texts] los textos que cambian, con la forma de `richText` en los textos del paquete
20
- */
21
- export default function RichTextEditor(props: {
1
+ declare const RichTextEditor: (props: {
22
2
  name?: string;
23
3
  label: import('react').ReactNode;
24
4
  value: string | null | undefined;
@@ -38,5 +18,10 @@ export default function RichTextEditor(props: {
38
18
  minHeight?: number;
39
19
  disabled?: boolean;
40
20
  sx?: object;
21
+ messages?: Record<string, string | object>;
41
22
  texts?: object;
42
- }): import("react").JSX.Element;
23
+ } & {
24
+ slots?: Record<string, import('react').ElementType>;
25
+ slotProps?: Record<string, object | ((partProps: object) => object)>;
26
+ }) => import("react").JSX.Element;
27
+ export default RichTextEditor;
@@ -1,13 +1,10 @@
1
- /**
2
- * @param {object} props
3
- * @param {string|null|undefined} props.value el HTML guardado
4
- * @param {string[]} [props.features] lo que se deja pasar (por omisión, lo de un editor completo)
5
- * @param {Array<object>} [props.extensions] las extensiones de Tiptap del proyecto (las mismas que tiene su editor)
6
- * @param {object} [props.sx]
7
- */
8
- export default function RichTextView(props: {
1
+ declare const RichTextView: (props: {
9
2
  value: string | null | undefined;
10
3
  features?: string[];
11
4
  extensions?: Array<object>;
12
5
  sx?: object;
13
- }): import("react").JSX.Element;
6
+ } & {
7
+ slots?: Record<string, import('react').ElementType>;
8
+ slotProps?: Record<string, object | ((partProps: object) => object)>;
9
+ }) => import("react").JSX.Element;
10
+ export default RichTextView;
@@ -12,14 +12,7 @@ export declare const ACCOUNT_EVENT_KIND: Readonly<{
12
12
  recoveryCodeUsed: "recoveryCodeUsed";
13
13
  sessionsClosed: "sessionsClosed";
14
14
  }>;
15
- /**
16
- * @param {object} props
17
- * @param {Array<{id: string, kind: string, occurredAt: string, device?: string|null, network?: string|null, description?: string}>|null} props.events
18
- * del más nuevo al más viejo; null mientras llegan
19
- * @param {string|null} [props.error] ya traducido si no se pudieron traer
20
- * @param {object} [props.texts] los textos que cambian, con la forma de `security` en los textos del paquete
21
- */
22
- export default function ActivityLog(props: {
15
+ declare const ActivityLog: (props: {
23
16
  events: Array<{
24
17
  id: string;
25
18
  kind: string;
@@ -30,4 +23,8 @@ export default function ActivityLog(props: {
30
23
  }> | null;
31
24
  error?: string | null;
32
25
  texts?: object;
33
- }): import("react").JSX.Element;
26
+ } & {
27
+ slots?: Record<string, import('react').ElementType>;
28
+ slotProps?: Record<string, object | ((partProps: object) => object)>;
29
+ }) => import("react").JSX.Element;
30
+ export default ActivityLog;
@@ -1,16 +1,11 @@
1
- /**
2
- * @param {object} props
3
- * @param {string[]|null} props.codes los códigos recién generados; sin códigos el diálogo está cerrado
4
- * @param {string} [props.account] la cuenta (normalmente el correo), para el archivo
5
- * @param {() => void} props.onClose solo se llama después de «Ya los guardé»
6
- * @param {(method: 'copy'|'download') => void} [props.onCodesSaved] la persona los copió o los descargó (para la bitácora de
7
- * seguridad)
8
- * @param {object} [props.texts] los textos que cambian, con la forma de `security` en los textos del paquete
9
- */
10
- export default function RecoveryCodesDialog(props: {
1
+ declare const RecoveryCodesDialog: (props: {
11
2
  codes: string[] | null;
12
3
  account?: string;
13
4
  onClose: () => void;
14
5
  onCodesSaved?: (method: 'copy' | 'download') => void;
15
6
  texts?: object;
16
- }): import("react").JSX.Element;
7
+ } & {
8
+ slots?: Record<string, import('react').ElementType>;
9
+ slotProps?: Record<string, object | ((partProps: object) => object)>;
10
+ }) => import("react").JSX.Element;
11
+ export default RecoveryCodesDialog;
@@ -1,13 +1,4 @@
1
- /**
2
- * @param {object} props
3
- * @param {Array<{id: string, browser?: string|null, platform?: string|null, isMobile?: boolean, startedAt: string, network?: string|null, isCurrent?: boolean}>|null} props.sessions
4
- * null mientras llegan
5
- * @param {string|null} [props.error] ya traducido (ApiError.message) si no se pudieron traer
6
- * @param {() => Promise<number>} props.onCloseOthers cierra las demás; regresa cuántas cerró
7
- * @param {() => void} [props.onClosed] p. ej. volver a pedir la lista
8
- * @param {object} [props.texts] los textos que cambian, con la forma de `security` en los textos del paquete
9
- */
10
- export default function SessionsCard(props: {
1
+ declare const SessionsCard: (props: {
11
2
  sessions: Array<{
12
3
  id: string;
13
4
  browser?: string | null;
@@ -21,4 +12,8 @@ export default function SessionsCard(props: {
21
12
  onCloseOthers: () => Promise<number>;
22
13
  onClosed?: () => void;
23
14
  texts?: object;
24
- }): import("react").JSX.Element;
15
+ } & {
16
+ slots?: Record<string, import('react').ElementType>;
17
+ slotProps?: Record<string, object | ((partProps: object) => object)>;
18
+ }) => import("react").JSX.Element;
19
+ export default SessionsCard;
@@ -1,3 +1,5 @@
1
- export { AuditTrailDialog, AuditTrailTable, EmptyState, FILTER_KINDS, FilterChips, GoToPage, SELECTION_PHONE_LAYOUT, ServerTable, ServerTableFilterDrawer, TableFilterContext, buildChipConfig, buildTableActors, detailColumn, facetColumn, isFilterActive, tableMachine, textColumn, toServerTableParams, useDebouncedFilter, useTableFilter, useTableState, } from './DataTable/index.js';
1
+ export { ACTIONS_COLUMN_FIELD, AuditTrailDialog, AuditTrailTable, DETAIL_COLUMN_FIELD, EmptyState, FILTER_KINDS, FilterChips, GoToPage, SELECTION_PHONE_LAYOUT, ServerTable, ServerTableFilterDrawer, StackedCell, TABLE_VIEW, TableCardsView, TableFilterContext, TableViewToggle, actionsColumn, buildChipConfig, buildTableActors, detailColumn, facetColumn, fixedColumnOffsetsOf, fixedFieldsOf, isFilterActive, stackedColumn, statusColumn, statusColumnWidthOf, tableMachine, textColumn, textWidthOf, toServerTableParams, useDebouncedFilter, useTableFilter, useTableState, useTableView, } from './DataTable/index.js';
2
2
  export type RowSelection = import('./DataTable/rowSelection.js').RowSelection;
3
+ export type StackedEntry = import('./DataTable/StackedCell.js').StackedEntry;
3
4
  /** @typedef {import('./DataTable/rowSelection.js').RowSelection} RowSelection */
5
+ /** @typedef {import('./DataTable/StackedCell.js').StackedEntry} StackedEntry */
@@ -1,6 +1,29 @@
1
+ /**
2
+ * El sx de la pantalla como lista, para ponerlo DESPUÉS del de la pieza sin mezclarlo dentro del mismo objeto.
3
+ *
4
+ * OJO, trampa pagada: `{...estiloDeLaPieza, ...sx}` reemplaza la llave entera cuando las dos traen la misma
5
+ * ('& .MuiDataGrid-cell': la pieza ponía display flex y la pantalla solo quería alinear arriba: se perdía el flex sin
6
+ * avisar). En una lista, MUI aplica cada elemento encima del anterior y se combinan regla por regla.
7
+ *
8
+ * sx={[{p: 2}, ...sxListOf(sx)]}
9
+ *
10
+ * @param {object|Function|Array<object|Function|boolean|null|undefined>|null|undefined} sx
11
+ * @returns {Array<object|Function|boolean|null|undefined>}
12
+ */
13
+ export declare function sxListOf(sx: object | Function | Array<object | Function | boolean | null | undefined> | null | undefined): Array<object | Function | boolean | null | undefined>;
14
+ /**
15
+ * Las props de una parte con las de slotProps encima: las de la pantalla ganan, menos className (se suman), style (se
16
+ * juntan) y sx (va después y se combina regla por regla).
17
+ *
18
+ * @param {object} partProps las que le pone Calcita
19
+ * @param {object|((partProps: object) => object)|undefined} extra las de slotProps (o una función que las da)
20
+ * @returns {object}
21
+ */
22
+ export declare function mergedSlotProps(partProps: object, extra: object | ((partProps: object) => object) | undefined): object;
1
23
  /**
2
24
  * Un componente con su lugar en el tema: theme.components[name].styleOverrides[parte con minúscula] se aplica después
3
- * del estilo de Calcita (ownSx) y gana.
25
+ * del estilo de Calcita (ownSx) y gana. La parte también se puede cambiar o recibir props de más con slots y slotProps
26
+ * de su pieza.
4
27
  *
5
28
  * @template {import('react').ElementType} C
6
29
  * @param {string} name el nombre de la pieza en el tema (CalcitaMetricCard)
@@ -10,11 +33,40 @@
10
33
  */
11
34
  export declare function piecePart<C extends import('react').ElementType>(name: string, slot: string, component?: C): import('react').ComponentType<any>;
12
35
  /**
13
- * Los props de la pieza con los defaultProps del tema del proyecto debajo: lo que llega en la pantalla gana.
36
+ * Los props de la pieza con los defaultProps del tema del proyecto debajo: lo que llega en la pantalla gana. Sin slots ni
37
+ * slotProps: esos son de sus partes (withPieceSlots).
38
+ *
39
+ * OJO: una pieza cuyo `slotProps` ya es de otra cosa (TextInput se lo pasa al TextField de MUI: input, htmlInput…) lo
40
+ * conserva con {ownSlotProps: true} y no se envuelve con withPieceSlots.
14
41
  *
15
42
  * @template {object} P
16
43
  * @param {P} props
17
44
  * @param {string} name el nombre de la pieza en el tema
45
+ * @param {{ownSlotProps?: boolean}} [options]
18
46
  * @returns {P}
19
47
  */
20
- export declare function usePieceProps<P extends object>(props: P, name: string): P;
48
+ export declare function usePieceProps<P extends object>(props: P, name: string, { ownSlotProps }?: {
49
+ ownSlotProps?: boolean;
50
+ }): P;
51
+ /**
52
+ * La pieza con slots y slotProps: lee los de la pantalla (y los de defaultProps del tema) y se los da a sus partes.
53
+ *
54
+ * OJO con el tipo: se toma del componente entero (Parameters) y no de un genérico de sus props: con las props opcionales
55
+ * (ColorSchemeToggle) TypeScript las deducía como `object` y se perdían.
56
+ *
57
+ * Una parte que también se exporta sola y se pinta DENTRO de su pieza madre con el mismo nombre (las tarjetas de
58
+ * TableCardsView dentro de ServerTable, las dos CalcitaServerTable) va con {sharedWithParent: true}: adentro usa los slots
59
+ * de la madre (sin eso los borraría con los suyos, vacíos), salvo que la pantalla le dé los suyos; sola, los suyos.
60
+ *
61
+ * @template {(props: any) => any} C
62
+ * @param {C} Content la pieza
63
+ * @param {string} name el nombre de la pieza en el tema
64
+ * @param {{sharedWithParent?: boolean}} [options]
65
+ * @returns {(props: NonNullable<Parameters<C>[0]> & {slots?: Record<string, import('react').ElementType>, slotProps?: Record<string, object|((partProps: object) => object)>}) => ReturnType<C>}
66
+ */
67
+ export declare function withPieceSlots<C extends (props: any) => any>(Content: C, name: string, { sharedWithParent }?: {
68
+ sharedWithParent?: boolean;
69
+ }): (props: NonNullable<Parameters<C>[0]> & {
70
+ slots?: Record<string, import('react').ElementType>;
71
+ slotProps?: Record<string, object | ((partProps: object) => object)>;
72
+ }) => ReturnType<C>;
@@ -8,6 +8,12 @@
8
8
  * tipos de archivo del proyecto para las descargas, además de Excel, CSV y PDF (downloads/fileTypes.js)
9
9
  * @param {(language: string) => void} [props.onLanguageChange] lo llama LanguageToggle; el proyecto cambia su idioma
10
10
  * @param {object} [props.texts] textos propios por idioma, con la forma de locales/ ({es: {table: {...}}})
11
+ * @param {(error: unknown) => unknown} [props.readValidationMessage] cómo leer los mensajes de validación de un sistema que ya
12
+ * existe (su propio setLocale de yup, su forma de error): regresa un texto, {key, values} o undefined para la lectura de
13
+ * siempre. Ej. ({msg, values}) de muchos sistemas con i18next ya se entiende solo; esto es para lo demás
14
+ * @param {(missing: {namespace: string, key: string, language: string}) => void} [props.onMissingText] avisa cada texto que
15
+ * no existe (la pantalla enseña la llave): para mandarlo a Sentry o tronar una prueba. Sin él, Calcita avisa en la
16
+ * consola una vez por idioma y llave
11
17
  * @param {(namespace: string, key: string, values?: object) => string|undefined} [props.translate] traductor del
12
18
  * proyecto (por ejemplo i18next); undefined deja el texto del paquete
13
19
  * @param {string} [props.timeZone] zona de las fechas (por omisión la del navegador)
@@ -23,7 +29,7 @@
23
29
  * tiene regla
24
30
  * @param {import('react').ReactNode} props.children
25
31
  */
26
- export declare const ToolkitProvider: ({ language, languages, onLanguageChange, texts, translate, timeZone, currency, hourCycle, appName, navigation, buildId, canAccess, fileTypes, children, ...unknownProps }: {
32
+ export declare const ToolkitProvider: ({ language, languages, onLanguageChange, onMissingText, readValidationMessage, texts, translate, timeZone, currency, hourCycle, appName, navigation, buildId, canAccess, fileTypes, children, ...unknownProps }: {
27
33
  language?: string;
28
34
  languages?: Array<{
29
35
  code: string;
@@ -38,6 +44,12 @@ export declare const ToolkitProvider: ({ language, languages, onLanguageChange,
38
44
  }>;
39
45
  onLanguageChange?: (language: string) => void;
40
46
  texts?: object;
47
+ readValidationMessage?: (error: unknown) => unknown;
48
+ onMissingText?: (missing: {
49
+ namespace: string;
50
+ key: string;
51
+ language: string;
52
+ }) => void;
41
53
  translate?: (namespace: string, key: string, values?: object) => string | undefined;
42
54
  timeZone?: string;
43
55
  currency?: string;
@@ -2,12 +2,14 @@
2
2
  * La navegación del navegador, con o sin prefijo.
3
3
  *
4
4
  * @param {{basePath?: string}} [options] basePath: donde vive la app detrás de un proxy ('/portal'); sin él, la raíz
5
- * @returns {{useNavigate: () => (destination: string|number) => void, useLocation: () => {pathname: string, search: string, key: string}, Link: import('react').ElementType}}
5
+ * @returns {{useNavigate: () => (destination: string|number, options?: {replace?: boolean}) => void, useLocation: () => {pathname: string, search: string, key: string}, Link: import('react').ElementType}}
6
6
  */
7
7
  export declare function createBrowserNavigation({ basePath }?: {
8
8
  basePath?: string;
9
9
  }): {
10
- useNavigate: () => (destination: string | number) => void;
10
+ useNavigate: () => (destination: string | number, options?: {
11
+ replace?: boolean;
12
+ }) => void;
11
13
  useLocation: () => {
12
14
  pathname: string;
13
15
  search: string;
@@ -17,7 +19,9 @@ export declare function createBrowserNavigation({ basePath }?: {
17
19
  };
18
20
  /** La de omisión: sin prefijo. */
19
21
  export declare const browserNavigation: {
20
- useNavigate: () => (destination: string | number) => void;
22
+ useNavigate: () => (destination: string | number, options?: {
23
+ replace?: boolean;
24
+ }) => void;
21
25
  useLocation: () => {
22
26
  pathname: string;
23
27
  search: string;
@@ -0,0 +1,6 @@
1
+ /**
2
+ * @param {Array<Record<string, Record<string, object>>>} textFiles los textos de cada módulo, por idioma
3
+ * @returns {Record<string, Record<string, object>>} todos los textos, por idioma y namespace
4
+ * @throws {Error} si dos módulos definen el mismo texto
5
+ */
6
+ export declare function combineTexts(textFiles: Array<Record<string, Record<string, object>>>): Record<string, Record<string, object>>;
@@ -1,8 +1,10 @@
1
1
  /**
2
- * @returns {{useNavigate: () => (destination: string|number) => void, useLocation: () => {pathname: string, search: string, key: string}, Link: import('react').ElementType}}
2
+ * @returns {{useNavigate: () => (destination: string|number, options?: {replace?: boolean}) => void, useLocation: () => {pathname: string, search: string, key: string}, Link: import('react').ElementType}}
3
3
  */
4
4
  export declare function createHashNavigation(): {
5
- useNavigate: () => (destination: string | number) => void;
5
+ useNavigate: () => (destination: string | number, options?: {
6
+ replace?: boolean;
7
+ }) => void;
6
8
  useLocation: () => {
7
9
  pathname: string;
8
10
  search: string;
@@ -41,3 +41,38 @@ export declare function hashLocationOf(hash: string): {
41
41
  * @returns {string}
42
42
  */
43
43
  export declare function hashHrefOf(destination: string): string;
44
+ /**
45
+ * Si un clic en un enlace es el normal: el botón principal, sin Cmd/Ctrl/Shift/Alt y sin que nadie lo haya detenido.
46
+ * Solo ese se hace por dentro (cambiar de pantalla, reemplazar el historial); con Cmd/Ctrl+clic, Shift+clic o el botón de en
47
+ * medio el navegador hace lo suyo (otra pestaña, otra ventana), como con cualquier liga.
48
+ *
49
+ * @param {{button?: number, metaKey?: boolean, ctrlKey?: boolean, shiftKey?: boolean, altKey?: boolean, defaultPrevented?: boolean}} event
50
+ * @param {string} [target] el target del enlace: con _blank tampoco se hace por dentro
51
+ * @returns {boolean}
52
+ */
53
+ export declare function isPlainLeftClick(event: {
54
+ button?: number;
55
+ metaKey?: boolean;
56
+ ctrlKey?: boolean;
57
+ shiftKey?: boolean;
58
+ altKey?: boolean;
59
+ defaultPrevented?: boolean;
60
+ }, target?: string): boolean;
61
+ /**
62
+ * El prefijo con que el servidor sirvió la página, leído al abrirla de su <base href> ('/ventas'), o null si la página no
63
+ * trae <base>. Así UNA compilación sirve detrás de cualquier prefijo que decida el servidor (Laravel lo pone con
64
+ * config('app.url'), un proxy con su ruta): el prefijo no se fija al compilar. Para el basename del router y para
65
+ * createBrowserNavigation({basePath}).
66
+ *
67
+ * <base href="{{ rtrim(config('app.url'), '/') . '/' }}"> (en la vista que sirve la app)
68
+ * createBrowserRouter(routes, {basename: documentBasePath() || '/'})
69
+ *
70
+ * OJO: con <base>, todo lo relativo de la página (imágenes, ligas «#sección») se lee desde ese prefijo.
71
+ *
72
+ * @param {{baseURI?: string, querySelector?: (selector: string) => unknown}} [currentDocument] por omisión el de la página
73
+ * @returns {string|null} '' en la raíz; null sin <base> (o sin navegador)
74
+ */
75
+ export declare function documentBasePath(currentDocument?: {
76
+ baseURI?: string;
77
+ querySelector?: (selector: string) => unknown;
78
+ }): string | null;
@@ -0,0 +1,27 @@
1
+ /**
2
+ * Le pone sus partes a una ruta: las que pide con dos puntos y, lo que sobre, la consulta. Los nulos y los vacíos no se
3
+ * escriben.
4
+ *
5
+ * @param {string} route la ruta con sus :partes ('/orders/:orderId', ':page?' es opcional)
6
+ * @param {Record<string, unknown>} [params]
7
+ * @param {string} [name] cómo se llama, para decirlo si algo falta
8
+ * @returns {string}
9
+ * @throws {Error} si la ruta pide una parte obligatoria que no viene
10
+ */
11
+ export declare function fillPath(route: string, params?: Record<string, unknown>, name?: string): string;
12
+ /**
13
+ * El índice de las direcciones que publica cada módulo.
14
+ *
15
+ * @param {Record<string, Record<string, unknown>>} modules lo que da import.meta.glob(..., {eager: true}): archivo → sus exports
16
+ * @param {object} [options]
17
+ * @param {string} [options.exportName] el export con las direcciones en cada archivo (por omisión 'paths'; para el API, 'uris')
18
+ * @param {RegExp} [options.modulePattern] saca del nombre del archivo el camino del módulo (el primer grupo, con /)
19
+ * @returns {{pathOf: (name: string, params?: Record<string, unknown>) => string, allPaths: () => object}}
20
+ */
21
+ export declare function createPathIndex(modules: Record<string, Record<string, unknown>>, { exportName, modulePattern }?: {
22
+ exportName?: string;
23
+ modulePattern?: RegExp;
24
+ }): {
25
+ pathOf: (name: string, params?: Record<string, unknown>) => string;
26
+ allPaths: () => object;
27
+ };