@beweco/aurora-ui 0.1.13 → 0.1.15
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/dist/assets/css/styles.css +1 -1
- package/dist/index.cjs.js +470 -96
- package/dist/index.esm.js +376 -7
- package/dist/types/components/drawer-filters/DrawerFilters.d.ts +14 -0
- package/dist/types/components/drawer-filters/DrawerFilters.d.ts.map +1 -0
- package/dist/types/components/drawer-filters/DrawerFilters.types.d.ts +101 -0
- package/dist/types/components/drawer-filters/DrawerFilters.types.d.ts.map +1 -0
- package/dist/types/components/drawer-filters/_internal/DrawerFiltersFooter.d.ts +7 -0
- package/dist/types/components/drawer-filters/_internal/DrawerFiltersFooter.d.ts.map +1 -0
- package/dist/types/components/drawer-filters/_internal/DrawerFiltersHeader.d.ts +7 -0
- package/dist/types/components/drawer-filters/_internal/DrawerFiltersHeader.d.ts.map +1 -0
- package/dist/types/components/drawer-filters/_internal/FilterSection.d.ts +4 -0
- package/dist/types/components/drawer-filters/_internal/FilterSection.d.ts.map +1 -0
- package/dist/types/components/drawer-filters/index.d.ts +3 -0
- package/dist/types/components/drawer-filters/index.d.ts.map +1 -0
- package/dist/types/components/modal/_internal/ModalBody.d.ts +1 -1
- package/dist/types/components/modal/_internal/ModalBody.d.ts.map +1 -1
- package/dist/types/components/modal/_internal/ModalFooter.d.ts +1 -1
- package/dist/types/components/modal/_internal/ModalFooter.d.ts.map +1 -1
- package/dist/types/components/modal/_internal/ModalHeader.d.ts +1 -1
- package/dist/types/components/modal/_internal/ModalHeader.d.ts.map +1 -1
- package/dist/types/components/multi-step-wizard/MultiStepWizard.types.d.ts +1 -0
- package/dist/types/components/multi-step-wizard/MultiStepWizard.types.d.ts.map +1 -1
- package/dist/types/components/range-filter/RangeFilter.d.ts +7 -0
- package/dist/types/components/range-filter/RangeFilter.d.ts.map +1 -0
- package/dist/types/components/range-filter/RangeFilter.types.d.ts +33 -0
- package/dist/types/components/range-filter/RangeFilter.types.d.ts.map +1 -0
- package/dist/types/components/range-filter/index.d.ts +3 -0
- package/dist/types/components/range-filter/index.d.ts.map +1 -0
- package/dist/types/components/vertical-steps/VerticalSteps.d.ts.map +1 -1
- package/dist/types/components/vertical-steps/VerticalSteps.types.d.ts +2 -0
- package/dist/types/components/vertical-steps/VerticalSteps.types.d.ts.map +1 -1
- package/dist/types/index.d.ts +4 -0
- package/dist/types/index.d.ts.map +1 -1
- package/package.json +4 -2
package/dist/index.esm.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
import { Button as Button$1, DatePicker as DatePicker$1, DateRangePicker as DateRangePicker$1, Input as Input$1, RadioGroup, Radio, cn, Card as Card$1, Spacer, Tabs, Tab, Chip as Chip$1, Dropdown, DropdownTrigger, DropdownMenu, DropdownItem, Autocomplete, Breadcrumbs, BreadcrumbItem, DropdownSection, ListboxItem, Popover, PopoverTrigger, Tooltip as Tooltip$1, PopoverContent, Listbox, Accordion, AccordionItem, ListboxSection, Avatar, CardBody, CardFooter, Pagination as Pagination$1, Link, Switch as Switch$1, TimeInput as TimeInput$1, Select as Select$1, Table, TableHeader, TableColumn, TableBody, TableRow, TableCell, Textarea as Textarea$1, Alert, Modal as Modal$1, ModalContent as ModalContent$1, ModalHeader as ModalHeader$1, ModalBody as ModalBody$1, Slider, ModalFooter as ModalFooter$1, Spinner } from '@heroui/react';
|
|
1
|
+
import { Button as Button$1, DatePicker as DatePicker$1, DateRangePicker as DateRangePicker$1, Input as Input$1, RadioGroup, Radio, cn, Card as Card$1, Spacer, Tabs, Tab, Chip as Chip$1, Dropdown, DropdownTrigger, DropdownMenu, DropdownItem, Autocomplete, Breadcrumbs, BreadcrumbItem, DropdownSection, ListboxItem, Popover, PopoverTrigger, Tooltip as Tooltip$1, PopoverContent, Listbox, Accordion, AccordionItem, ListboxSection, Avatar, CardBody, CardFooter, Pagination as Pagination$1, Link, Switch as Switch$1, TimeInput as TimeInput$1, Select as Select$1, Table, TableHeader, TableColumn, TableBody, TableRow, TableCell, Textarea as Textarea$1, Alert, Modal as Modal$1, ModalContent as ModalContent$1, ModalHeader as ModalHeader$1, ModalBody as ModalBody$1, Slider, ModalFooter as ModalFooter$1, Spinner, SelectItem, Drawer, DrawerContent, DrawerBody } from '@heroui/react';
|
|
2
2
|
export * from '@heroui/react';
|
|
3
|
+
export { Slider } from '@heroui/react';
|
|
3
4
|
import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
|
|
4
5
|
import React, { useId, useState, useCallback, useMemo, createContext, useContext, createElement, useRef, useEffect, useLayoutEffect } from 'react';
|
|
5
6
|
import { Icon } from '@iconify/react';
|
|
@@ -1402,12 +1403,15 @@ var VerticalSteps = React.forwardRef(function (_a, ref) {
|
|
|
1402
1403
|
return (jsx("nav", { "aria-label": "Progress", className: "max-w-fit", children: jsx("ol", { className: cn("flex flex-col gap-y-3", colors, className), children: steps === null || steps === void 0 ? void 0 : steps.map(function (step, stepIdx) {
|
|
1403
1404
|
var status = currentStep === stepIdx
|
|
1404
1405
|
? "active"
|
|
1405
|
-
:
|
|
1406
|
-
? "
|
|
1407
|
-
: "
|
|
1406
|
+
: step.isCompleted
|
|
1407
|
+
? "complete"
|
|
1408
|
+
: "inactive";
|
|
1409
|
+
var isDisabled = status === "inactive";
|
|
1408
1410
|
return (
|
|
1409
1411
|
// biome-ignore lint/suspicious/noArrayIndexKey: <explanation>
|
|
1410
|
-
jsxs("li", { className: "relative", children: [jsx("div", { className: "flex w-full max-w-full items-center", children: jsxs("button", __assign({ type: "button", ref: ref, "aria-current": status === "active" ? "step" : undefined, className: cn("group rounded-large flex w-full cursor-pointer items-center justify-center gap-4 px-3 py-2.5", stepClassName
|
|
1412
|
+
jsxs("li", { className: "relative", children: [jsx("div", { className: "flex w-full max-w-full items-center", children: jsxs("button", __assign({ type: "button", ref: ref, "aria-current": status === "active" ? "step" : undefined, className: cn("group rounded-large flex w-full cursor-pointer items-center justify-center gap-4 px-3 py-2.5", stepClassName, {
|
|
1413
|
+
"cursor-not-allowed": isDisabled,
|
|
1414
|
+
}), onClick: function () { return setCurrentStep(stepIdx); }, disabled: isDisabled }, props, { children: [jsx("div", { className: "flex h-full items-center", children: jsx(LazyMotion, { features: domAnimation, children: jsx("div", { className: "relative", children: jsx(m.div, { animate: status, className: cn("border-medium text-large text-default-600 relative flex h-[34px] w-[34px] items-center justify-center rounded-full font-semibold", {
|
|
1411
1415
|
"shadow-lg": status === "complete",
|
|
1412
1416
|
}), "data-status": status, initial: false, transition: { duration: 0.25 }, variants: {
|
|
1413
1417
|
inactive: {
|
|
@@ -2203,7 +2207,7 @@ function GlobalToast() {
|
|
|
2203
2207
|
if (!toast.isVisible) {
|
|
2204
2208
|
return null;
|
|
2205
2209
|
}
|
|
2206
|
-
return (jsx("div", { className: "fixed top-4 right-4 z-
|
|
2210
|
+
return (jsx("div", { className: "fixed top-4 right-4 z-[2000] w-full max-w-sm", children: jsx(Alert, { hideIconWrapper: true, color: toast.color, variant: "flat", title: toast.title, description: toast.description, isClosable: true, onClose: hideToast }) }));
|
|
2207
2211
|
}
|
|
2208
2212
|
|
|
2209
2213
|
// Traducciones por defecto en español
|
|
@@ -2715,6 +2719,371 @@ var NavigationLoadingOverlay = function (_a) {
|
|
|
2715
2719
|
return (jsxs("div", { className: "fixed inset-0 z-50 flex items-center justify-center", children: [jsx("div", { className: "absolute inset-0 bg-black/10 backdrop-blur-sm" }), jsx("div", { className: "flex flex-col items-center gap-4", children: jsx(Spinner, { size: "lg", color: "primary", className: "drop-shadow-sm" }) })] }));
|
|
2716
2720
|
};
|
|
2717
2721
|
|
|
2722
|
+
/**
|
|
2723
|
+
* Footer of the DrawerFilters with action buttons.
|
|
2724
|
+
*/
|
|
2725
|
+
var DrawerFiltersFooter = function (_a) {
|
|
2726
|
+
var onClearFilters = _a.onClearFilters, onCancel = _a.onCancel, onApplyFilters = _a.onApplyFilters, _b = _a.translations, translations = _b === void 0 ? {} : _b;
|
|
2727
|
+
var _c = translations.clearFilters, clearFilters = _c === void 0 ? "Limpiar filtro" : _c, _d = translations.cancel, cancel = _d === void 0 ? "Cancelar" : _d, _e = translations.applyFilters, applyFilters = _e === void 0 ? "Aplicar filtro" : _e;
|
|
2728
|
+
return (jsxs("div", { className: "flex items-center justify-between px-6 py-10 bg-content1", children: [jsx(Button, { variant: "light", color: "primary", onPress: onClearFilters, className: "text-primary", children: clearFilters }), jsxs("div", { className: "flex items-center gap-3", children: [jsx(Button, { variant: "bordered", color: "primary", onPress: onCancel, children: cancel }), jsx(Button, { variant: "solid", color: "primary", onPress: onApplyFilters, children: applyFilters })] })] }));
|
|
2729
|
+
};
|
|
2730
|
+
|
|
2731
|
+
/**
|
|
2732
|
+
* Header of the DrawerFilters with title and description.
|
|
2733
|
+
*/
|
|
2734
|
+
var DrawerFiltersHeader = function (_a) {
|
|
2735
|
+
var title = _a.title, description = _a.description;
|
|
2736
|
+
return (jsxs("div", { className: "px-6 pt-10", children: [jsx(H2, { className: "text-xl font-semibold text-foreground mb-2", children: title }), jsx(P, { className: "text-default-500", children: description })] }));
|
|
2737
|
+
};
|
|
2738
|
+
|
|
2739
|
+
/**
|
|
2740
|
+
* RangeFilter component with histogram visualization for range selection.
|
|
2741
|
+
*/
|
|
2742
|
+
var RangeFilter = function (_a) {
|
|
2743
|
+
var title = _a.title, description = _a.description, value = _a.value, onChange = _a.onChange, minValue = _a.minValue, maxValue = _a.maxValue, _b = _a.step, step = _b === void 0 ? 1000 : _b, data = _a.data, _c = _a.formatValue, formatValue = _c === void 0 ? function (val) { return val.toString(); } : _c, _d = _a.bins, bins = _d === void 0 ? 20 : _d, _e = _a.translations, translations = _e === void 0 ? {} : _e, _f = _a.sliderProps, sliderProps = _f === void 0 ? {} : _f, _g = _a.className, className = _g === void 0 ? "" : _g;
|
|
2744
|
+
// If no value is provided or is empty, use the default range
|
|
2745
|
+
var initialValue = value || [minValue, maxValue];
|
|
2746
|
+
// Internal state to handle the slider value
|
|
2747
|
+
var _h = useState(initialValue), currentValue = _h[0], setCurrentValue = _h[1];
|
|
2748
|
+
// Synchronize with the external value when it changes
|
|
2749
|
+
useEffect(function () {
|
|
2750
|
+
if (value) {
|
|
2751
|
+
setCurrentValue(value);
|
|
2752
|
+
}
|
|
2753
|
+
}, [value]);
|
|
2754
|
+
// Default translations
|
|
2755
|
+
var defaultTranslations = {
|
|
2756
|
+
title: title,
|
|
2757
|
+
description: description || "",
|
|
2758
|
+
minLabel: "Mínimo",
|
|
2759
|
+
maxLabel: "Máximo",
|
|
2760
|
+
tooltipProducts: "productos",
|
|
2761
|
+
tooltipProduct: "producto",
|
|
2762
|
+
};
|
|
2763
|
+
var t = __assign(__assign({}, defaultTranslations), translations);
|
|
2764
|
+
// Function to check if a bar is in the selected range
|
|
2765
|
+
var isBarInRange = function (barStart, barEnd) {
|
|
2766
|
+
return barStart >= currentValue[0] && barEnd <= currentValue[1];
|
|
2767
|
+
};
|
|
2768
|
+
// Generate data for the histogram
|
|
2769
|
+
var histogramData = useMemo(function () {
|
|
2770
|
+
var binWidth = (maxValue - minValue) / bins;
|
|
2771
|
+
var histogram = new Array(bins).fill(0);
|
|
2772
|
+
// Count elements in each range
|
|
2773
|
+
for (var _i = 0, data_1 = data; _i < data_1.length; _i++) {
|
|
2774
|
+
var item = data_1[_i];
|
|
2775
|
+
var binIndex = Math.min(Math.floor((item - minValue) / binWidth), bins - 1);
|
|
2776
|
+
histogram[binIndex]++;
|
|
2777
|
+
}
|
|
2778
|
+
return histogram.map(function (count, index) {
|
|
2779
|
+
var binStart = minValue + index * binWidth;
|
|
2780
|
+
var binEnd = minValue + (index + 1) * binWidth;
|
|
2781
|
+
var binMidPoint = (binStart + binEnd) / 2;
|
|
2782
|
+
// Calculate height based on the value (the higher the value, the higher the height)
|
|
2783
|
+
// Normalize the middle value of the bin with respect to the total range
|
|
2784
|
+
var valueRatio = (binMidPoint - minValue) / (maxValue - minValue);
|
|
2785
|
+
// The height goes from 20% (minimum value) to 100% (maximum value)
|
|
2786
|
+
// All bars maintain visual height, regardless of whether they have data
|
|
2787
|
+
var heightPercentage = Math.max(20, valueRatio * 80 + 20);
|
|
2788
|
+
return {
|
|
2789
|
+
height: heightPercentage,
|
|
2790
|
+
binStart: binStart,
|
|
2791
|
+
binEnd: binEnd,
|
|
2792
|
+
count: count,
|
|
2793
|
+
priceRange: "".concat(formatValue(binStart), " - ").concat(formatValue(binEnd)),
|
|
2794
|
+
midPrice: binMidPoint,
|
|
2795
|
+
};
|
|
2796
|
+
});
|
|
2797
|
+
}, [data, minValue, maxValue, bins, formatValue]);
|
|
2798
|
+
return (jsxs("div", { className: "flex flex-col gap-4 ".concat(className), children: [jsx("div", { className: "flex flex-col gap-1", children: t.description && (jsx("p", { className: "text-xs text-default-500", children: t.description })) }), jsx("div", { className: "relative h-16 bg-default-50 rounded-lg p-2", children: jsx("div", { className: "flex items-end h-full", style: { gap: "1px" }, children: histogramData.map(function (bar, _index) {
|
|
2799
|
+
var inRange = isBarInRange(bar.binStart, bar.binEnd);
|
|
2800
|
+
return (jsx("div", { className: "flex-1 rounded-t-sm transition-all duration-200 group relative ".concat(inRange ? "bg-primary-400" : "bg-default-300"), style: {
|
|
2801
|
+
height: "".concat(bar.height, "%"),
|
|
2802
|
+
alignSelf: "flex-end",
|
|
2803
|
+
opacity: inRange ? 1 : 0.4,
|
|
2804
|
+
}, title: "".concat(bar.priceRange, ": ").concat(bar.count, " ").concat(bar.count !== 1 ? t.tooltipProducts : t.tooltipProduct), children: jsx("div", { className: "absolute bottom-full left-1/2 transform -translate-x-1/2 mb-1 px-2 py-1 bg-default-900 text-white text-xs rounded opacity-0 group-hover:opacity-100 transition-opacity pointer-events-none whitespace-nowrap z-10", children: jsxs("div", { className: "text-center", children: [jsx("div", { className: "font-medium", children: formatValue(bar.midPrice) }), jsxs("div", { className: "text-xs opacity-75", children: [bar.count, " ", bar.count !== 1 ? t.tooltipProducts : t.tooltipProduct] })] }) }) }, "".concat(bar.binStart, "-").concat(bar.binEnd)));
|
|
2805
|
+
}) }) }), jsx("div", { className: "px-2", children: jsx(Slider, __assign({ step: step, minValue: minValue, maxValue: maxValue, defaultValue: [minValue, maxValue], value: currentValue, onChange: function (newValue) {
|
|
2806
|
+
var _a = newValue, min = _a[0], max = _a[1];
|
|
2807
|
+
setCurrentValue([min, max]);
|
|
2808
|
+
onChange([min, max]);
|
|
2809
|
+
}, className: "w-full", isDisabled: false, showSteps: false, showOutline: false, showTooltip: false }, sliderProps)) }), jsxs("div", { className: "flex justify-between items-center text-sm", children: [jsxs("div", { className: "flex flex-col items-start", children: [jsx("span", { className: "text-xs text-default-500", children: t.minLabel }), jsx("span", { className: "font-medium text-default-700", children: formatValue(currentValue[0]) })] }), jsxs("div", { className: "flex flex-col items-end", children: [jsx("span", { className: "text-xs text-default-500", children: t.maxLabel }), jsx("span", { className: "font-medium text-default-700", children: formatValue(currentValue[1]) })] })] })] }));
|
|
2810
|
+
};
|
|
2811
|
+
|
|
2812
|
+
// =========================================================================
|
|
2813
|
+
// BASE FILTER SECTION COMPONENT
|
|
2814
|
+
// =========================================================================
|
|
2815
|
+
var FilterSection = function (_a) {
|
|
2816
|
+
var filter = _a.filter, value = _a.value, onChange = _a.onChange, _b = _a.isExpanded, isExpanded = _b === void 0 ? false : _b, onToggleExpanded = _a.onToggleExpanded;
|
|
2817
|
+
var _c = useState(isExpanded), internalExpanded = _c[0], setInternalExpanded = _c[1];
|
|
2818
|
+
var handleToggleExpanded = function () {
|
|
2819
|
+
var newExpanded = !internalExpanded;
|
|
2820
|
+
setInternalExpanded(newExpanded);
|
|
2821
|
+
onToggleExpanded === null || onToggleExpanded === void 0 ? void 0 : onToggleExpanded();
|
|
2822
|
+
};
|
|
2823
|
+
var hasActiveFilter = function () {
|
|
2824
|
+
if (!value) {
|
|
2825
|
+
return false;
|
|
2826
|
+
}
|
|
2827
|
+
switch (filter.type) {
|
|
2828
|
+
case "select":
|
|
2829
|
+
return value && "value" in value && value.value !== "";
|
|
2830
|
+
case "multiselect":
|
|
2831
|
+
return (value &&
|
|
2832
|
+
"values" in value &&
|
|
2833
|
+
Array.isArray(value.values) &&
|
|
2834
|
+
value.values.length > 0);
|
|
2835
|
+
case "range":
|
|
2836
|
+
return (value &&
|
|
2837
|
+
"min" in value &&
|
|
2838
|
+
"max" in value &&
|
|
2839
|
+
(value.min !== undefined || value.max !== undefined));
|
|
2840
|
+
case "date":
|
|
2841
|
+
return (value &&
|
|
2842
|
+
"type" in value &&
|
|
2843
|
+
value.type &&
|
|
2844
|
+
((value.type === "singleDay" && value.date) ||
|
|
2845
|
+
(value.type === "dateRange" &&
|
|
2846
|
+
value.dateRange &&
|
|
2847
|
+
value.dateRange.start &&
|
|
2848
|
+
value.dateRange.end)));
|
|
2849
|
+
default:
|
|
2850
|
+
return false;
|
|
2851
|
+
}
|
|
2852
|
+
};
|
|
2853
|
+
var getActiveFilterCount = function () {
|
|
2854
|
+
if (!value) {
|
|
2855
|
+
return 0;
|
|
2856
|
+
}
|
|
2857
|
+
switch (filter.type) {
|
|
2858
|
+
case "select":
|
|
2859
|
+
return value && "value" in value && value.value !== "" ? 1 : 0;
|
|
2860
|
+
case "multiselect":
|
|
2861
|
+
return value && "values" in value && Array.isArray(value.values)
|
|
2862
|
+
? value.values.length
|
|
2863
|
+
: 0;
|
|
2864
|
+
case "range":
|
|
2865
|
+
return value &&
|
|
2866
|
+
"min" in value &&
|
|
2867
|
+
"max" in value &&
|
|
2868
|
+
(value.min !== undefined || value.max !== undefined)
|
|
2869
|
+
? 1
|
|
2870
|
+
: 0;
|
|
2871
|
+
case "date":
|
|
2872
|
+
return value &&
|
|
2873
|
+
"type" in value &&
|
|
2874
|
+
value.type &&
|
|
2875
|
+
((value.type === "singleDay" && value.date) ||
|
|
2876
|
+
(value.type === "dateRange" &&
|
|
2877
|
+
value.dateRange &&
|
|
2878
|
+
value.dateRange.start &&
|
|
2879
|
+
value.dateRange.end))
|
|
2880
|
+
? 1
|
|
2881
|
+
: 0;
|
|
2882
|
+
default:
|
|
2883
|
+
return 0;
|
|
2884
|
+
}
|
|
2885
|
+
};
|
|
2886
|
+
var renderFilterContent = function () {
|
|
2887
|
+
switch (filter.type) {
|
|
2888
|
+
case "select":
|
|
2889
|
+
return (jsx(SelectFilter, { filter: filter, value: value, onChange: onChange }));
|
|
2890
|
+
case "multiselect":
|
|
2891
|
+
return (jsx(MultiSelectFilter, { filter: filter, value: value, onChange: onChange }));
|
|
2892
|
+
case "range":
|
|
2893
|
+
return (jsx(RangeFilterComponent, { filter: filter, value: value, onChange: onChange }));
|
|
2894
|
+
case "date":
|
|
2895
|
+
return (jsx(DateFilter, { filter: filter, value: value, onChange: onChange }));
|
|
2896
|
+
default:
|
|
2897
|
+
return null;
|
|
2898
|
+
}
|
|
2899
|
+
};
|
|
2900
|
+
return (jsxs("div", { className: "bg-white rounded-xl max-w-sm", style: {
|
|
2901
|
+
border: "0 solid #e5e7eb",
|
|
2902
|
+
boxShadow: "var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)",
|
|
2903
|
+
"--tw-shadow": "var(--heroui-box-shadow-medium)",
|
|
2904
|
+
"--tw-shadow-colored": "var(--heroui-box-shadow-medium)",
|
|
2905
|
+
}, children: [jsxs("button", { type: "button", className: "flex items-center justify-between w-full text-left p-4", onClick: handleToggleExpanded, children: [jsxs("div", { className: "flex items-center gap-3", children: [jsx(H2, { className: "text-base font-normal text-foreground", children: filter.title }), hasActiveFilter() && (jsx("span", { className: "text-xs px-2 py-1 rounded-full text-black dark:text-white", style: {
|
|
2906
|
+
backgroundColor: "hsl(var(--heroui-default) / var(--heroui-default-opacity, var(--tw-bg-opacity)))",
|
|
2907
|
+
}, children: getActiveFilterCount() }))] }), jsx(IconComponent, { icon: internalExpanded
|
|
2908
|
+
? "solar:alt-arrow-down-outline"
|
|
2909
|
+
: "solar:alt-arrow-right-outline", size: "sm", className: "text-default-500" })] }), internalExpanded && (jsxs("div", { className: "px-4 pb-4", onClick: function (e) { return e.stopPropagation(); }, children: [filter.description && (jsx(P, { className: "text-default-500 mb-4", children: filter.description })), renderFilterContent()] }))] }));
|
|
2910
|
+
};
|
|
2911
|
+
// =========================================================================
|
|
2912
|
+
// SELECT FILTER
|
|
2913
|
+
// =========================================================================
|
|
2914
|
+
var SelectFilter = function (_a) {
|
|
2915
|
+
var filter = _a.filter, value = _a.value, onChange = _a.onChange;
|
|
2916
|
+
var currentValue = (value === null || value === void 0 ? void 0 : value.value) || "";
|
|
2917
|
+
return (jsx(Select, { placeholder: "Seleccionar ".concat(filter.title.toLowerCase()), selectedKeys: currentValue ? [currentValue] : [], onSelectionChange: function (keys) {
|
|
2918
|
+
var selectedKey = Array.from(keys)[0];
|
|
2919
|
+
onChange({ value: selectedKey || "" });
|
|
2920
|
+
}, className: "w-full", children: filter.data.map(function (item) { return (jsx(SelectItem, { children: item.label }, item.value)); }) }));
|
|
2921
|
+
};
|
|
2922
|
+
// =========================================================================
|
|
2923
|
+
// MULTISELECT FILTER
|
|
2924
|
+
// =========================================================================
|
|
2925
|
+
var MultiSelectFilter = function (_a) {
|
|
2926
|
+
var filter = _a.filter, value = _a.value, onChange = _a.onChange;
|
|
2927
|
+
var currentValues = (value === null || value === void 0 ? void 0 : value.values) || [];
|
|
2928
|
+
return (jsx(Select, { placeholder: "Seleccionar ".concat(filter.title.toLowerCase()), selectedKeys: currentValues, onSelectionChange: function (keys) {
|
|
2929
|
+
var selectedKeys = Array.from(keys);
|
|
2930
|
+
onChange({ values: selectedKeys });
|
|
2931
|
+
}, selectionMode: "multiple", className: "w-full", children: filter.data.map(function (item) { return (jsx(SelectItem, { children: item.label }, item.value)); }) }));
|
|
2932
|
+
};
|
|
2933
|
+
// =========================================================================
|
|
2934
|
+
// RANGE FILTER
|
|
2935
|
+
// =========================================================================
|
|
2936
|
+
var RangeFilterComponent = function (_a) {
|
|
2937
|
+
var filter = _a.filter, value = _a.value, onChange = _a.onChange;
|
|
2938
|
+
var currentValue = value || { min: filter.data.min, max: filter.data.max };
|
|
2939
|
+
var rangeValue = [currentValue.min, currentValue.max];
|
|
2940
|
+
var handleChange = function (newValue) {
|
|
2941
|
+
var min = newValue[0], max = newValue[1];
|
|
2942
|
+
onChange({ min: min, max: max });
|
|
2943
|
+
};
|
|
2944
|
+
// Generate data array for histogram (simple implementation)
|
|
2945
|
+
var data = Array.from({
|
|
2946
|
+
length: Math.ceil((filter.data.max - filter.data.min) / (filter.data.step || 1)) + 1,
|
|
2947
|
+
}, function (_, i) { return filter.data.min + i * (filter.data.step || 1); });
|
|
2948
|
+
return (jsx(RangeFilter, { title: "Rango de ".concat(filter.title.toLowerCase()), minValue: filter.data.min, maxValue: filter.data.max, step: filter.data.step || 1, data: data, value: rangeValue, onChange: handleChange, className: "w-full" }));
|
|
2949
|
+
};
|
|
2950
|
+
// =========================================================================
|
|
2951
|
+
// DATE FILTER
|
|
2952
|
+
// =========================================================================
|
|
2953
|
+
var DateFilter = function (_a) {
|
|
2954
|
+
_a.filter; var value = _a.value, onChange = _a.onChange;
|
|
2955
|
+
var handleDateSelectorChange = function (dateSelectorValue) {
|
|
2956
|
+
onChange({
|
|
2957
|
+
type: dateSelectorValue.type === HolidayType.SingleDay
|
|
2958
|
+
? "singleDay"
|
|
2959
|
+
: "dateRange",
|
|
2960
|
+
date: dateSelectorValue.date ? dateSelectorValue.date.toString() : null,
|
|
2961
|
+
dateRange: dateSelectorValue.dateRange
|
|
2962
|
+
? {
|
|
2963
|
+
start: dateSelectorValue.dateRange.start
|
|
2964
|
+
? dateSelectorValue.dateRange.start.toString()
|
|
2965
|
+
: null,
|
|
2966
|
+
end: dateSelectorValue.dateRange.end
|
|
2967
|
+
? dateSelectorValue.dateRange.end.toString()
|
|
2968
|
+
: null,
|
|
2969
|
+
}
|
|
2970
|
+
: null,
|
|
2971
|
+
});
|
|
2972
|
+
};
|
|
2973
|
+
// Convert our internal format to DateSelector format
|
|
2974
|
+
var getInitialType = function () {
|
|
2975
|
+
if ((value === null || value === void 0 ? void 0 : value.type) === "dateRange") {
|
|
2976
|
+
return HolidayType.DateRange;
|
|
2977
|
+
}
|
|
2978
|
+
return HolidayType.SingleDay;
|
|
2979
|
+
};
|
|
2980
|
+
// For now, we'll let DateSelector handle its own state
|
|
2981
|
+
// The component will reset when the filter value changes
|
|
2982
|
+
var getInitialDate = function () {
|
|
2983
|
+
return undefined;
|
|
2984
|
+
};
|
|
2985
|
+
var getInitialDateRange = function () {
|
|
2986
|
+
return undefined;
|
|
2987
|
+
};
|
|
2988
|
+
return (jsx(DateSelector, { initialType: getInitialType(), initialDate: getInitialDate(), initialDateRange: getInitialDateRange(), onChange: handleDateSelectorChange, className: "w-full" }));
|
|
2989
|
+
};
|
|
2990
|
+
|
|
2991
|
+
/**
|
|
2992
|
+
* DrawerFilters - Generic component for dynamic filters in drawer.
|
|
2993
|
+
*
|
|
2994
|
+
* Características:
|
|
2995
|
+
* - Dynamic header with title and description
|
|
2996
|
+
* - Body with configurable filters (select, multiselect, range, date)
|
|
2997
|
+
* - Footer with action buttons (clear, cancel, apply)
|
|
2998
|
+
* - Internal state management of filters
|
|
2999
|
+
* - Callback for applying filters with processed values
|
|
3000
|
+
*/
|
|
3001
|
+
var DrawerFilters = function (_a) {
|
|
3002
|
+
var isOpen = _a.isOpen, onOpenChange = _a.onOpenChange, config = _a.config, onApplyFilters = _a.onApplyFilters, onClearFilters = _a.onClearFilters, onCancel = _a.onCancel, className = _a.className, translations = _a.translations;
|
|
3003
|
+
var _b = useState({}), filterValues = _b[0], setFilterValues = _b[1];
|
|
3004
|
+
// Handle changes in individual filters
|
|
3005
|
+
var handleFilterChange = useCallback(function (filterKey, value) {
|
|
3006
|
+
setFilterValues(function (prev) {
|
|
3007
|
+
var _a;
|
|
3008
|
+
return (__assign(__assign({}, prev), (_a = {}, _a[filterKey] = value, _a)));
|
|
3009
|
+
});
|
|
3010
|
+
}, []);
|
|
3011
|
+
// Clear all filters
|
|
3012
|
+
var handleClearFilters = useCallback(function () {
|
|
3013
|
+
setFilterValues({});
|
|
3014
|
+
onClearFilters === null || onClearFilters === void 0 ? void 0 : onClearFilters();
|
|
3015
|
+
}, [onClearFilters]);
|
|
3016
|
+
// Handle drawer open/close changes
|
|
3017
|
+
var handleOpenChange = useCallback(function (open) {
|
|
3018
|
+
// Only close if explicitly requested (not from internal interactions)
|
|
3019
|
+
if (!open) {
|
|
3020
|
+
onOpenChange(false);
|
|
3021
|
+
}
|
|
3022
|
+
}, [onOpenChange]);
|
|
3023
|
+
// Cancel and close drawer
|
|
3024
|
+
var handleCancel = useCallback(function () {
|
|
3025
|
+
onCancel === null || onCancel === void 0 ? void 0 : onCancel();
|
|
3026
|
+
onOpenChange(false);
|
|
3027
|
+
}, [onCancel, onOpenChange]);
|
|
3028
|
+
// Apply filters and process values
|
|
3029
|
+
var handleApplyFilters = useCallback(function () {
|
|
3030
|
+
var processedFilters = {};
|
|
3031
|
+
var _loop_1 = function (key, value) {
|
|
3032
|
+
if (value === undefined || value === null) {
|
|
3033
|
+
return "continue";
|
|
3034
|
+
}
|
|
3035
|
+
var filterConfig = config.data.find(function (f) { return f.key === key; });
|
|
3036
|
+
if (!filterConfig) {
|
|
3037
|
+
return "continue";
|
|
3038
|
+
}
|
|
3039
|
+
switch (filterConfig.type) {
|
|
3040
|
+
case "select":
|
|
3041
|
+
processedFilters[key] = value.value;
|
|
3042
|
+
break;
|
|
3043
|
+
case "date":
|
|
3044
|
+
if (value && "type" in value) {
|
|
3045
|
+
if (value.type === "singleDay" && value.date) {
|
|
3046
|
+
processedFilters[key] = value.date;
|
|
3047
|
+
}
|
|
3048
|
+
else if (value.type === "dateRange" &&
|
|
3049
|
+
value.dateRange &&
|
|
3050
|
+
value.dateRange.start &&
|
|
3051
|
+
value.dateRange.end) {
|
|
3052
|
+
processedFilters[key] =
|
|
3053
|
+
"".concat(value.dateRange.start, "-").concat(value.dateRange.end);
|
|
3054
|
+
}
|
|
3055
|
+
}
|
|
3056
|
+
break;
|
|
3057
|
+
case "multiselect":
|
|
3058
|
+
if ("values" in value &&
|
|
3059
|
+
Array.isArray(value.values) &&
|
|
3060
|
+
value.values.length > 0) {
|
|
3061
|
+
processedFilters[key] = value.values.join(",");
|
|
3062
|
+
}
|
|
3063
|
+
break;
|
|
3064
|
+
case "range":
|
|
3065
|
+
if ("min" in value &&
|
|
3066
|
+
"max" in value &&
|
|
3067
|
+
(value.min !== undefined || value.max !== undefined)) {
|
|
3068
|
+
processedFilters[key] = "".concat(value.min || 0, "-").concat(value.max || 0);
|
|
3069
|
+
}
|
|
3070
|
+
break;
|
|
3071
|
+
}
|
|
3072
|
+
};
|
|
3073
|
+
// Procesar cada filtro según su tipo
|
|
3074
|
+
for (var _i = 0, _a = Object.entries(filterValues); _i < _a.length; _i++) {
|
|
3075
|
+
var _b = _a[_i], key = _b[0], value = _b[1];
|
|
3076
|
+
_loop_1(key, value);
|
|
3077
|
+
}
|
|
3078
|
+
onApplyFilters(processedFilters);
|
|
3079
|
+
onOpenChange(false);
|
|
3080
|
+
}, [filterValues, config.data, onApplyFilters, onOpenChange]);
|
|
3081
|
+
return (jsx(Drawer, { isOpen: isOpen, onOpenChange: handleOpenChange, placement: "right", size: "md", className: cn("drawer-filters", className), isDismissable: false, hideCloseButton: false, children: jsxs(DrawerContent, { children: [jsx(DrawerFiltersHeader, { title: config.title, description: config.description }), jsx(DrawerBody, { className: "px-6 py-10", children: jsx("div", { className: "space-y-3", children: config.data.map(function (filter) {
|
|
3082
|
+
return (jsx(FilterSection, { filter: filter, value: filterValues[filter.key], onChange: function (value) { return handleFilterChange(filter.key, value); } }, filter.key));
|
|
3083
|
+
}) }) }), jsx(DrawerFiltersFooter, { onClearFilters: handleClearFilters, onCancel: handleCancel, onApplyFilters: handleApplyFilters, translations: translations })] }) }));
|
|
3084
|
+
};
|
|
3085
|
+
DrawerFilters.displayName = "DrawerFilters";
|
|
3086
|
+
|
|
2718
3087
|
var Modal = function (props) {
|
|
2719
3088
|
return (jsx(Modal$1, __assign({ shouldBlockScroll: true, radius: "lg", className: "py-9 px-6" }, props)));
|
|
2720
3089
|
};
|
|
@@ -2886,4 +3255,4 @@ var NavigationLoadingProvider = function (_a) {
|
|
|
2886
3255
|
return (jsxs(NavigationLoadingContext.Provider, { value: value, children: [children, jsx(NavigationLoadingOverlay, { isVisible: isVisible })] }));
|
|
2887
3256
|
};
|
|
2888
3257
|
|
|
2889
|
-
export { AddHolidayForm, AnalyticsCard, AuraAutocomplete, AuraTable, AuraToastProvider, BreadcrumbsComponent, Button, Card, Chip, ColorSelector, DatePicker, DateRangePicker, DateSelector, GlobalToast, H1, H2, H3, H4, HeaderComponent, HolidayType, IconComponent, Input, MenuComponent, Modal, ModalBody, ModalContent, ModalFooter, ModalHeader, MultiStepWizard, NavigationLoadingContext, NavigationLoadingOverlay, NavigationLoadingProvider, P, Pagination, Phone, PromotionalBanner, RowSteps, ScheduleRow, SearchInput, Select, StepIndicator, Switch as SwitchComponent, Textarea, ThemeContext, ThemePicker, ThemeProvider, TimeInput as TimeInputComponent, ToastContext, UploadFile, VerticalSteps, sizeMap, themeColors, useAuraToast, useNavigationLoading, useThemeContext };
|
|
3258
|
+
export { AddHolidayForm, AnalyticsCard, AuraAutocomplete, AuraTable, AuraToastProvider, BreadcrumbsComponent, Button, Card, Chip, ColorSelector, DatePicker, DateRangePicker, DateSelector, DrawerFilters, GlobalToast, H1, H2, H3, H4, HeaderComponent, HolidayType, IconComponent, Input, MenuComponent, Modal, ModalBody, ModalContent, ModalFooter, ModalHeader, MultiStepWizard, NavigationLoadingContext, NavigationLoadingOverlay, NavigationLoadingProvider, P, Pagination, Phone, PromotionalBanner, RangeFilter, RowSteps, ScheduleRow, SearchInput, Select, StepIndicator, Switch as SwitchComponent, Textarea, ThemeContext, ThemePicker, ThemeProvider, TimeInput as TimeInputComponent, ToastContext, UploadFile, VerticalSteps, sizeMap, themeColors, useAuraToast, useNavigationLoading, useThemeContext };
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type React from "react";
|
|
2
|
+
import type { DrawerFiltersProps } from "./DrawerFilters.types";
|
|
3
|
+
/**
|
|
4
|
+
* DrawerFilters - Generic component for dynamic filters in drawer.
|
|
5
|
+
*
|
|
6
|
+
* Características:
|
|
7
|
+
* - Dynamic header with title and description
|
|
8
|
+
* - Body with configurable filters (select, multiselect, range, date)
|
|
9
|
+
* - Footer with action buttons (clear, cancel, apply)
|
|
10
|
+
* - Internal state management of filters
|
|
11
|
+
* - Callback for applying filters with processed values
|
|
12
|
+
*/
|
|
13
|
+
export declare const DrawerFilters: React.FC<DrawerFiltersProps>;
|
|
14
|
+
//# sourceMappingURL=DrawerFilters.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DrawerFilters.d.ts","sourceRoot":"","sources":["../../../../src/components/drawer-filters/DrawerFilters.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,KAAK,EAEX,kBAAkB,EAKlB,MAAM,uBAAuB,CAAC;AAK/B;;;;;;;;;GASG;AACH,eAAO,MAAM,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC,kBAAkB,CAyJtD,CAAC"}
|
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
export type FilterType = "select" | "multiselect" | "range" | "date";
|
|
2
|
+
export interface BaseFilterData {
|
|
3
|
+
key: string;
|
|
4
|
+
title: string;
|
|
5
|
+
description?: string;
|
|
6
|
+
type: FilterType;
|
|
7
|
+
}
|
|
8
|
+
export interface SelectFilterData extends BaseFilterData {
|
|
9
|
+
type: "select";
|
|
10
|
+
data: Array<{
|
|
11
|
+
label: string;
|
|
12
|
+
value: string;
|
|
13
|
+
}>;
|
|
14
|
+
}
|
|
15
|
+
export interface MultiSelectFilterData extends BaseFilterData {
|
|
16
|
+
type: "multiselect";
|
|
17
|
+
data: Array<{
|
|
18
|
+
label: string;
|
|
19
|
+
value: string;
|
|
20
|
+
}>;
|
|
21
|
+
}
|
|
22
|
+
export interface RangeFilterData extends BaseFilterData {
|
|
23
|
+
type: "range";
|
|
24
|
+
data: {
|
|
25
|
+
min: number;
|
|
26
|
+
max: number;
|
|
27
|
+
step?: number;
|
|
28
|
+
unit?: string;
|
|
29
|
+
};
|
|
30
|
+
}
|
|
31
|
+
export interface DateFilterData extends BaseFilterData {
|
|
32
|
+
type: "date";
|
|
33
|
+
data: {
|
|
34
|
+
min?: string;
|
|
35
|
+
max?: string;
|
|
36
|
+
placeholder?: string;
|
|
37
|
+
};
|
|
38
|
+
}
|
|
39
|
+
export type FilterData = SelectFilterData | MultiSelectFilterData | RangeFilterData | DateFilterData;
|
|
40
|
+
export interface DrawerFiltersConfig {
|
|
41
|
+
title: string;
|
|
42
|
+
description: string;
|
|
43
|
+
data: FilterData[];
|
|
44
|
+
}
|
|
45
|
+
export interface DrawerFiltersProps {
|
|
46
|
+
isOpen: boolean;
|
|
47
|
+
onOpenChange: (isOpen: boolean) => void;
|
|
48
|
+
config: DrawerFiltersConfig;
|
|
49
|
+
onApplyFilters: (filters: Record<string, SelectFilterValue | MultiSelectFilterValue | RangeFilterValue | DateFilterValue>) => void;
|
|
50
|
+
onClearFilters?: () => void;
|
|
51
|
+
onCancel?: () => void;
|
|
52
|
+
className?: string;
|
|
53
|
+
translations?: {
|
|
54
|
+
clearFilters?: string;
|
|
55
|
+
cancel?: string;
|
|
56
|
+
applyFilters?: string;
|
|
57
|
+
};
|
|
58
|
+
}
|
|
59
|
+
export interface FilterSectionProps {
|
|
60
|
+
filter: FilterData;
|
|
61
|
+
value?: SelectFilterValue | MultiSelectFilterValue | RangeFilterValue | DateFilterValue;
|
|
62
|
+
onChange: (value: SelectFilterValue | MultiSelectFilterValue | RangeFilterValue | DateFilterValue) => void;
|
|
63
|
+
isExpanded?: boolean;
|
|
64
|
+
onToggleExpanded?: () => void;
|
|
65
|
+
}
|
|
66
|
+
export interface DrawerFiltersHeaderProps {
|
|
67
|
+
title: string;
|
|
68
|
+
description: string;
|
|
69
|
+
}
|
|
70
|
+
export interface DrawerFiltersFooterProps {
|
|
71
|
+
onClearFilters: () => void;
|
|
72
|
+
onCancel: () => void;
|
|
73
|
+
onApplyFilters: () => void;
|
|
74
|
+
translations?: {
|
|
75
|
+
clearFilters?: string;
|
|
76
|
+
cancel?: string;
|
|
77
|
+
applyFilters?: string;
|
|
78
|
+
};
|
|
79
|
+
}
|
|
80
|
+
export interface FilterValues {
|
|
81
|
+
[key: string]: SelectFilterValue | MultiSelectFilterValue | RangeFilterValue | DateFilterValue;
|
|
82
|
+
}
|
|
83
|
+
export interface SelectFilterValue {
|
|
84
|
+
value: string;
|
|
85
|
+
}
|
|
86
|
+
export interface MultiSelectFilterValue {
|
|
87
|
+
values: string[];
|
|
88
|
+
}
|
|
89
|
+
export interface RangeFilterValue {
|
|
90
|
+
min: number;
|
|
91
|
+
max: number;
|
|
92
|
+
}
|
|
93
|
+
export interface DateFilterValue {
|
|
94
|
+
type: "singleDay" | "dateRange";
|
|
95
|
+
date: string | null;
|
|
96
|
+
dateRange: {
|
|
97
|
+
start: string | null;
|
|
98
|
+
end: string | null;
|
|
99
|
+
} | null;
|
|
100
|
+
}
|
|
101
|
+
//# sourceMappingURL=DrawerFilters.types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DrawerFilters.types.d.ts","sourceRoot":"","sources":["../../../../src/components/drawer-filters/DrawerFilters.types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type React from "react";
|
|
2
|
+
import type { DrawerFiltersFooterProps } from "../DrawerFilters.types";
|
|
3
|
+
/**
|
|
4
|
+
* Footer of the DrawerFilters with action buttons.
|
|
5
|
+
*/
|
|
6
|
+
export declare const DrawerFiltersFooter: React.FC<DrawerFiltersFooterProps>;
|
|
7
|
+
//# sourceMappingURL=DrawerFiltersFooter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DrawerFiltersFooter.d.ts","sourceRoot":"","sources":["../../../../../src/components/drawer-filters/_internal/DrawerFiltersFooter.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,wBAAwB,CAAC;AAEvE;;GAEG;AACH,eAAO,MAAM,mBAAmB,EAAE,KAAK,CAAC,EAAE,CAAC,wBAAwB,CAiClE,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type React from "react";
|
|
2
|
+
import type { DrawerFiltersHeaderProps } from "../DrawerFilters.types";
|
|
3
|
+
/**
|
|
4
|
+
* Header of the DrawerFilters with title and description.
|
|
5
|
+
*/
|
|
6
|
+
export declare const DrawerFiltersHeader: React.FC<DrawerFiltersHeaderProps>;
|
|
7
|
+
//# sourceMappingURL=DrawerFiltersHeader.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DrawerFiltersHeader.d.ts","sourceRoot":"","sources":["../../../../../src/components/drawer-filters/_internal/DrawerFiltersHeader.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,wBAAwB,CAAC;AAEvE;;GAEG;AACH,eAAO,MAAM,mBAAmB,EAAE,KAAK,CAAC,EAAE,CAAC,wBAAwB,CAUlE,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FilterSection.d.ts","sourceRoot":"","sources":["../../../../../src/components/drawer-filters/_internal/FilterSection.tsx"],"names":[],"mappings":"AAUA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,KAAK,EAGX,kBAAkB,EAOlB,MAAM,wBAAwB,CAAC;AAMhC,eAAO,MAAM,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC,kBAAkB,CAsLtD,CAAC"}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
export { DrawerFilters } from "./DrawerFilters";
|
|
2
|
+
export type { DrawerFiltersProps, DrawerFiltersConfig, FilterData, FilterType, FilterValues, SelectFilterData, MultiSelectFilterData, RangeFilterData, DateFilterData, } from "./DrawerFilters.types";
|
|
3
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/drawer-filters/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAGhD,YAAY,EACX,kBAAkB,EAClB,mBAAmB,EACnB,UAAU,EACV,UAAU,EACV,YAAY,EACZ,gBAAgB,EAChB,qBAAqB,EACrB,eAAe,EACf,cAAc,GACd,MAAM,uBAAuB,CAAC"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
declare const ModalBody: import("@heroui/
|
|
1
|
+
declare const ModalBody: import("@heroui/react").InternalForwardRefRenderFunction<"div", import("@heroui/react").ModalBodyProps, never>;
|
|
2
2
|
export default ModalBody;
|
|
3
3
|
//# sourceMappingURL=ModalBody.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ModalBody.d.ts","sourceRoot":"","sources":["../../../../../src/components/modal/_internal/ModalBody.tsx"],"names":[],"mappings":"AAEA,QAAA,MAAM,SAAS,
|
|
1
|
+
{"version":3,"file":"ModalBody.d.ts","sourceRoot":"","sources":["../../../../../src/components/modal/_internal/ModalBody.tsx"],"names":[],"mappings":"AAEA,QAAA,MAAM,SAAS,gHAAkB,CAAC;AAElC,eAAe,SAAS,CAAC"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
declare const ModalFooter: import("@heroui/
|
|
1
|
+
declare const ModalFooter: import("@heroui/react").InternalForwardRefRenderFunction<"footer", import("@heroui/react").ModalFooterProps, never>;
|
|
2
2
|
export default ModalFooter;
|
|
3
3
|
//# sourceMappingURL=ModalFooter.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ModalFooter.d.ts","sourceRoot":"","sources":["../../../../../src/components/modal/_internal/ModalFooter.tsx"],"names":[],"mappings":"AAEA,QAAA,MAAM,WAAW,
|
|
1
|
+
{"version":3,"file":"ModalFooter.d.ts","sourceRoot":"","sources":["../../../../../src/components/modal/_internal/ModalFooter.tsx"],"names":[],"mappings":"AAEA,QAAA,MAAM,WAAW,qHAAoB,CAAC;AAEtC,eAAe,WAAW,CAAC"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
declare const ModalHeader: import("@heroui/
|
|
1
|
+
declare const ModalHeader: import("@heroui/react").InternalForwardRefRenderFunction<"header", import("@heroui/react").ModalHeaderProps, never>;
|
|
2
2
|
export default ModalHeader;
|
|
3
3
|
//# sourceMappingURL=ModalHeader.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ModalHeader.d.ts","sourceRoot":"","sources":["../../../../../src/components/modal/_internal/ModalHeader.tsx"],"names":[],"mappings":"AAEA,QAAA,MAAM,WAAW,
|
|
1
|
+
{"version":3,"file":"ModalHeader.d.ts","sourceRoot":"","sources":["../../../../../src/components/modal/_internal/ModalHeader.tsx"],"names":[],"mappings":"AAEA,QAAA,MAAM,WAAW,qHAAoB,CAAC;AAEtC,eAAe,WAAW,CAAC"}
|