@elicecontents/content-ui 0.0.0 → 1.0.0

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 (122) hide show
  1. package/README.ko.md +117 -0
  2. package/README.md +117 -0
  3. package/cjs/_virtual/_rollupPluginBabelHelpers.js +8 -0
  4. package/cjs/components/button/Button.js +7 -3
  5. package/cjs/components/chat/Chat.js +4 -3
  6. package/cjs/components/dotted-pagination/DottedPagination.js +2 -1
  7. package/cjs/components/icon-button/IconButton.d.ts +5 -1
  8. package/cjs/components/icon-button/IconButton.js +13 -5
  9. package/cjs/components/index.d.ts +1 -0
  10. package/cjs/components/index.js +2 -0
  11. package/cjs/components/layout/Footer/LayoutFooterPaging.d.ts +7 -0
  12. package/cjs/components/layout/Footer/LayoutFooterPaging.js +46 -0
  13. package/cjs/components/layout/Footer/LayoutFooterSubmit.d.ts +3 -0
  14. package/cjs/components/layout/Footer/LayoutFooterSubmit.js +22 -0
  15. package/cjs/components/layout/Footer/index.d.ts +3 -0
  16. package/cjs/components/layout/Footer/index.js +9 -0
  17. package/cjs/components/layout/Header/LayoutHeaderSubTitle.d.ts +6 -0
  18. package/cjs/components/layout/Header/LayoutHeaderSubTitle.js +63 -0
  19. package/cjs/components/layout/Header/LayoutHeaderTitle.d.ts +7 -0
  20. package/cjs/components/layout/Header/LayoutHeaderTitle.js +43 -0
  21. package/cjs/components/layout/Header/index.d.ts +4 -0
  22. package/cjs/components/layout/Header/index.js +9 -0
  23. package/cjs/components/layout/Layout.d.ts +27 -12
  24. package/cjs/components/layout/Layout.js +97 -176
  25. package/cjs/components/layout/layout-pagination/LayoutPagination.d.ts +8 -0
  26. package/cjs/components/layout/layout-pagination/LayoutPagination.js +44 -0
  27. package/cjs/components/layout/layout-pagination/index.d.ts +2 -0
  28. package/cjs/components/layout/layout-pagination/index.js +7 -0
  29. package/cjs/components/pagination-button/PaginationButton.d.ts +9 -0
  30. package/cjs/components/pagination-button/PaginationButton.js +40 -0
  31. package/cjs/components/pagination-button/index.d.ts +1 -0
  32. package/cjs/components/pagination-button/index.js +7 -0
  33. package/cjs/components/selection/Selection.d.ts +2 -1
  34. package/cjs/components/selection/Selection.js +19 -14
  35. package/cjs/components/subtitle-button/SubtitleButton.d.ts +7 -0
  36. package/cjs/components/subtitle-button/SubtitleButton.js +45 -0
  37. package/cjs/components/subtitle-button/index.d.ts +1 -0
  38. package/cjs/components/subtitle-button/index.js +7 -0
  39. package/cjs/components/tokenColorTemporary.js +0 -4
  40. package/cjs/components/tooltip/Tooltip.js +1 -1
  41. package/cjs/hooks/index.d.ts +1 -0
  42. package/cjs/hooks/index.js +4 -0
  43. package/cjs/hooks/useAIDTMediaQuery.d.ts +8 -0
  44. package/cjs/hooks/useAIDTMediaQuery.js +24 -0
  45. package/cjs/icons/ArrowLeft.js +4 -4
  46. package/cjs/icons/ArrowRight.js +6 -13
  47. package/cjs/icons/MoreColumn.d.ts +3 -0
  48. package/cjs/icons/MoreColumn.js +28 -0
  49. package/cjs/icons/QuestionBubble.d.ts +3 -0
  50. package/cjs/icons/QuestionBubble.js +28 -0
  51. package/cjs/icons/SearchIcon.d.ts +3 -0
  52. package/cjs/icons/SearchIcon.js +28 -0
  53. package/cjs/icons/_types.d.ts +4 -0
  54. package/cjs/icons/index.d.ts +3 -0
  55. package/cjs/icons/index.js +6 -0
  56. package/cjs/index.d.ts +2 -0
  57. package/cjs/index.js +29 -0
  58. package/cjs/theme/createAIDTTheme.d.ts +17 -0
  59. package/cjs/tokens/breakpoints/breakpoints.d.ts +1 -1
  60. package/cjs/tokens/breakpoints/breakpoints.js +1 -1
  61. package/cjs/typography/typography.d.ts +24 -112
  62. package/cjs/typography/typography.js +54 -135
  63. package/es/_virtual/_rollupPluginBabelHelpers.js +8 -1
  64. package/es/components/button/Button.js +7 -3
  65. package/es/components/icon-button/IconButton.d.ts +5 -1
  66. package/es/components/icon-button/IconButton.js +13 -5
  67. package/es/components/index.d.ts +1 -0
  68. package/es/components/index.js +2 -1
  69. package/es/components/layout/Footer/LayoutFooterPaging.d.ts +7 -0
  70. package/es/components/layout/Footer/LayoutFooterPaging.js +38 -0
  71. package/es/components/layout/Footer/LayoutFooterSubmit.d.ts +3 -0
  72. package/es/components/layout/Footer/LayoutFooterSubmit.js +18 -0
  73. package/es/components/layout/Footer/index.d.ts +3 -0
  74. package/es/components/layout/Footer/index.js +2 -0
  75. package/es/components/layout/Header/LayoutHeaderSubTitle.d.ts +6 -0
  76. package/es/components/layout/Header/LayoutHeaderSubTitle.js +54 -0
  77. package/es/components/layout/Header/LayoutHeaderTitle.d.ts +7 -0
  78. package/es/components/layout/Header/LayoutHeaderTitle.js +35 -0
  79. package/es/components/layout/Header/index.d.ts +4 -0
  80. package/es/components/layout/Header/index.js +2 -0
  81. package/es/components/layout/Layout.d.ts +27 -12
  82. package/es/components/layout/Layout.js +99 -177
  83. package/es/components/layout/layout-pagination/LayoutPagination.d.ts +8 -0
  84. package/es/components/layout/layout-pagination/LayoutPagination.js +36 -0
  85. package/es/components/layout/layout-pagination/index.d.ts +2 -0
  86. package/es/components/layout/layout-pagination/index.js +1 -0
  87. package/es/components/pagination-button/PaginationButton.d.ts +9 -0
  88. package/es/components/pagination-button/PaginationButton.js +31 -0
  89. package/es/components/pagination-button/index.d.ts +1 -0
  90. package/es/components/pagination-button/index.js +1 -0
  91. package/es/components/selection/Selection.d.ts +2 -1
  92. package/es/components/selection/Selection.js +16 -12
  93. package/es/components/subtitle-button/SubtitleButton.d.ts +7 -0
  94. package/es/components/subtitle-button/SubtitleButton.js +41 -0
  95. package/es/components/subtitle-button/index.d.ts +1 -0
  96. package/es/components/subtitle-button/index.js +1 -0
  97. package/es/components/tokenColorTemporary.js +1 -3
  98. package/es/hooks/index.d.ts +1 -0
  99. package/es/hooks/index.js +1 -0
  100. package/es/hooks/useAIDTMediaQuery.d.ts +8 -0
  101. package/es/hooks/useAIDTMediaQuery.js +20 -0
  102. package/es/icons/ArrowLeft.js +4 -4
  103. package/es/icons/ArrowRight.js +6 -13
  104. package/es/icons/MoreColumn.d.ts +3 -0
  105. package/es/icons/MoreColumn.js +24 -0
  106. package/es/icons/QuestionBubble.d.ts +3 -0
  107. package/es/icons/QuestionBubble.js +24 -0
  108. package/es/icons/SearchIcon.d.ts +3 -0
  109. package/es/icons/SearchIcon.js +24 -0
  110. package/es/icons/_types.d.ts +4 -0
  111. package/es/icons/index.d.ts +3 -0
  112. package/es/icons/index.js +3 -0
  113. package/es/index.d.ts +2 -0
  114. package/es/index.js +14 -0
  115. package/es/theme/createAIDTTheme.d.ts +17 -0
  116. package/es/tokens/breakpoints/breakpoints.d.ts +1 -1
  117. package/es/tokens/breakpoints/breakpoints.js +1 -1
  118. package/es/typography/typography.d.ts +24 -112
  119. package/es/typography/typography.js +54 -135
  120. package/package.json +2 -1
  121. package/cjs/components/layout/bg_pattern.png.js +0 -7
  122. package/es/components/layout/bg_pattern.png.js +0 -3
@@ -1,16 +1,31 @@
1
- import type { ReactNode } from 'react';
1
+ import React from "react";
2
2
  export interface EliceLayoutProps {
3
- levelKey?: 'elementary' | 'middle' | 'high';
4
- title: string;
5
- children: ReactNode;
6
- sideChildren?: ReactNode;
7
- currentPage: number;
8
- totalPage: number;
9
- onReset?: VoidFunction;
10
- onPrev?: VoidFunction;
11
- onNext?: VoidFunction;
12
- allowPre?: boolean;
3
+ children: React.ReactNode;
4
+ onPrev?: () => void;
5
+ onNext?: () => void;
6
+ allowPrev?: boolean;
13
7
  allowNext?: boolean;
14
8
  }
15
- declare const EliceLayout: (props: EliceLayoutProps) => import("react/jsx-runtime").JSX.Element;
9
+ declare const EliceLayout: (({ children, onPrev, onNext, allowPrev, allowNext }: EliceLayoutProps) => import("react/jsx-runtime").JSX.Element) & {
10
+ HeaderContainer: ({ children, height }: {
11
+ children: React.ReactNode;
12
+ height?: string | undefined;
13
+ }) => import("react/jsx-runtime").JSX.Element;
14
+ HeaderTitle: ({ children, titleComponent }: import("./Header").LayoutHeaderTitleProps) => JSX.Element;
15
+ HeaderSubTitle: ({ children }: import("./Header").LayoutHeaderSubTitleProps) => JSX.Element;
16
+ Subtitle: ({ children, height }: {
17
+ children: React.ReactNode;
18
+ height?: string | undefined;
19
+ }) => import("react/jsx-runtime").JSX.Element;
20
+ Content: ({ children, height }: {
21
+ children: React.ReactNode;
22
+ height?: string | undefined;
23
+ }) => import("react/jsx-runtime").JSX.Element;
24
+ FooterContainer: ({ children, height }: {
25
+ children: React.ReactNode;
26
+ height?: string | undefined;
27
+ }) => import("react/jsx-runtime").JSX.Element;
28
+ FooterPaging: React.FC<import("./Footer").LayoutFooterPagingProps>;
29
+ FooterSubmit: React.FC<{}>;
30
+ };
16
31
  export default EliceLayout;
@@ -4,194 +4,115 @@ Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var _styled = require('@emotion/styled/base');
6
6
  var jsxRuntime = require('react/jsx-runtime');
7
- var reactUse = require('react-use');
8
- var LoopIcon = require('@mui/icons-material/Loop');
9
7
  var material = require('@mui/material');
10
- var tokenColorTemporary = require('../tokenColorTemporary.js');
11
- var bg_pattern = require('./bg_pattern.png.js');
12
- var ArrowLeft = require('../../icons/ArrowLeft.js');
13
- var ArrowRight = require('../../icons/ArrowRight.js');
8
+ var useAIDTMediaQuery = require('../../hooks/useAIDTMediaQuery.js');
9
+ var LayoutPagination = require('./layout-pagination/LayoutPagination.js');
10
+ var LayoutHeaderSubTitle = require('./Header/LayoutHeaderSubTitle.js');
11
+ var LayoutHeaderTitle = require('./Header/LayoutHeaderTitle.js');
12
+ var LayoutFooterPaging = require('./Footer/LayoutFooterPaging.js');
13
+ var LayoutFooterSubmit = require('./Footer/LayoutFooterSubmit.js');
14
14
 
15
15
  function _interopDefaultCompat (e) { return e && typeof e === 'object' && 'default' in e ? e : { default: e }; }
16
16
 
17
17
  var _styled__default = /*#__PURE__*/_interopDefaultCompat(_styled);
18
- var LoopIcon__default = /*#__PURE__*/_interopDefaultCompat(LoopIcon);
19
18
 
20
- function _EMOTION_STRINGIFIED_CSS_ERROR__() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
21
- var StyledContainer = /*#__PURE__*/_styled__default.default(material.Stack, {
22
- target: "efnp08i6"
23
- })("production" === "production" ? {
24
- name: "14skuem",
25
- styles: "display:flex;flex-direction:column;height:100%;width:100%;min-height:10rem;max-height:calc(100vh - 3.5rem);box-sizing:border-box;position:relative;padding:1.5rem 3.125rem"
26
- } : {
27
- name: "14skuem",
28
- styles: "display:flex;flex-direction:column;height:100%;width:100%;min-height:10rem;max-height:calc(100vh - 3.5rem);box-sizing:border-box;position:relative;padding:1.5rem 3.125rem",
29
- toString: _EMOTION_STRINGIFIED_CSS_ERROR__
30
- });
31
- var StyledContentContainer = /*#__PURE__*/_styled__default.default(material.Stack, {
32
- target: "efnp08i5"
33
- })("production" === "production" ? {
34
- name: "1p0a3is",
35
- styles: "display:flex;flex-direction:column;flex-grow:1;gap:0px;position:relative;z-index:2;border-radius:2rem;background-color:rgb(255, 255, 255);overflow:hidden"
36
- } : {
37
- name: "1p0a3is",
38
- styles: "display:flex;flex-direction:column;flex-grow:1;gap:0px;position:relative;z-index:2;border-radius:2rem;background-color:rgb(255, 255, 255);overflow:hidden",
39
- toString: _EMOTION_STRINGIFIED_CSS_ERROR__
40
- });
41
- var StyledTitleContainer = /*#__PURE__*/_styled__default.default(material.Stack, {
19
+ var MainContainer = /*#__PURE__*/_styled__default.default(material.Stack, {
42
20
  target: "efnp08i4"
43
- })("background-color:", function (props) {
44
- return props.backgroundColor ? props.backgroundColor : 'rgb(93, 107, 179)';
45
- }, ";z-index:500;flex-shrink:0;height:4.625rem;width:fit-content;min-width:20.875rem;position:relative;top:auto;left:3.125rem;border-radius:0px 0px 1.625rem 1.625rem;padding-top:1rem;box-sizing:border-box;");
46
- var StyledTitle = /*#__PURE__*/_styled__default.default(material.Typography, {
21
+ })("width:100%;height:100%;background:#fff;padding:", function (_ref) {
22
+ var isMiniTablet = _ref.isMiniTablet;
23
+ return isMiniTablet ? "0 20px" : "0 40px";
24
+ }, ";box-sizing:border-box;position:relative;");
25
+ var _HeaderContainer = /*#__PURE__*/_styled__default.default(material.Stack, {
47
26
  target: "efnp08i3"
48
- })("production" === "production" ? {
49
- name: "1gsf9d8",
50
- styles: "border-top:0.125rem dashed rgb(255, 255, 255);height:100%;min-width:100%;text-align:center;font-size:1.375rem;font-weight:700;color:rgb(255, 255, 255);display:flex;align-items:center;justify-content:center"
51
- } : {
52
- name: "1gsf9d8",
53
- styles: "border-top:0.125rem dashed rgb(255, 255, 255);height:100%;min-width:100%;text-align:center;font-size:1.375rem;font-weight:700;color:rgb(255, 255, 255);display:flex;align-items:center;justify-content:center",
54
- toString: _EMOTION_STRINGIFIED_CSS_ERROR__
55
- });
56
- var StyledScrollBarStack = /*#__PURE__*/_styled__default.default(material.Stack, {
27
+ })("height:", function (_ref2) {
28
+ var height = _ref2.height;
29
+ return height || "74px";
30
+ }, ";width:100%;background:#fff;justify-content:space-between;flex-direction:row;align-items:center;");
31
+ var SubtitleContainer = /*#__PURE__*/_styled__default.default(material.Stack, {
57
32
  target: "efnp08i2"
58
- })("flex-grow:1;position:relative;max-height:100%;overflow-y:scroll;box-sizing:border-box;::-webkit-scrollbar{width:0.5rem;}::-webkit-scrollbar-track{background:", tokenColorTemporary.gray200Color, ";border-radius:0.5rem;}::-webkit-scrollbar-thumb{background:", tokenColorTemporary.main300Color, ";border-radius:0.5rem;}::-webkit-scrollbar-thumb:hover{background:", tokenColorTemporary.main400Color, ";}");
59
- var StyledStepSwitcherContainerStack = /*#__PURE__*/_styled__default.default(material.Stack, {
33
+ })("height:", function (_ref3) {
34
+ var height = _ref3.height;
35
+ return height || "80px";
36
+ }, ";width:100%;padding:20px 40px;background-color:#f7f7f7;margin-top:18px;margin-bottom:14px;display:flex;align-items:center;");
37
+ var ContentContainer = /*#__PURE__*/_styled__default.default(material.Stack, {
60
38
  target: "efnp08i1"
61
- })("production" === "production" ? {
62
- name: "8mh45e",
63
- styles: "flex-direction:row;width:100%;height:4.25rem;justify-content:space-between;align-items:center;padding-left:1.5rem;padding-right:1.5rem;box-sizing:border-box;flex-shrink:0"
64
- } : {
65
- name: "8mh45e",
66
- styles: "flex-direction:row;width:100%;height:4.25rem;justify-content:space-between;align-items:center;padding-left:1.5rem;padding-right:1.5rem;box-sizing:border-box;flex-shrink:0",
67
- toString: _EMOTION_STRINGIFIED_CSS_ERROR__
68
- });
69
- var StyledSwitchStepButton = /*#__PURE__*/_styled__default.default(material.Typography, {
39
+ })("height:", function (_ref4) {
40
+ var height = _ref4.height;
41
+ return height || "100%";
42
+ }, ";width:100%;background-color:#fff;");
43
+ var _FooterContainer = /*#__PURE__*/_styled__default.default(material.Stack, {
70
44
  target: "efnp08i0"
71
- })("production" === "production" ? {
72
- name: "9f748q",
73
- styles: "cursor:pointer;font-size:1.625rem;font-weight:700;height:2.5rem;display:flex;align-items:center"
74
- } : {
75
- name: "9f748q",
76
- styles: "cursor:pointer;font-size:1.625rem;font-weight:700;height:2.5rem;display:flex;align-items:center",
77
- toString: _EMOTION_STRINGIFIED_CSS_ERROR__
78
- });
79
- var EliceLayout = function EliceLayout(props) {
80
- var _a;
81
- var _props$levelKey = props.levelKey,
82
- levelKey = _props$levelKey === void 0 ? 'middle' : _props$levelKey,
83
- children = props.children,
84
- sideChildren = props.sideChildren,
85
- _props$title = props.title,
86
- title = _props$title === void 0 ? 'The title' : _props$title,
87
- currentPage = props.currentPage,
88
- totalPage = props.totalPage,
89
- allowNext = props.allowNext,
90
- allowPre = props.allowPre,
91
- onNext = props.onNext,
92
- onPrev = props.onPrev,
93
- onReset = props.onReset;
45
+ })("height:", function (_ref5) {
46
+ var height = _ref5.height;
47
+ return height || "92px";
48
+ }, ";width:100%;background:#fff;padding:18px 0;align-items:center;justify-content:space-between;flex-direction:row;");
49
+ var EliceLayout = Object.assign(function (_ref6) {
50
+ var children = _ref6.children,
51
+ onPrev = _ref6.onPrev,
52
+ onNext = _ref6.onNext,
53
+ allowPrev = _ref6.allowPrev,
54
+ allowNext = _ref6.allowNext;
94
55
  var theme = material.useTheme();
95
- var renderBgColorByLevelKey = function renderBgColorByLevelKey() {
96
- if (levelKey === 'elementary') {
97
- return tokenColorTemporary.KeyElementaryBg;
98
- } else if (levelKey === 'middle') {
99
- return tokenColorTemporary.KeyMiddleBg;
100
- } else {
101
- return tokenColorTemporary.KeyHighBg;
102
- }
103
- };
104
- reactUse.useIsomorphicLayoutEffect(function () {
105
- document.documentElement.style.fontSize = '16px';
106
- }, []);
107
- return jsxRuntime.jsx(StyledContainer, {
108
- style: {
109
- background: "url(".concat(bg_pattern.default, ")\n 100vw top repeat,\n ").concat((_a = theme.palette.background["default"]) !== null && _a !== void 0 ? _a : renderBgColorByLevelKey(), " left top repeat")
110
- },
111
- children: jsxRuntime.jsxs(StyledContentContainer, {
112
- children: [jsxRuntime.jsx(StyledTitleContainer, {
113
- backgroundColor: theme.palette.primary.main,
114
- children: jsxRuntime.jsx(StyledTitle, {
115
- children: title
116
- })
117
- }), !!onReset && jsxRuntime.jsx(material.Stack, {
118
- style: {
119
- position: 'absolute',
120
- top: 0,
121
- right: 0,
122
- height: '3.5rem',
123
- width: '3.5rem',
124
- transform: 'scaleX(-1)'
125
- },
126
- alignItems: "center",
127
- justifyContent: "center",
128
- children: jsxRuntime.jsx(LoopIcon__default.default, {
129
- onClick: onReset,
130
- style: {
131
- transform: 'rotate(135deg)',
132
- color: tokenColorTemporary.secondaryColor,
133
- cursor: 'pointer'
134
- }
135
- })
136
- }), jsxRuntime.jsxs(material.Stack, {
137
- direction: "row",
138
- gap: "2rem",
139
- width: "100%",
140
- padding: "0px 3.125rem",
141
- margin: "2rem 0px 1.625rem",
142
- boxSizing: "border-box",
143
- flexGrow: 1,
144
- overflow: "hidden",
145
- children: [jsxRuntime.jsx(StyledScrollBarStack, {
146
- children: sideChildren
147
- }), jsxRuntime.jsx(StyledScrollBarStack, {
148
- children: children
149
- })]
150
- }), jsxRuntime.jsxs(StyledStepSwitcherContainerStack, {
151
- children: [jsxRuntime.jsxs(StyledSwitchStepButton, {
152
- color: allowPre ? '#0A379B' : '#8F8F8F',
153
- onClick: function onClick() {
154
- if (!allowPre || !onPrev) return;
155
- onPrev();
156
- },
157
- children: [jsxRuntime.jsx(ArrowLeft.default, {
158
- size: 24
159
- }), '이전']
160
- }), jsxRuntime.jsxs(material.Stack, {
161
- direction: "row",
162
- gap: 0,
163
- alignItems: "center",
164
- children: [jsxRuntime.jsx(material.Typography, {
165
- color: "#5D6BB3",
166
- fontSize: "2rem",
167
- fontWeight: 900,
168
- children: currentPage
169
- }), jsxRuntime.jsx(material.Stack, {
170
- style: {
171
- border: '0.125rem solid #D8D8E2',
172
- width: '2rem',
173
- height: 0,
174
- transform: 'rotate(-69deg)'
175
- }
176
- }), jsxRuntime.jsx(material.Typography, {
177
- color: "#D8D8E2",
178
- fontSize: "2rem",
179
- fontWeight: 900,
180
- children: totalPage
181
- })]
182
- }), jsxRuntime.jsxs(StyledSwitchStepButton, {
183
- color: allowNext ? '#0A379B' : '#8F8F8F',
184
- onClick: function onClick() {
185
- if (!allowNext || !onNext) return;
186
- onNext();
187
- },
188
- children: ['다음', jsxRuntime.jsx(ArrowRight.default, {
189
- size: 24
190
- })]
191
- })]
192
- })]
193
- })
56
+ var _useAIDTMediaQuery = useAIDTMediaQuery.default(),
57
+ isMiniTablet = _useAIDTMediaQuery.isMiniTablet;
58
+ return jsxRuntime.jsxs(MainContainer, {
59
+ bgColor: theme.palette.background["default"],
60
+ isMiniTablet: isMiniTablet,
61
+ children: [jsxRuntime.jsx(LayoutPagination.default, {
62
+ onPrev: onPrev,
63
+ onNext: onNext,
64
+ allowPrev: allowPrev,
65
+ allowNext: allowNext
66
+ }), children]
194
67
  });
195
- };
68
+ }, {
69
+ // ✅ 헤더 height 조절 가능
70
+ HeaderContainer: function HeaderContainer(_ref7) {
71
+ var children = _ref7.children,
72
+ height = _ref7.height;
73
+ return jsxRuntime.jsx(_HeaderContainer, {
74
+ height: height,
75
+ children: children
76
+ });
77
+ },
78
+ HeaderTitle: LayoutHeaderTitle.default,
79
+ HeaderSubTitle: LayoutHeaderSubTitle.default,
80
+ // ✅ 서브타이틀 height 조절 가능
81
+ Subtitle: function Subtitle(_ref8) {
82
+ var children = _ref8.children,
83
+ height = _ref8.height;
84
+ return jsxRuntime.jsx(SubtitleContainer, {
85
+ height: height,
86
+ children: children
87
+ });
88
+ },
89
+ // ✅ Content height 조절 가능
90
+ Content: function Content(_ref9) {
91
+ var children = _ref9.children,
92
+ height = _ref9.height;
93
+ var _useAIDTMediaQuery2 = useAIDTMediaQuery.default(),
94
+ isMobile = _useAIDTMediaQuery2.isMobile,
95
+ isMiniTablet = _useAIDTMediaQuery2.isMiniTablet,
96
+ isTablet = _useAIDTMediaQuery2.isTablet,
97
+ isNotebook = _useAIDTMediaQuery2.isNotebook;
98
+ // ✅ 화면 크기에 따라 기본 Content 높이 설정 (props가 없을 경우)
99
+ var defaultHeight = isMobile ? "473px" : isMiniTablet ? "354px" : isTablet ? "410px" : isNotebook ? "510px" : "610px";
100
+ return jsxRuntime.jsx(ContentContainer, {
101
+ height: height || defaultHeight,
102
+ children: children
103
+ });
104
+ },
105
+ // ✅ 푸터 height 조절 가능
106
+ FooterContainer: function FooterContainer(_ref10) {
107
+ var children = _ref10.children,
108
+ height = _ref10.height;
109
+ return jsxRuntime.jsx(_FooterContainer, {
110
+ height: height,
111
+ children: children
112
+ });
113
+ },
114
+ FooterPaging: LayoutFooterPaging.default,
115
+ FooterSubmit: LayoutFooterSubmit.default
116
+ });
196
117
 
197
118
  exports.default = EliceLayout;
@@ -0,0 +1,8 @@
1
+ export interface LayoutPaginationProps {
2
+ onPrev?: () => void;
3
+ onNext?: () => void;
4
+ allowPrev?: boolean;
5
+ allowNext?: boolean;
6
+ }
7
+ declare const LayoutPagination: ({ onPrev, onNext, allowPrev, allowNext, }: LayoutPaginationProps) => JSX.Element;
8
+ export default LayoutPagination;
@@ -0,0 +1,44 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var _styled = require('@emotion/styled/base');
6
+ var jsxRuntime = require('react/jsx-runtime');
7
+ var PaginationButton = require('../../pagination-button/PaginationButton.js');
8
+
9
+ function _interopDefaultCompat (e) { return e && typeof e === 'object' && 'default' in e ? e : { default: e }; }
10
+
11
+ var _styled__default = /*#__PURE__*/_interopDefaultCompat(_styled);
12
+
13
+ function _EMOTION_STRINGIFIED_CSS_ERROR__() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
14
+ var PaginationWrapper = /*#__PURE__*/_styled__default.default("div", {
15
+ target: "e8oep9n0"
16
+ })("production" === "production" ? {
17
+ name: "ekcpux",
18
+ styles: "position:absolute;top:50%;left:10px;width:calc(100% - 20px);display:flex;justify-content:space-between;align-items:center;transform:translateY(-50%)"
19
+ } : {
20
+ name: "ekcpux",
21
+ styles: "position:absolute;top:50%;left:10px;width:calc(100% - 20px);display:flex;justify-content:space-between;align-items:center;transform:translateY(-50%)",
22
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__
23
+ });
24
+ var LayoutPagination = function LayoutPagination(_ref) {
25
+ var onPrev = _ref.onPrev,
26
+ onNext = _ref.onNext,
27
+ _ref$allowPrev = _ref.allowPrev,
28
+ allowPrev = _ref$allowPrev === void 0 ? true : _ref$allowPrev,
29
+ _ref$allowNext = _ref.allowNext,
30
+ allowNext = _ref$allowNext === void 0 ? true : _ref$allowNext;
31
+ return jsxRuntime.jsxs(PaginationWrapper, {
32
+ children: [jsxRuntime.jsx(PaginationButton.default, {
33
+ left: true,
34
+ onClick: onPrev,
35
+ disabled: !allowPrev
36
+ }), jsxRuntime.jsx(PaginationButton.default, {
37
+ right: true,
38
+ onClick: onNext,
39
+ disabled: !allowNext
40
+ })]
41
+ });
42
+ };
43
+
44
+ exports.default = LayoutPagination;
@@ -0,0 +1,2 @@
1
+ export { default as LayoutPagination } from './LayoutPagination';
2
+ export type { LayoutPaginationProps } from './LayoutPagination';
@@ -0,0 +1,7 @@
1
+ 'use strict';
2
+
3
+ var LayoutPagination = require('./LayoutPagination.js');
4
+
5
+
6
+
7
+ exports.LayoutPagination = LayoutPagination.default;
@@ -0,0 +1,9 @@
1
+ import React from "react";
2
+ interface PaginationButtonProps {
3
+ left?: boolean;
4
+ right?: boolean;
5
+ onClick?: () => void;
6
+ disabled?: boolean;
7
+ }
8
+ declare const PaginationButton: React.FC<PaginationButtonProps>;
9
+ export default PaginationButton;
@@ -0,0 +1,40 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var _styled = require('@emotion/styled/base');
6
+ var jsxRuntime = require('react/jsx-runtime');
7
+ var ArrowLeft = require('../../icons/ArrowLeft.js');
8
+ var ArrowRight = require('../../icons/ArrowRight.js');
9
+ require('tslib');
10
+
11
+ function _interopDefaultCompat (e) { return e && typeof e === 'object' && 'default' in e ? e : { default: e }; }
12
+
13
+ var _styled__default = /*#__PURE__*/_interopDefaultCompat(_styled);
14
+
15
+ var Button = /*#__PURE__*/_styled__default.default("button", {
16
+ target: "e16dnw7i0"
17
+ })("width:60px;height:60px;display:flex;align-items:center;justify-content:center;border:none;background-color:", function (_ref) {
18
+ var disabled = _ref.disabled;
19
+ return disabled ? "#ddd" : "#fff";
20
+ }, ";border-radius:40px;box-shadow:0px 0px 1px 0px rgba(0, 0, 0, 0.40),0px 8px 10px 0px rgba(0, 0, 0, 0.05),0px 8px 30px 0px rgba(0, 0, 0, 0.12);border-radius:40px;cursor:", function (_ref2) {
21
+ var disabled = _ref2.disabled;
22
+ return disabled ? "not-allowed" : "pointer";
23
+ }, ";&:hover{background-color:", function (_ref3) {
24
+ var disabled = _ref3.disabled;
25
+ return disabled ? "#ddd" : "#e0e0e0";
26
+ }, ";}");
27
+ var PaginationButton = function PaginationButton(_ref4) {
28
+ var left = _ref4.left,
29
+ right = _ref4.right,
30
+ onClick = _ref4.onClick,
31
+ _ref4$disabled = _ref4.disabled,
32
+ disabled = _ref4$disabled === void 0 ? false : _ref4$disabled;
33
+ return jsxRuntime.jsxs(Button, {
34
+ onClick: onClick,
35
+ disabled: disabled,
36
+ children: [left && jsxRuntime.jsx(ArrowLeft.default, {}), right && jsxRuntime.jsx(ArrowRight.default, {})]
37
+ });
38
+ };
39
+
40
+ exports.default = PaginationButton;
@@ -0,0 +1 @@
1
+ export { default as PaginationButton } from './PaginationButton';
@@ -0,0 +1,7 @@
1
+ 'use strict';
2
+
3
+ var PaginationButton = require('./PaginationButton.js');
4
+
5
+
6
+
7
+ exports.PaginationButton = PaginationButton.default;
@@ -8,6 +8,7 @@ export interface EliceSelectionProps extends ToggleButtonGroupProps {
8
8
  }[];
9
9
  value: string[];
10
10
  setValue: Dispatch<SetStateAction<string[]>>;
11
+ limitSelectCount?: number;
11
12
  }
12
- declare const EliceSelection: ({ type, options, value, setValue, orientation, disabled, }: EliceSelectionProps) => import("react/jsx-runtime").JSX.Element;
13
+ declare const EliceSelection: ({ type, options, value, setValue, orientation, disabled, limitSelectCount, }: EliceSelectionProps) => import("react/jsx-runtime").JSX.Element;
13
14
  export default EliceSelection;
@@ -2,14 +2,16 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
+ var _rollupPluginBabelHelpers = require('../../_virtual/_rollupPluginBabelHelpers.js');
5
6
  var _styled = require('@emotion/styled/base');
6
7
  var jsxRuntime = require('react/jsx-runtime');
7
8
  var material = require('@mui/material');
8
- var tokenColorTemporary = require('../tokenColorTemporary.js');
9
+ require('tslib');
9
10
  var SelectedCheckbox = require('../../icons/SelectedCheckbox.js');
10
- var UnselectedCheckbox = require('../../icons/UnselectedCheckbox.js');
11
11
  var SelectedRadio = require('../../icons/SelectedRadio.js');
12
+ var UnselectedCheckbox = require('../../icons/UnselectedCheckbox.js');
12
13
  var UnselectedRadio = require('../../icons/UnselectedRadio.js');
14
+ var tokenColorTemporary = require('../tokenColorTemporary.js');
13
15
 
14
16
  function _interopDefaultCompat (e) { return e && typeof e === 'object' && 'default' in e ? e : { default: e }; }
15
17
 
@@ -33,23 +35,26 @@ var EliceSelection = function EliceSelection(_ref) {
33
35
  setValue = _ref.setValue,
34
36
  _ref$orientation = _ref.orientation,
35
37
  orientation = _ref$orientation === void 0 ? 'vertical' : _ref$orientation,
36
- disabled = _ref.disabled;
38
+ disabled = _ref.disabled,
39
+ _ref$limitSelectCount = _ref.limitSelectCount,
40
+ limitSelectCount = _ref$limitSelectCount === void 0 ? 1 : _ref$limitSelectCount;
37
41
  var theme = material.useTheme();
38
42
  var handleSelectionChange = function handleSelectionChange(event, newValue) {
39
43
  if (!newValue || disabled) return;
40
44
  setValue(function (prevState) {
41
- if (type === 'checkbox' && Array.isArray(prevState)) {
42
- var newValuesArray = Array.isArray(newValue) ? newValue : [newValue]; // ✅ newValue가 배열인지 확인
43
- var updatedValues = prevState.filter(function (v) {
44
- return !newValuesArray.includes(v);
45
- }) // 기존 선택된 값에서 제거
46
- .concat(newValuesArray.filter(function (v) {
47
- return !prevState.includes(v);
48
- })); // 새로운 값 추가
49
- return updatedValues;
50
- } else {
51
- return Array.isArray(newValue) ? [newValue[0]] : [newValue]; // ✅ `radio` 모드는 단일 값 변경
45
+ var newValuesArray = Array.isArray(newValue) ? newValue : [newValue];
46
+ var updatedValues = _rollupPluginBabelHelpers.toConsumableArray(prevState);
47
+ newValuesArray.forEach(function (value) {
48
+ if (!updatedValues.includes(value)) {
49
+ updatedValues.push(value);
50
+ } else {
51
+ updatedValues.splice(updatedValues.indexOf(value), 1);
52
+ }
53
+ });
54
+ if (updatedValues.length > limitSelectCount) {
55
+ return updatedValues.slice(-limitSelectCount);
52
56
  }
57
+ return updatedValues;
53
58
  });
54
59
  };
55
60
  return jsxRuntime.jsx(material.ToggleButtonGroup, {
@@ -0,0 +1,7 @@
1
+ import React from 'react';
2
+ import { type ButtonProps } from '@mui/material';
3
+ export interface EliceSubButtonProps extends ButtonProps {
4
+ children?: React.ReactNode;
5
+ }
6
+ declare const EliceSubButton: React.ForwardRefExoticComponent<Omit<EliceSubButtonProps, "ref"> & React.RefAttributes<HTMLButtonElement>>;
7
+ export default EliceSubButton;
@@ -0,0 +1,45 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var tslib = require('tslib');
6
+ var jsxRuntime = require('react/jsx-runtime');
7
+ var React = require('react');
8
+ var material = require('@mui/material');
9
+ var bluepurple = require('../../tokens/colors/bluepurple.js');
10
+ var useAIDTMediaQuery = require('../../hooks/useAIDTMediaQuery.js');
11
+
12
+ var EliceSubButton = React.forwardRef(function (_a, ref) {
13
+ var children = _a.children,
14
+ _a$variant = _a.variant,
15
+ variant = _a$variant === void 0 ? 'contained' : _a$variant,
16
+ disabled = _a.disabled,
17
+ rest = tslib.__rest(_a, ["children", "variant", "disabled"]);
18
+ var _useAIDTMediaQuery = useAIDTMediaQuery.default(),
19
+ isTablet = _useAIDTMediaQuery.isTablet;
20
+ return jsxRuntime.jsx(material.Button, Object.assign({
21
+ ref: ref,
22
+ variant: variant,
23
+ disabled: disabled,
24
+ sx: {
25
+ width: isTablet ? '100%' : 'fit-content',
26
+ height: '56px',
27
+ borderRadius: isTablet ? 0 : '16px',
28
+ padding: '8px 12px',
29
+ backgroundColor: bluepurple.bluepurple[100],
30
+ fontFamily: 'inherit',
31
+ display: 'flex',
32
+ justifyContent: 'flex-start'
33
+ }
34
+ }, rest, {
35
+ children: jsxRuntime.jsx(material.Typography, {
36
+ variant: "buttoninput",
37
+ sx: {
38
+ color: "".concat(bluepurple.bluepurple[950], " !important")
39
+ },
40
+ children: children
41
+ })
42
+ }));
43
+ });
44
+
45
+ exports.default = EliceSubButton;
@@ -0,0 +1 @@
1
+ export { default as EliceSubButton } from './SubtitleButton';
@@ -0,0 +1,7 @@
1
+ 'use strict';
2
+
3
+ var SubtitleButton = require('./SubtitleButton.js');
4
+
5
+
6
+
7
+ exports.EliceSubButton = SubtitleButton.default;
@@ -18,12 +18,8 @@ var textTeriaryColor = '#525265';
18
18
  var textQuaternaryColor = '#9FA0B1';
19
19
  var point3Color = '#8F68F6';
20
20
  var KeyElementaryBg = '#9BCAFF';
21
- var KeyMiddleBg = '#B2B2B2';
22
- var KeyHighBg = '#0A379B';
23
21
 
24
22
  exports.KeyElementaryBg = KeyElementaryBg;
25
- exports.KeyHighBg = KeyHighBg;
26
- exports.KeyMiddleBg = KeyMiddleBg;
27
23
  exports.gray100Color = gray100Color;
28
24
  exports.gray200Color = gray200Color;
29
25
  exports.gray300Color = gray300Color;
@@ -8,8 +8,8 @@ var tslib = require('tslib');
8
8
  var jsxRuntime = require('react/jsx-runtime');
9
9
  var React = require('react');
10
10
  var material = require('@mui/material');
11
- var tokenColorTemporary = require('../tokenColorTemporary.js');
12
11
  var Close = require('../../icons/Close.js');
12
+ var tokenColorTemporary = require('../tokenColorTemporary.js');
13
13
 
14
14
  function _interopDefaultCompat (e) { return e && typeof e === 'object' && 'default' in e ? e : { default: e }; }
15
15
 
@@ -0,0 +1 @@
1
+ export * from './useAIDTMediaQuery';
@@ -0,0 +1,4 @@
1
+ 'use strict';
2
+
3
+ require('@mui/material');
4
+
@@ -0,0 +1,8 @@
1
+ declare const useAIDTMediaQuery: () => {
2
+ isMobile: boolean;
3
+ isMiniTablet: boolean;
4
+ isTablet: boolean;
5
+ isNotebook: boolean;
6
+ isDesktop: boolean;
7
+ };
8
+ export default useAIDTMediaQuery;