@stackcraftmx/calcita 0.32.2 → 0.47.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.
- package/README.md +263 -2
- package/cli/packageVersions.js +12 -3
- package/cli/projectFiles.js +5 -2
- package/cli/templates/module/__Name__Page.test.jsx.tpl +24 -0
- package/cli/templates/project/README.md.tpl +14 -1
- package/cli/templates/project/src/app/appRouter.jsx.tpl +5 -2
- package/cli/templates/project/src/core/accountConnector.js.tpl +4 -2
- package/cli/templates/project/src/modules/auth/SignInPage.test.jsx.tpl +20 -0
- package/cli/templates/project/src/modules/home/HomePage.test.jsx.tpl +16 -0
- package/cli/templates/project/src/testing/browserGaps.js.tpl +70 -0
- package/cli/templates/project/src/testing/openScreen.jsx.tpl +58 -0
- package/cli/templates/project/src/testing/setup.js.tpl +25 -0
- package/cli/templates/project/vite.config.js.tpl +12 -0
- package/dist/DataTable/GoToPage.js +69 -13
- package/dist/DataTable/GoToPage.js.map +1 -1
- package/dist/DataTable/ServerTable.js +2 -0
- package/dist/DataTable/ServerTable.js.map +1 -1
- package/dist/DataTable/ServerTableFilterDrawer.js +52 -0
- package/dist/DataTable/ServerTableFilterDrawer.js.map +1 -0
- package/dist/DataTable/filterContext.js.map +1 -1
- package/dist/DataTable/goToPageOptions.js +17 -0
- package/dist/DataTable/goToPageOptions.js.map +1 -0
- package/dist/date-pickers.js +28 -2
- package/dist/date-pickers.js.map +1 -1
- package/dist/datePickers/DateInput.js +15 -34
- package/dist/datePickers/DateInput.js.map +1 -1
- package/dist/datePickers/DateTimeInput.js +75 -0
- package/dist/datePickers/DateTimeInput.js.map +1 -0
- package/dist/datePickers/FormDateTimeField.js +12 -0
- package/dist/datePickers/FormDateTimeField.js.map +1 -0
- package/dist/datePickers/FormMonthField.js +12 -0
- package/dist/datePickers/FormMonthField.js.map +1 -0
- package/dist/datePickers/FormTimeField.js +12 -0
- package/dist/datePickers/FormTimeField.js.map +1 -0
- package/dist/datePickers/MonthInput.js +58 -0
- package/dist/datePickers/MonthInput.js.map +1 -0
- package/dist/datePickers/PickerFrame.js +27 -0
- package/dist/datePickers/PickerFrame.js.map +1 -0
- package/dist/datePickers/TimeInput.js +55 -0
- package/dist/datePickers/TimeInput.js.map +1 -0
- package/dist/datePickers/dateTimeRules.js +24 -0
- package/dist/datePickers/dateTimeRules.js.map +1 -0
- package/dist/datePickers/pickerValues.js +106 -0
- package/dist/datePickers/pickerValues.js.map +1 -0
- package/dist/datePickers/useCurrentMinute.js +28 -0
- package/dist/datePickers/useCurrentMinute.js.map +1 -0
- package/dist/datePickers/usePickerField.js +22 -0
- package/dist/datePickers/usePickerField.js.map +1 -0
- package/dist/dictionaries/dictionaries.js +3 -1
- package/dist/dictionaries/dictionaries.js.map +1 -1
- package/dist/forms/FormAttachmentsField.js +12 -0
- package/dist/forms/FormAttachmentsField.js.map +1 -0
- package/dist/forms/FormCheckboxGroupField.js +12 -0
- package/dist/forms/FormCheckboxGroupField.js.map +1 -0
- package/dist/forms/FormFileField.js +12 -0
- package/dist/forms/FormFileField.js.map +1 -0
- package/dist/forms/FormFileUploadField.js +12 -0
- package/dist/forms/FormFileUploadField.js.map +1 -0
- package/dist/forms/FormImageField.js +12 -0
- package/dist/forms/FormImageField.js.map +1 -0
- package/dist/forms/FormMaskedField.js +12 -0
- package/dist/forms/FormMaskedField.js.map +1 -0
- package/dist/forms/FormRepeatingFields.js +54 -0
- package/dist/forms/FormRepeatingFields.js.map +1 -0
- package/dist/forms/FormTransferListField.js +12 -0
- package/dist/forms/FormTransferListField.js.map +1 -0
- package/dist/forms/applyServerProblem.js +10 -3
- package/dist/forms/applyServerProblem.js.map +1 -1
- package/dist/forms/listRules.js +111 -0
- package/dist/forms/listRules.js.map +1 -0
- package/dist/forms/serverProblemFields.js +17 -0
- package/dist/forms/serverProblemFields.js.map +1 -1
- package/dist/forms.js +51 -29
- package/dist/forms.js.map +1 -1
- package/dist/hookForm/FormAttachmentsField.js +12 -0
- package/dist/hookForm/FormAttachmentsField.js.map +1 -0
- package/dist/hookForm/FormCheckboxGroupField.js +12 -0
- package/dist/hookForm/FormCheckboxGroupField.js.map +1 -0
- package/dist/hookForm/FormFileField.js +12 -0
- package/dist/hookForm/FormFileField.js.map +1 -0
- package/dist/hookForm/FormFileUploadField.js +12 -0
- package/dist/hookForm/FormFileUploadField.js.map +1 -0
- package/dist/hookForm/FormImageField.js +12 -0
- package/dist/hookForm/FormImageField.js.map +1 -0
- package/dist/hookForm/FormMaskedField.js +12 -0
- package/dist/hookForm/FormMaskedField.js.map +1 -0
- package/dist/hookForm/FormRepeatingFields.js +44 -0
- package/dist/hookForm/FormRepeatingFields.js.map +1 -0
- package/dist/hookForm/FormTransferListField.js +12 -0
- package/dist/hookForm/FormTransferListField.js.map +1 -0
- package/dist/hookForm/applyServerProblem.js +8 -3
- package/dist/hookForm/applyServerProblem.js.map +1 -1
- package/dist/index.js +188 -100
- package/dist/index.js.map +1 -1
- package/dist/inputs/CatalogInput.js +74 -7
- package/dist/inputs/CatalogInput.js.map +1 -1
- package/dist/inputs/CheckboxGroupInput.js +100 -0
- package/dist/inputs/CheckboxGroupInput.js.map +1 -0
- package/dist/inputs/MaskedInput.js +86 -0
- package/dist/inputs/MaskedInput.js.map +1 -0
- package/dist/inputs/NumberInput.js +12 -1
- package/dist/inputs/NumberInput.js.map +1 -1
- package/dist/inputs/RepeatingFields.js +177 -0
- package/dist/inputs/RepeatingFields.js.map +1 -0
- package/dist/inputs/SelectInput.js +43 -5
- package/dist/inputs/SelectInput.js.map +1 -1
- package/dist/inputs/TransferListInput.js +215 -0
- package/dist/inputs/TransferListInput.js.map +1 -0
- package/dist/inputs/inputMasks.js +84 -0
- package/dist/inputs/inputMasks.js.map +1 -0
- package/dist/inputs/selectAllState.js +20 -0
- package/dist/inputs/selectAllState.js.map +1 -0
- package/dist/inputs/useRowKeys.js +26 -0
- package/dist/inputs/useRowKeys.js.map +1 -0
- package/dist/legal/CookieNotice.js +79 -0
- package/dist/legal/CookieNotice.js.map +1 -0
- package/dist/legal/TermsAcceptanceDialog.js +129 -0
- package/dist/legal/TermsAcceptanceDialog.js.map +1 -0
- package/dist/legal/consentStorage.js +18 -0
- package/dist/legal/consentStorage.js.map +1 -0
- package/dist/legal/useCookieConsent.js +17 -0
- package/dist/legal/useCookieConsent.js.map +1 -0
- package/dist/locales/en.js +233 -1
- package/dist/locales/en.js.map +1 -1
- package/dist/locales/es.js +233 -1
- package/dist/locales/es.js.map +1 -1
- package/dist/mexico/CfdiSummary.js +81 -0
- package/dist/mexico/CfdiSummary.js.map +1 -0
- package/dist/mexico/EfirmaFields.js +167 -0
- package/dist/mexico/EfirmaFields.js.map +1 -0
- package/dist/mexico/certificateReader.js +79 -0
- package/dist/mexico/certificateReader.js.map +1 -0
- package/dist/mexico/cfdiReader.js +81 -0
- package/dist/mexico/cfdiReader.js.map +1 -0
- package/dist/mexico/derReader.js +81 -0
- package/dist/mexico/derReader.js.map +1 -0
- package/dist/mexico/efirmaKey.js +51 -0
- package/dist/mexico/efirmaKey.js.map +1 -0
- package/dist/mexico/mexicoIdentifiers.js +86 -0
- package/dist/mexico/mexicoIdentifiers.js.map +1 -0
- package/dist/mexico/mexicoRules.js +16 -0
- package/dist/mexico/mexicoRules.js.map +1 -0
- package/dist/mexico.js +32 -0
- package/dist/mexico.js.map +1 -0
- package/dist/react-hook-form.js +40 -17
- package/dist/react-hook-form.js.map +1 -1
- package/dist/rich-text.js +19 -0
- package/dist/rich-text.js.map +1 -0
- package/dist/richText/FormRichTextField.js +12 -0
- package/dist/richText/FormRichTextField.js.map +1 -0
- package/dist/richText/RichTextEditor.js +108 -0
- package/dist/richText/RichTextEditor.js.map +1 -0
- package/dist/richText/RichTextLinkPopover.js +57 -0
- package/dist/richText/RichTextLinkPopover.js.map +1 -0
- package/dist/richText/RichTextToolbar.js +189 -0
- package/dist/richText/RichTextToolbar.js.map +1 -0
- package/dist/richText/RichTextView.js +26 -0
- package/dist/richText/RichTextView.js.map +1 -0
- package/dist/richText/richTextContentSx.js +42 -0
- package/dist/richText/richTextContentSx.js.map +1 -0
- package/dist/richText/richTextExtensions.js +44 -0
- package/dist/richText/richTextExtensions.js.map +1 -0
- package/dist/richText/richTextRules.js +46 -0
- package/dist/richText/richTextRules.js.map +1 -0
- package/dist/table.js +2 -0
- package/dist/table.js.map +1 -1
- package/dist/theme/components/glassComponents.js +27 -0
- package/dist/theme/components/glassComponents.js.map +1 -1
- package/dist/theme/components/minimalComponents.js +12 -0
- package/dist/theme/components/minimalComponents.js.map +1 -1
- package/dist/types/DataTable/ServerTableFilterDrawer.d.ts +21 -0
- package/dist/types/DataTable/filterContext.d.ts +2 -1
- package/dist/types/DataTable/goToPageOptions.d.ts +15 -0
- package/dist/types/DataTable/index.d.ts +1 -0
- package/dist/types/date-pickers.d.ts +10 -1
- package/dist/types/datePickers/DateInput.d.ts +6 -4
- package/dist/types/datePickers/DateTimeInput.d.ts +50 -0
- package/dist/types/datePickers/FormDateTimeField.d.ts +7 -0
- package/dist/types/datePickers/FormMonthField.d.ts +7 -0
- package/dist/types/datePickers/FormTimeField.d.ts +7 -0
- package/dist/types/datePickers/MonthInput.d.ts +39 -0
- package/dist/types/datePickers/PickerFrame.d.ts +22 -0
- package/dist/types/datePickers/TimeInput.d.ts +38 -0
- package/dist/types/datePickers/dateTimeRules.d.ts +31 -0
- package/dist/types/datePickers/pickerValues.d.ts +114 -0
- package/dist/types/datePickers/useCurrentMinute.d.ts +5 -0
- package/dist/types/datePickers/usePickerField.d.ts +24 -0
- package/dist/types/dictionaries/dictionaries.d.ts +6 -3
- package/dist/types/forms/FormAttachmentsField.d.ts +7 -0
- package/dist/types/forms/FormCheckboxGroupField.d.ts +7 -0
- package/dist/types/forms/FormFileField.d.ts +7 -0
- package/dist/types/forms/FormFileUploadField.d.ts +7 -0
- package/dist/types/forms/FormImageField.d.ts +7 -0
- package/dist/types/forms/FormMaskedField.d.ts +7 -0
- package/dist/types/forms/FormRepeatingFields.d.ts +25 -0
- package/dist/types/forms/FormTransferListField.d.ts +7 -0
- package/dist/types/forms/index.d.ts +10 -1
- package/dist/types/forms/listRules.d.ts +48 -0
- package/dist/types/forms/serverProblemFields.d.ts +13 -0
- package/dist/types/forms.d.ts +1 -1
- package/dist/types/hookForm/FormAttachmentsField.d.ts +8 -0
- package/dist/types/hookForm/FormCheckboxGroupField.d.ts +8 -0
- package/dist/types/hookForm/FormFileField.d.ts +8 -0
- package/dist/types/hookForm/FormFileUploadField.d.ts +8 -0
- package/dist/types/hookForm/FormImageField.d.ts +8 -0
- package/dist/types/hookForm/FormMaskedField.d.ts +9 -0
- package/dist/types/hookForm/FormRepeatingFields.d.ts +27 -0
- package/dist/types/hookForm/FormTransferListField.d.ts +8 -0
- package/dist/types/index.d.ts +25 -3
- package/dist/types/inputs/CatalogInput.d.ts +7 -1
- package/dist/types/inputs/CheckboxGroupInput.d.ts +39 -0
- package/dist/types/inputs/MaskedInput.d.ts +35 -0
- package/dist/types/inputs/RepeatingFields.d.ts +52 -0
- package/dist/types/inputs/SelectInput.d.ts +6 -1
- package/dist/types/inputs/TransferListInput.d.ts +43 -0
- package/dist/types/inputs/inputMasks.d.ts +52 -0
- package/dist/types/inputs/selectAllState.d.ts +11 -0
- package/dist/types/inputs/useRowKeys.d.ts +11 -0
- package/dist/types/legal/CookieNotice.d.ts +30 -0
- package/dist/types/legal/TermsAcceptanceDialog.d.ts +32 -0
- package/dist/types/legal/consentStorage.d.ts +16 -0
- package/dist/types/legal/useCookieConsent.d.ts +13 -0
- package/dist/types/locales/en.d.ts +232 -0
- package/dist/types/locales/es.d.ts +232 -0
- package/dist/types/mexico/CfdiSummary.d.ts +17 -0
- package/dist/types/mexico/EfirmaFields.d.ts +38 -0
- package/dist/types/mexico/certificateReader.d.ts +37 -0
- package/dist/types/mexico/cfdiReader.d.ts +95 -0
- package/dist/types/mexico/derReader.d.ts +54 -0
- package/dist/types/mexico/efirmaKey.d.ts +26 -0
- package/dist/types/mexico/mexicoIdentifiers.d.ts +61 -0
- package/dist/types/mexico/mexicoRules.d.ts +29 -0
- package/dist/types/mexico.d.ts +11 -0
- package/dist/types/react-hook-form.d.ts +10 -1
- package/dist/types/rich-text.d.ts +5 -0
- package/dist/types/richText/FormRichTextField.d.ts +7 -0
- package/dist/types/richText/RichTextEditor.d.ts +42 -0
- package/dist/types/richText/RichTextLinkPopover.d.ts +17 -0
- package/dist/types/richText/RichTextToolbar.d.ts +15 -0
- package/dist/types/richText/RichTextView.d.ts +13 -0
- package/dist/types/richText/richTextContentSx.d.ts +7 -0
- package/dist/types/richText/richTextExtensions.d.ts +15 -0
- package/dist/types/richText/richTextRules.d.ts +41 -0
- package/dist/types/table.d.ts +1 -1
- package/dist/types/ui/actions/ActionsMenu.d.ts +18 -3
- package/dist/types/ui/actions/CopyButton.d.ts +7 -4
- package/dist/types/ui/actions/tableRowText.d.ts +6 -0
- package/dist/types/ui/cards/RecordCard.d.ts +65 -0
- package/dist/types/ui/cards/RecordCardSkeleton.d.ts +17 -0
- package/dist/types/ui/countdown/Countdown.d.ts +31 -0
- package/dist/types/ui/countdown/countdownParts.d.ts +39 -0
- package/dist/types/ui/countdown/useCountdown.d.ts +14 -0
- package/dist/types/ui/documents/PdfViewerDialog.d.ts +21 -0
- package/dist/types/ui/filters/FilterDrawer.d.ts +34 -0
- package/dist/types/ui/filters/filterDrawerFields.d.ts +139 -0
- package/dist/types/ui/help/HelpButton.d.ts +15 -0
- package/dist/types/ui/help/HelpCarouselDialog.d.ts +35 -0
- package/dist/types/ui/help/useHelpCarousel.d.ts +21 -0
- package/dist/types/ui/index.d.ts +10 -0
- package/dist/types/ui/labels/IconBadge.d.ts +34 -0
- package/dist/types/ui/navigation/RouteTabs.d.ts +44 -0
- package/dist/types/ui/navigation/routeTabMatching.d.ts +27 -0
- package/dist/types/upload/AttachmentsInput.d.ts +62 -0
- package/dist/types/upload/FileChip.d.ts +18 -0
- package/dist/types/upload/FileDropzone.d.ts +3 -0
- package/dist/types/upload/FileInput.d.ts +48 -0
- package/dist/types/upload/FileUploadInput.d.ts +80 -0
- package/dist/types/upload/ImageInput.d.ts +53 -0
- package/dist/types/upload/TemplateDownloadButton.d.ts +39 -0
- package/dist/types/upload/fileAppearance.d.ts +8 -0
- package/dist/types/upload/fileRules.d.ts +38 -0
- package/dist/types/upload/transferProgress.d.ts +18 -0
- package/dist/types/upload/uploadMachine.d.ts +6 -2
- package/dist/types/upload/uploadWithProgress.d.ts +6 -2
- package/dist/types/upload/useFilePicker.d.ts +39 -0
- package/dist/ui/actions/ActionsMenu.js +98 -15
- package/dist/ui/actions/ActionsMenu.js.map +1 -1
- package/dist/ui/actions/CopyButton.js +31 -11
- package/dist/ui/actions/CopyButton.js.map +1 -1
- package/dist/ui/actions/tableRowText.js +7 -0
- package/dist/ui/actions/tableRowText.js.map +1 -0
- package/dist/ui/cards/RecordCard.js +145 -0
- package/dist/ui/cards/RecordCard.js.map +1 -0
- package/dist/ui/cards/RecordCardSkeleton.js +33 -0
- package/dist/ui/cards/RecordCardSkeleton.js.map +1 -0
- package/dist/ui/countdown/Countdown.js +38 -0
- package/dist/ui/countdown/Countdown.js.map +1 -0
- package/dist/ui/countdown/countdownParts.js +34 -0
- package/dist/ui/countdown/countdownParts.js.map +1 -0
- package/dist/ui/countdown/useCountdown.js +35 -0
- package/dist/ui/countdown/useCountdown.js.map +1 -0
- package/dist/ui/documents/PdfViewerDialog.js +81 -0
- package/dist/ui/documents/PdfViewerDialog.js.map +1 -0
- package/dist/ui/filters/FilterDrawer.js +211 -0
- package/dist/ui/filters/FilterDrawer.js.map +1 -0
- package/dist/ui/filters/filterDrawerFields.js +119 -0
- package/dist/ui/filters/filterDrawerFields.js.map +1 -0
- package/dist/ui/help/HelpButton.js +17 -0
- package/dist/ui/help/HelpButton.js.map +1 -0
- package/dist/ui/help/HelpCarouselDialog.js +154 -0
- package/dist/ui/help/HelpCarouselDialog.js.map +1 -0
- package/dist/ui/help/useHelpCarousel.js +25 -0
- package/dist/ui/help/useHelpCarousel.js.map +1 -0
- package/dist/ui/labels/IconBadge.js +82 -0
- package/dist/ui/labels/IconBadge.js.map +1 -0
- package/dist/ui/navigation/RouteTabs.js +75 -0
- package/dist/ui/navigation/RouteTabs.js.map +1 -0
- package/dist/ui/navigation/routeTabMatching.js +23 -0
- package/dist/ui/navigation/routeTabMatching.js.map +1 -0
- package/dist/upload/AttachmentsInput.js +127 -0
- package/dist/upload/AttachmentsInput.js.map +1 -0
- package/dist/upload/FileChip.js +27 -0
- package/dist/upload/FileChip.js.map +1 -0
- package/dist/upload/FileDropzone.js +19 -84
- package/dist/upload/FileDropzone.js.map +1 -1
- package/dist/upload/FileInput.js +112 -0
- package/dist/upload/FileInput.js.map +1 -0
- package/dist/upload/FileUploadInput.js +285 -0
- package/dist/upload/FileUploadInput.js.map +1 -0
- package/dist/upload/ImageInput.js +125 -0
- package/dist/upload/ImageInput.js.map +1 -0
- package/dist/upload/TemplateDownloadButton.js +67 -0
- package/dist/upload/TemplateDownloadButton.js.map +1 -0
- package/dist/upload/fileAppearance.js +21 -0
- package/dist/upload/fileAppearance.js.map +1 -0
- package/dist/upload/fileRules.js +27 -1
- package/dist/upload/fileRules.js.map +1 -1
- package/dist/upload/transferProgress.js +23 -0
- package/dist/upload/transferProgress.js.map +1 -0
- package/dist/upload/uploadMachine.js +8 -8
- package/dist/upload/uploadMachine.js.map +1 -1
- package/dist/upload/uploadWithProgress.js +1 -1
- package/dist/upload/uploadWithProgress.js.map +1 -1
- package/dist/upload/useFilePicker.js +101 -0
- package/dist/upload/useFilePicker.js.map +1 -0
- package/package.json +44 -1
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @param {{name: string, control?: object} & Omit<Parameters<typeof import('../upload/FileInput.js').default>[0], 'name'|'value'|'onChange'|'onBlur'|'error'>} props las del campo de la casa, sin
|
|
3
|
+
* value / onChange / onBlur / error; control: el de useForm, si la pantalla no usa FormProvider
|
|
4
|
+
*/
|
|
5
|
+
export default function FormFileField({ name, control, ...inputProps }: {
|
|
6
|
+
name: string;
|
|
7
|
+
control?: object;
|
|
8
|
+
} & Omit<Parameters<typeof import('../upload/FileInput.js').default>[0], 'name' | 'value' | 'onChange' | 'onBlur' | 'error'>): import("react").JSX.Element;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @param {{name: string, control?: object} & Omit<Parameters<typeof import('../upload/FileUploadInput.js').default>[0], 'name'|'value'|'onChange'|'onBlur'|'error'>} props las del campo de la casa, sin
|
|
3
|
+
* value / onChange / onBlur / error; control: el de useForm, si la pantalla no usa FormProvider
|
|
4
|
+
*/
|
|
5
|
+
export default function FormFileUploadField({ name, control, ...inputProps }: {
|
|
6
|
+
name: string;
|
|
7
|
+
control?: object;
|
|
8
|
+
} & Omit<Parameters<typeof import('../upload/FileUploadInput.js').default>[0], 'name' | 'value' | 'onChange' | 'onBlur' | 'error'>): import("react").JSX.Element;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @param {{name: string, control?: object} & Omit<Parameters<typeof import('../upload/ImageInput.js').default>[0], 'name'|'value'|'onChange'|'onBlur'|'error'>} props las del campo de la casa, sin
|
|
3
|
+
* value / onChange / onBlur / error; control: el de useForm, si la pantalla no usa FormProvider
|
|
4
|
+
*/
|
|
5
|
+
export default function FormImageField({ name, control, ...inputProps }: {
|
|
6
|
+
name: string;
|
|
7
|
+
control?: object;
|
|
8
|
+
} & Omit<Parameters<typeof import('../upload/ImageInput.js').default>[0], 'name' | 'value' | 'onChange' | 'onBlur' | 'error'>): import("react").JSX.Element;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @param {{name: string, control?: object} & Omit<Parameters<typeof import('../inputs/MaskedInput.js').default>[0], 'name'|'value'|'onChange'|'onBlur'|'error'>} props
|
|
3
|
+
* las de MaskedInput (mask, label, helperText, placeholder…), sin value / onChange / onBlur / error; control: el de useForm,
|
|
4
|
+
* si la pantalla no usa FormProvider
|
|
5
|
+
*/
|
|
6
|
+
export default function FormMaskedField({ name, control, ...inputProps }: {
|
|
7
|
+
name: string;
|
|
8
|
+
control?: object;
|
|
9
|
+
} & Omit<Parameters<typeof import('../inputs/MaskedInput.js').default>[0], 'name' | 'value' | 'onChange' | 'onBlur' | 'error'>): import("react").JSX.Element;
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @param {{
|
|
3
|
+
* name: string,
|
|
4
|
+
* control?: object,
|
|
5
|
+
* emptyRow: object,
|
|
6
|
+
* renderRow: (row: {index: number, row: any, nameOf: (field: string) => string}) => import('react').ReactNode,
|
|
7
|
+
* removeBlockedReason?: (row: any, index: number) => string|null,
|
|
8
|
+
* confirmRemove?: (row: any, index: number) => boolean,
|
|
9
|
+
* onAdd?: (index: number) => void,
|
|
10
|
+
* onRemove?: (row: any, index: number) => void,
|
|
11
|
+
* } & Omit<Parameters<typeof import('../inputs/RepeatingFields.js').default>[0], 'rowKeys'|'renderRow'|'onAdd'|'onRemove'|'onClear'|'removeBlockedReasonOf'|'confirmRemoveOf'|'rowHasErrorOf'|'error'>} props
|
|
12
|
+
* control: el de useForm, si la pantalla no usa FormProvider
|
|
13
|
+
*/
|
|
14
|
+
export default function FormRepeatingFields({ name, control, emptyRow, renderRow, removeBlockedReason, confirmRemove, onAdd, onRemove, ...viewProps }: {
|
|
15
|
+
name: string;
|
|
16
|
+
control?: object;
|
|
17
|
+
emptyRow: object;
|
|
18
|
+
renderRow: (row: {
|
|
19
|
+
index: number;
|
|
20
|
+
row: any;
|
|
21
|
+
nameOf: (field: string) => string;
|
|
22
|
+
}) => import('react').ReactNode;
|
|
23
|
+
removeBlockedReason?: (row: any, index: number) => string | null;
|
|
24
|
+
confirmRemove?: (row: any, index: number) => boolean;
|
|
25
|
+
onAdd?: (index: number) => void;
|
|
26
|
+
onRemove?: (row: any, index: number) => void;
|
|
27
|
+
} & Omit<Parameters<typeof import('../inputs/RepeatingFields.js').default>[0], 'rowKeys' | 'renderRow' | 'onAdd' | 'onRemove' | 'onClear' | 'removeBlockedReasonOf' | 'confirmRemoveOf' | 'rowHasErrorOf' | 'error'>): import("react").JSX.Element;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @param {{name: string, control?: object} & Omit<Parameters<typeof import('../inputs/TransferListInput.js').default>[0], 'name'|'value'|'onChange'|'onBlur'|'error'>} props las del campo de la casa, sin
|
|
3
|
+
* value / onChange / onBlur / error; control: el de useForm, si la pantalla no usa FormProvider
|
|
4
|
+
*/
|
|
5
|
+
export default function FormTransferListField({ name, control, ...inputProps }: {
|
|
6
|
+
name: string;
|
|
7
|
+
control?: object;
|
|
8
|
+
} & Omit<Parameters<typeof import('../inputs/TransferListInput.js').default>[0], 'name' | 'value' | 'onChange' | 'onBlur' | 'error'>): import("react").JSX.Element;
|
package/dist/types/index.d.ts
CHANGED
|
@@ -22,7 +22,7 @@ export { AuthLayout } from './appShell/AuthLayout.js';
|
|
|
22
22
|
export { default as BarActions } from './appShell/BarActions.js';
|
|
23
23
|
export { default as BarActionButton } from './appShell/BarActionButton.js';
|
|
24
24
|
export { default as BarSearch } from './appShell/BarSearch.js';
|
|
25
|
-
export { default as ActionsMenu } from './ui/actions/ActionsMenu.js';
|
|
25
|
+
export { ACTIONS_MENU_ROW, default as ActionsMenu } from './ui/actions/ActionsMenu.js';
|
|
26
26
|
export { SELECTION_PHONE_LAYOUT, default as SelectionActions, selectionFloatsOnPhone } from './ui/actions/SelectionActions.js';
|
|
27
27
|
export { BAR_ACTIONS_PLACEMENT, useBarActionsPlacement, useCloseBarActionsMenu } from './appShell/barActionsSlot.js';
|
|
28
28
|
export { BAR_CAPSULE_HEIGHT_PIXELS, default as BarCapsule } from './appShell/BarCapsule.js';
|
|
@@ -44,22 +44,44 @@ export { composePermissionGroups, groupStateOf, withPermission, withPermissionGr
|
|
|
44
44
|
export { DEFAULT_PASSWORD_POLICY, PASSWORD_RULE, isPasswordAccepted, passwordChecksOf } from './auth/passwordRules.js';
|
|
45
45
|
export { default as PasswordChecklist } from './auth/PasswordChecklist.js';
|
|
46
46
|
export { ERROR_PAGE_KIND, default as ErrorPage } from './ui/layout/ErrorPage.js';
|
|
47
|
+
export { default as AttachmentsInput } from './upload/AttachmentsInput.js';
|
|
47
48
|
export { default as FileDropzone } from './upload/FileDropzone.js';
|
|
48
|
-
export {
|
|
49
|
+
export { default as FileInput } from './upload/FileInput.js';
|
|
50
|
+
export { FILE_UPLOAD_STATUS, default as FileUploadInput } from './upload/FileUploadInput.js';
|
|
51
|
+
export { IMAGE_SHAPE, default as ImageInput } from './upload/ImageInput.js';
|
|
52
|
+
export { default as TemplateDownloadButton } from './upload/TemplateDownloadButton.js';
|
|
53
|
+
export { fileAppearanceOf } from './upload/fileAppearance.js';
|
|
54
|
+
export { FILE_ACCEPT_PRESETS, FILE_REJECTION, matchesAccept, parseFileSize, resolveAccept, screenFiles } from './upload/fileRules.js';
|
|
55
|
+
export { transferProgressOf } from './upload/transferProgress.js';
|
|
56
|
+
export { useFilePicker } from './upload/useFilePicker.js';
|
|
49
57
|
export { buildUploadActors, uploadMachine } from './upload/uploadMachine.js';
|
|
50
58
|
export { uploadWithProgress } from './upload/uploadWithProgress.js';
|
|
51
|
-
export { APP_BAR_HEIGHT_CSS_VARIABLE, BackButton, CHART_VIEW, CalendarHeatmap, CollapsibleSection, ColorSchemeToggle, ContentDialog, CopyButton, DateRangeFilter, DefinitionList, DetailHeader, DictionaryText, DocumentTitle, DownloadMenu, FONT_SIZE_LEVELS, FontSizeToggle, FullPageLoader, GlassLensFilter, GlassPanel, LANGUAGES, LanguageToggle, MetricCard, PageBreadcrumbs, PageHeader, PageHeading, ProfileHeader, TREND_DIRECTION, PeriodRangeSelector, QuickFilters, SCROLL_MARGIN_BELOW_APP_BAR, SEGMENTED_CONTROL_SX, ScrollableRow, SecretField, SectionCard, SegmentedControl, StatusChip, TableToggle, Tag, scrollableRow, useAppBarHeightPublisher, } from './ui/index.js';
|
|
59
|
+
export { APP_BAR_HEIGHT_CSS_VARIABLE, BackButton, COMPARISON_OPERATOR, FILTER_DRAWER_ANCHOR, FILTER_FIELD_KIND, FilterDrawer, activeDrawerFilterCountOf, comparisonOf, comparisonTextOf, filterDrawerChipsOf, filterDrawerDefaultsOf, filterDrawerKindsOf, filterKeysOf, CHART_VIEW, CalendarHeatmap, CollapsibleSection, ColorSchemeToggle, ContentDialog, CopyButton, DateRangeFilter, DefinitionList, DetailHeader, DictionaryText, DocumentTitle, DownloadMenu, FONT_SIZE_LEVELS, FontSizeToggle, FullPageLoader, GlassLensFilter, GlassPanel, HELP_CLOSE_REASON, HelpButton, HelpCarouselDialog, ICON_BADGE_CLASSES, ICON_BADGE_VARIANT, IconBadge, LANGUAGES, LanguageToggle, MetricCard, PageBreadcrumbs, PageHeader, PageHeading, ProfileHeader, ROUTE_TABS_MODE, RecordCard, RecordCardSkeleton, RouteTabs, TREND_DIRECTION, PeriodRangeSelector, QuickFilters, SCROLL_MARGIN_BELOW_APP_BAR, SEGMENTED_CONTROL_SX, ScrollableRow, SecretField, SectionCard, SegmentedControl, StatusChip, TableToggle, Tag, scrollableRow, tableRowTextOf, useActiveRouteTab, useAppBarHeightPublisher, useHelpCarousel, } from './ui/index.js';
|
|
52
60
|
export { default as CatalogInput } from './inputs/CatalogInput.js';
|
|
53
61
|
export { default as ColorInput } from './inputs/ColorInput.js';
|
|
54
62
|
export { default as FieldFrame } from './inputs/FieldFrame.js';
|
|
63
|
+
export { default as MaskedInput } from './inputs/MaskedInput.js';
|
|
64
|
+
export { INPUT_MASK, isMaskComplete, maskPatternOf, maskedTextOf, rawValueOf } from './inputs/inputMasks.js';
|
|
55
65
|
export { FORM_ROW_CLASS, FormRow, default as FormSection } from './inputs/FormSection.js';
|
|
66
|
+
export { default as CheckboxGroupInput } from './inputs/CheckboxGroupInput.js';
|
|
56
67
|
export { default as NumberInput } from './inputs/NumberInput.js';
|
|
68
|
+
export { default as TransferListInput } from './inputs/TransferListInput.js';
|
|
69
|
+
export { selectAllStateOf } from './inputs/selectAllState.js';
|
|
70
|
+
export { default as RepeatingFields } from './inputs/RepeatingFields.js';
|
|
71
|
+
export { useRowKeys } from './inputs/useRowKeys.js';
|
|
57
72
|
export { default as SelectInput } from './inputs/SelectInput.js';
|
|
58
73
|
export { default as WizardLayout } from './inputs/WizardLayout.js';
|
|
59
74
|
export { default as TextInput } from './inputs/TextInput.js';
|
|
60
75
|
export { HEX_COLOR, MIN_CONTRAST, contrastOnWhite, readableVariantOf } from './inputs/colorContrast.js';
|
|
61
76
|
export { cleanNumberText, completeDecimals, groupThousands } from './inputs/numberText.js';
|
|
62
77
|
export { translateValidationMessage } from './forms/validationMessages.js';
|
|
78
|
+
export { default as Countdown } from './ui/countdown/Countdown.js';
|
|
79
|
+
export { countdownClockOf, countdownPartsOf } from './ui/countdown/countdownParts.js';
|
|
80
|
+
export { useCountdown } from './ui/countdown/useCountdown.js';
|
|
81
|
+
export { default as PdfViewerDialog } from './ui/documents/PdfViewerDialog.js';
|
|
82
|
+
export { default as CookieNotice } from './legal/CookieNotice.js';
|
|
83
|
+
export { default as TermsAcceptanceDialog } from './legal/TermsAcceptanceDialog.js';
|
|
84
|
+
export { DEFAULT_COOKIE_CONSENT_KEY, useCookieConsent } from './legal/useCookieConsent.js';
|
|
63
85
|
export { dictionaryEntryOf, labelOf, lookup, shortLabelOf } from './dictionaries/dictionaries.js';
|
|
64
86
|
export { dayOfPlainDate, formatCurrency, formatDate, formatDateTime, formatFileSize, formatList, formatMonthName, formatMonthShortName, formatNumber, formatPercent, formatTime, formatWeekdayShortName, formattersOf, } from './formatting.js';
|
|
65
87
|
export { useFormatters } from './toolkit/useFormatters.js';
|
|
@@ -15,9 +15,12 @@
|
|
|
15
15
|
* @param {boolean} [props.disabled]
|
|
16
16
|
* @param {import('react').Ref<HTMLInputElement>} [props.inputRef]
|
|
17
17
|
* @param {boolean} [props.multiple] elegir varias claves
|
|
18
|
+
* @param {boolean} [props.selectAll] con multiple: «Elegir todos» (o los que coinciden con lo buscado) arriba de la lista
|
|
19
|
+
* @param {boolean} [props.checkboxes] con multiple: una casilla en cada opción
|
|
20
|
+
* @param {number} [props.limitTags] con multiple: cuántos chips se ven sin foco; los demás como «+3 más»
|
|
18
21
|
* @param {object} [props.texts] los textos que cambian, con la forma de `common` en los textos del paquete
|
|
19
22
|
*/
|
|
20
|
-
export default function CatalogInput({ name, label, value, onChange, onBlur, options, formatLabel, error, helperText, loading, disabled, inputRef, placeholder, multiple, texts, ...unknownProps }: {
|
|
23
|
+
export default function CatalogInput({ name, label, value, onChange, onBlur, options, formatLabel, error, helperText, loading, disabled, inputRef, placeholder, multiple, selectAll, checkboxes, limitTags, texts, ...unknownProps }: {
|
|
21
24
|
name?: string;
|
|
22
25
|
label: string;
|
|
23
26
|
value: string | string[] | null | undefined;
|
|
@@ -41,5 +44,8 @@ export default function CatalogInput({ name, label, value, onChange, onBlur, opt
|
|
|
41
44
|
disabled?: boolean;
|
|
42
45
|
inputRef?: import('react').Ref<HTMLInputElement>;
|
|
43
46
|
multiple?: boolean;
|
|
47
|
+
selectAll?: boolean;
|
|
48
|
+
checkboxes?: boolean;
|
|
49
|
+
limitTags?: number;
|
|
44
50
|
texts?: object;
|
|
45
51
|
}): import("react").JSX.Element;
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @param {object} props
|
|
3
|
+
* @param {string} [props.name]
|
|
4
|
+
* @param {import('react').ReactNode} props.label ya traducida
|
|
5
|
+
* @param {Array<string|number>|null|undefined} props.value las marcadas ([] = ninguna)
|
|
6
|
+
* @param {(values: Array<string|number>) => void} props.onChange la lista nueva, en el orden de las opciones
|
|
7
|
+
* @param {() => void} [props.onBlur]
|
|
8
|
+
* @param {Array<{value: string|number, label: string, description?: string, disabled?: boolean}>} props.options
|
|
9
|
+
* @param {boolean} [props.row] en renglón en lugar de una debajo de otra
|
|
10
|
+
* @param {boolean} [props.selectAll] «Elegir todos» arriba
|
|
11
|
+
* @param {string|{key: string, values?: object}} [props.error]
|
|
12
|
+
* @param {string} [props.helperText] ya traducida
|
|
13
|
+
* @param {boolean} [props.disabled]
|
|
14
|
+
* @param {object} [props.sx]
|
|
15
|
+
* @param {object} [props.texts] los textos que cambian, con la forma de `common` en los textos del paquete
|
|
16
|
+
*/
|
|
17
|
+
export default function CheckboxGroupInput(props: {
|
|
18
|
+
name?: string;
|
|
19
|
+
label: import('react').ReactNode;
|
|
20
|
+
value: Array<string | number> | null | undefined;
|
|
21
|
+
onChange: (values: Array<string | number>) => void;
|
|
22
|
+
onBlur?: () => void;
|
|
23
|
+
options: Array<{
|
|
24
|
+
value: string | number;
|
|
25
|
+
label: string;
|
|
26
|
+
description?: string;
|
|
27
|
+
disabled?: boolean;
|
|
28
|
+
}>;
|
|
29
|
+
row?: boolean;
|
|
30
|
+
selectAll?: boolean;
|
|
31
|
+
error?: string | {
|
|
32
|
+
key: string;
|
|
33
|
+
values?: object;
|
|
34
|
+
};
|
|
35
|
+
helperText?: string;
|
|
36
|
+
disabled?: boolean;
|
|
37
|
+
sx?: object;
|
|
38
|
+
texts?: object;
|
|
39
|
+
}): import("react").JSX.Element;
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @param {object} props las de TextInput (label, helperText, error, placeholder, disabled, slotProps…), y:
|
|
3
|
+
* @param {string} props.mask 'phone' | 'postalCode' | 'clabe' | 'card' | 'rfc' | 'curp' | 'uuid' (INPUT_MASK) o un patrón propio
|
|
4
|
+
* con 9 (dígito), A (letra), X (letra o dígito) y H (hexadecimal)
|
|
5
|
+
* @param {string|null|undefined} props.value el valor limpio, sin separadores
|
|
6
|
+
* @param {(value: string) => void} props.onChange recibe el valor limpio
|
|
7
|
+
* @param {string} props.label ya traducido
|
|
8
|
+
* @param {string} [props.name]
|
|
9
|
+
* @param {() => void} [props.onBlur]
|
|
10
|
+
* @param {string|{key: string, values?: object}} [props.error]
|
|
11
|
+
* @param {string} [props.helperText]
|
|
12
|
+
* @param {string} [props.placeholder] ya traducido; por omisión ninguno (un ejemplo con la forma ayuda: «555 123 4567»)
|
|
13
|
+
* @param {import('react').Ref<HTMLInputElement>} [props.inputRef]
|
|
14
|
+
* @param {boolean} [props.disabled]
|
|
15
|
+
* @param {object} [props.slotProps]
|
|
16
|
+
* @param {object} [props.texts]
|
|
17
|
+
*/
|
|
18
|
+
export default function MaskedInput({ mask, value, onChange, inputRef, slotProps, ...textInputProps }: {
|
|
19
|
+
mask: string;
|
|
20
|
+
value: string | null | undefined;
|
|
21
|
+
onChange: (value: string) => void;
|
|
22
|
+
label: string;
|
|
23
|
+
name?: string;
|
|
24
|
+
onBlur?: () => void;
|
|
25
|
+
error?: string | {
|
|
26
|
+
key: string;
|
|
27
|
+
values?: object;
|
|
28
|
+
};
|
|
29
|
+
helperText?: string;
|
|
30
|
+
placeholder?: string;
|
|
31
|
+
inputRef?: import('react').Ref<HTMLInputElement>;
|
|
32
|
+
disabled?: boolean;
|
|
33
|
+
slotProps?: object;
|
|
34
|
+
texts?: object;
|
|
35
|
+
}): import("react").JSX.Element;
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @param {object} props
|
|
3
|
+
* @param {import('react').ReactNode} [props.label] ya traducido: el título de la lista («Contactos»)
|
|
4
|
+
* @param {string[]} props.rowKeys una llave estable por renglón (no el índice: al quitar uno, los de abajo no deben
|
|
5
|
+
* confundirse con el que se fue)
|
|
6
|
+
* @param {(index: number) => import('react').ReactNode} props.renderRow los campos del renglón
|
|
7
|
+
* @param {(index: number) => string} [props.rowLabelOf] el título de cada renglón; por omisión «Renglón 1», «Renglón 2»…
|
|
8
|
+
* @param {(index: number) => import('react').ReactNode} [props.rowActionsOf] botones suyos en el título del renglón
|
|
9
|
+
* @param {number|Record<string, number>} [props.columns] cuántos campos lado a lado: 2 o {xs: 1, sm: 2, md: 3}
|
|
10
|
+
* @param {number} [props.minRows] cuántos renglones quedan siempre (por omisión 1); con 0 se puede quedar vacía
|
|
11
|
+
* @param {number|null} [props.maxRows] hasta cuántos; sin él, los que quiera
|
|
12
|
+
* @param {() => void} props.onAdd agrega un renglón vacío al final
|
|
13
|
+
* @param {(index: number) => void} props.onRemove quita ese renglón
|
|
14
|
+
* @param {(index: number) => void} props.onClear deja ese renglón vacío (cuando ya no se puede quitar por el mínimo)
|
|
15
|
+
* @param {(index: number) => string|null} [props.removeBlockedReasonOf] si ese renglón NO se puede quitar, el motivo ya
|
|
16
|
+
* traducido (sale en una ventana)
|
|
17
|
+
* @param {(index: number) => boolean} [props.confirmRemoveOf] true si hay que confirmar antes de quitarlo
|
|
18
|
+
* @param {(index: number) => boolean} [props.rowHasErrorOf] true si el renglón tiene un error (se marca en rojo)
|
|
19
|
+
* @param {string|{key: string, values?: object}} [props.error] el error de toda la lista (la suma no alcanza, faltan renglones)
|
|
20
|
+
* @param {import('react').ReactNode} [props.helperText] ya traducida
|
|
21
|
+
* @param {import('react').ReactNode} [props.footer] lo que va junto a «Agregar» (p. ej. «Suman $40,000 de $50,000»)
|
|
22
|
+
* @param {string} [props.addLabel] ya traducido; por omisión «Agregar»
|
|
23
|
+
* @param {boolean} [props.disabled]
|
|
24
|
+
* @param {object} [props.sx]
|
|
25
|
+
* @param {object} [props.texts] los textos que cambian, con la forma de `common` en los textos del paquete
|
|
26
|
+
*/
|
|
27
|
+
export default function RepeatingFields(props: {
|
|
28
|
+
label?: import('react').ReactNode;
|
|
29
|
+
rowKeys: string[];
|
|
30
|
+
renderRow: (index: number) => import('react').ReactNode;
|
|
31
|
+
rowLabelOf?: (index: number) => string;
|
|
32
|
+
rowActionsOf?: (index: number) => import('react').ReactNode;
|
|
33
|
+
columns?: number | Record<string, number>;
|
|
34
|
+
minRows?: number;
|
|
35
|
+
maxRows?: number | null;
|
|
36
|
+
onAdd: () => void;
|
|
37
|
+
onRemove: (index: number) => void;
|
|
38
|
+
onClear: (index: number) => void;
|
|
39
|
+
removeBlockedReasonOf?: (index: number) => string | null;
|
|
40
|
+
confirmRemoveOf?: (index: number) => boolean;
|
|
41
|
+
rowHasErrorOf?: (index: number) => boolean;
|
|
42
|
+
error?: string | {
|
|
43
|
+
key: string;
|
|
44
|
+
values?: object;
|
|
45
|
+
};
|
|
46
|
+
helperText?: import('react').ReactNode;
|
|
47
|
+
footer?: import('react').ReactNode;
|
|
48
|
+
addLabel?: string;
|
|
49
|
+
disabled?: boolean;
|
|
50
|
+
sx?: object;
|
|
51
|
+
texts?: object;
|
|
52
|
+
}): import("react").JSX.Element;
|
|
@@ -5,13 +5,15 @@
|
|
|
5
5
|
* @param {string|number|Array<string|number>|null|undefined} props.value '' = sin elegir; con multiple, la lista ([] = ninguna)
|
|
6
6
|
* @param {(value: any) => void} props.onChange recibe el valor elegido (con multiple, la lista), no el evento
|
|
7
7
|
* @param {() => void} [props.onBlur]
|
|
8
|
-
* @param {Array<{value: string|number, label: string, description?: string}>} props.options
|
|
8
|
+
* @param {Array<{value: string|number, label: string, description?: string, disabled?: boolean}>} props.options
|
|
9
9
|
* @param {string|{key: string, values?: object}} [props.error]
|
|
10
10
|
* @param {string} [props.helperText] ayuda fija; el error la reemplaza
|
|
11
11
|
* @param {string} [props.placeholder] texto de la opción vacía
|
|
12
12
|
* @param {boolean} [props.disabled]
|
|
13
13
|
* @param {import('react').Ref<HTMLInputElement>} [props.inputRef]
|
|
14
14
|
* @param {boolean} [props.multiple] elegir varias opciones
|
|
15
|
+
* @param {boolean} [props.selectAll] con multiple: «Elegir todos» arriba de la lista
|
|
16
|
+
* @param {boolean} [props.checkboxes] con multiple: una casilla en cada opción
|
|
15
17
|
* @param {object} [props.texts] los textos que cambian, con la forma de `common` en los textos del paquete
|
|
16
18
|
*/
|
|
17
19
|
export default function SelectInput(props: {
|
|
@@ -24,6 +26,7 @@ export default function SelectInput(props: {
|
|
|
24
26
|
value: string | number;
|
|
25
27
|
label: string;
|
|
26
28
|
description?: string;
|
|
29
|
+
disabled?: boolean;
|
|
27
30
|
}>;
|
|
28
31
|
error?: string | {
|
|
29
32
|
key: string;
|
|
@@ -34,5 +37,7 @@ export default function SelectInput(props: {
|
|
|
34
37
|
disabled?: boolean;
|
|
35
38
|
inputRef?: import('react').Ref<HTMLInputElement>;
|
|
36
39
|
multiple?: boolean;
|
|
40
|
+
selectAll?: boolean;
|
|
41
|
+
checkboxes?: boolean;
|
|
37
42
|
texts?: object;
|
|
38
43
|
}): import("react").JSX.Element;
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @param {object} props
|
|
3
|
+
* @param {string} [props.name]
|
|
4
|
+
* @param {import('react').ReactNode} [props.label] ya traducida
|
|
5
|
+
* @param {Array<string|number>|null|undefined} props.value los elegidos
|
|
6
|
+
* @param {(values: Array<string|number>) => void} props.onChange
|
|
7
|
+
* @param {() => void} [props.onBlur]
|
|
8
|
+
* @param {Array<{value: string|number, label: string, description?: string, disabled?: boolean}>} props.options todos
|
|
9
|
+
* @param {string} [props.availableTitle] ya traducido; por omisión «Disponibles»
|
|
10
|
+
* @param {string} [props.chosenTitle] ya traducido; por omisión «Elegidos»
|
|
11
|
+
* @param {boolean} [props.searchable] un buscador en cada columna (por omisión, con más de 8 opciones)
|
|
12
|
+
* @param {number} [props.listHeight] lo alto de cada columna, en px
|
|
13
|
+
* @param {string|{key: string, values?: object}} [props.error]
|
|
14
|
+
* @param {string} [props.helperText] ya traducida
|
|
15
|
+
* @param {boolean} [props.disabled]
|
|
16
|
+
* @param {object} [props.sx]
|
|
17
|
+
* @param {object} [props.texts] los textos que cambian, con la forma de `common` en los textos del paquete
|
|
18
|
+
*/
|
|
19
|
+
export default function TransferListInput(props: {
|
|
20
|
+
name?: string;
|
|
21
|
+
label?: import('react').ReactNode;
|
|
22
|
+
value: Array<string | number> | null | undefined;
|
|
23
|
+
onChange: (values: Array<string | number>) => void;
|
|
24
|
+
onBlur?: () => void;
|
|
25
|
+
options: Array<{
|
|
26
|
+
value: string | number;
|
|
27
|
+
label: string;
|
|
28
|
+
description?: string;
|
|
29
|
+
disabled?: boolean;
|
|
30
|
+
}>;
|
|
31
|
+
availableTitle?: string;
|
|
32
|
+
chosenTitle?: string;
|
|
33
|
+
searchable?: boolean;
|
|
34
|
+
listHeight?: number;
|
|
35
|
+
error?: string | {
|
|
36
|
+
key: string;
|
|
37
|
+
values?: object;
|
|
38
|
+
};
|
|
39
|
+
helperText?: string;
|
|
40
|
+
disabled?: boolean;
|
|
41
|
+
sx?: object;
|
|
42
|
+
texts?: object;
|
|
43
|
+
}): import("react").JSX.Element;
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
/** Los patrones de siempre, para no escribirlos en cada pantalla. Uno propio se pasa como texto. */
|
|
2
|
+
export declare const INPUT_MASK: Readonly<{
|
|
3
|
+
phone: "999 999 9999";
|
|
4
|
+
postalCode: "99999";
|
|
5
|
+
clabe: "999 999 99999999999 9";
|
|
6
|
+
card: "9999 9999 9999 9999";
|
|
7
|
+
rfc: "XXXXXXXXXXXXX";
|
|
8
|
+
curp: "XXXXXXXXXXXXXXXXXX";
|
|
9
|
+
uuid: "HHHHHHHH-HHHH-HHHH-HHHH-HHHHHHHHHHHH";
|
|
10
|
+
}>;
|
|
11
|
+
/**
|
|
12
|
+
* El patrón de una máscara: el nombre de una de INPUT_MASK o el patrón mismo.
|
|
13
|
+
*
|
|
14
|
+
* @param {string} mask 'phone' | '999-999' …
|
|
15
|
+
* @returns {string}
|
|
16
|
+
*/
|
|
17
|
+
export declare function maskPatternOf(mask: string): string;
|
|
18
|
+
/**
|
|
19
|
+
* El valor limpio de lo que se escribió (o se pegó): cada carácter va al lugar que sigue si cabe; lo que no, se ignora.
|
|
20
|
+
*
|
|
21
|
+
* @param {string} typedText lo que hay en el campo, con o sin separadores
|
|
22
|
+
* @param {string} pattern
|
|
23
|
+
* @returns {string} solo los dígitos o letras, en mayúsculas, hasta el largo del patrón
|
|
24
|
+
*/
|
|
25
|
+
export declare function rawValueOf(typedText: string, pattern: string): string;
|
|
26
|
+
/**
|
|
27
|
+
* El valor limpio con sus separadores, como se ve en el campo. Los separadores solo salen entre lo que ya se escribió (sin
|
|
28
|
+
* guiones de más al final).
|
|
29
|
+
*
|
|
30
|
+
* @param {string|null|undefined} rawValue
|
|
31
|
+
* @param {string} pattern
|
|
32
|
+
* @returns {string}
|
|
33
|
+
*/
|
|
34
|
+
export declare function maskedTextOf(rawValue: string | null | undefined, pattern: string): string;
|
|
35
|
+
/**
|
|
36
|
+
* Dónde queda el cursor después de poner los separadores: justo después del mismo número de dígitos o letras que tenía
|
|
37
|
+
* antes. Sin esto, escribir en medio de un teléfono mandaría el cursor al final.
|
|
38
|
+
*
|
|
39
|
+
* @param {string} typedText lo que había en el campo al escribir
|
|
40
|
+
* @param {number} caretPosition dónde estaba el cursor en typedText
|
|
41
|
+
* @param {string} pattern
|
|
42
|
+
* @returns {number} la posición en el texto ya con sus separadores
|
|
43
|
+
*/
|
|
44
|
+
export declare function caretPositionOf(typedText: string, caretPosition: number, pattern: string): number;
|
|
45
|
+
/**
|
|
46
|
+
* ¿Ya se llenaron todos los lugares?
|
|
47
|
+
*
|
|
48
|
+
* @param {string|null|undefined} rawValue
|
|
49
|
+
* @param {string} pattern
|
|
50
|
+
* @returns {boolean}
|
|
51
|
+
*/
|
|
52
|
+
export declare function isMaskComplete(rawValue: string | null | undefined, pattern: string): boolean;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @template T
|
|
3
|
+
* @param {T[]} selectedValues lo elegido hoy
|
|
4
|
+
* @param {T[]} candidateValues lo que abarca «todos» (sin las opciones apagadas)
|
|
5
|
+
* @returns {{allChosen: boolean, someChosen: boolean, toggled: () => T[]}} someChosen: algunos sí y otros no (casilla a medias)
|
|
6
|
+
*/
|
|
7
|
+
export declare function selectAllStateOf<T>(selectedValues: T[], candidateValues: T[]): {
|
|
8
|
+
allChosen: boolean;
|
|
9
|
+
someChosen: boolean;
|
|
10
|
+
toggled: () => T[];
|
|
11
|
+
};
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @param {number} rowCount cuántos renglones tiene la lista hoy
|
|
3
|
+
* @returns {{keys: string[], added: () => void, removed: (index: number) => void, renewed: (index: number) => void}}
|
|
4
|
+
* added / removed / renewed se llaman JUNTO con el cambio de la lista (agregar al final, quitar uno, limpiar uno)
|
|
5
|
+
*/
|
|
6
|
+
export declare function useRowKeys(rowCount: number): {
|
|
7
|
+
keys: string[];
|
|
8
|
+
added: () => void;
|
|
9
|
+
removed: (index: number) => void;
|
|
10
|
+
renewed: (index: number) => void;
|
|
11
|
+
};
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @param {object} props
|
|
3
|
+
* @param {string} [props.version] la del aviso; al cambiarla se vuelve a preguntar (por omisión '1')
|
|
4
|
+
* @param {string} [props.storageKey] dónde se recuerda en este navegador (por omisión 'calcita:cookieConsent')
|
|
5
|
+
* @param {import('react').ReactNode} [props.text] ya traducido; por omisión el del paquete
|
|
6
|
+
* @param {string} [props.policyHref] la dirección de la política (se abre en otra pestaña)
|
|
7
|
+
* @param {() => void} [props.onPolicyClick] en lugar de la dirección: la pantalla la abre a su manera
|
|
8
|
+
* @param {string} [props.policyLabel] ya traducido; por omisión «Política de cookies»
|
|
9
|
+
* @param {string} [props.acceptLabel] ya traducido; por omisión «Aceptar»
|
|
10
|
+
* @param {(acceptance: {version: string, acceptedAt: string}) => void} [props.onAccept] al aceptar (para registrarlo en su API)
|
|
11
|
+
* @param {import('react').ReactNode} [props.actions] botones suyos junto a «Aceptar» («Configurar»)
|
|
12
|
+
* @param {object} [props.sx]
|
|
13
|
+
* @param {object} [props.texts] los textos que cambian, con la forma de `common` en los textos del paquete
|
|
14
|
+
*/
|
|
15
|
+
export default function CookieNotice(props: {
|
|
16
|
+
version?: string;
|
|
17
|
+
storageKey?: string;
|
|
18
|
+
text?: import('react').ReactNode;
|
|
19
|
+
policyHref?: string;
|
|
20
|
+
onPolicyClick?: () => void;
|
|
21
|
+
policyLabel?: string;
|
|
22
|
+
acceptLabel?: string;
|
|
23
|
+
onAccept?: (acceptance: {
|
|
24
|
+
version: string;
|
|
25
|
+
acceptedAt: string;
|
|
26
|
+
}) => void;
|
|
27
|
+
actions?: import('react').ReactNode;
|
|
28
|
+
sx?: object;
|
|
29
|
+
texts?: object;
|
|
30
|
+
}): import("react").JSX.Element | null;
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @param {object} props
|
|
3
|
+
* @param {boolean} props.open
|
|
4
|
+
* @param {string} props.version la de los términos que se enseñan (la que recibe onAccept)
|
|
5
|
+
* @param {(acceptance: {version: string}) => void|Promise<void>} props.onAccept la pantalla lo registra en su API
|
|
6
|
+
* @param {() => void} props.onDecline «No acepto» (salir, por ejemplo)
|
|
7
|
+
* @param {string} [props.title] ya traducido; por omisión «Términos y condiciones»
|
|
8
|
+
* @param {import('react').ReactNode} [props.children] el texto de los términos
|
|
9
|
+
* @param {string} [props.pdfSrc] en lugar del texto: la dirección del PDF
|
|
10
|
+
* @param {boolean} [props.requireReading] pedir que se lea hasta el final antes de poder aceptar (por omisión, sí; con PDF no
|
|
11
|
+
* aplica)
|
|
12
|
+
* @param {string} [props.checkboxLabel] ya traducido; por omisión «He leído y acepto los términos»
|
|
13
|
+
* @param {string} [props.acceptLabel] ya traducido; por omisión «Acepto»
|
|
14
|
+
* @param {string} [props.declineLabel] ya traducido; por omisión «No acepto»
|
|
15
|
+
* @param {object} [props.texts] los textos que cambian, con la forma de `common` en los textos del paquete
|
|
16
|
+
*/
|
|
17
|
+
export default function TermsAcceptanceDialog(props: {
|
|
18
|
+
open: boolean;
|
|
19
|
+
version: string;
|
|
20
|
+
onAccept: (acceptance: {
|
|
21
|
+
version: string;
|
|
22
|
+
}) => void | Promise<void>;
|
|
23
|
+
onDecline: () => void;
|
|
24
|
+
title?: string;
|
|
25
|
+
children?: import('react').ReactNode;
|
|
26
|
+
pdfSrc?: string;
|
|
27
|
+
requireReading?: boolean;
|
|
28
|
+
checkboxLabel?: string;
|
|
29
|
+
acceptLabel?: string;
|
|
30
|
+
declineLabel?: string;
|
|
31
|
+
texts?: object;
|
|
32
|
+
}): import("react").JSX.Element;
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* La versión aceptada; null si no hay o no se puede leer.
|
|
3
|
+
*
|
|
4
|
+
* @param {string} storageKey
|
|
5
|
+
* @param {Storage} [storage] por omisión, el localStorage del navegador
|
|
6
|
+
* @returns {string|null}
|
|
7
|
+
*/
|
|
8
|
+
export declare function acceptedVersionOf(storageKey: string, storage?: Storage): string | null;
|
|
9
|
+
/**
|
|
10
|
+
* Anota la versión aceptada; si el navegador no deja, no pasa nada (se volverá a preguntar).
|
|
11
|
+
*
|
|
12
|
+
* @param {string} storageKey
|
|
13
|
+
* @param {string} version
|
|
14
|
+
* @param {Storage} [storage]
|
|
15
|
+
*/
|
|
16
|
+
export declare function rememberAcceptedVersion(storageKey: string, version: string, storage?: Storage): void;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/** Dónde se recuerda, si el proyecto no da su llave (con el nombre de su app, para no chocar con otra en el mismo dominio). */
|
|
2
|
+
export declare const DEFAULT_COOKIE_CONSENT_KEY = "calcita:cookieConsent";
|
|
3
|
+
/**
|
|
4
|
+
* @param {{version?: string, storageKey?: string}} [options] version: la del aviso (al cambiarla se vuelve a preguntar)
|
|
5
|
+
* @returns {{hasAccepted: boolean, accept: () => void}}
|
|
6
|
+
*/
|
|
7
|
+
export declare function useCookieConsent({ version, storageKey }?: {
|
|
8
|
+
version?: string;
|
|
9
|
+
storageKey?: string;
|
|
10
|
+
}): {
|
|
11
|
+
hasAccepted: boolean;
|
|
12
|
+
accept: () => void;
|
|
13
|
+
};
|