@hatiolab/things-scene 2.7.34 → 2.8.0

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/things-scene.d.ts CHANGED
@@ -49,6 +49,17 @@ declare module '@hatiolab/things-scene' {
49
49
  help?: string
50
50
  }
51
51
 
52
+ type ReferenceProvider = {
53
+ get ids(): string[]
54
+ add(id: string, target?: any): Promise<{ release: () => void }>
55
+ get(id: string, createIf?: boolean): Promise<{ release: () => void }>
56
+ }
57
+
58
+ type DataSubscriptionProvider = {
59
+ subscribe(tag: string, component: Component): Promise<{ unsubscribe: () => void }>
60
+ dispose(): void
61
+ }
62
+
52
63
  interface LAYOUT {
53
64
  reflow: (container: Container) => void
54
65
  capturables?: (container: Container) => Component[]
@@ -102,6 +113,7 @@ declare module '@hatiolab/things-scene' {
102
113
  handlers,
103
114
  mode,
104
115
  refProvider,
116
+ dataSubscriptionProvider,
105
117
  baseUrl,
106
118
  fitMode
107
119
  }: {
@@ -111,7 +123,8 @@ declare module '@hatiolab/things-scene' {
111
123
  layers?: Array<any>
112
124
  handlers?: Array<any>
113
125
  mode?: SCENE_MODE
114
- refProvider?: any
126
+ refProvider?: ReferenceProvider
127
+ dataSubscriptionProvider?: DataSubscriptionProvider
115
128
  baseUrl?: string | undefined
116
129
  fitMode?: FITMODE
117
130
  }): Scene
@@ -138,7 +151,8 @@ declare module '@hatiolab/things-scene' {
138
151
  }
139
152
 
140
153
  class ApplicationContext {
141
- readonly refProvider: any
154
+ readonly refProvider: ReferenceProvider
155
+ readonly dataSubscriptionProvider: DataSubscriptionProvider
142
156
  readonly isViewMode: boolean
143
157
  readonly isEditMode: boolean
144
158
 
@@ -209,6 +223,7 @@ declare module '@hatiolab/things-scene' {
209
223
  component: Component,
210
224
  customObjToVal?: (obj: any) => any
211
225
  ): () => string | undefined
226
+ static reposition(component: Component): void
212
227
 
213
228
  state: Properties
214
229
  bounds: BOUNDS
@@ -216,7 +231,7 @@ declare module '@hatiolab/things-scene' {
216
231
  root: RootContainer
217
232
  rootModel: ModelLayer
218
233
  parent: Container
219
- app: ApplicationContext /* application context */
234
+ app: ApplicationContext
220
235
  model: Model
221
236
  hierarchy: Model
222
237
  path: Array<DIMENSION>
@@ -225,6 +240,8 @@ declare module '@hatiolab/things-scene' {
225
240
 
226
241
  get nature(): ComponentNature
227
242
 
243
+ get font(): string
244
+
228
245
  get data(): any
229
246
  set data(data: any)
230
247
 
@@ -236,12 +253,14 @@ declare module '@hatiolab/things-scene' {
236
253
 
237
254
  get controls(): Array<Control> | undefined
238
255
  get hasTextProperty(): boolean
256
+ get textSubstitutor(): () => string
239
257
 
240
258
  isRootModel(): boolean
241
259
  isContainer(): boolean
242
260
  isLine(): boolean
243
261
  isLayer(): boolean
244
262
  is3dish(): boolean
263
+ isHTMLElement(): boolean
245
264
 
246
265
  ready(): void
247
266
  dispose(): void
@@ -263,8 +282,8 @@ declare module '@hatiolab/things-scene' {
263
282
  executeMappings(force?: boolean): void
264
283
  invalidate(): void
265
284
  animate(config: AnimationConfig): {
266
- start: Function /* start function */
267
- stop: Function /* stop function */
285
+ start: Function
286
+ stop: Function
268
287
  }
269
288
 
270
289
  access(expression: string): any