loopwind 0.20.2 → 0.21.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/_dsgn/templates/dashed-stroke-test/template.tsx +73 -0
- package/_dsgn/templates/path-follow-test/template.tsx +176 -0
- package/_dsgn/templates/path-simple-test/template.tsx +98 -0
- package/_dsgn/templates/stroke-dash-test/meta.json +12 -0
- package/_dsgn/templates/stroke-dash-test/template.tsx +53 -0
- package/dist/lib/path-helpers.d.ts +71 -0
- package/dist/lib/path-helpers.d.ts.map +1 -0
- package/dist/lib/path-helpers.js +118 -0
- package/dist/lib/path-helpers.js.map +1 -0
- package/dist/lib/renderer.d.ts.map +1 -1
- package/dist/lib/renderer.js +59 -4
- package/dist/lib/renderer.js.map +1 -1
- package/dist/lib/tailwind.d.ts.map +1 -1
- package/dist/lib/tailwind.js +191 -6
- package/dist/lib/tailwind.js.map +1 -1
- package/dist/lib/template-validator.d.ts.map +1 -1
- package/dist/lib/template-validator.js +19 -5
- package/dist/lib/template-validator.js.map +1 -1
- package/dist/lib/text-helpers.d.ts +52 -0
- package/dist/lib/text-helpers.d.ts.map +1 -0
- package/dist/lib/text-helpers.js +74 -0
- package/dist/lib/text-helpers.js.map +1 -0
- package/dist/lib/utils.d.ts +0 -4
- package/dist/lib/utils.d.ts.map +1 -1
- package/dist/lib/utils.js +33 -0
- package/dist/lib/utils.js.map +1 -1
- package/dist/types/template.d.ts +121 -0
- package/dist/types/template.d.ts.map +1 -1
- package/package.json +1 -1
- package/website/.astro/content.db +0 -0
- package/website/.astro/integrations/astro_db/db.d.ts +15 -0
- package/website/astro.config.mjs +2 -1
- package/website/package-lock.json +1090 -122
- package/website/package.json +14 -0
package/dist/lib/renderer.js
CHANGED
|
@@ -13,6 +13,8 @@ import { loadConfig } from './config.js';
|
|
|
13
13
|
import { tw } from './tailwind.js';
|
|
14
14
|
import { loadTailwindConfig } from './tailwind-config-loader.js';
|
|
15
15
|
import { qr, image } from './helpers.js';
|
|
16
|
+
import { followLine, followQuadratic, followCubic, followCircle, followEllipse, followArc } from './path-helpers.js';
|
|
17
|
+
import * as textHelpers from './text-helpers.js';
|
|
16
18
|
const __filename = fileURLToPath(import.meta.url);
|
|
17
19
|
const __dirname = path.dirname(__filename);
|
|
18
20
|
/**
|
|
@@ -228,13 +230,30 @@ export async function renderToSVG(templateName, props = {}, options = {}) {
|
|
|
228
230
|
// Calculate animation context for embedded template
|
|
229
231
|
const embeddedTotalFrames = cached.meta.video ? Math.floor(cached.meta.video.fps * cached.meta.video.duration) : undefined;
|
|
230
232
|
const embeddedDurationMs = cached.meta.video ? cached.meta.video.duration * 1000 : undefined;
|
|
233
|
+
const embeddedTw = (classes) => tw(classes, tailwindConfig, loopwindConfig, { progress: embeddedProgress, frame: embeddedFrame, totalFrames: embeddedTotalFrames, durationMs: embeddedDurationMs });
|
|
234
|
+
const embeddedPath = {
|
|
235
|
+
followLine,
|
|
236
|
+
followQuadratic,
|
|
237
|
+
followCubic,
|
|
238
|
+
followCircle,
|
|
239
|
+
followEllipse,
|
|
240
|
+
followArc,
|
|
241
|
+
};
|
|
231
242
|
const embeddedFullProps = {
|
|
232
243
|
...(templateProps || {}),
|
|
233
|
-
tw:
|
|
244
|
+
tw: embeddedTw,
|
|
234
245
|
qr: qrHelper,
|
|
235
246
|
image: imageHelper,
|
|
236
247
|
template: createTemplateHelper(cached.templatePath), // Allow nested templates with proper context
|
|
237
248
|
config: loopwindConfig,
|
|
249
|
+
path: embeddedPath,
|
|
250
|
+
textPath: {
|
|
251
|
+
onPath: (text, pathFollower, options = {}) => textHelpers.onPath(text, pathFollower, options, embeddedTw),
|
|
252
|
+
onCircle: (text, cx, cy, radius, offset, options = {}) => textHelpers.onCircle(text, cx, cy, radius, offset, embeddedPath, options, embeddedTw),
|
|
253
|
+
onQuadratic: (text, p0, p1, p2, options = {}) => textHelpers.onQuadratic(text, p0, p1, p2, embeddedPath, options, embeddedTw),
|
|
254
|
+
onCubic: (text, p0, p1, p2, p3, options = {}) => textHelpers.onCubic(text, p0, p1, p2, p3, embeddedPath, options, embeddedTw),
|
|
255
|
+
onArc: (text, cx, cy, radius, startAngle, endAngle, options = {}) => textHelpers.onArc(text, cx, cy, radius, startAngle, endAngle, embeddedPath, options, embeddedTw),
|
|
256
|
+
},
|
|
238
257
|
};
|
|
239
258
|
// Return JSX wrapped in a sized container (using template's own meta size)
|
|
240
259
|
return React.createElement('div', { style: { width: cached.meta.size.width, height: cached.meta.size.height, display: 'flex' } }, cached.Component(embeddedFullProps));
|
|
@@ -243,13 +262,30 @@ export async function renderToSVG(templateName, props = {}, options = {}) {
|
|
|
243
262
|
// Create the root template helper with the current template's path as context
|
|
244
263
|
const templateHelper = createTemplateHelper(currentTemplatePath);
|
|
245
264
|
// First pass: render to collect template and image dependencies
|
|
265
|
+
const firstPassPath = {
|
|
266
|
+
followLine,
|
|
267
|
+
followQuadratic,
|
|
268
|
+
followCubic,
|
|
269
|
+
followCircle,
|
|
270
|
+
followEllipse,
|
|
271
|
+
followArc,
|
|
272
|
+
};
|
|
273
|
+
const firstPassTw = () => ({});
|
|
246
274
|
Component({
|
|
247
275
|
...props,
|
|
248
|
-
tw:
|
|
276
|
+
tw: firstPassTw,
|
|
249
277
|
qr: () => '',
|
|
250
278
|
image: imageHelper,
|
|
251
279
|
template: templateHelper,
|
|
252
|
-
config: loopwindConfig
|
|
280
|
+
config: loopwindConfig,
|
|
281
|
+
path: firstPassPath,
|
|
282
|
+
textPath: {
|
|
283
|
+
onPath: (text, pathFollower, options = {}) => textHelpers.onPath(text, pathFollower, options, firstPassTw),
|
|
284
|
+
onCircle: (text, cx, cy, radius, offset, options = {}) => textHelpers.onCircle(text, cx, cy, radius, offset, firstPassPath, options, firstPassTw),
|
|
285
|
+
onQuadratic: (text, p0, p1, p2, options = {}) => textHelpers.onQuadratic(text, p0, p1, p2, firstPassPath, options, firstPassTw),
|
|
286
|
+
onCubic: (text, p0, p1, p2, p3, options = {}) => textHelpers.onCubic(text, p0, p1, p2, p3, firstPassPath, options, firstPassTw),
|
|
287
|
+
onArc: (text, cx, cy, radius, startAngle, endAngle, options = {}) => textHelpers.onArc(text, cx, cy, radius, startAngle, endAngle, firstPassPath, options, firstPassTw),
|
|
288
|
+
},
|
|
253
289
|
});
|
|
254
290
|
// Load all requested images in parallel
|
|
255
291
|
const imageLoadPromises = [];
|
|
@@ -310,15 +346,34 @@ export async function renderToSVG(templateName, props = {}, options = {}) {
|
|
|
310
346
|
// Calculate animation context for video templates
|
|
311
347
|
const totalFrames = meta.video ? Math.floor(meta.video.fps * meta.video.duration) : undefined;
|
|
312
348
|
const durationMs = meta.video ? meta.video.duration * 1000 : undefined;
|
|
349
|
+
const mainTw = (classes) => tw(classes, tailwindConfig, loopwindConfig, { progress, frame, totalFrames, durationMs });
|
|
350
|
+
const mainPath = {
|
|
351
|
+
followLine,
|
|
352
|
+
followQuadratic,
|
|
353
|
+
followCubic,
|
|
354
|
+
followCircle,
|
|
355
|
+
followEllipse,
|
|
356
|
+
followArc,
|
|
357
|
+
};
|
|
313
358
|
const fullProps = {
|
|
314
359
|
...props,
|
|
315
360
|
frame,
|
|
316
361
|
progress,
|
|
317
362
|
config: loopwindConfig, // Pass the design config to the template
|
|
318
|
-
tw:
|
|
363
|
+
tw: mainTw, // Tailwind class converter with animation context
|
|
319
364
|
qr: qrHelper, // QR code generator (cached)
|
|
320
365
|
image: imageHelper, // Image loader (cached)
|
|
321
366
|
template: templateHelper, // Template embedder (cached)
|
|
367
|
+
// Path following helpers for animations
|
|
368
|
+
path: mainPath,
|
|
369
|
+
// Text on path helpers
|
|
370
|
+
textPath: {
|
|
371
|
+
onPath: (text, pathFollower, options = {}) => textHelpers.onPath(text, pathFollower, options, mainTw),
|
|
372
|
+
onCircle: (text, cx, cy, radius, offset, options = {}) => textHelpers.onCircle(text, cx, cy, radius, offset, mainPath, options, mainTw),
|
|
373
|
+
onQuadratic: (text, p0, p1, p2, options = {}) => textHelpers.onQuadratic(text, p0, p1, p2, mainPath, options, mainTw),
|
|
374
|
+
onCubic: (text, p0, p1, p2, p3, options = {}) => textHelpers.onCubic(text, p0, p1, p2, p3, mainPath, options, mainTw),
|
|
375
|
+
onArc: (text, cx, cy, radius, startAngle, endAngle, options = {}) => textHelpers.onArc(text, cx, cy, radius, startAngle, endAngle, mainPath, options, mainTw),
|
|
376
|
+
},
|
|
322
377
|
};
|
|
323
378
|
// Load fonts (template-specific or default)
|
|
324
379
|
const fonts = await loadTemplateFonts(templateName, meta, loopwindConfig);
|
package/dist/lib/renderer.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"renderer.js","sourceRoot":"","sources":["../../src/lib/renderer.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"renderer.js","sourceRoot":"","sources":["../../src/lib/renderer.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tailwind.d.ts","sourceRoot":"","sources":["../../src/lib/tailwind.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAOlE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"tailwind.d.ts","sourceRoot":"","sources":["../../src/lib/tailwind.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAOlE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAgkC3C,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AA2oBD,wBAAgB,EAAE,CAChB,OAAO,EAAE,MAAM,EACf,cAAc,GAAE,cAAc,GAAG,IAAW,EAC5C,cAAc,GAAE,GAAU,EAC1B,gBAAgB,GAAE,gBAAqB,GACtC,aAAa,CA2Mf"}
|
package/dist/lib/tailwind.js
CHANGED
|
@@ -865,6 +865,120 @@ function generateSpringEasing(mass = 1, stiffness = 100, damping = 10, velocity
|
|
|
865
865
|
// Return easing function normalized to 0-1 range
|
|
866
866
|
return (t) => solver(duration * t);
|
|
867
867
|
}
|
|
868
|
+
/**
|
|
869
|
+
* Intelligently merge multiple transform functions
|
|
870
|
+
* Instead of concatenating "scale(0.8) scale(1.05)", this combines them properly:
|
|
871
|
+
* - scale: multiply values together (0.8 * 1.05 = 0.84)
|
|
872
|
+
* - rotate: add degrees together
|
|
873
|
+
* - translate: add distances together
|
|
874
|
+
* - skew: add degrees together
|
|
875
|
+
*/
|
|
876
|
+
function mergeTransforms(transforms) {
|
|
877
|
+
const merged = {
|
|
878
|
+
scaleX: 1,
|
|
879
|
+
scaleY: 1,
|
|
880
|
+
scale: null,
|
|
881
|
+
rotate: 0,
|
|
882
|
+
translateX: 0,
|
|
883
|
+
translateY: 0,
|
|
884
|
+
skewX: 0,
|
|
885
|
+
skewY: 0,
|
|
886
|
+
};
|
|
887
|
+
// Parse each transform and accumulate values
|
|
888
|
+
for (const transform of transforms) {
|
|
889
|
+
// Match transform functions like "scale(1.05)", "rotate(45deg)", "translateX(10px)"
|
|
890
|
+
const functions = transform.match(/(\w+)\(([^)]+)\)/g) || [];
|
|
891
|
+
for (const fn of functions) {
|
|
892
|
+
const match = fn.match(/(\w+)\(([^)]+)\)/);
|
|
893
|
+
if (!match)
|
|
894
|
+
continue;
|
|
895
|
+
const [, name, value] = match;
|
|
896
|
+
const numValue = parseFloat(value);
|
|
897
|
+
if (isNaN(numValue))
|
|
898
|
+
continue;
|
|
899
|
+
switch (name) {
|
|
900
|
+
case 'scale':
|
|
901
|
+
// Uniform scale - multiply into both scaleX and scaleY
|
|
902
|
+
merged.scale = merged.scale === null ? numValue : merged.scale * numValue;
|
|
903
|
+
break;
|
|
904
|
+
case 'scaleX':
|
|
905
|
+
merged.scaleX *= numValue;
|
|
906
|
+
break;
|
|
907
|
+
case 'scaleY':
|
|
908
|
+
merged.scaleY *= numValue;
|
|
909
|
+
break;
|
|
910
|
+
case 'rotate':
|
|
911
|
+
merged.rotate += numValue;
|
|
912
|
+
break;
|
|
913
|
+
case 'translateX':
|
|
914
|
+
merged.translateX += numValue;
|
|
915
|
+
break;
|
|
916
|
+
case 'translateY':
|
|
917
|
+
merged.translateY += numValue;
|
|
918
|
+
break;
|
|
919
|
+
case 'skewX':
|
|
920
|
+
merged.skewX += numValue;
|
|
921
|
+
break;
|
|
922
|
+
case 'skewY':
|
|
923
|
+
merged.skewY += numValue;
|
|
924
|
+
break;
|
|
925
|
+
}
|
|
926
|
+
}
|
|
927
|
+
}
|
|
928
|
+
// Build final transform string
|
|
929
|
+
const parts = [];
|
|
930
|
+
// If we have a uniform scale, use that for both axes
|
|
931
|
+
if (merged.scale !== null) {
|
|
932
|
+
const finalScaleX = merged.scaleX * merged.scale;
|
|
933
|
+
const finalScaleY = merged.scaleY * merged.scale;
|
|
934
|
+
if (finalScaleX !== 1 || finalScaleY !== 1) {
|
|
935
|
+
if (finalScaleX === finalScaleY) {
|
|
936
|
+
parts.push(`scale(${finalScaleX})`);
|
|
937
|
+
}
|
|
938
|
+
else {
|
|
939
|
+
if (finalScaleX !== 1)
|
|
940
|
+
parts.push(`scaleX(${finalScaleX})`);
|
|
941
|
+
if (finalScaleY !== 1)
|
|
942
|
+
parts.push(`scaleY(${finalScaleY})`);
|
|
943
|
+
}
|
|
944
|
+
}
|
|
945
|
+
}
|
|
946
|
+
else {
|
|
947
|
+
// No uniform scale, just use scaleX/scaleY
|
|
948
|
+
if (merged.scaleX !== 1 || merged.scaleY !== 1) {
|
|
949
|
+
if (merged.scaleX === merged.scaleY) {
|
|
950
|
+
parts.push(`scale(${merged.scaleX})`);
|
|
951
|
+
}
|
|
952
|
+
else {
|
|
953
|
+
if (merged.scaleX !== 1)
|
|
954
|
+
parts.push(`scaleX(${merged.scaleX})`);
|
|
955
|
+
if (merged.scaleY !== 1)
|
|
956
|
+
parts.push(`scaleY(${merged.scaleY})`);
|
|
957
|
+
}
|
|
958
|
+
}
|
|
959
|
+
}
|
|
960
|
+
if (merged.rotate !== 0) {
|
|
961
|
+
parts.push(`rotate(${merged.rotate}deg)`);
|
|
962
|
+
}
|
|
963
|
+
if (merged.translateX !== 0 || merged.translateY !== 0) {
|
|
964
|
+
if (merged.translateX === 0) {
|
|
965
|
+
parts.push(`translateY(${merged.translateY}px)`);
|
|
966
|
+
}
|
|
967
|
+
else if (merged.translateY === 0) {
|
|
968
|
+
parts.push(`translateX(${merged.translateX}px)`);
|
|
969
|
+
}
|
|
970
|
+
else {
|
|
971
|
+
parts.push(`translate(${merged.translateX}px, ${merged.translateY}px)`);
|
|
972
|
+
}
|
|
973
|
+
}
|
|
974
|
+
if (merged.skewX !== 0) {
|
|
975
|
+
parts.push(`skewX(${merged.skewX}deg)`);
|
|
976
|
+
}
|
|
977
|
+
if (merged.skewY !== 0) {
|
|
978
|
+
parts.push(`skewY(${merged.skewY}deg)`);
|
|
979
|
+
}
|
|
980
|
+
return parts.join(' ');
|
|
981
|
+
}
|
|
868
982
|
// Easing functions for animations
|
|
869
983
|
const easingFunctions = {
|
|
870
984
|
'linear': (t) => t,
|
|
@@ -916,6 +1030,9 @@ function parseTimeValue(value) {
|
|
|
916
1030
|
* - Negative values: -translate-x-5, -rotate-45, -scale-50
|
|
917
1031
|
* - Works with all prefixes: enter-, exit-, loop-, animate-
|
|
918
1032
|
* - Works with /start/duration syntax: enter-translate-x-5/0/800
|
|
1033
|
+
* - SVG stroke animations: enter-stroke-dash-[300], exit-stroke-dash-[300], loop-stroke-dash-[300]
|
|
1034
|
+
* - Animates strokeDashoffset for drawing/erasing effects
|
|
1035
|
+
* - Requires path length in brackets: stroke-dash-[300]
|
|
919
1036
|
*/
|
|
920
1037
|
function parseAnimationClass(className, context, easing, customEasingFunctions = {}) {
|
|
921
1038
|
const { frame = 0, totalFrames = 100, durationMs = 3000 } = context;
|
|
@@ -923,6 +1040,68 @@ function parseAnimationClass(className, context, easing, customEasingFunctions =
|
|
|
923
1040
|
const easeFn = allEasingFunctions[easing] || allEasingFunctions['ease-out'];
|
|
924
1041
|
// Convert current frame to milliseconds
|
|
925
1042
|
const currentMs = (frame / totalFrames) * durationMs;
|
|
1043
|
+
// Match stroke-dash animations: enter-stroke-dash-[length], exit-stroke-dash-[length], loop-stroke-dash-[length]
|
|
1044
|
+
const strokeDashMatch = className.match(/^(enter|exit|loop)-stroke-dash-\[(.+?)\](?:\/(\[[\d.]+(?:ms|s)?]|\d+)(?:\/(\[[\d.]+(?:ms|s)?]|\d+))?)?$/);
|
|
1045
|
+
if (strokeDashMatch) {
|
|
1046
|
+
const [, mode, lengthStr, startStr, durationStr] = strokeDashMatch;
|
|
1047
|
+
const pathLength = parseFloat(lengthStr);
|
|
1048
|
+
if (isNaN(pathLength))
|
|
1049
|
+
return null;
|
|
1050
|
+
if (mode === 'enter') {
|
|
1051
|
+
const startMs = startStr ? parseTimeValue(startStr) : 0;
|
|
1052
|
+
const animDurationMs = durationStr ? parseTimeValue(durationStr) : durationMs;
|
|
1053
|
+
const endMs = startMs + animDurationMs;
|
|
1054
|
+
let localProgress = 0;
|
|
1055
|
+
if (currentMs <= startMs) {
|
|
1056
|
+
localProgress = 0;
|
|
1057
|
+
}
|
|
1058
|
+
else if (currentMs >= endMs) {
|
|
1059
|
+
localProgress = 1;
|
|
1060
|
+
}
|
|
1061
|
+
else {
|
|
1062
|
+
localProgress = (currentMs - startMs) / animDurationMs;
|
|
1063
|
+
}
|
|
1064
|
+
const easedProgress = easeFn(localProgress);
|
|
1065
|
+
// Draw from 0% to 100%: offset goes from pathLength to 0
|
|
1066
|
+
return {
|
|
1067
|
+
strokeDasharray: pathLength,
|
|
1068
|
+
strokeDashoffset: pathLength * (1 - easedProgress)
|
|
1069
|
+
};
|
|
1070
|
+
}
|
|
1071
|
+
if (mode === 'exit') {
|
|
1072
|
+
const startMs = startStr ? parseTimeValue(startStr) : 0;
|
|
1073
|
+
const animDurationMs = durationStr ? parseTimeValue(durationStr) : durationMs;
|
|
1074
|
+
const endMs = startMs + animDurationMs;
|
|
1075
|
+
let localProgress = 0;
|
|
1076
|
+
if (currentMs <= startMs) {
|
|
1077
|
+
localProgress = 0;
|
|
1078
|
+
}
|
|
1079
|
+
else if (currentMs >= endMs) {
|
|
1080
|
+
localProgress = 1;
|
|
1081
|
+
}
|
|
1082
|
+
else {
|
|
1083
|
+
localProgress = (currentMs - startMs) / animDurationMs;
|
|
1084
|
+
}
|
|
1085
|
+
const easedProgress = easeFn(localProgress);
|
|
1086
|
+
// Erase from 100% to 0%: offset goes from 0 to pathLength
|
|
1087
|
+
return {
|
|
1088
|
+
strokeDasharray: pathLength,
|
|
1089
|
+
strokeDashoffset: pathLength * easedProgress
|
|
1090
|
+
};
|
|
1091
|
+
}
|
|
1092
|
+
if (mode === 'loop') {
|
|
1093
|
+
const loopDurationMs = startStr ? parseTimeValue(startStr) : 1000;
|
|
1094
|
+
const loopProgress = (currentMs % loopDurationMs) / loopDurationMs;
|
|
1095
|
+
// Oscillate: draw in first half, erase in second half
|
|
1096
|
+
const offset = loopProgress < 0.5
|
|
1097
|
+
? pathLength * (1 - loopProgress * 2) // Draw: 1 -> 0
|
|
1098
|
+
: pathLength * ((loopProgress - 0.5) * 2); // Erase: 0 -> 1
|
|
1099
|
+
return {
|
|
1100
|
+
strokeDasharray: pathLength,
|
|
1101
|
+
strokeDashoffset: offset
|
|
1102
|
+
};
|
|
1103
|
+
}
|
|
1104
|
+
}
|
|
926
1105
|
// Match enter animations: enter-{type} or enter-{type}/{start}/{duration}
|
|
927
1106
|
// Supports both plain numbers and bracketed values like [0.6s]
|
|
928
1107
|
const enterMatch = className.match(/^enter-([\w-]+)(?:\/(\[[\d.]+(?:ms|s)?\]|\d+)\/(\[[\d.]+(?:ms|s)?\]|\d+))?$/);
|
|
@@ -1403,7 +1582,7 @@ export function tw(classes, tailwindConfig = null, loopwindConfig = null, animat
|
|
|
1403
1582
|
const customEasingFunctions = {};
|
|
1404
1583
|
for (const className of classArray) {
|
|
1405
1584
|
// Check for configurable spring easing: ease-spring/mass/stiffness/damping
|
|
1406
|
-
const springConfigMatch = className.match(/^(enter
|
|
1585
|
+
const springConfigMatch = className.match(/^(enter-|exit-|loop-)?ease-spring\/([^\/]+)\/([^\/]+)\/([^\/]+)$/);
|
|
1407
1586
|
if (springConfigMatch) {
|
|
1408
1587
|
const [, prefix, massStr, stiffnessStr, dampingStr] = springConfigMatch;
|
|
1409
1588
|
const mass = parseFloat(massStr);
|
|
@@ -1413,13 +1592,13 @@ export function tw(classes, tailwindConfig = null, loopwindConfig = null, animat
|
|
|
1413
1592
|
const customSpring = generateSpringEasing(mass, stiffness, damping);
|
|
1414
1593
|
const customKey = `ease-spring-${mass}-${stiffness}-${damping}`;
|
|
1415
1594
|
customEasingFunctions[customKey] = customSpring;
|
|
1416
|
-
if (prefix === 'enter-
|
|
1595
|
+
if (prefix === 'enter-') {
|
|
1417
1596
|
enterEasing = customKey;
|
|
1418
1597
|
}
|
|
1419
|
-
else if (prefix === 'exit-
|
|
1598
|
+
else if (prefix === 'exit-') {
|
|
1420
1599
|
exitEasing = customKey;
|
|
1421
1600
|
}
|
|
1422
|
-
else if (prefix === 'loop-
|
|
1601
|
+
else if (prefix === 'loop-') {
|
|
1423
1602
|
loopEasing = customKey;
|
|
1424
1603
|
}
|
|
1425
1604
|
else {
|
|
@@ -1483,6 +1662,12 @@ export function tw(classes, tailwindConfig = null, loopwindConfig = null, animat
|
|
|
1483
1662
|
if (animationResult.transformOrigin) {
|
|
1484
1663
|
styles.transformOrigin = animationResult.transformOrigin;
|
|
1485
1664
|
}
|
|
1665
|
+
if (animationResult.strokeDasharray !== undefined) {
|
|
1666
|
+
styles.strokeDasharray = animationResult.strokeDasharray;
|
|
1667
|
+
}
|
|
1668
|
+
if (animationResult.strokeDashoffset !== undefined) {
|
|
1669
|
+
styles.strokeDashoffset = animationResult.strokeDashoffset;
|
|
1670
|
+
}
|
|
1486
1671
|
continue;
|
|
1487
1672
|
}
|
|
1488
1673
|
const parsed = parseClass(className, tailwindConfig, loopwindConfig);
|
|
@@ -1544,9 +1729,9 @@ export function tw(classes, tailwindConfig = null, loopwindConfig = null, animat
|
|
|
1544
1729
|
const gradient = `linear-gradient(${direction}, ${stops.join(', ')})`;
|
|
1545
1730
|
styles.backgroundImage = gradient;
|
|
1546
1731
|
}
|
|
1547
|
-
// Combine multiple transforms
|
|
1732
|
+
// Combine multiple transforms intelligently
|
|
1548
1733
|
if (transforms.length > 0) {
|
|
1549
|
-
styles.transform = transforms
|
|
1734
|
+
styles.transform = mergeTransforms(transforms);
|
|
1550
1735
|
}
|
|
1551
1736
|
// Combine multiple filters
|
|
1552
1737
|
if (filters.length > 0) {
|