meno-core 1.1.3 → 1.1.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/chunks/{chunk-3JXK2QFU.js → chunk-H6EOTPJA.js} +2 -2
- package/dist/chunks/{chunk-LOZL5HOF.js → chunk-RLBV2R6J.js} +603 -17
- package/dist/chunks/chunk-RLBV2R6J.js.map +7 -0
- package/dist/chunks/{chunk-FQBIC2OB.js → chunk-YMBUSHII.js} +1 -1
- package/dist/chunks/{chunk-FQBIC2OB.js.map → chunk-YMBUSHII.js.map} +1 -1
- package/dist/lib/client/index.js +46 -28
- package/dist/lib/client/index.js.map +2 -2
- package/dist/lib/server/index.js +1304 -241
- package/dist/lib/server/index.js.map +4 -4
- package/dist/lib/shared/index.js +4 -2
- package/dist/lib/shared/index.js.map +1 -1
- package/lib/client/core/ComponentBuilder.test.ts +32 -0
- package/lib/client/core/ComponentBuilder.ts +30 -0
- package/lib/client/theme.test.ts +2 -2
- package/lib/client/theme.ts +28 -26
- package/lib/server/createServer.ts +5 -1
- package/lib/server/cssAudit.test.ts +270 -0
- package/lib/server/cssAudit.ts +815 -0
- package/lib/server/deMirror.test.ts +61 -0
- package/lib/server/deMirror.ts +317 -0
- package/lib/server/fileWatcher.test.ts +113 -0
- package/lib/server/fileWatcher.ts +42 -1
- package/lib/server/index.ts +19 -0
- package/lib/server/routes/api/core-routes.ts +18 -0
- package/lib/server/routes/api/cssAudit.test.ts +101 -0
- package/lib/server/routes/api/cssAudit.ts +138 -0
- package/lib/server/routes/api/deMirror.test.ts +105 -0
- package/lib/server/routes/api/deMirror.ts +127 -0
- package/lib/server/routes/api/pages.ts +2 -2
- package/lib/server/services/componentService.test.ts +43 -0
- package/lib/server/services/componentService.ts +49 -12
- package/lib/server/services/configService.ts +0 -5
- package/lib/server/services/pageService.test.ts +15 -0
- package/lib/server/services/pageService.ts +44 -22
- package/lib/server/ssr/htmlGenerator.test.ts +29 -1
- package/lib/server/ssr/htmlGenerator.ts +86 -14
- package/lib/server/themeCssCodec.test.ts +67 -0
- package/lib/server/themeCssCodec.ts +67 -5
- package/lib/server/webflow/templateWrapper.ts +54 -0
- package/lib/shared/cssGeneration.test.ts +64 -0
- package/lib/shared/cssGeneration.ts +6 -1
- package/lib/shared/interfaces/contentProvider.ts +9 -0
- package/lib/shared/tailwindThemeScale.ts +1 -0
- package/lib/shared/types/cms.ts +1 -0
- package/lib/shared/types/comment.ts +9 -3
- package/lib/shared/utilityClassConfig.ts +471 -10
- package/lib/shared/utilityClassMapper.test.ts +173 -2
- package/lib/shared/utilityClassMapper.ts +37 -0
- package/lib/shared/utilityClassNames.ts +164 -0
- package/lib/shared/utils/fileUtils.ts +11 -0
- package/lib/shared/validation/schemas.ts +1 -0
- package/lib/shared/viewportUnits.test.ts +34 -1
- package/lib/shared/viewportUnits.ts +43 -0
- package/package.json +3 -1
- package/vite.config.ts +4 -1
- package/dist/chunks/chunk-LOZL5HOF.js.map +0 -7
- /package/dist/chunks/{chunk-3JXK2QFU.js.map → chunk-H6EOTPJA.js.map} +0 -0
|
@@ -515,7 +515,9 @@ var init_schemas = __esm({
|
|
|
515
515
|
options: z.array(z.string()).optional(),
|
|
516
516
|
accept: z.string().optional(),
|
|
517
517
|
collection: z.string().optional(),
|
|
518
|
-
multiple: z.boolean().optional()
|
|
518
|
+
multiple: z.boolean().optional(),
|
|
519
|
+
editor: z.enum(["basic", "extended"]).optional()
|
|
520
|
+
// For 'rich-text' type: selects the render helper (Basic → richText(); Extended → richTextWithComponents())
|
|
519
521
|
}).passthrough();
|
|
520
522
|
CMSClientDataStrategySchema = z.enum(["auto", "inline", "static"]);
|
|
521
523
|
CMSClientDataConfigSchema = z.object({
|
|
@@ -3889,12 +3891,43 @@ var propertyMap = {
|
|
|
3889
3891
|
textShadow: "text-shadow",
|
|
3890
3892
|
filter: "filter",
|
|
3891
3893
|
backdropFilter: "backdrop-filter",
|
|
3894
|
+
mixBlendMode: "mix-blend",
|
|
3895
|
+
backgroundBlendMode: "bg-blend",
|
|
3896
|
+
willChange: "will-change",
|
|
3897
|
+
columns: "columns",
|
|
3898
|
+
overscrollBehavior: "overscroll",
|
|
3899
|
+
overscrollBehaviorX: "overscroll-x",
|
|
3900
|
+
overscrollBehaviorY: "overscroll-y",
|
|
3901
|
+
touchAction: "touch",
|
|
3902
|
+
breakAfter: "break-after",
|
|
3903
|
+
breakBefore: "break-before",
|
|
3904
|
+
breakInside: "break-inside",
|
|
3905
|
+
textUnderlineOffset: "underline-offset",
|
|
3906
|
+
textDecorationColor: "decoration",
|
|
3907
|
+
textDecorationThickness: "decoration",
|
|
3908
|
+
caretColor: "caret",
|
|
3909
|
+
fill: "fill",
|
|
3910
|
+
stroke: "stroke",
|
|
3911
|
+
strokeWidth: "stroke",
|
|
3912
|
+
borderSpacing: "border-spacing",
|
|
3913
|
+
scrollMargin: "scroll-m",
|
|
3914
|
+
scrollMarginTop: "scroll-mt",
|
|
3915
|
+
scrollMarginRight: "scroll-mr",
|
|
3916
|
+
scrollMarginBottom: "scroll-mb",
|
|
3917
|
+
scrollMarginLeft: "scroll-ml",
|
|
3918
|
+
scrollPadding: "scroll-p",
|
|
3919
|
+
scrollPaddingTop: "scroll-pt",
|
|
3920
|
+
scrollPaddingRight: "scroll-pr",
|
|
3921
|
+
scrollPaddingBottom: "scroll-pb",
|
|
3922
|
+
scrollPaddingLeft: "scroll-pl",
|
|
3892
3923
|
// Positioning
|
|
3893
3924
|
top: "top",
|
|
3894
3925
|
right: "right",
|
|
3895
3926
|
bottom: "bottom",
|
|
3896
3927
|
left: "left",
|
|
3897
3928
|
inset: "inset",
|
|
3929
|
+
insetInlineStart: "start",
|
|
3930
|
+
insetInlineEnd: "end",
|
|
3898
3931
|
zIndex: "z",
|
|
3899
3932
|
// Grid Layout
|
|
3900
3933
|
gridTemplateColumns: "grid-cols",
|
|
@@ -3956,6 +3989,8 @@ var prefixToCSSProperty = {
|
|
|
3956
3989
|
"border-r": "border-right",
|
|
3957
3990
|
"border-b": "border-bottom",
|
|
3958
3991
|
"border-l": "border-left",
|
|
3992
|
+
"border-x": "border-inline",
|
|
3993
|
+
"border-y": "border-block",
|
|
3959
3994
|
rounded: "border-radius",
|
|
3960
3995
|
"rounded-tl": "border-top-left-radius",
|
|
3961
3996
|
"rounded-tr": "border-top-right-radius",
|
|
@@ -4004,6 +4039,68 @@ var prefixToCSSProperty = {
|
|
|
4004
4039
|
"text-shadow": "text-shadow",
|
|
4005
4040
|
filter: "filter",
|
|
4006
4041
|
"backdrop-filter": "backdrop-filter",
|
|
4042
|
+
// Filter-function roots (value is wrapped in the function — see FILTER_FN_ROOTS +
|
|
4043
|
+
// parseRootValue's filter branch). Kept here too so hash/dynamic property derivation
|
|
4044
|
+
// and SORTED_ROOTS matching see them like any other root.
|
|
4045
|
+
blur: "filter",
|
|
4046
|
+
brightness: "filter",
|
|
4047
|
+
contrast: "filter",
|
|
4048
|
+
saturate: "filter",
|
|
4049
|
+
grayscale: "filter",
|
|
4050
|
+
invert: "filter",
|
|
4051
|
+
sepia: "filter",
|
|
4052
|
+
"hue-rotate": "filter",
|
|
4053
|
+
"drop-shadow": "filter",
|
|
4054
|
+
"backdrop-blur": "backdrop-filter",
|
|
4055
|
+
"backdrop-brightness": "backdrop-filter",
|
|
4056
|
+
"backdrop-contrast": "backdrop-filter",
|
|
4057
|
+
"backdrop-saturate": "backdrop-filter",
|
|
4058
|
+
"backdrop-grayscale": "backdrop-filter",
|
|
4059
|
+
"backdrop-invert": "backdrop-filter",
|
|
4060
|
+
"backdrop-sepia": "backdrop-filter",
|
|
4061
|
+
"backdrop-hue-rotate": "backdrop-filter",
|
|
4062
|
+
"backdrop-opacity": "backdrop-filter",
|
|
4063
|
+
// Per-axis transforms (value composed into the axis slot — see parseRootValue)
|
|
4064
|
+
"skew-x": "transform",
|
|
4065
|
+
"skew-y": "transform",
|
|
4066
|
+
"scale-x": "scale",
|
|
4067
|
+
"scale-y": "scale",
|
|
4068
|
+
// Side border-radius (two corners — expanded in generateRuleForClass / classesToStyles)
|
|
4069
|
+
"rounded-t": "border-top-left-radius",
|
|
4070
|
+
"rounded-r": "border-top-right-radius",
|
|
4071
|
+
"rounded-b": "border-bottom-left-radius",
|
|
4072
|
+
"rounded-l": "border-top-left-radius",
|
|
4073
|
+
// Blend / misc keyword roots
|
|
4074
|
+
"mix-blend": "mix-blend-mode",
|
|
4075
|
+
"bg-blend": "background-blend-mode",
|
|
4076
|
+
"will-change": "will-change",
|
|
4077
|
+
columns: "columns",
|
|
4078
|
+
overscroll: "overscroll-behavior",
|
|
4079
|
+
"overscroll-x": "overscroll-behavior-x",
|
|
4080
|
+
"overscroll-y": "overscroll-behavior-y",
|
|
4081
|
+
touch: "touch-action",
|
|
4082
|
+
"break-after": "break-after",
|
|
4083
|
+
"break-before": "break-before",
|
|
4084
|
+
"break-inside": "break-inside",
|
|
4085
|
+
// Text decoration & SVG (shared roots disambiguated by value type — see resolveRootProperty)
|
|
4086
|
+
"underline-offset": "text-underline-offset",
|
|
4087
|
+
decoration: "text-decoration-color",
|
|
4088
|
+
caret: "caret-color",
|
|
4089
|
+
fill: "fill",
|
|
4090
|
+
stroke: "stroke",
|
|
4091
|
+
// Tables
|
|
4092
|
+
"border-spacing": "border-spacing",
|
|
4093
|
+
// Scroll margin/padding (Tailwind spacing scale)
|
|
4094
|
+
"scroll-m": "scroll-margin",
|
|
4095
|
+
"scroll-mt": "scroll-margin-top",
|
|
4096
|
+
"scroll-mr": "scroll-margin-right",
|
|
4097
|
+
"scroll-mb": "scroll-margin-bottom",
|
|
4098
|
+
"scroll-ml": "scroll-margin-left",
|
|
4099
|
+
"scroll-p": "scroll-padding",
|
|
4100
|
+
"scroll-pt": "scroll-padding-top",
|
|
4101
|
+
"scroll-pr": "scroll-padding-right",
|
|
4102
|
+
"scroll-pb": "scroll-padding-bottom",
|
|
4103
|
+
"scroll-pl": "scroll-padding-left",
|
|
4007
4104
|
// Positioning
|
|
4008
4105
|
top: "top",
|
|
4009
4106
|
right: "right",
|
|
@@ -4012,6 +4109,8 @@ var prefixToCSSProperty = {
|
|
|
4012
4109
|
inset: "inset",
|
|
4013
4110
|
"inset-x": "inset-inline",
|
|
4014
4111
|
"inset-y": "inset-block",
|
|
4112
|
+
start: "inset-inline-start",
|
|
4113
|
+
end: "inset-inline-end",
|
|
4015
4114
|
z: "z-index",
|
|
4016
4115
|
// Outline
|
|
4017
4116
|
outline: "outline",
|
|
@@ -4024,6 +4123,50 @@ var prefixToCSSProperty = {
|
|
|
4024
4123
|
transition: "transition",
|
|
4025
4124
|
object: "object-position"
|
|
4026
4125
|
};
|
|
4126
|
+
var FILTER_FN_ROOTS = {
|
|
4127
|
+
blur: { property: "filter", fn: "blur" },
|
|
4128
|
+
brightness: { property: "filter", fn: "brightness", scale: "ratio" },
|
|
4129
|
+
contrast: { property: "filter", fn: "contrast", scale: "ratio" },
|
|
4130
|
+
saturate: { property: "filter", fn: "saturate", scale: "ratio" },
|
|
4131
|
+
grayscale: { property: "filter", fn: "grayscale", scale: "percent" },
|
|
4132
|
+
invert: { property: "filter", fn: "invert", scale: "percent" },
|
|
4133
|
+
sepia: { property: "filter", fn: "sepia", scale: "percent" },
|
|
4134
|
+
"hue-rotate": { property: "filter", fn: "hue-rotate", scale: "deg" },
|
|
4135
|
+
"drop-shadow": { property: "filter", fn: "drop-shadow" },
|
|
4136
|
+
"backdrop-blur": { property: "backdrop-filter", fn: "blur" },
|
|
4137
|
+
"backdrop-brightness": { property: "backdrop-filter", fn: "brightness", scale: "ratio" },
|
|
4138
|
+
"backdrop-contrast": { property: "backdrop-filter", fn: "contrast", scale: "ratio" },
|
|
4139
|
+
"backdrop-saturate": { property: "backdrop-filter", fn: "saturate", scale: "ratio" },
|
|
4140
|
+
"backdrop-grayscale": { property: "backdrop-filter", fn: "grayscale", scale: "percent" },
|
|
4141
|
+
"backdrop-invert": { property: "backdrop-filter", fn: "invert", scale: "percent" },
|
|
4142
|
+
"backdrop-sepia": { property: "backdrop-filter", fn: "sepia", scale: "percent" },
|
|
4143
|
+
"backdrop-hue-rotate": { property: "backdrop-filter", fn: "hue-rotate", scale: "deg" },
|
|
4144
|
+
"backdrop-opacity": { property: "backdrop-filter", fn: "opacity", scale: "ratio" }
|
|
4145
|
+
};
|
|
4146
|
+
var FILTER_ROOT_BY_PROP_FN = new Map(
|
|
4147
|
+
Object.entries(FILTER_FN_ROOTS).map(([root, e]) => [`${e.property}|${e.fn}`, root])
|
|
4148
|
+
);
|
|
4149
|
+
function filterStepToArg(scale, step) {
|
|
4150
|
+
if (scale === "ratio") return String(Number(step) / 100);
|
|
4151
|
+
if (scale === "percent") return `${step}%`;
|
|
4152
|
+
return `${step}deg`;
|
|
4153
|
+
}
|
|
4154
|
+
function filterArgToStep(scale, arg) {
|
|
4155
|
+
if (scale === "ratio") {
|
|
4156
|
+
const m2 = arg.match(/^(\d+(?:\.\d+)?)$/);
|
|
4157
|
+
if (!m2) return null;
|
|
4158
|
+
const step = Number(m2[1]) * 100;
|
|
4159
|
+
return Number.isInteger(step) ? String(step) : null;
|
|
4160
|
+
}
|
|
4161
|
+
const m = scale === "percent" ? arg.match(/^(\d+)%$/) : arg.match(/^(\d+)deg$/);
|
|
4162
|
+
return m ? m[1] ?? null : null;
|
|
4163
|
+
}
|
|
4164
|
+
var ROUNDED_SIDE_CORNERS = {
|
|
4165
|
+
"rounded-t": ["border-top-left-radius", "border-top-right-radius"],
|
|
4166
|
+
"rounded-r": ["border-top-right-radius", "border-bottom-right-radius"],
|
|
4167
|
+
"rounded-b": ["border-bottom-left-radius", "border-bottom-right-radius"],
|
|
4168
|
+
"rounded-l": ["border-top-left-radius", "border-bottom-left-radius"]
|
|
4169
|
+
};
|
|
4027
4170
|
var staticUtilities = {
|
|
4028
4171
|
display: {
|
|
4029
4172
|
flex: "flex",
|
|
@@ -4037,7 +4180,15 @@ var staticUtilities = {
|
|
|
4037
4180
|
table: "table",
|
|
4038
4181
|
contents: "contents",
|
|
4039
4182
|
"flow-root": "flow-root",
|
|
4040
|
-
"list-item": "list-item"
|
|
4183
|
+
"list-item": "list-item",
|
|
4184
|
+
"table-row": "table-row",
|
|
4185
|
+
"table-cell": "table-cell",
|
|
4186
|
+
"table-caption": "table-caption",
|
|
4187
|
+
"table-row-group": "table-row-group",
|
|
4188
|
+
"table-header-group": "table-header-group",
|
|
4189
|
+
"table-footer-group": "table-footer-group",
|
|
4190
|
+
"table-column": "table-column",
|
|
4191
|
+
"table-column-group": "table-column-group"
|
|
4041
4192
|
},
|
|
4042
4193
|
flexDirection: {
|
|
4043
4194
|
column: "flex-col",
|
|
@@ -4293,15 +4444,182 @@ var staticUtilities = {
|
|
|
4293
4444
|
none: "transition-none"
|
|
4294
4445
|
},
|
|
4295
4446
|
transform: {
|
|
4296
|
-
none: "transform-none"
|
|
4447
|
+
none: "transform-none",
|
|
4448
|
+
"translateZ(0)": "transform-gpu"
|
|
4297
4449
|
},
|
|
4298
4450
|
boxShadow: {
|
|
4299
4451
|
none: "shadow-none"
|
|
4300
4452
|
},
|
|
4301
4453
|
outline: {
|
|
4302
4454
|
none: "outline-none"
|
|
4455
|
+
},
|
|
4456
|
+
outlineStyle: {
|
|
4457
|
+
solid: "outline-solid",
|
|
4458
|
+
dashed: "outline-dashed",
|
|
4459
|
+
dotted: "outline-dotted",
|
|
4460
|
+
double: "outline-double"
|
|
4461
|
+
},
|
|
4462
|
+
fontStyle: {
|
|
4463
|
+
italic: "italic",
|
|
4464
|
+
normal: "not-italic"
|
|
4465
|
+
},
|
|
4466
|
+
isolation: {
|
|
4467
|
+
isolate: "isolate",
|
|
4468
|
+
auto: "isolation-auto"
|
|
4469
|
+
},
|
|
4470
|
+
borderCollapse: {
|
|
4471
|
+
collapse: "border-collapse",
|
|
4472
|
+
separate: "border-separate"
|
|
4473
|
+
},
|
|
4474
|
+
tableLayout: {
|
|
4475
|
+
auto: "table-auto",
|
|
4476
|
+
fixed: "table-fixed"
|
|
4477
|
+
},
|
|
4478
|
+
appearance: {
|
|
4479
|
+
none: "appearance-none",
|
|
4480
|
+
auto: "appearance-auto"
|
|
4481
|
+
},
|
|
4482
|
+
fontVariantNumeric: {
|
|
4483
|
+
"tabular-nums": "tabular-nums",
|
|
4484
|
+
normal: "normal-nums",
|
|
4485
|
+
ordinal: "ordinal",
|
|
4486
|
+
"slashed-zero": "slashed-zero",
|
|
4487
|
+
"lining-nums": "lining-nums",
|
|
4488
|
+
"oldstyle-nums": "oldstyle-nums",
|
|
4489
|
+
"proportional-nums": "proportional-nums",
|
|
4490
|
+
"diagonal-fractions": "diagonal-fractions",
|
|
4491
|
+
"stacked-fractions": "stacked-fractions"
|
|
4492
|
+
},
|
|
4493
|
+
// Tailwind pairs snap-x/y/both with a separate strictness class composed via a CSS
|
|
4494
|
+
// var; without var composition the common `snap-x snap-mandatory` intent collapses
|
|
4495
|
+
// into the type class itself. `snap-proximity`/`snap-mandatory` alone stay foreign.
|
|
4496
|
+
scrollSnapType: {
|
|
4497
|
+
"x mandatory": "snap-x",
|
|
4498
|
+
"y mandatory": "snap-y",
|
|
4499
|
+
"both mandatory": "snap-both",
|
|
4500
|
+
none: "snap-none"
|
|
4501
|
+
},
|
|
4502
|
+
scrollSnapAlign: {
|
|
4503
|
+
start: "snap-start",
|
|
4504
|
+
center: "snap-center",
|
|
4505
|
+
end: "snap-end",
|
|
4506
|
+
none: "snap-align-none"
|
|
4507
|
+
},
|
|
4508
|
+
// Bare filter-function switches (the 100% forms); numeric/arbitrary forms flow
|
|
4509
|
+
// through FILTER_FN_ROOTS (`grayscale-50`, `invert-[0.3]`).
|
|
4510
|
+
filter: {
|
|
4511
|
+
"grayscale(100%)": "grayscale",
|
|
4512
|
+
"invert(100%)": "invert",
|
|
4513
|
+
"sepia(100%)": "sepia",
|
|
4514
|
+
none: "filter-none"
|
|
4515
|
+
},
|
|
4516
|
+
backdropFilter: {
|
|
4517
|
+
"grayscale(100%)": "backdrop-grayscale",
|
|
4518
|
+
"invert(100%)": "backdrop-invert",
|
|
4519
|
+
"sepia(100%)": "backdrop-sepia",
|
|
4520
|
+
none: "backdrop-filter-none"
|
|
4521
|
+
},
|
|
4522
|
+
float: {
|
|
4523
|
+
left: "float-left",
|
|
4524
|
+
right: "float-right",
|
|
4525
|
+
none: "float-none",
|
|
4526
|
+
"inline-start": "float-start",
|
|
4527
|
+
"inline-end": "float-end"
|
|
4528
|
+
},
|
|
4529
|
+
clear: {
|
|
4530
|
+
both: "clear-both",
|
|
4531
|
+
left: "clear-left",
|
|
4532
|
+
right: "clear-right",
|
|
4533
|
+
none: "clear-none"
|
|
4534
|
+
},
|
|
4535
|
+
backgroundSize: {
|
|
4536
|
+
cover: "bg-cover",
|
|
4537
|
+
contain: "bg-contain",
|
|
4538
|
+
auto: "bg-auto"
|
|
4539
|
+
},
|
|
4540
|
+
backgroundAttachment: {
|
|
4541
|
+
fixed: "bg-fixed",
|
|
4542
|
+
local: "bg-local",
|
|
4543
|
+
scroll: "bg-scroll"
|
|
4544
|
+
},
|
|
4545
|
+
backgroundRepeat: {
|
|
4546
|
+
"no-repeat": "bg-no-repeat",
|
|
4547
|
+
repeat: "bg-repeat",
|
|
4548
|
+
"repeat-x": "bg-repeat-x",
|
|
4549
|
+
"repeat-y": "bg-repeat-y",
|
|
4550
|
+
round: "bg-repeat-round",
|
|
4551
|
+
space: "bg-repeat-space"
|
|
4552
|
+
},
|
|
4553
|
+
backgroundPosition: {
|
|
4554
|
+
center: "bg-center",
|
|
4555
|
+
top: "bg-top",
|
|
4556
|
+
bottom: "bg-bottom",
|
|
4557
|
+
left: "bg-left",
|
|
4558
|
+
right: "bg-right",
|
|
4559
|
+
"left top": "bg-left-top",
|
|
4560
|
+
"left bottom": "bg-left-bottom",
|
|
4561
|
+
"right top": "bg-right-top",
|
|
4562
|
+
"right bottom": "bg-right-bottom"
|
|
4563
|
+
},
|
|
4564
|
+
backgroundClip: {
|
|
4565
|
+
"border-box": "bg-clip-border",
|
|
4566
|
+
"padding-box": "bg-clip-padding",
|
|
4567
|
+
"content-box": "bg-clip-content",
|
|
4568
|
+
text: "bg-clip-text"
|
|
4569
|
+
},
|
|
4570
|
+
backgroundOrigin: {
|
|
4571
|
+
"border-box": "bg-origin-border",
|
|
4572
|
+
"padding-box": "bg-origin-padding",
|
|
4573
|
+
"content-box": "bg-origin-content"
|
|
4574
|
+
},
|
|
4575
|
+
textOverflow: {
|
|
4576
|
+
ellipsis: "text-ellipsis",
|
|
4577
|
+
clip: "text-clip"
|
|
4578
|
+
},
|
|
4579
|
+
// `text-nowrap` deliberately stays a whiteSpace alias (same rendering) — see staticClassAliases.
|
|
4580
|
+
textWrap: {
|
|
4581
|
+
wrap: "text-wrap",
|
|
4582
|
+
balance: "text-balance",
|
|
4583
|
+
pretty: "text-pretty"
|
|
4584
|
+
},
|
|
4585
|
+
textDecorationStyle: {
|
|
4586
|
+
solid: "decoration-solid",
|
|
4587
|
+
dashed: "decoration-dashed",
|
|
4588
|
+
dotted: "decoration-dotted",
|
|
4589
|
+
double: "decoration-double",
|
|
4590
|
+
wavy: "decoration-wavy"
|
|
4591
|
+
},
|
|
4592
|
+
hyphens: {
|
|
4593
|
+
auto: "hyphens-auto",
|
|
4594
|
+
none: "hyphens-none",
|
|
4595
|
+
manual: "hyphens-manual"
|
|
4596
|
+
},
|
|
4597
|
+
content: {
|
|
4598
|
+
none: "content-none"
|
|
4599
|
+
},
|
|
4600
|
+
captionSide: {
|
|
4601
|
+
top: "caption-top",
|
|
4602
|
+
bottom: "caption-bottom"
|
|
4603
|
+
},
|
|
4604
|
+
animation: {
|
|
4605
|
+
none: "animate-none"
|
|
4606
|
+
},
|
|
4607
|
+
// SVG paint statics; token/arbitrary colors flow through the fill/stroke roots.
|
|
4608
|
+
fill: {
|
|
4609
|
+
currentColor: "fill-current",
|
|
4610
|
+
none: "fill-none"
|
|
4611
|
+
},
|
|
4612
|
+
stroke: {
|
|
4613
|
+
currentColor: "stroke-current",
|
|
4614
|
+
none: "stroke-none"
|
|
4303
4615
|
}
|
|
4304
4616
|
};
|
|
4617
|
+
var staticClassAliases = {
|
|
4618
|
+
"text-nowrap": { prop: "whiteSpace", value: "nowrap" },
|
|
4619
|
+
// canonical: whitespace-nowrap
|
|
4620
|
+
"break-words": { prop: "overflowWrap", value: "break-word" }
|
|
4621
|
+
// canonical: wrap-break-word
|
|
4622
|
+
};
|
|
4305
4623
|
var SPACING_SCALE = {
|
|
4306
4624
|
"0": "0px",
|
|
4307
4625
|
px: "1px",
|
|
@@ -4371,6 +4689,20 @@ var SPACING_SCALE_ROOTS = /* @__PURE__ */ new Set([
|
|
|
4371
4689
|
"inset",
|
|
4372
4690
|
"inset-x",
|
|
4373
4691
|
"inset-y",
|
|
4692
|
+
"start",
|
|
4693
|
+
"end",
|
|
4694
|
+
"indent",
|
|
4695
|
+
"border-spacing",
|
|
4696
|
+
"scroll-m",
|
|
4697
|
+
"scroll-mt",
|
|
4698
|
+
"scroll-mr",
|
|
4699
|
+
"scroll-mb",
|
|
4700
|
+
"scroll-ml",
|
|
4701
|
+
"scroll-p",
|
|
4702
|
+
"scroll-pt",
|
|
4703
|
+
"scroll-pr",
|
|
4704
|
+
"scroll-pb",
|
|
4705
|
+
"scroll-pl",
|
|
4374
4706
|
"w",
|
|
4375
4707
|
"h",
|
|
4376
4708
|
"size",
|
|
@@ -4380,9 +4712,19 @@ var SPACING_SCALE_ROOTS = /* @__PURE__ */ new Set([
|
|
|
4380
4712
|
"max-h",
|
|
4381
4713
|
"basis"
|
|
4382
4714
|
]);
|
|
4383
|
-
var COLOR_TOKEN_ROOTS = /* @__PURE__ */ new Set([
|
|
4715
|
+
var COLOR_TOKEN_ROOTS = /* @__PURE__ */ new Set([
|
|
4716
|
+
"text",
|
|
4717
|
+
"bg",
|
|
4718
|
+
"border",
|
|
4719
|
+
"accent",
|
|
4720
|
+
"outline",
|
|
4721
|
+
"decoration",
|
|
4722
|
+
"caret",
|
|
4723
|
+
"fill",
|
|
4724
|
+
"stroke"
|
|
4725
|
+
]);
|
|
4384
4726
|
var staticUtilityReverse = (() => {
|
|
4385
|
-
const reverse = {};
|
|
4727
|
+
const reverse = { ...staticClassAliases };
|
|
4386
4728
|
for (const [prop, values] of Object.entries(staticUtilities)) {
|
|
4387
4729
|
for (const [value, className] of Object.entries(values)) {
|
|
4388
4730
|
if (!reverse[className]) {
|
|
@@ -4393,13 +4735,72 @@ var staticUtilityReverse = (() => {
|
|
|
4393
4735
|
return reverse;
|
|
4394
4736
|
})();
|
|
4395
4737
|
var keywordValues = {
|
|
4396
|
-
w: {
|
|
4397
|
-
|
|
4398
|
-
|
|
4399
|
-
|
|
4738
|
+
w: {
|
|
4739
|
+
auto: "auto",
|
|
4740
|
+
full: "100%",
|
|
4741
|
+
screen: "100vw",
|
|
4742
|
+
svw: "100svw",
|
|
4743
|
+
dvw: "100dvw",
|
|
4744
|
+
lvw: "100lvw",
|
|
4745
|
+
fit: "fit-content",
|
|
4746
|
+
min: "min-content",
|
|
4747
|
+
max: "max-content"
|
|
4748
|
+
},
|
|
4749
|
+
h: {
|
|
4750
|
+
auto: "auto",
|
|
4751
|
+
full: "100%",
|
|
4752
|
+
screen: "100vh",
|
|
4753
|
+
svh: "100svh",
|
|
4754
|
+
dvh: "100dvh",
|
|
4755
|
+
lvh: "100lvh",
|
|
4756
|
+
fit: "fit-content",
|
|
4757
|
+
min: "min-content",
|
|
4758
|
+
max: "max-content"
|
|
4759
|
+
},
|
|
4760
|
+
"max-w": {
|
|
4761
|
+
full: "100%",
|
|
4762
|
+
none: "none",
|
|
4763
|
+
screen: "100vw",
|
|
4764
|
+
svw: "100svw",
|
|
4765
|
+
dvw: "100dvw",
|
|
4766
|
+
lvw: "100lvw",
|
|
4767
|
+
fit: "fit-content",
|
|
4768
|
+
min: "min-content",
|
|
4769
|
+
max: "max-content"
|
|
4770
|
+
},
|
|
4771
|
+
"max-h": {
|
|
4772
|
+
full: "100%",
|
|
4773
|
+
none: "none",
|
|
4774
|
+
screen: "100vh",
|
|
4775
|
+
svh: "100svh",
|
|
4776
|
+
dvh: "100dvh",
|
|
4777
|
+
lvh: "100lvh",
|
|
4778
|
+
fit: "fit-content",
|
|
4779
|
+
min: "min-content",
|
|
4780
|
+
max: "max-content"
|
|
4781
|
+
},
|
|
4400
4782
|
size: { auto: "auto", full: "100%", fit: "fit-content", min: "min-content", max: "max-content" },
|
|
4401
|
-
"min-w": {
|
|
4402
|
-
|
|
4783
|
+
"min-w": {
|
|
4784
|
+
auto: "auto",
|
|
4785
|
+
full: "100%",
|
|
4786
|
+
svw: "100svw",
|
|
4787
|
+
dvw: "100dvw",
|
|
4788
|
+
lvw: "100lvw",
|
|
4789
|
+
fit: "fit-content",
|
|
4790
|
+
min: "min-content",
|
|
4791
|
+
max: "max-content"
|
|
4792
|
+
},
|
|
4793
|
+
"min-h": {
|
|
4794
|
+
auto: "auto",
|
|
4795
|
+
full: "100%",
|
|
4796
|
+
screen: "100vh",
|
|
4797
|
+
svh: "100svh",
|
|
4798
|
+
dvh: "100dvh",
|
|
4799
|
+
lvh: "100lvh",
|
|
4800
|
+
fit: "fit-content",
|
|
4801
|
+
min: "min-content",
|
|
4802
|
+
max: "max-content"
|
|
4803
|
+
},
|
|
4403
4804
|
m: { auto: "auto" },
|
|
4404
4805
|
mt: { auto: "auto" },
|
|
4405
4806
|
mr: { auto: "auto" },
|
|
@@ -4424,16 +4825,48 @@ var keywordValues = {
|
|
|
4424
4825
|
"inset-x": { auto: "auto", full: "100%" },
|
|
4425
4826
|
"inset-y": { auto: "auto", full: "100%" },
|
|
4426
4827
|
aspect: { auto: "auto", square: "1 / 1", video: "16 / 9" },
|
|
4427
|
-
order: { first: "-9999", last: "9999", none: "0" }
|
|
4828
|
+
order: { first: "-9999", last: "9999", none: "0" },
|
|
4829
|
+
"will-change": { scroll: "scroll-position" },
|
|
4830
|
+
// other values (transform, contents, auto) pass through generically
|
|
4831
|
+
columns: { auto: "auto" },
|
|
4832
|
+
start: { auto: "auto", full: "100%" },
|
|
4833
|
+
end: { auto: "auto", full: "100%" },
|
|
4834
|
+
"underline-offset": { auto: "auto" },
|
|
4835
|
+
"auto-cols": { auto: "auto", min: "min-content", max: "max-content", fr: "minmax(0, 1fr)" },
|
|
4836
|
+
"auto-rows": { auto: "auto", min: "min-content", max: "max-content", fr: "minmax(0, 1fr)" },
|
|
4837
|
+
col: { auto: "auto" },
|
|
4838
|
+
row: { auto: "auto" },
|
|
4839
|
+
decoration: { "from-font": "from-font" }
|
|
4840
|
+
// thickness keyword; style keywords are statics, colors flow via value type
|
|
4428
4841
|
};
|
|
4429
|
-
var genericKeywordRoots = /* @__PURE__ */ new Set([
|
|
4430
|
-
|
|
4842
|
+
var genericKeywordRoots = /* @__PURE__ */ new Set([
|
|
4843
|
+
"cursor",
|
|
4844
|
+
"align",
|
|
4845
|
+
"origin",
|
|
4846
|
+
"object",
|
|
4847
|
+
"list",
|
|
4848
|
+
"mix-blend",
|
|
4849
|
+
"bg-blend",
|
|
4850
|
+
"will-change",
|
|
4851
|
+
"overscroll",
|
|
4852
|
+
"overscroll-x",
|
|
4853
|
+
"overscroll-y",
|
|
4854
|
+
"touch",
|
|
4855
|
+
"break-after",
|
|
4856
|
+
"break-before",
|
|
4857
|
+
"break-inside"
|
|
4858
|
+
]);
|
|
4859
|
+
var integerValueRoots = /* @__PURE__ */ new Set(["z", "order", "flex", "grow", "shrink", "columns", "stroke"]);
|
|
4431
4860
|
var colorTokenProps = /* @__PURE__ */ new Set([
|
|
4432
4861
|
"color",
|
|
4433
4862
|
"backgroundColor",
|
|
4434
4863
|
"borderColor",
|
|
4435
4864
|
"accentColor",
|
|
4436
|
-
"outlineColor"
|
|
4865
|
+
"outlineColor",
|
|
4866
|
+
"textDecorationColor",
|
|
4867
|
+
"caretColor",
|
|
4868
|
+
"fill",
|
|
4869
|
+
"stroke"
|
|
4437
4870
|
]);
|
|
4438
4871
|
var FRACTION_ROOTS = /* @__PURE__ */ new Set([
|
|
4439
4872
|
"w",
|
|
@@ -4766,7 +5199,8 @@ var SPECS = [
|
|
|
4766
5199
|
["md", "0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1)"],
|
|
4767
5200
|
["lg", "0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1)"],
|
|
4768
5201
|
["xl", "0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1)"],
|
|
4769
|
-
["2xl", "0 25px 50px -12px rgb(0 0 0 / 0.25)"]
|
|
5202
|
+
["2xl", "0 25px 50px -12px rgb(0 0 0 / 0.25)"],
|
|
5203
|
+
["inner", "inset 0 2px 4px 0 rgb(0 0 0 / 0.05)"]
|
|
4770
5204
|
]
|
|
4771
5205
|
},
|
|
4772
5206
|
{
|
|
@@ -4991,6 +5425,10 @@ function resolveRootProperty(root, value) {
|
|
|
4991
5425
|
if (isLengthValue(value)) return "outline-width";
|
|
4992
5426
|
return "outline";
|
|
4993
5427
|
}
|
|
5428
|
+
case "decoration":
|
|
5429
|
+
return isLengthValue(value) || value === "from-font" ? "text-decoration-thickness" : "text-decoration-color";
|
|
5430
|
+
case "stroke":
|
|
5431
|
+
return isColorValue(value) ? "stroke" : "stroke-width";
|
|
4994
5432
|
default:
|
|
4995
5433
|
return prefixToCSSProperty[root] ?? root;
|
|
4996
5434
|
}
|
|
@@ -5046,6 +5484,38 @@ function negateCssValue(root, value) {
|
|
|
5046
5484
|
}
|
|
5047
5485
|
return /^\d/.test(value) ? `-${value}` : null;
|
|
5048
5486
|
}
|
|
5487
|
+
var BORDER_SIDE_PROPERTY = {
|
|
5488
|
+
border: "border",
|
|
5489
|
+
"border-t": "border-top",
|
|
5490
|
+
"border-r": "border-right",
|
|
5491
|
+
"border-b": "border-bottom",
|
|
5492
|
+
"border-l": "border-left",
|
|
5493
|
+
"border-x": "border-inline",
|
|
5494
|
+
"border-y": "border-block"
|
|
5495
|
+
};
|
|
5496
|
+
var BORDER_STYLE_KEYWORDS = /* @__PURE__ */ new Set(["solid", "dashed", "dotted", "double", "none", "hidden"]);
|
|
5497
|
+
var BORDER_STYLE = "solid";
|
|
5498
|
+
function parseBorderClass(root, rest) {
|
|
5499
|
+
if (root !== "border") {
|
|
5500
|
+
const sideProp2 = BORDER_SIDE_PROPERTY[root];
|
|
5501
|
+
if (sideProp2 && /^\d+$/.test(rest)) {
|
|
5502
|
+
return { property: sideProp2, value: `${rest}px ${BORDER_STYLE}`, root, kind: "numeric" };
|
|
5503
|
+
}
|
|
5504
|
+
return null;
|
|
5505
|
+
}
|
|
5506
|
+
const sideRoot = `border-${rest}`;
|
|
5507
|
+
const sideProp = BORDER_SIDE_PROPERTY[sideRoot];
|
|
5508
|
+
if (sideProp) {
|
|
5509
|
+
return { property: sideProp, value: `1px ${BORDER_STYLE}`, root: sideRoot, kind: "keyword" };
|
|
5510
|
+
}
|
|
5511
|
+
if (/^\d+$/.test(rest)) {
|
|
5512
|
+
return { property: "border", value: `${rest}px ${BORDER_STYLE}`, root: "border", kind: "numeric" };
|
|
5513
|
+
}
|
|
5514
|
+
if (BORDER_STYLE_KEYWORDS.has(rest)) {
|
|
5515
|
+
return { property: "border-style", value: rest, root: "border", kind: "keyword" };
|
|
5516
|
+
}
|
|
5517
|
+
return null;
|
|
5518
|
+
}
|
|
5049
5519
|
function parseUtilityClass(className, knownTokens) {
|
|
5050
5520
|
const stat = staticUtilityReverse[className];
|
|
5051
5521
|
if (stat) {
|
|
@@ -5059,6 +5529,9 @@ function parseUtilityClass(className, knownTokens) {
|
|
|
5059
5529
|
kind: "keyword"
|
|
5060
5530
|
};
|
|
5061
5531
|
}
|
|
5532
|
+
if (className === "border") {
|
|
5533
|
+
return { property: "border", value: `1px ${BORDER_STYLE}`, root: "border", kind: "keyword" };
|
|
5534
|
+
}
|
|
5062
5535
|
if (className.startsWith("-") && className.length > 1) {
|
|
5063
5536
|
const positive = parseUtilityClass(className.slice(1), knownTokens);
|
|
5064
5537
|
if (positive?.root && positive.value != null && NEGATABLE_ROOTS.has(positive.root)) {
|
|
@@ -5094,6 +5567,47 @@ function parseUtilityClass(className, knownTokens) {
|
|
|
5094
5567
|
return null;
|
|
5095
5568
|
}
|
|
5096
5569
|
function parseRootValue(root, rest, knownTokens) {
|
|
5570
|
+
const filterFn = FILTER_FN_ROOTS[root];
|
|
5571
|
+
if (filterFn) {
|
|
5572
|
+
const { property, fn, scale } = filterFn;
|
|
5573
|
+
if (rest.startsWith("[") && rest.endsWith("]") && rest.length > 2) {
|
|
5574
|
+
const arg = decodeArbitraryValue(rest.slice(1, -1));
|
|
5575
|
+
return { property, value: `${fn}(${arg})`, root, kind: "arbitrary" };
|
|
5576
|
+
}
|
|
5577
|
+
const varArg = rest.match(/^\((--[\w-]+)\)$/);
|
|
5578
|
+
if (varArg) {
|
|
5579
|
+
return { property, value: `${fn}(var(${varArg[1]}))`, root, kind: "var" };
|
|
5580
|
+
}
|
|
5581
|
+
if (scale && /^\d+(\.\d+)?$/.test(rest)) {
|
|
5582
|
+
return { property, value: `${fn}(${filterStepToArg(scale, rest)})`, root, kind: "numeric" };
|
|
5583
|
+
}
|
|
5584
|
+
return null;
|
|
5585
|
+
}
|
|
5586
|
+
if (root === "skew-x" || root === "skew-y") {
|
|
5587
|
+
const fn = root === "skew-x" ? "skewX" : "skewY";
|
|
5588
|
+
if (rest.startsWith("[") && rest.endsWith("]") && rest.length > 2) {
|
|
5589
|
+
return {
|
|
5590
|
+
property: "transform",
|
|
5591
|
+
value: `${fn}(${decodeArbitraryValue(rest.slice(1, -1))})`,
|
|
5592
|
+
root,
|
|
5593
|
+
kind: "arbitrary"
|
|
5594
|
+
};
|
|
5595
|
+
}
|
|
5596
|
+
if (/^\d+(\.\d+)?$/.test(rest)) {
|
|
5597
|
+
return { property: "transform", value: `${fn}(${rest}deg)`, root, kind: "numeric" };
|
|
5598
|
+
}
|
|
5599
|
+
return null;
|
|
5600
|
+
}
|
|
5601
|
+
if (root === "scale-x" || root === "scale-y") {
|
|
5602
|
+
const pair = (v) => root === "scale-x" ? `${v} 1` : `1 ${v}`;
|
|
5603
|
+
if (rest.startsWith("[") && rest.endsWith("]") && rest.length > 2) {
|
|
5604
|
+
return { property: "scale", value: pair(decodeArbitraryValue(rest.slice(1, -1))), root, kind: "arbitrary" };
|
|
5605
|
+
}
|
|
5606
|
+
if (/^\d+$/.test(rest)) {
|
|
5607
|
+
return { property: "scale", value: pair(String(Number(rest) / 100)), root, kind: "numeric" };
|
|
5608
|
+
}
|
|
5609
|
+
return null;
|
|
5610
|
+
}
|
|
5097
5611
|
if (rest.startsWith("[") && rest.endsWith("]") && rest.length > 2) {
|
|
5098
5612
|
const value = decodeArbitraryValue(rest.slice(1, -1));
|
|
5099
5613
|
return { property: resolveRootProperty(root, value), value, root, kind: "arbitrary" };
|
|
@@ -5112,6 +5626,21 @@ function parseRootValue(root, rest, knownTokens) {
|
|
|
5112
5626
|
}
|
|
5113
5627
|
return { property, value, root, kind: "var" };
|
|
5114
5628
|
}
|
|
5629
|
+
if (root.startsWith("rounded-") && prefixToCSSProperty[root]) {
|
|
5630
|
+
const themed = THEME_SCALE_BY_CLASS.get(`rounded-${rest}`);
|
|
5631
|
+
if (themed) {
|
|
5632
|
+
return { property: prefixToCSSProperty[root] ?? root, value: themeScaleValue(themed), root, kind: "var" };
|
|
5633
|
+
}
|
|
5634
|
+
const kw = keywordValues[root]?.[rest] ?? keywordValues.rounded?.[rest];
|
|
5635
|
+
if (kw !== void 0) {
|
|
5636
|
+
return { property: prefixToCSSProperty[root] ?? root, value: kw, root, kind: "keyword" };
|
|
5637
|
+
}
|
|
5638
|
+
return null;
|
|
5639
|
+
}
|
|
5640
|
+
if (root === "border" || BORDER_SIDE_PROPERTY[root]) {
|
|
5641
|
+
const border = parseBorderClass(root, rest);
|
|
5642
|
+
if (border) return border;
|
|
5643
|
+
}
|
|
5115
5644
|
const keyword = keywordValues[root]?.[rest];
|
|
5116
5645
|
if (keyword !== void 0) {
|
|
5117
5646
|
return { property: resolveRootProperty(root, keyword), value: keyword, root, kind: "keyword" };
|
|
@@ -5154,6 +5683,16 @@ function parseRootValue(root, rest, knownTokens) {
|
|
|
5154
5683
|
if ((root === "duration" || root === "delay") && /^\d+$/.test(rest)) {
|
|
5155
5684
|
return { property: prefixToCSSProperty[root] ?? root, value: `${rest}ms`, root, kind: "numeric" };
|
|
5156
5685
|
}
|
|
5686
|
+
if ((root === "outline" || root === "outline-offset" || root === "underline-offset") && /^\d+$/.test(rest)) {
|
|
5687
|
+
const property = root === "outline" ? "outline-width" : prefixToCSSProperty[root] ?? root;
|
|
5688
|
+
return { property, value: `${rest}px`, root, kind: "numeric" };
|
|
5689
|
+
}
|
|
5690
|
+
if (root === "decoration" && /^\d+$/.test(rest)) {
|
|
5691
|
+
return { property: "text-decoration-thickness", value: `${rest}px`, root, kind: "numeric" };
|
|
5692
|
+
}
|
|
5693
|
+
if (root === "stroke" && /^\d+$/.test(rest)) {
|
|
5694
|
+
return { property: "stroke-width", value: rest, root, kind: "numeric" };
|
|
5695
|
+
}
|
|
5157
5696
|
if (root === "ease") {
|
|
5158
5697
|
const timing = EASE_TIMING[rest];
|
|
5159
5698
|
if (timing) return { property: "transition-timing-function", value: timing, root, kind: "keyword" };
|
|
@@ -5311,6 +5850,25 @@ function propertyValueToClass(prop, value) {
|
|
|
5311
5850
|
return className2;
|
|
5312
5851
|
}
|
|
5313
5852
|
let className = null;
|
|
5853
|
+
if (prop === "filter" || prop === "backdropFilter") {
|
|
5854
|
+
const property = camelToKebab(prop);
|
|
5855
|
+
const varForm = stringValue.match(/^([a-z-]+)\(\s*var\((--[\w-]+)\)\s*\)$/);
|
|
5856
|
+
const plainForm = varForm ? null : stringValue.match(/^([a-z-]+)\(([^()]+)\)$/);
|
|
5857
|
+
const fnRoot = FILTER_ROOT_BY_PROP_FN.get(`${property}|${(varForm ?? plainForm)?.[1]}`);
|
|
5858
|
+
if (fnRoot && varForm) {
|
|
5859
|
+
className = `${fnRoot}-(${varForm[2]})`;
|
|
5860
|
+
} else if (fnRoot && plainForm) {
|
|
5861
|
+
const arg = (plainForm[2] ?? "").trim();
|
|
5862
|
+
const scale = FILTER_FN_ROOTS[fnRoot]?.scale;
|
|
5863
|
+
const step = scale ? filterArgToStep(scale, arg) : null;
|
|
5864
|
+
if (step != null) {
|
|
5865
|
+
className = `${fnRoot}-${step}`;
|
|
5866
|
+
} else {
|
|
5867
|
+
const encoded = encodeArbitraryValue(arg);
|
|
5868
|
+
if (encoded) className = `${fnRoot}-[${encoded}]`;
|
|
5869
|
+
}
|
|
5870
|
+
}
|
|
5871
|
+
}
|
|
5314
5872
|
const kwTable = keywordValues[root];
|
|
5315
5873
|
if (kwTable) {
|
|
5316
5874
|
for (const [keyword, cssValue] of Object.entries(kwTable)) {
|
|
@@ -5530,6 +6088,11 @@ function classesToStyles(classes, knownTokens) {
|
|
|
5530
6088
|
if (cleanClass.startsWith("size-") && styleEntry.prop === "width") {
|
|
5531
6089
|
styles[breakpoint].height = styleEntry.value;
|
|
5532
6090
|
}
|
|
6091
|
+
const sideRoot = cleanClass.match(/^(rounded-[trbl])-/)?.[1];
|
|
6092
|
+
const corners = sideRoot ? ROUNDED_SIDE_CORNERS[sideRoot] : void 0;
|
|
6093
|
+
if (corners) {
|
|
6094
|
+
styles[breakpoint][cssPropertyToCamel(corners[1] ?? "")] = styleEntry.value;
|
|
6095
|
+
}
|
|
5533
6096
|
}
|
|
5534
6097
|
}
|
|
5535
6098
|
if (Object.keys(styles.tablet || {}).length === 0) delete styles.tablet;
|
|
@@ -5980,6 +6543,24 @@ function rewriteViewportUnits(input) {
|
|
|
5980
6543
|
return `calc(var(--design-${unit}, 1${unit}) * ${num})`;
|
|
5981
6544
|
});
|
|
5982
6545
|
}
|
|
6546
|
+
function rewriteViewportUnitsInStylesheet(css) {
|
|
6547
|
+
if (!css) return css;
|
|
6548
|
+
let out = "";
|
|
6549
|
+
let seg = "";
|
|
6550
|
+
for (let i = 0; i < css.length; i++) {
|
|
6551
|
+
const ch = css[i];
|
|
6552
|
+
if (ch === "{") {
|
|
6553
|
+
out += seg + ch;
|
|
6554
|
+
seg = "";
|
|
6555
|
+
} else if (ch === "}") {
|
|
6556
|
+
out += rewriteViewportUnits(seg) + ch;
|
|
6557
|
+
seg = "";
|
|
6558
|
+
} else {
|
|
6559
|
+
seg += ch;
|
|
6560
|
+
}
|
|
6561
|
+
}
|
|
6562
|
+
return out + seg;
|
|
6563
|
+
}
|
|
5983
6564
|
var DESIGN_VIEWPORT_VARS = [
|
|
5984
6565
|
"--design-vh",
|
|
5985
6566
|
"--design-svh",
|
|
@@ -6233,6 +6814,10 @@ function generateRuleForClass(className, knownTokens) {
|
|
|
6233
6814
|
if (root === "size") {
|
|
6234
6815
|
return `width: ${value}; height: ${value};`;
|
|
6235
6816
|
}
|
|
6817
|
+
const sideCorners = root ? ROUNDED_SIDE_CORNERS[root] : void 0;
|
|
6818
|
+
if (sideCorners) {
|
|
6819
|
+
return `${sideCorners[0]}: ${value}; ${sideCorners[1]}: ${value};`;
|
|
6820
|
+
}
|
|
6236
6821
|
if (root === "px") {
|
|
6237
6822
|
return `padding-left: ${value}; padding-right: ${value};`;
|
|
6238
6823
|
}
|
|
@@ -6853,6 +7438,7 @@ export {
|
|
|
6853
7438
|
normalizePath,
|
|
6854
7439
|
isCurrentLink,
|
|
6855
7440
|
rewriteViewportUnits,
|
|
7441
|
+
rewriteViewportUnitsInStylesheet,
|
|
6856
7442
|
DESIGN_VIEWPORT_VARS,
|
|
6857
7443
|
toFriendlyError,
|
|
6858
7444
|
sortClassesByPropertyOrder,
|
|
@@ -6865,4 +7451,4 @@ export {
|
|
|
6865
7451
|
generateInteractiveCSS,
|
|
6866
7452
|
generateAllInteractiveCSS
|
|
6867
7453
|
};
|
|
6868
|
-
//# sourceMappingURL=chunk-
|
|
7454
|
+
//# sourceMappingURL=chunk-RLBV2R6J.js.map
|