@weaverse/react 0.6.8 → 0.6.11

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/index.d.ts CHANGED
@@ -1,18 +1,19 @@
1
+ import * as react from 'react';
1
2
  import { WeaverseType, Weaverse } from '@weaverse/core';
2
3
  export * from '@weaverse/core';
3
- import React$1 from 'react';
4
4
 
5
- declare const createRootContext: (configs: WeaverseType) => Weaverse;
6
- declare let WeaverseContext: React$1.Context<Weaverse>;
7
- declare let WeaverseContextProvider: React$1.Provider<Weaverse>;
8
- declare let WeaverseContextConsumer: React$1.Consumer<Weaverse>;
9
- declare type WeaverseRootPropsType = {
10
- context: Weaverse;
11
- };
12
- declare const WeaverseRoot: ({ context }: WeaverseRootPropsType) => JSX.Element;
5
+ declare let createRootContext: (configs: WeaverseType) => Weaverse;
6
+ declare let WeaverseContext: react.Context<Weaverse>;
7
+ declare let WeaverseContextProvider: react.Provider<Weaverse>;
8
+ declare let WeaverseContextConsumer: react.Consumer<Weaverse>;
13
9
 
14
10
  interface WeaverseElementProps {
15
11
  children?: React.ReactNode;
16
12
  }
13
+ declare type WeaverseRootPropsType = {
14
+ context: Weaverse;
15
+ };
16
+
17
+ declare let WeaverseRoot: ({ context }: WeaverseRootPropsType) => JSX.Element;
17
18
 
18
19
  export { WeaverseContext, WeaverseContextConsumer, WeaverseContextProvider, WeaverseElementProps, WeaverseRoot, WeaverseRootPropsType, createRootContext };
package/dist/index.js CHANGED
@@ -60,6 +60,10 @@ __export(src_exports, {
60
60
  });
61
61
  module.exports = __toCommonJS(src_exports);
62
62
 
63
+ // src/context.ts
64
+ var import_core = require("@weaverse/core");
65
+ var import_react5 = require("react");
66
+
63
67
  // src/elements/base.tsx
64
68
  var import_react = __toESM(require("react"));
65
69
  var BaseElement = import_react.default.forwardRef((_a, ref) => {
@@ -74,6 +78,7 @@ BaseElement.defaultProps = {
74
78
  };
75
79
  var schema = {
76
80
  type: "base",
81
+ parentType: "container",
77
82
  title: "Base",
78
83
  settings: []
79
84
  };
@@ -101,6 +106,7 @@ Button.defaultProps = {
101
106
  var schema2 = {
102
107
  title: "Button",
103
108
  type: "button",
109
+ parentType: "container",
104
110
  styles: [
105
111
  {
106
112
  type: "dimensions"
@@ -157,6 +163,7 @@ var Container = (0, import_react2.forwardRef)((props, ref) => {
157
163
  var schema3 = {
158
164
  title: "Container",
159
165
  type: "container",
166
+ parentType: "layout",
160
167
  data: {
161
168
  css: {
162
169
  "@desktop": {
@@ -173,7 +180,13 @@ var schema3 = {
173
180
  }
174
181
  }
175
182
  },
176
- settings: []
183
+ settings: [],
184
+ flags: {
185
+ draggable: true,
186
+ resizable: true,
187
+ sortable: true,
188
+ hasSelection: false
189
+ }
177
190
  };
178
191
  var container_default = Container;
179
192
 
@@ -198,10 +211,10 @@ var Layout = (0, import_react3.forwardRef)((props, ref) => {
198
211
  var schema4 = {
199
212
  title: "Layout",
200
213
  type: "layout",
214
+ parentType: "root",
201
215
  data: {
202
216
  css: {
203
217
  "@desktop": {
204
- overflow: "hidden",
205
218
  paddingTop: "16px",
206
219
  paddingBottom: "16px",
207
220
  paddingLeft: "var(--gap)",
@@ -248,6 +261,7 @@ Text.defaultProps = {
248
261
  };
249
262
  var schema5 = {
250
263
  type: "text",
264
+ parentType: "container",
251
265
  title: "Text",
252
266
  settings: [],
253
267
  data: {
@@ -260,7 +274,7 @@ var schema5 = {
260
274
  outline: "none",
261
275
  wordBreak: "break-word",
262
276
  overflowWrap: "break-word",
263
- whitespace: "break-spaces"
277
+ whiteSpace: "break-spaces"
264
278
  }
265
279
  }
266
280
  }
@@ -285,13 +299,24 @@ Image.defaultProps = {
285
299
  var schema6 = {
286
300
  settings: [],
287
301
  type: "image",
302
+ parentType: "layout",
288
303
  title: "Image",
289
304
  data: {
290
305
  css: {
291
306
  "@desktop": {
292
- padding: "10px"
307
+ width: "100%",
308
+ height: "100%",
309
+ objectFit: "cover"
310
+ },
311
+ "@mobile": {
312
+ display: "block"
293
313
  }
294
314
  }
315
+ },
316
+ flags: {
317
+ resizable: true,
318
+ draggable: true,
319
+ sortable: true
295
320
  }
296
321
  };
297
322
  var image_default = Image;
@@ -325,19 +350,9 @@ var elements = {
325
350
  };
326
351
  var elements_default = elements;
327
352
 
328
- // src/utils/css.ts
329
- var shortCssObject = (css) => {
330
- return {
331
- "@desktop": css[`@desktop`],
332
- "@mobile": css[`@mobile`]
333
- };
334
- };
335
-
336
- // src/renderer.tsx
337
- var import_core = require("@weaverse/core");
338
- var import_react5 = __toESM(require("react"));
353
+ // src/context.ts
339
354
  var createRootContext = (configs) => {
340
- const rootContext = new import_core.Weaverse(configs);
355
+ let rootContext = new import_core.Weaverse(configs);
341
356
  Object.keys(elements_default).forEach((key) => {
342
357
  rootContext.registerElement(elements_default[key]);
343
358
  });
@@ -346,92 +361,107 @@ var createRootContext = (configs) => {
346
361
  var WeaverseContext = (0, import_react5.createContext)({});
347
362
  var WeaverseContextProvider = WeaverseContext.Provider;
348
363
  var WeaverseContextConsumer = WeaverseContext.Consumer;
364
+
365
+ // src/renderer.tsx
366
+ var import_core2 = require("@weaverse/core");
367
+ var import_react6 = __toESM(require("react"));
368
+
369
+ // src/utils/index.ts
370
+ var shortCssObject = (css) => {
371
+ return {
372
+ "@desktop": css[`@desktop`],
373
+ "@mobile": css[`@mobile`]
374
+ };
375
+ };
376
+ function generateItemClass(instance, stitchesInstance) {
377
+ var _a;
378
+ let { css, className: cls = "" } = instance.data;
379
+ let className = "";
380
+ if (css) {
381
+ let formattedCss = shortCssObject(css);
382
+ let { className: newClass = "" } = stitchesInstance.css(formattedCss)();
383
+ let { stitchesClass } = instance;
384
+ let otherClass = (((_a = instance.ref.current) == null ? void 0 : _a.className) || "").replace(stitchesClass, "").replace(cls, "").trim();
385
+ className = `${cls} ${newClass} ${otherClass}`.trim();
386
+ instance.stitchesClass = newClass;
387
+ }
388
+ return className;
389
+ }
390
+
391
+ // src/renderer.tsx
349
392
  var WeaverseRoot = ({ context }) => {
350
393
  var _a;
351
- let [, setData] = (0, import_react5.useState)(context.projectData);
352
- (0, import_react5.useEffect)(() => {
353
- let handleUpdate = () => {
354
- setData({});
355
- };
356
- context.subscribe(handleUpdate);
394
+ let [, setData] = (0, import_react6.useState)(context.projectData);
395
+ let rootRef = (0, import_react6.useRef)();
396
+ (0, import_react6.useEffect)(() => {
397
+ let update = () => setData({});
398
+ context.subscribe(update);
357
399
  if (context.projectData) {
358
- setTimeout(handleUpdate, 110);
400
+ setTimeout(update, 110);
359
401
  }
402
+ context.contentRootElement = rootRef.current;
360
403
  return () => {
361
- context.unsubscribe(handleUpdate);
404
+ context.unsubscribe(update);
362
405
  };
363
406
  }, []);
364
407
  let eventHandlers = ((_a = context == null ? void 0 : context.studioBridge) == null ? void 0 : _a.eventHandlers) || {};
365
408
  let themeClass = context.stitchesInstance.theme.className;
366
- return /* @__PURE__ */ import_react5.default.createElement("div", __spreadValues({
409
+ return /* @__PURE__ */ import_react6.default.createElement("div", __spreadProps(__spreadValues({
367
410
  className: `weaverse-content-root ${themeClass}`
368
- }, eventHandlers), /* @__PURE__ */ import_react5.default.createElement(WeaverseContextProvider, {
411
+ }, eventHandlers), {
412
+ ref: rootRef
413
+ }), /* @__PURE__ */ import_react6.default.createElement(WeaverseContextProvider, {
369
414
  value: context
370
- }, /* @__PURE__ */ import_react5.default.createElement(RenderItem, {
371
- itemId: context.projectData.rootId || 0
415
+ }, /* @__PURE__ */ import_react6.default.createElement(ItemInstance, {
416
+ id: context.projectData.rootId || 0
372
417
  })));
373
418
  };
374
- var Item = ({ itemInstance, elementInstances }) => {
375
- var _b;
376
- let [data, setData] = (0, import_react5.useState)(itemInstance.data);
377
- let _a = data, { id, type, childIds, css, className: cls = "" } = _a, rest = __objRest(_a, ["id", "type", "childIds", "css", "className"]);
378
- (0, import_react5.useEffect)(() => {
379
- let handleUpdate = (update) => {
380
- setData(__spreadValues({}, update));
381
- };
382
- itemInstance.subscribe(handleUpdate);
383
- if (import_core.isBrowser && !itemInstance.ref.current) {
384
- Object.assign(itemInstance.ref, {
419
+ var ItemComponent = ({ instance }) => {
420
+ let { stitchesInstance, elementInstances } = (0, import_react6.useContext)(WeaverseContext);
421
+ let [data, setData] = (0, import_react6.useState)(instance.data);
422
+ let _a = data, { id, type, childIds = [], css, className: cls = "" } = _a, rest = __objRest(_a, ["id", "type", "childIds", "css", "className"]);
423
+ (0, import_react6.useEffect)(() => {
424
+ let update = (data2) => setData(__spreadValues({}, data2));
425
+ instance.subscribe(update);
426
+ if (import_core2.isBrowser && !instance.ref.current) {
427
+ Object.assign(instance.ref, {
385
428
  current: document.querySelector(`[data-wv-id="${id}"]`)
386
429
  });
387
430
  }
388
431
  return () => {
389
- itemInstance.unsubscribe(handleUpdate);
432
+ instance.unsubscribe(update);
390
433
  };
391
434
  }, []);
392
- let context = (0, import_react5.useContext)(WeaverseContext);
393
- let className = "";
394
- if (css) {
395
- let formattedCss = shortCssObject(css);
396
- let { className: newClass = "" } = context.stitchesInstance.css(formattedCss)();
397
- let { stitchesClass } = itemInstance;
398
- let otherClass = (((_b = itemInstance.ref.current) == null ? void 0 : _b.className) || "").replace(stitchesClass, "").replace(cls, "").trim();
399
- className = `${cls} ${newClass} ${otherClass}`.trim();
400
- itemInstance.stitchesClass = newClass;
401
- }
402
- let element = elementInstances.get(type) || elementInstances.get("base");
403
- if (element == null ? void 0 : element.Component) {
404
- let Component = element.Component;
435
+ let Element = elementInstances.get(type || "base");
436
+ if (Element == null ? void 0 : Element.Component) {
437
+ let Component = Element.Component;
405
438
  if (Component.$$typeof === Symbol.for("react.forward_ref")) {
406
- rest.ref = itemInstance.ref;
439
+ rest.ref = instance.ref;
407
440
  }
408
- return /* @__PURE__ */ import_react5.default.createElement(Component, __spreadProps(__spreadValues({
441
+ return /* @__PURE__ */ import_react6.default.createElement(Component, __spreadValues({
409
442
  key: id,
410
443
  "data-wv-type": type,
411
- "data-wv-id": id
412
- }, rest), {
413
- className
414
- }), Array.isArray(childIds) && childIds.map((childId) => /* @__PURE__ */ import_react5.default.createElement(RenderItem, {
415
- key: childId,
416
- itemId: childId
444
+ "data-wv-id": id,
445
+ className: generateItemClass(instance, stitchesInstance)
446
+ }, rest), childIds.map((id2) => /* @__PURE__ */ import_react6.default.createElement(ItemInstance, {
447
+ key: id2,
448
+ id: id2
417
449
  })));
418
450
  }
419
451
  return null;
420
452
  };
421
- var RenderItem = ({
422
- itemId
423
- }) => {
424
- let context = (0, import_react5.useContext)(WeaverseContext);
425
- let { itemInstances, elementInstances } = context;
426
- let itemInstance = itemInstances.get(itemId);
427
- if (itemInstance) {
428
- return /* @__PURE__ */ import_react5.default.createElement(Item, {
429
- itemInstance,
430
- elementInstances
431
- });
453
+ var ItemInstance = ({ id }) => {
454
+ let context = (0, import_react6.useContext)(WeaverseContext);
455
+ let { itemInstances } = context;
456
+ let instance = itemInstances.get(id);
457
+ if (!instance) {
458
+ return /* @__PURE__ */ import_react6.default.createElement("div", {
459
+ style: { display: "none" }
460
+ }, "Item instance ", id, " not found");
432
461
  }
433
- console.warn(`Item instance ${itemId} not found`);
434
- return /* @__PURE__ */ import_react5.default.createElement(import_react5.default.Fragment, null);
462
+ return /* @__PURE__ */ import_react6.default.createElement(ItemComponent, {
463
+ instance
464
+ });
435
465
  };
436
466
 
437
467
  // src/index.ts
package/dist/index.mjs CHANGED
@@ -30,6 +30,10 @@ var __objRest = (source, exclude) => {
30
30
  return target;
31
31
  };
32
32
 
33
+ // src/context.ts
34
+ import { Weaverse } from "@weaverse/core";
35
+ import { createContext } from "react";
36
+
33
37
  // src/elements/base.tsx
34
38
  import React from "react";
35
39
  var BaseElement = React.forwardRef((_a, ref) => {
@@ -44,6 +48,7 @@ BaseElement.defaultProps = {
44
48
  };
45
49
  var schema = {
46
50
  type: "base",
51
+ parentType: "container",
47
52
  title: "Base",
48
53
  settings: []
49
54
  };
@@ -71,6 +76,7 @@ Button.defaultProps = {
71
76
  var schema2 = {
72
77
  title: "Button",
73
78
  type: "button",
79
+ parentType: "container",
74
80
  styles: [
75
81
  {
76
82
  type: "dimensions"
@@ -127,6 +133,7 @@ var Container = forwardRef2((props, ref) => {
127
133
  var schema3 = {
128
134
  title: "Container",
129
135
  type: "container",
136
+ parentType: "layout",
130
137
  data: {
131
138
  css: {
132
139
  "@desktop": {
@@ -143,7 +150,13 @@ var schema3 = {
143
150
  }
144
151
  }
145
152
  },
146
- settings: []
153
+ settings: [],
154
+ flags: {
155
+ draggable: true,
156
+ resizable: true,
157
+ sortable: true,
158
+ hasSelection: false
159
+ }
147
160
  };
148
161
  var container_default = Container;
149
162
 
@@ -168,10 +181,10 @@ var Layout = forwardRef3((props, ref) => {
168
181
  var schema4 = {
169
182
  title: "Layout",
170
183
  type: "layout",
184
+ parentType: "root",
171
185
  data: {
172
186
  css: {
173
187
  "@desktop": {
174
- overflow: "hidden",
175
188
  paddingTop: "16px",
176
189
  paddingBottom: "16px",
177
190
  paddingLeft: "var(--gap)",
@@ -218,6 +231,7 @@ Text.defaultProps = {
218
231
  };
219
232
  var schema5 = {
220
233
  type: "text",
234
+ parentType: "container",
221
235
  title: "Text",
222
236
  settings: [],
223
237
  data: {
@@ -230,7 +244,7 @@ var schema5 = {
230
244
  outline: "none",
231
245
  wordBreak: "break-word",
232
246
  overflowWrap: "break-word",
233
- whitespace: "break-spaces"
247
+ whiteSpace: "break-spaces"
234
248
  }
235
249
  }
236
250
  }
@@ -255,13 +269,24 @@ Image.defaultProps = {
255
269
  var schema6 = {
256
270
  settings: [],
257
271
  type: "image",
272
+ parentType: "layout",
258
273
  title: "Image",
259
274
  data: {
260
275
  css: {
261
276
  "@desktop": {
262
- padding: "10px"
277
+ width: "100%",
278
+ height: "100%",
279
+ objectFit: "cover"
280
+ },
281
+ "@mobile": {
282
+ display: "block"
263
283
  }
264
284
  }
285
+ },
286
+ flags: {
287
+ resizable: true,
288
+ draggable: true,
289
+ sortable: true
265
290
  }
266
291
  };
267
292
  var image_default = Image;
@@ -295,19 +320,9 @@ var elements = {
295
320
  };
296
321
  var elements_default = elements;
297
322
 
298
- // src/utils/css.ts
299
- var shortCssObject = (css) => {
300
- return {
301
- "@desktop": css[`@desktop`],
302
- "@mobile": css[`@mobile`]
303
- };
304
- };
305
-
306
- // src/renderer.tsx
307
- import { isBrowser, Weaverse } from "@weaverse/core";
308
- import React7, { createContext, useContext, useEffect, useState } from "react";
323
+ // src/context.ts
309
324
  var createRootContext = (configs) => {
310
- const rootContext = new Weaverse(configs);
325
+ let rootContext = new Weaverse(configs);
311
326
  Object.keys(elements_default).forEach((key) => {
312
327
  rootContext.registerElement(elements_default[key]);
313
328
  });
@@ -316,92 +331,107 @@ var createRootContext = (configs) => {
316
331
  var WeaverseContext = createContext({});
317
332
  var WeaverseContextProvider = WeaverseContext.Provider;
318
333
  var WeaverseContextConsumer = WeaverseContext.Consumer;
334
+
335
+ // src/renderer.tsx
336
+ import { isBrowser } from "@weaverse/core";
337
+ import React7, { useContext, useEffect, useRef, useState } from "react";
338
+
339
+ // src/utils/index.ts
340
+ var shortCssObject = (css) => {
341
+ return {
342
+ "@desktop": css[`@desktop`],
343
+ "@mobile": css[`@mobile`]
344
+ };
345
+ };
346
+ function generateItemClass(instance, stitchesInstance) {
347
+ var _a;
348
+ let { css, className: cls = "" } = instance.data;
349
+ let className = "";
350
+ if (css) {
351
+ let formattedCss = shortCssObject(css);
352
+ let { className: newClass = "" } = stitchesInstance.css(formattedCss)();
353
+ let { stitchesClass } = instance;
354
+ let otherClass = (((_a = instance.ref.current) == null ? void 0 : _a.className) || "").replace(stitchesClass, "").replace(cls, "").trim();
355
+ className = `${cls} ${newClass} ${otherClass}`.trim();
356
+ instance.stitchesClass = newClass;
357
+ }
358
+ return className;
359
+ }
360
+
361
+ // src/renderer.tsx
319
362
  var WeaverseRoot = ({ context }) => {
320
363
  var _a;
321
364
  let [, setData] = useState(context.projectData);
365
+ let rootRef = useRef();
322
366
  useEffect(() => {
323
- let handleUpdate = () => {
324
- setData({});
325
- };
326
- context.subscribe(handleUpdate);
367
+ let update = () => setData({});
368
+ context.subscribe(update);
327
369
  if (context.projectData) {
328
- setTimeout(handleUpdate, 110);
370
+ setTimeout(update, 110);
329
371
  }
372
+ context.contentRootElement = rootRef.current;
330
373
  return () => {
331
- context.unsubscribe(handleUpdate);
374
+ context.unsubscribe(update);
332
375
  };
333
376
  }, []);
334
377
  let eventHandlers = ((_a = context == null ? void 0 : context.studioBridge) == null ? void 0 : _a.eventHandlers) || {};
335
378
  let themeClass = context.stitchesInstance.theme.className;
336
- return /* @__PURE__ */ React7.createElement("div", __spreadValues({
379
+ return /* @__PURE__ */ React7.createElement("div", __spreadProps(__spreadValues({
337
380
  className: `weaverse-content-root ${themeClass}`
338
- }, eventHandlers), /* @__PURE__ */ React7.createElement(WeaverseContextProvider, {
381
+ }, eventHandlers), {
382
+ ref: rootRef
383
+ }), /* @__PURE__ */ React7.createElement(WeaverseContextProvider, {
339
384
  value: context
340
- }, /* @__PURE__ */ React7.createElement(RenderItem, {
341
- itemId: context.projectData.rootId || 0
385
+ }, /* @__PURE__ */ React7.createElement(ItemInstance, {
386
+ id: context.projectData.rootId || 0
342
387
  })));
343
388
  };
344
- var Item = ({ itemInstance, elementInstances }) => {
345
- var _b;
346
- let [data, setData] = useState(itemInstance.data);
347
- let _a = data, { id, type, childIds, css, className: cls = "" } = _a, rest = __objRest(_a, ["id", "type", "childIds", "css", "className"]);
389
+ var ItemComponent = ({ instance }) => {
390
+ let { stitchesInstance, elementInstances } = useContext(WeaverseContext);
391
+ let [data, setData] = useState(instance.data);
392
+ let _a = data, { id, type, childIds = [], css, className: cls = "" } = _a, rest = __objRest(_a, ["id", "type", "childIds", "css", "className"]);
348
393
  useEffect(() => {
349
- let handleUpdate = (update) => {
350
- setData(__spreadValues({}, update));
351
- };
352
- itemInstance.subscribe(handleUpdate);
353
- if (isBrowser && !itemInstance.ref.current) {
354
- Object.assign(itemInstance.ref, {
394
+ let update = (data2) => setData(__spreadValues({}, data2));
395
+ instance.subscribe(update);
396
+ if (isBrowser && !instance.ref.current) {
397
+ Object.assign(instance.ref, {
355
398
  current: document.querySelector(`[data-wv-id="${id}"]`)
356
399
  });
357
400
  }
358
401
  return () => {
359
- itemInstance.unsubscribe(handleUpdate);
402
+ instance.unsubscribe(update);
360
403
  };
361
404
  }, []);
362
- let context = useContext(WeaverseContext);
363
- let className = "";
364
- if (css) {
365
- let formattedCss = shortCssObject(css);
366
- let { className: newClass = "" } = context.stitchesInstance.css(formattedCss)();
367
- let { stitchesClass } = itemInstance;
368
- let otherClass = (((_b = itemInstance.ref.current) == null ? void 0 : _b.className) || "").replace(stitchesClass, "").replace(cls, "").trim();
369
- className = `${cls} ${newClass} ${otherClass}`.trim();
370
- itemInstance.stitchesClass = newClass;
371
- }
372
- let element = elementInstances.get(type) || elementInstances.get("base");
373
- if (element == null ? void 0 : element.Component) {
374
- let Component = element.Component;
405
+ let Element = elementInstances.get(type || "base");
406
+ if (Element == null ? void 0 : Element.Component) {
407
+ let Component = Element.Component;
375
408
  if (Component.$$typeof === Symbol.for("react.forward_ref")) {
376
- rest.ref = itemInstance.ref;
409
+ rest.ref = instance.ref;
377
410
  }
378
- return /* @__PURE__ */ React7.createElement(Component, __spreadProps(__spreadValues({
411
+ return /* @__PURE__ */ React7.createElement(Component, __spreadValues({
379
412
  key: id,
380
413
  "data-wv-type": type,
381
- "data-wv-id": id
382
- }, rest), {
383
- className
384
- }), Array.isArray(childIds) && childIds.map((childId) => /* @__PURE__ */ React7.createElement(RenderItem, {
385
- key: childId,
386
- itemId: childId
414
+ "data-wv-id": id,
415
+ className: generateItemClass(instance, stitchesInstance)
416
+ }, rest), childIds.map((id2) => /* @__PURE__ */ React7.createElement(ItemInstance, {
417
+ key: id2,
418
+ id: id2
387
419
  })));
388
420
  }
389
421
  return null;
390
422
  };
391
- var RenderItem = ({
392
- itemId
393
- }) => {
423
+ var ItemInstance = ({ id }) => {
394
424
  let context = useContext(WeaverseContext);
395
- let { itemInstances, elementInstances } = context;
396
- let itemInstance = itemInstances.get(itemId);
397
- if (itemInstance) {
398
- return /* @__PURE__ */ React7.createElement(Item, {
399
- itemInstance,
400
- elementInstances
401
- });
425
+ let { itemInstances } = context;
426
+ let instance = itemInstances.get(id);
427
+ if (!instance) {
428
+ return /* @__PURE__ */ React7.createElement("div", {
429
+ style: { display: "none" }
430
+ }, "Item instance ", id, " not found");
402
431
  }
403
- console.warn(`Item instance ${itemId} not found`);
404
- return /* @__PURE__ */ React7.createElement(React7.Fragment, null);
432
+ return /* @__PURE__ */ React7.createElement(ItemComponent, {
433
+ instance
434
+ });
405
435
  };
406
436
 
407
437
  // src/index.ts
package/package.json CHANGED
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "0.6.8",
2
+ "version": "0.6.11",
3
3
  "license": "MIT",
4
4
  "main": "dist/index.js",
5
5
  "typings": "dist/index.d.ts",
@@ -31,6 +31,6 @@
31
31
  "name": "@weaverse/react",
32
32
  "author": "Weaverse Team",
33
33
  "dependencies": {
34
- "@weaverse/core": "0.6.8"
34
+ "@weaverse/core": "0.6.11"
35
35
  }
36
36
  }