@bryntum/scheduler-vue-3-thin 7.2.4 → 7.3.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.
Files changed (80) hide show
  1. package/README.md +6 -6
  2. package/lib/chunks/{C7ZFK2B7.js → 5o-YjSb7.js} +16 -10
  3. package/lib/chunks/5o-YjSb7.js.map +1 -0
  4. package/lib/chunks/BXIuEgYD.js +265 -0
  5. package/lib/chunks/BXIuEgYD.js.map +1 -0
  6. package/lib/chunks/{BD-Hg3lY.js → DB0UHrA3.js} +17 -24
  7. package/lib/chunks/DB0UHrA3.js.map +1 -0
  8. package/lib/chunks/{DmQj0tBi.js → DP61St-u.js} +14 -6
  9. package/lib/chunks/DP61St-u.js.map +1 -0
  10. package/lib/chunks/{B0m0r-NV.js → DVFhf2Ma.js} +11 -11
  11. package/lib/chunks/DVFhf2Ma.js.map +1 -0
  12. package/lib/chunks/{DerP_qo7.js → DhhzgoYL.js} +16 -10
  13. package/lib/chunks/DhhzgoYL.js.map +1 -0
  14. package/lib/chunks/{BNGLBrCN.js → OJaN5ZWK.js} +6 -6
  15. package/lib/chunks/OJaN5ZWK.js.map +1 -0
  16. package/lib/chunks/{CP1Mm_Ak.js → R69sJLmF.js} +16 -17
  17. package/lib/chunks/R69sJLmF.js.map +1 -0
  18. package/lib/chunks/{mKqb8_2f.js → ZkU6CtWX.js} +6 -6
  19. package/lib/chunks/ZkU6CtWX.js.map +1 -0
  20. package/lib/chunks/{C0UqC4Uj.js → eUISgYXE.js} +9 -9
  21. package/lib/chunks/eUISgYXE.js.map +1 -0
  22. package/lib/chunks/{CsoS615B.js → kN-s_8Na.js} +6 -6
  23. package/lib/chunks/kN-s_8Na.js.map +1 -0
  24. package/lib/chunks/{C2PT-Ukt.js → t8aiH3XL.js} +13 -14
  25. package/lib/chunks/t8aiH3XL.js.map +1 -0
  26. package/lib/components/BryntumEventColorField.js +1 -1
  27. package/lib/components/BryntumProjectCombo.js +1 -1
  28. package/lib/components/BryntumResourceCombo.js +1 -1
  29. package/lib/components/BryntumResourceFilter.js +1 -1
  30. package/lib/components/BryntumScheduler.js +1 -1
  31. package/lib/components/BryntumSchedulerBase.js +1 -1
  32. package/lib/components/BryntumSchedulerDatePicker.js +1 -1
  33. package/lib/components/BryntumSchedulerProjectModel.js +1 -1
  34. package/lib/components/BryntumThemeCombo.js +57 -0
  35. package/lib/components/BryntumThemeCombo.js.map +1 -0
  36. package/lib/components/BryntumTimeZoomSlider.js +5 -0
  37. package/lib/components/BryntumTimeZoomSlider.js.map +1 -0
  38. package/lib/components/BryntumTimelineHistogram.js +1 -1
  39. package/lib/components/BryntumUndoRedo.js +1 -1
  40. package/lib/components/BryntumViewPresetCombo.js +1 -1
  41. package/lib/index.js +18 -16
  42. package/lib/index.js.map +1 -1
  43. package/package.json +1 -1
  44. package/src/components/BryntumEventColorField.vue +72 -116
  45. package/src/components/BryntumEventColorFieldProps.ts +68 -108
  46. package/src/components/BryntumProjectCombo.vue +90 -149
  47. package/src/components/BryntumProjectComboProps.ts +86 -141
  48. package/src/components/BryntumResourceCombo.vue +91 -151
  49. package/src/components/BryntumResourceComboProps.ts +87 -143
  50. package/src/components/BryntumResourceFilter.vue +63 -104
  51. package/src/components/BryntumResourceFilterProps.ts +60 -98
  52. package/src/components/BryntumScheduler.vue +426 -597
  53. package/src/components/BryntumSchedulerBase.vue +426 -597
  54. package/src/components/BryntumSchedulerBaseProps.ts +367 -522
  55. package/src/components/BryntumSchedulerDatePicker.vue +120 -196
  56. package/src/components/BryntumSchedulerDatePickerProps.ts +116 -187
  57. package/src/components/BryntumSchedulerProjectModel.vue +12 -31
  58. package/src/components/BryntumSchedulerProjectModelProps.ts +10 -20
  59. package/src/components/BryntumSchedulerProps.ts +367 -522
  60. package/src/components/BryntumThemeCombo.vue +60 -0
  61. package/src/components/BryntumTimeZoomSlider.vue +859 -0
  62. package/src/components/BryntumTimeZoomSliderProps.ts +482 -0
  63. package/src/components/BryntumTimelineHistogram.vue +322 -441
  64. package/src/components/BryntumTimelineHistogramProps.ts +275 -388
  65. package/src/components/BryntumUndoRedo.vue +78 -125
  66. package/src/components/BryntumUndoRedoProps.ts +74 -116
  67. package/src/components/BryntumViewPresetCombo.vue +67 -107
  68. package/src/components/BryntumViewPresetComboProps.ts +63 -99
  69. package/src/index.ts +2 -0
  70. package/lib/chunks/B0m0r-NV.js.map +0 -1
  71. package/lib/chunks/BD-Hg3lY.js.map +0 -1
  72. package/lib/chunks/BNGLBrCN.js.map +0 -1
  73. package/lib/chunks/C0UqC4Uj.js.map +0 -1
  74. package/lib/chunks/C2PT-Ukt.js.map +0 -1
  75. package/lib/chunks/C7ZFK2B7.js.map +0 -1
  76. package/lib/chunks/CP1Mm_Ak.js.map +0 -1
  77. package/lib/chunks/CsoS615B.js.map +0 -1
  78. package/lib/chunks/DerP_qo7.js.map +0 -1
  79. package/lib/chunks/DmQj0tBi.js.map +0 -1
  80. package/lib/chunks/mKqb8_2f.js.map +0 -1
@@ -0,0 +1,859 @@
1
+ <!-- Vue 3 wrapper for Bryntum TimeZoomSlider -->
2
+
3
+ <template>
4
+ <div ref="refElement">
5
+
6
+ </div>
7
+ </template>
8
+
9
+ <script setup lang="ts">
10
+
11
+ import { getCurrentInstance, onBeforeUnmount, onMounted, provide, ref, watch, toRaw } from 'vue';
12
+
13
+ import type { AlignSpec, Base, Color, DomConfig, KeyMapConfig, MaskConfig, ReactJSX, Rectangle, Scroller, ScrollerConfig, Slider, TabConfig, TooltipConfig, VueConfig, Widget } from '@bryntum/core-thin';
14
+ import type { TimeZoomSliderListeners, TimelineBase } from '@bryntum/scheduler-thin';
15
+ import { TimeZoomSlider } from '@bryntum/scheduler-thin';
16
+
17
+ import { WrapperHelper } from '../helper/WrapperHelper';
18
+
19
+ defineProps<{
20
+ // Configs
21
+ /**
22
+ * Element (or element id) to adopt as this Widget's encapsulating element. The widget's
23
+ * content will be placed inside this element.
24
+ * [More...](https://bryntum.com/products/scheduler/docs/api/Scheduler/widget/TimeZoomSlider#config-adopt)
25
+ */
26
+ adopt ? : HTMLElement|string
27
+ /**
28
+ * *Only valid if this Widget is [floating](https://bryntum.com/products/scheduler/docs/api/Core/widget/Widget#config-floating).*
29
+ * [More...](https://bryntum.com/products/scheduler/docs/api/Scheduler/widget/TimeZoomSlider#config-align)
30
+ */
31
+ align ? : AlignSpec|string
32
+ /**
33
+ * When this widget is a child of a [Container](https://bryntum.com/products/scheduler/docs/api/Core/widget/Container), it will by default be participating in a
34
+ * flexbox layout. This config allows you to set this widget's
35
+ * [align-self](https://developer.mozilla.org/en-US/docs/Web/CSS/align-self) style.
36
+ */
37
+ alignSelf ? : string
38
+ /**
39
+ * *Only valid if this Widget is [floating](https://bryntum.com/products/scheduler/docs/api/Core/widget/Widget#config-floating) and being shown through [showBy](#Core/widget/Widget#function-showBy).*
40
+ * `true` to show a connector arrow pointing to the align target.
41
+ */
42
+ anchor ? : Boolean
43
+ /**
44
+ * Element (or the id of an element) to append this widget's element to. Can be configured, or set once at
45
+ * runtime. To access the element of a rendered widget, see [element](https://bryntum.com/products/scheduler/docs/api/Core/widget/Widget#property-element).
46
+ */
47
+ appendTo ? : HTMLElement|string
48
+ /**
49
+ * A localizable string (May contain `'L{}'` tokens which resolve in the locale file) to inject
50
+ * into an element which will be linked using the `aria-describedby` attribute.
51
+ * [More...](https://bryntum.com/products/scheduler/docs/api/Scheduler/widget/TimeZoomSlider#config-ariaDescription)
52
+ */
53
+ ariaDescription ? : string
54
+ /**
55
+ * A localizable string (May contain `'L{}'` tokens which resolve in the locale file) to inject as
56
+ * the `aria-label` attribute.
57
+ * [More...](https://bryntum.com/products/scheduler/docs/api/Scheduler/widget/TimeZoomSlider#config-ariaLabel)
58
+ */
59
+ ariaLabel ? : string
60
+ /**
61
+ * An object where property names with a truthy value indicate which events should bubble up the ownership
62
+ * hierarchy when triggered.
63
+ * [More...](https://bryntum.com/products/scheduler/docs/api/Scheduler/widget/TimeZoomSlider#config-bubbleEvents)
64
+ */
65
+ bubbleEvents ? : object
66
+ /**
67
+ * Set to `false` to not call onXXX method names (e.g. `onShow`, `onClick`), as an easy way to listen for events.
68
+ * [More...](https://bryntum.com/products/scheduler/docs/api/Scheduler/widget/TimeZoomSlider#config-callOnFunctions)
69
+ */
70
+ callOnFunctions ? : Boolean
71
+ /**
72
+ * By default, if an event handler throws an exception, the error propagates up the stack and the
73
+ * application state is undefined. Code which follows the event handler will *not* be executed.
74
+ * [More...](https://bryntum.com/products/scheduler/docs/api/Scheduler/widget/TimeZoomSlider#config-catchEventHandlerExceptions)
75
+ */
76
+ catchEventHandlerExceptions ? : Boolean
77
+ /**
78
+ * *Only valid if this Widget is [floating](https://bryntum.com/products/scheduler/docs/api/Core/widget/Widget#config-floating).*
79
+ * Set to `true` to centre the Widget in browser viewport space.
80
+ */
81
+ centered ? : Boolean
82
+ /**
83
+ * The Scheduler, SchedulerPro or Gantt component instance to connect to. If not provided, the widget
84
+ * will attempt to find a timeline component by traversing up the widget hierarchy or querying for one.
85
+ */
86
+ client ? : TimelineBase
87
+ /**
88
+ * Custom CSS classes to add to element.
89
+ * May be specified as a space separated string, or as an object in which property names
90
+ * with truthy values are used as the class names:
91
+ * [More...](https://bryntum.com/products/scheduler/docs/api/Scheduler/widget/TimeZoomSlider#config-cls)
92
+ */
93
+ cls ? : string|object
94
+ /**
95
+ * Applies the specified color to the widget, by setting the `--b-primary` CSS variable in the widgets
96
+ * `style` block.
97
+ * [More...](https://bryntum.com/products/scheduler/docs/api/Scheduler/widget/TimeZoomSlider#config-color)
98
+ */
99
+ color ? : Color
100
+ /**
101
+ * Programmatic control over which column to start in when used in a grid layout.
102
+ */
103
+ column ? : number
104
+ config ? : object
105
+ /**
106
+ * *Only valid if this Widget is [floating](https://bryntum.com/products/scheduler/docs/api/Core/widget/Widget#config-floating) or [positioned](#Core/widget/Widget#config-positioned).*
107
+ * Element, Widget or Rectangle to which this Widget is constrained.
108
+ */
109
+ constrainTo ? : HTMLElement|Widget|Rectangle
110
+ /**
111
+ * The HTML content that coexists with sibling elements which may have been added to the
112
+ * [contentElement](https://bryntum.com/products/scheduler/docs/api/Core/widget/Widget#property-contentElement) by plugins and features.
113
+ * When specifying html, this widget's element will also have the [htmlCls](https://bryntum.com/products/scheduler/docs/api/Core/widget/Widget#config-htmlCls)
114
+ * class added to its classList, to allow targeted styling.
115
+ */
116
+ content ? : string
117
+ /**
118
+ * Custom CSS classes to add to the [contentElement](https://bryntum.com/products/scheduler/docs/api/Core/widget/Widget#property-contentElement).
119
+ * May be specified as a space separated string, or as an object in which property names
120
+ * with truthy values are used as the class names:
121
+ * [More...](https://bryntum.com/products/scheduler/docs/api/Scheduler/widget/TimeZoomSlider#config-contentElementCls)
122
+ */
123
+ contentElementCls ? : string|object
124
+ /**
125
+ * When this Widget configuration is used in the Grid's RowExpander feature's `widget` config, provide the
126
+ * field on the expanded record to use for populating this widget's store (if applicable)
127
+ */
128
+ dataField ? : string
129
+ /**
130
+ * Object to apply to elements dataset (each key will be used as a data-attribute on the element)
131
+ */
132
+ dataset ? : Record<string, string>
133
+ /**
134
+ * The name of the property to set when a single value is to be applied to this Widget. Such as when used
135
+ * in a grid WidgetColumn, this is the property to which the column's `field` is applied.
136
+ */
137
+ defaultBindProperty ? : string
138
+ /**
139
+ * Check for CSS compatibility and inclusion related issues and try to auto fix them. Performs the following
140
+ * checks:
141
+ * [More...](https://bryntum.com/products/scheduler/docs/api/Scheduler/widget/TimeZoomSlider#config-detectCSSCompatibilityIssues)
142
+ */
143
+ detectCSSCompatibilityIssues ? : Boolean
144
+ /**
145
+ * Disable or enable the widget. It is similar to [readOnly](https://bryntum.com/products/scheduler/docs/api/Core/widget/Widget#config-readOnly) except a disabled widget
146
+ * cannot be focused, uses a different rendition (usually greyish) and does not allow selecting its value.
147
+ * [More...](https://bryntum.com/products/scheduler/docs/api/Scheduler/widget/TimeZoomSlider#config-disabled)
148
+ */
149
+ disabled ? : Boolean|'inert'
150
+ /**
151
+ * Controls the placement of this widget when it is added to a [panel's ](https://bryntum.com/products/scheduler/docs/api/Core/widget/Panel)
152
+ * [strips collection](https://bryntum.com/products/scheduler/docs/api/Core/widget/Panel#config-strips). Typical values for this config are `'top'`,
153
+ * `'bottom'`, `'left'`, or `'right'`, which cause the widget to be placed on that side of the panel's
154
+ * body. Such widgets are called "edge strips".
155
+ * [More...](https://bryntum.com/products/scheduler/docs/api/Scheduler/widget/TimeZoomSlider#config-dock)
156
+ */
157
+ dock ? : 'top'|'bottom'|'left'|'right'|'start'|'end'|'header'|'pre-header'|object
158
+ /**
159
+ * *Only valid if this Widget is [floating](https://bryntum.com/products/scheduler/docs/api/Core/widget/Widget#config-floating).*
160
+ * Set to `true` to be able to drag a widget freely on the page. Or set to an object with a ´handleSelector´
161
+ * property which controls when a drag should start.
162
+ * [More...](https://bryntum.com/products/scheduler/docs/api/Scheduler/widget/TimeZoomSlider#config-draggable)
163
+ * @property {string} handleSelector CSS selector used to determine if drag can be started from a mouse-downed element inside the widget
164
+ */
165
+ draggable ? : Boolean|object
166
+ /**
167
+ * An object specifying attributes to assign to the root element of this widget.
168
+ * Set `null` value to attribute to remove it.
169
+ * [More...](https://bryntum.com/products/scheduler/docs/api/Scheduler/widget/TimeZoomSlider#config-elementAttributes)
170
+ */
171
+ elementAttributes ? : Record<string, string|null>
172
+ extraData ? : any
173
+ /**
174
+ * When this widget is a child of a [Container](https://bryntum.com/products/scheduler/docs/api/Core/widget/Container), it will by default be participating in a
175
+ * flexbox layout. This config allows you to set this widget's
176
+ * [flex](https://developer.mozilla.org/en-US/docs/Web/CSS/flex) style.
177
+ * This may be configured as a single number or a `&lt;flex-grow&gt; &lt;flex-shrink&gt; &lt;flex-basis&gt;` format string.
178
+ * numeric-only values are interpreted as the `flex-grow` value.
179
+ */
180
+ flex ? : number|string
181
+ /**
182
+ * Set to `true` to move the widget out of the document flow and position it
183
+ * absolutely in browser viewport space.
184
+ */
185
+ floating ? : Boolean
186
+ /**
187
+ * Widget's height, used to set element `style.height`. Either specify a valid height string or a number,
188
+ * which will get 'px' appended. We recommend using CSS as the primary way to control height, but in some
189
+ * cases this config is convenient.
190
+ */
191
+ height ? : string|number
192
+ /**
193
+ * Configure with true to make widget initially hidden.
194
+ */
195
+ hidden ? : Boolean
196
+ /**
197
+ * *Only valid if this Widget is [floating](https://bryntum.com/products/scheduler/docs/api/Core/widget/Widget#config-floating).*
198
+ * [More...](https://bryntum.com/products/scheduler/docs/api/Scheduler/widget/TimeZoomSlider#config-hideAnimation)
199
+ */
200
+ hideAnimation ? : Boolean|object
201
+ /**
202
+ * The HTML to display initially or a function returning the markup (called at widget construction time).
203
+ * [More...](https://bryntum.com/products/scheduler/docs/api/Scheduler/widget/TimeZoomSlider#config-html)
204
+ * @param {Core.widget.Widget} widget The calling Widget
205
+ */
206
+ html ? : string|((widget: Widget) => void)|DomConfig|DomConfig[]|VueConfig|ReactJSX
207
+ /**
208
+ * The CSS class(es) to add when HTML content is being applied to this widget.
209
+ */
210
+ htmlCls ? : string|object
211
+ /**
212
+ * Widget id, if not specified one will be generated. Also used for lookups through Widget.getById
213
+ */
214
+ id ? : string
215
+ /**
216
+ * Determines if the widgets read-only state should be controlled by its parent.
217
+ * [More...](https://bryntum.com/products/scheduler/docs/api/Scheduler/widget/TimeZoomSlider#config-ignoreParentReadOnly)
218
+ */
219
+ ignoreParentReadOnly ? : Boolean
220
+ /**
221
+ * Element (or element id) to insert this widget before. If provided, [appendTo](https://bryntum.com/products/scheduler/docs/api/Core/widget/Widget#config-appendTo) config is ignored.
222
+ */
223
+ insertBefore ? : HTMLElement|string
224
+ /**
225
+ * Element (or element id) to append this widget element to, as a first child. If provided, [appendTo](https://bryntum.com/products/scheduler/docs/api/Core/widget/Widget#config-appendTo) config is ignored.
226
+ */
227
+ insertFirst ? : HTMLElement|string
228
+ /**
229
+ * An object whose keys are the [key](https://developer.mozilla.org/en-US/docs/Web/API/KeyboardEvent/key) name
230
+ * and optional modifier prefixes: `'Ctrl+'`, `'Alt+'`, `'Meta+'`, and `'Shift+'` (case-insensitive). The values
231
+ * are the name of the instance method to call when the keystroke is received.
232
+ * [More...](https://bryntum.com/products/scheduler/docs/api/Scheduler/widget/TimeZoomSlider#config-keyMap)
233
+ */
234
+ keyMap ? : Record<string, KeyMapConfig>
235
+ /**
236
+ * Label, prepended to field
237
+ */
238
+ label ? : string
239
+ /**
240
+ * CSS class name or class names to add to any configured [label](https://bryntum.com/products/scheduler/docs/api/Core/widget/mixin/Labelable#config-label)
241
+ */
242
+ labelCls ? : string|object
243
+ /**
244
+ * Label position, either 'before' the field or 'above' the field
245
+ * [More...](https://bryntum.com/products/scheduler/docs/api/Scheduler/widget/TimeZoomSlider#config-labelPosition)
246
+ */
247
+ labelPosition ? : 'before'|'above'|null
248
+ /**
249
+ * The width to apply to the `&lt;label&gt;` element. If a number is specified, `px` will be used.
250
+ */
251
+ labelWidth ? : string|number
252
+ /**
253
+ * The listener set for this object.
254
+ * [More...](https://bryntum.com/products/scheduler/docs/api/Scheduler/widget/TimeZoomSlider#config-listeners)
255
+ */
256
+ listeners ? : TimeZoomSliderListeners
257
+ /**
258
+ * A class translations of which are used for translating this entity.
259
+ * This is often used when translations of an item are defined on its container class.
260
+ * For example:
261
+ * [More...](https://bryntum.com/products/scheduler/docs/api/Scheduler/widget/TimeZoomSlider#config-localeClass)
262
+ */
263
+ localeClass ? : typeof Base
264
+ /**
265
+ * Set to `false` to disable localization of this object.
266
+ */
267
+ localizable ? : Boolean
268
+ /**
269
+ * List of properties which values should be translated automatically upon a locale applying.
270
+ * In case there is a need to localize not typical value (not a String value or a field with re-defined setter/getter),
271
+ * you could use 'localeKey' meta configuration.
272
+ * Example:
273
+ * [More...](https://bryntum.com/products/scheduler/docs/api/Scheduler/widget/TimeZoomSlider#config-localizableProperties)
274
+ */
275
+ localizableProperties ? : string[]
276
+ /**
277
+ * Widget's margin. This may be configured as a single number or a `TRBL` format string.
278
+ * numeric-only values are interpreted as pixels.
279
+ */
280
+ margin ? : number|string
281
+ /**
282
+ * This config object contains the defaults for the [Mask](https://bryntum.com/products/scheduler/docs/api/Core/widget/Mask) created for the
283
+ * [masked](https://bryntum.com/products/scheduler/docs/api/Core/widget/Widget#config-masked) config. Any properties specified in the `masked` config will override these
284
+ * values.
285
+ */
286
+ maskDefaults ? : MaskConfig
287
+ /**
288
+ * Set to `true` to apply the default mask to the widget. Alternatively, this can be the mask message or a
289
+ * [Mask](https://bryntum.com/products/scheduler/docs/api/Core/widget/Mask) config object.
290
+ */
291
+ masked ? : Boolean|string|MaskConfig
292
+ /**
293
+ * The maximum zoom level. If not specified, uses the scheduler's
294
+ * [maxSmoothZoomLevel](https://bryntum.com/products/scheduler/docs/api/Scheduler/view/Scheduler#property-maxSmoothZoomLevel).
295
+ */
296
+ max ? : number
297
+ /**
298
+ * The element's maxHeight. Can be either a String or a Number (which will have 'px' appended). Note that
299
+ * like [height](https://bryntum.com/products/scheduler/docs/api/Core/widget/Widget#config-height), *reading* the value will return the numeric value in pixels.
300
+ */
301
+ maxHeight ? : string|number
302
+ /**
303
+ * *Only valid if this Widget is [floating](https://bryntum.com/products/scheduler/docs/api/Core/widget/Widget#config-floating).*
304
+ * [More...](https://bryntum.com/products/scheduler/docs/api/Scheduler/widget/TimeZoomSlider#config-maximizeOnMobile)
305
+ */
306
+ maximizeOnMobile ? : number|string
307
+ /**
308
+ * The elements maxWidth. Can be either a String or a Number (which will have 'px' appended). Note that
309
+ * like [width](https://bryntum.com/products/scheduler/docs/api/Core/widget/Widget#config-width), *reading* the value will return the numeric value in pixels.
310
+ */
311
+ maxWidth ? : string|number
312
+ /**
313
+ * The minimum zoom level. If not specified, uses the scheduler's
314
+ * [minSmoothZoomLevel](https://bryntum.com/products/scheduler/docs/api/Scheduler/view/Scheduler#property-minSmoothZoomLevel).
315
+ */
316
+ min ? : number
317
+ /**
318
+ * The element's minHeight. Can be either a String or a Number (which will have 'px' appended). Note that
319
+ * like [height](https://bryntum.com/products/scheduler/docs/api/Core/widget/Widget#config-height), *reading* the value will return the numeric value in pixels.
320
+ */
321
+ minHeight ? : string|number
322
+ /**
323
+ * The elements minWidth. Can be either a String or a Number (which will have 'px' appended). Note that
324
+ * like [width](https://bryntum.com/products/scheduler/docs/api/Core/widget/Widget#config-width), *reading* the value will return the numeric value in pixels.
325
+ */
326
+ minWidth ? : string|number
327
+ /**
328
+ * When this is configured as `true` a [ResizeObserver](https://developer.mozilla.org/en-US/docs/Web/API/ResizeObserver)
329
+ * is used to monitor this element for size changes caused by either style manipulation, or by CSS
330
+ * layout.
331
+ * [More...](https://bryntum.com/products/scheduler/docs/api/Scheduler/widget/TimeZoomSlider#config-monitorResize)
332
+ * @property {boolean} immediate Set to `true` to receive resize notifications immediately.
333
+ */
334
+ monitorResize ? : Boolean|object
335
+ /**
336
+ * Set to `true` when a widget is rendered into another widget's [contentElement](https://bryntum.com/products/scheduler/docs/api/Core/widget/Widget#property-contentElement), but must
337
+ * not participate in the standard layout of that widget, and must be positioned relatively to that
338
+ * widget's [contentElement](https://bryntum.com/products/scheduler/docs/api/Core/widget/Widget#property-contentElement).
339
+ * [More...](https://bryntum.com/products/scheduler/docs/api/Scheduler/widget/TimeZoomSlider#config-positioned)
340
+ */
341
+ positioned ? : Boolean
342
+ /**
343
+ * Prevent tooltip from being displayed on touch devices. Useful for example for buttons that display a
344
+ * menu on click etc, since the tooltip would be displayed at the same time.
345
+ */
346
+ preventTooltipOnTouch ? : Boolean
347
+ /**
348
+ * Whether this widget is read-only. This is only valid if the widget is an input
349
+ * field, <strong>or contains input fields at any depth</strong>.
350
+ * [More...](https://bryntum.com/products/scheduler/docs/api/Scheduler/widget/TimeZoomSlider#config-readOnly)
351
+ */
352
+ readOnly ? : Boolean
353
+ relayStoreEvents ? : Boolean
354
+ /**
355
+ * Configure as `true` to have the component display a translucent ripple when its
356
+ * [focusElement](https://bryntum.com/products/scheduler/docs/api/Core/widget/Widget#property-focusElement), or [element](#Core/widget/Widget#property-element) is tapped <em>if the
357
+ * current theme supports ripples</em>. Out of the box, only the Material theme supports ripples.
358
+ * [More...](https://bryntum.com/products/scheduler/docs/api/Scheduler/widget/TimeZoomSlider#config-ripple)
359
+ * @property {string} [delegate] A CSS selector to filter which child elements trigger ripples. By default, the ripple is clipped to the triggering element.
360
+ * @property {string} [color] A CSS color name or specification.
361
+ * @property {number} [radius] The ending radius of the ripple. Note that it will be clipped by the target element by default.
362
+ * @property {string} [clip] A string which describes how to clip the ripple if it is not to be clipped to the default element. Either the property of the widget to use as the clipping element, or a selector to allow clipping to the closest matching ancestor to the target element.
363
+ */
364
+ ripple ? : Boolean|object
365
+ /**
366
+ * The ARIA role to apply to this widget's element. By default, this is set to `'presentation'` to avoid
367
+ * accidentally applying a role which may interfere with screen readers.
368
+ * [More...](https://bryntum.com/products/scheduler/docs/api/Scheduler/widget/TimeZoomSlider#config-role)
369
+ */
370
+ role ? : string
371
+ /**
372
+ * If you are rendering this widget to a shadow root inside a web component, set this config to the shadowRoot. If not inside a web component, set it to `document.body`
373
+ */
374
+ rootElement ? : ShadowRoot|HTMLElement
375
+ /**
376
+ * This may be configured as `true` to make the widget's element use the `direction:rtl` style.
377
+ * [More...](https://bryntum.com/products/scheduler/docs/api/Scheduler/widget/TimeZoomSlider#config-rtl)
378
+ */
379
+ rtl ? : Boolean
380
+ /**
381
+ * Specifies whether (and optionally in which axes) a Widget may scroll. `true` means this widget may scroll
382
+ * in both axes. May be an object containing boolean `overflowX` and `overflowY` properties which are
383
+ * applied to CSS style properties `overflowX` and `overflowY`. If they are boolean, they are translated to
384
+ * CSS overflow properties thus:
385
+ * [More...](https://bryntum.com/products/scheduler/docs/api/Scheduler/widget/TimeZoomSlider#config-scrollable)
386
+ */
387
+ scrollable ? : Boolean|ScrollerConfig|Scroller
388
+ /**
389
+ * Defines what to do if document is scrolled while Widget is visible (only relevant when floating is set to `true`).
390
+ * Valid values: ´null´: do nothing, ´hide´: hide the widget or ´realign´: realign to the target if possible.
391
+ */
392
+ scrollAction ? : 'hide'|'realign'|null
393
+ /**
394
+ * *Only valid if this Widget is [floating](https://bryntum.com/products/scheduler/docs/api/Core/widget/Widget#config-floating).*
395
+ * [More...](https://bryntum.com/products/scheduler/docs/api/Scheduler/widget/TimeZoomSlider#config-showAnimation)
396
+ */
397
+ showAnimation ? : Boolean|object
398
+ /**
399
+ * Show the step markers
400
+ */
401
+ showSteps ? : Boolean
402
+ /**
403
+ * Whether to show tooltip while dragging.
404
+ */
405
+ showTooltip ? : Boolean
406
+ /**
407
+ * Set to `false` to not show the tooltip when this widget is [disabled](https://bryntum.com/products/scheduler/docs/api/Core/widget/Widget#property-disabled)
408
+ */
409
+ showTooltipWhenDisabled ? : Boolean
410
+ /**
411
+ * Whether to show the current value in a tooltip or label.
412
+ */
413
+ showValue ? : Boolean
414
+ /**
415
+ * Programmatic control over how many columns to span when used in a grid layout.
416
+ */
417
+ span ? : number
418
+ /**
419
+ * A configuration for the [tab](https://bryntum.com/products/scheduler/docs/api/Core/widget/Tab) created for this widget when it is placed in a
420
+ * [TabPanel](https://bryntum.com/products/scheduler/docs/api/Core/widget/TabPanel). For example, this config can be used to control the icon of the `tab` for
421
+ * this widget:
422
+ * [More...](https://bryntum.com/products/scheduler/docs/api/Scheduler/widget/TimeZoomSlider#config-tab)
423
+ */
424
+ tab ? : Boolean|TabConfig
425
+ /**
426
+ * The tag name of this Widget's root element
427
+ */
428
+ tag ? : string
429
+ /**
430
+ * Text alignment: 'left', 'center' or 'right'. Also accepts direction neutral 'start' and 'end'.
431
+ * [More...](https://bryntum.com/products/scheduler/docs/api/Scheduler/widget/TimeZoomSlider#config-textAlign)
432
+ */
433
+ textAlign ? : 'left'|'center'|'right'|'start'|'end'
434
+ /**
435
+ * The icon to use for the slider thumb.
436
+ */
437
+ thumbIcon ? : string
438
+ /**
439
+ * A title to display for the widget. Only in effect when inside a container that uses it (such as TabPanel)
440
+ */
441
+ title ? : string
442
+ /**
443
+ * A config object for the tooltip to show while hovering the slider.
444
+ */
445
+ tooltip ? : TooltipConfig
446
+ /**
447
+ * By default, the [change](https://bryntum.com/products/scheduler/docs/api/Core/widget/Slider#event-change) event is fired when a change gesture is completed, ie: on
448
+ * the mouse up gesture of a drag.
449
+ * [More...](https://bryntum.com/products/scheduler/docs/api/Scheduler/widget/TimeZoomSlider#config-triggerChangeOnInput)
450
+ */
451
+ triggerChangeOnInput ? : Boolean
452
+ type ? : 'timezoomslider'
453
+ /**
454
+ * Custom CSS class name suffixes to apply to the elements rendered by this widget. This may be specified
455
+ * as a space separated string, an array of strings, or as an object in which property names with truthy
456
+ * values are used as the class names.
457
+ * [More...](https://bryntum.com/products/scheduler/docs/api/Scheduler/widget/TimeZoomSlider#config-ui)
458
+ */
459
+ ui ? : string|object
460
+ /**
461
+ * Unit to display next to the value, when configured with `showValue : true`
462
+ */
463
+ unit ? : string
464
+ /**
465
+ * Initial value.
466
+ * `String` value allows linking value by reference name.
467
+ * [More...](https://bryntum.com/products/scheduler/docs/api/Scheduler/widget/TimeZoomSlider#config-value)
468
+ */
469
+ value ? : number|string
470
+ /**
471
+ * Width of the value label when `showValue` is enabled. If a number is specified, `px` will be used.
472
+ * [More...](https://bryntum.com/products/scheduler/docs/api/Scheduler/widget/TimeZoomSlider#config-valueLabelWidth)
473
+ */
474
+ valueLabelWidth ? : string|number
475
+ /**
476
+ * A widgets weight determines its position among siblings when added to a [Container](https://bryntum.com/products/scheduler/docs/api/Core/widget/Container).
477
+ * Higher weights go further down.
478
+ */
479
+ weight ? : number
480
+ /**
481
+ * Widget's width, used to set element `style.width`. Either specify a valid width string or a number, which
482
+ * will get 'px' appended. We recommend using CSS as the primary way to control width, but in some cases
483
+ * this config is convenient.
484
+ */
485
+ width ? : string|number
486
+ /**
487
+ * The x position for the widget.
488
+ * [More...](https://bryntum.com/products/scheduler/docs/api/Scheduler/widget/TimeZoomSlider#config-x)
489
+ */
490
+ x ? : number
491
+ /**
492
+ * The y position for the widget.
493
+ * [More...](https://bryntum.com/products/scheduler/docs/api/Scheduler/widget/TimeZoomSlider#config-y)
494
+ */
495
+ y ? : number
496
+
497
+ }>();
498
+
499
+ const emit = defineEmits<{
500
+ /**
501
+ * Fires before an object is destroyed.
502
+ * @param {string} e Event name
503
+ * @param {object} params Event parameters
504
+ * @param {string} params.e Event name
505
+ * @param {object} params.params Event parameters
506
+ * @param {object} params.params.event Event object
507
+ * @param {Core.Base} params.params.event.source The Object that is being destroyed.
508
+ */
509
+ (e: 'beforeDestroy', params: ((event: { source: Base }) => void)|string): void
510
+ /**
511
+ * Triggered before a widget is hidden. Return `false` to prevent the action.
512
+ * @param {string} e Event name
513
+ * @param {object} params Event parameters
514
+ * @param {string} params.e Event name
515
+ * @param {object} params.params Event parameters
516
+ * @param {object} params.params.event Event object
517
+ * @param {Core.widget.Widget} params.params.event.source The widget being hidden.
518
+ */
519
+ (e: 'beforeHide', params: ((event: { source: Widget }) => Promise<boolean>|boolean|void)|string): Promise<boolean>|boolean|void
520
+ /**
521
+ * Triggered before a widget is shown. Return `false` to prevent the action.
522
+ * @param {string} e Event name
523
+ * @param {object} params Event parameters
524
+ * @param {string} params.e Event name
525
+ * @param {object} params.params Event parameters
526
+ * @param {object} params.params.event Event object
527
+ * @param {Core.widget.Widget,any} params.params.event.source The widget being shown
528
+ */
529
+ (e: 'beforeShow', params: ((event: { source: Widget|any }) => Promise<boolean>|boolean|void)|string): Promise<boolean>|boolean|void
530
+ /**
531
+ * Fires when any other event is fired from the object.
532
+ * [More...](https://bryntum.com/products/scheduler/docs/api/Scheduler/widget/TimeZoomSlider#event-catchAll)
533
+ * @param {string} e Event name
534
+ * @param {object} params Event parameters
535
+ * @param {string} params.e Event name
536
+ * @param {object} params.params Event parameters
537
+ * @param {object} params.params.event Event object
538
+ * @param {{[key: string]: any, type: string}} params.params.event.event The Object that contains event details
539
+ * @param {string} params.params.event.event.type The type of the event which is caught by the listener
540
+ */
541
+ (e: 'catchAll', params: ((event: {[key: string]: any, type: string}) => void)|string): void
542
+ /**
543
+ * Fired after the slider value changes (on mouse up following slider interaction).
544
+ * @param {string} e Event name
545
+ * @param {object} params Event parameters
546
+ * @param {string} params.e Event name
547
+ * @param {object} params.params Event parameters
548
+ * @param {object} params.params.event Event object
549
+ * @param {number} params.params.event.value The value
550
+ * @param {boolean} params.params.event.userAction Triggered by user taking an action (`true`) or by setting a value (`false`)
551
+ * @param {Core.widget.Slider} params.params.event.source The slider
552
+ */
553
+ (e: 'change', params: ((event: { value: number, userAction: boolean, source: Slider }) => void)|string): void
554
+ /**
555
+ * Fires when an object is destroyed.
556
+ * @param {string} e Event name
557
+ * @param {object} params Event parameters
558
+ * @param {string} params.e Event name
559
+ * @param {object} params.params Event parameters
560
+ * @param {object} params.params.event Event object
561
+ * @param {Core.Base} params.params.event.source The Object that is being destroyed.
562
+ */
563
+ (e: 'destroy', params: ((event: { source: Base }) => void)|string): void
564
+ /**
565
+ * Triggered when a widget's [element](https://bryntum.com/products/scheduler/docs/api/Core/widget/Widget#property-element) is available.
566
+ * @param {string} e Event name
567
+ * @param {object} params Event parameters
568
+ * @param {string} params.e Event name
569
+ * @param {object} params.params Event parameters
570
+ * @param {object} params.params.event Event object
571
+ * @param {HTMLElement} params.params.event.element The Widget's element.
572
+ */
573
+ (e: 'elementCreated', params: ((event: { element: HTMLElement }) => void)|string): void
574
+ /**
575
+ * Fired when focus enters this Widget.
576
+ * @param {string} e Event name
577
+ * @param {object} params Event parameters
578
+ * @param {string} params.e Event name
579
+ * @param {object} params.params Event parameters
580
+ * @param {object} params.params.event Event object
581
+ * @param {Core.widget.Widget} params.params.event.source This Widget
582
+ * @param {HTMLElement} params.params.event.fromElement The element which lost focus.
583
+ * @param {HTMLElement} params.params.event.toElement The element which gained focus.
584
+ * @param {Core.widget.Widget} params.params.event.fromWidget The widget which lost focus.
585
+ * @param {Core.widget.Widget} params.params.event.toWidget The widget which gained focus.
586
+ * @param {boolean} params.params.event.backwards `true` if the `toElement` is before the `fromElement` in document order.
587
+ */
588
+ (e: 'focusIn', params: ((event: { source: Widget, fromElement: HTMLElement, toElement: HTMLElement, fromWidget: Widget, toWidget: Widget, backwards: boolean }) => void)|string): void
589
+ /**
590
+ * Fired when focus exits this Widget's ownership tree. This is different from a `blur` event.
591
+ * focus moving from within this Widget's ownership tree, even if there are floating widgets
592
+ * will not trigger this event. This is when focus exits this widget completely.
593
+ * @param {string} e Event name
594
+ * @param {object} params Event parameters
595
+ * @param {string} params.e Event name
596
+ * @param {object} params.params Event parameters
597
+ * @param {object} params.params.event Event object
598
+ * @param {Core.widget.Widget} params.params.event.source This Widget
599
+ * @param {HTMLElement} params.params.event.fromElement The element which lost focus.
600
+ * @param {HTMLElement} params.params.event.toElement The element which gained focus.
601
+ * @param {Core.widget.Widget} params.params.event.fromWidget The widget which lost focus.
602
+ * @param {Core.widget.Widget} params.params.event.toWidget The widget which gained focus.
603
+ * @param {boolean} params.params.event.backwards `true` if the `toElement` is before the `fromElement` in document order.
604
+ */
605
+ (e: 'focusOut', params: ((event: { source: Widget, fromElement: HTMLElement, toElement: HTMLElement, fromWidget: Widget, toWidget: Widget, backwards: boolean }) => void)|string): void
606
+ /**
607
+ * Triggered after a widget was hidden
608
+ * @param {string} e Event name
609
+ * @param {object} params Event parameters
610
+ * @param {string} params.e Event name
611
+ * @param {object} params.params Event parameters
612
+ * @param {object} params.params.event Event object
613
+ * @param {Core.widget.Widget} params.params.event.source The widget
614
+ */
615
+ (e: 'hide', params: ((event: { source: Widget }) => void)|string): void
616
+ /**
617
+ * Fired while slider thumb is being dragged.
618
+ * @param {string} e Event name
619
+ * @param {object} params Event parameters
620
+ * @param {string} params.e Event name
621
+ * @param {object} params.params Event parameters
622
+ * @param {object} params.params.event Event object
623
+ * @param {Core.widget.Slider} params.params.event.source The slider
624
+ * @param {number} params.params.event.value The value
625
+ */
626
+ (e: 'input', params: ((event: { source: Slider, value: number }) => void)|string): void
627
+ /**
628
+ * Triggered when a widget which had been in a non-visible state for any reason
629
+ * achieves visibility.
630
+ * [More...](https://bryntum.com/products/scheduler/docs/api/Scheduler/widget/TimeZoomSlider#event-paint)
631
+ * @param {string} e Event name
632
+ * @param {object} params Event parameters
633
+ * @param {string} params.e Event name
634
+ * @param {object} params.params Event parameters
635
+ * @param {object} params.params.event Event object
636
+ * @param {Core.widget.Widget} params.params.event.source The widget being painted.
637
+ * @param {boolean} params.params.event.firstPaint `true` if this is the first paint.
638
+ */
639
+ (e: 'paint', params: ((event: { source: Widget, firstPaint: boolean }) => void)|string): void
640
+ /**
641
+ * Fired when a Widget's read only state is toggled
642
+ * @param {string} e Event name
643
+ * @param {object} params Event parameters
644
+ * @param {string} params.e Event name
645
+ * @param {object} params.params Event parameters
646
+ * @param {object} params.params.event Event object
647
+ * @param {boolean} params.params.event.readOnly Read only or not
648
+ */
649
+ (e: 'readOnly', params: ((event: { readOnly: boolean }) => void)|string): void
650
+ /**
651
+ * This event is fired after a widget's elements have been synchronized due to a direct or indirect call
652
+ * to [recompose](https://bryntum.com/products/scheduler/docs/api/Core/widget/Widget#function-recompose), if this results in some change to the widget's rendered DOM elements.
653
+ */
654
+ (e: 'recompose', params: (() => void)|string): void
655
+ /**
656
+ * Fired when the encapsulating element of a Widget resizes *only when [monitorResize](https://bryntum.com/products/scheduler/docs/api/Core/widget/Widget#config-monitorResize) is `true`*.
657
+ * @param {string} e Event name
658
+ * @param {object} params Event parameters
659
+ * @param {string} params.e Event name
660
+ * @param {object} params.params Event parameters
661
+ * @param {object} params.params.event Event object
662
+ * @param {Core.widget.Widget} params.params.event.source This Widget
663
+ * @param {number} params.params.event.width The new width
664
+ * @param {number} params.params.event.height The new height
665
+ * @param {number} params.params.event.oldWidth The old width
666
+ * @param {number} params.params.event.oldHeight The old height
667
+ */
668
+ (e: 'resize', params: ((event: { source: Widget, width: number, height: number, oldWidth: number, oldHeight: number }) => void)|string): void
669
+ /**
670
+ * Triggered after a widget is shown.
671
+ * @param {string} e Event name
672
+ * @param {object} params Event parameters
673
+ * @param {string} params.e Event name
674
+ * @param {object} params.params Event parameters
675
+ * @param {object} params.params.event Event object
676
+ * @param {Core.widget.Widget} params.params.event.source The widget
677
+ */
678
+ (e: 'show', params: ((event: { source: Widget }) => void)|string): void
679
+ }>();
680
+
681
+ const widgetData = {
682
+ instanceClass : TimeZoomSlider,
683
+ instanceName : 'TimeZoomSlider',
684
+
685
+ configNames : [
686
+ 'adopt',
687
+ 'align',
688
+ 'anchor',
689
+ 'ariaDescription',
690
+ 'ariaLabel',
691
+ 'bubbleEvents',
692
+ 'centered',
693
+ 'client',
694
+ 'color',
695
+ 'config',
696
+ 'constrainTo',
697
+ 'contentElementCls',
698
+ 'dataField',
699
+ 'defaultBindProperty',
700
+ 'detectCSSCompatibilityIssues',
701
+ 'dock',
702
+ 'draggable',
703
+ 'elementAttributes',
704
+ 'floating',
705
+ 'hideAnimation',
706
+ 'htmlCls',
707
+ 'ignoreParentReadOnly',
708
+ 'labelCls',
709
+ 'labelPosition',
710
+ 'labelWidth',
711
+ 'listeners',
712
+ 'localeClass',
713
+ 'localizable',
714
+ 'localizableProperties',
715
+ 'maskDefaults',
716
+ 'masked',
717
+ 'monitorResize',
718
+ 'positioned',
719
+ 'preventTooltipOnTouch',
720
+ 'relayStoreEvents',
721
+ 'ripple',
722
+ 'role',
723
+ 'rootElement',
724
+ 'scrollAction',
725
+ 'showAnimation',
726
+ 'showSteps',
727
+ 'showTooltip',
728
+ 'showTooltipWhenDisabled',
729
+ 'showValue',
730
+ 'tab',
731
+ 'tag',
732
+ 'textAlign',
733
+ 'title',
734
+ 'type',
735
+ 'ui',
736
+ 'weight'
737
+ ],
738
+ propertyConfigNames : [
739
+ 'alignSelf',
740
+ 'appendTo',
741
+ 'callOnFunctions',
742
+ 'catchEventHandlerExceptions',
743
+ 'cls',
744
+ 'column',
745
+ 'content',
746
+ 'dataset',
747
+ 'disabled',
748
+ 'extraData',
749
+ 'flex',
750
+ 'height',
751
+ 'hidden',
752
+ 'html',
753
+ 'id',
754
+ 'insertBefore',
755
+ 'insertFirst',
756
+ 'keyMap',
757
+ 'label',
758
+ 'margin',
759
+ 'max',
760
+ 'maxHeight',
761
+ 'maximizeOnMobile',
762
+ 'maxWidth',
763
+ 'min',
764
+ 'minHeight',
765
+ 'minWidth',
766
+ 'onBeforeDestroy',
767
+ 'onBeforeHide',
768
+ 'onBeforeShow',
769
+ 'onCatchAll',
770
+ 'onChange',
771
+ 'onDestroy',
772
+ 'onElementCreated',
773
+ 'onFocusIn',
774
+ 'onFocusOut',
775
+ 'onHide',
776
+ 'onInput',
777
+ 'onPaint',
778
+ 'onReadOnly',
779
+ 'onRecompose',
780
+ 'onResize',
781
+ 'onShow',
782
+ 'readOnly',
783
+ 'rtl',
784
+ 'scrollable',
785
+ 'span',
786
+ 'thumbIcon',
787
+ 'tooltip',
788
+ 'triggerChangeOnInput',
789
+ 'unit',
790
+ 'value',
791
+ 'valueLabelWidth',
792
+ 'width',
793
+ 'x',
794
+ 'y'
795
+ ],
796
+ propertyNames : [
797
+ 'parent',
798
+ 'step',
799
+ 'text'
800
+ ],
801
+ eventNames : [
802
+ 'beforeDestroy',
803
+ 'beforeHide',
804
+ 'beforeShow',
805
+ 'catchAll',
806
+ 'change',
807
+ 'destroy',
808
+ 'elementCreated',
809
+ 'focusIn',
810
+ 'focusOut',
811
+ 'hide',
812
+ 'input',
813
+ 'paint',
814
+ 'readOnly',
815
+ 'recompose',
816
+ 'resize',
817
+ 'show'
818
+ ]
819
+ };
820
+
821
+ const instance: {
822
+ value?: TimeZoomSlider
823
+ } = {};
824
+
825
+ const refElement = ref<HTMLDivElement>()!;
826
+ // Storage for teleports (in-cell Vue component instances) automatically renderer by template
827
+ const teleports = ref(new Map());
828
+
829
+ // Provide teleports for processCellContent
830
+ provide('teleports', teleports);
831
+
832
+ onMounted(() => {
833
+
834
+ const me = getCurrentInstance()!;
835
+
836
+ instance.value = WrapperHelper.createWidget<typeof TimeZoomSlider>({
837
+ me,
838
+ widgetData,
839
+ emit,
840
+ element : refElement.value!,
841
+ toRaw
842
+ });
843
+
844
+ const watcher = (prop: string, callback: any) => watch(() => me.props[prop], callback);
845
+ WrapperHelper.watchProps(instance.value, widgetData, watcher);
846
+ });
847
+
848
+ onBeforeUnmount(() => {
849
+ // @ts-ignore
850
+ instance.value?.destroy?.();
851
+ });
852
+
853
+ defineExpose({
854
+ instance,
855
+ refElement,
856
+ teleports
857
+ });
858
+
859
+ </script>