@nurihaus/web-design-system 3.8.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.
- package/README.md +1 -1
- package/dist/ai/components.md +44 -4
- package/dist/ai/motion.md +2 -0
- package/dist/ai/tokens.md +3 -0
- package/dist/chunk-1176.js +24 -0
- package/dist/chunk-910.js +15 -13
- package/dist/components/bottom-bar/bottom-bar.stories.d.ts +6 -6
- package/dist/components/empty-state/empty-state.stories.d.ts +8 -8
- package/dist/components/icon/icon.stories.d.ts +1 -1
- package/dist/components/icon-button/base-icon-button.d.ts +3 -0
- package/dist/components/icon-button/icon-button-props.d.ts +12 -0
- package/dist/components/icon-button/icon-button-type.d.ts +16 -0
- package/dist/components/icon-button/icon-button.d.ts +5 -0
- package/dist/components/icon-button/icon-button.stories.d.ts +31 -0
- package/dist/components/list/list-row.stories.d.ts +10 -10
- package/dist/components/message/message.stories.d.ts +10 -10
- package/dist/components/message-composer/message-composer-type.d.ts +4 -0
- package/dist/components/message-composer/message-composer.stories.d.ts +2 -0
- package/dist/components/notice/notice-type.d.ts +2 -0
- package/dist/components/notice/notice.stories.d.ts +7 -7
- package/dist/components/skeleton/skeleton.stories.d.ts +7 -7
- package/dist/components/toast/toast.stories.d.ts +12 -12
- package/dist/components.css +96 -0
- package/dist/cta-button.js +20 -16
- package/dist/helpers/utils/fillLinkChild.d.ts +6 -0
- package/dist/icon-button.js +338 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.js +216 -26
- package/dist/list-row.js +19 -13
- package/dist/message-composer.js +5 -1
- package/dist/modal-with-double-button.js +8 -6
- package/dist/notice.js +9 -5
- package/dist/styles.css +83 -0
- package/dist/toast.js +8 -6
- package/dist/tokens.css +5 -0
- package/package.json +5 -1
|
@@ -22,14 +22,8 @@ declare const meta: {
|
|
|
22
22
|
};
|
|
23
23
|
decorators: ((Story: import("storybook/internal/csf").PartialStoryFn<import("@storybook/react-webpack5").ReactRenderer, {
|
|
24
24
|
className?: string | undefined | undefined;
|
|
25
|
-
onClick?: import("react").MouseEventHandler<HTMLDivElement> | undefined;
|
|
26
|
-
onChange?: import("react").FormEventHandler<HTMLDivElement> | undefined;
|
|
27
|
-
id?: string | undefined | undefined;
|
|
28
25
|
style?: import("react").CSSProperties | undefined;
|
|
29
26
|
children: import("react").ReactNode;
|
|
30
|
-
slot?: string | undefined | undefined;
|
|
31
|
-
title?: import("react").ReactNode;
|
|
32
|
-
key?: import("react").Key | null | undefined;
|
|
33
27
|
defaultChecked?: boolean | undefined | undefined;
|
|
34
28
|
defaultValue?: string | number | readonly string[] | undefined;
|
|
35
29
|
suppressContentEditableWarning?: boolean | undefined | undefined;
|
|
@@ -43,10 +37,13 @@ declare const meta: {
|
|
|
43
37
|
draggable?: (boolean | "true" | "false") | undefined;
|
|
44
38
|
enterKeyHint?: "enter" | "done" | "go" | "next" | "previous" | "search" | "send" | undefined | undefined;
|
|
45
39
|
hidden?: boolean | undefined | undefined;
|
|
40
|
+
id?: string | undefined | undefined;
|
|
46
41
|
lang?: string | undefined | undefined;
|
|
47
42
|
nonce?: string | undefined | undefined;
|
|
43
|
+
slot?: string | undefined | undefined;
|
|
48
44
|
spellCheck?: (boolean | "true" | "false") | undefined;
|
|
49
45
|
tabIndex?: number | undefined | undefined;
|
|
46
|
+
title?: import("react").ReactNode;
|
|
50
47
|
translate?: "yes" | "no" | undefined | undefined;
|
|
51
48
|
radioGroup?: string | undefined | undefined;
|
|
52
49
|
role?: import("react").AriaRole | undefined;
|
|
@@ -148,6 +145,7 @@ declare const meta: {
|
|
|
148
145
|
onFocusCapture?: import("react").FocusEventHandler<HTMLDivElement> | undefined;
|
|
149
146
|
onBlur?: import("react").FocusEventHandler<HTMLDivElement> | undefined;
|
|
150
147
|
onBlurCapture?: import("react").FocusEventHandler<HTMLDivElement> | undefined;
|
|
148
|
+
onChange?: import("react").FormEventHandler<HTMLDivElement> | undefined;
|
|
151
149
|
onChangeCapture?: import("react").FormEventHandler<HTMLDivElement> | undefined;
|
|
152
150
|
onBeforeInput?: import("react").InputEventHandler<HTMLDivElement> | undefined;
|
|
153
151
|
onBeforeInputCapture?: import("react").FormEventHandler<HTMLDivElement> | undefined;
|
|
@@ -215,6 +213,7 @@ declare const meta: {
|
|
|
215
213
|
onWaitingCapture?: import("react").ReactEventHandler<HTMLDivElement> | undefined;
|
|
216
214
|
onAuxClick?: import("react").MouseEventHandler<HTMLDivElement> | undefined;
|
|
217
215
|
onAuxClickCapture?: import("react").MouseEventHandler<HTMLDivElement> | undefined;
|
|
216
|
+
onClick?: import("react").MouseEventHandler<HTMLDivElement> | undefined;
|
|
218
217
|
onClickCapture?: import("react").MouseEventHandler<HTMLDivElement> | undefined;
|
|
219
218
|
onContextMenu?: import("react").MouseEventHandler<HTMLDivElement> | undefined;
|
|
220
219
|
onContextMenuCapture?: import("react").MouseEventHandler<HTMLDivElement> | undefined;
|
|
@@ -288,8 +287,9 @@ declare const meta: {
|
|
|
288
287
|
onAnimationIterationCapture?: import("react").AnimationEventHandler<HTMLDivElement> | undefined;
|
|
289
288
|
onTransitionEnd?: import("react").TransitionEventHandler<HTMLDivElement> | undefined;
|
|
290
289
|
onTransitionEndCapture?: import("react").TransitionEventHandler<HTMLDivElement> | undefined;
|
|
291
|
-
|
|
290
|
+
key?: import("react").Key | null | undefined;
|
|
292
291
|
variant?: (typeof variant)[number] | undefined;
|
|
292
|
+
motion?: (typeof motion)[number] | undefined;
|
|
293
293
|
action?: import("./notice-type").NoticeAction | undefined;
|
|
294
294
|
ref?: import("react").LegacyRef<HTMLDivElement> | undefined;
|
|
295
295
|
}>) => import("react/jsx-runtime").JSX.Element)[];
|
|
@@ -39,14 +39,8 @@ declare const meta: {
|
|
|
39
39
|
};
|
|
40
40
|
decorators: ((Story: import("storybook/internal/csf").PartialStoryFn<import("@storybook/react-webpack5").ReactRenderer, {
|
|
41
41
|
className?: string | undefined | undefined;
|
|
42
|
-
onClick?: import("react").MouseEventHandler<HTMLSpanElement> | undefined;
|
|
43
|
-
onChange?: import("react").FormEventHandler<HTMLSpanElement> | undefined;
|
|
44
|
-
id?: string | undefined | undefined;
|
|
45
42
|
style?: import("react").CSSProperties | undefined;
|
|
46
43
|
children?: import("react").ReactNode;
|
|
47
|
-
slot?: string | undefined | undefined;
|
|
48
|
-
title?: string | undefined | undefined;
|
|
49
|
-
key?: import("react").Key | null | undefined;
|
|
50
44
|
defaultChecked?: boolean | undefined | undefined;
|
|
51
45
|
defaultValue?: string | number | readonly string[] | undefined;
|
|
52
46
|
suppressContentEditableWarning?: boolean | undefined | undefined;
|
|
@@ -60,10 +54,13 @@ declare const meta: {
|
|
|
60
54
|
draggable?: (boolean | "true" | "false") | undefined;
|
|
61
55
|
enterKeyHint?: "enter" | "done" | "go" | "next" | "previous" | "search" | "send" | undefined | undefined;
|
|
62
56
|
hidden?: boolean | undefined | undefined;
|
|
57
|
+
id?: string | undefined | undefined;
|
|
63
58
|
lang?: string | undefined | undefined;
|
|
64
59
|
nonce?: string | undefined | undefined;
|
|
60
|
+
slot?: string | undefined | undefined;
|
|
65
61
|
spellCheck?: (boolean | "true" | "false") | undefined;
|
|
66
62
|
tabIndex?: number | undefined | undefined;
|
|
63
|
+
title?: string | undefined | undefined;
|
|
67
64
|
translate?: "yes" | "no" | undefined | undefined;
|
|
68
65
|
radioGroup?: string | undefined | undefined;
|
|
69
66
|
role?: import("react").AriaRole | undefined;
|
|
@@ -165,6 +162,7 @@ declare const meta: {
|
|
|
165
162
|
onFocusCapture?: import("react").FocusEventHandler<HTMLSpanElement> | undefined;
|
|
166
163
|
onBlur?: import("react").FocusEventHandler<HTMLSpanElement> | undefined;
|
|
167
164
|
onBlurCapture?: import("react").FocusEventHandler<HTMLSpanElement> | undefined;
|
|
165
|
+
onChange?: import("react").FormEventHandler<HTMLSpanElement> | undefined;
|
|
168
166
|
onChangeCapture?: import("react").FormEventHandler<HTMLSpanElement> | undefined;
|
|
169
167
|
onBeforeInput?: import("react").InputEventHandler<HTMLSpanElement> | undefined;
|
|
170
168
|
onBeforeInputCapture?: import("react").FormEventHandler<HTMLSpanElement> | undefined;
|
|
@@ -232,6 +230,7 @@ declare const meta: {
|
|
|
232
230
|
onWaitingCapture?: import("react").ReactEventHandler<HTMLSpanElement> | undefined;
|
|
233
231
|
onAuxClick?: import("react").MouseEventHandler<HTMLSpanElement> | undefined;
|
|
234
232
|
onAuxClickCapture?: import("react").MouseEventHandler<HTMLSpanElement> | undefined;
|
|
233
|
+
onClick?: import("react").MouseEventHandler<HTMLSpanElement> | undefined;
|
|
235
234
|
onClickCapture?: import("react").MouseEventHandler<HTMLSpanElement> | undefined;
|
|
236
235
|
onContextMenu?: import("react").MouseEventHandler<HTMLSpanElement> | undefined;
|
|
237
236
|
onContextMenuCapture?: import("react").MouseEventHandler<HTMLSpanElement> | undefined;
|
|
@@ -305,8 +304,9 @@ declare const meta: {
|
|
|
305
304
|
onAnimationIterationCapture?: import("react").AnimationEventHandler<HTMLSpanElement> | undefined;
|
|
306
305
|
onTransitionEnd?: import("react").TransitionEventHandler<HTMLSpanElement> | undefined;
|
|
307
306
|
onTransitionEndCapture?: import("react").TransitionEventHandler<HTMLSpanElement> | undefined;
|
|
308
|
-
|
|
307
|
+
key?: import("react").Key | null | undefined;
|
|
309
308
|
height?: number | string | undefined;
|
|
309
|
+
width?: number | string | undefined;
|
|
310
310
|
shape?: (typeof shapes)[number] | undefined;
|
|
311
311
|
lines?: number | undefined;
|
|
312
312
|
animated?: boolean | undefined;
|
|
@@ -18,17 +18,7 @@ declare const meta: {
|
|
|
18
18
|
};
|
|
19
19
|
decorators: ((Story: import("storybook/internal/csf").PartialStoryFn<import("@storybook/react-webpack5").ReactRenderer, {
|
|
20
20
|
className?: string | undefined;
|
|
21
|
-
onClick?: import("react").MouseEventHandler<HTMLLIElement> | undefined;
|
|
22
|
-
onChange?: import("react").FormEventHandler<HTMLLIElement> | undefined;
|
|
23
|
-
id?: string | undefined | undefined;
|
|
24
|
-
track?: string | undefined;
|
|
25
|
-
trackProps?: Record<string, string | number | boolean> | undefined;
|
|
26
21
|
style?: import("react").CSSProperties | undefined;
|
|
27
|
-
open?: boolean | undefined;
|
|
28
|
-
slot?: string | undefined | undefined;
|
|
29
|
-
title: import("react").ReactNode;
|
|
30
|
-
key?: import("react").Key | null | undefined;
|
|
31
|
-
value?: string | number | readonly string[] | undefined;
|
|
32
22
|
defaultChecked?: boolean | undefined | undefined;
|
|
33
23
|
defaultValue?: string | number | readonly string[] | undefined;
|
|
34
24
|
suppressContentEditableWarning?: boolean | undefined | undefined;
|
|
@@ -42,10 +32,13 @@ declare const meta: {
|
|
|
42
32
|
draggable?: (boolean | "true" | "false") | undefined;
|
|
43
33
|
enterKeyHint?: "enter" | "done" | "go" | "next" | "previous" | "search" | "send" | undefined | undefined;
|
|
44
34
|
hidden?: boolean | undefined | undefined;
|
|
35
|
+
id?: string | undefined | undefined;
|
|
45
36
|
lang?: string | undefined | undefined;
|
|
46
37
|
nonce?: string | undefined | undefined;
|
|
38
|
+
slot?: string | undefined | undefined;
|
|
47
39
|
spellCheck?: (boolean | "true" | "false") | undefined;
|
|
48
40
|
tabIndex?: number | undefined | undefined;
|
|
41
|
+
title: import("react").ReactNode;
|
|
49
42
|
translate?: "yes" | "no" | undefined | undefined;
|
|
50
43
|
radioGroup?: string | undefined | undefined;
|
|
51
44
|
role?: import("react").AriaRole | undefined;
|
|
@@ -147,6 +140,7 @@ declare const meta: {
|
|
|
147
140
|
onFocusCapture?: import("react").FocusEventHandler<HTMLLIElement> | undefined;
|
|
148
141
|
onBlur?: import("react").FocusEventHandler<HTMLLIElement> | undefined;
|
|
149
142
|
onBlurCapture?: import("react").FocusEventHandler<HTMLLIElement> | undefined;
|
|
143
|
+
onChange?: import("react").FormEventHandler<HTMLLIElement> | undefined;
|
|
150
144
|
onChangeCapture?: import("react").FormEventHandler<HTMLLIElement> | undefined;
|
|
151
145
|
onBeforeInput?: import("react").InputEventHandler<HTMLLIElement> | undefined;
|
|
152
146
|
onBeforeInputCapture?: import("react").FormEventHandler<HTMLLIElement> | undefined;
|
|
@@ -214,6 +208,7 @@ declare const meta: {
|
|
|
214
208
|
onWaitingCapture?: import("react").ReactEventHandler<HTMLLIElement> | undefined;
|
|
215
209
|
onAuxClick?: import("react").MouseEventHandler<HTMLLIElement> | undefined;
|
|
216
210
|
onAuxClickCapture?: import("react").MouseEventHandler<HTMLLIElement> | undefined;
|
|
211
|
+
onClick?: import("react").MouseEventHandler<HTMLLIElement> | undefined;
|
|
217
212
|
onClickCapture?: import("react").MouseEventHandler<HTMLLIElement> | undefined;
|
|
218
213
|
onContextMenu?: import("react").MouseEventHandler<HTMLLIElement> | undefined;
|
|
219
214
|
onContextMenuCapture?: import("react").MouseEventHandler<HTMLLIElement> | undefined;
|
|
@@ -287,12 +282,17 @@ declare const meta: {
|
|
|
287
282
|
onAnimationIterationCapture?: import("react").AnimationEventHandler<HTMLLIElement> | undefined;
|
|
288
283
|
onTransitionEnd?: import("react").TransitionEventHandler<HTMLLIElement> | undefined;
|
|
289
284
|
onTransitionEndCapture?: import("react").TransitionEventHandler<HTMLLIElement> | undefined;
|
|
290
|
-
|
|
285
|
+
track?: string | undefined;
|
|
286
|
+
key?: import("react").Key | null | undefined;
|
|
287
|
+
value?: string | number | readonly string[] | undefined;
|
|
288
|
+
variant?: (typeof variants)[number] | undefined;
|
|
289
|
+
trackProps?: Record<string, string | number | boolean> | undefined;
|
|
290
|
+
open?: boolean | undefined;
|
|
291
291
|
defaultOpen?: boolean | undefined;
|
|
292
292
|
onOpenChange?: ((open: boolean) => void) | undefined;
|
|
293
|
+
onResume?: (() => void) | undefined;
|
|
293
294
|
duration?: number | undefined;
|
|
294
295
|
description?: import("react").ReactNode;
|
|
295
|
-
variant?: (typeof variants)[number] | undefined;
|
|
296
296
|
action?: import("./toast-type").ToastAction | undefined;
|
|
297
297
|
showClose?: boolean | undefined;
|
|
298
298
|
ref?: import("react").LegacyRef<HTMLLIElement> | undefined;
|
package/dist/components.css
CHANGED
|
@@ -2418,6 +2418,102 @@
|
|
|
2418
2418
|
height: var(--icon-size-xl);
|
|
2419
2419
|
}
|
|
2420
2420
|
|
|
2421
|
+
.base-icon-button {
|
|
2422
|
+
position: relative;
|
|
2423
|
+
flex: none;
|
|
2424
|
+
display: inline-flex;
|
|
2425
|
+
align-items: center;
|
|
2426
|
+
justify-content: center;
|
|
2427
|
+
padding: 0;
|
|
2428
|
+
border: none;
|
|
2429
|
+
cursor: var(--cursor-button);
|
|
2430
|
+
|
|
2431
|
+
/* 보이는 크기가 작아도(s 36) 누르는 자리는 터치 44 */
|
|
2432
|
+
}
|
|
2433
|
+
|
|
2434
|
+
.base-icon-button::after {
|
|
2435
|
+
content: '';
|
|
2436
|
+
position: absolute;
|
|
2437
|
+
top: 50%;
|
|
2438
|
+
left: 50%;
|
|
2439
|
+
width: var(--touch-target);
|
|
2440
|
+
height: var(--touch-target);
|
|
2441
|
+
transform: translate(-50%, -50%);
|
|
2442
|
+
}
|
|
2443
|
+
|
|
2444
|
+
.base-icon-button[data-disabled] {
|
|
2445
|
+
cursor: var(--cursor-disabled);
|
|
2446
|
+
}
|
|
2447
|
+
|
|
2448
|
+
/***************************************************************************************************
|
|
2449
|
+
* *
|
|
2450
|
+
* icon-button *
|
|
2451
|
+
* *
|
|
2452
|
+
***************************************************************************************************/
|
|
2453
|
+
|
|
2454
|
+
.icon-button {
|
|
2455
|
+
border-radius: var(--radius-full);
|
|
2456
|
+
transition:
|
|
2457
|
+
transform var(--motion-press-duration) var(--motion-press-ease),
|
|
2458
|
+
background-color var(--motion-press-duration) var(--motion-press-ease);
|
|
2459
|
+
}
|
|
2460
|
+
|
|
2461
|
+
.icon-button:active:not([data-disabled]) {
|
|
2462
|
+
transform: scale(var(--motion-press-scale));
|
|
2463
|
+
}
|
|
2464
|
+
|
|
2465
|
+
.icon-button:focus-visible {
|
|
2466
|
+
outline: var(--hairline) solid var(--color-purple-600);
|
|
2467
|
+
outline-offset: var(--spacing-2);
|
|
2468
|
+
}
|
|
2469
|
+
|
|
2470
|
+
.icon-button.size-s {
|
|
2471
|
+
width: var(--icon-button-size-s);
|
|
2472
|
+
height: var(--icon-button-size-s);
|
|
2473
|
+
}
|
|
2474
|
+
|
|
2475
|
+
.icon-button.size-m {
|
|
2476
|
+
width: var(--icon-button-size-m);
|
|
2477
|
+
height: var(--icon-button-size-m);
|
|
2478
|
+
}
|
|
2479
|
+
|
|
2480
|
+
.icon-button.size-l {
|
|
2481
|
+
width: var(--icon-button-size-l);
|
|
2482
|
+
height: var(--icon-button-size-l);
|
|
2483
|
+
}
|
|
2484
|
+
|
|
2485
|
+
/* 바탕 없이 아이콘만. 누르는 동안 회색 원이 보인다 */
|
|
2486
|
+
|
|
2487
|
+
.icon-button.variant-ghost {
|
|
2488
|
+
background-color: transparent;
|
|
2489
|
+
color: var(--color-grey-scale-700);
|
|
2490
|
+
}
|
|
2491
|
+
|
|
2492
|
+
.icon-button.variant-ghost:active:not([data-disabled]) {
|
|
2493
|
+
background-color: var(--color-grey-scale-100);
|
|
2494
|
+
}
|
|
2495
|
+
|
|
2496
|
+
/* CTAButton secondary 와 같은 연보라 */
|
|
2497
|
+
|
|
2498
|
+
.icon-button.variant-secondary {
|
|
2499
|
+
background-color: var(--color-purple-50);
|
|
2500
|
+
color: var(--color-purple-900);
|
|
2501
|
+
}
|
|
2502
|
+
|
|
2503
|
+
.icon-button.variant-primary {
|
|
2504
|
+
background-color: var(--color-purple-900);
|
|
2505
|
+
color: var(--color-white);
|
|
2506
|
+
}
|
|
2507
|
+
|
|
2508
|
+
.icon-button[data-disabled] {
|
|
2509
|
+
color: var(--color-grey-scale-300);
|
|
2510
|
+
}
|
|
2511
|
+
|
|
2512
|
+
.icon-button[data-disabled]:is(.variant-secondary,.variant-primary) {
|
|
2513
|
+
background-color: var(--color-grey-scale-200);
|
|
2514
|
+
color: var(--color-white);
|
|
2515
|
+
}
|
|
2516
|
+
|
|
2421
2517
|
.base-list:where(.group) {
|
|
2422
2518
|
display: flex;
|
|
2423
2519
|
flex-direction: column;
|
package/dist/cta-button.js
CHANGED
|
@@ -13,11 +13,12 @@ import * as __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_179142b8__ from "react/j
|
|
|
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
|
|
17
|
-
/* harmony import */ var
|
|
18
|
-
/* harmony import */ var
|
|
19
|
-
/* harmony import */ var
|
|
20
|
-
/* harmony import */ var
|
|
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,8 +46,9 @@ 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,
|
|
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,
|
|
@@ -64,26 +66,26 @@ var CTAButton = /*#__PURE__*/(0,react__WEBPACK_IMPORTED_MODULE_1__.forwardRef)(f
|
|
|
64
66
|
trackProps: trackProps
|
|
65
67
|
});
|
|
66
68
|
var content = (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.Fragment, {
|
|
67
|
-
children: [leftIcon, text, rightIcon, callout ? (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(
|
|
69
|
+
children: [leftIcon, text, rightIcon, callout ? (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(_callout_callout__WEBPACK_IMPORTED_MODULE_6__/* ["default"] */ .A, {
|
|
68
70
|
className: 'cta-button-callout',
|
|
69
71
|
text: callout
|
|
70
72
|
}) : null]
|
|
71
73
|
});
|
|
72
74
|
// asChild 면 넘겨받은 링크 요소 안에 버튼 글자를 넣고, 그 요소가 버튼 클래스·핸들러를 받는다
|
|
73
|
-
var
|
|
74
|
-
return (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(
|
|
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({
|
|
75
77
|
ref: ref,
|
|
76
78
|
className: (0,_helpers_utils_classNames__WEBPACK_IMPORTED_MODULE_3__/* .classNames */ .x)(className, 'cta-button', callout ? 'with-callout' : undefined),
|
|
77
|
-
loadingComponent: (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(
|
|
78
|
-
asChild:
|
|
79
|
+
loadingComponent: (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(_loading_spinner_spinner__WEBPACK_IMPORTED_MODULE_7__/* ["default"] */ .A, {}),
|
|
80
|
+
asChild: link !== null,
|
|
79
81
|
// 링크는 로딩을 그리지 않는다. 그리면 Spinner 가 링크 자리를 차지한다
|
|
80
|
-
loading:
|
|
82
|
+
loading: link ? undefined : loading,
|
|
81
83
|
onClick: function onClick(event) {
|
|
82
84
|
emit('click');
|
|
83
85
|
_onClick === null || _onClick === void 0 ? void 0 : _onClick(event);
|
|
84
86
|
}
|
|
85
87
|
}, restProps, {
|
|
86
|
-
children:
|
|
88
|
+
children: link !== null && link !== void 0 ? link : content
|
|
87
89
|
}));
|
|
88
90
|
});
|
|
89
91
|
CTAButton.displayName = 'CTAButton';
|
|
@@ -258,15 +260,17 @@ module.exports = x({ ["Fragment"]: () => (__WEBPACK_EXTERNAL_MODULE_react_jsx_ru
|
|
|
258
260
|
/******/ __nuri_require__.C(__webpack_chunk_6__);
|
|
259
261
|
/******/ import * as __webpack_chunk_7__ from "./chunk-8933.js";
|
|
260
262
|
/******/ __nuri_require__.C(__webpack_chunk_7__);
|
|
261
|
-
/******/ import * as __webpack_chunk_8__ from "./chunk-
|
|
263
|
+
/******/ import * as __webpack_chunk_8__ from "./chunk-1176.js";
|
|
262
264
|
/******/ __nuri_require__.C(__webpack_chunk_8__);
|
|
263
|
-
/******/ import * as __webpack_chunk_9__ from "./chunk-
|
|
265
|
+
/******/ import * as __webpack_chunk_9__ from "./chunk-2496.js";
|
|
264
266
|
/******/ __nuri_require__.C(__webpack_chunk_9__);
|
|
267
|
+
/******/ import * as __webpack_chunk_10__ from "./chunk-5226.js";
|
|
268
|
+
/******/ __nuri_require__.C(__webpack_chunk_10__);
|
|
265
269
|
/******/
|
|
266
270
|
/******/ // startup
|
|
267
271
|
/******/ // Load entry module and return exports
|
|
268
272
|
/******/ // This entry module depends on other loaded chunks and execution need to be delayed
|
|
269
|
-
/******/ var __webpack_exports__ = __nuri_require__.O(undefined, [3274,7335,4560,7298,2777,6302,8933,2496,5226], () => (__nuri_require__(910)))
|
|
273
|
+
/******/ var __webpack_exports__ = __nuri_require__.O(undefined, [3274,7335,4560,7298,2777,6302,8933,1176,2496,5226], () => (__nuri_require__(910)))
|
|
270
274
|
/******/ __webpack_exports__ = __nuri_require__.O(__webpack_exports__);
|
|
271
275
|
/******/ const __webpack_exports__default = __webpack_exports__.A;
|
|
272
276
|
/******/ export { __webpack_exports__default as default };
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { ReactNode } from 'react';
|
|
2
|
+
/**
|
|
3
|
+
* asChild 로 받은 요소 하나(`<a>`·라우터 Link)에 컴포넌트의 내용을 채운다.
|
|
4
|
+
* 요소가 아니면 null — 쓰는 쪽은 null 이면 자기 기본 요소를 그린다.
|
|
5
|
+
*/
|
|
6
|
+
export declare const fillLinkChild: (asChild: boolean | undefined, children: ReactNode, content: ReactNode) => import("react").ReactElement<any, string | import("react").JSXElementConstructor<any>> | null;
|