@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
package/dist/notice.js ADDED
@@ -0,0 +1,346 @@
1
+ "use client";
2
+ import * as __WEBPACK_EXTERNAL_MODULE_react__ from "react";
3
+ import * as __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_179142b8__ from "react/jsx-runtime";
4
+ /******/ var __webpack_modules__ = ({
5
+
6
+ /***/ 2980
7
+ (__unused_webpack_module, __webpack_exports__, __nuri_require__) {
8
+
9
+
10
+ // EXPORTS
11
+ __nuri_require__.d(__webpack_exports__, {
12
+ A: () => (/* binding */ notice)
13
+ });
14
+
15
+ // EXTERNAL MODULE: external {"root":"jsx-runtime","commonjs2":"react/jsx-runtime","commonjs":"react/jsx-runtime","amd":"react/jsx-runtime","module":"react/jsx-runtime"}
16
+ var jsx_runtime_ = __nuri_require__(612);
17
+ // EXTERNAL MODULE: external {"root":"React","commonjs2":"react","commonjs":"react","amd":"react","module":"react"}
18
+ var external_root_React_commonjs2_react_commonjs_react_amd_react_module_react_ = __nuri_require__(1041);
19
+ // EXTERNAL MODULE: ./helpers/utils/classNames.js
20
+ var classNames = __nuri_require__(3274);
21
+ // EXTERNAL MODULE: ./helpers/utils/getMergedProps.ts
22
+ var getMergedProps = __nuri_require__(7335);
23
+ // EXTERNAL MODULE: ./components/button/cta-button.tsx
24
+ var cta_button = __nuri_require__(910);
25
+ // EXTERNAL MODULE: ./components/icon/icon.tsx
26
+ var icon = __nuri_require__(3547);
27
+ ;// ./components/notice/base-notice.tsx
28
+ var __assign = undefined && undefined.__assign || function () {
29
+ __assign = Object.assign || function (t) {
30
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
31
+ s = arguments[i];
32
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
33
+ }
34
+ return t;
35
+ };
36
+ return __assign.apply(this, arguments);
37
+ };
38
+ var __rest = undefined && undefined.__rest || function (s, e) {
39
+ var t = {};
40
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
41
+ if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
42
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
43
+ }
44
+ return t;
45
+ };
46
+
47
+
48
+
49
+ var BaseNotice = /*#__PURE__*/(0,external_root_React_commonjs2_react_commonjs_react_amd_react_module_react_.forwardRef)(function (props, ref) {
50
+ var className = props.className,
51
+ restProps = __rest(props, ["className"]);
52
+ return (0,jsx_runtime_.jsx)("div", __assign({
53
+ ref: ref,
54
+ className: (0,classNames/* classNames */.x)('nuri-theme base-notice', className)
55
+ }, restProps));
56
+ });
57
+ BaseNotice.displayName = 'BaseNotice';
58
+ /* harmony default export */ const base_notice = (BaseNotice);
59
+ ;// ./components/notice/notice-props.ts
60
+ var variant = ['neutral', 'success', 'warning', 'danger'];
61
+ /** 나타날 때 모션 세기. 주지 않으면 움직이지 않는다 (ADR 0008) */
62
+ var motion = ['weak', 'strong'];
63
+ var noticeProps = {
64
+ variant: {
65
+ type: 'className',
66
+ className: 'variant',
67
+ values: variant,
68
+ "default": 'neutral'
69
+ },
70
+ motion: {
71
+ type: 'className',
72
+ className: 'motion',
73
+ values: motion
74
+ }
75
+ };
76
+ ;// ./components/notice/notice.tsx
77
+ var notice_assign = undefined && undefined.__assign || function () {
78
+ notice_assign = Object.assign || function (t) {
79
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
80
+ s = arguments[i];
81
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
82
+ }
83
+ return t;
84
+ };
85
+ return notice_assign.apply(this, arguments);
86
+ };
87
+ var notice_rest = undefined && undefined.__rest || function (s, e) {
88
+ var t = {};
89
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
90
+ if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
91
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
92
+ }
93
+ return t;
94
+ };
95
+
96
+
97
+
98
+
99
+
100
+
101
+
102
+
103
+ var VARIANT_ICON = {
104
+ neutral: 'info',
105
+ success: 'check-circle',
106
+ warning: 'warning',
107
+ danger: 'warning'
108
+ };
109
+ /** 카드·시트 안에 머무는 안내. 스스로 사라지는 알림은 Toast 다 */
110
+ var Notice = /*#__PURE__*/(0,external_root_React_commonjs2_react_commonjs_react_amd_react_module_react_.forwardRef)(function (props, ref) {
111
+ var _a;
112
+ var _b = (0,getMergedProps/* getMergedProps */.p)(props, noticeProps),
113
+ className = _b.className,
114
+ title = _b.title,
115
+ children = _b.children,
116
+ action = _b.action,
117
+ restProps = notice_rest(_b, ["className", "title", "children", "action"]);
118
+ var variant = (_a = props.variant) !== null && _a !== void 0 ? _a : 'neutral';
119
+ return (0,jsx_runtime_.jsxs)(base_notice, notice_assign({
120
+ ref: ref,
121
+ className: (0,classNames/* classNames */.x)(className, 'notice'),
122
+ // danger 는 바로 읽어 준다. 쓰는 쪽이 role 을 주면 그 값이 앞선다
123
+ role: variant === 'danger' ? 'alert' : undefined
124
+ }, restProps, {
125
+ children: [(0,jsx_runtime_.jsx)(icon/* default */.A, {
126
+ className: 'notice-icon',
127
+ name: VARIANT_ICON[variant],
128
+ size: 's',
129
+ weight: 'fill'
130
+ }), (0,jsx_runtime_.jsxs)("div", {
131
+ className: 'notice-body',
132
+ children: [(0,jsx_runtime_.jsxs)("div", {
133
+ className: 'notice-text',
134
+ children: [title && (0,jsx_runtime_.jsx)("div", {
135
+ className: 'notice-title',
136
+ children: title
137
+ }), (0,jsx_runtime_.jsx)("div", {
138
+ className: 'notice-description',
139
+ children: children
140
+ })]
141
+ }), action && (0,jsx_runtime_.jsx)(cta_button/* default */.A, {
142
+ className: 'notice-action',
143
+ size: 'xs',
144
+ variant: 'neutral',
145
+ text: action.label,
146
+ // CTAButton 은 loading 중에도 누름을 받으므로 처리 중에는 다시 부르지 않는다
147
+ onClick: action.loading ? undefined : action.onClick,
148
+ loading: action.loading,
149
+ track: action.track,
150
+ trackProps: action.trackProps
151
+ })]
152
+ })]
153
+ }));
154
+ });
155
+ Notice.displayName = 'Notice';
156
+ /* harmony default export */ const notice = (Notice);
157
+
158
+ /***/ },
159
+
160
+ /***/ 1041
161
+ (module, __unused_webpack_exports, __nuri_require__) {
162
+
163
+ var x = (y) => {
164
+ var x = {}; __nuri_require__.d(x, y); return x
165
+ }
166
+ var y = (x) => (() => (x))
167
+ module.exports = x({ ["Children"]: () => (__WEBPACK_EXTERNAL_MODULE_react__.Children), ["cloneElement"]: () => (__WEBPACK_EXTERNAL_MODULE_react__.cloneElement), ["createContext"]: () => (__WEBPACK_EXTERNAL_MODULE_react__.createContext), ["forwardRef"]: () => (__WEBPACK_EXTERNAL_MODULE_react__.forwardRef), ["isValidElement"]: () => (__WEBPACK_EXTERNAL_MODULE_react__.isValidElement), ["useCallback"]: () => (__WEBPACK_EXTERNAL_MODULE_react__.useCallback), ["useContext"]: () => (__WEBPACK_EXTERNAL_MODULE_react__.useContext), ["useRef"]: () => (__WEBPACK_EXTERNAL_MODULE_react__.useRef) });
168
+
169
+ /***/ },
170
+
171
+ /***/ 612
172
+ (module, __unused_webpack_exports, __nuri_require__) {
173
+
174
+ var x = (y) => {
175
+ var x = {}; __nuri_require__.d(x, y); return x
176
+ }
177
+ var y = (x) => (() => (x))
178
+ module.exports = x({ ["Fragment"]: () => (__WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_179142b8__.Fragment), ["jsx"]: () => (__WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_179142b8__.jsx), ["jsxs"]: () => (__WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_179142b8__.jsxs) });
179
+
180
+ /***/ }
181
+
182
+ /******/ });
183
+ /************************************************************************/
184
+ /******/ // The module cache
185
+ /******/ var __webpack_module_cache__ = {};
186
+ /******/
187
+ /******/ // The require function
188
+ /******/ function __nuri_require__(moduleId) {
189
+ /******/ // Check if module is in cache
190
+ /******/ var cachedModule = __webpack_module_cache__[moduleId];
191
+ /******/ if (cachedModule !== undefined) {
192
+ /******/ return cachedModule.exports;
193
+ /******/ }
194
+ /******/ // Create a new module (and put it into the cache)
195
+ /******/ var module = __webpack_module_cache__[moduleId] = {
196
+ /******/ // no module.id needed
197
+ /******/ // no module.loaded needed
198
+ /******/ exports: {}
199
+ /******/ };
200
+ /******/
201
+ /******/ // Execute the module function
202
+ /******/ __webpack_modules__[moduleId](module, module.exports, __nuri_require__);
203
+ /******/
204
+ /******/ // Return the exports of the module
205
+ /******/ return module.exports;
206
+ /******/ }
207
+ /******/
208
+ /******/ // expose the modules object (__webpack_modules__)
209
+ /******/ __nuri_require__.m = __webpack_modules__;
210
+ /******/
211
+ /************************************************************************/
212
+ /******/ /* webpack/runtime/chunk loaded */
213
+ /******/ (() => {
214
+ /******/ var deferred = [];
215
+ /******/ __nuri_require__.O = (result, chunkIds, fn, priority) => {
216
+ /******/ if(chunkIds) {
217
+ /******/ priority = priority || 0;
218
+ /******/ for(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];
219
+ /******/ deferred[i] = [chunkIds, fn, priority];
220
+ /******/ return;
221
+ /******/ }
222
+ /******/ var notFulfilled = Infinity;
223
+ /******/ for (var i = 0; i < deferred.length; i++) {
224
+ /******/ var [chunkIds, fn, priority] = deferred[i];
225
+ /******/ var fulfilled = true;
226
+ /******/ for (var j = 0; j < chunkIds.length; j++) {
227
+ /******/ if ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__nuri_require__.O).every((key) => (__nuri_require__.O[key](chunkIds[j])))) {
228
+ /******/ chunkIds.splice(j--, 1);
229
+ /******/ } else {
230
+ /******/ fulfilled = false;
231
+ /******/ if(priority < notFulfilled) notFulfilled = priority;
232
+ /******/ }
233
+ /******/ }
234
+ /******/ if(fulfilled) {
235
+ /******/ deferred.splice(i--, 1)
236
+ /******/ var r = fn();
237
+ /******/ if (r !== undefined) result = r;
238
+ /******/ }
239
+ /******/ }
240
+ /******/ return result;
241
+ /******/ };
242
+ /******/ })();
243
+ /******/
244
+ /******/ /* webpack/runtime/define property getters */
245
+ /******/ (() => {
246
+ /******/ // define getter functions for harmony exports
247
+ /******/ __nuri_require__.d = (exports, definition) => {
248
+ /******/ for(var key in definition) {
249
+ /******/ if(__nuri_require__.o(definition, key) && !__nuri_require__.o(exports, key)) {
250
+ /******/ Object.defineProperty(exports, key, { enumerable: true, get: definition[key] });
251
+ /******/ }
252
+ /******/ }
253
+ /******/ };
254
+ /******/ })();
255
+ /******/
256
+ /******/ /* webpack/runtime/hasOwnProperty shorthand */
257
+ /******/ (() => {
258
+ /******/ __nuri_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))
259
+ /******/ })();
260
+ /******/
261
+ /******/ /* webpack/runtime/export webpack runtime */
262
+ /******/ export { __nuri_require__ };
263
+ /******/
264
+ /******/ /* webpack/runtime/import chunk loading */
265
+ /******/ (() => {
266
+ /******/ // no baseURI
267
+ /******/
268
+ /******/ // object to store loaded and loading chunks
269
+ /******/ // undefined = chunk not loaded, null = chunk preloaded/prefetched
270
+ /******/ // [resolve, Promise] = chunk loading, 0 = chunk loaded
271
+ /******/ var installedChunks = {
272
+ /******/ 4595: 0
273
+ /******/ };
274
+ /******/
275
+ /******/ var installChunk = (data) => {
276
+ /******/ var {__webpack_esm_ids__, __webpack_esm_modules__, __webpack_esm_runtime__} = data;
277
+ /******/ // add "modules" to the modules object,
278
+ /******/ // then flag all "ids" as loaded and fire callback
279
+ /******/ var moduleId, chunkId, i = 0;
280
+ /******/ for(moduleId in __webpack_esm_modules__) {
281
+ /******/ if(__nuri_require__.o(__webpack_esm_modules__, moduleId)) {
282
+ /******/ __nuri_require__.m[moduleId] = __webpack_esm_modules__[moduleId];
283
+ /******/ }
284
+ /******/ }
285
+ /******/ if(__webpack_esm_runtime__) __webpack_esm_runtime__(__nuri_require__);
286
+ /******/ for(;i < __webpack_esm_ids__.length; i++) {
287
+ /******/ chunkId = __webpack_esm_ids__[i];
288
+ /******/ if(__nuri_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {
289
+ /******/ installedChunks[chunkId][0]();
290
+ /******/ }
291
+ /******/ installedChunks[__webpack_esm_ids__[i]] = 0;
292
+ /******/ }
293
+ /******/ __nuri_require__.O();
294
+ /******/ }
295
+ /******/
296
+ /******/ // no chunk on demand loading
297
+ /******/
298
+ /******/ // no prefetching
299
+ /******/
300
+ /******/ // no preloaded
301
+ /******/
302
+ /******/ __nuri_require__.C = installChunk;
303
+ /******/
304
+ /******/ __nuri_require__.O.j = (chunkId) => (installedChunks[chunkId] === 0);
305
+ /******/ // no HMR
306
+ /******/
307
+ /******/ // no HMR manifest
308
+ /******/ })();
309
+ /******/
310
+ /************************************************************************/
311
+ /******/
312
+ /******/ import * as __webpack_chunk_1__ from "./chunk-3274.js";
313
+ /******/ __nuri_require__.C(__webpack_chunk_1__);
314
+ /******/ import * as __webpack_chunk_2__ from "./chunk-7335.js";
315
+ /******/ __nuri_require__.C(__webpack_chunk_2__);
316
+ /******/ import * as __webpack_chunk_3__ from "./chunk-4560.js";
317
+ /******/ __nuri_require__.C(__webpack_chunk_3__);
318
+ /******/ import * as __webpack_chunk_4__ from "./chunk-7298.js";
319
+ /******/ __nuri_require__.C(__webpack_chunk_4__);
320
+ /******/ import * as __webpack_chunk_5__ from "./chunk-2777.js";
321
+ /******/ __nuri_require__.C(__webpack_chunk_5__);
322
+ /******/ import * as __webpack_chunk_6__ from "./chunk-7653.js";
323
+ /******/ __nuri_require__.C(__webpack_chunk_6__);
324
+ /******/ import * as __webpack_chunk_7__ from "./chunk-3547.js";
325
+ /******/ __nuri_require__.C(__webpack_chunk_7__);
326
+ /******/ import * as __webpack_chunk_8__ from "./chunk-6302.js";
327
+ /******/ __nuri_require__.C(__webpack_chunk_8__);
328
+ /******/ import * as __webpack_chunk_9__ from "./chunk-8933.js";
329
+ /******/ __nuri_require__.C(__webpack_chunk_9__);
330
+ /******/ import * as __webpack_chunk_10__ from "./chunk-1176.js";
331
+ /******/ __nuri_require__.C(__webpack_chunk_10__);
332
+ /******/ import * as __webpack_chunk_11__ from "./chunk-2496.js";
333
+ /******/ __nuri_require__.C(__webpack_chunk_11__);
334
+ /******/ import * as __webpack_chunk_12__ from "./chunk-5226.js";
335
+ /******/ __nuri_require__.C(__webpack_chunk_12__);
336
+ /******/ import * as __webpack_chunk_13__ from "./chunk-910.js";
337
+ /******/ __nuri_require__.C(__webpack_chunk_13__);
338
+ /******/
339
+ /******/ // startup
340
+ /******/ // Load entry module and return exports
341
+ /******/ // This entry module depends on other loaded chunks and execution need to be delayed
342
+ /******/ var __webpack_exports__ = __nuri_require__.O(undefined, [3274,7335,4560,7298,2777,7653,3547,6302,8933,1176,2496,5226,910], () => (__nuri_require__(2980)))
343
+ /******/ __webpack_exports__ = __nuri_require__.O(__webpack_exports__);
344
+ /******/ const __webpack_exports__default = __webpack_exports__.A;
345
+ /******/ export { __webpack_exports__default as default };
346
+ /******/
@@ -23,7 +23,7 @@ var __assign = undefined && undefined.__assign || function () {
23
23
  return __assign.apply(this, arguments);
24
24
  };
25
25
 
26
- var variant = ['neutral', 'primary', 'danger', 'outlined'];
26
+ var variant = ['neutral', 'primary', 'danger', 'success', 'warning', 'outlined'];
27
27
  var sizes = ['xs', 's', 'm', 'l', 'xl'];
28
28
  var commonBadgeProps = {
29
29
  variant: {
@@ -270,25 +270,27 @@ module.exports = x({ ["Fragment"]: () => (__WEBPACK_EXTERNAL_MODULE_react_jsx_ru
270
270
  /******/
271
271
  /************************************************************************/
272
272
  /******/
273
- /******/ import * as __webpack_chunk_1__ from "./chunk-6364.js";
273
+ /******/ import * as __webpack_chunk_1__ from "./chunk-3274.js";
274
274
  /******/ __nuri_require__.C(__webpack_chunk_1__);
275
- /******/ import * as __webpack_chunk_2__ from "./chunk-4560.js";
275
+ /******/ import * as __webpack_chunk_2__ from "./chunk-7335.js";
276
276
  /******/ __nuri_require__.C(__webpack_chunk_2__);
277
- /******/ import * as __webpack_chunk_3__ from "./chunk-2777.js";
277
+ /******/ import * as __webpack_chunk_3__ from "./chunk-4560.js";
278
278
  /******/ __nuri_require__.C(__webpack_chunk_3__);
279
- /******/ import * as __webpack_chunk_4__ from "./chunk-4917.js";
279
+ /******/ import * as __webpack_chunk_4__ from "./chunk-2777.js";
280
280
  /******/ __nuri_require__.C(__webpack_chunk_4__);
281
- /******/ import * as __webpack_chunk_5__ from "./chunk-6149.js";
281
+ /******/ import * as __webpack_chunk_5__ from "./chunk-4917.js";
282
282
  /******/ __nuri_require__.C(__webpack_chunk_5__);
283
- /******/ import * as __webpack_chunk_6__ from "./chunk-8690.js";
283
+ /******/ import * as __webpack_chunk_6__ from "./chunk-6149.js";
284
284
  /******/ __nuri_require__.C(__webpack_chunk_6__);
285
- /******/ import * as __webpack_chunk_7__ from "./chunk-1563.js";
285
+ /******/ import * as __webpack_chunk_7__ from "./chunk-8690.js";
286
286
  /******/ __nuri_require__.C(__webpack_chunk_7__);
287
+ /******/ import * as __webpack_chunk_8__ from "./chunk-1563.js";
288
+ /******/ __nuri_require__.C(__webpack_chunk_8__);
287
289
  /******/
288
290
  /******/ // startup
289
291
  /******/ // Load entry module and return exports
290
292
  /******/ // This entry module depends on other loaded chunks and execution need to be delayed
291
- /******/ var __webpack_exports__ = __nuri_require__.O(undefined, [6364,4560,2777,4917,6149,8690,1563], () => (__nuri_require__(9401)))
293
+ /******/ var __webpack_exports__ = __nuri_require__.O(undefined, [3274,7335,4560,2777,4917,6149,8690,1563], () => (__nuri_require__(9401)))
292
294
  /******/ __webpack_exports__ = __nuri_require__.O(__webpack_exports__);
293
295
  /******/ const __webpack_exports__default = __webpack_exports__.A;
294
296
  /******/ export { __webpack_exports__default as default };
@@ -405,21 +405,23 @@ module.exports = x({ ["jsx"]: () => (__WEBPACK_EXTERNAL_MODULE_react_jsx_runtime
405
405
  /******/
406
406
  /************************************************************************/
407
407
  /******/
408
- /******/ import * as __webpack_chunk_1__ from "./chunk-6364.js";
408
+ /******/ import * as __webpack_chunk_1__ from "./chunk-3274.js";
409
409
  /******/ __nuri_require__.C(__webpack_chunk_1__);
410
- /******/ import * as __webpack_chunk_2__ from "./chunk-4560.js";
410
+ /******/ import * as __webpack_chunk_2__ from "./chunk-7335.js";
411
411
  /******/ __nuri_require__.C(__webpack_chunk_2__);
412
- /******/ import * as __webpack_chunk_3__ from "./chunk-7298.js";
412
+ /******/ import * as __webpack_chunk_3__ from "./chunk-4560.js";
413
413
  /******/ __nuri_require__.C(__webpack_chunk_3__);
414
- /******/ import * as __webpack_chunk_4__ from "./chunk-9387.js";
414
+ /******/ import * as __webpack_chunk_4__ from "./chunk-7298.js";
415
415
  /******/ __nuri_require__.C(__webpack_chunk_4__);
416
- /******/ import * as __webpack_chunk_5__ from "./chunk-9436.js";
416
+ /******/ import * as __webpack_chunk_5__ from "./chunk-9387.js";
417
417
  /******/ __nuri_require__.C(__webpack_chunk_5__);
418
+ /******/ import * as __webpack_chunk_6__ from "./chunk-9436.js";
419
+ /******/ __nuri_require__.C(__webpack_chunk_6__);
418
420
  /******/
419
421
  /******/ // startup
420
422
  /******/ // Load entry module and return exports
421
423
  /******/ // This entry module depends on other loaded chunks and execution need to be delayed
422
- /******/ var __webpack_exports__ = __nuri_require__.O(undefined, [6364,4560,7298,9387,9436], () => (__nuri_require__(4879)))
424
+ /******/ var __webpack_exports__ = __nuri_require__.O(undefined, [3274,7335,4560,7298,9387,9436], () => (__nuri_require__(4879)))
423
425
  /******/ __webpack_exports__ = __nuri_require__.O(__webpack_exports__);
424
426
  /******/ const __webpack_exports__default = __webpack_exports__.A;
425
427
  /******/ export { __webpack_exports__default as default };
package/dist/radio.js CHANGED
@@ -29,6 +29,24 @@ var base_button = __nuri_require__(8933);
29
29
  // EXTERNAL MODULE: ./components/core/composer/index.tsx
30
30
  var composer = __nuri_require__(2777);
31
31
  ;// ./components/radio/base-radio.tsx
32
+ var __assign = undefined && undefined.__assign || function () {
33
+ __assign = Object.assign || function (t) {
34
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
35
+ s = arguments[i];
36
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
37
+ }
38
+ return t;
39
+ };
40
+ return __assign.apply(this, arguments);
41
+ };
42
+ var __rest = undefined && undefined.__rest || function (s, e) {
43
+ var t = {};
44
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
45
+ if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
46
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
47
+ }
48
+ return t;
49
+ };
32
50
 
33
51
 
34
52
 
@@ -70,13 +88,15 @@ RadioRootBase.displayName = 'RadioRoot';
70
88
  var RadioOptionGroup = /*#__PURE__*/(0,external_root_React_commonjs2_react_commonjs_react_amd_react_module_react_.forwardRef)(function (props, ref) {
71
89
  var children = props.children,
72
90
  asChild = props.asChild,
73
- className = props.className;
91
+ className = props.className,
92
+ restProps = __rest(props, ["children", "asChild", "className"]);
74
93
  var Comp = asChild ? composer/* default */.A : 'ul';
75
- return (0,jsx_runtime_.jsx)(Comp, {
94
+ return (0,jsx_runtime_.jsx)(Comp, __assign({
76
95
  ref: ref,
77
- className: (0,classNames/* classNames */.x)('nuri-theme base-radio option-group', className),
96
+ className: (0,classNames/* classNames */.x)('nuri-theme base-radio option-group', className)
97
+ }, restProps, {
78
98
  children: children
79
- });
99
+ }));
80
100
  });
81
101
  RadioOptionGroup.displayName = 'RadioOptionGroup';
82
102
  var RadioButton = /*#__PURE__*/(0,external_root_React_commonjs2_react_commonjs_react_amd_react_module_react_.forwardRef)(function (props, ref) {
@@ -100,6 +120,31 @@ var RadioButton = /*#__PURE__*/(0,external_root_React_commonjs2_react_commonjs_r
100
120
  });
101
121
  });
102
122
  RadioButton.displayName = 'RadioButton';
123
+ // 칩 전체가 라디오 하나다. 점 없이 라벨만 그리고 role·aria-checked 로 선택을 알린다.
124
+ var RadioChip = /*#__PURE__*/(0,external_root_React_commonjs2_react_commonjs_react_amd_react_module_react_.forwardRef)(function (props, ref) {
125
+ var className = props.className,
126
+ id = props.id,
127
+ disabled = props.disabled,
128
+ restProps = __rest(props, ["className", "id", "disabled"]);
129
+ var _a = (0,external_root_React_commonjs2_react_commonjs_react_amd_react_module_react_.useContext)(RadioContext),
130
+ selected = _a.selected,
131
+ onChange = _a.onChange;
132
+ var checked = id === selected;
133
+ return (0,jsx_runtime_.jsx)(base_button/* default */.A, __assign({
134
+ ref: ref,
135
+ className: (0,classNames/* classNames */.x)('nuri-theme base-radio chip', className),
136
+ type: 'button',
137
+ role: 'radio',
138
+ "aria-checked": checked,
139
+ "data-state": checked ? 'checked' : 'unchecked',
140
+ disabled: disabled,
141
+ "data-disabled": disabled || undefined,
142
+ onClick: function onClick() {
143
+ return onChange(id);
144
+ }
145
+ }, restProps));
146
+ });
147
+ RadioChip.displayName = 'RadioChip';
103
148
  var RadioIndicator = /*#__PURE__*/(0,external_root_React_commonjs2_react_commonjs_react_amd_react_module_react_.forwardRef)(function (props, ref) {
104
149
  var children = props.children,
105
150
  asChild = props.asChild,
@@ -138,13 +183,21 @@ RadioLabel.displayName = 'RadioLabel';
138
183
  var RadioRoot = Object.assign(RadioRootBase, {
139
184
  OptionGroup: RadioOptionGroup,
140
185
  Button: RadioButton,
186
+ Chip: RadioChip,
141
187
  Indicator: RadioIndicator,
142
188
  Label: RadioLabel
143
189
  });
144
190
  /* harmony default export */ const base_radio = (RadioRoot);
145
191
  ;// ./components/radio/radio-props.ts
146
- // CSS 가 아직 크기·방향을 나누지 않아 className 으로 바뀌는 prop 이 없다.
147
- var radioProps = {};
192
+ var variant = ['default', 'chip'];
193
+ var radioProps = {
194
+ variant: {
195
+ type: 'className',
196
+ className: 'variant',
197
+ values: variant,
198
+ "default": 'default'
199
+ }
200
+ };
148
201
  ;// ./components/radio/radio.tsx
149
202
 
150
203
 
@@ -153,18 +206,60 @@ var radioProps = {};
153
206
 
154
207
 
155
208
 
209
+ // 칩은 버튼 자체가 role='radio' 라 li 는 목록 의미를 빼고 자리만 잡는다.
210
+ var ChipOption = function ChipOption(props) {
211
+ var option = props.option;
212
+ return (0,jsx_runtime_.jsx)("li", {
213
+ className: 'radio radio-option',
214
+ role: 'none',
215
+ children: (0,jsx_runtime_.jsx)(base_radio.Chip, {
216
+ className: 'radio radio-chip',
217
+ id: option.id,
218
+ disabled: option.disabled,
219
+ children: option.label
220
+ })
221
+ });
222
+ };
223
+ ChipOption.displayName = 'RadioChipOption';
224
+ var DefaultOption = function DefaultOption(props) {
225
+ var option = props.option;
226
+ return (0,jsx_runtime_.jsxs)("li", {
227
+ className: 'radio radio-option',
228
+ children: [(0,jsx_runtime_.jsx)(base_radio.Button, {
229
+ className: 'radio radio-button',
230
+ id: option.id,
231
+ disabled: option.disabled,
232
+ children: (0,jsx_runtime_.jsx)(base_radio.Indicator, {
233
+ className: 'radio radio-indicator',
234
+ id: option.id,
235
+ asChild: true,
236
+ children: (0,jsx_runtime_.jsx)("div", {})
237
+ })
238
+ }), (0,jsx_runtime_.jsx)(base_radio.Label, {
239
+ className: 'radio radio-label',
240
+ id: option.id,
241
+ disabled: option.disabled,
242
+ children: option.label
243
+ })]
244
+ });
245
+ };
246
+ DefaultOption.displayName = 'RadioDefaultOption';
156
247
  var Radio = /*#__PURE__*/(0,external_root_React_commonjs2_react_commonjs_react_amd_react_module_react_.forwardRef)(function (props, ref) {
157
248
  var _a = (0,getMergedProps/* getMergedProps */.p)(props, radioProps),
158
249
  className = _a.className,
159
250
  selected = _a.selected,
160
251
  _onChange = _a.onChange,
161
252
  options = _a.options,
253
+ label = _a.label,
162
254
  track = _a.track,
163
255
  trackProps = _a.trackProps;
256
+ // getMergedProps 가 variant 를 클래스로 바꾸며 지우므로 원래 props 에서 읽는다.
257
+ var isChip = props.variant === 'chip';
164
258
  var emit = (0,useTrack/* useTrack */.n)('Radio', {
165
259
  track: track,
166
260
  trackProps: trackProps
167
261
  });
262
+ var Option = isChip ? ChipOption : DefaultOption;
168
263
  return (0,jsx_runtime_.jsx)(base_radio, {
169
264
  options: options,
170
265
  selected: selected,
@@ -175,25 +270,12 @@ var Radio = /*#__PURE__*/(0,external_root_React_commonjs2_react_commonjs_react_a
175
270
  children: (0,jsx_runtime_.jsx)(base_radio.OptionGroup, {
176
271
  ref: ref,
177
272
  className: (0,classNames/* classNames */.x)(className, 'radio radio-group'),
273
+ // 칩은 버튼마다 role='radio' 라 묶음도 radiogroup 이다. 기본형은 목록 그대로 둔다.
274
+ role: isChip ? 'radiogroup' : undefined,
275
+ "aria-label": label,
178
276
  children: options.map(function (option) {
179
- return (0,jsx_runtime_.jsxs)("li", {
180
- className: 'radio radio-option',
181
- children: [(0,jsx_runtime_.jsx)(base_radio.Button, {
182
- className: 'radio radio-button',
183
- id: option.id,
184
- disabled: option.disabled,
185
- children: (0,jsx_runtime_.jsx)(base_radio.Indicator, {
186
- className: 'radio radio-indicator',
187
- id: option.id,
188
- asChild: true,
189
- children: (0,jsx_runtime_.jsx)("div", {})
190
- })
191
- }), (0,jsx_runtime_.jsx)(base_radio.Label, {
192
- className: 'radio radio-label',
193
- id: option.id,
194
- disabled: option.disabled,
195
- children: option.label
196
- })]
277
+ return (0,jsx_runtime_.jsx)(Option, {
278
+ option: option
197
279
  }, option.id);
198
280
  })
199
281
  })
@@ -356,21 +438,23 @@ module.exports = x({ ["jsx"]: () => (__WEBPACK_EXTERNAL_MODULE_react_jsx_runtime
356
438
  /******/
357
439
  /************************************************************************/
358
440
  /******/
359
- /******/ import * as __webpack_chunk_1__ from "./chunk-6364.js";
441
+ /******/ import * as __webpack_chunk_1__ from "./chunk-3274.js";
360
442
  /******/ __nuri_require__.C(__webpack_chunk_1__);
361
- /******/ import * as __webpack_chunk_2__ from "./chunk-4560.js";
443
+ /******/ import * as __webpack_chunk_2__ from "./chunk-7335.js";
362
444
  /******/ __nuri_require__.C(__webpack_chunk_2__);
363
- /******/ import * as __webpack_chunk_3__ from "./chunk-2777.js";
445
+ /******/ import * as __webpack_chunk_3__ from "./chunk-4560.js";
364
446
  /******/ __nuri_require__.C(__webpack_chunk_3__);
365
- /******/ import * as __webpack_chunk_4__ from "./chunk-8933.js";
447
+ /******/ import * as __webpack_chunk_4__ from "./chunk-2777.js";
366
448
  /******/ __nuri_require__.C(__webpack_chunk_4__);
367
- /******/ import * as __webpack_chunk_5__ from "./chunk-9387.js";
449
+ /******/ import * as __webpack_chunk_5__ from "./chunk-8933.js";
368
450
  /******/ __nuri_require__.C(__webpack_chunk_5__);
451
+ /******/ import * as __webpack_chunk_6__ from "./chunk-9387.js";
452
+ /******/ __nuri_require__.C(__webpack_chunk_6__);
369
453
  /******/
370
454
  /******/ // startup
371
455
  /******/ // Load entry module and return exports
372
456
  /******/ // This entry module depends on other loaded chunks and execution need to be delayed
373
- /******/ var __webpack_exports__ = __nuri_require__.O(undefined, [6364,4560,2777,8933,9387], () => (__nuri_require__(7392)))
457
+ /******/ var __webpack_exports__ = __nuri_require__.O(undefined, [3274,7335,4560,2777,8933,9387], () => (__nuri_require__(7392)))
374
458
  /******/ __webpack_exports__ = __nuri_require__.O(__webpack_exports__);
375
459
  /******/ const __webpack_exports__default = __webpack_exports__.A;
376
460
  /******/ export { __webpack_exports__default as default };
package/dist/skeleton.js CHANGED
@@ -318,13 +318,15 @@ module.exports = x({ ["jsx"]: () => (__WEBPACK_EXTERNAL_MODULE_react_jsx_runtime
318
318
  /******/
319
319
  /************************************************************************/
320
320
  /******/
321
- /******/ import * as __webpack_chunk_1__ from "./chunk-6364.js";
321
+ /******/ import * as __webpack_chunk_1__ from "./chunk-3274.js";
322
322
  /******/ __nuri_require__.C(__webpack_chunk_1__);
323
+ /******/ import * as __webpack_chunk_2__ from "./chunk-7335.js";
324
+ /******/ __nuri_require__.C(__webpack_chunk_2__);
323
325
  /******/
324
326
  /******/ // startup
325
327
  /******/ // Load entry module and return exports
326
328
  /******/ // This entry module depends on other loaded chunks and execution need to be delayed
327
- /******/ var __webpack_exports__ = __nuri_require__.O(undefined, [6364], () => (__nuri_require__(1144)))
329
+ /******/ var __webpack_exports__ = __nuri_require__.O(undefined, [3274,7335], () => (__nuri_require__(1144)))
328
330
  /******/ __webpack_exports__ = __nuri_require__.O(__webpack_exports__);
329
331
  /******/ const __webpack_exports__default = __webpack_exports__.A;
330
332
  /******/ export { __webpack_exports__default as default };