@tipp/ui 1.0.39 → 1.0.41

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.
Files changed (117) hide show
  1. package/dist/atoms/avatar.d.cts +3 -3
  2. package/dist/atoms/avatar.d.ts +3 -3
  3. package/dist/atoms/badge.d.cts +3 -3
  4. package/dist/atoms/badge.d.ts +3 -3
  5. package/dist/atoms/button.d.cts +3 -3
  6. package/dist/atoms/button.d.ts +3 -3
  7. package/dist/atoms/card.d.cts +3 -3
  8. package/dist/atoms/card.d.ts +3 -3
  9. package/dist/atoms/check-box-group.d.cts +4 -4
  10. package/dist/atoms/check-box-group.d.ts +4 -4
  11. package/dist/atoms/check-box.d.cts +3 -3
  12. package/dist/atoms/check-box.d.ts +3 -3
  13. package/dist/atoms/collapse.d.cts +3 -3
  14. package/dist/atoms/collapse.d.ts +3 -3
  15. package/dist/atoms/drawer.d.cts +8 -8
  16. package/dist/atoms/drawer.d.ts +8 -8
  17. package/dist/atoms/drawer.js +2 -2
  18. package/dist/atoms/dropdown-menu.cjs +51 -1
  19. package/dist/atoms/dropdown-menu.cjs.map +1 -1
  20. package/dist/atoms/dropdown-menu.d.cts +26 -1
  21. package/dist/atoms/dropdown-menu.d.ts +26 -1
  22. package/dist/atoms/dropdown-menu.js +1 -1
  23. package/dist/atoms/ellipsis-tooltip.d.cts +2 -2
  24. package/dist/atoms/ellipsis-tooltip.d.ts +2 -2
  25. package/dist/atoms/field-error-wrapper.d.cts +3 -3
  26. package/dist/atoms/field-error-wrapper.d.ts +3 -3
  27. package/dist/atoms/form.d.cts +7 -7
  28. package/dist/atoms/form.d.ts +7 -7
  29. package/dist/atoms/index.cjs +94 -73
  30. package/dist/atoms/index.cjs.map +1 -1
  31. package/dist/atoms/index.d.cts +2 -1
  32. package/dist/atoms/index.d.ts +2 -1
  33. package/dist/atoms/index.js +59 -59
  34. package/dist/atoms/pagination.d.cts +2 -2
  35. package/dist/atoms/pagination.d.ts +2 -2
  36. package/dist/atoms/pagination.js +2 -2
  37. package/dist/atoms/typo.d.cts +2 -2
  38. package/dist/atoms/typo.d.ts +2 -2
  39. package/dist/charts/horizontal-bar-chart.d.cts +2 -2
  40. package/dist/charts/horizontal-bar-chart.d.ts +2 -2
  41. package/dist/chunk-46A3Q5FJ.js +59 -0
  42. package/dist/chunk-46A3Q5FJ.js.map +1 -0
  43. package/dist/chunk-4AI7AKMF.js +34 -0
  44. package/dist/chunk-4AI7AKMF.js.map +1 -0
  45. package/dist/chunk-4D6AW2AL.js +36 -0
  46. package/dist/chunk-4D6AW2AL.js.map +1 -0
  47. package/dist/chunk-4ZCLCSZJ.js +59 -0
  48. package/dist/chunk-4ZCLCSZJ.js.map +1 -0
  49. package/dist/chunk-6XEKRSH4.js +119 -0
  50. package/dist/chunk-6XEKRSH4.js.map +1 -0
  51. package/dist/chunk-7A7J457W.js +63 -0
  52. package/dist/chunk-7A7J457W.js.map +1 -0
  53. package/dist/chunk-7DMFFGJO.js +36 -0
  54. package/dist/chunk-7DMFFGJO.js.map +1 -0
  55. package/dist/chunk-AH3JQGIV.js +36 -0
  56. package/dist/chunk-AH3JQGIV.js.map +1 -0
  57. package/dist/chunk-BGEMXQCK.js +59 -0
  58. package/dist/chunk-BGEMXQCK.js.map +1 -0
  59. package/dist/chunk-E237B7Y6.js +33 -0
  60. package/dist/chunk-E237B7Y6.js.map +1 -0
  61. package/dist/chunk-EIRUKSOW.js +34 -0
  62. package/dist/chunk-EIRUKSOW.js.map +1 -0
  63. package/dist/chunk-EKFTULUP.js +34 -0
  64. package/dist/chunk-EKFTULUP.js.map +1 -0
  65. package/dist/chunk-FXU6OEPZ.js +12 -0
  66. package/dist/chunk-FXU6OEPZ.js.map +1 -0
  67. package/dist/chunk-GAXVJHRD.js +104 -0
  68. package/dist/chunk-GAXVJHRD.js.map +1 -0
  69. package/dist/chunk-MFLJ2V3R.js +63 -0
  70. package/dist/chunk-MFLJ2V3R.js.map +1 -0
  71. package/dist/chunk-NSSO2QWC.js +63 -0
  72. package/dist/chunk-NSSO2QWC.js.map +1 -0
  73. package/dist/chunk-P4T2KKQP.js +63 -0
  74. package/dist/chunk-P4T2KKQP.js.map +1 -0
  75. package/dist/chunk-R43PBEHD.js +63 -0
  76. package/dist/chunk-R43PBEHD.js.map +1 -0
  77. package/dist/chunk-RKLEKAON.js +63 -0
  78. package/dist/chunk-RKLEKAON.js.map +1 -0
  79. package/dist/chunk-S6R7UAYR.js +36 -0
  80. package/dist/chunk-S6R7UAYR.js.map +1 -0
  81. package/dist/chunk-UMZNOFYA.js +33 -0
  82. package/dist/chunk-UMZNOFYA.js.map +1 -0
  83. package/dist/chunk-Z32GH5FC.js +8 -0
  84. package/dist/chunk-Z32GH5FC.js.map +1 -0
  85. package/dist/icons/down.d.cts +2 -2
  86. package/dist/icons/down.d.ts +2 -2
  87. package/dist/icons/up.d.cts +2 -2
  88. package/dist/icons/up.d.ts +2 -2
  89. package/dist/index.cjs +151 -126
  90. package/dist/index.cjs.map +1 -1
  91. package/dist/index.css +3 -0
  92. package/dist/index.css.map +1 -1
  93. package/dist/index.d.cts +2 -1
  94. package/dist/index.d.ts +2 -1
  95. package/dist/index.js +69 -69
  96. package/dist/molecules/date-picker/index.d.cts +2 -2
  97. package/dist/molecules/date-picker/index.d.ts +2 -2
  98. package/dist/molecules/date-picker/index.js +2 -2
  99. package/dist/molecules/expand-table/index.d.cts +3 -3
  100. package/dist/molecules/expand-table/index.d.ts +3 -3
  101. package/dist/molecules/expand-table/index.js +27 -27
  102. package/dist/molecules/expand-table/row.d.cts +3 -3
  103. package/dist/molecules/expand-table/row.d.ts +3 -3
  104. package/dist/molecules/expand-table/row.js +24 -24
  105. package/dist/molecules/index.cjs +6 -2
  106. package/dist/molecules/index.cjs.map +1 -1
  107. package/dist/molecules/index.js +29 -29
  108. package/dist/molecules/navigation.cjs +6 -2
  109. package/dist/molecules/navigation.cjs.map +1 -1
  110. package/dist/molecules/navigation.d.cts +4 -4
  111. package/dist/molecules/navigation.d.ts +4 -4
  112. package/dist/molecules/navigation.js +25 -25
  113. package/dist/theme/theme-provider.d.cts +4 -4
  114. package/dist/theme/theme-provider.d.ts +4 -4
  115. package/package.json +1 -1
  116. package/src/atoms/dropdown-menu.tsx +29 -1
  117. package/src/molecules/navigation.tsx +6 -2
@@ -1,10 +1,11 @@
1
- export { AlertDialog, AspectRatio, Blockquote, BlockquoteProps, Box, BoxProps, Callout, CheckboxCards, Code, CodeProps, Container, ContainerProps, DataList, Dialog, DropdownMenu, Em, EmProps, Flex, FlexProps, Grid, GridProps, HoverCard, IconButton, IconButtonProps, Inset, InsetProps, Kbd, KbdProps, Popover, Progress, ProgressProps, Quote, QuoteProps, Radio, RadioCards, RadioGroup, RadioProps, Heading as RadixHeading, ScrollArea, ScrollAreaProps, Section, SectionProps, SegmentedControl, Select, Separator, SeparatorProps, Skeleton, SkeletonProps, Spinner, SpinnerProps, Strong, StrongProps, Switch, SwitchProps, TabNav, Tabs, TextArea, TextAreaProps, TextField, Tooltip, TooltipProps } from '@radix-ui/themes';
1
+ export { AlertDialog, AspectRatio, Blockquote, BlockquoteProps, Box, BoxProps, Callout, CheckboxCards, Code, CodeProps, Container, ContainerProps, DataList, Dialog, Em, EmProps, Flex, FlexProps, Grid, GridProps, HoverCard, IconButton, IconButtonProps, Inset, InsetProps, Kbd, KbdProps, Popover, Progress, ProgressProps, Quote, QuoteProps, Radio, RadioCards, RadioGroup, RadioProps, Heading as RadixHeading, ScrollArea, ScrollAreaProps, Section, SectionProps, SegmentedControl, Select, Separator, SeparatorProps, Skeleton, SkeletonProps, Spinner, SpinnerProps, Strong, StrongProps, Switch, SwitchProps, TabNav, Tabs, TextArea, TextAreaProps, TextField, Tooltip, TooltipProps } from '@radix-ui/themes';
2
2
  export { Avatar, AvatarProps } from './avatar.cjs';
3
3
  export { Badge, BadgeProps } from './badge.cjs';
4
4
  export { Button, ButtonProps } from './button.cjs';
5
5
  export { Card, CardProps } from './card.cjs';
6
6
  export { Checkbox, CheckboxProps } from './check-box.cjs';
7
7
  export { CheckboxGroup } from './check-box-group.cjs';
8
+ export { ContentProps, DropdownMenu } from './dropdown-menu.cjs';
8
9
  export { Heading, HeadingProps } from './heading.cjs';
9
10
  export { Link, LinkProps } from './link.cjs';
10
11
  export { Typo, TypoProps } from './typo.cjs';
@@ -1,10 +1,11 @@
1
- export { AlertDialog, AspectRatio, Blockquote, BlockquoteProps, Box, BoxProps, Callout, CheckboxCards, Code, CodeProps, Container, ContainerProps, DataList, Dialog, DropdownMenu, Em, EmProps, Flex, FlexProps, Grid, GridProps, HoverCard, IconButton, IconButtonProps, Inset, InsetProps, Kbd, KbdProps, Popover, Progress, ProgressProps, Quote, QuoteProps, Radio, RadioCards, RadioGroup, RadioProps, Heading as RadixHeading, ScrollArea, ScrollAreaProps, Section, SectionProps, SegmentedControl, Select, Separator, SeparatorProps, Skeleton, SkeletonProps, Spinner, SpinnerProps, Strong, StrongProps, Switch, SwitchProps, TabNav, Tabs, TextArea, TextAreaProps, TextField, Tooltip, TooltipProps } from '@radix-ui/themes';
1
+ export { AlertDialog, AspectRatio, Blockquote, BlockquoteProps, Box, BoxProps, Callout, CheckboxCards, Code, CodeProps, Container, ContainerProps, DataList, Dialog, Em, EmProps, Flex, FlexProps, Grid, GridProps, HoverCard, IconButton, IconButtonProps, Inset, InsetProps, Kbd, KbdProps, Popover, Progress, ProgressProps, Quote, QuoteProps, Radio, RadioCards, RadioGroup, RadioProps, Heading as RadixHeading, ScrollArea, ScrollAreaProps, Section, SectionProps, SegmentedControl, Select, Separator, SeparatorProps, Skeleton, SkeletonProps, Spinner, SpinnerProps, Strong, StrongProps, Switch, SwitchProps, TabNav, Tabs, TextArea, TextAreaProps, TextField, Tooltip, TooltipProps } from '@radix-ui/themes';
2
2
  export { Avatar, AvatarProps } from './avatar.js';
3
3
  export { Badge, BadgeProps } from './badge.js';
4
4
  export { Button, ButtonProps } from './button.js';
5
5
  export { Card, CardProps } from './card.js';
6
6
  export { Checkbox, CheckboxProps } from './check-box.js';
7
7
  export { CheckboxGroup } from './check-box-group.js';
8
+ export { ContentProps, DropdownMenu } from './dropdown-menu.js';
8
9
  export { Heading, HeadingProps } from './heading.js';
9
10
  export { Link, LinkProps } from './link.js';
10
11
  export { Typo, TypoProps } from './typo.js';
@@ -1,7 +1,25 @@
1
1
  import "../chunk-2ANGYYEV.js";
2
+ import {
3
+ TabNav
4
+ } from "../chunk-YJ7ZFOYL.js";
5
+ import {
6
+ Tabs
7
+ } from "../chunk-5ZITU5L7.js";
8
+ import {
9
+ TextArea
10
+ } from "../chunk-ILRUXI2E.js";
2
11
  import {
3
12
  TextField
4
13
  } from "../chunk-JPIZP2PZ.js";
14
+ import {
15
+ Section
16
+ } from "../chunk-MUNMDHRF.js";
17
+ import {
18
+ SegmentedControl
19
+ } from "../chunk-TVDKGMBI.js";
20
+ import {
21
+ Select
22
+ } from "../chunk-355MU6BH.js";
5
23
  import {
6
24
  Separator
7
25
  } from "../chunk-HYITAA4J.js";
@@ -18,14 +36,14 @@ import {
18
36
  Switch
19
37
  } from "../chunk-OYM4XCHQ.js";
20
38
  import {
21
- TabNav
22
- } from "../chunk-YJ7ZFOYL.js";
39
+ Pagination
40
+ } from "../chunk-FH5ZSMU2.js";
23
41
  import {
24
- Tabs
25
- } from "../chunk-5ZITU5L7.js";
42
+ Popover
43
+ } from "../chunk-5AVBYDPB.js";
26
44
  import {
27
- TextArea
28
- } from "../chunk-ILRUXI2E.js";
45
+ Progress
46
+ } from "../chunk-365QMK4D.js";
29
47
  import {
30
48
  Quote
31
49
  } from "../chunk-YO3BQW6S.js";
@@ -42,14 +60,14 @@ import {
42
60
  ScrollArea
43
61
  } from "../chunk-ZKZDVS7G.js";
44
62
  import {
45
- Section
46
- } from "../chunk-MUNMDHRF.js";
63
+ Grid
64
+ } from "../chunk-EGEQY3KT.js";
47
65
  import {
48
- SegmentedControl
49
- } from "../chunk-TVDKGMBI.js";
66
+ Heading
67
+ } from "../chunk-HLOY6BIP.js";
50
68
  import {
51
- Select
52
- } from "../chunk-355MU6BH.js";
69
+ HoverCard
70
+ } from "../chunk-O3T3TM3V.js";
53
71
  import {
54
72
  Inset
55
73
  } from "../chunk-XQOL7UBI.js";
@@ -60,14 +78,25 @@ import {
60
78
  Link
61
79
  } from "../chunk-XQOZWYUA.js";
62
80
  import {
63
- Pagination
64
- } from "../chunk-QGBUYEQN.js";
81
+ Dialog
82
+ } from "../chunk-P6B2PNYI.js";
65
83
  import {
66
- Popover
67
- } from "../chunk-5AVBYDPB.js";
84
+ Content,
85
+ Drawer,
86
+ Root,
87
+ Trigger
88
+ } from "../chunk-L46ZSIX4.js";
68
89
  import {
69
- Progress
70
- } from "../chunk-365QMK4D.js";
90
+ ToastContainer,
91
+ toast
92
+ } from "../chunk-NJ2U2TVS.js";
93
+ import "../chunk-7LEWTGAO.js";
94
+ import {
95
+ IconButton
96
+ } from "../chunk-O3DNDMV3.js";
97
+ import {
98
+ DropdownMenu
99
+ } from "../chunk-EIRUKSOW.js";
71
100
  import {
72
101
  EllipsisTooltip
73
102
  } from "../chunk-4IKPNQV5.js";
@@ -90,14 +119,14 @@ import {
90
119
  Form
91
120
  } from "../chunk-2CVXGGI5.js";
92
121
  import {
93
- Grid
94
- } from "../chunk-EGEQY3KT.js";
122
+ Card
123
+ } from "../chunk-CAIVA7UA.js";
95
124
  import {
96
- Heading
97
- } from "../chunk-HLOY6BIP.js";
125
+ CheckboxCards
126
+ } from "../chunk-MIMJ7LON.js";
98
127
  import {
99
- HoverCard
100
- } from "../chunk-O3T3TM3V.js";
128
+ CheckboxGroup
129
+ } from "../chunk-IQEEPHOY.js";
101
130
  import {
102
131
  Checkbox
103
132
  } from "../chunk-JEHDCZQU.js";
@@ -114,25 +143,14 @@ import {
114
143
  DataList
115
144
  } from "../chunk-VTJZMOSP.js";
116
145
  import {
117
- Dialog
118
- } from "../chunk-P6B2PNYI.js";
119
- import {
120
- Content,
121
- Drawer,
122
- Root,
123
- Trigger
124
- } from "../chunk-EWB2KOLO.js";
125
- import "../chunk-7LEWTGAO.js";
126
- import {
127
- ToastContainer,
128
- toast
129
- } from "../chunk-NJ2U2TVS.js";
146
+ AlertDialog
147
+ } from "../chunk-J242TTFH.js";
130
148
  import {
131
- IconButton
132
- } from "../chunk-O3DNDMV3.js";
149
+ AspectRatio
150
+ } from "../chunk-EAXUQEO5.js";
133
151
  import {
134
- DropdownMenu
135
- } from "../chunk-YTZSKMX3.js";
152
+ Avatar
153
+ } from "../chunk-CZEGRZBK.js";
136
154
  import {
137
155
  Badge
138
156
  } from "../chunk-ALOPZ54P.js";
@@ -148,25 +166,7 @@ import {
148
166
  import {
149
167
  Callout
150
168
  } from "../chunk-B6XJN6EC.js";
151
- import {
152
- Card
153
- } from "../chunk-CAIVA7UA.js";
154
- import {
155
- CheckboxCards
156
- } from "../chunk-MIMJ7LON.js";
157
- import {
158
- CheckboxGroup
159
- } from "../chunk-IQEEPHOY.js";
160
169
  import "../chunk-4UZQXJQO.js";
161
- import {
162
- AlertDialog
163
- } from "../chunk-J242TTFH.js";
164
- import {
165
- AspectRatio
166
- } from "../chunk-EAXUQEO5.js";
167
- import {
168
- Avatar
169
- } from "../chunk-CZEGRZBK.js";
170
170
  import "../chunk-N552FDTV.js";
171
171
  export {
172
172
  AlertDialog,
@@ -1,4 +1,4 @@
1
- import React__default from 'react';
1
+ import react__default from 'react';
2
2
 
3
3
  interface PaginationProps {
4
4
  /** 현재 선택된 페이지 */
@@ -10,6 +10,6 @@ interface PaginationProps {
10
10
  /** 전체 페이지의 수 */
11
11
  count?: number;
12
12
  }
13
- declare function Pagination(props: PaginationProps): React__default.ReactNode;
13
+ declare function Pagination(props: PaginationProps): react__default.ReactNode;
14
14
 
15
15
  export { Pagination, type PaginationProps };
@@ -1,4 +1,4 @@
1
- import React__default from 'react';
1
+ import react__default from 'react';
2
2
 
3
3
  interface PaginationProps {
4
4
  /** 현재 선택된 페이지 */
@@ -10,6 +10,6 @@ interface PaginationProps {
10
10
  /** 전체 페이지의 수 */
11
11
  count?: number;
12
12
  }
13
- declare function Pagination(props: PaginationProps): React__default.ReactNode;
13
+ declare function Pagination(props: PaginationProps): react__default.ReactNode;
14
14
 
15
15
  export { Pagination, type PaginationProps };
@@ -1,9 +1,9 @@
1
1
  import {
2
2
  Pagination
3
- } from "../chunk-QGBUYEQN.js";
3
+ } from "../chunk-FH5ZSMU2.js";
4
+ import "../chunk-O3DNDMV3.js";
4
5
  import "../chunk-O3XTRD7R.js";
5
6
  import "../chunk-25HMMI7R.js";
6
- import "../chunk-O3DNDMV3.js";
7
7
  import "../chunk-4UZQXJQO.js";
8
8
  import "../chunk-N552FDTV.js";
9
9
  export {
@@ -1,9 +1,9 @@
1
1
  import { TextProps } from '@radix-ui/themes';
2
- import React__default from 'react';
2
+ import react__default from 'react';
3
3
 
4
4
  type TypoProps = TextProps & {
5
5
  variant?: 'body' | 'caption' | 'subtitle';
6
6
  };
7
- declare const Typo: React__default.ForwardRefExoticComponent<TypoProps & React__default.RefAttributes<HTMLSpanElement>>;
7
+ declare const Typo: react__default.ForwardRefExoticComponent<TypoProps & react__default.RefAttributes<HTMLSpanElement>>;
8
8
 
9
9
  export { Typo, type TypoProps };
@@ -1,9 +1,9 @@
1
1
  import { TextProps } from '@radix-ui/themes';
2
- import React__default from 'react';
2
+ import react__default from 'react';
3
3
 
4
4
  type TypoProps = TextProps & {
5
5
  variant?: 'body' | 'caption' | 'subtitle';
6
6
  };
7
- declare const Typo: React__default.ForwardRefExoticComponent<TypoProps & React__default.RefAttributes<HTMLSpanElement>>;
7
+ declare const Typo: react__default.ForwardRefExoticComponent<TypoProps & react__default.RefAttributes<HTMLSpanElement>>;
8
8
 
9
9
  export { Typo, type TypoProps };
@@ -1,4 +1,4 @@
1
- import React__default from 'react';
1
+ import react__default from 'react';
2
2
 
3
3
  interface HorizontalBarChartProps {
4
4
  /** 100% 바가 뜻하는 전체 값 */
@@ -12,6 +12,6 @@ interface HorizontalBarChartProps {
12
12
  /** 바의 높이 */
13
13
  height?: number;
14
14
  }
15
- declare function HorizontalBarChart(props: HorizontalBarChartProps): React__default.ReactNode;
15
+ declare function HorizontalBarChart(props: HorizontalBarChartProps): react__default.ReactNode;
16
16
 
17
17
  export { HorizontalBarChart, type HorizontalBarChartProps };
@@ -1,4 +1,4 @@
1
- import React__default from 'react';
1
+ import react__default from 'react';
2
2
 
3
3
  interface HorizontalBarChartProps {
4
4
  /** 100% 바가 뜻하는 전체 값 */
@@ -12,6 +12,6 @@ interface HorizontalBarChartProps {
12
12
  /** 바의 높이 */
13
13
  height?: number;
14
14
  }
15
- declare function HorizontalBarChart(props: HorizontalBarChartProps): React__default.ReactNode;
15
+ declare function HorizontalBarChart(props: HorizontalBarChartProps): react__default.ReactNode;
16
16
 
17
17
  export { HorizontalBarChart, type HorizontalBarChartProps };
@@ -0,0 +1,59 @@
1
+ import {
2
+ Typo
3
+ } from "./chunk-O3XTRD7R.js";
4
+ import {
5
+ Flex
6
+ } from "./chunk-25HMMI7R.js";
7
+ import {
8
+ Button
9
+ } from "./chunk-AQX7DQLI.js";
10
+
11
+ // src/molecules/navigation.tsx
12
+ import { jsx, jsxs } from "react/jsx-runtime";
13
+ function Navigation({
14
+ items,
15
+ fontColor,
16
+ backgroundColor,
17
+ activeKey
18
+ }) {
19
+ return /* @__PURE__ */ jsx(
20
+ Flex,
21
+ {
22
+ direction: "column",
23
+ gap: "4",
24
+ pr: "3",
25
+ style: {
26
+ color: fontColor || "var(--white-a12)",
27
+ backgroundColor: backgroundColor || "var(--black-a12)"
28
+ },
29
+ children: items == null ? void 0 : items.map((item) => {
30
+ const { key, title, icon, itemRender, onClick, children } = item;
31
+ return /* @__PURE__ */ jsxs(Flex, { direction: "column", onClick, children: [
32
+ itemRender ? itemRender(item) : /* @__PURE__ */ jsxs(Flex, { align: "center", gap: "3", height: "36px", pl: "4", pr: "4", children: [
33
+ icon,
34
+ /* @__PURE__ */ jsx(Typo, { variant: "subtitle", children: title })
35
+ ] }),
36
+ children == null ? void 0 : children.map((menu) => {
37
+ return menu.itemRender ? menu.itemRender(menu) : /* @__PURE__ */ jsx(
38
+ Button,
39
+ {
40
+ className: `tipp-navigation-button ${activeKey === menu.key ? "active" : ""}`,
41
+ ml: "6",
42
+ onClick: menu.onClick,
43
+ size: "medium",
44
+ style: { color: "var(--white-a12)" },
45
+ children: menu.title
46
+ },
47
+ menu.key
48
+ );
49
+ })
50
+ ] }, key);
51
+ })
52
+ }
53
+ );
54
+ }
55
+
56
+ export {
57
+ Navigation
58
+ };
59
+ //# sourceMappingURL=chunk-46A3Q5FJ.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/molecules/navigation.tsx"],"sourcesContent":["import React from 'react';\nimport { Button, Flex, Typo } from '../atoms';\n\ninterface Item {\n itemRender?: (item: Item) => React.ReactNode;\n key: string;\n onClick?: () => void;\n title: string;\n icon?: React.ReactNode;\n children?: Item[];\n}\n\nexport interface NavigationProps {\n items?: Item[];\n fontColor?: string;\n backgroundColor?: string;\n activeKey?: string;\n}\n\nexport function Navigation({\n items,\n fontColor,\n backgroundColor,\n activeKey,\n}: NavigationProps): React.ReactNode {\n return (\n <Flex\n direction=\"column\"\n gap=\"4\"\n pr=\"3\"\n style={{\n color: fontColor || 'var(--white-a12)',\n backgroundColor: backgroundColor || 'var(--black-a12)',\n }}\n >\n {items?.map((item) => {\n const { key, title, icon, itemRender, onClick, children } = item;\n return (\n <Flex direction=\"column\" key={key} onClick={onClick}>\n {itemRender ? (\n itemRender(item)\n ) : (\n <Flex align=\"center\" gap=\"3\" height=\"36px\" pl=\"4\" pr=\"4\">\n {icon}\n <Typo variant=\"subtitle\">{title}</Typo>\n </Flex>\n )}\n {children?.map((menu) => {\n return menu.itemRender ? (\n menu.itemRender(menu)\n ) : (\n <Button\n className={`tipp-navigation-button ${activeKey === menu.key ? 'active' : ''}`}\n key={menu.key}\n ml=\"6\"\n onClick={menu.onClick}\n size=\"medium\"\n style={{ color: 'var(--white-a12)' }}\n >\n {menu.title}\n </Button>\n );\n })}\n </Flex>\n );\n })}\n </Flex>\n );\n}\n"],"mappings":";;;;;;;;;;;AA0Cc,SAEE,KAFF;AAvBP,SAAS,WAAW;AAAA,EACzB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,GAAqC;AACnC,SACE;AAAA,IAAC;AAAA;AAAA,MACC,WAAU;AAAA,MACV,KAAI;AAAA,MACJ,IAAG;AAAA,MACH,OAAO;AAAA,QACL,OAAO,aAAa;AAAA,QACpB,iBAAiB,mBAAmB;AAAA,MACtC;AAAA,MAEC,yCAAO,IAAI,CAAC,SAAS;AACpB,cAAM,EAAE,KAAK,OAAO,MAAM,YAAY,SAAS,SAAS,IAAI;AAC5D,eACE,qBAAC,QAAK,WAAU,UAAmB,SAChC;AAAA,uBACC,WAAW,IAAI,IAEf,qBAAC,QAAK,OAAM,UAAS,KAAI,KAAI,QAAO,QAAO,IAAG,KAAI,IAAG,KAClD;AAAA;AAAA,YACD,oBAAC,QAAK,SAAQ,YAAY,iBAAM;AAAA,aAClC;AAAA,UAED,qCAAU,IAAI,CAAC,SAAS;AACvB,mBAAO,KAAK,aACV,KAAK,WAAW,IAAI,IAEpB;AAAA,cAAC;AAAA;AAAA,gBACC,WAAW,0BAA0B,cAAc,KAAK,MAAM,WAAW,EAAE;AAAA,gBAE3E,IAAG;AAAA,gBACH,SAAS,KAAK;AAAA,gBACd,MAAK;AAAA,gBACL,OAAO,EAAE,OAAO,mBAAmB;AAAA,gBAElC,eAAK;AAAA;AAAA,cAND,KAAK;AAAA,YAOZ;AAAA,UAEJ;AAAA,aAxB4B,GAyB9B;AAAA,MAEJ;AAAA;AAAA,EACF;AAEJ;","names":[]}
@@ -0,0 +1,34 @@
1
+ import {
2
+ __objRest,
3
+ __spreadProps,
4
+ __spreadValues
5
+ } from "./chunk-N552FDTV.js";
6
+
7
+ // src/atoms/dropdown-menu.tsx
8
+ import { DropdownMenu as RadixDropdownMenu } from "@radix-ui/themes";
9
+ import { forwardRef, useMemo } from "react";
10
+ import { jsx } from "react/jsx-runtime";
11
+ var Content = forwardRef((props, ref) => {
12
+ const _a = props, { isNavigation, className } = _a, rest = __objRest(_a, ["isNavigation", "className"]);
13
+ const etcClassName = useMemo(() => {
14
+ return isNavigation ? "dropdown-navigation" : "";
15
+ }, [isNavigation]);
16
+ console.log({ isNavigation, etcClassName });
17
+ return /* @__PURE__ */ jsx(
18
+ RadixDropdownMenu.Content,
19
+ __spreadProps(__spreadValues({
20
+ ref
21
+ }, rest), {
22
+ className: `${className} ${etcClassName}`
23
+ })
24
+ );
25
+ });
26
+ Content.displayName = "DropdownMenu.Content";
27
+ var DropdownMenu = __spreadProps(__spreadValues({}, RadixDropdownMenu), {
28
+ Content
29
+ });
30
+
31
+ export {
32
+ DropdownMenu
33
+ };
34
+ //# sourceMappingURL=chunk-4AI7AKMF.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/atoms/dropdown-menu.tsx"],"sourcesContent":["import { DropdownMenu as RadixDropdownMenu } from '@radix-ui/themes';\nimport { forwardRef, useMemo } from 'react';\n\nexport type ContentProps = RadixDropdownMenu.ContentProps & {\n isNavigation?: boolean;\n};\n\nconst Content = forwardRef<HTMLDivElement, ContentProps>((props, ref) => {\n const { isNavigation, className, ...rest } = props;\n const etcClassName = useMemo(() => {\n return isNavigation ? 'dropdown-navigation' : '';\n }, [isNavigation]);\n console.log({ isNavigation, etcClassName });\n\n return (\n <RadixDropdownMenu.Content\n ref={ref}\n {...rest}\n className={`${className} ${etcClassName}`}\n />\n );\n});\n\nContent.displayName = 'DropdownMenu.Content';\n\nexport const DropdownMenu = {\n ...RadixDropdownMenu,\n Content,\n};\n"],"mappings":";;;;;;;AAAA,SAAS,gBAAgB,yBAAyB;AAClD,SAAS,YAAY,eAAe;AAchC;AARJ,IAAM,UAAU,WAAyC,CAAC,OAAO,QAAQ;AACvE,QAA6C,YAArC,gBAAc,UARxB,IAQ+C,IAAT,iBAAS,IAAT,CAA5B,gBAAc;AACtB,QAAM,eAAe,QAAQ,MAAM;AACjC,WAAO,eAAe,wBAAwB;AAAA,EAChD,GAAG,CAAC,YAAY,CAAC;AACjB,UAAQ,IAAI,EAAE,cAAc,aAAa,CAAC;AAE1C,SACE;AAAA,IAAC,kBAAkB;AAAA,IAAlB;AAAA,MACC;AAAA,OACI,OAFL;AAAA,MAGC,WAAW,GAAG,SAAS,IAAI,YAAY;AAAA;AAAA,EACzC;AAEJ,CAAC;AAED,QAAQ,cAAc;AAEf,IAAM,eAAe,iCACvB,oBADuB;AAAA,EAE1B;AACF;","names":[]}
@@ -0,0 +1,36 @@
1
+ import {
2
+ __objRest,
3
+ __spreadProps,
4
+ __spreadValues
5
+ } from "./chunk-N552FDTV.js";
6
+
7
+ // src/atoms/select.tsx
8
+ import { Select as RadixSelect } from "@radix-ui/themes";
9
+ import { forwardRef, useMemo } from "react";
10
+ import { jsx } from "react/jsx-runtime";
11
+ var Content = forwardRef(
12
+ (props, ref) => {
13
+ const _a = props, { isNavigation, className } = _a, rest = __objRest(_a, ["isNavigation", "className"]);
14
+ const etcClassName = useMemo(() => {
15
+ return isNavigation ? "select-navigation" : "";
16
+ }, [isNavigation]);
17
+ return /* @__PURE__ */ jsx(
18
+ RadixSelect.Content,
19
+ __spreadProps(__spreadValues({
20
+ ref
21
+ }, rest), {
22
+ className: `${className} ${etcClassName}`
23
+ })
24
+ );
25
+ }
26
+ );
27
+ Content.displayName = "Select.Content";
28
+ var Select = __spreadProps(__spreadValues({}, RadixSelect), {
29
+ Content
30
+ });
31
+
32
+ export {
33
+ Content,
34
+ Select
35
+ };
36
+ //# sourceMappingURL=chunk-4D6AW2AL.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/atoms/select.tsx"],"sourcesContent":["import { Select as RadixSelect } from '@radix-ui/themes';\nimport { forwardRef, useMemo } from 'react';\n\nexport type ContentProps = RadixSelect.ContentProps & {\n isNavigation?: boolean;\n};\n\nexport const Content = forwardRef<HTMLDivElement, ContentProps>(\n (props, ref) => {\n const { isNavigation, className, ...rest } = props;\n const etcClassName = useMemo(() => {\n return isNavigation ? 'select-navigation' : '';\n }, [isNavigation]);\n\n return (\n <RadixSelect.Content\n ref={ref}\n {...rest}\n className={`${className} ${etcClassName}`}\n />\n );\n }\n);\n\nContent.displayName = 'Select.Content';\n\nexport const Select = {\n ...RadixSelect,\n Content,\n};\n"],"mappings":";;;;;;;AAAA,SAAS,UAAU,mBAAmB;AACtC,SAAS,YAAY,eAAe;AAc9B;AARC,IAAM,UAAU;AAAA,EACrB,CAAC,OAAO,QAAQ;AACd,UAA6C,YAArC,gBAAc,UAT1B,IASiD,IAAT,iBAAS,IAAT,CAA5B,gBAAc;AACtB,UAAM,eAAe,QAAQ,MAAM;AACjC,aAAO,eAAe,sBAAsB;AAAA,IAC9C,GAAG,CAAC,YAAY,CAAC;AAEjB,WACE;AAAA,MAAC,YAAY;AAAA,MAAZ;AAAA,QACC;AAAA,SACI,OAFL;AAAA,QAGC,WAAW,GAAG,SAAS,IAAI,YAAY;AAAA;AAAA,IACzC;AAAA,EAEJ;AACF;AAEA,QAAQ,cAAc;AAEf,IAAM,SAAS,iCACjB,cADiB;AAAA,EAEpB;AACF;","names":[]}
@@ -0,0 +1,59 @@
1
+ import {
2
+ Flex
3
+ } from "./chunk-25HMMI7R.js";
4
+ import {
5
+ Typo
6
+ } from "./chunk-O3XTRD7R.js";
7
+ import {
8
+ Button
9
+ } from "./chunk-AQX7DQLI.js";
10
+
11
+ // src/molecules/navigation.tsx
12
+ import { jsx, jsxs } from "react/jsx-runtime";
13
+ function Navigation({
14
+ items,
15
+ fontColor,
16
+ backgroundColor,
17
+ activeKey
18
+ }) {
19
+ return /* @__PURE__ */ jsx(
20
+ Flex,
21
+ {
22
+ direction: "column",
23
+ gap: "4",
24
+ pr: "3",
25
+ style: {
26
+ color: fontColor || "var(--white-a12)",
27
+ backgroundColor: backgroundColor || "var(--black-a12)"
28
+ },
29
+ children: items == null ? void 0 : items.map((item) => {
30
+ const { key, title, icon, itemRender, onClick, children } = item;
31
+ return /* @__PURE__ */ jsxs(Flex, { direction: "column", onClick, children: [
32
+ itemRender ? itemRender(item) : /* @__PURE__ */ jsxs(Flex, { align: "center", gap: "3", height: "36px", pl: "4", pr: "4", children: [
33
+ icon,
34
+ /* @__PURE__ */ jsx(Typo, { variant: "subtitle", children: title })
35
+ ] }),
36
+ children == null ? void 0 : children.map((menu) => {
37
+ return menu.itemRender ? menu.itemRender(menu) : /* @__PURE__ */ jsx(
38
+ Button,
39
+ {
40
+ className: `tipp-navigation-button ${activeKey === menu.key ? "active" : ""}`,
41
+ ml: "6",
42
+ onClick: menu.onClick,
43
+ size: "large",
44
+ style: { color: "var(--white-a12)", height: "32px" },
45
+ children: menu.title
46
+ },
47
+ menu.key
48
+ );
49
+ })
50
+ ] }, key);
51
+ })
52
+ }
53
+ );
54
+ }
55
+
56
+ export {
57
+ Navigation
58
+ };
59
+ //# sourceMappingURL=chunk-4ZCLCSZJ.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/molecules/navigation.tsx"],"sourcesContent":["import React from 'react';\nimport { Button, Flex, Typo } from '../atoms';\n\ninterface Item {\n itemRender?: (item: Item) => React.ReactNode;\n key: string;\n onClick?: () => void;\n title: string;\n icon?: React.ReactNode;\n children?: Item[];\n}\n\nexport interface NavigationProps {\n items?: Item[];\n fontColor?: string;\n backgroundColor?: string;\n activeKey?: string;\n}\n\nexport function Navigation({\n items,\n fontColor,\n backgroundColor,\n activeKey,\n}: NavigationProps): React.ReactNode {\n return (\n <Flex\n direction=\"column\"\n gap=\"4\"\n pr=\"3\"\n style={{\n color: fontColor || 'var(--white-a12)',\n backgroundColor: backgroundColor || 'var(--black-a12)',\n }}\n >\n {items?.map((item) => {\n const { key, title, icon, itemRender, onClick, children } = item;\n return (\n <Flex direction=\"column\" key={key} onClick={onClick}>\n {itemRender ? (\n itemRender(item)\n ) : (\n <Flex align=\"center\" gap=\"3\" height=\"36px\" pl=\"4\" pr=\"4\">\n {icon}\n <Typo variant=\"subtitle\">{title}</Typo>\n </Flex>\n )}\n {children?.map((menu) => {\n return menu.itemRender ? (\n menu.itemRender(menu)\n ) : (\n <Button\n className={`tipp-navigation-button ${activeKey === menu.key ? 'active' : ''}`}\n key={menu.key}\n ml=\"6\"\n onClick={menu.onClick}\n size=\"large\"\n style={{ color: 'var(--white-a12)', height: '32px' }}\n >\n {menu.title}\n </Button>\n );\n })}\n </Flex>\n );\n })}\n </Flex>\n );\n}\n"],"mappings":";;;;;;;;;;;AA0Cc,SAEE,KAFF;AAvBP,SAAS,WAAW;AAAA,EACzB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,GAAqC;AACnC,SACE;AAAA,IAAC;AAAA;AAAA,MACC,WAAU;AAAA,MACV,KAAI;AAAA,MACJ,IAAG;AAAA,MACH,OAAO;AAAA,QACL,OAAO,aAAa;AAAA,QACpB,iBAAiB,mBAAmB;AAAA,MACtC;AAAA,MAEC,yCAAO,IAAI,CAAC,SAAS;AACpB,cAAM,EAAE,KAAK,OAAO,MAAM,YAAY,SAAS,SAAS,IAAI;AAC5D,eACE,qBAAC,QAAK,WAAU,UAAmB,SAChC;AAAA,uBACC,WAAW,IAAI,IAEf,qBAAC,QAAK,OAAM,UAAS,KAAI,KAAI,QAAO,QAAO,IAAG,KAAI,IAAG,KAClD;AAAA;AAAA,YACD,oBAAC,QAAK,SAAQ,YAAY,iBAAM;AAAA,aAClC;AAAA,UAED,qCAAU,IAAI,CAAC,SAAS;AACvB,mBAAO,KAAK,aACV,KAAK,WAAW,IAAI,IAEpB;AAAA,cAAC;AAAA;AAAA,gBACC,WAAW,0BAA0B,cAAc,KAAK,MAAM,WAAW,EAAE;AAAA,gBAE3E,IAAG;AAAA,gBACH,SAAS,KAAK;AAAA,gBACd,MAAK;AAAA,gBACL,OAAO,EAAE,OAAO,oBAAoB,QAAQ,OAAO;AAAA,gBAElD,eAAK;AAAA;AAAA,cAND,KAAK;AAAA,YAOZ;AAAA,UAEJ;AAAA,aAxB4B,GAyB9B;AAAA,MAEJ;AAAA;AAAA,EACF;AAEJ;","names":[]}
@@ -0,0 +1,119 @@
1
+ import {
2
+ TriangleArrowDownIcon
3
+ } from "./chunk-BSTJBBEX.js";
4
+ import {
5
+ TriangleArrowUpIcon
6
+ } from "./chunk-NDUKDKGB.js";
7
+ import {
8
+ Row
9
+ } from "./chunk-XHNYNSZZ.js";
10
+ import {
11
+ Flex
12
+ } from "./chunk-25HMMI7R.js";
13
+ import {
14
+ Typo
15
+ } from "./chunk-O3XTRD7R.js";
16
+
17
+ // src/molecules/expand-table/index.tsx
18
+ import {
19
+ flexRender,
20
+ getCoreRowModel,
21
+ useReactTable,
22
+ getSortedRowModel,
23
+ createColumnHelper
24
+ } from "@tanstack/react-table";
25
+ import { useMemo, useState } from "react";
26
+ import { jsx, jsxs } from "react/jsx-runtime";
27
+ function ExpandTable(props) {
28
+ const { data, columns, ExpandComp, placeholder, onRowClick } = props;
29
+ const [sorting, setSorting] = useState([]);
30
+ const { getRowModel, getHeaderGroups } = useReactTable({
31
+ data: data || [],
32
+ columns,
33
+ getCoreRowModel: getCoreRowModel(),
34
+ getSortedRowModel: getSortedRowModel(),
35
+ state: {
36
+ sorting
37
+ },
38
+ onSortingChange: setSorting
39
+ });
40
+ const gridColTemp = useMemo(() => {
41
+ return columns.map((col) => {
42
+ var _a;
43
+ if ((_a = col.meta) == null ? void 0 : _a.autoSize)
44
+ return "1fr";
45
+ return `${col.size || 150}px`;
46
+ }).join(" ");
47
+ }, [columns]);
48
+ const rowModels = getRowModel();
49
+ return /* @__PURE__ */ jsxs("div", { className: "expand-table", children: [
50
+ /* @__PURE__ */ jsx("div", { className: "thead", children: getHeaderGroups().map((headerGroup) => /* @__PURE__ */ jsx(
51
+ "div",
52
+ {
53
+ className: "tr",
54
+ style: { gridTemplateColumns: gridColTemp },
55
+ children: headerGroup.headers.map((header) => {
56
+ const sortable = header.column.getCanSort();
57
+ const sortedState = header.column.getIsSorted();
58
+ return /* @__PURE__ */ jsx("div", { className: "th", children: /* @__PURE__ */ jsxs(
59
+ "button",
60
+ {
61
+ onClick: header.column.getToggleSortingHandler(),
62
+ style: sortable ? { cursor: "pointer" } : void 0,
63
+ type: "button",
64
+ children: [
65
+ /* @__PURE__ */ jsx(Typo, { variant: "body", children: flexRender(
66
+ header.column.columnDef.header,
67
+ header.getContext()
68
+ ) }),
69
+ sortable ? /* @__PURE__ */ jsxs(
70
+ Flex,
71
+ {
72
+ direction: "column",
73
+ style: { marginLeft: "var(--space-2)" },
74
+ children: [
75
+ /* @__PURE__ */ jsx(
76
+ TriangleArrowUpIcon,
77
+ {
78
+ color: sortedState === "asc" ? "var(--iris-10)" : "var(--iris-6)"
79
+ }
80
+ ),
81
+ /* @__PURE__ */ jsx(
82
+ TriangleArrowDownIcon,
83
+ {
84
+ color: sortedState === "desc" ? "var(--iris-10)" : "var(--iris-6)"
85
+ }
86
+ )
87
+ ]
88
+ }
89
+ ) : null
90
+ ]
91
+ }
92
+ ) }, header.id);
93
+ })
94
+ },
95
+ headerGroup.id
96
+ )) }),
97
+ /* @__PURE__ */ jsxs("div", { className: "tbody", children: [
98
+ rowModels.rows.length === 0 && /* @__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
+ rowModels.rows.map((row) => {
100
+ return /* @__PURE__ */ jsx(
101
+ Row,
102
+ {
103
+ ExpandComp,
104
+ gridColTemp,
105
+ onRowClick,
106
+ row
107
+ },
108
+ `row_${row.id}`
109
+ );
110
+ })
111
+ ] })
112
+ ] });
113
+ }
114
+
115
+ export {
116
+ createColumnHelper,
117
+ ExpandTable
118
+ };
119
+ //# sourceMappingURL=chunk-6XEKRSH4.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} from '@tanstack/react-table';\nimport type { CSSProperties } from 'react';\nimport {\n flexRender,\n getCoreRowModel,\n useReactTable,\n getSortedRowModel,\n createColumnHelper,\n} from '@tanstack/react-table';\nimport React, { useMemo, useState } from 'react';\nimport { Flex, 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}\n\nexport function ExpandTable<Datum extends RowData>(\n props: ExpandTableProps<Datum>\n): React.ReactNode {\n const { data, columns, ExpandComp, placeholder, onRowClick } = props;\n\n const [sorting, setSorting] = useState<SortingState>([]);\n const { getRowModel, getHeaderGroups } = useReactTable({\n data: data || [],\n columns,\n getCoreRowModel: getCoreRowModel(),\n getSortedRowModel: getSortedRowModel(),\n state: {\n sorting,\n },\n onSortingChange: setSorting,\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 return (\n <div className=\"expand-table\">\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\n return (\n <div className=\"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 {/* 데이터가 없을 시 표시되는 노드 */}\n {rowModels.rows.length === 0 && (\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 {/* 행을 렌더하는 로직 */}\n {rowModels.rows.map((row) => {\n return (\n <Row\n ExpandComp={ExpandComp}\n gridColTemp={gridColTemp}\n key={`row_${row.id}`}\n onRowClick={onRowClick}\n row={row}\n />\n );\n })}\n </div>\n </div>\n );\n}\n"],"mappings":";;;;;;;;;;;;;;;;;AAOA;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACK;AACP,SAAgB,SAAS,gBAAgB;AAuErB,cAOE,YAPF;AAhDb,SAAS,YACd,OACiB;AACjB,QAAM,EAAE,MAAM,SAAS,YAAY,aAAa,WAAW,IAAI;AAE/D,QAAM,CAAC,SAAS,UAAU,IAAI,SAAuB,CAAC,CAAC;AACvD,QAAM,EAAE,aAAa,gBAAgB,IAAI,cAAc;AAAA,IACrD,MAAM,QAAQ,CAAC;AAAA,IACf;AAAA,IACA,iBAAiB,gBAAgB;AAAA,IACjC,mBAAmB,kBAAkB;AAAA,IACrC,OAAO;AAAA,MACL;AAAA,IACF;AAAA,IACA,iBAAiB;AAAA,EACnB,CAAC;AAED,QAAM,cAAc,QAAgB,MAAM;AACxC,WAAO,QACJ,IAAI,CAAC,QAAQ;AAxDpB;AAyDQ,WAAI,SAAI,SAAJ,mBAAU;AAAU,eAAO;AAC/B,aAAO,GAAG,IAAI,QAAQ,GAAG;AAAA,IAC3B,CAAC,EACA,KAAK,GAAG;AAAA,EACb,GAAG,CAAC,OAAO,CAAC;AAEZ,QAAM,YAAY,YAAY;AAE9B,SACE,qBAAC,SAAI,WAAU,gBACb;AAAA,wBAAC,SAAI,WAAU,SACZ,0BAAgB,EAAE,IAAI,CAAC,gBACtB;AAAA,MAAC;AAAA;AAAA,QACC,WAAU;AAAA,QAEV,OAAO,EAAE,qBAAqB,YAAY;AAAA,QAEzC,sBAAY,QAAQ,IAAI,CAAC,WAAW;AACnC,gBAAM,WAAW,OAAO,OAAO,WAAW;AAC1C,gBAAM,cAAc,OAAO,OAAO,YAAY;AAE9C,iBACE,oBAAC,SAAI,WAAU,MACb;AAAA,YAAC;AAAA;AAAA,cACC,SAAS,OAAO,OAAO,wBAAwB;AAAA,cAC/C,OAAO,WAAW,EAAE,QAAQ,UAAU,IAAI;AAAA,cAC1C,MAAK;AAAA,cAEL;AAAA,oCAAC,QAAK,SAAQ,QACX;AAAA,kBACC,OAAO,OAAO,UAAU;AAAA,kBACxB,OAAO,WAAW;AAAA,gBACpB,GACF;AAAA,gBACC,WACC;AAAA,kBAAC;AAAA;AAAA,oBACC,WAAU;AAAA,oBACV,OAAO,EAAE,YAAY,iBAAiB;AAAA,oBAEtC;AAAA;AAAA,wBAAC;AAAA;AAAA,0BACC,OACE,gBAAgB,QACZ,mBACA;AAAA;AAAA,sBAER;AAAA,sBACA;AAAA,wBAAC;AAAA;AAAA,0BACC,OACE,gBAAgB,SACZ,mBACA;AAAA;AAAA,sBAER;AAAA;AAAA;AAAA,gBACF,IACE;AAAA;AAAA;AAAA,UACN,KAjCuB,OAAO,EAkChC;AAAA,QAEJ,CAAC;AAAA;AAAA,MA5CI,YAAY;AAAA,IA6CnB,CACD,GACH;AAAA,IACA,qBAAC,SAAI,WAAU,SAEZ;AAAA,gBAAU,KAAK,WAAW,KACzB,oBAAC,SAAI,WAAU,MACb,8BAAC,QAAK,OAAM,UAAS,SAAQ,UAC1B,yBACC,oBAAC,QAAK,OAAM,QAAO,IAAG,KAAI,IAAG,KAAI,SAAQ,QAAO,+DAEhD,GAEJ,KAPsB,oBAQxB;AAAA,MAID,UAAU,KAAK,IAAI,CAAC,QAAQ;AAC3B,eACE;AAAA,UAAC;AAAA;AAAA,YACC;AAAA,YACA;AAAA,YAEA;AAAA,YACA;AAAA;AAAA,UAFK,OAAO,IAAI,EAAE;AAAA,QAGpB;AAAA,MAEJ,CAAC;AAAA,OACH;AAAA,KACF;AAEJ;","names":[]}