@pixerate/editor 0.128.0 → 0.130.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/animation-editor/index.cjs +55 -55
- package/dist/animation-editor/index.d.cts +5 -5
- package/dist/animation-editor/index.d.ts +5 -5
- package/dist/animation-editor/index.js +2 -2
- package/dist/{bezier-CvgQiYRg.d.cts → bezier-CdoGygwG.d.cts} +1 -1
- package/dist/{bezier-DP4NnJp3.d.ts → bezier-CigmusV_.d.ts} +1 -1
- package/dist/canvas/index.d.cts +7 -7
- package/dist/canvas/index.d.ts +7 -7
- package/dist/{chunk-BEGEWQHD.cjs → chunk-2PXRKMOH.cjs} +36 -36
- package/dist/{chunk-BEGEWQHD.cjs.map → chunk-2PXRKMOH.cjs.map} +1 -1
- package/dist/{chunk-F7Q2NE2Y.js → chunk-ERYGCA72.js} +2 -2
- package/dist/{chunk-A6KHMKI4.js → chunk-L5OTIYOO.js} +2 -2
- package/dist/{chunk-ORE334I6.cjs → chunk-LXGOYRPE.cjs} +366 -68
- package/dist/chunk-LXGOYRPE.cjs.map +1 -0
- package/dist/{chunk-XLUYXUBD.cjs → chunk-PMHPXCJC.cjs} +82 -82
- package/dist/{chunk-XLUYXUBD.cjs.map → chunk-PMHPXCJC.cjs.map} +1 -1
- package/dist/{chunk-ROZFX4QI.js → chunk-PRYMC442.js} +302 -4
- package/dist/chunk-PRYMC442.js.map +1 -0
- package/dist/effects/index.d.cts +4 -4
- package/dist/effects/index.d.ts +4 -4
- package/dist/{export-Cbr9IqpJ.d.cts → export-5WDKJqTy.d.cts} +1 -1
- package/dist/{export-DHrFJ8r_.d.ts → export-B4r8b9Ft.d.ts} +11 -4
- package/dist/{export-ClPKUB-v.d.ts → export-CU_ARP3A.d.ts} +1 -1
- package/dist/{export-BkYQvV56.d.cts → export-CejjC2iI.d.cts} +11 -4
- package/dist/{helpers-C5aAd44p.d.cts → helpers-CzZu51eI.d.cts} +33 -2
- package/dist/{helpers-CPWcK504.d.ts → helpers-X_rycLNJ.d.ts} +33 -2
- package/dist/image-editor/index.cjs +672 -621
- package/dist/image-editor/index.cjs.map +1 -1
- package/dist/image-editor/index.d.cts +8 -8
- package/dist/image-editor/index.d.ts +8 -8
- package/dist/image-editor/index.js +65 -14
- package/dist/image-editor/index.js.map +1 -1
- package/dist/{opentype-sQrF3Ry1.d.ts → opentype-CrHAsKh3.d.ts} +2 -2
- package/dist/{opentype-BOewaGQx.d.cts → opentype-DlRMYcCW.d.cts} +2 -2
- package/dist/paint-editor/index.cjs +7 -7
- package/dist/paint-editor/index.d.cts +5 -5
- package/dist/paint-editor/index.d.ts +5 -5
- package/dist/paint-editor/index.js +2 -2
- package/dist/{pathfinder-CnkW7zLI.d.cts → pathfinder-CKfKOVP4.d.cts} +1 -1
- package/dist/{pathfinder-BwJx0_zM.d.ts → pathfinder-Dlss70hL.d.ts} +1 -1
- package/dist/{pool-CTrtciaN.d.ts → pool-DDOo0xJH.d.ts} +1 -1
- package/dist/{pool-C7GtrL34.d.cts → pool-DKic69LD.d.cts} +1 -1
- package/dist/{svg-C4LlFnEw.d.cts → svg-BRaii3pI.d.cts} +2 -2
- package/dist/{svg-CUzZa0EO.d.ts → svg-BYVZeVo0.d.ts} +2 -2
- package/dist/{tools-BpCmUNxb.d.cts → tools-CtheDLDr.d.cts} +1 -1
- package/dist/{tools-AugT22z3.d.ts → tools-D8bZ-7YG.d.ts} +1 -1
- package/dist/vector/index.cjs +884 -874
- package/dist/vector/index.cjs.map +1 -1
- package/dist/vector/index.d.cts +53 -10
- package/dist/vector/index.d.ts +53 -10
- package/dist/vector/index.js +15 -5
- package/dist/vector/index.js.map +1 -1
- package/dist/video-editor/index.d.cts +4 -4
- package/dist/video-editor/index.d.ts +4 -4
- package/dist/{warp-D62N_5VK.d.cts → warp-BFoYxy_s.d.cts} +2 -2
- package/dist/{warp-CIsO617e.d.ts → warp-CZVC8pB5.d.ts} +2 -2
- package/package.json +1 -1
- package/skills/pixerate-image-editor/SKILL.md +1 -1
- package/skills/pixerate-image-editor/references/color-management.md +4 -3
- package/skills/pixerate-vector/SKILL.md +1 -1
- package/skills/pixerate-vector/references/commands.md +2 -0
- package/dist/chunk-ORE334I6.cjs.map +0 -1
- package/dist/chunk-ROZFX4QI.js.map +0 -1
- /package/dist/{chunk-F7Q2NE2Y.js.map → chunk-ERYGCA72.js.map} +0 -0
- /package/dist/{chunk-A6KHMKI4.js.map → chunk-L5OTIYOO.js.map} +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; } var _class;
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var _chunk2PXRKMOHcjs = require('../chunk-2PXRKMOH.cjs');
|
|
4
4
|
|
|
5
5
|
|
|
6
6
|
|
|
@@ -31,7 +31,7 @@ var _chunkWAJQKWQUcjs = require('../chunk-WAJQKWQU.cjs');
|
|
|
31
31
|
|
|
32
32
|
|
|
33
33
|
|
|
34
|
-
var
|
|
34
|
+
var _chunkLXGOYRPEcjs = require('../chunk-LXGOYRPE.cjs');
|
|
35
35
|
|
|
36
36
|
|
|
37
37
|
|
|
@@ -573,7 +573,7 @@ function smoothMotionTimes(points, start, duration, pacing = "even") {
|
|
|
573
573
|
function motionTextLayout(nodes, id) {
|
|
574
574
|
const group = _optionalChain([nodes, 'access', _5 => _5.get, 'call', _6 => _6(id), 'optionalAccess', _7 => _7.node]);
|
|
575
575
|
if (!group || group.type !== "group") return null;
|
|
576
|
-
const letters =
|
|
576
|
+
const letters = _chunkLXGOYRPEcjs.collectPathNodes.call(void 0, group).map((p) => ({ id: p.id, b: _optionalChain([nodes, 'access', _8 => _8.get, 'call', _9 => _9(p.id), 'optionalAccess', _10 => _10.bounds]) })).filter((l) => !!l.b && l.b.width + l.b.height > 0);
|
|
577
577
|
if (!letters.length) return null;
|
|
578
578
|
const lines = [];
|
|
579
579
|
for (const l of [...letters].sort((a, c) => a.b.y + a.b.height / 2 - (c.b.y + c.b.height / 2))) {
|
|
@@ -658,21 +658,21 @@ function indexMotionNodes(nodes) {
|
|
|
658
658
|
const out = /* @__PURE__ */ new Map();
|
|
659
659
|
const walk = (list, parentWorld, ancestors) => {
|
|
660
660
|
for (const node of list) {
|
|
661
|
-
const local =
|
|
662
|
-
const bounds =
|
|
661
|
+
const local = _chunkLXGOYRPEcjs.vectorNodeBounds.call(void 0, node);
|
|
662
|
+
const bounds = _chunkLXGOYRPEcjs.vectorNodeBounds.call(void 0, node, parentWorld);
|
|
663
663
|
const center = local ? { x: local.x + local.width / 2, y: local.y + local.height / 2 } : { x: 0, y: 0 };
|
|
664
664
|
if (!out.has(node.id)) out.set(node.id, { node, ancestors, parentWorld, center, bounds, box: local });
|
|
665
|
-
if (node.type === "group") walk(node.children,
|
|
665
|
+
if (node.type === "group") walk(node.children, _chunkLXGOYRPEcjs.multiplyMatrices.call(void 0, _chunkLXGOYRPEcjs.nodeMatrix.call(void 0, node), parentWorld), [...ancestors, node.id]);
|
|
666
666
|
}
|
|
667
667
|
};
|
|
668
|
-
walk(nodes,
|
|
668
|
+
walk(nodes, _chunkLXGOYRPEcjs.IDENTITY_MATRIX, []);
|
|
669
669
|
indexCache.set(nodes, out);
|
|
670
670
|
return out;
|
|
671
671
|
}
|
|
672
672
|
var solid = (paint) => typeof paint === "string" && paint !== "none" ? paint : void 0;
|
|
673
673
|
function firstPaint(node, key) {
|
|
674
674
|
if (node.type === "path") return solid(node[key]);
|
|
675
|
-
for (const p of
|
|
675
|
+
for (const p of _chunkLXGOYRPEcjs.collectPathNodes.call(void 0, node)) {
|
|
676
676
|
const s = solid(p[key]);
|
|
677
677
|
if (s) return s;
|
|
678
678
|
}
|
|
@@ -680,7 +680,7 @@ function firstPaint(node, key) {
|
|
|
680
680
|
}
|
|
681
681
|
function strokeReach(node) {
|
|
682
682
|
let reach = 0;
|
|
683
|
-
for (const p of node.type === "path" ? [node] :
|
|
683
|
+
for (const p of node.type === "path" ? [node] : _chunkLXGOYRPEcjs.collectPathNodes.call(void 0, node)) {
|
|
684
684
|
if (p.stroke == null || p.stroke === "none") continue;
|
|
685
685
|
const width = _nullishCoalesce(p.strokeWidth, () => ( 1));
|
|
686
686
|
reach = Math.max(reach, p.strokeAlign === "outside" ? width : p.strokeAlign === "inside" ? 0 : width / 2);
|
|
@@ -750,7 +750,7 @@ function motionRestValue(entry, property, artwork) {
|
|
|
750
750
|
case "stroke":
|
|
751
751
|
return _nullishCoalesce((node && firstPaint(node, property)), () => ( "transparent"));
|
|
752
752
|
case "strokeWidth": {
|
|
753
|
-
const path = _optionalChain([node, 'optionalAccess', _13 => _13.type]) === "path" ? node : node ?
|
|
753
|
+
const path = _optionalChain([node, 'optionalAccess', _13 => _13.type]) === "path" ? node : node ? _chunkLXGOYRPEcjs.collectPathNodes.call(void 0, node)[0] : void 0;
|
|
754
754
|
return _nullishCoalesce(_optionalChain([path, 'optionalAccess', _14 => _14.strokeWidth]), () => ( 1));
|
|
755
755
|
}
|
|
756
756
|
case "shape":
|
|
@@ -861,12 +861,12 @@ function resolveMotionCamera(camera, scene) {
|
|
|
861
861
|
const r = camera;
|
|
862
862
|
return { x: r.x, y: r.y, width: r.width, height: r.height };
|
|
863
863
|
}
|
|
864
|
-
function motionPathLength(node, parentWorld =
|
|
864
|
+
function motionPathLength(node, parentWorld = _chunkLXGOYRPEcjs.IDENTITY_MATRIX) {
|
|
865
865
|
let longest = 0;
|
|
866
|
-
const paths = node.type === "path" ? [node] :
|
|
866
|
+
const paths = node.type === "path" ? [node] : _chunkLXGOYRPEcjs.collectPathNodes.call(void 0, node);
|
|
867
867
|
for (const p of paths) {
|
|
868
868
|
try {
|
|
869
|
-
longest = Math.max(longest, _chunkBJTCSLF6cjs.bezierPathLength.call(void 0,
|
|
869
|
+
longest = Math.max(longest, _chunkBJTCSLF6cjs.bezierPathLength.call(void 0, _chunkLXGOYRPEcjs.vectorPathWorldBezier.call(void 0, p, parentWorld, { effects: false })));
|
|
870
870
|
} catch (e2) {
|
|
871
871
|
}
|
|
872
872
|
}
|
|
@@ -1119,12 +1119,12 @@ function compileMotionScene(scene) {
|
|
|
1119
1119
|
const order2 = _nullishCoalesce(o.order, () => ( "together"));
|
|
1120
1120
|
const pace = _nullishCoalesce(o.pace, () => ( "time"));
|
|
1121
1121
|
if (order2 === "together" && pace === "time") return null;
|
|
1122
|
-
const paths = entry.node.type === "path" ? [entry.node] :
|
|
1122
|
+
const paths = entry.node.type === "path" ? [entry.node] : _chunkLXGOYRPEcjs.collectPathNodes.call(void 0, entry.node);
|
|
1123
1123
|
let list = paths.map((p) => {
|
|
1124
1124
|
const at = nodes.get(p.id);
|
|
1125
1125
|
let first = { x: 0, y: 0 };
|
|
1126
1126
|
try {
|
|
1127
|
-
const m =
|
|
1127
|
+
const m = _chunkLXGOYRPEcjs.vectorPathWorldBezier.call(void 0, p, _nullishCoalesce(_optionalChain([at, 'optionalAccess', _41 => _41.parentWorld]), () => ( _chunkLXGOYRPEcjs.IDENTITY_MATRIX)), { effects: false })[0];
|
|
1128
1128
|
if (m && m.type === "M") first = { x: m.x, y: m.y };
|
|
1129
1129
|
} catch (e3) {
|
|
1130
1130
|
}
|
|
@@ -1236,17 +1236,17 @@ function compileMotionScene(scene) {
|
|
|
1236
1236
|
let dx = _nullishCoalesce(_optionalChain([command3, 'access', _44 => _44.by, 'optionalAccess', _45 => _45.x]), () => ( 0));
|
|
1237
1237
|
let dy = _nullishCoalesce(_optionalChain([command3, 'access', _46 => _46.by, 'optionalAccess', _47 => _47.y]), () => ( 0));
|
|
1238
1238
|
if (command3.to) {
|
|
1239
|
-
const inv =
|
|
1240
|
-
const target =
|
|
1239
|
+
const inv = _chunkLXGOYRPEcjs.invertMatrix.call(void 0, entry.parentWorld);
|
|
1240
|
+
const target = _chunkLXGOYRPEcjs.applyMatrix.call(void 0, inv, command3.to);
|
|
1241
1241
|
dx = target.x - (entry.center.x + num2("x"));
|
|
1242
1242
|
dy = target.y - (entry.center.y + num2("y"));
|
|
1243
1243
|
}
|
|
1244
1244
|
if (_optionalChain([command3, 'access', _48 => _48.via, 'optionalAccess', _49 => _49.length])) {
|
|
1245
|
-
const inv =
|
|
1245
|
+
const inv = _chunkLXGOYRPEcjs.invertMatrix.call(void 0, entry.parentWorld);
|
|
1246
1246
|
const x0 = num2("x");
|
|
1247
1247
|
const y0 = num2("y");
|
|
1248
1248
|
const add = command3.blend === "add";
|
|
1249
|
-
const offsets = [{ x: 0, y: 0 }, ...command3.via.map((p) =>
|
|
1249
|
+
const offsets = [{ x: 0, y: 0 }, ...command3.via.map((p) => _chunkLXGOYRPEcjs.applyMatrix.call(void 0, inv, p)).map((p) => ({ x: p.x - entry.center.x - x0, y: p.y - entry.center.y - y0 })), { x: dx, y: dy }];
|
|
1250
1250
|
const times = smoothMotionTimes(offsets, start, end - start, _nullishCoalesce(command3.pacing, () => ( "even")));
|
|
1251
1251
|
for (const axis of ["x", "y"]) {
|
|
1252
1252
|
const base = add ? 0 : axis === "x" ? x0 : y0;
|
|
@@ -1389,13 +1389,13 @@ function morphBetween(a, b) {
|
|
|
1389
1389
|
let inner = morphCache.get(a);
|
|
1390
1390
|
if (!inner) morphCache.set(a, inner = /* @__PURE__ */ new WeakMap());
|
|
1391
1391
|
let morph = inner.get(b);
|
|
1392
|
-
if (!morph) inner.set(b, morph =
|
|
1392
|
+
if (!morph) inner.set(b, morph = _chunk2PXRKMOHcjs.createVectorMorph.call(void 0, a, b, { id: a.id }));
|
|
1393
1393
|
return morph;
|
|
1394
1394
|
}
|
|
1395
1395
|
function shapeIn(entry, shape) {
|
|
1396
1396
|
if (shape === entry) return entry.node;
|
|
1397
|
-
const m =
|
|
1398
|
-
return { ...shape.node, ...
|
|
1397
|
+
const m = _chunkLXGOYRPEcjs.multiplyMatrices.call(void 0, _chunkLXGOYRPEcjs.multiplyMatrices.call(void 0, _chunkLXGOYRPEcjs.nodeMatrix.call(void 0, shape.node), shape.parentWorld), _chunkLXGOYRPEcjs.invertMatrix.call(void 0, entry.parentWorld));
|
|
1398
|
+
return { ...shape.node, ..._chunkLXGOYRPEcjs.isIdentityMatrix.call(void 0, m) ? { transform: void 0 } : { transform: m } };
|
|
1399
1399
|
}
|
|
1400
1400
|
function shapeAt(entry, timeline, nodes, time) {
|
|
1401
1401
|
const track = timeline.tracks.get(motionTrackKey(entry.node.id, "shape"));
|
|
@@ -1415,7 +1415,7 @@ function shapeAt(entry, timeline, nodes, time) {
|
|
|
1415
1415
|
function motionFollowRoute(entry, path) {
|
|
1416
1416
|
if (!path || path.node.type !== "path") return null;
|
|
1417
1417
|
try {
|
|
1418
|
-
return _chunkBJTCSLF6cjs.transformBezierPath.call(void 0,
|
|
1418
|
+
return _chunkBJTCSLF6cjs.transformBezierPath.call(void 0, _chunkLXGOYRPEcjs.vectorPathWorldBezier.call(void 0, path.node, path.parentWorld, { effects: false }), _chunkLXGOYRPEcjs.invertMatrix.call(void 0, entry.parentWorld));
|
|
1419
1419
|
} catch (e4) {
|
|
1420
1420
|
return null;
|
|
1421
1421
|
}
|
|
@@ -1449,9 +1449,9 @@ function motionNodeOffset(entry, timeline, time, nodes = indexMotionNodes([entry
|
|
|
1449
1449
|
const scaleX = read("scaleX", 1);
|
|
1450
1450
|
const scaleY = read("scaleY", 1);
|
|
1451
1451
|
const c = entry.center;
|
|
1452
|
-
let matrix =
|
|
1452
|
+
let matrix = _chunkLXGOYRPEcjs.multiplyMatrices.call(void 0, _chunkLXGOYRPEcjs.multiplyMatrices.call(void 0, _chunkLXGOYRPEcjs.scaleMatrix.call(void 0, scaleX, scaleY, c), _chunkLXGOYRPEcjs.rotateMatrix.call(void 0, rotation, c)), _chunkLXGOYRPEcjs.translateMatrix.call(void 0, dx, dy));
|
|
1453
1453
|
const along = follow ? followAt(entry, timeline, nodes, time) : null;
|
|
1454
|
-
if (along) matrix =
|
|
1454
|
+
if (along) matrix = _chunkLXGOYRPEcjs.multiplyMatrices.call(void 0, matrix, _chunkLXGOYRPEcjs.multiplyMatrices.call(void 0, _chunkLXGOYRPEcjs.multiplyMatrices.call(void 0, _chunkLXGOYRPEcjs.translateMatrix.call(void 0, -c.x, -c.y), _chunkLXGOYRPEcjs.rotateMatrix.call(void 0, along.angle)), _chunkLXGOYRPEcjs.translateMatrix.call(void 0, along.x, along.y)));
|
|
1455
1455
|
return { matrix, dx, dy, rotation, scaleX, scaleY, follow: along };
|
|
1456
1456
|
}
|
|
1457
1457
|
function motionNodeClips(id, timeline, time) {
|
|
@@ -1518,7 +1518,7 @@ function motionFrameAt(scene, time, options = {}) {
|
|
|
1518
1518
|
const start = Math.min(1, Math.max(0, typeof drawStart === "number" ? drawStart : 0));
|
|
1519
1519
|
const end = Math.min(1, Math.max(0, typeof drawEnd === "number" ? drawEnd : 1));
|
|
1520
1520
|
if (start > 0 || end < 1) {
|
|
1521
|
-
const trim =
|
|
1521
|
+
const trim = _chunkLXGOYRPEcjs.createVectorEffect.call(void 0, "trim", MOTION_DRAW_EFFECT_ID, { start: tidy(start * 100), end: tidy(end * 100) });
|
|
1522
1522
|
p = { ...p, effects: [trim, ...(_nullishCoalesce(p.effects, () => ( []))).filter((e) => e.id !== MOTION_DRAW_EFFECT_ID)] };
|
|
1523
1523
|
}
|
|
1524
1524
|
}
|
|
@@ -1532,8 +1532,8 @@ function motionFrameAt(scene, time, options = {}) {
|
|
|
1532
1532
|
if (o >= 1) delete out.opacity;
|
|
1533
1533
|
}
|
|
1534
1534
|
const offset = options.offsets === false ? null : motionNodeOffset(entry, timeline, time, nodes);
|
|
1535
|
-
if (offset && !
|
|
1536
|
-
const m =
|
|
1535
|
+
if (offset && !_chunkLXGOYRPEcjs.isIdentityMatrix.call(void 0, offset.matrix)) {
|
|
1536
|
+
const m = _chunkLXGOYRPEcjs.multiplyMatrices.call(void 0, _chunkLXGOYRPEcjs.nodeMatrix.call(void 0, out), offset.matrix).map(tidy);
|
|
1537
1537
|
out = { ...out, transform: m };
|
|
1538
1538
|
}
|
|
1539
1539
|
return out;
|
|
@@ -1553,7 +1553,7 @@ function motionFrameToSvg(scene, time, options = {}) {
|
|
|
1553
1553
|
const wrap = { ...options.wrap };
|
|
1554
1554
|
for (const [id, clips] of Object.entries(frame.clips))
|
|
1555
1555
|
wrap[id] = [..._nullishCoalesce(wrap[id], () => ( [])), ...clips.map((clip, i) => ({ clip: { id: `${prefix}reveal-${id}-${i}`, shape: clip.shape, attrs: motionClipAttrs(clip) } }))];
|
|
1556
|
-
return withViewBox(
|
|
1556
|
+
return withViewBox(_chunkLXGOYRPEcjs.vectorDocumentToSvg.call(void 0, frame.document, { ...options, wrap }), frame.camera);
|
|
1557
1557
|
}
|
|
1558
1558
|
function withViewBox(svg, box) {
|
|
1559
1559
|
const f = (n) => String(Math.round(n * 1e3) / 1e3);
|
|
@@ -1736,8 +1736,8 @@ function visibleAt(timeline, id, time, node) {
|
|
|
1736
1736
|
if (Array.isArray(rect) && (rect[2] <= 1e-4 || rect[3] <= 1e-4)) return false;
|
|
1737
1737
|
const circle = clip("clipCircle");
|
|
1738
1738
|
if (Array.isArray(circle) && circle[2] <= 1e-4) return false;
|
|
1739
|
-
const hasFill = node.type === "path" ? !!node.fill && node.fill !== "none" :
|
|
1740
|
-
const drawn = num2("drawEnd", 1) > 0.01 && (node.type === "path" ||
|
|
1739
|
+
const hasFill = node.type === "path" ? !!node.fill && node.fill !== "none" : _chunkLXGOYRPEcjs.collectPathNodes.call(void 0, node).some((p) => p.fill && p.fill !== "none");
|
|
1740
|
+
const drawn = num2("drawEnd", 1) > 0.01 && (node.type === "path" || _chunkLXGOYRPEcjs.collectPathNodes.call(void 0, node).length === 0 || _chunkLXGOYRPEcjs.collectPathNodes.call(void 0, node).some((p) => {
|
|
1741
1741
|
const v = trackValue(timeline.tracks.get(motionTrackKey(p.id, "drawEnd")), time);
|
|
1742
1742
|
return typeof v !== "number" || v > 0.01;
|
|
1743
1743
|
}));
|
|
@@ -1823,7 +1823,7 @@ function checkMotionScene(scene) {
|
|
|
1823
1823
|
}
|
|
1824
1824
|
for (const id of targets) {
|
|
1825
1825
|
const node = nodes.get(id).node;
|
|
1826
|
-
const paths = node.type === "path" ? [node] :
|
|
1826
|
+
const paths = node.type === "path" ? [node] : _chunkLXGOYRPEcjs.collectPathNodes.call(void 0, node);
|
|
1827
1827
|
if (paths.some((p) => p[key] !== void 0 && p[key] !== null && typeof p[key] !== "string"))
|
|
1828
1828
|
issues.push(_chunkWAJQKWQUcjs.motionIssue.call(void 0, "paint-not-color", `"${id}" has a gradient ${key}; it switches to ${color} at the end instead of blending.`, { ...where, ids: [id] }));
|
|
1829
1829
|
}
|
|
@@ -1836,7 +1836,7 @@ function checkMotionScene(scene) {
|
|
|
1836
1836
|
else
|
|
1837
1837
|
for (const id of targets) {
|
|
1838
1838
|
const node = nodes.get(id).node;
|
|
1839
|
-
const paths = node.type === "path" ? [node] :
|
|
1839
|
+
const paths = node.type === "path" ? [node] : _chunkLXGOYRPEcjs.collectPathNodes.call(void 0, node);
|
|
1840
1840
|
if (paths.some((p) => typeof p[key] !== "string"))
|
|
1841
1841
|
issues.push(_chunkWAJQKWQUcjs.motionIssue.call(void 0, "paint-not-color", `"${id}" has a gradient or no ${key}, so a colour pulse cannot tint it; give it a solid ${key} or pulse the ${key === "fill" ? "stroke" : "fill"}.`, { ...where, ids: [id] }));
|
|
1842
1842
|
}
|
|
@@ -2420,7 +2420,7 @@ function toFlairSvgMotion(scene, options = {}) {
|
|
|
2420
2420
|
raw: (t) => transformAt(t, true)
|
|
2421
2421
|
});
|
|
2422
2422
|
}
|
|
2423
|
-
const paths = node.type === "path" ? [node] :
|
|
2423
|
+
const paths = node.type === "path" ? [node] : _chunkLXGOYRPEcjs.collectPathNodes.call(void 0, node);
|
|
2424
2424
|
for (const path of paths) {
|
|
2425
2425
|
if (pathsSeen.has(path.id)) continue;
|
|
2426
2426
|
pathsSeen.add(path.id);
|
|
@@ -2442,7 +2442,7 @@ function toFlairSvgMotion(scene, options = {}) {
|
|
|
2442
2442
|
if (shapeSegments.length) {
|
|
2443
2443
|
if (node.type !== "path") notes.push(`"${id}" is a group: its morph or effect animation is not exported (Flair tweens one path's "d").`);
|
|
2444
2444
|
else {
|
|
2445
|
-
const inverse =
|
|
2445
|
+
const inverse = _chunkLXGOYRPEcjs.invertMatrix.call(void 0, _chunkLXGOYRPEcjs.nodeMatrix.call(void 0, node));
|
|
2446
2446
|
channels.push({
|
|
2447
2447
|
id,
|
|
2448
2448
|
kind: "attr",
|
|
@@ -2451,9 +2451,9 @@ function toFlairSvgMotion(scene, options = {}) {
|
|
|
2451
2451
|
exact: () => false,
|
|
2452
2452
|
value: (t) => {
|
|
2453
2453
|
const frame = motionFrameAt(scene, t, { draw: false, offsets: false });
|
|
2454
|
-
const now =
|
|
2454
|
+
const now = _chunkLXGOYRPEcjs.expandVectorAppearance.call(void 0, _optionalChain([indexMotionNodes, 'call', _108 => _108(frame.document.nodes), 'access', _109 => _109.get, 'call', _110 => _110(id), 'optionalAccess', _111 => _111.node]));
|
|
2455
2455
|
if (!now || now.type !== "path") return "";
|
|
2456
|
-
const bezier = _chunkBJTCSLF6cjs.transformBezierPath.call(void 0,
|
|
2456
|
+
const bezier = _chunkBJTCSLF6cjs.transformBezierPath.call(void 0, _chunkLXGOYRPEcjs.vectorPathWorldBezier.call(void 0, now, _chunkLXGOYRPEcjs.IDENTITY_MATRIX, { effects: false }), inverse);
|
|
2457
2457
|
return _chunkBJTCSLF6cjs.bezierPathToSvg.call(void 0, bezier, { precision: Math.min(precision, 2) });
|
|
2458
2458
|
}
|
|
2459
2459
|
});
|
|
@@ -2560,7 +2560,7 @@ function toFlairSvgMotion(scene, options = {}) {
|
|
|
2560
2560
|
}
|
|
2561
2561
|
if (scene.motionBlur) notes.push("Motion blur is drawn on the stage only; Flair plays the scene sharp.");
|
|
2562
2562
|
if (trigger && (_nullishCoalesce(scene.loop, () => ( "none"))) !== "none") notes.push(`The scene plays on ${trigger}, so its loop does not apply in Flair.`);
|
|
2563
|
-
let svg =
|
|
2563
|
+
let svg = _chunkLXGOYRPEcjs.vectorDocumentToSvg.call(void 0, { ...scene.artwork, nodes: _chunkLXGOYRPEcjs.expandVectorAppearances.call(void 0, scene.artwork.nodes) }, { pretty: false, precision, wrap });
|
|
2564
2564
|
if (routes.length) svg = svg.replace(/^(<svg[^>]*>)/, `$1<defs>${routes.join("")}</defs>`);
|
|
2565
2565
|
let motion = { svg, animate };
|
|
2566
2566
|
if (_optionalChain([scene, 'access', _114 => _114.controls, 'optionalAccess', _115 => _115.length])) {
|
|
@@ -2644,14 +2644,14 @@ function easingOf(ease, fallback) {
|
|
|
2644
2644
|
return fallback;
|
|
2645
2645
|
}
|
|
2646
2646
|
function poseOf(value, entry) {
|
|
2647
|
-
const t =
|
|
2648
|
-
const o =
|
|
2647
|
+
const t = _chunkLXGOYRPEcjs.parseSvgTransform.call(void 0, String(value));
|
|
2648
|
+
const o = _chunkLXGOYRPEcjs.multiplyMatrices.call(void 0, _nullishCoalesce(_chunkLXGOYRPEcjs.invertMatrix.call(void 0, _chunkLXGOYRPEcjs.nodeMatrix.call(void 0, entry.node)), () => ( [1, 0, 0, 1, 0, 0])), t);
|
|
2649
2649
|
const sx = Math.hypot(o[0], o[1]);
|
|
2650
2650
|
if (!(sx > 1e-9)) return null;
|
|
2651
2651
|
const sy = (o[0] * o[3] - o[1] * o[2]) / sx;
|
|
2652
2652
|
if (Math.abs(o[2] + o[1] / sx * sy) > 1e-6 || Math.abs(o[3] - o[0] / sx * sy) > 1e-6) return null;
|
|
2653
2653
|
const c = entry.center;
|
|
2654
|
-
const moved =
|
|
2654
|
+
const moved = _chunkLXGOYRPEcjs.applyMatrix.call(void 0, o, c);
|
|
2655
2655
|
return { dx: moved.x - c.x, dy: moved.y - c.y, rotation: Math.atan2(o[1], o[0]) * 180 / Math.PI, sx, sy };
|
|
2656
2656
|
}
|
|
2657
2657
|
var near = (a, b, eps = 1e-6) => Math.abs(a - b) < eps;
|
|
@@ -2736,7 +2736,7 @@ function fromFlairSvgMotion(input, options = {}) {
|
|
|
2736
2736
|
const notes = [];
|
|
2737
2737
|
if (!input || typeof input.svg !== "string") throw new Error('Give a Flair SvgMotion: { svg: "<svg \u2026>", animate: [ \u2026 ] }.');
|
|
2738
2738
|
const { motion, controls } = resolvePlaceholders(input, notes);
|
|
2739
|
-
const artwork =
|
|
2739
|
+
const artwork = _chunkLXGOYRPEcjs.parseVectorSvg.call(void 0, motion.svg);
|
|
2740
2740
|
const nodes = indexMotionNodes(artwork.nodes);
|
|
2741
2741
|
const byStep = /* @__PURE__ */ new Map();
|
|
2742
2742
|
for (const anim of _nullishCoalesce(motion.animate, () => ( []))) {
|
|
@@ -2983,9 +2983,9 @@ function toLottie(scene, options = {}) {
|
|
|
2983
2983
|
const items = [];
|
|
2984
2984
|
const shapeSegments = [...timeline.tracks.entries()].filter(([k]) => k.startsWith(`${path.id}\0`) && (k.endsWith("\0shape") || k.includes("\0effect:"))).flatMap(([, v]) => v);
|
|
2985
2985
|
const geometryAt = (t) => {
|
|
2986
|
-
if (!shapeSegments.length) return
|
|
2986
|
+
if (!shapeSegments.length) return _chunkLXGOYRPEcjs.vectorPathWorldBezier.call(void 0, path);
|
|
2987
2987
|
const now = _optionalChain([indexMotionNodes, 'call', _124 => _124(motionFrameAt(scene, t, { draw: false, offsets: false }).document.nodes), 'access', _125 => _125.get, 'call', _126 => _126(path.id), 'optionalAccess', _127 => _127.node]);
|
|
2988
|
-
return now && now.type === "path" ?
|
|
2988
|
+
return now && now.type === "path" ? _chunkLXGOYRPEcjs.vectorPathWorldBezier.call(void 0, _chunkLXGOYRPEcjs.expandVectorAppearances.call(void 0, [now])[0]) : _chunkLXGOYRPEcjs.vectorPathWorldBezier.call(void 0, path);
|
|
2989
2989
|
};
|
|
2990
2990
|
const rest = lottieContours(_chunkBJTCSLF6cjs.toBezierPath.call(void 0, geometryAt(0)), round2);
|
|
2991
2991
|
rest.forEach((contour, n) => {
|
|
@@ -3058,13 +3058,13 @@ function toLottie(scene, options = {}) {
|
|
|
3058
3058
|
const innerTr = STATIC_TR();
|
|
3059
3059
|
if (node.type === "path") inner = [...pathShapes(node)];
|
|
3060
3060
|
else if (node.type === "text" || node.type === "instance") {
|
|
3061
|
-
const drawn =
|
|
3061
|
+
const drawn = _chunkLXGOYRPEcjs.expandVectorAppearance.call(void 0, node);
|
|
3062
3062
|
inner = drawn.type === "path" ? [...pathShapes(drawn)] : drawn.children.filter((c) => c.type === "path").reverse().flatMap((c) => [...pathShapes(c)]);
|
|
3063
|
-
notes.push(`"${node.id}": text is exported as its outlines${
|
|
3063
|
+
notes.push(`"${node.id}": text is exported as its outlines${_chunkLXGOYRPEcjs.vectorTextHasOutlines.call(void 0, ) ? "" : " (glyph boxes: set an outline text shaper for real glyphs)"}.`);
|
|
3064
3064
|
} else {
|
|
3065
3065
|
inner = shown(node.children).reverse().map(nodeGroup);
|
|
3066
|
-
const m =
|
|
3067
|
-
if (m !==
|
|
3066
|
+
const m = _chunkLXGOYRPEcjs.nodeMatrix.call(void 0, node);
|
|
3067
|
+
if (m !== _chunkLXGOYRPEcjs.IDENTITY_MATRIX) {
|
|
3068
3068
|
const parts = staticParts(m);
|
|
3069
3069
|
if (!parts) notes.push(`"${node.id}": its transform skews, which is not exported; it is drawn without the skew.`);
|
|
3070
3070
|
else {
|
|
@@ -3077,7 +3077,7 @@ function toLottie(scene, options = {}) {
|
|
|
3077
3077
|
const body = { ty: "gr", nm: `${node.id} (own)`, it: [...inner, innerTr] };
|
|
3078
3078
|
return { ty: "gr", nm: _nullishCoalesce(node.name, () => ( node.id)), it: [body, poseTransform(entry)] };
|
|
3079
3079
|
};
|
|
3080
|
-
const artwork = { ...scene.artwork, nodes:
|
|
3080
|
+
const artwork = { ...scene.artwork, nodes: _chunkLXGOYRPEcjs.expandVectorAppearances.call(void 0, scene.artwork.nodes) };
|
|
3081
3081
|
const content = shown(artwork.nodes).reverse().map(nodeGroup);
|
|
3082
3082
|
if (artwork.background && rgba(artwork.background))
|
|
3083
3083
|
content.push({ ty: "gr", nm: "Background", it: [{ ty: "rc", nm: "Background", p: { a: 0, k: [artwork.width / 2, artwork.height / 2] }, s: { a: 0, k: [artwork.width, artwork.height] }, r: { a: 0, k: 0 } }, { ty: "fl", c: { a: 0, k: rgba(artwork.background).map(round2) }, o: { a: 0, k: 100 }, r: 1 }, STATIC_TR()] });
|
|
@@ -3176,11 +3176,11 @@ function preset(prst, w, h) {
|
|
|
3176
3176
|
const poly = (pts) => [{ closed: true, anchors: pts.map(([x, y]) => ({ x, y })) }];
|
|
3177
3177
|
switch (prst) {
|
|
3178
3178
|
case "rect":
|
|
3179
|
-
return [
|
|
3179
|
+
return [_chunkLXGOYRPEcjs.rectSubpath.call(void 0, { x: 0, y: 0, width: w, height: h })];
|
|
3180
3180
|
case "roundRect":
|
|
3181
|
-
return [
|
|
3181
|
+
return [_chunkLXGOYRPEcjs.rectSubpath.call(void 0, { x: 0, y: 0, width: w, height: h }, Math.min(w, h) * 0.16667)];
|
|
3182
3182
|
case "ellipse":
|
|
3183
|
-
return [
|
|
3183
|
+
return [_chunkLXGOYRPEcjs.ellipseSubpath.call(void 0, { x: 0, y: 0, width: w, height: h })];
|
|
3184
3184
|
case "triangle":
|
|
3185
3185
|
return poly([[w / 2, 0], [w, h], [0, h]]);
|
|
3186
3186
|
case "rtTriangle":
|
|
@@ -3288,7 +3288,7 @@ function shapes(ctx, tree, map) {
|
|
|
3288
3288
|
let subpaths = cust ? custom(cust, w, h) : prst ? preset(prst, w, h) : null;
|
|
3289
3289
|
if (!subpaths) {
|
|
3290
3290
|
if (prst) ctx.notes.push(`"${name}" is a ${prst}, drawn as its bounding rectangle.`);
|
|
3291
|
-
subpaths = [
|
|
3291
|
+
subpaths = [_chunkLXGOYRPEcjs.rectSubpath.call(void 0, { x: 0, y: 0, width: w, height: h })];
|
|
3292
3292
|
}
|
|
3293
3293
|
const style = kid(el, "style");
|
|
3294
3294
|
const fill = kid(spPr, "noFill") ? null : _nullishCoalesce(colour(ctx, kid(spPr, "solidFill")), () => ( (el.localName === "cxnSp" ? null : colour(ctx, kid(style, "fillRef")))));
|
|
@@ -3526,7 +3526,7 @@ function nextMotionEffectInstance(scene) {
|
|
|
3526
3526
|
walk(scene.artwork.nodes);
|
|
3527
3527
|
for (let i = 1; ; i++) if (!used.has(`fx${i}`)) return `fx${i}`;
|
|
3528
3528
|
}
|
|
3529
|
-
var motionArtworkSvg = (artwork) =>
|
|
3529
|
+
var motionArtworkSvg = (artwork) => _chunkLXGOYRPEcjs.vectorDocumentToSvg.call(void 0, artwork);
|
|
3530
3530
|
var tag = (commands, source) => commands.map((c) => c.type === "wait" ? c : { ...c, source });
|
|
3531
3531
|
function motionCommandsFromEffect(artwork, motion, source) {
|
|
3532
3532
|
const imported = fromFlairSvgMotion({ svg: motionArtworkSvg(artwork), animate: [..._nullishCoalesce(motion.animate, () => ( []))] });
|
|
@@ -4511,7 +4511,7 @@ function createAnimationEditorToolProvider(controller, options = {}) {
|
|
|
4511
4511
|
handler: ({ svg }) => {
|
|
4512
4512
|
let artwork;
|
|
4513
4513
|
try {
|
|
4514
|
-
artwork =
|
|
4514
|
+
artwork = _chunkLXGOYRPEcjs.parseVectorSvg.call(void 0, svg);
|
|
4515
4515
|
} catch (error) {
|
|
4516
4516
|
throw new Error(`The SVG could not be read: ${error.message}. Nothing was changed.`);
|
|
4517
4517
|
}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { a6 as MotionCommand, a7 as MotionShot, a8 as MotionScene, L as VectorNode, O as VectorBounds, a9 as MotionDirection, aa as MotionIrisShape, ab as MotionSplitOrientation, ac as MotionDriver, ad as MotionDrivenProperty, ae as MotionRect, af as MotionBeatGrid, ag as MotionCue, ah as MotionCamera, ai as MotionTextUnit, aj as MotionCascade, a4 as VectorDocument, ak as MotionBlur, al as MotionControl, am as MotionPreset, an as MotionClip, ao as FlairSvgMotion, ap as FlairVectorEffect, e as EffectValue, t as EffectVectorMotion, aq as MotionEffectSource, N as VectorGroupNode, v as EffectsSlot, E as EffectProvider, ar as FlairExportOptions, as as FlairMotionExport, at as FlairEffectOptions, au as FlairEffectDocument, av as MotionEnterStyle, aw as MotionExitStyle, ax as MotionCommandType, ay as MotionNarration } from '../helpers-
|
|
2
|
-
export { az as FLAIR_EASES, aA as FLAIR_EXPORT_VERSION, aB as FlairEase, aC as FlairEaseName, aD as FlairSpringEase, aE as FlairSvgAnimation, aF as MOTION_BLENDS, aG as MOTION_CAMERA_MS, aH as MOTION_CASCADES, aI as MOTION_CLIP_TARGET, aJ as MOTION_COMMAND_TYPES, aK as MOTION_DEFAULT_DURATIONS, aL as MOTION_DEFAULT_HOLD, aM as MOTION_DIRECTIONS, aN as MOTION_DRAW_MS_PER_UNIT, aO as MOTION_DRAW_RANGE, aP as MOTION_DRIVEN_PROPERTIES, aQ as MOTION_ENTER_STYLES, aR as MOTION_EXIT_STYLES, aS as MOTION_IRIS_SHAPES, aT as MOTION_REPEAT_MODES, aU as MOTION_SPLIT_ORIENTATIONS, aV as MOTION_TEXT_UNITS, aW as MOTION_TRIGGERS, aX as MotionColorPulseCommand, aY as MotionCommandBase, aZ as MotionDrawCommand, a_ as MotionDrawOrder, a$ as MotionEffectCommand, b0 as MotionEnterCommand, b1 as MotionExitCommand, b2 as MotionFadeCommand, b3 as MotionFollowCommand, b4 as MotionMatchCommand, b5 as MotionMorphCommand, b6 as MotionMoveCommand, b7 as MotionPlayCommand, b8 as MotionPulseCommand, b9 as MotionRotateCommand, ba as MotionScaleCommand, bb as MotionShakeCommand, bc as MotionStyleCommand, bd as MotionTeeterCommand, be as MotionTrigger, bf as MotionWaitCommand, bg as MotionWaveCommand, bh as MotionWiggleCommand, bi as flairAtLeast, bj as flairCurveFor, bk as flairEaseFor, bl as motionFlairPrimitive, bm as toFlairEffectDocument, bn as toFlairSvgMotion, bo as toFlairVectorEffect } from '../helpers-
|
|
1
|
+
import { a6 as MotionCommand, a7 as MotionShot, a8 as MotionScene, L as VectorNode, O as VectorBounds, a9 as MotionDirection, aa as MotionIrisShape, ab as MotionSplitOrientation, ac as MotionDriver, ad as MotionDrivenProperty, ae as MotionRect, af as MotionBeatGrid, ag as MotionCue, ah as MotionCamera, ai as MotionTextUnit, aj as MotionCascade, a4 as VectorDocument, ak as MotionBlur, al as MotionControl, am as MotionPreset, an as MotionClip, ao as FlairSvgMotion, ap as FlairVectorEffect, e as EffectValue, t as EffectVectorMotion, aq as MotionEffectSource, N as VectorGroupNode, v as EffectsSlot, E as EffectProvider, ar as FlairExportOptions, as as FlairMotionExport, at as FlairEffectOptions, au as FlairEffectDocument, av as MotionEnterStyle, aw as MotionExitStyle, ax as MotionCommandType, ay as MotionNarration } from '../helpers-CzZu51eI.cjs';
|
|
2
|
+
export { az as FLAIR_EASES, aA as FLAIR_EXPORT_VERSION, aB as FlairEase, aC as FlairEaseName, aD as FlairSpringEase, aE as FlairSvgAnimation, aF as MOTION_BLENDS, aG as MOTION_CAMERA_MS, aH as MOTION_CASCADES, aI as MOTION_CLIP_TARGET, aJ as MOTION_COMMAND_TYPES, aK as MOTION_DEFAULT_DURATIONS, aL as MOTION_DEFAULT_HOLD, aM as MOTION_DIRECTIONS, aN as MOTION_DRAW_MS_PER_UNIT, aO as MOTION_DRAW_RANGE, aP as MOTION_DRIVEN_PROPERTIES, aQ as MOTION_ENTER_STYLES, aR as MOTION_EXIT_STYLES, aS as MOTION_IRIS_SHAPES, aT as MOTION_REPEAT_MODES, aU as MOTION_SPLIT_ORIENTATIONS, aV as MOTION_TEXT_UNITS, aW as MOTION_TRIGGERS, aX as MotionColorPulseCommand, aY as MotionCommandBase, aZ as MotionDrawCommand, a_ as MotionDrawOrder, a$ as MotionEffectCommand, b0 as MotionEnterCommand, b1 as MotionExitCommand, b2 as MotionFadeCommand, b3 as MotionFollowCommand, b4 as MotionMatchCommand, b5 as MotionMorphCommand, b6 as MotionMoveCommand, b7 as MotionPlayCommand, b8 as MotionPulseCommand, b9 as MotionRotateCommand, ba as MotionScaleCommand, bb as MotionShakeCommand, bc as MotionStyleCommand, bd as MotionTeeterCommand, be as MotionTrigger, bf as MotionWaitCommand, bg as MotionWaveCommand, bh as MotionWiggleCommand, bi as flairAtLeast, bj as flairCurveFor, bk as flairEaseFor, bl as motionFlairPrimitive, bm as toFlairEffectDocument, bn as toFlairSvgMotion, bo as toFlairVectorEffect } from '../helpers-CzZu51eI.cjs';
|
|
3
3
|
import { f as MotionBehavior, b as AnimationLoopMode } from '../evaluate-BsxYieLN.cjs';
|
|
4
4
|
import { b as AnimationEasing } from '../easing-lM0Xo9Ni.cjs';
|
|
5
|
-
import { A as AffineMatrix, B as BezierPath } from '../bezier-
|
|
6
|
-
import { V as VectorSvgExportOptions } from '../svg-
|
|
5
|
+
import { A as AffineMatrix, B as BezierPath } from '../bezier-CdoGygwG.cjs';
|
|
6
|
+
import { V as VectorSvgExportOptions } from '../svg-BRaii3pI.cjs';
|
|
7
7
|
import { Z as ZipReadOptions } from '../zip-4nG0YAH7.cjs';
|
|
8
8
|
import { A as AnimationPlayer, C as Clock } from '../player-CmbY3218.cjs';
|
|
9
9
|
import { H as HistoryManager } from '../HistoryManager-DeQQMBCj.cjs';
|
|
@@ -1274,7 +1274,7 @@ declare function describeMotionElements(scene: MotionScene): {
|
|
|
1274
1274
|
} | undefined;
|
|
1275
1275
|
effects?: {
|
|
1276
1276
|
id: string;
|
|
1277
|
-
type: "trim" | "offset" | "contour" | "twist" | "roundCorners" | "puckerBloat" | "zigzag" | "wiggle" | "merge" | "repeater" | "envelope" | "blockShadow";
|
|
1277
|
+
type: "trim" | "offset" | "bevel" | "contour" | "twist" | "roundCorners" | "puckerBloat" | "zigzag" | "wiggle" | "merge" | "repeater" | "envelope" | "blockShadow" | "extrude";
|
|
1278
1278
|
numericParams: {
|
|
1279
1279
|
[k: string]: unknown;
|
|
1280
1280
|
};
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { a6 as MotionCommand, a7 as MotionShot, a8 as MotionScene, L as VectorNode, O as VectorBounds, a9 as MotionDirection, aa as MotionIrisShape, ab as MotionSplitOrientation, ac as MotionDriver, ad as MotionDrivenProperty, ae as MotionRect, af as MotionBeatGrid, ag as MotionCue, ah as MotionCamera, ai as MotionTextUnit, aj as MotionCascade, a4 as VectorDocument, ak as MotionBlur, al as MotionControl, am as MotionPreset, an as MotionClip, ao as FlairSvgMotion, ap as FlairVectorEffect, e as EffectValue, t as EffectVectorMotion, aq as MotionEffectSource, N as VectorGroupNode, v as EffectsSlot, E as EffectProvider, ar as FlairExportOptions, as as FlairMotionExport, at as FlairEffectOptions, au as FlairEffectDocument, av as MotionEnterStyle, aw as MotionExitStyle, ax as MotionCommandType, ay as MotionNarration } from '../helpers-
|
|
2
|
-
export { az as FLAIR_EASES, aA as FLAIR_EXPORT_VERSION, aB as FlairEase, aC as FlairEaseName, aD as FlairSpringEase, aE as FlairSvgAnimation, aF as MOTION_BLENDS, aG as MOTION_CAMERA_MS, aH as MOTION_CASCADES, aI as MOTION_CLIP_TARGET, aJ as MOTION_COMMAND_TYPES, aK as MOTION_DEFAULT_DURATIONS, aL as MOTION_DEFAULT_HOLD, aM as MOTION_DIRECTIONS, aN as MOTION_DRAW_MS_PER_UNIT, aO as MOTION_DRAW_RANGE, aP as MOTION_DRIVEN_PROPERTIES, aQ as MOTION_ENTER_STYLES, aR as MOTION_EXIT_STYLES, aS as MOTION_IRIS_SHAPES, aT as MOTION_REPEAT_MODES, aU as MOTION_SPLIT_ORIENTATIONS, aV as MOTION_TEXT_UNITS, aW as MOTION_TRIGGERS, aX as MotionColorPulseCommand, aY as MotionCommandBase, aZ as MotionDrawCommand, a_ as MotionDrawOrder, a$ as MotionEffectCommand, b0 as MotionEnterCommand, b1 as MotionExitCommand, b2 as MotionFadeCommand, b3 as MotionFollowCommand, b4 as MotionMatchCommand, b5 as MotionMorphCommand, b6 as MotionMoveCommand, b7 as MotionPlayCommand, b8 as MotionPulseCommand, b9 as MotionRotateCommand, ba as MotionScaleCommand, bb as MotionShakeCommand, bc as MotionStyleCommand, bd as MotionTeeterCommand, be as MotionTrigger, bf as MotionWaitCommand, bg as MotionWaveCommand, bh as MotionWiggleCommand, bi as flairAtLeast, bj as flairCurveFor, bk as flairEaseFor, bl as motionFlairPrimitive, bm as toFlairEffectDocument, bn as toFlairSvgMotion, bo as toFlairVectorEffect } from '../helpers-
|
|
1
|
+
import { a6 as MotionCommand, a7 as MotionShot, a8 as MotionScene, L as VectorNode, O as VectorBounds, a9 as MotionDirection, aa as MotionIrisShape, ab as MotionSplitOrientation, ac as MotionDriver, ad as MotionDrivenProperty, ae as MotionRect, af as MotionBeatGrid, ag as MotionCue, ah as MotionCamera, ai as MotionTextUnit, aj as MotionCascade, a4 as VectorDocument, ak as MotionBlur, al as MotionControl, am as MotionPreset, an as MotionClip, ao as FlairSvgMotion, ap as FlairVectorEffect, e as EffectValue, t as EffectVectorMotion, aq as MotionEffectSource, N as VectorGroupNode, v as EffectsSlot, E as EffectProvider, ar as FlairExportOptions, as as FlairMotionExport, at as FlairEffectOptions, au as FlairEffectDocument, av as MotionEnterStyle, aw as MotionExitStyle, ax as MotionCommandType, ay as MotionNarration } from '../helpers-X_rycLNJ.js';
|
|
2
|
+
export { az as FLAIR_EASES, aA as FLAIR_EXPORT_VERSION, aB as FlairEase, aC as FlairEaseName, aD as FlairSpringEase, aE as FlairSvgAnimation, aF as MOTION_BLENDS, aG as MOTION_CAMERA_MS, aH as MOTION_CASCADES, aI as MOTION_CLIP_TARGET, aJ as MOTION_COMMAND_TYPES, aK as MOTION_DEFAULT_DURATIONS, aL as MOTION_DEFAULT_HOLD, aM as MOTION_DIRECTIONS, aN as MOTION_DRAW_MS_PER_UNIT, aO as MOTION_DRAW_RANGE, aP as MOTION_DRIVEN_PROPERTIES, aQ as MOTION_ENTER_STYLES, aR as MOTION_EXIT_STYLES, aS as MOTION_IRIS_SHAPES, aT as MOTION_REPEAT_MODES, aU as MOTION_SPLIT_ORIENTATIONS, aV as MOTION_TEXT_UNITS, aW as MOTION_TRIGGERS, aX as MotionColorPulseCommand, aY as MotionCommandBase, aZ as MotionDrawCommand, a_ as MotionDrawOrder, a$ as MotionEffectCommand, b0 as MotionEnterCommand, b1 as MotionExitCommand, b2 as MotionFadeCommand, b3 as MotionFollowCommand, b4 as MotionMatchCommand, b5 as MotionMorphCommand, b6 as MotionMoveCommand, b7 as MotionPlayCommand, b8 as MotionPulseCommand, b9 as MotionRotateCommand, ba as MotionScaleCommand, bb as MotionShakeCommand, bc as MotionStyleCommand, bd as MotionTeeterCommand, be as MotionTrigger, bf as MotionWaitCommand, bg as MotionWaveCommand, bh as MotionWiggleCommand, bi as flairAtLeast, bj as flairCurveFor, bk as flairEaseFor, bl as motionFlairPrimitive, bm as toFlairEffectDocument, bn as toFlairSvgMotion, bo as toFlairVectorEffect } from '../helpers-X_rycLNJ.js';
|
|
3
3
|
import { f as MotionBehavior, b as AnimationLoopMode } from '../evaluate-BbCeF6pt.js';
|
|
4
4
|
import { b as AnimationEasing } from '../easing-lM0Xo9Ni.js';
|
|
5
|
-
import { A as AffineMatrix, B as BezierPath } from '../bezier-
|
|
6
|
-
import { V as VectorSvgExportOptions } from '../svg-
|
|
5
|
+
import { A as AffineMatrix, B as BezierPath } from '../bezier-CigmusV_.js';
|
|
6
|
+
import { V as VectorSvgExportOptions } from '../svg-BYVZeVo0.js';
|
|
7
7
|
import { Z as ZipReadOptions } from '../zip-4nG0YAH7.js';
|
|
8
8
|
import { A as AnimationPlayer, C as Clock } from '../player-BK2kKbfd.js';
|
|
9
9
|
import { H as HistoryManager } from '../HistoryManager-DWSLd6Tf.js';
|
|
@@ -1274,7 +1274,7 @@ declare function describeMotionElements(scene: MotionScene): {
|
|
|
1274
1274
|
} | undefined;
|
|
1275
1275
|
effects?: {
|
|
1276
1276
|
id: string;
|
|
1277
|
-
type: "trim" | "offset" | "contour" | "twist" | "roundCorners" | "puckerBloat" | "zigzag" | "wiggle" | "merge" | "repeater" | "envelope" | "blockShadow";
|
|
1277
|
+
type: "trim" | "offset" | "bevel" | "contour" | "twist" | "roundCorners" | "puckerBloat" | "zigzag" | "wiggle" | "merge" | "repeater" | "envelope" | "blockShadow" | "extrude";
|
|
1278
1278
|
numericParams: {
|
|
1279
1279
|
[k: string]: unknown;
|
|
1280
1280
|
};
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
createVectorMorph
|
|
3
|
-
} from "../chunk-
|
|
3
|
+
} from "../chunk-L5OTIYOO.js";
|
|
4
4
|
import {
|
|
5
5
|
MOTION_ISSUE_CODES,
|
|
6
6
|
motionIssue,
|
|
@@ -31,7 +31,7 @@ import {
|
|
|
31
31
|
vectorNodeBounds,
|
|
32
32
|
vectorPathWorldBezier,
|
|
33
33
|
vectorTextHasOutlines
|
|
34
|
-
} from "../chunk-
|
|
34
|
+
} from "../chunk-PRYMC442.js";
|
|
35
35
|
import {
|
|
36
36
|
bezierPathLength,
|
|
37
37
|
bezierPathPointAtLength,
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { P as Point, e as CanvasBrushstroke } from './brushTypes-C7N3EBK7.cjs';
|
|
2
|
-
import { C as CanvasGradientDef, S as SvgGradientDef } from './helpers-
|
|
2
|
+
import { C as CanvasGradientDef, S as SvgGradientDef } from './helpers-CzZu51eI.cjs';
|
|
3
3
|
|
|
4
4
|
/**
|
|
5
5
|
* Polygon boolean operations (union, intersection, difference, xor and divide) on
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { P as Point, e as CanvasBrushstroke } from './brushTypes-C7N3EBK7.js';
|
|
2
|
-
import { C as CanvasGradientDef, S as SvgGradientDef } from './helpers-
|
|
2
|
+
import { C as CanvasGradientDef, S as SvgGradientDef } from './helpers-X_rycLNJ.js';
|
|
3
3
|
|
|
4
4
|
/**
|
|
5
5
|
* Polygon boolean operations (union, intersection, difference, xor and divide) on
|
package/dist/canvas/index.d.cts
CHANGED
|
@@ -5,23 +5,23 @@ export { a as AnimationPlayerOptions, M as ManualClock, c as createAnimationPlay
|
|
|
5
5
|
import { b as CanvasNodeUpdate, N as NodeRectOptions, A as AlignEdge, c as AlignNodesOptions, D as DistributeAxis, a as DistributeMode, d as DistributeNodesOptions, S as SizeDimension, M as MatchSizeOptions, Z as ZOrderOperation, C as CanvasArrangeAction } from '../arrange-CKXK_hf7.cjs';
|
|
6
6
|
export { e as ArrangeShortcutBinding, f as DEFAULT_ARRANGE_SHORTCUTS, L as LOCKED_DATA_KEY, g as LOCKED_PREVIOUS_FLAGS_KEY, h as alignNodes, i as applyNodeUpdates, j as createNodeLookup, k as distributeNodes, l as getAbsolutePosition, m as getNodeRect, n as getNodeSize, o as invertNodeUpdates, p as isLocked, q as lockNodes, r as matchArrangeShortcut, s as matchSize, t as readStyleSize, u as reorderNodes, v as toggleLockNodes, w as unlockNodes, x as withStyleSize } from '../arrange-CKXK_hf7.cjs';
|
|
7
7
|
import { C as Command, M as MergedExecutionOptions } from '../types-DsiXGmjo.cjs';
|
|
8
|
-
import { S as ShapeDescription, B as BezierPath, b as PolygonFillRule, e as PolygonRing, f as ShapeSize, a as BezierPathInput, g as PathShape, C as CanvasShapeEffect } from '../bezier-
|
|
9
|
-
export { A as AffineMatrix, h as BezierCommand, d as BezierContour, i as BezierPathToSvgOptions, c as BezierSegment, E as EllipseShape, F as FlattenOptions, G as GetShapeRenderDataOptions, M as MultiPolygon, j as PathCommand, k as PathPointAtLength, P as PolygonBooleanOperation, l as PolygonBooleanOptions, m as PolygonInput, n as PolygonOperand, o as PolygonPiece, p as PolygonToPathOptions, q as PolygonWithHoles, R as RectShape, r as RegularPolygonShape, s as SHAPE_KINDS, t as ShapeKind, u as ShapePaint, v as ShapeRenderData, w as StarShape, x as arcToCubics, y as bezierPathBounds, z as bezierPathLength, D as bezierPathPointAtLength, H as bezierPathSignedArea, I as bezierPathToSvg, J as closeContour, K as contourSignedArea, L as contoursToPath, N as countPathSegments, O as distanceToBezierPath, Q as dividePolygons, T as flattenSvgPath, U as formatNumber, V as getShapeRenderData, W as getShapeSvg, X as intersectPolygons, Y as isShapeDescription, Z as multiPolygonArea, _ as multiPolygonBounds, $ as parseSvgPath, a0 as pathToContours, a1 as pointInBezierPath, a2 as pointInMultiPolygon, a3 as pointInRings, a4 as polygonArea, a5 as polygonBoolean, a6 as polygonToSvgPath, a7 as ringSignedArea, a8 as segmentBounds, a9 as segmentCurvature, aa as segmentDerivative, ab as segmentExtrema, ac as segmentLength, ad as segmentNearest, ae as segmentParamAtLength, af as segmentPoint, ag as segmentTangent, ah as shapeToPolygon, ai as simplifyRing, aj as splitSegment, ak as subSegment, al as subtractPolygons, am as toBezierPath, an as transformBezierPath, ao as trimSegments, ap as unionPolygons, aq as windingNumber, ar as xorPolygons } from '../bezier-
|
|
10
|
-
import { S as StrokeJoin, a as StrokeCap } from '../pathfinder-
|
|
11
|
-
export { D as DashedPath, d as DividePathsResult, O as OffsetPathOptions, e as OutlineStrokeOptions, f as PATHFINDER_OPERATIONS, g as PathBooleanOperation, h as PathBooleanResult, i as PathOperand, j as PathOperandInput, k as PathOpsError, l as PathOpsOptions, m as PathOpsReport, n as PathPiece, o as PathSelectResult, b as PathfinderOperation, p as PathfinderPiece, q as PathfinderResult, c as PathfinderShape, r as PlanarChain, s as PlanarFace, t as PlanarInput, P as PlanarMap, u as PlanarMapOptions, v as PlanarSplitEdge, w as PlanarSplitResult, x as SegmentIntersection, y as bezierPathArea, z as contourEnclosesArea, A as cutOutPiece, B as dashContours, C as dividePaths, E as excludePaths, F as interiorPoint, G as intersectPaths, H as normalizeBezierPath, I as offsetPath, J as outlineStroke, K as pathBoolean, L as pathBooleanSelect, M as pathfinder, N as planarSplit, Q as segmentIntersections, R as strokeOutlineRings, T as subtractPaths, U as unitePaths } from '../pathfinder-
|
|
8
|
+
import { S as ShapeDescription, B as BezierPath, b as PolygonFillRule, e as PolygonRing, f as ShapeSize, a as BezierPathInput, g as PathShape, C as CanvasShapeEffect } from '../bezier-CdoGygwG.cjs';
|
|
9
|
+
export { A as AffineMatrix, h as BezierCommand, d as BezierContour, i as BezierPathToSvgOptions, c as BezierSegment, E as EllipseShape, F as FlattenOptions, G as GetShapeRenderDataOptions, M as MultiPolygon, j as PathCommand, k as PathPointAtLength, P as PolygonBooleanOperation, l as PolygonBooleanOptions, m as PolygonInput, n as PolygonOperand, o as PolygonPiece, p as PolygonToPathOptions, q as PolygonWithHoles, R as RectShape, r as RegularPolygonShape, s as SHAPE_KINDS, t as ShapeKind, u as ShapePaint, v as ShapeRenderData, w as StarShape, x as arcToCubics, y as bezierPathBounds, z as bezierPathLength, D as bezierPathPointAtLength, H as bezierPathSignedArea, I as bezierPathToSvg, J as closeContour, K as contourSignedArea, L as contoursToPath, N as countPathSegments, O as distanceToBezierPath, Q as dividePolygons, T as flattenSvgPath, U as formatNumber, V as getShapeRenderData, W as getShapeSvg, X as intersectPolygons, Y as isShapeDescription, Z as multiPolygonArea, _ as multiPolygonBounds, $ as parseSvgPath, a0 as pathToContours, a1 as pointInBezierPath, a2 as pointInMultiPolygon, a3 as pointInRings, a4 as polygonArea, a5 as polygonBoolean, a6 as polygonToSvgPath, a7 as ringSignedArea, a8 as segmentBounds, a9 as segmentCurvature, aa as segmentDerivative, ab as segmentExtrema, ac as segmentLength, ad as segmentNearest, ae as segmentParamAtLength, af as segmentPoint, ag as segmentTangent, ah as shapeToPolygon, ai as simplifyRing, aj as splitSegment, ak as subSegment, al as subtractPolygons, am as toBezierPath, an as transformBezierPath, ao as trimSegments, ap as unionPolygons, aq as windingNumber, ar as xorPolygons } from '../bezier-CdoGygwG.cjs';
|
|
10
|
+
import { S as StrokeJoin, a as StrokeCap } from '../pathfinder-CKfKOVP4.cjs';
|
|
11
|
+
export { D as DashedPath, d as DividePathsResult, O as OffsetPathOptions, e as OutlineStrokeOptions, f as PATHFINDER_OPERATIONS, g as PathBooleanOperation, h as PathBooleanResult, i as PathOperand, j as PathOperandInput, k as PathOpsError, l as PathOpsOptions, m as PathOpsReport, n as PathPiece, o as PathSelectResult, b as PathfinderOperation, p as PathfinderPiece, q as PathfinderResult, c as PathfinderShape, r as PlanarChain, s as PlanarFace, t as PlanarInput, P as PlanarMap, u as PlanarMapOptions, v as PlanarSplitEdge, w as PlanarSplitResult, x as SegmentIntersection, y as bezierPathArea, z as contourEnclosesArea, A as cutOutPiece, B as dashContours, C as dividePaths, E as excludePaths, F as interiorPoint, G as intersectPaths, H as normalizeBezierPath, I as offsetPath, J as outlineStroke, K as pathBoolean, L as pathBooleanSelect, M as pathfinder, N as planarSplit, Q as segmentIntersections, R as strokeOutlineRings, T as subtractPaths, U as unitePaths } from '../pathfinder-CKfKOVP4.cjs';
|
|
12
12
|
import { d as TokenModeContext, r as TokenType, o as TokenScope, f as TokenLiteral, c as TokenVariable, e as TokenResolution, T as TokenState } from '../model-C1zApQM8.cjs';
|
|
13
13
|
import { b as AnimationEasing } from '../easing-lM0Xo9Ni.cjs';
|
|
14
14
|
export { A as ANIMATION_EASING_LABELS, a as ANIMATION_EASING_PRESETS, c as AnimationEasingPreset, C as CUBIC_BEZIER_PRESETS, d as CubicBezierEasing, E as ElasticEasing, S as SPRING_PRESETS, e as SpringEasing, f as cubicBezierAt, g as easingFromInfluence, h as easingLabel, i as easingToCss, j as elasticAt, k as evaluateEasing, l as isAnimationEasing, p as parseCssEasing, r as resolveEasing, m as reverseCubicBezier, s as springAt, n as springSettleMs } from '../easing-lM0Xo9Ni.cjs';
|
|
15
15
|
export { O as OklabColor, f as formatOklab, m as mixColorsOklab, o as oklabToRgb, p as parseOklab, r as rgbToOklab } from '../color-E9pwm--w.cjs';
|
|
16
16
|
import { e as AnimationValueType, d as AnimationValue, c as AnimationTrack, b as AnimationLoopMode } from '../evaluate-BsxYieLN.cjs';
|
|
17
17
|
export { A as ANIMATION_TIME_EPSILON, a as AnimationKeyframe, h as evaluateTrack, j as interpolateAnimationValue, k as isAnimationKeyframe, n as normalizeKeyframes, w as wrapAnimationTime } from '../evaluate-BsxYieLN.cjs';
|
|
18
|
-
import { C as CanvasGradientDef, E as EffectProvider, v as EffectsSlot, e as EffectValue, b as EffectPixels } from '../helpers-
|
|
19
|
-
export { cM as CANVAS_GRADIENT_PRESETS, cN as CanvasLinearGradient, cO as CanvasRadialGradient, cP as GradientStop, cQ as PIXERATE_BRAND_GRADIENT, S as SvgGradientDef, cR as SvgGradientStop, cS as angleToSvgLinearCoords, cT as gradientToSvgDef, cU as isCanvasGradient, cV as parseCssGradient, cW as resolveCanvasGradient } from '../helpers-
|
|
18
|
+
import { C as CanvasGradientDef, E as EffectProvider, v as EffectsSlot, e as EffectValue, b as EffectPixels } from '../helpers-CzZu51eI.cjs';
|
|
19
|
+
export { cM as CANVAS_GRADIENT_PRESETS, cN as CanvasLinearGradient, cO as CanvasRadialGradient, cP as GradientStop, cQ as PIXERATE_BRAND_GRADIENT, S as SvgGradientDef, cR as SvgGradientStop, cS as angleToSvgLinearCoords, cT as gradientToSvgDef, cU as isCanvasGradient, cV as parseCssGradient, cW as resolveCanvasGradient } from '../helpers-CzZu51eI.cjs';
|
|
20
20
|
import { P as Point$1, G as GraphNode, D as DiagramFamily, a as DiagramGraph, b as DiagramMeta, c as GraphGroup, d as GraphEdge, E as EdgePattern, A as ArrowHead, M as MermaidDocument, e as EditOp } from '../types-DYkjhzdz.cjs';
|
|
21
21
|
import { a as CapturedImage, g as CaptureToolProviderOptions, b as CaptureSurface } from '../capture-DFEMFmVt.cjs';
|
|
22
22
|
import { R as RasterizeElementOptions } from '../dom-capture-GyYuE-zq.cjs';
|
|
23
23
|
import { a as AgentToolProvider } from '../registry-BqA1AZt0.cjs';
|
|
24
|
-
import { E as EffectRendererPool } from '../pool-
|
|
24
|
+
import { E as EffectRendererPool } from '../pool-DKic69LD.cjs';
|
|
25
25
|
export { b as brushstrokeScaleBucket } from '../brushstroke-scale-B6XAdPSY.cjs';
|
|
26
26
|
import { n as ChartSpec } from '../types-BRp-6zkY.cjs';
|
|
27
27
|
import '../schema-Di0CS6Pe.cjs';
|
package/dist/canvas/index.d.ts
CHANGED
|
@@ -5,23 +5,23 @@ export { a as AnimationPlayerOptions, M as ManualClock, c as createAnimationPlay
|
|
|
5
5
|
import { b as CanvasNodeUpdate, N as NodeRectOptions, A as AlignEdge, c as AlignNodesOptions, D as DistributeAxis, a as DistributeMode, d as DistributeNodesOptions, S as SizeDimension, M as MatchSizeOptions, Z as ZOrderOperation, C as CanvasArrangeAction } from '../arrange-BUREmgD9.js';
|
|
6
6
|
export { e as ArrangeShortcutBinding, f as DEFAULT_ARRANGE_SHORTCUTS, L as LOCKED_DATA_KEY, g as LOCKED_PREVIOUS_FLAGS_KEY, h as alignNodes, i as applyNodeUpdates, j as createNodeLookup, k as distributeNodes, l as getAbsolutePosition, m as getNodeRect, n as getNodeSize, o as invertNodeUpdates, p as isLocked, q as lockNodes, r as matchArrangeShortcut, s as matchSize, t as readStyleSize, u as reorderNodes, v as toggleLockNodes, w as unlockNodes, x as withStyleSize } from '../arrange-BUREmgD9.js';
|
|
7
7
|
import { C as Command, M as MergedExecutionOptions } from '../types-DsiXGmjo.js';
|
|
8
|
-
import { S as ShapeDescription, B as BezierPath, b as PolygonFillRule, e as PolygonRing, f as ShapeSize, a as BezierPathInput, g as PathShape, C as CanvasShapeEffect } from '../bezier-
|
|
9
|
-
export { A as AffineMatrix, h as BezierCommand, d as BezierContour, i as BezierPathToSvgOptions, c as BezierSegment, E as EllipseShape, F as FlattenOptions, G as GetShapeRenderDataOptions, M as MultiPolygon, j as PathCommand, k as PathPointAtLength, P as PolygonBooleanOperation, l as PolygonBooleanOptions, m as PolygonInput, n as PolygonOperand, o as PolygonPiece, p as PolygonToPathOptions, q as PolygonWithHoles, R as RectShape, r as RegularPolygonShape, s as SHAPE_KINDS, t as ShapeKind, u as ShapePaint, v as ShapeRenderData, w as StarShape, x as arcToCubics, y as bezierPathBounds, z as bezierPathLength, D as bezierPathPointAtLength, H as bezierPathSignedArea, I as bezierPathToSvg, J as closeContour, K as contourSignedArea, L as contoursToPath, N as countPathSegments, O as distanceToBezierPath, Q as dividePolygons, T as flattenSvgPath, U as formatNumber, V as getShapeRenderData, W as getShapeSvg, X as intersectPolygons, Y as isShapeDescription, Z as multiPolygonArea, _ as multiPolygonBounds, $ as parseSvgPath, a0 as pathToContours, a1 as pointInBezierPath, a2 as pointInMultiPolygon, a3 as pointInRings, a4 as polygonArea, a5 as polygonBoolean, a6 as polygonToSvgPath, a7 as ringSignedArea, a8 as segmentBounds, a9 as segmentCurvature, aa as segmentDerivative, ab as segmentExtrema, ac as segmentLength, ad as segmentNearest, ae as segmentParamAtLength, af as segmentPoint, ag as segmentTangent, ah as shapeToPolygon, ai as simplifyRing, aj as splitSegment, ak as subSegment, al as subtractPolygons, am as toBezierPath, an as transformBezierPath, ao as trimSegments, ap as unionPolygons, aq as windingNumber, ar as xorPolygons } from '../bezier-
|
|
10
|
-
import { S as StrokeJoin, a as StrokeCap } from '../pathfinder-
|
|
11
|
-
export { D as DashedPath, d as DividePathsResult, O as OffsetPathOptions, e as OutlineStrokeOptions, f as PATHFINDER_OPERATIONS, g as PathBooleanOperation, h as PathBooleanResult, i as PathOperand, j as PathOperandInput, k as PathOpsError, l as PathOpsOptions, m as PathOpsReport, n as PathPiece, o as PathSelectResult, b as PathfinderOperation, p as PathfinderPiece, q as PathfinderResult, c as PathfinderShape, r as PlanarChain, s as PlanarFace, t as PlanarInput, P as PlanarMap, u as PlanarMapOptions, v as PlanarSplitEdge, w as PlanarSplitResult, x as SegmentIntersection, y as bezierPathArea, z as contourEnclosesArea, A as cutOutPiece, B as dashContours, C as dividePaths, E as excludePaths, F as interiorPoint, G as intersectPaths, H as normalizeBezierPath, I as offsetPath, J as outlineStroke, K as pathBoolean, L as pathBooleanSelect, M as pathfinder, N as planarSplit, Q as segmentIntersections, R as strokeOutlineRings, T as subtractPaths, U as unitePaths } from '../pathfinder-
|
|
8
|
+
import { S as ShapeDescription, B as BezierPath, b as PolygonFillRule, e as PolygonRing, f as ShapeSize, a as BezierPathInput, g as PathShape, C as CanvasShapeEffect } from '../bezier-CigmusV_.js';
|
|
9
|
+
export { A as AffineMatrix, h as BezierCommand, d as BezierContour, i as BezierPathToSvgOptions, c as BezierSegment, E as EllipseShape, F as FlattenOptions, G as GetShapeRenderDataOptions, M as MultiPolygon, j as PathCommand, k as PathPointAtLength, P as PolygonBooleanOperation, l as PolygonBooleanOptions, m as PolygonInput, n as PolygonOperand, o as PolygonPiece, p as PolygonToPathOptions, q as PolygonWithHoles, R as RectShape, r as RegularPolygonShape, s as SHAPE_KINDS, t as ShapeKind, u as ShapePaint, v as ShapeRenderData, w as StarShape, x as arcToCubics, y as bezierPathBounds, z as bezierPathLength, D as bezierPathPointAtLength, H as bezierPathSignedArea, I as bezierPathToSvg, J as closeContour, K as contourSignedArea, L as contoursToPath, N as countPathSegments, O as distanceToBezierPath, Q as dividePolygons, T as flattenSvgPath, U as formatNumber, V as getShapeRenderData, W as getShapeSvg, X as intersectPolygons, Y as isShapeDescription, Z as multiPolygonArea, _ as multiPolygonBounds, $ as parseSvgPath, a0 as pathToContours, a1 as pointInBezierPath, a2 as pointInMultiPolygon, a3 as pointInRings, a4 as polygonArea, a5 as polygonBoolean, a6 as polygonToSvgPath, a7 as ringSignedArea, a8 as segmentBounds, a9 as segmentCurvature, aa as segmentDerivative, ab as segmentExtrema, ac as segmentLength, ad as segmentNearest, ae as segmentParamAtLength, af as segmentPoint, ag as segmentTangent, ah as shapeToPolygon, ai as simplifyRing, aj as splitSegment, ak as subSegment, al as subtractPolygons, am as toBezierPath, an as transformBezierPath, ao as trimSegments, ap as unionPolygons, aq as windingNumber, ar as xorPolygons } from '../bezier-CigmusV_.js';
|
|
10
|
+
import { S as StrokeJoin, a as StrokeCap } from '../pathfinder-Dlss70hL.js';
|
|
11
|
+
export { D as DashedPath, d as DividePathsResult, O as OffsetPathOptions, e as OutlineStrokeOptions, f as PATHFINDER_OPERATIONS, g as PathBooleanOperation, h as PathBooleanResult, i as PathOperand, j as PathOperandInput, k as PathOpsError, l as PathOpsOptions, m as PathOpsReport, n as PathPiece, o as PathSelectResult, b as PathfinderOperation, p as PathfinderPiece, q as PathfinderResult, c as PathfinderShape, r as PlanarChain, s as PlanarFace, t as PlanarInput, P as PlanarMap, u as PlanarMapOptions, v as PlanarSplitEdge, w as PlanarSplitResult, x as SegmentIntersection, y as bezierPathArea, z as contourEnclosesArea, A as cutOutPiece, B as dashContours, C as dividePaths, E as excludePaths, F as interiorPoint, G as intersectPaths, H as normalizeBezierPath, I as offsetPath, J as outlineStroke, K as pathBoolean, L as pathBooleanSelect, M as pathfinder, N as planarSplit, Q as segmentIntersections, R as strokeOutlineRings, T as subtractPaths, U as unitePaths } from '../pathfinder-Dlss70hL.js';
|
|
12
12
|
import { d as TokenModeContext, r as TokenType, o as TokenScope, f as TokenLiteral, c as TokenVariable, e as TokenResolution, T as TokenState } from '../model-C1zApQM8.js';
|
|
13
13
|
import { b as AnimationEasing } from '../easing-lM0Xo9Ni.js';
|
|
14
14
|
export { A as ANIMATION_EASING_LABELS, a as ANIMATION_EASING_PRESETS, c as AnimationEasingPreset, C as CUBIC_BEZIER_PRESETS, d as CubicBezierEasing, E as ElasticEasing, S as SPRING_PRESETS, e as SpringEasing, f as cubicBezierAt, g as easingFromInfluence, h as easingLabel, i as easingToCss, j as elasticAt, k as evaluateEasing, l as isAnimationEasing, p as parseCssEasing, r as resolveEasing, m as reverseCubicBezier, s as springAt, n as springSettleMs } from '../easing-lM0Xo9Ni.js';
|
|
15
15
|
export { O as OklabColor, f as formatOklab, m as mixColorsOklab, o as oklabToRgb, p as parseOklab, r as rgbToOklab } from '../color-E9pwm--w.js';
|
|
16
16
|
import { e as AnimationValueType, d as AnimationValue, c as AnimationTrack, b as AnimationLoopMode } from '../evaluate-BbCeF6pt.js';
|
|
17
17
|
export { A as ANIMATION_TIME_EPSILON, a as AnimationKeyframe, h as evaluateTrack, j as interpolateAnimationValue, k as isAnimationKeyframe, n as normalizeKeyframes, w as wrapAnimationTime } from '../evaluate-BbCeF6pt.js';
|
|
18
|
-
import { C as CanvasGradientDef, E as EffectProvider, v as EffectsSlot, e as EffectValue, b as EffectPixels } from '../helpers-
|
|
19
|
-
export { cM as CANVAS_GRADIENT_PRESETS, cN as CanvasLinearGradient, cO as CanvasRadialGradient, cP as GradientStop, cQ as PIXERATE_BRAND_GRADIENT, S as SvgGradientDef, cR as SvgGradientStop, cS as angleToSvgLinearCoords, cT as gradientToSvgDef, cU as isCanvasGradient, cV as parseCssGradient, cW as resolveCanvasGradient } from '../helpers-
|
|
18
|
+
import { C as CanvasGradientDef, E as EffectProvider, v as EffectsSlot, e as EffectValue, b as EffectPixels } from '../helpers-X_rycLNJ.js';
|
|
19
|
+
export { cM as CANVAS_GRADIENT_PRESETS, cN as CanvasLinearGradient, cO as CanvasRadialGradient, cP as GradientStop, cQ as PIXERATE_BRAND_GRADIENT, S as SvgGradientDef, cR as SvgGradientStop, cS as angleToSvgLinearCoords, cT as gradientToSvgDef, cU as isCanvasGradient, cV as parseCssGradient, cW as resolveCanvasGradient } from '../helpers-X_rycLNJ.js';
|
|
20
20
|
import { P as Point$1, G as GraphNode, D as DiagramFamily, a as DiagramGraph, b as DiagramMeta, c as GraphGroup, d as GraphEdge, E as EdgePattern, A as ArrowHead, M as MermaidDocument, e as EditOp } from '../types-DYkjhzdz.js';
|
|
21
21
|
import { a as CapturedImage, g as CaptureToolProviderOptions, b as CaptureSurface } from '../capture-wwNGaW05.js';
|
|
22
22
|
import { R as RasterizeElementOptions } from '../dom-capture-7Wvf6Tyg.js';
|
|
23
23
|
import { a as AgentToolProvider } from '../registry-D-4fit9C.js';
|
|
24
|
-
import { E as EffectRendererPool } from '../pool-
|
|
24
|
+
import { E as EffectRendererPool } from '../pool-DDOo0xJH.js';
|
|
25
25
|
export { b as brushstrokeScaleBucket } from '../brushstroke-scale-B6XAdPSY.js';
|
|
26
26
|
import { n as ChartSpec } from '../types-BRp-6zkY.js';
|
|
27
27
|
import '../schema-Di0CS6Pe.js';
|