@pixldocs/canvas-renderer 0.5.443 → 0.5.444

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.
@@ -11679,6 +11679,13 @@ const applyTransformPreservingFlip = (obj, matrix) => {
11679
11679
  }
11680
11680
  obj.set({ scaleX: sx, scaleY: sy, flipX, flipY });
11681
11681
  };
11682
+ const restorePersistedFlipState = (obj, flipX, flipY) => {
11683
+ const sx = Math.abs(Number(obj.scaleX ?? 1)) || 1;
11684
+ const sy = Math.abs(Number(obj.scaleY ?? 1)) || 1;
11685
+ obj.set({ scaleX: sx, scaleY: sy, flipX, flipY });
11686
+ obj.setCoords();
11687
+ obj.dirty = true;
11688
+ };
11682
11689
  const toggleLogicalFlipInMatrix = (matrix, flipX, flipY) => {
11683
11690
  if (!flipX && !flipY) return matrix;
11684
11691
  const sx = flipX ? -1 : 1;
@@ -16735,14 +16742,15 @@ const PageCanvas = react.forwardRef(
16735
16742
  skipActiveSelectionBakeOnClearRef.current = true;
16736
16743
  try {
16737
16744
  for (const restore of activeSelectionFlipRestores) {
16738
- restore.obj.set({ flipX: restore.flipX, flipY: restore.flipY });
16739
- restore.obj.setCoords();
16740
- restore.obj.dirty = true;
16745
+ restorePersistedFlipState(restore.obj, restore.flipX, restore.flipY);
16741
16746
  }
16742
16747
  fabricCanvas.discardActiveObject();
16743
16748
  } finally {
16744
16749
  skipActiveSelectionBakeOnClearRef.current = false;
16745
16750
  }
16751
+ for (const restore of activeSelectionFlipRestores) {
16752
+ restorePersistedFlipState(restore.obj, restore.flipX, restore.flipY);
16753
+ }
16746
16754
  for (const bake of pendingCropGroupFrameBakes) {
16747
16755
  const ct = bake.obj.__cropData;
16748
16756
  if (!ct) continue;
@@ -25929,9 +25937,9 @@ function captureFabricCanvasSvgForPdf(fabricInstance, canvasWidth, canvasHeight)
25929
25937
  }
25930
25938
  return svgString;
25931
25939
  }
25932
- const resolvedPackageVersion = "0.5.443";
25940
+ const resolvedPackageVersion = "0.5.444";
25933
25941
  const PACKAGE_VERSION = resolvedPackageVersion;
25934
- const DEPLOYMENT_VERSION_MARKER = "__PIXLDOCS_CANVAS_RENDERER_VERSION__:0.5.443";
25942
+ const DEPLOYMENT_VERSION_MARKER = "__PIXLDOCS_CANVAS_RENDERER_VERSION__:0.5.444";
25935
25943
  const roundParityValue = (value) => {
25936
25944
  if (typeof value !== "number") return value;
25937
25945
  return Number.isFinite(value) ? Number(value.toFixed(3)) : value;
@@ -26745,7 +26753,7 @@ class PixldocsRenderer {
26745
26753
  await this.waitForCanvasScene(container, cloned, i);
26746
26754
  }
26747
26755
  console.log(`[canvas-renderer][pdf-unified] mounted ${cloned.pages.length} page(s), handing off to client exportMultiPagePdf`);
26748
- const { exportMultiPagePdf, preparePagesForExport } = await Promise.resolve().then(() => require("./vectorPdfExport-C6WM_grg.cjs"));
26756
+ const { exportMultiPagePdf, preparePagesForExport } = await Promise.resolve().then(() => require("./vectorPdfExport-Cy6iRFYd.cjs"));
26749
26757
  const prepared = preparePagesForExport(
26750
26758
  cloned.pages,
26751
26759
  canvasWidth,
@@ -29065,7 +29073,7 @@ async function prepareLiveCanvasSvgForPdf(rawSvg, pageWidth, pageHeight, pageKey
29065
29073
  if (options == null ? void 0 : options.stripPageBackground) stripRootPageBackgroundFromSvg(svgToDraw);
29066
29074
  sanitizeSvgTreeForPdf(svgToDraw);
29067
29075
  try {
29068
- const { bakeTextAnchorPositionsFromLiveSvg, logTextMeasurementDiagnostic } = await Promise.resolve().then(() => require("./vectorPdfExport-C6WM_grg.cjs"));
29076
+ const { bakeTextAnchorPositionsFromLiveSvg, logTextMeasurementDiagnostic } = await Promise.resolve().then(() => require("./vectorPdfExport-Cy6iRFYd.cjs"));
29069
29077
  try {
29070
29078
  await logTextMeasurementDiagnostic(svgToDraw);
29071
29079
  } catch {
@@ -29462,4 +29470,4 @@ exports.setAutoShrinkDebug = setAutoShrinkDebug;
29462
29470
  exports.setBundledAssetPrefixes = setBundledAssetPrefixes;
29463
29471
  exports.warmResolvedTemplateForPreview = warmResolvedTemplateForPreview;
29464
29472
  exports.warmTemplateFromForm = warmTemplateFromForm;
29465
- //# sourceMappingURL=index-BxmYD_or.cjs.map
29473
+ //# sourceMappingURL=index-DTJ_wDD-.cjs.map