@keboola/design 6.1.0 → 6.3.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/editors.cjs +48 -0
- package/dist/editors.cjs.map +1 -1
- package/dist/editors.js +48 -0
- package/dist/editors.js.map +1 -1
- package/dist/icons.cjs +48 -0
- package/dist/icons.cjs.map +1 -1
- package/dist/icons.d.cts +3 -1
- package/dist/icons.d.ts +3 -1
- package/dist/icons.js +48 -1
- package/dist/icons.js.map +1 -1
- package/dist/index.cjs +1039 -36
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +461 -300
- package/dist/index.d.ts +461 -300
- package/dist/index.js +1029 -38
- package/dist/index.js.map +1 -1
- package/dist/markdown-editor.cjs +64 -9
- package/dist/markdown-editor.cjs.map +1 -1
- package/dist/markdown-editor.js +64 -9
- package/dist/markdown-editor.js.map +1 -1
- package/dist/mermaid.cjs +48 -0
- package/dist/mermaid.cjs.map +1 -1
- package/dist/mermaid.js +48 -0
- package/dist/mermaid.js.map +1 -1
- package/dist/rjsf.cjs +64 -14
- package/dist/rjsf.cjs.map +1 -1
- package/dist/rjsf.js +64 -14
- package/dist/rjsf.js.map +1 -1
- package/dist/styles.css +2 -2
- package/dist/testing.cjs +12 -0
- package/dist/testing.cjs.map +1 -1
- package/dist/testing.js +12 -0
- package/dist/testing.js.map +1 -1
- package/package.json +5 -4
- package/src/styles.css +22 -0
package/dist/index.js
CHANGED
|
@@ -6,7 +6,7 @@ import { clsx } from 'clsx';
|
|
|
6
6
|
import { extendTailwindMerge } from 'tailwind-merge';
|
|
7
7
|
import { Root as Root$6, Trigger, Portal, Content, Provider } from '@radix-ui/react-tooltip';
|
|
8
8
|
import { cva } from 'class-variance-authority';
|
|
9
|
-
import { keboolaLegacySidebar, keboolaLegacyTopnav } from '@keboola/brand-registry';
|
|
9
|
+
import { keboolaLegacySidebar, keboolaLegacyTopnav, keboola } from '@keboola/brand-registry';
|
|
10
10
|
export { brandSchema, exampleCustomer, keboola, keboolaLegacySidebar, keboolaLegacyTopnav } from '@keboola/brand-registry';
|
|
11
11
|
import { jsxs, jsx, Fragment as Fragment$1 } from 'react/jsx-runtime';
|
|
12
12
|
import * as DropdownMenuPrimitive3 from '@radix-ui/react-dropdown-menu';
|
|
@@ -263,7 +263,7 @@ var require_react_is_development = __commonJS({
|
|
|
263
263
|
var ContextProvider = REACT_PROVIDER_TYPE;
|
|
264
264
|
var Element = REACT_ELEMENT_TYPE;
|
|
265
265
|
var ForwardRef = REACT_FORWARD_REF_TYPE;
|
|
266
|
-
var
|
|
266
|
+
var Fragment17 = REACT_FRAGMENT_TYPE;
|
|
267
267
|
var Lazy = REACT_LAZY_TYPE;
|
|
268
268
|
var Memo = REACT_MEMO_TYPE;
|
|
269
269
|
var Portal10 = REACT_PORTAL_TYPE;
|
|
@@ -322,7 +322,7 @@ var require_react_is_development = __commonJS({
|
|
|
322
322
|
exports$1.ContextProvider = ContextProvider;
|
|
323
323
|
exports$1.Element = Element;
|
|
324
324
|
exports$1.ForwardRef = ForwardRef;
|
|
325
|
-
exports$1.Fragment =
|
|
325
|
+
exports$1.Fragment = Fragment17;
|
|
326
326
|
exports$1.Lazy = Lazy;
|
|
327
327
|
exports$1.Memo = Memo;
|
|
328
328
|
exports$1.Portal = Portal10;
|
|
@@ -1047,6 +1047,7 @@ var require_es = __commonJS({
|
|
|
1047
1047
|
// src/icons/index.ts
|
|
1048
1048
|
var icons_exports = {};
|
|
1049
1049
|
__export(icons_exports, {
|
|
1050
|
+
Google: () => Google,
|
|
1050
1051
|
Keboola: () => Keboola
|
|
1051
1052
|
});
|
|
1052
1053
|
__reExport(icons_exports, lucide_react_star);
|
|
@@ -1407,6 +1408,53 @@ var useSHA256 = (text) => {
|
|
|
1407
1408
|
}, [text]);
|
|
1408
1409
|
return text ? hash : "";
|
|
1409
1410
|
};
|
|
1411
|
+
var Google = forwardRef(
|
|
1412
|
+
({ size = 24, className, children, ...rest }, ref) => /* @__PURE__ */ jsxs(
|
|
1413
|
+
"svg",
|
|
1414
|
+
{
|
|
1415
|
+
ref,
|
|
1416
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
1417
|
+
width: size,
|
|
1418
|
+
height: size,
|
|
1419
|
+
viewBox: "12 10 20 20",
|
|
1420
|
+
fill: "none",
|
|
1421
|
+
className: cn("lucide", className),
|
|
1422
|
+
...rest,
|
|
1423
|
+
children: [
|
|
1424
|
+
/* @__PURE__ */ jsx(
|
|
1425
|
+
"path",
|
|
1426
|
+
{
|
|
1427
|
+
d: "M31.6 20.2273C31.6 19.5182 31.5364 18.8364 31.4182 18.1818H22V22.05H27.3818C27.15 23.3 26.4455 24.3591 25.3864 25.0682V27.5773H28.6182C30.5091 25.8364 31.6 23.2727 31.6 20.2273Z",
|
|
1428
|
+
fill: "#4285F4"
|
|
1429
|
+
}
|
|
1430
|
+
),
|
|
1431
|
+
/* @__PURE__ */ jsx(
|
|
1432
|
+
"path",
|
|
1433
|
+
{
|
|
1434
|
+
d: "M22 30C24.7 30 26.9636 29.1045 28.6181 27.5773L25.3863 25.0682C24.4909 25.6682 23.3454 26.0227 22 26.0227C19.3954 26.0227 17.1909 24.2636 16.4045 21.9H13.0636V24.4909C14.7091 27.7591 18.0909 30 22 30Z",
|
|
1435
|
+
fill: "#34A853"
|
|
1436
|
+
}
|
|
1437
|
+
),
|
|
1438
|
+
/* @__PURE__ */ jsx(
|
|
1439
|
+
"path",
|
|
1440
|
+
{
|
|
1441
|
+
d: "M16.4045 21.9C16.2045 21.3 16.0909 20.6591 16.0909 20C16.0909 19.3409 16.2045 18.7 16.4045 18.1V15.5091H13.0636C12.3864 16.8591 12 18.3864 12 20C12 21.6136 12.3864 23.1409 13.0636 24.4909L16.4045 21.9Z",
|
|
1442
|
+
fill: "#FBBC04"
|
|
1443
|
+
}
|
|
1444
|
+
),
|
|
1445
|
+
/* @__PURE__ */ jsx(
|
|
1446
|
+
"path",
|
|
1447
|
+
{
|
|
1448
|
+
d: "M22 13.9773C23.4681 13.9773 24.7863 14.4818 25.8227 15.4727L28.6909 12.6045C26.9591 10.9909 24.6954 10 22 10C18.0909 10 14.7091 12.2409 13.0636 15.5091L16.4045 18.1C17.1909 15.7364 19.3954 13.9773 22 13.9773Z",
|
|
1449
|
+
fill: "#EA4335"
|
|
1450
|
+
}
|
|
1451
|
+
),
|
|
1452
|
+
children
|
|
1453
|
+
]
|
|
1454
|
+
}
|
|
1455
|
+
)
|
|
1456
|
+
);
|
|
1457
|
+
Google.displayName = "Google";
|
|
1410
1458
|
var Keboola = forwardRef(
|
|
1411
1459
|
({ size = 24, color = "currentColor", className, children, ...rest }, ref) => /* @__PURE__ */ jsxs(
|
|
1412
1460
|
"svg",
|
|
@@ -3080,6 +3128,115 @@ var CopyField = {
|
|
|
3080
3128
|
/** Small helper text below the box. */
|
|
3081
3129
|
Footer: CopyFooter
|
|
3082
3130
|
};
|
|
3131
|
+
var LABELS = {
|
|
3132
|
+
signin: "Sign in with Google",
|
|
3133
|
+
signup: "Sign up with Google",
|
|
3134
|
+
continue: "Continue with Google",
|
|
3135
|
+
"signin-short": "Sign in"
|
|
3136
|
+
};
|
|
3137
|
+
var GOOGLE_FONT_STACK = "'Roboto', arial, sans-serif";
|
|
3138
|
+
var variants3 = cva(
|
|
3139
|
+
[
|
|
3140
|
+
"tailwindcss-preflight",
|
|
3141
|
+
"tw-inline-flex",
|
|
3142
|
+
"tw-items-center",
|
|
3143
|
+
"tw-justify-center",
|
|
3144
|
+
"tw-h-10",
|
|
3145
|
+
"tw-border",
|
|
3146
|
+
"tw-text-sm",
|
|
3147
|
+
"tw-font-medium",
|
|
3148
|
+
"tw-leading-none",
|
|
3149
|
+
"tw-whitespace-nowrap",
|
|
3150
|
+
"tw-select-none",
|
|
3151
|
+
"tw-cursor-pointer",
|
|
3152
|
+
"tw-transition-shadow",
|
|
3153
|
+
"[&_svg]:tw-shrink-0",
|
|
3154
|
+
// focus — a neutral Google-blue ring, independent of the active brand.
|
|
3155
|
+
"focus-visible:tw-outline-none",
|
|
3156
|
+
"focus-visible:tw-ring-2",
|
|
3157
|
+
"focus-visible:tw-ring-[#4285f4]/60",
|
|
3158
|
+
// disabled
|
|
3159
|
+
"disabled:tw-cursor-not-allowed",
|
|
3160
|
+
"disabled:tw-opacity-60",
|
|
3161
|
+
// dark treatment — auto-applied under html[data-theme=dark], overriding
|
|
3162
|
+
// whichever `variant` is active (the ancestor selector out-specifies the
|
|
3163
|
+
// variant's plain color classes).
|
|
3164
|
+
"[[data-theme=dark]_&]:tw-bg-[#131314]",
|
|
3165
|
+
"[[data-theme=dark]_&]:tw-text-[#e3e3e3]",
|
|
3166
|
+
"[[data-theme=dark]_&]:tw-border-[#8e918f]",
|
|
3167
|
+
"[[data-theme=dark]_&]:hover:not-disabled:tw-bg-[#1e1f20]",
|
|
3168
|
+
"[[data-theme=dark]_&]:hover:not-disabled:tw-shadow-none"
|
|
3169
|
+
],
|
|
3170
|
+
{
|
|
3171
|
+
defaultVariants: {
|
|
3172
|
+
variant: "default",
|
|
3173
|
+
shape: "rectangular",
|
|
3174
|
+
size: "default"
|
|
3175
|
+
},
|
|
3176
|
+
variants: {
|
|
3177
|
+
// Google's approved light-scheme treatments; dark (above) overrides both.
|
|
3178
|
+
variant: {
|
|
3179
|
+
default: [
|
|
3180
|
+
"tw-bg-white",
|
|
3181
|
+
"tw-text-[#1f1f1f]",
|
|
3182
|
+
"tw-border-[#747775]",
|
|
3183
|
+
"hover:not-disabled:tw-bg-[#f7f8f8]",
|
|
3184
|
+
"hover:not-disabled:tw-shadow-[0_1px_2px_0_rgba(60,64,67,0.30),0_1px_3px_1px_rgba(60,64,67,0.15)]"
|
|
3185
|
+
],
|
|
3186
|
+
neutral: [
|
|
3187
|
+
"tw-bg-[#f2f2f2]",
|
|
3188
|
+
"tw-text-[#1f1f1f]",
|
|
3189
|
+
"tw-border-transparent",
|
|
3190
|
+
"hover:not-disabled:tw-bg-[#e8eaed]"
|
|
3191
|
+
]
|
|
3192
|
+
},
|
|
3193
|
+
shape: {
|
|
3194
|
+
rectangular: ["tw-rounded"],
|
|
3195
|
+
circle: ["tw-rounded-full"]
|
|
3196
|
+
},
|
|
3197
|
+
size: {
|
|
3198
|
+
default: ["tw-gap-2.5", "tw-px-3"],
|
|
3199
|
+
icon: ["tw-w-10", "tw-p-0"]
|
|
3200
|
+
}
|
|
3201
|
+
}
|
|
3202
|
+
}
|
|
3203
|
+
);
|
|
3204
|
+
var GoogleButton = ({
|
|
3205
|
+
ref,
|
|
3206
|
+
variant = "default",
|
|
3207
|
+
shape = "rectangular",
|
|
3208
|
+
size = "default",
|
|
3209
|
+
label = "signin",
|
|
3210
|
+
isLoading = false,
|
|
3211
|
+
disabled = false,
|
|
3212
|
+
type = "button",
|
|
3213
|
+
className,
|
|
3214
|
+
children,
|
|
3215
|
+
style,
|
|
3216
|
+
...buttonProps
|
|
3217
|
+
}) => /* @__PURE__ */ jsxs(
|
|
3218
|
+
"button",
|
|
3219
|
+
{
|
|
3220
|
+
...buttonProps,
|
|
3221
|
+
ref,
|
|
3222
|
+
type,
|
|
3223
|
+
disabled,
|
|
3224
|
+
style: { ...style, fontFamily: GOOGLE_FONT_STACK },
|
|
3225
|
+
className: cn(variants3({ variant, shape, size }), className),
|
|
3226
|
+
children: [
|
|
3227
|
+
isLoading ? /* @__PURE__ */ jsx(icons_exports.Loader2, { className: "tw-size-5 tw-shrink-0 tw-animate-spin", "aria-hidden": "true" }) : /* @__PURE__ */ jsx(Google, { className: "tw-size-5" }),
|
|
3228
|
+
/* @__PURE__ */ jsx(
|
|
3229
|
+
"span",
|
|
3230
|
+
{
|
|
3231
|
+
className: cn({
|
|
3232
|
+
"tw-sr-only": size === "icon"
|
|
3233
|
+
}),
|
|
3234
|
+
children: children ?? LABELS[label]
|
|
3235
|
+
}
|
|
3236
|
+
)
|
|
3237
|
+
]
|
|
3238
|
+
}
|
|
3239
|
+
);
|
|
3083
3240
|
var Link = ({
|
|
3084
3241
|
ref,
|
|
3085
3242
|
children,
|
|
@@ -4036,8 +4193,8 @@ var FullScreenModalHeader = ({
|
|
|
4036
4193
|
{
|
|
4037
4194
|
text: previousTitle,
|
|
4038
4195
|
className: cn(
|
|
4039
|
-
"tw-relative tw-top-0 tw-cursor-pointer tw-text-base tw-font-normal tw-text-
|
|
4040
|
-
"hover:tw-text-
|
|
4196
|
+
"tw-relative tw-top-0 tw-cursor-pointer tw-text-base tw-font-normal tw-text-muted-foreground tw-underline",
|
|
4197
|
+
"hover:tw-text-foreground hover:tw-no-underline",
|
|
4041
4198
|
isTitleWithIcon && "tw-ml-14"
|
|
4042
4199
|
)
|
|
4043
4200
|
}
|
|
@@ -4285,7 +4442,7 @@ Sheet.Title = SheetTitle;
|
|
|
4285
4442
|
Sheet.Header = SheetHeader;
|
|
4286
4443
|
Sheet.Footer = SheetFooter;
|
|
4287
4444
|
Sheet.Body = SheetBody;
|
|
4288
|
-
var
|
|
4445
|
+
var variants4 = cva(
|
|
4289
4446
|
[
|
|
4290
4447
|
"tailwindcss-preflight",
|
|
4291
4448
|
"tw-group/popover-content",
|
|
@@ -4357,7 +4514,7 @@ var PopoverContent = ({
|
|
|
4357
4514
|
ref,
|
|
4358
4515
|
align: matchTriggerWidth ? "start" : align,
|
|
4359
4516
|
sideOffset,
|
|
4360
|
-
className: cn(
|
|
4517
|
+
className: cn(variants4({ className, matchTriggerWidth, variant: effectiveVariant })),
|
|
4361
4518
|
onEscapeKeyDown: (event) => {
|
|
4362
4519
|
event.stopPropagation();
|
|
4363
4520
|
onEscapeKeyDown?.(event);
|
|
@@ -10990,8 +11147,8 @@ var ClearButton = ({ onClick, testId }) => {
|
|
|
10990
11147
|
"tw-flex",
|
|
10991
11148
|
"tw-items-center",
|
|
10992
11149
|
"tw-cursor-pointer",
|
|
10993
|
-
"tw-text-
|
|
10994
|
-
"hover:tw-text-
|
|
11150
|
+
"tw-text-muted-foreground",
|
|
11151
|
+
"hover:tw-text-foreground"
|
|
10995
11152
|
),
|
|
10996
11153
|
"data-testid": testId,
|
|
10997
11154
|
children: /* @__PURE__ */ jsx(icons_exports.X, { className: "tw-size-4" })
|
|
@@ -11373,7 +11530,7 @@ var SelectSeparator = ({ className, ...props }) => /* @__PURE__ */ jsx(
|
|
|
11373
11530
|
className: cn("tw-mx-2 tw-my-1 tw-h-px tw-bg-border", className)
|
|
11374
11531
|
}
|
|
11375
11532
|
);
|
|
11376
|
-
var
|
|
11533
|
+
var variants5 = cva(
|
|
11377
11534
|
[
|
|
11378
11535
|
"tailwindcss-preflight",
|
|
11379
11536
|
"tw-group",
|
|
@@ -11536,7 +11693,7 @@ var SelectTrigger = ({
|
|
|
11536
11693
|
SelectPrimitive.Trigger,
|
|
11537
11694
|
{
|
|
11538
11695
|
ref,
|
|
11539
|
-
className: cn(
|
|
11696
|
+
className: cn(variants5({ variant: effectiveVariant, state, sizing }), className),
|
|
11540
11697
|
...props,
|
|
11541
11698
|
children: [
|
|
11542
11699
|
/* @__PURE__ */ jsx(SelectPrimitive.Value, { placeholder }),
|
|
@@ -11832,23 +11989,23 @@ var BadgeLabel = ({
|
|
|
11832
11989
|
var badgeColors = {
|
|
11833
11990
|
gray: "tw-bg-neutral-400 tw-text-white tw-decoration-neutral-400",
|
|
11834
11991
|
"gray-darker": "tw-bg-neutral-500 tw-text-white tw-decoration-neutral-500",
|
|
11835
|
-
"gray-inverse": "tw-bg-neutral-100 tw-text-neutral-
|
|
11992
|
+
"gray-inverse": "tw-bg-neutral-100 tw-text-neutral-500 tw-decoration-neutral-100 [[data-theme=dark]_&]:tw-bg-neutral-800 [[data-theme=dark]_&]:tw-text-neutral-300 [[data-theme=dark]_&]:tw-decoration-neutral-800",
|
|
11836
11993
|
green: "tw-bg-green-500 tw-text-white tw-decoration-green-500",
|
|
11837
11994
|
"green-darker": "tw-bg-green-600 tw-text-white tw-decoration-green-600",
|
|
11838
|
-
"green-inverse": "tw-bg-green-100 tw-text-green-900 tw-decoration-green-100",
|
|
11995
|
+
"green-inverse": "tw-bg-green-100 tw-text-green-900 tw-decoration-green-100 [[data-theme=dark]_&]:tw-bg-green-900 [[data-theme=dark]_&]:tw-text-green-200 [[data-theme=dark]_&]:tw-decoration-green-900",
|
|
11839
11996
|
blue: "tw-bg-blue-500 tw-text-white tw-decoration-blue-500",
|
|
11840
|
-
"blue-inverse": "tw-bg-blue-100 tw-text-blue-600 tw-decoration-blue-100",
|
|
11997
|
+
"blue-inverse": "tw-bg-blue-100 tw-text-blue-600 tw-decoration-blue-100 [[data-theme=dark]_&]:tw-bg-blue-900 [[data-theme=dark]_&]:tw-text-blue-200 [[data-theme=dark]_&]:tw-decoration-blue-900",
|
|
11841
11998
|
red: "tw-bg-error-500 tw-text-white tw-decoration-error-500",
|
|
11842
11999
|
orange: "tw-bg-warning-500 tw-text-white tw-decoration-warning-500",
|
|
11843
|
-
"orange-inverse": "tw-bg-warning-100 tw-text-warning-500 tw-decoration-warning-100",
|
|
12000
|
+
"orange-inverse": "tw-bg-warning-100 tw-text-warning-500 tw-decoration-warning-100 [[data-theme=dark]_&]:tw-bg-warning-900 [[data-theme=dark]_&]:tw-text-warning-200 [[data-theme=dark]_&]:tw-decoration-warning-900",
|
|
11844
12001
|
amber: "tw-bg-warning-300 tw-text-warning-800 tw-decoration-warning-300",
|
|
11845
12002
|
"amber-inverse": "tw-bg-warning-100 tw-text-warning-700 tw-decoration-warning-100",
|
|
11846
12003
|
teal: "tw-bg-teal-500 tw-text-white tw-decoration-teal-500",
|
|
11847
|
-
"teal-inverse": "tw-bg-teal-100 tw-text-teal-800 tw-decoration-teal-100",
|
|
12004
|
+
"teal-inverse": "tw-bg-teal-100 tw-text-teal-800 tw-decoration-teal-100 [[data-theme=dark]_&]:tw-bg-teal-900 [[data-theme=dark]_&]:tw-text-teal-200 [[data-theme=dark]_&]:tw-decoration-teal-900",
|
|
11848
12005
|
purple: "tw-bg-purple-500 tw-text-white tw-decoration-purple-500",
|
|
11849
|
-
"purple-inverse": "tw-bg-purple-100 tw-text-purple-800 tw-decoration-purple-100",
|
|
12006
|
+
"purple-inverse": "tw-bg-purple-100 tw-text-purple-800 tw-decoration-purple-100 [[data-theme=dark]_&]:tw-bg-purple-900 [[data-theme=dark]_&]:tw-text-purple-200 [[data-theme=dark]_&]:tw-decoration-purple-900",
|
|
11850
12007
|
cyan: "tw-bg-cyan-500 tw-text-white tw-decoration-cyan-500",
|
|
11851
|
-
"cyan-inverse": "tw-bg-cyan-100 tw-text-cyan-800 tw-decoration-cyan-100",
|
|
12008
|
+
"cyan-inverse": "tw-bg-cyan-100 tw-text-cyan-800 tw-decoration-cyan-100 [[data-theme=dark]_&]:tw-bg-cyan-900 [[data-theme=dark]_&]:tw-text-cyan-200 [[data-theme=dark]_&]:tw-decoration-cyan-900",
|
|
11852
12009
|
"sidebar-primary": "tw-bg-sidebar-primary tw-text-white tw-decoration-sidebar-primary",
|
|
11853
12010
|
white: "tw-bg-white/90 tw-text-neutral-600 tw-decoration-white/90"
|
|
11854
12011
|
};
|
|
@@ -15616,7 +15773,7 @@ var TableHeader = ({
|
|
|
15616
15773
|
"thead",
|
|
15617
15774
|
{
|
|
15618
15775
|
className: cn(
|
|
15619
|
-
"tw-sticky tw-top-0 tw-z-10 [&_tr]:tw-bg-
|
|
15776
|
+
"tw-sticky tw-top-0 tw-z-10 [&_tr]:tw-bg-table-header [&_tr]:tw-border-b [&_tr]:tw-border-border",
|
|
15620
15777
|
{ "tw-shadow-table": withShadow },
|
|
15621
15778
|
className
|
|
15622
15779
|
),
|
|
@@ -16841,7 +16998,7 @@ var PromptInput = ({
|
|
|
16841
16998
|
) : formEl });
|
|
16842
16999
|
};
|
|
16843
17000
|
PromptInput.Action = PromptInputAction;
|
|
16844
|
-
var
|
|
17001
|
+
var variants6 = cva(
|
|
16845
17002
|
["tw-relative", "tw-flex", "tw-items-center", "tw-z-0", "tw-overflow-x-hidden", "tw-w-full"],
|
|
16846
17003
|
{
|
|
16847
17004
|
defaultVariants: {
|
|
@@ -16867,7 +17024,7 @@ var Progress = ({
|
|
|
16867
17024
|
variant,
|
|
16868
17025
|
size,
|
|
16869
17026
|
...props
|
|
16870
|
-
}) => /* @__PURE__ */ jsx(Root$c, { ...props, ref, className: cn(
|
|
17027
|
+
}) => /* @__PURE__ */ jsx(Root$c, { ...props, ref, className: cn(variants6({ variant, size, className })), value, children: /* @__PURE__ */ jsx(
|
|
16871
17028
|
Indicator$1,
|
|
16872
17029
|
{
|
|
16873
17030
|
"data-slot": "progress-indicator",
|
|
@@ -17860,7 +18017,7 @@ var ToastTitle = ({
|
|
|
17860
18017
|
children
|
|
17861
18018
|
}
|
|
17862
18019
|
);
|
|
17863
|
-
var
|
|
18020
|
+
var variants7 = cva(
|
|
17864
18021
|
[
|
|
17865
18022
|
"tailwindcss-preflight",
|
|
17866
18023
|
"tw-group/toast",
|
|
@@ -17930,7 +18087,7 @@ var ToastRoot = ({
|
|
|
17930
18087
|
"data-variant": variant,
|
|
17931
18088
|
"data-argo": renderArgo,
|
|
17932
18089
|
className: cn(
|
|
17933
|
-
|
|
18090
|
+
variants7({ variant }),
|
|
17934
18091
|
"data-[variant=default]:data-[argo=true]:tw-bg-background"
|
|
17935
18092
|
),
|
|
17936
18093
|
children: [
|
|
@@ -18421,9 +18578,7 @@ var headerVariants = cva(
|
|
|
18421
18578
|
variants: {
|
|
18422
18579
|
variant: {
|
|
18423
18580
|
default: "tw-bg-muted",
|
|
18424
|
-
|
|
18425
|
-
// `background` is the page base, not an elevated panel surface.
|
|
18426
|
-
white: "tw-bg-white"
|
|
18581
|
+
white: "tw-bg-card"
|
|
18427
18582
|
},
|
|
18428
18583
|
isDisabled: {
|
|
18429
18584
|
true: "tw-cursor-not-allowed tw-opacity-50",
|
|
@@ -18488,7 +18643,7 @@ var CollapsiblePanel = ({
|
|
|
18488
18643
|
{
|
|
18489
18644
|
open,
|
|
18490
18645
|
className: cn(
|
|
18491
|
-
"tw-rounded !tw-border !tw-border-solid !tw-border-border tw-bg-
|
|
18646
|
+
"tw-rounded !tw-border !tw-border-solid !tw-border-border tw-bg-card",
|
|
18492
18647
|
className
|
|
18493
18648
|
),
|
|
18494
18649
|
header: /* @__PURE__ */ jsxs(
|
|
@@ -18696,6 +18851,18 @@ var tokensToCssVars = ({
|
|
|
18696
18851
|
vars.set("--font-weight-semibold", typography?.weight?.semibold);
|
|
18697
18852
|
vars.set("--font-weight-bold", typography?.weight?.bold);
|
|
18698
18853
|
vars.set("--letter-spacing-chrome", typography?.letterSpacing?.chrome);
|
|
18854
|
+
vars.set("--type-display-size", typography?.typeScale?.display?.size);
|
|
18855
|
+
vars.set("--type-display-weight", typography?.typeScale?.display?.weight);
|
|
18856
|
+
vars.set("--type-display-leading", typography?.typeScale?.display?.leading);
|
|
18857
|
+
vars.set("--type-display-tracking", typography?.typeScale?.display?.tracking);
|
|
18858
|
+
vars.set("--type-heading-size", typography?.typeScale?.heading?.size);
|
|
18859
|
+
vars.set("--type-heading-weight", typography?.typeScale?.heading?.weight);
|
|
18860
|
+
vars.set("--type-heading-leading", typography?.typeScale?.heading?.leading);
|
|
18861
|
+
vars.set("--type-heading-tracking", typography?.typeScale?.heading?.tracking);
|
|
18862
|
+
vars.set("--type-body-size", typography?.typeScale?.body?.size);
|
|
18863
|
+
vars.set("--type-body-weight", typography?.typeScale?.body?.weight);
|
|
18864
|
+
vars.set("--type-body-leading", typography?.typeScale?.body?.leading);
|
|
18865
|
+
vars.set("--type-body-tracking", typography?.typeScale?.body?.tracking);
|
|
18699
18866
|
vars.set("--radius-sm", radii?.sm);
|
|
18700
18867
|
vars.set("--radius-md", radii?.md);
|
|
18701
18868
|
vars.set("--radius-lg", radii?.lg);
|
|
@@ -20813,7 +20980,7 @@ var NavbarHeader = ({ children, className, ...rest }) => (
|
|
|
20813
20980
|
// renders null when the active brand ships no logo, so no provider gate needed.
|
|
20814
20981
|
/* @__PURE__ */ jsx("div", { ...rest, className: cn("tw-overflow-hidden", "tw-py-1.5", className), children: children ?? /* @__PURE__ */ jsx(BrandLogo, { variant: "wordmark", className: "tw-h-7" }) })
|
|
20815
20982
|
);
|
|
20816
|
-
var
|
|
20983
|
+
var variants8 = cva(["tw-p-0", "tw-flex", "tw-items-center", "tw-justify-center", "tw-gap-2"], {
|
|
20817
20984
|
variants: {
|
|
20818
20985
|
marker: {
|
|
20819
20986
|
none: [],
|
|
@@ -20833,7 +21000,7 @@ var variants7 = cva(["tw-p-0", "tw-flex", "tw-items-center", "tw-justify-center"
|
|
|
20833
21000
|
marker: "none"
|
|
20834
21001
|
}
|
|
20835
21002
|
});
|
|
20836
|
-
var NavbarMenu = ({ className, marker, ...rest }) => /* @__PURE__ */ jsx("ul", { ...rest, className:
|
|
21003
|
+
var NavbarMenu = ({ className, marker, ...rest }) => /* @__PURE__ */ jsx("ul", { ...rest, className: variants8({ marker, className }) });
|
|
20837
21004
|
var NavbarMenuAvatar = ({
|
|
20838
21005
|
ref,
|
|
20839
21006
|
className,
|
|
@@ -20885,7 +21052,7 @@ var NavbarMenuAvatar = ({
|
|
|
20885
21052
|
}
|
|
20886
21053
|
);
|
|
20887
21054
|
};
|
|
20888
|
-
var
|
|
21055
|
+
var variants9 = cva(
|
|
20889
21056
|
[
|
|
20890
21057
|
"tw-flex",
|
|
20891
21058
|
"tw-justify-center",
|
|
@@ -20936,9 +21103,9 @@ var NavbarMenuItemAdornment = ({
|
|
|
20936
21103
|
...props
|
|
20937
21104
|
}) => {
|
|
20938
21105
|
const Comp = asChild ? Slot : "span";
|
|
20939
|
-
return /* @__PURE__ */ jsx(Comp, { ...props, ref, className:
|
|
21106
|
+
return /* @__PURE__ */ jsx(Comp, { ...props, ref, className: variants9({ variant, className }) });
|
|
20940
21107
|
};
|
|
20941
|
-
var
|
|
21108
|
+
var variants10 = cva(
|
|
20942
21109
|
[
|
|
20943
21110
|
"tw-group/navbar-menu-button",
|
|
20944
21111
|
"tw-box-border",
|
|
@@ -21036,7 +21203,7 @@ var NavbarMenuButton = ({
|
|
|
21036
21203
|
ref,
|
|
21037
21204
|
type,
|
|
21038
21205
|
"data-variant": variant,
|
|
21039
|
-
className: cn(
|
|
21206
|
+
className: cn(variants10({ className, variant })),
|
|
21040
21207
|
children: [
|
|
21041
21208
|
adornment && /* @__PURE__ */ jsx(NavbarMenuItemAdornment, { variant: adornmentVariant, children: adornment }),
|
|
21042
21209
|
/* @__PURE__ */ jsx(Slottable, { children })
|
|
@@ -22300,7 +22467,7 @@ Pagination.Button = PaginationButton;
|
|
|
22300
22467
|
Pagination.Previous = PaginationPrevious;
|
|
22301
22468
|
Pagination.Next = PaginationNext;
|
|
22302
22469
|
Pagination.Ellipsis = PaginationEllipsis;
|
|
22303
|
-
var
|
|
22470
|
+
var variants11 = cva(["tw-p-0.5", "tw-text-inherit", "tw-inline-flex"], {
|
|
22304
22471
|
variants: {
|
|
22305
22472
|
diff: {
|
|
22306
22473
|
added: ["tw-bg-green-200"],
|
|
@@ -22308,8 +22475,8 @@ var variants10 = cva(["tw-p-0.5", "tw-text-inherit", "tw-inline-flex"], {
|
|
|
22308
22475
|
}
|
|
22309
22476
|
}
|
|
22310
22477
|
});
|
|
22311
|
-
var DiffViewMark = ({ diff, children, className, ...props }) => /* @__PURE__ */ jsx("mark", { ...props, className: cn(
|
|
22312
|
-
var
|
|
22478
|
+
var DiffViewMark = ({ diff, children, className, ...props }) => /* @__PURE__ */ jsx("mark", { ...props, className: cn(variants11({ diff, className })), children });
|
|
22479
|
+
var variants12 = cva(
|
|
22313
22480
|
[
|
|
22314
22481
|
// reset global styles
|
|
22315
22482
|
"[&_pre]:tw-p-0",
|
|
@@ -22377,7 +22544,7 @@ var variants11 = cva(
|
|
|
22377
22544
|
);
|
|
22378
22545
|
var DiffViewTd = ({ diff, variant = "default", children, className, ...props }) => {
|
|
22379
22546
|
const needsCodeFormatting = variant === "code" || variant === "gutter";
|
|
22380
|
-
return /* @__PURE__ */ jsx("td", { ...props, className: cn(
|
|
22547
|
+
return /* @__PURE__ */ jsx("td", { ...props, className: cn(variants12({ variant, className, diff })), children: needsCodeFormatting ? /* @__PURE__ */ jsx("pre", { children }) : children });
|
|
22381
22548
|
};
|
|
22382
22549
|
var DiffViewTh = ({ variant = "default", children, className, ...props }) => /* @__PURE__ */ jsx(
|
|
22383
22550
|
"th",
|
|
@@ -23201,6 +23368,150 @@ var pairChunksIntoConflicts = (chunks) => {
|
|
|
23201
23368
|
}
|
|
23202
23369
|
return conflicts;
|
|
23203
23370
|
};
|
|
23371
|
+
var DashboardHeroRoot = ({ className, children, ...rest }) => /* @__PURE__ */ jsx(
|
|
23372
|
+
"section",
|
|
23373
|
+
{
|
|
23374
|
+
className: cn(
|
|
23375
|
+
"tw-flex tw-flex-col tw-gap-6 tw-rounded-lg tw-border tw-border-solid tw-border-border tw-bg-card tw-p-8 tw-text-card-foreground",
|
|
23376
|
+
"md:tw-flex-row md:tw-items-center md:tw-justify-between",
|
|
23377
|
+
className
|
|
23378
|
+
),
|
|
23379
|
+
...rest,
|
|
23380
|
+
children
|
|
23381
|
+
}
|
|
23382
|
+
);
|
|
23383
|
+
var DashboardHeroBody = ({ className, children, ...rest }) => /* @__PURE__ */ jsx("div", { className: cn("tw-flex tw-flex-col tw-gap-3", className), ...rest, children });
|
|
23384
|
+
var DashboardHeroEyebrow = ({ className, children, ...rest }) => /* @__PURE__ */ jsx(
|
|
23385
|
+
"p",
|
|
23386
|
+
{
|
|
23387
|
+
className: cn(
|
|
23388
|
+
"tw-m-0 tw-text-sm tw-font-semibold tw-uppercase tw-tracking-wide tw-text-primary",
|
|
23389
|
+
className
|
|
23390
|
+
),
|
|
23391
|
+
...rest,
|
|
23392
|
+
children
|
|
23393
|
+
}
|
|
23394
|
+
);
|
|
23395
|
+
var DashboardHeroTitle = ({ className, children, ...rest }) => /* @__PURE__ */ jsx(
|
|
23396
|
+
"h1",
|
|
23397
|
+
{
|
|
23398
|
+
className: cn(
|
|
23399
|
+
"tw-m-0 tw-text-3xl tw-font-semibold tw-leading-tight tw-tracking-tight tw-text-foreground",
|
|
23400
|
+
className
|
|
23401
|
+
),
|
|
23402
|
+
...rest,
|
|
23403
|
+
children
|
|
23404
|
+
}
|
|
23405
|
+
);
|
|
23406
|
+
var DashboardHeroDescription = ({ className, children, ...rest }) => /* @__PURE__ */ jsx(
|
|
23407
|
+
"p",
|
|
23408
|
+
{
|
|
23409
|
+
className: cn("tw-m-0 tw-max-w-prose tw-text-base tw-text-muted-foreground", className),
|
|
23410
|
+
...rest,
|
|
23411
|
+
children
|
|
23412
|
+
}
|
|
23413
|
+
);
|
|
23414
|
+
var DashboardHeroActions = ({ className, children, ...rest }) => /* @__PURE__ */ jsx("div", { className: cn("tw-mt-2 tw-flex tw-flex-wrap tw-items-center tw-gap-3", className), ...rest, children });
|
|
23415
|
+
var DashboardHeroAside = ({ className, children, ...rest }) => /* @__PURE__ */ jsx("div", { className: cn("tw-flex tw-shrink-0 tw-flex-col tw-gap-2", className), ...rest, children });
|
|
23416
|
+
var DashboardHero = DashboardHeroRoot;
|
|
23417
|
+
DashboardHero.Body = DashboardHeroBody;
|
|
23418
|
+
DashboardHero.Eyebrow = DashboardHeroEyebrow;
|
|
23419
|
+
DashboardHero.Title = DashboardHeroTitle;
|
|
23420
|
+
DashboardHero.Description = DashboardHeroDescription;
|
|
23421
|
+
DashboardHero.Actions = DashboardHeroActions;
|
|
23422
|
+
DashboardHero.Aside = DashboardHeroAside;
|
|
23423
|
+
var trendClassnames = cva(
|
|
23424
|
+
["tw-inline-flex", "tw-items-center", "tw-gap-1", "tw-text-sm", "tw-font-medium"],
|
|
23425
|
+
{
|
|
23426
|
+
variants: {
|
|
23427
|
+
direction: {
|
|
23428
|
+
up: "tw-text-success",
|
|
23429
|
+
down: "tw-text-destructive",
|
|
23430
|
+
flat: "tw-text-muted-foreground"
|
|
23431
|
+
}
|
|
23432
|
+
},
|
|
23433
|
+
defaultVariants: {
|
|
23434
|
+
direction: "flat"
|
|
23435
|
+
}
|
|
23436
|
+
}
|
|
23437
|
+
);
|
|
23438
|
+
var StatCardRoot = ({ className, children, bordered = true, ...rest }) => /* @__PURE__ */ jsx(Card, { bordered, className: cn("tw-gap-2", className), role: "group", ...rest, children });
|
|
23439
|
+
var StatCardIcon = ({ className, children, ...rest }) => /* @__PURE__ */ jsx(
|
|
23440
|
+
"div",
|
|
23441
|
+
{
|
|
23442
|
+
className: cn(
|
|
23443
|
+
"tw-flex tw-size-9 tw-items-center tw-justify-center tw-rounded-md tw-bg-accent tw-text-accent-foreground",
|
|
23444
|
+
'[&_svg:not([class*="tw-size-"])]:tw-size-5',
|
|
23445
|
+
className
|
|
23446
|
+
),
|
|
23447
|
+
...rest,
|
|
23448
|
+
children
|
|
23449
|
+
}
|
|
23450
|
+
);
|
|
23451
|
+
var StatCardLabel = ({ className, children, ...rest }) => /* @__PURE__ */ jsx(
|
|
23452
|
+
"p",
|
|
23453
|
+
{
|
|
23454
|
+
className: cn("tw-m-0 tw-text-sm tw-font-medium tw-text-muted-foreground", className),
|
|
23455
|
+
...rest,
|
|
23456
|
+
children
|
|
23457
|
+
}
|
|
23458
|
+
);
|
|
23459
|
+
var StatCardValue = ({ className, children, ...rest }) => /* @__PURE__ */ jsx(
|
|
23460
|
+
"p",
|
|
23461
|
+
{
|
|
23462
|
+
className: cn(
|
|
23463
|
+
"tw-m-0 tw-text-3xl tw-font-semibold tw-leading-tight tw-tracking-tight tw-text-foreground",
|
|
23464
|
+
className
|
|
23465
|
+
),
|
|
23466
|
+
...rest,
|
|
23467
|
+
children
|
|
23468
|
+
}
|
|
23469
|
+
);
|
|
23470
|
+
var StatCardTrend = ({ className, direction = "flat", icon, children, ...rest }) => /* @__PURE__ */ jsxs("span", { className: trendClassnames({ direction, className }), ...rest, children: [
|
|
23471
|
+
icon,
|
|
23472
|
+
children
|
|
23473
|
+
] });
|
|
23474
|
+
var StatCardFootnote = ({ className, children, ...rest }) => /* @__PURE__ */ jsx("p", { className: cn("tw-m-0 tw-text-xs tw-text-muted-foreground", className), ...rest, children });
|
|
23475
|
+
var StatCard = StatCardRoot;
|
|
23476
|
+
StatCard.Icon = StatCardIcon;
|
|
23477
|
+
StatCard.Label = StatCardLabel;
|
|
23478
|
+
StatCard.Value = StatCardValue;
|
|
23479
|
+
StatCard.Trend = StatCardTrend;
|
|
23480
|
+
StatCard.Footnote = StatCardFootnote;
|
|
23481
|
+
var gridClassnames = cva(["tw-grid", "tw-gap-4"], {
|
|
23482
|
+
variants: {
|
|
23483
|
+
columns: {
|
|
23484
|
+
2: "tw-grid-cols-1 sm:tw-grid-cols-2",
|
|
23485
|
+
3: "tw-grid-cols-1 sm:tw-grid-cols-2 lg:tw-grid-cols-3",
|
|
23486
|
+
4: "tw-grid-cols-1 sm:tw-grid-cols-2 lg:tw-grid-cols-4"
|
|
23487
|
+
}
|
|
23488
|
+
},
|
|
23489
|
+
defaultVariants: {
|
|
23490
|
+
columns: 4
|
|
23491
|
+
}
|
|
23492
|
+
});
|
|
23493
|
+
var StatCardGrid = ({ className, columns = 4, children, ...rest }) => /* @__PURE__ */ jsx("div", { className: gridClassnames({ columns, className }), ...rest, children });
|
|
23494
|
+
var ChartPanel = ({
|
|
23495
|
+
title,
|
|
23496
|
+
description,
|
|
23497
|
+
titleAs = "h3",
|
|
23498
|
+
toolbar,
|
|
23499
|
+
footer,
|
|
23500
|
+
className,
|
|
23501
|
+
bordered = true,
|
|
23502
|
+
children,
|
|
23503
|
+
...rest
|
|
23504
|
+
}) => /* @__PURE__ */ jsxs(Card, { bordered, className: cn("tw-gap-4", className), ...rest, children: [
|
|
23505
|
+
/* @__PURE__ */ jsxs(Card.Header, { className: "tw-flex tw-items-start tw-justify-between tw-gap-4", children: [
|
|
23506
|
+
/* @__PURE__ */ jsxs("div", { className: "tw-flex tw-flex-col tw-gap-1", children: [
|
|
23507
|
+
/* @__PURE__ */ jsx(Card.Title, { as: titleAs, children: title }),
|
|
23508
|
+
description ? /* @__PURE__ */ jsx("p", { className: "tw-m-0 tw-text-sm tw-text-muted-foreground", children: description }) : null
|
|
23509
|
+
] }),
|
|
23510
|
+
toolbar ? /* @__PURE__ */ jsx("div", { className: "tw-flex tw-shrink-0 tw-items-center tw-gap-2", children: toolbar }) : null
|
|
23511
|
+
] }),
|
|
23512
|
+
/* @__PURE__ */ jsx(Card.Content, { children }),
|
|
23513
|
+
footer ? /* @__PURE__ */ jsx("div", { className: "tw-border-0 tw-border-t tw-border-solid tw-border-border tw-pt-3 tw-text-sm tw-text-muted-foreground", children: footer }) : null
|
|
23514
|
+
] });
|
|
23204
23515
|
var { fieldContext, useFieldContext, formContext, useFormContext } = createFormHookContexts();
|
|
23205
23516
|
var FormBody = ({ children, className, ...formProps }) => {
|
|
23206
23517
|
const form = useFormContext();
|
|
@@ -23640,6 +23951,686 @@ function useAutosizeInput({
|
|
|
23640
23951
|
] });
|
|
23641
23952
|
return { inputRef, inputStyle, sizerElement };
|
|
23642
23953
|
}
|
|
23954
|
+
|
|
23955
|
+
// src/blocks/BrandEditor/color.ts
|
|
23956
|
+
var hexToChannels = (hex) => {
|
|
23957
|
+
let h = hex.trim().replace(/^#/, "");
|
|
23958
|
+
if (h.length === 3 || h.length === 4) {
|
|
23959
|
+
h = h.slice(0, 3).split("").map((c) => c + c).join("");
|
|
23960
|
+
} else if (h.length === 8) {
|
|
23961
|
+
h = h.slice(0, 6);
|
|
23962
|
+
}
|
|
23963
|
+
if (!/^[0-9a-fA-F]{6}$/.test(h)) return "0 0 0";
|
|
23964
|
+
const n = parseInt(h, 16);
|
|
23965
|
+
return `${n >> 16 & 255} ${n >> 8 & 255} ${n & 255}`;
|
|
23966
|
+
};
|
|
23967
|
+
var channelsToHex = (channels) => {
|
|
23968
|
+
const [r = 0, g = 0, b = 0] = channels.trim().split(/\s+/).map((n) => Number(n) || 0);
|
|
23969
|
+
const to2 = (v) => Math.max(0, Math.min(255, v)).toString(16).padStart(2, "0");
|
|
23970
|
+
return `#${to2(r)}${to2(g)}${to2(b)}`;
|
|
23971
|
+
};
|
|
23972
|
+
var COMPLETE_HEX = /^([0-9a-fA-F]{3,4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})$/;
|
|
23973
|
+
var ColorField = ({ id, label, channels, onChange }) => {
|
|
23974
|
+
const hex = channelsToHex(channels);
|
|
23975
|
+
return /* @__PURE__ */ jsxs("div", { className: "tw-flex tw-items-center tw-justify-between tw-gap-2", children: [
|
|
23976
|
+
/* @__PURE__ */ jsx(Label2, { htmlFor: id, className: "tw-text-xs tw-font-normal tw-text-foreground", children: label }),
|
|
23977
|
+
/* @__PURE__ */ jsx(
|
|
23978
|
+
ColorInput,
|
|
23979
|
+
{
|
|
23980
|
+
id,
|
|
23981
|
+
sizing: "medium",
|
|
23982
|
+
value: hex,
|
|
23983
|
+
className: "tw-w-36",
|
|
23984
|
+
onValueChange: (next) => {
|
|
23985
|
+
const clean = next.trim().replace(/^#/, "");
|
|
23986
|
+
if (COMPLETE_HEX.test(clean)) onChange(hexToChannels(`#${clean}`));
|
|
23987
|
+
}
|
|
23988
|
+
}
|
|
23989
|
+
)
|
|
23990
|
+
] });
|
|
23991
|
+
};
|
|
23992
|
+
|
|
23993
|
+
// src/blocks/BrandEditor/contrast.ts
|
|
23994
|
+
var clampChannel = (n) => Number.isFinite(n) ? Math.min(255, Math.max(0, n)) : 0;
|
|
23995
|
+
var parseChannels = (channels) => {
|
|
23996
|
+
const [r = 0, g = 0, b = 0] = channels.trim().split(/\s+/).map((n) => clampChannel(Number(n)));
|
|
23997
|
+
return [r, g, b];
|
|
23998
|
+
};
|
|
23999
|
+
var relativeLuminance = (channels) => {
|
|
24000
|
+
const [r = 0, g = 0, b = 0] = parseChannels(channels).map((c) => {
|
|
24001
|
+
const s = c / 255;
|
|
24002
|
+
return s <= 0.03928 ? s / 12.92 : ((s + 0.055) / 1.055) ** 2.4;
|
|
24003
|
+
});
|
|
24004
|
+
return 0.2126 * r + 0.7152 * g + 0.0722 * b;
|
|
24005
|
+
};
|
|
24006
|
+
var contrastRatio = (fg, bg) => {
|
|
24007
|
+
const l1 = relativeLuminance(fg);
|
|
24008
|
+
const l2 = relativeLuminance(bg);
|
|
24009
|
+
const [lighter, darker] = l1 >= l2 ? [l1, l2] : [l2, l1];
|
|
24010
|
+
return (lighter + 0.05) / (darker + 0.05);
|
|
24011
|
+
};
|
|
24012
|
+
var wcagLevel = (ratio) => ratio >= 7 ? "AAA" : ratio >= 4.5 ? "AA" : "fail";
|
|
24013
|
+
var ControlSection = ({ title, children }) => /* @__PURE__ */ jsxs("section", { className: "tw-flex tw-flex-col tw-gap-3 tw-border-b tw-border-border tw-p-4", children: [
|
|
24014
|
+
/* @__PURE__ */ jsx("h3", { className: "tw-m-0 tw-text-xs tw-font-semibold tw-uppercase tw-tracking-wide tw-text-muted-foreground", children: title }),
|
|
24015
|
+
children
|
|
24016
|
+
] });
|
|
24017
|
+
var LogoField = ({ id, label, value, onChange }) => /* @__PURE__ */ jsxs("div", { className: "tw-flex tw-flex-col tw-gap-1", children: [
|
|
24018
|
+
/* @__PURE__ */ jsx(Label2, { htmlFor: id, className: "tw-text-xs tw-font-normal tw-text-foreground", children: label }),
|
|
24019
|
+
/* @__PURE__ */ jsx(
|
|
24020
|
+
Textarea,
|
|
24021
|
+
{
|
|
24022
|
+
id,
|
|
24023
|
+
value,
|
|
24024
|
+
onValueChange: onChange,
|
|
24025
|
+
maxRows: 4,
|
|
24026
|
+
placeholder: "<svg\u2026>, a data: URI, or an https:// URL",
|
|
24027
|
+
className: "tw-font-mono tw-text-xs"
|
|
24028
|
+
}
|
|
24029
|
+
)
|
|
24030
|
+
] });
|
|
24031
|
+
var TextField2 = ({ id, label, value, onChange, placeholder }) => /* @__PURE__ */ jsxs("div", { className: "tw-flex tw-flex-col tw-gap-1", children: [
|
|
24032
|
+
/* @__PURE__ */ jsx(Label2, { htmlFor: id, className: "tw-text-xs tw-font-normal tw-text-foreground", children: label }),
|
|
24033
|
+
/* @__PURE__ */ jsx(
|
|
24034
|
+
TextInput,
|
|
24035
|
+
{
|
|
24036
|
+
id,
|
|
24037
|
+
sizing: "small",
|
|
24038
|
+
value,
|
|
24039
|
+
onValueChange: onChange,
|
|
24040
|
+
placeholder,
|
|
24041
|
+
className: "tw-font-mono tw-text-xs"
|
|
24042
|
+
}
|
|
24043
|
+
)
|
|
24044
|
+
] });
|
|
24045
|
+
var DEFAULT_FALLBACK_FONT = "'Inter', system-ui, sans-serif";
|
|
24046
|
+
var DEFAULT_FONT_OPTIONS = [
|
|
24047
|
+
{ value: DEFAULT_FALLBACK_FONT, label: "Inter (default)" },
|
|
24048
|
+
{ value: "'Space Grotesk', system-ui, sans-serif", label: "Space Grotesk" },
|
|
24049
|
+
{ value: "'Poppins', system-ui, sans-serif", label: "Poppins" },
|
|
24050
|
+
{ value: "'Manrope', system-ui, sans-serif", label: "Manrope" },
|
|
24051
|
+
{ value: "'Quicksand', system-ui, sans-serif", label: "Quicksand" },
|
|
24052
|
+
{ value: "'Baloo 2', system-ui, sans-serif", label: "Baloo 2" },
|
|
24053
|
+
{ value: "'Fraunces', Georgia, serif", label: "Fraunces (serif)" },
|
|
24054
|
+
{ value: "Georgia, 'Times New Roman', serif", label: "Georgia (serif)" },
|
|
24055
|
+
{ value: "'JetBrains Mono', ui-monospace, monospace", label: "JetBrains Mono" },
|
|
24056
|
+
{ value: "system-ui, sans-serif", label: "System UI" }
|
|
24057
|
+
];
|
|
24058
|
+
var COLOR_LABELS = {
|
|
24059
|
+
primary: "Primary",
|
|
24060
|
+
primaryForeground: "Primary foreground",
|
|
24061
|
+
background: "Background",
|
|
24062
|
+
foreground: "Foreground",
|
|
24063
|
+
card: "Card",
|
|
24064
|
+
cardForeground: "Card foreground",
|
|
24065
|
+
popover: "Popover",
|
|
24066
|
+
popoverForeground: "Popover foreground",
|
|
24067
|
+
secondary: "Secondary",
|
|
24068
|
+
secondaryForeground: "Secondary foreground",
|
|
24069
|
+
muted: "Muted",
|
|
24070
|
+
mutedForeground: "Muted foreground",
|
|
24071
|
+
accent: "Accent",
|
|
24072
|
+
accentForeground: "Accent foreground",
|
|
24073
|
+
border: "Border",
|
|
24074
|
+
input: "Input",
|
|
24075
|
+
ring: "Ring",
|
|
24076
|
+
ringOffset: "Ring offset",
|
|
24077
|
+
destructive: "Destructive",
|
|
24078
|
+
destructiveForeground: "Destructive foreground",
|
|
24079
|
+
success: "Success",
|
|
24080
|
+
successForeground: "Success foreground",
|
|
24081
|
+
warning: "Warning",
|
|
24082
|
+
warningForeground: "Warning foreground",
|
|
24083
|
+
info: "Info",
|
|
24084
|
+
infoForeground: "Info foreground"
|
|
24085
|
+
};
|
|
24086
|
+
var SIDEBAR_LABELS = {
|
|
24087
|
+
sidebar: "Sidebar",
|
|
24088
|
+
sidebarForeground: "Foreground",
|
|
24089
|
+
sidebarPrimary: "Primary",
|
|
24090
|
+
sidebarPrimaryForeground: "Primary foreground",
|
|
24091
|
+
sidebarAccent: "Accent",
|
|
24092
|
+
sidebarAccentForeground: "Accent foreground",
|
|
24093
|
+
sidebarBorder: "Border",
|
|
24094
|
+
sidebarRing: "Ring"
|
|
24095
|
+
};
|
|
24096
|
+
var CHART_LABELS = {
|
|
24097
|
+
chart1: "Chart 1",
|
|
24098
|
+
chart2: "Chart 2",
|
|
24099
|
+
chart3: "Chart 3",
|
|
24100
|
+
chart4: "Chart 4",
|
|
24101
|
+
chart5: "Chart 5"
|
|
24102
|
+
};
|
|
24103
|
+
var WEIGHT_LABELS = {
|
|
24104
|
+
normal: "Normal",
|
|
24105
|
+
medium: "Medium",
|
|
24106
|
+
semibold: "Semibold",
|
|
24107
|
+
bold: "Bold"
|
|
24108
|
+
};
|
|
24109
|
+
var SHADOW_LABELS = {
|
|
24110
|
+
sm: "Small",
|
|
24111
|
+
md: "Medium",
|
|
24112
|
+
lg: "Large",
|
|
24113
|
+
lift: "Lift (raised)"
|
|
24114
|
+
};
|
|
24115
|
+
var SPACING_LABELS = {
|
|
24116
|
+
gutter: "Gutter (between sections)",
|
|
24117
|
+
inset: "Inset (in-container)"
|
|
24118
|
+
};
|
|
24119
|
+
var MOTION_LABELS = {
|
|
24120
|
+
duration: "Duration",
|
|
24121
|
+
easing: "Easing"
|
|
24122
|
+
};
|
|
24123
|
+
var COLOR_SLOTS = Object.keys(COLOR_LABELS);
|
|
24124
|
+
var SIDEBAR_SLOTS = Object.keys(SIDEBAR_LABELS);
|
|
24125
|
+
var CHART_SLOTS = Object.keys(CHART_LABELS);
|
|
24126
|
+
var WEIGHT_SLOTS = Object.keys(WEIGHT_LABELS);
|
|
24127
|
+
var SHADOW_SLOTS = Object.keys(SHADOW_LABELS);
|
|
24128
|
+
var SPACING_SLOTS = Object.keys(SPACING_LABELS);
|
|
24129
|
+
var MOTION_SLOTS = Object.keys(MOTION_LABELS);
|
|
24130
|
+
var RADIUS_SIZES = ["sm", "md", "lg"];
|
|
24131
|
+
var A11Y_PAIRS = [
|
|
24132
|
+
{ label: "Text on background", fg: "foreground", bg: "background" },
|
|
24133
|
+
{ label: "Text on card", fg: "cardForeground", bg: "card" },
|
|
24134
|
+
{ label: "Primary button", fg: "primaryForeground", bg: "primary" },
|
|
24135
|
+
{ label: "Muted text", fg: "mutedForeground", bg: "muted" },
|
|
24136
|
+
{ label: "Accent", fg: "accentForeground", bg: "accent" }
|
|
24137
|
+
];
|
|
24138
|
+
var DEFAULT_SIDEBAR = {
|
|
24139
|
+
light: {
|
|
24140
|
+
sidebar: "255 255 255",
|
|
24141
|
+
sidebarForeground: "30 41 59",
|
|
24142
|
+
sidebarPrimary: "31 143 255",
|
|
24143
|
+
sidebarPrimaryForeground: "255 255 255",
|
|
24144
|
+
sidebarAccent: "219 234 254",
|
|
24145
|
+
sidebarAccentForeground: "30 41 59",
|
|
24146
|
+
sidebarBorder: "229 231 235",
|
|
24147
|
+
sidebarRing: "31 143 255"
|
|
24148
|
+
},
|
|
24149
|
+
dark: {
|
|
24150
|
+
sidebar: "14 14 18",
|
|
24151
|
+
sidebarForeground: "229 230 236",
|
|
24152
|
+
sidebarPrimary: "31 143 255",
|
|
24153
|
+
sidebarPrimaryForeground: "255 255 255",
|
|
24154
|
+
sidebarAccent: "38 38 45",
|
|
24155
|
+
sidebarAccentForeground: "229 230 236",
|
|
24156
|
+
sidebarBorder: "48 49 57",
|
|
24157
|
+
sidebarRing: "31 143 255"
|
|
24158
|
+
}
|
|
24159
|
+
};
|
|
24160
|
+
var DEFAULT_RADII = {
|
|
24161
|
+
sm: "0.25rem",
|
|
24162
|
+
md: "0.375rem",
|
|
24163
|
+
lg: "0.5rem"
|
|
24164
|
+
};
|
|
24165
|
+
var DEFAULT_CHART = {
|
|
24166
|
+
light: {
|
|
24167
|
+
chart1: "31 143 255",
|
|
24168
|
+
chart2: "0 194 135",
|
|
24169
|
+
chart3: "146 92 255",
|
|
24170
|
+
chart4: "245 147 0",
|
|
24171
|
+
chart5: "237 94 223"
|
|
24172
|
+
},
|
|
24173
|
+
dark: {
|
|
24174
|
+
chart1: "92 173 255",
|
|
24175
|
+
chart2: "0 230 161",
|
|
24176
|
+
chart3: "173 133 255",
|
|
24177
|
+
chart4: "255 190 92",
|
|
24178
|
+
chart5: "242 140 232"
|
|
24179
|
+
}
|
|
24180
|
+
};
|
|
24181
|
+
var DEFAULT_FONT_WEIGHTS = {
|
|
24182
|
+
normal: "400",
|
|
24183
|
+
medium: "500",
|
|
24184
|
+
semibold: "600",
|
|
24185
|
+
bold: "700"
|
|
24186
|
+
};
|
|
24187
|
+
var DEFAULT_LETTER_SPACING = "1px";
|
|
24188
|
+
var MONO_FALLBACK = "'JetBrains Mono', ui-monospace, monospace";
|
|
24189
|
+
var DEFAULT_SHADOWS = {
|
|
24190
|
+
sm: "0 1px 2px 0 rgb(0 0 0 / 0.05)",
|
|
24191
|
+
md: "0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1)",
|
|
24192
|
+
lg: "0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1)",
|
|
24193
|
+
lift: "0 10px 30px -12px rgb(0 0 0 / 0.28), 0 2px 6px rgb(0 0 0 / 0.06)"
|
|
24194
|
+
};
|
|
24195
|
+
var DEFAULT_SPACING = {
|
|
24196
|
+
gutter: "1.5rem",
|
|
24197
|
+
inset: "1.5rem"
|
|
24198
|
+
};
|
|
24199
|
+
var DEFAULT_MOTION = {
|
|
24200
|
+
duration: "200ms",
|
|
24201
|
+
easing: "cubic-bezier(0.2, 0.7, 0.2, 1)"
|
|
24202
|
+
};
|
|
24203
|
+
var DEFAULT_GRADIENT = "linear-gradient(135deg, rgb(var(--color-primary)), rgb(var(--color-accent, var(--color-primary))))";
|
|
24204
|
+
var numOf = (value, fallback) => {
|
|
24205
|
+
const n = Number.parseFloat(value);
|
|
24206
|
+
return Number.isFinite(n) ? n : fallback;
|
|
24207
|
+
};
|
|
24208
|
+
var letterSpacingToPx = (value) => {
|
|
24209
|
+
const n = Number.parseFloat(value);
|
|
24210
|
+
if (!Number.isFinite(n)) return 0;
|
|
24211
|
+
return value.trim().endsWith("em") ? n * 16 : n;
|
|
24212
|
+
};
|
|
24213
|
+
var pxToLetterSpacing = (px, currentValue) => currentValue.trim().endsWith("em") ? `${Number((px / 16).toFixed(3))}em` : `${px}px`;
|
|
24214
|
+
var lengthToPx = (value) => {
|
|
24215
|
+
const n = Number.parseFloat(value);
|
|
24216
|
+
if (!Number.isFinite(n)) return 0;
|
|
24217
|
+
return Math.round(value.trim().endsWith("rem") ? n * 16 : n);
|
|
24218
|
+
};
|
|
24219
|
+
var pxToLength = (px, currentValue) => {
|
|
24220
|
+
const trimmed = currentValue.trim();
|
|
24221
|
+
if (trimmed.endsWith("rem")) return `${px / 16}rem`;
|
|
24222
|
+
if (/^-?\d*\.?\d+$/.test(trimmed)) return `${px}`;
|
|
24223
|
+
return `${px}px`;
|
|
24224
|
+
};
|
|
24225
|
+
var isSvgMarkup = (source) => source.trimStart().startsWith("<");
|
|
24226
|
+
var isImageSource = (source) => /^(data:|https?:\/\/)/.test(source.trim());
|
|
24227
|
+
var LogoPreviewImage = ({ source, className }) => {
|
|
24228
|
+
const safeSvg = useMemo(
|
|
24229
|
+
() => isSvgMarkup(source) ? DOMPurify.sanitize(source, { USE_PROFILES: { svg: true, svgFilters: true } }) : null,
|
|
24230
|
+
[source]
|
|
24231
|
+
);
|
|
24232
|
+
if (safeSvg !== null) {
|
|
24233
|
+
return /* @__PURE__ */ jsx("span", { "aria-hidden": true, className, dangerouslySetInnerHTML: { __html: safeSvg } });
|
|
24234
|
+
}
|
|
24235
|
+
if (isImageSource(source)) {
|
|
24236
|
+
return /* @__PURE__ */ jsx("img", { src: source, alt: "", className });
|
|
24237
|
+
}
|
|
24238
|
+
return null;
|
|
24239
|
+
};
|
|
24240
|
+
var BrandEditor = ({
|
|
24241
|
+
value,
|
|
24242
|
+
onChange,
|
|
24243
|
+
colorScheme = "light",
|
|
24244
|
+
onColorSchemeChange,
|
|
24245
|
+
fontOptions = DEFAULT_FONT_OPTIONS
|
|
24246
|
+
}) => {
|
|
24247
|
+
const baseId = useId();
|
|
24248
|
+
const { theme } = value;
|
|
24249
|
+
const coreColors = colorScheme === "light" ? theme.colors : theme.colorsDark;
|
|
24250
|
+
const sidebarColors = colorScheme === "light" ? theme.colors?.sidebar : theme.colorsDark?.sidebar;
|
|
24251
|
+
const chartColors = colorScheme === "light" ? theme.colors?.chart : theme.colorsDark?.chart;
|
|
24252
|
+
const defaultColors = colorScheme === "light" ? keboola.theme.colors : keboola.theme.colorsDark;
|
|
24253
|
+
const radii = theme.radii ?? DEFAULT_RADII;
|
|
24254
|
+
const typography = theme.typography;
|
|
24255
|
+
const setColor = (slot, channels) => {
|
|
24256
|
+
if (colorScheme === "light") {
|
|
24257
|
+
onChange({ ...value, theme: { ...theme, colors: { ...theme.colors, [slot]: channels } } });
|
|
24258
|
+
return;
|
|
24259
|
+
}
|
|
24260
|
+
onChange({
|
|
24261
|
+
...value,
|
|
24262
|
+
theme: { ...theme, colorsDark: { ...theme.colorsDark, [slot]: channels } }
|
|
24263
|
+
});
|
|
24264
|
+
};
|
|
24265
|
+
const setSidebarColor = (slot, channels) => {
|
|
24266
|
+
if (colorScheme === "light") {
|
|
24267
|
+
const base = theme.colors?.sidebar ?? DEFAULT_SIDEBAR.light;
|
|
24268
|
+
onChange({
|
|
24269
|
+
...value,
|
|
24270
|
+
theme: { ...theme, colors: { ...theme.colors, sidebar: { ...base, [slot]: channels } } }
|
|
24271
|
+
});
|
|
24272
|
+
return;
|
|
24273
|
+
}
|
|
24274
|
+
const sidebarBase = theme.colorsDark?.sidebar ?? DEFAULT_SIDEBAR.dark;
|
|
24275
|
+
onChange({
|
|
24276
|
+
...value,
|
|
24277
|
+
theme: {
|
|
24278
|
+
...theme,
|
|
24279
|
+
colorsDark: { ...theme.colorsDark, sidebar: { ...sidebarBase, [slot]: channels } }
|
|
24280
|
+
}
|
|
24281
|
+
});
|
|
24282
|
+
};
|
|
24283
|
+
const setChart = (slot, channels) => {
|
|
24284
|
+
const base = chartColors ?? DEFAULT_CHART[colorScheme];
|
|
24285
|
+
const chart = { ...base, [slot]: channels };
|
|
24286
|
+
if (colorScheme === "light") {
|
|
24287
|
+
onChange({ ...value, theme: { ...theme, colors: { ...theme.colors, chart } } });
|
|
24288
|
+
return;
|
|
24289
|
+
}
|
|
24290
|
+
onChange({ ...value, theme: { ...theme, colorsDark: { ...theme.colorsDark, chart } } });
|
|
24291
|
+
};
|
|
24292
|
+
const setRadius = (size, radius) => onChange({
|
|
24293
|
+
...value,
|
|
24294
|
+
theme: { ...theme, radii: { ...theme.radii ?? DEFAULT_RADII, [size]: radius } }
|
|
24295
|
+
});
|
|
24296
|
+
const patchTypography = (patch) => onChange({ ...value, theme: { ...theme, typography: { ...theme.typography, ...patch } } });
|
|
24297
|
+
const setFontFace = (face, font) => patchTypography({ [face]: font.trim() || void 0 });
|
|
24298
|
+
const setFontWeight = (slot, weight) => patchTypography({ weight: { ...theme.typography?.weight, [slot]: weight || void 0 } });
|
|
24299
|
+
const setLetterSpacing = (chrome) => patchTypography({ letterSpacing: { chrome: chrome.trim() || void 0 } });
|
|
24300
|
+
const setShadow = (slot, shadow) => onChange({
|
|
24301
|
+
...value,
|
|
24302
|
+
theme: { ...theme, shadows: { ...theme.shadows, [slot]: shadow.trim() || void 0 } }
|
|
24303
|
+
});
|
|
24304
|
+
const setSpacing = (slot, length) => onChange({
|
|
24305
|
+
...value,
|
|
24306
|
+
theme: { ...theme, spacing: { ...theme.spacing, [slot]: length.trim() || void 0 } }
|
|
24307
|
+
});
|
|
24308
|
+
const setMotion = (slot, token) => onChange({
|
|
24309
|
+
...value,
|
|
24310
|
+
theme: { ...theme, motion: { ...theme.motion, [slot]: token.trim() || void 0 } }
|
|
24311
|
+
});
|
|
24312
|
+
const setGradient = (gradient) => onChange({
|
|
24313
|
+
...value,
|
|
24314
|
+
theme: { ...theme, gradient: { brand: gradient.trim() || void 0 } }
|
|
24315
|
+
});
|
|
24316
|
+
const setLogo = (slot, source) => {
|
|
24317
|
+
const trimmed = source.trim();
|
|
24318
|
+
const nextLogo = { ...value.logo };
|
|
24319
|
+
if (trimmed) nextLogo[slot] = trimmed;
|
|
24320
|
+
else delete nextLogo[slot];
|
|
24321
|
+
const { logo: _drop, ...rest } = value;
|
|
24322
|
+
onChange(Object.keys(nextLogo).length > 0 ? { ...value, logo: nextLogo } : rest);
|
|
24323
|
+
};
|
|
24324
|
+
return /* @__PURE__ */ jsxs("div", { className: "tw-flex tw-flex-col", children: [
|
|
24325
|
+
/* @__PURE__ */ jsxs(ControlSection, { title: "Colors", children: [
|
|
24326
|
+
onColorSchemeChange ? /* @__PURE__ */ jsxs(
|
|
24327
|
+
ToggleGroup,
|
|
24328
|
+
{
|
|
24329
|
+
type: "single",
|
|
24330
|
+
value: colorScheme,
|
|
24331
|
+
onValueChange: (next) => {
|
|
24332
|
+
if (next === "light" || next === "dark") onColorSchemeChange(next);
|
|
24333
|
+
},
|
|
24334
|
+
"aria-label": "Color scheme",
|
|
24335
|
+
className: "tw-w-full",
|
|
24336
|
+
children: [
|
|
24337
|
+
/* @__PURE__ */ jsx(ToggleGroup.Item, { value: "light", className: "tw-flex-1", children: "Light" }),
|
|
24338
|
+
/* @__PURE__ */ jsx(ToggleGroup.Item, { value: "dark", className: "tw-flex-1", children: "Dark" })
|
|
24339
|
+
]
|
|
24340
|
+
}
|
|
24341
|
+
) : null,
|
|
24342
|
+
/* @__PURE__ */ jsx("div", { className: "tw-flex tw-flex-col tw-gap-2", children: COLOR_SLOTS.map((slot) => /* @__PURE__ */ jsx(
|
|
24343
|
+
ColorField,
|
|
24344
|
+
{
|
|
24345
|
+
id: `${baseId}color-${colorScheme}-${slot}`,
|
|
24346
|
+
label: COLOR_LABELS[slot],
|
|
24347
|
+
channels: coreColors?.[slot] ?? defaultColors?.[slot] ?? "0 0 0",
|
|
24348
|
+
onChange: (channels) => setColor(slot, channels)
|
|
24349
|
+
},
|
|
24350
|
+
slot
|
|
24351
|
+
)) })
|
|
24352
|
+
] }),
|
|
24353
|
+
/* @__PURE__ */ jsxs(ControlSection, { title: "Accessibility", children: [
|
|
24354
|
+
/* @__PURE__ */ jsxs("p", { className: "tw-m-0 tw-text-xs tw-text-muted-foreground", children: [
|
|
24355
|
+
"WCAG contrast for the ",
|
|
24356
|
+
colorScheme,
|
|
24357
|
+
" palette (AA needs 4.5:1)."
|
|
24358
|
+
] }),
|
|
24359
|
+
/* @__PURE__ */ jsx("div", { className: "tw-flex tw-flex-col tw-gap-1.5", children: A11Y_PAIRS.map((pair) => {
|
|
24360
|
+
const fg = coreColors?.[pair.fg] ?? defaultColors?.[pair.fg] ?? "0 0 0";
|
|
24361
|
+
const bg = coreColors?.[pair.bg] ?? defaultColors?.[pair.bg] ?? "255 255 255";
|
|
24362
|
+
const ratio = contrastRatio(fg, bg);
|
|
24363
|
+
const level = wcagLevel(ratio);
|
|
24364
|
+
return /* @__PURE__ */ jsxs("div", { className: "tw-flex tw-items-center tw-justify-between tw-gap-2", children: [
|
|
24365
|
+
/* @__PURE__ */ jsx("span", { className: "tw-text-xs tw-text-foreground", children: pair.label }),
|
|
24366
|
+
/* @__PURE__ */ jsxs("span", { className: "tw-flex tw-items-center tw-gap-1.5", children: [
|
|
24367
|
+
/* @__PURE__ */ jsxs("span", { className: "tw-text-xs tw-tabular-nums tw-text-muted-foreground", children: [
|
|
24368
|
+
ratio.toFixed(1),
|
|
24369
|
+
":1"
|
|
24370
|
+
] }),
|
|
24371
|
+
/* @__PURE__ */ jsx(Badge, { color: level === "fail" ? "red" : "green", children: level === "fail" ? "Fail" : level })
|
|
24372
|
+
] })
|
|
24373
|
+
] }, pair.label);
|
|
24374
|
+
}) })
|
|
24375
|
+
] }),
|
|
24376
|
+
/* @__PURE__ */ jsx(ControlSection, { title: "Sidebar colors", children: /* @__PURE__ */ jsxs(Collapsible, { className: "tw-flex tw-flex-col tw-gap-2", children: [
|
|
24377
|
+
/* @__PURE__ */ jsx(Collapsible.Trigger, { asChild: true, children: /* @__PURE__ */ jsxs(Button, { variant: "outline", size: "small", className: "tw-w-full", children: [
|
|
24378
|
+
"Toggle sidebar tokens (",
|
|
24379
|
+
colorScheme,
|
|
24380
|
+
")"
|
|
24381
|
+
] }) }),
|
|
24382
|
+
/* @__PURE__ */ jsx(Collapsible.Content, { className: "tw-flex tw-flex-col tw-gap-2", children: SIDEBAR_SLOTS.map((slot) => /* @__PURE__ */ jsx(
|
|
24383
|
+
ColorField,
|
|
24384
|
+
{
|
|
24385
|
+
id: `${baseId}sidebar-${colorScheme}-${slot}`,
|
|
24386
|
+
label: SIDEBAR_LABELS[slot],
|
|
24387
|
+
channels: sidebarColors?.[slot] ?? DEFAULT_SIDEBAR[colorScheme][slot],
|
|
24388
|
+
onChange: (channels) => setSidebarColor(slot, channels)
|
|
24389
|
+
},
|
|
24390
|
+
slot
|
|
24391
|
+
)) })
|
|
24392
|
+
] }) }),
|
|
24393
|
+
/* @__PURE__ */ jsxs(ControlSection, { title: "Chart palette", children: [
|
|
24394
|
+
/* @__PURE__ */ jsxs("p", { className: "tw-m-0 tw-text-xs tw-text-muted-foreground", children: [
|
|
24395
|
+
"Categorical series colours for the ",
|
|
24396
|
+
colorScheme,
|
|
24397
|
+
" palette (`--color-chart-1\u20265`)."
|
|
24398
|
+
] }),
|
|
24399
|
+
/* @__PURE__ */ jsx("div", { className: "tw-flex tw-flex-col tw-gap-2", children: CHART_SLOTS.map((slot) => /* @__PURE__ */ jsx(
|
|
24400
|
+
ColorField,
|
|
24401
|
+
{
|
|
24402
|
+
id: `${baseId}chart-${colorScheme}-${slot}`,
|
|
24403
|
+
label: CHART_LABELS[slot],
|
|
24404
|
+
channels: chartColors?.[slot] ?? DEFAULT_CHART[colorScheme][slot],
|
|
24405
|
+
onChange: (channels) => setChart(slot, channels)
|
|
24406
|
+
},
|
|
24407
|
+
slot
|
|
24408
|
+
)) })
|
|
24409
|
+
] }),
|
|
24410
|
+
/* @__PURE__ */ jsx(ControlSection, { title: "Radius", children: RADIUS_SIZES.map((size) => {
|
|
24411
|
+
const current = radii[size];
|
|
24412
|
+
const px = lengthToPx(current);
|
|
24413
|
+
return /* @__PURE__ */ jsxs("div", { className: "tw-flex tw-flex-col tw-gap-1", children: [
|
|
24414
|
+
/* @__PURE__ */ jsxs("div", { className: "tw-flex tw-items-center tw-justify-between", children: [
|
|
24415
|
+
/* @__PURE__ */ jsx(Label2, { className: "tw-text-xs tw-font-normal tw-uppercase tw-text-foreground", children: size }),
|
|
24416
|
+
/* @__PURE__ */ jsx("span", { className: "tw-text-xs tw-tabular-nums tw-text-muted-foreground", children: radii[size] })
|
|
24417
|
+
] }),
|
|
24418
|
+
/* @__PURE__ */ jsx(
|
|
24419
|
+
Slider,
|
|
24420
|
+
{
|
|
24421
|
+
min: 0,
|
|
24422
|
+
max: 24,
|
|
24423
|
+
step: 1,
|
|
24424
|
+
value: [px],
|
|
24425
|
+
onValueChange: (values) => setRadius(size, pxToLength(values[0] ?? 0, current))
|
|
24426
|
+
}
|
|
24427
|
+
)
|
|
24428
|
+
] }, size);
|
|
24429
|
+
}) }),
|
|
24430
|
+
/* @__PURE__ */ jsxs(ControlSection, { title: "Typography", children: [
|
|
24431
|
+
/* @__PURE__ */ jsxs("div", { className: "tw-flex tw-flex-col tw-gap-1", children: [
|
|
24432
|
+
/* @__PURE__ */ jsx(
|
|
24433
|
+
Label2,
|
|
24434
|
+
{
|
|
24435
|
+
htmlFor: `${baseId}font-family`,
|
|
24436
|
+
className: "tw-text-xs tw-font-normal tw-text-foreground",
|
|
24437
|
+
children: "Font family"
|
|
24438
|
+
}
|
|
24439
|
+
),
|
|
24440
|
+
/* @__PURE__ */ jsx(
|
|
24441
|
+
Select2,
|
|
24442
|
+
{
|
|
24443
|
+
id: `${baseId}font-family`,
|
|
24444
|
+
value: typography?.fontFamily ?? DEFAULT_FALLBACK_FONT,
|
|
24445
|
+
onValueChange: (font) => setFontFace("fontFamily", font),
|
|
24446
|
+
items: fontOptions
|
|
24447
|
+
}
|
|
24448
|
+
)
|
|
24449
|
+
] }),
|
|
24450
|
+
/* @__PURE__ */ jsxs("div", { className: "tw-flex tw-flex-col tw-gap-1", children: [
|
|
24451
|
+
/* @__PURE__ */ jsx(
|
|
24452
|
+
Label2,
|
|
24453
|
+
{
|
|
24454
|
+
htmlFor: `${baseId}font-display`,
|
|
24455
|
+
className: "tw-text-xs tw-font-normal tw-text-foreground",
|
|
24456
|
+
children: "Display font (headings)"
|
|
24457
|
+
}
|
|
24458
|
+
),
|
|
24459
|
+
/* @__PURE__ */ jsx(
|
|
24460
|
+
Select2,
|
|
24461
|
+
{
|
|
24462
|
+
id: `${baseId}font-display`,
|
|
24463
|
+
value: typography?.fontDisplay ?? typography?.fontFamily ?? DEFAULT_FALLBACK_FONT,
|
|
24464
|
+
onValueChange: (font) => setFontFace("fontDisplay", font),
|
|
24465
|
+
items: fontOptions
|
|
24466
|
+
}
|
|
24467
|
+
)
|
|
24468
|
+
] }),
|
|
24469
|
+
/* @__PURE__ */ jsxs("div", { className: "tw-flex tw-flex-col tw-gap-1", children: [
|
|
24470
|
+
/* @__PURE__ */ jsx(
|
|
24471
|
+
Label2,
|
|
24472
|
+
{
|
|
24473
|
+
htmlFor: `${baseId}font-mono`,
|
|
24474
|
+
className: "tw-text-xs tw-font-normal tw-text-foreground",
|
|
24475
|
+
children: "Monospace font"
|
|
24476
|
+
}
|
|
24477
|
+
),
|
|
24478
|
+
/* @__PURE__ */ jsx(
|
|
24479
|
+
Select2,
|
|
24480
|
+
{
|
|
24481
|
+
id: `${baseId}font-mono`,
|
|
24482
|
+
value: typography?.fontMono ?? MONO_FALLBACK,
|
|
24483
|
+
onValueChange: (font) => setFontFace("fontMono", font),
|
|
24484
|
+
items: fontOptions
|
|
24485
|
+
}
|
|
24486
|
+
)
|
|
24487
|
+
] }),
|
|
24488
|
+
/* @__PURE__ */ jsx("span", { className: "tw-text-xs tw-text-muted-foreground", children: "Chrome font weights" }),
|
|
24489
|
+
WEIGHT_SLOTS.map((slot) => {
|
|
24490
|
+
const current = typography?.weight?.[slot] ?? DEFAULT_FONT_WEIGHTS[slot];
|
|
24491
|
+
return /* @__PURE__ */ jsxs("div", { className: "tw-flex tw-flex-col tw-gap-1", children: [
|
|
24492
|
+
/* @__PURE__ */ jsxs("div", { className: "tw-flex tw-items-center tw-justify-between", children: [
|
|
24493
|
+
/* @__PURE__ */ jsx(Label2, { className: "tw-text-xs tw-font-normal tw-text-foreground", children: WEIGHT_LABELS[slot] }),
|
|
24494
|
+
/* @__PURE__ */ jsx("span", { className: "tw-text-xs tw-tabular-nums tw-text-muted-foreground", children: current })
|
|
24495
|
+
] }),
|
|
24496
|
+
/* @__PURE__ */ jsx(
|
|
24497
|
+
Slider,
|
|
24498
|
+
{
|
|
24499
|
+
min: 100,
|
|
24500
|
+
max: 900,
|
|
24501
|
+
step: 25,
|
|
24502
|
+
value: [numOf(current, 400)],
|
|
24503
|
+
onValueChange: (values) => setFontWeight(slot, String(values[0] ?? 400))
|
|
24504
|
+
}
|
|
24505
|
+
)
|
|
24506
|
+
] }, slot);
|
|
24507
|
+
}),
|
|
24508
|
+
/* @__PURE__ */ jsxs("div", { className: "tw-flex tw-flex-col tw-gap-1", children: [
|
|
24509
|
+
/* @__PURE__ */ jsxs("div", { className: "tw-flex tw-items-center tw-justify-between", children: [
|
|
24510
|
+
/* @__PURE__ */ jsx(Label2, { className: "tw-text-xs tw-font-normal tw-text-foreground", children: "Chrome letter spacing" }),
|
|
24511
|
+
/* @__PURE__ */ jsx("span", { className: "tw-text-xs tw-tabular-nums tw-text-muted-foreground", children: typography?.letterSpacing?.chrome ?? DEFAULT_LETTER_SPACING })
|
|
24512
|
+
] }),
|
|
24513
|
+
/* @__PURE__ */ jsx(
|
|
24514
|
+
Slider,
|
|
24515
|
+
{
|
|
24516
|
+
min: -2,
|
|
24517
|
+
max: 4,
|
|
24518
|
+
step: 0.25,
|
|
24519
|
+
value: [letterSpacingToPx(typography?.letterSpacing?.chrome ?? DEFAULT_LETTER_SPACING)],
|
|
24520
|
+
onValueChange: (values) => setLetterSpacing(
|
|
24521
|
+
pxToLetterSpacing(
|
|
24522
|
+
values[0] ?? 0,
|
|
24523
|
+
typography?.letterSpacing?.chrome ?? DEFAULT_LETTER_SPACING
|
|
24524
|
+
)
|
|
24525
|
+
)
|
|
24526
|
+
}
|
|
24527
|
+
)
|
|
24528
|
+
] })
|
|
24529
|
+
] }),
|
|
24530
|
+
/* @__PURE__ */ jsxs(ControlSection, { title: "Elevation", children: [
|
|
24531
|
+
/* @__PURE__ */ jsx("p", { className: "tw-m-0 tw-text-xs tw-text-muted-foreground", children: "Box-shadow scale (`--shadow-*`), shared across light & dark. Empty inherits the default." }),
|
|
24532
|
+
SHADOW_SLOTS.map((slot) => /* @__PURE__ */ jsx(
|
|
24533
|
+
TextField2,
|
|
24534
|
+
{
|
|
24535
|
+
id: `${baseId}shadow-${slot}`,
|
|
24536
|
+
label: SHADOW_LABELS[slot],
|
|
24537
|
+
value: theme.shadows?.[slot] ?? "",
|
|
24538
|
+
placeholder: DEFAULT_SHADOWS[slot],
|
|
24539
|
+
onChange: (next) => setShadow(slot, next)
|
|
24540
|
+
},
|
|
24541
|
+
slot
|
|
24542
|
+
))
|
|
24543
|
+
] }),
|
|
24544
|
+
/* @__PURE__ */ jsxs(ControlSection, { title: "Density", children: [
|
|
24545
|
+
/* @__PURE__ */ jsx("p", { className: "tw-m-0 tw-text-xs tw-text-muted-foreground", children: "Semantic spacing (`--space-*`), as CSS lengths." }),
|
|
24546
|
+
SPACING_SLOTS.map((slot) => /* @__PURE__ */ jsx(
|
|
24547
|
+
TextField2,
|
|
24548
|
+
{
|
|
24549
|
+
id: `${baseId}spacing-${slot}`,
|
|
24550
|
+
label: SPACING_LABELS[slot],
|
|
24551
|
+
value: theme.spacing?.[slot] ?? "",
|
|
24552
|
+
placeholder: DEFAULT_SPACING[slot],
|
|
24553
|
+
onChange: (next) => setSpacing(slot, next)
|
|
24554
|
+
},
|
|
24555
|
+
slot
|
|
24556
|
+
))
|
|
24557
|
+
] }),
|
|
24558
|
+
/* @__PURE__ */ jsxs(ControlSection, { title: "Motion", children: [
|
|
24559
|
+
/* @__PURE__ */ jsx("p", { className: "tw-m-0 tw-text-xs tw-text-muted-foreground", children: "Base transition `duration` + `easing` (`--motion-*`)." }),
|
|
24560
|
+
MOTION_SLOTS.map((slot) => /* @__PURE__ */ jsx(
|
|
24561
|
+
TextField2,
|
|
24562
|
+
{
|
|
24563
|
+
id: `${baseId}motion-${slot}`,
|
|
24564
|
+
label: MOTION_LABELS[slot],
|
|
24565
|
+
value: theme.motion?.[slot] ?? "",
|
|
24566
|
+
placeholder: DEFAULT_MOTION[slot],
|
|
24567
|
+
onChange: (next) => setMotion(slot, next)
|
|
24568
|
+
},
|
|
24569
|
+
slot
|
|
24570
|
+
))
|
|
24571
|
+
] }),
|
|
24572
|
+
/* @__PURE__ */ jsx(ControlSection, { title: "Gradient", children: /* @__PURE__ */ jsx(
|
|
24573
|
+
TextField2,
|
|
24574
|
+
{
|
|
24575
|
+
id: `${baseId}gradient-brand`,
|
|
24576
|
+
label: "Brand gradient",
|
|
24577
|
+
value: theme.gradient?.brand ?? "",
|
|
24578
|
+
placeholder: DEFAULT_GRADIENT,
|
|
24579
|
+
onChange: setGradient
|
|
24580
|
+
}
|
|
24581
|
+
) }),
|
|
24582
|
+
/* @__PURE__ */ jsxs(ControlSection, { title: "Logo", children: [
|
|
24583
|
+
/* @__PURE__ */ jsx(
|
|
24584
|
+
LogoField,
|
|
24585
|
+
{
|
|
24586
|
+
id: `${baseId}logo-mark`,
|
|
24587
|
+
label: "Mark (icon)",
|
|
24588
|
+
value: value.logo?.mark ?? "",
|
|
24589
|
+
onChange: (source) => setLogo("mark", source)
|
|
24590
|
+
}
|
|
24591
|
+
),
|
|
24592
|
+
/* @__PURE__ */ jsx(
|
|
24593
|
+
LogoField,
|
|
24594
|
+
{
|
|
24595
|
+
id: `${baseId}logo-wordmark`,
|
|
24596
|
+
label: "Wordmark (full)",
|
|
24597
|
+
value: value.logo?.wordmark ?? "",
|
|
24598
|
+
onChange: (source) => setLogo("wordmark", source)
|
|
24599
|
+
}
|
|
24600
|
+
),
|
|
24601
|
+
/* @__PURE__ */ jsxs(Collapsible, { className: "tw-flex tw-flex-col tw-gap-2", children: [
|
|
24602
|
+
/* @__PURE__ */ jsx(Collapsible.Trigger, { asChild: true, children: /* @__PURE__ */ jsx(Button, { variant: "outline", size: "small", className: "tw-w-full", children: "Toggle dark-mode logos" }) }),
|
|
24603
|
+
/* @__PURE__ */ jsxs(Collapsible.Content, { className: "tw-flex tw-flex-col tw-gap-2", children: [
|
|
24604
|
+
/* @__PURE__ */ jsx(
|
|
24605
|
+
LogoField,
|
|
24606
|
+
{
|
|
24607
|
+
id: `${baseId}logo-mark-dark`,
|
|
24608
|
+
label: "Mark (dark)",
|
|
24609
|
+
value: value.logo?.markDark ?? "",
|
|
24610
|
+
onChange: (source) => setLogo("markDark", source)
|
|
24611
|
+
}
|
|
24612
|
+
),
|
|
24613
|
+
/* @__PURE__ */ jsx(
|
|
24614
|
+
LogoField,
|
|
24615
|
+
{
|
|
24616
|
+
id: `${baseId}logo-wordmark-dark`,
|
|
24617
|
+
label: "Wordmark (dark)",
|
|
24618
|
+
value: value.logo?.wordmarkDark ?? "",
|
|
24619
|
+
onChange: (source) => setLogo("wordmarkDark", source)
|
|
24620
|
+
}
|
|
24621
|
+
)
|
|
24622
|
+
] })
|
|
24623
|
+
] }),
|
|
24624
|
+
/* @__PURE__ */ jsxs("div", { className: "tw-flex tw-flex-col tw-gap-1", children: [
|
|
24625
|
+
/* @__PURE__ */ jsx("span", { className: "tw-text-xs tw-text-muted-foreground", children: "Preview" }),
|
|
24626
|
+
/* @__PURE__ */ jsx("div", { className: "tw-flex tw-min-h-12 tw-items-center tw-gap-4 tw-rounded-md tw-border tw-border-border tw-bg-background tw-p-3", children: value.logo?.mark || value.logo?.wordmark ? /* @__PURE__ */ jsxs(Fragment$1, { children: [
|
|
24627
|
+
value.logo.mark ? /* @__PURE__ */ jsx(LogoPreviewImage, { source: value.logo.mark, className: "tw-h-8" }) : null,
|
|
24628
|
+
value.logo.wordmark ? /* @__PURE__ */ jsx(LogoPreviewImage, { source: value.logo.wordmark, className: "tw-h-8" }) : null
|
|
24629
|
+
] }) : /* @__PURE__ */ jsx("span", { className: "tw-text-xs tw-text-muted-foreground", children: "No logo set" }) })
|
|
24630
|
+
] })
|
|
24631
|
+
] })
|
|
24632
|
+
] });
|
|
24633
|
+
};
|
|
23643
24634
|
/*! Bundled license information:
|
|
23644
24635
|
|
|
23645
24636
|
react-is/cjs/react-is.production.min.js:
|
|
@@ -23670,6 +24661,6 @@ object-assign/index.js:
|
|
|
23670
24661
|
*)
|
|
23671
24662
|
*/
|
|
23672
24663
|
|
|
23673
|
-
export { Alert, AlertModal, AnswerSummary, AppShell, ArgoDesignContext, AutoSaveTextarea, Avatar, Badge, BrandLogo, Breadcrumb, Button, ButtonGroup, ButtonInline, Calendar, Card, Checkbox, Clipboard, ClipboardButton, ClipboardInline, Collapse, Collapsible, CollapsiblePanel, CollapsibleStepHeader, ColorInput, ColorModeSwitch, Combobox, Command, CommandGroup, CommandInput, CommandItem, CommandList, ConflictStatusIndicator, CopyField, DEFAULT_COLOR_SCHEME, DEFAULT_BRAND_ID as DEFAULT_KEBOOLA_BRAND_ID, DateInput, DatePicker, DateRangeInput, DateRangePicker, DiffType, DiffView, DotsLoader, DropdownMenu, EmptyConfigurationActionCard, EmptySearchContent, EmptyState, ErrorState, FileUpload, FormGroup, FullScreenModal, FullScreenModalBody, FullScreenModalHeader, HelpBlock, HoverCard, InlineStepDetail, InlineStepLabel, InputGroup, Kbd, Label2 as Label, Link, Markdown, MarkedText, MessageBubble, Modal, MultiActionButtonGroup, MultiCombobox, Navbar, NumberInput, OtpInput, PageHeader, PageLayout, PageToolbar, Pagination, PaneHeader, PanelWithDetails, PasswordInput, PlanApproval, PlanRewritingIndicator, Popconfirm, Popover, Progress, PromptInput, Question, QuestionBlock, RadioGroup2 as RadioGroup, ResizableHandle, ResizablePanelGroup, ScrollArea, ScrollBar, Search, SearchForm, SearchInput, SearchInputWithNavigation, Select2 as Select, Separator2 as Separator, Sheet, Sidebar, SidebarProvider, Skeleton, SkeletonList, Slider, SplitButton, SpotlightBackdrop, Stepper, SuggestedPrompt, Switch, Table, Tabs2 as Tabs, TabsContent, Tagger, TextInput, Textarea, ThemeProvider, ThinkingIndicator, TimeInput, TimePicker, Timeline, Toaster, Toggle, ToggleGroup, ToolCallApproval, ToolCallChip, Tooltip, TooltipProvider, Truncated, UsageStats, UsageStatsRing, ZoomableSvg, argoVariants, cn, computeDiffRows, computeLineInformation, copyToClipboard, isMac, kbdVariants, keys, mergeRefs, setServerFieldErrors, toast, useAppForm, useArgoDesign, useAutosizeInput, useMergeDiff, useNotification, useScrollbarPosition, useSidebar, useTargetRect, useTheme, withForm };
|
|
24664
|
+
export { Alert, AlertModal, AnswerSummary, AppShell, ArgoDesignContext, AutoSaveTextarea, Avatar, Badge, BrandEditor, BrandLogo, Breadcrumb, Button, ButtonGroup, ButtonInline, Calendar, Card, ChartPanel, Checkbox, Clipboard, ClipboardButton, ClipboardInline, Collapse, Collapsible, CollapsiblePanel, CollapsibleStepHeader, ColorInput, ColorModeSwitch, Combobox, Command, CommandGroup, CommandInput, CommandItem, CommandList, ConflictStatusIndicator, CopyField, DEFAULT_COLOR_SCHEME, DEFAULT_FALLBACK_FONT, DEFAULT_FONT_OPTIONS, DEFAULT_BRAND_ID as DEFAULT_KEBOOLA_BRAND_ID, DashboardHero, DateInput, DatePicker, DateRangeInput, DateRangePicker, DiffType, DiffView, DotsLoader, DropdownMenu, EmptyConfigurationActionCard, EmptySearchContent, EmptyState, ErrorState, FileUpload, FormGroup, FullScreenModal, FullScreenModalBody, FullScreenModalHeader, GoogleButton, HelpBlock, HoverCard, InlineStepDetail, InlineStepLabel, InputGroup, Kbd, Label2 as Label, Link, Markdown, MarkedText, MessageBubble, Modal, MultiActionButtonGroup, MultiCombobox, Navbar, NumberInput, OtpInput, PageHeader, PageLayout, PageToolbar, Pagination, PaneHeader, PanelWithDetails, PasswordInput, PlanApproval, PlanRewritingIndicator, Popconfirm, Popover, Progress, PromptInput, Question, QuestionBlock, RadioGroup2 as RadioGroup, ResizableHandle, ResizablePanelGroup, ScrollArea, ScrollBar, Search, SearchForm, SearchInput, SearchInputWithNavigation, Select2 as Select, Separator2 as Separator, Sheet, Sidebar, SidebarProvider, Skeleton, SkeletonList, Slider, SplitButton, SpotlightBackdrop, StatCard, StatCardGrid, Stepper, SuggestedPrompt, Switch, Table, Tabs2 as Tabs, TabsContent, Tagger, TextInput, Textarea, ThemeProvider, ThinkingIndicator, TimeInput, TimePicker, Timeline, Toaster, Toggle, ToggleGroup, ToolCallApproval, ToolCallChip, Tooltip, TooltipProvider, Truncated, UsageStats, UsageStatsRing, ZoomableSvg, argoVariants, channelsToHex, cn, computeDiffRows, computeLineInformation, contrastRatio, copyToClipboard, hexToChannels, isMac, kbdVariants, keys, mergeRefs, setServerFieldErrors, toast, useAppForm, useArgoDesign, useAutosizeInput, useMergeDiff, useNotification, useScrollbarPosition, useSidebar, useTargetRect, useTheme, wcagLevel, withForm };
|
|
23674
24665
|
//# sourceMappingURL=index.js.map
|
|
23675
24666
|
//# sourceMappingURL=index.js.map
|