@tipp/ui 1.4.0 → 1.4.2
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/drawer.cjs +63 -9
- package/dist/atoms/drawer.cjs.map +1 -1
- package/dist/atoms/drawer.js +3 -1
- package/dist/atoms/field-error-wrapper.js +2 -2
- package/dist/atoms/index.cjs +8 -4
- package/dist/atoms/index.cjs.map +1 -1
- package/dist/atoms/index.js +58 -58
- package/dist/atoms/pagination.js +2 -2
- package/dist/chunk-3IZQ2PIQ.js +60 -0
- package/dist/chunk-3IZQ2PIQ.js.map +1 -0
- package/dist/chunk-JZYVXLEK.js +188 -0
- package/dist/chunk-JZYVXLEK.js.map +1 -0
- package/dist/index.cjs +13 -9
- package/dist/index.cjs.map +1 -1
- package/dist/index.css +6 -0
- package/dist/index.css.map +1 -1
- package/dist/index.js +73 -73
- package/dist/molecules/date-picker/index.js +2 -2
- package/dist/molecules/expand-table/index.js +26 -26
- package/dist/molecules/expand-table/row.js +25 -25
- package/dist/molecules/index.js +31 -31
- package/dist/molecules/learning-post.js +3 -3
- package/dist/molecules/navigation.js +26 -26
- package/dist/molecules/stepper.js +3 -3
- package/dist/molecules/tag-selector.js +26 -26
- package/package.json +1 -1
- package/src/atoms/drawer.tsx +11 -0
package/dist/atoms/pagination.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import {
|
|
2
2
|
Pagination
|
|
3
|
-
} from "../chunk-
|
|
4
|
-
import "../chunk-25HMMI7R.js";
|
|
3
|
+
} from "../chunk-IM7DSIK2.js";
|
|
5
4
|
import "../chunk-O3DNDMV3.js";
|
|
6
5
|
import "../chunk-52MVZ6AN.js";
|
|
6
|
+
import "../chunk-25HMMI7R.js";
|
|
7
7
|
import "../chunk-66C4U3BG.js";
|
|
8
8
|
import "../chunk-N552FDTV.js";
|
|
9
9
|
export {
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
import {
|
|
2
|
+
Box
|
|
3
|
+
} from "./chunk-4Y5BEXVN.js";
|
|
4
|
+
import {
|
|
5
|
+
Button
|
|
6
|
+
} from "./chunk-P3YCIJUP.js";
|
|
7
|
+
import {
|
|
8
|
+
__objRest,
|
|
9
|
+
__spreadProps,
|
|
10
|
+
__spreadValues
|
|
11
|
+
} from "./chunk-N552FDTV.js";
|
|
12
|
+
|
|
13
|
+
// src/atoms/drawer.tsx
|
|
14
|
+
import { useEffect, useRef } from "react";
|
|
15
|
+
import * as Dialog from "@radix-ui/react-dialog";
|
|
16
|
+
import { Cross1Icon } from "@radix-ui/react-icons";
|
|
17
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
18
|
+
function Root2(props) {
|
|
19
|
+
return /* @__PURE__ */ jsx(Dialog.Root, __spreadValues({}, props));
|
|
20
|
+
}
|
|
21
|
+
function Content2(props) {
|
|
22
|
+
const _a = props, { position = "right", className, children } = _a, rest = __objRest(_a, ["position", "className", "children"]);
|
|
23
|
+
const containerRef = useRef(null);
|
|
24
|
+
useEffect(() => {
|
|
25
|
+
containerRef.current = document.getElementsByClassName("radix-themes")[0];
|
|
26
|
+
}, []);
|
|
27
|
+
return /* @__PURE__ */ jsxs(Dialog.Portal, { container: containerRef.current, children: [
|
|
28
|
+
/* @__PURE__ */ jsx(Dialog.Overlay, { className: "DrawerOverlay" }),
|
|
29
|
+
/* @__PURE__ */ jsxs(
|
|
30
|
+
Dialog.Content,
|
|
31
|
+
__spreadProps(__spreadValues({
|
|
32
|
+
className: `DrawerContent ${position} ${className || ""}`
|
|
33
|
+
}, rest), {
|
|
34
|
+
children: [
|
|
35
|
+
/* @__PURE__ */ jsx(Box, { children: /* @__PURE__ */ jsx(Dialog.Close, { asChild: true, className: "DialogClose", children: /* @__PURE__ */ jsx(Button, { color: "gray", variant: "transparent", children: /* @__PURE__ */ jsx(Cross1Icon, { height: "18px", width: "18px" }) }) }) }),
|
|
36
|
+
children
|
|
37
|
+
]
|
|
38
|
+
})
|
|
39
|
+
)
|
|
40
|
+
] });
|
|
41
|
+
}
|
|
42
|
+
function Trigger2(props) {
|
|
43
|
+
return /* @__PURE__ */ jsx(Dialog.Trigger, __spreadValues({ asChild: true }, props));
|
|
44
|
+
}
|
|
45
|
+
var Drawer = {
|
|
46
|
+
Root: Dialog.Root,
|
|
47
|
+
Trigger: Trigger2,
|
|
48
|
+
Content: Content2,
|
|
49
|
+
Close: Dialog.Close,
|
|
50
|
+
Title: Dialog.Title,
|
|
51
|
+
Description: Dialog.Description
|
|
52
|
+
};
|
|
53
|
+
|
|
54
|
+
export {
|
|
55
|
+
Root2 as Root,
|
|
56
|
+
Content2 as Content,
|
|
57
|
+
Trigger2 as Trigger,
|
|
58
|
+
Drawer
|
|
59
|
+
};
|
|
60
|
+
//# sourceMappingURL=chunk-3IZQ2PIQ.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/atoms/drawer.tsx"],"sourcesContent":["import React, { useEffect, useRef } from 'react';\nimport * as Dialog from '@radix-ui/react-dialog';\nimport { Cross1Icon } from '@radix-ui/react-icons';\nimport { Button } from './button';\nimport { Box } from './box';\n\nexport function Root(props: Dialog.DialogProps): React.ReactNode {\n return <Dialog.Root {...props} />;\n}\n\ntype ContentProps = Dialog.DialogContentProps & {\n /** Drawer가 붙는 위치, 기본값 right */\n position?: 'left' | 'right' | 'bottom' | 'top';\n};\n\nexport function Content(props: ContentProps): React.ReactElement {\n const { position = 'right', className, children, ...rest } = props;\n\n const containerRef = useRef<Element | null>(null);\n useEffect(() => {\n containerRef.current = document.getElementsByClassName('radix-themes')[0];\n }, []);\n\n return (\n <Dialog.Portal container={containerRef.current}>\n <Dialog.Overlay className=\"DrawerOverlay\" />\n <Dialog.Content\n className={`DrawerContent ${position} ${className || ''}`}\n {...rest}\n >\n <Box>\n <Dialog.Close asChild className=\"DialogClose\">\n <Button color=\"gray\" variant=\"transparent\">\n <Cross1Icon height=\"18px\" width=\"18px\" />\n </Button>\n </Dialog.Close>\n </Box>\n\n {children}\n </Dialog.Content>\n </Dialog.Portal>\n );\n}\n\nexport function Trigger(props: Dialog.DialogTriggerProps): React.ReactNode {\n return <Dialog.Trigger asChild {...props} />;\n}\n\nexport const Drawer = {\n Root: Dialog.Root,\n Trigger,\n Content,\n Close: Dialog.Close,\n Title: Dialog.Title,\n Description: Dialog.Description,\n};\n"],"mappings":";;;;;;;;;;;;;AAAA,SAAgB,WAAW,cAAc;AACzC,YAAY,YAAY;AACxB,SAAS,kBAAkB;AAKlB,cAmBH,YAnBG;AADF,SAASA,MAAK,OAA4C;AAC/D,SAAO,oBAAQ,aAAP,mBAAgB,MAAO;AACjC;AAOO,SAASC,SAAQ,OAAyC;AAC/D,QAA6D,YAArD,aAAW,SAAS,WAAW,SAhBzC,IAgB+D,IAAT,iBAAS,IAAT,CAA5C,YAAoB,aAAW;AAEvC,QAAM,eAAe,OAAuB,IAAI;AAChD,YAAU,MAAM;AACd,iBAAa,UAAU,SAAS,uBAAuB,cAAc,EAAE,CAAC;AAAA,EAC1E,GAAG,CAAC,CAAC;AAEL,SACE,qBAAQ,eAAP,EAAc,WAAW,aAAa,SACrC;AAAA,wBAAQ,gBAAP,EAAe,WAAU,iBAAgB;AAAA,IAC1C;AAAA,MAAQ;AAAA,MAAP;AAAA,QACC,WAAW,iBAAiB,QAAQ,IAAI,aAAa,EAAE;AAAA,SACnD,OAFL;AAAA,QAIC;AAAA,8BAAC,OACC,8BAAQ,cAAP,EAAa,SAAO,MAAC,WAAU,eAC9B,8BAAC,UAAO,OAAM,QAAO,SAAQ,eAC3B,8BAAC,cAAW,QAAO,QAAO,OAAM,QAAO,GACzC,GACF,GACF;AAAA,UAEC;AAAA;AAAA;AAAA,IACH;AAAA,KACF;AAEJ;AAEO,SAASC,SAAQ,OAAmD;AACzE,SAAO,oBAAQ,gBAAP,iBAAe,SAAO,QAAK,MAAO;AAC5C;AAEO,IAAM,SAAS;AAAA,EACpB,MAAa;AAAA,EACb,SAAAA;AAAA,EACA,SAAAD;AAAA,EACA,OAAc;AAAA,EACd,OAAc;AAAA,EACd,aAAoB;AACtB;","names":["Root","Content","Trigger"]}
|
|
@@ -0,0 +1,188 @@
|
|
|
1
|
+
import {
|
|
2
|
+
Row
|
|
3
|
+
} from "./chunk-X5FVSTHW.js";
|
|
4
|
+
import {
|
|
5
|
+
TriangleArrowDownIcon
|
|
6
|
+
} from "./chunk-BSTJBBEX.js";
|
|
7
|
+
import {
|
|
8
|
+
TriangleArrowUpIcon
|
|
9
|
+
} from "./chunk-NDUKDKGB.js";
|
|
10
|
+
import {
|
|
11
|
+
Spinner
|
|
12
|
+
} from "./chunk-FR2GDOU2.js";
|
|
13
|
+
import {
|
|
14
|
+
Pagination
|
|
15
|
+
} from "./chunk-IM7DSIK2.js";
|
|
16
|
+
import {
|
|
17
|
+
Typo
|
|
18
|
+
} from "./chunk-52MVZ6AN.js";
|
|
19
|
+
import {
|
|
20
|
+
Flex
|
|
21
|
+
} from "./chunk-25HMMI7R.js";
|
|
22
|
+
|
|
23
|
+
// src/molecules/expand-table/index.tsx
|
|
24
|
+
import {
|
|
25
|
+
flexRender,
|
|
26
|
+
getCoreRowModel,
|
|
27
|
+
useReactTable,
|
|
28
|
+
getSortedRowModel,
|
|
29
|
+
createColumnHelper,
|
|
30
|
+
getPaginationRowModel
|
|
31
|
+
} from "@tanstack/react-table";
|
|
32
|
+
import { useCallback, useMemo, useState } from "react";
|
|
33
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
34
|
+
function ExpandTable(props) {
|
|
35
|
+
const {
|
|
36
|
+
data,
|
|
37
|
+
columns,
|
|
38
|
+
ExpandComp,
|
|
39
|
+
placeholder,
|
|
40
|
+
onRowClick,
|
|
41
|
+
tableStyle,
|
|
42
|
+
showPagination,
|
|
43
|
+
isLoading,
|
|
44
|
+
pageIndex = 0,
|
|
45
|
+
pageSize = 10,
|
|
46
|
+
siblingCount = 2
|
|
47
|
+
} = props;
|
|
48
|
+
const defaultAlign = "left";
|
|
49
|
+
const [pagination, setPagination] = useState({
|
|
50
|
+
pageIndex: pageIndex || 0,
|
|
51
|
+
pageSize: pageSize || 9999
|
|
52
|
+
});
|
|
53
|
+
const [sorting, setSorting] = useState([]);
|
|
54
|
+
const { getRowModel, getHeaderGroups, setPageIndex } = useReactTable({
|
|
55
|
+
data: data || [],
|
|
56
|
+
columns,
|
|
57
|
+
getCoreRowModel: getCoreRowModel(),
|
|
58
|
+
getSortedRowModel: getSortedRowModel(),
|
|
59
|
+
state: {
|
|
60
|
+
sorting,
|
|
61
|
+
pagination
|
|
62
|
+
},
|
|
63
|
+
onSortingChange: setSorting,
|
|
64
|
+
getPaginationRowModel: getPaginationRowModel(),
|
|
65
|
+
onPaginationChange: setPagination
|
|
66
|
+
});
|
|
67
|
+
const gridColTemp = useMemo(() => {
|
|
68
|
+
return columns.map((col) => {
|
|
69
|
+
var _a;
|
|
70
|
+
if ((_a = col.meta) == null ? void 0 : _a.autoSize)
|
|
71
|
+
return "1fr";
|
|
72
|
+
return `${col.size || 150}px`;
|
|
73
|
+
}).join(" ");
|
|
74
|
+
}, [columns]);
|
|
75
|
+
const rowModels = getRowModel();
|
|
76
|
+
const onChangePagination = useCallback(
|
|
77
|
+
(page) => {
|
|
78
|
+
setPageIndex(page - 1);
|
|
79
|
+
},
|
|
80
|
+
[setPageIndex]
|
|
81
|
+
);
|
|
82
|
+
const helpCompRender = useCallback(
|
|
83
|
+
(rowLength) => {
|
|
84
|
+
if (isLoading) {
|
|
85
|
+
return /* @__PURE__ */ jsx(
|
|
86
|
+
Flex,
|
|
87
|
+
{
|
|
88
|
+
align: "center",
|
|
89
|
+
height: "100%",
|
|
90
|
+
justify: "center",
|
|
91
|
+
p: "5",
|
|
92
|
+
width: "100%",
|
|
93
|
+
children: /* @__PURE__ */ jsx(Spinner, {})
|
|
94
|
+
}
|
|
95
|
+
);
|
|
96
|
+
}
|
|
97
|
+
if (rowLength === 0) {
|
|
98
|
+
return /* @__PURE__ */ jsx("div", { className: "tr", children: /* @__PURE__ */ jsx(Flex, { align: "center", justify: "center", children: placeholder || /* @__PURE__ */ jsx(Typo, { color: "gray", mb: "6", mt: "6", variant: "body", children: "\uB370\uC774\uD130\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4" }) }) }, "expand_placeholder");
|
|
99
|
+
}
|
|
100
|
+
return null;
|
|
101
|
+
},
|
|
102
|
+
[isLoading, placeholder]
|
|
103
|
+
);
|
|
104
|
+
const pageCount = useMemo(() => {
|
|
105
|
+
if (!data)
|
|
106
|
+
return 0;
|
|
107
|
+
return Math.ceil(data.length / pageSize);
|
|
108
|
+
}, [data, pageSize]);
|
|
109
|
+
return /* @__PURE__ */ jsxs("div", { className: "expand-table", style: tableStyle, children: [
|
|
110
|
+
/* @__PURE__ */ jsx("div", { className: "thead", children: getHeaderGroups().map((headerGroup) => /* @__PURE__ */ jsx(
|
|
111
|
+
"div",
|
|
112
|
+
{
|
|
113
|
+
className: "tr",
|
|
114
|
+
style: { gridTemplateColumns: gridColTemp },
|
|
115
|
+
children: headerGroup.headers.map((header) => {
|
|
116
|
+
var _a;
|
|
117
|
+
const sortable = header.column.getCanSort();
|
|
118
|
+
const sortedState = header.column.getIsSorted();
|
|
119
|
+
const justifyContent = ((_a = header.column.columnDef.meta) == null ? void 0 : _a.align) || defaultAlign;
|
|
120
|
+
return /* @__PURE__ */ jsx("div", { className: `${justifyContent} th`, children: /* @__PURE__ */ jsxs(
|
|
121
|
+
"button",
|
|
122
|
+
{
|
|
123
|
+
onClick: header.column.getToggleSortingHandler(),
|
|
124
|
+
style: sortable ? { cursor: "pointer" } : void 0,
|
|
125
|
+
type: "button",
|
|
126
|
+
children: [
|
|
127
|
+
/* @__PURE__ */ jsx(Typo, { variant: "body", children: flexRender(
|
|
128
|
+
header.column.columnDef.header,
|
|
129
|
+
header.getContext()
|
|
130
|
+
) }),
|
|
131
|
+
sortable ? /* @__PURE__ */ jsxs(
|
|
132
|
+
Flex,
|
|
133
|
+
{
|
|
134
|
+
direction: "column",
|
|
135
|
+
style: { marginLeft: "var(--space-2)" },
|
|
136
|
+
children: [
|
|
137
|
+
/* @__PURE__ */ jsx(
|
|
138
|
+
TriangleArrowUpIcon,
|
|
139
|
+
{
|
|
140
|
+
color: sortedState === "asc" ? "var(--iris-10)" : "var(--iris-6)"
|
|
141
|
+
}
|
|
142
|
+
),
|
|
143
|
+
/* @__PURE__ */ jsx(
|
|
144
|
+
TriangleArrowDownIcon,
|
|
145
|
+
{
|
|
146
|
+
color: sortedState === "desc" ? "var(--iris-10)" : "var(--iris-6)"
|
|
147
|
+
}
|
|
148
|
+
)
|
|
149
|
+
]
|
|
150
|
+
}
|
|
151
|
+
) : null
|
|
152
|
+
]
|
|
153
|
+
}
|
|
154
|
+
) }, header.id);
|
|
155
|
+
})
|
|
156
|
+
},
|
|
157
|
+
headerGroup.id
|
|
158
|
+
)) }),
|
|
159
|
+
/* @__PURE__ */ jsx("div", { className: "tbody", children: helpCompRender(rowModels.rows.length) || rowModels.rows.map((row) => {
|
|
160
|
+
return /* @__PURE__ */ jsx(
|
|
161
|
+
Row,
|
|
162
|
+
{
|
|
163
|
+
ExpandComp,
|
|
164
|
+
defaultAlign,
|
|
165
|
+
gridColTemp,
|
|
166
|
+
onRowClick,
|
|
167
|
+
row
|
|
168
|
+
},
|
|
169
|
+
`row_${row.id}`
|
|
170
|
+
);
|
|
171
|
+
}) }),
|
|
172
|
+
showPagination ? /* @__PURE__ */ jsx(Flex, { justify: "end", pt: "3", width: "100%", children: /* @__PURE__ */ jsx(
|
|
173
|
+
Pagination,
|
|
174
|
+
{
|
|
175
|
+
count: pageCount,
|
|
176
|
+
onChange: onChangePagination,
|
|
177
|
+
page: pagination.pageIndex + 1,
|
|
178
|
+
siblingCount
|
|
179
|
+
}
|
|
180
|
+
) }) : null
|
|
181
|
+
] });
|
|
182
|
+
}
|
|
183
|
+
|
|
184
|
+
export {
|
|
185
|
+
createColumnHelper,
|
|
186
|
+
ExpandTable
|
|
187
|
+
};
|
|
188
|
+
//# sourceMappingURL=chunk-JZYVXLEK.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/molecules/expand-table/index.tsx"],"sourcesContent":["import type {\n ColumnDef,\n SortingState,\n RowData,\n Row as RowType,\n PaginationState,\n} from '@tanstack/react-table';\nimport type { CSSProperties } from 'react';\nimport {\n flexRender,\n getCoreRowModel,\n useReactTable,\n getSortedRowModel,\n createColumnHelper,\n getPaginationRowModel,\n} from '@tanstack/react-table';\nimport React, { useCallback, useMemo, useState } from 'react';\nimport { Flex, Pagination, Spinner, Typo } from '../../atoms';\nimport { TriangleArrowDownIcon } from '../../icons/down';\nimport { TriangleArrowUpIcon } from '../../icons/up';\nimport { Row, type ExpandComp, type OnRowClick } from './row';\n\nexport type { ExpandComp, OnRowClick, ColumnDef, RowType as Row };\nexport { createColumnHelper };\n\nexport interface ExpandTableProps<Datum extends RowData> {\n /** 렌더할 데이터 배열 */\n data?: Datum[];\n /** 테이블 컬럼의 메타 데이터 */\n columns: ColumnDef<Datum>[];\n /** Row의 open이 true인 경우 하단의 collapse에 렌더할 컴포넌트 */\n ExpandComp?: ExpandComp<Datum>;\n /** 데이테가 없을 시 화면에 표시할 컴포넌트 */\n placeholder?: React.ReactNode;\n /** 행 클릭 시 실행할 콜백 */\n onRowClick?: OnRowClick<Datum>;\n rowStyle?: CSSProperties;\n tableStyle?: CSSProperties;\n isLoading?: boolean;\n\n /** pagination - 표시 유무 */\n showPagination?: boolean;\n /** pagination - 현재 선택된 페이지, 0부터 시작 */\n pageIndex?: number;\n /** pagination - 한 페이지에 표시될 컬럼 개수 */\n pageSize?: number;\n /** pagination - */\n siblingCount?: number;\n}\n\nexport function ExpandTable<Datum extends RowData>(\n props: ExpandTableProps<Datum>\n): React.ReactNode {\n const {\n data,\n columns,\n ExpandComp,\n placeholder,\n onRowClick,\n tableStyle,\n showPagination,\n isLoading,\n pageIndex = 0,\n pageSize = 10,\n siblingCount = 2,\n } = props;\n const defaultAlign = 'left';\n const [pagination, setPagination] = useState<PaginationState>({\n pageIndex: pageIndex || 0,\n pageSize: pageSize || 9999,\n });\n\n const [sorting, setSorting] = useState<SortingState>([]);\n const { getRowModel, getHeaderGroups, setPageIndex } = useReactTable({\n data: data || [],\n columns,\n getCoreRowModel: getCoreRowModel(),\n getSortedRowModel: getSortedRowModel(),\n state: {\n sorting,\n pagination,\n },\n onSortingChange: setSorting,\n getPaginationRowModel: getPaginationRowModel(),\n onPaginationChange: setPagination,\n });\n\n const gridColTemp = useMemo<string>(() => {\n return columns\n .map((col) => {\n if (col.meta?.autoSize) return '1fr';\n return `${col.size || 150}px`;\n })\n .join(' ');\n }, [columns]);\n\n const rowModels = getRowModel();\n\n const onChangePagination = useCallback(\n (page: number) => {\n setPageIndex(page - 1);\n },\n [setPageIndex]\n );\n\n const helpCompRender = useCallback(\n (rowLength: number) => {\n if (isLoading) {\n return (\n <Flex\n align=\"center\"\n height=\"100%\"\n justify=\"center\"\n p=\"5\"\n width=\"100%\"\n >\n <Spinner />\n </Flex>\n );\n }\n if (rowLength === 0) {\n return (\n <div className=\"tr\" key=\"expand_placeholder\">\n <Flex align=\"center\" justify=\"center\">\n {placeholder || (\n <Typo color=\"gray\" mb=\"6\" mt=\"6\" variant=\"body\">\n 데이터가 없습니다\n </Typo>\n )}\n </Flex>\n </div>\n );\n }\n return null;\n },\n [isLoading, placeholder]\n );\n\n const pageCount = useMemo(() => {\n if (!data) return 0;\n return Math.ceil(data.length / pageSize);\n }, [data, pageSize]);\n\n return (\n <div className=\"expand-table\" style={tableStyle}>\n <div className=\"thead\">\n {getHeaderGroups().map((headerGroup) => (\n <div\n className=\"tr\"\n key={headerGroup.id}\n style={{ gridTemplateColumns: gridColTemp }}\n >\n {headerGroup.headers.map((header) => {\n const sortable = header.column.getCanSort();\n const sortedState = header.column.getIsSorted();\n const justifyContent =\n header.column.columnDef.meta?.align || defaultAlign;\n\n return (\n <div className={`${justifyContent} th`} key={header.id}>\n <button\n onClick={header.column.getToggleSortingHandler()}\n style={sortable ? { cursor: 'pointer' } : undefined}\n type=\"button\"\n >\n <Typo variant=\"body\">\n {flexRender(\n header.column.columnDef.header,\n header.getContext()\n )}\n </Typo>\n {sortable ? (\n <Flex\n direction=\"column\"\n style={{ marginLeft: 'var(--space-2)' }}\n >\n <TriangleArrowUpIcon\n color={\n sortedState === 'asc'\n ? 'var(--iris-10)'\n : 'var(--iris-6)'\n }\n />\n <TriangleArrowDownIcon\n color={\n sortedState === 'desc'\n ? 'var(--iris-10)'\n : 'var(--iris-6)'\n }\n />\n </Flex>\n ) : null}\n </button>\n </div>\n );\n })}\n </div>\n ))}\n </div>\n <div className=\"tbody\">\n {/* 조건에 따라 placeholder 또는 loading 렌더*/}\n {helpCompRender(rowModels.rows.length) ||\n rowModels.rows.map((row) => {\n return (\n <Row\n ExpandComp={ExpandComp}\n defaultAlign={defaultAlign}\n gridColTemp={gridColTemp}\n key={`row_${row.id}`}\n onRowClick={onRowClick}\n row={row}\n />\n );\n })}\n </div>\n\n {showPagination ? (\n <Flex justify=\"end\" pt=\"3\" width=\"100%\">\n <Pagination\n count={pageCount}\n onChange={onChangePagination}\n page={pagination.pageIndex + 1}\n siblingCount={siblingCount}\n />\n </Flex>\n ) : null}\n </div>\n );\n}\n"],"mappings":"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","names":[]}
|
package/dist/index.cjs
CHANGED
|
@@ -847,6 +847,7 @@ function EllipsisTooltip(props) {
|
|
|
847
847
|
// src/atoms/drawer.tsx
|
|
848
848
|
var import_react16 = require("react");
|
|
849
849
|
var Dialog2 = __toESM(require("@radix-ui/react-dialog"), 1);
|
|
850
|
+
var import_react_icons3 = require("@radix-ui/react-icons");
|
|
850
851
|
var import_jsx_runtime17 = require("react/jsx-runtime");
|
|
851
852
|
function Root4(props) {
|
|
852
853
|
return /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(Dialog2.Root, __spreadValues({}, props));
|
|
@@ -859,12 +860,15 @@ function Content6(props) {
|
|
|
859
860
|
}, []);
|
|
860
861
|
return /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)(Dialog2.Portal, { container: containerRef.current, children: [
|
|
861
862
|
/* @__PURE__ */ (0, import_jsx_runtime17.jsx)(Dialog2.Overlay, { className: "DrawerOverlay" }),
|
|
862
|
-
/* @__PURE__ */ (0, import_jsx_runtime17.
|
|
863
|
+
/* @__PURE__ */ (0, import_jsx_runtime17.jsxs)(
|
|
863
864
|
Dialog2.Content,
|
|
864
865
|
__spreadProps(__spreadValues({
|
|
865
866
|
className: `DrawerContent ${position} ${className || ""}`
|
|
866
867
|
}, rest), {
|
|
867
|
-
children
|
|
868
|
+
children: [
|
|
869
|
+
/* @__PURE__ */ (0, import_jsx_runtime17.jsx)(import_themes6.Box, { children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(Dialog2.Close, { asChild: true, className: "DialogClose", children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(Button, { color: "gray", variant: "transparent", children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(import_react_icons3.Cross1Icon, { height: "18px", width: "18px" }) }) }) }),
|
|
870
|
+
children
|
|
871
|
+
]
|
|
868
872
|
})
|
|
869
873
|
)
|
|
870
874
|
] });
|
|
@@ -882,7 +886,7 @@ var Drawer = {
|
|
|
882
886
|
};
|
|
883
887
|
|
|
884
888
|
// src/atoms/toast.tsx
|
|
885
|
-
var
|
|
889
|
+
var import_react_icons4 = require("@radix-ui/react-icons");
|
|
886
890
|
var import_react_toastify = require("react-toastify");
|
|
887
891
|
var import_react_toastify2 = require("react-toastify");
|
|
888
892
|
var import_jsx_runtime18 = require("react/jsx-runtime");
|
|
@@ -898,7 +902,7 @@ function ToastContainer(props) {
|
|
|
898
902
|
closeOnClick: true,
|
|
899
903
|
draggable: true,
|
|
900
904
|
hideProgressBar: true,
|
|
901
|
-
icon: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
|
|
905
|
+
icon: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(import_react_icons4.InfoCircledIcon, {}),
|
|
902
906
|
newestOnTop: true,
|
|
903
907
|
pauseOnFocusLoss: true,
|
|
904
908
|
pauseOnHover: true,
|
|
@@ -1415,7 +1419,7 @@ var renderCustomHeader = (props) => {
|
|
|
1415
1419
|
|
|
1416
1420
|
// src/molecules/dot-navigation.tsx
|
|
1417
1421
|
var import_react22 = require("react");
|
|
1418
|
-
var
|
|
1422
|
+
var import_react_icons5 = require("@radix-ui/react-icons");
|
|
1419
1423
|
var import_jsx_runtime27 = require("react/jsx-runtime");
|
|
1420
1424
|
function DotNavigation(props) {
|
|
1421
1425
|
const { dotCount, onClick, dotIndex, defaultDotIndex, onChangeDotIndex } = props;
|
|
@@ -1446,7 +1450,7 @@ function DotNavigation(props) {
|
|
|
1446
1450
|
return /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(import_themes19.Flex, { children: dotCount ? Array.from({ length: dotCount }, (_, i) => i).map((_, index) => {
|
|
1447
1451
|
const isSelected = currentDot === index;
|
|
1448
1452
|
return /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(
|
|
1449
|
-
|
|
1453
|
+
import_react_icons5.DotFilledIcon,
|
|
1450
1454
|
{
|
|
1451
1455
|
height: "24px",
|
|
1452
1456
|
onClick: () => {
|
|
@@ -1617,7 +1621,7 @@ var Stepper = {
|
|
|
1617
1621
|
|
|
1618
1622
|
// src/molecules/tag-selector.tsx
|
|
1619
1623
|
var import_react24 = require("react");
|
|
1620
|
-
var
|
|
1624
|
+
var import_react_icons6 = require("@radix-ui/react-icons");
|
|
1621
1625
|
var import_jsx_runtime29 = require("react/jsx-runtime");
|
|
1622
1626
|
var OPTION_HEIGHT = 32;
|
|
1623
1627
|
var DefaultDropdownContainer = (props) => {
|
|
@@ -1830,7 +1834,7 @@ function TagSelector(props) {
|
|
|
1830
1834
|
onDelete(item.id);
|
|
1831
1835
|
},
|
|
1832
1836
|
variant: "transparent",
|
|
1833
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(
|
|
1837
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(import_react_icons6.Cross1Icon, {})
|
|
1834
1838
|
}
|
|
1835
1839
|
)
|
|
1836
1840
|
] }, item.id);
|
|
@@ -1850,7 +1854,7 @@ function TagSelector(props) {
|
|
|
1850
1854
|
]
|
|
1851
1855
|
}
|
|
1852
1856
|
),
|
|
1853
|
-
focus ? /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(
|
|
1857
|
+
focus ? /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(import_react_icons6.MagnifyingGlassIcon, {}) : /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(import_react_icons6.ChevronRightIcon, {})
|
|
1854
1858
|
]
|
|
1855
1859
|
}
|
|
1856
1860
|
) }),
|