@inditextech/weave-sdk 0.20.2 → 0.20.4

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.
@@ -0,0 +1,176 @@
1
+ import Konva from "konva";
2
+ import { Vector2d } from "konva/lib/types";
3
+ import * as Y from "yjs";
4
+
5
+ //#region ../types/dist/types.d.ts
6
+ //#region src/base/node.d.ts
7
+ interface WeaveNodeBase {
8
+ create(id: string, props: WeaveElementAttributes): WeaveStateElement;
9
+ onRender(props: WeaveElementAttributes): WeaveElementInstance;
10
+ onUpdate(instance: WeaveElementInstance, nextProps: WeaveElementAttributes): void;
11
+ onDestroy(instance: WeaveElementInstance): void;
12
+ serialize(instance: WeaveElementInstance): WeaveStateElement;
13
+ }
14
+
15
+ //#endregion
16
+ //#region src/base/action.d.ts
17
+ interface WeaveActionBase {
18
+ onInit?(): void;
19
+ trigger(cancelAction: () => void, params?: unknown): unknown;
20
+ internalUpdate?(): void;
21
+ cleanup?(): void;
22
+ }
23
+
24
+ //#endregion
25
+ //#region src/base/plugin.d.ts
26
+ interface WeavePluginBase {
27
+ onInit?(): void;
28
+ onRender?(): void;
29
+ enable(): void;
30
+ disable(): void;
31
+ isEnabled(): boolean;
32
+ }
33
+
34
+ //#endregion
35
+ //#region src/base/store.d.ts
36
+ type WeaveStoreOptions = {
37
+ getUser: () => WeaveUser;
38
+ undoManagerOptions?: WeaveUndoManagerOptions;
39
+ };
40
+ interface WeaveStoreBase {
41
+ connect(): void;
42
+ disconnect(): void;
43
+ setAwarenessInfo(field: string, value: unknown): void;
44
+ }
45
+
46
+ //#endregion
47
+ //#region src/types.d.ts
48
+ type WeaveConfig = {
49
+ store: WeaveStoreBase;
50
+ nodes?: WeaveNodeBase[];
51
+ actions?: WeaveActionBase[];
52
+ plugins?: WeavePluginBase[];
53
+ fonts?: WeaveFont[];
54
+ logger?: WeaveLoggerConfig;
55
+ };
56
+ type WeaveStatusKeys = keyof typeof WEAVE_INSTANCE_STATUS;
57
+ type WeaveStatus = (typeof WEAVE_INSTANCE_STATUS)[WeaveStatusKeys];
58
+ type NodeSerializable = Konva.NodeConfig & {
59
+ id: string;
60
+ nodeType: string;
61
+ };
62
+ type WeaveElementAttributes = {
63
+ [key: string]: any;
64
+ id?: string;
65
+ nodeType?: string;
66
+ children?: WeaveStateElement[];
67
+ };
68
+ type WeaveStateElement = {
69
+ key: string;
70
+ type: string;
71
+ props: WeaveElementAttributes;
72
+ };
73
+ type WeaveState = {
74
+ weave: {
75
+ key: "stage";
76
+ type: "stage";
77
+ props: {
78
+ [key: string]: unknown;
79
+ id: "stage";
80
+ children: WeaveStateElement[];
81
+ };
82
+ } | Record<string, WeaveStateElement>;
83
+ };
84
+ type WeaveSelection = {
85
+ instance: Konva.Shape | Konva.Group;
86
+ node: WeaveStateElement;
87
+ };
88
+ type WeaveMousePointInfoSimple = {
89
+ mousePoint: Vector2d;
90
+ container: Konva.Layer | Konva.Group | undefined;
91
+ };
92
+ type WeaveMousePointInfo = WeaveMousePointInfoSimple & {
93
+ measureContainer: Konva.Layer | Konva.Group | undefined;
94
+ };
95
+ type WeaveSerializedGroup = {
96
+ serializedNodes: WeaveStateElement[];
97
+ minPoint: Vector2d;
98
+ } | undefined;
99
+ type WeaveNodeFound = {
100
+ node: WeaveStateElement | null;
101
+ parent: WeaveStateElement | null;
102
+ index: number;
103
+ };
104
+ type WeaveElementInstance = Konva.Layer | Konva.Group | Konva.Shape;
105
+ type WeaveLoggerConfig = {
106
+ disabled?: boolean;
107
+ level?: "debug" | "info" | "warn" | "error";
108
+ };
109
+ type WeavePositionKeys = keyof typeof WEAVE_NODE_POSITION;
110
+ type WeavePosition = (typeof WEAVE_NODE_POSITION)[WeavePositionKeys];
111
+ type WeaveExportNodeOptions = {
112
+ format?: typeof WEAVE_EXPORT_FORMATS.PNG;
113
+ padding?: number;
114
+ pixelRatio?: number;
115
+ backgroundColor?: string;
116
+ quality?: number;
117
+ };
118
+ type WeaveUser = {
119
+ [key: string]: any;
120
+ name: string;
121
+ email: string;
122
+ };
123
+ type WeaveFont = {
124
+ id: string;
125
+ name: string;
126
+ };
127
+ type WeaveUndoManagerOptions = {
128
+ captureTimeout?: number;
129
+ trackedOrigins?: Set<any>;
130
+ };
131
+ type WeaveUndoRedoChange = {
132
+ canRedo: boolean;
133
+ canUndo: boolean;
134
+ redoStackLength: number;
135
+ undoStackLength: number;
136
+ };
137
+ declare type docElementTypeDescription = "xml" | "text" | Array<any> | object;
138
+ declare type DocTypeDescription = {
139
+ [key: string]: docElementTypeDescription;
140
+ };
141
+ declare type MappedTypeDescription<T extends DocTypeDescription> = { readonly [P in keyof T]: T[P] extends "xml" ? Y.XmlFragment : T[P] extends "text" ? Y.Text : T[P] extends Array<any> ? T[P] : T[P] extends object ? Partial<T[P]> : never };
142
+ type WeaveNodeTransformerProperties = Konva.TransformerConfig;
143
+ type WeaveNodeConfiguration = {
144
+ transform: Partial<WeaveNodeTransformerProperties>;
145
+ };
146
+
147
+ //#endregion
148
+ //#region src/constants.d.ts
149
+
150
+ declare const WEAVE_INSTANCE_STATUS: {
151
+ readonly "IDLE": "idle";
152
+ readonly "STARTING": "starting";
153
+ readonly "LOADING_FONTS": "loadingFonts";
154
+ readonly "RUNNING": "running";
155
+ };
156
+ declare const WEAVE_NODE_POSITION: {
157
+ readonly "UP": "up";
158
+ readonly "DOWN": "down";
159
+ readonly "FRONT": "front";
160
+ readonly "BACK": "back";
161
+ };
162
+ declare const WEAVE_EXPORT_FORMATS: {
163
+ readonly "PNG": "image/png";
164
+ readonly "JPEG": "image/jpeg";
165
+ }; //#endregion
166
+ //#region src/nodes/extensions.d.ts
167
+ declare module 'konva/lib/Node' {
168
+ interface Node {
169
+ getTransformerProperties(): WeaveNodeTransformerProperties;
170
+ resetCrop(): void;
171
+ updatePosition(position: Vector2d): void;
172
+ }
173
+ }
174
+
175
+ //#endregion
176
+ export { MappedTypeDescription, NodeSerializable, WeaveActionBase, WeaveConfig, WeaveElementAttributes, WeaveElementInstance, WeaveExportNodeOptions, WeaveFont, WeaveLoggerConfig, WeaveMousePointInfo, WeaveMousePointInfoSimple, WeaveNodeBase, WeaveNodeConfiguration, WeaveNodeFound, WeaveNodeTransformerProperties, WeavePluginBase, WeavePosition, WeaveSelection, WeaveSerializedGroup, WeaveState, WeaveStateElement, WeaveStatus, WeaveStoreBase, WeaveStoreOptions, WeaveUndoRedoChange, WeaveUser };