framepexls-ui-lib 0.2.8 → 0.2.10
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/AppTopbar.js +1 -1
- package/dist/AppTopbar.mjs +1 -1
- package/dist/AvatarGroup.js +7 -2
- package/dist/AvatarGroup.mjs +7 -2
- package/dist/Badge.js +6 -1
- package/dist/Badge.mjs +6 -1
- package/dist/BadgeCluster.js +1 -1
- package/dist/BadgeCluster.mjs +1 -1
- package/dist/Breadcrumb.js +46 -2
- package/dist/Breadcrumb.mjs +46 -2
- package/dist/Button.js +8 -2
- package/dist/Button.mjs +8 -2
- package/dist/CalendarPanel.js +45 -26
- package/dist/CalendarPanel.mjs +45 -26
- package/dist/Card.js +7 -2
- package/dist/Card.mjs +7 -2
- package/dist/Checkbox.js +51 -18
- package/dist/Checkbox.mjs +51 -18
- package/dist/ColorPicker.js +9 -4
- package/dist/ColorPicker.mjs +9 -4
- package/dist/ColumnSelector.js +1 -1
- package/dist/ColumnSelector.mjs +1 -1
- package/dist/ComboSelect.js +11 -4
- package/dist/ComboSelect.mjs +11 -4
- package/dist/DateTimeField.js +8 -2
- package/dist/DateTimeField.mjs +8 -2
- package/dist/Dialog.js +2 -2
- package/dist/Dialog.mjs +2 -2
- package/dist/Drawer.js +2 -2
- package/dist/Drawer.mjs +2 -2
- package/dist/Dropdown.js +14 -10
- package/dist/Dropdown.mjs +14 -10
- package/dist/FiltersMultiSelect.js +1 -1
- package/dist/FiltersMultiSelect.mjs +1 -1
- package/dist/Input.js +23 -0
- package/dist/Input.mjs +23 -0
- package/dist/KpiCard.js +26 -2
- package/dist/KpiCard.mjs +26 -2
- package/dist/Link.js +16 -2
- package/dist/Link.mjs +16 -2
- package/dist/MediaCard.js +18 -11
- package/dist/MediaCard.mjs +18 -11
- package/dist/MediaSelector.js +9 -8
- package/dist/MediaSelector.mjs +9 -8
- package/dist/MotionProvider.d.mts +9 -0
- package/dist/MotionProvider.d.ts +9 -0
- package/dist/MotionProvider.js +29 -0
- package/dist/MotionProvider.mjs +9 -0
- package/dist/MultiComboSelect.js +6 -4
- package/dist/MultiComboSelect.mjs +6 -4
- package/dist/Pagination.js +65 -29
- package/dist/Pagination.mjs +65 -29
- package/dist/ReviewHistory.js +8 -6
- package/dist/ReviewHistory.mjs +8 -6
- package/dist/SearchInput.js +16 -2
- package/dist/SearchInput.mjs +16 -2
- package/dist/Select.js +12 -5
- package/dist/Select.mjs +12 -5
- package/dist/Sidebar.js +23 -5
- package/dist/Sidebar.mjs +23 -5
- package/dist/StatCard.js +17 -1
- package/dist/StatCard.mjs +19 -3
- package/dist/Steps.js +51 -37
- package/dist/Steps.mjs +51 -37
- package/dist/StorageUsage.js +6 -2
- package/dist/StorageUsage.mjs +6 -2
- package/dist/Table.d.mts +5 -1
- package/dist/Table.d.ts +5 -1
- package/dist/Table.js +31 -4
- package/dist/Table.mjs +30 -4
- package/dist/Textarea.js +42 -17
- package/dist/Textarea.mjs +43 -18
- package/dist/TimePanel.js +1 -1
- package/dist/TimePanel.mjs +1 -1
- package/dist/TimePopover.js +116 -83
- package/dist/TimePopover.mjs +116 -83
- package/dist/TimeRangeField.js +1 -1
- package/dist/TimeRangeField.mjs +1 -1
- package/dist/Toast.js +1 -5
- package/dist/Toast.mjs +1 -5
- package/dist/Tooltip.js +28 -19
- package/dist/Tooltip.mjs +28 -19
- package/dist/UploadCard.js +34 -21
- package/dist/UploadCard.mjs +34 -21
- package/dist/animations-CHrNeawW.d.mts +28 -0
- package/dist/animations-CHrNeawW.d.ts +28 -0
- package/dist/animations.d.mts +2 -0
- package/dist/animations.d.ts +2 -0
- package/dist/animations.js +75 -0
- package/dist/animations.mjs +42 -0
- package/dist/index.d.mts +4 -1
- package/dist/index.d.ts +4 -1
- package/dist/index.js +8 -0
- package/dist/index.mjs +18 -13
- package/package.json +4 -4
package/dist/TimeRangeField.js
CHANGED
|
@@ -146,7 +146,7 @@ function TimeRangeField({ value, onValueChange, portal = true, portalId, clearab
|
|
|
146
146
|
setTo(t2);
|
|
147
147
|
onValueChange == null ? void 0 : onValueChange({ from: f2 ? fmtHHmm(f2.hh, f2.mm) : null, to: t2 ? fmtHHmm(t2.hh, t2.mm) : null });
|
|
148
148
|
};
|
|
149
|
-
const popover = /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { "data-trf-pop": true, style: stylePop, className: "w-1/3 overflow-hidden rounded-2xl border border-slate-200 bg-white shadow-xl dark:border-white/10 dark:bg-[
|
|
149
|
+
const popover = /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { "data-trf-pop": true, style: stylePop, className: "w-1/3 overflow-hidden rounded-2xl border border-slate-200 bg-white shadow-xl dark:border-white/10 dark:bg-[var(--fx-surface)]", children: [
|
|
150
150
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: "flex items-center justify-between gap-2 px-3 py-2 text-sm", children: [
|
|
151
151
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "font-medium", children: "Selecciona horario" }),
|
|
152
152
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
package/dist/TimeRangeField.mjs
CHANGED
|
@@ -113,7 +113,7 @@ function TimeRangeField({ value, onValueChange, portal = true, portalId, clearab
|
|
|
113
113
|
setTo(t2);
|
|
114
114
|
onValueChange == null ? void 0 : onValueChange({ from: f2 ? fmtHHmm(f2.hh, f2.mm) : null, to: t2 ? fmtHHmm(t2.hh, t2.mm) : null });
|
|
115
115
|
};
|
|
116
|
-
const popover = /* @__PURE__ */ jsxs("div", { "data-trf-pop": true, style: stylePop, className: "w-1/3 overflow-hidden rounded-2xl border border-slate-200 bg-white shadow-xl dark:border-white/10 dark:bg-[
|
|
116
|
+
const popover = /* @__PURE__ */ jsxs("div", { "data-trf-pop": true, style: stylePop, className: "w-1/3 overflow-hidden rounded-2xl border border-slate-200 bg-white shadow-xl dark:border-white/10 dark:bg-[var(--fx-surface)]", children: [
|
|
117
117
|
/* @__PURE__ */ jsxs("div", { className: "flex items-center justify-between gap-2 px-3 py-2 text-sm", children: [
|
|
118
118
|
/* @__PURE__ */ jsx("div", { className: "font-medium", children: "Selecciona horario" }),
|
|
119
119
|
/* @__PURE__ */ jsx(
|
package/dist/Toast.js
CHANGED
|
@@ -90,10 +90,6 @@ const typeAccent = {
|
|
|
90
90
|
progress: "bg-sky-500/60"
|
|
91
91
|
}
|
|
92
92
|
};
|
|
93
|
-
function useIsomorphicLayoutEffect(effect, deps) {
|
|
94
|
-
const useIso = typeof window !== "undefined" ? import_react.default.useLayoutEffect : import_react.default.useEffect;
|
|
95
|
-
return useIso(effect, deps);
|
|
96
|
-
}
|
|
97
93
|
function ToastView({ item, onClose, placement }) {
|
|
98
94
|
var _a;
|
|
99
95
|
const [hovered, setHovered] = import_react.default.useState(false);
|
|
@@ -132,7 +128,7 @@ function ToastView({ item, onClose, placement }) {
|
|
|
132
128
|
onMouseEnter,
|
|
133
129
|
onMouseLeave,
|
|
134
130
|
className: [
|
|
135
|
-
"pointer-events-auto relative w-[380px] max-w-[92vw] overflow-hidden rounded-xl border bg-white p-3 pr-10 shadow-lg dark:bg-[
|
|
131
|
+
"pointer-events-auto relative w-[380px] max-w-[92vw] overflow-hidden rounded-xl border bg-white p-3 pr-10 shadow-lg dark:bg-[var(--fx-surface)]",
|
|
136
132
|
accent.border
|
|
137
133
|
].join(" "),
|
|
138
134
|
children: [
|
package/dist/Toast.mjs
CHANGED
|
@@ -55,10 +55,6 @@ const typeAccent = {
|
|
|
55
55
|
progress: "bg-sky-500/60"
|
|
56
56
|
}
|
|
57
57
|
};
|
|
58
|
-
function useIsomorphicLayoutEffect(effect, deps) {
|
|
59
|
-
const useIso = typeof window !== "undefined" ? React.useLayoutEffect : React.useEffect;
|
|
60
|
-
return useIso(effect, deps);
|
|
61
|
-
}
|
|
62
58
|
function ToastView({ item, onClose, placement }) {
|
|
63
59
|
var _a;
|
|
64
60
|
const [hovered, setHovered] = React.useState(false);
|
|
@@ -97,7 +93,7 @@ function ToastView({ item, onClose, placement }) {
|
|
|
97
93
|
onMouseEnter,
|
|
98
94
|
onMouseLeave,
|
|
99
95
|
className: [
|
|
100
|
-
"pointer-events-auto relative w-[380px] max-w-[92vw] overflow-hidden rounded-xl border bg-white p-3 pr-10 shadow-lg dark:bg-[
|
|
96
|
+
"pointer-events-auto relative w-[380px] max-w-[92vw] overflow-hidden rounded-xl border bg-white p-3 pr-10 shadow-lg dark:bg-[var(--fx-surface)]",
|
|
101
97
|
accent.border
|
|
102
98
|
].join(" "),
|
|
103
99
|
children: [
|
package/dist/Tooltip.js
CHANGED
|
@@ -35,6 +35,8 @@ module.exports = __toCommonJS(Tooltip_exports);
|
|
|
35
35
|
var import_jsx_runtime = require("react/jsx-runtime");
|
|
36
36
|
var import_react = __toESM(require("react"));
|
|
37
37
|
var import_react_dom = require("react-dom");
|
|
38
|
+
var import_framer_motion = require("framer-motion");
|
|
39
|
+
var import_animations = require("./animations");
|
|
38
40
|
function Tooltip({ content, placement = "top", delay = 80, offset = 8, className = "", children }) {
|
|
39
41
|
const [open, setOpen] = import_react.default.useState(false);
|
|
40
42
|
const [pos, setPos] = import_react.default.useState(null);
|
|
@@ -110,26 +112,33 @@ function Tooltip({ content, placement = "top", delay = 80, offset = 8, className
|
|
|
110
112
|
},
|
|
111
113
|
"aria-describedby": open ? id : void 0
|
|
112
114
|
};
|
|
113
|
-
const body = open && pos && typeof document !== "undefined" ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
114
|
-
"div",
|
|
115
|
-
{
|
|
116
|
-
id,
|
|
117
|
-
role: "tooltip",
|
|
118
|
-
className: [
|
|
119
|
-
"pointer-events-none fixed z-[2000] max-w-xs rounded-xl border border-slate-200/80 bg-slate-900/95 px-2.5 py-1.5 text-[12px] text-white shadow-xl backdrop-blur",
|
|
120
|
-
"dark:border-white/10 dark:bg-white/10",
|
|
121
|
-
className != null ? className : ""
|
|
122
|
-
].join(" "),
|
|
123
|
-
style: {
|
|
124
|
-
top: placement === "top" || placement === "bottom" ? pos.top : pos.top,
|
|
125
|
-
left: placement === "top" || placement === "bottom" ? pos.left : pos.left,
|
|
126
|
-
transform: placement === "top" || placement === "bottom" ? "translate(-50%, -100%)" : placement === "left" ? "translate(-100%, -50%)" : "translate(0, -50%)"
|
|
127
|
-
},
|
|
128
|
-
children: content
|
|
129
|
-
}
|
|
130
|
-
) : null;
|
|
131
115
|
return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_jsx_runtime.Fragment, { children: [
|
|
132
116
|
import_react.default.cloneElement(children, triggerProps),
|
|
133
|
-
|
|
117
|
+
typeof document !== "undefined" ? (0, import_react_dom.createPortal)(
|
|
118
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_framer_motion.AnimatePresence, { children: open && pos ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
119
|
+
import_framer_motion.motion.div,
|
|
120
|
+
{
|
|
121
|
+
id,
|
|
122
|
+
role: "tooltip",
|
|
123
|
+
variants: import_animations.tooltipVariant,
|
|
124
|
+
initial: "initial",
|
|
125
|
+
animate: "animate",
|
|
126
|
+
exit: "exit",
|
|
127
|
+
transition: import_animations.menuTransition,
|
|
128
|
+
className: [
|
|
129
|
+
"pointer-events-none fixed z-[2000] max-w-xs rounded-xl border border-slate-200/80 bg-slate-900/95 px-2.5 py-1.5 text-[12px] text-white shadow-xl backdrop-blur",
|
|
130
|
+
"dark:border-white/10 dark:bg-white/10",
|
|
131
|
+
className != null ? className : ""
|
|
132
|
+
].join(" "),
|
|
133
|
+
style: {
|
|
134
|
+
top: placement === "top" || placement === "bottom" ? pos.top : pos.top,
|
|
135
|
+
left: placement === "top" || placement === "bottom" ? pos.left : pos.left,
|
|
136
|
+
transform: placement === "top" || placement === "bottom" ? "translate(-50%, -100%)" : placement === "left" ? "translate(-100%, -50%)" : "translate(0, -50%)"
|
|
137
|
+
},
|
|
138
|
+
children: content
|
|
139
|
+
}
|
|
140
|
+
) : null }),
|
|
141
|
+
document.body
|
|
142
|
+
) : null
|
|
134
143
|
] });
|
|
135
144
|
}
|
package/dist/Tooltip.mjs
CHANGED
|
@@ -2,6 +2,8 @@
|
|
|
2
2
|
import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
|
3
3
|
import React from "react";
|
|
4
4
|
import { createPortal } from "react-dom";
|
|
5
|
+
import { AnimatePresence, motion } from "framer-motion";
|
|
6
|
+
import { tooltipVariant, menuTransition } from "./animations";
|
|
5
7
|
function Tooltip({ content, placement = "top", delay = 80, offset = 8, className = "", children }) {
|
|
6
8
|
const [open, setOpen] = React.useState(false);
|
|
7
9
|
const [pos, setPos] = React.useState(null);
|
|
@@ -77,27 +79,34 @@ function Tooltip({ content, placement = "top", delay = 80, offset = 8, className
|
|
|
77
79
|
},
|
|
78
80
|
"aria-describedby": open ? id : void 0
|
|
79
81
|
};
|
|
80
|
-
const body = open && pos && typeof document !== "undefined" ? /* @__PURE__ */ jsx(
|
|
81
|
-
"div",
|
|
82
|
-
{
|
|
83
|
-
id,
|
|
84
|
-
role: "tooltip",
|
|
85
|
-
className: [
|
|
86
|
-
"pointer-events-none fixed z-[2000] max-w-xs rounded-xl border border-slate-200/80 bg-slate-900/95 px-2.5 py-1.5 text-[12px] text-white shadow-xl backdrop-blur",
|
|
87
|
-
"dark:border-white/10 dark:bg-white/10",
|
|
88
|
-
className != null ? className : ""
|
|
89
|
-
].join(" "),
|
|
90
|
-
style: {
|
|
91
|
-
top: placement === "top" || placement === "bottom" ? pos.top : pos.top,
|
|
92
|
-
left: placement === "top" || placement === "bottom" ? pos.left : pos.left,
|
|
93
|
-
transform: placement === "top" || placement === "bottom" ? "translate(-50%, -100%)" : placement === "left" ? "translate(-100%, -50%)" : "translate(0, -50%)"
|
|
94
|
-
},
|
|
95
|
-
children: content
|
|
96
|
-
}
|
|
97
|
-
) : null;
|
|
98
82
|
return /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
99
83
|
React.cloneElement(children, triggerProps),
|
|
100
|
-
|
|
84
|
+
typeof document !== "undefined" ? createPortal(
|
|
85
|
+
/* @__PURE__ */ jsx(AnimatePresence, { children: open && pos ? /* @__PURE__ */ jsx(
|
|
86
|
+
motion.div,
|
|
87
|
+
{
|
|
88
|
+
id,
|
|
89
|
+
role: "tooltip",
|
|
90
|
+
variants: tooltipVariant,
|
|
91
|
+
initial: "initial",
|
|
92
|
+
animate: "animate",
|
|
93
|
+
exit: "exit",
|
|
94
|
+
transition: menuTransition,
|
|
95
|
+
className: [
|
|
96
|
+
"pointer-events-none fixed z-[2000] max-w-xs rounded-xl border border-slate-200/80 bg-slate-900/95 px-2.5 py-1.5 text-[12px] text-white shadow-xl backdrop-blur",
|
|
97
|
+
"dark:border-white/10 dark:bg-white/10",
|
|
98
|
+
className != null ? className : ""
|
|
99
|
+
].join(" "),
|
|
100
|
+
style: {
|
|
101
|
+
top: placement === "top" || placement === "bottom" ? pos.top : pos.top,
|
|
102
|
+
left: placement === "top" || placement === "bottom" ? pos.left : pos.left,
|
|
103
|
+
transform: placement === "top" || placement === "bottom" ? "translate(-50%, -100%)" : placement === "left" ? "translate(-100%, -50%)" : "translate(0, -50%)"
|
|
104
|
+
},
|
|
105
|
+
children: content
|
|
106
|
+
}
|
|
107
|
+
) : null }),
|
|
108
|
+
document.body
|
|
109
|
+
) : null
|
|
101
110
|
] });
|
|
102
111
|
}
|
|
103
112
|
export {
|
package/dist/UploadCard.js
CHANGED
|
@@ -37,6 +37,8 @@ var import_react = require("react");
|
|
|
37
37
|
var import_ChartCard = __toESM(require("./ChartCard"));
|
|
38
38
|
var import_Button = __toESM(require("./Button"));
|
|
39
39
|
var import_Input = __toESM(require("./Input"));
|
|
40
|
+
var import_framer_motion = require("framer-motion");
|
|
41
|
+
var import_animations = require("./animations");
|
|
40
42
|
function UploadCard({
|
|
41
43
|
title = "Subir archivos",
|
|
42
44
|
subtitle,
|
|
@@ -110,33 +112,44 @@ function UploadCard({
|
|
|
110
112
|
]
|
|
111
113
|
}
|
|
112
114
|
),
|
|
113
|
-
uploads && uploads.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "mt-4 space-y-2", children: uploads.map((u) => {
|
|
114
|
-
var _a
|
|
115
|
-
|
|
116
|
-
|
|
115
|
+
uploads && uploads.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "mt-4 space-y-2", children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_framer_motion.AnimatePresence, { initial: false, children: uploads.map((u) => {
|
|
116
|
+
var _a;
|
|
117
|
+
const pct = Math.max(0, Math.min(100, Math.round((_a = u.progress) != null ? _a : 0)));
|
|
118
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(
|
|
119
|
+
import_framer_motion.motion.div,
|
|
117
120
|
{
|
|
121
|
+
layout: true,
|
|
122
|
+
initial: { opacity: 0, y: 6 },
|
|
123
|
+
animate: { opacity: 1, y: 0 },
|
|
124
|
+
exit: { opacity: 0, y: -6 },
|
|
125
|
+
transition: import_animations.springSm,
|
|
118
126
|
className: "flex items-center gap-3 rounded-xl border border-slate-200 bg-white/70 p-2 dark:border-white/10 dark:bg-white/5",
|
|
119
|
-
children:
|
|
120
|
-
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: "
|
|
121
|
-
/* @__PURE__ */ (0, import_jsx_runtime.
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
127
|
+
children: [
|
|
128
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: "min-w-0 flex-1", children: [
|
|
129
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: "flex items-center justify-between gap-3", children: [
|
|
130
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "truncate text-sm font-medium", children: u.name }),
|
|
131
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: "text-xs text-slate-500 dark:text-slate-400", children: [
|
|
132
|
+
pct,
|
|
133
|
+
"%"
|
|
134
|
+
] })
|
|
135
|
+
] }),
|
|
136
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "mt-1 h-2 w-full overflow-hidden rounded-full bg-slate-100 dark:bg-white/10", children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
137
|
+
import_framer_motion.motion.div,
|
|
138
|
+
{
|
|
139
|
+
className: "h-full bg-gradient-to-r from-emerald-500/70 to-emerald-500/20",
|
|
140
|
+
initial: { width: 0 },
|
|
141
|
+
animate: { width: `${pct}%` },
|
|
142
|
+
transition: import_animations.springSm
|
|
143
|
+
}
|
|
144
|
+
) }),
|
|
145
|
+
u.status === "error" && /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "mt-1 text-xs text-blue-600", children: u.error })
|
|
126
146
|
] }),
|
|
127
|
-
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("
|
|
128
|
-
|
|
129
|
-
{
|
|
130
|
-
className: "h-full bg-gradient-to-r from-emerald-500/70 to-emerald-500/20",
|
|
131
|
-
style: { width: `${Math.max(0, Math.min(100, Math.round((_b = u.progress) != null ? _b : 0)))}%` }
|
|
132
|
-
}
|
|
133
|
-
) }),
|
|
134
|
-
u.status === "error" && /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "mt-1 text-xs text-blue-600", children: u.error })
|
|
135
|
-
] })
|
|
147
|
+
u.status === "done" && /* @__PURE__ */ (0, import_jsx_runtime.jsx)("svg", { viewBox: "0 0 24 24", className: "h-4.5 w-4.5 text-emerald-600", fill: "none", stroke: "currentColor", strokeWidth: "2", children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("path", { d: "M5 13l4 4L19 7" }) })
|
|
148
|
+
]
|
|
136
149
|
},
|
|
137
150
|
u.id
|
|
138
151
|
);
|
|
139
|
-
}) })
|
|
152
|
+
}) }) })
|
|
140
153
|
]
|
|
141
154
|
}
|
|
142
155
|
);
|
package/dist/UploadCard.mjs
CHANGED
|
@@ -4,6 +4,8 @@ import { useRef } from "react";
|
|
|
4
4
|
import ChartCard from "./ChartCard";
|
|
5
5
|
import Button from "./Button";
|
|
6
6
|
import Input from "./Input";
|
|
7
|
+
import { AnimatePresence, motion } from "framer-motion";
|
|
8
|
+
import { springSm } from "./animations";
|
|
7
9
|
function UploadCard({
|
|
8
10
|
title = "Subir archivos",
|
|
9
11
|
subtitle,
|
|
@@ -77,33 +79,44 @@ function UploadCard({
|
|
|
77
79
|
]
|
|
78
80
|
}
|
|
79
81
|
),
|
|
80
|
-
uploads && uploads.length > 0 && /* @__PURE__ */ jsx("div", { className: "mt-4 space-y-2", children: uploads.map((u) => {
|
|
81
|
-
var _a
|
|
82
|
-
|
|
83
|
-
|
|
82
|
+
uploads && uploads.length > 0 && /* @__PURE__ */ jsx("div", { className: "mt-4 space-y-2", children: /* @__PURE__ */ jsx(AnimatePresence, { initial: false, children: uploads.map((u) => {
|
|
83
|
+
var _a;
|
|
84
|
+
const pct = Math.max(0, Math.min(100, Math.round((_a = u.progress) != null ? _a : 0)));
|
|
85
|
+
return /* @__PURE__ */ jsxs(
|
|
86
|
+
motion.div,
|
|
84
87
|
{
|
|
88
|
+
layout: true,
|
|
89
|
+
initial: { opacity: 0, y: 6 },
|
|
90
|
+
animate: { opacity: 1, y: 0 },
|
|
91
|
+
exit: { opacity: 0, y: -6 },
|
|
92
|
+
transition: springSm,
|
|
85
93
|
className: "flex items-center gap-3 rounded-xl border border-slate-200 bg-white/70 p-2 dark:border-white/10 dark:bg-white/5",
|
|
86
|
-
children:
|
|
87
|
-
/* @__PURE__ */ jsxs("div", { className: "
|
|
88
|
-
/* @__PURE__ */
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
94
|
+
children: [
|
|
95
|
+
/* @__PURE__ */ jsxs("div", { className: "min-w-0 flex-1", children: [
|
|
96
|
+
/* @__PURE__ */ jsxs("div", { className: "flex items-center justify-between gap-3", children: [
|
|
97
|
+
/* @__PURE__ */ jsx("div", { className: "truncate text-sm font-medium", children: u.name }),
|
|
98
|
+
/* @__PURE__ */ jsxs("div", { className: "text-xs text-slate-500 dark:text-slate-400", children: [
|
|
99
|
+
pct,
|
|
100
|
+
"%"
|
|
101
|
+
] })
|
|
102
|
+
] }),
|
|
103
|
+
/* @__PURE__ */ jsx("div", { className: "mt-1 h-2 w-full overflow-hidden rounded-full bg-slate-100 dark:bg-white/10", children: /* @__PURE__ */ jsx(
|
|
104
|
+
motion.div,
|
|
105
|
+
{
|
|
106
|
+
className: "h-full bg-gradient-to-r from-emerald-500/70 to-emerald-500/20",
|
|
107
|
+
initial: { width: 0 },
|
|
108
|
+
animate: { width: `${pct}%` },
|
|
109
|
+
transition: springSm
|
|
110
|
+
}
|
|
111
|
+
) }),
|
|
112
|
+
u.status === "error" && /* @__PURE__ */ jsx("div", { className: "mt-1 text-xs text-blue-600", children: u.error })
|
|
93
113
|
] }),
|
|
94
|
-
/* @__PURE__ */ jsx("
|
|
95
|
-
|
|
96
|
-
{
|
|
97
|
-
className: "h-full bg-gradient-to-r from-emerald-500/70 to-emerald-500/20",
|
|
98
|
-
style: { width: `${Math.max(0, Math.min(100, Math.round((_b = u.progress) != null ? _b : 0)))}%` }
|
|
99
|
-
}
|
|
100
|
-
) }),
|
|
101
|
-
u.status === "error" && /* @__PURE__ */ jsx("div", { className: "mt-1 text-xs text-blue-600", children: u.error })
|
|
102
|
-
] })
|
|
114
|
+
u.status === "done" && /* @__PURE__ */ jsx("svg", { viewBox: "0 0 24 24", className: "h-4.5 w-4.5 text-emerald-600", fill: "none", stroke: "currentColor", strokeWidth: "2", children: /* @__PURE__ */ jsx("path", { d: "M5 13l4 4L19 7" }) })
|
|
115
|
+
]
|
|
103
116
|
},
|
|
104
117
|
u.id
|
|
105
118
|
);
|
|
106
|
-
}) })
|
|
119
|
+
}) }) })
|
|
107
120
|
]
|
|
108
121
|
}
|
|
109
122
|
);
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { Transition, Variants } from 'framer-motion';
|
|
2
|
+
|
|
3
|
+
declare const springSm: Transition;
|
|
4
|
+
declare const springMd: Transition;
|
|
5
|
+
declare const springLg: Transition;
|
|
6
|
+
declare const fadeInOut: Variants;
|
|
7
|
+
declare const popOver: Variants;
|
|
8
|
+
declare const slideFromRight: Variants;
|
|
9
|
+
declare const slideFromBottom: Variants;
|
|
10
|
+
declare const tooltipVariant: Variants;
|
|
11
|
+
declare const menuTransition: Transition;
|
|
12
|
+
declare const microTransition: Transition;
|
|
13
|
+
|
|
14
|
+
declare const animations_fadeInOut: typeof fadeInOut;
|
|
15
|
+
declare const animations_menuTransition: typeof menuTransition;
|
|
16
|
+
declare const animations_microTransition: typeof microTransition;
|
|
17
|
+
declare const animations_popOver: typeof popOver;
|
|
18
|
+
declare const animations_slideFromBottom: typeof slideFromBottom;
|
|
19
|
+
declare const animations_slideFromRight: typeof slideFromRight;
|
|
20
|
+
declare const animations_springLg: typeof springLg;
|
|
21
|
+
declare const animations_springMd: typeof springMd;
|
|
22
|
+
declare const animations_springSm: typeof springSm;
|
|
23
|
+
declare const animations_tooltipVariant: typeof tooltipVariant;
|
|
24
|
+
declare namespace animations {
|
|
25
|
+
export { animations_fadeInOut as fadeInOut, animations_menuTransition as menuTransition, animations_microTransition as microTransition, animations_popOver as popOver, animations_slideFromBottom as slideFromBottom, animations_slideFromRight as slideFromRight, animations_springLg as springLg, animations_springMd as springMd, animations_springSm as springSm, animations_tooltipVariant as tooltipVariant };
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
export { animations as a, springMd as b, springLg as c, slideFromRight as d, slideFromBottom as e, fadeInOut as f, microTransition as g, menuTransition as m, popOver as p, springSm as s, tooltipVariant as t };
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { Transition, Variants } from 'framer-motion';
|
|
2
|
+
|
|
3
|
+
declare const springSm: Transition;
|
|
4
|
+
declare const springMd: Transition;
|
|
5
|
+
declare const springLg: Transition;
|
|
6
|
+
declare const fadeInOut: Variants;
|
|
7
|
+
declare const popOver: Variants;
|
|
8
|
+
declare const slideFromRight: Variants;
|
|
9
|
+
declare const slideFromBottom: Variants;
|
|
10
|
+
declare const tooltipVariant: Variants;
|
|
11
|
+
declare const menuTransition: Transition;
|
|
12
|
+
declare const microTransition: Transition;
|
|
13
|
+
|
|
14
|
+
declare const animations_fadeInOut: typeof fadeInOut;
|
|
15
|
+
declare const animations_menuTransition: typeof menuTransition;
|
|
16
|
+
declare const animations_microTransition: typeof microTransition;
|
|
17
|
+
declare const animations_popOver: typeof popOver;
|
|
18
|
+
declare const animations_slideFromBottom: typeof slideFromBottom;
|
|
19
|
+
declare const animations_slideFromRight: typeof slideFromRight;
|
|
20
|
+
declare const animations_springLg: typeof springLg;
|
|
21
|
+
declare const animations_springMd: typeof springMd;
|
|
22
|
+
declare const animations_springSm: typeof springSm;
|
|
23
|
+
declare const animations_tooltipVariant: typeof tooltipVariant;
|
|
24
|
+
declare namespace animations {
|
|
25
|
+
export { animations_fadeInOut as fadeInOut, animations_menuTransition as menuTransition, animations_microTransition as microTransition, animations_popOver as popOver, animations_slideFromBottom as slideFromBottom, animations_slideFromRight as slideFromRight, animations_springLg as springLg, animations_springMd as springMd, animations_springSm as springSm, animations_tooltipVariant as tooltipVariant };
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
export { animations as a, springMd as b, springLg as c, slideFromRight as d, slideFromBottom as e, fadeInOut as f, microTransition as g, menuTransition as m, popOver as p, springSm as s, tooltipVariant as t };
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __export = (target, all) => {
|
|
7
|
+
for (var name in all)
|
|
8
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
9
|
+
};
|
|
10
|
+
var __copyProps = (to, from, except, desc) => {
|
|
11
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
12
|
+
for (let key of __getOwnPropNames(from))
|
|
13
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
14
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
15
|
+
}
|
|
16
|
+
return to;
|
|
17
|
+
};
|
|
18
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
+
var animations_exports = {};
|
|
20
|
+
__export(animations_exports, {
|
|
21
|
+
fadeInOut: () => fadeInOut,
|
|
22
|
+
menuTransition: () => menuTransition,
|
|
23
|
+
microTransition: () => microTransition,
|
|
24
|
+
popOver: () => popOver,
|
|
25
|
+
slideFromBottom: () => slideFromBottom,
|
|
26
|
+
slideFromRight: () => slideFromRight,
|
|
27
|
+
springLg: () => springLg,
|
|
28
|
+
springMd: () => springMd,
|
|
29
|
+
springSm: () => springSm,
|
|
30
|
+
tooltipVariant: () => tooltipVariant
|
|
31
|
+
});
|
|
32
|
+
module.exports = __toCommonJS(animations_exports);
|
|
33
|
+
const springSm = { type: "spring", stiffness: 320, damping: 26 };
|
|
34
|
+
const springMd = { type: "spring", stiffness: 260, damping: 24 };
|
|
35
|
+
const springLg = { type: "spring", stiffness: 220, damping: 22 };
|
|
36
|
+
const fadeInOut = {
|
|
37
|
+
initial: { opacity: 0 },
|
|
38
|
+
animate: { opacity: 1 },
|
|
39
|
+
exit: { opacity: 0 }
|
|
40
|
+
};
|
|
41
|
+
const popOver = {
|
|
42
|
+
initial: { opacity: 0, y: 8, scale: 0.98 },
|
|
43
|
+
animate: { opacity: 1, y: 0, scale: 1 },
|
|
44
|
+
exit: { opacity: 0, y: 6, scale: 0.98 }
|
|
45
|
+
};
|
|
46
|
+
const slideFromRight = {
|
|
47
|
+
initial: { x: 32, opacity: 0 },
|
|
48
|
+
animate: { x: 0, opacity: 1 },
|
|
49
|
+
exit: { x: 32, opacity: 0 }
|
|
50
|
+
};
|
|
51
|
+
const slideFromBottom = {
|
|
52
|
+
initial: { y: 24, opacity: 0 },
|
|
53
|
+
animate: { y: 0, opacity: 1 },
|
|
54
|
+
exit: { y: 24, opacity: 0 }
|
|
55
|
+
};
|
|
56
|
+
const tooltipVariant = {
|
|
57
|
+
initial: { opacity: 0, y: 6, scale: 0.98 },
|
|
58
|
+
animate: { opacity: 1, y: 0, scale: 1 },
|
|
59
|
+
exit: { opacity: 0, y: 4, scale: 0.98 }
|
|
60
|
+
};
|
|
61
|
+
const menuTransition = springSm;
|
|
62
|
+
const microTransition = { duration: 0.15 };
|
|
63
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
64
|
+
0 && (module.exports = {
|
|
65
|
+
fadeInOut,
|
|
66
|
+
menuTransition,
|
|
67
|
+
microTransition,
|
|
68
|
+
popOver,
|
|
69
|
+
slideFromBottom,
|
|
70
|
+
slideFromRight,
|
|
71
|
+
springLg,
|
|
72
|
+
springMd,
|
|
73
|
+
springSm,
|
|
74
|
+
tooltipVariant
|
|
75
|
+
});
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
const springSm = { type: "spring", stiffness: 320, damping: 26 };
|
|
2
|
+
const springMd = { type: "spring", stiffness: 260, damping: 24 };
|
|
3
|
+
const springLg = { type: "spring", stiffness: 220, damping: 22 };
|
|
4
|
+
const fadeInOut = {
|
|
5
|
+
initial: { opacity: 0 },
|
|
6
|
+
animate: { opacity: 1 },
|
|
7
|
+
exit: { opacity: 0 }
|
|
8
|
+
};
|
|
9
|
+
const popOver = {
|
|
10
|
+
initial: { opacity: 0, y: 8, scale: 0.98 },
|
|
11
|
+
animate: { opacity: 1, y: 0, scale: 1 },
|
|
12
|
+
exit: { opacity: 0, y: 6, scale: 0.98 }
|
|
13
|
+
};
|
|
14
|
+
const slideFromRight = {
|
|
15
|
+
initial: { x: 32, opacity: 0 },
|
|
16
|
+
animate: { x: 0, opacity: 1 },
|
|
17
|
+
exit: { x: 32, opacity: 0 }
|
|
18
|
+
};
|
|
19
|
+
const slideFromBottom = {
|
|
20
|
+
initial: { y: 24, opacity: 0 },
|
|
21
|
+
animate: { y: 0, opacity: 1 },
|
|
22
|
+
exit: { y: 24, opacity: 0 }
|
|
23
|
+
};
|
|
24
|
+
const tooltipVariant = {
|
|
25
|
+
initial: { opacity: 0, y: 6, scale: 0.98 },
|
|
26
|
+
animate: { opacity: 1, y: 0, scale: 1 },
|
|
27
|
+
exit: { opacity: 0, y: 4, scale: 0.98 }
|
|
28
|
+
};
|
|
29
|
+
const menuTransition = springSm;
|
|
30
|
+
const microTransition = { duration: 0.15 };
|
|
31
|
+
export {
|
|
32
|
+
fadeInOut,
|
|
33
|
+
menuTransition,
|
|
34
|
+
microTransition,
|
|
35
|
+
popOver,
|
|
36
|
+
slideFromBottom,
|
|
37
|
+
slideFromRight,
|
|
38
|
+
springLg,
|
|
39
|
+
springMd,
|
|
40
|
+
springSm,
|
|
41
|
+
tooltipVariant
|
|
42
|
+
};
|
package/dist/index.d.mts
CHANGED
|
@@ -11,7 +11,7 @@ export { ColumnItem, default as ColumnSelector } from './ColumnSelector.mjs';
|
|
|
11
11
|
export { default as DateTimeField, DateTimeFieldProps } from './DateTimeField.mjs';
|
|
12
12
|
export { ConfirmDialog, ConfirmDialogProps, Dialog, DialogBody, DialogField, DialogFooter, DialogHeader, DialogProps, FormDialog, FormDialogProps } from './Dialog.mjs';
|
|
13
13
|
export { Content, default as Dropdown, Item, Label, Separator, Trigger } from './Dropdown.mjs';
|
|
14
|
-
export { SortTh, Td, Th } from './Table.mjs';
|
|
14
|
+
export { AnimatedBody, SortTh, Td, Th } from './Table.mjs';
|
|
15
15
|
export { default as Pagination, PaginationProps } from './Pagination.mjs';
|
|
16
16
|
export { default as InfoGrid, InfoItem } from './InfoGrid.mjs';
|
|
17
17
|
export { default as ChartCard } from './ChartCard.mjs';
|
|
@@ -41,6 +41,8 @@ export { default as Tooltip } from './Tooltip.mjs';
|
|
|
41
41
|
export { default as Link } from './Link.mjs';
|
|
42
42
|
export { ToastProvider, useToast } from './Toast.mjs';
|
|
43
43
|
export { default as StorageUsage, StorageUsageProps } from './StorageUsage.mjs';
|
|
44
|
+
export { a as Animations } from './animations-CHrNeawW.mjs';
|
|
45
|
+
export { default as MotionProvider } from './MotionProvider.mjs';
|
|
44
46
|
export { default as CalendarPanel, CalendarPanelProps } from './CalendarPanel.mjs';
|
|
45
47
|
export { MonthPopover, default as TimePopover, WeekPopover } from './TimePopover.mjs';
|
|
46
48
|
export { default as TimePanel } from './TimePanel.mjs';
|
|
@@ -50,3 +52,4 @@ export { Aficionados, AuditarDocumento, Borrar, CajaDeMano, Cajas, Calendario, C
|
|
|
50
52
|
export { default as ColorPicker, ColorPickerProps } from './ColorPicker.mjs';
|
|
51
53
|
import 'react';
|
|
52
54
|
import 'react/jsx-runtime';
|
|
55
|
+
import 'framer-motion';
|
package/dist/index.d.ts
CHANGED
|
@@ -11,7 +11,7 @@ export { ColumnItem, default as ColumnSelector } from './ColumnSelector.js';
|
|
|
11
11
|
export { default as DateTimeField, DateTimeFieldProps } from './DateTimeField.js';
|
|
12
12
|
export { ConfirmDialog, ConfirmDialogProps, Dialog, DialogBody, DialogField, DialogFooter, DialogHeader, DialogProps, FormDialog, FormDialogProps } from './Dialog.js';
|
|
13
13
|
export { Content, default as Dropdown, Item, Label, Separator, Trigger } from './Dropdown.js';
|
|
14
|
-
export { SortTh, Td, Th } from './Table.js';
|
|
14
|
+
export { AnimatedBody, SortTh, Td, Th } from './Table.js';
|
|
15
15
|
export { default as Pagination, PaginationProps } from './Pagination.js';
|
|
16
16
|
export { default as InfoGrid, InfoItem } from './InfoGrid.js';
|
|
17
17
|
export { default as ChartCard } from './ChartCard.js';
|
|
@@ -41,6 +41,8 @@ export { default as Tooltip } from './Tooltip.js';
|
|
|
41
41
|
export { default as Link } from './Link.js';
|
|
42
42
|
export { ToastProvider, useToast } from './Toast.js';
|
|
43
43
|
export { default as StorageUsage, StorageUsageProps } from './StorageUsage.js';
|
|
44
|
+
export { a as Animations } from './animations-CHrNeawW.js';
|
|
45
|
+
export { default as MotionProvider } from './MotionProvider.js';
|
|
44
46
|
export { default as CalendarPanel, CalendarPanelProps } from './CalendarPanel.js';
|
|
45
47
|
export { MonthPopover, default as TimePopover, WeekPopover } from './TimePopover.js';
|
|
46
48
|
export { default as TimePanel } from './TimePanel.js';
|
|
@@ -50,3 +52,4 @@ export { Aficionados, AuditarDocumento, Borrar, CajaDeMano, Cajas, Calendario, C
|
|
|
50
52
|
export { default as ColorPicker, ColorPickerProps } from './ColorPicker.js';
|
|
51
53
|
import 'react';
|
|
52
54
|
import 'react/jsx-runtime';
|
|
55
|
+
import 'framer-motion';
|
package/dist/index.js
CHANGED
|
@@ -30,6 +30,8 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
|
|
|
30
30
|
var index_exports = {};
|
|
31
31
|
__export(index_exports, {
|
|
32
32
|
ActionIconButton: () => import_ActionIconButton.default,
|
|
33
|
+
AnimatedBody: () => import_Table.AnimatedBody,
|
|
34
|
+
Animations: () => Animations,
|
|
33
35
|
AppTopbar: () => import_AppTopbar.default,
|
|
34
36
|
AvatarGroup: () => import_AvatarGroup.default,
|
|
35
37
|
AvatarSquare: () => import_AvatarSquare.default,
|
|
@@ -61,6 +63,7 @@ __export(index_exports, {
|
|
|
61
63
|
MediaSelector: () => import_MediaSelector.default,
|
|
62
64
|
Money: () => import_Money.default,
|
|
63
65
|
MonthPopover: () => import_TimePopover2.MonthPopover,
|
|
66
|
+
MotionProvider: () => import_MotionProvider.default,
|
|
64
67
|
MultiComboSelect: () => import_MultiComboSelect.default,
|
|
65
68
|
OrderButton: () => import_OrderButton.default,
|
|
66
69
|
Pagination: () => import_Pagination.default,
|
|
@@ -135,6 +138,8 @@ var import_Tooltip = __toESM(require("./Tooltip"));
|
|
|
135
138
|
var import_Link = __toESM(require("./Link"));
|
|
136
139
|
var import_Toast = require("./Toast");
|
|
137
140
|
var import_StorageUsage = __toESM(require("./StorageUsage"));
|
|
141
|
+
var Animations = __toESM(require("./animations"));
|
|
142
|
+
var import_MotionProvider = __toESM(require("./MotionProvider"));
|
|
138
143
|
var import_CalendarPanel = __toESM(require("./CalendarPanel"));
|
|
139
144
|
var import_TimePopover = __toESM(require("./TimePopover"));
|
|
140
145
|
var import_TimePopover2 = require("./TimePopover");
|
|
@@ -147,6 +152,8 @@ var import_ColorPicker = __toESM(require("./ColorPicker"));
|
|
|
147
152
|
// Annotate the CommonJS export names for ESM import in node:
|
|
148
153
|
0 && (module.exports = {
|
|
149
154
|
ActionIconButton,
|
|
155
|
+
AnimatedBody,
|
|
156
|
+
Animations,
|
|
150
157
|
AppTopbar,
|
|
151
158
|
AvatarGroup,
|
|
152
159
|
AvatarSquare,
|
|
@@ -178,6 +185,7 @@ var import_ColorPicker = __toESM(require("./ColorPicker"));
|
|
|
178
185
|
MediaSelector,
|
|
179
186
|
Money,
|
|
180
187
|
MonthPopover,
|
|
188
|
+
MotionProvider,
|
|
181
189
|
MultiComboSelect,
|
|
182
190
|
OrderButton,
|
|
183
191
|
Pagination,
|