@customafk/lunas-ui 0.0.1-e → 0.0.2-a
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/dist/Atoms/Accordion/index.d.ts +9 -0
- package/dist/Atoms/Accordion/index.js +288 -0
- package/dist/Atoms/AlertDialog/index.d.ts +23 -0
- package/dist/Atoms/AlertDialog/index.js +382 -0
- package/dist/Atoms/AspectRatio/index.d.ts +6 -0
- package/dist/Atoms/AspectRatio/index.js +6 -0
- package/dist/Atoms/Avatar/index.d.ts +10 -0
- package/dist/Atoms/Avatar/index.js +470 -0
- package/dist/Atoms/Badge/index.d.ts +10 -0
- package/dist/Atoms/Badge/index.js +263 -0
- package/dist/Atoms/Breadcrumb/index.d.ts +23 -0
- package/dist/Atoms/Breadcrumb/index.js +363 -0
- package/dist/Atoms/Button/index.d.ts +20 -0
- package/dist/Atoms/Button/index.js +314 -0
- package/dist/Atoms/Card/index.d.ts +17 -0
- package/dist/Atoms/Card/index.js +303 -0
- package/dist/Atoms/Carousel/index.d.ts +28 -0
- package/dist/Atoms/Carousel/index.js +499 -0
- package/dist/Atoms/Command/index.d.ts +85 -0
- package/dist/Atoms/Command/index.js +485 -0
- package/dist/Atoms/Dialog/index.d.ts +22 -0
- package/dist/Atoms/Dialog/index.js +365 -0
- package/dist/Atoms/DropdownMenu/index.d.ts +30 -0
- package/dist/Atoms/DropdownMenu/index.js +441 -0
- package/dist/Atoms/Form/index.d.ts +28 -0
- package/dist/Atoms/Form/index.js +360 -0
- package/dist/Atoms/Input/index.d.ts +12 -0
- package/dist/Atoms/Input/index.js +816 -0
- package/dist/Atoms/Label/index.d.ts +8 -0
- package/dist/Atoms/Label/index.js +259 -0
- package/dist/Atoms/Money/index.d.ts +9 -0
- package/dist/Atoms/Money/index.js +464 -0
- package/dist/Atoms/Navbar/index.d.ts +14 -0
- package/dist/Atoms/Navbar/index.js +324 -0
- package/dist/Atoms/NavigationMenu/index.d.ts +15 -0
- package/dist/Atoms/NavigationMenu/index.js +431 -0
- package/dist/Atoms/Progress/index.d.ts +6 -0
- package/dist/Atoms/Progress/index.js +269 -0
- package/dist/Atoms/QuantityBtn/index.d.ts +9 -0
- package/dist/Atoms/QuantityBtn/index.js +962 -0
- package/dist/Atoms/ScrollBar/index.d.ts +7 -0
- package/dist/Atoms/ScrollBar/index.js +284 -0
- package/dist/Atoms/Select/index.d.ts +15 -0
- package/dist/Atoms/Select/index.js +441 -0
- package/dist/Atoms/Separator/index.d.ts +6 -0
- package/dist/Atoms/Separator/index.js +268 -0
- package/dist/Atoms/Skeleton/index.d.ts +6 -0
- package/dist/Atoms/Skeleton/index.js +252 -0
- package/dist/Atoms/UserAvatar/index.d.ts +12 -0
- package/dist/Atoms/UserAvatar/index.js +467 -0
- package/dist/Authentication/SignIn/index.d.ts +22 -0
- package/dist/Authentication/SignIn/index.js +1400 -0
- package/dist/Authentication/SignUp/index.d.ts +38 -0
- package/dist/Authentication/SignUp/index.js +1603 -0
- package/dist/Authentication/ThankYou/index.d.ts +5 -0
- package/dist/Authentication/ThankYou/index.js +834 -0
- package/dist/Icons/index.d.ts +16 -4
- package/dist/Icons/index.js +366 -132
- package/dist/Layout/{index.d.ts → Flex/index.d.ts} +1 -100
- package/dist/Layout/{index.js → Flex/index.js} +274 -335
- package/dist/Molecules/{index.d.ts → AuthenForm/index.d.ts} +2 -27
- package/dist/Molecules/AuthenForm/index.js +1987 -0
- package/dist/Molecules/Search/index.d.ts +14 -0
- package/dist/Molecules/Search/index.js +982 -0
- package/dist/Molecules/UserDropdown/index.d.ts +6 -0
- package/dist/Molecules/UserDropdown/index.js +1080 -0
- package/dist/Organisms/Footer/index.d.ts +5 -0
- package/dist/Organisms/Footer/index.js +63 -0
- package/dist/Organisms/Header/index.d.ts +25 -0
- package/dist/Organisms/Header/index.js +2241 -0
- package/dist/hooks/index.d.ts +6 -6
- package/dist/hooks/index.js +17 -17
- package/dist/tailwindTheme.d.ts +84 -1
- package/dist/tailwindTheme.js +119 -44
- package/dist/{types-DdUenP1k.d.ts → types-BgHhiNa-.d.ts} +1 -1
- package/package.json +209 -21
- package/dist/Atoms/index.d.ts +0 -275
- package/dist/Atoms/index.js +0 -3975
- package/dist/Molecules/index.js +0 -4576
- package/dist/Organisms/index.d.ts +0 -25
- package/dist/Organisms/index.js +0 -4786
|
@@ -0,0 +1,470 @@
|
|
|
1
|
+
var __defProp = Object.defineProperty;
|
|
2
|
+
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
3
|
+
var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
4
|
+
|
|
5
|
+
// packages/Atoms/Avatar/index.tsx
|
|
6
|
+
import { forwardRef } from "react";
|
|
7
|
+
|
|
8
|
+
// packages/utils/constants.ts
|
|
9
|
+
var DEFAULT_ICON_SIZE = 24;
|
|
10
|
+
|
|
11
|
+
// packages/Icons/AvatarIcon.tsx
|
|
12
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
13
|
+
var AvatarIcon = (props) => {
|
|
14
|
+
const { bgColor, color, size } = props;
|
|
15
|
+
return /* @__PURE__ */ jsxs(
|
|
16
|
+
"svg",
|
|
17
|
+
{
|
|
18
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
19
|
+
width: size ?? DEFAULT_ICON_SIZE,
|
|
20
|
+
height: size ?? DEFAULT_ICON_SIZE,
|
|
21
|
+
viewBox: "0 0 96 96",
|
|
22
|
+
fill: "none",
|
|
23
|
+
...props,
|
|
24
|
+
children: [
|
|
25
|
+
/* @__PURE__ */ jsx(
|
|
26
|
+
"path",
|
|
27
|
+
{
|
|
28
|
+
d: "M1.9 48C1.9 73.4604 22.5397 94.1 48 94.1C73.4604 94.1 94.1 73.4604 94.1 48C94.1 22.5397 73.4604 1.9 48 1.9C22.5397 1.9 1.9 22.5397 1.9 48Z",
|
|
29
|
+
fill: bgColor ?? "#6C70F0",
|
|
30
|
+
stroke: "#D4D4D4",
|
|
31
|
+
strokeWidth: "0.2"
|
|
32
|
+
}
|
|
33
|
+
),
|
|
34
|
+
/* @__PURE__ */ jsx(
|
|
35
|
+
"path",
|
|
36
|
+
{
|
|
37
|
+
d: "M48 93.75C22.733 93.75 2.25 73.2671 2.25 48C2.25 22.733 22.733 2.25 48 2.25C73.2671 2.25 93.75 22.733 93.75 48C93.75 73.2671 73.2671 93.75 48 93.75Z",
|
|
38
|
+
stroke: color ?? "#FAFAFA",
|
|
39
|
+
strokeWidth: "0.5"
|
|
40
|
+
}
|
|
41
|
+
),
|
|
42
|
+
/* @__PURE__ */ jsx(
|
|
43
|
+
"path",
|
|
44
|
+
{
|
|
45
|
+
d: "M47.5064 20C50.0492 20 52.5348 20.7624 54.6492 22.1909C56.7636 23.6194 58.4116 25.6497 59.3848 28.0251C60.358 30.4006 60.6124 33.0144 60.1164 35.5362C59.6204 38.0579 58.3956 40.3744 56.5976 42.1924C54.7996 44.0104 52.5084 45.2488 50.0144 45.7504C47.5204 46.252 44.9352 45.9944 42.586 45.0104C40.2368 44.0264 38.2286 42.3604 36.8158 40.2224C35.4031 38.0846 34.649 35.5712 34.649 33L34.6619 32.4358C34.8057 29.089 36.2217 25.9274 38.6148 23.6105C41.008 21.2936 44.1932 20.0002 47.5064 20ZM52.6492 51.2C56.0592 51.2 65.3292 52.5696 67.7404 55.0076C70.1516 57.4456 71.0124 60.552 71.0124 64V66.8C71.0124 68.1792 70.4708 69.5016 69.5064 70.4768C68.5416 71.452 67.2336 72 65.8696 72H29.1428C27.7789 72 26.4708 71.452 25.5063 70.4768C24.5418 69.5016 24 68.1792 24 66.8V64.2C24 60.752 25.3546 57.4456 27.7658 55.0076C30.177 52.5696 38.9534 51.2 42.3632 51.2H52.6492Z",
|
|
46
|
+
fill: color ?? "#FAFAFA"
|
|
47
|
+
}
|
|
48
|
+
)
|
|
49
|
+
]
|
|
50
|
+
}
|
|
51
|
+
);
|
|
52
|
+
};
|
|
53
|
+
AvatarIcon.displayName = "AvatarIcon";
|
|
54
|
+
var AvatarIcon_default = AvatarIcon;
|
|
55
|
+
|
|
56
|
+
// packages/tailwindTheme.ts
|
|
57
|
+
var themes = {
|
|
58
|
+
spacing: {
|
|
59
|
+
30: "7.5rem",
|
|
60
|
+
// 120px
|
|
61
|
+
33: "8.25rem"
|
|
62
|
+
// 132px
|
|
63
|
+
},
|
|
64
|
+
colors: {
|
|
65
|
+
ui: {
|
|
66
|
+
white: "#ffffff",
|
|
67
|
+
"white-primary": "#ffffff",
|
|
68
|
+
"black-primary": "#111315",
|
|
69
|
+
"bg-white": "#FAFAFA",
|
|
70
|
+
primary: {
|
|
71
|
+
default: "#6C70F0",
|
|
72
|
+
50: "#EEF2FF",
|
|
73
|
+
100: "#E0E7FF",
|
|
74
|
+
200: "#C8D2FD",
|
|
75
|
+
300: "#A6B6FB",
|
|
76
|
+
400: "#828EF7",
|
|
77
|
+
500: "#6C70F0",
|
|
78
|
+
600: "#5048E3",
|
|
79
|
+
700: "#443AC8",
|
|
80
|
+
800: "#3731A2",
|
|
81
|
+
900: "#312F80",
|
|
82
|
+
950: "#1F1C4A"
|
|
83
|
+
},
|
|
84
|
+
secondary: {
|
|
85
|
+
default: "#C170FF",
|
|
86
|
+
50: "#F9F1FF",
|
|
87
|
+
100: "#F3E2FF",
|
|
88
|
+
200: "#ECD4FF",
|
|
89
|
+
300: "#E0B8FF",
|
|
90
|
+
400: "#D49BFF",
|
|
91
|
+
500: "#C170FF",
|
|
92
|
+
600: "#AE65E6",
|
|
93
|
+
700: "#9A5ACC",
|
|
94
|
+
800: "#874EB3",
|
|
95
|
+
900: "#613880",
|
|
96
|
+
950: "#3A224C"
|
|
97
|
+
},
|
|
98
|
+
tertiary: {
|
|
99
|
+
default: "#5B8CFF",
|
|
100
|
+
50: "#EFF4FF",
|
|
101
|
+
100: "#DEE8FF",
|
|
102
|
+
200: "#CEDDFF",
|
|
103
|
+
300: "#BDD1FF",
|
|
104
|
+
400: "#7CA3FF",
|
|
105
|
+
500: "#5B8CFF",
|
|
106
|
+
600: "#527EE6",
|
|
107
|
+
700: "#4062B3",
|
|
108
|
+
800: "#2E4680",
|
|
109
|
+
900: "#243866",
|
|
110
|
+
950: "#1B2A4C"
|
|
111
|
+
},
|
|
112
|
+
destructive: {
|
|
113
|
+
default: "#EF4444",
|
|
114
|
+
50: "#FEF2F2",
|
|
115
|
+
100: "#FEE2E2",
|
|
116
|
+
200: "#FECACA",
|
|
117
|
+
300: "#FCA5A5",
|
|
118
|
+
400: "#F87171",
|
|
119
|
+
500: "#EF4444",
|
|
120
|
+
600: "#DC2626",
|
|
121
|
+
700: "#B91C1C",
|
|
122
|
+
800: "#991B1B",
|
|
123
|
+
900: "#7F1D1D",
|
|
124
|
+
950: "#450A0A"
|
|
125
|
+
},
|
|
126
|
+
success: {
|
|
127
|
+
default: "#22c55e",
|
|
128
|
+
50: "#f0fdf4",
|
|
129
|
+
100: "#dcfce7",
|
|
130
|
+
200: "#bbf7d0",
|
|
131
|
+
300: "#86efac",
|
|
132
|
+
400: "#4ade80",
|
|
133
|
+
500: "#22c55e",
|
|
134
|
+
600: "#16a34a",
|
|
135
|
+
700: "#15803d",
|
|
136
|
+
800: "#166534",
|
|
137
|
+
900: "#14532d",
|
|
138
|
+
950: "#052e16"
|
|
139
|
+
},
|
|
140
|
+
warn: {
|
|
141
|
+
default: "#f59e0b",
|
|
142
|
+
50: "#fffbeb",
|
|
143
|
+
100: "#fef3c7",
|
|
144
|
+
200: "#fde68a",
|
|
145
|
+
300: "#fcd34d",
|
|
146
|
+
400: "#fbbf24",
|
|
147
|
+
500: "#f59e0b",
|
|
148
|
+
600: "#d97706",
|
|
149
|
+
700: "#b45309",
|
|
150
|
+
800: "#92400e",
|
|
151
|
+
900: "#78350f",
|
|
152
|
+
950: "#451a03"
|
|
153
|
+
},
|
|
154
|
+
text: {
|
|
155
|
+
black: "#09090b",
|
|
156
|
+
white: "#fafafa",
|
|
157
|
+
50: "#fafafa",
|
|
158
|
+
100: "#f4f4f5",
|
|
159
|
+
200: "#e4e4e7",
|
|
160
|
+
300: "#d4d4d8",
|
|
161
|
+
400: "#a1a1aa",
|
|
162
|
+
500: "#71717a",
|
|
163
|
+
600: "#52525b",
|
|
164
|
+
700: "#3f3f46",
|
|
165
|
+
800: "#27272a",
|
|
166
|
+
900: "#18181b",
|
|
167
|
+
950: "#09090b"
|
|
168
|
+
},
|
|
169
|
+
surface: {
|
|
170
|
+
default: "#ffffff",
|
|
171
|
+
50: "#ffffff",
|
|
172
|
+
100: "#f5f5f5",
|
|
173
|
+
200: "#e5e5e5",
|
|
174
|
+
300: "#d4d4d4",
|
|
175
|
+
400: "#a3a3a3",
|
|
176
|
+
500: "#737373",
|
|
177
|
+
600: "#525252",
|
|
178
|
+
700: "#404040",
|
|
179
|
+
800: "#262626",
|
|
180
|
+
900: "#171717",
|
|
181
|
+
950: "#0a0a0a"
|
|
182
|
+
},
|
|
183
|
+
border: {
|
|
184
|
+
default: "#64748B",
|
|
185
|
+
50: "#f9fafb",
|
|
186
|
+
100: "#f3f4f6",
|
|
187
|
+
200: "#e5e7eb",
|
|
188
|
+
300: "#d1d5db",
|
|
189
|
+
400: "#9ca3af",
|
|
190
|
+
500: "#64748B",
|
|
191
|
+
600: "#475569",
|
|
192
|
+
700: "#334155",
|
|
193
|
+
800: "#1E293B",
|
|
194
|
+
900: "#0F172A",
|
|
195
|
+
950: "#020817"
|
|
196
|
+
},
|
|
197
|
+
// TEXT COLOR
|
|
198
|
+
"text-primary": "#111315",
|
|
199
|
+
"text-secondary": "#30353C",
|
|
200
|
+
"text-third": "#30353CCC",
|
|
201
|
+
"text-placeholder": "#11131566",
|
|
202
|
+
"text-white-placeholder": "#FDFDFD99",
|
|
203
|
+
"text-black": {
|
|
204
|
+
primary: "#19191B",
|
|
205
|
+
secondary: "#222325",
|
|
206
|
+
third: "#292A2E",
|
|
207
|
+
fourth: "#5F606A",
|
|
208
|
+
placeholder: "#B2B3BD"
|
|
209
|
+
},
|
|
210
|
+
"text-white": {
|
|
211
|
+
primary: "#FCFCFC",
|
|
212
|
+
secondary: "#F9F9F9",
|
|
213
|
+
third: "#D9D9D9"
|
|
214
|
+
},
|
|
215
|
+
// COLOR SPECIAL
|
|
216
|
+
"positive-flat": "#4ADE80",
|
|
217
|
+
"destruction-flat": "#EF4444",
|
|
218
|
+
"neutral-flat": "#BFDBFE",
|
|
219
|
+
rating: "#FDE047",
|
|
220
|
+
input: {
|
|
221
|
+
border: {
|
|
222
|
+
active: "#71717A",
|
|
223
|
+
disabled: "#D4D4D8"
|
|
224
|
+
},
|
|
225
|
+
bg: {
|
|
226
|
+
default: "#FDFDFD",
|
|
227
|
+
error: "#FEF2F2"
|
|
228
|
+
}
|
|
229
|
+
}
|
|
230
|
+
}
|
|
231
|
+
},
|
|
232
|
+
backgroundImage: {
|
|
233
|
+
"ui-bg-color": "linear-gradient(110deg, #9CD5F5 3.09%, #B1B8E6 33.47%, rgba(185, 155, 215, 0.90) 62.82%, #A293DF 84.45%, #878AEA 106.08%)",
|
|
234
|
+
"ui-bg-page": "radial-gradient(70.47% 70.47% at 50% 50%, #FDFDFD 0%, #F3F1FF 50%, #F1FCFF 100%)",
|
|
235
|
+
"ui-btn-primary": "linear-gradient(180deg, #828EF7 0%, #6C70F0 100%)",
|
|
236
|
+
"ui-btn-secondary": "linear-gradient(180deg, #4277EF 0%, #669BF4 100%)",
|
|
237
|
+
"ui-btn-accept": "linear-gradient(282deg, #30C36D 6.81%, #6BCD8A 93.19%)",
|
|
238
|
+
"ui-btn-destructive": "linear-gradient(282deg, #FF384A 7.07%, #FF5463 92.93%)",
|
|
239
|
+
"ui-status-bg-positive": "linear-gradient(0deg, #C4FFD8 0%, #68FF9D 100%)",
|
|
240
|
+
"ui-status-bg-negative": "linear-gradient(0deg, #FECACA 0%, #FF8F8F 100%)",
|
|
241
|
+
"ui-status-bg-neutral": "linear-gradient(0deg, #E1EBFF 0%, #C7E8FF 100%)",
|
|
242
|
+
"ui-status-order": "linear-gradient(282deg, #30C36D 6.81%, #6BCD8A 93.19%)",
|
|
243
|
+
"ui-status-out-of-stock": "linear-gradient(282deg, #FF384A 7.07%, #FF5463 92.93%)",
|
|
244
|
+
"ui-status-in-stock": "linear-gradient(282deg, #30A8FF 6.81%, #73BAED 93.19%)",
|
|
245
|
+
"ui-line": "linear-gradient(90deg, #D3D4FF 0%, #7587EA 50%, #AEC0FF 100%)"
|
|
246
|
+
},
|
|
247
|
+
boxShadow: {
|
|
248
|
+
"ui-sd-primary": "0 4px 20px 0 rgba(104, 109, 224, 0.5)",
|
|
249
|
+
"ui-sd-base": "0 1px 3px 0 rgba(0, 0, 0, 0.1), 0 1px 2px 0 rgba(0, 0, 0, 0.06)",
|
|
250
|
+
"ui-sd-destructive": "0 10px 10px 0 rgba(255, 56, 74, 0.15)",
|
|
251
|
+
"ui-sd-accept": "0 10px 10px 0 rgba(46, 213, 115, 0.15)",
|
|
252
|
+
"ui-xl": "0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04)",
|
|
253
|
+
"ui-soft": "0px 5px 12px 0px rgba(0, 67, 101, 0.08)",
|
|
254
|
+
"ui-muli": "0px 5px 50px 0px rgba(0, 67, 101, 0.08), 0px 2px 6px 0px rgba(130, 169, 188, 0.08)",
|
|
255
|
+
"ui-category-effect": "0px 4px 50px 0px rgba(0, 67, 101, 0.08)",
|
|
256
|
+
"ui-flat": "0px 0.25rem 0.625rem 0px rgba(99, 102, 241, 0.07)",
|
|
257
|
+
"ui-overlay": "0px 4px 4px 1px rgba(99, 102, 241, 0.04)",
|
|
258
|
+
"ui-sticky-nav": "0px 3px 12px -1px rgba(151, 71, 255, 0.07)",
|
|
259
|
+
"ui-dialog": "0px 8px 12px 0px rgba(99, 102, 241, 0.15)"
|
|
260
|
+
},
|
|
261
|
+
fontSize: {
|
|
262
|
+
"ui-h1": ["1.5rem", "2rem"],
|
|
263
|
+
"ui-h2": ["1.25rem", "1.75rem"],
|
|
264
|
+
"ui-h3": ["1.125rem", "1.75rem"],
|
|
265
|
+
"ui-p": ["1rem", "1.5rem"],
|
|
266
|
+
"ui-note": ["0.875rem", "1.25rem"],
|
|
267
|
+
"ui-small-note": ["0.75rem", "1rem"]
|
|
268
|
+
},
|
|
269
|
+
keyframes: {
|
|
270
|
+
"accordion-down": {
|
|
271
|
+
from: { height: "0" },
|
|
272
|
+
to: { height: "var(--radix-accordion-content-height)" }
|
|
273
|
+
},
|
|
274
|
+
"accordion-up": {
|
|
275
|
+
from: { height: "var(--radix-accordion-content-height)" },
|
|
276
|
+
to: { height: "0" }
|
|
277
|
+
}
|
|
278
|
+
},
|
|
279
|
+
animation: {
|
|
280
|
+
"accordion-down": "accordion-down 0.2s ease-out",
|
|
281
|
+
"accordion-up": "accordion-up 0.2s ease-out"
|
|
282
|
+
}
|
|
283
|
+
};
|
|
284
|
+
var tailwindTheme_default = themes;
|
|
285
|
+
|
|
286
|
+
// packages/libs/utils.ts
|
|
287
|
+
import clsx from "clsx";
|
|
288
|
+
import { extendTailwindMerge } from "tailwind-merge";
|
|
289
|
+
var customTailwindMerge = () => {
|
|
290
|
+
return extendTailwindMerge({
|
|
291
|
+
...tailwindTheme_default,
|
|
292
|
+
prefix: ""
|
|
293
|
+
});
|
|
294
|
+
};
|
|
295
|
+
var cn = (...inputs) => {
|
|
296
|
+
const customTwMerge = customTailwindMerge();
|
|
297
|
+
return customTwMerge(clsx(inputs));
|
|
298
|
+
};
|
|
299
|
+
|
|
300
|
+
// packages/libs/color-hash/cores/bkdr-hash.ts
|
|
301
|
+
var BKDRHash = (str) => {
|
|
302
|
+
const seed = 131;
|
|
303
|
+
const seed2 = 137;
|
|
304
|
+
let hash = 0;
|
|
305
|
+
str += "x";
|
|
306
|
+
const MAX_SAFE_INTEGER = Math.floor(9007199254740991 / seed2);
|
|
307
|
+
str.split("").forEach((char) => {
|
|
308
|
+
if (hash > MAX_SAFE_INTEGER) {
|
|
309
|
+
hash = Math.floor(hash / seed2);
|
|
310
|
+
}
|
|
311
|
+
hash = hash * seed + char.charCodeAt(0);
|
|
312
|
+
});
|
|
313
|
+
return hash;
|
|
314
|
+
};
|
|
315
|
+
var bkdr_hash_default = BKDRHash;
|
|
316
|
+
|
|
317
|
+
// packages/libs/color-hash/cores/colors.ts
|
|
318
|
+
var RGB2HEX = (RGBArray) => {
|
|
319
|
+
let hex = "#";
|
|
320
|
+
RGBArray.forEach((color) => {
|
|
321
|
+
if (color < 16) {
|
|
322
|
+
hex += "0";
|
|
323
|
+
}
|
|
324
|
+
hex += color.toString(16);
|
|
325
|
+
});
|
|
326
|
+
return hex;
|
|
327
|
+
};
|
|
328
|
+
var HSL2RGB = (H, S, L) => {
|
|
329
|
+
H /= 360;
|
|
330
|
+
let q = L < 0.5 ? L * (1 + S) : L + S - L * S;
|
|
331
|
+
let p = 2 * L - q;
|
|
332
|
+
return [H + 1 / 3, H, H - 1 / 3].map((color) => {
|
|
333
|
+
if (color < 0) {
|
|
334
|
+
color++;
|
|
335
|
+
}
|
|
336
|
+
if (color > 1) {
|
|
337
|
+
color--;
|
|
338
|
+
}
|
|
339
|
+
if (color < 1 / 6) {
|
|
340
|
+
color = p + (q - p) * 6 * color;
|
|
341
|
+
} else if (color < 0.5) {
|
|
342
|
+
color = q;
|
|
343
|
+
} else if (color < 2 / 3) {
|
|
344
|
+
color = p + (q - p) * 6 * (2 / 3 - color);
|
|
345
|
+
} else {
|
|
346
|
+
color = p;
|
|
347
|
+
}
|
|
348
|
+
return Math.round(color * 255);
|
|
349
|
+
});
|
|
350
|
+
};
|
|
351
|
+
|
|
352
|
+
// packages/libs/color-hash/index.ts
|
|
353
|
+
var ColorHash = class {
|
|
354
|
+
constructor(options) {
|
|
355
|
+
__publicField(this, "_L");
|
|
356
|
+
__publicField(this, "_S");
|
|
357
|
+
__publicField(this, "_hueRange");
|
|
358
|
+
__publicField(this, "_hash");
|
|
359
|
+
/**
|
|
360
|
+
* Returns the hash in [h, s, l].
|
|
361
|
+
* Note that H ∈ [0, 360); S ∈ [0, 1]; L ∈ [0, 1];
|
|
362
|
+
*
|
|
363
|
+
* @param {String} str string to hash
|
|
364
|
+
* @returns {Array} [h, s, l]
|
|
365
|
+
*/
|
|
366
|
+
__publicField(this, "hsl", (str) => {
|
|
367
|
+
let H, S, L;
|
|
368
|
+
let hash = this._hash(str);
|
|
369
|
+
const hueResolution = 727;
|
|
370
|
+
if (this._hueRange.length) {
|
|
371
|
+
const range = this._hueRange[hash % this._hueRange.length];
|
|
372
|
+
H = hash / this._hueRange.length % hueResolution * (range.max - range.min) / hueResolution + range.min;
|
|
373
|
+
} else {
|
|
374
|
+
H = hash % 359;
|
|
375
|
+
}
|
|
376
|
+
hash = Math.ceil(hash / 360);
|
|
377
|
+
S = this._S[hash % this._S.length];
|
|
378
|
+
hash = Math.ceil(hash / this._S.length);
|
|
379
|
+
L = this._L[hash % this._L.length];
|
|
380
|
+
return [H, S, L];
|
|
381
|
+
});
|
|
382
|
+
/**
|
|
383
|
+
* Returns the hash in [r, g, b].
|
|
384
|
+
* Note that R, G, B ∈ [0, 255]
|
|
385
|
+
*
|
|
386
|
+
* @param {String} str string to hash
|
|
387
|
+
* @returns {Array} [r, g, b]
|
|
388
|
+
*/
|
|
389
|
+
__publicField(this, "rgb", (str) => {
|
|
390
|
+
const hsl = this.hsl(str);
|
|
391
|
+
return HSL2RGB.apply(this, hsl);
|
|
392
|
+
});
|
|
393
|
+
/**
|
|
394
|
+
* Returns the hash in hex
|
|
395
|
+
*
|
|
396
|
+
* @param {String} str string to hash
|
|
397
|
+
* @returns {String} hex with #
|
|
398
|
+
*/
|
|
399
|
+
__publicField(this, "hex", (str) => {
|
|
400
|
+
const rgb = this.rgb(str);
|
|
401
|
+
return RGB2HEX(rgb);
|
|
402
|
+
});
|
|
403
|
+
const [L, S] = [options.lightness, options.saturation].map((param) => {
|
|
404
|
+
param = param !== void 0 ? param : [0.35, 0.5, 0.65];
|
|
405
|
+
return Array.isArray(param) ? param.concat() : [param];
|
|
406
|
+
});
|
|
407
|
+
this._L = L;
|
|
408
|
+
this._S = S;
|
|
409
|
+
if (typeof options.hue === "number") {
|
|
410
|
+
options.hue = { min: options.hue, max: options.hue };
|
|
411
|
+
}
|
|
412
|
+
if (typeof options.hue === "object" && !Array.isArray(options.hue)) {
|
|
413
|
+
options.hue = [options.hue];
|
|
414
|
+
}
|
|
415
|
+
if (typeof options.hue === "undefined" || options.hue === null) {
|
|
416
|
+
options.hue = [];
|
|
417
|
+
}
|
|
418
|
+
this._hueRange = options.hue.map((range) => {
|
|
419
|
+
return {
|
|
420
|
+
min: typeof range.min === "undefined" ? 0 : range.min,
|
|
421
|
+
max: typeof range.max === "undefined" ? 360 : range.max
|
|
422
|
+
};
|
|
423
|
+
});
|
|
424
|
+
this._hash = bkdr_hash_default;
|
|
425
|
+
}
|
|
426
|
+
};
|
|
427
|
+
var colorHash = new ColorHash({
|
|
428
|
+
hue: { min: 0, max: 359 },
|
|
429
|
+
saturation: [0.35, 0.5, 0.65],
|
|
430
|
+
lightness: [0.35, 0.5, 0.65]
|
|
431
|
+
});
|
|
432
|
+
var color_hash_default = colorHash;
|
|
433
|
+
|
|
434
|
+
// packages/Atoms/Avatar/index.tsx
|
|
435
|
+
import * as AvatarPrimitive from "@radix-ui/react-avatar";
|
|
436
|
+
import { jsx as jsx2 } from "react/jsx-runtime";
|
|
437
|
+
var Avatar = forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx2(
|
|
438
|
+
AvatarPrimitive.Root,
|
|
439
|
+
{
|
|
440
|
+
ref,
|
|
441
|
+
className: cn("relative flex size-10 shrink-0 overflow-hidden rounded-full", className),
|
|
442
|
+
...props
|
|
443
|
+
}
|
|
444
|
+
));
|
|
445
|
+
Avatar.displayName = AvatarPrimitive.Root.displayName;
|
|
446
|
+
var AvatarImage = forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx2(
|
|
447
|
+
AvatarPrimitive.Image,
|
|
448
|
+
{
|
|
449
|
+
ref,
|
|
450
|
+
className: cn("aspect-square size-full", className),
|
|
451
|
+
...props
|
|
452
|
+
}
|
|
453
|
+
));
|
|
454
|
+
AvatarImage.displayName = AvatarPrimitive.Image.displayName;
|
|
455
|
+
var AvatarFallback = forwardRef(({ hexColor = "#6C70F0", className, ...props }, ref) => /* @__PURE__ */ jsx2(
|
|
456
|
+
AvatarPrimitive.Fallback,
|
|
457
|
+
{
|
|
458
|
+
ref,
|
|
459
|
+
className: cn("flex size-full items-center justify-center rounded-full", className),
|
|
460
|
+
...props,
|
|
461
|
+
style: { color: color_hash_default.hex(hexColor) },
|
|
462
|
+
children: /* @__PURE__ */ jsx2(AvatarIcon_default, { size: 36 })
|
|
463
|
+
}
|
|
464
|
+
));
|
|
465
|
+
AvatarFallback.displayName = AvatarPrimitive.Fallback.displayName;
|
|
466
|
+
export {
|
|
467
|
+
Avatar,
|
|
468
|
+
AvatarFallback,
|
|
469
|
+
AvatarImage
|
|
470
|
+
};
|