@inditextech/weave-store-websockets 1.0.4 → 1.1.1
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/client.d.ts +5 -1084
- package/dist/client.js +2 -24
- package/dist/server.d.ts +7 -18
- package/dist/server.js +17 -16
- package/package.json +3 -3
package/dist/client.d.ts
CHANGED
|
@@ -1,1088 +1,9 @@
|
|
|
1
|
-
import
|
|
2
|
-
import
|
|
3
|
-
import * as Y$2 from "yjs";
|
|
4
|
-
import * as Y from "yjs";
|
|
5
|
-
import { IncomingMessage } from "http";
|
|
1
|
+
import { WeaveStore } from "@inditextech/weave-sdk";
|
|
2
|
+
import { WeaveStoreOptions } from "@inditextech/weave-types";
|
|
6
3
|
import { WebsocketProvider } from "y-websocket";
|
|
7
|
-
import
|
|
8
|
-
import
|
|
9
|
-
import * as konva_lib_Node9 from "konva/lib/Node";
|
|
10
|
-
import * as konva_lib_Node10 from "konva/lib/Node";
|
|
11
|
-
import * as konva_lib_Node11 from "konva/lib/Node";
|
|
12
|
-
import { KonvaEventObject } from "konva/lib/Node";
|
|
13
|
-
import { Stage, StageConfig } from "konva/lib/Stage";
|
|
14
|
-
import { TransformerConfig } from "konva/lib/shapes/Transformer";
|
|
15
|
-
import * as konva_lib_types6 from "konva/lib/types";
|
|
16
|
-
import "konva/lib/Group";
|
|
17
|
-
import "konva/lib/Layer";
|
|
18
|
-
|
|
19
|
-
//#region ../sdk/dist/sdk.d.ts
|
|
20
|
-
|
|
21
|
-
//#region ../types/dist/types.d.ts
|
|
22
|
-
//#region src/base/node.d.ts
|
|
23
|
-
interface WeaveNodeBase {
|
|
24
|
-
getNodeType(): string;
|
|
25
|
-
create(id: string, props: WeaveElementAttributes): WeaveStateElement;
|
|
26
|
-
onAdd?(nodeInstance: WeaveElementInstance): void;
|
|
27
|
-
onRender(props: WeaveElementAttributes): WeaveElementInstance;
|
|
28
|
-
onUpdate(instance: WeaveElementInstance, nextProps: WeaveElementAttributes): void;
|
|
29
|
-
onDestroy(instance: WeaveElementInstance): void;
|
|
30
|
-
serialize(instance: WeaveElementInstance): WeaveStateElement;
|
|
31
|
-
setupDefaultNodeAugmentation(node: Konva.Node): void;
|
|
32
|
-
setupDefaultNodeEvents(node: Konva.Node): void;
|
|
33
|
-
isNodeSelected(ele: Konva.Node): boolean;
|
|
34
|
-
lock(instance: Konva.Node): void;
|
|
35
|
-
unlock(instance: Konva.Node): void;
|
|
36
|
-
isLocked(instance: Konva.Node): boolean;
|
|
37
|
-
isSelecting(): boolean;
|
|
38
|
-
isPasting(): boolean;
|
|
39
|
-
}
|
|
40
|
-
|
|
41
|
-
//#endregion
|
|
42
|
-
//#region src/base/action.d.ts
|
|
43
|
-
interface WeaveActionBase {
|
|
44
|
-
onInit?(): void;
|
|
45
|
-
trigger(cancelAction: () => void, params?: unknown): unknown;
|
|
46
|
-
internalUpdate?(): void;
|
|
47
|
-
cleanup?(): void;
|
|
48
|
-
}
|
|
49
|
-
|
|
50
|
-
//#endregion
|
|
51
|
-
//#region src/base/plugin.d.ts
|
|
52
|
-
interface WeavePluginBase {
|
|
53
|
-
onInit?(): void;
|
|
54
|
-
onRender?(): void;
|
|
55
|
-
enable(): void;
|
|
56
|
-
disable(): void;
|
|
57
|
-
isEnabled(): boolean;
|
|
58
|
-
}
|
|
59
|
-
|
|
60
|
-
//#endregion
|
|
61
|
-
//#region src/base/store.d.ts
|
|
62
|
-
type WeaveStoreOptions$1 = {
|
|
63
|
-
getUser: () => WeaveUser$1;
|
|
64
|
-
undoManagerOptions?: WeaveUndoManagerOptions$1;
|
|
65
|
-
};
|
|
66
|
-
interface WeaveStoreBase {
|
|
67
|
-
connect(): void;
|
|
68
|
-
disconnect(): void;
|
|
69
|
-
handleAwarenessChange(emit: boolean): void;
|
|
70
|
-
setAwarenessInfo(field: string, value: unknown): void;
|
|
71
|
-
}
|
|
72
|
-
|
|
73
|
-
//#endregion
|
|
74
|
-
//#region src/types.d.ts
|
|
75
|
-
type WeaveFontsPreloadFunction = () => Promise<WeaveFont[]>;
|
|
76
|
-
type WeaveConfig = {
|
|
77
|
-
store: WeaveStoreBase;
|
|
78
|
-
nodes?: WeaveNodeBase[];
|
|
79
|
-
actions?: WeaveActionBase[];
|
|
80
|
-
plugins?: WeavePluginBase[];
|
|
81
|
-
fonts?: WeaveFont[] | WeaveFontsPreloadFunction;
|
|
82
|
-
logger?: WeaveLoggerConfig;
|
|
83
|
-
serverSide?: boolean;
|
|
84
|
-
};
|
|
85
|
-
type WeaveStatusKeys = keyof typeof WEAVE_INSTANCE_STATUS;
|
|
86
|
-
type WeaveStatus = (typeof WEAVE_INSTANCE_STATUS)[WeaveStatusKeys];
|
|
87
|
-
type WeaveElementAttributes = {
|
|
88
|
-
[key: string]: any;
|
|
89
|
-
id?: string;
|
|
90
|
-
nodeType?: string;
|
|
91
|
-
children?: WeaveStateElement[];
|
|
92
|
-
};
|
|
93
|
-
type WeaveStateElement = {
|
|
94
|
-
key: string;
|
|
95
|
-
type: string;
|
|
96
|
-
props: WeaveElementAttributes;
|
|
97
|
-
};
|
|
98
|
-
type WeaveState = {
|
|
99
|
-
weave: {
|
|
100
|
-
key: "stage";
|
|
101
|
-
type: "stage";
|
|
102
|
-
props: {
|
|
103
|
-
[key: string]: unknown;
|
|
104
|
-
id: "stage";
|
|
105
|
-
children: WeaveStateElement[];
|
|
106
|
-
};
|
|
107
|
-
} | Record<string, WeaveStateElement>;
|
|
108
|
-
};
|
|
109
|
-
type WeaveSelection = {
|
|
110
|
-
instance: Konva.Shape | Konva.Group;
|
|
111
|
-
node: WeaveStateElement | undefined;
|
|
112
|
-
};
|
|
113
|
-
type WeaveMousePointInfoSimple = {
|
|
114
|
-
mousePoint: Konva.Vector2d;
|
|
115
|
-
container: Konva.Layer | Konva.Node | undefined;
|
|
116
|
-
};
|
|
117
|
-
type WeaveMousePointInfo = WeaveMousePointInfoSimple & {
|
|
118
|
-
measureContainer: Konva.Layer | Konva.Group | undefined;
|
|
119
|
-
};
|
|
120
|
-
type WeaveSerializedGroup = {
|
|
121
|
-
serializedNodes: WeaveStateElement[];
|
|
122
|
-
minPoint: Konva.Vector2d;
|
|
123
|
-
} | undefined;
|
|
124
|
-
type WeaveNodeFound = {
|
|
125
|
-
node: WeaveStateElement | null;
|
|
126
|
-
parent: WeaveStateElement | null;
|
|
127
|
-
index: number;
|
|
128
|
-
};
|
|
129
|
-
type WeaveElementInstance = Konva.Layer | Konva.Group | Konva.Shape;
|
|
130
|
-
type WeaveLoggerConfig = {
|
|
131
|
-
disabled?: boolean;
|
|
132
|
-
level?: "debug" | "info" | "warn" | "error";
|
|
133
|
-
};
|
|
134
|
-
type WeavePositionKeys = keyof typeof WEAVE_NODE_POSITION;
|
|
135
|
-
type WeavePosition = (typeof WEAVE_NODE_POSITION)[WeavePositionKeys];
|
|
136
|
-
type WeaveExportFormatsKeys = keyof typeof WEAVE_EXPORT_FORMATS;
|
|
137
|
-
type WeaveExportFormats = (typeof WEAVE_EXPORT_FORMATS)[WeaveExportFormatsKeys];
|
|
138
|
-
type WeaveExportNodesOptions = {
|
|
139
|
-
format?: WeaveExportFormats;
|
|
140
|
-
padding?: number;
|
|
141
|
-
pixelRatio?: number;
|
|
142
|
-
backgroundColor?: string;
|
|
143
|
-
quality?: number;
|
|
144
|
-
backend?: WeaveKonvaBackend;
|
|
145
|
-
};
|
|
146
|
-
type WeaveUser$1 = {
|
|
147
|
-
id: string;
|
|
148
|
-
name: string;
|
|
149
|
-
email: string;
|
|
150
|
-
[key: string]: any;
|
|
151
|
-
};
|
|
152
|
-
type WeaveFont = {
|
|
153
|
-
id: string;
|
|
154
|
-
name: string;
|
|
155
|
-
offsetX?: number;
|
|
156
|
-
offsetY?: number;
|
|
157
|
-
};
|
|
158
|
-
type WeaveUndoManagerOptions$1 = {
|
|
159
|
-
captureTimeout?: number;
|
|
160
|
-
trackedOrigins?: Set<any>;
|
|
161
|
-
};
|
|
162
|
-
type WeaveStoreConnectionStatusKeys = keyof typeof WEAVE_STORE_CONNECTION_STATUS;
|
|
163
|
-
type WeaveStoreConnectionStatus = (typeof WEAVE_STORE_CONNECTION_STATUS)[WeaveStoreConnectionStatusKeys];
|
|
164
|
-
declare type docElementTypeDescription = "xml" | "text" | Array<any> | object;
|
|
165
|
-
declare type DocTypeDescription = {
|
|
166
|
-
[key: string]: docElementTypeDescription;
|
|
167
|
-
};
|
|
168
|
-
declare type MappedTypeDescription<T extends DocTypeDescription> = { readonly [P in keyof T]: T[P] extends "xml" ? Y$1.XmlFragment : T[P] extends "text" ? Y$1.Text : T[P] extends Array<any> ? T[P] : T[P] extends object ? Partial<T[P]> : never };
|
|
169
|
-
type WeaveNodeTransformerProperties = Konva.TransformerConfig;
|
|
170
|
-
type WeaveNodeConfiguration = {
|
|
171
|
-
transform: Partial<WeaveNodeTransformerProperties>;
|
|
172
|
-
};
|
|
173
|
-
type DeepPartial<T> = { [P in keyof T]?: T[P] extends object ? T[P] extends Function ? T[P] : DeepPartial<T[P]> : T[P] };
|
|
174
|
-
type WeaveKonvaBackendKeys = keyof typeof WEAVE_KONVA_BACKEND;
|
|
175
|
-
type WeaveKonvaBackend = (typeof WEAVE_KONVA_BACKEND)[WeaveKonvaBackendKeys];
|
|
176
|
-
|
|
177
|
-
//#endregion
|
|
178
|
-
//#region src/constants.d.ts
|
|
179
|
-
|
|
180
|
-
declare const WEAVE_INSTANCE_STATUS: {
|
|
181
|
-
readonly "IDLE": "idle";
|
|
182
|
-
readonly "STARTING": "starting";
|
|
183
|
-
readonly "LOADING_FONTS": "loadingFonts";
|
|
184
|
-
readonly "CONNECTING_TO_ROOM": "connectingToRoom";
|
|
185
|
-
readonly "CONNECTING_ERROR": "connectingError";
|
|
186
|
-
readonly "LOADING_ROOM": "loadingRoom";
|
|
187
|
-
readonly "RUNNING": "running";
|
|
188
|
-
};
|
|
189
|
-
declare const WEAVE_NODE_POSITION: {
|
|
190
|
-
readonly "UP": "up";
|
|
191
|
-
readonly "DOWN": "down";
|
|
192
|
-
readonly "FRONT": "front";
|
|
193
|
-
readonly "BACK": "back";
|
|
194
|
-
};
|
|
195
|
-
declare const WEAVE_EXPORT_FORMATS: {
|
|
196
|
-
readonly "PNG": "image/png";
|
|
197
|
-
readonly "JPEG": "image/jpeg";
|
|
198
|
-
};
|
|
199
|
-
declare const WEAVE_STORE_CONNECTION_STATUS: {
|
|
200
|
-
readonly "ERROR": "error";
|
|
201
|
-
readonly "CONNECTING": "connecting";
|
|
202
|
-
readonly "CONNECTED": "connected";
|
|
203
|
-
readonly "DISCONNECTED": "disconnected";
|
|
204
|
-
};
|
|
205
|
-
declare const WEAVE_KONVA_BACKEND: {
|
|
206
|
-
readonly "CANVAS": "canvas";
|
|
207
|
-
readonly "SKIA": "skia";
|
|
208
|
-
}; //#endregion
|
|
209
|
-
//#region src/stores/store.d.ts
|
|
210
|
-
|
|
211
|
-
//#endregion
|
|
212
|
-
declare abstract class WeaveStore implements WeaveStoreBase {
|
|
213
|
-
protected instance: Weave;
|
|
214
|
-
protected name: string;
|
|
215
|
-
protected supportsUndoManager: boolean;
|
|
216
|
-
protected config: WeaveStoreOptions$1;
|
|
217
|
-
private state;
|
|
218
|
-
private latestState;
|
|
219
|
-
private document;
|
|
220
|
-
private logger;
|
|
221
|
-
private undoManager;
|
|
222
|
-
private isRoomLoaded;
|
|
223
|
-
constructor(config: WeaveStoreOptions$1);
|
|
224
|
-
getName(): string;
|
|
225
|
-
getLogger(): Logger;
|
|
226
|
-
register(instance: Weave): WeaveStore;
|
|
227
|
-
getUser(): WeaveUser$1;
|
|
228
|
-
setState(state: WeaveState): void;
|
|
229
|
-
setLatestState(newState: WeaveState): void;
|
|
230
|
-
getLatestState(): WeaveState;
|
|
231
|
-
getDocument(): Y$2.Doc;
|
|
232
|
-
getState(): MappedTypeDescription<WeaveState>;
|
|
233
|
-
getStateJson(): WeaveState;
|
|
234
|
-
getStateSnapshot(): Uint8Array;
|
|
235
|
-
setup(): void;
|
|
236
|
-
canUndoStateStep(): boolean;
|
|
237
|
-
canRedoStateStep(): boolean;
|
|
238
|
-
undoStateStep(): void;
|
|
239
|
-
redoStateStep(): void;
|
|
240
|
-
handleConnectionStatusChange(status: WeaveStoreConnectionStatus): void;
|
|
241
|
-
abstract connect(): void;
|
|
242
|
-
abstract disconnect(): void;
|
|
243
|
-
abstract handleAwarenessChange(emit: boolean): void;
|
|
244
|
-
abstract setAwarenessInfo(field: string, value: unknown): void;
|
|
245
|
-
}
|
|
246
|
-
|
|
247
|
-
//#endregion
|
|
248
|
-
//#region src/plugins/plugin.d.ts
|
|
249
|
-
//# sourceMappingURL=store.d.ts.map
|
|
250
|
-
declare abstract class WeavePlugin implements WeavePluginBase {
|
|
251
|
-
protected instance: Weave;
|
|
252
|
-
protected name: string;
|
|
253
|
-
protected enabled: boolean;
|
|
254
|
-
private logger;
|
|
255
|
-
register(instance: Weave): WeavePlugin;
|
|
256
|
-
getName(): string;
|
|
257
|
-
getLogger(): Logger;
|
|
258
|
-
isEnabled(): boolean;
|
|
259
|
-
abstract onInit?(): void;
|
|
260
|
-
abstract onRender?(): void;
|
|
261
|
-
abstract enable(): void;
|
|
262
|
-
abstract disable(): void;
|
|
263
|
-
}
|
|
264
|
-
|
|
265
|
-
//#endregion
|
|
266
|
-
//#region src/plugins/nodes-selection/types.d.ts
|
|
267
|
-
//# sourceMappingURL=plugin.d.ts.map
|
|
268
|
-
|
|
269
|
-
type WeaveNodesSelectionOnSelectionParams = {
|
|
270
|
-
resizeEnabled: boolean;
|
|
271
|
-
rotateEnabled: boolean;
|
|
272
|
-
enabledAnchors: string[];
|
|
273
|
-
};
|
|
274
|
-
type WeaveNodesSelectionBehaviorsConfig = {
|
|
275
|
-
singleSelection: {
|
|
276
|
-
enabled: boolean;
|
|
277
|
-
};
|
|
278
|
-
multipleSelection: {
|
|
279
|
-
enabled: boolean;
|
|
280
|
-
};
|
|
281
|
-
onMultipleSelection?: (selectedNodes: Konva.Node[]) => Partial<WeaveNodesSelectionOnSelectionParams>;
|
|
282
|
-
};
|
|
283
|
-
type WeaveNodesSelectionPanningOnSelectionConfig = {
|
|
284
|
-
edgeThreshold: number;
|
|
285
|
-
minScrollSpeed: number;
|
|
286
|
-
maxScrollSpeed: number;
|
|
287
|
-
};
|
|
288
|
-
type WeaveNodesSelectionConfig = {
|
|
289
|
-
selection: Konva.TransformerConfig;
|
|
290
|
-
hover: Konva.TransformerConfig;
|
|
291
|
-
selectionArea: Konva.RectConfig;
|
|
292
|
-
panningWhenSelection: WeaveNodesSelectionPanningOnSelectionConfig;
|
|
293
|
-
behaviors: WeaveNodesSelectionBehaviorsConfig;
|
|
294
|
-
};
|
|
295
|
-
type WeaveNodesSelectionPluginConfig = Partial<WeaveNodesSelectionConfig>;
|
|
296
|
-
type WeaveNodesSelectionPluginParams = {
|
|
297
|
-
config?: WeaveNodesSelectionPluginConfig;
|
|
298
|
-
};
|
|
299
|
-
|
|
300
|
-
//#endregion
|
|
301
|
-
//#region src/plugins/context-menu/types.d.ts
|
|
302
|
-
//# sourceMappingURL=types.d.ts.map
|
|
303
|
-
type WeaveStageContextMenuPluginParams = {
|
|
304
|
-
config?: WeaveStageContextMenuPluginConfig;
|
|
305
|
-
};
|
|
306
|
-
type WeaveStageContextMenuPluginConfig = {
|
|
307
|
-
xOffset?: number;
|
|
308
|
-
yOffset?: number;
|
|
309
|
-
};
|
|
310
|
-
//#endregion
|
|
311
|
-
//#region src/plugins/context-menu/context-menu.d.ts
|
|
312
|
-
//# sourceMappingURL=types.d.ts.map
|
|
313
|
-
declare class WeaveContextMenuPlugin extends WeavePlugin {
|
|
314
|
-
private config;
|
|
315
|
-
private contextMenuVisible;
|
|
316
|
-
private tapHold;
|
|
317
|
-
private tapHoldTimeout;
|
|
318
|
-
private pointers;
|
|
319
|
-
private timer;
|
|
320
|
-
protected tapStart: {
|
|
321
|
-
x: number;
|
|
322
|
-
y: number;
|
|
323
|
-
time: number;
|
|
324
|
-
} | null;
|
|
325
|
-
getLayerName: undefined;
|
|
326
|
-
initLayer: undefined;
|
|
327
|
-
onRender: undefined;
|
|
328
|
-
constructor(params: WeaveStageContextMenuPluginParams);
|
|
329
|
-
getName(): string;
|
|
330
|
-
onInit(): void;
|
|
331
|
-
isPressed(e: KonvaEventObject<PointerEvent, Stage>): boolean;
|
|
332
|
-
setTapStart(e: KonvaEventObject<PointerEvent, Stage>): void;
|
|
333
|
-
triggerContextMenu(eventTarget: Konva.Node, target: Konva.Node | undefined): void;
|
|
334
|
-
closeContextMenu(): void;
|
|
335
|
-
private getSelectionPlugin;
|
|
336
|
-
cancelLongPressTimer(): void;
|
|
337
|
-
private initEvents;
|
|
338
|
-
private getStageClickPoint;
|
|
339
|
-
isContextMenuVisible(): boolean;
|
|
340
|
-
isTapHold(): boolean;
|
|
341
|
-
enable(): void;
|
|
342
|
-
disable(): void;
|
|
343
|
-
}
|
|
344
|
-
|
|
345
|
-
//#endregion
|
|
346
|
-
//#region src/plugins/nodes-edge-snapping/constants.d.ts
|
|
347
|
-
//# sourceMappingURL=context-menu.d.ts.map
|
|
348
|
-
|
|
349
|
-
declare const GUIDE_ORIENTATION: {
|
|
350
|
-
readonly HORIZONTAL: "H";
|
|
351
|
-
readonly VERTICAL: "V";
|
|
352
|
-
};
|
|
353
|
-
declare const NODE_SNAP: {
|
|
354
|
-
readonly START: "start";
|
|
355
|
-
readonly CENTER: "center";
|
|
356
|
-
readonly END: "end";
|
|
357
|
-
};
|
|
358
|
-
|
|
359
|
-
//#endregion
|
|
360
|
-
//#region src/plugins/nodes-edge-snapping/types.d.ts
|
|
361
|
-
//# sourceMappingURL=constants.d.ts.map
|
|
362
|
-
type NodeSnapKeys = keyof typeof NODE_SNAP;
|
|
363
|
-
type NodeSnap = (typeof NODE_SNAP)[NodeSnapKeys];
|
|
364
|
-
type NodeSnappingEdge = {
|
|
365
|
-
nodeId: string;
|
|
366
|
-
guide: number;
|
|
367
|
-
offset: number;
|
|
368
|
-
snap: NodeSnap;
|
|
369
|
-
};
|
|
370
|
-
type NodeSnappingEdges = {
|
|
371
|
-
vertical: NodeSnappingEdge[];
|
|
372
|
-
horizontal: NodeSnappingEdge[];
|
|
373
|
-
};
|
|
374
|
-
type LineGuideStop = {
|
|
375
|
-
vertical: number[];
|
|
376
|
-
horizontal: number[];
|
|
377
|
-
};
|
|
378
|
-
type GuideOrientationKeys = keyof typeof GUIDE_ORIENTATION;
|
|
379
|
-
type GuideOrientation = (typeof GUIDE_ORIENTATION)[GuideOrientationKeys];
|
|
380
|
-
type Guide = {
|
|
381
|
-
lineGuide: number;
|
|
382
|
-
offset: number;
|
|
383
|
-
orientation: GuideOrientation;
|
|
384
|
-
snap: NodeSnap;
|
|
385
|
-
};
|
|
386
|
-
type WeaveNodesEdgeSnappingPluginConfig = {
|
|
387
|
-
guideLine: Konva.LineConfig;
|
|
388
|
-
dragSnappingThreshold: number;
|
|
389
|
-
transformSnappingThreshold: number;
|
|
390
|
-
};
|
|
391
|
-
type WeaveNodesEdgeSnappingPluginParams = {
|
|
392
|
-
config?: WeaveNodesEdgeSnappingPluginConfig;
|
|
393
|
-
};
|
|
394
|
-
|
|
395
|
-
//#endregion
|
|
396
|
-
//#region src/plugins/nodes-edge-snapping/nodes-edge-snapping.d.ts
|
|
397
|
-
//# sourceMappingURL=types.d.ts.map
|
|
398
|
-
declare class WeaveNodesEdgeSnappingPlugin extends WeavePlugin {
|
|
399
|
-
private readonly guideLineConfig;
|
|
400
|
-
private readonly dragSnappingThreshold;
|
|
401
|
-
private readonly transformSnappingThreshold;
|
|
402
|
-
onRender: undefined;
|
|
403
|
-
constructor(params?: Partial<WeaveNodesEdgeSnappingPluginParams>);
|
|
404
|
-
getName(): string;
|
|
405
|
-
onInit(): void;
|
|
406
|
-
setEnabled(enabled: boolean): void;
|
|
407
|
-
deleteGuides(): void;
|
|
408
|
-
evaluateGuidelines(e: KonvaEventObject<any>): void;
|
|
409
|
-
private getSelectionParentNode;
|
|
410
|
-
cleanupGuidelines(): void;
|
|
411
|
-
private initEvents;
|
|
412
|
-
getLineGuideStops(nodes: Konva.Node[]): LineGuideStop;
|
|
413
|
-
getObjectSnappingEdges(node: Konva.Node): NodeSnappingEdges;
|
|
414
|
-
getGuides(lineGuideStops: LineGuideStop, itemBounds: NodeSnappingEdges, type: string): Guide[];
|
|
415
|
-
private sortedGuides;
|
|
416
|
-
drawGuides(guides: Guide[]): void;
|
|
417
|
-
enable(): void;
|
|
418
|
-
disable(): void;
|
|
419
|
-
}
|
|
420
|
-
|
|
421
|
-
//#endregion
|
|
422
|
-
//#region src/plugins/nodes-distance-snapping/constants.d.ts
|
|
423
|
-
//# sourceMappingURL=nodes-edge-snapping.d.ts.map
|
|
424
|
-
|
|
425
|
-
type WeaveNodesDistanceSnappingPluginConfig = {
|
|
426
|
-
enterSnappingTolerance: number;
|
|
427
|
-
exitSnappingTolerance: number;
|
|
428
|
-
ui: WeaveNodesDistanceSnappingUIConfig;
|
|
429
|
-
};
|
|
430
|
-
type WeaveNodesDistanceSnappingPluginParams = {
|
|
431
|
-
config?: DeepPartial<WeaveNodesDistanceSnappingPluginConfig>;
|
|
432
|
-
};
|
|
433
|
-
type WeaveNodesDistanceSnappingUIConfig = {
|
|
434
|
-
line: {
|
|
435
|
-
stroke: string;
|
|
436
|
-
strokeWidth: number;
|
|
437
|
-
};
|
|
438
|
-
label: {
|
|
439
|
-
height: number;
|
|
440
|
-
cornerRadius: number;
|
|
441
|
-
fill: string;
|
|
442
|
-
fontSize: number;
|
|
443
|
-
fontFamily: string;
|
|
444
|
-
fontStyle: string;
|
|
445
|
-
linePadding: number;
|
|
446
|
-
paddingX: number;
|
|
447
|
-
};
|
|
448
|
-
};
|
|
449
|
-
|
|
450
|
-
//#endregion
|
|
451
|
-
//#region src/plugins/nodes-distance-snapping/nodes-distance-snapping.d.ts
|
|
452
|
-
//# sourceMappingURL=types.d.ts.map
|
|
453
|
-
declare class WeaveNodesDistanceSnappingPlugin extends WeavePlugin {
|
|
454
|
-
private readonly uiConfig;
|
|
455
|
-
private readonly enterSnappingTolerance;
|
|
456
|
-
private readonly exitSnappingTolerance;
|
|
457
|
-
private peerDistanceX;
|
|
458
|
-
private peerDistanceY;
|
|
459
|
-
private snapPositionX;
|
|
460
|
-
private snapPositionY;
|
|
461
|
-
private currentSizeSnapHorizontal;
|
|
462
|
-
private currentSizeSnapVertical;
|
|
463
|
-
private referenceLayer;
|
|
464
|
-
onRender: undefined;
|
|
465
|
-
constructor(params?: Partial<WeaveNodesDistanceSnappingPluginParams>);
|
|
466
|
-
getName(): string;
|
|
467
|
-
onInit(): void;
|
|
468
|
-
setEnabled(enabled: boolean): void;
|
|
469
|
-
deleteGuides(): void;
|
|
470
|
-
evaluateGuidelines(e: KonvaEventObject<any>): void;
|
|
471
|
-
private getBoxClientRect;
|
|
472
|
-
private getSelectionParentNode;
|
|
473
|
-
private getPeers;
|
|
474
|
-
private validateHorizontalSnapping;
|
|
475
|
-
private validateVerticalSnapping;
|
|
476
|
-
private setNodeClientRectX;
|
|
477
|
-
private setNodeClientRectY;
|
|
478
|
-
cleanupGuidelines(): void;
|
|
479
|
-
private initEvents;
|
|
480
|
-
private isOverlapping;
|
|
481
|
-
private getVerticallyIntersectingNodes;
|
|
482
|
-
private getHorizontallyIntersectingNodes;
|
|
483
|
-
private drawSizeGuidesHorizontally;
|
|
484
|
-
private drawSizeGuidesVertically;
|
|
485
|
-
private renderDistanceLabel;
|
|
486
|
-
private renderHorizontalLineWithDistanceBetweenNodes;
|
|
487
|
-
private renderVerticalLineWithDistanceBetweenNodes;
|
|
488
|
-
enable(): void;
|
|
489
|
-
disable(): void;
|
|
490
|
-
}
|
|
491
|
-
|
|
492
|
-
//#endregion
|
|
493
|
-
//#region src/plugins/stage-grid/constants.d.ts
|
|
494
|
-
//# sourceMappingURL=nodes-distance-snapping.d.ts.map
|
|
495
|
-
|
|
496
|
-
declare const WEAVE_GRID_TYPES: {
|
|
497
|
-
readonly LINES: "lines";
|
|
498
|
-
readonly DOTS: "dots";
|
|
499
|
-
};
|
|
500
|
-
//#endregion
|
|
501
|
-
//#region src/plugins/stage-grid/types.d.ts
|
|
502
|
-
//# sourceMappingURL=constants.d.ts.map
|
|
503
|
-
type WeaveStageGridPluginConfig = {
|
|
504
|
-
type: WeaveStageGridType;
|
|
505
|
-
gridColor: string;
|
|
506
|
-
gridOriginColor: string;
|
|
507
|
-
gridSize: number;
|
|
508
|
-
gridMajorEvery?: number;
|
|
509
|
-
gridMajorRatio?: number;
|
|
510
|
-
gridStroke?: number;
|
|
511
|
-
gridDotRadius?: number;
|
|
512
|
-
gridDotMaxDotsPerAxis: number;
|
|
513
|
-
};
|
|
514
|
-
type WeaveStageGridPluginParams = {
|
|
515
|
-
config?: Partial<WeaveStageGridPluginConfig>;
|
|
516
|
-
};
|
|
517
|
-
type WeaveStageGridTypeKeys = keyof typeof WEAVE_GRID_TYPES;
|
|
518
|
-
type WeaveStageGridType = (typeof WEAVE_GRID_TYPES)[WeaveStageGridTypeKeys];
|
|
519
|
-
|
|
520
|
-
//#endregion
|
|
521
|
-
//#region src/plugins/stage-grid/stage-grid.d.ts
|
|
522
|
-
//# sourceMappingURL=types.d.ts.map
|
|
523
|
-
declare class WeaveStageGridPlugin extends WeavePlugin {
|
|
524
|
-
private moveToolActive;
|
|
525
|
-
private isMouseMiddleButtonPressed;
|
|
526
|
-
private isSpaceKeyPressed;
|
|
527
|
-
private config;
|
|
528
|
-
constructor(params?: Partial<WeaveStageGridPluginParams>);
|
|
529
|
-
getName(): string;
|
|
530
|
-
getLayerName(): string;
|
|
531
|
-
initLayer(): void;
|
|
532
|
-
onInit(): void;
|
|
533
|
-
private initEvents;
|
|
534
|
-
getLayer(): Konva.Layer | undefined;
|
|
535
|
-
getAdaptiveSpacing(scale: number): number;
|
|
536
|
-
private getAdjustedSpacing;
|
|
537
|
-
private renderGridLines;
|
|
538
|
-
private renderGridDots;
|
|
539
|
-
renderGrid(): void;
|
|
540
|
-
onRender(): void;
|
|
541
|
-
enable(): void;
|
|
542
|
-
disable(): void;
|
|
543
|
-
getType(): WeaveStageGridType;
|
|
544
|
-
setType(type: WeaveStageGridType): void;
|
|
545
|
-
}
|
|
546
|
-
|
|
547
|
-
//#endregion
|
|
548
|
-
//#region src/plugins/stage-zoom/constants.d.ts
|
|
549
|
-
//# sourceMappingURL=stage-grid.d.ts.map
|
|
550
|
-
|
|
551
|
-
type WeaveStageZoomPluginConfig = {
|
|
552
|
-
zoomSteps: number[];
|
|
553
|
-
defaultZoom: number;
|
|
554
|
-
fitToScreen: {
|
|
555
|
-
padding: number;
|
|
556
|
-
};
|
|
557
|
-
fitToSelection: {
|
|
558
|
-
padding: number;
|
|
559
|
-
};
|
|
560
|
-
zoomInertia: {
|
|
561
|
-
friction: number;
|
|
562
|
-
mouseWheelStep: number;
|
|
563
|
-
trackpadStep: number;
|
|
564
|
-
};
|
|
565
|
-
};
|
|
566
|
-
type WeaveStageZoomPluginParams = {
|
|
567
|
-
config?: DeepPartial<WeaveStageZoomPluginConfig>;
|
|
568
|
-
};
|
|
569
|
-
|
|
570
|
-
//#endregion
|
|
571
|
-
//#region src/plugins/stage-zoom/stage-zoom.d.ts
|
|
572
|
-
//# sourceMappingURL=types.d.ts.map
|
|
573
|
-
declare class WeaveStageZoomPlugin extends WeavePlugin {
|
|
574
|
-
private isCtrlOrMetaPressed;
|
|
575
|
-
protected previousPointer: string | null;
|
|
576
|
-
getLayerName: undefined;
|
|
577
|
-
initLayer: undefined;
|
|
578
|
-
onRender: undefined;
|
|
579
|
-
private config;
|
|
580
|
-
private actualScale;
|
|
581
|
-
private actualStep;
|
|
582
|
-
private updatedMinimumZoom;
|
|
583
|
-
private pinching;
|
|
584
|
-
private zooming;
|
|
585
|
-
private isTrackpad;
|
|
586
|
-
private zoomVelocity;
|
|
587
|
-
private zoomInertiaType;
|
|
588
|
-
defaultStep: number;
|
|
589
|
-
constructor(params?: WeaveStageZoomPluginParams);
|
|
590
|
-
getName(): string;
|
|
591
|
-
onInit(): void;
|
|
592
|
-
private setZoom;
|
|
593
|
-
canZoomOut(): boolean;
|
|
594
|
-
canZoomIn(): boolean;
|
|
595
|
-
zoomToStep(step: number): void;
|
|
596
|
-
private findClosestStepIndex;
|
|
597
|
-
zoomIn(pointer?: Konva.Vector2d): void;
|
|
598
|
-
zoomOut(pointer?: Konva.Vector2d): void;
|
|
599
|
-
minimumZoom(): number;
|
|
600
|
-
fitToScreen(): void;
|
|
601
|
-
fitToSelection(smartZoom?: boolean): void;
|
|
602
|
-
enable(): void;
|
|
603
|
-
disable(): void;
|
|
604
|
-
getDistance(p1: Konva.Vector2d, p2: Konva.Vector2d): number;
|
|
605
|
-
getCenter(p1: Konva.Vector2d, p2: Konva.Vector2d): {
|
|
606
|
-
x: number;
|
|
607
|
-
y: number;
|
|
608
|
-
};
|
|
609
|
-
private initEvents;
|
|
610
|
-
getInertiaScale(): number;
|
|
611
|
-
zoomTick(): void;
|
|
612
|
-
isPinching(): boolean;
|
|
613
|
-
getStageGridPlugin(): WeaveStageGridPlugin | undefined;
|
|
614
|
-
getNodesSelectionPlugin(): WeaveNodesSelectionPlugin | undefined;
|
|
615
|
-
getContextMenuPlugin(): WeaveContextMenuPlugin | undefined;
|
|
616
|
-
}
|
|
617
|
-
|
|
618
|
-
//#endregion
|
|
619
|
-
//#region src/plugins/stage-panning/types.d.ts
|
|
620
|
-
//# sourceMappingURL=stage-zoom.d.ts.map
|
|
621
|
-
type WeaveStagePanningPluginParams = {
|
|
622
|
-
config?: Partial<WeaveStagePanningPluginConfig>;
|
|
623
|
-
};
|
|
624
|
-
type WeaveStagePanningPluginConfig = {
|
|
625
|
-
edgePanOffset: number;
|
|
626
|
-
edgePanSpeed: number;
|
|
627
|
-
};
|
|
628
|
-
|
|
629
|
-
//#endregion
|
|
630
|
-
//#region src/plugins/stage-panning/stage-panning.d.ts
|
|
631
|
-
//# sourceMappingURL=types.d.ts.map
|
|
632
|
-
|
|
633
|
-
declare class WeaveStagePanningPlugin extends WeavePlugin {
|
|
634
|
-
private readonly config;
|
|
635
|
-
private moveToolActive;
|
|
636
|
-
private isMouseLeftButtonPressed;
|
|
637
|
-
private isMouseMiddleButtonPressed;
|
|
638
|
-
private isCtrlOrMetaPressed;
|
|
639
|
-
private isDragging;
|
|
640
|
-
private enableMove;
|
|
641
|
-
private isSpaceKeyPressed;
|
|
642
|
-
private pointers;
|
|
643
|
-
private panning;
|
|
644
|
-
protected previousPointer: string | null;
|
|
645
|
-
protected currentPointer: Konva.Vector2d | null;
|
|
646
|
-
protected stageScrollInterval: NodeJS.Timeout | undefined;
|
|
647
|
-
protected targetScrollIntervals: Record<string, NodeJS.Timeout | undefined>;
|
|
648
|
-
getLayerName: undefined;
|
|
649
|
-
initLayer: undefined;
|
|
650
|
-
onRender: undefined;
|
|
651
|
-
constructor(params?: WeaveStagePanningPluginParams);
|
|
652
|
-
getName(): string;
|
|
653
|
-
onInit(): void;
|
|
654
|
-
private setCursor;
|
|
655
|
-
private disableMove;
|
|
656
|
-
private initEvents;
|
|
657
|
-
isPanning(): boolean;
|
|
658
|
-
getDistance(p1: Konva.Vector2d, p2: Konva.Vector2d): number;
|
|
659
|
-
getTouchCenter(): {
|
|
660
|
-
x: number;
|
|
661
|
-
y: number;
|
|
662
|
-
} | null;
|
|
663
|
-
getZoomPlugin(): WeaveStageZoomPlugin | undefined;
|
|
664
|
-
getContextMenuPlugin(): WeaveContextMenuPlugin | undefined;
|
|
665
|
-
getNodesSelectionPlugin(): WeaveNodesSelectionPlugin | undefined;
|
|
666
|
-
getNodesEdgeSnappingPlugin(): WeaveNodesEdgeSnappingPlugin | undefined;
|
|
667
|
-
getNodesDistanceSnappingPlugin(): WeaveNodesDistanceSnappingPlugin | undefined;
|
|
668
|
-
getStageGridPlugin(): WeaveStageGridPlugin | undefined;
|
|
669
|
-
getCurrentPointer(): konva_lib_types6.Vector2d | null;
|
|
670
|
-
cleanupEdgeMoveIntervals(): void;
|
|
671
|
-
enable(): void;
|
|
672
|
-
disable(): void;
|
|
673
|
-
}
|
|
674
|
-
|
|
675
|
-
//#endregion
|
|
676
|
-
//#region src/plugins/nodes-selection/nodes-selection.d.ts
|
|
677
|
-
//# sourceMappingURL=stage-panning.d.ts.map
|
|
678
|
-
declare class WeaveNodesSelectionPlugin extends WeavePlugin {
|
|
679
|
-
private tr;
|
|
680
|
-
private trHover;
|
|
681
|
-
private config;
|
|
682
|
-
private selectionRectangle;
|
|
683
|
-
private active;
|
|
684
|
-
private defaultEnabledAnchors;
|
|
685
|
-
private selecting;
|
|
686
|
-
private didMove;
|
|
687
|
-
private initialized;
|
|
688
|
-
private isSpaceKeyPressed;
|
|
689
|
-
protected taps: number;
|
|
690
|
-
protected isDoubleTap: boolean;
|
|
691
|
-
protected tapStart: {
|
|
692
|
-
x: number;
|
|
693
|
-
y: number;
|
|
694
|
-
time: number;
|
|
695
|
-
} | null;
|
|
696
|
-
protected lastTapTime: number;
|
|
697
|
-
private x1;
|
|
698
|
-
private y1;
|
|
699
|
-
private x2;
|
|
700
|
-
private y2;
|
|
701
|
-
private selectionStart;
|
|
702
|
-
private panSpeed;
|
|
703
|
-
private readonly panDirection;
|
|
704
|
-
private pointers;
|
|
705
|
-
private panLoopId;
|
|
706
|
-
onRender: undefined;
|
|
707
|
-
constructor(params?: WeaveNodesSelectionPluginParams);
|
|
708
|
-
getName(): string;
|
|
709
|
-
getLayerName(): string;
|
|
710
|
-
initLayer(): void;
|
|
711
|
-
isPasting(): boolean;
|
|
712
|
-
isAreaSelecting(): boolean;
|
|
713
|
-
isSelecting(): boolean;
|
|
714
|
-
isNodeSelected(ele: Konva.Node): boolean;
|
|
715
|
-
onInit(): void;
|
|
716
|
-
private getLayer;
|
|
717
|
-
triggerSelectedNodesEvent(): void;
|
|
718
|
-
removeSelectedNodes(): void;
|
|
719
|
-
private updateSelectionRect;
|
|
720
|
-
private getSpeedFromEdge;
|
|
721
|
-
private updatePanDirection;
|
|
722
|
-
private stopPanLoop;
|
|
723
|
-
private panLoop;
|
|
724
|
-
private setTapStart;
|
|
725
|
-
private checkMovedDrag;
|
|
726
|
-
private checkMoved;
|
|
727
|
-
private checkDoubleTap;
|
|
728
|
-
private hideSelectorArea;
|
|
729
|
-
private initEvents;
|
|
730
|
-
private handleMultipleSelectionBehavior;
|
|
731
|
-
protected syncSelection(): void;
|
|
732
|
-
protected getSelectionPlugin(): WeaveNodesSelectionPlugin | undefined;
|
|
733
|
-
protected hideHoverState(): void;
|
|
734
|
-
handleClickOrTap(e: KonvaEventObject<PointerEvent, Stage>): void;
|
|
735
|
-
getTransformer(): Konva.Transformer;
|
|
736
|
-
getHoverTransformer(): Konva.Transformer;
|
|
737
|
-
handleBehaviors(): void;
|
|
738
|
-
setSelectedNodes(nodes: Konva.Node[]): void;
|
|
739
|
-
getSelectedNodes(): (Konva.Group | Konva.Shape)[];
|
|
740
|
-
getSelectedNodesExtended(): WeaveSelection[];
|
|
741
|
-
selectAll(): void;
|
|
742
|
-
selectNone(): void;
|
|
743
|
-
enable(): void;
|
|
744
|
-
disable(): void;
|
|
745
|
-
getContextMenuPlugin(): WeaveContextMenuPlugin | undefined;
|
|
746
|
-
getStageGridPlugin(): WeaveStageGridPlugin | undefined;
|
|
747
|
-
getNodesEdgeSnappingPlugin(): WeaveNodesEdgeSnappingPlugin | undefined;
|
|
748
|
-
getNodesDistanceSnappingPlugin(): WeaveNodesDistanceSnappingPlugin | undefined;
|
|
749
|
-
getStagePanningPlugin(): WeaveStagePanningPlugin | undefined;
|
|
750
|
-
getSelectorConfig(): TransformerConfig;
|
|
751
|
-
}
|
|
752
|
-
|
|
753
|
-
//#endregion
|
|
754
|
-
//#region src/nodes/node.d.ts
|
|
755
|
-
//# sourceMappingURL=nodes-selection.d.ts.map
|
|
756
|
-
declare abstract class WeaveNode implements WeaveNodeBase {
|
|
757
|
-
protected instance: Weave;
|
|
758
|
-
protected nodeType: string;
|
|
759
|
-
protected didMove: boolean;
|
|
760
|
-
private logger;
|
|
761
|
-
protected previousPointer: string | null;
|
|
762
|
-
register(instance: Weave): WeaveNode;
|
|
763
|
-
getNodeType(): string;
|
|
764
|
-
getLogger(): Logger;
|
|
765
|
-
getSelectionPlugin(): WeaveNodesSelectionPlugin | undefined;
|
|
766
|
-
isSelecting(): boolean;
|
|
767
|
-
isPasting(): boolean;
|
|
768
|
-
setupDefaultNodeAugmentation(node: Konva.Node): void;
|
|
769
|
-
isNodeSelected(ele: Konva.Node): boolean;
|
|
770
|
-
scaleReset(node: Konva.Node): void;
|
|
771
|
-
protected setHoverState(node: Konva.Node): void;
|
|
772
|
-
protected hideHoverState(): void;
|
|
773
|
-
setupDefaultNodeEvents(node: Konva.Node): void;
|
|
774
|
-
handleMouseOver(node: Konva.Node): boolean;
|
|
775
|
-
handleMouseout(node: Konva.Node): void;
|
|
776
|
-
create(key: string, props: WeaveElementAttributes): WeaveStateElement;
|
|
777
|
-
onAdd(nodeInstance: WeaveElementInstance): void;
|
|
778
|
-
abstract onRender(props: WeaveElementAttributes): WeaveElementInstance;
|
|
779
|
-
abstract onUpdate(instance: WeaveElementInstance, nextProps: WeaveElementAttributes): void;
|
|
780
|
-
onDestroy(nodeInstance: WeaveElementInstance): void;
|
|
781
|
-
serialize(instance: WeaveElementInstance): WeaveStateElement;
|
|
782
|
-
show(instance: Konva.Node): void;
|
|
783
|
-
hide(instance: Konva.Node): void;
|
|
784
|
-
isVisible(instance: Konva.Node): boolean;
|
|
785
|
-
lock(instance: Konva.Node): void;
|
|
786
|
-
unlock(instance: Konva.Node): void;
|
|
787
|
-
isLocked(instance: Konva.Node): boolean;
|
|
788
|
-
protected defaultGetTransformerProperties(nodeTransformConfig?: any): any;
|
|
789
|
-
private getNodesSelectionPlugin;
|
|
790
|
-
getNodesEdgeSnappingPlugin(): WeaveNodesEdgeSnappingPlugin | undefined;
|
|
791
|
-
getNodesDistanceSnappingPlugin(): WeaveNodesDistanceSnappingPlugin | undefined;
|
|
792
|
-
realOffset(instance: WeaveStateElement): Konva.Vector2d;
|
|
793
|
-
private getRealSelectedNode;
|
|
794
|
-
}
|
|
795
|
-
|
|
796
|
-
//#endregion
|
|
797
|
-
//#region src/actions/action.d.ts
|
|
798
|
-
//# sourceMappingURL=node.d.ts.map
|
|
799
|
-
declare abstract class WeaveAction implements WeaveActionBase {
|
|
800
|
-
protected instance: Weave;
|
|
801
|
-
protected name: string;
|
|
802
|
-
protected tapStart: {
|
|
803
|
-
x: number;
|
|
804
|
-
y: number;
|
|
805
|
-
time: number;
|
|
806
|
-
} | null;
|
|
807
|
-
props: WeaveElementAttributes;
|
|
808
|
-
private logger;
|
|
809
|
-
constructor();
|
|
810
|
-
getName(): string;
|
|
811
|
-
getLogger(): Logger;
|
|
812
|
-
register(instance: Weave): WeaveAction;
|
|
813
|
-
updateProps(props: WeaveElementAttributes): void;
|
|
814
|
-
getProps(): WeaveElementAttributes;
|
|
815
|
-
isPressed(e: KonvaEventObject<PointerEvent, Konva.Stage>): boolean;
|
|
816
|
-
setTapStart(e: KonvaEventObject<PointerEvent, Konva.Stage>): void;
|
|
817
|
-
isTap(e: KonvaEventObject<PointerEvent, Konva.Stage>): boolean;
|
|
818
|
-
abstract onInit?(): void;
|
|
819
|
-
abstract trigger(cancelAction: () => void, params?: unknown): unknown;
|
|
820
|
-
abstract onPropsChange?(): void;
|
|
821
|
-
abstract cleanup?(): void;
|
|
822
|
-
}
|
|
823
|
-
|
|
824
|
-
//#endregion
|
|
825
|
-
//#region src/logger/logger.d.ts
|
|
826
|
-
//# sourceMappingURL=action.d.ts.map
|
|
827
|
-
declare class WeaveLogger {
|
|
828
|
-
private config;
|
|
829
|
-
private disabled;
|
|
830
|
-
private logger;
|
|
831
|
-
constructor(config: WeaveLoggerConfig);
|
|
832
|
-
private log;
|
|
833
|
-
getDisabled(): boolean;
|
|
834
|
-
getLevel(): pino.LevelWithSilentOrString;
|
|
835
|
-
getLogger(): Logger;
|
|
836
|
-
getChildLogger(name: string): pino.Logger<never, boolean>;
|
|
837
|
-
}
|
|
838
|
-
|
|
839
|
-
//#endregion
|
|
840
|
-
//#region src/managers/cloning.d.ts
|
|
841
|
-
//# sourceMappingURL=logger.d.ts.map
|
|
842
|
-
declare class WeaveCloningManager {
|
|
843
|
-
private instance;
|
|
844
|
-
private logger;
|
|
845
|
-
private clones;
|
|
846
|
-
constructor(instance: Weave);
|
|
847
|
-
nodesToGroupSerialized(instancesToClone: Konva.Node[]): {
|
|
848
|
-
serializedNodes: WeaveStateElement[];
|
|
849
|
-
minPoint: Konva.Vector2d;
|
|
850
|
-
} | undefined;
|
|
851
|
-
cloneNodes(instancesToClone: Konva.Node[], targetContainer: Konva.Group | Konva.Layer | undefined, onPoint: Konva.Vector2d): void;
|
|
852
|
-
private recursivelyUpdateKeys;
|
|
853
|
-
cloneNode(targetNode: Konva.Node): Konva.Node | undefined;
|
|
854
|
-
addClone(node: Konva.Node): void;
|
|
855
|
-
removeClone(node: Konva.Node): void;
|
|
856
|
-
getClones(): konva_lib_Node9.Node<konva_lib_Node8.NodeConfig>[];
|
|
857
|
-
isClone(node: Konva.Node): konva_lib_Node11.Node<konva_lib_Node10.NodeConfig> | undefined;
|
|
858
|
-
cleanupClones(): void;
|
|
859
|
-
}
|
|
860
|
-
|
|
861
|
-
//#endregion
|
|
862
|
-
//#region src/managers/register.d.ts
|
|
863
|
-
//# sourceMappingURL=cloning.d.ts.map
|
|
864
|
-
declare class WeaveRegisterManager {
|
|
865
|
-
private instance;
|
|
866
|
-
private nodesHandlers;
|
|
867
|
-
private actionsHandlers;
|
|
868
|
-
private plugins;
|
|
869
|
-
private logger;
|
|
870
|
-
constructor(instance: Weave);
|
|
871
|
-
getPlugins(): Record<string, WeavePlugin>;
|
|
872
|
-
getNodesHandlers(): Record<string, WeaveNode>;
|
|
873
|
-
getActionsHandlers(): Record<string, WeaveAction>;
|
|
874
|
-
getPlugin<T>(pluginName: string): T | undefined;
|
|
875
|
-
getActionHandler<T>(actionName: string): T | undefined;
|
|
876
|
-
getNodeHandler<T>(nodeType: string): T | undefined;
|
|
877
|
-
registerPlugins(): void;
|
|
878
|
-
registerPlugin(plugin: WeavePlugin): void;
|
|
879
|
-
registerNodesHandlers(): void;
|
|
880
|
-
registerNodeHandler(node: WeaveNode): void;
|
|
881
|
-
registerActionsHandlers(): void;
|
|
882
|
-
registerActionHandler(action: WeaveAction): void;
|
|
883
|
-
}
|
|
884
|
-
|
|
885
|
-
//#endregion
|
|
886
|
-
//#region src/managers/stage.d.ts
|
|
887
|
-
//# sourceMappingURL=register.d.ts.map
|
|
888
|
-
declare class WeaveStageManager {
|
|
889
|
-
private instance;
|
|
890
|
-
private logger;
|
|
891
|
-
private stage;
|
|
892
|
-
private config;
|
|
893
|
-
constructor(instance: Weave, config: Konva.StageConfig);
|
|
894
|
-
getConfiguration(): StageConfig;
|
|
895
|
-
setStage(stage: Konva.Stage): void;
|
|
896
|
-
getStage(): Konva.Stage;
|
|
897
|
-
getMainLayer(): Konva.Layer | undefined;
|
|
898
|
-
getSelectionLayer(): Konva.Layer | undefined;
|
|
899
|
-
getCommentsLayer(): Konva.Layer | undefined;
|
|
900
|
-
getGridLayer(): Konva.Layer | undefined;
|
|
901
|
-
getUtilityLayer(): Konva.Layer | undefined;
|
|
902
|
-
getInstanceRecursive(instance: Konva.Node, filterInstanceType?: string[]): Konva.Node;
|
|
903
|
-
initStage(): void;
|
|
904
|
-
getContainerNodes(): WeaveElementInstance[];
|
|
905
|
-
}
|
|
906
|
-
|
|
907
|
-
//#endregion
|
|
908
|
-
//#region src/types.d.ts
|
|
909
|
-
//# sourceMappingURL=stage.d.ts.map
|
|
910
|
-
type DOMElement = HTMLElement | Element | null;
|
|
911
|
-
|
|
912
|
-
//#endregion
|
|
913
|
-
//#region src/weave.d.ts
|
|
914
|
-
declare class Weave {
|
|
915
|
-
private id;
|
|
916
|
-
private emitter;
|
|
917
|
-
private config;
|
|
918
|
-
private logger;
|
|
919
|
-
private moduleLogger;
|
|
920
|
-
private reconciler;
|
|
921
|
-
private stateSerializer;
|
|
922
|
-
private renderer;
|
|
923
|
-
private initialized;
|
|
924
|
-
private status;
|
|
925
|
-
private setupManager;
|
|
926
|
-
private registerManager;
|
|
927
|
-
private stateManager;
|
|
928
|
-
private storeManager;
|
|
929
|
-
private stageManager;
|
|
930
|
-
private groupsManager;
|
|
931
|
-
private targetingManager;
|
|
932
|
-
private cloningManager;
|
|
933
|
-
private fontsManager;
|
|
934
|
-
private zIndexManager;
|
|
935
|
-
private pluginsManager;
|
|
936
|
-
private actionsManager;
|
|
937
|
-
private exportManager;
|
|
938
|
-
private readonly asyncElements;
|
|
939
|
-
constructor(weaveConfig: WeaveConfig, stageConfig: Konva.StageConfig);
|
|
940
|
-
setupRenderer(): void;
|
|
941
|
-
setStatus(status: WeaveStatus): void;
|
|
942
|
-
getStatus(): WeaveStatus;
|
|
943
|
-
setStore(store: WeaveStore): void;
|
|
944
|
-
private handleStoreConnectionStatusChange;
|
|
945
|
-
start(): Promise<void>;
|
|
946
|
-
destroy(): void;
|
|
947
|
-
getId(): string;
|
|
948
|
-
getConfiguration(): WeaveConfig;
|
|
949
|
-
augmentKonvaStageClass(): void;
|
|
950
|
-
augmentKonvaNodeClass(config?: WeaveNodeConfiguration): void;
|
|
951
|
-
emitEvent<T>(event: string, payload?: T): void;
|
|
952
|
-
addEventListener<T>(event: string, callback: (payload: T) => void): void;
|
|
953
|
-
removeEventListener<T>(event: string, callback: (payload: T) => void): void;
|
|
954
|
-
getLogger(): WeaveLogger;
|
|
955
|
-
getMainLogger(): Logger;
|
|
956
|
-
getChildLogger(name: string): pino.Logger<never, boolean>;
|
|
957
|
-
getStageManager(): WeaveStageManager;
|
|
958
|
-
getStage(): Konva.Stage;
|
|
959
|
-
getMainLayer(): Konva.Layer | undefined;
|
|
960
|
-
getSelectionLayer(): Konva.Layer | undefined;
|
|
961
|
-
getCommentsLayer(): Konva.Layer | undefined;
|
|
962
|
-
getGridLayer(): Konva.Layer | undefined;
|
|
963
|
-
getUtilityLayer(): Konva.Layer | undefined;
|
|
964
|
-
setStage(stage: Konva.Stage): void;
|
|
965
|
-
getStageConfiguration(): StageConfig;
|
|
966
|
-
getInstanceRecursive(instance: Konva.Node, filterInstanceType?: string[]): Konva.Node;
|
|
967
|
-
getContainerNodes(): WeaveElementInstance[];
|
|
968
|
-
getClosestParentWithWeaveId(el: DOMElement): DOMElement;
|
|
969
|
-
getRegisterManager(): WeaveRegisterManager;
|
|
970
|
-
getPlugins(): Record<string, WeavePlugin>;
|
|
971
|
-
getPlugin<T>(pluginName: string): T | undefined;
|
|
972
|
-
getNodesHandlers(): Record<string, WeaveNode>;
|
|
973
|
-
getNodeHandler<T>(nodeType: string): T | undefined;
|
|
974
|
-
getActionsHandlers(): Record<string, WeaveAction>;
|
|
975
|
-
getActionHandler<T>(actionName: string): T | undefined;
|
|
976
|
-
getStore<T extends WeaveStore>(): T;
|
|
977
|
-
registerPlugin(plugin: WeavePlugin): void;
|
|
978
|
-
registerNodeHandler(node: WeaveNode): void;
|
|
979
|
-
registerActionHandler(action: WeaveAction): void;
|
|
980
|
-
registerStore(store: WeaveStore): void;
|
|
981
|
-
isPluginEnabled(pluginName: string): boolean;
|
|
982
|
-
enablePlugin(pluginName: string): void;
|
|
983
|
-
disablePlugin(pluginName: string): void;
|
|
984
|
-
getActiveAction(): string | undefined;
|
|
985
|
-
triggerAction<T, P>(actionName: string, params?: T): P;
|
|
986
|
-
getPropsAction(actionName: string): WeaveElementAttributes;
|
|
987
|
-
updatePropsAction(actionName: string, params: WeaveElementAttributes): void;
|
|
988
|
-
cancelAction(actionName: string): void;
|
|
989
|
-
update(newState: WeaveState): void;
|
|
990
|
-
render(): void;
|
|
991
|
-
findNodeById(tree: WeaveStateElement, key: string, parent?: WeaveStateElement | null, index?: number): WeaveNodeFound;
|
|
992
|
-
findNodesByType(tree: WeaveStateElement, nodeType: string): WeaveStateElement[];
|
|
993
|
-
getNode(nodeKey: string): {
|
|
994
|
-
node: WeaveStateElement | null;
|
|
995
|
-
parent: WeaveStateElement | null;
|
|
996
|
-
index: number;
|
|
997
|
-
};
|
|
998
|
-
addNode(node: WeaveStateElement, parentId?: string, index?: number | undefined): void;
|
|
999
|
-
updateNode(node: WeaveStateElement): void;
|
|
1000
|
-
updateNodes(nodes: WeaveStateElement[]): void;
|
|
1001
|
-
removeNode(node: WeaveStateElement): void;
|
|
1002
|
-
removeNodes(nodes: WeaveStateElement[]): void;
|
|
1003
|
-
moveNode(node: WeaveStateElement, position: WeavePosition): void;
|
|
1004
|
-
getElementsTree(): WeaveStateElement[];
|
|
1005
|
-
isEmpty(): boolean;
|
|
1006
|
-
getNodeContainerId(node: WeaveElementInstance | Konva.Node): string;
|
|
1007
|
-
getNodeContainer(node: WeaveElementInstance | Konva.Node): Konva.Node | null;
|
|
1008
|
-
getBoundingBox(nodes: Konva.Node[], config?: {
|
|
1009
|
-
skipTransform?: boolean;
|
|
1010
|
-
skipShadow?: boolean;
|
|
1011
|
-
skipStroke?: boolean;
|
|
1012
|
-
relativeTo?: Konva.Container;
|
|
1013
|
-
} | undefined): {
|
|
1014
|
-
x: number;
|
|
1015
|
-
y: number;
|
|
1016
|
-
width: number;
|
|
1017
|
-
height: number;
|
|
1018
|
-
};
|
|
1019
|
-
moveUp(node: WeaveElementInstance): void;
|
|
1020
|
-
moveDown(node: WeaveElementInstance): void;
|
|
1021
|
-
sendToBack(nodes: WeaveElementInstance | WeaveElementInstance[]): void;
|
|
1022
|
-
bringToFront(nodes: WeaveElementInstance | WeaveElementInstance[]): void;
|
|
1023
|
-
group(nodes: WeaveStateElement[]): void;
|
|
1024
|
-
unGroup(group: WeaveStateElement): void;
|
|
1025
|
-
resolveNode(node: Konva.Node): WeaveElementInstance | undefined;
|
|
1026
|
-
pointIntersectsElement(point?: Konva.Vector2d): Konva.Node | null;
|
|
1027
|
-
nodeIntersectsContainerElement(node: Konva.Node | Konva.Transformer, actualLayer?: Konva.Layer | Konva.Group): Konva.Node | undefined;
|
|
1028
|
-
getMousePointer(point?: Konva.Vector2d): WeaveMousePointInfo;
|
|
1029
|
-
getMousePointerRelativeToContainer(container: Konva.Node | Konva.Layer): WeaveMousePointInfoSimple;
|
|
1030
|
-
selectNodesByKey(nodesIds: string[]): void;
|
|
1031
|
-
getCloningManager(): WeaveCloningManager;
|
|
1032
|
-
nodesToGroupSerialized(instancesToClone: Konva.Node[]): WeaveSerializedGroup;
|
|
1033
|
-
cloneNodes(instancesToClone: Konva.Node[], targetContainer: Konva.Layer | Konva.Group | undefined, onPoint: Konva.Vector2d): void;
|
|
1034
|
-
getFonts(): WeaveFont[];
|
|
1035
|
-
imageToBase64(img: HTMLImageElement, mimeType: string): string;
|
|
1036
|
-
exportNodes(nodes: WeaveElementInstance[], boundingNodes: (nodes: Konva.Node[]) => Konva.Node[], options: WeaveExportNodesOptions): Promise<HTMLImageElement>;
|
|
1037
|
-
exportNodesServerSide(nodes: string[], boundingNodes: (nodes: Konva.Node[]) => Konva.Node[], options: WeaveExportNodesOptions): Promise<{
|
|
1038
|
-
composites: {
|
|
1039
|
-
input: Buffer;
|
|
1040
|
-
left: number;
|
|
1041
|
-
top: number;
|
|
1042
|
-
}[];
|
|
1043
|
-
width: number;
|
|
1044
|
-
height: number;
|
|
1045
|
-
}>;
|
|
1046
|
-
allNodesLocked(nodes: Konva.Node[]): boolean;
|
|
1047
|
-
allNodesUnlocked(nodes: Konva.Node[]): boolean;
|
|
1048
|
-
lockNode(node: Konva.Node): void;
|
|
1049
|
-
lockNodes(nodes: Konva.Node[]): void;
|
|
1050
|
-
unlockNode(node: Konva.Node): void;
|
|
1051
|
-
unlockNodes(nodes: Konva.Node[]): void;
|
|
1052
|
-
allNodesVisible(nodes: Konva.Node[]): boolean;
|
|
1053
|
-
allNodesHidden(nodes: Konva.Node[]): boolean;
|
|
1054
|
-
hideNode(node: Konva.Node): void;
|
|
1055
|
-
hideNodes(nodes: Konva.Node[]): void;
|
|
1056
|
-
showNode(node: Konva.Node): void;
|
|
1057
|
-
showNodes(nodes: Konva.Node[]): void;
|
|
1058
|
-
asyncElementsLoaded(): boolean;
|
|
1059
|
-
loadAsyncElement(nodeId: string, type: string): void;
|
|
1060
|
-
resolveAsyncElement(nodeId: string, type: string): void;
|
|
1061
|
-
isServerSide(): boolean;
|
|
1062
|
-
} //#endregion
|
|
1063
|
-
//#region ../types/dist/types.d.ts
|
|
1064
|
-
|
|
1065
|
-
//#endregion
|
|
1066
|
-
//#region src/stores/types.d.ts
|
|
1067
|
-
//# sourceMappingURL=weave.d.ts.map
|
|
1068
|
-
//#endregion
|
|
1069
|
-
//#region src/base/store.d.ts
|
|
1070
|
-
type WeaveStoreOptions = {
|
|
1071
|
-
getUser: () => WeaveUser;
|
|
1072
|
-
undoManagerOptions?: WeaveUndoManagerOptions;
|
|
1073
|
-
};
|
|
1074
|
-
type WeaveUser = {
|
|
1075
|
-
id: string;
|
|
1076
|
-
name: string;
|
|
1077
|
-
email: string;
|
|
1078
|
-
[key: string]: any;
|
|
1079
|
-
};
|
|
1080
|
-
type WeaveUndoManagerOptions = {
|
|
1081
|
-
captureTimeout?: number;
|
|
1082
|
-
trackedOrigins?: Set<any>;
|
|
1083
|
-
};
|
|
4
|
+
import { Doc } from "yjs";
|
|
5
|
+
import { IncomingMessage } from "http";
|
|
1084
6
|
|
|
1085
|
-
//#endregion
|
|
1086
7
|
//#region src/types.d.ts
|
|
1087
8
|
type WeaveStoreWebsocketsOptions = {
|
|
1088
9
|
roomId: string;
|
|
@@ -1092,7 +13,7 @@ type WeaveStoreWebsocketsOptions = {
|
|
|
1092
13
|
};
|
|
1093
14
|
type PerformUpgrade = (req: IncomingMessage) => Promise<boolean>;
|
|
1094
15
|
type ExtractRoomId = (req: IncomingMessage) => string | undefined;
|
|
1095
|
-
type FetchInitialState = (doc:
|
|
16
|
+
type FetchInitialState = (doc: Doc) => void;
|
|
1096
17
|
type PersistRoom = (roomId: string, actualState: Uint8Array<ArrayBufferLike>) => Promise<void>;
|
|
1097
18
|
type FetchRoom = (roomId: string) => Promise<Uint8Array | null>;
|
|
1098
19
|
|
package/dist/client.js
CHANGED
|
@@ -1,29 +1,7 @@
|
|
|
1
|
-
import { WeaveStore } from "@inditextech/weave-sdk
|
|
2
|
-
import
|
|
3
|
-
import "yjs";
|
|
4
|
-
import { IncomingMessage } from "http";
|
|
1
|
+
import { WeaveStore } from "@inditextech/weave-sdk";
|
|
2
|
+
import { WEAVE_STORE_CONNECTION_STATUS } from "@inditextech/weave-types";
|
|
5
3
|
import { WebsocketProvider } from "y-websocket";
|
|
6
4
|
|
|
7
|
-
//#region ../types/dist/types.js
|
|
8
|
-
const WEAVE_TRANSFORMER_ANCHORS = {
|
|
9
|
-
["TOP_LEFT"]: "top-left",
|
|
10
|
-
["TOP_CENTER"]: "top-center",
|
|
11
|
-
["TOP_RIGHT"]: "top-right",
|
|
12
|
-
["MIDDLE_RIGHT"]: "middle-right",
|
|
13
|
-
["MIDDLE_LEFT"]: "middle-left",
|
|
14
|
-
["BOTTOM_LEFT"]: "bottom-left",
|
|
15
|
-
["BOTTOM_CENTER"]: "bottom-center",
|
|
16
|
-
["BOTTOM_RIGHT"]: "bottom-right"
|
|
17
|
-
};
|
|
18
|
-
const WEAVE_DEFAULT_ENABLED_ANCHORS = Object.values(WEAVE_TRANSFORMER_ANCHORS);
|
|
19
|
-
const WEAVE_STORE_CONNECTION_STATUS = {
|
|
20
|
-
["ERROR"]: "error",
|
|
21
|
-
["CONNECTING"]: "connecting",
|
|
22
|
-
["CONNECTED"]: "connected",
|
|
23
|
-
["DISCONNECTED"]: "disconnected"
|
|
24
|
-
};
|
|
25
|
-
|
|
26
|
-
//#endregion
|
|
27
5
|
//#region src/constants.ts
|
|
28
6
|
const WEAVE_STORE_WEBSOCKETS = "store-websockets";
|
|
29
7
|
|
package/dist/server.d.ts
CHANGED
|
@@ -1,9 +1,10 @@
|
|
|
1
|
-
import
|
|
2
|
-
import
|
|
3
|
-
import * as Y from "yjs";
|
|
1
|
+
import { Doc } from "yjs";
|
|
2
|
+
import { Server } from "node:http";
|
|
4
3
|
import Redis from "ioredis";
|
|
4
|
+
import { Server as Server$1 } from "node:https";
|
|
5
5
|
import Emittery from "emittery";
|
|
6
|
-
import "
|
|
6
|
+
import { IncomingMessage } from "http";
|
|
7
|
+
import { WeaveStoreHorizontalSyncConfig, WeaveStoreHorizontalSyncRedisConfig } from "@inditextech/weave-types";
|
|
7
8
|
|
|
8
9
|
//#region src/types.d.ts
|
|
9
10
|
type WeaveStoreWebsocketsOptions = {
|
|
@@ -14,23 +15,11 @@ type WeaveStoreWebsocketsOptions = {
|
|
|
14
15
|
};
|
|
15
16
|
type PerformUpgrade = (req: IncomingMessage) => Promise<boolean>;
|
|
16
17
|
type ExtractRoomId = (req: IncomingMessage) => string | undefined;
|
|
17
|
-
type FetchInitialState = (doc:
|
|
18
|
+
type FetchInitialState = (doc: Doc) => void;
|
|
18
19
|
type PersistRoom = (roomId: string, actualState: Uint8Array<ArrayBufferLike>) => Promise<void>;
|
|
19
20
|
type FetchRoom = (roomId: string) => Promise<Uint8Array | null>;
|
|
20
21
|
|
|
21
22
|
//#endregion
|
|
22
|
-
//#region ../types/dist/types.d.ts
|
|
23
|
-
|
|
24
|
-
type WeaveStoreHorizontalSyncRedisConfig = {
|
|
25
|
-
host: string;
|
|
26
|
-
port: number;
|
|
27
|
-
keyPrefix: string;
|
|
28
|
-
password?: string;
|
|
29
|
-
};
|
|
30
|
-
type WeaveStoreHorizontalSyncConfig = {
|
|
31
|
-
type: "redis";
|
|
32
|
-
config: WeaveStoreHorizontalSyncRedisConfig;
|
|
33
|
-
}; //#endregion
|
|
34
23
|
//#region src/server/horizontal-sync-handler/redis/client.d.ts
|
|
35
24
|
declare class WeaveHorizontalSyncHandlerRedis {
|
|
36
25
|
private server;
|
|
@@ -76,7 +65,7 @@ declare class WeaveWebsocketsServer extends Emittery {
|
|
|
76
65
|
emitEvent<T>(event: string, payload?: T): void;
|
|
77
66
|
addEventListener<T>(event: string, callback: (payload: T) => void): void;
|
|
78
67
|
removeEventListener<T>(event: string, callback: (payload: T) => void): void;
|
|
79
|
-
handleUpgrade(server:
|
|
68
|
+
handleUpgrade(server: Server | Server$1): void;
|
|
80
69
|
}
|
|
81
70
|
|
|
82
71
|
//#endregion
|
package/dist/server.js
CHANGED
|
@@ -1,10 +1,7 @@
|
|
|
1
|
-
import http, { IncomingMessage } from "http";
|
|
2
|
-
import https from "https";
|
|
3
1
|
import { WebSocketServer } from "ws";
|
|
4
|
-
import * as Y$2 from "yjs";
|
|
5
2
|
import * as Y$1 from "yjs";
|
|
6
3
|
import * as Y from "yjs";
|
|
7
|
-
import "node:http";
|
|
4
|
+
import http from "node:http";
|
|
8
5
|
import Redis from "ioredis";
|
|
9
6
|
|
|
10
7
|
//#region rolldown:runtime
|
|
@@ -392,6 +389,10 @@ Object.defineProperty(Emittery, "listenerRemoved", {
|
|
|
392
389
|
configurable: false
|
|
393
390
|
});
|
|
394
391
|
|
|
392
|
+
//#endregion
|
|
393
|
+
//#region src/yjs.ts
|
|
394
|
+
var yjs_default = Y$1;
|
|
395
|
+
|
|
395
396
|
//#endregion
|
|
396
397
|
//#region ../../node_modules/lib0/math.js
|
|
397
398
|
/**
|
|
@@ -897,7 +898,7 @@ const messageYjsUpdate = 2;
|
|
|
897
898
|
*/
|
|
898
899
|
const writeSyncStep1 = (encoder, doc) => {
|
|
899
900
|
writeVarUint(encoder, messageYjsSyncStep1);
|
|
900
|
-
const sv = Y
|
|
901
|
+
const sv = Y.encodeStateVector(doc);
|
|
901
902
|
writeVarUint8Array(encoder, sv);
|
|
902
903
|
};
|
|
903
904
|
/**
|
|
@@ -907,7 +908,7 @@ const writeSyncStep1 = (encoder, doc) => {
|
|
|
907
908
|
*/
|
|
908
909
|
const writeSyncStep2 = (encoder, doc, encodedStateVector) => {
|
|
909
910
|
writeVarUint(encoder, messageYjsSyncStep2);
|
|
910
|
-
writeVarUint8Array(encoder, Y
|
|
911
|
+
writeVarUint8Array(encoder, Y.encodeStateAsUpdate(doc, encodedStateVector));
|
|
911
912
|
};
|
|
912
913
|
/**
|
|
913
914
|
* Read SyncStep1 message and reply with SyncStep2.
|
|
@@ -926,7 +927,7 @@ const readSyncStep1 = (decoder, encoder, doc) => writeSyncStep2(encoder, doc, re
|
|
|
926
927
|
*/
|
|
927
928
|
const readSyncStep2 = (decoder, doc, transactionOrigin) => {
|
|
928
929
|
try {
|
|
929
|
-
Y
|
|
930
|
+
Y.applyUpdate(doc, readVarUint8Array(decoder), transactionOrigin);
|
|
930
931
|
} catch (error) {
|
|
931
932
|
console.error("Caught error while handling a Yjs update", error);
|
|
932
933
|
}
|
|
@@ -1856,7 +1857,7 @@ const getUpdateHandler = (horizontalSyncHandler) => (update, _origin, doc) => {
|
|
|
1856
1857
|
doc.conns.forEach((_, conn) => send(doc, conn, message));
|
|
1857
1858
|
};
|
|
1858
1859
|
let contentInitializor = () => Promise.resolve();
|
|
1859
|
-
var WSSharedDoc = class extends
|
|
1860
|
+
var WSSharedDoc = class extends yjs_default.Doc {
|
|
1860
1861
|
constructor(name, horizontalSyncHandler) {
|
|
1861
1862
|
super({ gc: gcEnabled });
|
|
1862
1863
|
this.topic = name;
|
|
@@ -1894,7 +1895,7 @@ var WSSharedDoc = class extends Y$1.Doc {
|
|
|
1894
1895
|
horizontalSyncHandler.getSubClient().subscribe(this.topicAwarenessChannel);
|
|
1895
1896
|
horizontalSyncHandler.getSubClient().on("messageBuffer", (channel, update) => {
|
|
1896
1897
|
const channelId = channel.toString();
|
|
1897
|
-
if (channelId === this.topic)
|
|
1898
|
+
if (channelId === this.topic) yjs_default.applyUpdate(this, update, horizontalSyncHandler.getPubClient());
|
|
1898
1899
|
else if (channelId === this.topicAwarenessChannel) applyAwarenessUpdate(this.awareness, update, horizontalSyncHandler.getPubClient());
|
|
1899
1900
|
});
|
|
1900
1901
|
}
|
|
@@ -1906,7 +1907,7 @@ const getYDoc = (docName, initialState, horizontalSyncHandler, gc = true) => set
|
|
|
1906
1907
|
const doc = new WSSharedDoc(docName, horizontalSyncHandler);
|
|
1907
1908
|
doc.gc = gc;
|
|
1908
1909
|
docs.set(docName, doc);
|
|
1909
|
-
if (documentData)
|
|
1910
|
+
if (documentData) yjs_default.applyUpdate(doc, documentData);
|
|
1910
1911
|
else initialState(doc);
|
|
1911
1912
|
await setupRoomPersistence(docName, doc);
|
|
1912
1913
|
return doc;
|
|
@@ -2011,7 +2012,7 @@ const setupWSConnection = (getDocName, initialState, horizontalSyncHandler) => {
|
|
|
2011
2012
|
async function setupRoomPersistence(roomId, doc) {
|
|
2012
2013
|
if (!persistenceMap.has(roomId)) {
|
|
2013
2014
|
const persistHandler = async () => {
|
|
2014
|
-
const actualState =
|
|
2015
|
+
const actualState = yjs_default.encodeStateAsUpdate(doc);
|
|
2015
2016
|
if (actualServer && actualServer.persistRoom) try {
|
|
2016
2017
|
await actualServer.persistRoom(roomId, actualState);
|
|
2017
2018
|
} catch (ex) {
|
|
@@ -2027,18 +2028,18 @@ async function setupRoomPersistence(roomId, doc) {
|
|
|
2027
2028
|
//#endregion
|
|
2028
2029
|
//#region src/server/default-initial-state.ts
|
|
2029
2030
|
const yjsLayer = function(id) {
|
|
2030
|
-
const newLayerMap = new
|
|
2031
|
+
const newLayerMap = new yjs_default.Map();
|
|
2031
2032
|
newLayerMap.set("key", id);
|
|
2032
2033
|
newLayerMap.set("type", "layer");
|
|
2033
|
-
const newLayerMapProps = new
|
|
2034
|
+
const newLayerMapProps = new yjs_default.Map();
|
|
2034
2035
|
newLayerMapProps.set("id", id);
|
|
2035
2036
|
newLayerMapProps.set("nodeType", "layer");
|
|
2036
|
-
newLayerMapProps.set("children", new
|
|
2037
|
+
newLayerMapProps.set("children", new yjs_default.Array());
|
|
2037
2038
|
newLayerMap.set("props", newLayerMapProps);
|
|
2038
2039
|
return newLayerMap;
|
|
2039
2040
|
};
|
|
2040
2041
|
function defaultInitialState(doc) {
|
|
2041
|
-
const children = new
|
|
2042
|
+
const children = new yjs_default.Array();
|
|
2042
2043
|
children.insert(0, [
|
|
2043
2044
|
yjsLayer("gridLayer"),
|
|
2044
2045
|
yjsLayer("mainLayer"),
|
|
@@ -2046,7 +2047,7 @@ function defaultInitialState(doc) {
|
|
|
2046
2047
|
yjsLayer("usersPointersLayer"),
|
|
2047
2048
|
yjsLayer("utilityLayer")
|
|
2048
2049
|
]);
|
|
2049
|
-
const stageProps = new
|
|
2050
|
+
const stageProps = new yjs_default.Map();
|
|
2050
2051
|
stageProps.set("id", "stage");
|
|
2051
2052
|
stageProps.set("children", children);
|
|
2052
2053
|
doc.getMap("weave").set("key", "stage");
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@inditextech/weave-store-websockets",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.1.1",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"author": "Jesus Manuel Piñeiro Cid <jesusmpc@inditex.com>",
|
|
@@ -53,12 +53,13 @@
|
|
|
53
53
|
"version:release": "npm version $RELEASE_VERSION -m \"[npm-scripts] prepare release $RELEASE_VERSION\" --tag-version-prefix \"\""
|
|
54
54
|
},
|
|
55
55
|
"dependencies": {
|
|
56
|
+
"@inditextech/weave-types": "1.1.1",
|
|
57
|
+
"@inditextech/weave-sdk": "1.1.1",
|
|
56
58
|
"@syncedstore/core": "0.6.0",
|
|
57
59
|
"ws": "8.18.1",
|
|
58
60
|
"y-websocket": "3.0.0"
|
|
59
61
|
},
|
|
60
62
|
"devDependencies": {
|
|
61
|
-
"@inditextech/weave-sdk": "1.0.4",
|
|
62
63
|
"@types/express": "^5.0.1",
|
|
63
64
|
"@types/ioredis": "^4.28.10",
|
|
64
65
|
"@types/koa": "^2.15.0",
|
|
@@ -84,7 +85,6 @@
|
|
|
84
85
|
"vitest-sonar-reporter": "2.0.0"
|
|
85
86
|
},
|
|
86
87
|
"peerDependencies": {
|
|
87
|
-
"@inditextech/weave-sdk": ">= 1.x",
|
|
88
88
|
"konva": "10.0.2",
|
|
89
89
|
"ioredis": ">= 5.6.1",
|
|
90
90
|
"yjs": "13.6.27"
|