@dmitriikapustin/ui 0.1.0 → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs +1547 -780
- package/dist/index.css +4596 -0
- package/dist/index.d.cts +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +1547 -780
- package/package.json +8 -10
package/dist/index.cjs
CHANGED
|
@@ -40,6 +40,12 @@ var __objRest = (source, exclude) => {
|
|
|
40
40
|
}
|
|
41
41
|
return target;
|
|
42
42
|
};
|
|
43
|
+
|
|
44
|
+
// src/atoms/Spinner.module.scss
|
|
45
|
+
var Spinner_module_default = {
|
|
46
|
+
root: "Spinner_module_root",
|
|
47
|
+
fallback: "Spinner_module_fallback"
|
|
48
|
+
};
|
|
43
49
|
var sizeMap = {
|
|
44
50
|
sm: 32,
|
|
45
51
|
md: 48,
|
|
@@ -47,7 +53,7 @@ var sizeMap = {
|
|
|
47
53
|
};
|
|
48
54
|
var cachedData = null;
|
|
49
55
|
function Spinner({ size = "md", className = "" }) {
|
|
50
|
-
const
|
|
56
|
+
const px = sizeMap[size];
|
|
51
57
|
const [data, setData] = react.useState(() => cachedData);
|
|
52
58
|
react.useEffect(() => {
|
|
53
59
|
if (data) return;
|
|
@@ -66,8 +72,8 @@ function Spinner({ size = "md", className = "" }) {
|
|
|
66
72
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
67
73
|
"div",
|
|
68
74
|
{
|
|
69
|
-
className:
|
|
70
|
-
style: { width:
|
|
75
|
+
className: `${Spinner_module_default.root} ${className}`,
|
|
76
|
+
style: { width: px, height: px },
|
|
71
77
|
"aria-label": "Loading",
|
|
72
78
|
children: data ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
73
79
|
Lottie__default.default,
|
|
@@ -75,27 +81,29 @@ function Spinner({ size = "md", className = "" }) {
|
|
|
75
81
|
animationData: data,
|
|
76
82
|
loop: true,
|
|
77
83
|
autoplay: true,
|
|
78
|
-
style: { width:
|
|
84
|
+
style: { width: px, height: px }
|
|
79
85
|
}
|
|
80
86
|
) : /* @__PURE__ */ jsxRuntime.jsx(
|
|
81
87
|
"div",
|
|
82
88
|
{
|
|
83
|
-
className:
|
|
84
|
-
style: { width:
|
|
89
|
+
className: Spinner_module_default.fallback,
|
|
90
|
+
style: { width: px * 0.7, height: px * 0.7 }
|
|
85
91
|
}
|
|
86
92
|
)
|
|
87
93
|
}
|
|
88
94
|
);
|
|
89
95
|
}
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
96
|
+
|
|
97
|
+
// src/atoms/Button.module.scss
|
|
98
|
+
var Button_module_default = {
|
|
99
|
+
root: "Button_module_root",
|
|
100
|
+
primary: "Button_module_primary",
|
|
101
|
+
secondary: "Button_module_secondary",
|
|
102
|
+
outline: "Button_module_outline",
|
|
103
|
+
ghost: "Button_module_ghost",
|
|
104
|
+
sm: "Button_module_sm",
|
|
105
|
+
md: "Button_module_md",
|
|
106
|
+
disabled: "Button_module_disabled"
|
|
99
107
|
};
|
|
100
108
|
function Button(_a) {
|
|
101
109
|
var _b = _a, {
|
|
@@ -120,7 +128,7 @@ function Button(_a) {
|
|
|
120
128
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
121
129
|
"button",
|
|
122
130
|
__spreadProps(__spreadValues({
|
|
123
|
-
className:
|
|
131
|
+
className: `${Button_module_default.root} ${Button_module_default[variant]} ${Button_module_default[size]}${disabled || loading ? ` ${Button_module_default.disabled}` : ""}${className ? ` ${className}` : ""}`,
|
|
124
132
|
disabled: disabled || loading
|
|
125
133
|
}, props), {
|
|
126
134
|
children: [
|
|
@@ -131,6 +139,20 @@ function Button(_a) {
|
|
|
131
139
|
})
|
|
132
140
|
);
|
|
133
141
|
}
|
|
142
|
+
|
|
143
|
+
// src/atoms/Input.module.scss
|
|
144
|
+
var Input_module_default = {
|
|
145
|
+
wrapper: "Input_module_wrapper",
|
|
146
|
+
label: "Input_module_label",
|
|
147
|
+
inputWrap: "Input_module_inputWrap",
|
|
148
|
+
input: "Input_module_input",
|
|
149
|
+
hasIconLeft: "Input_module_hasIconLeft",
|
|
150
|
+
hasIconRight: "Input_module_hasIconRight",
|
|
151
|
+
iconLeft: "Input_module_iconLeft",
|
|
152
|
+
iconRight: "Input_module_iconRight",
|
|
153
|
+
error: "Input_module_error",
|
|
154
|
+
errorText: "Input_module_errorText"
|
|
155
|
+
};
|
|
134
156
|
function Input(_a) {
|
|
135
157
|
var _b = _a, {
|
|
136
158
|
label,
|
|
@@ -148,41 +170,37 @@ function Input(_a) {
|
|
|
148
170
|
"id"
|
|
149
171
|
]);
|
|
150
172
|
const inputId = id || (label == null ? void 0 : label.toLowerCase().replace(/\s+/g, "-"));
|
|
151
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className:
|
|
152
|
-
label && /* @__PURE__ */ jsxRuntime.jsx(
|
|
153
|
-
|
|
154
|
-
{
|
|
155
|
-
htmlFor: inputId,
|
|
156
|
-
className: "text-[13px] font-medium text-[var(--fg)] tracking-[-0.25px]",
|
|
157
|
-
children: label
|
|
158
|
-
}
|
|
159
|
-
),
|
|
160
|
-
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "relative", children: [
|
|
161
|
-
icon && /* @__PURE__ */ jsxRuntime.jsx("span", { className: "absolute left-3.5 top-1/2 -translate-y-1/2 text-[var(--fg-muted)]", children: icon }),
|
|
173
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: Input_module_default.wrapper, children: [
|
|
174
|
+
label && /* @__PURE__ */ jsxRuntime.jsx("label", { htmlFor: inputId, className: Input_module_default.label, children: label }),
|
|
175
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: Input_module_default.inputWrap, children: [
|
|
176
|
+
icon && /* @__PURE__ */ jsxRuntime.jsx("span", { className: Input_module_default.iconLeft, children: icon }),
|
|
162
177
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
163
178
|
"input",
|
|
164
179
|
__spreadValues({
|
|
165
180
|
id: inputId,
|
|
166
|
-
className:
|
|
181
|
+
className: `${Input_module_default.input}${icon ? ` ${Input_module_default.hasIconLeft}` : ""}${iconRight ? ` ${Input_module_default.hasIconRight}` : ""}${error ? ` ${Input_module_default.error}` : ""}${className ? ` ${className}` : ""}`
|
|
167
182
|
}, props)
|
|
168
183
|
),
|
|
169
|
-
iconRight && /* @__PURE__ */ jsxRuntime.jsx("span", { className:
|
|
184
|
+
iconRight && /* @__PURE__ */ jsxRuntime.jsx("span", { className: Input_module_default.iconRight, children: iconRight })
|
|
170
185
|
] }),
|
|
171
|
-
error && /* @__PURE__ */ jsxRuntime.jsx("p", { className:
|
|
186
|
+
error && /* @__PURE__ */ jsxRuntime.jsx("p", { className: Input_module_default.errorText, children: error })
|
|
172
187
|
] });
|
|
173
188
|
}
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
189
|
+
|
|
190
|
+
// src/atoms/Badge.module.scss
|
|
191
|
+
var Badge_module_default = {
|
|
192
|
+
root: "Badge_module_root",
|
|
193
|
+
default: "Badge_module_default",
|
|
194
|
+
success: "Badge_module_success",
|
|
195
|
+
warning: "Badge_module_warning",
|
|
196
|
+
error: "Badge_module_error",
|
|
197
|
+
info: "Badge_module_info"
|
|
180
198
|
};
|
|
181
199
|
function Badge({ color = "default", children, className = "" }) {
|
|
182
200
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
183
201
|
"span",
|
|
184
202
|
{
|
|
185
|
-
className:
|
|
203
|
+
className: `${Badge_module_default.root} ${Badge_module_default[color]}${className ? ` ${className}` : ""}`,
|
|
186
204
|
children
|
|
187
205
|
}
|
|
188
206
|
);
|
|
@@ -220,71 +238,108 @@ var IconlyEye = IconlyActivity;
|
|
|
220
238
|
var IconlyEyeOff = IconlyActivity;
|
|
221
239
|
var IconlyChevronRight = IconlyActivity;
|
|
222
240
|
var IconlyChevronLeft = IconlyActivity;
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
241
|
+
|
|
242
|
+
// src/atoms/Tag.module.scss
|
|
243
|
+
var Tag_module_default = {
|
|
244
|
+
root: "Tag_module_root",
|
|
245
|
+
default: "Tag_module_default",
|
|
246
|
+
primary: "Tag_module_primary",
|
|
247
|
+
success: "Tag_module_success",
|
|
248
|
+
warning: "Tag_module_warning",
|
|
249
|
+
error: "Tag_module_error",
|
|
250
|
+
closeBtn: "Tag_module_closeBtn"
|
|
229
251
|
};
|
|
230
252
|
function Tag({ color = "default", closable = false, onClose, children, className = "" }) {
|
|
253
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("span", { className: `${Tag_module_default.root} ${Tag_module_default[color]} ${className}`, children: [
|
|
254
|
+
children,
|
|
255
|
+
closable && /* @__PURE__ */ jsxRuntime.jsx(
|
|
256
|
+
"button",
|
|
257
|
+
{
|
|
258
|
+
onClick: onClose,
|
|
259
|
+
className: Tag_module_default.closeBtn,
|
|
260
|
+
"aria-label": "Remove tag",
|
|
261
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(IconlyClose, { size: 12 })
|
|
262
|
+
}
|
|
263
|
+
)
|
|
264
|
+
] });
|
|
265
|
+
}
|
|
266
|
+
|
|
267
|
+
// src/atoms/Toggle.module.scss
|
|
268
|
+
var Toggle_module_default = {
|
|
269
|
+
root: "Toggle_module_root",
|
|
270
|
+
track: "Toggle_module_track",
|
|
271
|
+
trackOn: "Toggle_module_trackOn",
|
|
272
|
+
trackOff: "Toggle_module_trackOff",
|
|
273
|
+
knob: "Toggle_module_knob",
|
|
274
|
+
knobOn: "Toggle_module_knobOn",
|
|
275
|
+
knobOff: "Toggle_module_knobOff",
|
|
276
|
+
label: "Toggle_module_label",
|
|
277
|
+
disabled: "Toggle_module_disabled"
|
|
278
|
+
};
|
|
279
|
+
function Toggle({
|
|
280
|
+
checked = false,
|
|
281
|
+
onChange,
|
|
282
|
+
label,
|
|
283
|
+
disabled = false,
|
|
284
|
+
className = ""
|
|
285
|
+
}) {
|
|
231
286
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
232
|
-
"
|
|
287
|
+
"label",
|
|
233
288
|
{
|
|
234
|
-
className:
|
|
289
|
+
className: `${Toggle_module_default.root}${disabled ? ` ${Toggle_module_default.disabled}` : ""}${className ? ` ${className}` : ""}`,
|
|
235
290
|
children: [
|
|
236
|
-
|
|
237
|
-
closable && /* @__PURE__ */ jsxRuntime.jsx(
|
|
291
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
238
292
|
"button",
|
|
239
293
|
{
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
"aria-
|
|
243
|
-
|
|
294
|
+
role: "switch",
|
|
295
|
+
type: "button",
|
|
296
|
+
"aria-checked": checked,
|
|
297
|
+
disabled,
|
|
298
|
+
onClick: () => onChange == null ? void 0 : onChange(!checked),
|
|
299
|
+
className: `${Toggle_module_default.track} ${checked ? Toggle_module_default.trackOn : Toggle_module_default.trackOff}${disabled ? ` ${Toggle_module_default.disabled}` : ""}`,
|
|
300
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
301
|
+
"span",
|
|
302
|
+
{
|
|
303
|
+
className: `${Toggle_module_default.knob} ${checked ? Toggle_module_default.knobOn : Toggle_module_default.knobOff}`
|
|
304
|
+
}
|
|
305
|
+
)
|
|
244
306
|
}
|
|
245
|
-
)
|
|
307
|
+
),
|
|
308
|
+
label && /* @__PURE__ */ jsxRuntime.jsx("span", { className: Toggle_module_default.label, children: label })
|
|
246
309
|
]
|
|
247
310
|
}
|
|
248
311
|
);
|
|
249
312
|
}
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
] });
|
|
271
|
-
}
|
|
272
|
-
var sizeMap2 = {
|
|
273
|
-
sm: { container: "w-8 h-8", text: "text-xs" },
|
|
274
|
-
md: { container: "w-10 h-10", text: "text-sm" },
|
|
275
|
-
lg: { container: "w-12 h-12", text: "text-base" },
|
|
276
|
-
xl: { container: "w-16 h-16", text: "text-lg" }
|
|
313
|
+
|
|
314
|
+
// src/atoms/Avatar.module.scss
|
|
315
|
+
var Avatar_module_default = {
|
|
316
|
+
root: "Avatar_module_root",
|
|
317
|
+
initials: "Avatar_module_initials",
|
|
318
|
+
initialsText: "Avatar_module_initialsText",
|
|
319
|
+
sm: "Avatar_module_sm",
|
|
320
|
+
md: "Avatar_module_md",
|
|
321
|
+
lg: "Avatar_module_lg",
|
|
322
|
+
xl: "Avatar_module_xl",
|
|
323
|
+
textSm: "Avatar_module_textSm",
|
|
324
|
+
textMd: "Avatar_module_textMd",
|
|
325
|
+
textLg: "Avatar_module_textLg",
|
|
326
|
+
textXl: "Avatar_module_textXl"
|
|
327
|
+
};
|
|
328
|
+
var textSizeMap = {
|
|
329
|
+
sm: Avatar_module_default.textSm,
|
|
330
|
+
md: Avatar_module_default.textMd,
|
|
331
|
+
lg: Avatar_module_default.textLg,
|
|
332
|
+
xl: Avatar_module_default.textXl
|
|
277
333
|
};
|
|
278
334
|
function Avatar(_a) {
|
|
279
335
|
var _b = _a, { src, alt = "", initials, size = "md", className = "" } = _b, props = __objRest(_b, ["src", "alt", "initials", "size", "className"]);
|
|
280
|
-
const s = sizeMap2[size];
|
|
281
336
|
if (!src && initials) {
|
|
282
337
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
283
338
|
"div",
|
|
284
339
|
{
|
|
285
|
-
className: `${
|
|
340
|
+
className: `${Avatar_module_default.initials} ${Avatar_module_default[size]}${className ? ` ${className}` : ""}`,
|
|
286
341
|
"aria-label": alt || initials,
|
|
287
|
-
children: /* @__PURE__ */ jsxRuntime.jsx("span", { className: `${
|
|
342
|
+
children: /* @__PURE__ */ jsxRuntime.jsx("span", { className: `${Avatar_module_default.initialsText} ${textSizeMap[size]}`, children: initials })
|
|
288
343
|
}
|
|
289
344
|
);
|
|
290
345
|
}
|
|
@@ -296,37 +351,55 @@ function Avatar(_a) {
|
|
|
296
351
|
__spreadValues({
|
|
297
352
|
src: imgSrc,
|
|
298
353
|
alt,
|
|
299
|
-
className: `${
|
|
354
|
+
className: `${Avatar_module_default.root} ${Avatar_module_default[size]}${className ? ` ${className}` : ""}`
|
|
300
355
|
}, props)
|
|
301
356
|
)
|
|
302
357
|
);
|
|
303
358
|
}
|
|
359
|
+
|
|
360
|
+
// src/atoms/Divider.module.scss
|
|
361
|
+
var Divider_module_default = {
|
|
362
|
+
root: "Divider_module_root",
|
|
363
|
+
withLabel: "Divider_module_withLabel",
|
|
364
|
+
line: "Divider_module_line",
|
|
365
|
+
label: "Divider_module_label"
|
|
366
|
+
};
|
|
304
367
|
function Divider({ className = "", label }) {
|
|
305
368
|
if (label) {
|
|
306
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className:
|
|
307
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { className:
|
|
308
|
-
/* @__PURE__ */ jsxRuntime.jsx("span", { className:
|
|
309
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { className:
|
|
369
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: `${Divider_module_default.withLabel}${className ? ` ${className}` : ""}`, children: [
|
|
370
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: Divider_module_default.line }),
|
|
371
|
+
/* @__PURE__ */ jsxRuntime.jsx("span", { className: Divider_module_default.label, children: label }),
|
|
372
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: Divider_module_default.line })
|
|
310
373
|
] });
|
|
311
374
|
}
|
|
312
|
-
return /* @__PURE__ */ jsxRuntime.jsx("hr", { className:
|
|
375
|
+
return /* @__PURE__ */ jsxRuntime.jsx("hr", { className: `${Divider_module_default.root}${className ? ` ${className}` : ""}` });
|
|
313
376
|
}
|
|
377
|
+
|
|
378
|
+
// src/atoms/MenuItem.module.scss
|
|
379
|
+
var MenuItem_module_default = {
|
|
380
|
+
root: "MenuItem_module_root",
|
|
381
|
+
active: "MenuItem_module_active"
|
|
382
|
+
};
|
|
314
383
|
function MenuItem({ text, active = false, onClick, className = "" }) {
|
|
315
384
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
316
385
|
"button",
|
|
317
386
|
{
|
|
318
387
|
onClick,
|
|
319
|
-
className:
|
|
388
|
+
className: `${MenuItem_module_default.root}${active ? ` ${MenuItem_module_default.active}` : ""}${className ? ` ${className}` : ""}`,
|
|
320
389
|
children: text
|
|
321
390
|
}
|
|
322
391
|
);
|
|
323
392
|
}
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
393
|
+
|
|
394
|
+
// src/atoms/IconButton.module.scss
|
|
395
|
+
var IconButton_module_default = {
|
|
396
|
+
root: "IconButton_module_root",
|
|
397
|
+
primary: "IconButton_module_primary",
|
|
398
|
+
secondary: "IconButton_module_secondary",
|
|
399
|
+
clear: "IconButton_module_clear",
|
|
400
|
+
disabled: "IconButton_module_disabled",
|
|
401
|
+
contrast: "IconButton_module_contrast",
|
|
402
|
+
isDisabled: "IconButton_module_isDisabled"
|
|
330
403
|
};
|
|
331
404
|
function IconButton(_a) {
|
|
332
405
|
var _b = _a, { icon, variant = "primary", className = "", disabled } = _b, props = __objRest(_b, ["icon", "variant", "className", "disabled"]);
|
|
@@ -334,34 +407,57 @@ function IconButton(_a) {
|
|
|
334
407
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
335
408
|
"button",
|
|
336
409
|
__spreadProps(__spreadValues({
|
|
337
|
-
className:
|
|
410
|
+
className: `${IconButton_module_default.root} ${IconButton_module_default[variant]}${isDisabled ? ` ${IconButton_module_default.isDisabled}` : ""}${className ? ` ${className}` : ""}`,
|
|
338
411
|
disabled: isDisabled
|
|
339
412
|
}, props), {
|
|
340
413
|
children: icon
|
|
341
414
|
})
|
|
342
415
|
);
|
|
343
416
|
}
|
|
417
|
+
|
|
418
|
+
// src/atoms/Logo.module.scss
|
|
419
|
+
var Logo_module_default = {
|
|
420
|
+
short: "Logo_module_short",
|
|
421
|
+
full: "Logo_module_full",
|
|
422
|
+
third: "Logo_module_third",
|
|
423
|
+
thirdText: "Logo_module_thirdText"
|
|
424
|
+
};
|
|
344
425
|
function Logo({ version = "short", className = "" }) {
|
|
345
426
|
if (version === "short") {
|
|
346
|
-
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: `
|
|
427
|
+
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: `${Logo_module_default.short}${className ? ` ${className}` : ""}`, children: /* @__PURE__ */ jsxRuntime.jsx("img", { className: "logo-img", src: "/assets/logos/logo-short.svg", alt: "aiacade.me", width: 19, height: 20 }) });
|
|
347
428
|
}
|
|
348
429
|
if (version === "third") {
|
|
349
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className:
|
|
430
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: `${Logo_module_default.third}${className ? ` ${className}` : ""}`, children: [
|
|
350
431
|
/* @__PURE__ */ jsxRuntime.jsx("img", { className: "logo-img", src: "/assets/logos/logo-icon.svg", alt: "", width: 20, height: 20 }),
|
|
351
|
-
/* @__PURE__ */ jsxRuntime.jsx("span", { className:
|
|
432
|
+
/* @__PURE__ */ jsxRuntime.jsx("span", { className: Logo_module_default.thirdText, children: "aiacade.me" })
|
|
352
433
|
] });
|
|
353
434
|
}
|
|
354
|
-
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: `
|
|
435
|
+
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: `${Logo_module_default.full}${className ? ` ${className}` : ""}`, children: /* @__PURE__ */ jsxRuntime.jsx("img", { className: "logo-img", src: "/assets/logos/logo-full.svg", alt: "aiacade.me", width: 130, height: 20 }) });
|
|
355
436
|
}
|
|
437
|
+
|
|
438
|
+
// src/atoms/StatBadge.module.scss
|
|
439
|
+
var StatBadge_module_default = {
|
|
440
|
+
root: "StatBadge_module_root",
|
|
441
|
+
bracket: "StatBadge_module_bracket"
|
|
442
|
+
};
|
|
356
443
|
function StatBadge({ value, suffix, showBrackets = false, className = "" }) {
|
|
357
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("span", { className:
|
|
358
|
-
showBrackets && /* @__PURE__ */ jsxRuntime.jsx("span", { className:
|
|
444
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("span", { className: `${StatBadge_module_default.root}${className ? ` ${className}` : ""}`, children: [
|
|
445
|
+
showBrackets && /* @__PURE__ */ jsxRuntime.jsx("span", { className: StatBadge_module_default.bracket, children: "[ " }),
|
|
359
446
|
value,
|
|
360
447
|
" ",
|
|
361
448
|
suffix,
|
|
362
|
-
showBrackets && /* @__PURE__ */ jsxRuntime.jsx("span", { className:
|
|
449
|
+
showBrackets && /* @__PURE__ */ jsxRuntime.jsx("span", { className: StatBadge_module_default.bracket, children: " ]" })
|
|
363
450
|
] });
|
|
364
451
|
}
|
|
452
|
+
|
|
453
|
+
// src/atoms/Textarea.module.scss
|
|
454
|
+
var Textarea_module_default = {
|
|
455
|
+
wrapper: "Textarea_module_wrapper",
|
|
456
|
+
label: "Textarea_module_label",
|
|
457
|
+
textarea: "Textarea_module_textarea",
|
|
458
|
+
error: "Textarea_module_error",
|
|
459
|
+
errorText: "Textarea_module_errorText"
|
|
460
|
+
};
|
|
365
461
|
function Textarea(_a) {
|
|
366
462
|
var _b = _a, {
|
|
367
463
|
label,
|
|
@@ -377,26 +473,30 @@ function Textarea(_a) {
|
|
|
377
473
|
"rows"
|
|
378
474
|
]);
|
|
379
475
|
const textareaId = id || (label == null ? void 0 : label.toLowerCase().replace(/\s+/g, "-"));
|
|
380
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className:
|
|
381
|
-
label && /* @__PURE__ */ jsxRuntime.jsx(
|
|
382
|
-
"label",
|
|
383
|
-
{
|
|
384
|
-
htmlFor: textareaId,
|
|
385
|
-
className: "text-[13px] font-medium text-[var(--fg)] tracking-[-0.25px]",
|
|
386
|
-
children: label
|
|
387
|
-
}
|
|
388
|
-
),
|
|
476
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: Textarea_module_default.wrapper, children: [
|
|
477
|
+
label && /* @__PURE__ */ jsxRuntime.jsx("label", { htmlFor: textareaId, className: Textarea_module_default.label, children: label }),
|
|
389
478
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
390
479
|
"textarea",
|
|
391
480
|
__spreadValues({
|
|
392
481
|
id: textareaId,
|
|
393
482
|
rows,
|
|
394
|
-
className:
|
|
483
|
+
className: `${Textarea_module_default.textarea}${error ? ` ${Textarea_module_default.error}` : ""}${className ? ` ${className}` : ""}`
|
|
395
484
|
}, props)
|
|
396
485
|
),
|
|
397
|
-
error && /* @__PURE__ */ jsxRuntime.jsx("p", { className:
|
|
486
|
+
error && /* @__PURE__ */ jsxRuntime.jsx("p", { className: Textarea_module_default.errorText, children: error })
|
|
398
487
|
] });
|
|
399
488
|
}
|
|
489
|
+
|
|
490
|
+
// src/atoms/Select.module.scss
|
|
491
|
+
var Select_module_default = {
|
|
492
|
+
wrapper: "Select_module_wrapper",
|
|
493
|
+
label: "Select_module_label",
|
|
494
|
+
selectWrap: "Select_module_selectWrap",
|
|
495
|
+
select: "Select_module_select",
|
|
496
|
+
chevron: "Select_module_chevron",
|
|
497
|
+
error: "Select_module_error",
|
|
498
|
+
errorText: "Select_module_errorText"
|
|
499
|
+
};
|
|
400
500
|
function Select(_a) {
|
|
401
501
|
var _b = _a, {
|
|
402
502
|
label,
|
|
@@ -414,21 +514,14 @@ function Select(_a) {
|
|
|
414
514
|
"id"
|
|
415
515
|
]);
|
|
416
516
|
const selectId = id || (label == null ? void 0 : label.toLowerCase().replace(/\s+/g, "-"));
|
|
417
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className:
|
|
418
|
-
label && /* @__PURE__ */ jsxRuntime.jsx(
|
|
419
|
-
|
|
420
|
-
{
|
|
421
|
-
htmlFor: selectId,
|
|
422
|
-
className: "text-[13px] font-medium text-[var(--fg)] tracking-[-0.25px]",
|
|
423
|
-
children: label
|
|
424
|
-
}
|
|
425
|
-
),
|
|
426
|
-
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "relative", children: [
|
|
517
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: Select_module_default.wrapper, children: [
|
|
518
|
+
label && /* @__PURE__ */ jsxRuntime.jsx("label", { htmlFor: selectId, className: Select_module_default.label, children: label }),
|
|
519
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: Select_module_default.selectWrap, children: [
|
|
427
520
|
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
428
521
|
"select",
|
|
429
522
|
__spreadProps(__spreadValues(__spreadValues({
|
|
430
523
|
id: selectId,
|
|
431
|
-
className:
|
|
524
|
+
className: `${Select_module_default.select}${error ? ` ${Select_module_default.error}` : ""}${className ? ` ${className}` : ""}`
|
|
432
525
|
}, !("value" in props) && { defaultValue: "" }), props), {
|
|
433
526
|
children: [
|
|
434
527
|
placeholder && /* @__PURE__ */ jsxRuntime.jsx("option", { value: "", disabled: true, children: placeholder }),
|
|
@@ -436,11 +529,22 @@ function Select(_a) {
|
|
|
436
529
|
]
|
|
437
530
|
})
|
|
438
531
|
),
|
|
439
|
-
/* @__PURE__ */ jsxRuntime.jsx("span", { className:
|
|
532
|
+
/* @__PURE__ */ jsxRuntime.jsx("span", { className: Select_module_default.chevron, children: /* @__PURE__ */ jsxRuntime.jsx(IconlyChevronDown, { size: 16 }) })
|
|
440
533
|
] }),
|
|
441
|
-
error && /* @__PURE__ */ jsxRuntime.jsx("p", { className:
|
|
534
|
+
error && /* @__PURE__ */ jsxRuntime.jsx("p", { className: Select_module_default.errorText, children: error })
|
|
442
535
|
] });
|
|
443
536
|
}
|
|
537
|
+
|
|
538
|
+
// src/atoms/Checkbox.module.scss
|
|
539
|
+
var Checkbox_module_default = {
|
|
540
|
+
root: "Checkbox_module_root",
|
|
541
|
+
hiddenInput: "Checkbox_module_hiddenInput",
|
|
542
|
+
box: "Checkbox_module_box",
|
|
543
|
+
checked: "Checkbox_module_checked",
|
|
544
|
+
unchecked: "Checkbox_module_unchecked",
|
|
545
|
+
label: "Checkbox_module_label",
|
|
546
|
+
disabled: "Checkbox_module_disabled"
|
|
547
|
+
};
|
|
444
548
|
function Checkbox({
|
|
445
549
|
checked = false,
|
|
446
550
|
onChange,
|
|
@@ -451,7 +555,7 @@ function Checkbox({
|
|
|
451
555
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
452
556
|
"label",
|
|
453
557
|
{
|
|
454
|
-
className:
|
|
558
|
+
className: `${Checkbox_module_default.root}${disabled ? ` ${Checkbox_module_default.disabled}` : ""}${className ? ` ${className}` : ""}`,
|
|
455
559
|
children: [
|
|
456
560
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
457
561
|
"input",
|
|
@@ -460,13 +564,13 @@ function Checkbox({
|
|
|
460
564
|
checked,
|
|
461
565
|
disabled,
|
|
462
566
|
onChange: () => onChange == null ? void 0 : onChange(!checked),
|
|
463
|
-
className:
|
|
567
|
+
className: Checkbox_module_default.hiddenInput
|
|
464
568
|
}
|
|
465
569
|
),
|
|
466
570
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
467
571
|
"span",
|
|
468
572
|
{
|
|
469
|
-
className:
|
|
573
|
+
className: `${Checkbox_module_default.box} ${checked ? Checkbox_module_default.checked : Checkbox_module_default.unchecked}`,
|
|
470
574
|
children: checked && /* @__PURE__ */ jsxRuntime.jsx(
|
|
471
575
|
"svg",
|
|
472
576
|
{
|
|
@@ -489,11 +593,23 @@ function Checkbox({
|
|
|
489
593
|
)
|
|
490
594
|
}
|
|
491
595
|
),
|
|
492
|
-
label && /* @__PURE__ */ jsxRuntime.jsx("span", { className:
|
|
596
|
+
label && /* @__PURE__ */ jsxRuntime.jsx("span", { className: Checkbox_module_default.label, children: label })
|
|
493
597
|
]
|
|
494
598
|
}
|
|
495
599
|
);
|
|
496
600
|
}
|
|
601
|
+
|
|
602
|
+
// src/atoms/Radio.module.scss
|
|
603
|
+
var Radio_module_default = {
|
|
604
|
+
root: "Radio_module_root",
|
|
605
|
+
hiddenInput: "Radio_module_hiddenInput",
|
|
606
|
+
circle: "Radio_module_circle",
|
|
607
|
+
checked: "Radio_module_checked",
|
|
608
|
+
unchecked: "Radio_module_unchecked",
|
|
609
|
+
dot: "Radio_module_dot",
|
|
610
|
+
label: "Radio_module_label",
|
|
611
|
+
disabled: "Radio_module_disabled"
|
|
612
|
+
};
|
|
497
613
|
function Radio({
|
|
498
614
|
checked = false,
|
|
499
615
|
onChange,
|
|
@@ -506,7 +622,7 @@ function Radio({
|
|
|
506
622
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
507
623
|
"label",
|
|
508
624
|
{
|
|
509
|
-
className:
|
|
625
|
+
className: `${Radio_module_default.root}${disabled ? ` ${Radio_module_default.disabled}` : ""}${className ? ` ${className}` : ""}`,
|
|
510
626
|
children: [
|
|
511
627
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
512
628
|
"input",
|
|
@@ -517,60 +633,71 @@ function Radio({
|
|
|
517
633
|
name,
|
|
518
634
|
value,
|
|
519
635
|
onChange: () => onChange == null ? void 0 : onChange(!checked),
|
|
520
|
-
className:
|
|
636
|
+
className: Radio_module_default.hiddenInput
|
|
521
637
|
}
|
|
522
638
|
),
|
|
523
639
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
524
640
|
"span",
|
|
525
641
|
{
|
|
526
|
-
className:
|
|
527
|
-
children: checked && /* @__PURE__ */ jsxRuntime.jsx("span", { className:
|
|
642
|
+
className: `${Radio_module_default.circle} ${checked ? Radio_module_default.checked : Radio_module_default.unchecked}`,
|
|
643
|
+
children: checked && /* @__PURE__ */ jsxRuntime.jsx("span", { className: Radio_module_default.dot })
|
|
528
644
|
}
|
|
529
645
|
),
|
|
530
|
-
label && /* @__PURE__ */ jsxRuntime.jsx("span", { className:
|
|
646
|
+
label && /* @__PURE__ */ jsxRuntime.jsx("span", { className: Radio_module_default.label, children: label })
|
|
531
647
|
]
|
|
532
648
|
}
|
|
533
649
|
);
|
|
534
650
|
}
|
|
535
|
-
|
|
536
|
-
|
|
537
|
-
|
|
538
|
-
|
|
651
|
+
|
|
652
|
+
// src/atoms/Link.module.scss
|
|
653
|
+
var Link_module_default = {
|
|
654
|
+
root: "Link_module_root",
|
|
655
|
+
default: "Link_module_default",
|
|
656
|
+
muted: "Link_module_muted",
|
|
657
|
+
underline: "Link_module_underline"
|
|
539
658
|
};
|
|
540
659
|
function Link(_a) {
|
|
541
660
|
var _b = _a, { variant = "default", className = "", children } = _b, rest = __objRest(_b, ["variant", "className", "children"]);
|
|
542
661
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
543
662
|
"a",
|
|
544
663
|
__spreadProps(__spreadValues({
|
|
545
|
-
className:
|
|
664
|
+
className: `${Link_module_default.root} ${Link_module_default[variant]}${className ? ` ${className}` : ""}`
|
|
546
665
|
}, rest), {
|
|
547
666
|
children
|
|
548
667
|
})
|
|
549
668
|
);
|
|
550
669
|
}
|
|
551
|
-
|
|
552
|
-
|
|
553
|
-
|
|
554
|
-
|
|
555
|
-
|
|
670
|
+
|
|
671
|
+
// src/atoms/Tooltip.module.scss
|
|
672
|
+
var Tooltip_module_default = {
|
|
673
|
+
root: "Tooltip_module_root",
|
|
674
|
+
tooltip: "Tooltip_module_tooltip",
|
|
675
|
+
top: "Tooltip_module_top",
|
|
676
|
+
bottom: "Tooltip_module_bottom",
|
|
677
|
+
left: "Tooltip_module_left",
|
|
678
|
+
right: "Tooltip_module_right"
|
|
556
679
|
};
|
|
557
680
|
function Tooltip({ content, position = "top", children, className = "" }) {
|
|
558
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("span", { className:
|
|
681
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("span", { className: `${Tooltip_module_default.root} ${className}`, children: [
|
|
559
682
|
children,
|
|
560
683
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
561
684
|
"span",
|
|
562
685
|
{
|
|
563
686
|
role: "tooltip",
|
|
564
|
-
className:
|
|
687
|
+
className: `${Tooltip_module_default.tooltip} ${Tooltip_module_default[position]}`,
|
|
565
688
|
children: content
|
|
566
689
|
}
|
|
567
690
|
)
|
|
568
691
|
] });
|
|
569
692
|
}
|
|
570
|
-
|
|
571
|
-
|
|
572
|
-
|
|
573
|
-
|
|
693
|
+
|
|
694
|
+
// src/atoms/Skeleton.module.scss
|
|
695
|
+
var Skeleton_module_default = {
|
|
696
|
+
pulse: "Skeleton_module_pulse",
|
|
697
|
+
root: "Skeleton_module_root",
|
|
698
|
+
line: "Skeleton_module_line",
|
|
699
|
+
circle: "Skeleton_module_circle",
|
|
700
|
+
rect: "Skeleton_module_rect"
|
|
574
701
|
};
|
|
575
702
|
function Skeleton({ variant = "line", width, height, className = "" }) {
|
|
576
703
|
const style = {};
|
|
@@ -583,12 +710,23 @@ function Skeleton({ variant = "line", width, height, className = "" }) {
|
|
|
583
710
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
584
711
|
"div",
|
|
585
712
|
{
|
|
586
|
-
className:
|
|
713
|
+
className: `${Skeleton_module_default.root} ${Skeleton_module_default[variant]} ${className}`,
|
|
587
714
|
style: Object.keys(style).length > 0 ? style : void 0,
|
|
588
715
|
"aria-hidden": "true"
|
|
589
716
|
}
|
|
590
717
|
);
|
|
591
718
|
}
|
|
719
|
+
|
|
720
|
+
// src/atoms/TicketButton.module.scss
|
|
721
|
+
var TicketButton_module_default = {
|
|
722
|
+
root: "TicketButton_module_root",
|
|
723
|
+
stub: "TicketButton_module_stub",
|
|
724
|
+
body: "TicketButton_module_body",
|
|
725
|
+
bodySvg: "TicketButton_module_bodySvg",
|
|
726
|
+
bodyText: "TicketButton_module_bodyText",
|
|
727
|
+
stubSvg: "TicketButton_module_stubSvg",
|
|
728
|
+
stubIcon: "TicketButton_module_stubIcon"
|
|
729
|
+
};
|
|
592
730
|
var DefaultIcon = () => /* @__PURE__ */ jsxRuntime.jsx("svg", { width: "18", height: "18", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", children: /* @__PURE__ */ jsxRuntime.jsx("polyline", { points: "9 18 15 12 9 6" }) });
|
|
593
731
|
function TicketButton(_a) {
|
|
594
732
|
var _b = _a, {
|
|
@@ -611,14 +749,14 @@ function TicketButton(_a) {
|
|
|
611
749
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
612
750
|
"button",
|
|
613
751
|
__spreadProps(__spreadValues({
|
|
614
|
-
className:
|
|
752
|
+
className: `${TicketButton_module_default.root} ${className}`
|
|
615
753
|
}, props), {
|
|
616
754
|
children: [
|
|
617
|
-
/* @__PURE__ */ jsxRuntime.jsxs("span", { className:
|
|
755
|
+
/* @__PURE__ */ jsxRuntime.jsxs("span", { className: TicketButton_module_default.body, children: [
|
|
618
756
|
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
619
757
|
"svg",
|
|
620
758
|
{
|
|
621
|
-
className:
|
|
759
|
+
className: TicketButton_module_default.bodySvg,
|
|
622
760
|
viewBox: "0 0 140 56",
|
|
623
761
|
fill: "none",
|
|
624
762
|
preserveAspectRatio: "none",
|
|
@@ -643,13 +781,13 @@ function TicketButton(_a) {
|
|
|
643
781
|
]
|
|
644
782
|
}
|
|
645
783
|
),
|
|
646
|
-
/* @__PURE__ */ jsxRuntime.jsx("span", { className:
|
|
784
|
+
/* @__PURE__ */ jsxRuntime.jsx("span", { className: TicketButton_module_default.bodyText, style: { color: fg }, children })
|
|
647
785
|
] }),
|
|
648
|
-
/* @__PURE__ */ jsxRuntime.jsxs("span", { className:
|
|
786
|
+
/* @__PURE__ */ jsxRuntime.jsxs("span", { className: TicketButton_module_default.stub, children: [
|
|
649
787
|
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
650
788
|
"svg",
|
|
651
789
|
{
|
|
652
|
-
className:
|
|
790
|
+
className: TicketButton_module_default.stubSvg,
|
|
653
791
|
viewBox: "0 0 56 56",
|
|
654
792
|
fill: "none",
|
|
655
793
|
preserveAspectRatio: "none",
|
|
@@ -673,36 +811,55 @@ function TicketButton(_a) {
|
|
|
673
811
|
]
|
|
674
812
|
}
|
|
675
813
|
),
|
|
676
|
-
/* @__PURE__ */ jsxRuntime.jsx("span", { className:
|
|
814
|
+
/* @__PURE__ */ jsxRuntime.jsx("span", { className: TicketButton_module_default.stubIcon, style: { color: fg }, children: icon || /* @__PURE__ */ jsxRuntime.jsx(DefaultIcon, {}) })
|
|
677
815
|
] })
|
|
678
816
|
]
|
|
679
817
|
})
|
|
680
818
|
);
|
|
681
819
|
}
|
|
820
|
+
|
|
821
|
+
// src/molecules/Card.module.scss
|
|
822
|
+
var Card_module_default = {
|
|
823
|
+
root: "Card_module_root",
|
|
824
|
+
imageWrapper: "Card_module_imageWrapper",
|
|
825
|
+
image: "Card_module_image",
|
|
826
|
+
body: "Card_module_body",
|
|
827
|
+
title: "Card_module_title",
|
|
828
|
+
description: "Card_module_description",
|
|
829
|
+
footer: "Card_module_footer"
|
|
830
|
+
};
|
|
682
831
|
function Card({ image, title, description, footer, children, className = "" }) {
|
|
683
|
-
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
684
|
-
"div",
|
|
685
|
-
{
|
|
686
|
-
|
|
687
|
-
children:
|
|
688
|
-
|
|
689
|
-
|
|
690
|
-
|
|
691
|
-
|
|
692
|
-
children
|
|
693
|
-
] }),
|
|
694
|
-
footer && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "px-5 py-3 border-t border-[var(--border-color)] bg-[var(--bg-secondary)]", children: footer })
|
|
695
|
-
]
|
|
696
|
-
}
|
|
697
|
-
);
|
|
832
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: `${Card_module_default.root}${className ? ` ${className}` : ""}`, children: [
|
|
833
|
+
image && /* @__PURE__ */ jsxRuntime.jsx("div", { className: Card_module_default.imageWrapper, children: /* @__PURE__ */ jsxRuntime.jsx("img", { src: image, alt: title || "", className: Card_module_default.image }) }),
|
|
834
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: Card_module_default.body, children: [
|
|
835
|
+
title && /* @__PURE__ */ jsxRuntime.jsx("h3", { className: Card_module_default.title, children: title }),
|
|
836
|
+
description && /* @__PURE__ */ jsxRuntime.jsx("p", { className: Card_module_default.description, children: description }),
|
|
837
|
+
children
|
|
838
|
+
] }),
|
|
839
|
+
footer && /* @__PURE__ */ jsxRuntime.jsx("div", { className: Card_module_default.footer, children: footer })
|
|
840
|
+
] });
|
|
698
841
|
}
|
|
842
|
+
|
|
843
|
+
// src/molecules/FormField.module.scss
|
|
844
|
+
var FormField_module_default = {
|
|
845
|
+
root: "FormField_module_root",
|
|
846
|
+
hint: "FormField_module_hint"
|
|
847
|
+
};
|
|
699
848
|
function FormField(_a) {
|
|
700
849
|
var _b = _a, { label, error, hint, icon } = _b, inputProps = __objRest(_b, ["label", "error", "hint", "icon"]);
|
|
701
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className:
|
|
850
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: FormField_module_default.root, children: [
|
|
702
851
|
/* @__PURE__ */ jsxRuntime.jsx(Input, __spreadValues({ label, error, icon }, inputProps)),
|
|
703
|
-
hint && !error && /* @__PURE__ */ jsxRuntime.jsx("p", { className:
|
|
852
|
+
hint && !error && /* @__PURE__ */ jsxRuntime.jsx("p", { className: FormField_module_default.hint, children: hint })
|
|
704
853
|
] });
|
|
705
854
|
}
|
|
855
|
+
|
|
856
|
+
// src/molecules/SearchBar.module.scss
|
|
857
|
+
var SearchBar_module_default = {
|
|
858
|
+
root: "SearchBar_module_root",
|
|
859
|
+
searchIcon: "SearchBar_module_searchIcon",
|
|
860
|
+
input: "SearchBar_module_input",
|
|
861
|
+
clearBtn: "SearchBar_module_clearBtn"
|
|
862
|
+
};
|
|
706
863
|
function SearchBar({ placeholder = "Search...", value: controlledValue, onChange, className = "" }) {
|
|
707
864
|
const [internalValue, setInternalValue] = react.useState("");
|
|
708
865
|
const value = controlledValue != null ? controlledValue : internalValue;
|
|
@@ -710,8 +867,8 @@ function SearchBar({ placeholder = "Search...", value: controlledValue, onChange
|
|
|
710
867
|
setInternalValue(val);
|
|
711
868
|
onChange == null ? void 0 : onChange(val);
|
|
712
869
|
};
|
|
713
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className:
|
|
714
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { className:
|
|
870
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: `${SearchBar_module_default.root}${className ? ` ${className}` : ""}`, children: [
|
|
871
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: SearchBar_module_default.searchIcon, children: /* @__PURE__ */ jsxRuntime.jsx(IconlySearch, { size: 18 }) }),
|
|
715
872
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
716
873
|
"input",
|
|
717
874
|
{
|
|
@@ -720,73 +877,95 @@ function SearchBar({ placeholder = "Search...", value: controlledValue, onChange
|
|
|
720
877
|
onChange: (e) => handleChange(e.target.value),
|
|
721
878
|
placeholder,
|
|
722
879
|
"aria-label": "Search",
|
|
723
|
-
className:
|
|
880
|
+
className: SearchBar_module_default.input
|
|
724
881
|
}
|
|
725
882
|
),
|
|
726
883
|
value && /* @__PURE__ */ jsxRuntime.jsx(
|
|
727
884
|
"button",
|
|
728
885
|
{
|
|
729
886
|
onClick: () => handleChange(""),
|
|
730
|
-
className:
|
|
887
|
+
className: SearchBar_module_default.clearBtn,
|
|
731
888
|
"aria-label": "Clear search",
|
|
732
889
|
children: /* @__PURE__ */ jsxRuntime.jsx(IconlyClose, { size: 16 })
|
|
733
890
|
}
|
|
734
891
|
)
|
|
735
892
|
] });
|
|
736
893
|
}
|
|
894
|
+
|
|
895
|
+
// src/molecules/Stat.module.scss
|
|
896
|
+
var Stat_module_default = {
|
|
897
|
+
root: "Stat_module_root",
|
|
898
|
+
valueRow: "Stat_module_valueRow",
|
|
899
|
+
value: "Stat_module_value",
|
|
900
|
+
trend: "Stat_module_trend",
|
|
901
|
+
positive: "Stat_module_positive",
|
|
902
|
+
negative: "Stat_module_negative",
|
|
903
|
+
label: "Stat_module_label"
|
|
904
|
+
};
|
|
737
905
|
function Stat({ value, label, trend, className = "" }) {
|
|
738
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className:
|
|
739
|
-
/* @__PURE__ */ jsxRuntime.jsxs("div", { className:
|
|
740
|
-
/* @__PURE__ */ jsxRuntime.jsx("span", { className:
|
|
741
|
-
trend && /* @__PURE__ */ jsxRuntime.jsxs(
|
|
742
|
-
"
|
|
743
|
-
|
|
744
|
-
|
|
745
|
-
|
|
746
|
-
trend.positive ? "\u2191" : "\u2193",
|
|
747
|
-
" ",
|
|
748
|
-
trend.value
|
|
749
|
-
]
|
|
750
|
-
}
|
|
751
|
-
)
|
|
906
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: `${Stat_module_default.root}${className ? ` ${className}` : ""}`, children: [
|
|
907
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: Stat_module_default.valueRow, children: [
|
|
908
|
+
/* @__PURE__ */ jsxRuntime.jsx("span", { className: Stat_module_default.value, children: value }),
|
|
909
|
+
trend && /* @__PURE__ */ jsxRuntime.jsxs("span", { className: `${Stat_module_default.trend} ${trend.positive ? Stat_module_default.positive : Stat_module_default.negative}`, children: [
|
|
910
|
+
trend.positive ? "\u2191" : "\u2193",
|
|
911
|
+
" ",
|
|
912
|
+
trend.value
|
|
913
|
+
] })
|
|
752
914
|
] }),
|
|
753
|
-
/* @__PURE__ */ jsxRuntime.jsx("span", { className:
|
|
915
|
+
/* @__PURE__ */ jsxRuntime.jsx("span", { className: Stat_module_default.label, children: label })
|
|
754
916
|
] });
|
|
755
917
|
}
|
|
756
|
-
|
|
757
|
-
|
|
758
|
-
|
|
759
|
-
|
|
760
|
-
|
|
918
|
+
|
|
919
|
+
// src/molecules/Alert.module.scss
|
|
920
|
+
var Alert_module_default = {
|
|
921
|
+
root: "Alert_module_root",
|
|
922
|
+
icon: "Alert_module_icon",
|
|
923
|
+
info: "Alert_module_info",
|
|
924
|
+
success: "Alert_module_success",
|
|
925
|
+
warning: "Alert_module_warning",
|
|
926
|
+
error: "Alert_module_error",
|
|
927
|
+
content: "Alert_module_content",
|
|
928
|
+
title: "Alert_module_title",
|
|
929
|
+
message: "Alert_module_message",
|
|
930
|
+
dismiss: "Alert_module_dismiss"
|
|
931
|
+
};
|
|
932
|
+
var variantIcons = {
|
|
933
|
+
info: IconlyInfoCircle,
|
|
934
|
+
success: IconlySuccess,
|
|
935
|
+
warning: IconlyWarning,
|
|
936
|
+
error: IconlyError
|
|
761
937
|
};
|
|
762
938
|
function Alert({ variant = "info", title, children, closable = false, className = "" }) {
|
|
763
939
|
const [visible, setVisible] = react.useState(true);
|
|
764
940
|
if (!visible) return null;
|
|
765
|
-
const
|
|
766
|
-
const
|
|
767
|
-
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
768
|
-
"div",
|
|
769
|
-
{
|
|
770
|
-
|
|
771
|
-
|
|
772
|
-
|
|
773
|
-
|
|
774
|
-
|
|
775
|
-
|
|
776
|
-
|
|
777
|
-
|
|
778
|
-
|
|
779
|
-
|
|
780
|
-
|
|
781
|
-
|
|
782
|
-
|
|
783
|
-
children: /* @__PURE__ */ jsxRuntime.jsx(IconlyClose, { size: 16 })
|
|
784
|
-
}
|
|
785
|
-
)
|
|
786
|
-
]
|
|
787
|
-
}
|
|
788
|
-
);
|
|
941
|
+
const Icon = variantIcons[variant];
|
|
942
|
+
const variantClass = Alert_module_default[variant];
|
|
943
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: `${Alert_module_default.root}${className ? ` ${className}` : ""}`, children: [
|
|
944
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: `${Alert_module_default.icon} ${variantClass}`, children: /* @__PURE__ */ jsxRuntime.jsx(Icon, { size: 20 }) }),
|
|
945
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: Alert_module_default.content, children: [
|
|
946
|
+
title && /* @__PURE__ */ jsxRuntime.jsx("p", { className: `${Alert_module_default.title} ${variantClass}`, children: title }),
|
|
947
|
+
/* @__PURE__ */ jsxRuntime.jsx("p", { className: Alert_module_default.message, children })
|
|
948
|
+
] }),
|
|
949
|
+
closable && /* @__PURE__ */ jsxRuntime.jsx(
|
|
950
|
+
"button",
|
|
951
|
+
{
|
|
952
|
+
onClick: () => setVisible(false),
|
|
953
|
+
className: Alert_module_default.dismiss,
|
|
954
|
+
"aria-label": "Dismiss",
|
|
955
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(IconlyClose, { size: 16 })
|
|
956
|
+
}
|
|
957
|
+
)
|
|
958
|
+
] });
|
|
789
959
|
}
|
|
960
|
+
|
|
961
|
+
// src/molecules/Tabs.module.scss
|
|
962
|
+
var Tabs_module_default = {
|
|
963
|
+
tabList: "Tabs_module_tabList",
|
|
964
|
+
tab: "Tabs_module_tab",
|
|
965
|
+
active: "Tabs_module_active",
|
|
966
|
+
indicator: "Tabs_module_indicator",
|
|
967
|
+
panel: "Tabs_module_panel"
|
|
968
|
+
};
|
|
790
969
|
function Tabs({ tabs, defaultTab, onChange, className = "" }) {
|
|
791
970
|
var _a, _b;
|
|
792
971
|
const [activeTab, setActiveTab] = react.useState(defaultTab || ((_a = tabs[0]) == null ? void 0 : _a.id));
|
|
@@ -817,7 +996,7 @@ function Tabs({ tabs, defaultTab, onChange, className = "" }) {
|
|
|
817
996
|
"div",
|
|
818
997
|
{
|
|
819
998
|
role: "tablist",
|
|
820
|
-
className:
|
|
999
|
+
className: Tabs_module_default.tabList,
|
|
821
1000
|
onKeyDown: handleKeyDown,
|
|
822
1001
|
children: tabs.map((tab, index) => /* @__PURE__ */ jsxRuntime.jsxs(
|
|
823
1002
|
"button",
|
|
@@ -831,10 +1010,10 @@ function Tabs({ tabs, defaultTab, onChange, className = "" }) {
|
|
|
831
1010
|
"aria-controls": `panel-${tab.id}`,
|
|
832
1011
|
tabIndex: activeTab === tab.id ? 0 : -1,
|
|
833
1012
|
onClick: () => activateTab(tab.id),
|
|
834
|
-
className:
|
|
1013
|
+
className: `${Tabs_module_default.tab} ${activeTab === tab.id ? Tabs_module_default.active : ""}`,
|
|
835
1014
|
children: [
|
|
836
1015
|
tab.label,
|
|
837
|
-
activeTab === tab.id && /* @__PURE__ */ jsxRuntime.jsx("span", { className:
|
|
1016
|
+
activeTab === tab.id && /* @__PURE__ */ jsxRuntime.jsx("span", { className: Tabs_module_default.indicator })
|
|
838
1017
|
]
|
|
839
1018
|
},
|
|
840
1019
|
tab.id
|
|
@@ -847,12 +1026,24 @@ function Tabs({ tabs, defaultTab, onChange, className = "" }) {
|
|
|
847
1026
|
role: "tabpanel",
|
|
848
1027
|
id: `panel-${activeTab}`,
|
|
849
1028
|
"aria-labelledby": `tab-${activeTab}`,
|
|
850
|
-
className:
|
|
1029
|
+
className: Tabs_module_default.panel,
|
|
851
1030
|
children: activeContent
|
|
852
1031
|
}
|
|
853
1032
|
)
|
|
854
1033
|
] });
|
|
855
1034
|
}
|
|
1035
|
+
|
|
1036
|
+
// src/molecules/ChatInput.module.scss
|
|
1037
|
+
var ChatInput_module_default = {
|
|
1038
|
+
root: "ChatInput_module_root",
|
|
1039
|
+
contrast: "ChatInput_module_contrast",
|
|
1040
|
+
plain: "ChatInput_module_plain",
|
|
1041
|
+
input: "ChatInput_module_input",
|
|
1042
|
+
actions: "ChatInput_module_actions",
|
|
1043
|
+
actionsFull: "ChatInput_module_actionsFull",
|
|
1044
|
+
actionsEasy: "ChatInput_module_actionsEasy",
|
|
1045
|
+
toolGroup: "ChatInput_module_toolGroup"
|
|
1046
|
+
};
|
|
856
1047
|
function ChatInput({
|
|
857
1048
|
placeholder = "\u0412\u0432\u0435\u0434\u0438 \u0441\u0432\u043E\u0439 email...",
|
|
858
1049
|
buttonText = "\u041D\u0430\u0447\u0430\u0442\u044C \u0431\u0435\u0441\u043F\u043B\u0430\u0442\u043D\u043E",
|
|
@@ -870,7 +1061,6 @@ function ChatInput({
|
|
|
870
1061
|
setValue("");
|
|
871
1062
|
}
|
|
872
1063
|
};
|
|
873
|
-
const containerStyles = contrast ? "bg-[var(--bg)] border border-[var(--bg-tertiary)] shadow-[var(--shadow-md)] px-[15px] py-[13px]" : "bg-[var(--bg-tertiary)] pl-3.5 pr-3 py-3";
|
|
874
1064
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
875
1065
|
"form",
|
|
876
1066
|
{
|
|
@@ -879,7 +1069,7 @@ function ChatInput({
|
|
|
879
1069
|
var _a;
|
|
880
1070
|
return (_a = inputRef.current) == null ? void 0 : _a.focus();
|
|
881
1071
|
},
|
|
882
|
-
className:
|
|
1072
|
+
className: `${ChatInput_module_default.root} ${contrast ? ChatInput_module_default.contrast : ChatInput_module_default.plain}${className ? ` ${className}` : ""}`,
|
|
883
1073
|
children: [
|
|
884
1074
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
885
1075
|
"input",
|
|
@@ -889,11 +1079,11 @@ function ChatInput({
|
|
|
889
1079
|
value,
|
|
890
1080
|
onChange: (e) => setValue(e.target.value),
|
|
891
1081
|
placeholder,
|
|
892
|
-
className:
|
|
1082
|
+
className: ChatInput_module_default.input
|
|
893
1083
|
}
|
|
894
1084
|
),
|
|
895
|
-
/* @__PURE__ */ jsxRuntime.jsxs("div", { className:
|
|
896
|
-
type === "full" && /* @__PURE__ */ jsxRuntime.jsxs("div", { className:
|
|
1085
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: `${ChatInput_module_default.actions} ${type === "full" ? ChatInput_module_default.actionsFull : ChatInput_module_default.actionsEasy}`, children: [
|
|
1086
|
+
type === "full" && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: ChatInput_module_default.toolGroup, children: [
|
|
897
1087
|
/* @__PURE__ */ jsxRuntime.jsx(IconButton, { variant: "secondary", icon: /* @__PURE__ */ jsxRuntime.jsx(IconlySmile, { size: 20 }), type: "button", "aria-label": "Emoji" }),
|
|
898
1088
|
/* @__PURE__ */ jsxRuntime.jsx(IconButton, { variant: "clear", icon: /* @__PURE__ */ jsxRuntime.jsx(IconlyAttach, { size: 20 }), type: "button", "aria-label": "Attach" }),
|
|
899
1089
|
/* @__PURE__ */ jsxRuntime.jsx(IconButton, { variant: "clear", icon: /* @__PURE__ */ jsxRuntime.jsx(IconlyInfo, { size: 20 }), type: "button", "aria-label": "Info" })
|
|
@@ -904,43 +1094,83 @@ function ChatInput({
|
|
|
904
1094
|
}
|
|
905
1095
|
);
|
|
906
1096
|
}
|
|
1097
|
+
|
|
1098
|
+
// src/molecules/ChatMessage.module.scss
|
|
1099
|
+
var ChatMessage_module_default = {
|
|
1100
|
+
root: "ChatMessage_module_root",
|
|
1101
|
+
user: "ChatMessage_module_user",
|
|
1102
|
+
ai: "ChatMessage_module_ai",
|
|
1103
|
+
bubble: "ChatMessage_module_bubble",
|
|
1104
|
+
sm: "ChatMessage_module_sm",
|
|
1105
|
+
lg: "ChatMessage_module_lg",
|
|
1106
|
+
bubbleUser: "ChatMessage_module_bubbleUser",
|
|
1107
|
+
bubbleAi: "ChatMessage_module_bubbleAi"
|
|
1108
|
+
};
|
|
907
1109
|
function ChatMessage({ children, role = "user", size = "sm", className = "" }) {
|
|
908
1110
|
const isUser = role === "user";
|
|
909
|
-
|
|
910
|
-
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: `flex ${isUser ? "justify-end" : "justify-start"} ${className}`, children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
1111
|
+
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: `${ChatMessage_module_default.root} ${isUser ? ChatMessage_module_default.user : ChatMessage_module_default.ai}${className ? ` ${className}` : ""}`, children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
911
1112
|
"div",
|
|
912
1113
|
{
|
|
913
|
-
className:
|
|
1114
|
+
className: `${ChatMessage_module_default.bubble} ${ChatMessage_module_default[size]} ${isUser ? ChatMessage_module_default.bubbleUser : ChatMessage_module_default.bubbleAi}`,
|
|
914
1115
|
children
|
|
915
1116
|
}
|
|
916
1117
|
) });
|
|
917
1118
|
}
|
|
1119
|
+
|
|
1120
|
+
// src/molecules/TopPromo.module.scss
|
|
1121
|
+
var TopPromo_module_default = {
|
|
1122
|
+
root: "TopPromo_module_root",
|
|
1123
|
+
text: "TopPromo_module_text"
|
|
1124
|
+
};
|
|
918
1125
|
function TopPromo({ text, buttonText = "\u0421\u043C\u043E\u0442\u0440\u0435\u0442\u044C", onButtonClick, className = "" }) {
|
|
919
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className:
|
|
920
|
-
/* @__PURE__ */ jsxRuntime.jsx("span", { className:
|
|
1126
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: `${TopPromo_module_default.root}${className ? ` ${className}` : ""}`, children: [
|
|
1127
|
+
/* @__PURE__ */ jsxRuntime.jsx("span", { className: TopPromo_module_default.text, children: text }),
|
|
921
1128
|
/* @__PURE__ */ jsxRuntime.jsx(Button, { variant: "primary", size: "sm", onClick: onButtonClick, children: buttonText })
|
|
922
1129
|
] });
|
|
923
1130
|
}
|
|
1131
|
+
|
|
1132
|
+
// src/molecules/ProfileNav.module.scss
|
|
1133
|
+
var ProfileNav_module_default = {
|
|
1134
|
+
root: "ProfileNav_module_root",
|
|
1135
|
+
stats: "ProfileNav_module_stats",
|
|
1136
|
+
statItem: "ProfileNav_module_statItem",
|
|
1137
|
+
statText: "ProfileNav_module_statText",
|
|
1138
|
+
separator: "ProfileNav_module_separator"
|
|
1139
|
+
};
|
|
924
1140
|
function ProfileNav({ stats, avatarSrc, avatarInitials = "DK", className = "" }) {
|
|
925
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className:
|
|
926
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { className:
|
|
927
|
-
/* @__PURE__ */ jsxRuntime.jsxs("span", { className:
|
|
1141
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: `${ProfileNav_module_default.root}${className ? ` ${className}` : ""}`, children: [
|
|
1142
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: ProfileNav_module_default.stats, children: stats.map((stat, i) => /* @__PURE__ */ jsxRuntime.jsxs("span", { className: ProfileNav_module_default.statItem, children: [
|
|
1143
|
+
/* @__PURE__ */ jsxRuntime.jsxs("span", { className: ProfileNav_module_default.statText, children: [
|
|
928
1144
|
stat.value,
|
|
929
1145
|
" ",
|
|
930
1146
|
stat.suffix
|
|
931
1147
|
] }),
|
|
932
|
-
i < stats.length - 1 && /* @__PURE__ */ jsxRuntime.jsx("span", { className:
|
|
1148
|
+
i < stats.length - 1 && /* @__PURE__ */ jsxRuntime.jsx("span", { className: ProfileNav_module_default.separator, children: " //" })
|
|
933
1149
|
] }, i)) }),
|
|
934
1150
|
/* @__PURE__ */ jsxRuntime.jsx(Avatar, { size: "sm", src: avatarSrc, initials: avatarInitials })
|
|
935
1151
|
] });
|
|
936
1152
|
}
|
|
1153
|
+
|
|
1154
|
+
// src/molecules/IconWithText.module.scss
|
|
1155
|
+
var IconWithText_module_default = {
|
|
1156
|
+
root: "IconWithText_module_root",
|
|
1157
|
+
icon: "IconWithText_module_icon",
|
|
1158
|
+
text: "IconWithText_module_text"
|
|
1159
|
+
};
|
|
937
1160
|
function IconWithText({ icon, text, side = "left", className = "" }) {
|
|
938
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className:
|
|
939
|
-
side === "left" && /* @__PURE__ */ jsxRuntime.jsx("span", { className:
|
|
940
|
-
/* @__PURE__ */ jsxRuntime.jsx("span", { className:
|
|
941
|
-
side === "right" && /* @__PURE__ */ jsxRuntime.jsx("span", { className:
|
|
1161
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: `${IconWithText_module_default.root}${className ? ` ${className}` : ""}`, children: [
|
|
1162
|
+
side === "left" && /* @__PURE__ */ jsxRuntime.jsx("span", { className: IconWithText_module_default.icon, children: icon }),
|
|
1163
|
+
/* @__PURE__ */ jsxRuntime.jsx("span", { className: IconWithText_module_default.text, children: text }),
|
|
1164
|
+
side === "right" && /* @__PURE__ */ jsxRuntime.jsx("span", { className: IconWithText_module_default.icon, children: icon })
|
|
942
1165
|
] });
|
|
943
1166
|
}
|
|
1167
|
+
|
|
1168
|
+
// src/molecules/StampCard.module.scss
|
|
1169
|
+
var StampCard_module_default = {
|
|
1170
|
+
root: "StampCard_module_root",
|
|
1171
|
+
plain: "StampCard_module_plain",
|
|
1172
|
+
inner: "StampCard_module_inner"
|
|
1173
|
+
};
|
|
944
1174
|
function StampCard({
|
|
945
1175
|
children,
|
|
946
1176
|
className = "",
|
|
@@ -992,9 +1222,9 @@ function StampCard({
|
|
|
992
1222
|
};
|
|
993
1223
|
}, [build, stamp]);
|
|
994
1224
|
if (!stamp) {
|
|
995
|
-
return /* @__PURE__ */ jsxRuntime.jsx("div", { className:
|
|
1225
|
+
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: `${StampCard_module_default.plain} ${className}`, children });
|
|
996
1226
|
}
|
|
997
|
-
return /* @__PURE__ */ jsxRuntime.jsx("div", { ref: outerRef, className:
|
|
1227
|
+
return /* @__PURE__ */ jsxRuntime.jsx("div", { ref: outerRef, className: `${StampCard_module_default.root} ${className}`, children: /* @__PURE__ */ jsxRuntime.jsx("div", { style: { filter: "drop-shadow(0 1px 3px rgba(0,0,0,0.25)) drop-shadow(0 4px 12px rgba(0,0,0,0.20))" }, children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
998
1228
|
"div",
|
|
999
1229
|
{
|
|
1000
1230
|
style: {
|
|
@@ -1003,10 +1233,15 @@ function StampCard({
|
|
|
1003
1233
|
WebkitMaskSize: "100% 100%",
|
|
1004
1234
|
maskSize: "100% 100%"
|
|
1005
1235
|
},
|
|
1006
|
-
children: /* @__PURE__ */ jsxRuntime.jsx("div", { className:
|
|
1236
|
+
children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: StampCard_module_default.inner, children })
|
|
1007
1237
|
}
|
|
1008
1238
|
) }) });
|
|
1009
1239
|
}
|
|
1240
|
+
|
|
1241
|
+
// src/molecules/PasswordInput.module.scss
|
|
1242
|
+
var PasswordInput_module_default = {
|
|
1243
|
+
toggle: "PasswordInput_module_toggle"
|
|
1244
|
+
};
|
|
1010
1245
|
function PasswordInput(_a) {
|
|
1011
1246
|
var props = __objRest(_a, []);
|
|
1012
1247
|
const [showPassword, setShowPassword] = react.useState(false);
|
|
@@ -1019,7 +1254,7 @@ function PasswordInput(_a) {
|
|
|
1019
1254
|
{
|
|
1020
1255
|
type: "button",
|
|
1021
1256
|
onClick: () => setShowPassword((prev) => !prev),
|
|
1022
|
-
className:
|
|
1257
|
+
className: PasswordInput_module_default.toggle,
|
|
1023
1258
|
"aria-label": showPassword ? "Hide password" : "Show password",
|
|
1024
1259
|
tabIndex: -1,
|
|
1025
1260
|
children: showPassword ? /* @__PURE__ */ jsxRuntime.jsx(IconlyEyeOff, { size: 18 }) : /* @__PURE__ */ jsxRuntime.jsx(IconlyEye, { size: 18 })
|
|
@@ -1028,31 +1263,54 @@ function PasswordInput(_a) {
|
|
|
1028
1263
|
})
|
|
1029
1264
|
);
|
|
1030
1265
|
}
|
|
1266
|
+
|
|
1267
|
+
// src/molecules/Breadcrumbs.module.scss
|
|
1268
|
+
var Breadcrumbs_module_default = {
|
|
1269
|
+
list: "Breadcrumbs_module_list",
|
|
1270
|
+
item: "Breadcrumbs_module_item",
|
|
1271
|
+
separator: "Breadcrumbs_module_separator",
|
|
1272
|
+
active: "Breadcrumbs_module_active",
|
|
1273
|
+
link: "Breadcrumbs_module_link"
|
|
1274
|
+
};
|
|
1031
1275
|
function Breadcrumbs({
|
|
1032
1276
|
items,
|
|
1033
1277
|
separator = /* @__PURE__ */ jsxRuntime.jsx(IconlyChevronRight, { size: 14 })
|
|
1034
1278
|
}) {
|
|
1035
|
-
return /* @__PURE__ */ jsxRuntime.jsx("nav", { "aria-label": "Breadcrumb", children: /* @__PURE__ */ jsxRuntime.jsx("ol", { className:
|
|
1279
|
+
return /* @__PURE__ */ jsxRuntime.jsx("nav", { "aria-label": "Breadcrumb", children: /* @__PURE__ */ jsxRuntime.jsx("ol", { className: Breadcrumbs_module_default.list, children: items.map((item, index) => {
|
|
1036
1280
|
var _a;
|
|
1037
1281
|
const isLast = index === items.length - 1;
|
|
1038
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("li", { className:
|
|
1039
|
-
index > 0 && /* @__PURE__ */ jsxRuntime.jsx("span", { className:
|
|
1040
|
-
isLast ? /* @__PURE__ */ jsxRuntime.jsx("span", { className:
|
|
1282
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("li", { className: Breadcrumbs_module_default.item, children: [
|
|
1283
|
+
index > 0 && /* @__PURE__ */ jsxRuntime.jsx("span", { className: Breadcrumbs_module_default.separator, "aria-hidden": "true", children: separator }),
|
|
1284
|
+
isLast ? /* @__PURE__ */ jsxRuntime.jsx("span", { className: Breadcrumbs_module_default.active, "aria-current": "page", children: item.label }) : /* @__PURE__ */ jsxRuntime.jsx(
|
|
1041
1285
|
"a",
|
|
1042
1286
|
{
|
|
1043
1287
|
href: (_a = item.href) != null ? _a : "#",
|
|
1044
|
-
className:
|
|
1288
|
+
className: Breadcrumbs_module_default.link,
|
|
1045
1289
|
children: item.label
|
|
1046
1290
|
}
|
|
1047
1291
|
)
|
|
1048
1292
|
] }, index);
|
|
1049
1293
|
}) }) });
|
|
1050
1294
|
}
|
|
1051
|
-
|
|
1052
|
-
|
|
1053
|
-
|
|
1054
|
-
|
|
1055
|
-
|
|
1295
|
+
|
|
1296
|
+
// src/molecules/Toast.module.scss
|
|
1297
|
+
var Toast_module_default = {
|
|
1298
|
+
root: "Toast_module_root",
|
|
1299
|
+
icon: "Toast_module_icon",
|
|
1300
|
+
info: "Toast_module_info",
|
|
1301
|
+
success: "Toast_module_success",
|
|
1302
|
+
warning: "Toast_module_warning",
|
|
1303
|
+
error: "Toast_module_error",
|
|
1304
|
+
content: "Toast_module_content",
|
|
1305
|
+
title: "Toast_module_title",
|
|
1306
|
+
message: "Toast_module_message",
|
|
1307
|
+
dismiss: "Toast_module_dismiss"
|
|
1308
|
+
};
|
|
1309
|
+
var variantIcons2 = {
|
|
1310
|
+
info: IconlyInfoCircle,
|
|
1311
|
+
success: IconlySuccess,
|
|
1312
|
+
warning: IconlyWarning,
|
|
1313
|
+
error: IconlyError
|
|
1056
1314
|
};
|
|
1057
1315
|
function Toast({
|
|
1058
1316
|
variant = "info",
|
|
@@ -1069,25 +1327,25 @@ function Toast({
|
|
|
1069
1327
|
return () => clearTimeout(timer);
|
|
1070
1328
|
}, [visible, duration, onClose]);
|
|
1071
1329
|
if (!visible) return null;
|
|
1072
|
-
const
|
|
1073
|
-
const
|
|
1330
|
+
const Icon = variantIcons2[variant];
|
|
1331
|
+
const variantClass = Toast_module_default[variant];
|
|
1074
1332
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
1075
1333
|
"div",
|
|
1076
1334
|
{
|
|
1077
1335
|
role: "alert",
|
|
1078
1336
|
"aria-live": "assertive",
|
|
1079
|
-
className:
|
|
1337
|
+
className: `${Toast_module_default.root}${className ? ` ${className}` : ""}`,
|
|
1080
1338
|
children: [
|
|
1081
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { className:
|
|
1082
|
-
/* @__PURE__ */ jsxRuntime.jsxs("div", { className:
|
|
1083
|
-
title && /* @__PURE__ */ jsxRuntime.jsx("p", { className:
|
|
1084
|
-
/* @__PURE__ */ jsxRuntime.jsx("p", { className:
|
|
1339
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: `${Toast_module_default.icon} ${variantClass}`, children: /* @__PURE__ */ jsxRuntime.jsx(Icon, { size: 20 }) }),
|
|
1340
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: Toast_module_default.content, children: [
|
|
1341
|
+
title && /* @__PURE__ */ jsxRuntime.jsx("p", { className: `${Toast_module_default.title} ${variantClass}`, children: title }),
|
|
1342
|
+
/* @__PURE__ */ jsxRuntime.jsx("p", { className: Toast_module_default.message, children: message })
|
|
1085
1343
|
] }),
|
|
1086
1344
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1087
1345
|
"button",
|
|
1088
1346
|
{
|
|
1089
1347
|
onClick: onClose,
|
|
1090
|
-
className:
|
|
1348
|
+
className: Toast_module_default.dismiss,
|
|
1091
1349
|
"aria-label": "Dismiss",
|
|
1092
1350
|
children: /* @__PURE__ */ jsxRuntime.jsx(IconlyClose, { size: 16 })
|
|
1093
1351
|
}
|
|
@@ -1096,6 +1354,15 @@ function Toast({
|
|
|
1096
1354
|
}
|
|
1097
1355
|
);
|
|
1098
1356
|
}
|
|
1357
|
+
|
|
1358
|
+
// src/molecules/Pagination.module.scss
|
|
1359
|
+
var Pagination_module_default = {
|
|
1360
|
+
root: "Pagination_module_root",
|
|
1361
|
+
pageBtn: "Pagination_module_pageBtn",
|
|
1362
|
+
activePage: "Pagination_module_activePage",
|
|
1363
|
+
ellipsis: "Pagination_module_ellipsis",
|
|
1364
|
+
nav: "Pagination_module_nav"
|
|
1365
|
+
};
|
|
1099
1366
|
function getPageRange(current, total, siblings) {
|
|
1100
1367
|
const range = /* @__PURE__ */ new Set();
|
|
1101
1368
|
range.add(1);
|
|
@@ -1124,32 +1391,24 @@ function Pagination({
|
|
|
1124
1391
|
const pages = getPageRange(currentPage, totalPages, siblingCount);
|
|
1125
1392
|
const isFirst = currentPage === 1;
|
|
1126
1393
|
const isLast = currentPage === totalPages;
|
|
1127
|
-
|
|
1128
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("nav", { "aria-label": "Pagination", className: `flex items-center gap-1 ${className}`, children: [
|
|
1394
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("nav", { "aria-label": "Pagination", className: `${Pagination_module_default.root} ${className}`, children: [
|
|
1129
1395
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1130
1396
|
"button",
|
|
1131
1397
|
{
|
|
1132
1398
|
onClick: () => onPageChange(currentPage - 1),
|
|
1133
1399
|
disabled: isFirst,
|
|
1134
1400
|
"aria-label": "Previous page",
|
|
1135
|
-
className:
|
|
1401
|
+
className: Pagination_module_default.nav,
|
|
1136
1402
|
children: /* @__PURE__ */ jsxRuntime.jsx(IconlyChevronLeft, { size: 18 })
|
|
1137
1403
|
}
|
|
1138
1404
|
),
|
|
1139
1405
|
pages.map(
|
|
1140
|
-
(page, i) => page === "\u2026" ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
1141
|
-
"span",
|
|
1142
|
-
{
|
|
1143
|
-
className: "min-w-[36px] h-[36px] flex items-center justify-center text-[13px] text-[var(--fg-muted)]",
|
|
1144
|
-
children: "\u2026"
|
|
1145
|
-
},
|
|
1146
|
-
`ellipsis-${i}`
|
|
1147
|
-
) : /* @__PURE__ */ jsxRuntime.jsx(
|
|
1406
|
+
(page, i) => page === "\u2026" ? /* @__PURE__ */ jsxRuntime.jsx("span", { className: Pagination_module_default.ellipsis, children: "\u2026" }, `ellipsis-${i}`) : /* @__PURE__ */ jsxRuntime.jsx(
|
|
1148
1407
|
"button",
|
|
1149
1408
|
{
|
|
1150
1409
|
onClick: () => onPageChange(page),
|
|
1151
1410
|
"aria-current": page === currentPage ? "page" : void 0,
|
|
1152
|
-
className: `${
|
|
1411
|
+
className: `${Pagination_module_default.pageBtn} ${page === currentPage ? Pagination_module_default.activePage : ""}`,
|
|
1153
1412
|
children: page
|
|
1154
1413
|
},
|
|
1155
1414
|
page
|
|
@@ -1161,12 +1420,22 @@ function Pagination({
|
|
|
1161
1420
|
onClick: () => onPageChange(currentPage + 1),
|
|
1162
1421
|
disabled: isLast,
|
|
1163
1422
|
"aria-label": "Next page",
|
|
1164
|
-
className:
|
|
1423
|
+
className: Pagination_module_default.nav,
|
|
1165
1424
|
children: /* @__PURE__ */ jsxRuntime.jsx(IconlyChevronRight, { size: 18 })
|
|
1166
1425
|
}
|
|
1167
1426
|
)
|
|
1168
1427
|
] });
|
|
1169
1428
|
}
|
|
1429
|
+
|
|
1430
|
+
// src/molecules/CodeInput.module.scss
|
|
1431
|
+
var CodeInput_module_default = {
|
|
1432
|
+
root: "CodeInput_module_root",
|
|
1433
|
+
label: "CodeInput_module_label",
|
|
1434
|
+
group: "CodeInput_module_group",
|
|
1435
|
+
digitInput: "CodeInput_module_digitInput",
|
|
1436
|
+
digitError: "CodeInput_module_digitError",
|
|
1437
|
+
errorText: "CodeInput_module_errorText"
|
|
1438
|
+
};
|
|
1170
1439
|
function CodeInput({
|
|
1171
1440
|
length,
|
|
1172
1441
|
value,
|
|
@@ -1219,16 +1488,9 @@ function CodeInput({
|
|
|
1219
1488
|
[length, onChange, focusInput]
|
|
1220
1489
|
);
|
|
1221
1490
|
const inputId = label == null ? void 0 : label.toLowerCase().replace(/\s+/g, "-");
|
|
1222
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className:
|
|
1223
|
-
label && /* @__PURE__ */ jsxRuntime.jsx(
|
|
1224
|
-
|
|
1225
|
-
{
|
|
1226
|
-
htmlFor: inputId,
|
|
1227
|
-
className: "text-[13px] font-medium text-[var(--fg)] tracking-[-0.25px]",
|
|
1228
|
-
children: label
|
|
1229
|
-
}
|
|
1230
|
-
),
|
|
1231
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex gap-3", role: "group", "aria-label": label || "Code input", children: Array.from({ length }, (_, i) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
1491
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: `${CodeInput_module_default.root} ${className}`, children: [
|
|
1492
|
+
label && /* @__PURE__ */ jsxRuntime.jsx("label", { htmlFor: inputId, className: CodeInput_module_default.label, children: label }),
|
|
1493
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: CodeInput_module_default.group, role: "group", "aria-label": label || "Code input", children: Array.from({ length }, (_, i) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
1232
1494
|
"input",
|
|
1233
1495
|
{
|
|
1234
1496
|
id: i === 0 ? inputId : void 0,
|
|
@@ -1243,14 +1505,25 @@ function CodeInput({
|
|
|
1243
1505
|
onKeyDown: handleKeyDown(i),
|
|
1244
1506
|
onPaste: handlePaste,
|
|
1245
1507
|
autoComplete: "one-time-code",
|
|
1246
|
-
className:
|
|
1508
|
+
className: `${CodeInput_module_default.digitInput} ${error ? CodeInput_module_default.digitError : ""}`,
|
|
1247
1509
|
"aria-label": `Digit ${i + 1}`
|
|
1248
1510
|
},
|
|
1249
1511
|
i
|
|
1250
1512
|
)) }),
|
|
1251
|
-
error && /* @__PURE__ */ jsxRuntime.jsx("p", { className:
|
|
1513
|
+
error && /* @__PURE__ */ jsxRuntime.jsx("p", { className: CodeInput_module_default.errorText, children: error })
|
|
1252
1514
|
] });
|
|
1253
1515
|
}
|
|
1516
|
+
|
|
1517
|
+
// src/molecules/Modal.module.scss
|
|
1518
|
+
var Modal_module_default = {
|
|
1519
|
+
dialog: "Modal_module_dialog",
|
|
1520
|
+
content: "Modal_module_content",
|
|
1521
|
+
header: "Modal_module_header",
|
|
1522
|
+
title: "Modal_module_title",
|
|
1523
|
+
closeBtn: "Modal_module_closeBtn",
|
|
1524
|
+
body: "Modal_module_body",
|
|
1525
|
+
footer: "Modal_module_footer"
|
|
1526
|
+
};
|
|
1254
1527
|
function Modal({
|
|
1255
1528
|
open,
|
|
1256
1529
|
onClose,
|
|
@@ -1280,27 +1553,39 @@ function Modal({
|
|
|
1280
1553
|
ref: dialogRef,
|
|
1281
1554
|
onClose,
|
|
1282
1555
|
onClick: handleBackdropClick,
|
|
1283
|
-
className:
|
|
1284
|
-
children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className:
|
|
1285
|
-
/* @__PURE__ */ jsxRuntime.jsxs("div", { className:
|
|
1286
|
-
title && /* @__PURE__ */ jsxRuntime.jsx("h2", { className:
|
|
1556
|
+
className: `${Modal_module_default.dialog}${className ? ` ${className}` : ""}`,
|
|
1557
|
+
children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: Modal_module_default.content, children: [
|
|
1558
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: Modal_module_default.header, children: [
|
|
1559
|
+
title && /* @__PURE__ */ jsxRuntime.jsx("h2", { className: Modal_module_default.title, children: title }),
|
|
1287
1560
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1288
1561
|
"button",
|
|
1289
1562
|
{
|
|
1290
1563
|
type: "button",
|
|
1291
1564
|
onClick: onClose,
|
|
1292
|
-
className:
|
|
1565
|
+
className: Modal_module_default.closeBtn,
|
|
1293
1566
|
"aria-label": "Close",
|
|
1294
1567
|
children: /* @__PURE__ */ jsxRuntime.jsx(IconlyClose, { size: 20 })
|
|
1295
1568
|
}
|
|
1296
1569
|
)
|
|
1297
1570
|
] }),
|
|
1298
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { className:
|
|
1299
|
-
footer && /* @__PURE__ */ jsxRuntime.jsx("div", { className:
|
|
1571
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: Modal_module_default.body, children }),
|
|
1572
|
+
footer && /* @__PURE__ */ jsxRuntime.jsx("div", { className: Modal_module_default.footer, children: footer })
|
|
1300
1573
|
] })
|
|
1301
1574
|
}
|
|
1302
1575
|
);
|
|
1303
1576
|
}
|
|
1577
|
+
|
|
1578
|
+
// src/molecules/DropdownMenu.module.scss
|
|
1579
|
+
var DropdownMenu_module_default = {
|
|
1580
|
+
root: "DropdownMenu_module_root",
|
|
1581
|
+
trigger: "DropdownMenu_module_trigger",
|
|
1582
|
+
menu: "DropdownMenu_module_menu",
|
|
1583
|
+
alignLeft: "DropdownMenu_module_alignLeft",
|
|
1584
|
+
alignRight: "DropdownMenu_module_alignRight",
|
|
1585
|
+
item: "DropdownMenu_module_item",
|
|
1586
|
+
itemIcon: "DropdownMenu_module_itemIcon",
|
|
1587
|
+
divider: "DropdownMenu_module_divider"
|
|
1588
|
+
};
|
|
1304
1589
|
function DropdownMenu({
|
|
1305
1590
|
trigger,
|
|
1306
1591
|
items,
|
|
@@ -1368,7 +1653,7 @@ function DropdownMenu({
|
|
|
1368
1653
|
openMenu();
|
|
1369
1654
|
}
|
|
1370
1655
|
};
|
|
1371
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("div", { ref: containerRef, className:
|
|
1656
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { ref: containerRef, className: `${DropdownMenu_module_default.root} ${className}`, children: [
|
|
1372
1657
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1373
1658
|
"div",
|
|
1374
1659
|
{
|
|
@@ -1377,7 +1662,7 @@ function DropdownMenu({
|
|
|
1377
1662
|
tabIndex: 0,
|
|
1378
1663
|
onClick: () => isOpen ? closeMenu() : openMenu(),
|
|
1379
1664
|
onKeyDown: handleTriggerKeyDown,
|
|
1380
|
-
className:
|
|
1665
|
+
className: DropdownMenu_module_default.trigger,
|
|
1381
1666
|
"aria-haspopup": "true",
|
|
1382
1667
|
"aria-expanded": isOpen,
|
|
1383
1668
|
children: trigger
|
|
@@ -1388,9 +1673,9 @@ function DropdownMenu({
|
|
|
1388
1673
|
{
|
|
1389
1674
|
role: "menu",
|
|
1390
1675
|
onKeyDown: handleMenuKeyDown,
|
|
1391
|
-
className:
|
|
1676
|
+
className: `${DropdownMenu_module_default.menu} ${align === "right" ? DropdownMenu_module_default.alignRight : DropdownMenu_module_default.alignLeft}`,
|
|
1392
1677
|
children: items.map((item, i) => /* @__PURE__ */ jsxRuntime.jsxs("div", { children: [
|
|
1393
|
-
item.divider && /* @__PURE__ */ jsxRuntime.jsx("hr", { className:
|
|
1678
|
+
item.divider && /* @__PURE__ */ jsxRuntime.jsx("hr", { className: DropdownMenu_module_default.divider }),
|
|
1394
1679
|
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
1395
1680
|
"button",
|
|
1396
1681
|
{
|
|
@@ -1404,9 +1689,9 @@ function DropdownMenu({
|
|
|
1404
1689
|
item.onClick();
|
|
1405
1690
|
closeMenu();
|
|
1406
1691
|
},
|
|
1407
|
-
className:
|
|
1692
|
+
className: DropdownMenu_module_default.item,
|
|
1408
1693
|
children: [
|
|
1409
|
-
item.icon && /* @__PURE__ */ jsxRuntime.jsx("span", { className:
|
|
1694
|
+
item.icon && /* @__PURE__ */ jsxRuntime.jsx("span", { className: DropdownMenu_module_default.itemIcon, children: item.icon }),
|
|
1410
1695
|
item.label
|
|
1411
1696
|
]
|
|
1412
1697
|
}
|
|
@@ -1416,56 +1701,90 @@ function DropdownMenu({
|
|
|
1416
1701
|
)
|
|
1417
1702
|
] });
|
|
1418
1703
|
}
|
|
1704
|
+
|
|
1705
|
+
// src/organisms/Header.module.scss
|
|
1706
|
+
var Header_module_default = {
|
|
1707
|
+
root: "Header_module_root",
|
|
1708
|
+
container: "Header_module_container",
|
|
1709
|
+
bar: "Header_module_bar",
|
|
1710
|
+
leftGroup: "Header_module_leftGroup",
|
|
1711
|
+
logoFallback: "Header_module_logoFallback",
|
|
1712
|
+
logoBrand: "Header_module_logoBrand",
|
|
1713
|
+
desktopNav: "Header_module_desktopNav",
|
|
1714
|
+
navLink: "Header_module_navLink",
|
|
1715
|
+
desktopActions: "Header_module_desktopActions",
|
|
1716
|
+
mobileToggle: "Header_module_mobileToggle",
|
|
1717
|
+
mobileMenu: "Header_module_mobileMenu",
|
|
1718
|
+
mobileNav: "Header_module_mobileNav",
|
|
1719
|
+
mobileActions: "Header_module_mobileActions"
|
|
1720
|
+
};
|
|
1419
1721
|
function Header({ logo, navItems = [], className = "" }) {
|
|
1420
1722
|
const [mobileOpen, setMobileOpen] = react.useState(false);
|
|
1421
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("header", { className:
|
|
1422
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { className:
|
|
1423
|
-
/* @__PURE__ */ jsxRuntime.jsxs("div", { className:
|
|
1424
|
-
logo || /* @__PURE__ */ jsxRuntime.jsxs("span", { className:
|
|
1425
|
-
/* @__PURE__ */ jsxRuntime.jsx("span", { className:
|
|
1723
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("header", { className: `${Header_module_default.root}${className ? ` ${className}` : ""}`, children: [
|
|
1724
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: Header_module_default.container, children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: Header_module_default.bar, children: [
|
|
1725
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: Header_module_default.leftGroup, children: [
|
|
1726
|
+
logo || /* @__PURE__ */ jsxRuntime.jsxs("span", { className: Header_module_default.logoFallback, children: [
|
|
1727
|
+
/* @__PURE__ */ jsxRuntime.jsx("span", { className: Header_module_default.logoBrand, children: "K" }),
|
|
1426
1728
|
"apustin"
|
|
1427
1729
|
] }),
|
|
1428
|
-
/* @__PURE__ */ jsxRuntime.jsx("nav", { className:
|
|
1730
|
+
/* @__PURE__ */ jsxRuntime.jsx("nav", { className: Header_module_default.desktopNav, children: navItems.map((item) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
1429
1731
|
"a",
|
|
1430
1732
|
{
|
|
1431
1733
|
href: item.href,
|
|
1432
|
-
className:
|
|
1734
|
+
className: Header_module_default.navLink,
|
|
1433
1735
|
children: item.label
|
|
1434
1736
|
},
|
|
1435
1737
|
item.label
|
|
1436
1738
|
)) })
|
|
1437
1739
|
] }),
|
|
1438
|
-
/* @__PURE__ */ jsxRuntime.jsxs("div", { className:
|
|
1740
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: Header_module_default.desktopActions, children: [
|
|
1439
1741
|
/* @__PURE__ */ jsxRuntime.jsx(Button, { variant: "ghost", size: "sm", children: "Sign in" }),
|
|
1440
1742
|
/* @__PURE__ */ jsxRuntime.jsx(Button, { size: "sm", children: "Get started" })
|
|
1441
1743
|
] }),
|
|
1442
1744
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1443
1745
|
"button",
|
|
1444
1746
|
{
|
|
1445
|
-
className:
|
|
1747
|
+
className: Header_module_default.mobileToggle,
|
|
1446
1748
|
onClick: () => setMobileOpen(!mobileOpen),
|
|
1447
1749
|
"aria-label": "Toggle menu",
|
|
1448
1750
|
children: mobileOpen ? /* @__PURE__ */ jsxRuntime.jsx(IconlyClose, { size: 24 }) : /* @__PURE__ */ jsxRuntime.jsx(IconlyMenu, { size: 24 })
|
|
1449
1751
|
}
|
|
1450
1752
|
)
|
|
1451
1753
|
] }) }),
|
|
1452
|
-
mobileOpen && /* @__PURE__ */ jsxRuntime.jsxs("div", { className:
|
|
1453
|
-
/* @__PURE__ */ jsxRuntime.jsx("nav", { className:
|
|
1754
|
+
mobileOpen && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: Header_module_default.mobileMenu, children: [
|
|
1755
|
+
/* @__PURE__ */ jsxRuntime.jsx("nav", { className: Header_module_default.mobileNav, children: navItems.map((item) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
1454
1756
|
"a",
|
|
1455
1757
|
{
|
|
1456
1758
|
href: item.href,
|
|
1457
|
-
className:
|
|
1759
|
+
className: Header_module_default.navLink,
|
|
1458
1760
|
children: item.label
|
|
1459
1761
|
},
|
|
1460
1762
|
item.label
|
|
1461
1763
|
)) }),
|
|
1462
|
-
/* @__PURE__ */ jsxRuntime.jsxs("div", { className:
|
|
1764
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: Header_module_default.mobileActions, children: [
|
|
1463
1765
|
/* @__PURE__ */ jsxRuntime.jsx(Button, { variant: "ghost", size: "sm", children: "Sign in" }),
|
|
1464
1766
|
/* @__PURE__ */ jsxRuntime.jsx(Button, { size: "sm", children: "Get started" })
|
|
1465
1767
|
] })
|
|
1466
1768
|
] })
|
|
1467
1769
|
] });
|
|
1468
1770
|
}
|
|
1771
|
+
|
|
1772
|
+
// src/organisms/Footer.module.scss
|
|
1773
|
+
var Footer_module_default = {
|
|
1774
|
+
root: "Footer_module_root",
|
|
1775
|
+
container: "Footer_module_container",
|
|
1776
|
+
grid: "Footer_module_grid",
|
|
1777
|
+
brand: "Footer_module_brand",
|
|
1778
|
+
brandAccent: "Footer_module_brandAccent",
|
|
1779
|
+
tagline: "Footer_module_tagline",
|
|
1780
|
+
columnTitle: "Footer_module_columnTitle",
|
|
1781
|
+
linkList: "Footer_module_linkList",
|
|
1782
|
+
link: "Footer_module_link",
|
|
1783
|
+
bottom: "Footer_module_bottom",
|
|
1784
|
+
copyright: "Footer_module_copyright",
|
|
1785
|
+
socials: "Footer_module_socials",
|
|
1786
|
+
socialLink: "Footer_module_socialLink"
|
|
1787
|
+
};
|
|
1469
1788
|
var defaultColumns = [
|
|
1470
1789
|
{
|
|
1471
1790
|
title: "Product",
|
|
@@ -1496,38 +1815,38 @@ var defaultColumns = [
|
|
|
1496
1815
|
}
|
|
1497
1816
|
];
|
|
1498
1817
|
function Footer({ columns = defaultColumns, className = "" }) {
|
|
1499
|
-
return /* @__PURE__ */ jsxRuntime.jsx("footer", { className:
|
|
1500
|
-
/* @__PURE__ */ jsxRuntime.jsxs("div", { className:
|
|
1818
|
+
return /* @__PURE__ */ jsxRuntime.jsx("footer", { className: `${Footer_module_default.root}${className ? ` ${className}` : ""}`, children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: Footer_module_default.container, children: [
|
|
1819
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: Footer_module_default.grid, children: [
|
|
1501
1820
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { children: [
|
|
1502
|
-
/* @__PURE__ */ jsxRuntime.jsxs("span", { className:
|
|
1503
|
-
/* @__PURE__ */ jsxRuntime.jsx("span", { className:
|
|
1821
|
+
/* @__PURE__ */ jsxRuntime.jsxs("span", { className: Footer_module_default.brand, children: [
|
|
1822
|
+
/* @__PURE__ */ jsxRuntime.jsx("span", { className: Footer_module_default.brandAccent, children: "K" }),
|
|
1504
1823
|
"apustin"
|
|
1505
1824
|
] }),
|
|
1506
|
-
/* @__PURE__ */ jsxRuntime.jsx("p", { className:
|
|
1825
|
+
/* @__PURE__ */ jsxRuntime.jsx("p", { className: Footer_module_default.tagline, children: "A modern design system for building beautiful interfaces." })
|
|
1507
1826
|
] }),
|
|
1508
1827
|
columns.map((col) => /* @__PURE__ */ jsxRuntime.jsxs("div", { children: [
|
|
1509
|
-
/* @__PURE__ */ jsxRuntime.jsx("h4", { className:
|
|
1510
|
-
/* @__PURE__ */ jsxRuntime.jsx("ul", { className:
|
|
1828
|
+
/* @__PURE__ */ jsxRuntime.jsx("h4", { className: Footer_module_default.columnTitle, children: col.title }),
|
|
1829
|
+
/* @__PURE__ */ jsxRuntime.jsx("ul", { className: Footer_module_default.linkList, children: col.links.map((link) => /* @__PURE__ */ jsxRuntime.jsx("li", { children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
1511
1830
|
"a",
|
|
1512
1831
|
{
|
|
1513
1832
|
href: link.href,
|
|
1514
|
-
className:
|
|
1833
|
+
className: Footer_module_default.link,
|
|
1515
1834
|
children: link.label
|
|
1516
1835
|
}
|
|
1517
1836
|
) }, link.label)) })
|
|
1518
1837
|
] }, col.title))
|
|
1519
1838
|
] }),
|
|
1520
|
-
/* @__PURE__ */ jsxRuntime.jsxs("div", { className:
|
|
1521
|
-
/* @__PURE__ */ jsxRuntime.jsxs("p", { className:
|
|
1839
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: Footer_module_default.bottom, children: [
|
|
1840
|
+
/* @__PURE__ */ jsxRuntime.jsxs("p", { className: Footer_module_default.copyright, children: [
|
|
1522
1841
|
"\xA9 ",
|
|
1523
1842
|
(/* @__PURE__ */ new Date()).getFullYear(),
|
|
1524
1843
|
" Kapustin Team. All rights reserved."
|
|
1525
1844
|
] }),
|
|
1526
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { className:
|
|
1845
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: Footer_module_default.socials, children: ["Twitter", "GitHub", "Discord"].map((social) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
1527
1846
|
"a",
|
|
1528
1847
|
{
|
|
1529
1848
|
href: "#",
|
|
1530
|
-
className:
|
|
1849
|
+
className: Footer_module_default.socialLink,
|
|
1531
1850
|
children: social
|
|
1532
1851
|
},
|
|
1533
1852
|
social
|
|
@@ -1535,6 +1854,23 @@ function Footer({ columns = defaultColumns, className = "" }) {
|
|
|
1535
1854
|
] })
|
|
1536
1855
|
] }) });
|
|
1537
1856
|
}
|
|
1857
|
+
|
|
1858
|
+
// src/organisms/PricingCard.module.scss
|
|
1859
|
+
var PricingCard_module_default = {
|
|
1860
|
+
root: "PricingCard_module_root",
|
|
1861
|
+
highlighted: "PricingCard_module_highlighted",
|
|
1862
|
+
badgeWrap: "PricingCard_module_badgeWrap",
|
|
1863
|
+
header: "PricingCard_module_header",
|
|
1864
|
+
plan: "PricingCard_module_plan",
|
|
1865
|
+
description: "PricingCard_module_description",
|
|
1866
|
+
priceBlock: "PricingCard_module_priceBlock",
|
|
1867
|
+
price: "PricingCard_module_price",
|
|
1868
|
+
period: "PricingCard_module_period",
|
|
1869
|
+
features: "PricingCard_module_features",
|
|
1870
|
+
featureItem: "PricingCard_module_featureItem",
|
|
1871
|
+
featureIcon: "PricingCard_module_featureIcon",
|
|
1872
|
+
cta: "PricingCard_module_cta"
|
|
1873
|
+
};
|
|
1538
1874
|
function PricingCard({
|
|
1539
1875
|
plan,
|
|
1540
1876
|
price,
|
|
@@ -1548,63 +1884,88 @@ function PricingCard({
|
|
|
1548
1884
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
1549
1885
|
"div",
|
|
1550
1886
|
{
|
|
1551
|
-
className:
|
|
1887
|
+
className: `${PricingCard_module_default.root}${highlighted ? ` ${PricingCard_module_default.highlighted}` : ""}${className ? ` ${className}` : ""}`,
|
|
1552
1888
|
children: [
|
|
1553
|
-
badge && /* @__PURE__ */ jsxRuntime.jsx("div", { className:
|
|
1554
|
-
/* @__PURE__ */ jsxRuntime.jsxs("div", { className:
|
|
1555
|
-
/* @__PURE__ */ jsxRuntime.jsx("h3", { className:
|
|
1556
|
-
description && /* @__PURE__ */ jsxRuntime.jsx("p", { className:
|
|
1889
|
+
badge && /* @__PURE__ */ jsxRuntime.jsx("div", { className: PricingCard_module_default.badgeWrap, children: /* @__PURE__ */ jsxRuntime.jsx(Badge, { color: "info", children: badge }) }),
|
|
1890
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: PricingCard_module_default.header, children: [
|
|
1891
|
+
/* @__PURE__ */ jsxRuntime.jsx("h3", { className: PricingCard_module_default.plan, children: plan }),
|
|
1892
|
+
description && /* @__PURE__ */ jsxRuntime.jsx("p", { className: PricingCard_module_default.description, children: description })
|
|
1557
1893
|
] }),
|
|
1558
|
-
/* @__PURE__ */ jsxRuntime.jsxs("div", { className:
|
|
1559
|
-
/* @__PURE__ */ jsxRuntime.jsx("span", { className:
|
|
1560
|
-
/* @__PURE__ */ jsxRuntime.jsx("span", { className:
|
|
1894
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: PricingCard_module_default.priceBlock, children: [
|
|
1895
|
+
/* @__PURE__ */ jsxRuntime.jsx("span", { className: PricingCard_module_default.price, children: price }),
|
|
1896
|
+
/* @__PURE__ */ jsxRuntime.jsx("span", { className: PricingCard_module_default.period, children: period })
|
|
1561
1897
|
] }),
|
|
1562
|
-
/* @__PURE__ */ jsxRuntime.jsx("ul", { className:
|
|
1563
|
-
/* @__PURE__ */ jsxRuntime.jsx("span", { className:
|
|
1898
|
+
/* @__PURE__ */ jsxRuntime.jsx("ul", { className: PricingCard_module_default.features, children: features.map((feature, i) => /* @__PURE__ */ jsxRuntime.jsxs("li", { className: PricingCard_module_default.featureItem, children: [
|
|
1899
|
+
/* @__PURE__ */ jsxRuntime.jsx("span", { className: PricingCard_module_default.featureIcon, children: /* @__PURE__ */ jsxRuntime.jsx(IconlyCheck, { size: 16 }) }),
|
|
1564
1900
|
feature
|
|
1565
1901
|
] }, i)) }),
|
|
1566
|
-
/* @__PURE__ */ jsxRuntime.jsx(Button, { variant: highlighted ? "primary" : "outline", className:
|
|
1902
|
+
/* @__PURE__ */ jsxRuntime.jsx(Button, { variant: highlighted ? "primary" : "outline", className: PricingCard_module_default.cta, children: "Get started" })
|
|
1567
1903
|
]
|
|
1568
1904
|
}
|
|
1569
1905
|
);
|
|
1570
1906
|
}
|
|
1907
|
+
|
|
1908
|
+
// src/organisms/TestimonialCard.module.scss
|
|
1909
|
+
var TestimonialCard_module_default = {
|
|
1910
|
+
root: "TestimonialCard_module_root",
|
|
1911
|
+
quoteIcon: "TestimonialCard_module_quoteIcon",
|
|
1912
|
+
quoteText: "TestimonialCard_module_quoteText",
|
|
1913
|
+
author: "TestimonialCard_module_author",
|
|
1914
|
+
authorName: "TestimonialCard_module_authorName",
|
|
1915
|
+
authorRole: "TestimonialCard_module_authorRole"
|
|
1916
|
+
};
|
|
1571
1917
|
function TestimonialCard({ quote, name, role, avatarSrc, className = "" }) {
|
|
1572
1918
|
const initials = name.split(" ").map((n) => n[0]).join("").toUpperCase();
|
|
1573
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className:
|
|
1574
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { className:
|
|
1575
|
-
/* @__PURE__ */ jsxRuntime.jsxs("p", { className:
|
|
1919
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: `${TestimonialCard_module_default.root}${className ? ` ${className}` : ""}`, children: [
|
|
1920
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: TestimonialCard_module_default.quoteIcon, children: /* @__PURE__ */ jsxRuntime.jsx(IconlyQuote, { size: 32 }) }),
|
|
1921
|
+
/* @__PURE__ */ jsxRuntime.jsxs("p", { className: TestimonialCard_module_default.quoteText, children: [
|
|
1576
1922
|
"\u201C",
|
|
1577
1923
|
quote,
|
|
1578
1924
|
"\u201D"
|
|
1579
1925
|
] }),
|
|
1580
|
-
/* @__PURE__ */ jsxRuntime.jsxs("div", { className:
|
|
1926
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: TestimonialCard_module_default.author, children: [
|
|
1581
1927
|
/* @__PURE__ */ jsxRuntime.jsx(Avatar, { src: avatarSrc, initials, size: "sm" }),
|
|
1582
1928
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { children: [
|
|
1583
|
-
/* @__PURE__ */ jsxRuntime.jsx("p", { className:
|
|
1584
|
-
/* @__PURE__ */ jsxRuntime.jsx("p", { className:
|
|
1929
|
+
/* @__PURE__ */ jsxRuntime.jsx("p", { className: TestimonialCard_module_default.authorName, children: name }),
|
|
1930
|
+
/* @__PURE__ */ jsxRuntime.jsx("p", { className: TestimonialCard_module_default.authorRole, children: role })
|
|
1585
1931
|
] })
|
|
1586
1932
|
] })
|
|
1587
1933
|
] });
|
|
1588
1934
|
}
|
|
1935
|
+
|
|
1936
|
+
// src/organisms/FeatureGrid.module.scss
|
|
1937
|
+
var FeatureGrid_module_default = {
|
|
1938
|
+
root: "FeatureGrid_module_root",
|
|
1939
|
+
cols2: "FeatureGrid_module_cols2",
|
|
1940
|
+
cols3: "FeatureGrid_module_cols3",
|
|
1941
|
+
cols4: "FeatureGrid_module_cols4",
|
|
1942
|
+
card: "FeatureGrid_module_card",
|
|
1943
|
+
cardIcon: "FeatureGrid_module_cardIcon",
|
|
1944
|
+
cardTitle: "FeatureGrid_module_cardTitle",
|
|
1945
|
+
cardDescription: "FeatureGrid_module_cardDescription"
|
|
1946
|
+
};
|
|
1589
1947
|
function FeatureGrid({ features, columns = 3, className = "" }) {
|
|
1590
|
-
const
|
|
1591
|
-
2:
|
|
1592
|
-
3:
|
|
1593
|
-
4:
|
|
1948
|
+
const colsClass = {
|
|
1949
|
+
2: FeatureGrid_module_default.cols2,
|
|
1950
|
+
3: FeatureGrid_module_default.cols3,
|
|
1951
|
+
4: FeatureGrid_module_default.cols4
|
|
1594
1952
|
};
|
|
1595
|
-
return /* @__PURE__ */ jsxRuntime.jsx("div", { className:
|
|
1596
|
-
"div",
|
|
1597
|
-
{
|
|
1598
|
-
|
|
1599
|
-
|
|
1600
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "w-10 h-10 rounded-[var(--radius-lg)] bg-[var(--brand-primary)]/10 flex items-center justify-center text-[var(--brand-primary)] mb-4", children: feature.icon }),
|
|
1601
|
-
/* @__PURE__ */ jsxRuntime.jsx("h3", { className: "text-sm font-semibold text-[var(--fg)] mb-1.5", children: feature.title }),
|
|
1602
|
-
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-sm text-[var(--fg-muted)] leading-relaxed", children: feature.description })
|
|
1603
|
-
]
|
|
1604
|
-
},
|
|
1605
|
-
i
|
|
1606
|
-
)) });
|
|
1953
|
+
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: `${FeatureGrid_module_default.root} ${colsClass[columns]}${className ? ` ${className}` : ""}`, children: features.map((feature, i) => /* @__PURE__ */ jsxRuntime.jsxs("div", { className: FeatureGrid_module_default.card, children: [
|
|
1954
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: FeatureGrid_module_default.cardIcon, children: feature.icon }),
|
|
1955
|
+
/* @__PURE__ */ jsxRuntime.jsx("h3", { className: FeatureGrid_module_default.cardTitle, children: feature.title }),
|
|
1956
|
+
/* @__PURE__ */ jsxRuntime.jsx("p", { className: FeatureGrid_module_default.cardDescription, children: feature.description })
|
|
1957
|
+
] }, i)) });
|
|
1607
1958
|
}
|
|
1959
|
+
|
|
1960
|
+
// src/organisms/Sidebar.module.scss
|
|
1961
|
+
var Sidebar_module_default = {
|
|
1962
|
+
root: "Sidebar_module_root",
|
|
1963
|
+
menu: "Sidebar_module_menu",
|
|
1964
|
+
courseSubmenu: "Sidebar_module_courseSubmenu",
|
|
1965
|
+
nav: "Sidebar_module_nav",
|
|
1966
|
+
footer: "Sidebar_module_footer",
|
|
1967
|
+
legal: "Sidebar_module_legal"
|
|
1968
|
+
};
|
|
1608
1969
|
var defaultMenuItems = [
|
|
1609
1970
|
"\u0413\u043B\u0430\u0432\u043D\u0430\u044F",
|
|
1610
1971
|
"\u041C\u043E\u0438 \u043A\u0443\u0440\u0441\u044B",
|
|
@@ -1626,13 +1987,13 @@ var courseMenuItems = [
|
|
|
1626
1987
|
function Sidebar({ type = "menu", menuItems, footer, className = "" }) {
|
|
1627
1988
|
const items = menuItems || (type === "courseSubmenu" ? courseMenuItems : defaultMenuItems);
|
|
1628
1989
|
const [active, setActive] = react.useState(0);
|
|
1629
|
-
const
|
|
1990
|
+
const widthClass = type === "courseSubmenu" ? Sidebar_module_default.courseSubmenu : Sidebar_module_default.menu;
|
|
1630
1991
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
1631
1992
|
"aside",
|
|
1632
1993
|
{
|
|
1633
|
-
className:
|
|
1994
|
+
className: `${Sidebar_module_default.root} ${widthClass}${className ? ` ${className}` : ""}`,
|
|
1634
1995
|
children: [
|
|
1635
|
-
/* @__PURE__ */ jsxRuntime.jsx("nav", { className:
|
|
1996
|
+
/* @__PURE__ */ jsxRuntime.jsx("nav", { className: Sidebar_module_default.nav, children: items.map((item, i) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
1636
1997
|
MenuItem,
|
|
1637
1998
|
{
|
|
1638
1999
|
text: item,
|
|
@@ -1641,9 +2002,9 @@ function Sidebar({ type = "menu", menuItems, footer, className = "" }) {
|
|
|
1641
2002
|
},
|
|
1642
2003
|
`${item}-${i}`
|
|
1643
2004
|
)) }),
|
|
1644
|
-
/* @__PURE__ */ jsxRuntime.jsxs("div", { className:
|
|
2005
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: Sidebar_module_default.footer, children: [
|
|
1645
2006
|
type === "menu" && footer,
|
|
1646
|
-
/* @__PURE__ */ jsxRuntime.jsxs("p", { className:
|
|
2007
|
+
/* @__PURE__ */ jsxRuntime.jsxs("p", { className: Sidebar_module_default.legal, children: [
|
|
1647
2008
|
"kapustin.cc, 2026 ",
|
|
1648
2009
|
/* @__PURE__ */ jsxRuntime.jsx("br", {}),
|
|
1649
2010
|
"\u0418\u041F \u041A\u0430\u043F\u0443\u0441\u0442\u0438\u043D \u0414.\u0412., \u0418\u041D\u041D 7721250201"
|
|
@@ -1653,6 +2014,25 @@ function Sidebar({ type = "menu", menuItems, footer, className = "" }) {
|
|
|
1653
2014
|
}
|
|
1654
2015
|
);
|
|
1655
2016
|
}
|
|
2017
|
+
|
|
2018
|
+
// src/organisms/AppCard.module.scss
|
|
2019
|
+
var AppCard_module_default = {
|
|
2020
|
+
defaultCard: "AppCard_module_defaultCard",
|
|
2021
|
+
stampCard: "AppCard_module_stampCard",
|
|
2022
|
+
imageWrap: "AppCard_module_imageWrap",
|
|
2023
|
+
imageWrapRounded: "AppCard_module_imageWrap AppCard_module_imageWrapRounded",
|
|
2024
|
+
image: "AppCard_module_image",
|
|
2025
|
+
contentDefaultNoImage: "AppCard_module_contentArea AppCard_module_contentDefault AppCard_module_contentDefaultNoImage",
|
|
2026
|
+
contentDefaultWithImage: "AppCard_module_contentArea AppCard_module_contentDefault AppCard_module_contentDefaultWithImage",
|
|
2027
|
+
contentStamp: "AppCard_module_contentArea AppCard_module_contentStamp",
|
|
2028
|
+
textGroup: "AppCard_module_textGroup",
|
|
2029
|
+
cardTitle: "AppCard_module_cardTitle",
|
|
2030
|
+
cardDesc: "AppCard_module_cardDesc",
|
|
2031
|
+
footer: "AppCard_module_footer",
|
|
2032
|
+
iconRow: "AppCard_module_iconRow",
|
|
2033
|
+
shadowWrap: "AppCard_module_shadowWrap",
|
|
2034
|
+
stampBg: "AppCard_module_stampBg"
|
|
2035
|
+
};
|
|
1656
2036
|
var HOLE_R = 4;
|
|
1657
2037
|
var HOLE_SP = 16;
|
|
1658
2038
|
function buildStampMask(w, h) {
|
|
@@ -1679,18 +2059,18 @@ function CardContent({
|
|
|
1679
2059
|
isStamp
|
|
1680
2060
|
}) {
|
|
1681
2061
|
return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
1682
|
-
image && /* @__PURE__ */ jsxRuntime.jsx("div", { className:
|
|
2062
|
+
image && /* @__PURE__ */ jsxRuntime.jsx("div", { className: isStamp ? AppCard_module_default.imageWrap : AppCard_module_default.imageWrapRounded, children: /* @__PURE__ */ jsxRuntime.jsx("img", { src: image, alt: title, className: AppCard_module_default.image }) }),
|
|
1683
2063
|
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
1684
2064
|
"div",
|
|
1685
2065
|
{
|
|
1686
|
-
className:
|
|
2066
|
+
className: isStamp ? AppCard_module_default.contentStamp : image ? AppCard_module_default.contentDefaultWithImage : AppCard_module_default.contentDefaultNoImage,
|
|
1687
2067
|
children: [
|
|
1688
|
-
/* @__PURE__ */ jsxRuntime.jsxs("div", { className:
|
|
1689
|
-
/* @__PURE__ */ jsxRuntime.jsx("h3", { className:
|
|
1690
|
-
/* @__PURE__ */ jsxRuntime.jsx("p", { className:
|
|
2068
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: AppCard_module_default.textGroup, children: [
|
|
2069
|
+
/* @__PURE__ */ jsxRuntime.jsx("h3", { className: AppCard_module_default.cardTitle, children: title }),
|
|
2070
|
+
/* @__PURE__ */ jsxRuntime.jsx("p", { className: AppCard_module_default.cardDesc, children: description })
|
|
1691
2071
|
] }),
|
|
1692
|
-
/* @__PURE__ */ jsxRuntime.jsxs("div", { className:
|
|
1693
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { className:
|
|
2072
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: AppCard_module_default.footer, children: [
|
|
2073
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: AppCard_module_default.iconRow, children: icons }),
|
|
1694
2074
|
/* @__PURE__ */ jsxRuntime.jsx(Button, { variant: buttonVariant === "outline" ? "outline" : "primary", size: "sm", onClick: onButtonClick, children: buttonText })
|
|
1695
2075
|
] })
|
|
1696
2076
|
]
|
|
@@ -1707,7 +2087,7 @@ function AppCard(_a) {
|
|
|
1707
2087
|
"className"
|
|
1708
2088
|
]);
|
|
1709
2089
|
if (variant === "default") {
|
|
1710
|
-
return /* @__PURE__ */ jsxRuntime.jsx("div", { className:
|
|
2090
|
+
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: `${AppCard_module_default.defaultCard}${className ? ` ${className}` : ""}`, children: /* @__PURE__ */ jsxRuntime.jsx(CardContent, __spreadProps(__spreadValues({}, contentProps), { isStamp: false })) });
|
|
1711
2091
|
}
|
|
1712
2092
|
const padded = variant === "stamp-padded";
|
|
1713
2093
|
return /* @__PURE__ */ jsxRuntime.jsx(StampWrapper, { className, padded, children: /* @__PURE__ */ jsxRuntime.jsx(CardContent, __spreadProps(__spreadValues({}, contentProps), { isStamp: true })) });
|
|
@@ -1733,7 +2113,7 @@ function StampWrapper({ children, className, padded }) {
|
|
|
1733
2113
|
ro.disconnect();
|
|
1734
2114
|
};
|
|
1735
2115
|
}, [build]);
|
|
1736
|
-
return /* @__PURE__ */ jsxRuntime.jsx("div", { ref, className:
|
|
2116
|
+
return /* @__PURE__ */ jsxRuntime.jsx("div", { ref, className: `${AppCard_module_default.stampCard}${className ? ` ${className}` : ""}`, children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: AppCard_module_default.shadowWrap, children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
1737
2117
|
"div",
|
|
1738
2118
|
{
|
|
1739
2119
|
style: {
|
|
@@ -1742,10 +2122,15 @@ function StampWrapper({ children, className, padded }) {
|
|
|
1742
2122
|
WebkitMaskSize: "100% 100%",
|
|
1743
2123
|
maskSize: "100% 100%"
|
|
1744
2124
|
},
|
|
1745
|
-
children: /* @__PURE__ */ jsxRuntime.jsx("div", { className:
|
|
2125
|
+
children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: AppCard_module_default.stampBg, style: padded ? { padding: STAMP_PADDING } : void 0, children })
|
|
1746
2126
|
}
|
|
1747
2127
|
) }) });
|
|
1748
2128
|
}
|
|
2129
|
+
|
|
2130
|
+
// src/organisms/AppTopLine.module.scss
|
|
2131
|
+
var AppTopLine_module_default = {
|
|
2132
|
+
root: "AppTopLine_module_root"
|
|
2133
|
+
};
|
|
1749
2134
|
function AppTopLine({
|
|
1750
2135
|
promoText = "\u0412\u0430\u043C \u0434\u043E\u0441\u0442\u0443\u043F\u043D\u0430 \u0441\u043A\u0438\u0434\u043A\u0430 10% \u043D\u0430 \u0432\u0441\u0435 \u043F\u043B\u0430\u0442\u043D\u044B\u0435 \u043A\u0443\u0440\u0441\u044B",
|
|
1751
2136
|
promoButtonText = "\u0421\u043C\u043E\u0442\u0440\u0435\u0442\u044C",
|
|
@@ -1758,19 +2143,51 @@ function AppTopLine({
|
|
|
1758
2143
|
avatarSrc,
|
|
1759
2144
|
className = ""
|
|
1760
2145
|
}) {
|
|
1761
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className:
|
|
2146
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: `${AppTopLine_module_default.root}${className ? ` ${className}` : ""}`, children: [
|
|
1762
2147
|
/* @__PURE__ */ jsxRuntime.jsx(TopPromo, { text: promoText, buttonText: promoButtonText }),
|
|
1763
2148
|
/* @__PURE__ */ jsxRuntime.jsx(ProfileNav, { stats, avatarSrc })
|
|
1764
2149
|
] });
|
|
1765
2150
|
}
|
|
2151
|
+
|
|
2152
|
+
// src/organisms/EmptyState.module.scss
|
|
2153
|
+
var EmptyState_module_default = {
|
|
2154
|
+
root: "EmptyState_module_root",
|
|
2155
|
+
icon: "EmptyState_module_icon",
|
|
2156
|
+
title: "EmptyState_module_title",
|
|
2157
|
+
description: "EmptyState_module_description",
|
|
2158
|
+
action: "EmptyState_module_action"
|
|
2159
|
+
};
|
|
1766
2160
|
function EmptyState({ icon, title, description, action, className = "" }) {
|
|
1767
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className:
|
|
1768
|
-
icon && /* @__PURE__ */ jsxRuntime.jsx("div", { className:
|
|
1769
|
-
/* @__PURE__ */ jsxRuntime.jsx("h3", { className:
|
|
1770
|
-
/* @__PURE__ */ jsxRuntime.jsx("p", { className:
|
|
1771
|
-
action && /* @__PURE__ */ jsxRuntime.jsx("div", { className:
|
|
2161
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: `${EmptyState_module_default.root}${className ? ` ${className}` : ""}`, children: [
|
|
2162
|
+
icon && /* @__PURE__ */ jsxRuntime.jsx("div", { className: EmptyState_module_default.icon, children: icon }),
|
|
2163
|
+
/* @__PURE__ */ jsxRuntime.jsx("h3", { className: EmptyState_module_default.title, children: title }),
|
|
2164
|
+
/* @__PURE__ */ jsxRuntime.jsx("p", { className: EmptyState_module_default.description, children: description }),
|
|
2165
|
+
action && /* @__PURE__ */ jsxRuntime.jsx("div", { className: EmptyState_module_default.action, children: action })
|
|
1772
2166
|
] });
|
|
1773
2167
|
}
|
|
2168
|
+
|
|
2169
|
+
// src/organisms/HeroSection.module.scss
|
|
2170
|
+
var HeroSection_module_default = {
|
|
2171
|
+
root: "HeroSection_module_root",
|
|
2172
|
+
bgGlow: "HeroSection_module_bgGlow",
|
|
2173
|
+
glowOrb: "HeroSection_module_glowOrb",
|
|
2174
|
+
inner: "HeroSection_module_inner",
|
|
2175
|
+
innerCompact: "HeroSection_module_innerCompact",
|
|
2176
|
+
content: "HeroSection_module_content",
|
|
2177
|
+
contentCenter: "HeroSection_module_content HeroSection_module_contentCenter",
|
|
2178
|
+
eyebrowWrap: "HeroSection_module_eyebrowWrap",
|
|
2179
|
+
eyebrowCenter: "HeroSection_module_eyebrowCenter",
|
|
2180
|
+
eyebrow: "HeroSection_module_eyebrow",
|
|
2181
|
+
eyebrowDot: "HeroSection_module_eyebrowDot",
|
|
2182
|
+
title: "HeroSection_module_title",
|
|
2183
|
+
subtitle: "HeroSection_module_subtitle",
|
|
2184
|
+
subtitleCenter: "HeroSection_module_subtitleCenter",
|
|
2185
|
+
actions: "HeroSection_module_actions",
|
|
2186
|
+
actionsCenter: "HeroSection_module_actionsCenter",
|
|
2187
|
+
mediaWrapCenter: "HeroSection_module_mediaWrap HeroSection_module_mediaWrapCenter",
|
|
2188
|
+
mediaWrapLeft: "HeroSection_module_mediaWrap HeroSection_module_mediaWrapLeft",
|
|
2189
|
+
mediaBox: "HeroSection_module_mediaBox"
|
|
2190
|
+
};
|
|
1774
2191
|
function HeroSection({
|
|
1775
2192
|
eyebrow,
|
|
1776
2193
|
title,
|
|
@@ -1783,30 +2200,40 @@ function HeroSection({
|
|
|
1783
2200
|
}) {
|
|
1784
2201
|
const isCenter = align === "center";
|
|
1785
2202
|
const isCompact = size === "compact";
|
|
1786
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: `
|
|
1787
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { className:
|
|
1788
|
-
/* @__PURE__ */ jsxRuntime.jsxs("div", { className:
|
|
1789
|
-
/* @__PURE__ */ jsxRuntime.jsxs("div", { className:
|
|
1790
|
-
eyebrow && /* @__PURE__ */ jsxRuntime.jsx("div", { className:
|
|
1791
|
-
/* @__PURE__ */ jsxRuntime.jsx("span", { className:
|
|
2203
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: `${HeroSection_module_default.root}${className ? ` ${className}` : ""}`, children: [
|
|
2204
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: HeroSection_module_default.bgGlow, "aria-hidden": "true", children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: HeroSection_module_default.glowOrb }) }),
|
|
2205
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: isCompact ? HeroSection_module_default.innerCompact : HeroSection_module_default.inner, children: [
|
|
2206
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: isCenter ? HeroSection_module_default.contentCenter : HeroSection_module_default.content, children: [
|
|
2207
|
+
eyebrow && /* @__PURE__ */ jsxRuntime.jsx("div", { className: `${HeroSection_module_default.eyebrowWrap}${isCenter ? ` ${HeroSection_module_default.eyebrowCenter}` : ""}`, children: /* @__PURE__ */ jsxRuntime.jsxs("span", { className: HeroSection_module_default.eyebrow, children: [
|
|
2208
|
+
/* @__PURE__ */ jsxRuntime.jsx("span", { className: HeroSection_module_default.eyebrowDot }),
|
|
1792
2209
|
eyebrow
|
|
1793
2210
|
] }) }),
|
|
1794
|
-
/* @__PURE__ */ jsxRuntime.jsx("h1", { className:
|
|
1795
|
-
subtitle && /* @__PURE__ */ jsxRuntime.jsx("p", { className:
|
|
1796
|
-
actions && /* @__PURE__ */ jsxRuntime.jsx("div", { className:
|
|
2211
|
+
/* @__PURE__ */ jsxRuntime.jsx("h1", { className: HeroSection_module_default.title, children: title }),
|
|
2212
|
+
subtitle && /* @__PURE__ */ jsxRuntime.jsx("p", { className: `${HeroSection_module_default.subtitle}${isCenter ? ` ${HeroSection_module_default.subtitleCenter}` : ""}`, children: subtitle }),
|
|
2213
|
+
actions && /* @__PURE__ */ jsxRuntime.jsx("div", { className: `${HeroSection_module_default.actions}${isCenter ? ` ${HeroSection_module_default.actionsCenter}` : ""}`, children: actions })
|
|
1797
2214
|
] }),
|
|
1798
|
-
media && /* @__PURE__ */ jsxRuntime.jsx("div", { className:
|
|
2215
|
+
media && /* @__PURE__ */ jsxRuntime.jsx("div", { className: isCenter ? HeroSection_module_default.mediaWrapCenter : HeroSection_module_default.mediaWrapLeft, children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: HeroSection_module_default.mediaBox, children: media }) })
|
|
1799
2216
|
] })
|
|
1800
2217
|
] });
|
|
1801
2218
|
}
|
|
2219
|
+
|
|
2220
|
+
// src/organisms/LogoCloud.module.scss
|
|
2221
|
+
var LogoCloud_module_default = {
|
|
2222
|
+
root: "LogoCloud_module_root",
|
|
2223
|
+
label: "LogoCloud_module_label",
|
|
2224
|
+
grid: "LogoCloud_module_grid",
|
|
2225
|
+
logoItem: "LogoCloud_module_logoItem",
|
|
2226
|
+
logoImg: "LogoCloud_module_logoImg",
|
|
2227
|
+
logoText: "LogoCloud_module_logoText"
|
|
2228
|
+
};
|
|
1802
2229
|
function LogoCloud({
|
|
1803
2230
|
label = "Trusted by teams at",
|
|
1804
2231
|
logos,
|
|
1805
2232
|
className = ""
|
|
1806
2233
|
}) {
|
|
1807
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: `
|
|
1808
|
-
label && /* @__PURE__ */ jsxRuntime.jsx("p", { className:
|
|
1809
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { className:
|
|
2234
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: `${LogoCloud_module_default.root}${className ? ` ${className}` : ""}`, children: [
|
|
2235
|
+
label && /* @__PURE__ */ jsxRuntime.jsx("p", { className: LogoCloud_module_default.label, children: label }),
|
|
2236
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: LogoCloud_module_default.grid, children: logos.map((logo) => /* @__PURE__ */ jsxRuntime.jsx("div", { className: LogoCloud_module_default.logoItem, children: logo.src ? (
|
|
1810
2237
|
// eslint-disable-next-line @next/next/no-img-element
|
|
1811
2238
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1812
2239
|
"img",
|
|
@@ -1814,32 +2241,52 @@ function LogoCloud({
|
|
|
1814
2241
|
src: logo.src,
|
|
1815
2242
|
alt: logo.name,
|
|
1816
2243
|
width: logo.width || 100,
|
|
1817
|
-
className:
|
|
2244
|
+
className: `${LogoCloud_module_default.logoImg} logo-img`
|
|
1818
2245
|
}
|
|
1819
2246
|
)
|
|
1820
|
-
) : /* @__PURE__ */ jsxRuntime.jsx("span", { className:
|
|
2247
|
+
) : /* @__PURE__ */ jsxRuntime.jsx("span", { className: LogoCloud_module_default.logoText, children: logo.name }) }, logo.name)) })
|
|
1821
2248
|
] });
|
|
1822
2249
|
}
|
|
2250
|
+
|
|
2251
|
+
// src/organisms/StatsBar.module.scss
|
|
2252
|
+
var StatsBar_module_default = {
|
|
2253
|
+
root: "StatsBar_module_root",
|
|
2254
|
+
inline: "StatsBar_module_inline",
|
|
2255
|
+
inlineGrid: "StatsBar_module_inlineGrid",
|
|
2256
|
+
inlineItem: "StatsBar_module_inlineItem",
|
|
2257
|
+
cardsGrid: "StatsBar_module_cardsGrid",
|
|
2258
|
+
card: "StatsBar_module_card",
|
|
2259
|
+
cardIconWrap: "StatsBar_module_cardIconWrap",
|
|
2260
|
+
statValue: "StatsBar_module_statValue",
|
|
2261
|
+
statLabel: "StatsBar_module_statLabel"
|
|
2262
|
+
};
|
|
1823
2263
|
function StatsBar({ stats, variant = "inline", className = "" }) {
|
|
1824
2264
|
if (variant === "cards") {
|
|
1825
|
-
return /* @__PURE__ */ jsxRuntime.jsx("section", { className: `
|
|
1826
|
-
"div",
|
|
1827
|
-
{
|
|
1828
|
-
|
|
1829
|
-
|
|
1830
|
-
stat.icon && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex justify-center mb-3 text-[var(--brand-primary)]", children: stat.icon }),
|
|
1831
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-2xl md:text-3xl font-bold text-[var(--fg)] tracking-[-0.03em] tabular-nums", children: stat.value }),
|
|
1832
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "mt-1 text-[13px] text-[var(--fg-muted)] tracking-[-0.25px]", children: stat.label })
|
|
1833
|
-
]
|
|
1834
|
-
},
|
|
1835
|
-
i
|
|
1836
|
-
)) }) });
|
|
2265
|
+
return /* @__PURE__ */ jsxRuntime.jsx("section", { className: `${StatsBar_module_default.root}${className ? ` ${className}` : ""}`, children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: StatsBar_module_default.cardsGrid, children: stats.map((stat, i) => /* @__PURE__ */ jsxRuntime.jsxs("div", { className: StatsBar_module_default.card, children: [
|
|
2266
|
+
stat.icon && /* @__PURE__ */ jsxRuntime.jsx("div", { className: StatsBar_module_default.cardIconWrap, children: stat.icon }),
|
|
2267
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: StatsBar_module_default.statValue, children: stat.value }),
|
|
2268
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: StatsBar_module_default.statLabel, children: stat.label })
|
|
2269
|
+
] }, i)) }) });
|
|
1837
2270
|
}
|
|
1838
|
-
return /* @__PURE__ */ jsxRuntime.jsx("section", { className:
|
|
1839
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { className:
|
|
1840
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { className:
|
|
2271
|
+
return /* @__PURE__ */ jsxRuntime.jsx("section", { className: `${StatsBar_module_default.root} ${StatsBar_module_default.inline}${className ? ` ${className}` : ""}`, children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: StatsBar_module_default.inlineGrid, children: stats.map((stat, i) => /* @__PURE__ */ jsxRuntime.jsxs("div", { className: StatsBar_module_default.inlineItem, children: [
|
|
2272
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: StatsBar_module_default.statValue, children: stat.value }),
|
|
2273
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: StatsBar_module_default.statLabel, children: stat.label })
|
|
1841
2274
|
] }, i)) }) });
|
|
1842
2275
|
}
|
|
2276
|
+
|
|
2277
|
+
// src/organisms/CTASection.module.scss
|
|
2278
|
+
var CTASection_module_default = {
|
|
2279
|
+
root: "CTASection_module_root",
|
|
2280
|
+
default: "CTASection_module_default",
|
|
2281
|
+
filled: "CTASection_module_filled",
|
|
2282
|
+
bordered: "CTASection_module_bordered",
|
|
2283
|
+
inner: "CTASection_module_inner",
|
|
2284
|
+
title: "CTASection_module_title",
|
|
2285
|
+
titleFilled: "CTASection_module_titleFilled",
|
|
2286
|
+
description: "CTASection_module_description",
|
|
2287
|
+
descriptionFilled: "CTASection_module_descriptionFilled",
|
|
2288
|
+
actions: "CTASection_module_actions"
|
|
2289
|
+
};
|
|
1843
2290
|
function CTASection({
|
|
1844
2291
|
title,
|
|
1845
2292
|
description,
|
|
@@ -1847,44 +2294,42 @@ function CTASection({
|
|
|
1847
2294
|
variant = "default",
|
|
1848
2295
|
className = ""
|
|
1849
2296
|
}) {
|
|
1850
|
-
const variantStyles5 = {
|
|
1851
|
-
default: "py-16 md:py-24",
|
|
1852
|
-
filled: "py-12 md:py-16 px-6 md:px-12 rounded-[var(--radius-xl)] bg-[var(--fg)] text-[var(--bg)]",
|
|
1853
|
-
bordered: "py-12 md:py-16 px-6 md:px-12 rounded-[var(--radius-xl)] border-2 border-dashed border-[var(--border-color-strong)]"
|
|
1854
|
-
};
|
|
1855
2297
|
const isFilled = variant === "filled";
|
|
1856
|
-
return /* @__PURE__ */ jsxRuntime.jsx("section", { className: `${
|
|
1857
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1858
|
-
|
|
1859
|
-
|
|
1860
|
-
className: `text-2xl md:text-4xl font-bold tracking-[-0.03em] leading-[1.1] ${isFilled ? "text-[var(--bg)]" : "text-[var(--fg)]"}`,
|
|
1861
|
-
children: title
|
|
1862
|
-
}
|
|
1863
|
-
),
|
|
1864
|
-
description && /* @__PURE__ */ jsxRuntime.jsx(
|
|
1865
|
-
"p",
|
|
1866
|
-
{
|
|
1867
|
-
className: `mt-4 text-base leading-relaxed ${isFilled ? "text-[var(--bg)]/70" : "text-[var(--fg-secondary)]"}`,
|
|
1868
|
-
children: description
|
|
1869
|
-
}
|
|
1870
|
-
),
|
|
1871
|
-
actions && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "mt-8 flex flex-wrap gap-3 justify-center", children: actions })
|
|
2298
|
+
return /* @__PURE__ */ jsxRuntime.jsx("section", { className: `${CTASection_module_default.root} ${CTASection_module_default[variant]}${className ? ` ${className}` : ""}`, children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: CTASection_module_default.inner, children: [
|
|
2299
|
+
/* @__PURE__ */ jsxRuntime.jsx("h2", { className: `${CTASection_module_default.title}${isFilled ? ` ${CTASection_module_default.titleFilled}` : ""}`, children: title }),
|
|
2300
|
+
description && /* @__PURE__ */ jsxRuntime.jsx("p", { className: `${CTASection_module_default.description}${isFilled ? ` ${CTASection_module_default.descriptionFilled}` : ""}`, children: description }),
|
|
2301
|
+
actions && /* @__PURE__ */ jsxRuntime.jsx("div", { className: CTASection_module_default.actions, children: actions })
|
|
1872
2302
|
] }) });
|
|
1873
2303
|
}
|
|
2304
|
+
|
|
2305
|
+
// src/organisms/BentoGrid.module.scss
|
|
2306
|
+
var BentoGrid_module_default = {
|
|
2307
|
+
root: "BentoGrid_module_root",
|
|
2308
|
+
grid: "BentoGrid_module_grid",
|
|
2309
|
+
item: "BentoGrid_module_item",
|
|
2310
|
+
colSpan2: "BentoGrid_module_colSpan2",
|
|
2311
|
+
rowSpan2: "BentoGrid_module_rowSpan2",
|
|
2312
|
+
mediaWrap: "BentoGrid_module_mediaWrap",
|
|
2313
|
+
content: "BentoGrid_module_content",
|
|
2314
|
+
contentTall: "BentoGrid_module_contentTall",
|
|
2315
|
+
itemIcon: "BentoGrid_module_itemIcon",
|
|
2316
|
+
itemTitle: "BentoGrid_module_itemTitle",
|
|
2317
|
+
itemDescription: "BentoGrid_module_itemDescription"
|
|
2318
|
+
};
|
|
1874
2319
|
function BentoGrid({ items, className = "" }) {
|
|
1875
|
-
return /* @__PURE__ */ jsxRuntime.jsx("section", { className: `
|
|
1876
|
-
const
|
|
1877
|
-
const
|
|
2320
|
+
return /* @__PURE__ */ jsxRuntime.jsx("section", { className: `${BentoGrid_module_default.root}${className ? ` ${className}` : ""}`, children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: BentoGrid_module_default.grid, children: items.map((item, i) => {
|
|
2321
|
+
const spanClass = item.span === 2 ? ` ${BentoGrid_module_default.colSpan2}` : "";
|
|
2322
|
+
const rowClass = item.rowSpan === 2 ? ` ${BentoGrid_module_default.rowSpan2}` : "";
|
|
1878
2323
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
1879
2324
|
"div",
|
|
1880
2325
|
{
|
|
1881
|
-
className:
|
|
2326
|
+
className: `${BentoGrid_module_default.item}${spanClass}${rowClass}${item.className ? ` ${item.className}` : ""}`,
|
|
1882
2327
|
children: [
|
|
1883
|
-
item.media && /* @__PURE__ */ jsxRuntime.jsx("div", { className:
|
|
1884
|
-
/* @__PURE__ */ jsxRuntime.jsxs("div", { className:
|
|
1885
|
-
item.icon && /* @__PURE__ */ jsxRuntime.jsx("div", { className:
|
|
1886
|
-
/* @__PURE__ */ jsxRuntime.jsx("h3", { className:
|
|
1887
|
-
item.description && /* @__PURE__ */ jsxRuntime.jsx("p", { className:
|
|
2328
|
+
item.media && /* @__PURE__ */ jsxRuntime.jsx("div", { className: BentoGrid_module_default.mediaWrap, children: item.media }),
|
|
2329
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: `${BentoGrid_module_default.content}${item.rowSpan === 2 ? ` ${BentoGrid_module_default.contentTall}` : ""}`, children: [
|
|
2330
|
+
item.icon && /* @__PURE__ */ jsxRuntime.jsx("div", { className: BentoGrid_module_default.itemIcon, children: item.icon }),
|
|
2331
|
+
/* @__PURE__ */ jsxRuntime.jsx("h3", { className: BentoGrid_module_default.itemTitle, children: item.title }),
|
|
2332
|
+
item.description && /* @__PURE__ */ jsxRuntime.jsx("p", { className: BentoGrid_module_default.itemDescription, children: item.description })
|
|
1888
2333
|
] })
|
|
1889
2334
|
]
|
|
1890
2335
|
},
|
|
@@ -1892,6 +2337,23 @@ function BentoGrid({ items, className = "" }) {
|
|
|
1892
2337
|
);
|
|
1893
2338
|
}) }) });
|
|
1894
2339
|
}
|
|
2340
|
+
|
|
2341
|
+
// src/organisms/FAQSection.module.scss
|
|
2342
|
+
var FAQSection_module_default = {
|
|
2343
|
+
root: "FAQSection_module_root",
|
|
2344
|
+
container: "FAQSection_module_container",
|
|
2345
|
+
title: "FAQSection_module_title",
|
|
2346
|
+
subtitle: "FAQSection_module_subtitle",
|
|
2347
|
+
list: "FAQSection_module_list",
|
|
2348
|
+
item: "FAQSection_module_item",
|
|
2349
|
+
question: "FAQSection_module_question",
|
|
2350
|
+
questionText: "FAQSection_module_questionText",
|
|
2351
|
+
toggleIcon: "FAQSection_module_toggleIcon",
|
|
2352
|
+
toggleIconOpen: "FAQSection_module_toggleIcon FAQSection_module_toggleIconOpen",
|
|
2353
|
+
answerOpen: "FAQSection_module_answer FAQSection_module_answerOpen",
|
|
2354
|
+
answerClosed: "FAQSection_module_answer FAQSection_module_answerClosed",
|
|
2355
|
+
answerText: "FAQSection_module_answerText"
|
|
2356
|
+
};
|
|
1895
2357
|
function FAQSection({
|
|
1896
2358
|
title = "Frequently asked questions",
|
|
1897
2359
|
subtitle,
|
|
@@ -1900,64 +2362,72 @@ function FAQSection({
|
|
|
1900
2362
|
}) {
|
|
1901
2363
|
const [openIndex, setOpenIndex] = react.useState(null);
|
|
1902
2364
|
const toggle = (i) => setOpenIndex(openIndex === i ? null : i);
|
|
1903
|
-
return /* @__PURE__ */ jsxRuntime.jsx("section", { className: `
|
|
1904
|
-
title && /* @__PURE__ */ jsxRuntime.jsx("h2", { className:
|
|
1905
|
-
subtitle && /* @__PURE__ */ jsxRuntime.jsx("p", { className:
|
|
1906
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { className:
|
|
2365
|
+
return /* @__PURE__ */ jsxRuntime.jsx("section", { className: `${FAQSection_module_default.root}${className ? ` ${className}` : ""}`, children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: FAQSection_module_default.container, children: [
|
|
2366
|
+
title && /* @__PURE__ */ jsxRuntime.jsx("h2", { className: FAQSection_module_default.title, children: title }),
|
|
2367
|
+
subtitle && /* @__PURE__ */ jsxRuntime.jsx("p", { className: FAQSection_module_default.subtitle, children: subtitle }),
|
|
2368
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: title || subtitle ? FAQSection_module_default.list : "", children: items.map((item, i) => {
|
|
1907
2369
|
const isOpen = openIndex === i;
|
|
1908
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className:
|
|
2370
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: FAQSection_module_default.item, children: [
|
|
1909
2371
|
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
1910
2372
|
"button",
|
|
1911
2373
|
{
|
|
1912
2374
|
onClick: () => toggle(i),
|
|
1913
|
-
className:
|
|
2375
|
+
className: FAQSection_module_default.question,
|
|
1914
2376
|
"aria-expanded": isOpen,
|
|
1915
2377
|
children: [
|
|
1916
|
-
/* @__PURE__ */ jsxRuntime.jsx("span", { className:
|
|
1917
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1918
|
-
"span",
|
|
1919
|
-
{
|
|
1920
|
-
className: `shrink-0 w-5 h-5 flex items-center justify-center text-[var(--fg-muted)] transition-transform duration-200 ${isOpen ? "rotate-45" : ""}`,
|
|
1921
|
-
children: /* @__PURE__ */ jsxRuntime.jsx("svg", { width: "14", height: "14", viewBox: "0 0 14 14", fill: "none", children: /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M7 1v12M1 7h12", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round" }) })
|
|
1922
|
-
}
|
|
1923
|
-
)
|
|
2378
|
+
/* @__PURE__ */ jsxRuntime.jsx("span", { className: FAQSection_module_default.questionText, children: item.question }),
|
|
2379
|
+
/* @__PURE__ */ jsxRuntime.jsx("span", { className: isOpen ? FAQSection_module_default.toggleIconOpen : FAQSection_module_default.toggleIcon, children: /* @__PURE__ */ jsxRuntime.jsx("svg", { width: "14", height: "14", viewBox: "0 0 14 14", fill: "none", children: /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M7 1v12M1 7h12", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round" }) }) })
|
|
1924
2380
|
]
|
|
1925
2381
|
}
|
|
1926
2382
|
),
|
|
1927
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1928
|
-
"div",
|
|
1929
|
-
{
|
|
1930
|
-
className: `overflow-hidden transition-all duration-200 ease-out ${isOpen ? "max-h-96 opacity-100 mt-3" : "max-h-0 opacity-0"}`,
|
|
1931
|
-
children: /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-[14px] text-[var(--fg-secondary)] leading-relaxed pr-8", children: item.answer })
|
|
1932
|
-
}
|
|
1933
|
-
)
|
|
2383
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: isOpen ? FAQSection_module_default.answerOpen : FAQSection_module_default.answerClosed, children: /* @__PURE__ */ jsxRuntime.jsx("p", { className: FAQSection_module_default.answerText, children: item.answer }) })
|
|
1934
2384
|
] }, i);
|
|
1935
2385
|
}) })
|
|
1936
2386
|
] }) });
|
|
1937
2387
|
}
|
|
2388
|
+
|
|
2389
|
+
// src/organisms/ComparisonTable.module.scss
|
|
2390
|
+
var ComparisonTable_module_default = {
|
|
2391
|
+
root: "ComparisonTable_module_root",
|
|
2392
|
+
scrollWrap: "ComparisonTable_module_scrollWrap",
|
|
2393
|
+
table: "ComparisonTable_module_table",
|
|
2394
|
+
headerCell: "ComparisonTable_module_headerCell",
|
|
2395
|
+
columnHeader: "ComparisonTable_module_columnHeader",
|
|
2396
|
+
columnHeaderHighlighted: "ComparisonTable_module_columnHeader ComparisonTable_module_columnHeaderHighlighted",
|
|
2397
|
+
bodyRow: "ComparisonTable_module_bodyRow",
|
|
2398
|
+
featureCell: "ComparisonTable_module_featureCell",
|
|
2399
|
+
valueCell: "ComparisonTable_module_valueCell",
|
|
2400
|
+
valueCellHighlighted: "ComparisonTable_module_valueCell ComparisonTable_module_valueCellHighlighted",
|
|
2401
|
+
valueCellHighlightedLast: "ComparisonTable_module_valueCell ComparisonTable_module_valueCellHighlighted ComparisonTable_module_valueCellHighlightedLast",
|
|
2402
|
+
iconSuccess: "ComparisonTable_module_iconSuccess",
|
|
2403
|
+
iconMuted: "ComparisonTable_module_iconMuted",
|
|
2404
|
+
textValue: "ComparisonTable_module_textValue"
|
|
2405
|
+
};
|
|
1938
2406
|
function ComparisonTable({ columns, rows, className = "" }) {
|
|
1939
|
-
return /* @__PURE__ */ jsxRuntime.jsx("section", { className: `
|
|
2407
|
+
return /* @__PURE__ */ jsxRuntime.jsx("section", { className: `${ComparisonTable_module_default.root}${className ? ` ${className}` : ""}`, children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: ComparisonTable_module_default.scrollWrap, children: /* @__PURE__ */ jsxRuntime.jsxs("table", { className: ComparisonTable_module_default.table, children: [
|
|
1940
2408
|
/* @__PURE__ */ jsxRuntime.jsx("thead", { children: /* @__PURE__ */ jsxRuntime.jsxs("tr", { children: [
|
|
1941
|
-
/* @__PURE__ */ jsxRuntime.jsx("th", { className:
|
|
2409
|
+
/* @__PURE__ */ jsxRuntime.jsx("th", { className: ComparisonTable_module_default.headerCell }),
|
|
1942
2410
|
columns.map((col, i) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
1943
2411
|
"th",
|
|
1944
2412
|
{
|
|
1945
|
-
className:
|
|
2413
|
+
className: col.highlighted ? ComparisonTable_module_default.columnHeaderHighlighted : ComparisonTable_module_default.columnHeader,
|
|
1946
2414
|
children: col.label
|
|
1947
2415
|
},
|
|
1948
2416
|
i
|
|
1949
2417
|
))
|
|
1950
2418
|
] }) }),
|
|
1951
|
-
/* @__PURE__ */ jsxRuntime.jsx("tbody", { children: rows.map((row, ri) => /* @__PURE__ */ jsxRuntime.jsxs("tr", { className:
|
|
1952
|
-
/* @__PURE__ */ jsxRuntime.jsx("td", { className:
|
|
2419
|
+
/* @__PURE__ */ jsxRuntime.jsx("tbody", { children: rows.map((row, ri) => /* @__PURE__ */ jsxRuntime.jsxs("tr", { className: ComparisonTable_module_default.bodyRow, children: [
|
|
2420
|
+
/* @__PURE__ */ jsxRuntime.jsx("td", { className: ComparisonTable_module_default.featureCell, children: row.feature }),
|
|
1953
2421
|
row.values.map((val, vi) => {
|
|
1954
2422
|
var _a;
|
|
1955
2423
|
const isHighlighted = (_a = columns[vi]) == null ? void 0 : _a.highlighted;
|
|
2424
|
+
const isLast = ri === rows.length - 1;
|
|
2425
|
+
const cellClass = isHighlighted ? isLast ? ComparisonTable_module_default.valueCellHighlightedLast : ComparisonTable_module_default.valueCellHighlighted : ComparisonTable_module_default.valueCell;
|
|
1956
2426
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
1957
2427
|
"td",
|
|
1958
2428
|
{
|
|
1959
|
-
className:
|
|
1960
|
-
children: typeof val === "boolean" ? val ? /* @__PURE__ */ jsxRuntime.jsx("span", { className:
|
|
2429
|
+
className: cellClass,
|
|
2430
|
+
children: typeof val === "boolean" ? val ? /* @__PURE__ */ jsxRuntime.jsx("span", { className: ComparisonTable_module_default.iconSuccess, children: /* @__PURE__ */ jsxRuntime.jsx(IconlyCheck, { size: 18 }) }) : /* @__PURE__ */ jsxRuntime.jsx("span", { className: ComparisonTable_module_default.iconMuted, children: /* @__PURE__ */ jsxRuntime.jsx(IconlyClose, { size: 18 }) }) : /* @__PURE__ */ jsxRuntime.jsx("span", { className: ComparisonTable_module_default.textValue, children: val })
|
|
1961
2431
|
},
|
|
1962
2432
|
vi
|
|
1963
2433
|
);
|
|
@@ -1965,79 +2435,121 @@ function ComparisonTable({ columns, rows, className = "" }) {
|
|
|
1965
2435
|
] }, ri)) })
|
|
1966
2436
|
] }) }) });
|
|
1967
2437
|
}
|
|
2438
|
+
|
|
2439
|
+
// src/organisms/PromoBento.module.scss
|
|
2440
|
+
var PromoBento_module_default = {
|
|
2441
|
+
root: "PromoBento_module_root",
|
|
2442
|
+
header: "PromoBento_module_header",
|
|
2443
|
+
heading: "PromoBento_module_heading",
|
|
2444
|
+
subtitle: "PromoBento_module_subtitle",
|
|
2445
|
+
grid: "PromoBento_module_grid",
|
|
2446
|
+
card: "PromoBento_module_card",
|
|
2447
|
+
cardMedia: "PromoBento_module_cardMedia",
|
|
2448
|
+
cardMediaInner: "PromoBento_module_cardMediaInner",
|
|
2449
|
+
cardFade: "PromoBento_module_cardFade",
|
|
2450
|
+
cardContent: "PromoBento_module_cardContent",
|
|
2451
|
+
pill: "PromoBento_module_pill",
|
|
2452
|
+
pillInner: "PromoBento_module_pillInner",
|
|
2453
|
+
pillIcon: "PromoBento_module_pillIcon",
|
|
2454
|
+
cardTitle: "PromoBento_module_cardTitle",
|
|
2455
|
+
cardDesc: "PromoBento_module_cardDesc",
|
|
2456
|
+
cardCta: "PromoBento_module_cardCta"
|
|
2457
|
+
};
|
|
1968
2458
|
function PromoBentoCard({ pill, title, description, cta, media, className = "" }) {
|
|
1969
|
-
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
1970
|
-
"div",
|
|
1971
|
-
|
|
1972
|
-
|
|
1973
|
-
|
|
1974
|
-
|
|
1975
|
-
|
|
1976
|
-
|
|
1977
|
-
|
|
1978
|
-
|
|
1979
|
-
|
|
1980
|
-
|
|
1981
|
-
|
|
1982
|
-
|
|
1983
|
-
|
|
1984
|
-
|
|
1985
|
-
|
|
1986
|
-
|
|
1987
|
-
|
|
1988
|
-
|
|
1989
|
-
|
|
1990
|
-
|
|
1991
|
-
|
|
1992
|
-
description && /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-sm md:text-base leading-relaxed text-[var(--fg-secondary)] max-w-[85%]", children: description }),
|
|
1993
|
-
cta && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "mt-1", children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
1994
|
-
Button,
|
|
1995
|
-
{
|
|
1996
|
-
variant: "outline",
|
|
1997
|
-
onClick: cta.onClick,
|
|
1998
|
-
icon: /* @__PURE__ */ jsxRuntime.jsx("svg", { width: "16", height: "16", viewBox: "0 0 16 16", fill: "none", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round", strokeLinejoin: "round", children: /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M6 3l5 5-5 5" }) }),
|
|
1999
|
-
children: cta.label
|
|
2000
|
-
}
|
|
2001
|
-
) })
|
|
2002
|
-
] })
|
|
2003
|
-
]
|
|
2004
|
-
}
|
|
2005
|
-
);
|
|
2459
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: `${PromoBento_module_default.card}${className ? ` ${className}` : ""}`, children: [
|
|
2460
|
+
media && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: PromoBento_module_default.cardMedia, children: [
|
|
2461
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: PromoBento_module_default.cardMediaInner, children: media }),
|
|
2462
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: PromoBento_module_default.cardFade })
|
|
2463
|
+
] }),
|
|
2464
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: PromoBento_module_default.cardContent, children: [
|
|
2465
|
+
pill && /* @__PURE__ */ jsxRuntime.jsx("div", { className: PromoBento_module_default.pill, children: /* @__PURE__ */ jsxRuntime.jsxs("span", { className: PromoBento_module_default.pillInner, children: [
|
|
2466
|
+
pill.icon && /* @__PURE__ */ jsxRuntime.jsx("span", { className: PromoBento_module_default.pillIcon, children: pill.icon }),
|
|
2467
|
+
pill.label
|
|
2468
|
+
] }) }),
|
|
2469
|
+
/* @__PURE__ */ jsxRuntime.jsx("h3", { className: PromoBento_module_default.cardTitle, children: title }),
|
|
2470
|
+
description && /* @__PURE__ */ jsxRuntime.jsx("p", { className: PromoBento_module_default.cardDesc, children: description }),
|
|
2471
|
+
cta && /* @__PURE__ */ jsxRuntime.jsx("div", { className: PromoBento_module_default.cardCta, children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
2472
|
+
Button,
|
|
2473
|
+
{
|
|
2474
|
+
variant: "outline",
|
|
2475
|
+
onClick: cta.onClick,
|
|
2476
|
+
icon: /* @__PURE__ */ jsxRuntime.jsx("svg", { width: "16", height: "16", viewBox: "0 0 16 16", fill: "none", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round", strokeLinejoin: "round", children: /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M6 3l5 5-5 5" }) }),
|
|
2477
|
+
children: cta.label
|
|
2478
|
+
}
|
|
2479
|
+
) })
|
|
2480
|
+
] })
|
|
2481
|
+
] });
|
|
2006
2482
|
}
|
|
2007
2483
|
function PromoBento({ heading, subtitle, items, className = "" }) {
|
|
2008
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: `
|
|
2009
|
-
/* @__PURE__ */ jsxRuntime.jsxs("div", { className:
|
|
2010
|
-
/* @__PURE__ */ jsxRuntime.jsx("h2", { className:
|
|
2011
|
-
subtitle && /* @__PURE__ */ jsxRuntime.jsx("p", { className:
|
|
2484
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: `${PromoBento_module_default.root}${className ? ` ${className}` : ""}`, children: [
|
|
2485
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: PromoBento_module_default.header, children: [
|
|
2486
|
+
/* @__PURE__ */ jsxRuntime.jsx("h2", { className: PromoBento_module_default.heading, children: heading }),
|
|
2487
|
+
subtitle && /* @__PURE__ */ jsxRuntime.jsx("p", { className: PromoBento_module_default.subtitle, children: subtitle })
|
|
2012
2488
|
] }),
|
|
2013
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { className:
|
|
2489
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: PromoBento_module_default.grid, children: items.map((item, i) => /* @__PURE__ */ jsxRuntime.jsx(PromoBentoCard, __spreadValues({}, item), i)) })
|
|
2014
2490
|
] });
|
|
2015
2491
|
}
|
|
2492
|
+
|
|
2493
|
+
// src/organisms/PromoShowcase.module.scss
|
|
2494
|
+
var PromoShowcase_module_default = {
|
|
2495
|
+
root: "PromoShowcase_module_root",
|
|
2496
|
+
heading: "PromoShowcase_module_heading",
|
|
2497
|
+
headingText: "PromoShowcase_module_headingText",
|
|
2498
|
+
body: "PromoShowcase_module_body",
|
|
2499
|
+
stepper: "PromoShowcase_module_stepper",
|
|
2500
|
+
stepButton: "PromoShowcase_module_stepButton",
|
|
2501
|
+
stepButtonActive: "PromoShowcase_module_stepButtonActive",
|
|
2502
|
+
contentArea: "PromoShowcase_module_contentArea",
|
|
2503
|
+
panel: "PromoShowcase_module_panel",
|
|
2504
|
+
panelActive: "PromoShowcase_module_panelActive",
|
|
2505
|
+
panelInner: "PromoShowcase_module_panelInner"
|
|
2506
|
+
};
|
|
2016
2507
|
function PromoShowcase({ heading, steps, className = "" }) {
|
|
2017
2508
|
const [activeIndex, setActiveIndex] = react.useState(0);
|
|
2018
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: `
|
|
2019
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { className:
|
|
2020
|
-
/* @__PURE__ */ jsxRuntime.jsxs("div", { className:
|
|
2021
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { className:
|
|
2509
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: `${PromoShowcase_module_default.root}${className ? ` ${className}` : ""}`, children: [
|
|
2510
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: PromoShowcase_module_default.heading, children: /* @__PURE__ */ jsxRuntime.jsx("h2", { className: PromoShowcase_module_default.headingText, children: heading }) }),
|
|
2511
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: PromoShowcase_module_default.body, children: [
|
|
2512
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: PromoShowcase_module_default.stepper, children: steps.map((step, i) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
2022
2513
|
"button",
|
|
2023
2514
|
{
|
|
2024
2515
|
onClick: () => setActiveIndex(i),
|
|
2025
|
-
className:
|
|
2516
|
+
className: `${PromoShowcase_module_default.stepButton}${i === activeIndex ? ` ${PromoShowcase_module_default.stepButtonActive}` : ""}`,
|
|
2026
2517
|
children: step.label
|
|
2027
2518
|
},
|
|
2028
2519
|
i
|
|
2029
2520
|
)) }),
|
|
2030
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { className:
|
|
2521
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: PromoShowcase_module_default.contentArea, children: steps.map((step, i) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
2031
2522
|
"div",
|
|
2032
2523
|
{
|
|
2033
|
-
className:
|
|
2034
|
-
children: /* @__PURE__ */ jsxRuntime.jsx("div", { className:
|
|
2524
|
+
className: `${PromoShowcase_module_default.panel}${i === activeIndex ? ` ${PromoShowcase_module_default.panelActive}` : ""}`,
|
|
2525
|
+
children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: PromoShowcase_module_default.panelInner, children: step.content })
|
|
2035
2526
|
},
|
|
2036
2527
|
i
|
|
2037
2528
|
)) })
|
|
2038
2529
|
] })
|
|
2039
2530
|
] });
|
|
2040
2531
|
}
|
|
2532
|
+
|
|
2533
|
+
// src/organisms/PromoSplit.module.scss
|
|
2534
|
+
var PromoSplit_module_default = {
|
|
2535
|
+
root: "PromoSplit_module_root",
|
|
2536
|
+
grid: "PromoSplit_module_grid",
|
|
2537
|
+
gridReversed: "PromoSplit_module_grid PromoSplit_module_gridReversed",
|
|
2538
|
+
textColumn: "PromoSplit_module_textColumn",
|
|
2539
|
+
textColumnLtr: "PromoSplit_module_textColumnLtr",
|
|
2540
|
+
heading: "PromoSplit_module_heading",
|
|
2541
|
+
description: "PromoSplit_module_description",
|
|
2542
|
+
features: "PromoSplit_module_features",
|
|
2543
|
+
feature: "PromoSplit_module_feature",
|
|
2544
|
+
featureTitle: "PromoSplit_module_featureTitle",
|
|
2545
|
+
featureDesc: "PromoSplit_module_featureDesc",
|
|
2546
|
+
mediaColumn: "PromoSplit_module_mediaColumn",
|
|
2547
|
+
mediaColumnLtr: "PromoSplit_module_mediaColumnLtr",
|
|
2548
|
+
mediaBox: "PromoSplit_module_mediaBox",
|
|
2549
|
+
mediaContent: "PromoSplit_module_mediaContent",
|
|
2550
|
+
mediaPlaceholder: "PromoSplit_module_mediaPlaceholder",
|
|
2551
|
+
placeholderCircle: "PromoSplit_module_placeholderCircle"
|
|
2552
|
+
};
|
|
2041
2553
|
function PromoSplit({
|
|
2042
2554
|
heading,
|
|
2043
2555
|
description,
|
|
@@ -2047,66 +2559,118 @@ function PromoSplit({
|
|
|
2047
2559
|
className = ""
|
|
2048
2560
|
}) {
|
|
2049
2561
|
const isLeft = mediaPosition === "left";
|
|
2050
|
-
return /* @__PURE__ */ jsxRuntime.jsx("section", { className: `
|
|
2051
|
-
/* @__PURE__ */ jsxRuntime.jsxs("div", { className:
|
|
2052
|
-
/* @__PURE__ */ jsxRuntime.jsx("h2", { className:
|
|
2053
|
-
description && /* @__PURE__ */ jsxRuntime.jsx("p", { className:
|
|
2054
|
-
features && features.length > 0 && /* @__PURE__ */ jsxRuntime.jsx("div", { className:
|
|
2055
|
-
/* @__PURE__ */ jsxRuntime.jsx("h3", { className:
|
|
2056
|
-
/* @__PURE__ */ jsxRuntime.jsx("p", { className:
|
|
2562
|
+
return /* @__PURE__ */ jsxRuntime.jsx("section", { className: `${PromoSplit_module_default.root}${className ? ` ${className}` : ""}`, children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: isLeft ? PromoSplit_module_default.gridReversed : PromoSplit_module_default.grid, children: [
|
|
2563
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: `${PromoSplit_module_default.textColumn}${isLeft ? ` ${PromoSplit_module_default.textColumnLtr}` : ""}`, children: [
|
|
2564
|
+
/* @__PURE__ */ jsxRuntime.jsx("h2", { className: PromoSplit_module_default.heading, children: heading }),
|
|
2565
|
+
description && /* @__PURE__ */ jsxRuntime.jsx("p", { className: PromoSplit_module_default.description, children: description }),
|
|
2566
|
+
features && features.length > 0 && /* @__PURE__ */ jsxRuntime.jsx("div", { className: PromoSplit_module_default.features, children: features.map((feature, i) => /* @__PURE__ */ jsxRuntime.jsxs("div", { className: PromoSplit_module_default.feature, children: [
|
|
2567
|
+
/* @__PURE__ */ jsxRuntime.jsx("h3", { className: PromoSplit_module_default.featureTitle, children: feature.title }),
|
|
2568
|
+
/* @__PURE__ */ jsxRuntime.jsx("p", { className: PromoSplit_module_default.featureDesc, children: feature.description })
|
|
2057
2569
|
] }, i)) })
|
|
2058
2570
|
] }),
|
|
2059
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { className:
|
|
2571
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: `${PromoSplit_module_default.mediaColumn}${isLeft ? ` ${PromoSplit_module_default.mediaColumnLtr}` : ""}`, children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: PromoSplit_module_default.mediaBox, children: media ? /* @__PURE__ */ jsxRuntime.jsx("div", { className: PromoSplit_module_default.mediaContent, children: media }) : /* @__PURE__ */ jsxRuntime.jsx("div", { className: PromoSplit_module_default.mediaPlaceholder, children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: PromoSplit_module_default.placeholderCircle, children: /* @__PURE__ */ jsxRuntime.jsxs("svg", { width: "32", height: "32", viewBox: "0 0 24 24", fill: "none", stroke: "var(--fg-muted)", strokeWidth: "1.5", strokeLinecap: "round", strokeLinejoin: "round", children: [
|
|
2060
2572
|
/* @__PURE__ */ jsxRuntime.jsx("rect", { x: "3", y: "3", width: "18", height: "18", rx: "2" }),
|
|
2061
2573
|
/* @__PURE__ */ jsxRuntime.jsx("circle", { cx: "8.5", cy: "8.5", r: "1.5" }),
|
|
2062
2574
|
/* @__PURE__ */ jsxRuntime.jsx("path", { d: "m21 15-5-5L5 21" })
|
|
2063
2575
|
] }) }) }) }) })
|
|
2064
2576
|
] }) });
|
|
2065
2577
|
}
|
|
2578
|
+
|
|
2579
|
+
// src/organisms/PromoTrustGrid.module.scss
|
|
2580
|
+
var PromoTrustGrid_module_default = {
|
|
2581
|
+
root: "PromoTrustGrid_module_root",
|
|
2582
|
+
heading: "PromoTrustGrid_module_heading",
|
|
2583
|
+
headingText: "PromoTrustGrid_module_headingText",
|
|
2584
|
+
grid: "PromoTrustGrid_module_grid",
|
|
2585
|
+
featureCard: "PromoTrustGrid_module_featureCard",
|
|
2586
|
+
featureIcon: "PromoTrustGrid_module_featureIcon",
|
|
2587
|
+
featureTitle: "PromoTrustGrid_module_featureTitle",
|
|
2588
|
+
featureDescription: "PromoTrustGrid_module_featureDescription",
|
|
2589
|
+
media: "PromoTrustGrid_module_media",
|
|
2590
|
+
mediaInner: "PromoTrustGrid_module_mediaInner"
|
|
2591
|
+
};
|
|
2066
2592
|
function PromoTrustGrid({ heading, features, media, className = "" }) {
|
|
2067
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: `
|
|
2068
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { className:
|
|
2069
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { className:
|
|
2070
|
-
"div",
|
|
2071
|
-
{
|
|
2072
|
-
|
|
2073
|
-
|
|
2074
|
-
|
|
2075
|
-
/* @__PURE__ */ jsxRuntime.jsx("h3", { className: "text-base font-semibold text-[var(--fg)] leading-snug", children: feature.title }),
|
|
2076
|
-
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-sm text-[var(--fg-secondary)] leading-relaxed", children: feature.description })
|
|
2077
|
-
]
|
|
2078
|
-
},
|
|
2079
|
-
i
|
|
2080
|
-
)) }),
|
|
2081
|
-
media && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "relative rounded-[clamp(16px,2vw,32px)] bg-[var(--bg-secondary)] border border-[var(--border-color)] overflow-hidden min-h-[280px] md:min-h-[420px]", children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "absolute inset-0 flex items-center justify-center p-6", children: media }) })
|
|
2593
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: `${PromoTrustGrid_module_default.root}${className ? ` ${className}` : ""}`, children: [
|
|
2594
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: PromoTrustGrid_module_default.heading, children: /* @__PURE__ */ jsxRuntime.jsx("h2", { className: PromoTrustGrid_module_default.headingText, children: heading }) }),
|
|
2595
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: PromoTrustGrid_module_default.grid, children: features.map((feature, i) => /* @__PURE__ */ jsxRuntime.jsxs("div", { className: PromoTrustGrid_module_default.featureCard, children: [
|
|
2596
|
+
feature.icon && /* @__PURE__ */ jsxRuntime.jsx("div", { className: PromoTrustGrid_module_default.featureIcon, children: feature.icon }),
|
|
2597
|
+
/* @__PURE__ */ jsxRuntime.jsx("h3", { className: PromoTrustGrid_module_default.featureTitle, children: feature.title }),
|
|
2598
|
+
/* @__PURE__ */ jsxRuntime.jsx("p", { className: PromoTrustGrid_module_default.featureDescription, children: feature.description })
|
|
2599
|
+
] }, i)) }),
|
|
2600
|
+
media && /* @__PURE__ */ jsxRuntime.jsx("div", { className: PromoTrustGrid_module_default.media, children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: PromoTrustGrid_module_default.mediaInner, children: media }) })
|
|
2082
2601
|
] });
|
|
2083
2602
|
}
|
|
2603
|
+
|
|
2604
|
+
// src/organisms/PromoDevicesCTA.module.scss
|
|
2605
|
+
var PromoDevicesCTA_module_default = {
|
|
2606
|
+
root: "PromoDevicesCTA_module_root",
|
|
2607
|
+
textBlock: "PromoDevicesCTA_module_textBlock",
|
|
2608
|
+
heading: "PromoDevicesCTA_module_heading",
|
|
2609
|
+
description: "PromoDevicesCTA_module_description",
|
|
2610
|
+
ctaWrap: "PromoDevicesCTA_module_ctaWrap",
|
|
2611
|
+
devices: "PromoDevicesCTA_module_devices",
|
|
2612
|
+
laptop: "PromoDevicesCTA_module_laptop",
|
|
2613
|
+
laptopScreen: "PromoDevicesCTA_module_laptopScreen",
|
|
2614
|
+
laptopScreenInner: "PromoDevicesCTA_module_laptopScreenInner",
|
|
2615
|
+
laptopHinge: "PromoDevicesCTA_module_laptopHinge",
|
|
2616
|
+
laptopBase: "PromoDevicesCTA_module_laptopBase",
|
|
2617
|
+
tablet: "PromoDevicesCTA_module_tablet",
|
|
2618
|
+
tabletShell: "PromoDevicesCTA_module_tabletShell",
|
|
2619
|
+
tabletScreen: "PromoDevicesCTA_module_tabletScreen",
|
|
2620
|
+
phone: "PromoDevicesCTA_module_phone",
|
|
2621
|
+
phoneShell: "PromoDevicesCTA_module_phoneShell",
|
|
2622
|
+
phoneNotch: "PromoDevicesCTA_module_phoneNotch",
|
|
2623
|
+
phoneScreen: "PromoDevicesCTA_module_phoneScreen"
|
|
2624
|
+
};
|
|
2084
2625
|
function PromoDevicesCTA({
|
|
2085
2626
|
heading,
|
|
2086
2627
|
description,
|
|
2087
2628
|
cta,
|
|
2088
2629
|
className = ""
|
|
2089
2630
|
}) {
|
|
2090
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: `
|
|
2091
|
-
/* @__PURE__ */ jsxRuntime.jsxs("div", { className:
|
|
2092
|
-
/* @__PURE__ */ jsxRuntime.jsx("h2", { className:
|
|
2093
|
-
description && /* @__PURE__ */ jsxRuntime.jsx("p", { className:
|
|
2094
|
-
cta && /* @__PURE__ */ jsxRuntime.jsx("div", { className:
|
|
2631
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: `${PromoDevicesCTA_module_default.root}${className ? ` ${className}` : ""}`, children: [
|
|
2632
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: PromoDevicesCTA_module_default.textBlock, children: [
|
|
2633
|
+
/* @__PURE__ */ jsxRuntime.jsx("h2", { className: PromoDevicesCTA_module_default.heading, children: heading }),
|
|
2634
|
+
description && /* @__PURE__ */ jsxRuntime.jsx("p", { className: PromoDevicesCTA_module_default.description, children: description }),
|
|
2635
|
+
cta && /* @__PURE__ */ jsxRuntime.jsx("div", { className: PromoDevicesCTA_module_default.ctaWrap, children: /* @__PURE__ */ jsxRuntime.jsx(Button, { variant: "primary", onClick: cta.onClick, children: cta.label }) })
|
|
2095
2636
|
] }),
|
|
2096
|
-
/* @__PURE__ */ jsxRuntime.jsxs("div", { className:
|
|
2097
|
-
/* @__PURE__ */ jsxRuntime.jsxs("div", { className:
|
|
2098
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { className:
|
|
2099
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { className:
|
|
2100
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { className:
|
|
2637
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: PromoDevicesCTA_module_default.devices, children: [
|
|
2638
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: PromoDevicesCTA_module_default.laptop, children: [
|
|
2639
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: PromoDevicesCTA_module_default.laptopScreen, children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: PromoDevicesCTA_module_default.laptopScreenInner }) }),
|
|
2640
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: PromoDevicesCTA_module_default.laptopHinge }),
|
|
2641
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: PromoDevicesCTA_module_default.laptopBase })
|
|
2101
2642
|
] }),
|
|
2102
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { className:
|
|
2103
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { className:
|
|
2104
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { className:
|
|
2105
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { className:
|
|
2643
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: PromoDevicesCTA_module_default.tablet, children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: PromoDevicesCTA_module_default.tabletShell, children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: PromoDevicesCTA_module_default.tabletScreen }) }) }),
|
|
2644
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: PromoDevicesCTA_module_default.phone, children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: PromoDevicesCTA_module_default.phoneShell, children: [
|
|
2645
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: PromoDevicesCTA_module_default.phoneNotch }),
|
|
2646
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: PromoDevicesCTA_module_default.phoneScreen })
|
|
2106
2647
|
] }) })
|
|
2107
2648
|
] })
|
|
2108
2649
|
] });
|
|
2109
2650
|
}
|
|
2651
|
+
|
|
2652
|
+
// src/organisms/PromoTestimonials.module.scss
|
|
2653
|
+
var PromoTestimonials_module_default = {
|
|
2654
|
+
root: "PromoTestimonials_module_root",
|
|
2655
|
+
wrapper: "PromoTestimonials_module_wrapper",
|
|
2656
|
+
avatarSection: "PromoTestimonials_module_avatarSection",
|
|
2657
|
+
avatarStack: "PromoTestimonials_module_avatarStack",
|
|
2658
|
+
avatarRing: "PromoTestimonials_module_avatarRing",
|
|
2659
|
+
overflowBadge: "PromoTestimonials_module_overflowBadge",
|
|
2660
|
+
overflowCircle: "PromoTestimonials_module_overflowCircle",
|
|
2661
|
+
headingSection: "PromoTestimonials_module_headingSection",
|
|
2662
|
+
heading: "PromoTestimonials_module_heading",
|
|
2663
|
+
subtitle: "PromoTestimonials_module_subtitle",
|
|
2664
|
+
cardsSection: "PromoTestimonials_module_cardsSection",
|
|
2665
|
+
cardsGrid: "PromoTestimonials_module_cardsGrid",
|
|
2666
|
+
card: "PromoTestimonials_module_card",
|
|
2667
|
+
quote: "PromoTestimonials_module_quote",
|
|
2668
|
+
author: "PromoTestimonials_module_author",
|
|
2669
|
+
authorName: "PromoTestimonials_module_authorName",
|
|
2670
|
+
authorRole: "PromoTestimonials_module_authorRole",
|
|
2671
|
+
mediaSection: "PromoTestimonials_module_mediaSection",
|
|
2672
|
+
mediaBox: "PromoTestimonials_module_mediaBox"
|
|
2673
|
+
};
|
|
2110
2674
|
function PromoTestimonials({
|
|
2111
2675
|
heading,
|
|
2112
2676
|
subtitle,
|
|
@@ -2114,14 +2678,14 @@ function PromoTestimonials({
|
|
|
2114
2678
|
media,
|
|
2115
2679
|
className = ""
|
|
2116
2680
|
}) {
|
|
2117
|
-
return /* @__PURE__ */ jsxRuntime.jsx("section", { className: `
|
|
2118
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { className:
|
|
2681
|
+
return /* @__PURE__ */ jsxRuntime.jsx("section", { className: `${PromoTestimonials_module_default.root}${className ? ` ${className}` : ""}`, children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: PromoTestimonials_module_default.wrapper, children: [
|
|
2682
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: PromoTestimonials_module_default.avatarSection, children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: PromoTestimonials_module_default.avatarStack, children: [
|
|
2119
2683
|
testimonials.slice(0, 5).map((t, i) => {
|
|
2120
2684
|
const initials = t.name.split(" ").map((n) => n[0]).join("").toUpperCase();
|
|
2121
2685
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
2122
2686
|
"div",
|
|
2123
2687
|
{
|
|
2124
|
-
className:
|
|
2688
|
+
className: PromoTestimonials_module_default.avatarRing,
|
|
2125
2689
|
style: { zIndex: 10 - i },
|
|
2126
2690
|
children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
2127
2691
|
Avatar,
|
|
@@ -2135,32 +2699,32 @@ function PromoTestimonials({
|
|
|
2135
2699
|
i
|
|
2136
2700
|
);
|
|
2137
2701
|
}),
|
|
2138
|
-
testimonials.length > 5 && /* @__PURE__ */ jsxRuntime.jsx("div", { className:
|
|
2702
|
+
testimonials.length > 5 && /* @__PURE__ */ jsxRuntime.jsx("div", { className: PromoTestimonials_module_default.overflowBadge, children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: PromoTestimonials_module_default.overflowCircle, children: [
|
|
2139
2703
|
"+",
|
|
2140
2704
|
testimonials.length - 5
|
|
2141
2705
|
] }) })
|
|
2142
2706
|
] }) }),
|
|
2143
|
-
/* @__PURE__ */ jsxRuntime.jsxs("div", { className:
|
|
2144
|
-
/* @__PURE__ */ jsxRuntime.jsx("h2", { className:
|
|
2145
|
-
subtitle && /* @__PURE__ */ jsxRuntime.jsx("p", { className:
|
|
2707
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: PromoTestimonials_module_default.headingSection, children: [
|
|
2708
|
+
/* @__PURE__ */ jsxRuntime.jsx("h2", { className: PromoTestimonials_module_default.heading, children: heading }),
|
|
2709
|
+
subtitle && /* @__PURE__ */ jsxRuntime.jsx("p", { className: PromoTestimonials_module_default.subtitle, children: subtitle })
|
|
2146
2710
|
] }),
|
|
2147
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { className:
|
|
2711
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: PromoTestimonials_module_default.cardsSection, children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: PromoTestimonials_module_default.cardsGrid, children: testimonials.map((t, i) => {
|
|
2148
2712
|
const initials = t.name.split(" ").map((n) => n[0]).join("").toUpperCase();
|
|
2149
2713
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
2150
2714
|
"div",
|
|
2151
2715
|
{
|
|
2152
|
-
className:
|
|
2716
|
+
className: PromoTestimonials_module_default.card,
|
|
2153
2717
|
children: [
|
|
2154
|
-
/* @__PURE__ */ jsxRuntime.jsxs("p", { className:
|
|
2718
|
+
/* @__PURE__ */ jsxRuntime.jsxs("p", { className: PromoTestimonials_module_default.quote, children: [
|
|
2155
2719
|
"\u201C",
|
|
2156
2720
|
t.quote,
|
|
2157
2721
|
"\u201D"
|
|
2158
2722
|
] }),
|
|
2159
|
-
/* @__PURE__ */ jsxRuntime.jsxs("div", { className:
|
|
2723
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: PromoTestimonials_module_default.author, children: [
|
|
2160
2724
|
/* @__PURE__ */ jsxRuntime.jsx(Avatar, { size: "sm", src: t.avatarSrc, initials }),
|
|
2161
2725
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { children: [
|
|
2162
|
-
/* @__PURE__ */ jsxRuntime.jsx("p", { className:
|
|
2163
|
-
/* @__PURE__ */ jsxRuntime.jsx("p", { className:
|
|
2726
|
+
/* @__PURE__ */ jsxRuntime.jsx("p", { className: PromoTestimonials_module_default.authorName, children: t.name }),
|
|
2727
|
+
/* @__PURE__ */ jsxRuntime.jsx("p", { className: PromoTestimonials_module_default.authorRole, children: t.role })
|
|
2164
2728
|
] })
|
|
2165
2729
|
] })
|
|
2166
2730
|
]
|
|
@@ -2168,9 +2732,30 @@ function PromoTestimonials({
|
|
|
2168
2732
|
i
|
|
2169
2733
|
);
|
|
2170
2734
|
}) }) }),
|
|
2171
|
-
media && /* @__PURE__ */ jsxRuntime.jsx("div", { className:
|
|
2735
|
+
media && /* @__PURE__ */ jsxRuntime.jsx("div", { className: PromoTestimonials_module_default.mediaSection, children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: PromoTestimonials_module_default.mediaBox, children: media }) })
|
|
2172
2736
|
] }) });
|
|
2173
2737
|
}
|
|
2738
|
+
|
|
2739
|
+
// src/organisms/PromoHero.module.scss
|
|
2740
|
+
var PromoHero_module_default = {
|
|
2741
|
+
root: "PromoHero_module_root",
|
|
2742
|
+
dark: "PromoHero_module_dark",
|
|
2743
|
+
light: "PromoHero_module_light",
|
|
2744
|
+
gradient: "PromoHero_module_gradient",
|
|
2745
|
+
glowLayer: "PromoHero_module_glowLayer",
|
|
2746
|
+
glowTop: "PromoHero_module_glowTop",
|
|
2747
|
+
glowBottom: "PromoHero_module_glowBottom",
|
|
2748
|
+
inner: "PromoHero_module_inner",
|
|
2749
|
+
textColumn: "PromoHero_module_textColumn",
|
|
2750
|
+
title: "PromoHero_module_title",
|
|
2751
|
+
subtitle: "PromoHero_module_subtitle",
|
|
2752
|
+
subtitleDark: "PromoHero_module_subtitleDark",
|
|
2753
|
+
subtitleLight: "PromoHero_module_subtitleLight",
|
|
2754
|
+
actions: "PromoHero_module_actions",
|
|
2755
|
+
ctaDark: "PromoHero_module_ctaDark",
|
|
2756
|
+
ghostDark: "PromoHero_module_ghostDark",
|
|
2757
|
+
mediaColumn: "PromoHero_module_mediaColumn"
|
|
2758
|
+
};
|
|
2174
2759
|
function PromoHero({
|
|
2175
2760
|
title,
|
|
2176
2761
|
subtitle,
|
|
@@ -2180,36 +2765,29 @@ function PromoHero({
|
|
|
2180
2765
|
variant = "dark",
|
|
2181
2766
|
className = ""
|
|
2182
2767
|
}) {
|
|
2183
|
-
const
|
|
2184
|
-
|
|
2185
|
-
|
|
2186
|
-
gradient: "bg-gradient-to-br from-[var(--neutral-900)] via-[var(--neutral-800)] to-[var(--neutral-700)] text-white"
|
|
2187
|
-
};
|
|
2188
|
-
const subtitleColor = {
|
|
2189
|
-
dark: "text-white/70",
|
|
2190
|
-
light: "text-[var(--fg-secondary)]",
|
|
2191
|
-
gradient: "text-white/70"
|
|
2192
|
-
};
|
|
2768
|
+
const variantClass = variant === "dark" ? PromoHero_module_default.dark : variant === "gradient" ? PromoHero_module_default.gradient : PromoHero_module_default.light;
|
|
2769
|
+
const subtitleClass = variant === "light" ? PromoHero_module_default.subtitleLight : PromoHero_module_default.subtitleDark;
|
|
2770
|
+
const isLight = variant === "light";
|
|
2193
2771
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
2194
2772
|
"section",
|
|
2195
2773
|
{
|
|
2196
|
-
className:
|
|
2774
|
+
className: `${PromoHero_module_default.root} ${variantClass}${className ? ` ${className}` : ""}`,
|
|
2197
2775
|
children: [
|
|
2198
|
-
|
|
2199
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { className:
|
|
2200
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { className:
|
|
2776
|
+
!isLight && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: PromoHero_module_default.glowLayer, "aria-hidden": "true", children: [
|
|
2777
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: PromoHero_module_default.glowTop }),
|
|
2778
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: PromoHero_module_default.glowBottom })
|
|
2201
2779
|
] }),
|
|
2202
|
-
/* @__PURE__ */ jsxRuntime.jsxs("div", { className:
|
|
2203
|
-
/* @__PURE__ */ jsxRuntime.jsxs("div", { className:
|
|
2204
|
-
/* @__PURE__ */ jsxRuntime.jsx("h1", { className:
|
|
2205
|
-
subtitle && /* @__PURE__ */ jsxRuntime.jsx("p", { className:
|
|
2206
|
-
(cta || secondaryCta) && /* @__PURE__ */ jsxRuntime.jsxs("div", { className:
|
|
2780
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: PromoHero_module_default.inner, children: [
|
|
2781
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: PromoHero_module_default.textColumn, children: [
|
|
2782
|
+
/* @__PURE__ */ jsxRuntime.jsx("h1", { className: PromoHero_module_default.title, children: title }),
|
|
2783
|
+
subtitle && /* @__PURE__ */ jsxRuntime.jsx("p", { className: `${PromoHero_module_default.subtitle} ${subtitleClass}`, children: subtitle }),
|
|
2784
|
+
(cta || secondaryCta) && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: PromoHero_module_default.actions, children: [
|
|
2207
2785
|
cta && /* @__PURE__ */ jsxRuntime.jsx(
|
|
2208
2786
|
Button,
|
|
2209
2787
|
{
|
|
2210
|
-
variant:
|
|
2788
|
+
variant: isLight ? "primary" : "outline",
|
|
2211
2789
|
onClick: cta.onClick,
|
|
2212
|
-
className:
|
|
2790
|
+
className: !isLight ? PromoHero_module_default.ctaDark : "",
|
|
2213
2791
|
children: cta.label
|
|
2214
2792
|
}
|
|
2215
2793
|
),
|
|
@@ -2218,18 +2796,65 @@ function PromoHero({
|
|
|
2218
2796
|
{
|
|
2219
2797
|
variant: "ghost",
|
|
2220
2798
|
onClick: secondaryCta.onClick,
|
|
2221
|
-
className:
|
|
2799
|
+
className: !isLight ? PromoHero_module_default.ghostDark : "",
|
|
2222
2800
|
children: secondaryCta.label
|
|
2223
2801
|
}
|
|
2224
2802
|
)
|
|
2225
2803
|
] })
|
|
2226
2804
|
] }),
|
|
2227
|
-
media && /* @__PURE__ */ jsxRuntime.jsx("div", { className:
|
|
2805
|
+
media && /* @__PURE__ */ jsxRuntime.jsx("div", { className: PromoHero_module_default.mediaColumn, children: media })
|
|
2228
2806
|
] })
|
|
2229
2807
|
]
|
|
2230
2808
|
}
|
|
2231
2809
|
);
|
|
2232
2810
|
}
|
|
2811
|
+
|
|
2812
|
+
// src/organisms/PromoPricing.module.scss
|
|
2813
|
+
var PromoPricing_module_default = {
|
|
2814
|
+
root: "PromoPricing_module_root",
|
|
2815
|
+
dark: "PromoPricing_module_dark",
|
|
2816
|
+
light: "PromoPricing_module_light",
|
|
2817
|
+
headingSection: "PromoPricing_module_headingSection",
|
|
2818
|
+
heading: "PromoPricing_module_heading",
|
|
2819
|
+
headingDark: "PromoPricing_module_headingDark",
|
|
2820
|
+
headingLight: "PromoPricing_module_headingLight",
|
|
2821
|
+
subtitle: "PromoPricing_module_subtitle",
|
|
2822
|
+
subtitleDark: "PromoPricing_module_subtitleDark",
|
|
2823
|
+
subtitleLight: "PromoPricing_module_subtitleLight",
|
|
2824
|
+
tiersGrid: "PromoPricing_module_tiersGrid",
|
|
2825
|
+
tierDefault: "PromoPricing_module_tierCard PromoPricing_module_tierDefault",
|
|
2826
|
+
tierHighlighted: "PromoPricing_module_tierCard PromoPricing_module_tierHighlighted",
|
|
2827
|
+
tierDark: "PromoPricing_module_tierCard PromoPricing_module_tierDark",
|
|
2828
|
+
tierDarkHighlighted: "PromoPricing_module_tierCard PromoPricing_module_tierDarkHighlighted",
|
|
2829
|
+
tierName: "PromoPricing_module_tierName",
|
|
2830
|
+
tierNameMuted: "PromoPricing_module_tierNameMuted",
|
|
2831
|
+
tierNameDark: "PromoPricing_module_tierNameDark",
|
|
2832
|
+
tierNameHighlightedLight: "PromoPricing_module_tierNameHighlightedLight",
|
|
2833
|
+
tierNameHighlightedDark: "PromoPricing_module_tierNameHighlightedDark",
|
|
2834
|
+
price: "PromoPricing_module_price",
|
|
2835
|
+
period: "PromoPricing_module_period",
|
|
2836
|
+
periodMuted: "PromoPricing_module_periodMuted",
|
|
2837
|
+
periodDark: "PromoPricing_module_periodDark",
|
|
2838
|
+
periodHighlightedLight: "PromoPricing_module_periodHighlightedLight",
|
|
2839
|
+
periodHighlightedDark: "PromoPricing_module_periodHighlightedDark",
|
|
2840
|
+
tierDesc: "PromoPricing_module_tierDesc",
|
|
2841
|
+
tierDescMuted: "PromoPricing_module_tierDescMuted",
|
|
2842
|
+
tierDescDark: "PromoPricing_module_tierDescDark",
|
|
2843
|
+
tierDescHighlightedLight: "PromoPricing_module_tierDescHighlightedLight",
|
|
2844
|
+
tierDescHighlightedDark: "PromoPricing_module_tierDescHighlightedDark",
|
|
2845
|
+
featureList: "PromoPricing_module_featureList",
|
|
2846
|
+
featureItem: "PromoPricing_module_featureItem",
|
|
2847
|
+
checkIcon: "PromoPricing_module_checkIcon",
|
|
2848
|
+
checkDefault: "PromoPricing_module_checkDefault",
|
|
2849
|
+
checkDark: "PromoPricing_module_checkDark",
|
|
2850
|
+
checkHighlightedLight: "PromoPricing_module_checkHighlightedLight",
|
|
2851
|
+
checkHighlightedDark: "PromoPricing_module_checkHighlightedDark",
|
|
2852
|
+
featureTextMuted: "PromoPricing_module_featureTextMuted",
|
|
2853
|
+
featureTextDark: "PromoPricing_module_featureTextDark",
|
|
2854
|
+
featureTextHighlightedLight: "PromoPricing_module_featureTextHighlightedLight",
|
|
2855
|
+
featureTextHighlightedDark: "PromoPricing_module_featureTextHighlightedDark",
|
|
2856
|
+
ctaWrap: "PromoPricing_module_ctaWrap"
|
|
2857
|
+
};
|
|
2233
2858
|
function PromoPricing({
|
|
2234
2859
|
heading,
|
|
2235
2860
|
subtitle,
|
|
@@ -2238,39 +2863,51 @@ function PromoPricing({
|
|
|
2238
2863
|
className = ""
|
|
2239
2864
|
}) {
|
|
2240
2865
|
const isDark = variant === "dark";
|
|
2866
|
+
const getTierClass = (highlighted) => {
|
|
2867
|
+
if (highlighted) return isDark ? PromoPricing_module_default.tierDarkHighlighted : PromoPricing_module_default.tierHighlighted;
|
|
2868
|
+
return isDark ? PromoPricing_module_default.tierDark : PromoPricing_module_default.tierDefault;
|
|
2869
|
+
};
|
|
2870
|
+
const getNameClass = (highlighted) => {
|
|
2871
|
+
if (highlighted) return isDark ? PromoPricing_module_default.tierNameHighlightedDark : PromoPricing_module_default.tierNameHighlightedLight;
|
|
2872
|
+
return isDark ? PromoPricing_module_default.tierNameDark : PromoPricing_module_default.tierNameMuted;
|
|
2873
|
+
};
|
|
2874
|
+
const getPeriodClass = (highlighted) => {
|
|
2875
|
+
if (highlighted) return isDark ? PromoPricing_module_default.periodHighlightedDark : PromoPricing_module_default.periodHighlightedLight;
|
|
2876
|
+
return isDark ? PromoPricing_module_default.periodDark : PromoPricing_module_default.periodMuted;
|
|
2877
|
+
};
|
|
2878
|
+
const getDescClass = (highlighted) => {
|
|
2879
|
+
if (highlighted) return isDark ? PromoPricing_module_default.tierDescHighlightedDark : PromoPricing_module_default.tierDescHighlightedLight;
|
|
2880
|
+
return isDark ? PromoPricing_module_default.tierDescDark : PromoPricing_module_default.tierDescMuted;
|
|
2881
|
+
};
|
|
2882
|
+
const getCheckClass = (highlighted) => {
|
|
2883
|
+
if (highlighted) return isDark ? PromoPricing_module_default.checkHighlightedDark : PromoPricing_module_default.checkHighlightedLight;
|
|
2884
|
+
return isDark ? PromoPricing_module_default.checkDark : PromoPricing_module_default.checkDefault;
|
|
2885
|
+
};
|
|
2886
|
+
const getFeatureTextClass = (highlighted) => {
|
|
2887
|
+
if (highlighted) return isDark ? PromoPricing_module_default.featureTextHighlightedDark : PromoPricing_module_default.featureTextHighlightedLight;
|
|
2888
|
+
return isDark ? PromoPricing_module_default.featureTextDark : PromoPricing_module_default.featureTextMuted;
|
|
2889
|
+
};
|
|
2241
2890
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
2242
2891
|
"section",
|
|
2243
2892
|
{
|
|
2244
|
-
className:
|
|
2893
|
+
className: `${PromoPricing_module_default.root} ${isDark ? PromoPricing_module_default.dark : PromoPricing_module_default.light}${className ? ` ${className}` : ""}`,
|
|
2245
2894
|
children: [
|
|
2246
|
-
/* @__PURE__ */ jsxRuntime.jsxs("div", { className:
|
|
2247
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
2248
|
-
|
|
2249
|
-
{
|
|
2250
|
-
className: `text-[clamp(2rem,5vw,4.75rem)] font-bold leading-[0.95] tracking-[-0.04em] text-balance ${isDark ? "text-white" : "text-[var(--fg)]"}`,
|
|
2251
|
-
children: heading
|
|
2252
|
-
}
|
|
2253
|
-
),
|
|
2254
|
-
subtitle && /* @__PURE__ */ jsxRuntime.jsx("p", { className: `mt-4 text-base md:text-lg leading-relaxed ${isDark ? "text-white/60" : "text-[var(--fg-secondary)]"}`, children: subtitle })
|
|
2895
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: PromoPricing_module_default.headingSection, children: [
|
|
2896
|
+
/* @__PURE__ */ jsxRuntime.jsx("h2", { className: `${PromoPricing_module_default.heading} ${isDark ? PromoPricing_module_default.headingDark : PromoPricing_module_default.headingLight}`, children: heading }),
|
|
2897
|
+
subtitle && /* @__PURE__ */ jsxRuntime.jsx("p", { className: `${PromoPricing_module_default.subtitle} ${isDark ? PromoPricing_module_default.subtitleDark : PromoPricing_module_default.subtitleLight}`, children: subtitle })
|
|
2255
2898
|
] }),
|
|
2256
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { className:
|
|
2899
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: PromoPricing_module_default.tiersGrid, children: tiers.map((tier, i) => /* @__PURE__ */ jsxRuntime.jsxs(
|
|
2257
2900
|
"div",
|
|
2258
2901
|
{
|
|
2259
|
-
className:
|
|
2902
|
+
className: getTierClass(tier.highlighted),
|
|
2260
2903
|
children: [
|
|
2261
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { className:
|
|
2262
|
-
|
|
2263
|
-
{
|
|
2264
|
-
|
|
2265
|
-
children: tier.name
|
|
2266
|
-
}
|
|
2267
|
-
) }),
|
|
2268
|
-
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "mb-2", children: [
|
|
2269
|
-
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-4xl md:text-5xl font-bold tracking-[-0.03em]", children: tier.price }),
|
|
2270
|
-
tier.period && /* @__PURE__ */ jsxRuntime.jsx("span", { className: `text-sm ml-1 ${tier.highlighted ? isDark ? "text-[var(--neutral-500)]" : "text-[var(--bg)]/50" : isDark ? "text-white/40" : "text-[var(--fg-muted)]"}`, children: tier.period })
|
|
2904
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: PromoPricing_module_default.tierName, children: /* @__PURE__ */ jsxRuntime.jsx("h3", { className: getNameClass(tier.highlighted), children: tier.name }) }),
|
|
2905
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: PromoPricing_module_default.price, children: [
|
|
2906
|
+
/* @__PURE__ */ jsxRuntime.jsx("span", { children: tier.price }),
|
|
2907
|
+
tier.period && /* @__PURE__ */ jsxRuntime.jsx("span", { className: `${PromoPricing_module_default.period} ${getPeriodClass(tier.highlighted)}`, children: tier.period })
|
|
2271
2908
|
] }),
|
|
2272
|
-
tier.description && /* @__PURE__ */ jsxRuntime.jsx("p", { className:
|
|
2273
|
-
/* @__PURE__ */ jsxRuntime.jsx("ul", { className:
|
|
2909
|
+
tier.description && /* @__PURE__ */ jsxRuntime.jsx("p", { className: `${PromoPricing_module_default.tierDesc} ${getDescClass(tier.highlighted)}`, children: tier.description }),
|
|
2910
|
+
/* @__PURE__ */ jsxRuntime.jsx("ul", { className: PromoPricing_module_default.featureList, children: tier.features.map((feature, fi) => /* @__PURE__ */ jsxRuntime.jsxs("li", { className: PromoPricing_module_default.featureItem, children: [
|
|
2274
2911
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
2275
2912
|
"svg",
|
|
2276
2913
|
{
|
|
@@ -2278,13 +2915,13 @@ function PromoPricing({
|
|
|
2278
2915
|
height: "16",
|
|
2279
2916
|
viewBox: "0 0 16 16",
|
|
2280
2917
|
fill: "none",
|
|
2281
|
-
className:
|
|
2918
|
+
className: `${PromoPricing_module_default.checkIcon} ${getCheckClass(tier.highlighted)}`,
|
|
2282
2919
|
children: /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M3.5 8.5L6.5 11.5L12.5 4.5", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round", strokeLinejoin: "round" })
|
|
2283
2920
|
}
|
|
2284
2921
|
),
|
|
2285
|
-
/* @__PURE__ */ jsxRuntime.jsx("span", { className:
|
|
2922
|
+
/* @__PURE__ */ jsxRuntime.jsx("span", { className: getFeatureTextClass(tier.highlighted), children: feature })
|
|
2286
2923
|
] }, fi)) }),
|
|
2287
|
-
tier.cta && /* @__PURE__ */ jsxRuntime.jsx("div", { className:
|
|
2924
|
+
tier.cta && /* @__PURE__ */ jsxRuntime.jsx("div", { className: PromoPricing_module_default.ctaWrap, children: tier.cta })
|
|
2288
2925
|
]
|
|
2289
2926
|
},
|
|
2290
2927
|
i
|
|
@@ -2293,6 +2930,24 @@ function PromoPricing({
|
|
|
2293
2930
|
}
|
|
2294
2931
|
);
|
|
2295
2932
|
}
|
|
2933
|
+
|
|
2934
|
+
// src/organisms/PromoActionCards.module.scss
|
|
2935
|
+
var PromoActionCards_module_default = {
|
|
2936
|
+
root: "PromoActionCards_module_root",
|
|
2937
|
+
header: "PromoActionCards_module_header",
|
|
2938
|
+
heading: "PromoActionCards_module_heading",
|
|
2939
|
+
subtitle: "PromoActionCards_module_subtitle",
|
|
2940
|
+
grid2: "PromoActionCards_module_grid PromoActionCards_module_grid2",
|
|
2941
|
+
grid3: "PromoActionCards_module_grid PromoActionCards_module_grid3",
|
|
2942
|
+
card: "PromoActionCards_module_card",
|
|
2943
|
+
cardContent: "PromoActionCards_module_cardContent",
|
|
2944
|
+
cardTitle: "PromoActionCards_module_cardTitle",
|
|
2945
|
+
cardDesc: "PromoActionCards_module_cardDesc",
|
|
2946
|
+
cardFooter: "PromoActionCards_module_cardFooter",
|
|
2947
|
+
iconGroup: "PromoActionCards_module_iconGroup",
|
|
2948
|
+
iconCircle: "PromoActionCards_module_iconCircle",
|
|
2949
|
+
ctaBtn: "PromoActionCards_module_ctaBtn"
|
|
2950
|
+
};
|
|
2296
2951
|
function PromoActionCards({
|
|
2297
2952
|
heading,
|
|
2298
2953
|
subtitle,
|
|
@@ -2300,28 +2955,28 @@ function PromoActionCards({
|
|
|
2300
2955
|
columns = 3,
|
|
2301
2956
|
className = ""
|
|
2302
2957
|
}) {
|
|
2303
|
-
const
|
|
2304
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: `
|
|
2305
|
-
/* @__PURE__ */ jsxRuntime.jsxs("div", { className:
|
|
2306
|
-
/* @__PURE__ */ jsxRuntime.jsx("h2", { className:
|
|
2307
|
-
subtitle && /* @__PURE__ */ jsxRuntime.jsx("p", { className:
|
|
2958
|
+
const gridClass = columns === 2 ? PromoActionCards_module_default.grid2 : PromoActionCards_module_default.grid3;
|
|
2959
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: `${PromoActionCards_module_default.root}${className ? ` ${className}` : ""}`, children: [
|
|
2960
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: PromoActionCards_module_default.header, children: [
|
|
2961
|
+
/* @__PURE__ */ jsxRuntime.jsx("h2", { className: PromoActionCards_module_default.heading, children: heading }),
|
|
2962
|
+
subtitle && /* @__PURE__ */ jsxRuntime.jsx("p", { className: PromoActionCards_module_default.subtitle, children: subtitle })
|
|
2308
2963
|
] }),
|
|
2309
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { className:
|
|
2964
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: gridClass, children: cards.map((card, i) => {
|
|
2310
2965
|
var _a;
|
|
2311
2966
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
2312
2967
|
"div",
|
|
2313
2968
|
{
|
|
2314
|
-
className:
|
|
2969
|
+
className: PromoActionCards_module_default.card,
|
|
2315
2970
|
children: [
|
|
2316
|
-
/* @__PURE__ */ jsxRuntime.jsxs("div", { className:
|
|
2317
|
-
/* @__PURE__ */ jsxRuntime.jsx("h3", { className:
|
|
2318
|
-
/* @__PURE__ */ jsxRuntime.jsx("p", { className:
|
|
2971
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: PromoActionCards_module_default.cardContent, children: [
|
|
2972
|
+
/* @__PURE__ */ jsxRuntime.jsx("h3", { className: PromoActionCards_module_default.cardTitle, children: card.title }),
|
|
2973
|
+
/* @__PURE__ */ jsxRuntime.jsx("p", { className: PromoActionCards_module_default.cardDesc, children: card.description })
|
|
2319
2974
|
] }),
|
|
2320
|
-
/* @__PURE__ */ jsxRuntime.jsxs("div", { className:
|
|
2321
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { className:
|
|
2975
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: PromoActionCards_module_default.cardFooter, children: [
|
|
2976
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: PromoActionCards_module_default.iconGroup, children: (_a = card.icons) == null ? void 0 : _a.map((icon, ii) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
2322
2977
|
"span",
|
|
2323
2978
|
{
|
|
2324
|
-
className:
|
|
2979
|
+
className: PromoActionCards_module_default.iconCircle,
|
|
2325
2980
|
children: icon
|
|
2326
2981
|
},
|
|
2327
2982
|
ii
|
|
@@ -2330,7 +2985,7 @@ function PromoActionCards({
|
|
|
2330
2985
|
"button",
|
|
2331
2986
|
{
|
|
2332
2987
|
onClick: card.cta.onClick,
|
|
2333
|
-
className:
|
|
2988
|
+
className: PromoActionCards_module_default.ctaBtn,
|
|
2334
2989
|
children: [
|
|
2335
2990
|
card.cta.label,
|
|
2336
2991
|
/* @__PURE__ */ jsxRuntime.jsx("svg", { width: "11", height: "11", viewBox: "0 0 12 12", fill: "none", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round", strokeLinejoin: "round", children: /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M4.5 2.5l4 3.5-4 3.5" }) })
|
|
@@ -2345,6 +3000,22 @@ function PromoActionCards({
|
|
|
2345
3000
|
}) })
|
|
2346
3001
|
] });
|
|
2347
3002
|
}
|
|
3003
|
+
|
|
3004
|
+
// src/templates/ArticleHero.module.scss
|
|
3005
|
+
var ArticleHero_module_default = {
|
|
3006
|
+
root: "ArticleHero_module_root",
|
|
3007
|
+
bgLayer: "ArticleHero_module_bgLayer",
|
|
3008
|
+
bgImage: "ArticleHero_module_bgImage",
|
|
3009
|
+
overlay: "ArticleHero_module_overlay",
|
|
3010
|
+
topBar: "ArticleHero_module_topBar",
|
|
3011
|
+
logo: "ArticleHero_module_logo",
|
|
3012
|
+
divider: "ArticleHero_module_divider",
|
|
3013
|
+
nav: "ArticleHero_module_nav",
|
|
3014
|
+
bottom: "ArticleHero_module_bottom",
|
|
3015
|
+
category: "ArticleHero_module_category",
|
|
3016
|
+
title: "ArticleHero_module_title",
|
|
3017
|
+
subtitle: "ArticleHero_module_subtitle"
|
|
3018
|
+
};
|
|
2348
3019
|
var DEFAULT_BG = "https://images.unsplash.com/photo-1451187580459-43490279c0fa?w=1600&h=900&fit=crop&q=80";
|
|
2349
3020
|
function ArticleHero({
|
|
2350
3021
|
category,
|
|
@@ -2356,48 +3027,44 @@ function ArticleHero({
|
|
|
2356
3027
|
className = ""
|
|
2357
3028
|
}) {
|
|
2358
3029
|
const bgSrc = backgroundImage != null ? backgroundImage : DEFAULT_BG;
|
|
2359
|
-
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
2360
|
-
"
|
|
2361
|
-
|
|
2362
|
-
|
|
2363
|
-
|
|
2364
|
-
|
|
2365
|
-
|
|
2366
|
-
|
|
2367
|
-
|
|
2368
|
-
|
|
2369
|
-
|
|
2370
|
-
|
|
2371
|
-
|
|
2372
|
-
|
|
2373
|
-
|
|
2374
|
-
|
|
2375
|
-
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "relative z-10 flex items-center w-full", children: [
|
|
2376
|
-
logo && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "shrink-0 pr-4 md:pr-10", children: logo }),
|
|
2377
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex-1 h-px bg-white/30" }),
|
|
2378
|
-
nav && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "shrink-0 pl-4 md:pl-10", children: nav })
|
|
2379
|
-
] }),
|
|
2380
|
-
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "relative z-10 max-w-[500px]", children: [
|
|
2381
|
-
category && /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-lg text-white leading-7 mb-2", children: category }),
|
|
2382
|
-
/* @__PURE__ */ jsxRuntime.jsx("h1", { className: "text-[32px] leading-[34px] md:text-[60px] md:leading-[60px] font-normal text-white tracking-[-2px] md:tracking-[-3px] mb-4", children: title }),
|
|
2383
|
-
subtitle && /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-lg text-white/90 leading-[22.5px]", children: subtitle })
|
|
2384
|
-
] })
|
|
2385
|
-
]
|
|
2386
|
-
}
|
|
2387
|
-
);
|
|
3030
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: `${ArticleHero_module_default.root}${className ? ` ${className}` : ""}`, children: [
|
|
3031
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: ArticleHero_module_default.bgLayer, children: [
|
|
3032
|
+
/* @__PURE__ */ jsxRuntime.jsx("img", { src: bgSrc, alt: "", className: ArticleHero_module_default.bgImage }),
|
|
3033
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: ArticleHero_module_default.overlay })
|
|
3034
|
+
] }),
|
|
3035
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: ArticleHero_module_default.topBar, children: [
|
|
3036
|
+
logo && /* @__PURE__ */ jsxRuntime.jsx("div", { className: ArticleHero_module_default.logo, children: logo }),
|
|
3037
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: ArticleHero_module_default.divider }),
|
|
3038
|
+
nav && /* @__PURE__ */ jsxRuntime.jsx("div", { className: ArticleHero_module_default.nav, children: nav })
|
|
3039
|
+
] }),
|
|
3040
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: ArticleHero_module_default.bottom, children: [
|
|
3041
|
+
category && /* @__PURE__ */ jsxRuntime.jsx("p", { className: ArticleHero_module_default.category, children: category }),
|
|
3042
|
+
/* @__PURE__ */ jsxRuntime.jsx("h1", { className: ArticleHero_module_default.title, children: title }),
|
|
3043
|
+
subtitle && /* @__PURE__ */ jsxRuntime.jsx("p", { className: ArticleHero_module_default.subtitle, children: subtitle })
|
|
3044
|
+
] })
|
|
3045
|
+
] });
|
|
2388
3046
|
}
|
|
3047
|
+
|
|
3048
|
+
// src/templates/ArticleBody.module.scss
|
|
3049
|
+
var ArticleBody_module_default = {
|
|
3050
|
+
root: "ArticleBody_module_root"
|
|
3051
|
+
};
|
|
2389
3052
|
function ArticleBody({ children, className = "" }) {
|
|
2390
|
-
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
2391
|
-
"div",
|
|
2392
|
-
{
|
|
2393
|
-
className: `text-[16px] leading-7 text-[var(--fg-secondary)] font-normal ${className}`,
|
|
2394
|
-
children
|
|
2395
|
-
}
|
|
2396
|
-
);
|
|
3053
|
+
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: `${ArticleBody_module_default.root}${className ? ` ${className}` : ""}`, children });
|
|
2397
3054
|
}
|
|
2398
|
-
|
|
2399
|
-
|
|
2400
|
-
|
|
3055
|
+
|
|
3056
|
+
// src/templates/ArticleHeading.module.scss
|
|
3057
|
+
var ArticleHeading_module_default = {
|
|
3058
|
+
root: "ArticleHeading_module_root",
|
|
3059
|
+
header: "ArticleHeading_module_header",
|
|
3060
|
+
h2: "ArticleHeading_module_h2",
|
|
3061
|
+
h3: "ArticleHeading_module_h3",
|
|
3062
|
+
action: "ArticleHeading_module_action",
|
|
3063
|
+
subtitle: "ArticleHeading_module_subtitle"
|
|
3064
|
+
};
|
|
3065
|
+
var levelClass = {
|
|
3066
|
+
2: ArticleHeading_module_default.h2,
|
|
3067
|
+
3: ArticleHeading_module_default.h3
|
|
2401
3068
|
};
|
|
2402
3069
|
function ArticleHeading({
|
|
2403
3070
|
level = 2,
|
|
@@ -2407,14 +3074,29 @@ function ArticleHeading({
|
|
|
2407
3074
|
className = ""
|
|
2408
3075
|
}) {
|
|
2409
3076
|
const Tag2 = `h${level}`;
|
|
2410
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className:
|
|
2411
|
-
/* @__PURE__ */ jsxRuntime.jsxs("div", { className:
|
|
2412
|
-
/* @__PURE__ */ jsxRuntime.jsx(Tag2, { className:
|
|
2413
|
-
action && /* @__PURE__ */ jsxRuntime.jsx("div", { className:
|
|
3077
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: `${ArticleHeading_module_default.root}${className ? ` ${className}` : ""}`, children: [
|
|
3078
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: ArticleHeading_module_default.header, children: [
|
|
3079
|
+
/* @__PURE__ */ jsxRuntime.jsx(Tag2, { className: levelClass[level], children }),
|
|
3080
|
+
action && /* @__PURE__ */ jsxRuntime.jsx("div", { className: ArticleHeading_module_default.action, children: action })
|
|
2414
3081
|
] }),
|
|
2415
|
-
subtitle && /* @__PURE__ */ jsxRuntime.jsx("p", { className:
|
|
3082
|
+
subtitle && /* @__PURE__ */ jsxRuntime.jsx("p", { className: ArticleHeading_module_default.subtitle, children: subtitle })
|
|
2416
3083
|
] });
|
|
2417
3084
|
}
|
|
3085
|
+
|
|
3086
|
+
// src/templates/ArticleFigure.module.scss
|
|
3087
|
+
var ArticleFigure_module_default = {
|
|
3088
|
+
root: "ArticleFigure_module_root",
|
|
3089
|
+
imageWrapper: "ArticleFigure_module_imageWrapper",
|
|
3090
|
+
image: "ArticleFigure_module_image",
|
|
3091
|
+
childWrapper: "ArticleFigure_module_childWrapper",
|
|
3092
|
+
placeholder: "ArticleFigure_module_placeholder",
|
|
3093
|
+
placeholderText: "ArticleFigure_module_placeholderText",
|
|
3094
|
+
legend: "ArticleFigure_module_legend",
|
|
3095
|
+
legendItem: "ArticleFigure_module_legendItem",
|
|
3096
|
+
legendSwatch: "ArticleFigure_module_legendSwatch",
|
|
3097
|
+
legendLabel: "ArticleFigure_module_legendLabel",
|
|
3098
|
+
caption: "ArticleFigure_module_caption"
|
|
3099
|
+
};
|
|
2418
3100
|
function ArticleFigure({
|
|
2419
3101
|
src,
|
|
2420
3102
|
alt = "",
|
|
@@ -2424,37 +3106,52 @@ function ArticleFigure({
|
|
|
2424
3106
|
children,
|
|
2425
3107
|
className = ""
|
|
2426
3108
|
}) {
|
|
2427
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("figure", { className: `
|
|
3109
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("figure", { className: `${ArticleFigure_module_default.root}${className ? ` ${className}` : ""}`, children: [
|
|
2428
3110
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
2429
3111
|
"div",
|
|
2430
3112
|
{
|
|
2431
|
-
className:
|
|
3113
|
+
className: ArticleFigure_module_default.imageWrapper,
|
|
2432
3114
|
style: { minHeight: height },
|
|
2433
3115
|
children: src ? (
|
|
2434
3116
|
// eslint-disable-next-line @next/next/no-img-element
|
|
2435
|
-
/* @__PURE__ */ jsxRuntime.jsx("img", { src, alt, className:
|
|
2436
|
-
) : children ? /* @__PURE__ */ jsxRuntime.jsx("div", { className:
|
|
3117
|
+
/* @__PURE__ */ jsxRuntime.jsx("img", { src, alt, className: ArticleFigure_module_default.image })
|
|
3118
|
+
) : children ? /* @__PURE__ */ jsxRuntime.jsx("div", { className: ArticleFigure_module_default.childWrapper, children }) : /* @__PURE__ */ jsxRuntime.jsxs("div", { className: ArticleFigure_module_default.placeholder, children: [
|
|
2437
3119
|
/* @__PURE__ */ jsxRuntime.jsxs("svg", { width: "48", height: "48", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "1.5", children: [
|
|
2438
3120
|
/* @__PURE__ */ jsxRuntime.jsx("rect", { x: "3", y: "3", width: "18", height: "18", rx: "2" }),
|
|
2439
3121
|
/* @__PURE__ */ jsxRuntime.jsx("path", { d: "M3 16l5-5 4 4 4-6 5 7" })
|
|
2440
3122
|
] }),
|
|
2441
|
-
/* @__PURE__ */ jsxRuntime.jsx("span", { className:
|
|
3123
|
+
/* @__PURE__ */ jsxRuntime.jsx("span", { className: ArticleFigure_module_default.placeholderText, children: "Figure placeholder" })
|
|
2442
3124
|
] })
|
|
2443
3125
|
}
|
|
2444
3126
|
),
|
|
2445
|
-
legend && legend.length > 0 && /* @__PURE__ */ jsxRuntime.jsx("div", { className:
|
|
3127
|
+
legend && legend.length > 0 && /* @__PURE__ */ jsxRuntime.jsx("div", { className: ArticleFigure_module_default.legend, children: legend.map((item) => /* @__PURE__ */ jsxRuntime.jsxs("div", { className: ArticleFigure_module_default.legendItem, children: [
|
|
2446
3128
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
2447
3129
|
"span",
|
|
2448
3130
|
{
|
|
2449
|
-
className:
|
|
3131
|
+
className: ArticleFigure_module_default.legendSwatch,
|
|
2450
3132
|
style: { backgroundColor: item.color }
|
|
2451
3133
|
}
|
|
2452
3134
|
),
|
|
2453
|
-
/* @__PURE__ */ jsxRuntime.jsx("span", { className:
|
|
3135
|
+
/* @__PURE__ */ jsxRuntime.jsx("span", { className: ArticleFigure_module_default.legendLabel, children: item.label })
|
|
2454
3136
|
] }, item.label)) }),
|
|
2455
|
-
caption && /* @__PURE__ */ jsxRuntime.jsx("figcaption", { className:
|
|
3137
|
+
caption && /* @__PURE__ */ jsxRuntime.jsx("figcaption", { className: ArticleFigure_module_default.caption, children: caption })
|
|
2456
3138
|
] });
|
|
2457
3139
|
}
|
|
3140
|
+
|
|
3141
|
+
// src/templates/ArticleTable.module.scss
|
|
3142
|
+
var ArticleTable_module_default = {
|
|
3143
|
+
root: "ArticleTable_module_root",
|
|
3144
|
+
headerRow: "ArticleTable_module_headerRow",
|
|
3145
|
+
rankCell: "ArticleTable_module_rankCell",
|
|
3146
|
+
headerCell: "ArticleTable_module_headerCell",
|
|
3147
|
+
headerLabel: "ArticleTable_module_headerLabel",
|
|
3148
|
+
row: "ArticleTable_module_row",
|
|
3149
|
+
rankValue: "ArticleTable_module_rankValue",
|
|
3150
|
+
cell: "ArticleTable_module_cell",
|
|
3151
|
+
cellText: "ArticleTable_module_cellText",
|
|
3152
|
+
badge: "ArticleTable_module_badge",
|
|
3153
|
+
showMore: "ArticleTable_module_showMore"
|
|
3154
|
+
};
|
|
2458
3155
|
function ArticleTable({
|
|
2459
3156
|
columns,
|
|
2460
3157
|
rows,
|
|
@@ -2466,34 +3163,27 @@ function ArticleTable({
|
|
|
2466
3163
|
const limit = initialVisible != null ? initialVisible : rows.length;
|
|
2467
3164
|
const visibleRows = expanded ? rows : rows.slice(0, limit);
|
|
2468
3165
|
const hiddenCount = rows.length - limit;
|
|
2469
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: `
|
|
2470
|
-
/* @__PURE__ */ jsxRuntime.jsxs("div", { className:
|
|
2471
|
-
showRank && /* @__PURE__ */ jsxRuntime.jsx("div", { className:
|
|
2472
|
-
columns.map((col) => /* @__PURE__ */ jsxRuntime.jsx("div", { className:
|
|
3166
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: `${ArticleTable_module_default.root}${className ? ` ${className}` : ""}`, children: [
|
|
3167
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: ArticleTable_module_default.headerRow, children: [
|
|
3168
|
+
showRank && /* @__PURE__ */ jsxRuntime.jsx("div", { className: ArticleTable_module_default.rankCell }),
|
|
3169
|
+
columns.map((col) => /* @__PURE__ */ jsxRuntime.jsx("div", { className: ArticleTable_module_default.headerCell, children: /* @__PURE__ */ jsxRuntime.jsx("span", { className: ArticleTable_module_default.headerLabel, children: col.label }) }, col.key))
|
|
2473
3170
|
] }),
|
|
2474
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { children: visibleRows.map((row, i) => /* @__PURE__ */ jsxRuntime.jsxs(
|
|
2475
|
-
"div",
|
|
2476
|
-
{
|
|
2477
|
-
|
|
2478
|
-
|
|
2479
|
-
|
|
2480
|
-
|
|
2481
|
-
|
|
2482
|
-
|
|
2483
|
-
|
|
2484
|
-
|
|
2485
|
-
hasBadge && /* @__PURE__ */ jsxRuntime.jsx("span", { className: "inline-flex items-center px-2.5 py-0.5 rounded-full text-[12px] leading-4 font-semibold bg-[var(--bg-tertiary)] text-[var(--fg)]", children: row._badge })
|
|
2486
|
-
] }, col.key);
|
|
2487
|
-
})
|
|
2488
|
-
]
|
|
2489
|
-
},
|
|
2490
|
-
i
|
|
2491
|
-
)) }),
|
|
3171
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { children: visibleRows.map((row, i) => /* @__PURE__ */ jsxRuntime.jsxs("div", { className: ArticleTable_module_default.row, children: [
|
|
3172
|
+
showRank && /* @__PURE__ */ jsxRuntime.jsx("div", { className: ArticleTable_module_default.rankValue, children: /* @__PURE__ */ jsxRuntime.jsx("span", { children: i + 1 }) }),
|
|
3173
|
+
columns.map((col) => {
|
|
3174
|
+
const value = row[col.key];
|
|
3175
|
+
const hasBadge = row._badge && row._badgeColumn === col.key;
|
|
3176
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: ArticleTable_module_default.cell, children: [
|
|
3177
|
+
col.render ? col.render(value, row) : /* @__PURE__ */ jsxRuntime.jsx("span", { className: ArticleTable_module_default.cellText, children: String(value != null ? value : "") }),
|
|
3178
|
+
hasBadge && /* @__PURE__ */ jsxRuntime.jsx("span", { className: ArticleTable_module_default.badge, children: row._badge })
|
|
3179
|
+
] }, col.key);
|
|
3180
|
+
})
|
|
3181
|
+
] }, i)) }),
|
|
2492
3182
|
hiddenCount > 0 && !expanded && /* @__PURE__ */ jsxRuntime.jsxs(
|
|
2493
3183
|
"button",
|
|
2494
3184
|
{
|
|
2495
3185
|
onClick: () => setExpanded(true),
|
|
2496
|
-
className:
|
|
3186
|
+
className: ArticleTable_module_default.showMore,
|
|
2497
3187
|
children: [
|
|
2498
3188
|
"Show ",
|
|
2499
3189
|
hiddenCount,
|
|
@@ -2503,34 +3193,62 @@ function ArticleTable({
|
|
|
2503
3193
|
)
|
|
2504
3194
|
] });
|
|
2505
3195
|
}
|
|
3196
|
+
|
|
3197
|
+
// src/templates/ArticleList.module.scss
|
|
3198
|
+
var ArticleList_module_default = {
|
|
3199
|
+
root: "ArticleList_module_root",
|
|
3200
|
+
ordered: "ArticleList_module_ordered",
|
|
3201
|
+
unordered: "ArticleList_module_unordered",
|
|
3202
|
+
item: "ArticleList_module_item"
|
|
3203
|
+
};
|
|
2506
3204
|
function ArticleList({
|
|
2507
3205
|
variant = "unordered",
|
|
2508
3206
|
items,
|
|
2509
3207
|
className = ""
|
|
2510
3208
|
}) {
|
|
2511
3209
|
const Tag2 = variant === "ordered" ? "ol" : "ul";
|
|
2512
|
-
const
|
|
3210
|
+
const variantClass = variant === "ordered" ? ArticleList_module_default.ordered : ArticleList_module_default.unordered;
|
|
2513
3211
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
2514
3212
|
Tag2,
|
|
2515
3213
|
{
|
|
2516
|
-
className:
|
|
2517
|
-
children: items.map((item, i) => /* @__PURE__ */ jsxRuntime.jsx("li", { className:
|
|
3214
|
+
className: `${ArticleList_module_default.root} ${variantClass}${className ? ` ${className}` : ""}`,
|
|
3215
|
+
children: items.map((item, i) => /* @__PURE__ */ jsxRuntime.jsx("li", { className: ArticleList_module_default.item, children: item }, i))
|
|
2518
3216
|
}
|
|
2519
3217
|
);
|
|
2520
3218
|
}
|
|
3219
|
+
|
|
3220
|
+
// src/templates/ArticleNote.module.scss
|
|
3221
|
+
var ArticleNote_module_default = {
|
|
3222
|
+
root: "ArticleNote_module_root"
|
|
3223
|
+
};
|
|
2521
3224
|
function ArticleNote({ children, className = "" }) {
|
|
2522
|
-
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
2523
|
-
"p",
|
|
2524
|
-
{
|
|
2525
|
-
className: `text-[16px] leading-7 text-[var(--fg-secondary)] italic ${className}`,
|
|
2526
|
-
children
|
|
2527
|
-
}
|
|
2528
|
-
);
|
|
3225
|
+
return /* @__PURE__ */ jsxRuntime.jsx("p", { className: `${ArticleNote_module_default.root}${className ? ` ${className}` : ""}`, children });
|
|
2529
3226
|
}
|
|
2530
|
-
|
|
2531
|
-
|
|
2532
|
-
|
|
2533
|
-
|
|
3227
|
+
|
|
3228
|
+
// src/templates/ArticleChatBlock.module.scss
|
|
3229
|
+
var ArticleChatBlock_module_default = {
|
|
3230
|
+
root: "ArticleChatBlock_module_root",
|
|
3231
|
+
assistant: "ArticleChatBlock_module_assistant",
|
|
3232
|
+
system: "ArticleChatBlock_module_system",
|
|
3233
|
+
user: "ArticleChatBlock_module_user",
|
|
3234
|
+
header: "ArticleChatBlock_module_header",
|
|
3235
|
+
roleLabel: "ArticleChatBlock_module_roleLabel",
|
|
3236
|
+
toolBadge: "ArticleChatBlock_module_toolBadge",
|
|
3237
|
+
toolBadgeInner: "ArticleChatBlock_module_toolBadgeInner",
|
|
3238
|
+
toolDot: "ArticleChatBlock_module_toolDot",
|
|
3239
|
+
toolLabel: "ArticleChatBlock_module_toolLabel",
|
|
3240
|
+
divider: "ArticleChatBlock_module_divider",
|
|
3241
|
+
contentWrapper: "ArticleChatBlock_module_contentWrapper",
|
|
3242
|
+
content: "ArticleChatBlock_module_content",
|
|
3243
|
+
fadeOverlay: "ArticleChatBlock_module_fadeOverlay",
|
|
3244
|
+
fadeGradient: "ArticleChatBlock_module_fadeGradient",
|
|
3245
|
+
showMoreBar: "ArticleChatBlock_module_showMoreBar",
|
|
3246
|
+
showMoreBtn: "ArticleChatBlock_module_showMoreBtn"
|
|
3247
|
+
};
|
|
3248
|
+
var roleConfig = {
|
|
3249
|
+
assistant: { cls: ArticleChatBlock_module_default.assistant, gradient: "var(--bg-secondary)" },
|
|
3250
|
+
system: { cls: ArticleChatBlock_module_default.system, gradient: "var(--bg-tertiary)" },
|
|
3251
|
+
user: { cls: ArticleChatBlock_module_default.user, gradient: "var(--bg-secondary)" }
|
|
2534
3252
|
};
|
|
2535
3253
|
function ArticleChatBlock({
|
|
2536
3254
|
role,
|
|
@@ -2543,41 +3261,41 @@ function ArticleChatBlock({
|
|
|
2543
3261
|
}) {
|
|
2544
3262
|
var _a;
|
|
2545
3263
|
const [expanded, setExpanded] = react.useState(false);
|
|
2546
|
-
const
|
|
2547
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className:
|
|
2548
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { className:
|
|
3264
|
+
const config = (_a = roleConfig[role]) != null ? _a : roleConfig.assistant;
|
|
3265
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: `${ArticleChatBlock_module_default.root} ${config.cls}${className ? ` ${className}` : ""}`, children: [
|
|
3266
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: ArticleChatBlock_module_default.header, children: /* @__PURE__ */ jsxRuntime.jsxs("span", { className: ArticleChatBlock_module_default.roleLabel, children: [
|
|
2549
3267
|
role,
|
|
2550
3268
|
model && ` \u2022 ${model}`
|
|
2551
3269
|
] }) }),
|
|
2552
|
-
toolCall && /* @__PURE__ */ jsxRuntime.jsx("div", { className:
|
|
2553
|
-
/* @__PURE__ */ jsxRuntime.jsx("span", { className:
|
|
2554
|
-
/* @__PURE__ */ jsxRuntime.jsx("span", { className:
|
|
3270
|
+
toolCall && /* @__PURE__ */ jsxRuntime.jsx("div", { className: ArticleChatBlock_module_default.toolBadge, children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: ArticleChatBlock_module_default.toolBadgeInner, children: [
|
|
3271
|
+
/* @__PURE__ */ jsxRuntime.jsx("span", { className: ArticleChatBlock_module_default.toolDot }),
|
|
3272
|
+
/* @__PURE__ */ jsxRuntime.jsx("span", { className: ArticleChatBlock_module_default.toolLabel, children: toolCall })
|
|
2555
3273
|
] }) }),
|
|
2556
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { className:
|
|
2557
|
-
/* @__PURE__ */ jsxRuntime.jsxs("div", { className:
|
|
3274
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: ArticleChatBlock_module_default.divider }),
|
|
3275
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: ArticleChatBlock_module_default.contentWrapper, children: [
|
|
2558
3276
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
2559
3277
|
"div",
|
|
2560
3278
|
{
|
|
2561
|
-
className:
|
|
3279
|
+
className: ArticleChatBlock_module_default.content,
|
|
2562
3280
|
style: collapsible && !expanded ? { maxHeight: collapsedHeight, overflow: "hidden" } : void 0,
|
|
2563
3281
|
children
|
|
2564
3282
|
}
|
|
2565
3283
|
),
|
|
2566
|
-
collapsible && !expanded && /* @__PURE__ */ jsxRuntime.jsxs("div", { className:
|
|
3284
|
+
collapsible && !expanded && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: ArticleChatBlock_module_default.fadeOverlay, children: [
|
|
2567
3285
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
2568
3286
|
"div",
|
|
2569
3287
|
{
|
|
2570
|
-
className:
|
|
3288
|
+
className: ArticleChatBlock_module_default.fadeGradient,
|
|
2571
3289
|
style: {
|
|
2572
|
-
background: `linear-gradient(to top, ${
|
|
3290
|
+
background: `linear-gradient(to top, ${config.gradient}, transparent)`
|
|
2573
3291
|
}
|
|
2574
3292
|
}
|
|
2575
3293
|
),
|
|
2576
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { className:
|
|
3294
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: `${ArticleChatBlock_module_default.showMoreBar} ${config.cls}`, children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
2577
3295
|
"button",
|
|
2578
3296
|
{
|
|
2579
3297
|
onClick: () => setExpanded(true),
|
|
2580
|
-
className:
|
|
3298
|
+
className: ArticleChatBlock_module_default.showMoreBtn,
|
|
2581
3299
|
children: "Show more"
|
|
2582
3300
|
}
|
|
2583
3301
|
) })
|
|
@@ -2585,40 +3303,79 @@ function ArticleChatBlock({
|
|
|
2585
3303
|
] })
|
|
2586
3304
|
] });
|
|
2587
3305
|
}
|
|
3306
|
+
|
|
3307
|
+
// src/templates/ArticleLinkButton.module.scss
|
|
3308
|
+
var ArticleLinkButton_module_default = {
|
|
3309
|
+
root: "ArticleLinkButton_module_root"
|
|
3310
|
+
};
|
|
2588
3311
|
function ArticleLinkButton({
|
|
2589
3312
|
children,
|
|
2590
3313
|
href,
|
|
2591
3314
|
onClick,
|
|
2592
3315
|
className = ""
|
|
2593
3316
|
}) {
|
|
2594
|
-
const
|
|
3317
|
+
const cls = `${ArticleLinkButton_module_default.root}${className ? ` ${className}` : ""}`;
|
|
2595
3318
|
if (href) {
|
|
2596
|
-
return /* @__PURE__ */ jsxRuntime.jsx("a", { href, className:
|
|
3319
|
+
return /* @__PURE__ */ jsxRuntime.jsx("a", { href, className: cls, children });
|
|
2597
3320
|
}
|
|
2598
|
-
return /* @__PURE__ */ jsxRuntime.jsx("button", { onClick, className:
|
|
3321
|
+
return /* @__PURE__ */ jsxRuntime.jsx("button", { onClick, className: cls, children });
|
|
2599
3322
|
}
|
|
3323
|
+
|
|
3324
|
+
// src/templates/ArticleFooter.module.scss
|
|
3325
|
+
var ArticleFooter_module_default = {
|
|
3326
|
+
root: "ArticleFooter_module_root",
|
|
3327
|
+
topBar: "ArticleFooter_module_topBar",
|
|
3328
|
+
logo: "ArticleFooter_module_logo",
|
|
3329
|
+
divider: "ArticleFooter_module_divider",
|
|
3330
|
+
copyright: "ArticleFooter_module_copyright"
|
|
3331
|
+
};
|
|
2600
3332
|
function ArticleFooter({
|
|
2601
3333
|
logo,
|
|
2602
3334
|
copyright = `\xA9 ${(/* @__PURE__ */ new Date()).getFullYear()} All rights reserved.`,
|
|
2603
3335
|
className = ""
|
|
2604
3336
|
}) {
|
|
2605
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("footer", { className:
|
|
2606
|
-
/* @__PURE__ */ jsxRuntime.jsxs("div", { className:
|
|
2607
|
-
logo && /* @__PURE__ */ jsxRuntime.jsx("div", { className:
|
|
2608
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { className:
|
|
3337
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("footer", { className: `${ArticleFooter_module_default.root}${className ? ` ${className}` : ""}`, children: [
|
|
3338
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: ArticleFooter_module_default.topBar, children: [
|
|
3339
|
+
logo && /* @__PURE__ */ jsxRuntime.jsx("div", { className: ArticleFooter_module_default.logo, children: logo }),
|
|
3340
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: ArticleFooter_module_default.divider })
|
|
2609
3341
|
] }),
|
|
2610
|
-
/* @__PURE__ */ jsxRuntime.jsx("p", { className:
|
|
3342
|
+
/* @__PURE__ */ jsxRuntime.jsx("p", { className: ArticleFooter_module_default.copyright, children: copyright })
|
|
2611
3343
|
] });
|
|
2612
3344
|
}
|
|
3345
|
+
|
|
3346
|
+
// src/templates/ArticleLayout.module.scss
|
|
3347
|
+
var ArticleLayout_module_default = {
|
|
3348
|
+
root: "ArticleLayout_module_root",
|
|
3349
|
+
wide: "ArticleLayout_module_wide",
|
|
3350
|
+
narrow: "ArticleLayout_module_narrow"
|
|
3351
|
+
};
|
|
2613
3352
|
function ArticleLayout({ children, className = "" }) {
|
|
2614
|
-
return /* @__PURE__ */ jsxRuntime.jsx("article", { className:
|
|
3353
|
+
return /* @__PURE__ */ jsxRuntime.jsx("article", { className: `${ArticleLayout_module_default.root}${className ? ` ${className}` : ""}`, children });
|
|
2615
3354
|
}
|
|
2616
3355
|
function ArticleWide({ children, className = "" }) {
|
|
2617
|
-
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: `
|
|
3356
|
+
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: `${ArticleLayout_module_default.wide}${className ? ` ${className}` : ""}`, children });
|
|
2618
3357
|
}
|
|
2619
3358
|
function ArticleNarrow({ children, className = "" }) {
|
|
2620
|
-
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: `
|
|
3359
|
+
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: `${ArticleLayout_module_default.narrow}${className ? ` ${className}` : ""}`, children });
|
|
2621
3360
|
}
|
|
3361
|
+
|
|
3362
|
+
// src/templates/ArticleChart.module.scss
|
|
3363
|
+
var ArticleChart_module_default = {
|
|
3364
|
+
figure: "ArticleChart_module_figure",
|
|
3365
|
+
chartWrapper: "ArticleChart_module_chartWrapper",
|
|
3366
|
+
tooltip: "ArticleChart_module_tooltip",
|
|
3367
|
+
tooltipLabel: "ArticleChart_module_tooltipLabel",
|
|
3368
|
+
tooltipRow: "ArticleChart_module_tooltipRow",
|
|
3369
|
+
tooltipDot: "ArticleChart_module_tooltipDot",
|
|
3370
|
+
tooltipName: "ArticleChart_module_tooltipName",
|
|
3371
|
+
tooltipValue: "ArticleChart_module_tooltipValue",
|
|
3372
|
+
scatterTooltipLabel: "ArticleChart_module_scatterTooltipLabel",
|
|
3373
|
+
scatterTooltipRow: "ArticleChart_module_scatterTooltipRow",
|
|
3374
|
+
legend: "ArticleChart_module_legend",
|
|
3375
|
+
legendItem: "ArticleChart_module_legendItem",
|
|
3376
|
+
legendSwatch: "ArticleChart_module_legendSwatch",
|
|
3377
|
+
legendLabel: "ArticleChart_module_legendLabel"
|
|
3378
|
+
};
|
|
2622
3379
|
function ChartTooltip({
|
|
2623
3380
|
active,
|
|
2624
3381
|
payload,
|
|
@@ -2629,15 +3386,15 @@ function ChartTooltip({
|
|
|
2629
3386
|
}) {
|
|
2630
3387
|
if (!active || !(payload == null ? void 0 : payload.length)) return null;
|
|
2631
3388
|
const fmt = valueFormatter != null ? valueFormatter : ((v) => String(v));
|
|
2632
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className:
|
|
2633
|
-
label !== void 0 && /* @__PURE__ */ jsxRuntime.jsxs("p", { className:
|
|
3389
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: ArticleChart_module_default.tooltip, children: [
|
|
3390
|
+
label !== void 0 && /* @__PURE__ */ jsxRuntime.jsxs("p", { className: ArticleChart_module_default.tooltipLabel, children: [
|
|
2634
3391
|
xLabel ? `${xLabel}: ` : "",
|
|
2635
3392
|
label
|
|
2636
3393
|
] }),
|
|
2637
|
-
payload.map((entry, i) => /* @__PURE__ */ jsxRuntime.jsxs("div", { className:
|
|
2638
|
-
/* @__PURE__ */ jsxRuntime.jsx("span", { className:
|
|
2639
|
-
/* @__PURE__ */ jsxRuntime.jsx("span", { className:
|
|
2640
|
-
/* @__PURE__ */ jsxRuntime.jsx("span", { className:
|
|
3394
|
+
payload.map((entry, i) => /* @__PURE__ */ jsxRuntime.jsxs("div", { className: ArticleChart_module_default.tooltipRow, children: [
|
|
3395
|
+
/* @__PURE__ */ jsxRuntime.jsx("span", { className: ArticleChart_module_default.tooltipDot, style: { backgroundColor: entry.color } }),
|
|
3396
|
+
/* @__PURE__ */ jsxRuntime.jsx("span", { className: ArticleChart_module_default.tooltipName, children: entry.name }),
|
|
3397
|
+
/* @__PURE__ */ jsxRuntime.jsx("span", { className: ArticleChart_module_default.tooltipValue, children: yLabel ? `${fmt(entry.value)} ` : fmt(entry.value) })
|
|
2641
3398
|
] }, i))
|
|
2642
3399
|
] });
|
|
2643
3400
|
}
|
|
@@ -2651,8 +3408,8 @@ function ArticleLineChart({
|
|
|
2651
3408
|
valueFormatter,
|
|
2652
3409
|
className = ""
|
|
2653
3410
|
}) {
|
|
2654
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("figure", { className: `
|
|
2655
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { className:
|
|
3411
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("figure", { className: `${ArticleChart_module_default.figure}${className ? ` ${className}` : ""}`, children: [
|
|
3412
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: ArticleChart_module_default.chartWrapper, style: { height }, children: /* @__PURE__ */ jsxRuntime.jsx(recharts.ResponsiveContainer, { width: "100%", height: "100%", children: /* @__PURE__ */ jsxRuntime.jsxs(recharts.LineChart, { data, margin: { top: 8, right: 16, bottom: 4, left: 8 }, children: [
|
|
2656
3413
|
/* @__PURE__ */ jsxRuntime.jsx(recharts.CartesianGrid, { strokeDasharray: "3 3", stroke: "var(--border-color)" }),
|
|
2657
3414
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
2658
3415
|
recharts.XAxis,
|
|
@@ -2702,9 +3459,9 @@ function ArticleLineChart({
|
|
|
2702
3459
|
s.dataKey
|
|
2703
3460
|
))
|
|
2704
3461
|
] }) }) }),
|
|
2705
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { className:
|
|
2706
|
-
/* @__PURE__ */ jsxRuntime.jsx("span", { className:
|
|
2707
|
-
/* @__PURE__ */ jsxRuntime.jsx("span", { className:
|
|
3462
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: ArticleChart_module_default.legend, children: series.map((s) => /* @__PURE__ */ jsxRuntime.jsxs("div", { className: ArticleChart_module_default.legendItem, children: [
|
|
3463
|
+
/* @__PURE__ */ jsxRuntime.jsx("span", { className: ArticleChart_module_default.legendSwatch, style: { backgroundColor: s.color } }),
|
|
3464
|
+
/* @__PURE__ */ jsxRuntime.jsx("span", { className: ArticleChart_module_default.legendLabel, children: s.name })
|
|
2708
3465
|
] }, s.dataKey)) })
|
|
2709
3466
|
] });
|
|
2710
3467
|
}
|
|
@@ -2719,8 +3476,8 @@ function ArticleBarChart({
|
|
|
2719
3476
|
valueFormatter,
|
|
2720
3477
|
className = ""
|
|
2721
3478
|
}) {
|
|
2722
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("figure", { className: `
|
|
2723
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { className:
|
|
3479
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("figure", { className: `${ArticleChart_module_default.figure}${className ? ` ${className}` : ""}`, children: [
|
|
3480
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: ArticleChart_module_default.chartWrapper, style: { height }, children: /* @__PURE__ */ jsxRuntime.jsx(recharts.ResponsiveContainer, { width: "100%", height: "100%", children: /* @__PURE__ */ jsxRuntime.jsxs(recharts.BarChart, { data, margin: { top: 8, right: 16, bottom: 4, left: 8 }, children: [
|
|
2724
3481
|
/* @__PURE__ */ jsxRuntime.jsx(recharts.CartesianGrid, { strokeDasharray: "3 3", stroke: "var(--border-color)", vertical: false }),
|
|
2725
3482
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
2726
3483
|
recharts.XAxis,
|
|
@@ -2768,9 +3525,9 @@ function ArticleBarChart({
|
|
|
2768
3525
|
s.dataKey
|
|
2769
3526
|
))
|
|
2770
3527
|
] }) }) }),
|
|
2771
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { className:
|
|
2772
|
-
/* @__PURE__ */ jsxRuntime.jsx("span", { className:
|
|
2773
|
-
/* @__PURE__ */ jsxRuntime.jsx("span", { className:
|
|
3528
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: ArticleChart_module_default.legend, children: series.map((s) => /* @__PURE__ */ jsxRuntime.jsxs("div", { className: ArticleChart_module_default.legendItem, children: [
|
|
3529
|
+
/* @__PURE__ */ jsxRuntime.jsx("span", { className: ArticleChart_module_default.legendSwatch, style: { backgroundColor: s.color } }),
|
|
3530
|
+
/* @__PURE__ */ jsxRuntime.jsx("span", { className: ArticleChart_module_default.legendLabel, children: s.name })
|
|
2774
3531
|
] }, s.dataKey)) })
|
|
2775
3532
|
] });
|
|
2776
3533
|
}
|
|
@@ -2788,7 +3545,7 @@ function ArticleScatterChart({
|
|
|
2788
3545
|
var _a;
|
|
2789
3546
|
return (_a = d.color) != null ? _a : color;
|
|
2790
3547
|
});
|
|
2791
|
-
return /* @__PURE__ */ jsxRuntime.jsx("figure", { className: `
|
|
3548
|
+
return /* @__PURE__ */ jsxRuntime.jsx("figure", { className: `${ArticleChart_module_default.figure}${className ? ` ${className}` : ""}`, children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: ArticleChart_module_default.chartWrapper, style: { height }, children: /* @__PURE__ */ jsxRuntime.jsx(recharts.ResponsiveContainer, { width: "100%", height: "100%", children: /* @__PURE__ */ jsxRuntime.jsxs(recharts.ScatterChart, { margin: { top: 8, right: 16, bottom: 4, left: 8 }, children: [
|
|
2792
3549
|
/* @__PURE__ */ jsxRuntime.jsx(recharts.CartesianGrid, { strokeDasharray: "3 3", stroke: "var(--border-color)" }),
|
|
2793
3550
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
2794
3551
|
recharts.XAxis,
|
|
@@ -2824,14 +3581,14 @@ function ArticleScatterChart({
|
|
|
2824
3581
|
if (!active || !(payload == null ? void 0 : payload.length)) return null;
|
|
2825
3582
|
const point = (_a = payload[0]) == null ? void 0 : _a.payload;
|
|
2826
3583
|
const fmt = valueFormatter != null ? valueFormatter : ((v) => String(v));
|
|
2827
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className:
|
|
2828
|
-
point.label && /* @__PURE__ */ jsxRuntime.jsx("p", { className:
|
|
2829
|
-
xLabel && /* @__PURE__ */ jsxRuntime.jsxs("p", { className:
|
|
3584
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: ArticleChart_module_default.tooltip, children: [
|
|
3585
|
+
point.label && /* @__PURE__ */ jsxRuntime.jsx("p", { className: ArticleChart_module_default.scatterTooltipLabel, children: point.label }),
|
|
3586
|
+
xLabel && /* @__PURE__ */ jsxRuntime.jsxs("p", { className: ArticleChart_module_default.scatterTooltipRow, children: [
|
|
2830
3587
|
xLabel,
|
|
2831
3588
|
": ",
|
|
2832
3589
|
fmt(point.x)
|
|
2833
3590
|
] }),
|
|
2834
|
-
yLabel && /* @__PURE__ */ jsxRuntime.jsxs("p", { className:
|
|
3591
|
+
yLabel && /* @__PURE__ */ jsxRuntime.jsxs("p", { className: ArticleChart_module_default.scatterTooltipRow, children: [
|
|
2835
3592
|
yLabel,
|
|
2836
3593
|
": ",
|
|
2837
3594
|
fmt(point.y)
|
|
@@ -2843,6 +3600,16 @@ function ArticleScatterChart({
|
|
|
2843
3600
|
/* @__PURE__ */ jsxRuntime.jsx(recharts.Scatter, { data, children: data.map((_, i) => /* @__PURE__ */ jsxRuntime.jsx(recharts.Cell, { fill: colors[i], r: 6 }, i)) })
|
|
2844
3601
|
] }) }) }) });
|
|
2845
3602
|
}
|
|
3603
|
+
|
|
3604
|
+
// src/templates/LandingLayout.module.scss
|
|
3605
|
+
var LandingLayout_module_default = {
|
|
3606
|
+
headerMode: "LandingLayout_module_headerMode",
|
|
3607
|
+
headerMain: "LandingLayout_module_headerMain",
|
|
3608
|
+
sidebarMode: "LandingLayout_module_sidebarMode",
|
|
3609
|
+
sidebarNav: "LandingLayout_module_sidebarNav",
|
|
3610
|
+
sidebarMain: "LandingLayout_module_sidebarMain",
|
|
3611
|
+
sidebarContent: "LandingLayout_module_sidebarContent"
|
|
3612
|
+
};
|
|
2846
3613
|
function LandingLayout({
|
|
2847
3614
|
mode = "header",
|
|
2848
3615
|
nav,
|
|
@@ -2850,14 +3617,14 @@ function LandingLayout({
|
|
|
2850
3617
|
className = ""
|
|
2851
3618
|
}) {
|
|
2852
3619
|
if (mode === "sidebar") {
|
|
2853
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className:
|
|
2854
|
-
nav && /* @__PURE__ */ jsxRuntime.jsx("div", { className:
|
|
2855
|
-
/* @__PURE__ */ jsxRuntime.jsx("main", { className:
|
|
3620
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: `${LandingLayout_module_default.sidebarMode}${className ? ` ${className}` : ""}`, children: [
|
|
3621
|
+
nav && /* @__PURE__ */ jsxRuntime.jsx("div", { className: LandingLayout_module_default.sidebarNav, children: nav }),
|
|
3622
|
+
/* @__PURE__ */ jsxRuntime.jsx("main", { className: LandingLayout_module_default.sidebarMain, children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: LandingLayout_module_default.sidebarContent, children }) })
|
|
2856
3623
|
] });
|
|
2857
3624
|
}
|
|
2858
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: `
|
|
3625
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: `${LandingLayout_module_default.headerMode}${className ? ` ${className}` : ""}`, children: [
|
|
2859
3626
|
nav,
|
|
2860
|
-
/* @__PURE__ */ jsxRuntime.jsx("main", { className:
|
|
3627
|
+
/* @__PURE__ */ jsxRuntime.jsx("main", { className: LandingLayout_module_default.headerMain, children })
|
|
2861
3628
|
] });
|
|
2862
3629
|
}
|
|
2863
3630
|
|