@nurihaus/web-design-system 3.7.0 → 3.9.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 (143) hide show
  1. package/README.md +15 -4
  2. package/dist/ai/components.md +658 -12
  3. package/dist/ai/motion.md +431 -0
  4. package/dist/ai/tokens.md +93 -4
  5. package/dist/avatar.js +5 -3
  6. package/dist/bottom-bar.js +261 -0
  7. package/dist/bottom-nav.js +10 -57
  8. package/dist/breadcrumb.js +7 -5
  9. package/dist/callout.js +5 -3
  10. package/dist/card.js +278 -0
  11. package/dist/check-box.js +7 -5
  12. package/dist/chip-group.js +6 -4
  13. package/dist/chunk-1176.js +24 -0
  14. package/dist/chunk-3274.js +71 -0
  15. package/dist/chunk-345.js +72 -0
  16. package/dist/chunk-3547.js +56 -0
  17. package/dist/chunk-6459.js +107 -0
  18. package/dist/{chunk-6364.js → chunk-7335.js} +2 -67
  19. package/dist/chunk-7653.js +4 -0
  20. package/dist/chunk-910.js +26 -13
  21. package/dist/chunk-9497.js +66 -0
  22. package/dist/collapsible-menu.js +6 -4
  23. package/dist/components/badge/badge-props.d.ts +4 -4
  24. package/dist/components/badge/badge.stories.d.ts +1 -1
  25. package/dist/components/bottom-bar/base-bottom-bar.d.ts +4 -0
  26. package/dist/components/bottom-bar/bottom-bar-props.d.ts +1 -0
  27. package/dist/components/bottom-bar/bottom-bar-type.d.ts +3 -0
  28. package/dist/components/bottom-bar/bottom-bar.d.ts +6 -0
  29. package/dist/components/bottom-bar/bottom-bar.stories.d.ts +282 -0
  30. package/dist/components/button/button-type.d.ts +3 -1
  31. package/dist/components/button/button.stories.d.ts +1 -0
  32. package/dist/components/card/base-card.d.ts +3 -0
  33. package/dist/components/card/card-props.d.ts +9 -0
  34. package/dist/components/card/card-type.d.ts +8 -0
  35. package/dist/components/card/card.d.ts +5 -0
  36. package/dist/components/card/card.stories.d.ts +24 -0
  37. package/dist/components/description-list/base-description-list.d.ts +4 -0
  38. package/dist/components/description-list/description-list-props.d.ts +1 -0
  39. package/dist/components/description-list/description-list-type.d.ts +13 -0
  40. package/dist/components/description-list/description-list.d.ts +5 -0
  41. package/dist/components/description-list/description-list.stories.d.ts +20 -0
  42. package/dist/components/empty-state/base-empty-state.d.ts +4 -0
  43. package/dist/components/empty-state/empty-state-props.d.ts +10 -0
  44. package/dist/components/empty-state/empty-state-type.d.ts +14 -0
  45. package/dist/components/empty-state/empty-state.d.ts +5 -0
  46. package/dist/components/empty-state/empty-state.stories.d.ts +300 -0
  47. package/dist/components/icon/icon-paths.d.ts +4 -0
  48. package/dist/components/icon/icon.stories.d.ts +1 -1
  49. package/dist/components/icon-button/base-icon-button.d.ts +3 -0
  50. package/dist/components/icon-button/icon-button-props.d.ts +12 -0
  51. package/dist/components/icon-button/icon-button-type.d.ts +16 -0
  52. package/dist/components/icon-button/icon-button.d.ts +5 -0
  53. package/dist/components/icon-button/icon-button.stories.d.ts +31 -0
  54. package/dist/components/list/base-list.d.ts +7 -0
  55. package/dist/components/list/list-group.d.ts +5 -0
  56. package/dist/components/list/list-group.stories.d.ts +14 -0
  57. package/dist/components/list/list-props.d.ts +2 -0
  58. package/dist/components/list/list-row.d.ts +5 -0
  59. package/dist/components/list/list-row.stories.d.ts +304 -0
  60. package/dist/components/list/list-type.d.ts +25 -0
  61. package/dist/components/media/base-media.d.ts +16 -0
  62. package/dist/components/media/media-props.d.ts +5 -0
  63. package/dist/components/media/media-thumbnail.d.ts +4 -0
  64. package/dist/components/media/media-thumbnail.stories.d.ts +34 -0
  65. package/dist/components/media/media-type.d.ts +43 -0
  66. package/dist/components/media/media-viewer.d.ts +4 -0
  67. package/dist/components/media/media-viewer.stories.d.ts +24 -0
  68. package/dist/components/message/base-message.d.ts +11 -0
  69. package/dist/components/message/message-event.d.ts +6 -0
  70. package/dist/components/message/message-props.d.ts +17 -0
  71. package/dist/components/message/message-thread.d.ts +6 -0
  72. package/dist/components/message/message-type.d.ts +21 -0
  73. package/dist/components/message/message.d.ts +5 -0
  74. package/dist/components/message/message.stories.d.ts +313 -0
  75. package/dist/components/message-composer/base-message-composer.d.ts +11 -0
  76. package/dist/components/message-composer/message-composer-props.d.ts +1 -0
  77. package/dist/components/message-composer/message-composer-type.d.ts +31 -0
  78. package/dist/components/message-composer/message-composer.d.ts +5 -0
  79. package/dist/components/message-composer/message-composer.stories.d.ts +46 -0
  80. package/dist/components/motion/motion-provider.d.ts +5 -0
  81. package/dist/components/motion/motion-type.d.ts +6 -0
  82. package/dist/components/motion/motion.d.ts +2 -0
  83. package/dist/components/motion/motion.stories.d.ts +23 -0
  84. package/dist/components/notice/base-notice.d.ts +4 -0
  85. package/dist/components/notice/notice-props.d.ts +16 -0
  86. package/dist/components/notice/notice-type.d.ts +21 -0
  87. package/dist/components/notice/notice.d.ts +5 -0
  88. package/dist/components/notice/notice.stories.d.ts +304 -0
  89. package/dist/components/radio/base-radio.d.ts +2 -1
  90. package/dist/components/radio/radio-props.d.ts +9 -1
  91. package/dist/components/radio/radio-type.d.ts +9 -0
  92. package/dist/components/radio/radio.stories.d.ts +10 -0
  93. package/dist/components/tag/base-tag.d.ts +8 -0
  94. package/dist/components/tag/tag-props.d.ts +1 -0
  95. package/dist/components/tag/tag-type.d.ts +20 -0
  96. package/dist/components/tag/tag.d.ts +4 -0
  97. package/dist/components/tag/tag.stories.d.ts +14 -0
  98. package/dist/components.css +1330 -171
  99. package/dist/cta-button.js +38 -21
  100. package/dist/data-table.js +5 -3
  101. package/dist/description-list.js +274 -0
  102. package/dist/drawer.js +7 -5
  103. package/dist/drop-down.js +8 -6
  104. package/dist/empty-state.js +300 -0
  105. package/dist/helpers/utils/fillLinkChild.d.ts +6 -0
  106. package/dist/icon-button.js +338 -0
  107. package/dist/icon-text-badge.js +11 -9
  108. package/dist/icon-text-option-badge.js +8 -6
  109. package/dist/icon.js +7 -4
  110. package/dist/index.d.ts +30 -2
  111. package/dist/index.js +2482 -223
  112. package/dist/list-group.js +253 -0
  113. package/dist/list-row.js +308 -0
  114. package/dist/loading.js +6 -4
  115. package/dist/media-thumbnail.js +412 -0
  116. package/dist/media-viewer.js +274 -0
  117. package/dist/message-composer.js +399 -0
  118. package/dist/message-event.js +216 -0
  119. package/dist/message-thread.js +216 -0
  120. package/dist/message.js +271 -0
  121. package/dist/modal-with-double-button.js +15 -11
  122. package/dist/modal.js +9 -7
  123. package/dist/motion.js +52 -0
  124. package/dist/notice.js +346 -0
  125. package/dist/option-badge.js +11 -9
  126. package/dist/pagination.js +8 -6
  127. package/dist/radio.js +114 -30
  128. package/dist/skeleton.js +4 -2
  129. package/dist/step-progress.js +4 -2
  130. package/dist/styles.css +1215 -130
  131. package/dist/switch.js +6 -4
  132. package/dist/tabs.js +5 -3
  133. package/dist/tag.js +311 -0
  134. package/dist/text-area.js +8 -6
  135. package/dist/text-field.js +8 -6
  136. package/dist/text.js +5 -3
  137. package/dist/toast.js +15 -11
  138. package/dist/tokens/generated/index.d.ts +1 -0
  139. package/dist/tokens/generated/motion.d.ts +153 -0
  140. package/dist/tokens.css +122 -2
  141. package/dist/tokens.js +156 -1
  142. package/dist/tooltip.js +6 -4
  143. package/package.json +67 -1
@@ -1,6 +1,6 @@
1
1
  "use client";
2
- export const __webpack_esm_id__ = 6364;
3
- export const __webpack_esm_ids__ = [6364];
2
+ export const __webpack_esm_id__ = 7335;
3
+ export const __webpack_esm_ids__ = [7335];
4
4
  export const __webpack_esm_modules__ = {
5
5
 
6
6
  /***/ 7335
@@ -56,71 +56,6 @@ function getMergedProps(props, propsWithTypes) {
56
56
  }
57
57
 
58
58
 
59
- /***/ },
60
-
61
- /***/ 3274
62
- (__unused_webpack___webpack_module__, __webpack_exports__, __nuri_require__) {
63
-
64
- /* harmony export */ __nuri_require__.d(__webpack_exports__, {
65
- /* harmony export */ x: () => (/* binding */ classNames)
66
- /* harmony export */ });
67
- const hasOwn = {}.hasOwnProperty;
68
-
69
- function classNames() {
70
- let classes = '';
71
-
72
- for (let i = 0; i < arguments.length; i++) {
73
- const arg = arguments[i];
74
- if (arg) {
75
- classes = appendClass(classes, parseValue(arg));
76
- }
77
- }
78
-
79
- return classes;
80
- }
81
-
82
- function parseValue(arg) {
83
- if (typeof arg === 'string') {
84
- return arg;
85
- }
86
-
87
- if (typeof arg !== 'object') {
88
- return '';
89
- }
90
-
91
- if (Array.isArray(arg)) {
92
- return classNames.apply(null, arg);
93
- }
94
-
95
- if (
96
- arg.toString !== Object.prototype.toString &&
97
- !arg.toString.toString().includes('[native code]')
98
- ) {
99
- return arg.toString();
100
- }
101
-
102
- let classes = '';
103
-
104
- for (const key in arg) {
105
- if (hasOwn.call(arg, key) && arg[key]) {
106
- classes = appendClass(classes, key);
107
- }
108
- }
109
-
110
- return classes;
111
- }
112
-
113
- function appendClass(value, newClass) {
114
- if (!newClass) {
115
- return value;
116
- }
117
-
118
- return value ? value + ' ' + newClass : newClass;
119
- }
120
-
121
-
122
-
123
-
124
59
  /***/ }
125
60
 
126
61
  };
@@ -146,6 +146,10 @@ var iconPaths = {
146
146
  regular: ['M173.66,98.34a8,8,0,0,1,0,11.32l-56,56a8,8,0,0,1-11.32,0l-24-24a8,8,0,0,1,11.32-11.32L112,148.69l50.34-50.35A8,8,0,0,1,173.66,98.34ZM232,128A104,104,0,1,1,128,24,104.11,104.11,0,0,1,232,128Zm-16,0a88,88,0,1,0-88,88A88.1,88.1,0,0,0,216,128Z'],
147
147
  fill: ['M128,24A104,104,0,1,0,232,128,104.11,104.11,0,0,0,128,24Zm45.66,85.66-56,56a8,8,0,0,1-11.32,0l-24-24a8,8,0,0,1,11.32-11.32L112,148.69l50.34-50.35a8,8,0,0,1,11.32,11.32Z']
148
148
  },
149
+ circle: {
150
+ regular: ['M128,24A104,104,0,1,0,232,128,104.11,104.11,0,0,0,128,24Zm0,192a88,88,0,1,1,88-88A88.1,88.1,0,0,1,128,216Z'],
151
+ fill: ['M232,128A104,104,0,1,1,128,24,104.13,104.13,0,0,1,232,128Z']
152
+ },
149
153
  check: {
150
154
  regular: ['M229.66,77.66l-128,128a8,8,0,0,1-11.32,0l-56-56a8,8,0,0,1,11.32-11.32L96,188.69,218.34,66.34a8,8,0,0,1,11.32,11.32Z'],
151
155
  fill: ['M216,40H40A16,16,0,0,0,24,56V200a16,16,0,0,0,16,16H216a16,16,0,0,0,16-16V56A16,16,0,0,0,216,40ZM205.66,85.66l-96,96a8,8,0,0,1-11.32,0l-40-40a8,8,0,0,1,11.32-11.32L104,164.69l90.34-90.35a8,8,0,0,1,11.32,11.32Z']
package/dist/chunk-910.js CHANGED
@@ -13,11 +13,12 @@ export const __webpack_esm_modules__ = {
13
13
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __nuri_require__(1041);
14
14
  /* harmony import */ var _helpers_hooks_useTrack__WEBPACK_IMPORTED_MODULE_2__ = __nuri_require__(4560);
15
15
  /* harmony import */ var _helpers_utils_classNames__WEBPACK_IMPORTED_MODULE_3__ = __nuri_require__(3274);
16
- /* harmony import */ var _helpers_utils_getMergedProps__WEBPACK_IMPORTED_MODULE_4__ = __nuri_require__(7335);
17
- /* harmony import */ var _callout_callout__WEBPACK_IMPORTED_MODULE_5__ = __nuri_require__(1163);
18
- /* harmony import */ var _loading_spinner_spinner__WEBPACK_IMPORTED_MODULE_6__ = __nuri_require__(6302);
19
- /* harmony import */ var _base_button__WEBPACK_IMPORTED_MODULE_7__ = __nuri_require__(8933);
20
- /* harmony import */ var _button_props__WEBPACK_IMPORTED_MODULE_8__ = __nuri_require__(9976);
16
+ /* harmony import */ var _helpers_utils_fillLinkChild__WEBPACK_IMPORTED_MODULE_4__ = __nuri_require__(1176);
17
+ /* harmony import */ var _helpers_utils_getMergedProps__WEBPACK_IMPORTED_MODULE_5__ = __nuri_require__(7335);
18
+ /* harmony import */ var _callout_callout__WEBPACK_IMPORTED_MODULE_6__ = __nuri_require__(1163);
19
+ /* harmony import */ var _loading_spinner_spinner__WEBPACK_IMPORTED_MODULE_7__ = __nuri_require__(6302);
20
+ /* harmony import */ var _base_button__WEBPACK_IMPORTED_MODULE_8__ = __nuri_require__(8933);
21
+ /* harmony import */ var _button_props__WEBPACK_IMPORTED_MODULE_9__ = __nuri_require__(9976);
21
22
  var __assign = undefined && undefined.__assign || function () {
22
23
  __assign = Object.assign || function (t) {
23
24
  for (var s, i = 1, n = arguments.length; i < n; i++) {
@@ -45,34 +46,46 @@ var __rest = undefined && undefined.__rest || function (s, e) {
45
46
 
46
47
 
47
48
 
49
+
48
50
  var CTAButton = /*#__PURE__*/(0,react__WEBPACK_IMPORTED_MODULE_1__.forwardRef)(function (props, ref) {
49
- var _a = (0,_helpers_utils_getMergedProps__WEBPACK_IMPORTED_MODULE_4__/* .getMergedProps */ .p)(props, _button_props__WEBPACK_IMPORTED_MODULE_8__/* .ctaButtonProps */ .Lr),
51
+ var _a = (0,_helpers_utils_getMergedProps__WEBPACK_IMPORTED_MODULE_5__/* .getMergedProps */ .p)(props, _button_props__WEBPACK_IMPORTED_MODULE_9__/* .ctaButtonProps */ .Lr),
50
52
  className = _a.className,
51
53
  text = _a.text,
52
54
  leftIcon = _a.leftIcon,
53
55
  rightIcon = _a.rightIcon,
54
56
  callout = _a.callout,
57
+ asChild = _a.asChild,
58
+ children = _a.children,
59
+ loading = _a.loading,
55
60
  _onClick = _a.onClick,
56
61
  track = _a.track,
57
62
  trackProps = _a.trackProps,
58
- restProps = __rest(_a, ["className", "text", "leftIcon", "rightIcon", "callout", "onClick", "track", "trackProps"]);
63
+ restProps = __rest(_a, ["className", "text", "leftIcon", "rightIcon", "callout", "asChild", "children", "loading", "onClick", "track", "trackProps"]);
59
64
  var emit = (0,_helpers_hooks_useTrack__WEBPACK_IMPORTED_MODULE_2__/* .useTrack */ .n)('CTAButton', {
60
65
  track: track,
61
66
  trackProps: trackProps
62
67
  });
63
- return (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)(_base_button__WEBPACK_IMPORTED_MODULE_7__/* ["default"] */ .A, __assign({
68
+ var content = (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.Fragment, {
69
+ children: [leftIcon, text, rightIcon, callout ? (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(_callout_callout__WEBPACK_IMPORTED_MODULE_6__/* ["default"] */ .A, {
70
+ className: 'cta-button-callout',
71
+ text: callout
72
+ }) : null]
73
+ });
74
+ // asChild 면 넘겨받은 링크 요소 안에 버튼 글자를 넣고, 그 요소가 버튼 클래스·핸들러를 받는다
75
+ var link = (0,_helpers_utils_fillLinkChild__WEBPACK_IMPORTED_MODULE_4__/* .fillLinkChild */ .Q)(asChild, children, content);
76
+ return (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(_base_button__WEBPACK_IMPORTED_MODULE_8__/* ["default"] */ .A, __assign({
64
77
  ref: ref,
65
78
  className: (0,_helpers_utils_classNames__WEBPACK_IMPORTED_MODULE_3__/* .classNames */ .x)(className, 'cta-button', callout ? 'with-callout' : undefined),
66
- loadingComponent: (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(_loading_spinner_spinner__WEBPACK_IMPORTED_MODULE_6__/* ["default"] */ .A, {}),
79
+ loadingComponent: (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(_loading_spinner_spinner__WEBPACK_IMPORTED_MODULE_7__/* ["default"] */ .A, {}),
80
+ asChild: link !== null,
81
+ // 링크는 로딩을 그리지 않는다. 그리면 Spinner 가 링크 자리를 차지한다
82
+ loading: link ? undefined : loading,
67
83
  onClick: function onClick(event) {
68
84
  emit('click');
69
85
  _onClick === null || _onClick === void 0 ? void 0 : _onClick(event);
70
86
  }
71
87
  }, restProps, {
72
- children: [leftIcon, text, rightIcon, callout ? (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(_callout_callout__WEBPACK_IMPORTED_MODULE_5__/* ["default"] */ .A, {
73
- className: 'cta-button-callout',
74
- text: callout
75
- }) : null]
88
+ children: link !== null && link !== void 0 ? link : content
76
89
  }));
77
90
  });
78
91
  CTAButton.displayName = 'CTAButton';
@@ -0,0 +1,66 @@
1
+ "use client";
2
+ export const __webpack_esm_id__ = 9497;
3
+ export const __webpack_esm_ids__ = [9497];
4
+ export const __webpack_esm_modules__ = {
5
+
6
+ /***/ 9497
7
+ (__unused_webpack_module, __webpack_exports__, __nuri_require__) {
8
+
9
+ /* harmony export */ __nuri_require__.d(__webpack_exports__, {
10
+ /* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__)
11
+ /* harmony export */ });
12
+ /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ = __nuri_require__(612);
13
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __nuri_require__(1041);
14
+ /* harmony import */ var _helpers_utils_classNames__WEBPACK_IMPORTED_MODULE_2__ = __nuri_require__(3274);
15
+ /* harmony import */ var _core_composer__WEBPACK_IMPORTED_MODULE_3__ = __nuri_require__(2777);
16
+ var __assign = undefined && undefined.__assign || function () {
17
+ __assign = Object.assign || function (t) {
18
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
19
+ s = arguments[i];
20
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
21
+ }
22
+ return t;
23
+ };
24
+ return __assign.apply(this, arguments);
25
+ };
26
+ var __rest = undefined && undefined.__rest || function (s, e) {
27
+ var t = {};
28
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
29
+ if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
30
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
31
+ }
32
+ return t;
33
+ };
34
+
35
+
36
+
37
+
38
+ var ListRootBase = /*#__PURE__*/(0,react__WEBPACK_IMPORTED_MODULE_1__.forwardRef)(function (props, ref) {
39
+ var className = props.className,
40
+ restProps = __rest(props, ["className"]);
41
+ return (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("div", __assign({
42
+ ref: ref,
43
+ className: (0,_helpers_utils_classNames__WEBPACK_IMPORTED_MODULE_2__/* .classNames */ .x)('nuri-theme base-list group', className)
44
+ }, restProps));
45
+ });
46
+ ListRootBase.displayName = 'ListRoot';
47
+ var ListRow = /*#__PURE__*/(0,react__WEBPACK_IMPORTED_MODULE_1__.forwardRef)(function (props, ref) {
48
+ var _a = props.asChild,
49
+ asChild = _a === void 0 ? false : _a,
50
+ className = props.className,
51
+ restProps = __rest(props, ["asChild", "className"]);
52
+ var Comp = asChild ? _core_composer__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .A : 'div';
53
+ return (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(Comp, __assign({
54
+ ref: ref,
55
+ className: (0,_helpers_utils_classNames__WEBPACK_IMPORTED_MODULE_2__/* .classNames */ .x)('nuri-theme base-list row', className)
56
+ }, restProps));
57
+ });
58
+ ListRow.displayName = 'ListRow';
59
+ var ListRoot = Object.assign(ListRootBase, {
60
+ Row: ListRow
61
+ });
62
+ /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (ListRoot);
63
+
64
+ /***/ }
65
+
66
+ };
@@ -390,17 +390,19 @@ module.exports = x({ ["jsx"]: () => (__WEBPACK_EXTERNAL_MODULE_react_jsx_runtime
390
390
  /******/
391
391
  /************************************************************************/
392
392
  /******/
393
- /******/ import * as __webpack_chunk_1__ from "./chunk-6364.js";
393
+ /******/ import * as __webpack_chunk_1__ from "./chunk-3274.js";
394
394
  /******/ __nuri_require__.C(__webpack_chunk_1__);
395
- /******/ import * as __webpack_chunk_2__ from "./chunk-4560.js";
395
+ /******/ import * as __webpack_chunk_2__ from "./chunk-7335.js";
396
396
  /******/ __nuri_require__.C(__webpack_chunk_2__);
397
- /******/ import * as __webpack_chunk_3__ from "./chunk-4917.js";
397
+ /******/ import * as __webpack_chunk_3__ from "./chunk-4560.js";
398
398
  /******/ __nuri_require__.C(__webpack_chunk_3__);
399
+ /******/ import * as __webpack_chunk_4__ from "./chunk-4917.js";
400
+ /******/ __nuri_require__.C(__webpack_chunk_4__);
399
401
  /******/
400
402
  /******/ // startup
401
403
  /******/ // Load entry module and return exports
402
404
  /******/ // This entry module depends on other loaded chunks and execution need to be delayed
403
- /******/ var __webpack_exports__ = __nuri_require__.O(undefined, [6364,4560,4917], () => (__nuri_require__(5932)))
405
+ /******/ var __webpack_exports__ = __nuri_require__.O(undefined, [3274,7335,4560,4917], () => (__nuri_require__(5932)))
404
406
  /******/ __webpack_exports__ = __nuri_require__.O(__webpack_exports__);
405
407
  /******/ const __webpack_exports__default = __webpack_exports__.A;
406
408
  /******/ export { __webpack_exports__default as default };
@@ -1,10 +1,10 @@
1
- export declare const variant: readonly ["neutral", "primary", "danger", "outlined"];
1
+ export declare const variant: readonly ["neutral", "primary", "danger", "success", "warning", "outlined"];
2
2
  export declare const sizes: readonly ["xs", "s", "m", "l", "xl"];
3
3
  export declare const iconTextBadgeProps: {
4
4
  variant: {
5
5
  type: "className";
6
6
  className: string;
7
- values: readonly ["neutral", "primary", "danger", "outlined"];
7
+ values: readonly ["neutral", "primary", "danger", "success", "warning", "outlined"];
8
8
  default: "neutral";
9
9
  };
10
10
  size: import("../../helpers/types/propsDef").ClassNamePropsType<readonly ["xs", "s", "m", "l", "xl"]>;
@@ -14,7 +14,7 @@ export declare const iconTextOptionBadgeProps: {
14
14
  variant: {
15
15
  type: "className";
16
16
  className: string;
17
- values: readonly ["neutral", "primary", "danger", "outlined"];
17
+ values: readonly ["neutral", "primary", "danger", "success", "warning", "outlined"];
18
18
  default: "neutral";
19
19
  };
20
20
  size: import("../../helpers/types/propsDef").ClassNamePropsType<readonly ["xs", "s", "m", "l", "xl"]>;
@@ -24,7 +24,7 @@ export declare const optionBadgeProps: {
24
24
  variant: {
25
25
  type: "className";
26
26
  className: string;
27
- values: readonly ["neutral", "primary", "danger", "outlined"];
27
+ values: readonly ["neutral", "primary", "danger", "success", "warning", "outlined"];
28
28
  default: "neutral";
29
29
  };
30
30
  size: import("../../helpers/types/propsDef").ClassNamePropsType<readonly ["xs", "s", "m", "l", "xl"]>;
@@ -7,7 +7,7 @@ declare const meta: {
7
7
  control: {
8
8
  type: "select";
9
9
  };
10
- options: readonly ["neutral", "primary", "danger", "outlined"];
10
+ options: readonly ["neutral", "primary", "danger", "success", "warning", "outlined"];
11
11
  };
12
12
  size: {
13
13
  control: {
@@ -0,0 +1,4 @@
1
+ declare const BaseBottomBar: import("react").ForwardRefExoticComponent<Omit<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & {
2
+ ref?: ((instance: HTMLDivElement | null) => void | import("react").DO_NOT_USE_OR_YOU_WILL_BE_FIRED_CALLBACK_REF_RETURN_VALUES[keyof import("react").DO_NOT_USE_OR_YOU_WILL_BE_FIRED_CALLBACK_REF_RETURN_VALUES]) | import("react").RefObject<HTMLDivElement> | null | undefined;
3
+ }, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
4
+ export default BaseBottomBar;
@@ -0,0 +1 @@
1
+ export declare const bottomBarProps: {};
@@ -0,0 +1,3 @@
1
+ import { ComponentPropsWithRef } from 'react';
2
+ export type BaseBottomBarProps = ComponentPropsWithRef<'div'>;
3
+ export type BottomBarProps = ComponentPropsWithRef<'div'>;
@@ -0,0 +1,6 @@
1
+ /** 화면 아래에 붙는 바. 주 행동 버튼이나 입력 줄을 담는다. 바로 아래 자식들이 폭을 나눠 갖는다 */
2
+ declare const BottomBar: import("react").ForwardRefExoticComponent<Omit<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & {
3
+ ref?: ((instance: HTMLDivElement | null) => void | import("react").DO_NOT_USE_OR_YOU_WILL_BE_FIRED_CALLBACK_REF_RETURN_VALUES[keyof import("react").DO_NOT_USE_OR_YOU_WILL_BE_FIRED_CALLBACK_REF_RETURN_VALUES]) | import("react").RefObject<HTMLDivElement> | null | undefined;
4
+ }, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
5
+ export default BottomBar;
6
+ export type { BottomBarProps } from './bottom-bar-type';
@@ -0,0 +1,282 @@
1
+ import type { StoryObj } from '@storybook/react-webpack5';
2
+ declare const meta: {
3
+ title: string;
4
+ component: import("react").ForwardRefExoticComponent<Omit<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & {
5
+ ref?: ((instance: HTMLDivElement | null) => void | import("react").DO_NOT_USE_OR_YOU_WILL_BE_FIRED_CALLBACK_REF_RETURN_VALUES[keyof import("react").DO_NOT_USE_OR_YOU_WILL_BE_FIRED_CALLBACK_REF_RETURN_VALUES]) | import("react").RefObject<HTMLDivElement> | null | undefined;
6
+ }, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
7
+ decorators: ((Story: import("storybook/internal/csf").PartialStoryFn<import("@storybook/react-webpack5").ReactRenderer, {
8
+ className?: string | undefined | undefined;
9
+ style?: import("react").CSSProperties | undefined;
10
+ children?: import("react").ReactNode;
11
+ defaultChecked?: boolean | undefined | undefined;
12
+ defaultValue?: string | number | readonly string[] | undefined;
13
+ suppressContentEditableWarning?: boolean | undefined | undefined;
14
+ suppressHydrationWarning?: boolean | undefined | undefined;
15
+ accessKey?: string | undefined | undefined;
16
+ autoCapitalize?: "off" | "none" | "on" | "sentences" | "words" | "characters" | undefined | (string & {}) | undefined;
17
+ autoFocus?: boolean | undefined | undefined;
18
+ contentEditable?: (boolean | "true" | "false") | "inherit" | "plaintext-only" | undefined;
19
+ contextMenu?: string | undefined | undefined;
20
+ dir?: string | undefined | undefined;
21
+ draggable?: (boolean | "true" | "false") | undefined;
22
+ enterKeyHint?: "enter" | "done" | "go" | "next" | "previous" | "search" | "send" | undefined | undefined;
23
+ hidden?: boolean | undefined | undefined;
24
+ id?: string | undefined | undefined;
25
+ lang?: string | undefined | undefined;
26
+ nonce?: string | undefined | undefined;
27
+ slot?: string | undefined | undefined;
28
+ spellCheck?: (boolean | "true" | "false") | undefined;
29
+ tabIndex?: number | undefined | undefined;
30
+ title?: string | undefined | undefined;
31
+ translate?: "yes" | "no" | undefined | undefined;
32
+ radioGroup?: string | undefined | undefined;
33
+ role?: import("react").AriaRole | undefined;
34
+ about?: string | undefined | undefined;
35
+ content?: string | undefined | undefined;
36
+ datatype?: string | undefined | undefined;
37
+ inlist?: any;
38
+ prefix?: string | undefined | undefined;
39
+ property?: string | undefined | undefined;
40
+ rel?: string | undefined | undefined;
41
+ resource?: string | undefined | undefined;
42
+ rev?: string | undefined | undefined;
43
+ typeof?: string | undefined | undefined;
44
+ vocab?: string | undefined | undefined;
45
+ autoCorrect?: string | undefined | undefined;
46
+ autoSave?: string | undefined | undefined;
47
+ color?: string | undefined | undefined;
48
+ itemProp?: string | undefined | undefined;
49
+ itemScope?: boolean | undefined | undefined;
50
+ itemType?: string | undefined | undefined;
51
+ itemID?: string | undefined | undefined;
52
+ itemRef?: string | undefined | undefined;
53
+ results?: number | undefined | undefined;
54
+ security?: string | undefined | undefined;
55
+ unselectable?: "on" | "off" | undefined | undefined;
56
+ inputMode?: "none" | "text" | "tel" | "url" | "email" | "numeric" | "decimal" | "search" | undefined | undefined;
57
+ is?: string | undefined | undefined;
58
+ exportparts?: string | undefined | undefined;
59
+ part?: string | undefined | undefined;
60
+ "aria-activedescendant"?: string | undefined | undefined;
61
+ "aria-atomic"?: (boolean | "true" | "false") | undefined;
62
+ "aria-autocomplete"?: "none" | "inline" | "list" | "both" | undefined | undefined;
63
+ "aria-braillelabel"?: string | undefined | undefined;
64
+ "aria-brailleroledescription"?: string | undefined | undefined;
65
+ "aria-busy"?: (boolean | "true" | "false") | undefined;
66
+ "aria-checked"?: boolean | "false" | "mixed" | "true" | undefined | undefined;
67
+ "aria-colcount"?: number | undefined | undefined;
68
+ "aria-colindex"?: number | undefined | undefined;
69
+ "aria-colindextext"?: string | undefined | undefined;
70
+ "aria-colspan"?: number | undefined | undefined;
71
+ "aria-controls"?: string | undefined | undefined;
72
+ "aria-current"?: boolean | "false" | "true" | "page" | "step" | "location" | "date" | "time" | undefined | undefined;
73
+ "aria-describedby"?: string | undefined | undefined;
74
+ "aria-description"?: string | undefined | undefined;
75
+ "aria-details"?: string | undefined | undefined;
76
+ "aria-disabled"?: (boolean | "true" | "false") | undefined;
77
+ "aria-dropeffect"?: "none" | "copy" | "execute" | "link" | "move" | "popup" | undefined | undefined;
78
+ "aria-errormessage"?: string | undefined | undefined;
79
+ "aria-expanded"?: (boolean | "true" | "false") | undefined;
80
+ "aria-flowto"?: string | undefined | undefined;
81
+ "aria-grabbed"?: (boolean | "true" | "false") | undefined;
82
+ "aria-haspopup"?: boolean | "false" | "true" | "menu" | "listbox" | "tree" | "grid" | "dialog" | undefined | undefined;
83
+ "aria-hidden"?: (boolean | "true" | "false") | undefined;
84
+ "aria-invalid"?: boolean | "false" | "true" | "grammar" | "spelling" | undefined | undefined;
85
+ "aria-keyshortcuts"?: string | undefined | undefined;
86
+ "aria-label"?: string | undefined | undefined;
87
+ "aria-labelledby"?: string | undefined | undefined;
88
+ "aria-level"?: number | undefined | undefined;
89
+ "aria-live"?: "off" | "assertive" | "polite" | undefined | undefined;
90
+ "aria-modal"?: (boolean | "true" | "false") | undefined;
91
+ "aria-multiline"?: (boolean | "true" | "false") | undefined;
92
+ "aria-multiselectable"?: (boolean | "true" | "false") | undefined;
93
+ "aria-orientation"?: "horizontal" | "vertical" | undefined | undefined;
94
+ "aria-owns"?: string | undefined | undefined;
95
+ "aria-placeholder"?: string | undefined | undefined;
96
+ "aria-posinset"?: number | undefined | undefined;
97
+ "aria-pressed"?: boolean | "false" | "mixed" | "true" | undefined | undefined;
98
+ "aria-readonly"?: (boolean | "true" | "false") | undefined;
99
+ "aria-relevant"?: "additions" | "additions removals" | "additions text" | "all" | "removals" | "removals additions" | "removals text" | "text" | "text additions" | "text removals" | undefined | undefined;
100
+ "aria-required"?: (boolean | "true" | "false") | undefined;
101
+ "aria-roledescription"?: string | undefined | undefined;
102
+ "aria-rowcount"?: number | undefined | undefined;
103
+ "aria-rowindex"?: number | undefined | undefined;
104
+ "aria-rowindextext"?: string | undefined | undefined;
105
+ "aria-rowspan"?: number | undefined | undefined;
106
+ "aria-selected"?: (boolean | "true" | "false") | undefined;
107
+ "aria-setsize"?: number | undefined | undefined;
108
+ "aria-sort"?: "none" | "ascending" | "descending" | "other" | undefined | undefined;
109
+ "aria-valuemax"?: number | undefined | undefined;
110
+ "aria-valuemin"?: number | undefined | undefined;
111
+ "aria-valuenow"?: number | undefined | undefined;
112
+ "aria-valuetext"?: string | undefined | undefined;
113
+ dangerouslySetInnerHTML?: {
114
+ __html: string | TrustedHTML;
115
+ } | undefined | undefined;
116
+ onCopy?: import("react").ClipboardEventHandler<HTMLDivElement> | undefined;
117
+ onCopyCapture?: import("react").ClipboardEventHandler<HTMLDivElement> | undefined;
118
+ onCut?: import("react").ClipboardEventHandler<HTMLDivElement> | undefined;
119
+ onCutCapture?: import("react").ClipboardEventHandler<HTMLDivElement> | undefined;
120
+ onPaste?: import("react").ClipboardEventHandler<HTMLDivElement> | undefined;
121
+ onPasteCapture?: import("react").ClipboardEventHandler<HTMLDivElement> | undefined;
122
+ onCompositionEnd?: import("react").CompositionEventHandler<HTMLDivElement> | undefined;
123
+ onCompositionEndCapture?: import("react").CompositionEventHandler<HTMLDivElement> | undefined;
124
+ onCompositionStart?: import("react").CompositionEventHandler<HTMLDivElement> | undefined;
125
+ onCompositionStartCapture?: import("react").CompositionEventHandler<HTMLDivElement> | undefined;
126
+ onCompositionUpdate?: import("react").CompositionEventHandler<HTMLDivElement> | undefined;
127
+ onCompositionUpdateCapture?: import("react").CompositionEventHandler<HTMLDivElement> | undefined;
128
+ onFocus?: import("react").FocusEventHandler<HTMLDivElement> | undefined;
129
+ onFocusCapture?: import("react").FocusEventHandler<HTMLDivElement> | undefined;
130
+ onBlur?: import("react").FocusEventHandler<HTMLDivElement> | undefined;
131
+ onBlurCapture?: import("react").FocusEventHandler<HTMLDivElement> | undefined;
132
+ onChange?: import("react").FormEventHandler<HTMLDivElement> | undefined;
133
+ onChangeCapture?: import("react").FormEventHandler<HTMLDivElement> | undefined;
134
+ onBeforeInput?: import("react").InputEventHandler<HTMLDivElement> | undefined;
135
+ onBeforeInputCapture?: import("react").FormEventHandler<HTMLDivElement> | undefined;
136
+ onInput?: import("react").FormEventHandler<HTMLDivElement> | undefined;
137
+ onInputCapture?: import("react").FormEventHandler<HTMLDivElement> | undefined;
138
+ onReset?: import("react").FormEventHandler<HTMLDivElement> | undefined;
139
+ onResetCapture?: import("react").FormEventHandler<HTMLDivElement> | undefined;
140
+ onSubmit?: import("react").FormEventHandler<HTMLDivElement> | undefined;
141
+ onSubmitCapture?: import("react").FormEventHandler<HTMLDivElement> | undefined;
142
+ onInvalid?: import("react").FormEventHandler<HTMLDivElement> | undefined;
143
+ onInvalidCapture?: import("react").FormEventHandler<HTMLDivElement> | undefined;
144
+ onLoad?: import("react").ReactEventHandler<HTMLDivElement> | undefined;
145
+ onLoadCapture?: import("react").ReactEventHandler<HTMLDivElement> | undefined;
146
+ onError?: import("react").ReactEventHandler<HTMLDivElement> | undefined;
147
+ onErrorCapture?: import("react").ReactEventHandler<HTMLDivElement> | undefined;
148
+ onKeyDown?: import("react").KeyboardEventHandler<HTMLDivElement> | undefined;
149
+ onKeyDownCapture?: import("react").KeyboardEventHandler<HTMLDivElement> | undefined;
150
+ onKeyPress?: import("react").KeyboardEventHandler<HTMLDivElement> | undefined;
151
+ onKeyPressCapture?: import("react").KeyboardEventHandler<HTMLDivElement> | undefined;
152
+ onKeyUp?: import("react").KeyboardEventHandler<HTMLDivElement> | undefined;
153
+ onKeyUpCapture?: import("react").KeyboardEventHandler<HTMLDivElement> | undefined;
154
+ onAbort?: import("react").ReactEventHandler<HTMLDivElement> | undefined;
155
+ onAbortCapture?: import("react").ReactEventHandler<HTMLDivElement> | undefined;
156
+ onCanPlay?: import("react").ReactEventHandler<HTMLDivElement> | undefined;
157
+ onCanPlayCapture?: import("react").ReactEventHandler<HTMLDivElement> | undefined;
158
+ onCanPlayThrough?: import("react").ReactEventHandler<HTMLDivElement> | undefined;
159
+ onCanPlayThroughCapture?: import("react").ReactEventHandler<HTMLDivElement> | undefined;
160
+ onDurationChange?: import("react").ReactEventHandler<HTMLDivElement> | undefined;
161
+ onDurationChangeCapture?: import("react").ReactEventHandler<HTMLDivElement> | undefined;
162
+ onEmptied?: import("react").ReactEventHandler<HTMLDivElement> | undefined;
163
+ onEmptiedCapture?: import("react").ReactEventHandler<HTMLDivElement> | undefined;
164
+ onEncrypted?: import("react").ReactEventHandler<HTMLDivElement> | undefined;
165
+ onEncryptedCapture?: import("react").ReactEventHandler<HTMLDivElement> | undefined;
166
+ onEnded?: import("react").ReactEventHandler<HTMLDivElement> | undefined;
167
+ onEndedCapture?: import("react").ReactEventHandler<HTMLDivElement> | undefined;
168
+ onLoadedData?: import("react").ReactEventHandler<HTMLDivElement> | undefined;
169
+ onLoadedDataCapture?: import("react").ReactEventHandler<HTMLDivElement> | undefined;
170
+ onLoadedMetadata?: import("react").ReactEventHandler<HTMLDivElement> | undefined;
171
+ onLoadedMetadataCapture?: import("react").ReactEventHandler<HTMLDivElement> | undefined;
172
+ onLoadStart?: import("react").ReactEventHandler<HTMLDivElement> | undefined;
173
+ onLoadStartCapture?: import("react").ReactEventHandler<HTMLDivElement> | undefined;
174
+ onPause?: import("react").ReactEventHandler<HTMLDivElement> | undefined;
175
+ onPauseCapture?: import("react").ReactEventHandler<HTMLDivElement> | undefined;
176
+ onPlay?: import("react").ReactEventHandler<HTMLDivElement> | undefined;
177
+ onPlayCapture?: import("react").ReactEventHandler<HTMLDivElement> | undefined;
178
+ onPlaying?: import("react").ReactEventHandler<HTMLDivElement> | undefined;
179
+ onPlayingCapture?: import("react").ReactEventHandler<HTMLDivElement> | undefined;
180
+ onProgress?: import("react").ReactEventHandler<HTMLDivElement> | undefined;
181
+ onProgressCapture?: import("react").ReactEventHandler<HTMLDivElement> | undefined;
182
+ onRateChange?: import("react").ReactEventHandler<HTMLDivElement> | undefined;
183
+ onRateChangeCapture?: import("react").ReactEventHandler<HTMLDivElement> | undefined;
184
+ onSeeked?: import("react").ReactEventHandler<HTMLDivElement> | undefined;
185
+ onSeekedCapture?: import("react").ReactEventHandler<HTMLDivElement> | undefined;
186
+ onSeeking?: import("react").ReactEventHandler<HTMLDivElement> | undefined;
187
+ onSeekingCapture?: import("react").ReactEventHandler<HTMLDivElement> | undefined;
188
+ onStalled?: import("react").ReactEventHandler<HTMLDivElement> | undefined;
189
+ onStalledCapture?: import("react").ReactEventHandler<HTMLDivElement> | undefined;
190
+ onSuspend?: import("react").ReactEventHandler<HTMLDivElement> | undefined;
191
+ onSuspendCapture?: import("react").ReactEventHandler<HTMLDivElement> | undefined;
192
+ onTimeUpdate?: import("react").ReactEventHandler<HTMLDivElement> | undefined;
193
+ onTimeUpdateCapture?: import("react").ReactEventHandler<HTMLDivElement> | undefined;
194
+ onVolumeChange?: import("react").ReactEventHandler<HTMLDivElement> | undefined;
195
+ onVolumeChangeCapture?: import("react").ReactEventHandler<HTMLDivElement> | undefined;
196
+ onWaiting?: import("react").ReactEventHandler<HTMLDivElement> | undefined;
197
+ onWaitingCapture?: import("react").ReactEventHandler<HTMLDivElement> | undefined;
198
+ onAuxClick?: import("react").MouseEventHandler<HTMLDivElement> | undefined;
199
+ onAuxClickCapture?: import("react").MouseEventHandler<HTMLDivElement> | undefined;
200
+ onClick?: import("react").MouseEventHandler<HTMLDivElement> | undefined;
201
+ onClickCapture?: import("react").MouseEventHandler<HTMLDivElement> | undefined;
202
+ onContextMenu?: import("react").MouseEventHandler<HTMLDivElement> | undefined;
203
+ onContextMenuCapture?: import("react").MouseEventHandler<HTMLDivElement> | undefined;
204
+ onDoubleClick?: import("react").MouseEventHandler<HTMLDivElement> | undefined;
205
+ onDoubleClickCapture?: import("react").MouseEventHandler<HTMLDivElement> | undefined;
206
+ onDrag?: import("react").DragEventHandler<HTMLDivElement> | undefined;
207
+ onDragCapture?: import("react").DragEventHandler<HTMLDivElement> | undefined;
208
+ onDragEnd?: import("react").DragEventHandler<HTMLDivElement> | undefined;
209
+ onDragEndCapture?: import("react").DragEventHandler<HTMLDivElement> | undefined;
210
+ onDragEnter?: import("react").DragEventHandler<HTMLDivElement> | undefined;
211
+ onDragEnterCapture?: import("react").DragEventHandler<HTMLDivElement> | undefined;
212
+ onDragExit?: import("react").DragEventHandler<HTMLDivElement> | undefined;
213
+ onDragExitCapture?: import("react").DragEventHandler<HTMLDivElement> | undefined;
214
+ onDragLeave?: import("react").DragEventHandler<HTMLDivElement> | undefined;
215
+ onDragLeaveCapture?: import("react").DragEventHandler<HTMLDivElement> | undefined;
216
+ onDragOver?: import("react").DragEventHandler<HTMLDivElement> | undefined;
217
+ onDragOverCapture?: import("react").DragEventHandler<HTMLDivElement> | undefined;
218
+ onDragStart?: import("react").DragEventHandler<HTMLDivElement> | undefined;
219
+ onDragStartCapture?: import("react").DragEventHandler<HTMLDivElement> | undefined;
220
+ onDrop?: import("react").DragEventHandler<HTMLDivElement> | undefined;
221
+ onDropCapture?: import("react").DragEventHandler<HTMLDivElement> | undefined;
222
+ onMouseDown?: import("react").MouseEventHandler<HTMLDivElement> | undefined;
223
+ onMouseDownCapture?: import("react").MouseEventHandler<HTMLDivElement> | undefined;
224
+ onMouseEnter?: import("react").MouseEventHandler<HTMLDivElement> | undefined;
225
+ onMouseLeave?: import("react").MouseEventHandler<HTMLDivElement> | undefined;
226
+ onMouseMove?: import("react").MouseEventHandler<HTMLDivElement> | undefined;
227
+ onMouseMoveCapture?: import("react").MouseEventHandler<HTMLDivElement> | undefined;
228
+ onMouseOut?: import("react").MouseEventHandler<HTMLDivElement> | undefined;
229
+ onMouseOutCapture?: import("react").MouseEventHandler<HTMLDivElement> | undefined;
230
+ onMouseOver?: import("react").MouseEventHandler<HTMLDivElement> | undefined;
231
+ onMouseOverCapture?: import("react").MouseEventHandler<HTMLDivElement> | undefined;
232
+ onMouseUp?: import("react").MouseEventHandler<HTMLDivElement> | undefined;
233
+ onMouseUpCapture?: import("react").MouseEventHandler<HTMLDivElement> | undefined;
234
+ onSelect?: import("react").ReactEventHandler<HTMLDivElement> | undefined;
235
+ onSelectCapture?: import("react").ReactEventHandler<HTMLDivElement> | undefined;
236
+ onTouchCancel?: import("react").TouchEventHandler<HTMLDivElement> | undefined;
237
+ onTouchCancelCapture?: import("react").TouchEventHandler<HTMLDivElement> | undefined;
238
+ onTouchEnd?: import("react").TouchEventHandler<HTMLDivElement> | undefined;
239
+ onTouchEndCapture?: import("react").TouchEventHandler<HTMLDivElement> | undefined;
240
+ onTouchMove?: import("react").TouchEventHandler<HTMLDivElement> | undefined;
241
+ onTouchMoveCapture?: import("react").TouchEventHandler<HTMLDivElement> | undefined;
242
+ onTouchStart?: import("react").TouchEventHandler<HTMLDivElement> | undefined;
243
+ onTouchStartCapture?: import("react").TouchEventHandler<HTMLDivElement> | undefined;
244
+ onPointerDown?: import("react").PointerEventHandler<HTMLDivElement> | undefined;
245
+ onPointerDownCapture?: import("react").PointerEventHandler<HTMLDivElement> | undefined;
246
+ onPointerMove?: import("react").PointerEventHandler<HTMLDivElement> | undefined;
247
+ onPointerMoveCapture?: import("react").PointerEventHandler<HTMLDivElement> | undefined;
248
+ onPointerUp?: import("react").PointerEventHandler<HTMLDivElement> | undefined;
249
+ onPointerUpCapture?: import("react").PointerEventHandler<HTMLDivElement> | undefined;
250
+ onPointerCancel?: import("react").PointerEventHandler<HTMLDivElement> | undefined;
251
+ onPointerCancelCapture?: import("react").PointerEventHandler<HTMLDivElement> | undefined;
252
+ onPointerEnter?: import("react").PointerEventHandler<HTMLDivElement> | undefined;
253
+ onPointerLeave?: import("react").PointerEventHandler<HTMLDivElement> | undefined;
254
+ onPointerOver?: import("react").PointerEventHandler<HTMLDivElement> | undefined;
255
+ onPointerOverCapture?: import("react").PointerEventHandler<HTMLDivElement> | undefined;
256
+ onPointerOut?: import("react").PointerEventHandler<HTMLDivElement> | undefined;
257
+ onPointerOutCapture?: import("react").PointerEventHandler<HTMLDivElement> | undefined;
258
+ onGotPointerCapture?: import("react").PointerEventHandler<HTMLDivElement> | undefined;
259
+ onGotPointerCaptureCapture?: import("react").PointerEventHandler<HTMLDivElement> | undefined;
260
+ onLostPointerCapture?: import("react").PointerEventHandler<HTMLDivElement> | undefined;
261
+ onLostPointerCaptureCapture?: import("react").PointerEventHandler<HTMLDivElement> | undefined;
262
+ onScroll?: import("react").UIEventHandler<HTMLDivElement> | undefined;
263
+ onScrollCapture?: import("react").UIEventHandler<HTMLDivElement> | undefined;
264
+ onWheel?: import("react").WheelEventHandler<HTMLDivElement> | undefined;
265
+ onWheelCapture?: import("react").WheelEventHandler<HTMLDivElement> | undefined;
266
+ onAnimationStart?: import("react").AnimationEventHandler<HTMLDivElement> | undefined;
267
+ onAnimationStartCapture?: import("react").AnimationEventHandler<HTMLDivElement> | undefined;
268
+ onAnimationEnd?: import("react").AnimationEventHandler<HTMLDivElement> | undefined;
269
+ onAnimationEndCapture?: import("react").AnimationEventHandler<HTMLDivElement> | undefined;
270
+ onAnimationIteration?: import("react").AnimationEventHandler<HTMLDivElement> | undefined;
271
+ onAnimationIterationCapture?: import("react").AnimationEventHandler<HTMLDivElement> | undefined;
272
+ onTransitionEnd?: import("react").TransitionEventHandler<HTMLDivElement> | undefined;
273
+ onTransitionEndCapture?: import("react").TransitionEventHandler<HTMLDivElement> | undefined;
274
+ key?: import("react").Key | null | undefined;
275
+ ref?: import("react").LegacyRef<HTMLDivElement> | undefined;
276
+ }>) => import("react/jsx-runtime").JSX.Element)[];
277
+ };
278
+ export default meta;
279
+ type Story = StoryObj<typeof meta>;
280
+ export declare const Default: Story;
281
+ export declare const TwoActions: Story;
282
+ export declare const WithComposer: Story;
@@ -9,7 +9,7 @@ export interface BaseButtonProps extends ComponentPropsWithRef<'button'>, Common
9
9
  children?: ReactNode;
10
10
  loadingComponent?: ReactNode;
11
11
  }
12
- export interface CTAButtonProps extends ComponentPropsWithRef<'button'>, CommonButtonProps, TrackProps {
12
+ export interface CTAButtonProps extends ComponentPropsWithRef<'button'>, CommonButtonProps, AsChildProps, TrackProps {
13
13
  variant?: (typeof variant)[number];
14
14
  size?: (typeof sizes)[number];
15
15
  text: string | ReactNode;
@@ -17,4 +17,6 @@ export interface CTAButtonProps extends ComponentPropsWithRef<'button'>, CommonB
17
17
  rightIcon?: ReactNode;
18
18
  /** 버튼 오른쪽 위 모서리에 끼우는 말풍선(Callout) 글자. 글자는 움직이지 않는다. 로딩 중에는 Spinner 와 바뀌어 숨는다 */
19
19
  callout?: ReactNode;
20
+ /** 링크 요소 하나(`<a>`·라우터 Link)를 children 으로 주면 그 요소가 버튼 모양이 된다. 버튼 글자·아이콘은 그 안에 들어간다. loading 은 쓰지 않는다 */
21
+ children?: ReactNode;
20
22
  }
@@ -30,3 +30,4 @@ export declare const Sizes: Story;
30
30
  export declare const Loading: Story;
31
31
  export declare const Disabled: Story;
32
32
  export declare const WithIcons: Story;
33
+ export declare const AsLink: Story;