@hatiolab/things-scene 10.1.98 → 10.1.99

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.
Files changed (52) hide show
  1. package/dist-types/components/mixins/holdable.d.ts.map +1 -1
  2. package/dist-types/components/root-container.d.ts +8 -0
  3. package/dist-types/components/root-container.d.ts.map +1 -1
  4. package/dist-types/diagnostics/inspector.d.ts.map +1 -1
  5. package/dist-types/figure/figure-capability.d.ts.map +1 -1
  6. package/dist-types/figure/figure-instance.d.ts +1 -0
  7. package/dist-types/figure/figure-instance.d.ts.map +1 -1
  8. package/dist-types/figure/figure-item-look.d.ts +2 -0
  9. package/dist-types/figure/figure-item-look.d.ts.map +1 -0
  10. package/dist-types/figure/figure-real-object.d.ts +16 -10
  11. package/dist-types/figure/figure-real-object.d.ts.map +1 -1
  12. package/dist-types/figure/figure-registry.d.ts +2 -6
  13. package/dist-types/figure/figure-registry.d.ts.map +1 -1
  14. package/dist-types/items/capacity-mixin.d.ts +56 -3
  15. package/dist-types/items/capacity-mixin.d.ts.map +1 -1
  16. package/dist-types/items/index.d.ts +5 -1
  17. package/dist-types/items/index.d.ts.map +1 -1
  18. package/dist-types/items/item-registry.d.ts +13 -0
  19. package/dist-types/items/item-registry.d.ts.map +1 -0
  20. package/dist-types/items/item-seating.d.ts +72 -0
  21. package/dist-types/items/item-seating.d.ts.map +1 -0
  22. package/dist-types/items/item-types.d.ts +61 -0
  23. package/dist-types/items/item-types.d.ts.map +1 -0
  24. package/dist-types/items/item.d.ts +333 -0
  25. package/dist-types/items/item.d.ts.map +1 -0
  26. package/dist-types/items/items-data-binding.d.ts +40 -1
  27. package/dist-types/items/items-data-binding.d.ts.map +1 -1
  28. package/dist-types/search/scene-search-engine.d.ts +1 -0
  29. package/dist-types/search/scene-search-engine.d.ts.map +1 -1
  30. package/dist-types/things-scene/create.d.ts +6 -1
  31. package/dist-types/things-scene/create.d.ts.map +1 -1
  32. package/dist-types/things-scene/index.d.ts +1 -1
  33. package/dist-types/things-scene/index.d.ts.map +1 -1
  34. package/dist-types/threed/real-object.d.ts +22 -6
  35. package/dist-types/threed/real-object.d.ts.map +1 -1
  36. package/dist-types/tracker/tracker.d.ts +1 -0
  37. package/dist-types/tracker/tracker.d.ts.map +1 -1
  38. package/dist-types/transfer/index.d.ts +1 -1
  39. package/dist-types/transfer/index.d.ts.map +1 -1
  40. package/dist-types/transfer/transfer.d.ts.map +1 -1
  41. package/dist-types/transfer/transferable-mixin.d.ts +9 -3
  42. package/dist-types/transfer/transferable-mixin.d.ts.map +1 -1
  43. package/dist-types/transfer/types.d.ts +22 -3
  44. package/dist-types/transfer/types.d.ts.map +1 -1
  45. package/dist-types/transition/transition-effect.d.ts +3 -0
  46. package/dist-types/transition/transition-effect.d.ts.map +1 -1
  47. package/package.json +1 -1
  48. package/things-scene-min.js +11 -11
  49. package/things-scene-min.js.map +1 -1
  50. package/things-scene-transfer.mjs +3 -3
  51. package/things-scene.mjs +3 -3
  52. package/things-scene.mjs.map +1 -1
@@ -0,0 +1,333 @@
1
+ import * as THREE from 'three';
2
+ import Shape from '../components/shape.js';
3
+ import type { SceneRenderContext } from '../interfaces/rendering.js';
4
+ import type { IRealObject } from '../interfaces/real-object.js';
5
+ import { RealObject } from '../threed/real-object.js';
6
+ import type { ItemDims } from './slot-layout/index.js';
7
+ /** How an item of a type is drawn, when a module draws it: a component drawn in 2D and in 3D in its place. */
8
+ export interface ItemLook {
9
+ /** What the look is of: when this changes for the item, the look is made again. */
10
+ key: string;
11
+ /** Drawn in 2D over the item's box; built in 3D as a child of the item's object. */
12
+ component: any;
13
+ /** Its height in coordinates: it stands on the item's bottom. */
14
+ depth: number;
15
+ /** Made the largest it can be inside a size in mm, by its own size rule (the size its seat shows the item at). */
16
+ fitTo(dims: ItemDims): void;
17
+ dispose(): void;
18
+ }
19
+ /** A module that draws items of some types (figures): its look for an item, and word when what it draws changes. */
20
+ export interface ItemLookProvider {
21
+ lookFor(item: Item): ItemLook | null;
22
+ /** Its key for the item now, without making a look: compared with the look the item has. Null: it does not draw it. */
23
+ keyFor(item: Item): string | null;
24
+ /** The size, in mm, of what draws the item's type as authored (a figure's body). */
25
+ dimsOf(item: any): ItemDims | null;
26
+ subscribe(changed: () => void): () => void;
27
+ }
28
+ /** The module that draws items' looks (one: the figure module). Items already made take their look again. */
29
+ export declare function setItemLookProvider(next: ItemLookProvider | null): void;
30
+ /** The size, in mm, of the figure an item's type is drawn by, as authored: null when nothing draws its type. */
31
+ export declare function itemLookDimsOf(item: any): ItemDims | null;
32
+ declare const Item_base: {
33
+ new (...args: any[]): {
34
+ contains(x: number, y: number): boolean;
35
+ get path(): {
36
+ x: any;
37
+ y: any;
38
+ }[];
39
+ set path(path: {
40
+ x: any;
41
+ y: any;
42
+ }[]);
43
+ get anchors(): {
44
+ name: string;
45
+ position: {
46
+ x: any;
47
+ y: any;
48
+ };
49
+ }[];
50
+ get bounds(): any;
51
+ set bounds(bounds: any);
52
+ render(ctx: CanvasRenderingContext2D): void;
53
+ _app: any;
54
+ _model: any;
55
+ _state: any;
56
+ _delta: any;
57
+ _animation: any;
58
+ _animate: any;
59
+ _parent: any;
60
+ _disposed: any;
61
+ _textHidden: any;
62
+ _text_substitutor: any;
63
+ _value_substitutor: any;
64
+ _mappings: any;
65
+ _realObject: IRealObject | undefined;
66
+ _cachedState: any;
67
+ updatedAt: any;
68
+ fontSize: any;
69
+ __cache__: any;
70
+ created(): void;
71
+ added(parent: import("../types/component.js").Container): void;
72
+ removed(parent: import("../types/component.js").Container): void;
73
+ ready(): Promise<void>;
74
+ _readyInvoked: boolean;
75
+ invokeReady(): void | Promise<void>;
76
+ touch(): void;
77
+ clearCache(...attrs: string[]): void;
78
+ removeSelf(completely?: boolean): void;
79
+ resetAnimation(): void;
80
+ dispose(): void;
81
+ get nature(): import("../index.js").ComponentNature;
82
+ get disposed(): boolean;
83
+ isLayer(): boolean;
84
+ isGroup(): boolean;
85
+ isContainer(): this is import("../types/component.js").Container;
86
+ isLine(): boolean;
87
+ isRoot(): boolean;
88
+ isRootModel(): boolean;
89
+ is3dish(): boolean;
90
+ get is3dMode(): boolean;
91
+ isIn3DSpace(): boolean;
92
+ isTemplate(): boolean;
93
+ isHTMLElement(): boolean;
94
+ isConnectable(): boolean;
95
+ isIdentifiable(): boolean;
96
+ isPositionable(): boolean;
97
+ replaceRefids(replaceMap: Record<string, string>): void;
98
+ get(property: string): any;
99
+ set(props: any, propval?: any): any;
100
+ getState(property: string): any;
101
+ setState(props: Partial<import("../index.js").State> | string, propval?: any): any;
102
+ get model(): any;
103
+ get state(): import("../index.js").State;
104
+ get refid(): any;
105
+ get hierarchy(): any;
106
+ get volatile(): string[];
107
+ _applyProps(target: Record<string, any>, props: Record<string, any>, options: import("../components/component.js").ApplyPropsOptions): /*elided*/ any;
108
+ move(offset: {
109
+ x: number;
110
+ y: number;
111
+ }, ...args: boolean[]): void;
112
+ symmetryX(x?: number): void;
113
+ symmetryY(y: number): void;
114
+ adjustResize(bounds: import("../index.js").BOUNDS, origin_bounds: import("../index.js").BOUNDS, diagonal: boolean): {
115
+ left: any;
116
+ top: any;
117
+ width: any;
118
+ height: any;
119
+ };
120
+ adjustRotation(rotation: number, step: boolean): number;
121
+ outline(progress: number): any;
122
+ get center(): import("../index.js").POINT;
123
+ set center(p: import("../index.js").POINT);
124
+ get location(): import("../index.js").POINT;
125
+ set location(l: import("../index.js").POINT);
126
+ get rotate(): import("../index.js").POINT;
127
+ set rotate(r: import("../index.js").POINT);
128
+ get dimension(): import("../index.js").DIMENSION;
129
+ set dimension(d: import("../index.js").DIMENSION);
130
+ get drawPath(): import("../index.js").POINT[];
131
+ get rotatePoint(): import("../index.js").POINT;
132
+ get mutable(): boolean;
133
+ get resizable(): boolean;
134
+ get rotatable(): boolean;
135
+ buildRealObject(): IRealObject | undefined;
136
+ get realObject(): IRealObject | undefined;
137
+ draw(context?: SceneRenderContext): void;
138
+ prerender(context: SceneRenderContext): void;
139
+ postrender(context: SceneRenderContext): void;
140
+ prepare(resolve: (component: import("../index.js").Component) => void, reject: (reason: any) => void): void;
141
+ prepareIf(condition: boolean): void;
142
+ drawText(context: SceneRenderContext): void;
143
+ drawStroke(context: SceneRenderContext, override?: Record<string, unknown>): void;
144
+ drawFill(context: SceneRenderContext, override?: Record<string, unknown>): void;
145
+ get strokeStyle(): any;
146
+ set strokeStyle(v: any);
147
+ get fillStyle(): any;
148
+ set fillStyle(v: any);
149
+ get fontColor(): string;
150
+ set fontColor(v: string);
151
+ get rotation(): number;
152
+ set rotation(v: number);
153
+ get decorators(): string[];
154
+ get decotag(): string;
155
+ get hidden(): boolean;
156
+ set hidden(v: boolean);
157
+ get tag(): string;
158
+ set tag(v: string);
159
+ get appendum(): any;
160
+ set appendum(v: any);
161
+ defaultTextSubstitutor(): string;
162
+ textLines(context?: SceneRenderContext): any[][];
163
+ get font(): string;
164
+ get lineHeight(): number;
165
+ get textSubstitutor(): () => string;
166
+ get text(): string;
167
+ set text(v: string);
168
+ get textBounds(): import("../index.js").BOUNDS;
169
+ get textRotation(): number;
170
+ get textHidden(): boolean;
171
+ set textHidden(v: boolean);
172
+ get hasTextProperty(): boolean;
173
+ animate(opts: import("../index.js").AnimationConfig): any;
174
+ effect(context: SceneRenderContext, model: any): void;
175
+ serialize(...others: any[]): string;
176
+ trim(): void;
177
+ closeScene(data: any): void;
178
+ delta(attr?: string | object, value?: any): any;
179
+ invalidate(): void;
180
+ get value(): any;
181
+ set value(v: any);
182
+ get data(): any;
183
+ set data(v: any);
184
+ set tap(v: any);
185
+ get mappings(): any[];
186
+ get retention(): number;
187
+ get animation(): import("../index.js").AnimationController | undefined;
188
+ get started(): boolean;
189
+ set started(v: boolean);
190
+ get controls(): import("../index.js").Control[] | undefined;
191
+ findFirst(finder: string | ((c: import("../index.js").Component) => boolean), ...others: any[]): import("../index.js").Component | undefined;
192
+ findAll(s: string | ((c: import("../index.js").Component) => boolean), ...others: any[]): any[] | undefined;
193
+ capture(x: number, y: number, except?: (c: import("../index.js").Component) => boolean): any;
194
+ findAnchor(name: string): any;
195
+ isDescendible(container: import("../index.js").Component | any): boolean;
196
+ getContext(component?: unknown): any;
197
+ get root(): import("../index.js").Component;
198
+ get rootModel(): import("../index.js").Component;
199
+ get parent(): import("../index.js").Component;
200
+ set parent(v: import("../index.js").Component);
201
+ get scalable(): boolean;
202
+ get stuck(): boolean;
203
+ get capturable(): boolean;
204
+ get position(): string;
205
+ get origin(): string;
206
+ get offset(): import("../index.js").POINT;
207
+ get app(): import("../index.js").ApplicationContext;
208
+ drawEffect(context: SceneRenderContext): void;
209
+ prepareFill(resolve: Function, reject: Function): void;
210
+ prepareFillIf(condition: boolean): void;
211
+ onchangeFill(after: Record<string, any>, before: Record<string, any>): void;
212
+ drawImage(context: SceneRenderContext, image: HTMLImageElement, left: number, top: number, width: number, height: number): void;
213
+ mutateBounds(logic: ((bounds: import("../index.js").BOUNDS) => import("../index.js").BOUNDS | void) | null, context?: any): void;
214
+ mutatePath(beforeLogic: ((path: import("../index.js").POINT[]) => import("../index.js").POINT[] | void) | null, afterLogic: ((path: import("../index.js").POINT[]) => import("../index.js").POINT[] | void) | null, context?: any): void;
215
+ access(accessor: string): any;
216
+ substitute(template: string, data: any): string | undefined;
217
+ onchangeMappings(after: Record<string, any>, before: Record<string, any>): void;
218
+ onchangeData(after: Record<string, any>, before: Record<string, any>): void;
219
+ buildMappings(): void;
220
+ executeMappings(force?: boolean): void;
221
+ disposeMappings(): void;
222
+ ondropfile(transfered: FileList, files: string[]): void;
223
+ transcoordS2P(x: number, y: number, rp?: import("../index.js").POINT): import("../index.js").POINT;
224
+ transcoordP2S(x: number, y: number, rp?: import("../index.js").POINT): import("../index.js").POINT;
225
+ transcoordS2T(x: number, y: number, top?: import("../index.js").Component): import("../index.js").POINT;
226
+ transcoordT2P(x: number, y: number, top?: import("../index.js").Component): import("../index.js").POINT;
227
+ transcoordT2S(x: number, y: number, top?: import("../index.js").Component): import("../index.js").POINT;
228
+ transcoordS2TR(x: number, y: number, top?: import("../index.js").Component): import("../index.js").POINT;
229
+ transcoordS2O(x: number, y: number, target: import("../index.js").Component): import("../index.js").POINT;
230
+ transcoordC2S(x: number, y: number, top?: import("../index.js").Component): import("../index.js").POINT;
231
+ transcoordS2C(x: number, y: number, top?: import("../index.js").Component): import("../index.js").POINT;
232
+ toParent(x: number, y: number, rp?: import("../index.js").POINT): import("../index.js").POINT;
233
+ fromParent(x: number, y: number, rp?: import("../index.js").POINT): import("../index.js").POINT;
234
+ toScene(x: number, y: number, top?: import("../index.js").Component): import("../index.js").POINT;
235
+ fromScene(x: number, y: number, top?: import("../index.js").Component): import("../index.js").POINT;
236
+ toLocal(x: number, y: number, top?: import("../index.js").Component): import("../index.js").POINT;
237
+ toGlobal(x: number, y: number, top?: import("../index.js").Component): import("../index.js").POINT;
238
+ toOther(x: number, y: number, target: import("../index.js").Component): import("../index.js").POINT;
239
+ on<K extends keyof import("../index.js").ComponentEventMap>(name: K, callback: (...args: import("../index.js").ComponentEventMap[K]) => void, context?: any): /*elided*/ any;
240
+ on(name: string | object, callback: Function, context?: any): /*elided*/ any;
241
+ off<K extends keyof import("../index.js").ComponentEventMap>(name: K, callback?: ((...args: import("../index.js").ComponentEventMap[K]) => void) | undefined, context?: any): /*elided*/ any;
242
+ off(name?: string | object, callback?: Function, context?: any): /*elided*/ any;
243
+ once<K extends keyof import("../index.js").ComponentEventMap>(name: K, callback: (...args: import("../index.js").ComponentEventMap[K]) => void, context?: any): /*elided*/ any;
244
+ once(name: string | object, callback: Function, context?: any): /*elided*/ any;
245
+ trigger<K extends keyof import("../index.js").ComponentEventMap>(name: K, ...args: import("../index.js").ComponentEventMap[K]): /*elided*/ any;
246
+ trigger(name: string, ...args: any[]): /*elided*/ any;
247
+ delegate_on(delegator: any): /*elided*/ any;
248
+ delegate_off(delegator: any): /*elided*/ any;
249
+ onchange(after: Record<string, any>, before: Record<string, any>): void;
250
+ calculateBounds?(): void;
251
+ oncreate_element?(element: HTMLElement): void;
252
+ removeComponent(component: import("../index.js").Component, ghost?: boolean): void;
253
+ addComponent(component: import("../index.js").Component, ghost?: boolean): void;
254
+ insertComponentAt(component: import("../index.js").Component, index: number, ghost?: boolean): void;
255
+ getOverlay(component: import("../index.js").Component): HTMLElement | undefined;
256
+ findById(id: string): import("../index.js").Component | undefined;
257
+ findByRefid(ref: string | number): import("../index.js").Component | undefined;
258
+ findAllById(id: string): import("../index.js").Component[];
259
+ resize(): void;
260
+ fit(type?: string): void;
261
+ get components(): import("../index.js").Component[] | undefined;
262
+ get layout(): any;
263
+ get auxOverlay(): HTMLElement | undefined;
264
+ get isReady(): boolean;
265
+ get selected(): import("../index.js").Component[];
266
+ set selected(_v: import("../index.js").Component[]);
267
+ get focused(): import("../index.js").Component | null;
268
+ set focused(_v: import("../index.js").Component | null);
269
+ get hasSameParentForAllSelected(): boolean;
270
+ set hasSameParentForAllSelected(_v: boolean);
271
+ get fitMode(): string | undefined;
272
+ set fitMode(_v: string | undefined);
273
+ get element(): HTMLElement | null;
274
+ set element(_v: HTMLElement | null);
275
+ };
276
+ } & typeof Shape;
277
+ export declare class Item extends Item_base {
278
+ private _look;
279
+ private _lookKey;
280
+ private _lookRef?;
281
+ /** The size its seat shows it at, in mm (ADR-0155 amendment 1 B); null when it stands in no seat that says. */
282
+ private _seatDims;
283
+ /** The mark of an item (things-scene's), which a FlowNode takes and a walk over the scene counts. */
284
+ get isItem(): boolean;
285
+ is3dish(): boolean;
286
+ /** The look it has, as it is: not taken again. */
287
+ get lookNow(): ItemLook | null;
288
+ /** The look it is drawn with now, made when it is first drawn; null is the box. */
289
+ get look(): ItemLook | null;
290
+ /** The size its seat shows it at, in mm: the place it sits in sizes it (ADR-0155 amendment 1 B). */
291
+ get seatDims(): ItemDims | null;
292
+ /**
293
+ * Told the size its seat shows it at (its holder, seating it): an item that does not say its own size is drawn at it,
294
+ * its look fitted to it by the look's own size rule. The same again changes nothing.
295
+ */
296
+ takeSeatDims(dims: ItemDims | null): void;
297
+ /** Its look given the size it is shown at, when its seat says one and it does not say its own. */
298
+ private fitLook;
299
+ /**
300
+ * What draws it has changed: the look it had is thrown away, and its 3D, when it has one, takes the new one. Only
301
+ * the look is made again; the item is the same, where it is.
302
+ */
303
+ refreshLook(): void;
304
+ onchange(after: Record<string, unknown>, before: Record<string, unknown>): void;
305
+ /** Whether the item says its own size: when it does not, it is drawn at its look's size, or marked. */
306
+ get sized(): boolean;
307
+ /** Its own size in coordinates; else its seat's; else its look's; else the mark of an item whose size is not known. */
308
+ get shownSize(): {
309
+ width: number;
310
+ height: number;
311
+ depth: number;
312
+ };
313
+ get bounds(): any;
314
+ render(ctx: SceneRenderContext): void;
315
+ buildRealObject(): IRealObject | undefined;
316
+ dispose(): void;
317
+ }
318
+ /**
319
+ * An item in 3D: a group at its place, holding its look -- the look's own object, standing on the item's bottom, or a
320
+ * box of the item's size. Seated, the group is what its holder hangs.
321
+ */
322
+ export declare class ItemRealObject extends RealObject<THREE.Group> {
323
+ private box;
324
+ private shown;
325
+ protected getObject3dInstance(): THREE.Group;
326
+ build(): void;
327
+ /** The look taken off and put on again: the group, its place and what hangs from it are untouched. */
328
+ rebuildLook(): void;
329
+ dispose(): void;
330
+ clear(): THREE.Group<THREE.Object3DEventMap>;
331
+ }
332
+ export {};
333
+ //# sourceMappingURL=item.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"item.d.ts","sourceRoot":"","sources":["../../src/items/item.ts"],"names":[],"mappings":"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"}
@@ -11,6 +11,21 @@ interface FlowNodeShape {
11
11
  slotIds?(): string[];
12
12
  ready(): Promise<void> | void;
13
13
  }
14
+ /**
15
+ * What a holder's data could not do, said (common item contract 3.1, 3.5):
16
+ * - `item-duplicate`: the data names one id more than once (`at`: the records' positions). The data is refused whole.
17
+ * - `item-repeat-report`: the data names an id another holder took, as its data before did (`holder`: that holder's
18
+ * id). The item stays where it is.
19
+ */
20
+ export type ItemIssue = {
21
+ code: 'item-duplicate';
22
+ id: string;
23
+ at: number[];
24
+ } | {
25
+ code: 'item-repeat-report';
26
+ id: string;
27
+ holder: string | null;
28
+ };
14
29
  export declare function ItemsDataBinding<TBase extends Ctor<FlowNodeShape>>(Base: TBase): {
15
30
  new (...args: any[]): {
16
31
  /**
@@ -19,8 +34,17 @@ export declare function ItemsDataBinding<TBase extends Ctor<FlowNodeShape>>(Base
19
34
  * ADR-0051 §8). When not from `data`, `data` is left to the component and its getter and setter are not touched.
20
35
  */
21
36
  _itemsFromData(): boolean;
22
- /** The key a held item is matched by: its slot by default, as `_recordKey` reads a record's. */
37
+ /** The key a held item is matched by: its id when matched by id, else its slot, as `_recordKey` reads a record's. */
23
38
  _currentKeyOf(carrier: any): string | null;
39
+ _itemIssues: ItemIssue[];
40
+ _itemsStale: boolean;
41
+ /** The ids the holder's last data it took named: an id in it that another holder has now is a repeat, not a move. */
42
+ _lastItemIds: ReadonlySet<string>;
43
+ /** What the last data could not do. Empty when it did all. */
44
+ get itemIssues(): ReadonlyArray<ItemIssue>;
45
+ /** Whether what the holder shows is from data before its last, which was refused. */
46
+ get itemsStale(): boolean;
47
+ _sayItemIssues(issues: ItemIssue[], stale: boolean): void;
24
48
  /** Items matched by id rather than by slot: an item keeps itself while it changes slot, and may move between holders. */
25
49
  _keyedById(): boolean;
26
50
  /**
@@ -62,6 +86,21 @@ export declare function ItemsDataBinding<TBase extends Ctor<FlowNodeShape>>(Base
62
86
  */
63
87
  set data(records: ReadonlyArray<SlotRecord> | any);
64
88
  _reconcileItems(records: ReadonlyArray<SlotRecord>): void;
89
+ /**
90
+ * Items matched by id (common item contract 3.1, 3.5). The data is the holder's snapshot of what it holds:
91
+ * - an id named twice refuses the snapshot whole -- what it holds, where and in what order, stays (Q2);
92
+ * - an id the data no longer names goes after the turn: another holder's data in the same turn may name it, and
93
+ * then it moves there;
94
+ * - an id another holder has moves here when it is new to this holder's data; when this holder's data before named
95
+ * it too, it is a repeated report and the item stays (Q13);
96
+ * - the items of each slot stand in the records' order.
97
+ */
98
+ _reconcileItemsById(records: ReadonlyArray<SlotRecord>): void;
99
+ /** How an item the data moves here from another holder is drawn on the way: null, not drawn -- it is there at once. */
100
+ itemMoveAnimation(): {
101
+ duration?: number;
102
+ ease?: string;
103
+ } | null;
65
104
  /** The held items put in the records' order, slot by slot, and each seated again where that order stands it. */
66
105
  _orderItemsAs(keys: string[]): void;
67
106
  _exportSlotRecords(): SlotRecord[];
@@ -1 +1 @@
1
- {"version":3,"file":"items-data-binding.d.ts","sourceRoot":"","sources":["../../src/items/items-data-binding.ts"],"names":[],"mappings":"AAyDA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAElD,KAAK,IAAI,CAAC,CAAC,GAAG,EAAE,IAAI,KAAK,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,CAAC,CAAA;AA+B7C;;;GAGG;AACH,UAAU,aAAa;IACrB,MAAM,EAAE,GAAG,EAAE,CAAA;IACb,UAAU,CAAC,OAAO,EAAE,GAAG,EAAE,OAAO,CAAC,EAAE,GAAG,GAAG,IAAI,CAAA;IAC7C,UAAU,CAAC,IAAI,EAAE,GAAG,EAAE,MAAM,CAAC,EAAE,OAAO,GAAG,IAAI,CAAA;IAC7C,OAAO,CAAC,IAAI,MAAM,EAAE,CAAA;IAKpB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAA;CAC9B;AAeD,wBAAgB,gBAAgB,CAAC,KAAK,SAAS,IAAI,CAAC,aAAa,CAAC,EAAE,IAAI,EAAE,KAAK;kBA5D7C,GAAG,EAAE;QA8DnC;;;;WAIG;0BACe,OAAO;QAIzB,gGAAgG;+BACzE,GAAG,GAAG,MAAM,GAAG,IAAI;QAK1C,yHAAyH;sBAC3G,OAAO;QAIrB;;;;;;;;WAQG;iBACY,OAAO,CAAC,IAAI,CAAC;QAuC5B;;;;;;;;;;;;WAYG;oBACS,UAAU,EAAE,GAAG,SAAS;QA3CpC;;;;;;;;;;;;WAYG;0BACe,aAAa,CAAC,UAAU,CAAC,GAAG,GAAG;iCA4CxB,aAAa,CAAC,UAAU,CAAC,GAAG,IAAI;QAwEzD,gHAAgH;4BAC5F,MAAM,EAAE,GAAG,IAAI;8BAcb,UAAU,EAAE;QAkClC;;;WAGG;2BACgB,UAAU,GAAG,MAAM;QAItC;;;;;;;;;;WAUG;8BACmB,MAAM,WAAW,GAAG,GAAG,IAAI,GAAG,UAAU;QAgB9D;;;WAGG;mCACwB,GAAG,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,SAAS;QAuBhE;;;;;;;;WAQG;2BACgB,SAAS,MAAM,EAAE,GAAG,IAAI;QAI3C;;;;;;WAMG;sCAC2B,UAAU,GAAG,GAAG,GAAG,IAAI;gBApU/C,GAAG,EAAE;4BACO,GAAG,YAAY,GAAG,GAAG,IAAI;yBAC5B,GAAG,WAAW,OAAO,GAAG,IAAI;oBACjC,MAAM,EAAE;;UAmVrB"}
1
+ {"version":3,"file":"items-data-binding.d.ts","sourceRoot":"","sources":["../../src/items/items-data-binding.ts"],"names":[],"mappings":"AAyDA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAGlD,KAAK,IAAI,CAAC,CAAC,GAAG,EAAE,IAAI,KAAK,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,CAAC,CAAA;AA+B7C;;;GAGG;AACH,UAAU,aAAa;IACrB,MAAM,EAAE,GAAG,EAAE,CAAA;IACb,UAAU,CAAC,OAAO,EAAE,GAAG,EAAE,OAAO,CAAC,EAAE,GAAG,GAAG,IAAI,CAAA;IAC7C,UAAU,CAAC,IAAI,EAAE,GAAG,EAAE,MAAM,CAAC,EAAE,OAAO,GAAG,IAAI,CAAA;IAC7C,OAAO,CAAC,IAAI,MAAM,EAAE,CAAA;IAKpB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAA;CAC9B;AAED;;;;;GAKG;AACH,MAAM,MAAM,SAAS,GACjB;IAAE,IAAI,EAAE,gBAAgB,CAAC;IAAC,EAAE,EAAE,MAAM,CAAC;IAAC,EAAE,EAAE,MAAM,EAAE,CAAA;CAAE,GACpD;IAAE,IAAI,EAAE,oBAAoB,CAAC;IAAC,EAAE,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,CAAA;AAErE,wBAAgB,gBAAgB,CAAC,KAAK,SAAS,IAAI,CAAC,aAAa,CAAC,EAAE,IAAI,EAAE,KAAK;kBAzD7C,GAAG,EAAE;QA2DnC;;;;WAIG;0BACe,OAAO;QAIzB,qHAAqH;+BAC9F,GAAG,GAAG,MAAM,GAAG,IAAI;qBAK7B,SAAS,EAAE;;QAExB,qHAAqH;sBACvG,WAAW,CAAC,MAAM,CAAC;QAEjC,8DAA8D;0BAC5C,aAAa,CAAC,SAAS,CAAC;QAI1C,qFAAqF;0BACnE,OAAO;+BAIF,SAAS,EAAE,SAAS,OAAO,GAAG,IAAI;QAOzD,yHAAyH;sBAC3G,OAAO;QAIrB;;;;;;;;WAQG;iBACY,OAAO,CAAC,IAAI,CAAC;QAuC5B;;;;;;;;;;;;WAYG;oBACS,UAAU,EAAE,GAAG,SAAS;QA3CpC;;;;;;;;;;;;WAYG;0BACe,aAAa,CAAC,UAAU,CAAC,GAAG,GAAG;iCA4CxB,aAAa,CAAC,UAAU,CAAC,GAAG,IAAI;QAgDzD;;;;;;;;WAQG;qCAC0B,aAAa,CAAC,UAAU,CAAC,GAAG,IAAI;QA8E7D,uHAAuH;6BAClG;YAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;YAAC,IAAI,CAAC,EAAE,MAAM,CAAA;SAAE,GAAG,IAAI;QAIhE,gHAAgH;4BAC5F,MAAM,EAAE,GAAG,IAAI;8BAcb,UAAU,EAAE;QAkClC;;;WAGG;2BACgB,UAAU,GAAG,MAAM;QAKtC;;;;;;;;;;WAUG;8BACmB,MAAM,WAAW,GAAG,GAAG,IAAI,GAAG,UAAU;QAgB9D;;;WAGG;mCACwB,GAAG,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,SAAS;QAuBhE;;;;;;;;WAQG;2BACgB,SAAS,MAAM,EAAE,GAAG,IAAI;QAI3C;;;;;;WAMG;sCAC2B,UAAU,GAAG,GAAG,GAAG,IAAI;gBA5Z/C,GAAG,EAAE;4BACO,GAAG,YAAY,GAAG,GAAG,IAAI;yBAC5B,GAAG,WAAW,OAAO,GAAG,IAAI;oBACjC,MAAM,EAAE;;UA2arB"}
@@ -48,6 +48,7 @@ export declare class SceneSearchEngine {
48
48
  navigateTo(index: number): SearchResult | undefined;
49
49
  /** 검색 결과 초기화 */
50
50
  clear(): void;
51
+ /** Every component under it, and the items each one holds (common item contract 3.1: a held item is not a component). */
51
52
  private _traverse;
52
53
  private _matchComponent;
53
54
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"scene-search-engine.d.ts","sourceRoot":"","sources":["../../src/search/scene-search-engine.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,SAAS,MAAM,4BAA4B,CAAA;AAEvD;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,eAAe;IACf,SAAS,EAAE,SAAS,CAAA;IACpB,cAAc;IACd,SAAS,EAAE,IAAI,GAAG,MAAM,GAAG,KAAK,GAAG,MAAM,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,UAAU,CAAA;IAClF,6CAA6C;IAC7C,UAAU,EAAE,MAAM,CAAA;IAClB,YAAY;IACZ,UAAU,EAAE,MAAM,CAAA;CACnB;AAED,MAAM,WAAW,aAAa;IAC5B,yBAAyB;IACzB,MAAM,CAAC,EAAE,YAAY,CAAC,WAAW,CAAC,EAAE,CAAA;IACpC,0BAA0B;IAC1B,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,iCAAiC;IACjC,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,wBAAwB;IACxB,UAAU,CAAC,EAAE,MAAM,CAAA;CACpB;AAMD;;;;;GAKG;AACH,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,QAAQ,CAAqB;IACrC,OAAO,CAAC,aAAa,CAAK;IAE1B,IAAI,OAAO,IAAI,SAAS,YAAY,EAAE,CAErC;IAED,IAAI,YAAY,IAAI,MAAM,CAEzB;IAED,IAAI,aAAa,IAAI,YAAY,GAAG,SAAS,CAE5C;IAED,IAAI,WAAW,IAAI,MAAM,CAExB;IAED;;;OAGG;IACH,MAAM,CAAC,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,aAAa,GAAG,YAAY,EAAE;IAkC/E,gBAAgB;IAChB,YAAY,IAAI,YAAY,GAAG,SAAS;IAMxC,gBAAgB;IAChB,YAAY,IAAI,YAAY,GAAG,SAAS;IAMxC,iBAAiB;IACjB,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS;IAMnD,gBAAgB;IAChB,KAAK,IAAI,IAAI;IAKb,OAAO,CAAC,SAAS;IAUjB,OAAO,CAAC,eAAe;IAoEvB;;;OAGG;IACH,OAAO,CAAC,iBAAiB;IAiCzB;;;OAGG;IACH,OAAO,CAAC,gBAAgB;CAkCzB"}
1
+ {"version":3,"file":"scene-search-engine.d.ts","sourceRoot":"","sources":["../../src/search/scene-search-engine.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,SAAS,MAAM,4BAA4B,CAAA;AAEvD;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,eAAe;IACf,SAAS,EAAE,SAAS,CAAA;IACpB,cAAc;IACd,SAAS,EAAE,IAAI,GAAG,MAAM,GAAG,KAAK,GAAG,MAAM,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,UAAU,CAAA;IAClF,6CAA6C;IAC7C,UAAU,EAAE,MAAM,CAAA;IAClB,YAAY;IACZ,UAAU,EAAE,MAAM,CAAA;CACnB;AAED,MAAM,WAAW,aAAa;IAC5B,yBAAyB;IACzB,MAAM,CAAC,EAAE,YAAY,CAAC,WAAW,CAAC,EAAE,CAAA;IACpC,0BAA0B;IAC1B,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,iCAAiC;IACjC,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,wBAAwB;IACxB,UAAU,CAAC,EAAE,MAAM,CAAA;CACpB;AAMD;;;;;GAKG;AACH,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,QAAQ,CAAqB;IACrC,OAAO,CAAC,aAAa,CAAK;IAE1B,IAAI,OAAO,IAAI,SAAS,YAAY,EAAE,CAErC;IAED,IAAI,YAAY,IAAI,MAAM,CAEzB;IAED,IAAI,aAAa,IAAI,YAAY,GAAG,SAAS,CAE5C;IAED,IAAI,WAAW,IAAI,MAAM,CAExB;IAED;;;OAGG;IACH,MAAM,CAAC,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,aAAa,GAAG,YAAY,EAAE;IAkC/E,gBAAgB;IAChB,YAAY,IAAI,YAAY,GAAG,SAAS;IAMxC,gBAAgB;IAChB,YAAY,IAAI,YAAY,GAAG,SAAS;IAMxC,iBAAiB;IACjB,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS;IAMnD,gBAAgB;IAChB,KAAK,IAAI,IAAI;IAKb,yHAAyH;IACzH,OAAO,CAAC,SAAS;IAgBjB,OAAO,CAAC,eAAe;IAoEvB;;;OAGG;IACH,OAAO,CAAC,iBAAiB;IAiCzB;;;OAGG;IACH,OAAO,CAAC,gBAAgB;CAkCzB"}
@@ -25,6 +25,11 @@ export interface SceneCreateOptions {
25
25
  model?: Model;
26
26
  /** Theme style map (name → value) applied to the scene */
27
27
  style?: Record<string, any>;
28
+ /**
29
+ * The domain's item type table (ADR-0155): read (`itemTypesFromThemes`) or a theme value. Given by an app that uses
30
+ * item types, empty when its domain has none; left out by an app that does not.
31
+ */
32
+ itemTypes?: unknown;
28
33
  /** Additional layer configurations (e.g. scroll-layer, movement-layer) */
29
34
  layers?: {
30
35
  type: string;
@@ -80,5 +85,5 @@ export interface SceneCreateOptions {
80
85
  * scene.data = { sensor1: { value: 42 } } // live data binding
81
86
  * ```
82
87
  */
83
- export default function create({ target, model, style, layers, handlers, mode, refProvider, dataSubscriptionProvider, dataStorage, baseUrl, fitMode, postprocessing, logarithmicDepth, loading: loadingOptions }: SceneCreateOptions): Scene;
88
+ export default function create({ target, model, style, itemTypes, layers, handlers, mode, refProvider, dataSubscriptionProvider, dataStorage, baseUrl, fitMode, postprocessing, logarithmicDepth, loading: loadingOptions }: SceneCreateOptions): Scene;
84
89
  //# sourceMappingURL=create.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"create.d.ts","sourceRoot":"","sources":["../../src/things-scene/create.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAC5C,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAA;AACrD,OAAO,KAAK,EAAE,iBAAiB,EAAE,wBAAwB,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAA;AACpH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAA;AACpE,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAA;AAEnD,OAAO,KAAK,MAAM,YAAY,CAAA;AAE9B;;;;;;;;;;;;;GAaG;AACH,MAAM,WAAW,kBAAkB;IACjC,mEAAmE;IACnE,MAAM,CAAC,EAAE,WAAW,GAAG,MAAM,CAAA;IAC7B,+DAA+D;IAC/D,KAAK,CAAC,EAAE,KAAK,CAAA;IACb,0DAA0D;IAC1D,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IAC3B,0EAA0E;IAC1E,MAAM,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,EAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,EAAE,CAAA;IAC5D,2EAA2E;IAC3E,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAA;IACnB,4EAA4E;IAC5E,IAAI,CAAC,EAAE,SAAS,CAAA;IAChB,+CAA+C;IAC/C,WAAW,CAAC,EAAE,iBAAiB,CAAA;IAC/B,uEAAuE;IACvE,wBAAwB,CAAC,EAAE,wBAAwB,CAAA;IACnD,6DAA6D;IAC7D,WAAW,CAAC,EAAE,qBAAqB,CAAA;IACnC,yDAAyD;IACzD,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,uEAAuE;IACvE,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,+EAA+E;IAC/E,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAA;IAC1B,8BAA8B;IAC9B,OAAO,CAAC,EAAE,cAAc,CAAA;CACzB;AAUD;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,MAAM,CAAC,OAAO,UAAU,MAAM,CAAC,EAC7B,MAAM,EACN,KAAK,EACL,KAAK,EACL,MAAW,EACX,QAAa,EACb,IAAsB,EACtB,WAAW,EACX,wBAAwB,EACxB,WAAkC,EAClC,OAAO,EACP,OAAO,EACP,cAAqB,EACrB,gBAAgB,EAChB,OAAO,EAAE,cAAc,EACxB,EAAE,kBAAkB,SAkDpB"}
1
+ {"version":3,"file":"create.d.ts","sourceRoot":"","sources":["../../src/things-scene/create.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAC5C,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAA;AACrD,OAAO,KAAK,EAAE,iBAAiB,EAAE,wBAAwB,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAA;AACpH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAA;AACpE,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAA;AAEnD,OAAO,KAAK,MAAM,YAAY,CAAA;AAE9B;;;;;;;;;;;;;GAaG;AACH,MAAM,WAAW,kBAAkB;IACjC,mEAAmE;IACnE,MAAM,CAAC,EAAE,WAAW,GAAG,MAAM,CAAA;IAC7B,+DAA+D;IAC/D,KAAK,CAAC,EAAE,KAAK,CAAA;IACb,0DAA0D;IAC1D,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IAC3B;;;OAGG;IACH,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,0EAA0E;IAC1E,MAAM,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,EAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,EAAE,CAAA;IAC5D,2EAA2E;IAC3E,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAA;IACnB,4EAA4E;IAC5E,IAAI,CAAC,EAAE,SAAS,CAAA;IAChB,+CAA+C;IAC/C,WAAW,CAAC,EAAE,iBAAiB,CAAA;IAC/B,uEAAuE;IACvE,wBAAwB,CAAC,EAAE,wBAAwB,CAAA;IACnD,6DAA6D;IAC7D,WAAW,CAAC,EAAE,qBAAqB,CAAA;IACnC,yDAAyD;IACzD,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,uEAAuE;IACvE,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,+EAA+E;IAC/E,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAA;IAC1B,8BAA8B;IAC9B,OAAO,CAAC,EAAE,cAAc,CAAA;CACzB;AAUD;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,MAAM,CAAC,OAAO,UAAU,MAAM,CAAC,EAC7B,MAAM,EACN,KAAK,EACL,KAAK,EACL,SAAS,EACT,MAAW,EACX,QAAa,EACb,IAAsB,EACtB,WAAW,EACX,wBAAwB,EACxB,WAAkC,EAClC,OAAO,EACP,OAAO,EACP,cAAqB,EACrB,gBAAgB,EAChB,OAAO,EAAE,cAAc,EACxB,EAAE,kBAAkB,SAmDpB"}
@@ -36,7 +36,7 @@ export type { SceneRenderContext, DrawOptions, StyleOptions, FillStyle, StrokeSt
36
36
  export type { LinkEnd } from '../decorator/decorators/link-decorator.js';
37
37
  export type { LAYOUT, LayoutRegistry } from '../interfaces/layout.js';
38
38
  export type { IRealObject } from '../interfaces/real-object.js';
39
- export type { Vec3, Size3, Bounds3, SlotArrangement, GridShape, SlotDef, SlotAssignment, TransferOptions, StaticPolicy, DynamicPolicy, PendingPolicy, ConnectionPolicy, Port, TransferEventType, TransferEvent, CarrierAttachPoint, ArrangementStrategy, Transferable, NavigationTarget, NavigationOptions, Movable, ArticulatedCapability, MissionStatus, VehicleMission, MissionExecutor, SensorPoint, SpawnPoint, SinkPoint, SimulationClock, TransferPhase, TransferTimeline, TransferReceipt, TransferReceiptJSON, TransferLogStats, PhysicalRunner, TransferInit, CarrierLine, CarrierReservation, CarrierSlotState, JoinPoint, QuatLike, PoseSerialized, PickupFrame, PickupRequester, Pickable, RectangularFootprintOptions, TopApproachOptions } from '../transfer/index.js';
39
+ export type { Vec3, Size3, Bounds3, SlotArrangement, GridShape, SlotDef, SlotAssignment, TransferOptions, StaticPolicy, DynamicPolicy, PendingPolicy, ConnectionPolicy, Port, TransferEventType, TransferEvent, CarrierAttachPoint, SeatAttachPoint, ArrangementStrategy, Transferable, NavigationTarget, NavigationOptions, Movable, ArticulatedCapability, MissionStatus, VehicleMission, MissionExecutor, SensorPoint, SpawnPoint, SinkPoint, SimulationClock, TransferPhase, TransferTimeline, TransferReceipt, TransferReceiptJSON, TransferLogStats, PhysicalRunner, TransferInit, CarrierLine, CarrierReservation, CarrierSlotState, JoinPoint, QuatLike, PoseSerialized, PickupFrame, PickupRequester, Pickable, RectangularFootprintOptions, TopApproachOptions } from '../transfer/index.js';
40
40
  export { FixedSlotStrategy, CenteringSlotStrategy, TRANSFER_SLOT_KEY, applySeatingRotation, globalSimClock, Transfer, transferLog, receiptToJSON, transferTracer, quatFromYaw, rectangularFootprintFrames, topApproachFrame, filterByToolType, chooseNearestPickupFrame } from '../transfer/index.js';
41
41
  export { Pose6DOF, getPose, getWorldPose, setPose, setWorldPose } from '../math/index.js';
42
42
  export type { PoseLike } from '../math/index.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/things-scene/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/things-scene/index.ts"],"names":[],"mappings":"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"}
@@ -98,8 +98,8 @@ export declare abstract class RealObject<T extends THREE.Object3D = THREE.Object
98
98
  * pallet/stockpile/trailer — 는 대신 StackingStrategy 를 선언하고 자기 layoutHeldItems 에서
99
99
  * 적용한다.) host 가 자기만의 배치(chute 슬로프 / forklift fork)를 원하면 이 메서드를 override 한다.
100
100
  *
101
- * *선언된 slot(host.slots)에 배정된* item(rack cell / spot 등)은 receive/자체 로직이 이미
102
- * 소유하므로 건드리지 않는다(회귀 방지). 그 외 — slot-less item, 또는 host 가 선언하지 않은
101
+ * *선언된 slot(host.slots)에 배정된* item(rack cell / spot 등)은 placementFor 로 옮기지 않고 host 의
102
+ * seatHeldItem 으로 앉힌다 — 들고 난 뒤에 3D 가 생긴 item 도 제 자리에 붙는다. 그 외 — slot-less item, 또는 host 가 선언하지 않은
103
103
  * slotId 를 가진 item(예: data 로 올린 pallet 위 box 의 논리 cellId) — 은 순번대로 placementFor
104
104
  * 로 배치한다. placementFor 없으면 no-op(기존 동작 보존).
105
105
  */
@@ -329,17 +329,33 @@ export declare abstract class RealObject<T extends THREE.Object3D = THREE.Object
329
329
  * `object3d.scale` 을 직접 쓰는 대신 이것을 쓴다.
330
330
  */
331
331
  protected setDimensionScale(x: number, y: number, z: number): void;
332
- /** state.scale · 애니메이션 · 치수 · 보여 주기 배율을 곱해 최종 배율을 낸다. */
332
+ /**
333
+ * state.scale · 애니메이션 · 치수 · 보여 주기 배율을 곱해 최종 배율을 낸다. Hung from a node that is itself scaled (a
334
+ * figure's rig is in mm), the node's scale is undone: an item is its own size in the scene wherever it hangs.
335
+ */
333
336
  protected applyScale(sx: number, sy: number, sz: number): void;
337
+ /** The scale it rests at, before state.scale and animation: its dimensions, its shown scale, over its node's scale. */
338
+ restingScale(): {
339
+ x: number;
340
+ y: number;
341
+ z: number;
342
+ };
334
343
  /** 보여 주기만을 위한 균일 배율 — 1 이 제 크기. 저장 치수·판정에는 들지 않는다. */
335
344
  get displayScale(): number;
336
345
  private _displayScale?;
346
+ private _nodeScale?;
337
347
  /**
338
348
  * 담는 쪽이 자리 안에 보여 주려고 줄이는 균일 배율(ADR-0051 §4.2, figure-model `seatInSlot` 의 scale). state 도 치수도
339
- * 바꾸지 않는다 — 들고 있는 동안만이고, 놓을 때 1 로 돌아간다. 지금 배율에 비율로 곱한다: 부착(`attach`)이 부모의 배율을
340
- * 맞춰 둔 값을 덮지 않는다. 다시 곱해 쌓이지 않는다 — 같은 값을 다시 주면 그대로다.
349
+ * 바꾸지 않는다 — 들고 있는 동안만이고, 놓을 때 1 로 돌아간다. `nodeScale` is the scale of the node it is hung from,
350
+ * relative to the scene (common item contract 3.4): it is undone, so the item is its own size × this scale in the scene
351
+ * wherever it hangs, through every later update of its scale. Left out, the node is the one it hangs from now.
352
+ * 다시 곱해 쌓이지 않는다 — 같은 값을 다시 주면 그대로다.
341
353
  */
342
- setTransientDisplayScale(scale: number): void;
354
+ setTransientDisplayScale(scale: number, nodeScale?: {
355
+ x: number;
356
+ y: number;
357
+ z: number;
358
+ }): void;
343
359
  updateScale(): void;
344
360
  /**
345
361
  * 활성 애니메이션의 delta 값을 Object3D에 반영한다.
@@ -1 +1 @@
1
- {"version":3,"file":"real-object.d.ts","sourceRoot":"","sources":["../../src/threed/real-object.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,KAAK,SAAS,MAAM,4BAA4B,CAAA;AAGvD,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAA;AAC3E,OAAO,KAAK,EAAE,UAAU,EAAS,MAAM,wBAAwB,CAAA;AAK/D,OAAO,EAAE,yBAAyB,EAAE,MAAM,kCAAkC,CAAA;AAK5E;;;;GAIG;AACH,eAAO,MAAM,eAAe,OAAO,CAAA;AACnC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAA;AAUtD,8BAAsB,UAAU,CAAC,CAAC,SAAS,KAAK,CAAC,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAE,YAAW,WAAW;IAChG,SAAS,CAAC,UAAU,EAAE,SAAS,CAAA;IAC/B,SAAS,CAAC,QAAQ,EAAE,OAAO,CAAQ;IACnC,SAAS,CAAC,UAAU,CAAC,EAAE,MAAM,CAAA;IAC7B,SAAS,CAAC,iBAAiB,UAAQ;IACnC,OAAO,CAAC,SAAS,CAAC,CAAQ;IAEnB,QAAQ,EAAE,CAAC,CAAA;IAUlB,OAAO,CAAC,gBAAgB,CAIvB;IAED,MAAM,CAAC,qBAAqB,CAC1B,SAAS,EAAE,SAAS,EACpB,iBAAiB,CAAC,EAAE,OAAO,EAC3B,OAAO,CAAC,EAAE,OAAO,gCAAgC,EAAE,gBAAgB;gBASzD,SAAS,EAAE,SAAS,GAAG,GAAG;IAOtC,MAAM;IAeN;;;;;;;;OAQG;IACH,OAAO,CAAC,eAAe;IAQvB;;;;OAIG;IACH,IAAI,SAAS,IAAI,MAAM,CAEtB;IAED,SAAS,CAAC,mBAAmB,IAAI,CAAC;IAIlC,KAAK;IAQL,gBAAgB;IAOhB;;;;;OAKG;IACH,SAAS,CAAC,aAAa,CACrB,IAAI,GAAE,OAAc,EACpB,OAAO,GAAE,OAAe,GACvB;QAAE,IAAI,EAAE,OAAO,CAAC;QAAC,OAAO,EAAE,OAAO,CAAA;KAAE;IAItC,OAAO,CAAC,YAAY;IAiBpB,4DAA4D;IAC5D,IAAI,kBAAkB,IAAI,OAAO,CAEhC;IAED,oCAAoC;IACpC,IAAI,iBAAiB,IAAI,MAAM,EAAE,GAAG,IAAI,CAEvC;IAED,IAAI,SAAS,IAAI,SAAS,CAEzB;IAED,IAAI,cAAc,IAAI,yBAAyB,GAAG,SAAS,CAS1D;IAED,IAAI,OAAO,IAAI,OAAO,CAErB;IAED,IAAI,OAAO,CAAC,OAAO,EAAE,OAAO,EAK3B;IAED,OAAO;IAMP,KAAK;IAsBL,iBAAiB,UAAQ;IAEzB;;;;;;;;OAQG;IACH,OAAO,CAAC,mBAAmB,CAAC,CAAW;IAEvC;;;;;;;;OAQG;IACH,IAAI,SAAS,IAAI,SAAS,CAEzB;IAED;;;OAGG;IACH,qBAAqB,CAAC,CAAC,EAAE,SAAS,GAAG,IAAI;IAIzC,4DAA4D;IAC5D,uBAAuB,IAAI,IAAI;IAI/B;;;;;;;;;;;;;OAaG;IACH,eAAe,IAAI,IAAI;IA0BvB;;OAEG;IACH,eAAe;IAwBf,IAAI,QAAQ;;;;MAOX;IAED,IAAI,QAAQ;;;;MAQX;IAED,IAAI,KAAK;;;;MAUR;IAED,IAAI,EAAE,WAML;IAED,IAAI,EAAE,WAML;IAED,IAAI,EAAE,WAkBL;IAED;;;;;;;;;;;;;;;;;;;OAmBG;IACH,IAAI,iBAAiB,IAAI,MAAM,CAE9B;IAED;;;;;;;;;;;;;;;;;;;;;OAqBG;IACH,SAAS,CAAC,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM;IAIjD;;;;;;;;;;OAUG;IACH,SAAS,CAAC,iBAAiB,IAAI,MAAM;IAarC;;;;;;;;;;;;;;;;OAgBG;IACH,IAAI,aAAa,IAAI,MAAM,CAU1B;IAED;;;;;;;;;;;OAWG;IACH,IAAI,gBAAgB,IAAI,MAAM,CAQ7B;IAED;;;;;;OAMG;IACH,SAAS,KAAK,cAAc,IAAI,OAAO,GAAG,OAAO,GAAG,UAAU,CAI7D;IAED;;;;;;;;;;;;;OAaG;IACH,SAAS,KAAK,YAAY,IAAI;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAS/D;IAED;;;;OAIG;IACH,IAAI,aAAa,IAAI,OAAO,GAAG,OAAO,GAAG,UAAU,CAElD;IAED,OAAO,CAAC,aAAa,CAAC,CAAa;IAEnC;;;;;;;;;;OAUG;IACH,IAAI,YAAY,IAAI,KAAK,CAAC,KAAK,CAO9B;IAED,IAAI,MAAM;;;;MAWT;IAED,eAAe;IAIf,iBAAiB;IAIjB,gBAAgB,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAA;IAEnE,IAAI,SAAS;eAFe,MAAM;gBAAU,MAAM;eAAS,MAAM;MAWhE;IAED;;;;;;;;;;;;;;;OAeG;IACH,IAAI,cAAc,IAAI,MAAM,CAU3B;IAGD,cAAc;IAKd,YAAY;IAKZ;;;;;;;;;;;;;;;;;;;OAmBG;IACH,IAAI,cAAc,IAAI;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAA;KAAE,CAExD;IAED,SAAS,CAAC,eAAe,EAAE;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAA;KAAE,CAAuB;IAErF;;;OAGG;IACH,SAAS,CAAC,iBAAiB,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,IAAI;IAMlE,yDAAyD;IACzD,SAAS,CAAC,UAAU,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,IAAI;IAU9D,sDAAsD;IACtD,IAAI,YAAY,IAAI,MAAM,CAEzB;IAGD,OAAO,CAAC,aAAa,CAAC,CAAQ;IAE9B;;;;OAIG;IACH,wBAAwB,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAM7C,WAAW;IAKX;;;;OAIG;IACH,kBAAkB;IAyClB,eAAe;IAKf;;;;OAIG;IACH,WAAW;IAIX;;;OAGG;IACH,SAAS,CAAC,eAAe,IAAI,OAAO;IAIpC;;;;;;;;;OASG;IACH,oBAAoB,IAAI,IAAI;IAe5B,kDAAkD;IAClD,aAAa,IAAI,IAAI;IAIrB,YAAY;IAYZ,iBAAiB;IACjB,eAAe;IACf,UAAU;IAEV;;;;;OAKG;IACH,UAAU,IAAI,UAAU,GAAG,IAAI;IAI/B;;;;;;;;;;;;;;;;;;;OAmBG;IACH,SAAS,CAAC,mBAAmB;IA8B7B;;;OAGG;IACH;;;;;;;;;;;OAWG;IACH,SAAS,KAAK,cAAc,IAAI,MAAM,CAQrC;IAED;;;OAGG;IACH,IAAI,kBAAkB,IAAI,MAAM,CAE/B;IAED;;;OAGG;IACH,gBAAgB;IAiChB;;;OAGG;IACH,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAInC;;;;OAIG;IACH,uBAAuB,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;IAMrD,QAAQ,CAAC,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU;CAoF/C"}
1
+ {"version":3,"file":"real-object.d.ts","sourceRoot":"","sources":["../../src/threed/real-object.ts"],"names":[],"mappings":"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"}
@@ -47,6 +47,7 @@ export declare class Tracker {
47
47
  dispose(): void;
48
48
  /** polling 1회 (또는 start 시 즉시 부착). */
49
49
  private _tickOnce;
50
+ /** A component of the id, else an item held in the root container by it (common item contract 3.1). */
50
51
  private _findTarget;
51
52
  private _clearTarget;
52
53
  private _clearFallback;
@@ -1 +1 @@
1
- {"version":3,"file":"tracker.d.ts","sourceRoot":"","sources":["../../src/tracker/tracker.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,SAAS,MAAM,4BAA4B,CAAA;AAEvD,MAAM,WAAW,cAAc;IAC7B,qFAAqF;IACrF,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,wEAAwE;IACxE,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB;;;;OAIG;IACH,QAAQ,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,KAAK,SAAS,GAAG,IAAI,GAAG,SAAS,CAAA;IACnE,qDAAqD;IACrD,aAAa,CAAC,EAAE,MAAM,CAAA;CACvB;AAUD;;;;;;;;;;;GAWG;AACH,qBAAa,OAAO;IAClB,OAAO,CAAC,MAAM,CAAK;IACnB,OAAO,CAAC,GAAG,CAAsB;IACjC,OAAO,CAAC,OAAO,CAAyB;IACxC,OAAO,CAAC,SAAS,CAAyB;IAC1C,OAAO,CAAC,YAAY,CAAC,CAAY;IACjC,OAAO,CAAC,YAAY,CAAI;IACxB,OAAO,CAAC,QAAQ,CAGG;gBAEP,KAAK,EAAE,GAAG;IAItB,IAAI,UAAU,IAAI,MAAM,GAAG,IAAI,CAE9B;IAED;;;OAGG;IACH,KAAK,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,IAAI;IA6BjD;;OAEG;IACH,IAAI,IAAI,IAAI;IAcZ,OAAO,IAAI,IAAI;IAIf,qCAAqC;IACrC,OAAO,CAAC,SAAS;IAoCjB,OAAO,CAAC,WAAW;IAKnB,OAAO,CAAC,YAAY;IAOpB,OAAO,CAAC,cAAc;IAOtB,OAAO,CAAC,YAAY;IAIpB,OAAO,CAAC,uBAAuB;IAM/B,OAAO,CAAC,gBAAgB;CAMzB"}
1
+ {"version":3,"file":"tracker.d.ts","sourceRoot":"","sources":["../../src/tracker/tracker.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,SAAS,MAAM,4BAA4B,CAAA;AAEvD,MAAM,WAAW,cAAc;IAC7B,qFAAqF;IACrF,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,wEAAwE;IACxE,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB;;;;OAIG;IACH,QAAQ,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,KAAK,SAAS,GAAG,IAAI,GAAG,SAAS,CAAA;IACnE,qDAAqD;IACrD,aAAa,CAAC,EAAE,MAAM,CAAA;CACvB;AAUD;;;;;;;;;;;GAWG;AACH,qBAAa,OAAO;IAClB,OAAO,CAAC,MAAM,CAAK;IACnB,OAAO,CAAC,GAAG,CAAsB;IACjC,OAAO,CAAC,OAAO,CAAyB;IACxC,OAAO,CAAC,SAAS,CAAyB;IAC1C,OAAO,CAAC,YAAY,CAAC,CAAY;IACjC,OAAO,CAAC,YAAY,CAAI;IACxB,OAAO,CAAC,QAAQ,CAGG;gBAEP,KAAK,EAAE,GAAG;IAItB,IAAI,UAAU,IAAI,MAAM,GAAG,IAAI,CAE9B;IAED;;;OAGG;IACH,KAAK,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,IAAI;IA6BjD;;OAEG;IACH,IAAI,IAAI,IAAI;IAcZ,OAAO,IAAI,IAAI;IAIf,qCAAqC;IACrC,OAAO,CAAC,SAAS;IAoCjB,uGAAuG;IACvG,OAAO,CAAC,WAAW;IAMnB,OAAO,CAAC,YAAY;IAOpB,OAAO,CAAC,cAAc;IAOtB,OAAO,CAAC,YAAY;IAIpB,OAAO,CAAC,uBAAuB;IAM/B,OAAO,CAAC,gBAAgB;CAMzB"}
@@ -1,4 +1,4 @@
1
- export type { Vec3, Size3, Bounds3, SlotArrangement, GridShape, SlotDef, SlotAssignment, TransferOptions, StaticPolicy, DynamicPolicy, PendingPolicy, ConnectionPolicy, Port, TransferEventType, TransferEvent, CarrierAttachPoint, ArrangementStrategy, Transferable, NavigationTarget, NavigationOptions, Movable, ArticulatedCapability, MissionStatus, VehicleMission, MissionExecutor, SensorPoint, SpawnPoint, SinkPoint, QuatLike, PoseSerialized, PickupFrame, PickupRequester, Pickable, CarrierDims, PlacementContext, SeatingPose } from './types.js';
1
+ export type { Vec3, Size3, Bounds3, SlotArrangement, GridShape, SlotDef, SlotAssignment, TransferOptions, StaticPolicy, DynamicPolicy, PendingPolicy, ConnectionPolicy, Port, TransferEventType, TransferEvent, CarrierAttachPoint, SeatAttachPoint, ArrangementStrategy, Transferable, NavigationTarget, NavigationOptions, Movable, ArticulatedCapability, MissionStatus, VehicleMission, MissionExecutor, SensorPoint, SpawnPoint, SinkPoint, QuatLike, PoseSerialized, PickupFrame, PickupRequester, Pickable, CarrierDims, PlacementContext, SeatingPose } from './types.js';
2
2
  export { capability, registerCapabilityMeta, getCapabilityMeta, getAllCapabilityMeta } from '../types/capability.js';
3
3
  export type { CapabilityMeta, CapabilityDescription } from '../types/capability.js';
4
4
  export { quatFromYaw, rectangularFootprintFrames, topApproachFrame, filterByToolType, chooseNearestPickupFrame } from './pickup-helpers.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/transfer/index.ts"],"names":[],"mappings":"AAIA,YAAY,EACV,IAAI,EACJ,KAAK,EACL,OAAO,EACP,eAAe,EACf,SAAS,EACT,OAAO,EACP,cAAc,EACd,eAAe,EACf,YAAY,EACZ,aAAa,EACb,aAAa,EACb,gBAAgB,EAChB,IAAI,EACJ,iBAAiB,EACjB,aAAa,EACb,kBAAkB,EAClB,mBAAmB,EACnB,YAAY,EACZ,gBAAgB,EAChB,iBAAiB,EACjB,OAAO,EACP,qBAAqB,EACrB,aAAa,EACb,cAAc,EACd,eAAe,EACf,WAAW,EACX,UAAU,EACV,SAAS,EAET,QAAQ,EACR,cAAc,EACd,WAAW,EACX,eAAe,EACf,QAAQ,EAER,WAAW,EACX,gBAAgB,EAChB,WAAW,EACZ,MAAM,YAAY,CAAA;AAOnB,OAAO,EACL,UAAU,EACV,sBAAsB,EACtB,iBAAiB,EACjB,oBAAoB,EACrB,MAAM,wBAAwB,CAAA;AAC/B,YAAY,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAA;AAGnF,OAAO,EACL,WAAW,EACX,0BAA0B,EAC1B,gBAAgB,EAChB,gBAAgB,EAChB,wBAAwB,EACzB,MAAM,qBAAqB,CAAA;AAC5B,YAAY,EAAE,2BAA2B,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAA;AAE1F,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAA;AAC/E,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAA;AACpE,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAA;AAIzD,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAA;AAE5D,YAAY,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AAC5D,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAA;AAEtD,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AAI9C,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,eAAe,CAAA;AACpE,YAAY,EACV,aAAa,EACb,gBAAgB,EAChB,eAAe,EACf,mBAAmB,EACnB,gBAAgB,EAChB,cAAc,EACd,YAAY,EACZ,kBAAkB,EACnB,MAAM,eAAe,CAAA;AAGtB,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;AAC5C,YAAY,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAGhD,YAAY,EACV,WAAW,EACX,kBAAkB,EAClB,gBAAgB,EAChB,SAAS,EACV,MAAM,8BAA8B,CAAA;AAIrC,OAAO,EACL,gBAAgB,EAChB,gBAAgB,EAChB,mBAAmB,EACnB,QAAQ,EACR,aAAa,EACb,aAAa,EACb,kBAAkB,EACnB,MAAM,wBAAwB,CAAA;AAC/B,YAAY,EACV,YAAY,EACZ,IAAI,EACJ,YAAY,EACZ,YAAY,EACZ,UAAU,EACV,QAAQ,EACR,UAAU,EACV,WAAW,EACX,YAAY,EACZ,WAAW,EACX,QAAQ,EACR,eAAe,EACf,SAAS,EACT,aAAa,EACb,WAAW,EACX,gBAAgB,EAChB,SAAS,EACT,QAAQ,EACR,cAAc,EACd,OAAO,EACP,OAAO,EACP,oBAAoB,EACrB,MAAM,wBAAwB,CAAA;AAG/B,cAAc,0BAA0B,CAAA;AACxC,cAAc,8BAA8B,CAAA;AAI5C,cAAc,mBAAmB,CAAA;AACjC,cAAc,kBAAkB,CAAA;AAChC,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,kCAAkC,CAAA;AAItE,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,KAAK,MAAM,EAAE,KAAK,WAAW,EAAE,MAAM,8BAA8B,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/transfer/index.ts"],"names":[],"mappings":"AAIA,YAAY,EACV,IAAI,EACJ,KAAK,EACL,OAAO,EACP,eAAe,EACf,SAAS,EACT,OAAO,EACP,cAAc,EACd,eAAe,EACf,YAAY,EACZ,aAAa,EACb,aAAa,EACb,gBAAgB,EAChB,IAAI,EACJ,iBAAiB,EACjB,aAAa,EACb,kBAAkB,EAClB,eAAe,EACf,mBAAmB,EACnB,YAAY,EACZ,gBAAgB,EAChB,iBAAiB,EACjB,OAAO,EACP,qBAAqB,EACrB,aAAa,EACb,cAAc,EACd,eAAe,EACf,WAAW,EACX,UAAU,EACV,SAAS,EAET,QAAQ,EACR,cAAc,EACd,WAAW,EACX,eAAe,EACf,QAAQ,EAER,WAAW,EACX,gBAAgB,EAChB,WAAW,EACZ,MAAM,YAAY,CAAA;AAOnB,OAAO,EACL,UAAU,EACV,sBAAsB,EACtB,iBAAiB,EACjB,oBAAoB,EACrB,MAAM,wBAAwB,CAAA;AAC/B,YAAY,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAA;AAGnF,OAAO,EACL,WAAW,EACX,0BAA0B,EAC1B,gBAAgB,EAChB,gBAAgB,EAChB,wBAAwB,EACzB,MAAM,qBAAqB,CAAA;AAC5B,YAAY,EAAE,2BAA2B,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAA;AAE1F,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAA;AAC/E,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAA;AACpE,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAA;AAIzD,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAA;AAE5D,YAAY,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AAC5D,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAA;AAEtD,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AAI9C,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,eAAe,CAAA;AACpE,YAAY,EACV,aAAa,EACb,gBAAgB,EAChB,eAAe,EACf,mBAAmB,EACnB,gBAAgB,EAChB,cAAc,EACd,YAAY,EACZ,kBAAkB,EACnB,MAAM,eAAe,CAAA;AAGtB,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;AAC5C,YAAY,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAGhD,YAAY,EACV,WAAW,EACX,kBAAkB,EAClB,gBAAgB,EAChB,SAAS,EACV,MAAM,8BAA8B,CAAA;AAIrC,OAAO,EACL,gBAAgB,EAChB,gBAAgB,EAChB,mBAAmB,EACnB,QAAQ,EACR,aAAa,EACb,aAAa,EACb,kBAAkB,EACnB,MAAM,wBAAwB,CAAA;AAC/B,YAAY,EACV,YAAY,EACZ,IAAI,EACJ,YAAY,EACZ,YAAY,EACZ,UAAU,EACV,QAAQ,EACR,UAAU,EACV,WAAW,EACX,YAAY,EACZ,WAAW,EACX,QAAQ,EACR,eAAe,EACf,SAAS,EACT,aAAa,EACb,WAAW,EACX,gBAAgB,EAChB,SAAS,EACT,QAAQ,EACR,cAAc,EACd,OAAO,EACP,OAAO,EACP,oBAAoB,EACrB,MAAM,wBAAwB,CAAA;AAG/B,cAAc,0BAA0B,CAAA;AACxC,cAAc,8BAA8B,CAAA;AAI5C,cAAc,mBAAmB,CAAA;AACjC,cAAc,kBAAkB,CAAA;AAChC,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,kCAAkC,CAAA;AAItE,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,KAAK,MAAM,EAAE,KAAK,WAAW,EAAE,MAAM,8BAA8B,CAAA"}