@tipp/ui 1.0.3 → 1.0.5

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 (110) hide show
  1. package/dist/atoms/avatar.d.cts +1 -1
  2. package/dist/atoms/avatar.d.ts +1 -1
  3. package/dist/atoms/check-box.d.cts +1 -1
  4. package/dist/atoms/check-box.d.ts +1 -1
  5. package/dist/atoms/index.cjs.map +1 -1
  6. package/dist/atoms/index.js +2 -2
  7. package/dist/atoms/pagination.cjs.map +1 -1
  8. package/dist/atoms/pagination.js +2 -2
  9. package/dist/chart/chart.cjs +9 -1
  10. package/dist/chart/chart.cjs.map +1 -1
  11. package/dist/chart/chart.d.cts +4 -1
  12. package/dist/chart/chart.d.ts +4 -1
  13. package/dist/chart/chart.js +9 -1
  14. package/dist/chart/chart.js.map +1 -1
  15. package/dist/chunk-2QZV2WKV.js +42 -0
  16. package/dist/chunk-2QZV2WKV.js.map +1 -0
  17. package/dist/chunk-ALP5524J.js +55 -0
  18. package/dist/chunk-ALP5524J.js.map +1 -0
  19. package/dist/chunk-AXM27M2R.js +43 -0
  20. package/dist/chunk-AXM27M2R.js.map +1 -0
  21. package/dist/chunk-B7R4QL7D.js +55 -0
  22. package/dist/chunk-B7R4QL7D.js.map +1 -0
  23. package/dist/chunk-CCZSZZTS.js +25 -0
  24. package/dist/chunk-CCZSZZTS.js.map +1 -0
  25. package/dist/chunk-CMWPUK3L.js +10 -0
  26. package/dist/chunk-CMWPUK3L.js.map +1 -0
  27. package/dist/chunk-DF7LG3AO.js +1 -0
  28. package/dist/chunk-DF7LG3AO.js.map +1 -0
  29. package/dist/chunk-EK4ZFDYD.js +39 -0
  30. package/dist/chunk-EK4ZFDYD.js.map +1 -0
  31. package/dist/chunk-FVU2BOJV.js +54 -0
  32. package/dist/chunk-FVU2BOJV.js.map +1 -0
  33. package/dist/chunk-GTDVFQVW.js +28 -0
  34. package/dist/chunk-GTDVFQVW.js.map +1 -0
  35. package/dist/chunk-GZG4UOJZ.js +43 -0
  36. package/dist/chunk-GZG4UOJZ.js.map +1 -0
  37. package/dist/chunk-HE3XMGS3.js +25 -0
  38. package/dist/chunk-HE3XMGS3.js.map +1 -0
  39. package/dist/chunk-HR3KN5AE.js +39 -0
  40. package/dist/chunk-HR3KN5AE.js.map +1 -0
  41. package/dist/chunk-J57DESXI.js +55 -0
  42. package/dist/chunk-J57DESXI.js.map +1 -0
  43. package/dist/chunk-JL6FCZV4.js +55 -0
  44. package/dist/chunk-JL6FCZV4.js.map +1 -0
  45. package/dist/chunk-KHHXN3CH.js +1 -0
  46. package/dist/chunk-KHHXN3CH.js.map +1 -0
  47. package/dist/chunk-LCC3I3PQ.js +24 -0
  48. package/dist/chunk-LCC3I3PQ.js.map +1 -0
  49. package/dist/chunk-LPUSIN3M.js +104 -0
  50. package/dist/chunk-LPUSIN3M.js.map +1 -0
  51. package/dist/chunk-LV4WSOXL.js +39 -0
  52. package/dist/chunk-LV4WSOXL.js.map +1 -0
  53. package/dist/chunk-MDPBP64D.js +104 -0
  54. package/dist/chunk-MDPBP64D.js.map +1 -0
  55. package/dist/chunk-NK7W7F66.js +54 -0
  56. package/dist/chunk-NK7W7F66.js.map +1 -0
  57. package/dist/chunk-NUM4Y5VM.js +54 -0
  58. package/dist/chunk-NUM4Y5VM.js.map +1 -0
  59. package/dist/chunk-O6P7IWJP.js +54 -0
  60. package/dist/chunk-O6P7IWJP.js.map +1 -0
  61. package/dist/chunk-P2VKIZ3M.js +18 -0
  62. package/dist/chunk-P2VKIZ3M.js.map +1 -0
  63. package/dist/chunk-PQBIBUGH.js +10 -0
  64. package/dist/chunk-PQBIBUGH.js.map +1 -0
  65. package/dist/chunk-QTHWYUYP.js +28 -0
  66. package/dist/chunk-QTHWYUYP.js.map +1 -0
  67. package/dist/chunk-SKDEOPP2.js +54 -0
  68. package/dist/chunk-SKDEOPP2.js.map +1 -0
  69. package/dist/chunk-V7JYNIVJ.js +39 -0
  70. package/dist/chunk-V7JYNIVJ.js.map +1 -0
  71. package/dist/chunk-WMBDJ72B.js +25 -0
  72. package/dist/chunk-WMBDJ72B.js.map +1 -0
  73. package/dist/chunk-XBXAWQOH.js +43 -0
  74. package/dist/chunk-XBXAWQOH.js.map +1 -0
  75. package/dist/icon.cjs +8 -0
  76. package/dist/icon.cjs.map +1 -1
  77. package/dist/icon.d.cts +1 -1
  78. package/dist/icon.d.ts +1 -1
  79. package/dist/icon.js +9 -1
  80. package/dist/index.cjs +56 -2
  81. package/dist/index.cjs.map +1 -1
  82. package/dist/index.d.cts +3 -1
  83. package/dist/index.d.ts +3 -1
  84. package/dist/index.js +20 -8
  85. package/dist/molecules/company-selector.cjs +406 -0
  86. package/dist/molecules/company-selector.cjs.map +1 -0
  87. package/dist/molecules/company-selector.d.cts +11 -0
  88. package/dist/molecules/company-selector.d.ts +11 -0
  89. package/dist/molecules/company-selector.js +62 -0
  90. package/dist/molecules/company-selector.js.map +1 -0
  91. package/dist/molecules/expand-table/index.cjs.map +1 -1
  92. package/dist/molecules/expand-table/index.js +2 -2
  93. package/dist/molecules/expand-table/row.cjs.map +1 -1
  94. package/dist/molecules/expand-table/row.js +2 -2
  95. package/dist/molecules/index.cjs +46 -0
  96. package/dist/molecules/index.cjs.map +1 -1
  97. package/dist/molecules/index.d.cts +2 -0
  98. package/dist/molecules/index.d.ts +2 -0
  99. package/dist/molecules/index.js +7 -3
  100. package/dist/molecules/navigation.cjs +437 -0
  101. package/dist/molecules/navigation.cjs.map +1 -0
  102. package/dist/molecules/navigation.d.cts +18 -0
  103. package/dist/molecules/navigation.d.ts +18 -0
  104. package/dist/molecules/navigation.js +62 -0
  105. package/dist/molecules/navigation.js.map +1 -0
  106. package/package.json +3 -1
  107. package/src/chart/chart.tsx +9 -2
  108. package/src/icon.ts +4 -0
  109. package/src/molecules/index.ts +1 -0
  110. package/src/molecules/navigation.tsx +67 -0
@@ -0,0 +1,437 @@
1
+ "use strict";
2
+ var __create = Object.create;
3
+ var __defProp = Object.defineProperty;
4
+ var __defProps = Object.defineProperties;
5
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
6
+ var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
7
+ var __getOwnPropNames = Object.getOwnPropertyNames;
8
+ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
9
+ var __getProtoOf = Object.getPrototypeOf;
10
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
11
+ var __propIsEnum = Object.prototype.propertyIsEnumerable;
12
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
13
+ var __spreadValues = (a, b) => {
14
+ for (var prop in b || (b = {}))
15
+ if (__hasOwnProp.call(b, prop))
16
+ __defNormalProp(a, prop, b[prop]);
17
+ if (__getOwnPropSymbols)
18
+ for (var prop of __getOwnPropSymbols(b)) {
19
+ if (__propIsEnum.call(b, prop))
20
+ __defNormalProp(a, prop, b[prop]);
21
+ }
22
+ return a;
23
+ };
24
+ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
25
+ var __objRest = (source, exclude) => {
26
+ var target = {};
27
+ for (var prop in source)
28
+ if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)
29
+ target[prop] = source[prop];
30
+ if (source != null && __getOwnPropSymbols)
31
+ for (var prop of __getOwnPropSymbols(source)) {
32
+ if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))
33
+ target[prop] = source[prop];
34
+ }
35
+ return target;
36
+ };
37
+ var __export = (target, all) => {
38
+ for (var name in all)
39
+ __defProp(target, name, { get: all[name], enumerable: true });
40
+ };
41
+ var __copyProps = (to, from, except, desc) => {
42
+ if (from && typeof from === "object" || typeof from === "function") {
43
+ for (let key of __getOwnPropNames(from))
44
+ if (!__hasOwnProp.call(to, key) && key !== except)
45
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
46
+ }
47
+ return to;
48
+ };
49
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
50
+ // If the importer is in node compatibility mode or this is not an ESM
51
+ // file that has been converted to a CommonJS file using a Babel-
52
+ // compatible transform (i.e. "__esModule" has not been set), then set
53
+ // "default" to the CommonJS "module.exports" for node compatibility.
54
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
55
+ mod
56
+ ));
57
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
58
+
59
+ // src/molecules/navigation.tsx
60
+ var navigation_exports = {};
61
+ __export(navigation_exports, {
62
+ Navigation: () => Navigation
63
+ });
64
+ module.exports = __toCommonJS(navigation_exports);
65
+
66
+ // src/atoms/alert-dialog.tsx
67
+ var import_themes = require("@radix-ui/themes");
68
+
69
+ // src/atoms/aspect-ratio.tsx
70
+ var import_themes2 = require("@radix-ui/themes");
71
+
72
+ // src/atoms/avatar.tsx
73
+ var import_themes3 = require("@radix-ui/themes");
74
+ var import_react = require("react");
75
+ var import_jsx_runtime = require("react/jsx-runtime");
76
+ var Avatar = (0, import_react.forwardRef)(
77
+ (props, ref) => {
78
+ const _a = props, { children, size, variant = "soft" } = _a, rest = __objRest(_a, ["children", "size", "variant"]);
79
+ const radixSize = (0, import_react.useMemo)(() => {
80
+ switch (size) {
81
+ case "small":
82
+ return "1";
83
+ case "medium":
84
+ return "2";
85
+ case "large":
86
+ return "3";
87
+ case "full":
88
+ return "4";
89
+ default:
90
+ return size;
91
+ }
92
+ }, [size]);
93
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_themes3.Avatar, __spreadProps(__spreadValues({}, rest), { ref, size: radixSize, variant, children }));
94
+ }
95
+ );
96
+ Avatar.displayName = "Avatar";
97
+
98
+ // src/atoms/badge.tsx
99
+ var import_themes4 = require("@radix-ui/themes");
100
+ var import_react2 = require("react");
101
+ var import_jsx_runtime2 = require("react/jsx-runtime");
102
+ var Badge = (0, import_react2.forwardRef)(
103
+ (props, ref) => {
104
+ const _a = props, { size, color } = _a, rest = __objRest(_a, ["size", "color"]);
105
+ const radixSize = (0, import_react2.useMemo)(() => {
106
+ switch (size) {
107
+ case "small":
108
+ return "1";
109
+ case "large":
110
+ return "3";
111
+ default:
112
+ return "1";
113
+ }
114
+ }, [size]);
115
+ const radixColor = (0, import_react2.useMemo)(() => {
116
+ switch (color) {
117
+ case "error":
118
+ return "red";
119
+ case "neutral":
120
+ return "gray";
121
+ case "success":
122
+ return "green";
123
+ case "accent":
124
+ default:
125
+ return void 0;
126
+ }
127
+ }, [color]);
128
+ return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_themes4.Badge, __spreadProps(__spreadValues({}, rest), { color: radixColor, ref, size: radixSize }));
129
+ }
130
+ );
131
+ Badge.displayName = "Badge";
132
+
133
+ // src/atoms/blockquote.tsx
134
+ var import_themes5 = require("@radix-ui/themes");
135
+
136
+ // src/atoms/box.tsx
137
+ var import_themes6 = require("@radix-ui/themes");
138
+
139
+ // src/atoms/button.tsx
140
+ var import_themes7 = require("@radix-ui/themes");
141
+ var import_react3 = require("react");
142
+ var import_jsx_runtime3 = require("react/jsx-runtime");
143
+ var Button = (0, import_react3.forwardRef)(
144
+ (props, ref) => {
145
+ const _a = props, { size } = _a, restProps = __objRest(_a, ["size"]);
146
+ const radixSize = (0, import_react3.useMemo)(() => {
147
+ switch (size) {
148
+ case "small":
149
+ return "2";
150
+ case "medium":
151
+ return "3";
152
+ case "large":
153
+ return "4";
154
+ default:
155
+ return "3";
156
+ }
157
+ }, [size]);
158
+ return /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(import_themes7.Button, __spreadProps(__spreadValues({}, restProps), { ref, size: radixSize }));
159
+ }
160
+ );
161
+ Button.displayName = "Button";
162
+
163
+ // src/atoms/call-out.tsx
164
+ var import_themes8 = require("@radix-ui/themes");
165
+
166
+ // src/atoms/card.tsx
167
+ var import_themes9 = require("@radix-ui/themes");
168
+
169
+ // src/atoms/check-box.tsx
170
+ var import_themes10 = require("@radix-ui/themes");
171
+ var import_react4 = require("react");
172
+ var import_jsx_runtime4 = require("react/jsx-runtime");
173
+ var Checkbox = (0, import_react4.forwardRef)(
174
+ (props, ref) => {
175
+ const _a = props, { size = "medium" } = _a, rest = __objRest(_a, ["size"]);
176
+ const radixSize = (0, import_react4.useMemo)(() => {
177
+ switch (size) {
178
+ case "small":
179
+ return "1";
180
+ case "medium":
181
+ return "2";
182
+ case "large":
183
+ return "3";
184
+ }
185
+ }, [size]);
186
+ return /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(import_themes10.Checkbox, __spreadProps(__spreadValues({}, rest), { ref, size: radixSize }));
187
+ }
188
+ );
189
+ Checkbox.displayName = "Checkbox";
190
+
191
+ // src/atoms/check-box-card.tsx
192
+ var import_themes11 = require("@radix-ui/themes");
193
+
194
+ // src/atoms/check-box-group.tsx
195
+ var import_themes12 = require("@radix-ui/themes");
196
+ var import_react5 = require("react");
197
+ var import_jsx_runtime5 = require("react/jsx-runtime");
198
+ var Root = (0, import_react5.forwardRef)((props, ref) => {
199
+ const _a = props, { children, size } = _a, rest = __objRest(_a, ["children", "size"]);
200
+ const groupSize = (0, import_react5.useMemo)(() => {
201
+ switch (size) {
202
+ case "small":
203
+ return "1";
204
+ case "large":
205
+ return "3";
206
+ case "medium":
207
+ default:
208
+ return "2";
209
+ }
210
+ }, [size]);
211
+ return /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(import_themes12.CheckboxGroup.Root, __spreadProps(__spreadValues({}, rest), { ref, size: groupSize, children }));
212
+ });
213
+ Root.displayName = "CheckboxGroup.Root";
214
+ var CheckboxGroup = {
215
+ Root,
216
+ Item: import_themes12.CheckboxGroup.Item
217
+ };
218
+
219
+ // src/atoms/code.tsx
220
+ var import_themes13 = require("@radix-ui/themes");
221
+
222
+ // src/atoms/container.tsx
223
+ var import_themes14 = require("@radix-ui/themes");
224
+
225
+ // src/atoms/data-list.tsx
226
+ var import_themes15 = require("@radix-ui/themes");
227
+
228
+ // src/atoms/date-picker/index.tsx
229
+ var import_react6 = require("react");
230
+ var import_react_datepicker = __toESM(require("react-datepicker"), 1);
231
+ var import_jsx_runtime6 = require("react/jsx-runtime");
232
+ var DatePicker = (0, import_react6.forwardRef)(
233
+ (props, ref) => {
234
+ return /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(
235
+ import_react_datepicker.default,
236
+ __spreadProps(__spreadValues({}, props), {
237
+ open: true,
238
+ ref,
239
+ wrapperClassName: "tipp_datePicker"
240
+ })
241
+ );
242
+ }
243
+ );
244
+ DatePicker.displayName = "DatePicker";
245
+
246
+ // src/atoms/dialog.tsx
247
+ var import_themes16 = require("@radix-ui/themes");
248
+
249
+ // src/atoms/dropdown-menu.tsx
250
+ var import_themes17 = require("@radix-ui/themes");
251
+
252
+ // src/atoms/em.tsx
253
+ var import_themes18 = require("@radix-ui/themes");
254
+
255
+ // src/atoms/flex.tsx
256
+ var import_themes19 = require("@radix-ui/themes");
257
+
258
+ // src/atoms/grid.tsx
259
+ var import_themes20 = require("@radix-ui/themes");
260
+
261
+ // src/atoms/heading.tsx
262
+ var import_themes21 = require("@radix-ui/themes");
263
+ var import_react7 = require("react");
264
+ var import_themes22 = require("@radix-ui/themes");
265
+ var import_jsx_runtime7 = require("react/jsx-runtime");
266
+
267
+ // src/atoms/hover-card.tsx
268
+ var import_themes23 = require("@radix-ui/themes");
269
+
270
+ // src/atoms/icon-button.tsx
271
+ var import_themes24 = require("@radix-ui/themes");
272
+
273
+ // src/atoms/inset.tsx
274
+ var import_themes25 = require("@radix-ui/themes");
275
+
276
+ // src/atoms/kbd.tsx
277
+ var import_themes26 = require("@radix-ui/themes");
278
+
279
+ // src/atoms/link.tsx
280
+ var import_themes27 = require("@radix-ui/themes");
281
+ var import_react8 = require("react");
282
+ var import_themes28 = require("@radix-ui/themes");
283
+ var import_jsx_runtime8 = require("react/jsx-runtime");
284
+
285
+ // src/atoms/popover.tsx
286
+ var import_themes29 = require("@radix-ui/themes");
287
+
288
+ // src/atoms/progress.tsx
289
+ var import_themes30 = require("@radix-ui/themes");
290
+
291
+ // src/atoms/quote.tsx
292
+ var import_themes31 = require("@radix-ui/themes");
293
+
294
+ // src/atoms/radio.tsx
295
+ var import_themes32 = require("@radix-ui/themes");
296
+
297
+ // src/atoms/radio-cards.tsx
298
+ var import_themes33 = require("@radix-ui/themes");
299
+
300
+ // src/atoms/radio-group.tsx
301
+ var import_themes34 = require("@radix-ui/themes");
302
+
303
+ // src/atoms/scroll-area.tsx
304
+ var import_themes35 = require("@radix-ui/themes");
305
+
306
+ // src/atoms/section.tsx
307
+ var import_themes36 = require("@radix-ui/themes");
308
+
309
+ // src/atoms/segmented-control.tsx
310
+ var import_themes37 = require("@radix-ui/themes");
311
+
312
+ // src/atoms/select.tsx
313
+ var import_themes38 = require("@radix-ui/themes");
314
+
315
+ // src/atoms/separator.tsx
316
+ var import_themes39 = require("@radix-ui/themes");
317
+
318
+ // src/atoms/skeleton.tsx
319
+ var import_themes40 = require("@radix-ui/themes");
320
+
321
+ // src/atoms/strong.tsx
322
+ var import_themes41 = require("@radix-ui/themes");
323
+
324
+ // src/atoms/switch.tsx
325
+ var import_themes42 = require("@radix-ui/themes");
326
+
327
+ // src/atoms/tab-nav.tsx
328
+ var import_themes43 = require("@radix-ui/themes");
329
+
330
+ // src/atoms/tabs.tsx
331
+ var import_themes44 = require("@radix-ui/themes");
332
+
333
+ // src/atoms/text-area.tsx
334
+ var import_themes45 = require("@radix-ui/themes");
335
+
336
+ // src/atoms/typo.tsx
337
+ var import_themes46 = require("@radix-ui/themes");
338
+ var import_react9 = require("react");
339
+ var import_jsx_runtime9 = require("react/jsx-runtime");
340
+ var Typo = (0, import_react9.forwardRef)(
341
+ (props, ref) => {
342
+ const _a = props, { size, variant, children } = _a, rest = __objRest(_a, ["size", "variant", "children"]);
343
+ const radixSize = (0, import_react9.useMemo)(() => {
344
+ if (size !== void 0)
345
+ return size;
346
+ switch (variant) {
347
+ case "caption":
348
+ return "1";
349
+ case "subtitle":
350
+ return "3";
351
+ case "body":
352
+ default:
353
+ return "2";
354
+ }
355
+ }, [size, variant]);
356
+ return /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(import_themes46.Text, __spreadProps(__spreadValues({}, rest), { ref, size: radixSize, children }));
357
+ }
358
+ );
359
+ Typo.displayName = "Typo";
360
+
361
+ // src/atoms/text-field.tsx
362
+ var import_themes47 = require("@radix-ui/themes");
363
+
364
+ // src/atoms/tooltip.tsx
365
+ var import_themes48 = require("@radix-ui/themes");
366
+
367
+ // src/atoms/collapse.tsx
368
+ var import_react10 = require("react");
369
+ var import_jsx_runtime10 = require("react/jsx-runtime");
370
+
371
+ // src/atoms/spinner.tsx
372
+ var import_themes49 = require("@radix-ui/themes");
373
+
374
+ // src/atoms/pagination.tsx
375
+ var import_react11 = require("react");
376
+
377
+ // src/icon.ts
378
+ var import_react_icons = require("@radix-ui/react-icons");
379
+
380
+ // src/atoms/pagination.tsx
381
+ var import_jsx_runtime11 = require("react/jsx-runtime");
382
+
383
+ // src/atoms/field-error-wrapper.tsx
384
+ var import_jsx_runtime12 = require("react/jsx-runtime");
385
+
386
+ // src/atoms/ellipsis-tooltip.tsx
387
+ var import_react12 = require("react");
388
+ var import_jsx_runtime13 = require("react/jsx-runtime");
389
+
390
+ // src/molecules/navigation.tsx
391
+ var import_jsx_runtime14 = require("react/jsx-runtime");
392
+ function Navigation({
393
+ items,
394
+ fontColor,
395
+ backgroundColor
396
+ }) {
397
+ return /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(
398
+ import_themes19.Flex,
399
+ {
400
+ direction: "column",
401
+ gap: "4",
402
+ style: {
403
+ color: fontColor || "var(--white-a12)",
404
+ backgroundColor: backgroundColor || "var(--black-a12)"
405
+ },
406
+ children: items == null ? void 0 : items.map((item) => {
407
+ const { key, title, icon, itemRender, onClick, children } = item;
408
+ return /* @__PURE__ */ (0, import_jsx_runtime14.jsxs)(import_themes19.Flex, { direction: "column", onClick, children: [
409
+ itemRender ? itemRender(item) : /* @__PURE__ */ (0, import_jsx_runtime14.jsxs)(import_themes19.Flex, { align: "center", gap: "3", height: "36px", pl: "4", pr: "4", children: [
410
+ icon,
411
+ /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(Typo, { variant: "subtitle", children: title })
412
+ ] }),
413
+ children == null ? void 0 : children.map((el) => {
414
+ return el.itemRender ? el.itemRender(el) : /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(
415
+ import_themes19.Flex,
416
+ {
417
+ align: "center",
418
+ height: "32px",
419
+ ml: "6",
420
+ onClick,
421
+ pl: "2",
422
+ pr: "2",
423
+ children: /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(Typo, { variant: "subtitle", children: el.title })
424
+ },
425
+ el.key
426
+ );
427
+ })
428
+ ] }, key);
429
+ })
430
+ }
431
+ );
432
+ }
433
+ // Annotate the CommonJS export names for ESM import in node:
434
+ 0 && (module.exports = {
435
+ Navigation
436
+ });
437
+ //# sourceMappingURL=navigation.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/molecules/navigation.tsx","../../src/atoms/alert-dialog.tsx","../../src/atoms/aspect-ratio.tsx","../../src/atoms/avatar.tsx","../../src/atoms/badge.tsx","../../src/atoms/blockquote.tsx","../../src/atoms/box.tsx","../../src/atoms/button.tsx","../../src/atoms/call-out.tsx","../../src/atoms/card.tsx","../../src/atoms/check-box.tsx","../../src/atoms/check-box-card.tsx","../../src/atoms/check-box-group.tsx","../../src/atoms/code.tsx","../../src/atoms/container.tsx","../../src/atoms/data-list.tsx","../../src/atoms/date-picker/index.tsx","../../src/atoms/dialog.tsx","../../src/atoms/dropdown-menu.tsx","../../src/atoms/em.tsx","../../src/atoms/flex.tsx","../../src/atoms/grid.tsx","../../src/atoms/heading.tsx","../../src/atoms/hover-card.tsx","../../src/atoms/icon-button.tsx","../../src/atoms/inset.tsx","../../src/atoms/kbd.tsx","../../src/atoms/link.tsx","../../src/atoms/popover.tsx","../../src/atoms/progress.tsx","../../src/atoms/quote.tsx","../../src/atoms/radio.tsx","../../src/atoms/radio-cards.tsx","../../src/atoms/radio-group.tsx","../../src/atoms/scroll-area.tsx","../../src/atoms/section.tsx","../../src/atoms/segmented-control.tsx","../../src/atoms/select.tsx","../../src/atoms/separator.tsx","../../src/atoms/skeleton.tsx","../../src/atoms/strong.tsx","../../src/atoms/switch.tsx","../../src/atoms/tab-nav.tsx","../../src/atoms/tabs.tsx","../../src/atoms/text-area.tsx","../../src/atoms/typo.tsx","../../src/atoms/text-field.tsx","../../src/atoms/tooltip.tsx","../../src/atoms/collapse.tsx","../../src/atoms/spinner.tsx","../../src/atoms/pagination.tsx","../../src/icon.ts","../../src/atoms/field-error-wrapper.tsx","../../src/atoms/ellipsis-tooltip.tsx"],"sourcesContent":["import React from 'react';\nimport { Flex, Typo } from '../atoms';\n\ninterface Item {\n itemRender?: (item: Item) => React.ReactNode;\n key: string;\n onClick?: () => void;\n title: string;\n icon?: React.ReactNode;\n children?: Item[];\n}\n\nexport interface NavigationProps {\n items?: Item[];\n fontColor?: string;\n backgroundColor?: string;\n}\n\nexport function Navigation({\n items,\n fontColor,\n backgroundColor,\n}: NavigationProps): React.ReactNode {\n return (\n <Flex\n direction=\"column\"\n gap=\"4\"\n style={{\n color: fontColor || 'var(--white-a12)',\n backgroundColor: backgroundColor || 'var(--black-a12)',\n }}\n >\n {items?.map((item) => {\n const { key, title, icon, itemRender, onClick, children } = item;\n return (\n <Flex direction=\"column\" key={key} onClick={onClick}>\n {itemRender ? (\n itemRender(item)\n ) : (\n <Flex align=\"center\" gap=\"3\" height=\"36px\" pl=\"4\" pr=\"4\">\n {icon}\n <Typo variant=\"subtitle\">{title}</Typo>\n </Flex>\n )}\n {children?.map((el) => {\n return el.itemRender ? (\n el.itemRender(el)\n ) : (\n <Flex\n align=\"center\"\n height=\"32px\"\n key={el.key}\n ml=\"6\"\n onClick={onClick}\n pl=\"2\"\n pr=\"2\"\n >\n <Typo variant=\"subtitle\">{el.title}</Typo>\n </Flex>\n );\n })}\n </Flex>\n );\n })}\n </Flex>\n );\n}\n","export { AlertDialog } from '@radix-ui/themes';\n","export { AspectRatio } from '@radix-ui/themes';\n","import {\n Avatar as RadixAvatar,\n type AvatarProps as RadixAvatarProps,\n} from '@radix-ui/themes';\nimport { useMemo, forwardRef } from 'react';\n\nexport type AvatarProps = Omit<RadixAvatarProps, 'size'> & {\n size?: 'small' | 'medium' | 'large' | 'full';\n};\n\nexport const Avatar = forwardRef<HTMLImageElement, AvatarProps>(\n (props: AvatarProps, ref): React.ReactNode => {\n const { children, size, variant = 'soft', ...rest } = props;\n const radixSize = useMemo<RadixAvatarProps['size']>(() => {\n switch (size) {\n case 'small':\n return '1';\n case 'medium':\n return '2';\n case 'large':\n return '3';\n case 'full':\n return '4';\n default:\n return size;\n }\n }, [size]);\n\n return (\n <RadixAvatar {...rest} ref={ref} size={radixSize} variant={variant}>\n {children}\n </RadixAvatar>\n );\n }\n);\n\nAvatar.displayName = 'Avatar';\n","import {\n Badge as RadixBadge,\n type BadgeProps as RadixBadgeProps,\n} from '@radix-ui/themes';\nimport { useMemo, forwardRef } from 'react';\n\nexport type BadgeProps = Omit<RadixBadgeProps, 'color'> & {\n size: 'small' | 'large';\n color: 'error' | 'accent' | 'neutral' | 'success';\n};\n\nexport const Badge = forwardRef<HTMLSpanElement, BadgeProps>(\n (props: BadgeProps, ref): React.ReactNode => {\n const { size, color, ...rest } = props;\n\n const radixSize = useMemo(() => {\n switch (size) {\n case 'small':\n return '1';\n case 'large':\n return '3';\n default:\n return '1';\n }\n }, [size]);\n\n const radixColor = useMemo(() => {\n switch (color) {\n case 'error':\n return 'red';\n case 'neutral':\n return 'gray';\n case 'success':\n return 'green';\n case 'accent':\n default:\n return undefined;\n }\n }, [color]);\n\n return (\n <RadixBadge {...rest} color={radixColor} ref={ref} size={radixSize} />\n );\n }\n);\n\nBadge.displayName = 'Badge';\n","export { Blockquote, type BlockquoteProps } from '@radix-ui/themes';\n","export { Box, type BoxProps } from '@radix-ui/themes';\n","import {\n Button as RadixButton,\n type ButtonProps as RadixButtonProps,\n} from '@radix-ui/themes';\nimport React, { forwardRef, useMemo } from 'react';\n\nexport type ButtonProps = Omit<RadixButtonProps, 'size'> & {\n size: 'small' | 'medium' | 'large';\n};\n\nexport const Button = forwardRef<HTMLButtonElement, ButtonProps>(\n (props, ref): React.ReactNode => {\n const { size, ...restProps } = props;\n\n const radixSize = useMemo(() => {\n switch (size) {\n case 'small':\n return '2';\n case 'medium':\n return '3';\n case 'large':\n return '4';\n default:\n return '3';\n }\n }, [size]);\n\n return <RadixButton {...restProps} ref={ref} size={radixSize} />;\n }\n);\n\nButton.displayName = 'Button';\n","export { Callout } from '@radix-ui/themes';\n","export { Card, type CardProps } from '@radix-ui/themes';\n","import {\n Checkbox as RadixCheckbox,\n type CheckboxProps as RadixCheckboxProps,\n} from '@radix-ui/themes';\nimport { useMemo, forwardRef } from 'react';\n\nexport type CheckboxProps = Omit<RadixCheckboxProps, 'size'> & {\n size?: 'small' | 'medium' | 'large';\n};\n\nexport const Checkbox = forwardRef<HTMLButtonElement, CheckboxProps>(\n (props, ref): React.ReactNode => {\n const { size = 'medium', ...rest } = props;\n\n const radixSize = useMemo<RadixCheckboxProps['size']>(() => {\n switch (size) {\n case 'small':\n return '1';\n case 'medium':\n return '2';\n case 'large':\n return '3';\n }\n }, [size]);\n\n return <RadixCheckbox {...rest} ref={ref} size={radixSize} />;\n }\n);\n\nCheckbox.displayName = 'Checkbox';\n","export { CheckboxCards } from '@radix-ui/themes';\n","import { CheckboxGroup as RadixCheckboxGroup } from '@radix-ui/themes';\nimport React, { forwardRef, useMemo } from 'react';\n\ntype RadixCheckboxGroupProps = React.ComponentPropsWithoutRef<\n typeof RadixCheckboxGroup.Root\n>;\ntype CheckboxGroupProps = Omit<RadixCheckboxGroupProps, 'size'> & {\n size: 'small' | 'medium' | 'large';\n};\n\nconst Root = forwardRef<HTMLDivElement, CheckboxGroupProps>((props, ref) => {\n const { children, size, ...rest } = props;\n\n const groupSize = useMemo<RadixCheckboxGroupProps['size']>(() => {\n switch (size) {\n case 'small':\n return '1';\n case 'large':\n return '3';\n case 'medium':\n default:\n return '2';\n }\n }, [size]);\n\n return (\n <RadixCheckboxGroup.Root {...rest} ref={ref} size={groupSize}>\n {children}\n </RadixCheckboxGroup.Root>\n );\n});\n\nRoot.displayName = 'CheckboxGroup.Root';\n\nexport const CheckboxGroup = {\n Root,\n Item: RadixCheckboxGroup.Item,\n};\n","export { Code, type CodeProps } from '@radix-ui/themes';\n","export { Container, type ContainerProps } from '@radix-ui/themes';\n","export { DataList } from '@radix-ui/themes';\n","import type { ElementRef } from 'react';\nimport React, { forwardRef } from 'react';\nimport type { DatePickerProps as ReactDatePickerProps } from 'react-datepicker';\nimport ReactDatePicker from 'react-datepicker';\n\ntype DatePickerProps = ReactDatePickerProps;\ntype DatePickerRef = ElementRef<typeof ReactDatePicker>;\n\nconst DatePicker = forwardRef<DatePickerRef, DatePickerProps>(\n (props: DatePickerProps, ref): React.ReactNode => {\n return (\n <ReactDatePicker\n {...props}\n // calendarClassName=\"tipp_datepicker__calendar\"\n open\n ref={ref}\n wrapperClassName=\"tipp_datePicker\"\n />\n );\n }\n);\n\nDatePicker.displayName = 'DatePicker';\n\nexport { DatePicker, type DatePickerProps };\n","export { Dialog } from '@radix-ui/themes';\n","export { DropdownMenu } from '@radix-ui/themes';\n","export { Em, type EmProps } from '@radix-ui/themes';\n","export { Flex, type FlexProps } from '@radix-ui/themes';\n","export { Grid, type GridProps } from '@radix-ui/themes';\n","import {\n Heading as RadixHeading,\n type HeadingProps as RadixHeadingProps,\n} from '@radix-ui/themes';\nimport { useMemo } from 'react';\n\nexport { Heading as RadixHeading } from '@radix-ui/themes';\n\nexport type HeadingProps = RadixHeadingProps & {\n variant?: 'subtitle1' | 'heading1' | 'heading2' | 'heading3';\n};\n\nexport function Heading(props: HeadingProps): React.ReactNode {\n const { size, children, variant, ...rest } = props;\n const radixSize = useMemo<RadixHeadingProps['size']>(() => {\n switch (variant) {\n case 'subtitle1':\n return '4';\n case 'heading1':\n return '7';\n case 'heading2':\n return '6';\n case 'heading3':\n return '5';\n default:\n return size;\n }\n }, [size, variant]);\n\n return (\n <RadixHeading {...rest} size={radixSize}>\n {children}\n </RadixHeading>\n );\n}\n","export { HoverCard } from '@radix-ui/themes';\n","export { IconButton, type IconButtonProps } from '@radix-ui/themes';\n","export { Inset, type InsetProps } from '@radix-ui/themes';\n","export { Kbd, type KbdProps } from '@radix-ui/themes';\n","import {\n Link as RadixLink,\n type LinkProps as RadixLinkProps,\n} from '@radix-ui/themes';\nimport { useMemo } from 'react';\n\nexport { Heading as RadixHeading } from '@radix-ui/themes';\n\nexport type LinkProps = RadixLinkProps & {\n variant?: 'caption' | 'body' | 'subtitle';\n};\n\nexport function Link(props: LinkProps): React.ReactNode {\n const { size, children, variant, ...rest } = props;\n const radixSize = useMemo<RadixLinkProps['size']>(() => {\n switch (variant) {\n case 'caption':\n return '1';\n case 'body':\n return '2';\n case 'subtitle':\n return '3';\n default:\n return size;\n }\n }, [size, variant]);\n\n return (\n <RadixLink {...rest} size={radixSize}>\n {children}\n </RadixLink>\n );\n}\n","export { Popover } from '@radix-ui/themes';\n","export { Progress, type ProgressProps } from '@radix-ui/themes';\n","export { Quote, type QuoteProps } from '@radix-ui/themes';\n","export { Radio, type RadioProps } from '@radix-ui/themes';\n","export { RadioCards } from '@radix-ui/themes';\n","export { RadioGroup } from '@radix-ui/themes';\n","export { ScrollArea, type ScrollAreaProps } from '@radix-ui/themes';\n","export { Section, type SectionProps } from '@radix-ui/themes';\n","export { SegmentedControl } from '@radix-ui/themes';\n","export { Select } from '@radix-ui/themes';\n","export { Separator, type SeparatorProps } from '@radix-ui/themes';\n","export { Skeleton, type SkeletonProps } from '@radix-ui/themes';\n","export { Strong, type StrongProps } from '@radix-ui/themes';\n","export { Switch, type SwitchProps } from '@radix-ui/themes';\n","export { TabNav } from '@radix-ui/themes';\n","export { Tabs } from '@radix-ui/themes';\n","export { TextArea, type TextAreaProps } from '@radix-ui/themes';\n","import type { TextProps as RadixTextProps } from '@radix-ui/themes';\nimport { Text as RadixText } from '@radix-ui/themes';\nimport React, { useMemo, forwardRef } from 'react';\n\nexport type TypoProps = RadixTextProps & {\n variant?: 'body' | 'caption' | 'subtitle';\n};\n\nexport const Typo = forwardRef<HTMLSpanElement, TypoProps>(\n (props: TypoProps, ref): React.ReactNode => {\n const { size, variant, children, ...rest } = props;\n\n const radixSize = useMemo<RadixTextProps['size']>(() => {\n if (size !== undefined) return size;\n switch (variant) {\n case 'caption':\n return '1';\n case 'subtitle':\n return '3';\n case 'body':\n default:\n return '2';\n }\n }, [size, variant]);\n\n return (\n <RadixText {...rest} ref={ref} size={radixSize}>\n {children}\n </RadixText>\n );\n }\n);\n\nTypo.displayName = 'Typo';\n","export { TextField } from '@radix-ui/themes';\n","export { Tooltip, type TooltipProps } from '@radix-ui/themes';\n","import React, { useEffect, useRef, useState } from 'react';\n\nexport interface CollapseProps {\n children: React.ReactNode;\n open?: boolean;\n defaultOpen?: boolean;\n}\n\nexport function Collapse(props: CollapseProps): React.ReactNode {\n const { children } = props;\n const [open, setOpen] = useState(() => {\n return props.open || props.defaultOpen || false;\n });\n\n useEffect(() => {\n if (props.open === undefined) return;\n setOpen(props.open);\n }, [props.open]);\n\n const ref = useRef<HTMLDivElement>(null);\n\n useEffect(() => {\n if (!ref.current) return;\n ref.current.style.maxHeight = open ? `${ref.current.scrollHeight}px` : '0';\n }, [open]);\n\n return (\n <div className=\"collapse\" ref={ref}>\n {children}\n </div>\n );\n}\n","export { Spinner, type SpinnerProps } from '@radix-ui/themes';\n","import React, { useCallback, useEffect, useMemo, useState } from 'react';\nimport { ChevronLeftIcon, ChevronRightIcon } from '../icon';\nimport type { IconButtonProps } from './icon-button';\nimport { IconButton } from './icon-button';\nimport { Flex } from './flex';\nimport { Typo } from './typo';\n\nexport interface PaginationProps {\n /** 현재 선택된 페이지 */\n page?: number;\n /** 기본 선택 페이지, page보다 낮은 우선 순위를 갖는다 */\n defaultPage?: number;\n /** 선택한 페이지 변경 이벤트 cb */\n onChange?: (page: number) => void;\n /** 전체 페이지의 수 */\n count?: number;\n}\n\nexport function Pagination(props: PaginationProps): React.ReactNode {\n const { onChange, count = 0 } = props;\n const siblingCount = 2;\n\n const [page, setPage] = useState(() => props.page || props.defaultPage || 1);\n\n const visibleItems = useMemo(() => {\n let start = Math.max(1, page - siblingCount);\n let end = Math.min(count, page + siblingCount);\n if (page - siblingCount <= 0 && end < count) {\n end = Math.min(count, end + Math.abs(page - siblingCount) + 1);\n } else if (page + siblingCount > count && start > 1) {\n start = Math.max(1, start - (page + siblingCount - count));\n }\n\n return Array.from({ length: end - start + 1 }, (_, i) => i + start);\n }, [count, page]);\n\n useEffect(() => {\n onChange?.(page);\n }, [onChange, page]);\n\n useEffect(() => {\n if (props.page) {\n setPage(props.page);\n }\n }, [props.page]);\n\n const onClickPrev = useCallback(() => {\n setPage((prev) => Math.max(1, prev - 1));\n }, []);\n\n const onClickNext = useCallback(() => {\n setPage((prev) => Math.min(count, prev + 1));\n }, [count]);\n\n const moveButtonProps: IconButtonProps = {\n variant: 'ghost',\n size: '3',\n style: { borderRadius: '50%' },\n };\n\n const iconSize = {\n height: 24,\n width: 24,\n };\n\n const prevDisabled = useMemo(() => {\n return page - siblingCount <= 1;\n }, [page]);\n\n const nextDisabled = useMemo(() => {\n return page + siblingCount >= count;\n }, [count, page]);\n\n return (\n <Flex align=\"center\" className=\"tipp-pagination\" gap=\"4\">\n <IconButton\n disabled={prevDisabled}\n onClick={onClickPrev}\n {...moveButtonProps}\n >\n <ChevronLeftIcon {...iconSize} />\n </IconButton>\n <Flex gap=\"1\">\n {visibleItems.map((item) => {\n return (\n <button\n className={`page-button ${item === page ? 'active' : ''}`}\n key={item}\n onClick={() => {\n setPage(item);\n }}\n type=\"button\"\n >\n <Typo variant=\"body\">{item}</Typo>\n </button>\n );\n })}\n </Flex>\n <IconButton\n disabled={nextDisabled}\n onClick={onClickNext}\n {...moveButtonProps}\n >\n <ChevronRightIcon {...iconSize} />\n </IconButton>\n </Flex>\n );\n}\n","export {\n BookmarkIcon,\n ExitIcon,\n InfoCircledIcon,\n ExclamationTriangleIcon,\n MagnifyingGlassIcon,\n DotsHorizontalIcon,\n ChatBubbleIcon,\n PlusIcon,\n BookmarkFilledIcon,\n MixerHorizontalIcon,\n ChevronLeftIcon,\n ChevronRightIcon,\n ClipboardIcon,\n BarChartIcon,\n PersonIcon,\n GearIcon,\n} from '@radix-ui/react-icons';\n","import React from 'react';\nimport { Flex } from './flex';\nimport { Typo } from './typo';\n\nexport interface FieldErrorWrapperProps {\n children?: React.ReactNode;\n error?: React.ReactNode;\n}\n\nexport function FieldErrorWrapper({\n children,\n error,\n}: FieldErrorWrapperProps): JSX.Element {\n return (\n <Flex direction=\"column\" gap=\"1\">\n {children}\n {error ? (\n <Typo color=\"red\" variant=\"caption\">\n {error}\n </Typo>\n ) : null}\n </Flex>\n );\n}\n","import React, { useEffect, useRef, useState } from 'react';\nimport { Tooltip } from './tooltip';\nimport { Typo, type TypoProps } from './typo';\n\nexport type EllipsisTooltipProps = TypoProps & {\n lineClamp?: number;\n children?: string;\n};\n\nexport function EllipsisTooltip(props: EllipsisTooltipProps): React.ReactNode {\n const { children, style, lineClamp = 2, ...rest } = props;\n const ref = useRef<HTMLSpanElement>(null);\n\n const [tooltipDisplay, setTooltipDisplay] = useState<'none' | 'block'>(\n 'none'\n );\n\n useEffect(() => {\n if (ref.current) {\n const typo = ref.current;\n const mouseOver = (): void => {\n if (typo.clientHeight < typo.scrollHeight) {\n setTooltipDisplay('block');\n }\n };\n\n const mouseOut = (): void => {\n setTooltipDisplay('none');\n };\n\n ref.current.addEventListener('mouseenter', mouseOver);\n ref.current.addEventListener('mouseleave', mouseOut);\n }\n }, [children]);\n\n return (\n <Tooltip content={children} style={{ display: tooltipDisplay }}>\n <Typo\n {...rest}\n ref={ref}\n style={{\n width: '100%',\n textOverflow: 'ellipsis',\n overflow: 'hidden',\n WebkitLineClamp: lineClamp,\n\n display: '-webkit-box',\n WebkitBoxOrient: 'vertical',\n wordBreak: 'break-word',\n ...style,\n }}\n >\n {children}\n </Typo>\n </Tooltip>\n );\n}\n"],"mappings":"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","names":["import_themes","import_themes","RadixAvatar","import_themes","import_react","import_jsx_runtime","RadixBadge","import_themes","import_themes","import_themes","import_react","import_jsx_runtime","RadixButton","import_themes","import_themes","import_themes","import_react","import_jsx_runtime","RadixCheckbox","import_themes","import_themes","import_react","import_jsx_runtime","RadixCheckboxGroup","import_themes","import_themes","import_themes","import_react","import_jsx_runtime","ReactDatePicker","import_themes","import_themes","import_themes","import_themes","import_themes","import_themes","import_react","import_jsx_runtime","import_themes","import_themes","import_themes","import_themes","import_themes","import_react","import_jsx_runtime","import_themes","import_themes","import_themes","import_themes","import_themes","import_themes","import_themes","import_themes","import_themes","import_themes","import_themes","import_themes","import_themes","import_themes","import_themes","import_themes","import_themes","import_themes","import_react","import_jsx_runtime","RadixText","import_themes","import_themes","import_react","import_jsx_runtime","import_themes","import_react","import_jsx_runtime","import_jsx_runtime","import_react","import_jsx_runtime","import_jsx_runtime"]}
@@ -0,0 +1,18 @@
1
+ import React__default from 'react';
2
+
3
+ interface Item {
4
+ itemRender?: (item: Item) => React__default.ReactNode;
5
+ key: string;
6
+ onClick?: () => void;
7
+ title: string;
8
+ icon?: React__default.ReactNode;
9
+ children?: Item[];
10
+ }
11
+ interface NavigationProps {
12
+ items?: Item[];
13
+ fontColor?: string;
14
+ backgroundColor?: string;
15
+ }
16
+ declare function Navigation({ items, fontColor, backgroundColor, }: NavigationProps): React__default.ReactNode;
17
+
18
+ export { Navigation, type NavigationProps };
@@ -0,0 +1,18 @@
1
+ import React__default from 'react';
2
+
3
+ interface Item {
4
+ itemRender?: (item: Item) => React__default.ReactNode;
5
+ key: string;
6
+ onClick?: () => void;
7
+ title: string;
8
+ icon?: React__default.ReactNode;
9
+ children?: Item[];
10
+ }
11
+ interface NavigationProps {
12
+ items?: Item[];
13
+ fontColor?: string;
14
+ backgroundColor?: string;
15
+ }
16
+ declare function Navigation({ items, fontColor, backgroundColor, }: NavigationProps): React__default.ReactNode;
17
+
18
+ export { Navigation, type NavigationProps };
@@ -0,0 +1,62 @@
1
+ import {
2
+ Navigation
3
+ } from "../chunk-ALP5524J.js";
4
+ import "../chunk-MASTHXWN.js";
5
+ import "../chunk-IIBITN2G.js";
6
+ import "../chunk-YJ7ZFOYL.js";
7
+ import "../chunk-5ZITU5L7.js";
8
+ import "../chunk-ILRUXI2E.js";
9
+ import "../chunk-JPIZP2PZ.js";
10
+ import "../chunk-MUNMDHRF.js";
11
+ import "../chunk-TVDKGMBI.js";
12
+ import "../chunk-355MU6BH.js";
13
+ import "../chunk-HYITAA4J.js";
14
+ import "../chunk-5H3YPCZK.js";
15
+ import "../chunk-FR2GDOU2.js";
16
+ import "../chunk-74DX4CU7.js";
17
+ import "../chunk-OYM4XCHQ.js";
18
+ import "../chunk-LPUSIN3M.js";
19
+ import "../chunk-5AVBYDPB.js";
20
+ import "../chunk-365QMK4D.js";
21
+ import "../chunk-YO3BQW6S.js";
22
+ import "../chunk-6IVCARWS.js";
23
+ import "../chunk-6DJOIRMF.js";
24
+ import "../chunk-FPD73OHW.js";
25
+ import "../chunk-ZKZDVS7G.js";
26
+ import "../chunk-EGEQY3KT.js";
27
+ import "../chunk-HLOY6BIP.js";
28
+ import "../chunk-O3T3TM3V.js";
29
+ import "../chunk-O3DNDMV3.js";
30
+ import "../chunk-XQOL7UBI.js";
31
+ import "../chunk-TULWX7D6.js";
32
+ import "../chunk-XQOZWYUA.js";
33
+ import "../chunk-Q37G2GS6.js";
34
+ import "../chunk-VTJZMOSP.js";
35
+ import "../chunk-P6B2PNYI.js";
36
+ import "../chunk-YTZSKMX3.js";
37
+ import "../chunk-4IKPNQV5.js";
38
+ import "../chunk-ACVANQJ4.js";
39
+ import "../chunk-2DZ2Y3JI.js";
40
+ import "../chunk-CNQ7RNNY.js";
41
+ import "../chunk-O3XTRD7R.js";
42
+ import "../chunk-25HMMI7R.js";
43
+ import "../chunk-RET725VL.js";
44
+ import "../chunk-B6XJN6EC.js";
45
+ import "../chunk-FYEASFUU.js";
46
+ import "../chunk-MIMJ7LON.js";
47
+ import "../chunk-IQEEPHOY.js";
48
+ import "../chunk-JEHDCZQU.js";
49
+ import "../chunk-OHMOP5PV.js";
50
+ import "../chunk-OCJNQGHN.js";
51
+ import "../chunk-EK4ZFDYD.js";
52
+ import "../chunk-J242TTFH.js";
53
+ import "../chunk-EAXUQEO5.js";
54
+ import "../chunk-CZEGRZBK.js";
55
+ import "../chunk-ALOPZ54P.js";
56
+ import "../chunk-YGL6SWKN.js";
57
+ import "../chunk-4Y5BEXVN.js";
58
+ import "../chunk-N552FDTV.js";
59
+ export {
60
+ Navigation
61
+ };
62
+ //# sourceMappingURL=navigation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tipp/ui",
3
- "version": "1.0.3",
3
+ "version": "1.0.5",
4
4
  "private": false,
5
5
  "type": "module",
6
6
  "exports": {
@@ -59,6 +59,7 @@
59
59
  "@tanstack/react-table": "^8.19.3",
60
60
  "echarts-for-react": "^3.0.2",
61
61
  "i": "^0.3.7",
62
+ "lodash-es": "^4.17.21",
62
63
  "npm": "^10.8.2",
63
64
  "postcss-scss": "^4.0.9",
64
65
  "react": "^18.3.1",
@@ -68,6 +69,7 @@
68
69
  },
69
70
  "devDependencies": {
70
71
  "@types/echarts": "^4.9.22",
72
+ "@types/lodash-es": "^4.17.12",
71
73
  "@types/react": "^18.2.61",
72
74
  "@types/react-dom": "^18.2.19",
73
75
  "autoprefixer": "10.4.19",
@@ -1,7 +1,8 @@
1
- import React from 'react';
1
+ import React, { useMemo } from 'react';
2
2
  import { useResizeDetector } from 'react-resize-detector';
3
3
  import ReactECharts from 'echarts-for-react';
4
4
  import type { EChartOption } from 'echarts';
5
+ import { merge } from 'lodash-es';
5
6
  import chartTheme from './chart-theme.json';
6
7
 
7
8
  export { chartTheme };
@@ -20,7 +21,13 @@ export function Chart(props: ChartProps): JSX.Element {
20
21
  refreshRate: 100,
21
22
  });
22
23
 
23
- const option = { ...props.option, textStyle: { fontFamily: 'Noto Sans KR' } };
24
+ const option = useMemo(() => {
25
+ const baseOption: EChartOption = {
26
+ textStyle: { fontFamily: 'Noto Sans KR' },
27
+ tooltip: { textStyle: { fontSize: 16 } },
28
+ };
29
+ return merge(baseOption, props.option);
30
+ }, [props.option]);
24
31
 
25
32
  return (
26
33
  <div ref={ref} style={{ width: '100%', height: '100%' }}>
package/src/icon.ts CHANGED
@@ -11,4 +11,8 @@ export {
11
11
  MixerHorizontalIcon,
12
12
  ChevronLeftIcon,
13
13
  ChevronRightIcon,
14
+ ClipboardIcon,
15
+ BarChartIcon,
16
+ PersonIcon,
17
+ GearIcon,
14
18
  } from '@radix-ui/react-icons';