@kapiuara/ui 0.0.0-stage → 0.1.1
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/LICENSE +16 -0
- package/README.md +764 -2
- package/dist/components/data/KapiPagination.d.ts +36 -0
- package/dist/components/data/KapiPagination.js +102 -0
- package/dist/components/data/KapiTable.d.ts +245 -0
- package/dist/components/data/KapiTable.js +748 -0
- package/dist/components/data/KapiTableFilter.d.ts +48 -0
- package/dist/components/data/KapiTableFilter.js +81 -0
- package/dist/components/data/index.d.ts +10 -0
- package/dist/components/data/tableLogic.d.ts +197 -0
- package/dist/components/data/tableLogic.js +145 -0
- package/dist/components/data/tableResizeLogic.d.ts +28 -0
- package/dist/components/data/tableResizeLogic.js +20 -0
- package/dist/components/display/KapiAnnotation.d.ts +32 -0
- package/dist/components/display/KapiAnnotation.js +130 -0
- package/dist/components/display/KapiAvatar.d.ts +27 -0
- package/dist/components/display/KapiAvatar.js +43 -0
- package/dist/components/display/KapiAvatarGroup.d.ts +19 -0
- package/dist/components/display/KapiAvatarGroup.js +38 -0
- package/dist/components/display/KapiBadge.d.ts +21 -0
- package/dist/components/display/KapiBadge.js +28 -0
- package/dist/components/display/KapiComment.d.ts +27 -0
- package/dist/components/display/KapiComment.js +66 -0
- package/dist/components/display/KapiCommentComposer.d.ts +49 -0
- package/dist/components/display/KapiCommentComposer.js +76 -0
- package/dist/components/display/KapiDescriptionList.d.ts +19 -0
- package/dist/components/display/KapiDescriptionList.js +35 -0
- package/dist/components/display/KapiFileItem.d.ts +39 -0
- package/dist/components/display/KapiFileItem.js +74 -0
- package/dist/components/display/KapiFileViewer.d.ts +51 -0
- package/dist/components/display/KapiFileViewer.js +107 -0
- package/dist/components/display/KapiIconTile.d.ts +16 -0
- package/dist/components/display/KapiIconTile.js +29 -0
- package/dist/components/display/KapiStat.d.ts +24 -0
- package/dist/components/display/KapiStat.js +41 -0
- package/dist/components/display/KapiTag.d.ts +27 -0
- package/dist/components/display/KapiTag.js +44 -0
- package/dist/components/display/KapiTimeline.d.ts +15 -0
- package/dist/components/display/KapiTimeline.js +30 -0
- package/dist/components/display/annotationLogic.d.ts +26 -0
- package/dist/components/display/annotationLogic.js +17 -0
- package/dist/components/display/avatarGroupLogic.d.ts +14 -0
- package/dist/components/display/avatarGroupLogic.js +13 -0
- package/dist/components/display/avatarLogic.d.ts +5 -0
- package/dist/components/display/avatarLogic.js +9 -0
- package/dist/components/display/commentLogic.d.ts +18 -0
- package/dist/components/display/commentLogic.js +7 -0
- package/dist/components/display/fileItemLogic.d.ts +9 -0
- package/dist/components/display/fileItemLogic.js +12 -0
- package/dist/components/display/iconTileLogic.d.ts +13 -0
- package/dist/components/display/iconTileLogic.js +13 -0
- package/dist/components/display/index.d.ts +40 -0
- package/dist/components/display/statLogic.d.ts +10 -0
- package/dist/components/display/statLogic.js +10 -0
- package/dist/components/display/tagLogic.d.ts +11 -0
- package/dist/components/display/tagLogic.js +10 -0
- package/dist/components/display/timelineLogic.d.ts +5 -0
- package/dist/components/display/timelineLogic.js +4 -0
- package/dist/components/feedback/KapiAlert.d.ts +28 -0
- package/dist/components/feedback/KapiAlert.js +53 -0
- package/dist/components/feedback/KapiBulkBar.d.ts +30 -0
- package/dist/components/feedback/KapiBulkBar.js +34 -0
- package/dist/components/feedback/KapiCountdown.d.ts +26 -0
- package/dist/components/feedback/KapiCountdown.js +43 -0
- package/dist/components/feedback/KapiEmpty.d.ts +14 -0
- package/dist/components/feedback/KapiEmpty.js +31 -0
- package/dist/components/feedback/KapiFab.d.ts +34 -0
- package/dist/components/feedback/KapiFab.js +116 -0
- package/dist/components/feedback/KapiOfflineBanner.d.ts +25 -0
- package/dist/components/feedback/KapiOfflineBanner.js +40 -0
- package/dist/components/feedback/KapiProgress.d.ts +24 -0
- package/dist/components/feedback/KapiProgress.js +94 -0
- package/dist/components/feedback/KapiSkeleton.d.ts +12 -0
- package/dist/components/feedback/KapiSkeleton.js +16 -0
- package/dist/components/feedback/KapiToastContainer.d.ts +16 -0
- package/dist/components/feedback/KapiToastContainer.js +81 -0
- package/dist/components/feedback/KapiTour.d.ts +40 -0
- package/dist/components/feedback/KapiTour.js +157 -0
- package/dist/components/feedback/KapiUnsavedBar.d.ts +35 -0
- package/dist/components/feedback/KapiUnsavedBar.js +47 -0
- package/dist/components/feedback/bulkBarLogic.d.ts +2 -0
- package/dist/components/feedback/bulkBarLogic.js +7 -0
- package/dist/components/feedback/countdownLogic.d.ts +74 -0
- package/dist/components/feedback/countdownLogic.js +70 -0
- package/dist/components/feedback/fabLogic.d.ts +17 -0
- package/dist/components/feedback/fabLogic.js +10 -0
- package/dist/components/feedback/index.d.ts +33 -0
- package/dist/components/feedback/offlineBannerLogic.d.ts +10 -0
- package/dist/components/feedback/offlineBannerLogic.js +8 -0
- package/dist/components/feedback/progressLogic.d.ts +17 -0
- package/dist/components/feedback/progressLogic.js +16 -0
- package/dist/components/feedback/toastStore.d.ts +62 -0
- package/dist/components/feedback/toastStore.js +38 -0
- package/dist/components/feedback/tourLogic.d.ts +64 -0
- package/dist/components/feedback/tourLogic.js +31 -0
- package/dist/components/feedback/unsavedBarLogic.d.ts +2 -0
- package/dist/components/feedback/unsavedBarLogic.js +8 -0
- package/dist/components/inputs/KapiAutocomplete.d.ts +81 -0
- package/dist/components/inputs/KapiAutocomplete.js +205 -0
- package/dist/components/inputs/KapiButton.d.ts +23 -0
- package/dist/components/inputs/KapiButton.js +25 -0
- package/dist/components/inputs/KapiCalendar.d.ts +35 -0
- package/dist/components/inputs/KapiCalendar.js +60 -0
- package/dist/components/inputs/KapiCalendarGrid.d.ts +29 -0
- package/dist/components/inputs/KapiCalendarGrid.js +65 -0
- package/dist/components/inputs/KapiCheckCard.d.ts +28 -0
- package/dist/components/inputs/KapiCheckCard.js +41 -0
- package/dist/components/inputs/KapiCheckbox.d.ts +7 -0
- package/dist/components/inputs/KapiCheckbox.js +5 -0
- package/dist/components/inputs/KapiDatePicker.d.ts +46 -0
- package/dist/components/inputs/KapiDatePicker.js +189 -0
- package/dist/components/inputs/KapiDateRangePicker.d.ts +49 -0
- package/dist/components/inputs/KapiDateRangePicker.js +179 -0
- package/dist/components/inputs/KapiFacetedSearch.d.ts +45 -0
- package/dist/components/inputs/KapiFacetedSearch.js +188 -0
- package/dist/components/inputs/KapiField.d.ts +33 -0
- package/dist/components/inputs/KapiField.js +60 -0
- package/dist/components/inputs/KapiFileUpload.d.ts +58 -0
- package/dist/components/inputs/KapiFileUpload.js +134 -0
- package/dist/components/inputs/KapiIconButton.d.ts +13 -0
- package/dist/components/inputs/KapiIconButton.js +16 -0
- package/dist/components/inputs/KapiInput.d.ts +92 -0
- package/dist/components/inputs/KapiInput.js +123 -0
- package/dist/components/inputs/KapiInputGroup.d.ts +37 -0
- package/dist/components/inputs/KapiInputGroup.js +29 -0
- package/dist/components/inputs/KapiMaskedInput.d.ts +52 -0
- package/dist/components/inputs/KapiMaskedInput.js +78 -0
- package/dist/components/inputs/KapiNumberStepper.d.ts +44 -0
- package/dist/components/inputs/KapiNumberStepper.js +100 -0
- package/dist/components/inputs/KapiRadio.d.ts +7 -0
- package/dist/components/inputs/KapiRadio.js +5 -0
- package/dist/components/inputs/KapiRating.d.ts +55 -0
- package/dist/components/inputs/KapiRating.js +99 -0
- package/dist/components/inputs/KapiSegmented.d.ts +41 -0
- package/dist/components/inputs/KapiSegmented.js +83 -0
- package/dist/components/inputs/KapiSelect.d.ts +109 -0
- package/dist/components/inputs/KapiSelect.js +443 -0
- package/dist/components/inputs/KapiSlider.d.ts +42 -0
- package/dist/components/inputs/KapiSlider.js +70 -0
- package/dist/components/inputs/KapiSwitch.d.ts +13 -0
- package/dist/components/inputs/KapiSwitch.js +28 -0
- package/dist/components/inputs/KapiTagInput.d.ts +79 -0
- package/dist/components/inputs/KapiTagInput.js +115 -0
- package/dist/components/inputs/KapiTextarea.d.ts +32 -0
- package/dist/components/inputs/KapiTextarea.js +67 -0
- package/dist/components/inputs/asyncSelectLogic.d.ts +42 -0
- package/dist/components/inputs/asyncSelectLogic.js +46 -0
- package/dist/components/inputs/autocompleteLogic.d.ts +73 -0
- package/dist/components/inputs/autocompleteLogic.js +67 -0
- package/dist/components/inputs/checkControl.d.ts +20 -0
- package/dist/components/inputs/checkControl.js +31 -0
- package/dist/components/inputs/datePickerLogic.d.ts +92 -0
- package/dist/components/inputs/datePickerLogic.js +174 -0
- package/dist/components/inputs/dateRangeLogic.d.ts +31 -0
- package/dist/components/inputs/dateRangeLogic.js +44 -0
- package/dist/components/inputs/facetedSearchLogic.d.ts +69 -0
- package/dist/components/inputs/facetedSearchLogic.js +39 -0
- package/dist/components/inputs/fieldLogic.d.ts +67 -0
- package/dist/components/inputs/fieldLogic.js +35 -0
- package/dist/components/inputs/fileUploadLogic.d.ts +13 -0
- package/dist/components/inputs/fileUploadLogic.js +9 -0
- package/dist/components/inputs/index.d.ts +55 -0
- package/dist/components/inputs/inputGroupLogic.d.ts +22 -0
- package/dist/components/inputs/inputGroupLogic.js +9 -0
- package/dist/components/inputs/inputLogic.d.ts +25 -0
- package/dist/components/inputs/inputLogic.js +10 -0
- package/dist/components/inputs/maskLogic.d.ts +34 -0
- package/dist/components/inputs/maskLogic.js +57 -0
- package/dist/components/inputs/numberStepLogic.d.ts +14 -0
- package/dist/components/inputs/numberStepLogic.js +21 -0
- package/dist/components/inputs/ratingLogic.d.ts +9 -0
- package/dist/components/inputs/ratingLogic.js +22 -0
- package/dist/components/inputs/segmentedLogic.d.ts +6 -0
- package/dist/components/inputs/segmentedLogic.js +14 -0
- package/dist/components/inputs/selectLogic.d.ts +89 -0
- package/dist/components/inputs/selectLogic.js +82 -0
- package/dist/components/inputs/sliderLogic.d.ts +9 -0
- package/dist/components/inputs/sliderLogic.js +17 -0
- package/dist/components/inputs/tagInputLogic.d.ts +40 -0
- package/dist/components/inputs/tagInputLogic.js +40 -0
- package/dist/components/inputs/textareaLogic.d.ts +17 -0
- package/dist/components/inputs/textareaLogic.js +13 -0
- package/dist/components/inputs/useCalendarFocus.d.ts +13 -0
- package/dist/components/inputs/useCalendarFocus.js +25 -0
- package/dist/components/inputs/useDatePopSide.d.ts +15 -0
- package/dist/components/inputs/useDatePopSide.js +20 -0
- package/dist/components/labelsLogic.d.ts +6 -0
- package/dist/components/labelsLogic.js +11 -0
- package/dist/components/layout/KapiAccessCard.d.ts +40 -0
- package/dist/components/layout/KapiAccessCard.js +66 -0
- package/dist/components/layout/KapiAccountMenu.d.ts +61 -0
- package/dist/components/layout/KapiAccountMenu.js +212 -0
- package/dist/components/layout/KapiCard.d.ts +43 -0
- package/dist/components/layout/KapiCard.js +53 -0
- package/dist/components/layout/KapiCluster.d.ts +15 -0
- package/dist/components/layout/KapiCluster.js +21 -0
- package/dist/components/layout/KapiContextSlot.d.ts +45 -0
- package/dist/components/layout/KapiContextSlot.js +92 -0
- package/dist/components/layout/KapiDivider.d.ts +16 -0
- package/dist/components/layout/KapiDivider.js +41 -0
- package/dist/components/layout/KapiGrid.d.ts +19 -0
- package/dist/components/layout/KapiGrid.js +25 -0
- package/dist/components/layout/KapiNotificationBell.d.ts +75 -0
- package/dist/components/layout/KapiNotificationBell.js +196 -0
- package/dist/components/layout/KapiPageHeader.d.ts +28 -0
- package/dist/components/layout/KapiPageHeader.js +47 -0
- package/dist/components/layout/KapiPanelParts.d.ts +35 -0
- package/dist/components/layout/KapiPanelParts.js +63 -0
- package/dist/components/layout/KapiRail.d.ts +40 -0
- package/dist/components/layout/KapiRail.js +102 -0
- package/dist/components/layout/KapiScrollArea.d.ts +40 -0
- package/dist/components/layout/KapiScrollArea.js +49 -0
- package/dist/components/layout/KapiShell.d.ts +40 -0
- package/dist/components/layout/KapiShell.js +48 -0
- package/dist/components/layout/KapiStack.d.ts +11 -0
- package/dist/components/layout/KapiStack.js +19 -0
- package/dist/components/layout/accessCardLogic.d.ts +18 -0
- package/dist/components/layout/accessCardLogic.js +11 -0
- package/dist/components/layout/cardLogic.d.ts +9 -0
- package/dist/components/layout/cardLogic.js +11 -0
- package/dist/components/layout/index.d.ts +33 -0
- package/dist/components/layout/layoutPrimitives.d.ts +51 -0
- package/dist/components/layout/layoutPrimitives.js +58 -0
- package/dist/components/layout/notificationBellLogic.d.ts +20 -0
- package/dist/components/layout/notificationBellLogic.js +14 -0
- package/dist/components/layout/railLogic.d.ts +52 -0
- package/dist/components/layout/railLogic.js +16 -0
- package/dist/components/locale/KapiLocaleProvider.d.ts +29 -0
- package/dist/components/locale/KapiLocaleProvider.js +27 -0
- package/dist/components/locale/index.d.ts +5 -0
- package/dist/components/locale/labelRegistry.d.ts +110 -0
- package/dist/components/locale/linkLabels.d.ts +6 -0
- package/dist/components/locale/linkLabels.js +4 -0
- package/dist/components/navigation/CtxSlidingList.d.ts +11 -0
- package/dist/components/navigation/CtxSlidingList.js +24 -0
- package/dist/components/navigation/KapiAccordion.d.ts +24 -0
- package/dist/components/navigation/KapiAccordion.js +68 -0
- package/dist/components/navigation/KapiBreadcrumb.d.ts +23 -0
- package/dist/components/navigation/KapiBreadcrumb.js +32 -0
- package/dist/components/navigation/KapiCollapsiblePanel.d.ts +63 -0
- package/dist/components/navigation/KapiCollapsiblePanel.js +83 -0
- package/dist/components/navigation/KapiContextPanel.d.ts +117 -0
- package/dist/components/navigation/KapiContextPanel.js +265 -0
- package/dist/components/navigation/KapiFilterChips.d.ts +30 -0
- package/dist/components/navigation/KapiFilterChips.js +40 -0
- package/dist/components/navigation/KapiNavBadge.d.ts +26 -0
- package/dist/components/navigation/KapiNavBadge.js +33 -0
- package/dist/components/navigation/KapiPanelGroup.d.ts +69 -0
- package/dist/components/navigation/KapiPanelGroup.js +149 -0
- package/dist/components/navigation/KapiSteps.d.ts +43 -0
- package/dist/components/navigation/KapiSteps.js +63 -0
- package/dist/components/navigation/KapiTabs.d.ts +56 -0
- package/dist/components/navigation/KapiTabs.js +81 -0
- package/dist/components/navigation/KapiTree.d.ts +56 -0
- package/dist/components/navigation/KapiTree.js +157 -0
- package/dist/components/navigation/KapiWizard.d.ts +49 -0
- package/dist/components/navigation/KapiWizard.js +104 -0
- package/dist/components/navigation/MiniNavItem.d.ts +35 -0
- package/dist/components/navigation/MiniNavItem.js +57 -0
- package/dist/components/navigation/accordionLogic.d.ts +4 -0
- package/dist/components/navigation/accordionLogic.js +4 -0
- package/dist/components/navigation/activeItemLogic.d.ts +7 -0
- package/dist/components/navigation/activeItemLogic.js +4 -0
- package/dist/components/navigation/breadcrumbLogic.d.ts +8 -0
- package/dist/components/navigation/breadcrumbLogic.js +4 -0
- package/dist/components/navigation/contextPanelLogic.d.ts +27 -0
- package/dist/components/navigation/contextPanelLogic.js +11 -0
- package/dist/components/navigation/filterChipsLogic.d.ts +23 -0
- package/dist/components/navigation/filterChipsLogic.js +20 -0
- package/dist/components/navigation/index.d.ts +39 -0
- package/dist/components/navigation/navBadgeLogic.d.ts +26 -0
- package/dist/components/navigation/navBadgeLogic.js +16 -0
- package/dist/components/navigation/panelGroupLogic.d.ts +15 -0
- package/dist/components/navigation/panelGroupLogic.js +13 -0
- package/dist/components/navigation/panelMini.d.ts +13 -0
- package/dist/components/navigation/panelMini.js +9 -0
- package/dist/components/navigation/panelMiniLogic.d.ts +19 -0
- package/dist/components/navigation/panelMiniLogic.js +6 -0
- package/dist/components/navigation/stepsLogic.d.ts +25 -0
- package/dist/components/navigation/stepsLogic.js +10 -0
- package/dist/components/navigation/tabsLogic.d.ts +12 -0
- package/dist/components/navigation/tabsLogic.js +14 -0
- package/dist/components/navigation/treeLogic.d.ts +80 -0
- package/dist/components/navigation/treeLogic.js +91 -0
- package/dist/components/navigation/wizardLogic.d.ts +11 -0
- package/dist/components/navigation/wizardLogic.js +7 -0
- package/dist/components/overlays/KapiCanvasForm.d.ts +42 -0
- package/dist/components/overlays/KapiCanvasForm.js +60 -0
- package/dist/components/overlays/KapiCommandPalette.d.ts +58 -0
- package/dist/components/overlays/KapiCommandPalette.js +152 -0
- package/dist/components/overlays/KapiConfirm.d.ts +48 -0
- package/dist/components/overlays/KapiConfirm.js +94 -0
- package/dist/components/overlays/KapiContextMenu.d.ts +51 -0
- package/dist/components/overlays/KapiContextMenu.js +90 -0
- package/dist/components/overlays/KapiDialogHost.d.ts +23 -0
- package/dist/components/overlays/KapiDialogHost.js +129 -0
- package/dist/components/overlays/KapiDropdown.d.ts +30 -0
- package/dist/components/overlays/KapiDropdown.js +84 -0
- package/dist/components/overlays/KapiLoading.d.ts +14 -0
- package/dist/components/overlays/KapiLoading.js +43 -0
- package/dist/components/overlays/KapiMenuButton.d.ts +25 -0
- package/dist/components/overlays/KapiMenuButton.js +109 -0
- package/dist/components/overlays/KapiModal.d.ts +61 -0
- package/dist/components/overlays/KapiModal.js +106 -0
- package/dist/components/overlays/KapiOffcanvas.d.ts +96 -0
- package/dist/components/overlays/KapiOffcanvas.js +209 -0
- package/dist/components/overlays/KapiOffcanvasStack.d.ts +58 -0
- package/dist/components/overlays/KapiOffcanvasStack.js +84 -0
- package/dist/components/overlays/KapiPhotoView.d.ts +60 -0
- package/dist/components/overlays/KapiPhotoView.js +122 -0
- package/dist/components/overlays/KapiPopover.d.ts +46 -0
- package/dist/components/overlays/KapiPopover.js +68 -0
- package/dist/components/overlays/KapiShapeSheet.d.ts +34 -0
- package/dist/components/overlays/KapiShapeSheet.js +82 -0
- package/dist/components/overlays/KapiSplitModal.d.ts +41 -0
- package/dist/components/overlays/KapiSplitModal.js +125 -0
- package/dist/components/overlays/KapiTooltip.d.ts +38 -0
- package/dist/components/overlays/KapiTooltip.js +105 -0
- package/dist/components/overlays/canvasFormLogic.d.ts +18 -0
- package/dist/components/overlays/canvasFormLogic.js +16 -0
- package/dist/components/overlays/commandPaletteLogic.d.ts +29 -0
- package/dist/components/overlays/commandPaletteLogic.js +19 -0
- package/dist/components/overlays/dialogStore.d.ts +114 -0
- package/dist/components/overlays/dialogStore.js +76 -0
- package/dist/components/overlays/dialogUtils.d.ts +72 -0
- package/dist/components/overlays/dialogUtils.js +62 -0
- package/dist/components/overlays/exitPresenceLogic.d.ts +14 -0
- package/dist/components/overlays/exitPresenceLogic.js +5 -0
- package/dist/components/overlays/index.d.ts +38 -0
- package/dist/components/overlays/menuButtonLogic.d.ts +58 -0
- package/dist/components/overlays/menuButtonLogic.js +9 -0
- package/dist/components/overlays/menuKeyboardLogic.d.ts +25 -0
- package/dist/components/overlays/menuKeyboardLogic.js +30 -0
- package/dist/components/overlays/offcanvasCompanion.d.ts +16 -0
- package/dist/components/overlays/offcanvasCompanion.js +6 -0
- package/dist/components/overlays/offcanvasResize.d.ts +22 -0
- package/dist/components/overlays/offcanvasResize.js +10 -0
- package/dist/components/overlays/offcanvasSide.d.ts +30 -0
- package/dist/components/overlays/offcanvasSide.js +29 -0
- package/dist/components/overlays/offcanvasStack.d.ts +76 -0
- package/dist/components/overlays/offcanvasStack.js +72 -0
- package/dist/components/overlays/overlayPortal.d.ts +9 -0
- package/dist/components/overlays/overlayPortal.js +6 -0
- package/dist/components/overlays/popoverLogic.d.ts +94 -0
- package/dist/components/overlays/popoverLogic.js +47 -0
- package/dist/components/overlays/splitModalLayout.d.ts +8 -0
- package/dist/components/overlays/splitModalLayout.js +5 -0
- package/dist/components/overlays/useExitPresence.d.ts +14 -0
- package/dist/components/overlays/useExitPresence.js +34 -0
- package/dist/components/overlays/useNativeDialog.d.ts +30 -0
- package/dist/components/overlays/useNativeDialog.js +56 -0
- package/dist/components/rootProps.d.ts +17 -0
- package/dist/components/rootProps.js +4 -0
- package/dist/hooks/breakpointOpenLogic.d.ts +7 -0
- package/dist/hooks/breakpointOpenLogic.js +4 -0
- package/dist/hooks/dateFormat.d.ts +12 -0
- package/dist/hooks/dateFormat.js +15 -0
- package/dist/hooks/downloadLogic.d.ts +31 -0
- package/dist/hooks/downloadLogic.js +85 -0
- package/dist/hooks/focusLogic.d.ts +18 -0
- package/dist/hooks/focusLogic.js +17 -0
- package/dist/hooks/growOriginLogic.d.ts +22 -0
- package/dist/hooks/growOriginLogic.js +10 -0
- package/dist/hooks/hotkeyLogic.d.ts +22 -0
- package/dist/hooks/hotkeyLogic.js +32 -0
- package/dist/hooks/index.d.ts +49 -0
- package/dist/hooks/kapiRoot.d.ts +16 -0
- package/dist/hooks/kapiRoot.js +9 -0
- package/dist/hooks/onlineStatusLogic.d.ts +31 -0
- package/dist/hooks/onlineStatusLogic.js +28 -0
- package/dist/hooks/persistentStateLogic.d.ts +12 -0
- package/dist/hooks/persistentStateLogic.js +17 -0
- package/dist/hooks/rafThrottle.d.ts +33 -0
- package/dist/hooks/rafThrottle.js +33 -0
- package/dist/hooks/recentLogic.d.ts +9 -0
- package/dist/hooks/recentLogic.js +10 -0
- package/dist/hooks/reducedMotion.d.ts +13 -0
- package/dist/hooks/reducedMotion.js +5 -0
- package/dist/hooks/rightClick.d.ts +37 -0
- package/dist/hooks/rightClick.js +30 -0
- package/dist/hooks/scrollCollapseLogic.d.ts +12 -0
- package/dist/hooks/scrollCollapseLogic.js +4 -0
- package/dist/hooks/scrollEdgesLogic.d.ts +49 -0
- package/dist/hooks/scrollEdgesLogic.js +19 -0
- package/dist/hooks/slidingIndicatorLogic.d.ts +25 -0
- package/dist/hooks/slidingIndicatorLogic.js +15 -0
- package/dist/hooks/storageLogic.d.ts +15 -0
- package/dist/hooks/storageLogic.js +24 -0
- package/dist/hooks/unsavedGuardLogic.d.ts +17 -0
- package/dist/hooks/unsavedGuardLogic.js +17 -0
- package/dist/hooks/useDragScroll.d.ts +12 -0
- package/dist/hooks/useDragScroll.js +32 -0
- package/dist/hooks/useGlobalRightClick.d.ts +14 -0
- package/dist/hooks/useGlobalRightClick.js +35 -0
- package/dist/hooks/useGrowOrigin.d.ts +13 -0
- package/dist/hooks/useGrowOrigin.js +16 -0
- package/dist/hooks/useHotkey.d.ts +15 -0
- package/dist/hooks/useHotkey.js +31 -0
- package/dist/hooks/useKapiTheme.d.ts +69 -0
- package/dist/hooks/useKapiTheme.js +88 -0
- package/dist/hooks/useMediaQuery.d.ts +6 -0
- package/dist/hooks/useMediaQuery.js +13 -0
- package/dist/hooks/useObjectUrl.d.ts +6 -0
- package/dist/hooks/useObjectUrl.js +19 -0
- package/dist/hooks/useOnlineStatus.d.ts +7 -0
- package/dist/hooks/useOnlineStatus.js +7 -0
- package/dist/hooks/usePersistentState.d.ts +19 -0
- package/dist/hooks/usePersistentState.js +37 -0
- package/dist/hooks/usePlacement.d.ts +36 -0
- package/dist/hooks/usePlacement.js +84 -0
- package/dist/hooks/useRecent.d.ts +17 -0
- package/dist/hooks/useRecent.js +16 -0
- package/dist/hooks/useScrollCollapse.d.ts +10 -0
- package/dist/hooks/useScrollCollapse.js +27 -0
- package/dist/hooks/useScrollEdges.d.ts +32 -0
- package/dist/hooks/useScrollEdges.js +91 -0
- package/dist/hooks/useSlidingIndicator.d.ts +23 -0
- package/dist/hooks/useSlidingIndicator.js +51 -0
- package/dist/hooks/useUnsavedGuard.d.ts +70 -0
- package/dist/hooks/useUnsavedGuard.js +47 -0
- package/dist/index.d.ts +12 -0
- package/dist/index.js +162 -0
- package/dist/kapi.css +2 -0
- package/dist/kapi.layered.css +4 -0
- package/package.json +87 -4
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { type HTMLAttributes } from "react";
|
|
2
|
+
import "./KapiTable.css";
|
|
3
|
+
import type { KapiLabelsOverride } from "../labelsLogic";
|
|
4
|
+
export type KapiPaginationLabels = {
|
|
5
|
+
/** Texto antes del selector de tamaño de página. */
|
|
6
|
+
rowsPerPage: string;
|
|
7
|
+
prevPage: string;
|
|
8
|
+
nextPage: string;
|
|
9
|
+
/** Conector del rango: "1–10 de 42". */
|
|
10
|
+
of: string;
|
|
11
|
+
/** Nombre de la navegación. */
|
|
12
|
+
nav: string;
|
|
13
|
+
};
|
|
14
|
+
/** Atributos nativos (`id`, `style`, `data-*`…) van al `<nav>`; `aria-label` gana sobre `labels.nav`. */
|
|
15
|
+
export type KapiPaginationProps = Omit<HTMLAttributes<HTMLElement>, "children"> & {
|
|
16
|
+
/** Página actual, desde 1 (se acota al rango válido). */
|
|
17
|
+
page: number;
|
|
18
|
+
/** Filas por página. */
|
|
19
|
+
pageSize: number;
|
|
20
|
+
/** Total de filas (de todas las páginas); define la cantidad de páginas. */
|
|
21
|
+
total: number;
|
|
22
|
+
/** Se llama con la página nueva (desde 1) al navegar. */
|
|
23
|
+
onPageChange: (page: number) => void;
|
|
24
|
+
/** El selector de tamaño aparece sólo si vienen `pageSizeOptions` y `onPageSizeChange`. */
|
|
25
|
+
pageSizeOptions?: number[];
|
|
26
|
+
/** Se llama con el tamaño elegido en el selector; junto con `pageSizeOptions` lo muestra. */
|
|
27
|
+
onPageSizeChange?: (pageSize: number) => void;
|
|
28
|
+
/** Textos fijos (clave `pagination`). */
|
|
29
|
+
labels?: KapiLabelsOverride<KapiPaginationLabels> | undefined;
|
|
30
|
+
};
|
|
31
|
+
/**
|
|
32
|
+
* Paginador standalone (rango, anterior/siguiente y tamaño de página). Reusa el footer de la tabla.
|
|
33
|
+
* En los extremos, anterior/siguiente quedan `aria-disabled` (siguen enfocables e ignoran la activación)
|
|
34
|
+
* para que el foco no se pierda al llegar a la primera o la última página.
|
|
35
|
+
*/
|
|
36
|
+
export declare function KapiPagination({ page, pageSize, total, onPageChange, pageSizeOptions, onPageSizeChange, labels, className, "aria-label": ariaLabel, ...rest }: KapiPaginationProps): import("react").JSX.Element;
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { useLabels as e } from "../locale/KapiLocaleProvider.js";
|
|
3
|
+
import { KapiSelect as t } from "../inputs/KapiSelect.js";
|
|
4
|
+
import { joinClasses as n } from "../rootProps.js";
|
|
5
|
+
import { computePagination as r } from "./tableLogic.js";
|
|
6
|
+
/* empty css */
|
|
7
|
+
import { jsx as i, jsxs as a } from "react/jsx-runtime";
|
|
8
|
+
import { useEffect as o } from "react";
|
|
9
|
+
import { ChevronLeft as s, ChevronRight as c } from "lucide-react";
|
|
10
|
+
//#region src/components/data/KapiPagination.tsx
|
|
11
|
+
var l = {
|
|
12
|
+
rowsPerPage: "Filas por página",
|
|
13
|
+
prevPage: "Página anterior",
|
|
14
|
+
nextPage: "Página siguiente",
|
|
15
|
+
of: "de",
|
|
16
|
+
nav: "Paginación"
|
|
17
|
+
};
|
|
18
|
+
function u({ page: u, pageSize: d, total: f, onPageChange: p, pageSizeOptions: m, onPageSizeChange: h, labels: g, className: _, "aria-label": v, ...y }) {
|
|
19
|
+
let b = e("pagination", l, g), x = r({
|
|
20
|
+
page: u,
|
|
21
|
+
pageSize: d,
|
|
22
|
+
total: f
|
|
23
|
+
});
|
|
24
|
+
return o(() => {
|
|
25
|
+
x.page !== u && p(x.page);
|
|
26
|
+
}, [
|
|
27
|
+
x.page,
|
|
28
|
+
u,
|
|
29
|
+
p
|
|
30
|
+
]), /* @__PURE__ */ a("nav", {
|
|
31
|
+
...y,
|
|
32
|
+
className: n("kapi-tablefoot", _),
|
|
33
|
+
"aria-label": v ?? b.nav,
|
|
34
|
+
children: [/* @__PURE__ */ a("div", {
|
|
35
|
+
className: "kapi-tablefoot__l",
|
|
36
|
+
children: [/* @__PURE__ */ a("span", { children: [
|
|
37
|
+
x.from,
|
|
38
|
+
"–",
|
|
39
|
+
x.to,
|
|
40
|
+
" ",
|
|
41
|
+
b.of,
|
|
42
|
+
" ",
|
|
43
|
+
f
|
|
44
|
+
] }), m && h && /* @__PURE__ */ a("div", {
|
|
45
|
+
className: "kapi-tablefoot__size",
|
|
46
|
+
children: [/* @__PURE__ */ i("span", { children: b.rowsPerPage }), /* @__PURE__ */ i(t, {
|
|
47
|
+
size: "sm",
|
|
48
|
+
searchable: !1,
|
|
49
|
+
"aria-label": b.rowsPerPage,
|
|
50
|
+
options: m.map((e) => ({
|
|
51
|
+
value: String(e),
|
|
52
|
+
label: String(e)
|
|
53
|
+
})),
|
|
54
|
+
value: String(d),
|
|
55
|
+
onChange: (e) => {
|
|
56
|
+
e !== null && h(Number(e));
|
|
57
|
+
}
|
|
58
|
+
})]
|
|
59
|
+
})]
|
|
60
|
+
}), /* @__PURE__ */ a("div", {
|
|
61
|
+
className: "kapi-tablefoot__r",
|
|
62
|
+
children: [
|
|
63
|
+
/* @__PURE__ */ i("button", {
|
|
64
|
+
type: "button",
|
|
65
|
+
className: "kapi-tablefoot__btn",
|
|
66
|
+
"aria-label": b.prevPage,
|
|
67
|
+
"aria-disabled": !x.canPrev || void 0,
|
|
68
|
+
onClick: () => {
|
|
69
|
+
x.canPrev && p(x.page - 1);
|
|
70
|
+
},
|
|
71
|
+
children: /* @__PURE__ */ i(s, {
|
|
72
|
+
size: 16,
|
|
73
|
+
strokeWidth: 2
|
|
74
|
+
})
|
|
75
|
+
}),
|
|
76
|
+
/* @__PURE__ */ a("span", {
|
|
77
|
+
"aria-live": "polite",
|
|
78
|
+
children: [
|
|
79
|
+
x.page,
|
|
80
|
+
" / ",
|
|
81
|
+
x.totalPages
|
|
82
|
+
]
|
|
83
|
+
}),
|
|
84
|
+
/* @__PURE__ */ i("button", {
|
|
85
|
+
type: "button",
|
|
86
|
+
className: "kapi-tablefoot__btn",
|
|
87
|
+
"aria-label": b.nextPage,
|
|
88
|
+
"aria-disabled": !x.canNext || void 0,
|
|
89
|
+
onClick: () => {
|
|
90
|
+
x.canNext && p(x.page + 1);
|
|
91
|
+
},
|
|
92
|
+
children: /* @__PURE__ */ i(c, {
|
|
93
|
+
size: 16,
|
|
94
|
+
strokeWidth: 2
|
|
95
|
+
})
|
|
96
|
+
})
|
|
97
|
+
]
|
|
98
|
+
})]
|
|
99
|
+
});
|
|
100
|
+
}
|
|
101
|
+
//#endregion
|
|
102
|
+
export { u as KapiPagination };
|
|
@@ -0,0 +1,245 @@
|
|
|
1
|
+
import { type CSSProperties, type ReactNode } from "react";
|
|
2
|
+
import { type KapiMenuItem } from "../overlays/KapiContextMenu";
|
|
3
|
+
import { type KapiTableColumnVisibility, type KapiTableColumnWidths, type KapiTableSortState, type KapiTableSortValue, type KapiTableFilterState } from "./tableLogic";
|
|
4
|
+
import { type KapiRootProps } from "../rootProps";
|
|
5
|
+
import "../overlays/overlays.css";
|
|
6
|
+
import "./KapiTable.css";
|
|
7
|
+
import type { KapiLabelsOverride } from "../labelsLogic";
|
|
8
|
+
export type { KapiTableSortDirection, KapiTableSortState, KapiTableSortValue, KapiTableFilterState } from "./tableLogic";
|
|
9
|
+
/** Valor primitivo de una celda para copiar, filtrar o exportar (`null`/`undefined` = vacío). */
|
|
10
|
+
export type KapiTableCellValue = string | number | boolean | Date | null | undefined;
|
|
11
|
+
/** Lo común a toda columna de `KapiTable<T>` (todo salvo `key` y `render`). */
|
|
12
|
+
type KapiTableColumnBase<T> = {
|
|
13
|
+
/** Encabezado de la columna. */
|
|
14
|
+
label: ReactNode;
|
|
15
|
+
/** Ancho en px. En columnas `sticky` fija el ancho y el offset de las siguientes. */
|
|
16
|
+
width?: number;
|
|
17
|
+
/** Se clava a la izquierda (después de la columna de checkboxes, si hay). */
|
|
18
|
+
sticky?: boolean;
|
|
19
|
+
/** Absorbe el ancho sobrante (permite wrap). Pensada para UNA columna. */
|
|
20
|
+
flex?: boolean;
|
|
21
|
+
/** Alineación del contenido de la celda y del encabezado. */
|
|
22
|
+
align?: "left" | "center" | "right";
|
|
23
|
+
/** Muestra el botón copiar al hacer hover sobre la celda. */
|
|
24
|
+
copyable?: boolean;
|
|
25
|
+
/** Valor a copiar (default: `row[key]`). */
|
|
26
|
+
copyValue?: (row: T) => KapiTableCellValue;
|
|
27
|
+
/** Click en el header ordena asc/desc/ninguno. */
|
|
28
|
+
sortable?: boolean;
|
|
29
|
+
/** Valor por el que se ordena (default: `row[key]`). */
|
|
30
|
+
sortValue?: (row: T) => KapiTableSortValue;
|
|
31
|
+
/** Se puede ocultar desde el menú "Columnas". Default `true`; con `false` nunca se oculta. */
|
|
32
|
+
hideable?: boolean;
|
|
33
|
+
/** Se puede redimensionar arrastrando el borde. Default: el valor de `resizableColumns`. */
|
|
34
|
+
resizable?: boolean;
|
|
35
|
+
/** Ancho mínimo (px) al redimensionar. Default 60. */
|
|
36
|
+
minWidth?: number;
|
|
37
|
+
/** Entra en el filtro de la tabla (en "Todas" y en el selector de columna). Default `true`. */
|
|
38
|
+
filterable?: boolean;
|
|
39
|
+
/** Texto con el que compara el filtro, p. ej. para celdas que muestran un badge (default: `row[key]`). */
|
|
40
|
+
filterValue?: (row: T) => KapiTableCellValue;
|
|
41
|
+
/** Valor exportado al CSV (default: `copyValue` o `row[key]`). */
|
|
42
|
+
csvValue?: (row: T) => KapiTableCellValue;
|
|
43
|
+
};
|
|
44
|
+
/**
|
|
45
|
+
* Columna de `KapiTable<T>`. Sin `render`, `key` tiene que ser una propiedad de la fila (es lo que se
|
|
46
|
+
* muestra, y un error de tipeo no compila); con `render`, `key` es un identificador libre.
|
|
47
|
+
*/
|
|
48
|
+
export type KapiTableColumn<T> = KapiTableColumnBase<T> & ({
|
|
49
|
+
/** Propiedad de la fila que se muestra; también identifica la columna. */
|
|
50
|
+
key: keyof T & string;
|
|
51
|
+
/** Sin `render`, la celda muestra `row[key]`. */
|
|
52
|
+
render?: undefined;
|
|
53
|
+
} | {
|
|
54
|
+
/** Identifica la columna (anchos, visibilidad, orden, filtro). */
|
|
55
|
+
key: string;
|
|
56
|
+
/** Contenido de la celda. */
|
|
57
|
+
render: (row: T) => ReactNode;
|
|
58
|
+
});
|
|
59
|
+
/** Opciones de "Exportar CSV". */
|
|
60
|
+
export type KapiTableCsvOptions<T = never> = {
|
|
61
|
+
/** Nombre del archivo (se agrega `.csv` si falta). Default `"tabla.csv"`. */
|
|
62
|
+
fileName?: string;
|
|
63
|
+
/** Separador de campos. Default `","`. */
|
|
64
|
+
separator?: string;
|
|
65
|
+
/**
|
|
66
|
+
* Filas a exportar en vez de las que muestra la tabla (p. ej. el conjunto completo cuando la tabla
|
|
67
|
+
* recibe solo una página). Se exportan tal cual, en ese orden; una función se llama al exportar.
|
|
68
|
+
* Sin esta opción, las filas filtradas y ordenadas que recibe la tabla.
|
|
69
|
+
*/
|
|
70
|
+
rows?: ReadonlyArray<T> | (() => ReadonlyArray<T>) | undefined;
|
|
71
|
+
};
|
|
72
|
+
/** Textos de la tabla (accesibilidad y header de acciones). */
|
|
73
|
+
export type KapiTableLabels = {
|
|
74
|
+
/** Contenido sin filas (lo pisa `emptyMessage`). */
|
|
75
|
+
empty: string;
|
|
76
|
+
/** Contenido durante la carga con `loadingRows={0}` (lo pisa `loadingMessage`). */
|
|
77
|
+
loading: string;
|
|
78
|
+
selectAll: string;
|
|
79
|
+
/** Checkbox de una fila sin etiqueta propia: "Seleccionar fila 3". */
|
|
80
|
+
selectRow: string;
|
|
81
|
+
/** Checkbox de una fila con etiqueta (`rowLabel` o la primera columna): "Seleccionar Ana". */
|
|
82
|
+
selectRowNamed: string;
|
|
83
|
+
copy: string;
|
|
84
|
+
actions: string;
|
|
85
|
+
moreActions: string;
|
|
86
|
+
sortBy: string;
|
|
87
|
+
rowsPerPage: string;
|
|
88
|
+
prevPage: string;
|
|
89
|
+
nextPage: string;
|
|
90
|
+
expandRow: string;
|
|
91
|
+
columns: string;
|
|
92
|
+
resizeColumn: string;
|
|
93
|
+
filter: string;
|
|
94
|
+
filterPlaceholder: string;
|
|
95
|
+
filterColumn: string;
|
|
96
|
+
filterAll: string;
|
|
97
|
+
/** Conector "N de M": contador del filtro y rango del footer ("1–10 de 42"). */
|
|
98
|
+
of: string;
|
|
99
|
+
exportCsv: string;
|
|
100
|
+
};
|
|
101
|
+
export declare const DEFAULT_TABLE_LABELS: KapiTableLabels;
|
|
102
|
+
/** Paginación presentacional: la tabla NO recorta `rows`, el padre pasa la página actual. */
|
|
103
|
+
export type KapiTablePagination = {
|
|
104
|
+
/** Página actual (desde 1). */
|
|
105
|
+
page: number;
|
|
106
|
+
pageSize: number;
|
|
107
|
+
/** Total de filas (de todas las páginas). */
|
|
108
|
+
total: number;
|
|
109
|
+
onPageChange: (page: number) => void;
|
|
110
|
+
/** Con `onPageSizeChange`, muestra el selector de filas por página. */
|
|
111
|
+
pageSizeOptions?: number[];
|
|
112
|
+
onPageSizeChange?: (size: number) => void;
|
|
113
|
+
};
|
|
114
|
+
/** `className`/`style`/`id` (`KapiRootProps`) van a la carcasa `.kapi-table-shell` (herramientas + tabla + pie). */
|
|
115
|
+
export type KapiTableProps<T, K extends keyof T = keyof T> = KapiRootProps & {
|
|
116
|
+
/** Definición de columnas (clave, encabezado, render, orden, filtro, ancho…). */
|
|
117
|
+
columns: ReadonlyArray<KapiTableColumn<T>>;
|
|
118
|
+
/** Filas a mostrar. */
|
|
119
|
+
rows: ReadonlyArray<T>;
|
|
120
|
+
/** Propiedad con el id único de la fila. Default `"id"`. */
|
|
121
|
+
keyField?: K;
|
|
122
|
+
/** Alto máximo del área con scroll. Se ignora con `fill`. */
|
|
123
|
+
maxHeight?: CSSProperties["maxHeight"];
|
|
124
|
+
/**
|
|
125
|
+
* Ocupa el 100% del alto del padre (que debe tener alto definido): el área de filas se estira y
|
|
126
|
+
* scrollea internamente, y el footer queda fijo abajo. Con `fill`, `maxHeight` se ignora.
|
|
127
|
+
*/
|
|
128
|
+
fill?: boolean;
|
|
129
|
+
/** Dónde se muestra la barra de acciones masivas: arriba (estilo Gmail) o abajo. Default `"bottom"`. */
|
|
130
|
+
bulkActionsPlacement?: "top" | "bottom";
|
|
131
|
+
/** Textos fijos de la tabla (selección, paginación, columnas, filtro…). */
|
|
132
|
+
labels?: KapiLabelsOverride<KapiTableLabels> | undefined;
|
|
133
|
+
/** Columna de acciones: contenido custom por fila (botones). */
|
|
134
|
+
actions?: (row: T) => ReactNode;
|
|
135
|
+
/** Agrega el botón ⋯ en la columna de acciones, con estos ítems. */
|
|
136
|
+
rowMenu?: (row: T) => KapiMenuItem[];
|
|
137
|
+
/** Menú contextual de la tabla (doble click derecho). */
|
|
138
|
+
contextMenu?: KapiMenuItem[];
|
|
139
|
+
/** Se llama tras copiar una celda. */
|
|
140
|
+
onCopy?: (value: unknown) => void;
|
|
141
|
+
/** Columna de checkboxes. */
|
|
142
|
+
selectable?: boolean;
|
|
143
|
+
/** Con `selectable`: click en cualquier parte de la fila alterna la selección. */
|
|
144
|
+
rowSelect?: boolean;
|
|
145
|
+
/**
|
|
146
|
+
* Con `selectable`: etiqueta de la fila para el nombre accesible de su checkbox ("Seleccionar {etiqueta}").
|
|
147
|
+
* Default: el texto de la primera columna visible si es texto/número; si no, "Seleccionar fila N".
|
|
148
|
+
*/
|
|
149
|
+
rowLabel?: (row: T) => string;
|
|
150
|
+
/** Selección controlada. Sin esta prop la tabla maneja su propio estado. */
|
|
151
|
+
selectedIds?: ReadonlyArray<T[K]>;
|
|
152
|
+
/** Recibe los ids seleccionados cada vez que cambia la selección (controlada o no). */
|
|
153
|
+
onSelectedIdsChange?: (ids: Array<T[K]>) => void;
|
|
154
|
+
/** Con `selectable` y selección no vacía: barra sticky de acciones masivas con las acciones que devuelve esta función. */
|
|
155
|
+
bulkActions?: (ctx: {
|
|
156
|
+
ids: Array<T[K]>;
|
|
157
|
+
clear: () => void;
|
|
158
|
+
}) => ReactNode;
|
|
159
|
+
/** Con `selectable`: Shift+clic selecciona (o deselecciona) el rango desde la última fila tildada. Default `true`. */
|
|
160
|
+
rangeSelect?: boolean;
|
|
161
|
+
/** Renderiza sólo las filas visibles (altura fija `rowHeight`). */
|
|
162
|
+
virtual?: boolean;
|
|
163
|
+
/** Alto fijo de fila en px para `virtual`. */
|
|
164
|
+
rowHeight?: number;
|
|
165
|
+
/** Orden controlado (`null` = sin orden). Sin esta prop la tabla maneja su propio estado. */
|
|
166
|
+
sort?: KapiTableSortState | null;
|
|
167
|
+
/** Orden inicial sin control. */
|
|
168
|
+
defaultSort?: KapiTableSortState | null;
|
|
169
|
+
/** Se llama al cambiar el orden desde el header. */
|
|
170
|
+
onSortChange?: (sort: KapiTableSortState | null) => void;
|
|
171
|
+
/** No reordena localmente (el servidor ya ordenó); el header igual emite `onSortChange`. */
|
|
172
|
+
manualSort?: boolean;
|
|
173
|
+
/** Footer de paginación (modo servidor/presentacional). */
|
|
174
|
+
pagination?: KapiTablePagination;
|
|
175
|
+
/** Reemplaza las filas por un estado de carga. */
|
|
176
|
+
loading?: boolean;
|
|
177
|
+
/** Cantidad de filas skeleton durante la carga (default 5). Con `0` se muestra el spinner con `loadingMessage`. */
|
|
178
|
+
loadingRows?: number;
|
|
179
|
+
/** Envuelve la tabla (y su paginación) en una card. Default `false`. */
|
|
180
|
+
card?: boolean;
|
|
181
|
+
/** Contenido cuando no hay filas. Default `labels.empty` ("Sin resultados"); `null` no muestra nada. */
|
|
182
|
+
emptyMessage?: ReactNode;
|
|
183
|
+
/** Contenido durante la carga. Default `labels.loading` ("Cargando…"); `null` no muestra nada. */
|
|
184
|
+
loadingMessage?: ReactNode;
|
|
185
|
+
/** Con `selectable`: define qué filas se pueden seleccionar (default: todas). */
|
|
186
|
+
isRowSelectable?: (row: T) => boolean;
|
|
187
|
+
/** Fila expandible: contenido que se muestra bajo la fila. No aplica con `virtual`. */
|
|
188
|
+
renderSubComponent?: (row: T) => ReactNode;
|
|
189
|
+
/** Expansión controlada. Sin esta prop la tabla maneja su propio estado. */
|
|
190
|
+
expandedIds?: ReadonlyArray<T[K]>;
|
|
191
|
+
/** Recibe los ids expandidos cada vez que cambia la expansión (controlada o no). */
|
|
192
|
+
onExpandedIdsChange?: (ids: Array<T[K]>) => void;
|
|
193
|
+
/** `card`: filas blandas y espaciadas, look de listado. Sólo visual; no cambia el comportamiento. */
|
|
194
|
+
density?: "default" | "card";
|
|
195
|
+
/** Resalta la fila al pasar el mouse (fondo tenue). Opt-in: apagado por defecto. */
|
|
196
|
+
rowHover?: boolean;
|
|
197
|
+
/** Muestra el botón "Columnas" (menú para mostrar/ocultar columnas `hideable`). */
|
|
198
|
+
columnToggle?: boolean;
|
|
199
|
+
/** Visibilidad controlada (`key → mostrada`; ausente = visible). Sin esta prop la tabla maneja su estado. */
|
|
200
|
+
columnVisibility?: KapiTableColumnVisibility;
|
|
201
|
+
/** Visibilidad inicial sin control. */
|
|
202
|
+
defaultColumnVisibility?: KapiTableColumnVisibility;
|
|
203
|
+
/** Se llama al mostrar u ocultar columnas. */
|
|
204
|
+
onColumnVisibilityChange?: (visibility: KapiTableColumnVisibility) => void;
|
|
205
|
+
/** Habilita el redimensionado por arrastre en todas las columnas (salvo `resizable: false`). */
|
|
206
|
+
resizableColumns?: boolean;
|
|
207
|
+
/** Anchos controlados (`key → px`). Sin esta prop la tabla maneja su estado. */
|
|
208
|
+
columnWidths?: KapiTableColumnWidths;
|
|
209
|
+
/** Anchos iniciales sin control. */
|
|
210
|
+
defaultColumnWidths?: KapiTableColumnWidths;
|
|
211
|
+
/** Se llama al soltar un redimensionado, con los anchos confirmados. */
|
|
212
|
+
onColumnWidthsChange?: (widths: KapiTableColumnWidths) => void;
|
|
213
|
+
/**
|
|
214
|
+
* Filtro de la tabla: un campo de texto y, al lado, la columna donde buscar ("Todas" por defecto =
|
|
215
|
+
* columnas visibles con `filterable` distinto de `false`). Cada palabra tiene que aparecer en alguna
|
|
216
|
+
* de esas columnas, sin distinguir mayúsculas ni acentos. Con filtro activo muestra "N de M".
|
|
217
|
+
*/
|
|
218
|
+
filterable?: boolean;
|
|
219
|
+
/** Filtro controlado (`column: null` = todas). Sin esta prop la tabla maneja su estado. */
|
|
220
|
+
filter?: KapiTableFilterState;
|
|
221
|
+
/** Filtro inicial sin control. */
|
|
222
|
+
defaultFilter?: KapiTableFilterState;
|
|
223
|
+
/** Se llama al cambiar el filtro (con `manualFilter`, con debounce mientras se tipea). */
|
|
224
|
+
onFilterChange?: (filter: KapiTableFilterState) => void;
|
|
225
|
+
/** Modo servidor: no filtra localmente; sólo emite `onFilterChange` (para backends paginados). */
|
|
226
|
+
manualFilter?: boolean;
|
|
227
|
+
/** Debounce (ms) del texto con `manualFilter`. Default 300. */
|
|
228
|
+
filterDebounce?: number;
|
|
229
|
+
/**
|
|
230
|
+
* Botón "Exportar CSV": baja las filas filtradas y ordenadas con las columnas visibles (o las `rows`
|
|
231
|
+
* de las opciones, para exportar todo cuando la tabla recibe solo una página).
|
|
232
|
+
*/
|
|
233
|
+
exportCsv?: boolean | KapiTableCsvOptions<T>;
|
|
234
|
+
/**
|
|
235
|
+
* Modo tarjeta automático: cuando la tabla mide menos de 600px de ancho (mobile o un panel
|
|
236
|
+
* angosto), cada fila se muestra como una tarjeta con "columna: valor". No aplica con `virtual`.
|
|
237
|
+
*/
|
|
238
|
+
mobileCards?: boolean;
|
|
239
|
+
};
|
|
240
|
+
/**
|
|
241
|
+
* Tabla: header y columnas sticky, selección (controlada o interna), ordenamiento
|
|
242
|
+
* por header, columna de acciones fija, copiar por celda, virtualización de altura fija,
|
|
243
|
+
* drag-scroll con click derecho y menú contextual con doble click derecho.
|
|
244
|
+
*/
|
|
245
|
+
export declare function KapiTable<T, K extends keyof T = keyof T>({ columns, rows, keyField, maxHeight, fill, bulkActionsPlacement, className, style, id, labels, actions, rowMenu, contextMenu, onCopy, selectable, rowSelect, rowLabel, selectedIds, onSelectedIdsChange, bulkActions, rangeSelect, virtual, rowHeight, sort, defaultSort, onSortChange, manualSort, pagination, loading, loadingRows, card, emptyMessage, loadingMessage, isRowSelectable, renderSubComponent, expandedIds, onExpandedIdsChange, density, rowHover, columnToggle, columnVisibility, defaultColumnVisibility, onColumnVisibilityChange, resizableColumns, columnWidths, defaultColumnWidths, onColumnWidthsChange, filterable, filter, defaultFilter, onFilterChange, manualFilter, filterDebounce, exportCsv, mobileCards }: KapiTableProps<T, K>): import("react").JSX.Element;
|