@beweco/aurora-ui 0.1.15 → 0.1.17

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/index.cjs.js CHANGED
@@ -2537,14 +2537,19 @@ var FilePreview = function (_a) {
2537
2537
  * />
2538
2538
  * ```
2539
2539
  */
2540
+ // Tamaños predefinidos del componente
2541
+ var SIZE_DIMENSIONS = {
2542
+ micro: { width: "64px", height: "64px" },
2543
+ small: { width: "100px", height: "100px" },
2544
+ medium: { width: "200px", height: "200px" },
2545
+ large: { width: "100%", height: "auto" },
2546
+ };
2540
2547
  var UploadFile = function (_a) {
2541
2548
  var text = _a.text, textColor = _a.textColor, subText = _a.subText,
2542
2549
  // borderColor, // TODO: Implementar colores personalizados
2543
2550
  iconColor = _a.iconColor,
2544
2551
  // backgroundColor, // TODO: Implementar colores personalizados
2545
- _b = _a.width,
2546
- // backgroundColor, // TODO: Implementar colores personalizados
2547
- width = _b === void 0 ? "100%" : _b, _c = _a.height, height = _c === void 0 ? "auto" : _c, _d = _a.multiple, multiple = _d === void 0 ? false : _d, _e = _a.maxFiles, maxFiles = _e === void 0 ? 1 : _e, maxFileSize = _a.maxFileSize, _f = _a.acceptedFiles, acceptedFiles = _f === void 0 ? ".pdf" : _f, _g = _a.icon, icon = _g === void 0 ? "heroicons:arrow-up-on-square" : _g, onUpload = _a.onUpload, onError = _a.onError, _h = _a.error, error = _h === void 0 ? false : _h, _j = _a.success, success = _j === void 0 ? false : _j, _k = _a.disabled, disabled = _k === void 0 ? false : _k, errorText = _a.errorText, cropConfig = _a.cropConfig, image = _a.image, _l = _a.className, className = _l === void 0 ? "" : _l, _m = _a.translations, translations = _m === void 0 ? {} : _m;
2552
+ size = _a.size, _b = _a.width, width = _b === void 0 ? "100%" : _b, _c = _a.height, height = _c === void 0 ? "auto" : _c, _d = _a.multiple, multiple = _d === void 0 ? false : _d, _e = _a.maxFiles, maxFiles = _e === void 0 ? 1 : _e, maxFileSize = _a.maxFileSize, _f = _a.acceptedFiles, acceptedFiles = _f === void 0 ? ".pdf" : _f, _g = _a.icon, icon = _g === void 0 ? "heroicons:arrow-up-on-square" : _g, onUpload = _a.onUpload, onError = _a.onError, _h = _a.error, error = _h === void 0 ? false : _h, _j = _a.success, success = _j === void 0 ? false : _j, _k = _a.disabled, disabled = _k === void 0 ? false : _k, errorText = _a.errorText, cropConfig = _a.cropConfig, image = _a.image, _l = _a.className, className = _l === void 0 ? "" : _l, _m = _a.translations, translations = _m === void 0 ? {} : _m;
2548
2553
  var inputRef = React.useRef(null);
2549
2554
  var uploadImageRef = React.useRef(image || null);
2550
2555
  var _o = React.useState(false), isDragging = _o[0], setIsDragging = _o[1];
@@ -2684,8 +2689,25 @@ var UploadFile = function (_a) {
2684
2689
  uploadImageRef.current = null;
2685
2690
  onUpload([]);
2686
2691
  };
2692
+ // Obtener dimensiones basadas en size o usar width/height personalizados
2693
+ var dimensions = React.useMemo(function () {
2694
+ if (size) {
2695
+ return SIZE_DIMENSIONS[size];
2696
+ }
2697
+ return { width: width, height: height };
2698
+ }, [size, width, height]);
2699
+ // Determina si se debe mostrar texto
2700
+ // Micro y small siempre muestran texto; medium y large solo en pantallas grandes
2701
+ var shouldShowText = React.useMemo(function () {
2702
+ // Si hay un tamaño definido, siempre se puede mostrar texto
2703
+ if (size !== "micro" && size !== "small") {
2704
+ return true;
2705
+ }
2706
+ // Si no hay size pero width es 100%, se comporta como large
2707
+ return dimensions.width === "100%";
2708
+ }, [size, dimensions.width]);
2687
2709
  // Clases CSS dinámicas usando Tailwind
2688
- var containerClasses = "\n\t\trelative w-full border-2 border-dashed rounded-2xl p-3 transition-all duration-300 bg-red-500\n\t\t".concat(width !== "100%" ? "w-[".concat(width, "]") : "w-full", "\n\t\t").concat(height !== "auto" ? "h-[".concat(height, "]") : "min-h-28", "\n\t\t").concat(isDragging
2710
+ var containerClasses = "\n\t\trelative border-2 border-dashed rounded-2xl transition-all duration-300\n\t\t".concat(dimensions.width === "100%" ? "w-full" : "", "\n\t\t").concat(dimensions.height === "auto" ? "min-h-28" : "", "\n\t\t").concat(size === "micro" ? "p-1" : size === "small" ? "p-2" : "p-3", "\n\t\t").concat(isDragging
2689
2711
  ? "border-primary-500 bg-primary-50 dark:bg-primary-900"
2690
2712
  : error
2691
2713
  ? "border-danger-500 bg-danger-50 dark:bg-danger-950"
@@ -2696,11 +2718,25 @@ var UploadFile = function (_a) {
2696
2718
  : "border-gray-300 hover:border-gray-400 bg-primary-50 dark:bg-gray-900", "\n\t\t").concat(!(disabled || uploadImageRef.current) ? "cursor-pointer" : "cursor-default", "\n\t\t").concat(className, "\n\t")
2697
2719
  .trim()
2698
2720
  .replace(/\s+/g, " ");
2699
- var textClasses = "\n\t\ttext-centertext-base ont-medium\n\t\t".concat(disabled ? "text-default-400" : textColor || "text-default-700 dark:text-default-200", "\n\t");
2721
+ // Estilos inline para dimensiones exactas cuando hay un size definido
2722
+ var containerStyle = size && dimensions.width !== "100%"
2723
+ ? {
2724
+ width: dimensions.width,
2725
+ height: dimensions.height,
2726
+ boxSizing: "border-box"
2727
+ }
2728
+ : undefined;
2729
+ var textClasses = "\n\t\ttext-center font-medium\n\t\t".concat(size === "micro" ? "text-xs" : size === "small" ? "text-sm" : "text-base", "\n\t\t").concat(disabled ? "text-default-400" : textColor || "text-default-700 dark:text-default-200", "\n\t");
2700
2730
  var subTextClasses = "\n\t\ttext-tiny text-center\n\t\t".concat(disabled ? "text-default-400" : "text-default-500 dark:text-default-400", "\n\t");
2701
- return (jsxRuntime.jsxs("div", { className: "relative", children: [jsxRuntime.jsx(react.Card, { className: containerClasses, isPressable: !(disabled || uploadImageRef.current), onPress: handleClick, children: jsxRuntime.jsxs(react.CardBody, { className: "flex flex-col items-center justify-center gap-3 sm:gap-4 relative overflow-hidden", onDragEnter: handleDragEnter, onDragOver: handleDragOver, onDragLeave: handleDragLeave, onDrop: handleDrop, children: [uploadImageRef.current && (jsxRuntime.jsx(FilePreview, { file: uploadImageRef.current, onRemove: handleRemoveImage, removeAriaLabel: t.removeFileAriaLabel })), jsxRuntime.jsx("div", { className: uploadImageRef.current
2731
+ return (jsxRuntime.jsxs("div", { className: "relative", children: [jsxRuntime.jsx(react.Card, { className: containerClasses, style: containerStyle, isPressable: !(disabled || uploadImageRef.current), onPress: handleClick, children: jsxRuntime.jsxs(react.CardBody, { className: "flex flex-col items-center justify-center relative overflow-hidden ".concat(size === "micro" ? "gap-1" : size === "small" ? "gap-1.5" : "gap-3 sm:gap-4"), onDragEnter: handleDragEnter, onDragOver: handleDragOver, onDragLeave: handleDragLeave, onDrop: handleDrop, children: [uploadImageRef.current && (jsxRuntime.jsx(FilePreview, { file: uploadImageRef.current, onRemove: handleRemoveImage, removeAriaLabel: t.removeFileAriaLabel })), jsxRuntime.jsx("div", { className: uploadImageRef.current
2702
2732
  ? "opacity-0"
2703
- : "opacity-100 transition-opacity", children: jsxRuntime.jsxs("div", { className: "flex flex-col items-center gap-3 sm:gap-4", children: [jsxRuntime.jsx(IconComponent, { icon: icon, size: "xl", className: "sm:text-4xl lg:text-5xl ".concat(disabled ? "text-gray-400" : iconColor || "text-primary") }), jsxRuntime.jsxs("div", { className: "text-center px-2", children: [jsxRuntime.jsx("p", { className: textClasses, children: isDragging ? t.dragText : finalText }), finalSubText && !isDragging && (jsxRuntime.jsx("p", { className: subTextClasses, children: finalSubText }))] })] }) }), jsxRuntime.jsx("input", { ref: inputRef, type: "file", className: "hidden", multiple: multiple, accept: Array.isArray(acceptedFiles)
2733
+ : "opacity-100 transition-opacity", children: jsxRuntime.jsxs("div", { className: "flex flex-col items-center ".concat(size === "micro" ? "gap-1" : size === "small" ? "gap-1.5" : "gap-3 sm:gap-4"), children: [jsxRuntime.jsx(IconComponent, { icon: icon, size: size === "micro" ? "sm" : size === "small" ? "md" : "xl", className: "".concat(size === "micro" ? "text-lg"
2734
+ : size === "small" ? "text-xl sm:text-2xl"
2735
+ : "sm:text-4xl lg:text-5xl", " ").concat(disabled ? "text-gray-400" : iconColor || "text-primary") }), shouldShowText && (jsxRuntime.jsxs("div", { className: "text-center ".concat(size === "micro" ? "px-0.5"
2736
+ : size === "small" ? "px-1"
2737
+ : "px-2", " ").concat(size === "micro" || size === "small"
2738
+ ? "block"
2739
+ : "hidden sm:block"), children: [jsxRuntime.jsx("p", { className: textClasses, children: isDragging ? t.dragText : finalText }), finalSubText && !isDragging && (jsxRuntime.jsx("p", { className: subTextClasses, children: finalSubText }))] }))] }) }), jsxRuntime.jsx("input", { ref: inputRef, type: "file", className: "hidden", multiple: multiple, accept: Array.isArray(acceptedFiles)
2704
2740
  ? acceptedFiles.join(",")
2705
2741
  : acceptedFiles, onChange: handleChange, disabled: disabled, "aria-label": t.uploadAreaAriaLabel })] }) }), error && errorText && (jsxRuntime.jsx("p", { className: "text-red-500 text-sm mt-2", role: "alert", children: errorText })), showCropModal && selectedImageUrl && cropConfig && (jsxRuntime.jsx(ImageCropModal, { isOpen: showCropModal, imageUrl: selectedImageUrl, targetWidth: cropConfig.targetWidth, targetHeight: cropConfig.targetHeight, onSave: handleCropSave, onCancel: handleCropCancel, translations: t }))] }));
2706
2742
  };
@@ -2845,6 +2881,10 @@ var FilterSection = function (_a) {
2845
2881
  value.dateRange &&
2846
2882
  value.dateRange.start &&
2847
2883
  value.dateRange.end)));
2884
+ case "text":
2885
+ return value && "value" in value && value.value !== "";
2886
+ case "number":
2887
+ return value && "value" in value && value.value !== null && value.value !== undefined;
2848
2888
  default:
2849
2889
  return false;
2850
2890
  }
@@ -2878,6 +2918,10 @@ var FilterSection = function (_a) {
2878
2918
  value.dateRange.end))
2879
2919
  ? 1
2880
2920
  : 0;
2921
+ case "text":
2922
+ return value && "value" in value && value.value !== "" ? 1 : 0;
2923
+ case "number":
2924
+ return value && "value" in value && value.value !== null && value.value !== undefined ? 1 : 0;
2881
2925
  default:
2882
2926
  return 0;
2883
2927
  }
@@ -2892,6 +2936,10 @@ var FilterSection = function (_a) {
2892
2936
  return (jsxRuntime.jsx(RangeFilterComponent, { filter: filter, value: value, onChange: onChange }));
2893
2937
  case "date":
2894
2938
  return (jsxRuntime.jsx(DateFilter, { filter: filter, value: value, onChange: onChange }));
2939
+ case "text":
2940
+ return (jsxRuntime.jsx(TextFilter, { filter: filter, value: value, onChange: onChange }));
2941
+ case "number":
2942
+ return (jsxRuntime.jsx(NumberFilter, { filter: filter, value: value, onChange: onChange }));
2895
2943
  default:
2896
2944
  return null;
2897
2945
  }
@@ -2986,6 +3034,28 @@ var DateFilter = function (_a) {
2986
3034
  };
2987
3035
  return (jsxRuntime.jsx(DateSelector, { initialType: getInitialType(), initialDate: getInitialDate(), initialDateRange: getInitialDateRange(), onChange: handleDateSelectorChange, className: "w-full" }));
2988
3036
  };
3037
+ // =========================================================================
3038
+ // TEXT FILTER
3039
+ // =========================================================================
3040
+ var TextFilter = function (_a) {
3041
+ var filter = _a.filter, value = _a.value, onChange = _a.onChange;
3042
+ var currentValue = (value === null || value === void 0 ? void 0 : value.value) || "";
3043
+ return (jsxRuntime.jsx(Input, { type: "text", placeholder: filter.data.placeholder || "Ingrese ".concat(filter.title.toLowerCase()), value: currentValue, onValueChange: function (newValue) {
3044
+ onChange({ value: newValue });
3045
+ }, className: "w-full" }));
3046
+ };
3047
+ // =========================================================================
3048
+ // NUMBER FILTER
3049
+ // =========================================================================
3050
+ var NumberFilter = function (_a) {
3051
+ var _b;
3052
+ var filter = _a.filter, value = _a.value, onChange = _a.onChange;
3053
+ var currentValue = ((_b = value === null || value === void 0 ? void 0 : value.value) === null || _b === void 0 ? void 0 : _b.toString()) || "";
3054
+ return (jsxRuntime.jsx(Input, { type: "number", placeholder: filter.data.placeholder || "Ingrese ".concat(filter.title.toLowerCase()), value: currentValue, onValueChange: function (newValue) {
3055
+ var numValue = newValue === "" ? null : Number(newValue);
3056
+ onChange({ value: numValue });
3057
+ }, min: filter.data.min, max: filter.data.max, step: filter.data.step, className: "w-full" }));
3058
+ };
2989
3059
 
2990
3060
  /**
2991
3061
  * DrawerFilters - Generic component for dynamic filters in drawer.
@@ -3067,6 +3137,16 @@ var DrawerFilters = function (_a) {
3067
3137
  processedFilters[key] = "".concat(value.min || 0, "-").concat(value.max || 0);
3068
3138
  }
3069
3139
  break;
3140
+ case "text":
3141
+ if (value && "value" in value && value.value !== "") {
3142
+ processedFilters[key] = value.value;
3143
+ }
3144
+ break;
3145
+ case "number":
3146
+ if (value && "value" in value && value.value !== null && value.value !== undefined) {
3147
+ processedFilters[key] = String(value.value);
3148
+ }
3149
+ break;
3070
3150
  }
3071
3151
  };
3072
3152
  // Procesar cada filtro según su tipo
package/dist/index.esm.js CHANGED
@@ -2538,14 +2538,19 @@ var FilePreview = function (_a) {
2538
2538
  * />
2539
2539
  * ```
2540
2540
  */
2541
+ // Tamaños predefinidos del componente
2542
+ var SIZE_DIMENSIONS = {
2543
+ micro: { width: "64px", height: "64px" },
2544
+ small: { width: "100px", height: "100px" },
2545
+ medium: { width: "200px", height: "200px" },
2546
+ large: { width: "100%", height: "auto" },
2547
+ };
2541
2548
  var UploadFile = function (_a) {
2542
2549
  var text = _a.text, textColor = _a.textColor, subText = _a.subText,
2543
2550
  // borderColor, // TODO: Implementar colores personalizados
2544
2551
  iconColor = _a.iconColor,
2545
2552
  // backgroundColor, // TODO: Implementar colores personalizados
2546
- _b = _a.width,
2547
- // backgroundColor, // TODO: Implementar colores personalizados
2548
- width = _b === void 0 ? "100%" : _b, _c = _a.height, height = _c === void 0 ? "auto" : _c, _d = _a.multiple, multiple = _d === void 0 ? false : _d, _e = _a.maxFiles, maxFiles = _e === void 0 ? 1 : _e, maxFileSize = _a.maxFileSize, _f = _a.acceptedFiles, acceptedFiles = _f === void 0 ? ".pdf" : _f, _g = _a.icon, icon = _g === void 0 ? "heroicons:arrow-up-on-square" : _g, onUpload = _a.onUpload, onError = _a.onError, _h = _a.error, error = _h === void 0 ? false : _h, _j = _a.success, success = _j === void 0 ? false : _j, _k = _a.disabled, disabled = _k === void 0 ? false : _k, errorText = _a.errorText, cropConfig = _a.cropConfig, image = _a.image, _l = _a.className, className = _l === void 0 ? "" : _l, _m = _a.translations, translations = _m === void 0 ? {} : _m;
2553
+ size = _a.size, _b = _a.width, width = _b === void 0 ? "100%" : _b, _c = _a.height, height = _c === void 0 ? "auto" : _c, _d = _a.multiple, multiple = _d === void 0 ? false : _d, _e = _a.maxFiles, maxFiles = _e === void 0 ? 1 : _e, maxFileSize = _a.maxFileSize, _f = _a.acceptedFiles, acceptedFiles = _f === void 0 ? ".pdf" : _f, _g = _a.icon, icon = _g === void 0 ? "heroicons:arrow-up-on-square" : _g, onUpload = _a.onUpload, onError = _a.onError, _h = _a.error, error = _h === void 0 ? false : _h, _j = _a.success, success = _j === void 0 ? false : _j, _k = _a.disabled, disabled = _k === void 0 ? false : _k, errorText = _a.errorText, cropConfig = _a.cropConfig, image = _a.image, _l = _a.className, className = _l === void 0 ? "" : _l, _m = _a.translations, translations = _m === void 0 ? {} : _m;
2549
2554
  var inputRef = useRef(null);
2550
2555
  var uploadImageRef = useRef(image || null);
2551
2556
  var _o = useState(false), isDragging = _o[0], setIsDragging = _o[1];
@@ -2685,8 +2690,25 @@ var UploadFile = function (_a) {
2685
2690
  uploadImageRef.current = null;
2686
2691
  onUpload([]);
2687
2692
  };
2693
+ // Obtener dimensiones basadas en size o usar width/height personalizados
2694
+ var dimensions = useMemo(function () {
2695
+ if (size) {
2696
+ return SIZE_DIMENSIONS[size];
2697
+ }
2698
+ return { width: width, height: height };
2699
+ }, [size, width, height]);
2700
+ // Determina si se debe mostrar texto
2701
+ // Micro y small siempre muestran texto; medium y large solo en pantallas grandes
2702
+ var shouldShowText = useMemo(function () {
2703
+ // Si hay un tamaño definido, siempre se puede mostrar texto
2704
+ if (size !== "micro" && size !== "small") {
2705
+ return true;
2706
+ }
2707
+ // Si no hay size pero width es 100%, se comporta como large
2708
+ return dimensions.width === "100%";
2709
+ }, [size, dimensions.width]);
2688
2710
  // Clases CSS dinámicas usando Tailwind
2689
- var containerClasses = "\n\t\trelative w-full border-2 border-dashed rounded-2xl p-3 transition-all duration-300 bg-red-500\n\t\t".concat(width !== "100%" ? "w-[".concat(width, "]") : "w-full", "\n\t\t").concat(height !== "auto" ? "h-[".concat(height, "]") : "min-h-28", "\n\t\t").concat(isDragging
2711
+ var containerClasses = "\n\t\trelative border-2 border-dashed rounded-2xl transition-all duration-300\n\t\t".concat(dimensions.width === "100%" ? "w-full" : "", "\n\t\t").concat(dimensions.height === "auto" ? "min-h-28" : "", "\n\t\t").concat(size === "micro" ? "p-1" : size === "small" ? "p-2" : "p-3", "\n\t\t").concat(isDragging
2690
2712
  ? "border-primary-500 bg-primary-50 dark:bg-primary-900"
2691
2713
  : error
2692
2714
  ? "border-danger-500 bg-danger-50 dark:bg-danger-950"
@@ -2697,11 +2719,25 @@ var UploadFile = function (_a) {
2697
2719
  : "border-gray-300 hover:border-gray-400 bg-primary-50 dark:bg-gray-900", "\n\t\t").concat(!(disabled || uploadImageRef.current) ? "cursor-pointer" : "cursor-default", "\n\t\t").concat(className, "\n\t")
2698
2720
  .trim()
2699
2721
  .replace(/\s+/g, " ");
2700
- var textClasses = "\n\t\ttext-centertext-base ont-medium\n\t\t".concat(disabled ? "text-default-400" : textColor || "text-default-700 dark:text-default-200", "\n\t");
2722
+ // Estilos inline para dimensiones exactas cuando hay un size definido
2723
+ var containerStyle = size && dimensions.width !== "100%"
2724
+ ? {
2725
+ width: dimensions.width,
2726
+ height: dimensions.height,
2727
+ boxSizing: "border-box"
2728
+ }
2729
+ : undefined;
2730
+ var textClasses = "\n\t\ttext-center font-medium\n\t\t".concat(size === "micro" ? "text-xs" : size === "small" ? "text-sm" : "text-base", "\n\t\t").concat(disabled ? "text-default-400" : textColor || "text-default-700 dark:text-default-200", "\n\t");
2701
2731
  var subTextClasses = "\n\t\ttext-tiny text-center\n\t\t".concat(disabled ? "text-default-400" : "text-default-500 dark:text-default-400", "\n\t");
2702
- return (jsxs("div", { className: "relative", children: [jsx(Card$1, { className: containerClasses, isPressable: !(disabled || uploadImageRef.current), onPress: handleClick, children: jsxs(CardBody, { className: "flex flex-col items-center justify-center gap-3 sm:gap-4 relative overflow-hidden", onDragEnter: handleDragEnter, onDragOver: handleDragOver, onDragLeave: handleDragLeave, onDrop: handleDrop, children: [uploadImageRef.current && (jsx(FilePreview, { file: uploadImageRef.current, onRemove: handleRemoveImage, removeAriaLabel: t.removeFileAriaLabel })), jsx("div", { className: uploadImageRef.current
2732
+ return (jsxs("div", { className: "relative", children: [jsx(Card$1, { className: containerClasses, style: containerStyle, isPressable: !(disabled || uploadImageRef.current), onPress: handleClick, children: jsxs(CardBody, { className: "flex flex-col items-center justify-center relative overflow-hidden ".concat(size === "micro" ? "gap-1" : size === "small" ? "gap-1.5" : "gap-3 sm:gap-4"), onDragEnter: handleDragEnter, onDragOver: handleDragOver, onDragLeave: handleDragLeave, onDrop: handleDrop, children: [uploadImageRef.current && (jsx(FilePreview, { file: uploadImageRef.current, onRemove: handleRemoveImage, removeAriaLabel: t.removeFileAriaLabel })), jsx("div", { className: uploadImageRef.current
2703
2733
  ? "opacity-0"
2704
- : "opacity-100 transition-opacity", children: jsxs("div", { className: "flex flex-col items-center gap-3 sm:gap-4", children: [jsx(IconComponent, { icon: icon, size: "xl", className: "sm:text-4xl lg:text-5xl ".concat(disabled ? "text-gray-400" : iconColor || "text-primary") }), jsxs("div", { className: "text-center px-2", children: [jsx("p", { className: textClasses, children: isDragging ? t.dragText : finalText }), finalSubText && !isDragging && (jsx("p", { className: subTextClasses, children: finalSubText }))] })] }) }), jsx("input", { ref: inputRef, type: "file", className: "hidden", multiple: multiple, accept: Array.isArray(acceptedFiles)
2734
+ : "opacity-100 transition-opacity", children: jsxs("div", { className: "flex flex-col items-center ".concat(size === "micro" ? "gap-1" : size === "small" ? "gap-1.5" : "gap-3 sm:gap-4"), children: [jsx(IconComponent, { icon: icon, size: size === "micro" ? "sm" : size === "small" ? "md" : "xl", className: "".concat(size === "micro" ? "text-lg"
2735
+ : size === "small" ? "text-xl sm:text-2xl"
2736
+ : "sm:text-4xl lg:text-5xl", " ").concat(disabled ? "text-gray-400" : iconColor || "text-primary") }), shouldShowText && (jsxs("div", { className: "text-center ".concat(size === "micro" ? "px-0.5"
2737
+ : size === "small" ? "px-1"
2738
+ : "px-2", " ").concat(size === "micro" || size === "small"
2739
+ ? "block"
2740
+ : "hidden sm:block"), children: [jsx("p", { className: textClasses, children: isDragging ? t.dragText : finalText }), finalSubText && !isDragging && (jsx("p", { className: subTextClasses, children: finalSubText }))] }))] }) }), jsx("input", { ref: inputRef, type: "file", className: "hidden", multiple: multiple, accept: Array.isArray(acceptedFiles)
2705
2741
  ? acceptedFiles.join(",")
2706
2742
  : acceptedFiles, onChange: handleChange, disabled: disabled, "aria-label": t.uploadAreaAriaLabel })] }) }), error && errorText && (jsx("p", { className: "text-red-500 text-sm mt-2", role: "alert", children: errorText })), showCropModal && selectedImageUrl && cropConfig && (jsx(ImageCropModal, { isOpen: showCropModal, imageUrl: selectedImageUrl, targetWidth: cropConfig.targetWidth, targetHeight: cropConfig.targetHeight, onSave: handleCropSave, onCancel: handleCropCancel, translations: t }))] }));
2707
2743
  };
@@ -2846,6 +2882,10 @@ var FilterSection = function (_a) {
2846
2882
  value.dateRange &&
2847
2883
  value.dateRange.start &&
2848
2884
  value.dateRange.end)));
2885
+ case "text":
2886
+ return value && "value" in value && value.value !== "";
2887
+ case "number":
2888
+ return value && "value" in value && value.value !== null && value.value !== undefined;
2849
2889
  default:
2850
2890
  return false;
2851
2891
  }
@@ -2879,6 +2919,10 @@ var FilterSection = function (_a) {
2879
2919
  value.dateRange.end))
2880
2920
  ? 1
2881
2921
  : 0;
2922
+ case "text":
2923
+ return value && "value" in value && value.value !== "" ? 1 : 0;
2924
+ case "number":
2925
+ return value && "value" in value && value.value !== null && value.value !== undefined ? 1 : 0;
2882
2926
  default:
2883
2927
  return 0;
2884
2928
  }
@@ -2893,6 +2937,10 @@ var FilterSection = function (_a) {
2893
2937
  return (jsx(RangeFilterComponent, { filter: filter, value: value, onChange: onChange }));
2894
2938
  case "date":
2895
2939
  return (jsx(DateFilter, { filter: filter, value: value, onChange: onChange }));
2940
+ case "text":
2941
+ return (jsx(TextFilter, { filter: filter, value: value, onChange: onChange }));
2942
+ case "number":
2943
+ return (jsx(NumberFilter, { filter: filter, value: value, onChange: onChange }));
2896
2944
  default:
2897
2945
  return null;
2898
2946
  }
@@ -2987,6 +3035,28 @@ var DateFilter = function (_a) {
2987
3035
  };
2988
3036
  return (jsx(DateSelector, { initialType: getInitialType(), initialDate: getInitialDate(), initialDateRange: getInitialDateRange(), onChange: handleDateSelectorChange, className: "w-full" }));
2989
3037
  };
3038
+ // =========================================================================
3039
+ // TEXT FILTER
3040
+ // =========================================================================
3041
+ var TextFilter = function (_a) {
3042
+ var filter = _a.filter, value = _a.value, onChange = _a.onChange;
3043
+ var currentValue = (value === null || value === void 0 ? void 0 : value.value) || "";
3044
+ return (jsx(Input, { type: "text", placeholder: filter.data.placeholder || "Ingrese ".concat(filter.title.toLowerCase()), value: currentValue, onValueChange: function (newValue) {
3045
+ onChange({ value: newValue });
3046
+ }, className: "w-full" }));
3047
+ };
3048
+ // =========================================================================
3049
+ // NUMBER FILTER
3050
+ // =========================================================================
3051
+ var NumberFilter = function (_a) {
3052
+ var _b;
3053
+ var filter = _a.filter, value = _a.value, onChange = _a.onChange;
3054
+ var currentValue = ((_b = value === null || value === void 0 ? void 0 : value.value) === null || _b === void 0 ? void 0 : _b.toString()) || "";
3055
+ return (jsx(Input, { type: "number", placeholder: filter.data.placeholder || "Ingrese ".concat(filter.title.toLowerCase()), value: currentValue, onValueChange: function (newValue) {
3056
+ var numValue = newValue === "" ? null : Number(newValue);
3057
+ onChange({ value: numValue });
3058
+ }, min: filter.data.min, max: filter.data.max, step: filter.data.step, className: "w-full" }));
3059
+ };
2990
3060
 
2991
3061
  /**
2992
3062
  * DrawerFilters - Generic component for dynamic filters in drawer.
@@ -3068,6 +3138,16 @@ var DrawerFilters = function (_a) {
3068
3138
  processedFilters[key] = "".concat(value.min || 0, "-").concat(value.max || 0);
3069
3139
  }
3070
3140
  break;
3141
+ case "text":
3142
+ if (value && "value" in value && value.value !== "") {
3143
+ processedFilters[key] = value.value;
3144
+ }
3145
+ break;
3146
+ case "number":
3147
+ if (value && "value" in value && value.value !== null && value.value !== undefined) {
3148
+ processedFilters[key] = String(value.value);
3149
+ }
3150
+ break;
3071
3151
  }
3072
3152
  };
3073
3153
  // Procesar cada filtro según su tipo
@@ -1 +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"}
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,EAOlB,MAAM,uBAAuB,CAAC;AAK/B;;;;;;;;;GASG;AACH,eAAO,MAAM,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC,kBAAkB,CAqKtD,CAAC"}
@@ -1,4 +1,4 @@
1
- export type FilterType = "select" | "multiselect" | "range" | "date";
1
+ export type FilterType = "select" | "multiselect" | "range" | "date" | "text" | "number";
2
2
  export interface BaseFilterData {
3
3
  key: string;
4
4
  title: string;
@@ -36,7 +36,22 @@ export interface DateFilterData extends BaseFilterData {
36
36
  placeholder?: string;
37
37
  };
38
38
  }
39
- export type FilterData = SelectFilterData | MultiSelectFilterData | RangeFilterData | DateFilterData;
39
+ export interface TextFilterData extends BaseFilterData {
40
+ type: "text";
41
+ data: {
42
+ placeholder?: string;
43
+ };
44
+ }
45
+ export interface NumberFilterData extends BaseFilterData {
46
+ type: "number";
47
+ data: {
48
+ placeholder?: string;
49
+ min?: number;
50
+ max?: number;
51
+ step?: number;
52
+ };
53
+ }
54
+ export type FilterData = SelectFilterData | MultiSelectFilterData | RangeFilterData | DateFilterData | TextFilterData | NumberFilterData;
40
55
  export interface DrawerFiltersConfig {
41
56
  title: string;
42
57
  description: string;
@@ -46,7 +61,7 @@ export interface DrawerFiltersProps {
46
61
  isOpen: boolean;
47
62
  onOpenChange: (isOpen: boolean) => void;
48
63
  config: DrawerFiltersConfig;
49
- onApplyFilters: (filters: Record<string, SelectFilterValue | MultiSelectFilterValue | RangeFilterValue | DateFilterValue>) => void;
64
+ onApplyFilters: (filters: Record<string, string>) => void;
50
65
  onClearFilters?: () => void;
51
66
  onCancel?: () => void;
52
67
  className?: string;
@@ -58,8 +73,8 @@ export interface DrawerFiltersProps {
58
73
  }
59
74
  export interface FilterSectionProps {
60
75
  filter: FilterData;
61
- value?: SelectFilterValue | MultiSelectFilterValue | RangeFilterValue | DateFilterValue;
62
- onChange: (value: SelectFilterValue | MultiSelectFilterValue | RangeFilterValue | DateFilterValue) => void;
76
+ value?: SelectFilterValue | MultiSelectFilterValue | RangeFilterValue | DateFilterValue | TextFilterValue | NumberFilterValue;
77
+ onChange: (value: SelectFilterValue | MultiSelectFilterValue | RangeFilterValue | DateFilterValue | TextFilterValue | NumberFilterValue) => void;
63
78
  isExpanded?: boolean;
64
79
  onToggleExpanded?: () => void;
65
80
  }
@@ -78,7 +93,7 @@ export interface DrawerFiltersFooterProps {
78
93
  };
79
94
  }
80
95
  export interface FilterValues {
81
- [key: string]: SelectFilterValue | MultiSelectFilterValue | RangeFilterValue | DateFilterValue;
96
+ [key: string]: SelectFilterValue | MultiSelectFilterValue | RangeFilterValue | DateFilterValue | TextFilterValue | NumberFilterValue;
82
97
  }
83
98
  export interface SelectFilterValue {
84
99
  value: string;
@@ -98,4 +113,10 @@ export interface DateFilterValue {
98
113
  end: string | null;
99
114
  } | null;
100
115
  }
116
+ export interface TextFilterValue {
117
+ value: string;
118
+ }
119
+ export interface NumberFilterValue {
120
+ value: number | null;
121
+ }
101
122
  //# sourceMappingURL=DrawerFilters.types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"DrawerFilters.types.d.ts","sourceRoot":"","sources":["../../../../src/components/drawer-filters/DrawerFilters.types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DrawerFilters.types.d.ts","sourceRoot":"","sources":["../../../../src/components/drawer-filters/DrawerFilters.types.ts"],"names":[],"mappings":"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"}
@@ -1 +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"}
1
+ {"version":3,"file":"FilterSection.d.ts","sourceRoot":"","sources":["../../../../../src/components/drawer-filters/_internal/FilterSection.tsx"],"names":[],"mappings":"AAWA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,KAAK,EAGX,kBAAkB,EAWlB,MAAM,wBAAwB,CAAC;AAMhC,eAAO,MAAM,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC,kBAAkB,CA8MtD,CAAC"}
@@ -1,20 +1,4 @@
1
1
  import type React from "react";
2
2
  import type { UploadFileProps } from "./UploadFile.types";
3
- /**
4
- * Componente UploadDocument basado en Hero UI con funcionalidad mejorada
5
- *
6
- * @example
7
- * ```tsx
8
- * <UploadDocument
9
- * onUpload={(files) => console.log(files)}
10
- * acceptedFiles="image/*,.pdf"
11
- * multiple={false}
12
- * translations={{
13
- * uploadText: "Upload your files",
14
- * dragText: "Drop files here"
15
- * }}
16
- * />
17
- * ```
18
- */
19
3
  export declare const UploadFile: React.FC<UploadFileProps>;
20
4
  //# sourceMappingURL=UploadFile.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"UploadFile.d.ts","sourceRoot":"","sources":["../../../../src/components/upload-file/UploadFile.tsx"],"names":[],"mappings":"AAWA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,OAAO,KAAK,EACX,eAAe,EAEf,MAAM,oBAAoB,CAAC;AAkiB5B;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,eAAe,CA0UhD,CAAC"}
1
+ {"version":3,"file":"UploadFile.d.ts","sourceRoot":"","sources":["../../../../src/components/upload-file/UploadFile.tsx"],"names":[],"mappings":"AAWA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,OAAO,KAAK,EACX,eAAe,EAEf,MAAM,oBAAoB,CAAC;AA6jB5B,eAAO,MAAM,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,eAAe,CA6XhD,CAAC"}
@@ -50,6 +50,10 @@ export interface CropConfig {
50
50
  /** Color del botón de guardar recorte */
51
51
  colorButton?: string;
52
52
  }
53
+ /**
54
+ * Tamaños predefinidos para el componente UploadFile
55
+ */
56
+ export type UploadFileSize = "micro" | "small" | "medium" | "large";
53
57
  /**
54
58
  * Props del componente UploadFile
55
59
  */
@@ -66,9 +70,11 @@ export interface UploadFileProps {
66
70
  iconColor?: string;
67
71
  /** Color de fondo */
68
72
  backgroundColor?: string;
69
- /** Ancho del componente */
73
+ /** Tamaño predefinido del componente (micro, small, medium, large) */
74
+ size?: UploadFileSize;
75
+ /** Ancho del componente (se usa si size no está definido) */
70
76
  width?: string;
71
- /** Alto del componente */
77
+ /** Alto del componente (se usa si size no está definido) */
72
78
  height?: string;
73
79
  /** Permitir múltiples archivos */
74
80
  multiple?: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"UploadFile.types.d.ts","sourceRoot":"","sources":["../../../../src/components/upload-file/UploadFile.types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"UploadFile.types.d.ts","sourceRoot":"","sources":["../../../../src/components/upload-file/UploadFile.types.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@beweco/aurora-ui",
3
- "version": "0.1.15",
3
+ "version": "0.1.17",
4
4
  "description": "Bewe Aurora UI Component Library",
5
5
  "main": "./dist/index.cjs.js",
6
6
  "module": "./dist/index.esm.js",