@moeve-ui/ui 0.1.3 → 0.2.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.mts +61 -1
- package/dist/index.d.ts +61 -1
- package/dist/index.js +204 -61
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +199 -61
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
package/dist/index.mjs
CHANGED
|
@@ -101,6 +101,21 @@ function CheckCircleIcon(props) {
|
|
|
101
101
|
/* @__PURE__ */ jsx("path", { d: "m8.5 12.5 2.5 2.5 5-5" })
|
|
102
102
|
] });
|
|
103
103
|
}
|
|
104
|
+
function CalendarIcon(props) {
|
|
105
|
+
return /* @__PURE__ */ jsxs("svg", { ...base, stroke: "currentColor", ...props, children: [
|
|
106
|
+
/* @__PURE__ */ jsx("rect", { x: "3", y: "5", width: "18", height: "16", rx: "2" }),
|
|
107
|
+
/* @__PURE__ */ jsx("line", { x1: "3", y1: "10", x2: "21", y2: "10" }),
|
|
108
|
+
/* @__PURE__ */ jsx("line", { x1: "8", y1: "3", x2: "8", y2: "7" }),
|
|
109
|
+
/* @__PURE__ */ jsx("line", { x1: "16", y1: "3", x2: "16", y2: "7" })
|
|
110
|
+
] });
|
|
111
|
+
}
|
|
112
|
+
function UploadIcon(props) {
|
|
113
|
+
return /* @__PURE__ */ jsxs("svg", { ...base, stroke: "currentColor", ...props, children: [
|
|
114
|
+
/* @__PURE__ */ jsx("path", { d: "M12 16V4" }),
|
|
115
|
+
/* @__PURE__ */ jsx("path", { d: "m7 9 5-5 5 5" }),
|
|
116
|
+
/* @__PURE__ */ jsx("path", { d: "M4 16v3a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-3" })
|
|
117
|
+
] });
|
|
118
|
+
}
|
|
104
119
|
function XIcon(props) {
|
|
105
120
|
return /* @__PURE__ */ jsxs("svg", { ...base, stroke: "currentColor", ...props, children: [
|
|
106
121
|
/* @__PURE__ */ jsx("path", { d: "M18 6 6 18" }),
|
|
@@ -485,8 +500,126 @@ function MiniMapCard({ overlayTitle, overlayLinkLabel, competitorCount }) {
|
|
|
485
500
|
] });
|
|
486
501
|
}
|
|
487
502
|
|
|
503
|
+
// src/molecules/WeekdayPicker/WeekdayPicker.tsx
|
|
504
|
+
import { jsx as jsx13 } from "react/jsx-runtime";
|
|
505
|
+
function WeekdayPicker({ labels, selected, onToggle, className = "" }) {
|
|
506
|
+
return /* @__PURE__ */ jsx13("div", { role: "group", className: `flex flex-wrap gap-2 ${className}`.trim(), children: labels.map((label, day) => {
|
|
507
|
+
const active = selected.includes(day);
|
|
508
|
+
return /* @__PURE__ */ jsx13(
|
|
509
|
+
"button",
|
|
510
|
+
{
|
|
511
|
+
type: "button",
|
|
512
|
+
"aria-pressed": active,
|
|
513
|
+
onClick: () => onToggle(day),
|
|
514
|
+
className: `flex h-10 w-10 items-center justify-center rounded-full border text-xs font-semibold transition-colors ${active ? "border-brand-primary bg-brand-primary text-white" : "border-border text-text-secondary hover:bg-surface-subtle"}`,
|
|
515
|
+
children: label
|
|
516
|
+
},
|
|
517
|
+
day
|
|
518
|
+
);
|
|
519
|
+
}) });
|
|
520
|
+
}
|
|
521
|
+
|
|
522
|
+
// src/molecules/SelectableCard/SelectableCard.tsx
|
|
523
|
+
import { jsx as jsx14, jsxs as jsxs10 } from "react/jsx-runtime";
|
|
524
|
+
function SelectableCard({ icon, title, subtitle, media, selected = false, onClick, className = "" }) {
|
|
525
|
+
const base2 = `w-full rounded-xl border text-left transition-colors ${selected ? "border-brand-primary bg-brand-primary/5" : "border-border hover:bg-surface-subtle"} ${className}`.trim();
|
|
526
|
+
if (media) {
|
|
527
|
+
return /* @__PURE__ */ jsxs10("button", { type: "button", "aria-pressed": selected, onClick, className: `overflow-hidden ${base2}`, children: [
|
|
528
|
+
/* @__PURE__ */ jsx14("div", { className: "h-36 w-full overflow-hidden", children: media }),
|
|
529
|
+
/* @__PURE__ */ jsxs10("div", { className: "flex items-center gap-3 p-4", children: [
|
|
530
|
+
icon && /* @__PURE__ */ jsx14(
|
|
531
|
+
"span",
|
|
532
|
+
{
|
|
533
|
+
className: `flex h-8 w-8 shrink-0 items-center justify-center rounded-full ${selected ? "bg-brand-primary text-white" : "bg-surface-muted text-text-secondary"}`,
|
|
534
|
+
children: icon
|
|
535
|
+
}
|
|
536
|
+
),
|
|
537
|
+
/* @__PURE__ */ jsxs10("span", { className: "flex flex-col", children: [
|
|
538
|
+
/* @__PURE__ */ jsx14("span", { className: "font-medium text-text-primary", children: title }),
|
|
539
|
+
subtitle && /* @__PURE__ */ jsx14("span", { className: "text-sm text-text-tertiary", children: subtitle })
|
|
540
|
+
] })
|
|
541
|
+
] })
|
|
542
|
+
] });
|
|
543
|
+
}
|
|
544
|
+
return /* @__PURE__ */ jsxs10("button", { type: "button", "aria-pressed": selected, onClick, className: `flex items-center gap-3 p-4 ${base2}`, children: [
|
|
545
|
+
icon && /* @__PURE__ */ jsx14(
|
|
546
|
+
"span",
|
|
547
|
+
{
|
|
548
|
+
className: `flex h-10 w-10 shrink-0 items-center justify-center rounded-full ${selected ? "bg-brand-primary text-white" : "bg-surface-muted text-text-secondary"}`,
|
|
549
|
+
children: icon
|
|
550
|
+
}
|
|
551
|
+
),
|
|
552
|
+
/* @__PURE__ */ jsxs10("span", { className: "flex flex-col", children: [
|
|
553
|
+
/* @__PURE__ */ jsx14("span", { className: "font-medium text-text-primary", children: title }),
|
|
554
|
+
subtitle && /* @__PURE__ */ jsx14("span", { className: "text-sm text-text-tertiary", children: subtitle })
|
|
555
|
+
] })
|
|
556
|
+
] });
|
|
557
|
+
}
|
|
558
|
+
|
|
559
|
+
// src/molecules/FileDropzone/FileDropzone.tsx
|
|
560
|
+
import { useRef, useState } from "react";
|
|
561
|
+
import { Fragment, jsx as jsx15, jsxs as jsxs11 } from "react/jsx-runtime";
|
|
562
|
+
function FileDropzone({
|
|
563
|
+
accept,
|
|
564
|
+
onFileSelected,
|
|
565
|
+
selectedFileName,
|
|
566
|
+
label = "Arrastra tu archivo aqu\xED, o haz clic para elegirlo",
|
|
567
|
+
hint,
|
|
568
|
+
className = ""
|
|
569
|
+
}) {
|
|
570
|
+
const inputRef = useRef(null);
|
|
571
|
+
const [dragActive, setDragActive] = useState(false);
|
|
572
|
+
function openPicker() {
|
|
573
|
+
inputRef.current?.click();
|
|
574
|
+
}
|
|
575
|
+
function handleKeyDown(e) {
|
|
576
|
+
if (e.key === "Enter" || e.key === " ") {
|
|
577
|
+
e.preventDefault();
|
|
578
|
+
openPicker();
|
|
579
|
+
}
|
|
580
|
+
}
|
|
581
|
+
function handleDrop(e) {
|
|
582
|
+
e.preventDefault();
|
|
583
|
+
setDragActive(false);
|
|
584
|
+
onFileSelected(e.dataTransfer.files?.[0] ?? null);
|
|
585
|
+
}
|
|
586
|
+
return /* @__PURE__ */ jsxs11(
|
|
587
|
+
"div",
|
|
588
|
+
{
|
|
589
|
+
role: "button",
|
|
590
|
+
tabIndex: 0,
|
|
591
|
+
onClick: openPicker,
|
|
592
|
+
onKeyDown: handleKeyDown,
|
|
593
|
+
onDragOver: (e) => {
|
|
594
|
+
e.preventDefault();
|
|
595
|
+
setDragActive(true);
|
|
596
|
+
},
|
|
597
|
+
onDragLeave: () => setDragActive(false),
|
|
598
|
+
onDrop: handleDrop,
|
|
599
|
+
className: `flex cursor-pointer flex-col items-center justify-center gap-2 rounded-xl border-2 border-dashed px-6 py-8 text-center transition-colors ${dragActive ? "border-brand-primary bg-brand-primary/5" : "border-border hover:border-brand-primary/60"} ${className}`.trim(),
|
|
600
|
+
children: [
|
|
601
|
+
/* @__PURE__ */ jsx15(
|
|
602
|
+
"input",
|
|
603
|
+
{
|
|
604
|
+
ref: inputRef,
|
|
605
|
+
type: "file",
|
|
606
|
+
accept,
|
|
607
|
+
className: "hidden",
|
|
608
|
+
onChange: (e) => onFileSelected(e.target.files?.[0] ?? null)
|
|
609
|
+
}
|
|
610
|
+
),
|
|
611
|
+
/* @__PURE__ */ jsx15(UploadIcon, { className: `size-6 ${dragActive ? "text-brand-primary" : "text-text-tertiary"}` }),
|
|
612
|
+
selectedFileName ? /* @__PURE__ */ jsx15("p", { className: "text-sm font-medium text-text-primary", children: selectedFileName }) : /* @__PURE__ */ jsxs11(Fragment, { children: [
|
|
613
|
+
/* @__PURE__ */ jsx15("p", { className: "text-sm font-medium text-text-primary", children: label }),
|
|
614
|
+
hint && /* @__PURE__ */ jsx15("p", { className: "text-xs text-text-tertiary", children: hint })
|
|
615
|
+
] })
|
|
616
|
+
]
|
|
617
|
+
}
|
|
618
|
+
);
|
|
619
|
+
}
|
|
620
|
+
|
|
488
621
|
// src/organisms/Sidebar/Sidebar.tsx
|
|
489
|
-
import { jsx as
|
|
622
|
+
import { jsx as jsx16, jsxs as jsxs12 } from "react/jsx-runtime";
|
|
490
623
|
function Sidebar({
|
|
491
624
|
brandName = "Redinamic",
|
|
492
625
|
stations,
|
|
@@ -496,43 +629,43 @@ function Sidebar({
|
|
|
496
629
|
user,
|
|
497
630
|
onLogout
|
|
498
631
|
}) {
|
|
499
|
-
return /* @__PURE__ */
|
|
500
|
-
/* @__PURE__ */
|
|
501
|
-
/* @__PURE__ */
|
|
502
|
-
/* @__PURE__ */
|
|
503
|
-
/* @__PURE__ */
|
|
632
|
+
return /* @__PURE__ */ jsxs12("aside", { className: "fixed left-0 top-0 flex h-screen w-[260px] flex-col justify-between bg-brand-sidebar pb-2 pt-8", children: [
|
|
633
|
+
/* @__PURE__ */ jsxs12("div", { className: "flex flex-col gap-6 px-4 pb-6", children: [
|
|
634
|
+
/* @__PURE__ */ jsxs12("div", { className: "flex items-center gap-3 px-2", children: [
|
|
635
|
+
/* @__PURE__ */ jsx16("div", { className: "flex size-8 items-center justify-center rounded bg-brand-logo", children: /* @__PURE__ */ jsx16(BoltIcon, { className: "size-4 text-brand-sidebar" }) }),
|
|
636
|
+
/* @__PURE__ */ jsx16("span", { className: "text-2xl font-semibold tracking-tight text-white", children: brandName })
|
|
504
637
|
] }),
|
|
505
|
-
/* @__PURE__ */
|
|
506
|
-
/* @__PURE__ */
|
|
507
|
-
/* @__PURE__ */
|
|
638
|
+
/* @__PURE__ */ jsxs12("div", { className: "relative", children: [
|
|
639
|
+
/* @__PURE__ */ jsx16(MapPinIcon, { className: "pointer-events-none absolute left-4 top-1/2 size-4 -translate-y-1/2 text-white" }),
|
|
640
|
+
/* @__PURE__ */ jsx16(
|
|
508
641
|
"select",
|
|
509
642
|
{
|
|
510
643
|
value: selectedStationId,
|
|
511
644
|
onChange: (event) => onSelectStation(event.target.value),
|
|
512
645
|
className: "w-full appearance-none rounded-xl border border-white/10 bg-white/10 py-2.5 pl-10 pr-9 text-sm font-semibold text-white outline-none",
|
|
513
|
-
children: stations.map((station) => /* @__PURE__ */
|
|
646
|
+
children: stations.map((station) => /* @__PURE__ */ jsx16("option", { value: station.id, className: "text-text-primary", children: station.label }, station.id))
|
|
514
647
|
}
|
|
515
648
|
),
|
|
516
|
-
/* @__PURE__ */
|
|
649
|
+
/* @__PURE__ */ jsx16(ChevronDownIcon, { className: "pointer-events-none absolute right-3 top-1/2 size-3 -translate-y-1/2 text-white" })
|
|
517
650
|
] })
|
|
518
651
|
] }),
|
|
519
|
-
/* @__PURE__ */
|
|
520
|
-
/* @__PURE__ */
|
|
521
|
-
/* @__PURE__ */
|
|
522
|
-
/* @__PURE__ */
|
|
523
|
-
/* @__PURE__ */
|
|
524
|
-
/* @__PURE__ */
|
|
525
|
-
/* @__PURE__ */
|
|
652
|
+
/* @__PURE__ */ jsx16("nav", { className: "flex flex-1 flex-col gap-1 px-4", children: navItems.map((item) => /* @__PURE__ */ jsx16(NavItem, { icon: item.icon, label: item.label, active: item.active, href: item.href }, item.key)) }),
|
|
653
|
+
/* @__PURE__ */ jsxs12("div", { className: "border-t border-white/10 px-4 pt-4", children: [
|
|
654
|
+
/* @__PURE__ */ jsxs12("div", { className: "flex items-center gap-3 px-4 py-3", children: [
|
|
655
|
+
/* @__PURE__ */ jsx16(Avatar, { className: "bg-brand-primary text-white", children: /* @__PURE__ */ jsx16(UserCircleIcon, { className: "size-4" }) }),
|
|
656
|
+
/* @__PURE__ */ jsxs12("div", { children: [
|
|
657
|
+
/* @__PURE__ */ jsx16("p", { className: "text-sm font-semibold text-white", children: user.name }),
|
|
658
|
+
/* @__PURE__ */ jsx16("p", { className: "text-xs text-white/60", children: user.role })
|
|
526
659
|
] })
|
|
527
660
|
] }),
|
|
528
|
-
/* @__PURE__ */
|
|
661
|
+
/* @__PURE__ */ jsxs12(
|
|
529
662
|
"button",
|
|
530
663
|
{
|
|
531
664
|
type: "button",
|
|
532
665
|
onClick: onLogout,
|
|
533
666
|
className: "flex w-full items-center gap-3 rounded-lg px-4 py-2 text-sm font-semibold text-white/50 transition-colors hover:text-white/80",
|
|
534
667
|
children: [
|
|
535
|
-
/* @__PURE__ */
|
|
668
|
+
/* @__PURE__ */ jsx16(LogOutIcon, { className: "size-4" }),
|
|
536
669
|
"Cerrar Sesi\xF3n"
|
|
537
670
|
]
|
|
538
671
|
}
|
|
@@ -542,7 +675,7 @@ function Sidebar({
|
|
|
542
675
|
}
|
|
543
676
|
|
|
544
677
|
// src/organisms/TopBar/TopBar.tsx
|
|
545
|
-
import { jsx as
|
|
678
|
+
import { jsx as jsx17, jsxs as jsxs13 } from "react/jsx-runtime";
|
|
546
679
|
function TopBar({
|
|
547
680
|
stationName,
|
|
548
681
|
lastUpdatedLabel,
|
|
@@ -550,36 +683,36 @@ function TopBar({
|
|
|
550
683
|
refreshing = false,
|
|
551
684
|
middleContent
|
|
552
685
|
}) {
|
|
553
|
-
return /* @__PURE__ */
|
|
554
|
-
/* @__PURE__ */
|
|
555
|
-
/* @__PURE__ */
|
|
556
|
-
/* @__PURE__ */
|
|
557
|
-
/* @__PURE__ */
|
|
686
|
+
return /* @__PURE__ */ jsxs13("header", { className: "fixed left-[260px] right-0 top-0 z-10 flex h-20 items-center justify-between gap-4 bg-surface-page/80 px-6 shadow-header backdrop-blur-md", children: [
|
|
687
|
+
/* @__PURE__ */ jsxs13("div", { className: "shrink-0", children: [
|
|
688
|
+
/* @__PURE__ */ jsxs13("div", { className: "flex items-center gap-2", children: [
|
|
689
|
+
/* @__PURE__ */ jsx17(MapPinIcon, { className: "size-4 text-text-primary" }),
|
|
690
|
+
/* @__PURE__ */ jsx17("span", { className: "text-sm font-semibold text-text-primary", children: stationName })
|
|
558
691
|
] }),
|
|
559
|
-
/* @__PURE__ */
|
|
560
|
-
/* @__PURE__ */
|
|
561
|
-
/* @__PURE__ */
|
|
692
|
+
/* @__PURE__ */ jsxs13("div", { className: "mt-1 flex items-center gap-2", children: [
|
|
693
|
+
/* @__PURE__ */ jsx17("span", { className: "size-2 rounded-full bg-success-dark" }),
|
|
694
|
+
/* @__PURE__ */ jsx17("span", { className: "text-xs font-medium text-text-secondary", children: lastUpdatedLabel })
|
|
562
695
|
] })
|
|
563
696
|
] }),
|
|
564
697
|
middleContent,
|
|
565
|
-
/* @__PURE__ */
|
|
566
|
-
/* @__PURE__ */
|
|
698
|
+
/* @__PURE__ */ jsxs13("div", { className: "flex shrink-0 items-center gap-4", children: [
|
|
699
|
+
/* @__PURE__ */ jsx17(
|
|
567
700
|
Button,
|
|
568
701
|
{
|
|
569
702
|
variant: "primary",
|
|
570
|
-
icon: /* @__PURE__ */
|
|
703
|
+
icon: /* @__PURE__ */ jsx17(RefreshIcon, { className: `size-4 ${refreshing ? "animate-spin" : ""}` }),
|
|
571
704
|
onClick: onRefresh,
|
|
572
705
|
disabled: refreshing,
|
|
573
706
|
children: "Actualizar datos"
|
|
574
707
|
}
|
|
575
708
|
),
|
|
576
|
-
/* @__PURE__ */
|
|
709
|
+
/* @__PURE__ */ jsx17(Avatar, { className: "bg-brand-primary text-white", size: "sm", children: /* @__PURE__ */ jsx17(UserCircleIcon, { className: "size-4" }) })
|
|
577
710
|
] })
|
|
578
711
|
] });
|
|
579
712
|
}
|
|
580
713
|
|
|
581
714
|
// src/organisms/ConfirmDialog/ConfirmDialog.tsx
|
|
582
|
-
import { jsx as
|
|
715
|
+
import { jsx as jsx18, jsxs as jsxs14 } from "react/jsx-runtime";
|
|
583
716
|
function ConfirmDialog({
|
|
584
717
|
open,
|
|
585
718
|
onClose,
|
|
@@ -594,49 +727,49 @@ function ConfirmDialog({
|
|
|
594
727
|
confirming = false
|
|
595
728
|
}) {
|
|
596
729
|
if (!open) return null;
|
|
597
|
-
return /* @__PURE__ */
|
|
598
|
-
/* @__PURE__ */
|
|
599
|
-
/* @__PURE__ */
|
|
730
|
+
return /* @__PURE__ */ jsx18("div", { className: "fixed inset-0 z-50 flex items-center justify-center bg-black/40 p-4", children: /* @__PURE__ */ jsxs14("div", { className: "w-full max-w-md overflow-hidden rounded-2xl bg-white shadow-modal", children: [
|
|
731
|
+
/* @__PURE__ */ jsxs14("div", { className: "relative flex items-center justify-center bg-gradient-to-r from-brand-primary to-info-dark py-8", children: [
|
|
732
|
+
/* @__PURE__ */ jsx18(
|
|
600
733
|
"button",
|
|
601
734
|
{
|
|
602
735
|
type: "button",
|
|
603
736
|
onClick: onClose,
|
|
604
737
|
"aria-label": "Cerrar",
|
|
605
738
|
className: "absolute right-4 top-4 text-white/80 hover:text-white",
|
|
606
|
-
children: /* @__PURE__ */
|
|
739
|
+
children: /* @__PURE__ */ jsx18(XIcon, { className: "size-5" })
|
|
607
740
|
}
|
|
608
741
|
),
|
|
609
|
-
/* @__PURE__ */
|
|
742
|
+
/* @__PURE__ */ jsx18("div", { className: "flex size-14 items-center justify-center rounded-full bg-white text-brand-primary", children: /* @__PURE__ */ jsx18(WalletIcon, { className: "size-6" }) })
|
|
610
743
|
] }),
|
|
611
|
-
/* @__PURE__ */
|
|
612
|
-
/* @__PURE__ */
|
|
613
|
-
/* @__PURE__ */
|
|
614
|
-
/* @__PURE__ */
|
|
615
|
-
/* @__PURE__ */
|
|
616
|
-
/* @__PURE__ */
|
|
617
|
-
/* @__PURE__ */
|
|
618
|
-
/* @__PURE__ */
|
|
744
|
+
/* @__PURE__ */ jsxs14("div", { className: "flex flex-col items-center gap-3 px-8 py-6 text-center", children: [
|
|
745
|
+
/* @__PURE__ */ jsx18("h2", { className: "text-xl font-bold text-text-primary", children: title }),
|
|
746
|
+
/* @__PURE__ */ jsx18("span", { className: "rounded-full bg-surface-muted px-3 py-1 text-xs font-semibold text-text-secondary", children: productLabel }),
|
|
747
|
+
/* @__PURE__ */ jsx18("p", { className: "text-sm text-text-secondary", children: description }),
|
|
748
|
+
/* @__PURE__ */ jsxs14("div", { className: "mt-2 flex w-full items-center justify-between rounded-xl bg-surface-subtle p-4", children: [
|
|
749
|
+
/* @__PURE__ */ jsxs14("div", { className: "text-left", children: [
|
|
750
|
+
/* @__PURE__ */ jsx18("p", { className: "text-xs uppercase text-text-secondary", children: "Actual" }),
|
|
751
|
+
/* @__PURE__ */ jsx18("p", { className: "text-lg font-semibold text-text-tertiary line-through", children: currentPrice })
|
|
619
752
|
] }),
|
|
620
|
-
/* @__PURE__ */
|
|
621
|
-
/* @__PURE__ */
|
|
622
|
-
/* @__PURE__ */
|
|
623
|
-
/* @__PURE__ */
|
|
753
|
+
/* @__PURE__ */ jsx18("span", { className: "text-text-secondary", children: "\u2192" }),
|
|
754
|
+
/* @__PURE__ */ jsxs14("div", { className: "text-right", children: [
|
|
755
|
+
/* @__PURE__ */ jsx18("p", { className: "text-xs uppercase text-success-dark", children: "Recomendado" }),
|
|
756
|
+
/* @__PURE__ */ jsx18("p", { className: "text-lg font-semibold text-brand-primary", children: newPrice })
|
|
624
757
|
] })
|
|
625
758
|
] }),
|
|
626
|
-
/* @__PURE__ */
|
|
627
|
-
/* @__PURE__ */
|
|
628
|
-
/* @__PURE__ */
|
|
629
|
-
/* @__PURE__ */
|
|
759
|
+
/* @__PURE__ */ jsxs14("div", { className: "flex w-full items-center justify-between text-sm", children: [
|
|
760
|
+
/* @__PURE__ */ jsxs14("div", { className: "text-left", children: [
|
|
761
|
+
/* @__PURE__ */ jsx18("p", { className: "text-xs text-text-secondary", children: "Impacto en Margen" }),
|
|
762
|
+
/* @__PURE__ */ jsx18("p", { className: "font-semibold text-success-dark", children: marginImpactLabel })
|
|
630
763
|
] }),
|
|
631
|
-
/* @__PURE__ */
|
|
632
|
-
/* @__PURE__ */
|
|
633
|
-
/* @__PURE__ */
|
|
764
|
+
/* @__PURE__ */ jsxs14("div", { className: "text-right", children: [
|
|
765
|
+
/* @__PURE__ */ jsx18("p", { className: "text-xs text-text-secondary", children: "Volumen Estimado" }),
|
|
766
|
+
/* @__PURE__ */ jsx18("p", { className: "font-semibold text-success-dark", children: volumeImpactLabel })
|
|
634
767
|
] })
|
|
635
768
|
] })
|
|
636
769
|
] }),
|
|
637
|
-
/* @__PURE__ */
|
|
638
|
-
/* @__PURE__ */
|
|
639
|
-
/* @__PURE__ */
|
|
770
|
+
/* @__PURE__ */ jsxs14("div", { className: "flex items-center justify-end gap-4 border-t border-border px-8 py-4", children: [
|
|
771
|
+
/* @__PURE__ */ jsx18(Button, { variant: "text", onClick: onClose, children: "Cancelar" }),
|
|
772
|
+
/* @__PURE__ */ jsx18(Button, { variant: "primary", onClick: onConfirm, disabled: confirming, children: confirming ? "Aplicando..." : "Confirmar y aplicar" })
|
|
640
773
|
] })
|
|
641
774
|
] }) });
|
|
642
775
|
}
|
|
@@ -647,12 +780,14 @@ export {
|
|
|
647
780
|
Badge,
|
|
648
781
|
BoltIcon,
|
|
649
782
|
Button,
|
|
783
|
+
CalendarIcon,
|
|
650
784
|
Card,
|
|
651
785
|
CheckCircleIcon,
|
|
652
786
|
ChevronDownIcon,
|
|
653
787
|
CompetitorRow,
|
|
654
788
|
ConfirmDialog,
|
|
655
789
|
DecisionFactorRow,
|
|
790
|
+
FileDropzone,
|
|
656
791
|
FuelIcon,
|
|
657
792
|
FuelPumpSolidIcon,
|
|
658
793
|
LogOutIcon,
|
|
@@ -663,6 +798,7 @@ export {
|
|
|
663
798
|
ProgressBar,
|
|
664
799
|
RefreshIcon,
|
|
665
800
|
SegmentedTabs,
|
|
801
|
+
SelectableCard,
|
|
666
802
|
Sidebar,
|
|
667
803
|
Snackbar,
|
|
668
804
|
StatTile,
|
|
@@ -672,9 +808,11 @@ export {
|
|
|
672
808
|
TrendDownIcon,
|
|
673
809
|
TrendUpIcon,
|
|
674
810
|
TrendUpSolidIcon,
|
|
811
|
+
UploadIcon,
|
|
675
812
|
UserCircleIcon,
|
|
676
813
|
WalletIcon,
|
|
677
814
|
WalletSolidIcon,
|
|
815
|
+
WeekdayPicker,
|
|
678
816
|
XIcon,
|
|
679
817
|
colors
|
|
680
818
|
};
|