@things-factory/figure-ui 10.1.241 → 10.1.244
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/client/graphql/store.ts +3 -2
- package/client/modeller/editor.ts +63 -5
- package/client/modeller/figure-parts.ts +18 -3
- package/client/modeller/figure-preview.ts +1 -1
- package/client/modeller/figure-properties.ts +14 -7
- package/client/modeller/figure-save-conflict.ts +73 -0
- package/client/modeller/figure-section-editor.ts +3 -0
- package/client/modeller/keys.ts +8 -2
- package/client/modeller/modeller-keys.ts +4 -1
- package/client/modeller/product-session.ts +107 -5
- package/client/modeller/save-conflict.ts +91 -0
- package/client/pages/figure-modeller-page.ts +58 -43
- package/dist-client/graphql/store.js +3 -2
- package/dist-client/graphql/store.js.map +1 -1
- package/dist-client/modeller/editor.d.ts +14 -0
- package/dist-client/modeller/editor.js +75 -5
- package/dist-client/modeller/editor.js.map +1 -1
- package/dist-client/modeller/figure-parts.js +18 -3
- package/dist-client/modeller/figure-parts.js.map +1 -1
- package/dist-client/modeller/figure-preview.d.ts +1 -1
- package/dist-client/modeller/figure-preview.js.map +1 -1
- package/dist-client/modeller/figure-properties.d.ts +4 -2
- package/dist-client/modeller/figure-properties.js +16 -7
- package/dist-client/modeller/figure-properties.js.map +1 -1
- package/dist-client/modeller/figure-save-conflict.d.ts +19 -0
- package/dist-client/modeller/figure-save-conflict.js +76 -0
- package/dist-client/modeller/figure-save-conflict.js.map +1 -0
- package/dist-client/modeller/figure-section-editor.d.ts +2 -0
- package/dist-client/modeller/figure-section-editor.js +8 -0
- package/dist-client/modeller/figure-section-editor.js.map +1 -1
- package/dist-client/modeller/keys.d.ts +5 -0
- package/dist-client/modeller/keys.js +5 -3
- package/dist-client/modeller/keys.js.map +1 -1
- package/dist-client/modeller/modeller-keys.d.ts +2 -0
- package/dist-client/modeller/modeller-keys.js +2 -1
- package/dist-client/modeller/modeller-keys.js.map +1 -1
- package/dist-client/modeller/product-session.d.ts +368 -22
- package/dist-client/modeller/product-session.js +107 -7
- package/dist-client/modeller/product-session.js.map +1 -1
- package/dist-client/modeller/save-conflict.d.ts +12 -0
- package/dist-client/modeller/save-conflict.js +63 -0
- package/dist-client/modeller/save-conflict.js.map +1 -0
- package/dist-client/pages/figure-modeller-page.d.ts +11 -5
- package/dist-client/pages/figure-modeller-page.js +58 -49
- package/dist-client/pages/figure-modeller-page.js.map +1 -1
- package/dist-client/tsconfig.tsbuildinfo +1 -1
- package/package.json +5 -5
- package/test/browser/category-page.js +3 -1
- package/test/browser/category.check.mjs +6 -0
- package/test/browser/product-page.check.mjs +268 -6
- package/test/browser/product-page.js +4 -1
- package/test/browser/screen.check.mjs +3 -0
- package/test/browser/section.check.mjs +21 -0
- package/test/keys.test.ts +8 -0
- package/test/product-session.test.ts +137 -1
- package/test/save-conflict.test.ts +41 -0
- package/test/save-landed.test.ts +75 -0
- package/translations/en.json +12 -1
- package/translations/es.json +12 -1
- package/translations/ja.json +12 -1
- package/translations/ko.json +12 -1
- package/translations/ms.json +12 -1
- package/translations/zh.json +12 -1
|
@@ -8,6 +8,16 @@ export interface FigureProductRecord {
|
|
|
8
8
|
id: string;
|
|
9
9
|
source: string;
|
|
10
10
|
}
|
|
11
|
+
/**
|
|
12
|
+
* The row's catalogue fields -- the type (before release), the category, the tags. Kept on the row, not in the asset,
|
|
13
|
+
* and saved with it by 「저장」: written at once on change, they stayed after 「저장하지 않고 떠나기」 and the save
|
|
14
|
+
* button never lit for them (2026-11-01 audit item 5).
|
|
15
|
+
*/
|
|
16
|
+
export interface FigureCatalogPatch {
|
|
17
|
+
type?: string;
|
|
18
|
+
category?: string;
|
|
19
|
+
tags?: string[];
|
|
20
|
+
}
|
|
11
21
|
/** Persistence is injected; neither the model engine nor the renderer owns the product ID. */
|
|
12
22
|
export interface FigureProductStore {
|
|
13
23
|
load(id: string): Promise<FigureProductRecord>;
|
|
@@ -30,10 +40,26 @@ export interface FigureProductStore {
|
|
|
30
40
|
/** Keys of the AI proposals whose steps the source holds: the server records them with the save. */
|
|
31
41
|
proposalKeys?: string[];
|
|
32
42
|
}): Promise<FigureProductRecord>;
|
|
43
|
+
/** Writes the row's catalogue fields of a saved figure. */
|
|
44
|
+
updateCatalog(id: string, patch: FigureCatalogPatch): Promise<unknown>;
|
|
33
45
|
}
|
|
34
46
|
/** Product lifecycle boundary. A late response can never change another editor's asset or ID. */
|
|
35
47
|
export declare function createFigureProductSession(store: FigureProductStore): {
|
|
36
48
|
read: () => {
|
|
49
|
+
dirty: boolean;
|
|
50
|
+
catalog: {
|
|
51
|
+
type?: string;
|
|
52
|
+
category?: string;
|
|
53
|
+
tags?: string[];
|
|
54
|
+
};
|
|
55
|
+
catalogWritten: {
|
|
56
|
+
type?: string;
|
|
57
|
+
category?: string;
|
|
58
|
+
tags?: string[];
|
|
59
|
+
};
|
|
60
|
+
conflict: {
|
|
61
|
+
latest: string | undefined;
|
|
62
|
+
} | undefined;
|
|
37
63
|
id: string | undefined;
|
|
38
64
|
creationId: string | undefined;
|
|
39
65
|
loading: boolean;
|
|
@@ -44,13 +70,26 @@ export declare function createFigureProductSession(store: FigureProductStore): {
|
|
|
44
70
|
fields: never[];
|
|
45
71
|
geometry: never[];
|
|
46
72
|
bindings: never[];
|
|
47
|
-
dirty: false;
|
|
48
73
|
revision: null;
|
|
49
74
|
canUndo?: undefined;
|
|
50
75
|
canRedo?: undefined;
|
|
51
76
|
palette?: undefined;
|
|
52
77
|
asset?: undefined;
|
|
53
78
|
} | {
|
|
79
|
+
dirty: boolean;
|
|
80
|
+
catalog: {
|
|
81
|
+
type?: string;
|
|
82
|
+
category?: string;
|
|
83
|
+
tags?: string[];
|
|
84
|
+
};
|
|
85
|
+
catalogWritten: {
|
|
86
|
+
type?: string;
|
|
87
|
+
category?: string;
|
|
88
|
+
tags?: string[];
|
|
89
|
+
};
|
|
90
|
+
conflict: {
|
|
91
|
+
latest: string | undefined;
|
|
92
|
+
} | undefined;
|
|
54
93
|
id: string | undefined;
|
|
55
94
|
creationId: string | undefined;
|
|
56
95
|
loading: boolean;
|
|
@@ -59,10 +98,9 @@ export declare function createFigureProductSession(store: FigureProductStore): {
|
|
|
59
98
|
context: string;
|
|
60
99
|
name: string;
|
|
61
100
|
revision: number;
|
|
62
|
-
dirty: boolean;
|
|
63
101
|
canUndo: boolean;
|
|
64
102
|
canRedo: boolean;
|
|
65
|
-
fields: Array<import("@hatiolab/figure-model").FigureAsset["document"]["model"]["inputs"]
|
|
103
|
+
fields: Array<import("@hatiolab/figure-model").FigureAsset["document"]["model"]["inputs"][number] & {
|
|
66
104
|
value: number;
|
|
67
105
|
}>;
|
|
68
106
|
asset: import("@hatiolab/figure-model").FigureAsset;
|
|
@@ -77,11 +115,229 @@ export declare function createFigureProductSession(store: FigureProductStore): {
|
|
|
77
115
|
* -- the server writes over it only while it still holds this. Nothing for a figure not saved yet.
|
|
78
116
|
*/
|
|
79
117
|
confirmedSource: () => string | undefined;
|
|
118
|
+
/**
|
|
119
|
+
* A catalogue field changed, held for the next save; one changed back to what the row holds (`saved`) is no
|
|
120
|
+
* change. Only a saved figure has a row to write: a new figure's type goes with its first save. Taken while a save
|
|
121
|
+
* is on its way too: the field shows it, so it is held for the save after (2026-11-01 re-check). A field that save
|
|
122
|
+
* is writing is held whatever it is changed to -- back to the old value too, which the save is about to replace;
|
|
123
|
+
* the save done lets go only of a value it wrote (2026-11-01 second re-check).
|
|
124
|
+
*/
|
|
125
|
+
editCatalog(patch: FigureCatalogPatch, saved: FigureCatalogPatch): {
|
|
126
|
+
dirty: boolean;
|
|
127
|
+
catalog: {
|
|
128
|
+
type?: string;
|
|
129
|
+
category?: string;
|
|
130
|
+
tags?: string[];
|
|
131
|
+
};
|
|
132
|
+
catalogWritten: {
|
|
133
|
+
type?: string;
|
|
134
|
+
category?: string;
|
|
135
|
+
tags?: string[];
|
|
136
|
+
};
|
|
137
|
+
conflict: {
|
|
138
|
+
latest: string | undefined;
|
|
139
|
+
} | undefined;
|
|
140
|
+
id: string | undefined;
|
|
141
|
+
creationId: string | undefined;
|
|
142
|
+
loading: boolean;
|
|
143
|
+
saving: boolean;
|
|
144
|
+
error: string | undefined;
|
|
145
|
+
context: null;
|
|
146
|
+
name: null;
|
|
147
|
+
fields: never[];
|
|
148
|
+
geometry: never[];
|
|
149
|
+
bindings: never[];
|
|
150
|
+
revision: null;
|
|
151
|
+
canUndo?: undefined;
|
|
152
|
+
canRedo?: undefined;
|
|
153
|
+
palette?: undefined;
|
|
154
|
+
asset?: undefined;
|
|
155
|
+
} | {
|
|
156
|
+
dirty: boolean;
|
|
157
|
+
catalog: {
|
|
158
|
+
type?: string;
|
|
159
|
+
category?: string;
|
|
160
|
+
tags?: string[];
|
|
161
|
+
};
|
|
162
|
+
catalogWritten: {
|
|
163
|
+
type?: string;
|
|
164
|
+
category?: string;
|
|
165
|
+
tags?: string[];
|
|
166
|
+
};
|
|
167
|
+
conflict: {
|
|
168
|
+
latest: string | undefined;
|
|
169
|
+
} | undefined;
|
|
170
|
+
id: string | undefined;
|
|
171
|
+
creationId: string | undefined;
|
|
172
|
+
loading: boolean;
|
|
173
|
+
saving: boolean;
|
|
174
|
+
error: string | undefined;
|
|
175
|
+
context: string;
|
|
176
|
+
name: string;
|
|
177
|
+
revision: number;
|
|
178
|
+
canUndo: boolean;
|
|
179
|
+
canRedo: boolean;
|
|
180
|
+
fields: Array<import("@hatiolab/figure-model").FigureAsset["document"]["model"]["inputs"][number] & {
|
|
181
|
+
value: number;
|
|
182
|
+
}>;
|
|
183
|
+
asset: import("@hatiolab/figure-model").FigureAsset;
|
|
184
|
+
geometry: import("@hatiolab/figure-model").FigureAssetGeometry[];
|
|
185
|
+
bindings: import("@hatiolab/figure-model").FigureEvaluatedBinding[];
|
|
186
|
+
palette: Record<string, string>;
|
|
187
|
+
};
|
|
188
|
+
/**
|
|
189
|
+
* After a conflict, the edits written over the server's latest: the next save expects that latest, so it goes
|
|
190
|
+
* through only while the server still holds it -- a third change meanwhile is a conflict again.
|
|
191
|
+
*/
|
|
192
|
+
overwriteConflict(): {
|
|
193
|
+
dirty: boolean;
|
|
194
|
+
catalog: {
|
|
195
|
+
type?: string;
|
|
196
|
+
category?: string;
|
|
197
|
+
tags?: string[];
|
|
198
|
+
};
|
|
199
|
+
catalogWritten: {
|
|
200
|
+
type?: string;
|
|
201
|
+
category?: string;
|
|
202
|
+
tags?: string[];
|
|
203
|
+
};
|
|
204
|
+
conflict: {
|
|
205
|
+
latest: string | undefined;
|
|
206
|
+
} | undefined;
|
|
207
|
+
id: string | undefined;
|
|
208
|
+
creationId: string | undefined;
|
|
209
|
+
loading: boolean;
|
|
210
|
+
saving: boolean;
|
|
211
|
+
error: string | undefined;
|
|
212
|
+
context: null;
|
|
213
|
+
name: null;
|
|
214
|
+
fields: never[];
|
|
215
|
+
geometry: never[];
|
|
216
|
+
bindings: never[];
|
|
217
|
+
revision: null;
|
|
218
|
+
canUndo?: undefined;
|
|
219
|
+
canRedo?: undefined;
|
|
220
|
+
palette?: undefined;
|
|
221
|
+
asset?: undefined;
|
|
222
|
+
} | {
|
|
223
|
+
dirty: boolean;
|
|
224
|
+
catalog: {
|
|
225
|
+
type?: string;
|
|
226
|
+
category?: string;
|
|
227
|
+
tags?: string[];
|
|
228
|
+
};
|
|
229
|
+
catalogWritten: {
|
|
230
|
+
type?: string;
|
|
231
|
+
category?: string;
|
|
232
|
+
tags?: string[];
|
|
233
|
+
};
|
|
234
|
+
conflict: {
|
|
235
|
+
latest: string | undefined;
|
|
236
|
+
} | undefined;
|
|
237
|
+
id: string | undefined;
|
|
238
|
+
creationId: string | undefined;
|
|
239
|
+
loading: boolean;
|
|
240
|
+
saving: boolean;
|
|
241
|
+
error: string | undefined;
|
|
242
|
+
context: string;
|
|
243
|
+
name: string;
|
|
244
|
+
revision: number;
|
|
245
|
+
canUndo: boolean;
|
|
246
|
+
canRedo: boolean;
|
|
247
|
+
fields: Array<import("@hatiolab/figure-model").FigureAsset["document"]["model"]["inputs"][number] & {
|
|
248
|
+
value: number;
|
|
249
|
+
}>;
|
|
250
|
+
asset: import("@hatiolab/figure-model").FigureAsset;
|
|
251
|
+
geometry: import("@hatiolab/figure-model").FigureAssetGeometry[];
|
|
252
|
+
bindings: import("@hatiolab/figure-model").FigureEvaluatedBinding[];
|
|
253
|
+
palette: Record<string, string>;
|
|
254
|
+
};
|
|
255
|
+
/**
|
|
256
|
+
* After a conflict, the edits kept as a figure of their own: from here they are a new figure, under a new creation
|
|
257
|
+
* id, saved by the first save's question; the figure they came from is left as the server holds it.
|
|
258
|
+
*/
|
|
259
|
+
detachAsCopy(): {
|
|
260
|
+
dirty: boolean;
|
|
261
|
+
catalog: {
|
|
262
|
+
type?: string;
|
|
263
|
+
category?: string;
|
|
264
|
+
tags?: string[];
|
|
265
|
+
};
|
|
266
|
+
catalogWritten: {
|
|
267
|
+
type?: string;
|
|
268
|
+
category?: string;
|
|
269
|
+
tags?: string[];
|
|
270
|
+
};
|
|
271
|
+
conflict: {
|
|
272
|
+
latest: string | undefined;
|
|
273
|
+
} | undefined;
|
|
274
|
+
id: string | undefined;
|
|
275
|
+
creationId: string | undefined;
|
|
276
|
+
loading: boolean;
|
|
277
|
+
saving: boolean;
|
|
278
|
+
error: string | undefined;
|
|
279
|
+
context: null;
|
|
280
|
+
name: null;
|
|
281
|
+
fields: never[];
|
|
282
|
+
geometry: never[];
|
|
283
|
+
bindings: never[];
|
|
284
|
+
revision: null;
|
|
285
|
+
canUndo?: undefined;
|
|
286
|
+
canRedo?: undefined;
|
|
287
|
+
palette?: undefined;
|
|
288
|
+
asset?: undefined;
|
|
289
|
+
} | {
|
|
290
|
+
dirty: boolean;
|
|
291
|
+
catalog: {
|
|
292
|
+
type?: string;
|
|
293
|
+
category?: string;
|
|
294
|
+
tags?: string[];
|
|
295
|
+
};
|
|
296
|
+
catalogWritten: {
|
|
297
|
+
type?: string;
|
|
298
|
+
category?: string;
|
|
299
|
+
tags?: string[];
|
|
300
|
+
};
|
|
301
|
+
conflict: {
|
|
302
|
+
latest: string | undefined;
|
|
303
|
+
} | undefined;
|
|
304
|
+
id: string | undefined;
|
|
305
|
+
creationId: string | undefined;
|
|
306
|
+
loading: boolean;
|
|
307
|
+
saving: boolean;
|
|
308
|
+
error: string | undefined;
|
|
309
|
+
context: string;
|
|
310
|
+
name: string;
|
|
311
|
+
revision: number;
|
|
312
|
+
canUndo: boolean;
|
|
313
|
+
canRedo: boolean;
|
|
314
|
+
fields: Array<import("@hatiolab/figure-model").FigureAsset["document"]["model"]["inputs"][number] & {
|
|
315
|
+
value: number;
|
|
316
|
+
}>;
|
|
317
|
+
asset: import("@hatiolab/figure-model").FigureAsset;
|
|
318
|
+
geometry: import("@hatiolab/figure-model").FigureAssetGeometry[];
|
|
319
|
+
bindings: import("@hatiolab/figure-model").FigureEvaluatedBinding[];
|
|
320
|
+
palette: Record<string, string>;
|
|
321
|
+
};
|
|
80
322
|
/** A new figure, named in the screen's language by the page: the session has no words of its own. */
|
|
81
323
|
startNew({ discard, name }: {
|
|
82
324
|
discard?: boolean;
|
|
83
325
|
name: string;
|
|
84
326
|
}): {
|
|
327
|
+
dirty: boolean;
|
|
328
|
+
catalog: {
|
|
329
|
+
type?: string;
|
|
330
|
+
category?: string;
|
|
331
|
+
tags?: string[];
|
|
332
|
+
};
|
|
333
|
+
catalogWritten: {
|
|
334
|
+
type?: string;
|
|
335
|
+
category?: string;
|
|
336
|
+
tags?: string[];
|
|
337
|
+
};
|
|
338
|
+
conflict: {
|
|
339
|
+
latest: string | undefined;
|
|
340
|
+
} | undefined;
|
|
85
341
|
id: string | undefined;
|
|
86
342
|
creationId: string | undefined;
|
|
87
343
|
loading: boolean;
|
|
@@ -92,13 +348,26 @@ export declare function createFigureProductSession(store: FigureProductStore): {
|
|
|
92
348
|
fields: never[];
|
|
93
349
|
geometry: never[];
|
|
94
350
|
bindings: never[];
|
|
95
|
-
dirty: false;
|
|
96
351
|
revision: null;
|
|
97
352
|
canUndo?: undefined;
|
|
98
353
|
canRedo?: undefined;
|
|
99
354
|
palette?: undefined;
|
|
100
355
|
asset?: undefined;
|
|
101
356
|
} | {
|
|
357
|
+
dirty: boolean;
|
|
358
|
+
catalog: {
|
|
359
|
+
type?: string;
|
|
360
|
+
category?: string;
|
|
361
|
+
tags?: string[];
|
|
362
|
+
};
|
|
363
|
+
catalogWritten: {
|
|
364
|
+
type?: string;
|
|
365
|
+
category?: string;
|
|
366
|
+
tags?: string[];
|
|
367
|
+
};
|
|
368
|
+
conflict: {
|
|
369
|
+
latest: string | undefined;
|
|
370
|
+
} | undefined;
|
|
102
371
|
id: string | undefined;
|
|
103
372
|
creationId: string | undefined;
|
|
104
373
|
loading: boolean;
|
|
@@ -107,10 +376,9 @@ export declare function createFigureProductSession(store: FigureProductStore): {
|
|
|
107
376
|
context: string;
|
|
108
377
|
name: string;
|
|
109
378
|
revision: number;
|
|
110
|
-
dirty: boolean;
|
|
111
379
|
canUndo: boolean;
|
|
112
380
|
canRedo: boolean;
|
|
113
|
-
fields: Array<import("@hatiolab/figure-model").FigureAsset["document"]["model"]["inputs"]
|
|
381
|
+
fields: Array<import("@hatiolab/figure-model").FigureAsset["document"]["model"]["inputs"][number] & {
|
|
114
382
|
value: number;
|
|
115
383
|
}>;
|
|
116
384
|
asset: import("@hatiolab/figure-model").FigureAsset;
|
|
@@ -121,6 +389,20 @@ export declare function createFigureProductSession(store: FigureProductStore): {
|
|
|
121
389
|
open(nextId: string, { discard }?: {
|
|
122
390
|
discard?: boolean | undefined;
|
|
123
391
|
}): Promise<{
|
|
392
|
+
dirty: boolean;
|
|
393
|
+
catalog: {
|
|
394
|
+
type?: string;
|
|
395
|
+
category?: string;
|
|
396
|
+
tags?: string[];
|
|
397
|
+
};
|
|
398
|
+
catalogWritten: {
|
|
399
|
+
type?: string;
|
|
400
|
+
category?: string;
|
|
401
|
+
tags?: string[];
|
|
402
|
+
};
|
|
403
|
+
conflict: {
|
|
404
|
+
latest: string | undefined;
|
|
405
|
+
} | undefined;
|
|
124
406
|
id: string | undefined;
|
|
125
407
|
creationId: string | undefined;
|
|
126
408
|
loading: boolean;
|
|
@@ -131,13 +413,26 @@ export declare function createFigureProductSession(store: FigureProductStore): {
|
|
|
131
413
|
fields: never[];
|
|
132
414
|
geometry: never[];
|
|
133
415
|
bindings: never[];
|
|
134
|
-
dirty: false;
|
|
135
416
|
revision: null;
|
|
136
417
|
canUndo?: undefined;
|
|
137
418
|
canRedo?: undefined;
|
|
138
419
|
palette?: undefined;
|
|
139
420
|
asset?: undefined;
|
|
140
421
|
} | {
|
|
422
|
+
dirty: boolean;
|
|
423
|
+
catalog: {
|
|
424
|
+
type?: string;
|
|
425
|
+
category?: string;
|
|
426
|
+
tags?: string[];
|
|
427
|
+
};
|
|
428
|
+
catalogWritten: {
|
|
429
|
+
type?: string;
|
|
430
|
+
category?: string;
|
|
431
|
+
tags?: string[];
|
|
432
|
+
};
|
|
433
|
+
conflict: {
|
|
434
|
+
latest: string | undefined;
|
|
435
|
+
} | undefined;
|
|
141
436
|
id: string | undefined;
|
|
142
437
|
creationId: string | undefined;
|
|
143
438
|
loading: boolean;
|
|
@@ -146,10 +441,9 @@ export declare function createFigureProductSession(store: FigureProductStore): {
|
|
|
146
441
|
context: string;
|
|
147
442
|
name: string;
|
|
148
443
|
revision: number;
|
|
149
|
-
dirty: boolean;
|
|
150
444
|
canUndo: boolean;
|
|
151
445
|
canRedo: boolean;
|
|
152
|
-
fields: Array<import("@hatiolab/figure-model").FigureAsset["document"]["model"]["inputs"]
|
|
446
|
+
fields: Array<import("@hatiolab/figure-model").FigureAsset["document"]["model"]["inputs"][number] & {
|
|
153
447
|
value: number;
|
|
154
448
|
}>;
|
|
155
449
|
asset: import("@hatiolab/figure-model").FigureAsset;
|
|
@@ -160,6 +454,20 @@ export declare function createFigureProductSession(store: FigureProductStore): {
|
|
|
160
454
|
close({ discard }?: {
|
|
161
455
|
discard?: boolean | undefined;
|
|
162
456
|
}): {
|
|
457
|
+
dirty: boolean;
|
|
458
|
+
catalog: {
|
|
459
|
+
type?: string;
|
|
460
|
+
category?: string;
|
|
461
|
+
tags?: string[];
|
|
462
|
+
};
|
|
463
|
+
catalogWritten: {
|
|
464
|
+
type?: string;
|
|
465
|
+
category?: string;
|
|
466
|
+
tags?: string[];
|
|
467
|
+
};
|
|
468
|
+
conflict: {
|
|
469
|
+
latest: string | undefined;
|
|
470
|
+
} | undefined;
|
|
163
471
|
id: string | undefined;
|
|
164
472
|
creationId: string | undefined;
|
|
165
473
|
loading: boolean;
|
|
@@ -170,13 +478,26 @@ export declare function createFigureProductSession(store: FigureProductStore): {
|
|
|
170
478
|
fields: never[];
|
|
171
479
|
geometry: never[];
|
|
172
480
|
bindings: never[];
|
|
173
|
-
dirty: false;
|
|
174
481
|
revision: null;
|
|
175
482
|
canUndo?: undefined;
|
|
176
483
|
canRedo?: undefined;
|
|
177
484
|
palette?: undefined;
|
|
178
485
|
asset?: undefined;
|
|
179
486
|
} | {
|
|
487
|
+
dirty: boolean;
|
|
488
|
+
catalog: {
|
|
489
|
+
type?: string;
|
|
490
|
+
category?: string;
|
|
491
|
+
tags?: string[];
|
|
492
|
+
};
|
|
493
|
+
catalogWritten: {
|
|
494
|
+
type?: string;
|
|
495
|
+
category?: string;
|
|
496
|
+
tags?: string[];
|
|
497
|
+
};
|
|
498
|
+
conflict: {
|
|
499
|
+
latest: string | undefined;
|
|
500
|
+
} | undefined;
|
|
180
501
|
id: string | undefined;
|
|
181
502
|
creationId: string | undefined;
|
|
182
503
|
loading: boolean;
|
|
@@ -185,10 +506,9 @@ export declare function createFigureProductSession(store: FigureProductStore): {
|
|
|
185
506
|
context: string;
|
|
186
507
|
name: string;
|
|
187
508
|
revision: number;
|
|
188
|
-
dirty: boolean;
|
|
189
509
|
canUndo: boolean;
|
|
190
510
|
canRedo: boolean;
|
|
191
|
-
fields: Array<import("@hatiolab/figure-model").FigureAsset["document"]["model"]["inputs"]
|
|
511
|
+
fields: Array<import("@hatiolab/figure-model").FigureAsset["document"]["model"]["inputs"][number] & {
|
|
192
512
|
value: number;
|
|
193
513
|
}>;
|
|
194
514
|
asset: import("@hatiolab/figure-model").FigureAsset;
|
|
@@ -215,7 +535,7 @@ export declare function createFigureProductSession(store: FigureProductStore): {
|
|
|
215
535
|
dirty: boolean;
|
|
216
536
|
canUndo: boolean;
|
|
217
537
|
canRedo: boolean;
|
|
218
|
-
fields: Array<import("@hatiolab/figure-model").FigureAsset["document"]["model"]["inputs"]
|
|
538
|
+
fields: Array<import("@hatiolab/figure-model").FigureAsset["document"]["model"]["inputs"][number] & {
|
|
219
539
|
value: number;
|
|
220
540
|
}>;
|
|
221
541
|
readonly asset: import("@hatiolab/figure-model").FigureAsset;
|
|
@@ -246,7 +566,7 @@ export declare function createFigureProductSession(store: FigureProductStore): {
|
|
|
246
566
|
dirty: boolean;
|
|
247
567
|
canUndo: boolean;
|
|
248
568
|
canRedo: boolean;
|
|
249
|
-
fields: Array<import("@hatiolab/figure-model").FigureAsset["document"]["model"]["inputs"]
|
|
569
|
+
fields: Array<import("@hatiolab/figure-model").FigureAsset["document"]["model"]["inputs"][number] & {
|
|
250
570
|
value: number;
|
|
251
571
|
}>;
|
|
252
572
|
readonly asset: import("@hatiolab/figure-model").FigureAsset;
|
|
@@ -286,7 +606,7 @@ export declare function createFigureProductSession(store: FigureProductStore): {
|
|
|
286
606
|
dirty: boolean;
|
|
287
607
|
canUndo: boolean;
|
|
288
608
|
canRedo: boolean;
|
|
289
|
-
fields: Array<import("@hatiolab/figure-model").FigureAsset["document"]["model"]["inputs"]
|
|
609
|
+
fields: Array<import("@hatiolab/figure-model").FigureAsset["document"]["model"]["inputs"][number] & {
|
|
290
610
|
value: number;
|
|
291
611
|
}>;
|
|
292
612
|
readonly asset: import("@hatiolab/figure-model").FigureAsset;
|
|
@@ -313,7 +633,7 @@ export declare function createFigureProductSession(store: FigureProductStore): {
|
|
|
313
633
|
dirty: boolean;
|
|
314
634
|
canUndo: boolean;
|
|
315
635
|
canRedo: boolean;
|
|
316
|
-
fields: Array<import("@hatiolab/figure-model").FigureAsset["document"]["model"]["inputs"]
|
|
636
|
+
fields: Array<import("@hatiolab/figure-model").FigureAsset["document"]["model"]["inputs"][number] & {
|
|
317
637
|
value: number;
|
|
318
638
|
}>;
|
|
319
639
|
readonly asset: import("@hatiolab/figure-model").FigureAsset;
|
|
@@ -382,7 +702,7 @@ export declare function createFigureProductSession(store: FigureProductStore): {
|
|
|
382
702
|
dirty: boolean;
|
|
383
703
|
canUndo: boolean;
|
|
384
704
|
canRedo: boolean;
|
|
385
|
-
fields: Array<import("@hatiolab/figure-model").FigureAsset["document"]["model"]["inputs"]
|
|
705
|
+
fields: Array<import("@hatiolab/figure-model").FigureAsset["document"]["model"]["inputs"][number] & {
|
|
386
706
|
value: number;
|
|
387
707
|
}>;
|
|
388
708
|
readonly asset: import("@hatiolab/figure-model").FigureAsset;
|
|
@@ -417,7 +737,7 @@ export declare function createFigureProductSession(store: FigureProductStore): {
|
|
|
417
737
|
dirty: boolean;
|
|
418
738
|
canUndo: boolean;
|
|
419
739
|
canRedo: boolean;
|
|
420
|
-
fields: Array<import("@hatiolab/figure-model").FigureAsset["document"]["model"]["inputs"]
|
|
740
|
+
fields: Array<import("@hatiolab/figure-model").FigureAsset["document"]["model"]["inputs"][number] & {
|
|
421
741
|
value: number;
|
|
422
742
|
}>;
|
|
423
743
|
readonly asset: import("@hatiolab/figure-model").FigureAsset;
|
|
@@ -444,7 +764,7 @@ export declare function createFigureProductSession(store: FigureProductStore): {
|
|
|
444
764
|
dirty: boolean;
|
|
445
765
|
canUndo: boolean;
|
|
446
766
|
canRedo: boolean;
|
|
447
|
-
fields: Array<import("@hatiolab/figure-model").FigureAsset["document"]["model"]["inputs"]
|
|
767
|
+
fields: Array<import("@hatiolab/figure-model").FigureAsset["document"]["model"]["inputs"][number] & {
|
|
448
768
|
value: number;
|
|
449
769
|
}>;
|
|
450
770
|
readonly asset: import("@hatiolab/figure-model").FigureAsset;
|
|
@@ -465,6 +785,20 @@ export declare function createFigureProductSession(store: FigureProductStore): {
|
|
|
465
785
|
type?: string;
|
|
466
786
|
namespace?: string;
|
|
467
787
|
}): Promise<{
|
|
788
|
+
dirty: boolean;
|
|
789
|
+
catalog: {
|
|
790
|
+
type?: string;
|
|
791
|
+
category?: string;
|
|
792
|
+
tags?: string[];
|
|
793
|
+
};
|
|
794
|
+
catalogWritten: {
|
|
795
|
+
type?: string;
|
|
796
|
+
category?: string;
|
|
797
|
+
tags?: string[];
|
|
798
|
+
};
|
|
799
|
+
conflict: {
|
|
800
|
+
latest: string | undefined;
|
|
801
|
+
} | undefined;
|
|
468
802
|
id: string | undefined;
|
|
469
803
|
creationId: string | undefined;
|
|
470
804
|
loading: boolean;
|
|
@@ -475,13 +809,26 @@ export declare function createFigureProductSession(store: FigureProductStore): {
|
|
|
475
809
|
fields: never[];
|
|
476
810
|
geometry: never[];
|
|
477
811
|
bindings: never[];
|
|
478
|
-
dirty: false;
|
|
479
812
|
revision: null;
|
|
480
813
|
canUndo?: undefined;
|
|
481
814
|
canRedo?: undefined;
|
|
482
815
|
palette?: undefined;
|
|
483
816
|
asset?: undefined;
|
|
484
817
|
} | {
|
|
818
|
+
dirty: boolean;
|
|
819
|
+
catalog: {
|
|
820
|
+
type?: string;
|
|
821
|
+
category?: string;
|
|
822
|
+
tags?: string[];
|
|
823
|
+
};
|
|
824
|
+
catalogWritten: {
|
|
825
|
+
type?: string;
|
|
826
|
+
category?: string;
|
|
827
|
+
tags?: string[];
|
|
828
|
+
};
|
|
829
|
+
conflict: {
|
|
830
|
+
latest: string | undefined;
|
|
831
|
+
} | undefined;
|
|
485
832
|
id: string | undefined;
|
|
486
833
|
creationId: string | undefined;
|
|
487
834
|
loading: boolean;
|
|
@@ -490,10 +837,9 @@ export declare function createFigureProductSession(store: FigureProductStore): {
|
|
|
490
837
|
context: string;
|
|
491
838
|
name: string;
|
|
492
839
|
revision: number;
|
|
493
|
-
dirty: boolean;
|
|
494
840
|
canUndo: boolean;
|
|
495
841
|
canRedo: boolean;
|
|
496
|
-
fields: Array<import("@hatiolab/figure-model").FigureAsset["document"]["model"]["inputs"]
|
|
842
|
+
fields: Array<import("@hatiolab/figure-model").FigureAsset["document"]["model"]["inputs"][number] & {
|
|
497
843
|
value: number;
|
|
498
844
|
}>;
|
|
499
845
|
asset: import("@hatiolab/figure-model").FigureAsset;
|