@pixldocs/canvas-renderer 0.5.345 → 0.5.346
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{index-D4xGj5W4.cjs → index-C6VMQJMY.cjs} +56 -24
- package/dist/index-C6VMQJMY.cjs.map +1 -0
- package/dist/{index-wiw1EUl-.js → index-Jiw7-9ee.js} +56 -24
- package/dist/index-Jiw7-9ee.js.map +1 -0
- package/dist/index.cjs +1 -1
- package/dist/index.js +1 -1
- package/dist/{vectorPdfExport-rFbeCudV.js → vectorPdfExport-Bbi4foK-.js} +4 -4
- package/dist/{vectorPdfExport-rFbeCudV.js.map → vectorPdfExport-Bbi4foK-.js.map} +1 -1
- package/dist/{vectorPdfExport-Mhjrus5I.cjs → vectorPdfExport-DRpVTciP.cjs} +4 -4
- package/dist/{vectorPdfExport-Mhjrus5I.cjs.map → vectorPdfExport-DRpVTciP.cjs.map} +1 -1
- package/package.json +1 -1
- package/dist/index-D4xGj5W4.cjs.map +0 -1
- package/dist/index-wiw1EUl-.js.map +0 -1
|
@@ -12327,6 +12327,7 @@ const PageCanvas = forwardRef(
|
|
|
12327
12327
|
selectionLeft: rect.left,
|
|
12328
12328
|
selectionTop: rect.top
|
|
12329
12329
|
};
|
|
12330
|
+
prepareGroupSelectionTransformStart(active);
|
|
12330
12331
|
}
|
|
12331
12332
|
if (fabricCanvas._currentTransform) {
|
|
12332
12333
|
fabricCanvas.__isUserTransforming = true;
|
|
@@ -14462,7 +14463,7 @@ const PageCanvas = forwardRef(
|
|
|
14462
14463
|
});
|
|
14463
14464
|
let cropGroupSaveTimer = null;
|
|
14464
14465
|
fabricCanvas.on("object:modified", (e) => {
|
|
14465
|
-
var _a2, _b2, _c, _d, _e, _f, _g, _h, _i, _j, _k
|
|
14466
|
+
var _a2, _b2, _c, _d, _e, _f, _g, _h, _i, _j, _k;
|
|
14466
14467
|
try {
|
|
14467
14468
|
dragStarted = false;
|
|
14468
14469
|
setGuides([]);
|
|
@@ -14970,9 +14971,8 @@ const PageCanvas = forwardRef(
|
|
|
14970
14971
|
}
|
|
14971
14972
|
if (!isActiveSelectionSideResize && !hadScale && !hadRotation && (Math.abs(deltaX) > 0.1 || Math.abs(deltaY) > 0.1)) {
|
|
14972
14973
|
const { updateNode: updateNodeStore, commitHistory: commitHistoryStore, getCurrentElements } = useEditorStore.getState();
|
|
14973
|
-
const
|
|
14974
|
-
|
|
14975
|
-
updateNodeStore(groupToMove.id, { left: newLeft, top: newTop }, { recordHistory: false, skipLayoutRecalc: true });
|
|
14974
|
+
const storePos = absoluteToStorePosition(movedGroupLeft, movedGroupTop, groupToMove.id, pageChildren2);
|
|
14975
|
+
updateNodeStore(groupToMove.id, { left: storePos.left, top: storePos.top }, { recordHistory: false, skipLayoutRecalc: true });
|
|
14976
14976
|
commitHistoryStore();
|
|
14977
14977
|
pendingGroupDrillInRef.current = null;
|
|
14978
14978
|
fabricCanvas.__activeEditingGroupId = null;
|
|
@@ -15014,7 +15014,35 @@ const PageCanvas = forwardRef(
|
|
|
15014
15014
|
const pendingCropGroupFrameBakes = [];
|
|
15015
15015
|
const logicalGroupSelectionId = activeObj instanceof fabric.ActiveSelection ? activeObj.__pixldocsGroupSelection : void 0;
|
|
15016
15016
|
const isLogicalGroupAS = !!logicalGroupSelectionId && !(activeObj == null ? void 0 : activeObj.__cropGroup) && !(activeObj == null ? void 0 : activeObj.__docuforgeSectionGroup);
|
|
15017
|
-
const
|
|
15017
|
+
const logicalGroupNodeForBake = logicalGroupSelectionId ? findNodeById(pageChildren2, logicalGroupSelectionId) : null;
|
|
15018
|
+
const asAngleForBake = isLogicalGroupAS && activeObj ? normalizeAngle(Number((logicalGroupNodeForBake == null ? void 0 : logicalGroupNodeForBake.angle) ?? activeObj.angle ?? 0)) : 0;
|
|
15019
|
+
const logicalGroupFinalFrame = (() => {
|
|
15020
|
+
var _a3;
|
|
15021
|
+
if (!isLogicalGroupAS || !logicalGroupSelectionId || !(activeObj instanceof fabric.ActiveSelection)) return null;
|
|
15022
|
+
const baseline = ((_a3 = groupSelectionTransformStartRef.current) == null ? void 0 : _a3.groupId) === logicalGroupSelectionId ? groupSelectionTransformStartRef.current : null;
|
|
15023
|
+
const localWidth = Math.max(1, (activeObj.width ?? (baseline == null ? void 0 : baseline.groupWidth) ?? 1) * Math.abs(activeObj.scaleX ?? 1));
|
|
15024
|
+
const localHeight = Math.max(1, (activeObj.height ?? (baseline == null ? void 0 : baseline.groupHeight) ?? 1) * Math.abs(activeObj.scaleY ?? 1));
|
|
15025
|
+
const center = activeObj.getCenterPoint();
|
|
15026
|
+
return {
|
|
15027
|
+
groupId: logicalGroupSelectionId,
|
|
15028
|
+
left: center.x - localWidth / 2,
|
|
15029
|
+
top: center.y - localHeight / 2,
|
|
15030
|
+
width: localWidth,
|
|
15031
|
+
height: localHeight,
|
|
15032
|
+
centerX: center.x,
|
|
15033
|
+
centerY: center.y,
|
|
15034
|
+
angle: asAngleForBake,
|
|
15035
|
+
matrix: fabric.util.composeMatrix({
|
|
15036
|
+
translateX: center.x,
|
|
15037
|
+
translateY: center.y,
|
|
15038
|
+
angle: asAngleForBake,
|
|
15039
|
+
scaleX: 1,
|
|
15040
|
+
scaleY: 1,
|
|
15041
|
+
skewX: 0,
|
|
15042
|
+
skewY: 0
|
|
15043
|
+
})
|
|
15044
|
+
};
|
|
15045
|
+
})();
|
|
15018
15046
|
for (const obj of activeObjects) {
|
|
15019
15047
|
const objId = getObjectId(obj);
|
|
15020
15048
|
if (!objId || objId === "__background__") continue;
|
|
@@ -15458,7 +15486,18 @@ const PageCanvas = forwardRef(
|
|
|
15458
15486
|
const state = useEditorStore.getState();
|
|
15459
15487
|
const page = state.canvas.pages.find((p) => p.id === pageId);
|
|
15460
15488
|
const pageChildrenForSave = (page == null ? void 0 : page.children) ?? [];
|
|
15461
|
-
const storePos =
|
|
15489
|
+
const storePos = (logicalGroupFinalFrame == null ? void 0 : logicalGroupFinalFrame.groupId) === logicalGroupSelectionId ? (() => {
|
|
15490
|
+
const localCenter = fabric.util.transformPoint(
|
|
15491
|
+
new fabric.Point(decomposed.translateX ?? 0, decomposed.translateY ?? 0),
|
|
15492
|
+
fabric.util.invertTransform(logicalGroupFinalFrame.matrix)
|
|
15493
|
+
);
|
|
15494
|
+
const localAngle = finalAngleFromDecomposed ? ((Number(finalAngle ?? 0) - asAngleForBake) % 360 + 540) % 360 - 180 : Number(finalAngle ?? 0);
|
|
15495
|
+
const localAngleRad = localAngle * Math.PI / 180;
|
|
15496
|
+
return {
|
|
15497
|
+
left: localCenter.x - finalWidth / 2 * Math.cos(localAngleRad) + finalHeight / 2 * Math.sin(localAngleRad) + logicalGroupFinalFrame.width / 2,
|
|
15498
|
+
top: localCenter.y - finalWidth / 2 * Math.sin(localAngleRad) - finalHeight / 2 * Math.cos(localAngleRad) + logicalGroupFinalFrame.height / 2
|
|
15499
|
+
};
|
|
15500
|
+
})() : absoluteToStorePosition(absoluteLeft, absoluteTop, objId, pageChildrenForSave);
|
|
15462
15501
|
if (isLogicalGroupAS && finalAngleFromDecomposed && typeof finalAngle === "number") {
|
|
15463
15502
|
finalAngle = ((finalAngle - asAngleForBake) % 360 + 540) % 360 - 180;
|
|
15464
15503
|
}
|
|
@@ -15527,28 +15566,21 @@ const PageCanvas = forwardRef(
|
|
|
15527
15566
|
try {
|
|
15528
15567
|
const pageChildrenForGroup = ((_j = useEditorStore.getState().canvas.pages.find((p) => p.id === pageId)) == null ? void 0 : _j.children) ?? [];
|
|
15529
15568
|
const groupNode = findNodeById(pageChildrenForGroup, logicalGroupSelectionId);
|
|
15530
|
-
if (groupNode) {
|
|
15531
|
-
const
|
|
15532
|
-
const center = activeObj.getCenterPoint();
|
|
15533
|
-
const prevAbs = getAbsoluteBounds(groupNode, pageChildrenForGroup, pageBoundsOptions);
|
|
15534
|
-
const baseCenterX = (baseline == null ? void 0 : baseline.selectionCenterX) ?? prevAbs.left + prevAbs.width / 2;
|
|
15535
|
-
const baseCenterY = (baseline == null ? void 0 : baseline.selectionCenterY) ?? prevAbs.top + prevAbs.height / 2;
|
|
15536
|
-
const baseLeft = (baseline == null ? void 0 : baseline.groupLeft) ?? prevAbs.left;
|
|
15537
|
-
const baseTop = (baseline == null ? void 0 : baseline.groupTop) ?? prevAbs.top;
|
|
15538
|
-
const newAbsLeft = baseLeft + (center.x - baseCenterX);
|
|
15539
|
-
const newAbsTop = baseTop + (center.y - baseCenterY);
|
|
15540
|
-
const storePosGroup = absoluteToStorePosition(newAbsLeft, newAbsTop, logicalGroupSelectionId, pageChildrenForGroup);
|
|
15569
|
+
if (groupNode && logicalGroupFinalFrame) {
|
|
15570
|
+
const storePosGroup = absoluteToStorePosition(logicalGroupFinalFrame.left, logicalGroupFinalFrame.top, logicalGroupSelectionId, pageChildrenForGroup);
|
|
15541
15571
|
useEditorStore.getState().updateNode(logicalGroupSelectionId, {
|
|
15542
15572
|
left: storePosGroup.left,
|
|
15543
15573
|
top: storePosGroup.top,
|
|
15544
|
-
|
|
15574
|
+
width: logicalGroupFinalFrame.width,
|
|
15575
|
+
height: logicalGroupFinalFrame.height,
|
|
15576
|
+
angle: logicalGroupFinalFrame.angle
|
|
15545
15577
|
}, { recordHistory: false, skipLayoutRecalc: true });
|
|
15546
15578
|
}
|
|
15547
15579
|
} catch (err) {
|
|
15548
15580
|
console.warn("[Pixldocs] logical-group envelope persist failed", err);
|
|
15549
15581
|
}
|
|
15550
15582
|
}
|
|
15551
|
-
const pageChildrenForReflow = ((
|
|
15583
|
+
const pageChildrenForReflow = ((_k = useEditorStore.getState().canvas.pages.find((p) => p.id === pageId)) == null ? void 0 : _k.children) ?? [];
|
|
15552
15584
|
const stackGroupsToReflow = /* @__PURE__ */ new Set();
|
|
15553
15585
|
for (const id of modifiedIdsThisRound) {
|
|
15554
15586
|
const parent = findParentGroup(pageChildrenForReflow, id);
|
|
@@ -24689,9 +24721,9 @@ function captureFabricCanvasSvgForPdf(fabricInstance, canvasWidth, canvasHeight)
|
|
|
24689
24721
|
}
|
|
24690
24722
|
return svgString;
|
|
24691
24723
|
}
|
|
24692
|
-
const resolvedPackageVersion = "0.5.
|
|
24724
|
+
const resolvedPackageVersion = "0.5.346";
|
|
24693
24725
|
const PACKAGE_VERSION = resolvedPackageVersion;
|
|
24694
|
-
const DEPLOYMENT_VERSION_MARKER = "__PIXLDOCS_CANVAS_RENDERER_VERSION__:0.5.
|
|
24726
|
+
const DEPLOYMENT_VERSION_MARKER = "__PIXLDOCS_CANVAS_RENDERER_VERSION__:0.5.346";
|
|
24695
24727
|
const roundParityValue = (value) => {
|
|
24696
24728
|
if (typeof value !== "number") return value;
|
|
24697
24729
|
return Number.isFinite(value) ? Number(value.toFixed(3)) : value;
|
|
@@ -25505,7 +25537,7 @@ class PixldocsRenderer {
|
|
|
25505
25537
|
await this.waitForCanvasScene(container, cloned, i);
|
|
25506
25538
|
}
|
|
25507
25539
|
console.log(`[canvas-renderer][pdf-unified] mounted ${cloned.pages.length} page(s), handing off to client exportMultiPagePdf`);
|
|
25508
|
-
const { exportMultiPagePdf, preparePagesForExport } = await import("./vectorPdfExport-
|
|
25540
|
+
const { exportMultiPagePdf, preparePagesForExport } = await import("./vectorPdfExport-Bbi4foK-.js");
|
|
25509
25541
|
const prepared = preparePagesForExport(
|
|
25510
25542
|
cloned.pages,
|
|
25511
25543
|
canvasWidth,
|
|
@@ -27825,7 +27857,7 @@ async function prepareLiveCanvasSvgForPdf(rawSvg, pageWidth, pageHeight, pageKey
|
|
|
27825
27857
|
if (options == null ? void 0 : options.stripPageBackground) stripRootPageBackgroundFromSvg(svgToDraw);
|
|
27826
27858
|
sanitizeSvgTreeForPdf(svgToDraw);
|
|
27827
27859
|
try {
|
|
27828
|
-
const { bakeTextAnchorPositionsFromLiveSvg, logTextMeasurementDiagnostic } = await import("./vectorPdfExport-
|
|
27860
|
+
const { bakeTextAnchorPositionsFromLiveSvg, logTextMeasurementDiagnostic } = await import("./vectorPdfExport-Bbi4foK-.js");
|
|
27829
27861
|
try {
|
|
27830
27862
|
await logTextMeasurementDiagnostic(svgToDraw);
|
|
27831
27863
|
} catch {
|
|
@@ -28225,4 +28257,4 @@ export {
|
|
|
28225
28257
|
buildTeaserBlurFlatKeys as y,
|
|
28226
28258
|
collectFontDescriptorsFromConfig as z
|
|
28227
28259
|
};
|
|
28228
|
-
//# sourceMappingURL=index-
|
|
28260
|
+
//# sourceMappingURL=index-Jiw7-9ee.js.map
|