@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.node.js CHANGED
@@ -15012,6 +15012,10 @@ var require_lodash = __commonJS({ "../../node_modules/lodash/lodash.js"(exports,
15012
15012
  } });
15013
15013
  var import_lodash = __toESM(require_lodash(), 1);
15014
15014
 
15015
+ //#endregion
15016
+ //#region src/yjs.ts
15017
+ var yjs_default = Y;
15018
+
15015
15019
  //#endregion
15016
15020
  //#region src/stores/store.ts
15017
15021
  var WeaveStore = class {
@@ -15058,7 +15062,7 @@ var WeaveStore = class {
15058
15062
  }
15059
15063
  getStateSnapshot() {
15060
15064
  const doc = this.getDocument();
15061
- return Y.encodeStateAsUpdate(doc);
15065
+ return yjs_default.encodeStateAsUpdate(doc);
15062
15066
  }
15063
15067
  setup() {
15064
15068
  this.isRoomLoaded = false;
@@ -15069,7 +15073,7 @@ var WeaveStore = class {
15069
15073
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
15070
15074
  );
15071
15075
  if (weaveStateValues) {
15072
- this.undoManager = new Y.UndoManager([weaveStateValues], {
15076
+ this.undoManager = new yjs_default.UndoManager([weaveStateValues], {
15073
15077
  captureTimeout: 250,
15074
15078
  trackedOrigins: new Set([this.config.getUser().id]),
15075
15079
  ...this.config?.undoManagerOptions
@@ -21634,7 +21638,7 @@ var WeaveRegisterManager = class {
21634
21638
 
21635
21639
  //#endregion
21636
21640
  //#region package.json
21637
- var version = "1.0.3";
21641
+ var version = "1.1.0";
21638
21642
 
21639
21643
  //#endregion
21640
21644
  //#region src/managers/setup.ts
@@ -23908,7 +23912,6 @@ var WeaveImageNode = class extends WeaveNode {
23908
23912
  this.lastTapTime = 0;
23909
23913
  this.config = mergeExceptArrays(WEAVE_IMAGE_DEFAULT_CONFIG, config);
23910
23914
  this.imageCrop = null;
23911
- this.imageLoaded = false;
23912
23915
  }
23913
23916
  triggerCrop(imageNode) {
23914
23917
  const stage = this.instance.getStage();
@@ -23969,7 +23972,9 @@ var WeaveImageNode = class extends WeaveNode {
23969
23972
  ...groupImageProps,
23970
23973
  ...internalImageProps,
23971
23974
  id,
23972
- name: "node"
23975
+ name: "node",
23976
+ loadedImage: false,
23977
+ loadedImageError: false
23973
23978
  });
23974
23979
  this.setupDefaultNodeAugmentation(image);
23975
23980
  image.movedToContainer = () => {
@@ -24048,7 +24053,7 @@ var WeaveImageNode = class extends WeaveNode {
24048
24053
  image.add(cropGroup);
24049
24054
  this.setupDefaultNodeEvents(image);
24050
24055
  image.dblClick = () => {
24051
- this.config.onDblClick?.(this, image);
24056
+ if (this.imageState[id]?.loaded && !this.imageState[id]?.error) this.config.onDblClick?.(this, image);
24052
24057
  };
24053
24058
  if (this.imageSource[id]) {
24054
24059
  imagePlaceholder.destroy();
@@ -24058,7 +24063,7 @@ var WeaveImageNode = class extends WeaveNode {
24058
24063
  image: this.imageSource[id],
24059
24064
  visible: true
24060
24065
  });
24061
- this.imageLoaded = true;
24066
+ image.setAttr("width", this.imageSource[id].width);
24062
24067
  image.setAttr("width", this.imageSource[id].width);
24063
24068
  image.setAttr("height", this.imageSource[id].height);
24064
24069
  image.setAttr("cropInfo", props.cropInfo ?? void 0);
@@ -24090,7 +24095,41 @@ var WeaveImageNode = class extends WeaveNode {
24090
24095
  delete internalImageProps.imageProperties;
24091
24096
  delete internalImageProps.imageURL;
24092
24097
  delete internalImageProps.zIndex;
24093
- if (!this.imageLoaded) {
24098
+ if (!this.imageState[id ?? ""]?.loaded) {
24099
+ imagePlaceholder?.setAttrs({
24100
+ ...internalImageProps,
24101
+ ...nodeAttrs.imageProperties ?? {},
24102
+ name: void 0,
24103
+ id: `${id}-placeholder`,
24104
+ nodeId: id,
24105
+ x: 0,
24106
+ y: 0,
24107
+ scaleX: 1,
24108
+ scaleY: 1,
24109
+ rotation: 0,
24110
+ visible: true,
24111
+ fill: "#ccccccff",
24112
+ strokeWidth: 0,
24113
+ draggable: false,
24114
+ zIndex: 0
24115
+ });
24116
+ internalImage?.setAttrs({
24117
+ ...internalImageProps,
24118
+ ...nodeAttrs.imageProperties ?? {},
24119
+ name: void 0,
24120
+ id: `${id}-image`,
24121
+ nodeId: id,
24122
+ x: 0,
24123
+ y: 0,
24124
+ scaleX: 1,
24125
+ scaleY: 1,
24126
+ rotation: 0,
24127
+ visible: false,
24128
+ draggable: false,
24129
+ zIndex: 1
24130
+ });
24131
+ }
24132
+ if (this.imageState[id ?? ""]?.loaded && this.imageState[id ?? ""]?.error) {
24094
24133
  imagePlaceholder?.setAttrs({
24095
24134
  ...internalImageProps,
24096
24135
  ...nodeAttrs.imageProperties ?? {},
@@ -24113,6 +24152,7 @@ var WeaveImageNode = class extends WeaveNode {
24113
24152
  ...nodeAttrs.imageProperties ?? {},
24114
24153
  name: void 0,
24115
24154
  id: `${id}-image`,
24155
+ image: void 0,
24116
24156
  nodeId: id,
24117
24157
  x: 0,
24118
24158
  y: 0,
@@ -24124,7 +24164,7 @@ var WeaveImageNode = class extends WeaveNode {
24124
24164
  zIndex: 1
24125
24165
  });
24126
24166
  }
24127
- if (this.imageLoaded) {
24167
+ if (this.imageState[id ?? ""]?.loaded && !this.imageState[id ?? ""]?.error) {
24128
24168
  internalImage?.setAttrs({
24129
24169
  ...internalImageProps,
24130
24170
  ...nodeAttrs.imageProperties ?? {},
@@ -24152,6 +24192,8 @@ var WeaveImageNode = class extends WeaveNode {
24152
24192
  loaded: false,
24153
24193
  error: true
24154
24194
  };
24195
+ delete this.imageSource[imageId];
24196
+ delete this.imageState[imageId];
24155
24197
  onError(error);
24156
24198
  };
24157
24199
  this.imageSource[imageId].onload = () => {
@@ -24165,7 +24207,11 @@ var WeaveImageNode = class extends WeaveNode {
24165
24207
  loaded: false,
24166
24208
  error: false
24167
24209
  };
24168
- if (realImageURL) this.imageSource[imageId].src = realImageURL;
24210
+ try {
24211
+ if (realImageURL) this.imageSource[imageId].src = realImageURL;
24212
+ } catch (ex) {
24213
+ console.error(ex);
24214
+ }
24169
24215
  }
24170
24216
  loadImage(params, image) {
24171
24217
  const imageProps = params;
@@ -24193,11 +24239,6 @@ var WeaveImageNode = class extends WeaveNode {
24193
24239
  height: this.imageSource[id].height
24194
24240
  });
24195
24241
  internalImage.zIndex(0);
24196
- this.imageLoaded = true;
24197
- image.setAttrs({
24198
- width: imageProps.width ? imageProps.width : this.imageSource[id].width,
24199
- height: imageProps.height ? imageProps.height : this.imageSource[id].height
24200
- });
24201
24242
  image.setAttr("imageInfo", {
24202
24243
  width: this.imageSource[id].width,
24203
24244
  height: this.imageSource[id].height
@@ -24227,6 +24268,19 @@ var WeaveImageNode = class extends WeaveNode {
24227
24268
  loaded: false,
24228
24269
  error: true
24229
24270
  };
24271
+ image.setAttrs({
24272
+ image: void 0,
24273
+ width: 100,
24274
+ height: 100,
24275
+ imageInfo: {
24276
+ width: 100,
24277
+ height: 100
24278
+ },
24279
+ uncroppedImage: {
24280
+ width: 100,
24281
+ height: 100
24282
+ }
24283
+ });
24230
24284
  this.resolveAsyncElement(id);
24231
24285
  console.error("Error loading image", realImageURL, error);
24232
24286
  imagePlaceholder?.setAttrs({ visible: true });
@@ -24236,6 +24290,7 @@ var WeaveImageNode = class extends WeaveNode {
24236
24290
  }
24237
24291
  updatePlaceholderSize(image, imagePlaceholder) {
24238
24292
  const imageAttrs = image.getAttrs();
24293
+ if (!imageAttrs.loadedImage) return;
24239
24294
  if (!imageAttrs.adding && imageAttrs.cropInfo) {
24240
24295
  const actualScale = imageAttrs.uncroppedImage.width / imageAttrs.imageInfo.width;
24241
24296
  const cropScale = imageAttrs.cropInfo ? imageAttrs.cropInfo.scaleX : actualScale;
@@ -24252,6 +24307,7 @@ var WeaveImageNode = class extends WeaveNode {
24252
24307
  const stage = this.instance.getStage();
24253
24308
  const image = stage.findOne(`#${imageAttrs.id}`);
24254
24309
  const internalImage = image?.findOne(`#${imageAttrs.id}-image`);
24310
+ if (!imageAttrs.loadedImage) return;
24255
24311
  if (image && internalImage && !imageAttrs.adding && imageAttrs.cropInfo) {
24256
24312
  const actualScale = imageAttrs.uncroppedImage.width / imageAttrs.imageInfo.width;
24257
24313
  const cropScale = imageAttrs.cropInfo ? imageAttrs.cropInfo.scaleX : actualScale;