@pixldocs/canvas-renderer 0.5.364 → 0.5.365

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.
@@ -15906,13 +15906,23 @@ const PageCanvas = react.forwardRef(
15906
15906
  if (freshMembers.length > 1) {
15907
15907
  isSyncingSelectionToFabricRef.current = true;
15908
15908
  try {
15909
- const newSel = new fabric__namespace.ActiveSelection(freshMembers, { canvas: fc });
15910
- if (activeSelectionSnapshot.groupSelectionId) {
15911
- applyLogicalGroupSelectionVisualState(newSel, activeSelectionSnapshot.groupSelectionId);
15909
+ const prevAS = activeBeforeSync instanceof fabric__namespace.ActiveSelection ? activeBeforeSync : null;
15910
+ const prevMembers = prevAS ? prevAS.getObjects() : [];
15911
+ const sameMembers = !!prevAS && prevMembers.length === freshMembers.length && prevMembers.every((m) => freshMembers.includes(m));
15912
+ const alreadyAligned = sameMembers && prevAS.__pixldocsAlignedAngle != null;
15913
+ if (sameMembers && alreadyAligned) {
15914
+ fc.setActiveObject(prevAS);
15915
+ prevAS.setCoords();
15916
+ fc.requestRenderAll();
15917
+ } else {
15918
+ const newSel = new fabric__namespace.ActiveSelection(freshMembers, { canvas: fc });
15919
+ if (activeSelectionSnapshot.groupSelectionId) {
15920
+ applyLogicalGroupSelectionVisualState(newSel, activeSelectionSnapshot.groupSelectionId);
15921
+ }
15922
+ fc.setActiveObject(newSel);
15923
+ newSel.setCoords();
15924
+ fc.requestRenderAll();
15912
15925
  }
15913
- fc.setActiveObject(newSel);
15914
- newSel.setCoords();
15915
- fc.requestRenderAll();
15916
15926
  } finally {
15917
15927
  isSyncingSelectionToFabricRef.current = false;
15918
15928
  }
@@ -24607,9 +24617,9 @@ function captureFabricCanvasSvgForPdf(fabricInstance, canvasWidth, canvasHeight)
24607
24617
  }
24608
24618
  return svgString;
24609
24619
  }
24610
- const resolvedPackageVersion = "0.5.364";
24620
+ const resolvedPackageVersion = "0.5.365";
24611
24621
  const PACKAGE_VERSION = resolvedPackageVersion;
24612
- const DEPLOYMENT_VERSION_MARKER = "__PIXLDOCS_CANVAS_RENDERER_VERSION__:0.5.364";
24622
+ const DEPLOYMENT_VERSION_MARKER = "__PIXLDOCS_CANVAS_RENDERER_VERSION__:0.5.365";
24613
24623
  const roundParityValue = (value) => {
24614
24624
  if (typeof value !== "number") return value;
24615
24625
  return Number.isFinite(value) ? Number(value.toFixed(3)) : value;
@@ -25423,7 +25433,7 @@ class PixldocsRenderer {
25423
25433
  await this.waitForCanvasScene(container, cloned, i);
25424
25434
  }
25425
25435
  console.log(`[canvas-renderer][pdf-unified] mounted ${cloned.pages.length} page(s), handing off to client exportMultiPagePdf`);
25426
- const { exportMultiPagePdf, preparePagesForExport } = await Promise.resolve().then(() => require("./vectorPdfExport-Sn_yZjdL.cjs"));
25436
+ const { exportMultiPagePdf, preparePagesForExport } = await Promise.resolve().then(() => require("./vectorPdfExport-CJdDOe5F.cjs"));
25427
25437
  const prepared = preparePagesForExport(
25428
25438
  cloned.pages,
25429
25439
  canvasWidth,
@@ -27743,7 +27753,7 @@ async function prepareLiveCanvasSvgForPdf(rawSvg, pageWidth, pageHeight, pageKey
27743
27753
  if (options == null ? void 0 : options.stripPageBackground) stripRootPageBackgroundFromSvg(svgToDraw);
27744
27754
  sanitizeSvgTreeForPdf(svgToDraw);
27745
27755
  try {
27746
- const { bakeTextAnchorPositionsFromLiveSvg, logTextMeasurementDiagnostic } = await Promise.resolve().then(() => require("./vectorPdfExport-Sn_yZjdL.cjs"));
27756
+ const { bakeTextAnchorPositionsFromLiveSvg, logTextMeasurementDiagnostic } = await Promise.resolve().then(() => require("./vectorPdfExport-CJdDOe5F.cjs"));
27747
27757
  try {
27748
27758
  await logTextMeasurementDiagnostic(svgToDraw);
27749
27759
  } catch {
@@ -28140,4 +28150,4 @@ exports.setAutoShrinkDebug = setAutoShrinkDebug;
28140
28150
  exports.setBundledAssetPrefixes = setBundledAssetPrefixes;
28141
28151
  exports.warmResolvedTemplateForPreview = warmResolvedTemplateForPreview;
28142
28152
  exports.warmTemplateFromForm = warmTemplateFromForm;
28143
- //# sourceMappingURL=index-C1ijZRH6.cjs.map
28153
+ //# sourceMappingURL=index-BbKn-5c5.cjs.map