@weaverse/core 0.6.6 → 0.6.8

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,6 +1,23 @@
1
+ import { CSSProperties } from '@stitches/core';
1
2
  import Stitches from '@stitches/core/types/stitches';
2
3
  import { RefObject } from 'react';
3
4
 
5
+ interface ProjectDataType {
6
+ items: WeaverseElementData[];
7
+ rootId: string | number;
8
+ script: {
9
+ css: string;
10
+ js: string;
11
+ };
12
+ }
13
+ declare type WeaverseType = {
14
+ mediaBreakPoints?: any;
15
+ appUrl?: string;
16
+ projectKey?: string;
17
+ projectData?: ProjectDataType;
18
+ isDesignMode?: boolean;
19
+ ssrMode?: boolean;
20
+ };
4
21
  declare type TODO = any;
5
22
  declare type WeaverseElementMap = {
6
23
  [key: string]: WeaverseElement;
@@ -24,9 +41,20 @@ declare type WeaverseElementSchema = {
24
41
  catalog?: WeaverseElementCatalog;
25
42
  };
26
43
  declare type WeaverseElementData = {
27
- id: string;
44
+ id?: string | number;
45
+ type?: string | undefined;
46
+ childIds?: (string | number)[] | undefined;
47
+ css?: WeaverseElementCSS;
28
48
  [key: string]: any;
29
49
  };
50
+ declare type WeaverseElementCSS = {
51
+ '@desktop'?: CSSProperties | {
52
+ [key: string]: CSSProperties;
53
+ };
54
+ '@mobile'?: CSSProperties | {
55
+ [key: string]: CSSProperties;
56
+ };
57
+ };
30
58
  declare type WeaverseElementInput = {
31
59
  label?: string;
32
60
  type: 'select' | 'checkbox' | 'radio' | 'range' | 'button' | 'image' | 'file' | 'hidden' | 'alignment' | 'color' | 'dimensions' | 'flex' | 'grid' | 'input' | 'switch' | 'spacing' | 'textarea' | 'visibility' | 'border' | 'background' | 'typography' | 'shadow' | 'position' | 'overflow' | 'display' | 'other';
@@ -44,34 +72,11 @@ declare global {
44
72
  }
45
73
  }
46
74
 
47
- interface ProjectDataItemType {
48
- type: string;
49
- name?: string;
50
- id: string | number;
51
- description?: string;
52
- childIds?: Array<string | number>;
53
- css?: {
54
- [key: string]: string;
55
- };
56
- }
57
- interface ProjectDataType {
58
- items: ProjectDataItemType[];
59
- rootId: string | number;
60
- }
61
- declare type WeaverseType = {
62
- mediaBreakPoints?: any;
63
- appUrl?: string;
64
- projectKey?: string;
65
- projectData?: ProjectDataType;
66
- isDesignMode?: boolean;
67
- ssrMode?: boolean;
68
- };
69
75
  /**
70
76
  * WeaverseItemStore is a store for Weaverse item, it can be used to subscribe/update the item data
71
- * @param itemData {ProjectDataItemType} Weaverse item data
77
+ * @param itemData {WeaverseElementData} Weaverse item data
72
78
  * @param weaverse {Weaverse} Weaverse instance
73
- * Usage:
74
- * ```jsx
79
+ * @example
75
80
  * useEffect(() => {
76
81
  * let handleUpdate = (update: any) => {
77
82
  * setData({...update})
@@ -80,20 +85,19 @@ declare type WeaverseType = {
80
85
  * return () => {
81
86
  * itemInstance.unsubscribe(handleUpdate)
82
87
  * }
83
- * }, [])
84
- * ```
88
+ * }, [])
85
89
  */
86
90
  declare class WeaverseItemStore {
87
91
  listeners: Set<any>;
88
92
  ref: RefObject<HTMLElement>;
89
93
  weaverse: Weaverse;
90
94
  stitchesClass: string;
91
- constructor(itemData: any, weaverse: Weaverse);
92
- _data: any;
95
+ constructor(itemData: WeaverseElementData, weaverse: Weaverse);
96
+ _data: WeaverseElementData;
93
97
  get Element(): WeaverseElement;
94
- set data(data: any);
95
- get data(): any;
96
- setData: (data: any) => any;
98
+ set data(data: WeaverseElementData);
99
+ get data(): WeaverseElementData;
100
+ setData: (data: WeaverseElementData) => WeaverseElementData;
97
101
  subscribe: (fn: any) => void;
98
102
  unsubscribe: (fn: any) => void;
99
103
  triggerUpdate: () => void;
@@ -193,4 +197,4 @@ declare const isReactNative: boolean;
193
197
  declare const isBrowser: boolean;
194
198
  declare const isIframe: boolean;
195
199
 
196
- export { ProjectDataItemType, ProjectDataType, TODO, Weaverse, WeaverseElement, WeaverseElementCatalog, WeaverseElementData, WeaverseElementInput, WeaverseElementMap, WeaverseElementSchema, WeaverseItemStore, WeaverseType, isBrowser, isIframe, isReactNative };
200
+ export { ProjectDataType, TODO, Weaverse, WeaverseElement, WeaverseElementCSS, WeaverseElementCatalog, WeaverseElementData, WeaverseElementInput, WeaverseElementMap, WeaverseElementSchema, WeaverseItemStore, WeaverseType, isBrowser, isIframe, isReactNative };
package/dist/index.js CHANGED
@@ -96,7 +96,11 @@ var _Weaverse = class {
96
96
  this.projectKey = "";
97
97
  this.projectData = {
98
98
  items: [],
99
- rootId: 0
99
+ rootId: 0,
100
+ script: {
101
+ css: "",
102
+ js: ""
103
+ }
100
104
  };
101
105
  this.listeners = /* @__PURE__ */ new Set();
102
106
  this.isDesignMode = false;
package/dist/index.mjs CHANGED
@@ -67,7 +67,11 @@ var _Weaverse = class {
67
67
  this.projectKey = "";
68
68
  this.projectData = {
69
69
  items: [],
70
- rootId: 0
70
+ rootId: 0,
71
+ script: {
72
+ css: "",
73
+ js: ""
74
+ }
71
75
  };
72
76
  this.listeners = /* @__PURE__ */ new Set();
73
77
  this.isDesignMode = false;
package/package.json CHANGED
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "0.6.6",
2
+ "version": "0.6.8",
3
3
  "license": "MIT",
4
4
  "main": "dist/index.js",
5
5
  "typings": "dist/index.d.ts",