@inditextech/weave-sdk 1.0.3 → 1.1.0

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/sdk.js CHANGED
@@ -15010,6 +15010,10 @@ var require_lodash = __commonJS({ "../../node_modules/lodash/lodash.js"(exports,
15010
15010
  } });
15011
15011
  var import_lodash = __toESM(require_lodash(), 1);
15012
15012
 
15013
+ //#endregion
15014
+ //#region src/yjs.ts
15015
+ var yjs_default = Y;
15016
+
15013
15017
  //#endregion
15014
15018
  //#region src/stores/store.ts
15015
15019
  var WeaveStore = class {
@@ -15056,7 +15060,7 @@ var WeaveStore = class {
15056
15060
  }
15057
15061
  getStateSnapshot() {
15058
15062
  const doc = this.getDocument();
15059
- return Y.encodeStateAsUpdate(doc);
15063
+ return yjs_default.encodeStateAsUpdate(doc);
15060
15064
  }
15061
15065
  setup() {
15062
15066
  this.isRoomLoaded = false;
@@ -15067,7 +15071,7 @@ var WeaveStore = class {
15067
15071
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
15068
15072
  );
15069
15073
  if (weaveStateValues) {
15070
- this.undoManager = new Y.UndoManager([weaveStateValues], {
15074
+ this.undoManager = new yjs_default.UndoManager([weaveStateValues], {
15071
15075
  captureTimeout: 250,
15072
15076
  trackedOrigins: new Set([this.config.getUser().id]),
15073
15077
  ...this.config?.undoManagerOptions
@@ -21632,7 +21636,7 @@ var WeaveRegisterManager = class {
21632
21636
 
21633
21637
  //#endregion
21634
21638
  //#region package.json
21635
- var version = "1.0.3";
21639
+ var version = "1.1.0";
21636
21640
 
21637
21641
  //#endregion
21638
21642
  //#region src/managers/setup.ts
@@ -23889,7 +23893,6 @@ var WeaveImageNode = class extends WeaveNode {
23889
23893
  this.lastTapTime = 0;
23890
23894
  this.config = mergeExceptArrays(WEAVE_IMAGE_DEFAULT_CONFIG, config);
23891
23895
  this.imageCrop = null;
23892
- this.imageLoaded = false;
23893
23896
  }
23894
23897
  triggerCrop(imageNode) {
23895
23898
  const stage = this.instance.getStage();
@@ -23950,7 +23953,9 @@ var WeaveImageNode = class extends WeaveNode {
23950
23953
  ...groupImageProps,
23951
23954
  ...internalImageProps,
23952
23955
  id,
23953
- name: "node"
23956
+ name: "node",
23957
+ loadedImage: false,
23958
+ loadedImageError: false
23954
23959
  });
23955
23960
  this.setupDefaultNodeAugmentation(image);
23956
23961
  image.movedToContainer = () => {
@@ -24029,7 +24034,7 @@ var WeaveImageNode = class extends WeaveNode {
24029
24034
  image.add(cropGroup);
24030
24035
  this.setupDefaultNodeEvents(image);
24031
24036
  image.dblClick = () => {
24032
- this.config.onDblClick?.(this, image);
24037
+ if (this.imageState[id]?.loaded && !this.imageState[id]?.error) this.config.onDblClick?.(this, image);
24033
24038
  };
24034
24039
  if (this.imageSource[id]) {
24035
24040
  imagePlaceholder.destroy();
@@ -24039,7 +24044,7 @@ var WeaveImageNode = class extends WeaveNode {
24039
24044
  image: this.imageSource[id],
24040
24045
  visible: true
24041
24046
  });
24042
- this.imageLoaded = true;
24047
+ image.setAttr("width", this.imageSource[id].width);
24043
24048
  image.setAttr("width", this.imageSource[id].width);
24044
24049
  image.setAttr("height", this.imageSource[id].height);
24045
24050
  image.setAttr("cropInfo", props.cropInfo ?? void 0);
@@ -24071,7 +24076,41 @@ var WeaveImageNode = class extends WeaveNode {
24071
24076
  delete internalImageProps.imageProperties;
24072
24077
  delete internalImageProps.imageURL;
24073
24078
  delete internalImageProps.zIndex;
24074
- if (!this.imageLoaded) {
24079
+ if (!this.imageState[id ?? ""]?.loaded) {
24080
+ imagePlaceholder?.setAttrs({
24081
+ ...internalImageProps,
24082
+ ...nodeAttrs.imageProperties ?? {},
24083
+ name: void 0,
24084
+ id: `${id}-placeholder`,
24085
+ nodeId: id,
24086
+ x: 0,
24087
+ y: 0,
24088
+ scaleX: 1,
24089
+ scaleY: 1,
24090
+ rotation: 0,
24091
+ visible: true,
24092
+ fill: "#ccccccff",
24093
+ strokeWidth: 0,
24094
+ draggable: false,
24095
+ zIndex: 0
24096
+ });
24097
+ internalImage?.setAttrs({
24098
+ ...internalImageProps,
24099
+ ...nodeAttrs.imageProperties ?? {},
24100
+ name: void 0,
24101
+ id: `${id}-image`,
24102
+ nodeId: id,
24103
+ x: 0,
24104
+ y: 0,
24105
+ scaleX: 1,
24106
+ scaleY: 1,
24107
+ rotation: 0,
24108
+ visible: false,
24109
+ draggable: false,
24110
+ zIndex: 1
24111
+ });
24112
+ }
24113
+ if (this.imageState[id ?? ""]?.loaded && this.imageState[id ?? ""]?.error) {
24075
24114
  imagePlaceholder?.setAttrs({
24076
24115
  ...internalImageProps,
24077
24116
  ...nodeAttrs.imageProperties ?? {},
@@ -24094,6 +24133,7 @@ var WeaveImageNode = class extends WeaveNode {
24094
24133
  ...nodeAttrs.imageProperties ?? {},
24095
24134
  name: void 0,
24096
24135
  id: `${id}-image`,
24136
+ image: void 0,
24097
24137
  nodeId: id,
24098
24138
  x: 0,
24099
24139
  y: 0,
@@ -24105,7 +24145,7 @@ var WeaveImageNode = class extends WeaveNode {
24105
24145
  zIndex: 1
24106
24146
  });
24107
24147
  }
24108
- if (this.imageLoaded) {
24148
+ if (this.imageState[id ?? ""]?.loaded && !this.imageState[id ?? ""]?.error) {
24109
24149
  internalImage?.setAttrs({
24110
24150
  ...internalImageProps,
24111
24151
  ...nodeAttrs.imageProperties ?? {},
@@ -24133,6 +24173,8 @@ var WeaveImageNode = class extends WeaveNode {
24133
24173
  loaded: false,
24134
24174
  error: true
24135
24175
  };
24176
+ delete this.imageSource[imageId];
24177
+ delete this.imageState[imageId];
24136
24178
  onError(error);
24137
24179
  };
24138
24180
  this.imageSource[imageId].onload = () => {
@@ -24146,7 +24188,11 @@ var WeaveImageNode = class extends WeaveNode {
24146
24188
  loaded: false,
24147
24189
  error: false
24148
24190
  };
24149
- if (realImageURL) this.imageSource[imageId].src = realImageURL;
24191
+ try {
24192
+ if (realImageURL) this.imageSource[imageId].src = realImageURL;
24193
+ } catch (ex) {
24194
+ console.error(ex);
24195
+ }
24150
24196
  }
24151
24197
  loadImage(params, image) {
24152
24198
  const imageProps = params;
@@ -24174,11 +24220,6 @@ var WeaveImageNode = class extends WeaveNode {
24174
24220
  height: this.imageSource[id].height
24175
24221
  });
24176
24222
  internalImage.zIndex(0);
24177
- this.imageLoaded = true;
24178
- image.setAttrs({
24179
- width: imageProps.width ? imageProps.width : this.imageSource[id].width,
24180
- height: imageProps.height ? imageProps.height : this.imageSource[id].height
24181
- });
24182
24223
  image.setAttr("imageInfo", {
24183
24224
  width: this.imageSource[id].width,
24184
24225
  height: this.imageSource[id].height
@@ -24208,6 +24249,19 @@ var WeaveImageNode = class extends WeaveNode {
24208
24249
  loaded: false,
24209
24250
  error: true
24210
24251
  };
24252
+ image.setAttrs({
24253
+ image: void 0,
24254
+ width: 100,
24255
+ height: 100,
24256
+ imageInfo: {
24257
+ width: 100,
24258
+ height: 100
24259
+ },
24260
+ uncroppedImage: {
24261
+ width: 100,
24262
+ height: 100
24263
+ }
24264
+ });
24211
24265
  this.resolveAsyncElement(id);
24212
24266
  console.error("Error loading image", realImageURL, error);
24213
24267
  imagePlaceholder?.setAttrs({ visible: true });
@@ -24217,6 +24271,7 @@ var WeaveImageNode = class extends WeaveNode {
24217
24271
  }
24218
24272
  updatePlaceholderSize(image, imagePlaceholder) {
24219
24273
  const imageAttrs = image.getAttrs();
24274
+ if (!imageAttrs.loadedImage) return;
24220
24275
  if (!imageAttrs.adding && imageAttrs.cropInfo) {
24221
24276
  const actualScale = imageAttrs.uncroppedImage.width / imageAttrs.imageInfo.width;
24222
24277
  const cropScale = imageAttrs.cropInfo ? imageAttrs.cropInfo.scaleX : actualScale;
@@ -24233,6 +24288,7 @@ var WeaveImageNode = class extends WeaveNode {
24233
24288
  const stage = this.instance.getStage();
24234
24289
  const image = stage.findOne(`#${imageAttrs.id}`);
24235
24290
  const internalImage = image?.findOne(`#${imageAttrs.id}-image`);
24291
+ if (!imageAttrs.loadedImage) return;
24236
24292
  if (image && internalImage && !imageAttrs.adding && imageAttrs.cropInfo) {
24237
24293
  const actualScale = imageAttrs.uncroppedImage.width / imageAttrs.imageInfo.width;
24238
24294
  const cropScale = imageAttrs.cropInfo ? imageAttrs.cropInfo.scaleX : actualScale;