@tipp/ui 1.4.15 → 1.4.16
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/atoms/field-error-wrapper.js +2 -2
- package/dist/atoms/index.cjs +130 -97
- package/dist/atoms/index.cjs.map +1 -1
- package/dist/atoms/index.d.cts +3 -1
- package/dist/atoms/index.d.ts +3 -1
- package/dist/atoms/index.js +81 -81
- package/dist/atoms/pagination.js +2 -2
- package/dist/atoms/text-area.cjs +47 -1
- package/dist/atoms/text-area.cjs.map +1 -1
- package/dist/atoms/text-area.d.cts +11 -1
- package/dist/atoms/text-area.d.ts +11 -1
- package/dist/atoms/text-area.js +1 -1
- package/dist/atoms/text-field.cjs +43 -1
- package/dist/atoms/text-field.cjs.map +1 -1
- package/dist/atoms/text-field.d.cts +15 -1
- package/dist/atoms/text-field.d.ts +15 -1
- package/dist/atoms/text-field.js +1 -1
- package/dist/chunk-2LJ7CD62.js +340 -0
- package/dist/chunk-2LJ7CD62.js.map +1 -0
- package/dist/chunk-3ADRZ7OH.js +27 -0
- package/dist/chunk-3ADRZ7OH.js.map +1 -0
- package/dist/chunk-3KFECMWE.js +97 -0
- package/dist/chunk-3KFECMWE.js.map +1 -0
- package/dist/chunk-7UNNTQPU.js +28 -0
- package/dist/chunk-7UNNTQPU.js.map +1 -0
- package/dist/chunk-AP2MXJOW.js +164 -0
- package/dist/chunk-AP2MXJOW.js.map +1 -0
- package/dist/chunk-CJDUEQIT.js +169 -0
- package/dist/chunk-CJDUEQIT.js.map +1 -0
- package/dist/chunk-DDBXZ3IQ.js +28 -0
- package/dist/chunk-DDBXZ3IQ.js.map +1 -0
- package/dist/chunk-EXC5RUGV.js +20 -0
- package/dist/chunk-EXC5RUGV.js.map +1 -0
- package/dist/chunk-EZEZH6DF.js +29 -0
- package/dist/chunk-EZEZH6DF.js.map +1 -0
- package/dist/chunk-GJ6NEBI5.js +340 -0
- package/dist/chunk-GJ6NEBI5.js.map +1 -0
- package/dist/chunk-KQDTZZMT.js +29 -0
- package/dist/chunk-KQDTZZMT.js.map +1 -0
- package/dist/chunk-LZYIGZTE.js +164 -0
- package/dist/chunk-LZYIGZTE.js.map +1 -0
- package/dist/chunk-R4JVUEWZ.js +32 -0
- package/dist/chunk-R4JVUEWZ.js.map +1 -0
- package/dist/chunk-RJIYLM7M.js +32 -0
- package/dist/chunk-RJIYLM7M.js.map +1 -0
- package/dist/chunk-RT5L7IEL.js +29 -0
- package/dist/chunk-RT5L7IEL.js.map +1 -0
- package/dist/chunk-SHFRE4AI.js +340 -0
- package/dist/chunk-SHFRE4AI.js.map +1 -0
- package/dist/chunk-VIXDNPET.js +28 -0
- package/dist/chunk-VIXDNPET.js.map +1 -0
- package/dist/chunk-YY45YYJE.js +28 -0
- package/dist/chunk-YY45YYJE.js.map +1 -0
- package/dist/index.cjs +287 -254
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +3 -1
- package/dist/index.d.ts +3 -1
- package/dist/index.js +94 -94
- package/dist/molecules/date-picker/index.js +2 -2
- package/dist/molecules/expand-table/index.js +35 -35
- package/dist/molecules/expand-table/row.js +32 -32
- package/dist/molecules/form.js +2 -2
- package/dist/molecules/index.js +40 -40
- package/dist/molecules/learning-post.js +6 -6
- package/dist/molecules/navigation.js +33 -33
- package/dist/molecules/stepper.js +3 -3
- package/dist/molecules/tag-selector.js +33 -33
- package/package.json +1 -1
- package/src/atoms/text-area.tsx +29 -1
- package/src/atoms/text-field.tsx +29 -1
package/dist/index.cjs
CHANGED
|
@@ -138,7 +138,7 @@ __export(src_exports, {
|
|
|
138
138
|
Radio: () => import_themes32.Radio,
|
|
139
139
|
RadioCards: () => import_themes33.RadioCards,
|
|
140
140
|
RadioGroup: () => import_themes34.RadioGroup,
|
|
141
|
-
Root: () =>
|
|
141
|
+
Root: () => Root5,
|
|
142
142
|
RowsIcon: () => import_react_icons2.RowsIcon,
|
|
143
143
|
ScrollArea: () => import_themes35.ScrollArea,
|
|
144
144
|
Section: () => import_themes36.Section,
|
|
@@ -154,8 +154,8 @@ __export(src_exports, {
|
|
|
154
154
|
TabNav: () => import_themes43.TabNav,
|
|
155
155
|
Tabs: () => import_themes44.Tabs,
|
|
156
156
|
TagSelector: () => TagSelector,
|
|
157
|
-
TextArea: () =>
|
|
158
|
-
TextField: () =>
|
|
157
|
+
TextArea: () => TextArea,
|
|
158
|
+
TextField: () => TextField,
|
|
159
159
|
ThemeProvider: () => ThemeProvider,
|
|
160
160
|
ToastContainer: () => ToastContainer,
|
|
161
161
|
Tooltip: () => import_themes48.Tooltip,
|
|
@@ -651,15 +651,32 @@ var import_themes44 = require("@radix-ui/themes");
|
|
|
651
651
|
|
|
652
652
|
// src/atoms/text-area.tsx
|
|
653
653
|
var import_themes45 = require("@radix-ui/themes");
|
|
654
|
+
var import_react12 = require("react");
|
|
655
|
+
var import_jsx_runtime12 = require("react/jsx-runtime");
|
|
656
|
+
var TextArea = (0, import_react12.forwardRef)(
|
|
657
|
+
(props, ref) => {
|
|
658
|
+
const _a = props, { error, style } = _a, rest = __objRest(_a, ["error", "style"]);
|
|
659
|
+
const fieldStyle = (0, import_react12.useMemo)(() => {
|
|
660
|
+
if (!style && !error)
|
|
661
|
+
return void 0;
|
|
662
|
+
const errorStyle = {
|
|
663
|
+
boxShadow: "inset 0 0 0 var(--text-area-border-width) var(--error-11)"
|
|
664
|
+
};
|
|
665
|
+
return __spreadValues(__spreadValues({}, style || {}), errorStyle);
|
|
666
|
+
}, [error, style]);
|
|
667
|
+
return /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(import_themes45.TextArea, __spreadProps(__spreadValues({}, rest), { ref, style: fieldStyle }));
|
|
668
|
+
}
|
|
669
|
+
);
|
|
670
|
+
TextArea.displayName = "TextArea";
|
|
654
671
|
|
|
655
672
|
// src/atoms/typo.tsx
|
|
656
673
|
var import_themes46 = require("@radix-ui/themes");
|
|
657
|
-
var
|
|
658
|
-
var
|
|
659
|
-
var Typo = (0,
|
|
674
|
+
var import_react13 = require("react");
|
|
675
|
+
var import_jsx_runtime13 = require("react/jsx-runtime");
|
|
676
|
+
var Typo = (0, import_react13.forwardRef)(
|
|
660
677
|
(props, ref) => {
|
|
661
678
|
const _a = props, { size, variant, children } = _a, rest = __objRest(_a, ["size", "variant", "children"]);
|
|
662
|
-
const radixSize = (0,
|
|
679
|
+
const radixSize = (0, import_react13.useMemo)(() => {
|
|
663
680
|
if (size !== void 0)
|
|
664
681
|
return size;
|
|
665
682
|
switch (variant) {
|
|
@@ -672,54 +689,70 @@ var Typo = (0, import_react12.forwardRef)(
|
|
|
672
689
|
return "2";
|
|
673
690
|
}
|
|
674
691
|
}, [size, variant]);
|
|
675
|
-
return /* @__PURE__ */ (0,
|
|
692
|
+
return /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(import_themes46.Text, __spreadProps(__spreadValues({}, rest), { ref, size: radixSize, children }));
|
|
676
693
|
}
|
|
677
694
|
);
|
|
678
695
|
Typo.displayName = "Typo";
|
|
679
696
|
|
|
680
697
|
// src/atoms/text-field.tsx
|
|
681
698
|
var import_themes47 = require("@radix-ui/themes");
|
|
699
|
+
var import_react14 = require("react");
|
|
700
|
+
var import_jsx_runtime14 = require("react/jsx-runtime");
|
|
701
|
+
var Root3 = (0, import_react14.forwardRef)((props, ref) => {
|
|
702
|
+
const _a = props, { error, style } = _a, rest = __objRest(_a, ["error", "style"]);
|
|
703
|
+
const fieldStyle = (0, import_react14.useMemo)(() => {
|
|
704
|
+
if (!style && !error)
|
|
705
|
+
return void 0;
|
|
706
|
+
const errorStyle = {
|
|
707
|
+
boxShadow: "inset 0 0 0 var(--text-field-border-width) var(--error-11)"
|
|
708
|
+
};
|
|
709
|
+
return __spreadValues(__spreadValues({}, style || {}), errorStyle);
|
|
710
|
+
}, [error, style]);
|
|
711
|
+
return /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(import_themes47.TextField.Root, __spreadValues({ ref, style: fieldStyle }, rest));
|
|
712
|
+
});
|
|
713
|
+
Root3.displayName = "TextField.Root";
|
|
714
|
+
var TextField = { Root: Root3, Slot: import_themes47.TextField.Slot };
|
|
682
715
|
|
|
683
716
|
// src/atoms/tooltip.tsx
|
|
684
717
|
var import_themes48 = require("@radix-ui/themes");
|
|
685
718
|
|
|
686
719
|
// src/atoms/collapse.tsx
|
|
687
|
-
var
|
|
688
|
-
var
|
|
720
|
+
var import_react15 = require("react");
|
|
721
|
+
var import_jsx_runtime15 = require("react/jsx-runtime");
|
|
689
722
|
function Collapse(props) {
|
|
690
723
|
const { children, closedHeight = "0" } = props;
|
|
691
|
-
const [open, setOpen] = (0,
|
|
724
|
+
const [open, setOpen] = (0, import_react15.useState)(() => {
|
|
692
725
|
return props.open || props.defaultOpen || false;
|
|
693
726
|
});
|
|
694
|
-
(0,
|
|
727
|
+
(0, import_react15.useEffect)(() => {
|
|
695
728
|
if (props.open === void 0)
|
|
696
729
|
return;
|
|
697
730
|
setOpen(props.open);
|
|
698
731
|
}, [props.open]);
|
|
699
|
-
const ref = (0,
|
|
700
|
-
(0,
|
|
732
|
+
const ref = (0, import_react15.useRef)(null);
|
|
733
|
+
(0, import_react15.useEffect)(() => {
|
|
701
734
|
if (!ref.current)
|
|
702
735
|
return;
|
|
703
736
|
ref.current.style.maxHeight = open ? `${ref.current.scrollHeight}px` : closedHeight;
|
|
704
737
|
}, [closedHeight, open]);
|
|
705
|
-
return /* @__PURE__ */ (0,
|
|
738
|
+
return /* @__PURE__ */ (0, import_jsx_runtime15.jsx)("div", { className: "tipp-collapse", ref, children });
|
|
706
739
|
}
|
|
707
740
|
|
|
708
741
|
// src/atoms/spinner.tsx
|
|
709
742
|
var import_themes49 = require("@radix-ui/themes");
|
|
710
743
|
|
|
711
744
|
// src/atoms/pagination.tsx
|
|
712
|
-
var
|
|
745
|
+
var import_react16 = require("react");
|
|
713
746
|
|
|
714
747
|
// src/icon.ts
|
|
715
748
|
var import_react_icons2 = require("@radix-ui/react-icons");
|
|
716
749
|
|
|
717
750
|
// src/atoms/pagination.tsx
|
|
718
|
-
var
|
|
751
|
+
var import_jsx_runtime16 = require("react/jsx-runtime");
|
|
719
752
|
function Pagination(props) {
|
|
720
753
|
const { onChange, count = 0, siblingCount = 2 } = props;
|
|
721
|
-
const [page, setPage] = (0,
|
|
722
|
-
const visibleItems = (0,
|
|
754
|
+
const [page, setPage] = (0, import_react16.useState)(() => props.page || props.defaultPage || 1);
|
|
755
|
+
const visibleItems = (0, import_react16.useMemo)(() => {
|
|
723
756
|
let start = Math.max(1, page - siblingCount);
|
|
724
757
|
let end = Math.min(count, page + siblingCount);
|
|
725
758
|
if (page - siblingCount <= 0 && end < count) {
|
|
@@ -729,37 +762,37 @@ function Pagination(props) {
|
|
|
729
762
|
}
|
|
730
763
|
return Array.from({ length: end - start + 1 }, (_, i) => i + start);
|
|
731
764
|
}, [count, page, siblingCount]);
|
|
732
|
-
(0,
|
|
765
|
+
(0, import_react16.useEffect)(() => {
|
|
733
766
|
onChange == null ? void 0 : onChange(page);
|
|
734
767
|
}, [onChange, page]);
|
|
735
|
-
(0,
|
|
768
|
+
(0, import_react16.useEffect)(() => {
|
|
736
769
|
if (props.page) {
|
|
737
770
|
setPage(props.page);
|
|
738
771
|
}
|
|
739
772
|
}, [props.page]);
|
|
740
|
-
const prev = (0,
|
|
773
|
+
const prev = (0, import_react16.useMemo)(() => {
|
|
741
774
|
const p = page - 1;
|
|
742
775
|
return p < 1 ? void 0 : p;
|
|
743
776
|
}, [page]);
|
|
744
|
-
const next = (0,
|
|
777
|
+
const next = (0, import_react16.useMemo)(() => {
|
|
745
778
|
const n = page + 1;
|
|
746
779
|
return n > count ? void 0 : n;
|
|
747
780
|
}, [count, page]);
|
|
748
|
-
const onClickPrev = (0,
|
|
781
|
+
const onClickPrev = (0, import_react16.useCallback)(() => {
|
|
749
782
|
prev && setPage(prev);
|
|
750
783
|
}, [prev]);
|
|
751
|
-
const onClickNext = (0,
|
|
784
|
+
const onClickNext = (0, import_react16.useCallback)(() => {
|
|
752
785
|
next && setPage(next);
|
|
753
786
|
}, [next]);
|
|
754
|
-
const doublePrev = (0,
|
|
787
|
+
const doublePrev = (0, import_react16.useMemo)(() => {
|
|
755
788
|
if (!visibleItems.length)
|
|
756
789
|
return;
|
|
757
790
|
return Math.max(0, visibleItems[0] - 1);
|
|
758
791
|
}, [visibleItems]);
|
|
759
|
-
const onClickDoublePrev = (0,
|
|
792
|
+
const onClickDoublePrev = (0, import_react16.useCallback)(() => {
|
|
760
793
|
doublePrev && setPage(doublePrev);
|
|
761
794
|
}, [doublePrev]);
|
|
762
|
-
const doubleNext = (0,
|
|
795
|
+
const doubleNext = (0, import_react16.useMemo)(() => {
|
|
763
796
|
if (!visibleItems.length)
|
|
764
797
|
return;
|
|
765
798
|
const n = visibleItems[visibleItems.length - 1] + 1;
|
|
@@ -767,7 +800,7 @@ function Pagination(props) {
|
|
|
767
800
|
return;
|
|
768
801
|
return Math.min(count, n);
|
|
769
802
|
}, [count, visibleItems]);
|
|
770
|
-
const onClickDoubleNext = (0,
|
|
803
|
+
const onClickDoubleNext = (0, import_react16.useCallback)(() => {
|
|
771
804
|
doubleNext && setPage(doubleNext);
|
|
772
805
|
}, [doubleNext]);
|
|
773
806
|
const iconSize = {
|
|
@@ -779,19 +812,19 @@ function Pagination(props) {
|
|
|
779
812
|
size: "3",
|
|
780
813
|
style: { borderRadius: "50%" }
|
|
781
814
|
};
|
|
782
|
-
return /* @__PURE__ */ (0,
|
|
783
|
-
/* @__PURE__ */ (0,
|
|
815
|
+
return /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(import_themes19.Flex, { align: "center", className: "tipp-pagination", gap: "4", children: [
|
|
816
|
+
/* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
|
|
784
817
|
import_themes24.IconButton,
|
|
785
818
|
__spreadProps(__spreadValues({
|
|
786
819
|
disabled: !doublePrev,
|
|
787
820
|
onClick: onClickDoublePrev
|
|
788
821
|
}, moveButtonProps), {
|
|
789
|
-
children: /* @__PURE__ */ (0,
|
|
822
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(import_react_icons2.DoubleArrowLeftIcon, __spreadValues({}, iconSize))
|
|
790
823
|
})
|
|
791
824
|
),
|
|
792
|
-
/* @__PURE__ */ (0,
|
|
793
|
-
/* @__PURE__ */ (0,
|
|
794
|
-
return /* @__PURE__ */ (0,
|
|
825
|
+
/* @__PURE__ */ (0, import_jsx_runtime16.jsx)(import_themes24.IconButton, __spreadProps(__spreadValues({ disabled: !prev, onClick: onClickPrev }, moveButtonProps), { children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(import_react_icons2.ChevronLeftIcon, __spreadValues({}, iconSize)) })),
|
|
826
|
+
/* @__PURE__ */ (0, import_jsx_runtime16.jsx)(import_themes19.Flex, { gap: "1", children: visibleItems.map((item) => {
|
|
827
|
+
return /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
|
|
795
828
|
"button",
|
|
796
829
|
{
|
|
797
830
|
className: `page-button ${item === page ? "active" : ""}`,
|
|
@@ -799,46 +832,46 @@ function Pagination(props) {
|
|
|
799
832
|
setPage(item);
|
|
800
833
|
},
|
|
801
834
|
type: "button",
|
|
802
|
-
children: /* @__PURE__ */ (0,
|
|
835
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(Typo, { variant: "body", children: item })
|
|
803
836
|
},
|
|
804
837
|
item
|
|
805
838
|
);
|
|
806
839
|
}) }),
|
|
807
|
-
/* @__PURE__ */ (0,
|
|
808
|
-
/* @__PURE__ */ (0,
|
|
840
|
+
/* @__PURE__ */ (0, import_jsx_runtime16.jsx)(import_themes24.IconButton, __spreadProps(__spreadValues({ disabled: !next, onClick: onClickNext }, moveButtonProps), { children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(import_react_icons2.ChevronRightIcon, __spreadValues({}, iconSize)) })),
|
|
841
|
+
/* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
|
|
809
842
|
import_themes24.IconButton,
|
|
810
843
|
__spreadProps(__spreadValues({
|
|
811
844
|
disabled: !doubleNext,
|
|
812
845
|
onClick: onClickDoubleNext
|
|
813
846
|
}, moveButtonProps), {
|
|
814
|
-
children: /* @__PURE__ */ (0,
|
|
847
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(import_react_icons2.DoubleArrowRightIcon, __spreadValues({}, iconSize))
|
|
815
848
|
})
|
|
816
849
|
)
|
|
817
850
|
] });
|
|
818
851
|
}
|
|
819
852
|
|
|
820
853
|
// src/atoms/field-error-wrapper.tsx
|
|
821
|
-
var
|
|
854
|
+
var import_jsx_runtime17 = require("react/jsx-runtime");
|
|
822
855
|
function FieldErrorWrapper({
|
|
823
856
|
children,
|
|
824
857
|
error
|
|
825
858
|
}) {
|
|
826
|
-
return /* @__PURE__ */ (0,
|
|
859
|
+
return /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)(import_themes19.Flex, { direction: "column", gap: "1", children: [
|
|
827
860
|
children,
|
|
828
|
-
error ? /* @__PURE__ */ (0,
|
|
861
|
+
error ? /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(Typo, { color: "red", variant: "caption", children: error }) : null
|
|
829
862
|
] });
|
|
830
863
|
}
|
|
831
864
|
|
|
832
865
|
// src/atoms/ellipsis-tooltip.tsx
|
|
833
|
-
var
|
|
834
|
-
var
|
|
866
|
+
var import_react17 = require("react");
|
|
867
|
+
var import_jsx_runtime18 = require("react/jsx-runtime");
|
|
835
868
|
function EllipsisTooltip(props) {
|
|
836
869
|
const _a = props, { children, style, lineClamp = 2 } = _a, rest = __objRest(_a, ["children", "style", "lineClamp"]);
|
|
837
|
-
const ref = (0,
|
|
838
|
-
const [tooltipDisplay, setTooltipDisplay] = (0,
|
|
870
|
+
const ref = (0, import_react17.useRef)(null);
|
|
871
|
+
const [tooltipDisplay, setTooltipDisplay] = (0, import_react17.useState)(
|
|
839
872
|
"none"
|
|
840
873
|
);
|
|
841
|
-
(0,
|
|
874
|
+
(0, import_react17.useEffect)(() => {
|
|
842
875
|
if (ref.current) {
|
|
843
876
|
const typo = ref.current;
|
|
844
877
|
const mouseOver = () => {
|
|
@@ -853,7 +886,7 @@ function EllipsisTooltip(props) {
|
|
|
853
886
|
ref.current.addEventListener("mouseleave", mouseOut);
|
|
854
887
|
}
|
|
855
888
|
}, [children]);
|
|
856
|
-
return /* @__PURE__ */ (0,
|
|
889
|
+
return /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(import_themes48.Tooltip, { content: children, style: { display: tooltipDisplay }, children: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
|
|
857
890
|
Typo,
|
|
858
891
|
__spreadProps(__spreadValues({}, rest), {
|
|
859
892
|
ref,
|
|
@@ -872,28 +905,28 @@ function EllipsisTooltip(props) {
|
|
|
872
905
|
}
|
|
873
906
|
|
|
874
907
|
// src/atoms/drawer.tsx
|
|
875
|
-
var
|
|
908
|
+
var import_react18 = require("react");
|
|
876
909
|
var Dialog2 = __toESM(require("@radix-ui/react-dialog"), 1);
|
|
877
910
|
var import_react_icons3 = require("@radix-ui/react-icons");
|
|
878
|
-
var
|
|
879
|
-
function
|
|
880
|
-
return /* @__PURE__ */ (0,
|
|
911
|
+
var import_jsx_runtime19 = require("react/jsx-runtime");
|
|
912
|
+
function Root5(props) {
|
|
913
|
+
return /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(Dialog2.Root, __spreadValues({}, props));
|
|
881
914
|
}
|
|
882
915
|
function Content6(props) {
|
|
883
916
|
const _a = props, { position = "right", className, children } = _a, rest = __objRest(_a, ["position", "className", "children"]);
|
|
884
|
-
const containerRef = (0,
|
|
885
|
-
(0,
|
|
917
|
+
const containerRef = (0, import_react18.useRef)(null);
|
|
918
|
+
(0, import_react18.useEffect)(() => {
|
|
886
919
|
containerRef.current = document.getElementsByClassName("radix-themes")[0];
|
|
887
920
|
}, []);
|
|
888
|
-
return /* @__PURE__ */ (0,
|
|
889
|
-
/* @__PURE__ */ (0,
|
|
890
|
-
/* @__PURE__ */ (0,
|
|
921
|
+
return /* @__PURE__ */ (0, import_jsx_runtime19.jsxs)(Dialog2.Portal, { container: containerRef.current, children: [
|
|
922
|
+
/* @__PURE__ */ (0, import_jsx_runtime19.jsx)(Dialog2.Overlay, { className: "DrawerOverlay" }),
|
|
923
|
+
/* @__PURE__ */ (0, import_jsx_runtime19.jsxs)(
|
|
891
924
|
Dialog2.Content,
|
|
892
925
|
__spreadProps(__spreadValues({
|
|
893
926
|
className: `DrawerContent ${position} ${className || ""}`
|
|
894
927
|
}, rest), {
|
|
895
928
|
children: [
|
|
896
|
-
/* @__PURE__ */ (0,
|
|
929
|
+
/* @__PURE__ */ (0, import_jsx_runtime19.jsx)(import_themes6.Box, { children: /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(Dialog2.Close, { asChild: true, className: "DialogClose", children: /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(Button, { color: "gray", variant: "transparent", children: /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(import_react_icons3.Cross1Icon, { height: "18px", width: "18px" }) }) }) }),
|
|
897
930
|
children
|
|
898
931
|
]
|
|
899
932
|
})
|
|
@@ -901,7 +934,7 @@ function Content6(props) {
|
|
|
901
934
|
] });
|
|
902
935
|
}
|
|
903
936
|
function Trigger4(props) {
|
|
904
|
-
return /* @__PURE__ */ (0,
|
|
937
|
+
return /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(Dialog2.Trigger, __spreadValues({ asChild: true }, props));
|
|
905
938
|
}
|
|
906
939
|
var Drawer = {
|
|
907
940
|
Root: Dialog2.Root,
|
|
@@ -916,12 +949,12 @@ var Drawer = {
|
|
|
916
949
|
var import_react_icons4 = require("@radix-ui/react-icons");
|
|
917
950
|
var import_react_toastify = require("react-toastify");
|
|
918
951
|
var import_react_toastify2 = require("react-toastify");
|
|
919
|
-
var
|
|
952
|
+
var import_jsx_runtime20 = require("react/jsx-runtime");
|
|
920
953
|
function CloseButton() {
|
|
921
954
|
return null;
|
|
922
955
|
}
|
|
923
956
|
function ToastContainer(props) {
|
|
924
|
-
return /* @__PURE__ */ (0,
|
|
957
|
+
return /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
|
|
925
958
|
import_react_toastify.ToastContainer,
|
|
926
959
|
__spreadValues({
|
|
927
960
|
autoClose: 5e3,
|
|
@@ -929,7 +962,7 @@ function ToastContainer(props) {
|
|
|
929
962
|
closeOnClick: true,
|
|
930
963
|
draggable: true,
|
|
931
964
|
hideProgressBar: true,
|
|
932
|
-
icon: /* @__PURE__ */ (0,
|
|
965
|
+
icon: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(import_react_icons4.InfoCircledIcon, {}),
|
|
933
966
|
newestOnTop: true,
|
|
934
967
|
pauseOnFocusLoss: true,
|
|
935
968
|
pauseOnHover: true,
|
|
@@ -942,12 +975,12 @@ function ToastContainer(props) {
|
|
|
942
975
|
|
|
943
976
|
// src/molecules/form.tsx
|
|
944
977
|
var RadixForm = __toESM(require("@radix-ui/react-form"), 1);
|
|
945
|
-
var
|
|
946
|
-
var
|
|
947
|
-
var
|
|
978
|
+
var import_react19 = require("react");
|
|
979
|
+
var import_jsx_runtime21 = require("react/jsx-runtime");
|
|
980
|
+
var Root7 = (0, import_react19.forwardRef)(
|
|
948
981
|
(_a, ref) => {
|
|
949
982
|
var _b = _a, { children, className } = _b, rest = __objRest(_b, ["children", "className"]);
|
|
950
|
-
return /* @__PURE__ */ (0,
|
|
983
|
+
return /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
|
|
951
984
|
RadixForm.Root,
|
|
952
985
|
__spreadProps(__spreadValues({}, rest), {
|
|
953
986
|
className: `FormRoot ${className || ""}`,
|
|
@@ -957,67 +990,67 @@ var Root6 = (0, import_react17.forwardRef)(
|
|
|
957
990
|
);
|
|
958
991
|
}
|
|
959
992
|
);
|
|
960
|
-
|
|
961
|
-
var FieldContext = (0,
|
|
993
|
+
Root7.displayName = "FORM_ROOT";
|
|
994
|
+
var FieldContext = (0, import_react19.createContext)({
|
|
962
995
|
name: ""
|
|
963
996
|
});
|
|
964
|
-
var Field2 = (0,
|
|
997
|
+
var Field2 = (0, import_react19.forwardRef)(
|
|
965
998
|
(_a, ref) => {
|
|
966
999
|
var _b = _a, { children, className } = _b, rest = __objRest(_b, ["children", "className"]);
|
|
967
|
-
return /* @__PURE__ */ (0,
|
|
1000
|
+
return /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
|
|
968
1001
|
RadixForm.Field,
|
|
969
1002
|
__spreadProps(__spreadValues({}, rest), {
|
|
970
1003
|
className: `FormField ${className || ""}`,
|
|
971
1004
|
ref,
|
|
972
|
-
children: /* @__PURE__ */ (0,
|
|
1005
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(FieldContext.Provider, { value: rest, children })
|
|
973
1006
|
})
|
|
974
1007
|
);
|
|
975
1008
|
}
|
|
976
1009
|
);
|
|
977
1010
|
Field2.displayName = "FORM_FIELD";
|
|
978
1011
|
function HeadingLabel(props) {
|
|
979
|
-
return /* @__PURE__ */ (0,
|
|
1012
|
+
return /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(Heading2, __spreadProps(__spreadValues({ variant: "heading5" }, props), { children: props.children }));
|
|
980
1013
|
}
|
|
981
|
-
var Label2 = (0,
|
|
1014
|
+
var Label2 = (0, import_react19.forwardRef)(
|
|
982
1015
|
(_a, ref) => {
|
|
983
1016
|
var _b = _a, { children, className, variant = "body" } = _b, rest = __objRest(_b, ["children", "className", "variant"]);
|
|
984
1017
|
const Comp = variant === "title" ? HeadingLabel : Typo;
|
|
985
|
-
const fieldProps = (0,
|
|
986
|
-
return /* @__PURE__ */ (0,
|
|
1018
|
+
const fieldProps = (0, import_react19.useContext)(FieldContext);
|
|
1019
|
+
return /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
|
|
987
1020
|
RadixForm.Label,
|
|
988
1021
|
__spreadProps(__spreadValues({}, rest), {
|
|
989
1022
|
asChild: true,
|
|
990
1023
|
className: `FormLabel ${className || ""}`,
|
|
991
1024
|
ref,
|
|
992
|
-
children: /* @__PURE__ */ (0,
|
|
1025
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime21.jsxs)(Comp, { children: [
|
|
993
1026
|
children,
|
|
994
|
-
fieldProps.required ? /* @__PURE__ */ (0,
|
|
1027
|
+
fieldProps.required ? /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(Typo, { as: "span", color: "tomato", children: ` *` }) : null
|
|
995
1028
|
] })
|
|
996
1029
|
})
|
|
997
1030
|
);
|
|
998
1031
|
}
|
|
999
1032
|
);
|
|
1000
1033
|
Label2.displayName = "FORM_Label";
|
|
1001
|
-
var Message2 = (0,
|
|
1034
|
+
var Message2 = (0, import_react19.forwardRef)(
|
|
1002
1035
|
(_a, ref) => {
|
|
1003
1036
|
var _b = _a, { children, className } = _b, rest = __objRest(_b, ["children", "className"]);
|
|
1004
|
-
return /* @__PURE__ */ (0,
|
|
1037
|
+
return /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
|
|
1005
1038
|
RadixForm.Message,
|
|
1006
1039
|
__spreadProps(__spreadValues({}, rest), {
|
|
1007
1040
|
asChild: true,
|
|
1008
1041
|
className: `FormMessage ${className || ""}`,
|
|
1009
1042
|
ref,
|
|
1010
|
-
children: /* @__PURE__ */ (0,
|
|
1043
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(Typo, { color: "red", children })
|
|
1011
1044
|
})
|
|
1012
1045
|
);
|
|
1013
1046
|
}
|
|
1014
1047
|
);
|
|
1015
1048
|
Message2.displayName = "FORM_Message";
|
|
1016
|
-
var Control2 = (0,
|
|
1049
|
+
var Control2 = (0, import_react19.forwardRef)(
|
|
1017
1050
|
(_a, ref) => {
|
|
1018
1051
|
var _b = _a, { className } = _b, rest = __objRest(_b, ["className"]);
|
|
1019
|
-
const fieldProps = (0,
|
|
1020
|
-
return /* @__PURE__ */ (0,
|
|
1052
|
+
const fieldProps = (0, import_react19.useContext)(FieldContext);
|
|
1053
|
+
return /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
|
|
1021
1054
|
RadixForm.Control,
|
|
1022
1055
|
__spreadProps(__spreadValues({}, rest), {
|
|
1023
1056
|
className: `FormControl ${className || ""}`,
|
|
@@ -1029,7 +1062,7 @@ var Control2 = (0, import_react17.forwardRef)(
|
|
|
1029
1062
|
);
|
|
1030
1063
|
Control2.displayName = "FORM_Control";
|
|
1031
1064
|
var Form = {
|
|
1032
|
-
Root:
|
|
1065
|
+
Root: Root7,
|
|
1033
1066
|
Field: Field2,
|
|
1034
1067
|
Label: Label2,
|
|
1035
1068
|
Message: Message2,
|
|
@@ -1038,33 +1071,33 @@ var Form = {
|
|
|
1038
1071
|
};
|
|
1039
1072
|
|
|
1040
1073
|
// src/atoms/auto-sizing-input.tsx
|
|
1041
|
-
var
|
|
1042
|
-
var
|
|
1043
|
-
var AutoSizingInput = (0,
|
|
1074
|
+
var import_react20 = require("react");
|
|
1075
|
+
var import_jsx_runtime22 = require("react/jsx-runtime");
|
|
1076
|
+
var AutoSizingInput = (0, import_react20.forwardRef)(
|
|
1044
1077
|
(_a, ref) => {
|
|
1045
1078
|
var _b = _a, { value: _value, onChangeValue, onChange } = _b, rest = __objRest(_b, ["value", "onChangeValue", "onChange"]);
|
|
1046
|
-
const [value, setValue] = (0,
|
|
1047
|
-
const [width, setWidth] = (0,
|
|
1048
|
-
const span = (0,
|
|
1049
|
-
(0,
|
|
1079
|
+
const [value, setValue] = (0, import_react20.useState)(_value);
|
|
1080
|
+
const [width, setWidth] = (0, import_react20.useState)(0);
|
|
1081
|
+
const span = (0, import_react20.useRef)(null);
|
|
1082
|
+
(0, import_react20.useEffect)(() => {
|
|
1050
1083
|
span.current && setWidth(span.current.offsetWidth);
|
|
1051
1084
|
}, [value]);
|
|
1052
|
-
const changeHandler = (0,
|
|
1085
|
+
const changeHandler = (0, import_react20.useCallback)(
|
|
1053
1086
|
(evt) => {
|
|
1054
1087
|
onChange == null ? void 0 : onChange(evt);
|
|
1055
1088
|
setValue(evt.target.value);
|
|
1056
1089
|
},
|
|
1057
1090
|
[onChange]
|
|
1058
1091
|
);
|
|
1059
|
-
(0,
|
|
1092
|
+
(0, import_react20.useEffect)(() => {
|
|
1060
1093
|
setValue(_value || "");
|
|
1061
1094
|
}, [_value]);
|
|
1062
|
-
(0,
|
|
1095
|
+
(0, import_react20.useEffect)(() => {
|
|
1063
1096
|
onChangeValue == null ? void 0 : onChangeValue(value || "");
|
|
1064
1097
|
}, [value, onChangeValue]);
|
|
1065
|
-
return /* @__PURE__ */ (0,
|
|
1066
|
-
/* @__PURE__ */ (0,
|
|
1067
|
-
/* @__PURE__ */ (0,
|
|
1098
|
+
return /* @__PURE__ */ (0, import_jsx_runtime22.jsxs)("div", { className: "auto-sizing-input wrapper", style: { width: width + 24 }, children: [
|
|
1099
|
+
/* @__PURE__ */ (0, import_jsx_runtime22.jsx)("input", __spreadValues({ onChange: changeHandler, ref, value }, rest)),
|
|
1100
|
+
/* @__PURE__ */ (0, import_jsx_runtime22.jsx)("span", { "aria-hidden": "true", ref: span, children: value })
|
|
1068
1101
|
] });
|
|
1069
1102
|
}
|
|
1070
1103
|
);
|
|
@@ -1072,15 +1105,15 @@ AutoSizingInput.displayName = "AutoSizingInput";
|
|
|
1072
1105
|
|
|
1073
1106
|
// src/molecules/expand-table/index.tsx
|
|
1074
1107
|
var import_react_table2 = require("@tanstack/react-table");
|
|
1075
|
-
var
|
|
1108
|
+
var import_react22 = require("react");
|
|
1076
1109
|
|
|
1077
1110
|
// src/icons/down.tsx
|
|
1078
1111
|
var React9 = __toESM(require("react"), 1);
|
|
1079
|
-
var
|
|
1112
|
+
var import_jsx_runtime23 = require("react/jsx-runtime");
|
|
1080
1113
|
var TriangleArrowDownIcon = React9.forwardRef(
|
|
1081
1114
|
(_a, forwardedRef) => {
|
|
1082
1115
|
var _b = _a, { color = "currentColor" } = _b, props = __objRest(_b, ["color"]);
|
|
1083
|
-
return /* @__PURE__ */ (0,
|
|
1116
|
+
return /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(
|
|
1084
1117
|
"svg",
|
|
1085
1118
|
__spreadProps(__spreadValues({
|
|
1086
1119
|
fill: "none",
|
|
@@ -1090,7 +1123,7 @@ var TriangleArrowDownIcon = React9.forwardRef(
|
|
|
1090
1123
|
xmlns: "http://www.w3.org/2000/svg"
|
|
1091
1124
|
}, props), {
|
|
1092
1125
|
ref: forwardedRef,
|
|
1093
|
-
children: /* @__PURE__ */ (0,
|
|
1126
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(
|
|
1094
1127
|
"path",
|
|
1095
1128
|
{
|
|
1096
1129
|
d: "M7.10844 0.8125H0.891554C0.197392 0.8125 -0.177096 1.62672 0.274659 2.15377L3.3831 5.78029C3.70737 6.1586 4.29263 6.1586 4.6169 5.78029L7.72534 2.15377C8.1771 1.62672 7.80261 0.8125 7.10844 0.8125Z",
|
|
@@ -1105,11 +1138,11 @@ TriangleArrowDownIcon.displayName = "ArrowDownIcon";
|
|
|
1105
1138
|
|
|
1106
1139
|
// src/icons/up.tsx
|
|
1107
1140
|
var React10 = __toESM(require("react"), 1);
|
|
1108
|
-
var
|
|
1141
|
+
var import_jsx_runtime24 = require("react/jsx-runtime");
|
|
1109
1142
|
var TriangleArrowUpIcon = React10.forwardRef(
|
|
1110
1143
|
(_a, forwardedRef) => {
|
|
1111
1144
|
var _b = _a, { color = "currentColor" } = _b, props = __objRest(_b, ["color"]);
|
|
1112
|
-
return /* @__PURE__ */ (0,
|
|
1145
|
+
return /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(
|
|
1113
1146
|
"svg",
|
|
1114
1147
|
__spreadProps(__spreadValues({
|
|
1115
1148
|
fill: "none",
|
|
@@ -1119,7 +1152,7 @@ var TriangleArrowUpIcon = React10.forwardRef(
|
|
|
1119
1152
|
xmlns: "http://www.w3.org/2000/svg"
|
|
1120
1153
|
}, props), {
|
|
1121
1154
|
ref: forwardedRef,
|
|
1122
|
-
children: /* @__PURE__ */ (0,
|
|
1155
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(
|
|
1123
1156
|
"path",
|
|
1124
1157
|
{
|
|
1125
1158
|
d: "M0.891555 6.1875L7.10845 6.1875C7.80261 6.1875 8.1771 5.37328 7.72534 4.84623L4.6169 1.21971C4.29263 0.841403 3.70737 0.841403 3.3831 1.21971L0.274659 4.84623C-0.177095 5.37328 0.197393 6.1875 0.891555 6.1875Z",
|
|
@@ -1134,17 +1167,17 @@ TriangleArrowUpIcon.displayName = "ArrowUpIcon";
|
|
|
1134
1167
|
|
|
1135
1168
|
// src/molecules/expand-table/row.tsx
|
|
1136
1169
|
var import_react_table = require("@tanstack/react-table");
|
|
1137
|
-
var
|
|
1138
|
-
var
|
|
1170
|
+
var import_react21 = require("react");
|
|
1171
|
+
var import_jsx_runtime25 = require("react/jsx-runtime");
|
|
1139
1172
|
function Row(props) {
|
|
1140
1173
|
const { row, ExpandComp, gridTemplateColumns, getRowStyle, getCellStyle } = props;
|
|
1141
|
-
const [open, setOpen] = (0,
|
|
1142
|
-
const onClickRow = (0,
|
|
1174
|
+
const [open, setOpen] = (0, import_react21.useState)(false);
|
|
1175
|
+
const onClickRow = (0, import_react21.useCallback)(() => {
|
|
1143
1176
|
var _a;
|
|
1144
1177
|
(_a = props.onRowClick) == null ? void 0 : _a.call(props, row.original);
|
|
1145
1178
|
setOpen((prev) => !prev);
|
|
1146
1179
|
}, [props, row.original]);
|
|
1147
|
-
const rowClassName = (0,
|
|
1180
|
+
const rowClassName = (0, import_react21.useMemo)(() => {
|
|
1148
1181
|
const baseCls = ["tr-wrapper"];
|
|
1149
1182
|
if (ExpandComp) {
|
|
1150
1183
|
baseCls.push("expandable");
|
|
@@ -1154,8 +1187,8 @@ function Row(props) {
|
|
|
1154
1187
|
}
|
|
1155
1188
|
return baseCls.join(" ");
|
|
1156
1189
|
}, [ExpandComp, props.onRowClick]);
|
|
1157
|
-
return /* @__PURE__ */ (0,
|
|
1158
|
-
/* @__PURE__ */ (0,
|
|
1190
|
+
return /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)("div", { className: rowClassName, children: [
|
|
1191
|
+
/* @__PURE__ */ (0, import_jsx_runtime25.jsx)(
|
|
1159
1192
|
"button",
|
|
1160
1193
|
{
|
|
1161
1194
|
className: "tr",
|
|
@@ -1168,7 +1201,7 @@ function Row(props) {
|
|
|
1168
1201
|
var _a, _b, _c;
|
|
1169
1202
|
const autoSize = (_a = cell.column.columnDef.meta) == null ? void 0 : _a.autoSize;
|
|
1170
1203
|
const justifyContent = ((_b = cell.column.columnDef.meta) == null ? void 0 : _b.align) || props.defaultAlign;
|
|
1171
|
-
return /* @__PURE__ */ (0,
|
|
1204
|
+
return /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(
|
|
1172
1205
|
"div",
|
|
1173
1206
|
{
|
|
1174
1207
|
className: "td",
|
|
@@ -1179,7 +1212,7 @@ function Row(props) {
|
|
|
1179
1212
|
}, (getCellStyle == null ? void 0 : getCellStyle(row.original)) || {}),
|
|
1180
1213
|
children: [
|
|
1181
1214
|
(0, import_react_table.flexRender)(cell.column.columnDef.cell, cell.getContext()),
|
|
1182
|
-
((_c = cell.column.columnDef.meta) == null ? void 0 : _c.OpenBtn) ? /* @__PURE__ */ (0,
|
|
1215
|
+
((_c = cell.column.columnDef.meta) == null ? void 0 : _c.OpenBtn) ? /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(
|
|
1183
1216
|
cell.column.columnDef.meta.OpenBtn,
|
|
1184
1217
|
{
|
|
1185
1218
|
data: row.original,
|
|
@@ -1195,12 +1228,12 @@ function Row(props) {
|
|
|
1195
1228
|
},
|
|
1196
1229
|
`tr_${row.id}`
|
|
1197
1230
|
),
|
|
1198
|
-
ExpandComp ? /* @__PURE__ */ (0,
|
|
1231
|
+
ExpandComp ? /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(Collapse, { open, children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)("div", { className: "expand-comp-wrapper", children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(ExpandComp, { row }) }) }) : null
|
|
1199
1232
|
] }, `tr-wrapper_${row.id}`);
|
|
1200
1233
|
}
|
|
1201
1234
|
|
|
1202
1235
|
// src/molecules/expand-table/index.tsx
|
|
1203
|
-
var
|
|
1236
|
+
var import_jsx_runtime26 = require("react/jsx-runtime");
|
|
1204
1237
|
function ExpandTable(props) {
|
|
1205
1238
|
const {
|
|
1206
1239
|
data,
|
|
@@ -1218,11 +1251,11 @@ function ExpandTable(props) {
|
|
|
1218
1251
|
getCellStyle
|
|
1219
1252
|
} = props;
|
|
1220
1253
|
const defaultAlign = "left";
|
|
1221
|
-
const [pagination, setPagination] = (0,
|
|
1254
|
+
const [pagination, setPagination] = (0, import_react22.useState)({
|
|
1222
1255
|
pageIndex: pageIndex || 0,
|
|
1223
1256
|
pageSize: pageSize || 9999
|
|
1224
1257
|
});
|
|
1225
|
-
const [sorting, setSorting] = (0,
|
|
1258
|
+
const [sorting, setSorting] = (0, import_react22.useState)([]);
|
|
1226
1259
|
const { getRowModel, getHeaderGroups, setPageIndex } = (0, import_react_table2.useReactTable)({
|
|
1227
1260
|
data: data || [],
|
|
1228
1261
|
columns,
|
|
@@ -1236,7 +1269,7 @@ function ExpandTable(props) {
|
|
|
1236
1269
|
getPaginationRowModel: (0, import_react_table2.getPaginationRowModel)(),
|
|
1237
1270
|
onPaginationChange: setPagination
|
|
1238
1271
|
});
|
|
1239
|
-
const gridTemplateColumns = (0,
|
|
1272
|
+
const gridTemplateColumns = (0, import_react22.useMemo)(() => {
|
|
1240
1273
|
return columns.map((col) => {
|
|
1241
1274
|
var _a;
|
|
1242
1275
|
if ((_a = col.meta) == null ? void 0 : _a.autoSize)
|
|
@@ -1245,16 +1278,16 @@ function ExpandTable(props) {
|
|
|
1245
1278
|
}).join(" ");
|
|
1246
1279
|
}, [columns]);
|
|
1247
1280
|
const rowModels = getRowModel();
|
|
1248
|
-
const onChangePagination = (0,
|
|
1281
|
+
const onChangePagination = (0, import_react22.useCallback)(
|
|
1249
1282
|
(page) => {
|
|
1250
1283
|
setPageIndex(page - 1);
|
|
1251
1284
|
},
|
|
1252
1285
|
[setPageIndex]
|
|
1253
1286
|
);
|
|
1254
|
-
const helpCompRender = (0,
|
|
1287
|
+
const helpCompRender = (0, import_react22.useCallback)(
|
|
1255
1288
|
(rowLength) => {
|
|
1256
1289
|
if (isLoading) {
|
|
1257
|
-
return /* @__PURE__ */ (0,
|
|
1290
|
+
return /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(
|
|
1258
1291
|
import_themes19.Flex,
|
|
1259
1292
|
{
|
|
1260
1293
|
align: "center",
|
|
@@ -1262,24 +1295,24 @@ function ExpandTable(props) {
|
|
|
1262
1295
|
justify: "center",
|
|
1263
1296
|
p: "5",
|
|
1264
1297
|
width: "100%",
|
|
1265
|
-
children: /* @__PURE__ */ (0,
|
|
1298
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(import_themes49.Spinner, {})
|
|
1266
1299
|
}
|
|
1267
1300
|
);
|
|
1268
1301
|
}
|
|
1269
1302
|
if (rowLength === 0) {
|
|
1270
|
-
return /* @__PURE__ */ (0,
|
|
1303
|
+
return /* @__PURE__ */ (0, import_jsx_runtime26.jsx)("div", { className: "tr", children: /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(import_themes19.Flex, { align: "center", justify: "center", children: placeholder || /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(Typo, { color: "gray", mb: "6", mt: "6", variant: "body", children: "\uB370\uC774\uD130\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4" }) }) }, "expand_placeholder");
|
|
1271
1304
|
}
|
|
1272
1305
|
return null;
|
|
1273
1306
|
},
|
|
1274
1307
|
[isLoading, placeholder]
|
|
1275
1308
|
);
|
|
1276
|
-
const pageCount = (0,
|
|
1309
|
+
const pageCount = (0, import_react22.useMemo)(() => {
|
|
1277
1310
|
if (!data)
|
|
1278
1311
|
return 0;
|
|
1279
1312
|
return Math.ceil(data.length / pageSize);
|
|
1280
1313
|
}, [data, pageSize]);
|
|
1281
|
-
return /* @__PURE__ */ (0,
|
|
1282
|
-
/* @__PURE__ */ (0,
|
|
1314
|
+
return /* @__PURE__ */ (0, import_jsx_runtime26.jsxs)("div", { className: "expand-table", style: tableStyle, children: [
|
|
1315
|
+
/* @__PURE__ */ (0, import_jsx_runtime26.jsx)("div", { className: "thead", children: getHeaderGroups().map((headerGroup) => /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(
|
|
1283
1316
|
"div",
|
|
1284
1317
|
{
|
|
1285
1318
|
className: "tr",
|
|
@@ -1289,30 +1322,30 @@ function ExpandTable(props) {
|
|
|
1289
1322
|
const sortable = header.column.getCanSort();
|
|
1290
1323
|
const sortedState = header.column.getIsSorted();
|
|
1291
1324
|
const justifyContent = ((_a = header.column.columnDef.meta) == null ? void 0 : _a.align) || defaultAlign;
|
|
1292
|
-
return /* @__PURE__ */ (0,
|
|
1325
|
+
return /* @__PURE__ */ (0, import_jsx_runtime26.jsx)("div", { className: `${justifyContent} th`, children: /* @__PURE__ */ (0, import_jsx_runtime26.jsxs)(
|
|
1293
1326
|
"button",
|
|
1294
1327
|
{
|
|
1295
1328
|
onClick: header.column.getToggleSortingHandler(),
|
|
1296
1329
|
style: sortable ? { cursor: "pointer" } : { cursor: "default" },
|
|
1297
1330
|
type: "button",
|
|
1298
1331
|
children: [
|
|
1299
|
-
/* @__PURE__ */ (0,
|
|
1332
|
+
/* @__PURE__ */ (0, import_jsx_runtime26.jsx)(Typo, { as: "div", variant: "body", children: (0, import_react_table2.flexRender)(
|
|
1300
1333
|
header.column.columnDef.header,
|
|
1301
1334
|
header.getContext()
|
|
1302
1335
|
) }),
|
|
1303
|
-
sortable ? /* @__PURE__ */ (0,
|
|
1336
|
+
sortable ? /* @__PURE__ */ (0, import_jsx_runtime26.jsxs)(
|
|
1304
1337
|
import_themes19.Flex,
|
|
1305
1338
|
{
|
|
1306
1339
|
direction: "column",
|
|
1307
1340
|
style: { marginLeft: "var(--space-2)" },
|
|
1308
1341
|
children: [
|
|
1309
|
-
/* @__PURE__ */ (0,
|
|
1342
|
+
/* @__PURE__ */ (0, import_jsx_runtime26.jsx)(
|
|
1310
1343
|
TriangleArrowUpIcon,
|
|
1311
1344
|
{
|
|
1312
1345
|
color: sortedState === "asc" ? "var(--iris-10)" : "var(--iris-6)"
|
|
1313
1346
|
}
|
|
1314
1347
|
),
|
|
1315
|
-
/* @__PURE__ */ (0,
|
|
1348
|
+
/* @__PURE__ */ (0, import_jsx_runtime26.jsx)(
|
|
1316
1349
|
TriangleArrowDownIcon,
|
|
1317
1350
|
{
|
|
1318
1351
|
color: sortedState === "desc" ? "var(--iris-10)" : "var(--iris-6)"
|
|
@@ -1328,8 +1361,8 @@ function ExpandTable(props) {
|
|
|
1328
1361
|
},
|
|
1329
1362
|
headerGroup.id
|
|
1330
1363
|
)) }),
|
|
1331
|
-
/* @__PURE__ */ (0,
|
|
1332
|
-
return /* @__PURE__ */ (0,
|
|
1364
|
+
/* @__PURE__ */ (0, import_jsx_runtime26.jsx)("div", { className: "tbody", children: helpCompRender(rowModels.rows.length) || rowModels.rows.map((row) => {
|
|
1365
|
+
return /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(
|
|
1333
1366
|
Row,
|
|
1334
1367
|
{
|
|
1335
1368
|
ExpandComp,
|
|
@@ -1343,7 +1376,7 @@ function ExpandTable(props) {
|
|
|
1343
1376
|
`row_${row.id}`
|
|
1344
1377
|
);
|
|
1345
1378
|
}) }),
|
|
1346
|
-
showPagination ? /* @__PURE__ */ (0,
|
|
1379
|
+
showPagination ? /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(import_themes19.Flex, { justify: "end", pt: "3", width: "100%", children: /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(
|
|
1347
1380
|
Pagination,
|
|
1348
1381
|
{
|
|
1349
1382
|
count: pageCount,
|
|
@@ -1356,14 +1389,14 @@ function ExpandTable(props) {
|
|
|
1356
1389
|
}
|
|
1357
1390
|
|
|
1358
1391
|
// src/molecules/navigation.tsx
|
|
1359
|
-
var
|
|
1392
|
+
var import_jsx_runtime27 = require("react/jsx-runtime");
|
|
1360
1393
|
function Navigation({
|
|
1361
1394
|
items,
|
|
1362
1395
|
fontColor,
|
|
1363
1396
|
backgroundColor,
|
|
1364
1397
|
activeKey
|
|
1365
1398
|
}) {
|
|
1366
|
-
return /* @__PURE__ */ (0,
|
|
1399
|
+
return /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(
|
|
1367
1400
|
import_themes19.Flex,
|
|
1368
1401
|
{
|
|
1369
1402
|
direction: "column",
|
|
@@ -1375,13 +1408,13 @@ function Navigation({
|
|
|
1375
1408
|
},
|
|
1376
1409
|
children: items == null ? void 0 : items.map((item) => {
|
|
1377
1410
|
const { key, title, icon, itemRender, onClick, children } = item;
|
|
1378
|
-
return /* @__PURE__ */ (0,
|
|
1379
|
-
itemRender ? itemRender(item) : /* @__PURE__ */ (0,
|
|
1411
|
+
return /* @__PURE__ */ (0, import_jsx_runtime27.jsxs)(import_themes19.Flex, { direction: "column", onClick, children: [
|
|
1412
|
+
itemRender ? itemRender(item) : /* @__PURE__ */ (0, import_jsx_runtime27.jsxs)(import_themes19.Flex, { align: "center", gap: "3", height: "36px", pl: "4", pr: "4", children: [
|
|
1380
1413
|
icon,
|
|
1381
|
-
/* @__PURE__ */ (0,
|
|
1414
|
+
/* @__PURE__ */ (0, import_jsx_runtime27.jsx)(Typo, { variant: "subtitle", children: title })
|
|
1382
1415
|
] }),
|
|
1383
1416
|
children == null ? void 0 : children.map((menu) => {
|
|
1384
|
-
return menu.itemRender ? menu.itemRender(menu) : /* @__PURE__ */ (0,
|
|
1417
|
+
return menu.itemRender ? menu.itemRender(menu) : /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(
|
|
1385
1418
|
Button,
|
|
1386
1419
|
{
|
|
1387
1420
|
className: `tipp-navigation-button ${activeKey === menu.key ? "active" : ""}`,
|
|
@@ -1405,18 +1438,18 @@ function Navigation({
|
|
|
1405
1438
|
}
|
|
1406
1439
|
|
|
1407
1440
|
// src/molecules/date-picker/index.tsx
|
|
1408
|
-
var
|
|
1441
|
+
var import_react23 = require("react");
|
|
1409
1442
|
var RDP = __toESM(require("react-datepicker"), 1);
|
|
1410
1443
|
var import_react_datepicker = require("react-datepicker");
|
|
1411
1444
|
var import_locale = require("date-fns/locale");
|
|
1412
|
-
var
|
|
1445
|
+
var import_jsx_runtime28 = require("react/jsx-runtime");
|
|
1413
1446
|
(0, import_react_datepicker.registerLocale)("ko", import_locale.ko);
|
|
1414
1447
|
(0, import_react_datepicker.setDefaultLocale)("ko");
|
|
1415
1448
|
var ReactDatePicker = RDP.default.default || RDP.default || RDP;
|
|
1416
|
-
var DatePicker = (0,
|
|
1449
|
+
var DatePicker = (0, import_react23.forwardRef)(
|
|
1417
1450
|
(props, ref) => {
|
|
1418
1451
|
const _a = props, { size = "medium" } = _a, rest = __objRest(_a, ["size"]);
|
|
1419
|
-
return /* @__PURE__ */ (0,
|
|
1452
|
+
return /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
|
|
1420
1453
|
ReactDatePicker,
|
|
1421
1454
|
__spreadProps(__spreadValues({
|
|
1422
1455
|
dateFormat: "YYYY/MM/dd",
|
|
@@ -1446,51 +1479,51 @@ var renderCustomHeader = (props) => {
|
|
|
1446
1479
|
} = props;
|
|
1447
1480
|
const year = date.getFullYear();
|
|
1448
1481
|
const month = date.getMonth();
|
|
1449
|
-
return /* @__PURE__ */ (0,
|
|
1450
|
-
/* @__PURE__ */ (0,
|
|
1482
|
+
return /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)(import_themes19.Flex, { align: "center", justify: "between", pb: "2", pl: "2", pr: "2", children: [
|
|
1483
|
+
/* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
|
|
1451
1484
|
import_themes24.IconButton,
|
|
1452
1485
|
{
|
|
1453
1486
|
disabled: prevMonthButtonDisabled,
|
|
1454
1487
|
onClick: decreaseMonth,
|
|
1455
1488
|
variant: "ghost",
|
|
1456
|
-
children: /* @__PURE__ */ (0,
|
|
1489
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(import_react_icons2.ChevronLeftIcon, {})
|
|
1457
1490
|
}
|
|
1458
1491
|
),
|
|
1459
|
-
/* @__PURE__ */ (0,
|
|
1460
|
-
/* @__PURE__ */ (0,
|
|
1492
|
+
/* @__PURE__ */ (0, import_jsx_runtime28.jsxs)(import_themes19.Flex, { gap: "3", children: [
|
|
1493
|
+
/* @__PURE__ */ (0, import_jsx_runtime28.jsxs)(Heading2, { variant: "heading4", weight: "regular", children: [
|
|
1461
1494
|
year,
|
|
1462
1495
|
"\uB144"
|
|
1463
1496
|
] }),
|
|
1464
|
-
/* @__PURE__ */ (0,
|
|
1497
|
+
/* @__PURE__ */ (0, import_jsx_runtime28.jsxs)(Heading2, { variant: "heading4", weight: "regular", children: [
|
|
1465
1498
|
month + 1,
|
|
1466
1499
|
"\uC6D4"
|
|
1467
1500
|
] })
|
|
1468
1501
|
] }),
|
|
1469
|
-
/* @__PURE__ */ (0,
|
|
1502
|
+
/* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
|
|
1470
1503
|
import_themes24.IconButton,
|
|
1471
1504
|
{
|
|
1472
1505
|
disabled: nextMonthButtonDisabled,
|
|
1473
1506
|
onClick: increaseMonth,
|
|
1474
1507
|
variant: "ghost",
|
|
1475
|
-
children: /* @__PURE__ */ (0,
|
|
1508
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(import_react_icons2.ChevronRightIcon, {})
|
|
1476
1509
|
}
|
|
1477
1510
|
)
|
|
1478
1511
|
] });
|
|
1479
1512
|
};
|
|
1480
1513
|
|
|
1481
1514
|
// src/molecules/dot-navigation.tsx
|
|
1482
|
-
var
|
|
1515
|
+
var import_react24 = require("react");
|
|
1483
1516
|
var import_react_icons5 = require("@radix-ui/react-icons");
|
|
1484
|
-
var
|
|
1517
|
+
var import_jsx_runtime29 = require("react/jsx-runtime");
|
|
1485
1518
|
function DotNavigation(props) {
|
|
1486
1519
|
const { dotCount, onClick, dotIndex, defaultDotIndex, onChangeDotIndex } = props;
|
|
1487
|
-
const [currentDot, setCurrentDot] = (0,
|
|
1520
|
+
const [currentDot, setCurrentDot] = (0, import_react24.useState)(
|
|
1488
1521
|
() => {
|
|
1489
1522
|
var _a;
|
|
1490
1523
|
return (_a = defaultDotIndex != null ? defaultDotIndex : dotIndex) != null ? _a : 0;
|
|
1491
1524
|
}
|
|
1492
1525
|
);
|
|
1493
|
-
const onClickDot = (0,
|
|
1526
|
+
const onClickDot = (0, import_react24.useCallback)(
|
|
1494
1527
|
(i) => {
|
|
1495
1528
|
if (onClick) {
|
|
1496
1529
|
onClick(i);
|
|
@@ -1500,17 +1533,17 @@ function DotNavigation(props) {
|
|
|
1500
1533
|
},
|
|
1501
1534
|
[onClick]
|
|
1502
1535
|
);
|
|
1503
|
-
(0,
|
|
1536
|
+
(0, import_react24.useEffect)(() => {
|
|
1504
1537
|
onChangeDotIndex == null ? void 0 : onChangeDotIndex(currentDot);
|
|
1505
1538
|
}, [currentDot, onChangeDotIndex]);
|
|
1506
|
-
(0,
|
|
1539
|
+
(0, import_react24.useEffect)(() => {
|
|
1507
1540
|
if (typeof dotIndex === "undefined")
|
|
1508
1541
|
return;
|
|
1509
1542
|
setCurrentDot(dotIndex);
|
|
1510
1543
|
}, [dotIndex]);
|
|
1511
|
-
return /* @__PURE__ */ (0,
|
|
1544
|
+
return /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(import_themes19.Flex, { children: dotCount ? Array.from({ length: dotCount }, (_, i) => i).map((_, index) => {
|
|
1512
1545
|
const isSelected = currentDot === index;
|
|
1513
|
-
return /* @__PURE__ */ (0,
|
|
1546
|
+
return /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(
|
|
1514
1547
|
import_react_icons5.DotFilledIcon,
|
|
1515
1548
|
{
|
|
1516
1549
|
height: "24px",
|
|
@@ -1529,15 +1562,15 @@ function DotNavigation(props) {
|
|
|
1529
1562
|
}
|
|
1530
1563
|
|
|
1531
1564
|
// src/molecules/stepper.tsx
|
|
1532
|
-
var
|
|
1565
|
+
var import_react25 = require("react");
|
|
1533
1566
|
var import_themes50 = require("@radix-ui/themes");
|
|
1534
|
-
var
|
|
1535
|
-
var StepContext = (0,
|
|
1567
|
+
var import_jsx_runtime30 = require("react/jsx-runtime");
|
|
1568
|
+
var StepContext = (0, import_react25.createContext)({
|
|
1536
1569
|
active: false,
|
|
1537
1570
|
completed: false,
|
|
1538
1571
|
index: 0
|
|
1539
1572
|
});
|
|
1540
|
-
function
|
|
1573
|
+
function Root8(props) {
|
|
1541
1574
|
const {
|
|
1542
1575
|
activeStep = 0,
|
|
1543
1576
|
children,
|
|
@@ -1546,7 +1579,7 @@ function Root7(props) {
|
|
|
1546
1579
|
maxWidth,
|
|
1547
1580
|
direction = "vertical"
|
|
1548
1581
|
} = props;
|
|
1549
|
-
return /* @__PURE__ */ (0,
|
|
1582
|
+
return /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(
|
|
1550
1583
|
import_themes19.Flex,
|
|
1551
1584
|
{
|
|
1552
1585
|
gap: "3",
|
|
@@ -1555,8 +1588,8 @@ function Root7(props) {
|
|
|
1555
1588
|
minWidth,
|
|
1556
1589
|
maxWidth
|
|
1557
1590
|
},
|
|
1558
|
-
children:
|
|
1559
|
-
return /* @__PURE__ */ (0,
|
|
1591
|
+
children: import_react25.Children.map(children, (child, index) => {
|
|
1592
|
+
return /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(
|
|
1560
1593
|
StepContext.Provider,
|
|
1561
1594
|
{
|
|
1562
1595
|
value: {
|
|
@@ -1579,8 +1612,8 @@ function Step(props) {
|
|
|
1579
1612
|
completed,
|
|
1580
1613
|
index,
|
|
1581
1614
|
direction = "vertical"
|
|
1582
|
-
} = (0,
|
|
1583
|
-
const connector = index > 0 ? /* @__PURE__ */ (0,
|
|
1615
|
+
} = (0, import_react25.useContext)(StepContext);
|
|
1616
|
+
const connector = index > 0 ? /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(
|
|
1584
1617
|
import_themes50.Separator,
|
|
1585
1618
|
{
|
|
1586
1619
|
style: {
|
|
@@ -1591,7 +1624,7 @@ function Step(props) {
|
|
|
1591
1624
|
}
|
|
1592
1625
|
}
|
|
1593
1626
|
) : null;
|
|
1594
|
-
const InnerStep = (0,
|
|
1627
|
+
const InnerStep = (0, import_react25.useMemo)(() => {
|
|
1595
1628
|
if (active) {
|
|
1596
1629
|
return ActiveStep;
|
|
1597
1630
|
}
|
|
@@ -1600,7 +1633,7 @@ function Step(props) {
|
|
|
1600
1633
|
}
|
|
1601
1634
|
return IncompleteStep;
|
|
1602
1635
|
}, [completed, active]);
|
|
1603
|
-
return /* @__PURE__ */ (0,
|
|
1636
|
+
return /* @__PURE__ */ (0, import_jsx_runtime30.jsxs)(
|
|
1604
1637
|
import_themes19.Flex,
|
|
1605
1638
|
{
|
|
1606
1639
|
align: "center",
|
|
@@ -1610,22 +1643,22 @@ function Step(props) {
|
|
|
1610
1643
|
style: { flex: 1 },
|
|
1611
1644
|
children: [
|
|
1612
1645
|
connector,
|
|
1613
|
-
/* @__PURE__ */ (0,
|
|
1646
|
+
/* @__PURE__ */ (0, import_jsx_runtime30.jsx)(InnerStep, { Icon, children })
|
|
1614
1647
|
]
|
|
1615
1648
|
}
|
|
1616
1649
|
);
|
|
1617
1650
|
}
|
|
1618
1651
|
function CompleteStep(props) {
|
|
1619
1652
|
const { Icon, children } = props;
|
|
1620
|
-
const { completed, active } = (0,
|
|
1653
|
+
const { completed, active } = (0, import_react25.useContext)(StepContext);
|
|
1621
1654
|
const background = "var(--accent-a4)";
|
|
1622
1655
|
const border = "1px solid var(--accent-7)";
|
|
1623
1656
|
const color = "var(--accent-contrast)";
|
|
1624
|
-
return /* @__PURE__ */ (0,
|
|
1625
|
-
Icon ? /* @__PURE__ */ (0,
|
|
1657
|
+
return /* @__PURE__ */ (0, import_jsx_runtime30.jsxs)(import_jsx_runtime30.Fragment, { children: [
|
|
1658
|
+
Icon ? /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(Icon, { active, completed }) : /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(
|
|
1626
1659
|
Avatar,
|
|
1627
1660
|
{
|
|
1628
|
-
fallback: /* @__PURE__ */ (0,
|
|
1661
|
+
fallback: /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(import_react_icons2.CheckIcon, { fill: color, height: 16, width: 16 }),
|
|
1629
1662
|
radius: "full",
|
|
1630
1663
|
size: "medium",
|
|
1631
1664
|
style: {
|
|
@@ -1634,19 +1667,19 @@ function CompleteStep(props) {
|
|
|
1634
1667
|
}
|
|
1635
1668
|
}
|
|
1636
1669
|
),
|
|
1637
|
-
/* @__PURE__ */ (0,
|
|
1670
|
+
/* @__PURE__ */ (0, import_jsx_runtime30.jsx)(Typo, { align: "center", variant: "caption", children })
|
|
1638
1671
|
] });
|
|
1639
1672
|
}
|
|
1640
1673
|
function IncompleteStep(props) {
|
|
1641
1674
|
const { Icon, children } = props;
|
|
1642
|
-
const { completed, active, index } = (0,
|
|
1675
|
+
const { completed, active, index } = (0, import_react25.useContext)(StepContext);
|
|
1643
1676
|
const background = "var(--gray-5)";
|
|
1644
1677
|
const color = "var(--gray-a11)";
|
|
1645
|
-
return /* @__PURE__ */ (0,
|
|
1646
|
-
Icon ? /* @__PURE__ */ (0,
|
|
1678
|
+
return /* @__PURE__ */ (0, import_jsx_runtime30.jsxs)(import_jsx_runtime30.Fragment, { children: [
|
|
1679
|
+
Icon ? /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(Icon, { active, completed }) : /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(
|
|
1647
1680
|
Avatar,
|
|
1648
1681
|
{
|
|
1649
|
-
fallback: /* @__PURE__ */ (0,
|
|
1682
|
+
fallback: /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(Typo, { style: { color }, children: index + 1 }),
|
|
1650
1683
|
radius: "full",
|
|
1651
1684
|
size: "medium",
|
|
1652
1685
|
style: {
|
|
@@ -1654,36 +1687,36 @@ function IncompleteStep(props) {
|
|
|
1654
1687
|
}
|
|
1655
1688
|
}
|
|
1656
1689
|
),
|
|
1657
|
-
/* @__PURE__ */ (0,
|
|
1690
|
+
/* @__PURE__ */ (0, import_jsx_runtime30.jsx)(Typo, { align: "center", style: { color }, variant: "caption", children })
|
|
1658
1691
|
] });
|
|
1659
1692
|
}
|
|
1660
1693
|
function ActiveStep(props) {
|
|
1661
1694
|
const { Icon, children } = props;
|
|
1662
|
-
const { completed, active, index } = (0,
|
|
1695
|
+
const { completed, active, index } = (0, import_react25.useContext)(StepContext);
|
|
1663
1696
|
const background = "var(--accent-10)";
|
|
1664
1697
|
const color = "var(--accent-contrast)";
|
|
1665
|
-
return /* @__PURE__ */ (0,
|
|
1666
|
-
Icon ? /* @__PURE__ */ (0,
|
|
1698
|
+
return /* @__PURE__ */ (0, import_jsx_runtime30.jsxs)(import_jsx_runtime30.Fragment, { children: [
|
|
1699
|
+
Icon ? /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(Icon, { active, completed }) : /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(
|
|
1667
1700
|
Avatar,
|
|
1668
1701
|
{
|
|
1669
|
-
fallback: /* @__PURE__ */ (0,
|
|
1702
|
+
fallback: /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(Typo, { style: { color }, weight: "bold", children: index + 1 }),
|
|
1670
1703
|
radius: "full",
|
|
1671
1704
|
size: "medium",
|
|
1672
1705
|
style: { background }
|
|
1673
1706
|
}
|
|
1674
1707
|
),
|
|
1675
|
-
/* @__PURE__ */ (0,
|
|
1708
|
+
/* @__PURE__ */ (0, import_jsx_runtime30.jsx)(Typo, { align: "center", variant: "caption", weight: "bold", children })
|
|
1676
1709
|
] });
|
|
1677
1710
|
}
|
|
1678
1711
|
var Stepper = {
|
|
1679
|
-
Root:
|
|
1712
|
+
Root: Root8,
|
|
1680
1713
|
Step
|
|
1681
1714
|
};
|
|
1682
1715
|
|
|
1683
1716
|
// src/molecules/tag-selector.tsx
|
|
1684
|
-
var
|
|
1717
|
+
var import_react26 = require("react");
|
|
1685
1718
|
var import_react_icons6 = require("@radix-ui/react-icons");
|
|
1686
|
-
var
|
|
1719
|
+
var import_jsx_runtime31 = require("react/jsx-runtime");
|
|
1687
1720
|
var OPTION_HEIGHT = 32;
|
|
1688
1721
|
var DefaultDropdownContainer = (props) => {
|
|
1689
1722
|
return props.children;
|
|
@@ -1698,20 +1731,20 @@ function TagSelector(props) {
|
|
|
1698
1731
|
onChange,
|
|
1699
1732
|
size = "medium"
|
|
1700
1733
|
} = props;
|
|
1701
|
-
const [selected, setSelected] = (0,
|
|
1702
|
-
const [value, setValue] = (0,
|
|
1703
|
-
const [focusIndex, setFocusIndex] = (0,
|
|
1704
|
-
const [open, setOpen] = (0,
|
|
1705
|
-
const [focus, setFocus] = (0,
|
|
1706
|
-
const fieldRef = (0,
|
|
1707
|
-
const scrollRef = (0,
|
|
1708
|
-
const closeRef = (0,
|
|
1709
|
-
const onFocus = (0,
|
|
1734
|
+
const [selected, setSelected] = (0, import_react26.useState)(props.selected || []);
|
|
1735
|
+
const [value, setValue] = (0, import_react26.useState)("");
|
|
1736
|
+
const [focusIndex, setFocusIndex] = (0, import_react26.useState)(null);
|
|
1737
|
+
const [open, setOpen] = (0, import_react26.useState)(false);
|
|
1738
|
+
const [focus, setFocus] = (0, import_react26.useState)(false);
|
|
1739
|
+
const fieldRef = (0, import_react26.useRef)(null);
|
|
1740
|
+
const scrollRef = (0, import_react26.useRef)(null);
|
|
1741
|
+
const closeRef = (0, import_react26.useRef)();
|
|
1742
|
+
const onFocus = (0, import_react26.useCallback)(() => {
|
|
1710
1743
|
clearTimeout(closeRef.current);
|
|
1711
1744
|
setFocus(true);
|
|
1712
1745
|
setOpen(true);
|
|
1713
1746
|
}, []);
|
|
1714
|
-
const onBlur = (0,
|
|
1747
|
+
const onBlur = (0, import_react26.useCallback)(() => {
|
|
1715
1748
|
closeRef.current = setTimeout(() => {
|
|
1716
1749
|
setFocus(false);
|
|
1717
1750
|
setOpen(false);
|
|
@@ -1720,18 +1753,18 @@ function TagSelector(props) {
|
|
|
1720
1753
|
}, 100);
|
|
1721
1754
|
}, 300);
|
|
1722
1755
|
}, []);
|
|
1723
|
-
const onChangeValue = (0,
|
|
1756
|
+
const onChangeValue = (0, import_react26.useCallback)(
|
|
1724
1757
|
(e) => {
|
|
1725
1758
|
setValue(e.target.value);
|
|
1726
1759
|
},
|
|
1727
1760
|
[]
|
|
1728
1761
|
);
|
|
1729
|
-
const filteredOptions = (0,
|
|
1762
|
+
const filteredOptions = (0, import_react26.useMemo)(() => {
|
|
1730
1763
|
return options.filter((option) => {
|
|
1731
1764
|
return option.name.includes(value);
|
|
1732
1765
|
});
|
|
1733
1766
|
}, [options, value]);
|
|
1734
|
-
const selectedItem = (0,
|
|
1767
|
+
const selectedItem = (0, import_react26.useMemo)(() => {
|
|
1735
1768
|
const result = [];
|
|
1736
1769
|
selected.forEach((id) => {
|
|
1737
1770
|
const maybeItem = options.find((option) => option.id === id);
|
|
@@ -1740,10 +1773,10 @@ function TagSelector(props) {
|
|
|
1740
1773
|
});
|
|
1741
1774
|
return result;
|
|
1742
1775
|
}, [options, selected]);
|
|
1743
|
-
const onDelete = (0,
|
|
1776
|
+
const onDelete = (0, import_react26.useCallback)((id) => {
|
|
1744
1777
|
setSelected((prev) => prev.filter((el) => el !== id));
|
|
1745
1778
|
}, []);
|
|
1746
|
-
const onSelect = (0,
|
|
1779
|
+
const onSelect = (0, import_react26.useCallback)(
|
|
1747
1780
|
(id) => {
|
|
1748
1781
|
if (maxCount && selected.length + 1 > maxCount)
|
|
1749
1782
|
return;
|
|
@@ -1751,7 +1784,7 @@ function TagSelector(props) {
|
|
|
1751
1784
|
},
|
|
1752
1785
|
[maxCount, selected]
|
|
1753
1786
|
);
|
|
1754
|
-
const toggleItem = (0,
|
|
1787
|
+
const toggleItem = (0, import_react26.useCallback)(
|
|
1755
1788
|
(id) => {
|
|
1756
1789
|
if (selected.includes(id)) {
|
|
1757
1790
|
onDelete(id);
|
|
@@ -1761,7 +1794,7 @@ function TagSelector(props) {
|
|
|
1761
1794
|
},
|
|
1762
1795
|
[onDelete, onSelect, selected]
|
|
1763
1796
|
);
|
|
1764
|
-
const setScroll = (0,
|
|
1797
|
+
const setScroll = (0, import_react26.useCallback)((index) => {
|
|
1765
1798
|
if (scrollRef.current) {
|
|
1766
1799
|
const scrollTop = scrollRef.current.scrollTop;
|
|
1767
1800
|
const clientHeight = scrollRef.current.clientHeight;
|
|
@@ -1773,7 +1806,7 @@ function TagSelector(props) {
|
|
|
1773
1806
|
}
|
|
1774
1807
|
}
|
|
1775
1808
|
}, []);
|
|
1776
|
-
const handleKeyDown = (0,
|
|
1809
|
+
const handleKeyDown = (0, import_react26.useCallback)(
|
|
1777
1810
|
(e) => {
|
|
1778
1811
|
var _a;
|
|
1779
1812
|
const key = e.key;
|
|
@@ -1823,7 +1856,7 @@ function TagSelector(props) {
|
|
|
1823
1856
|
filteredOptions
|
|
1824
1857
|
]
|
|
1825
1858
|
);
|
|
1826
|
-
const placeholderVisible = (0,
|
|
1859
|
+
const placeholderVisible = (0, import_react26.useMemo)(() => {
|
|
1827
1860
|
if (selectedItem.length)
|
|
1828
1861
|
return false;
|
|
1829
1862
|
if (value)
|
|
@@ -1832,19 +1865,19 @@ function TagSelector(props) {
|
|
|
1832
1865
|
return false;
|
|
1833
1866
|
return true;
|
|
1834
1867
|
}, [focus, selectedItem.length, value]);
|
|
1835
|
-
(0,
|
|
1868
|
+
(0, import_react26.useEffect)(() => {
|
|
1836
1869
|
onChange == null ? void 0 : onChange(selected);
|
|
1837
1870
|
}, [[...selected].sort().join(",")]);
|
|
1838
|
-
(0,
|
|
1871
|
+
(0, import_react26.useEffect)(() => {
|
|
1839
1872
|
setSelected(props.selected || []);
|
|
1840
1873
|
}, [[...props.selected || []].sort().join(",")]);
|
|
1841
|
-
(0,
|
|
1874
|
+
(0, import_react26.useEffect)(() => {
|
|
1842
1875
|
setFocusIndex(null);
|
|
1843
1876
|
}, [open]);
|
|
1844
|
-
(0,
|
|
1877
|
+
(0, import_react26.useEffect)(() => {
|
|
1845
1878
|
setFocusIndex(0);
|
|
1846
1879
|
}, [filteredOptions]);
|
|
1847
|
-
const badgeSize = (0,
|
|
1880
|
+
const badgeSize = (0, import_react26.useMemo)(() => {
|
|
1848
1881
|
switch (size) {
|
|
1849
1882
|
case "large":
|
|
1850
1883
|
return "large";
|
|
@@ -1854,7 +1887,7 @@ function TagSelector(props) {
|
|
|
1854
1887
|
return "small";
|
|
1855
1888
|
}
|
|
1856
1889
|
}, [size]);
|
|
1857
|
-
const placeholderVariant = (0,
|
|
1890
|
+
const placeholderVariant = (0, import_react26.useMemo)(() => {
|
|
1858
1891
|
switch (size) {
|
|
1859
1892
|
case "large":
|
|
1860
1893
|
return "subtitle";
|
|
@@ -1863,8 +1896,8 @@ function TagSelector(props) {
|
|
|
1863
1896
|
return "body";
|
|
1864
1897
|
}
|
|
1865
1898
|
}, [size]);
|
|
1866
|
-
return /* @__PURE__ */ (0,
|
|
1867
|
-
/* @__PURE__ */ (0,
|
|
1899
|
+
return /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(import_themes29.Popover.Root, { open: Boolean(filteredOptions.length) && open, children: [
|
|
1900
|
+
/* @__PURE__ */ (0, import_jsx_runtime31.jsx)(import_themes29.Popover.Trigger, { children: /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(
|
|
1868
1901
|
import_themes20.Grid,
|
|
1869
1902
|
{
|
|
1870
1903
|
align: "center",
|
|
@@ -1876,7 +1909,7 @@ function TagSelector(props) {
|
|
|
1876
1909
|
return (_a = fieldRef.current) == null ? void 0 : _a.focus();
|
|
1877
1910
|
},
|
|
1878
1911
|
children: [
|
|
1879
|
-
/* @__PURE__ */ (0,
|
|
1912
|
+
/* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(
|
|
1880
1913
|
import_themes19.Flex,
|
|
1881
1914
|
{
|
|
1882
1915
|
align: "center",
|
|
@@ -1886,22 +1919,22 @@ function TagSelector(props) {
|
|
|
1886
1919
|
wrap: "wrap",
|
|
1887
1920
|
children: [
|
|
1888
1921
|
selectedItem.map((item) => {
|
|
1889
|
-
return tagRender ? tagRender(item) : /* @__PURE__ */ (0,
|
|
1922
|
+
return tagRender ? tagRender(item) : /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(Badge, { size: badgeSize, children: [
|
|
1890
1923
|
item.name,
|
|
1891
|
-
/* @__PURE__ */ (0,
|
|
1924
|
+
/* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
|
|
1892
1925
|
Button,
|
|
1893
1926
|
{
|
|
1894
1927
|
onClick: () => {
|
|
1895
1928
|
onDelete(item.id);
|
|
1896
1929
|
},
|
|
1897
1930
|
variant: "transparent",
|
|
1898
|
-
children: /* @__PURE__ */ (0,
|
|
1931
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(import_react_icons6.Cross1Icon, {})
|
|
1899
1932
|
}
|
|
1900
1933
|
)
|
|
1901
1934
|
] }, item.id);
|
|
1902
1935
|
}),
|
|
1903
|
-
placeholderVisible ? /* @__PURE__ */ (0,
|
|
1904
|
-
/* @__PURE__ */ (0,
|
|
1936
|
+
placeholderVisible ? /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(Typo, { color: "gray", variant: placeholderVariant, children: placeholder }) : null,
|
|
1937
|
+
/* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
|
|
1905
1938
|
AutoSizingInput,
|
|
1906
1939
|
{
|
|
1907
1940
|
onBlur,
|
|
@@ -1915,34 +1948,34 @@ function TagSelector(props) {
|
|
|
1915
1948
|
]
|
|
1916
1949
|
}
|
|
1917
1950
|
),
|
|
1918
|
-
focus ? /* @__PURE__ */ (0,
|
|
1951
|
+
focus ? /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(import_react_icons6.MagnifyingGlassIcon, {}) : /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(import_react_icons6.ChevronRightIcon, {})
|
|
1919
1952
|
]
|
|
1920
1953
|
}
|
|
1921
1954
|
) }),
|
|
1922
|
-
/* @__PURE__ */ (0,
|
|
1955
|
+
/* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
|
|
1923
1956
|
import_themes29.Popover.Content,
|
|
1924
1957
|
{
|
|
1925
1958
|
onOpenAutoFocus: (e) => {
|
|
1926
1959
|
e.preventDefault();
|
|
1927
1960
|
},
|
|
1928
|
-
children: /* @__PURE__ */ (0,
|
|
1961
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
|
|
1929
1962
|
DropdownContainer,
|
|
1930
1963
|
{
|
|
1931
1964
|
currentItem: filteredOptions[focusIndex || 0],
|
|
1932
1965
|
items: filteredOptions,
|
|
1933
|
-
children: /* @__PURE__ */ (0,
|
|
1966
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
|
|
1934
1967
|
import_themes35.ScrollArea,
|
|
1935
1968
|
{
|
|
1936
1969
|
ref: scrollRef,
|
|
1937
1970
|
scrollbars: "vertical",
|
|
1938
1971
|
style: { height: OPTION_HEIGHT * 8 },
|
|
1939
1972
|
type: "auto",
|
|
1940
|
-
children: /* @__PURE__ */ (0,
|
|
1973
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(import_themes19.Flex, { direction: "column", children: filteredOptions.map((item, i) => {
|
|
1941
1974
|
const isSelected = Boolean(
|
|
1942
1975
|
selected.find((el) => el === item.id)
|
|
1943
1976
|
);
|
|
1944
1977
|
const isFocus = i === focusIndex;
|
|
1945
|
-
return /* @__PURE__ */ (0,
|
|
1978
|
+
return /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
|
|
1946
1979
|
Button,
|
|
1947
1980
|
{
|
|
1948
1981
|
onClick: () => {
|
|
@@ -1961,9 +1994,9 @@ function TagSelector(props) {
|
|
|
1961
1994
|
boxShadow: "none"
|
|
1962
1995
|
},
|
|
1963
1996
|
variant: isSelected ? "soft" : "outline",
|
|
1964
|
-
children: /* @__PURE__ */ (0,
|
|
1997
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(import_themes19.Flex, { justify: "between", width: "100%", children: [
|
|
1965
1998
|
item.name,
|
|
1966
|
-
isSelected ? /* @__PURE__ */ (0,
|
|
1999
|
+
isSelected ? /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(import_react_icons2.CheckIcon, {}) : null
|
|
1967
2000
|
] })
|
|
1968
2001
|
},
|
|
1969
2002
|
item.id
|
|
@@ -1980,13 +2013,13 @@ function TagSelector(props) {
|
|
|
1980
2013
|
|
|
1981
2014
|
// src/theme/theme-provider.tsx
|
|
1982
2015
|
var import_themes51 = require("@radix-ui/themes");
|
|
1983
|
-
var
|
|
2016
|
+
var import_jsx_runtime32 = require("react/jsx-runtime");
|
|
1984
2017
|
function ThemeProvider(props) {
|
|
1985
|
-
return /* @__PURE__ */ (0,
|
|
2018
|
+
return /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(import_themes51.Theme, __spreadValues({ accentColor: "iris", radius: "medium" }, props));
|
|
1986
2019
|
}
|
|
1987
2020
|
|
|
1988
2021
|
// src/molecules/learning-post.tsx
|
|
1989
|
-
var
|
|
2022
|
+
var import_jsx_runtime33 = require("react/jsx-runtime");
|
|
1990
2023
|
function LearningPost(props) {
|
|
1991
2024
|
const {
|
|
1992
2025
|
defaultThemeProps,
|
|
@@ -1998,13 +2031,13 @@ function LearningPost(props) {
|
|
|
1998
2031
|
onPageBack,
|
|
1999
2032
|
children
|
|
2000
2033
|
} = props;
|
|
2001
|
-
return /* @__PURE__ */ (0,
|
|
2034
|
+
return /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
|
|
2002
2035
|
ThemeProvider,
|
|
2003
2036
|
__spreadProps(__spreadValues({}, defaultThemeProps), {
|
|
2004
2037
|
accentColor: "iris",
|
|
2005
2038
|
scaling: "110%",
|
|
2006
2039
|
style: {},
|
|
2007
|
-
children: html ? /* @__PURE__ */ (0,
|
|
2040
|
+
children: html ? /* @__PURE__ */ (0, import_jsx_runtime33.jsxs)(
|
|
2008
2041
|
import_themes20.Grid,
|
|
2009
2042
|
{
|
|
2010
2043
|
columns: { initial: "1", md: "130px 1fr 130px" },
|
|
@@ -2016,8 +2049,8 @@ function LearningPost(props) {
|
|
|
2016
2049
|
px: "4",
|
|
2017
2050
|
width: "100%",
|
|
2018
2051
|
children: [
|
|
2019
|
-
/* @__PURE__ */ (0,
|
|
2020
|
-
/* @__PURE__ */ (0,
|
|
2052
|
+
/* @__PURE__ */ (0, import_jsx_runtime33.jsx)("div", {}),
|
|
2053
|
+
/* @__PURE__ */ (0, import_jsx_runtime33.jsxs)(
|
|
2021
2054
|
import_themes19.Flex,
|
|
2022
2055
|
{
|
|
2023
2056
|
align: "center",
|
|
@@ -2027,15 +2060,15 @@ function LearningPost(props) {
|
|
|
2027
2060
|
overflow: "hidden",
|
|
2028
2061
|
width: "100%",
|
|
2029
2062
|
children: [
|
|
2030
|
-
/* @__PURE__ */ (0,
|
|
2031
|
-
/* @__PURE__ */ (0,
|
|
2063
|
+
/* @__PURE__ */ (0, import_jsx_runtime33.jsxs)(import_themes20.Grid, { align: "start", columns: { initial: "1", sm: "2" }, gap: "2", children: [
|
|
2064
|
+
/* @__PURE__ */ (0, import_jsx_runtime33.jsxs)(
|
|
2032
2065
|
import_themes20.Grid,
|
|
2033
2066
|
{
|
|
2034
2067
|
gap: "3",
|
|
2035
2068
|
mb: { initial: "4", sm: "0" },
|
|
2036
2069
|
style: { alignSelf: "flex-start" },
|
|
2037
2070
|
children: [
|
|
2038
|
-
/* @__PURE__ */ (0,
|
|
2071
|
+
/* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
|
|
2039
2072
|
Heading2,
|
|
2040
2073
|
{
|
|
2041
2074
|
style: {
|
|
@@ -2047,17 +2080,17 @@ function LearningPost(props) {
|
|
|
2047
2080
|
children: title
|
|
2048
2081
|
}
|
|
2049
2082
|
),
|
|
2050
|
-
/* @__PURE__ */ (0,
|
|
2051
|
-
/* @__PURE__ */ (0,
|
|
2083
|
+
/* @__PURE__ */ (0, import_jsx_runtime33.jsx)(Typo, { children: metaDescription }),
|
|
2084
|
+
/* @__PURE__ */ (0, import_jsx_runtime33.jsx)(import_themes19.Flex, { gap: "1", wrap: "wrap", children: tags == null ? void 0 : tags.map((el) => {
|
|
2052
2085
|
var _a;
|
|
2053
2086
|
if ((_a = el.name) == null ? void 0 : _a.startsWith("filter"))
|
|
2054
2087
|
return;
|
|
2055
|
-
return /* @__PURE__ */ (0,
|
|
2088
|
+
return /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(Badge, { size: "large", variant: "solid", children: el.name }, el.id);
|
|
2056
2089
|
}) })
|
|
2057
2090
|
]
|
|
2058
2091
|
}
|
|
2059
2092
|
),
|
|
2060
|
-
/* @__PURE__ */ (0,
|
|
2093
|
+
/* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
|
|
2061
2094
|
import_themes2.AspectRatio,
|
|
2062
2095
|
{
|
|
2063
2096
|
ratio: 5 / 3,
|
|
@@ -2070,7 +2103,7 @@ function LearningPost(props) {
|
|
|
2070
2103
|
}
|
|
2071
2104
|
)
|
|
2072
2105
|
] }),
|
|
2073
|
-
/* @__PURE__ */ (0,
|
|
2106
|
+
/* @__PURE__ */ (0, import_jsx_runtime33.jsx)(import_themes6.Box, { mt: "5", width: "100%", children: /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
|
|
2074
2107
|
"div",
|
|
2075
2108
|
{
|
|
2076
2109
|
className: "gh-content",
|
|
@@ -2083,7 +2116,7 @@ function LearningPost(props) {
|
|
|
2083
2116
|
children
|
|
2084
2117
|
]
|
|
2085
2118
|
}
|
|
2086
|
-
) : /* @__PURE__ */ (0,
|
|
2119
|
+
) : /* @__PURE__ */ (0, import_jsx_runtime33.jsxs)(
|
|
2087
2120
|
import_themes19.Flex,
|
|
2088
2121
|
{
|
|
2089
2122
|
align: "center",
|
|
@@ -2093,8 +2126,8 @@ function LearningPost(props) {
|
|
|
2093
2126
|
justify: "center",
|
|
2094
2127
|
width: "100%",
|
|
2095
2128
|
children: [
|
|
2096
|
-
/* @__PURE__ */ (0,
|
|
2097
|
-
/* @__PURE__ */ (0,
|
|
2129
|
+
/* @__PURE__ */ (0, import_jsx_runtime33.jsx)(Heading2, { variant: "heading1", children: "\uCF58\uD150\uCE20\uB97C \uCC3E\uC744 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4." }),
|
|
2130
|
+
/* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
|
|
2098
2131
|
Heading2,
|
|
2099
2132
|
{
|
|
2100
2133
|
align: "center",
|
|
@@ -2105,7 +2138,7 @@ function LearningPost(props) {
|
|
|
2105
2138
|
\uC7A0\uC2DC \uD6C4 \uB2E4\uC2DC \uC2DC\uB3C4\uD574\uC8FC\uC138\uC694.`
|
|
2106
2139
|
}
|
|
2107
2140
|
),
|
|
2108
|
-
/* @__PURE__ */ (0,
|
|
2141
|
+
/* @__PURE__ */ (0, import_jsx_runtime33.jsx)(Button, { onClick: onPageBack, size: "large", children: "\uB4A4\uB85C\uAC00\uAE30" })
|
|
2109
2142
|
]
|
|
2110
2143
|
}
|
|
2111
2144
|
)
|
|
@@ -2120,22 +2153,22 @@ var import_themes52 = require("@radix-ui/themes");
|
|
|
2120
2153
|
var uiProps = __toESM(require("@radix-ui/themes/dist/cjs/props/index.js"), 1);
|
|
2121
2154
|
|
|
2122
2155
|
// src/charts/horizontal-bar-chart.tsx
|
|
2123
|
-
var
|
|
2156
|
+
var import_jsx_runtime34 = require("react/jsx-runtime");
|
|
2124
2157
|
function HorizontalBarChart(props) {
|
|
2125
2158
|
const { total, value, backgroundColor, barColor, height } = props;
|
|
2126
|
-
return /* @__PURE__ */ (0,
|
|
2159
|
+
return /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(
|
|
2127
2160
|
"div",
|
|
2128
2161
|
{
|
|
2129
2162
|
className: "tipp_horizontal-bar-chart bar-wrapper",
|
|
2130
2163
|
style: { height, backgroundColor },
|
|
2131
|
-
children: /* @__PURE__ */ (0,
|
|
2164
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(
|
|
2132
2165
|
"div",
|
|
2133
2166
|
{
|
|
2134
2167
|
style: {
|
|
2135
2168
|
width: `${Math.round(value / total * 100)}%`,
|
|
2136
2169
|
height: "100%"
|
|
2137
2170
|
},
|
|
2138
|
-
children: /* @__PURE__ */ (0,
|
|
2171
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime34.jsx)("div", { className: "bar", style: { backgroundColor: barColor } })
|
|
2139
2172
|
}
|
|
2140
2173
|
)
|
|
2141
2174
|
}
|