@pixldocs/canvas-renderer 0.5.439 → 0.5.440

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.
@@ -11645,6 +11645,22 @@ const bakeTextboxScaleIntoTypography = (obj, sourceElement) => {
11645
11645
  };
11646
11646
  return updates;
11647
11647
  };
11648
+ const applyTransformPreservingFlip = (obj, matrix) => {
11649
+ fabric.util.applyTransformToObject(obj, matrix);
11650
+ let sx = obj.scaleX ?? 1;
11651
+ let sy = obj.scaleY ?? 1;
11652
+ let flipX = false;
11653
+ let flipY = false;
11654
+ if (sx < 0) {
11655
+ flipX = true;
11656
+ sx = -sx;
11657
+ }
11658
+ if (sy < 0) {
11659
+ flipY = true;
11660
+ sy = -sy;
11661
+ }
11662
+ obj.set({ scaleX: sx, scaleY: sy, flipX, flipY });
11663
+ };
11648
11664
  function applyWarpAwareSelectionBorders(selection) {
11649
11665
  var _a2;
11650
11666
  if (selection.__pixldocsOrigASHasBorders !== void 0) {
@@ -11742,7 +11758,7 @@ function applyWarpAwareSelectionBorders(selection) {
11742
11758
  const savedLayout = k.layoutManager;
11743
11759
  try {
11744
11760
  if (savedLayout) k.layoutManager = void 0;
11745
- fabric.util.applyTransformToObject(k, localMatrix);
11761
+ applyTransformPreservingFlip(k, localMatrix);
11746
11762
  const decomposed = fabric.util.qrDecompose(
11747
11763
  localMatrix
11748
11764
  );
@@ -16775,7 +16791,7 @@ const PageCanvas = forwardRef(
16775
16791
  if (!objId || objId === "__background__") continue;
16776
16792
  const objOwnMatrix = obj.calcOwnMatrix();
16777
16793
  const absoluteMatrix = fabric.util.multiplyTransformMatrices(selectionMatrix, objOwnMatrix);
16778
- fabric.util.applyTransformToObject(obj, absoluteMatrix);
16794
+ applyTransformPreservingFlip(obj, absoluteMatrix);
16779
16795
  obj.setCoords();
16780
16796
  }
16781
16797
  });
@@ -25835,9 +25851,9 @@ function captureFabricCanvasSvgForPdf(fabricInstance, canvasWidth, canvasHeight)
25835
25851
  }
25836
25852
  return svgString;
25837
25853
  }
25838
- const resolvedPackageVersion = "0.5.439";
25854
+ const resolvedPackageVersion = "0.5.440";
25839
25855
  const PACKAGE_VERSION = resolvedPackageVersion;
25840
- const DEPLOYMENT_VERSION_MARKER = "__PIXLDOCS_CANVAS_RENDERER_VERSION__:0.5.439";
25856
+ const DEPLOYMENT_VERSION_MARKER = "__PIXLDOCS_CANVAS_RENDERER_VERSION__:0.5.440";
25841
25857
  const roundParityValue = (value) => {
25842
25858
  if (typeof value !== "number") return value;
25843
25859
  return Number.isFinite(value) ? Number(value.toFixed(3)) : value;
@@ -26651,7 +26667,7 @@ class PixldocsRenderer {
26651
26667
  await this.waitForCanvasScene(container, cloned, i);
26652
26668
  }
26653
26669
  console.log(`[canvas-renderer][pdf-unified] mounted ${cloned.pages.length} page(s), handing off to client exportMultiPagePdf`);
26654
- const { exportMultiPagePdf, preparePagesForExport } = await import("./vectorPdfExport-DNxCx3pQ.js");
26670
+ const { exportMultiPagePdf, preparePagesForExport } = await import("./vectorPdfExport-BkFH66cH.js");
26655
26671
  const prepared = preparePagesForExport(
26656
26672
  cloned.pages,
26657
26673
  canvasWidth,
@@ -28971,7 +28987,7 @@ async function prepareLiveCanvasSvgForPdf(rawSvg, pageWidth, pageHeight, pageKey
28971
28987
  if (options == null ? void 0 : options.stripPageBackground) stripRootPageBackgroundFromSvg(svgToDraw);
28972
28988
  sanitizeSvgTreeForPdf(svgToDraw);
28973
28989
  try {
28974
- const { bakeTextAnchorPositionsFromLiveSvg, logTextMeasurementDiagnostic } = await import("./vectorPdfExport-DNxCx3pQ.js");
28990
+ const { bakeTextAnchorPositionsFromLiveSvg, logTextMeasurementDiagnostic } = await import("./vectorPdfExport-BkFH66cH.js");
28975
28991
  try {
28976
28992
  await logTextMeasurementDiagnostic(svgToDraw);
28977
28993
  } catch {
@@ -29371,4 +29387,4 @@ export {
29371
29387
  buildTeaserBlurFlatKeys as y,
29372
29388
  collectFontDescriptorsFromConfig as z
29373
29389
  };
29374
- //# sourceMappingURL=index-C7_iudsO.js.map
29390
+ //# sourceMappingURL=index-H0u34DDY.js.map