@tldraw/editor 3.8.0-canary.61db77736050 → 3.8.0-canary.80294e641ad6

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.
Files changed (56) hide show
  1. package/dist-cjs/index.d.ts +11 -104
  2. package/dist-cjs/index.js +1 -5
  3. package/dist-cjs/index.js.map +2 -2
  4. package/dist-cjs/lib/components/default-components/DefaultCanvas.js +4 -1
  5. package/dist-cjs/lib/components/default-components/DefaultCanvas.js.map +2 -2
  6. package/dist-cjs/lib/config/createTLStore.js +1 -1
  7. package/dist-cjs/lib/config/createTLStore.js.map +2 -2
  8. package/dist-cjs/lib/editor/Editor.js +4 -57
  9. package/dist-cjs/lib/editor/Editor.js.map +2 -2
  10. package/dist-cjs/lib/editor/types/SvgExportContext.js.map +2 -2
  11. package/dist-cjs/lib/editor/types/misc-types.js.map +1 -1
  12. package/dist-cjs/lib/exports/exportToSvg.js.map +2 -2
  13. package/dist-cjs/lib/exports/getSvgJsx.js +3 -16
  14. package/dist-cjs/lib/exports/getSvgJsx.js.map +2 -2
  15. package/dist-cjs/lib/utils/sync/TLLocalSyncClient.js +1 -3
  16. package/dist-cjs/lib/utils/sync/TLLocalSyncClient.js.map +2 -2
  17. package/dist-cjs/version.js +3 -3
  18. package/dist-cjs/version.js.map +1 -1
  19. package/dist-esm/index.d.mts +11 -104
  20. package/dist-esm/index.mjs +1 -5
  21. package/dist-esm/index.mjs.map +2 -2
  22. package/dist-esm/lib/components/default-components/DefaultCanvas.mjs +4 -1
  23. package/dist-esm/lib/components/default-components/DefaultCanvas.mjs.map +2 -2
  24. package/dist-esm/lib/config/createTLStore.mjs +1 -1
  25. package/dist-esm/lib/config/createTLStore.mjs.map +2 -2
  26. package/dist-esm/lib/editor/Editor.mjs +4 -57
  27. package/dist-esm/lib/editor/Editor.mjs.map +2 -2
  28. package/dist-esm/lib/editor/types/SvgExportContext.mjs.map +2 -2
  29. package/dist-esm/lib/exports/exportToSvg.mjs.map +2 -2
  30. package/dist-esm/lib/exports/getSvgJsx.mjs +3 -16
  31. package/dist-esm/lib/exports/getSvgJsx.mjs.map +2 -2
  32. package/dist-esm/lib/utils/sync/TLLocalSyncClient.mjs +1 -3
  33. package/dist-esm/lib/utils/sync/TLLocalSyncClient.mjs.map +2 -2
  34. package/dist-esm/version.mjs +3 -3
  35. package/dist-esm/version.mjs.map +1 -1
  36. package/package.json +7 -9
  37. package/src/index.ts +0 -4
  38. package/src/lib/components/default-components/DefaultCanvas.tsx +4 -1
  39. package/src/lib/config/createTLStore.ts +1 -1
  40. package/src/lib/editor/Editor.ts +9 -68
  41. package/src/lib/editor/types/SvgExportContext.tsx +0 -21
  42. package/src/lib/editor/types/misc-types.ts +2 -55
  43. package/src/lib/exports/exportToSvg.tsx +2 -2
  44. package/src/lib/exports/getSvgJsx.tsx +2 -17
  45. package/src/lib/utils/sync/TLLocalSyncClient.ts +1 -3
  46. package/src/version.ts +3 -3
  47. package/dist-cjs/lib/exports/getSvgAsImage.js +0 -83
  48. package/dist-cjs/lib/exports/getSvgAsImage.js.map +0 -7
  49. package/dist-cjs/lib/utils/browserCanvasMaxSize.js +0 -75
  50. package/dist-cjs/lib/utils/browserCanvasMaxSize.js.map +0 -7
  51. package/dist-esm/lib/exports/getSvgAsImage.mjs +0 -63
  52. package/dist-esm/lib/exports/getSvgAsImage.mjs.map +0 -7
  53. package/dist-esm/lib/utils/browserCanvasMaxSize.mjs +0 -45
  54. package/dist-esm/lib/utils/browserCanvasMaxSize.mjs.map +0 -7
  55. package/src/lib/exports/getSvgAsImage.ts +0 -92
  56. package/src/lib/utils/browserCanvasMaxSize.ts +0 -65
@@ -87,7 +87,6 @@ var import_defaultBindings = require("../config/defaultBindings");
87
87
  var import_defaultShapes = require("../config/defaultShapes");
88
88
  var import_constants = require("../constants");
89
89
  var import_exportToSvg = require("../exports/exportToSvg");
90
- var import_getSvgAsImage = require("../exports/getSvgAsImage");
91
90
  var import_environment = require("../globals/environment");
92
91
  var import_menus = require("../globals/menus");
93
92
  var import_time = require("../globals/time");
@@ -3166,14 +3165,11 @@ class Editor extends (_a = import_eventemitter3.default, _getIsShapeHiddenCache_
3166
3165
  if (!assetId) return null;
3167
3166
  const asset = this.getAsset(assetId);
3168
3167
  if (!asset) return null;
3169
- const {
3170
- screenScale = 1,
3171
- shouldResolveToOriginal = false,
3172
- dpr = this.getInstanceState().devicePixelRatio
3173
- } = context;
3168
+ const { screenScale = 1, shouldResolveToOriginal = false } = context;
3174
3169
  const zoomStepFunction = (zoom) => Math.pow(2, Math.ceil(Math.log2(zoom)));
3175
- const steppedScreenScale = zoomStepFunction(screenScale);
3170
+ const steppedScreenScale = Math.max(0.125, zoomStepFunction(screenScale));
3176
3171
  const networkEffectiveType = "connection" in navigator ? navigator.connection.effectiveType : null;
3172
+ const dpr = this.getInstanceState().devicePixelRatio;
3177
3173
  return await this.store.props.assets.resolve(asset, {
3178
3174
  screenScale: screenScale || 1,
3179
3175
  steppedScreenScale,
@@ -6291,7 +6287,7 @@ class Editor extends (_a = import_eventemitter3.default, _getIsShapeHiddenCache_
6291
6287
  * @public
6292
6288
  */
6293
6289
  async getSvgElement(shapes, opts = {}) {
6294
- const ids = shapes.length === 0 ? this.getCurrentPageShapeIdsSorted() : typeof shapes[0] === "string" ? shapes : shapes.map((s) => s.id);
6290
+ const ids = typeof shapes[0] === "string" ? shapes : shapes.map((s) => s.id);
6295
6291
  if (ids.length === 0) return void 0;
6296
6292
  return (0, import_exportToSvg.exportToSvg)(this, ids, opts);
6297
6293
  }
@@ -6321,55 +6317,6 @@ class Editor extends (_a = import_eventemitter3.default, _getIsShapeHiddenCache_
6321
6317
  if (!result) return void 0;
6322
6318
  return result.svg;
6323
6319
  }
6324
- /**
6325
- * Get an exported image of the given shapes.
6326
- *
6327
- * @param shapes - The shapes (or shape ids) to export.
6328
- * @param opts - Options for the export.
6329
- *
6330
- * @returns A blob of the image.
6331
- * @public
6332
- */
6333
- async toImage(shapes, opts = {}) {
6334
- const withDefaults = {
6335
- format: "png",
6336
- scale: 1,
6337
- pixelRatio: opts.format === "svg" ? void 0 : 2,
6338
- ...opts
6339
- };
6340
- const result = await this.getSvgString(shapes, withDefaults);
6341
- if (!result) throw new Error("Could not create SVG");
6342
- switch (withDefaults.format) {
6343
- case "svg":
6344
- return {
6345
- blob: new Blob([result.svg], { type: "text/plain" }),
6346
- width: result.width,
6347
- height: result.height
6348
- };
6349
- case "jpeg":
6350
- case "png":
6351
- case "webp": {
6352
- const blob = await (0, import_getSvgAsImage.getSvgAsImage)(result.svg, {
6353
- type: withDefaults.format,
6354
- quality: withDefaults.quality,
6355
- pixelRatio: withDefaults.pixelRatio,
6356
- width: result.width,
6357
- height: result.height
6358
- });
6359
- if (!blob) {
6360
- throw new Error("Could not construct image.");
6361
- }
6362
- return {
6363
- blob,
6364
- width: result.width,
6365
- height: result.height
6366
- };
6367
- }
6368
- default: {
6369
- (0, import_utils.exhaustiveSwitchError)(withDefaults.format);
6370
- }
6371
- }
6372
- }
6373
6320
  /**
6374
6321
  * Update the input points from a pointer, pinch, or wheel event.
6375
6322
  *