@perspective-dev/viewer 4.4.1 → 4.5.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 (225) hide show
  1. package/dist/cdn/perspective-viewer.js +1 -2
  2. package/dist/cdn/perspective-viewer.js.map +4 -4
  3. package/dist/css/botanical.css +1 -1
  4. package/dist/css/dracula.css +1 -1
  5. package/dist/css/gruvbox-dark.css +1 -1
  6. package/dist/css/gruvbox.css +1 -1
  7. package/dist/css/icons.css +1 -1
  8. package/dist/css/intl/de.css +1 -1
  9. package/dist/css/intl/es.css +1 -1
  10. package/dist/css/intl/fr.css +1 -1
  11. package/dist/css/intl/ja.css +1 -1
  12. package/dist/css/intl/pt.css +1 -1
  13. package/dist/css/intl/zh.css +1 -1
  14. package/dist/css/intl.css +1 -1
  15. package/dist/css/monokai.css +1 -1
  16. package/dist/css/phosphor.css +1 -1
  17. package/dist/css/pro-dark.css +1 -1
  18. package/dist/css/pro.css +1 -1
  19. package/dist/css/solarized-dark.css +1 -1
  20. package/dist/css/solarized.css +1 -1
  21. package/dist/css/themes.css +1 -1
  22. package/dist/css/vaporwave.css +1 -1
  23. package/dist/esm/bootstrap.d.ts +2 -1
  24. package/dist/esm/column-format.d.ts +51 -0
  25. package/dist/esm/extensions.d.ts +2 -0
  26. package/dist/esm/perspective-viewer.d.ts +3 -1
  27. package/dist/esm/perspective-viewer.inline.js +1 -2
  28. package/dist/esm/perspective-viewer.inline.js.map +4 -4
  29. package/dist/esm/perspective-viewer.js +1 -2
  30. package/dist/esm/perspective-viewer.js.map +4 -4
  31. package/dist/esm/perspective-viewer.worker.d.ts +2 -0
  32. package/dist/esm/plugin.d.ts +16 -72
  33. package/dist/esm/ts-rs/ColumnSelectMode.d.ts +1 -0
  34. package/dist/esm/ts-rs/PluginStaticConfig.d.ts +77 -0
  35. package/dist/esm/ts-rs/ViewerConfig.d.ts +6 -3
  36. package/dist/esm/ts-rs/ViewerConfigUpdate.d.ts +7 -4
  37. package/dist/wasm/perspective-viewer.d.ts +77 -18
  38. package/dist/wasm/perspective-viewer.js +293 -144
  39. package/dist/wasm/perspective-viewer.wasm +0 -0
  40. package/dist/wasm/perspective-viewer.wasm.d.ts +20 -15
  41. package/package.json +24 -2
  42. package/src/css/column-selector.css +3 -2
  43. package/src/css/column-settings-panel.css +35 -6
  44. package/src/css/column-style.css +27 -2
  45. package/src/css/containers/scroll-panel.css +2 -1
  46. package/src/css/containers/tabs.css +8 -52
  47. package/src/css/dom/checkbox.css +0 -4
  48. package/src/css/form/code-editor.css +1 -0
  49. package/src/css/form/debug.css +3 -10
  50. package/src/css/plugin-selector.css +33 -0
  51. package/src/css/plugin-settings-panel.css +99 -0
  52. package/src/css/viewer.css +65 -3
  53. package/src/rust/components/column_dropdown.rs +3 -1
  54. package/src/rust/components/column_selector/active_column.rs +13 -19
  55. package/src/rust/components/column_selector/config_selector.rs +20 -20
  56. package/src/rust/components/column_selector/filter_column.rs +14 -14
  57. package/src/rust/components/column_selector/inactive_column.rs +9 -15
  58. package/src/rust/components/column_selector/pivot_column.rs +7 -7
  59. package/src/rust/components/column_selector/sort_column.rs +7 -7
  60. package/src/rust/components/column_selector.rs +55 -37
  61. package/src/rust/components/column_settings_sidebar/style_tab/agg_depth_selector.rs +15 -7
  62. package/src/rust/components/column_settings_sidebar/style_tab/primitive_field.rs +394 -0
  63. package/src/rust/components/column_settings_sidebar/style_tab/symbol.rs +15 -6
  64. package/src/rust/components/column_settings_sidebar/style_tab.rs +267 -136
  65. package/src/rust/components/column_settings_sidebar.rs +43 -49
  66. package/src/rust/components/containers/dragdrop_list.rs +5 -5
  67. package/src/rust/components/containers/mod.rs +0 -1
  68. package/src/rust/components/containers/scroll_panel.rs +21 -7
  69. package/src/rust/components/containers/sidebar.rs +8 -6
  70. package/src/rust/components/containers/split_panel.rs +3 -3
  71. package/src/rust/components/containers/tab_list.rs +3 -9
  72. package/src/rust/components/copy_dropdown.rs +2 -3
  73. package/src/rust/components/datetime_column_style.rs +19 -81
  74. package/src/rust/components/editable_header.rs +2 -3
  75. package/src/rust/components/export_dropdown.rs +2 -3
  76. package/src/rust/components/expression_editor.rs +29 -17
  77. package/src/rust/components/filter_dropdown.rs +2 -1
  78. package/src/rust/components/form/color_range_selector.rs +14 -7
  79. package/src/rust/components/form/debug.rs +47 -37
  80. package/src/rust/components/main_panel.rs +24 -65
  81. package/src/rust/components/mod.rs +2 -1
  82. package/src/rust/components/number_series_style.rs +161 -0
  83. package/src/rust/components/plugin_tab.rs +221 -0
  84. package/src/rust/components/settings_panel.rs +181 -59
  85. package/src/rust/components/status_bar.rs +140 -173
  86. package/src/rust/components/status_indicator.rs +15 -22
  87. package/src/rust/components/string_column_style.rs +20 -82
  88. package/src/rust/components/style_controls/number_string_format.rs +14 -30
  89. package/src/rust/components/viewer.rs +92 -131
  90. package/src/rust/config/column_config_schema.rs +195 -0
  91. package/src/rust/config/columns_config.rs +4 -97
  92. package/src/rust/config/datetime_column_style.rs +0 -5
  93. package/src/rust/config/mod.rs +8 -2
  94. package/src/rust/config/number_series_style.rs +79 -0
  95. package/src/rust/config/plugin_static_config.rs +144 -0
  96. package/src/rust/config/string_column_style.rs +0 -5
  97. package/src/rust/config/viewer_config.rs +5 -6
  98. package/src/rust/custom_elements/copy_dropdown.rs +30 -18
  99. package/src/rust/custom_elements/debug_plugin.rs +1 -3
  100. package/src/rust/custom_elements/export_dropdown.rs +26 -18
  101. package/src/rust/custom_elements/viewer.rs +62 -73
  102. package/src/rust/custom_events.rs +181 -224
  103. package/src/rust/js/plugin.rs +45 -117
  104. package/src/rust/lib.rs +34 -5
  105. package/src/rust/presentation/drag_helpers.rs +206 -0
  106. package/src/rust/presentation/props.rs +8 -0
  107. package/src/rust/presentation.rs +256 -41
  108. package/src/rust/{tasks → queries}/column_locator.rs +17 -73
  109. package/src/rust/queries/column_values.rs +59 -0
  110. package/src/rust/{tasks → queries}/columns_iter_set.rs +11 -18
  111. package/src/rust/queries/exports.rs +96 -0
  112. package/src/rust/queries/fetch_column_stats.rs +94 -0
  113. package/src/rust/queries/get_viewer_config.rs +54 -0
  114. package/src/rust/queries/mod.rs +44 -0
  115. package/src/rust/queries/plugin_column_styles.rs +101 -0
  116. package/src/rust/{engines.rs → queries/validate_expression.rs} +26 -15
  117. package/src/rust/renderer/activate.rs +1 -0
  118. package/src/rust/renderer/limits.rs +9 -4
  119. package/src/rust/renderer/plugin_store.rs +12 -0
  120. package/src/rust/renderer/props.rs +28 -3
  121. package/src/rust/renderer/registry.rs +40 -15
  122. package/src/rust/renderer.rs +640 -51
  123. package/src/rust/session/column_defaults_update.rs +20 -28
  124. package/src/rust/session/drag_drop_update.rs +10 -10
  125. package/src/rust/session/metadata.rs +31 -16
  126. package/src/rust/session/props.rs +15 -6
  127. package/src/rust/session/view_subscription.rs +10 -0
  128. package/src/rust/session.rs +109 -147
  129. package/src/rust/tasks/copy_export.rs +178 -158
  130. package/src/rust/tasks/{structural.rs → dismiss_render_warning.rs} +20 -40
  131. package/src/rust/tasks/edit_expression.rs +68 -88
  132. package/src/rust/tasks/eject.rs +25 -22
  133. package/src/rust/tasks/intersection_observer.rs +8 -21
  134. package/src/rust/tasks/mod.rs +19 -21
  135. package/src/rust/tasks/reset_all.rs +78 -0
  136. package/src/rust/tasks/resize_observer.rs +11 -33
  137. package/src/rust/tasks/restore_and_render.rs +117 -90
  138. package/src/rust/tasks/{get_viewer_config.rs → send_column_config.rs} +38 -35
  139. package/src/rust/tasks/send_plugin_config.rs +32 -33
  140. package/src/rust/tasks/update_and_render.rs +66 -47
  141. package/src/rust/{components/containers/trap_door_panel.rs → tasks/update_theme.rs} +34 -33
  142. package/src/rust/tasks/validate_expression.rs +61 -0
  143. package/src/rust/utils/browser/selection.rs +4 -4
  144. package/src/rust/utils/mod.rs +0 -63
  145. package/src/svg/mega-menu-icons-density.svg +23 -0
  146. package/src/svg/mega-menu-icons-map-density.svg +24 -0
  147. package/src/svg/mega-menu-icons-map-line.svg +19 -0
  148. package/src/themes/botanical.css +27 -53
  149. package/src/themes/defaults.css +24 -36
  150. package/src/themes/dracula.css +36 -54
  151. package/src/themes/gruvbox-dark.css +39 -59
  152. package/src/themes/gruvbox.css +16 -28
  153. package/src/themes/icons.css +3 -0
  154. package/src/themes/intl/de.css +42 -6
  155. package/src/themes/intl/es.css +42 -6
  156. package/src/themes/intl/fr.css +42 -6
  157. package/src/themes/intl/ja.css +42 -6
  158. package/src/themes/intl/pt.css +42 -6
  159. package/src/themes/intl/zh.css +42 -6
  160. package/src/themes/intl.css +37 -4
  161. package/src/themes/monokai.css +45 -61
  162. package/src/themes/phosphor.css +20 -29
  163. package/src/themes/pro-dark.css +25 -34
  164. package/src/themes/solarized-dark.css +21 -36
  165. package/src/themes/solarized.css +13 -23
  166. package/src/themes/vaporwave.css +40 -74
  167. package/src/ts/bootstrap.ts +14 -3
  168. package/src/ts/column-format.ts +162 -0
  169. package/src/ts/extensions.ts +4 -0
  170. package/src/ts/perspective-viewer.ts +9 -1
  171. package/src/{rust/components/column_settings_sidebar/style_tab/stub.rs → ts/perspective-viewer.worker.ts} +2 -22
  172. package/src/ts/plugin.ts +25 -101
  173. package/src/ts/ts-rs/{FormatUnit.ts → ColumnSelectMode.ts} +1 -1
  174. package/src/ts/ts-rs/PluginStaticConfig.ts +78 -0
  175. package/src/ts/ts-rs/ViewerConfig.ts +1 -2
  176. package/src/ts/ts-rs/ViewerConfigUpdate.ts +2 -3
  177. package/dist/esm/ts-rs/ColumnConfigValues.d.ts +0 -31
  178. package/dist/esm/ts-rs/CustomDatetimeFormat.d.ts +0 -1
  179. package/dist/esm/ts-rs/CustomDatetimeStyleConfig.d.ts +0 -15
  180. package/dist/esm/ts-rs/CustomNumberFormatConfig.d.ts +0 -18
  181. package/dist/esm/ts-rs/DatetimeColorMode.d.ts +0 -1
  182. package/dist/esm/ts-rs/DatetimeFormatType.d.ts +0 -6
  183. package/dist/esm/ts-rs/FormatMode.d.ts +0 -1
  184. package/dist/esm/ts-rs/FormatUnit.d.ts +0 -1
  185. package/dist/esm/ts-rs/NumberBackgroundMode.d.ts +0 -1
  186. package/dist/esm/ts-rs/NumberForegroundMode.d.ts +0 -1
  187. package/dist/esm/ts-rs/PluginConfig.d.ts +0 -2
  188. package/dist/esm/ts-rs/RoundingMode.d.ts +0 -1
  189. package/dist/esm/ts-rs/RoundingPriority.d.ts +0 -1
  190. package/dist/esm/ts-rs/SignDisplay.d.ts +0 -1
  191. package/dist/esm/ts-rs/SimpleDatetimeFormat.d.ts +0 -1
  192. package/dist/esm/ts-rs/SimpleDatetimeStyleConfig.d.ts +0 -6
  193. package/dist/esm/ts-rs/StringColorMode.d.ts +0 -1
  194. package/dist/esm/ts-rs/TrailingZeroDisplay.d.ts +0 -1
  195. package/dist/esm/ts-rs/UseGrouping.d.ts +0 -1
  196. package/src/rust/components/number_column_style.rs +0 -491
  197. package/src/rust/config/number_column_style.rs +0 -136
  198. package/src/rust/dragdrop.rs +0 -481
  199. package/src/rust/tasks/plugin_column_styles.rs +0 -98
  200. package/src/ts/ts-rs/ColumnConfigValues.ts +0 -14
  201. package/src/ts/ts-rs/CustomDatetimeFormat.ts +0 -3
  202. package/src/ts/ts-rs/CustomDatetimeStyleConfig.ts +0 -5
  203. package/src/ts/ts-rs/CustomNumberFormatConfig.ts +0 -8
  204. package/src/ts/ts-rs/DatetimeColorMode.ts +0 -3
  205. package/src/ts/ts-rs/DatetimeFormatType.ts +0 -8
  206. package/src/ts/ts-rs/FormatMode.ts +0 -3
  207. package/src/ts/ts-rs/NumberBackgroundMode.ts +0 -3
  208. package/src/ts/ts-rs/NumberForegroundMode.ts +0 -3
  209. package/src/ts/ts-rs/PluginConfig.ts +0 -4
  210. package/src/ts/ts-rs/RoundingMode.ts +0 -3
  211. package/src/ts/ts-rs/RoundingPriority.ts +0 -3
  212. package/src/ts/ts-rs/SignDisplay.ts +0 -3
  213. package/src/ts/ts-rs/SimpleDatetimeFormat.ts +0 -3
  214. package/src/ts/ts-rs/SimpleDatetimeStyleConfig.ts +0 -4
  215. package/src/ts/ts-rs/StringColorMode.ts +0 -3
  216. package/src/ts/ts-rs/TrailingZeroDisplay.ts +0 -3
  217. package/src/ts/ts-rs/UseGrouping.ts +0 -3
  218. /package/dist/wasm/snippets/{perspective-viewer-d924246f0b4a3dce → perspective-viewer-39ab7da3ca157861}/inline0.js +0 -0
  219. /package/dist/wasm/snippets/{perspective-viewer-d924246f0b4a3dce → perspective-viewer-39ab7da3ca157861}/inline1.js +0 -0
  220. /package/dist/wasm/snippets/{perspective-viewer-d924246f0b4a3dce → perspective-viewer-39ab7da3ca157861}/inline2.js +0 -0
  221. /package/dist/wasm/snippets/{perspective-viewer-d924246f0b4a3dce → perspective-viewer-39ab7da3ca157861}/inline3.js +0 -0
  222. /package/dist/wasm/snippets/{perspective-viewer-d924246f0b4a3dce → perspective-viewer-39ab7da3ca157861}/inline4.js +0 -0
  223. /package/src/rust/{tasks → config}/export_method.rs +0 -0
  224. /package/src/rust/{tasks → queries}/export_app.rs +0 -0
  225. /package/src/rust/{tasks → queries}/is_invalid_drop.rs +0 -0
@@ -1,9 +1,9 @@
1
1
  /* @ts-self-types="./perspective-viewer.wasm.d.ts" */
2
- import { ClipboardItem } from './snippets/perspective-viewer-d924246f0b4a3dce/inline0.js';
3
- import { ResizeObserver } from './snippets/perspective-viewer-d924246f0b4a3dce/inline1.js';
4
- import { IntersectionObserver } from './snippets/perspective-viewer-d924246f0b4a3dce/inline2.js';
5
- import { bootstrap } from './snippets/perspective-viewer-d924246f0b4a3dce/inline3.js';
6
- import { psp } from './snippets/perspective-viewer-d924246f0b4a3dce/inline4.js';
2
+ import { ClipboardItem } from './snippets/perspective-viewer-39ab7da3ca157861/inline0.js';
3
+ import { ResizeObserver } from './snippets/perspective-viewer-39ab7da3ca157861/inline1.js';
4
+ import { IntersectionObserver } from './snippets/perspective-viewer-39ab7da3ca157861/inline2.js';
5
+ import { bootstrap } from './snippets/perspective-viewer-39ab7da3ca157861/inline3.js';
6
+ import { psp } from './snippets/perspective-viewer-39ab7da3ca157861/inline4.js';
7
7
 
8
8
  /**
9
9
  * An instance of a [`Client`] is a connection to a single
@@ -77,6 +77,36 @@ export class Client {
77
77
  wasm.__wbindgen_add_to_stack_pointer(16);
78
78
  }
79
79
  }
80
+ /**
81
+ * Unsafely gets a [`View`] by raw ID, useful for JavaScript multi-threaded
82
+ * (via Web Worker) context where a standard `View` cannot otherwise be
83
+ * shared because its wrapper is not serializable.
84
+ *
85
+ * # Safety
86
+ *
87
+ * This method is unsafe because the lifetime of a [`View`] is bound to
88
+ * the [`Client`] which created it.
89
+ *
90
+ * The caller must guarantee that `entity_id` corresponds to a live
91
+ * [`crate::View`] on the connected server (obtained from another
92
+ * [`Client`]'s [`crate::View::get_name`] and forwarded across the
93
+ * serialization boundary).
94
+ *
95
+ * # JavaScript Examples
96
+ *
97
+ * ```javascript
98
+ * const view = client.__unsafe_open_view(name_from_main_thread);
99
+ * const cols = await view.to_columns();
100
+ * ```
101
+ * @param {string} entity_id
102
+ * @returns {View}
103
+ */
104
+ __unsafe_open_view(entity_id) {
105
+ const ptr0 = passStringToWasm0(entity_id, wasm.__wbindgen_export, wasm.__wbindgen_export2);
106
+ const len0 = WASM_VECTOR_LEN;
107
+ const ret = wasm.client___unsafe_open_view(this.__wbg_ptr, ptr0, len0);
108
+ return View.__wrap(ret);
109
+ }
80
110
  /**
81
111
  * Retrieves the names of all tables that this client has access to.
82
112
  *
@@ -910,12 +940,8 @@ export class PerspectiveDebugPluginElement {
910
940
  wasm.__wbindgen_add_to_stack_pointer(16);
911
941
  }
912
942
  }
913
- /**
914
- * @returns {Promise<any>}
915
- */
916
943
  restyle() {
917
- const ret = wasm.perspectivedebugpluginelement_clear(this.__wbg_ptr);
918
- return takeObject(ret);
944
+ wasm.perspectivedebugpluginelement_connectedCallback(this.__wbg_ptr);
919
945
  }
920
946
  /**
921
947
  * @returns {any}
@@ -1122,7 +1148,7 @@ export class PerspectiveViewerElement {
1122
1148
  *
1123
1149
  * This method is only really useful for the `"plugin"` method, which
1124
1150
  * will use the configured plugin's export (e.g. PNG for
1125
- * `@perspective-dev/viewer-d3fc`). Otherwise, prefer to call the
1151
+ * `@perspective-dev/viewer-charts`). Otherwise, prefer to call the
1126
1152
  * equivalent method on the underlying [`View`] directly.
1127
1153
  *
1128
1154
  * # Arguments
@@ -1338,6 +1364,13 @@ export class PerspectiveViewerElement {
1338
1364
  * [`PerspectiveViewerElement::save`]), and also makes no API calls to the
1339
1365
  * server (unlike [`PerspectiveViewerElement::getView`] followed by
1340
1366
  * [`View::get_config`])
1367
+ *
1368
+ * Returns the [`ViewConfig`] the currently-bound `View` was constructed
1369
+ * from, so the value is consistent with what the active plugin is
1370
+ * rendering even if a queued [`Self::restore`]/`update_and_render` has
1371
+ * already mutated the live config in anticipation of the next draw.
1372
+ * Falls back to the live session config when no `View` has yet been
1373
+ * created (e.g., after `load` but before the first render).
1341
1374
  * @returns {Promise<any>}
1342
1375
  */
1343
1376
  getViewConfig() {
@@ -2172,6 +2205,22 @@ export class View {
2172
2205
  const ret = wasm.view___get_model(this.__wbg_ptr);
2173
2206
  return View.__wrap(ret);
2174
2207
  }
2208
+ /**
2209
+ * @returns {string}
2210
+ */
2211
+ __unsafe_get_name() {
2212
+ try {
2213
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
2214
+ wasm.view___unsafe_get_name(retptr, this.__wbg_ptr);
2215
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
2216
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
2217
+ var v1 = getCachedStringFromWasm0(r0, r1);
2218
+ if (r0 !== 0) { wasm.__wbindgen_export4(r0, r1, 1); }
2219
+ return v1;
2220
+ } finally {
2221
+ wasm.__wbindgen_add_to_stack_pointer(16);
2222
+ }
2223
+ }
2175
2224
  /**
2176
2225
  * Collapses the `group_by` row at `row_index`.
2177
2226
  * @param {number} row_index
@@ -2458,6 +2507,29 @@ export class View {
2458
2507
  const ret = wasm.view_to_ndjson(this.__wbg_ptr, isLikeNone(window) ? 0 : addHeapObject(window));
2459
2508
  return takeObject(ret);
2460
2509
  }
2510
+ /**
2511
+ * Fetches columns from the [`View`] in Arrow format, decodes them, and
2512
+ * passes typed array views to `callback`. All arrays are only valid for
2513
+ * the duration of the callback — if `callback` returns a `Promise`, it
2514
+ * is awaited before the backing Arrow buffer is released, so async
2515
+ * callbacks may use the views for the full duration of the awaited
2516
+ * work (e.g. across an `await requestAnimationFrame`-backed promise).
2517
+ *
2518
+ * # Arguments
2519
+ *
2520
+ * - `window` - Optional [`TypedArrayWindow`] controlling row/column
2521
+ * windowing and output options (e.g., `float32` mode).
2522
+ * - `callback` - A JS function called with `(names: string[], values:
2523
+ * TypedArray[], validities: (Uint8Array|null)[], dictionaries:
2524
+ * (string[]|null)[]) => void | Promise<void>`.
2525
+ * @param {TypedArrayWindow | null | undefined} window
2526
+ * @param {Function} callback
2527
+ * @returns {Promise<void>}
2528
+ */
2529
+ with_typed_arrays(window, callback) {
2530
+ const ret = wasm.view_with_typed_arrays(this.__wbg_ptr, isLikeNone(window) ? 0 : addHeapObject(window), addHeapObject(callback));
2531
+ return takeObject(ret);
2532
+ }
2461
2533
  }
2462
2534
  if (Symbol.dispose) View.prototype[Symbol.dispose] = View.prototype.free;
2463
2535
 
@@ -2680,6 +2752,44 @@ export class VirtualServer {
2680
2752
  }
2681
2753
  if (Symbol.dispose) VirtualServer.prototype[Symbol.dispose] = VirtualServer.prototype.free;
2682
2754
 
2755
+ /**
2756
+ * @returns {WebAssembly.Module}
2757
+ */
2758
+ export function get_wasm_module() {
2759
+ try {
2760
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
2761
+ wasm.get_wasm_module(retptr);
2762
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
2763
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
2764
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
2765
+ if (r2) {
2766
+ throw takeObject(r1);
2767
+ }
2768
+ return takeObject(r0);
2769
+ } finally {
2770
+ wasm.__wbindgen_add_to_stack_pointer(16);
2771
+ }
2772
+ }
2773
+
2774
+ /**
2775
+ * @returns {URL}
2776
+ */
2777
+ export function get_worker_url() {
2778
+ try {
2779
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
2780
+ wasm.get_worker_url(retptr);
2781
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
2782
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
2783
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
2784
+ if (r2) {
2785
+ throw takeObject(r1);
2786
+ }
2787
+ return takeObject(r0);
2788
+ } finally {
2789
+ wasm.__wbindgen_add_to_stack_pointer(16);
2790
+ }
2791
+ }
2792
+
2683
2793
  /**
2684
2794
  * Register this crate's Custom Elements in the browser's current session.
2685
2795
  *
@@ -2687,9 +2797,11 @@ if (Symbol.dispose) VirtualServer.prototype[Symbol.dispose] = VirtualServer.prot
2687
2797
  * Elements from JavaScript, as the methods themselves won't be defined yet.
2688
2798
  * By default, this crate does not register `PerspectiveViewerElement` (as to
2689
2799
  * preserve backwards-compatible synchronous API).
2800
+ * @param {WebAssembly.Module} module
2801
+ * @param {URL} url
2690
2802
  */
2691
- export function init() {
2692
- wasm.init();
2803
+ export function init(module, url) {
2804
+ wasm.init(addHeapObject(module), addHeapObject(url));
2693
2805
  }
2694
2806
 
2695
2807
  /**
@@ -2840,7 +2952,7 @@ function __wbg_get_imports() {
2840
2952
  const ret = getObject(arg0).body;
2841
2953
  return isLikeNone(ret) ? 0 : addHeapObject(ret);
2842
2954
  },
2843
- __wbg_bootstrap_f76c047a4848fd72: function(arg0, arg1, arg2, arg3, arg4, arg5) {
2955
+ __wbg_bootstrap_de1e9ac320cc9df1: function(arg0, arg1, arg2, arg3, arg4, arg5) {
2844
2956
  var v0 = getCachedStringFromWasm0(arg1, arg2);
2845
2957
  var v1 = getCachedStringFromWasm0(arg3, arg4);
2846
2958
  const ret = bootstrap(getObject(arg0), v0, v1, takeObject(arg5));
@@ -2866,6 +2978,10 @@ function __wbg_get_imports() {
2866
2978
  const ret = getObject(arg0).call(getObject(arg1));
2867
2979
  return addHeapObject(ret);
2868
2980
  }, arguments); },
2981
+ __wbg_call_41bedb84c3e5c0c9: function() { return handleError(function (arg0, arg1, arg2, arg3, arg4, arg5) {
2982
+ const ret = getObject(arg0).call(getObject(arg1), getObject(arg2), getObject(arg3), getObject(arg4), getObject(arg5));
2983
+ return addHeapObject(ret);
2984
+ }, arguments); },
2869
2985
  __wbg_call_4708e0c13bdc8e95: function() { return handleError(function (arg0, arg1, arg2) {
2870
2986
  const ret = getObject(arg0).call(getObject(arg1), getObject(arg2));
2871
2987
  return addHeapObject(ret);
@@ -2874,23 +2990,10 @@ function __wbg_get_imports() {
2874
2990
  const ret = getObject(arg0).call(getObject(arg1), getObject(arg2), getObject(arg3));
2875
2991
  return addHeapObject(ret);
2876
2992
  }, arguments); },
2877
- __wbg_can_render_column_styles_e8f6cb13e2439c74: function() { return handleError(function (arg0, arg1, arg2, arg3, arg4) {
2878
- var v0 = getCachedStringFromWasm0(arg1, arg2);
2879
- var v1 = getCachedStringFromWasm0(arg3, arg4);
2880
- const ret = getObject(arg0).can_render_column_styles(v0, v1);
2881
- return ret;
2882
- }, arguments); },
2883
2993
  __wbg_cancelBubble_d93ec09e9c46cd6f: function(arg0) {
2884
2994
  const ret = getObject(arg0).cancelBubble;
2885
2995
  return ret;
2886
2996
  },
2887
- __wbg_category_13a29f334562aae8: function(arg0, arg1) {
2888
- const ret = getObject(arg1).category;
2889
- var ptr1 = isLikeNone(ret) ? 0 : passStringToWasm0(ret, wasm.__wbindgen_export, wasm.__wbindgen_export2);
2890
- var len1 = WASM_VECTOR_LEN;
2891
- getDataViewMemory0().setInt32(arg0 + 4 * 1, len1, true);
2892
- getDataViewMemory0().setInt32(arg0 + 4 * 0, ptr1, true);
2893
- },
2894
2997
  __wbg_checked_04db83ac6810bc82: function(arg0) {
2895
2998
  const ret = getObject(arg0).checked;
2896
2999
  return ret;
@@ -2949,25 +3052,22 @@ function __wbg_get_imports() {
2949
3052
  getDataViewMemory0().setInt32(arg0 + 4 * 1, len1, true);
2950
3053
  getDataViewMemory0().setInt32(arg0 + 4 * 0, ptr1, true);
2951
3054
  },
2952
- __wbg_column_style_controls_cc2466b20fb65ff4: function() { return handleError(function (arg0, arg1, arg2, arg3, arg4) {
3055
+ __wbg_column_config_schema_dfdc22018b3e4346: function() { return handleError(function (arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9) {
2953
3056
  var v0 = getCachedStringFromWasm0(arg1, arg2);
2954
3057
  var v1 = getCachedStringFromWasm0(arg3, arg4);
2955
- const ret = getObject(arg0).column_style_controls(v0, v1);
3058
+ var v2 = getCachedStringFromWasm0(arg5, arg6);
3059
+ const ret = getObject(arg0).column_config_schema(v0, v1, v2, getObject(arg7), getObject(arg8), getObject(arg9));
2956
3060
  return addHeapObject(ret);
2957
3061
  }, arguments); },
2958
3062
  __wbg_composedPath_9154ab2547c668d5: function(arg0) {
2959
3063
  const ret = getObject(arg0).composedPath();
2960
3064
  return addHeapObject(ret);
2961
3065
  },
2962
- __wbg_config_column_names_5fa0c470e2b283dd: function(arg0) {
2963
- const ret = getObject(arg0).config_column_names;
2964
- return isLikeNone(ret) ? 0 : addHeapObject(ret);
2965
- },
2966
3066
  __wbg_contains_1056459c33f961e8: function(arg0, arg1) {
2967
3067
  const ret = getObject(arg0).contains(getObject(arg1));
2968
3068
  return ret;
2969
3069
  },
2970
- __wbg_contentRect_394f4c1b0cb6d3df: function(arg0) {
3070
+ __wbg_contentRect_74b5b848bcd05780: function(arg0) {
2971
3071
  const ret = getObject(arg0).contentRect;
2972
3072
  return addHeapObject(ret);
2973
3073
  },
@@ -3012,7 +3112,7 @@ function __wbg_get_imports() {
3012
3112
  __wbg_debug_a4099fa12db6cd61: function(arg0) {
3013
3113
  console.debug(getObject(arg0));
3014
3114
  },
3015
- __wbg_delete_232a8bc402286241: function(arg0) {
3115
+ __wbg_delete_250cd10c0e90f03e: function(arg0) {
3016
3116
  getObject(arg0).delete();
3017
3117
  },
3018
3118
  __wbg_delete_8318b529ff42aa20: function(arg0, arg1, arg2) {
@@ -3031,7 +3131,7 @@ function __wbg_get_imports() {
3031
3131
  const ret = getObject(arg0).done;
3032
3132
  return ret;
3033
3133
  },
3034
- __wbg_draw_db771edc1a2cc571: function() { return handleError(function (arg0, arg1, arg2, arg3, arg4) {
3134
+ __wbg_draw_af1828180d3884f1: function() { return handleError(function (arg0, arg1, arg2, arg3, arg4) {
3035
3135
  const ret = getObject(arg0).draw(View.__wrap(arg1), arg2 === 0x100000001 ? undefined : arg2, arg3 === 0x100000001 ? undefined : arg3, arg4 !== 0);
3036
3136
  return addHeapObject(ret);
3037
3137
  }, arguments); },
@@ -3142,6 +3242,10 @@ function __wbg_get_imports() {
3142
3242
  const ret = Reflect.get(getObject(arg0), getObject(arg1));
3143
3243
  return addHeapObject(ret);
3144
3244
  }, arguments); },
3245
+ __wbg_get_static_config_4e959b27c52a4213: function(arg0) {
3246
+ const ret = getObject(arg0).get_static_config();
3247
+ return addHeapObject(ret);
3248
+ },
3145
3249
  __wbg_get_with_index_d26da38d2c038e1a: function(arg0, arg1) {
3146
3250
  const ret = getObject(arg0)[arg1 >>> 0];
3147
3251
  return isLikeNone(ret) ? 0 : addHeapObject(ret);
@@ -3150,10 +3254,6 @@ function __wbg_get_imports() {
3150
3254
  const ret = getObject(arg0)[getObject(arg1)];
3151
3255
  return addHeapObject(ret);
3152
3256
  },
3153
- __wbg_group_rollups_6fe862eb83cc5bec: function(arg0) {
3154
- const ret = getObject(arg0).group_rollups;
3155
- return isLikeNone(ret) ? 0 : addHeapObject(ret);
3156
- },
3157
3257
  __wbg_hasAttribute_5d8f52cb4c739280: function(arg0, arg1, arg2) {
3158
3258
  var v0 = getCachedStringFromWasm0(arg1, arg2);
3159
3259
  const ret = getObject(arg0).hasAttribute(v0);
@@ -3331,7 +3431,7 @@ function __wbg_get_imports() {
3331
3431
  const ret = getObject(arg0).isConnected;
3332
3432
  return ret;
3333
3433
  },
3334
- __wbg_isIntersecting_b4219f1cfe081cab: function(arg0) {
3434
+ __wbg_isIntersecting_6542cddb9df60b74: function(arg0) {
3335
3435
  const ret = getObject(arg0).isIntersecting;
3336
3436
  return ret;
3337
3437
  },
@@ -3434,14 +3534,6 @@ function __wbg_get_imports() {
3434
3534
  const ret = getObject(arg0).matches(v0);
3435
3535
  return ret;
3436
3536
  }, arguments); },
3437
- __wbg_max_cells_b1575044e850f2ed: function(arg0) {
3438
- const ret = getObject(arg0).max_cells;
3439
- return isLikeNone(ret) ? 0x100000001 : (ret) >>> 0;
3440
- },
3441
- __wbg_max_columns_637b2dba8a423a3c: function(arg0) {
3442
- const ret = getObject(arg0).max_columns;
3443
- return isLikeNone(ret) ? 0x100000001 : (ret) >>> 0;
3444
- },
3445
3537
  __wbg_measure_288b48c082eae0fe: function() { return handleError(function (arg0, arg1, arg2, arg3, arg4) {
3446
3538
  var v0 = getCachedStringFromWasm0(arg1, arg2);
3447
3539
  var v1 = getCachedStringFromWasm0(arg3, arg4);
@@ -3451,17 +3543,6 @@ function __wbg_get_imports() {
3451
3543
  const ret = getObject(arg0).message;
3452
3544
  return addHeapObject(ret);
3453
3545
  },
3454
- __wbg_min_config_columns_37f48c557dd66480: function(arg0) {
3455
- const ret = getObject(arg0).min_config_columns;
3456
- return isLikeNone(ret) ? 0x100000001 : (ret) >>> 0;
3457
- },
3458
- __wbg_name_b117296b29a3d17b: function(arg0, arg1) {
3459
- const ret = getObject(arg1).name;
3460
- const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_export, wasm.__wbindgen_export2);
3461
- const len1 = WASM_VECTOR_LEN;
3462
- getDataViewMemory0().setInt32(arg0 + 4 * 1, len1, true);
3463
- getDataViewMemory0().setInt32(arg0 + 4 * 0, ptr1, true);
3464
- },
3465
3546
  __wbg_namespaceURI_86e2062c65f0f341: function(arg0, arg1) {
3466
3547
  const ret = getObject(arg1).namespaceURI;
3467
3548
  var ptr1 = isLikeNone(ret) ? 0 : passStringToWasm0(ret, wasm.__wbindgen_export, wasm.__wbindgen_export2);
@@ -3499,6 +3580,10 @@ function __wbg_get_imports() {
3499
3580
  const ret = new Array();
3500
3581
  return addHeapObject(ret);
3501
3582
  },
3583
+ __wbg_new_539ca4297026bac9: function(arg0) {
3584
+ const ret = new ClipboardItem(getObject(arg0));
3585
+ return addHeapObject(ret);
3586
+ },
3502
3587
  __wbg_new_72b49615380db768: function(arg0, arg1) {
3503
3588
  var v0 = getCachedStringFromWasm0(arg0, arg1);
3504
3589
  const ret = new Error(v0);
@@ -3508,22 +3593,10 @@ function __wbg_get_imports() {
3508
3593
  const ret = new Intl.NumberFormat(getObject(arg0), getObject(arg1));
3509
3594
  return addHeapObject(ret);
3510
3595
  },
3511
- __wbg_new_884dbf655e2ca5b9: function(arg0) {
3512
- const ret = new ClipboardItem(getObject(arg0));
3513
- return addHeapObject(ret);
3514
- },
3515
3596
  __wbg_new_8a6f238a6ece86ea: function() {
3516
3597
  const ret = new Error();
3517
3598
  return addHeapObject(ret);
3518
3599
  },
3519
- __wbg_new_8c06eeec9ed1fa56: function(arg0) {
3520
- const ret = new ResizeObserver(getObject(arg0));
3521
- return addHeapObject(ret);
3522
- },
3523
- __wbg_new_abe270086f008783: function(arg0) {
3524
- const ret = new IntersectionObserver(getObject(arg0));
3525
- return addHeapObject(ret);
3526
- },
3527
3600
  __wbg_new_b5d9e2fb389fef91: function(arg0, arg1) {
3528
3601
  try {
3529
3602
  var state0 = {a: arg0, b: arg1};
@@ -3531,7 +3604,7 @@ function __wbg_get_imports() {
3531
3604
  const a = state0.a;
3532
3605
  state0.a = 0;
3533
3606
  try {
3534
- return __wasm_bindgen_func_elem_24303(a, state0.b, arg0, arg1);
3607
+ return __wasm_bindgen_func_elem_24562(a, state0.b, arg0, arg1);
3535
3608
  } finally {
3536
3609
  state0.a = a;
3537
3610
  }
@@ -3546,6 +3619,10 @@ function __wbg_get_imports() {
3546
3619
  const ret = new Intl.DateTimeFormat(getObject(arg0), getObject(arg1));
3547
3620
  return addHeapObject(ret);
3548
3621
  },
3622
+ __wbg_new_cfffacaf4c9cdc8c: function(arg0) {
3623
+ const ret = new IntersectionObserver(getObject(arg0));
3624
+ return addHeapObject(ret);
3625
+ },
3549
3626
  __wbg_new_dca287b076112a51: function() {
3550
3627
  const ret = new Map();
3551
3628
  return addHeapObject(ret);
@@ -3554,6 +3631,10 @@ function __wbg_get_imports() {
3554
3631
  const ret = new Uint8Array(getObject(arg0));
3555
3632
  return addHeapObject(ret);
3556
3633
  },
3634
+ __wbg_new_e9a22fda35e71844: function(arg0) {
3635
+ const ret = new ResizeObserver(getObject(arg0));
3636
+ return addHeapObject(ret);
3637
+ },
3557
3638
  __wbg_new_from_slice_a3d2629dc1826784: function(arg0, arg1) {
3558
3639
  const ret = new Uint8Array(getArrayU8FromWasm0(arg0, arg1));
3559
3640
  return addHeapObject(ret);
@@ -3568,6 +3649,10 @@ function __wbg_get_imports() {
3568
3649
  const ret = new CustomEvent(v0, getObject(arg2));
3569
3650
  return addHeapObject(ret);
3570
3651
  }, arguments); },
3652
+ __wbg_new_with_length_1763c527b2923202: function(arg0) {
3653
+ const ret = new Array(arg0 >>> 0);
3654
+ return addHeapObject(ret);
3655
+ },
3571
3656
  __wbg_new_with_str_sequence_and_options_9b8b0bee99ec6b0f: function() { return handleError(function (arg0, arg1) {
3572
3657
  const ret = new Blob(getObject(arg0), getObject(arg1));
3573
3658
  return addHeapObject(ret);
@@ -3596,10 +3681,10 @@ function __wbg_get_imports() {
3596
3681
  const ret = getObject(arg0).now();
3597
3682
  return ret;
3598
3683
  },
3599
- __wbg_observe_8dfdc060e402c3ee: function(arg0, arg1) {
3684
+ __wbg_observe_9bf210ccb1c34c0d: function(arg0, arg1) {
3600
3685
  getObject(arg0).observe(getObject(arg1));
3601
3686
  },
3602
- __wbg_observe_e3be4d31351cf78d: function(arg0, arg1) {
3687
+ __wbg_observe_b7e843e4138a0f27: function(arg0, arg1) {
3603
3688
  getObject(arg0).observe(getObject(arg1));
3604
3689
  },
3605
3690
  __wbg_offsetHeight_34f7abc1686733cc: function(arg0) {
@@ -3639,6 +3724,10 @@ function __wbg_get_imports() {
3639
3724
  const ret = getObject(arg0).performance;
3640
3725
  return isLikeNone(ret) ? 0 : addHeapObject(ret);
3641
3726
  },
3727
+ __wbg_plugin_config_schema_2af2907ba72ce2d3: function() { return handleError(function (arg0, arg1) {
3728
+ const ret = getObject(arg0).plugin_config_schema(getObject(arg1));
3729
+ return addHeapObject(ret);
3730
+ }, arguments); },
3642
3731
  __wbg_pointerId_466b1bdcaf2fe835: function(arg0) {
3643
3732
  const ret = getObject(arg0).pointerId;
3644
3733
  return ret;
@@ -3650,10 +3739,6 @@ function __wbg_get_imports() {
3650
3739
  __wbg_preventDefault_cdcfcd7e301b9702: function(arg0) {
3651
3740
  getObject(arg0).preventDefault();
3652
3741
  },
3653
- __wbg_priority_88758bdd5898853b: function(arg0) {
3654
- const ret = getObject(arg0).priority;
3655
- return isLikeNone(ret) ? 0x100000001 : (ret) >> 0;
3656
- },
3657
3742
  __wbg_prototypesetcall_bdcdcc5842e4d77d: function(arg0, arg1, arg2) {
3658
3743
  Uint8Array.prototype.set.call(getArrayU8FromWasm0(arg0, arg1), getObject(arg2));
3659
3744
  },
@@ -3706,10 +3791,10 @@ function __wbg_get_imports() {
3706
3791
  var v0 = getCachedStringFromWasm0(arg1, arg2);
3707
3792
  getObject(arg0).remove(v0);
3708
3793
  }, arguments); },
3709
- __wbg_render_warning_de851f94bd1148d6: function(arg0) {
3710
- const ret = getObject(arg0).render_warning;
3711
- return isLikeNone(ret) ? 0xFFFFFF : ret ? 1 : 0;
3712
- },
3794
+ __wbg_render_460646c5f2366ad0: function() { return handleError(function (arg0, arg1, arg2) {
3795
+ const ret = getObject(arg0).render(View.__wrap(arg1), takeObject(arg2));
3796
+ return addHeapObject(ret);
3797
+ }, arguments); },
3713
3798
  __wbg_replaceSync_54e9ce897fe6ab6a: function() { return handleError(function (arg0, arg1, arg2) {
3714
3799
  var v0 = getCachedStringFromWasm0(arg1, arg2);
3715
3800
  getObject(arg0).replaceSync(v0);
@@ -3718,7 +3803,7 @@ function __wbg_get_imports() {
3718
3803
  const ret = getObject(arg0).requestAnimationFrame(getObject(arg1));
3719
3804
  return ret;
3720
3805
  }, arguments); },
3721
- __wbg_resize_a1910c8d2f8ef15c: function() { return handleError(function (arg0) {
3806
+ __wbg_resize_82a6b7ca8db19707: function() { return handleError(function (arg0) {
3722
3807
  const ret = getObject(arg0).resize();
3723
3808
  return addHeapObject(ret);
3724
3809
  }, arguments); },
@@ -3730,17 +3815,12 @@ function __wbg_get_imports() {
3730
3815
  const ret = getObject(arg0).resolvedOptions();
3731
3816
  return addHeapObject(ret);
3732
3817
  },
3733
- __wbg_restore_130d94eafd2677ee: function() { return handleError(function (arg0, arg1, arg2) {
3818
+ __wbg_restore_11606adef45cc17d: function() { return handleError(function (arg0, arg1, arg2) {
3734
3819
  getObject(arg0).restore(getObject(arg1), getObject(arg2));
3735
3820
  }, arguments); },
3736
- __wbg_restyle_4ff132d09a3e6622: function() { return handleError(function (arg0, arg1) {
3737
- const ret = getObject(arg0).restyle(View.__wrap(arg1));
3738
- return addHeapObject(ret);
3739
- }, arguments); },
3740
- __wbg_save_9a964696e9c6aab3: function() { return handleError(function (arg0) {
3741
- const ret = getObject(arg0).save();
3742
- return addHeapObject(ret);
3743
- }, arguments); },
3821
+ __wbg_restyle_cb726e5d8e5f76c1: function(arg0) {
3822
+ getObject(arg0).restyle();
3823
+ },
3744
3824
  __wbg_scrollLeft_2b817c7719d17438: function(arg0) {
3745
3825
  const ret = getObject(arg0).scrollLeft;
3746
3826
  return ret;
@@ -3753,10 +3833,6 @@ function __wbg_get_imports() {
3753
3833
  const ret = getObject(arg0).scrollTop;
3754
3834
  return ret;
3755
3835
  },
3756
- __wbg_select_mode_98b39c356e681135: function(arg0) {
3757
- const ret = getObject(arg0).select_mode;
3758
- return addHeapObject(ret);
3759
- },
3760
3836
  __wbg_selectedIndex_b1465d243fcb7142: function(arg0) {
3761
3837
  const ret = getObject(arg0).selectedIndex;
3762
3838
  return ret;
@@ -3859,9 +3935,6 @@ function __wbg_get_imports() {
3859
3935
  __wbg_set_passive_f411e67e6f28687b: function(arg0, arg1) {
3860
3936
  getObject(arg0).passive = arg1 !== 0;
3861
3937
  },
3862
- __wbg_set_render_warning_162db1657600c5d5: function(arg0, arg1) {
3863
- getObject(arg0).render_warning = arg1 !== 0;
3864
- },
3865
3938
  __wbg_set_scrollLeft_8de8fc187e3a6808: function(arg0, arg1) {
3866
3939
  getObject(arg0).scrollLeft = arg1;
3867
3940
  },
@@ -3928,7 +4001,7 @@ function __wbg_get_imports() {
3928
4001
  const ret = typeof globalThis === 'undefined' ? null : globalThis;
3929
4002
  return isLikeNone(ret) ? 0 : addHeapObject(ret);
3930
4003
  },
3931
- __wbg_static_accessor_PSP_10e6964d9bd7a5ea: function() {
4004
+ __wbg_static_accessor_PSP_45de94a68ac00c3b: function() {
3932
4005
  const ret = psp;
3933
4006
  return addHeapObject(ret);
3934
4007
  },
@@ -3967,7 +4040,7 @@ function __wbg_get_imports() {
3967
4040
  const ret = getObject(arg0).__yew_subtree_id;
3968
4041
  return isLikeNone(ret) ? 0x100000001 : (ret) >>> 0;
3969
4042
  },
3970
- __wbg_supportedValuesOf_a6c8f1033c435486: function(arg0) {
4043
+ __wbg_supportedValuesOf_ab48364bcfbcda85: function(arg0) {
3971
4044
  const ret = Intl.supportedValuesOf(getObject(arg0));
3972
4045
  return addHeapObject(ret);
3973
4046
  },
@@ -4025,13 +4098,13 @@ function __wbg_get_imports() {
4025
4098
  getDataViewMemory0().setInt32(arg0 + 4 * 1, len1, true);
4026
4099
  getDataViewMemory0().setInt32(arg0 + 4 * 0, ptr1, true);
4027
4100
  },
4028
- __wbg_unobserve_c3413b94f5675cbc: function(arg0, arg1) {
4101
+ __wbg_unobserve_830ef62f5096e0ba: function(arg0, arg1) {
4029
4102
  getObject(arg0).unobserve(getObject(arg1));
4030
4103
  },
4031
- __wbg_unobserve_ec6c0dcbb1fa1907: function(arg0, arg1) {
4104
+ __wbg_unobserve_ff8e1a62d6fc8843: function(arg0, arg1) {
4032
4105
  getObject(arg0).unobserve(getObject(arg1));
4033
4106
  },
4034
- __wbg_update_20b7a7f4e0a7bf96: function() { return handleError(function (arg0, arg1, arg2, arg3, arg4) {
4107
+ __wbg_update_f6f25c6f6ca930fe: function() { return handleError(function (arg0, arg1, arg2, arg3, arg4) {
4035
4108
  const ret = getObject(arg0).update(View.__wrap(arg1), arg2 === 0x100000001 ? undefined : arg2, arg3 === 0x100000001 ? undefined : arg3, arg4 !== 0);
4036
4109
  return addHeapObject(ret);
4037
4110
  }, arguments); },
@@ -4107,53 +4180,53 @@ function __wbg_get_imports() {
4107
4180
  return addHeapObject(ret);
4108
4181
  },
4109
4182
  __wbindgen_cast_0000000000000001: function(arg0, arg1) {
4110
- // Cast intrinsic for `Closure(Closure { dtor_idx: 3733, function: Function { arguments: [], shim_idx: 3748, ret: NamedExternref("Promise<any>"), inner_ret: Some(NamedExternref("Promise<any>")) }, mutable: false }) -> Externref`.
4111
- const ret = makeClosure(arg0, arg1, wasm.__wasm_bindgen_func_elem_13446, __wasm_bindgen_func_elem_14349);
4183
+ // Cast intrinsic for `Closure(Closure { dtor_idx: 36, function: Function { arguments: [Externref], shim_idx: 69, ret: Unit, inner_ret: Some(Unit) }, mutable: false }) -> Externref`.
4184
+ const ret = makeClosure(arg0, arg1, wasm.__wasm_bindgen_func_elem_3134, __wasm_bindgen_func_elem_5265);
4112
4185
  return addHeapObject(ret);
4113
4186
  },
4114
4187
  __wbindgen_cast_0000000000000002: function(arg0, arg1) {
4115
- // Cast intrinsic for `Closure(Closure { dtor_idx: 39, function: Function { arguments: [Externref], shim_idx: 70, ret: Unit, inner_ret: Some(Unit) }, mutable: false }) -> Externref`.
4116
- const ret = makeClosure(arg0, arg1, wasm.__wasm_bindgen_func_elem_3157, __wasm_bindgen_func_elem_5198);
4188
+ // Cast intrinsic for `Closure(Closure { dtor_idx: 36, function: Function { arguments: [NamedExternref("Array<any>")], shim_idx: 70, ret: Unit, inner_ret: Some(Unit) }, mutable: true }) -> Externref`.
4189
+ const ret = makeMutClosure(arg0, arg1, wasm.__wasm_bindgen_func_elem_3134, __wasm_bindgen_func_elem_5266);
4117
4190
  return addHeapObject(ret);
4118
4191
  },
4119
4192
  __wbindgen_cast_0000000000000003: function(arg0, arg1) {
4120
- // Cast intrinsic for `Closure(Closure { dtor_idx: 39, function: Function { arguments: [NamedExternref("Array<any>")], shim_idx: 71, ret: Unit, inner_ret: Some(Unit) }, mutable: true }) -> Externref`.
4121
- const ret = makeMutClosure(arg0, arg1, wasm.__wasm_bindgen_func_elem_3157, __wasm_bindgen_func_elem_5199);
4193
+ // Cast intrinsic for `Closure(Closure { dtor_idx: 36, function: Function { arguments: [NamedExternref("DragEvent")], shim_idx: 70, ret: Unit, inner_ret: Some(Unit) }, mutable: true }) -> Externref`.
4194
+ const ret = makeMutClosure(arg0, arg1, wasm.__wasm_bindgen_func_elem_3134, __wasm_bindgen_func_elem_5266);
4122
4195
  return addHeapObject(ret);
4123
4196
  },
4124
4197
  __wbindgen_cast_0000000000000004: function(arg0, arg1) {
4125
- // Cast intrinsic for `Closure(Closure { dtor_idx: 39, function: Function { arguments: [NamedExternref("DragEvent")], shim_idx: 71, ret: Unit, inner_ret: Some(Unit) }, mutable: true }) -> Externref`.
4126
- const ret = makeMutClosure(arg0, arg1, wasm.__wasm_bindgen_func_elem_3157, __wasm_bindgen_func_elem_5199);
4198
+ // Cast intrinsic for `Closure(Closure { dtor_idx: 36, function: Function { arguments: [NamedExternref("FocusEvent")], shim_idx: 70, ret: Unit, inner_ret: Some(Unit) }, mutable: true }) -> Externref`.
4199
+ const ret = makeMutClosure(arg0, arg1, wasm.__wasm_bindgen_func_elem_3134, __wasm_bindgen_func_elem_5266);
4127
4200
  return addHeapObject(ret);
4128
4201
  },
4129
4202
  __wbindgen_cast_0000000000000005: function(arg0, arg1) {
4130
- // Cast intrinsic for `Closure(Closure { dtor_idx: 39, function: Function { arguments: [NamedExternref("FocusEvent")], shim_idx: 71, ret: Unit, inner_ret: Some(Unit) }, mutable: true }) -> Externref`.
4131
- const ret = makeMutClosure(arg0, arg1, wasm.__wasm_bindgen_func_elem_3157, __wasm_bindgen_func_elem_5199);
4203
+ // Cast intrinsic for `Closure(Closure { dtor_idx: 36, function: Function { arguments: [NamedExternref("MouseEvent")], shim_idx: 69, ret: Unit, inner_ret: Some(Unit) }, mutable: false }) -> Externref`.
4204
+ const ret = makeClosure(arg0, arg1, wasm.__wasm_bindgen_func_elem_3134, __wasm_bindgen_func_elem_5265);
4132
4205
  return addHeapObject(ret);
4133
4206
  },
4134
4207
  __wbindgen_cast_0000000000000006: function(arg0, arg1) {
4135
- // Cast intrinsic for `Closure(Closure { dtor_idx: 39, function: Function { arguments: [NamedExternref("MouseEvent")], shim_idx: 70, ret: Unit, inner_ret: Some(Unit) }, mutable: false }) -> Externref`.
4136
- const ret = makeClosure(arg0, arg1, wasm.__wasm_bindgen_func_elem_3157, __wasm_bindgen_func_elem_5198);
4208
+ // Cast intrinsic for `Closure(Closure { dtor_idx: 36, function: Function { arguments: [], shim_idx: 71, ret: Result(Unit), inner_ret: Some(Result(Unit)) }, mutable: true }) -> Externref`.
4209
+ const ret = makeMutClosure(arg0, arg1, wasm.__wasm_bindgen_func_elem_3134, __wasm_bindgen_func_elem_5263);
4137
4210
  return addHeapObject(ret);
4138
4211
  },
4139
4212
  __wbindgen_cast_0000000000000007: function(arg0, arg1) {
4140
- // Cast intrinsic for `Closure(Closure { dtor_idx: 39, function: Function { arguments: [], shim_idx: 72, ret: Result(Unit), inner_ret: Some(Result(Unit)) }, mutable: true }) -> Externref`.
4141
- const ret = makeMutClosure(arg0, arg1, wasm.__wasm_bindgen_func_elem_3157, __wasm_bindgen_func_elem_5196);
4213
+ // Cast intrinsic for `Closure(Closure { dtor_idx: 3750, function: Function { arguments: [], shim_idx: 3767, ret: NamedExternref("Promise<any>"), inner_ret: Some(NamedExternref("Promise<any>")) }, mutable: false }) -> Externref`.
4214
+ const ret = makeClosure(arg0, arg1, wasm.__wasm_bindgen_func_elem_13509, __wasm_bindgen_func_elem_14430);
4142
4215
  return addHeapObject(ret);
4143
4216
  },
4144
4217
  __wbindgen_cast_0000000000000008: function(arg0, arg1) {
4145
- // Cast intrinsic for `Closure(Closure { dtor_idx: 4249, function: Function { arguments: [Ref(NamedExternref("Event"))], shim_idx: 4251, ret: Unit, inner_ret: Some(Unit) }, mutable: false }) -> Externref`.
4146
- const ret = makeClosure(arg0, arg1, wasm.__wasm_bindgen_func_elem_16508, __wasm_bindgen_func_elem_16627);
4218
+ // Cast intrinsic for `Closure(Closure { dtor_idx: 4275, function: Function { arguments: [Ref(NamedExternref("Event"))], shim_idx: 4277, ret: Unit, inner_ret: Some(Unit) }, mutable: false }) -> Externref`.
4219
+ const ret = makeClosure(arg0, arg1, wasm.__wasm_bindgen_func_elem_16653, __wasm_bindgen_func_elem_16772);
4147
4220
  return addHeapObject(ret);
4148
4221
  },
4149
4222
  __wbindgen_cast_0000000000000009: function(arg0, arg1) {
4150
- // Cast intrinsic for `Closure(Closure { dtor_idx: 4328, function: Function { arguments: [], shim_idx: 4329, ret: Unit, inner_ret: Some(Unit) }, mutable: true }) -> Externref`.
4151
- const ret = makeMutClosure(arg0, arg1, wasm.__wasm_bindgen_func_elem_17165, __wasm_bindgen_func_elem_17168);
4223
+ // Cast intrinsic for `Closure(Closure { dtor_idx: 4354, function: Function { arguments: [], shim_idx: 4355, ret: Unit, inner_ret: Some(Unit) }, mutable: true }) -> Externref`.
4224
+ const ret = makeMutClosure(arg0, arg1, wasm.__wasm_bindgen_func_elem_17311, __wasm_bindgen_func_elem_17314);
4152
4225
  return addHeapObject(ret);
4153
4226
  },
4154
4227
  __wbindgen_cast_000000000000000a: function(arg0, arg1) {
4155
- // Cast intrinsic for `Closure(Closure { dtor_idx: 4332, function: Function { arguments: [Externref], shim_idx: 4333, ret: Unit, inner_ret: Some(Unit) }, mutable: true }) -> Externref`.
4156
- const ret = makeMutClosure(arg0, arg1, wasm.__wasm_bindgen_func_elem_17190, __wasm_bindgen_func_elem_17207);
4228
+ // Cast intrinsic for `Closure(Closure { dtor_idx: 4358, function: Function { arguments: [Externref], shim_idx: 4359, ret: Unit, inner_ret: Some(Unit) }, mutable: true }) -> Externref`.
4229
+ const ret = makeMutClosure(arg0, arg1, wasm.__wasm_bindgen_func_elem_17336, __wasm_bindgen_func_elem_17353);
4157
4230
  return addHeapObject(ret);
4158
4231
  },
4159
4232
  __wbindgen_cast_000000000000000b: function(arg0) {
@@ -4173,23 +4246,43 @@ function __wbg_get_imports() {
4173
4246
  return addHeapObject(ret);
4174
4247
  },
4175
4248
  __wbindgen_cast_000000000000000e: function(arg0, arg1) {
4249
+ // Cast intrinsic for `Ref(Slice(F32)) -> NamedExternref("Float32Array")`.
4250
+ const ret = getArrayF32FromWasm0(arg0, arg1);
4251
+ return addHeapObject(ret);
4252
+ },
4253
+ __wbindgen_cast_000000000000000f: function(arg0, arg1) {
4254
+ // Cast intrinsic for `Ref(Slice(F64)) -> NamedExternref("Float64Array")`.
4255
+ const ret = getArrayF64FromWasm0(arg0, arg1);
4256
+ return addHeapObject(ret);
4257
+ },
4258
+ __wbindgen_cast_0000000000000010: function(arg0, arg1) {
4259
+ // Cast intrinsic for `Ref(Slice(I32)) -> NamedExternref("Int32Array")`.
4260
+ const ret = getArrayI32FromWasm0(arg0, arg1);
4261
+ return addHeapObject(ret);
4262
+ },
4263
+ __wbindgen_cast_0000000000000011: function(arg0, arg1) {
4264
+ // Cast intrinsic for `Ref(Slice(U32)) -> NamedExternref("Uint32Array")`.
4265
+ const ret = getArrayU32FromWasm0(arg0, arg1);
4266
+ return addHeapObject(ret);
4267
+ },
4268
+ __wbindgen_cast_0000000000000012: function(arg0, arg1) {
4176
4269
  // Cast intrinsic for `Ref(Slice(U8)) -> NamedExternref("Uint8Array")`.
4177
4270
  const ret = getArrayU8FromWasm0(arg0, arg1);
4178
4271
  return addHeapObject(ret);
4179
4272
  },
4180
- __wbindgen_cast_000000000000000f: function(arg0) {
4273
+ __wbindgen_cast_0000000000000013: function(arg0) {
4181
4274
  // Cast intrinsic for `U64 -> Externref`.
4182
4275
  const ret = BigInt.asUintN(64, arg0);
4183
4276
  return addHeapObject(ret);
4184
4277
  },
4185
- __wbindgen_cast_0000000000000010: function(arg0, arg1) {
4278
+ __wbindgen_cast_0000000000000014: function(arg0, arg1) {
4186
4279
  var v0 = getArrayJsValueFromWasm0(arg0, arg1).slice();
4187
4280
  wasm.__wbindgen_export4(arg0, arg1 * 4, 4);
4188
4281
  // Cast intrinsic for `Vector(NamedExternref("string")) -> Externref`.
4189
4282
  const ret = v0;
4190
4283
  return addHeapObject(ret);
4191
4284
  },
4192
- __wbindgen_cast_0000000000000011: function(arg0, arg1) {
4285
+ __wbindgen_cast_0000000000000015: function(arg0, arg1) {
4193
4286
  var v0 = getArrayU8FromWasm0(arg0, arg1).slice();
4194
4287
  wasm.__wbindgen_export4(arg0, arg1 * 1, 1);
4195
4288
  // Cast intrinsic for `Vector(U8) -> Externref`.
@@ -4214,27 +4307,27 @@ function __wbg_get_imports() {
4214
4307
  };
4215
4308
  }
4216
4309
 
4217
- function __wasm_bindgen_func_elem_17168(arg0, arg1) {
4218
- wasm.__wasm_bindgen_func_elem_17168(arg0, arg1);
4310
+ function __wasm_bindgen_func_elem_17314(arg0, arg1) {
4311
+ wasm.__wasm_bindgen_func_elem_17314(arg0, arg1);
4219
4312
  }
4220
4313
 
4221
- function __wasm_bindgen_func_elem_14349(arg0, arg1) {
4222
- const ret = wasm.__wasm_bindgen_func_elem_14349(arg0, arg1);
4314
+ function __wasm_bindgen_func_elem_14430(arg0, arg1) {
4315
+ const ret = wasm.__wasm_bindgen_func_elem_14430(arg0, arg1);
4223
4316
  return takeObject(ret);
4224
4317
  }
4225
4318
 
4226
- function __wasm_bindgen_func_elem_5198(arg0, arg1, arg2) {
4227
- wasm.__wasm_bindgen_func_elem_5198(arg0, arg1, addHeapObject(arg2));
4319
+ function __wasm_bindgen_func_elem_5265(arg0, arg1, arg2) {
4320
+ wasm.__wasm_bindgen_func_elem_5265(arg0, arg1, addHeapObject(arg2));
4228
4321
  }
4229
4322
 
4230
- function __wasm_bindgen_func_elem_5199(arg0, arg1, arg2) {
4231
- wasm.__wasm_bindgen_func_elem_5199(arg0, arg1, addHeapObject(arg2));
4323
+ function __wasm_bindgen_func_elem_5266(arg0, arg1, arg2) {
4324
+ wasm.__wasm_bindgen_func_elem_5266(arg0, arg1, addHeapObject(arg2));
4232
4325
  }
4233
4326
 
4234
- function __wasm_bindgen_func_elem_5196(arg0, arg1) {
4327
+ function __wasm_bindgen_func_elem_5263(arg0, arg1) {
4235
4328
  try {
4236
4329
  const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
4237
- wasm.__wasm_bindgen_func_elem_5196(retptr, arg0, arg1);
4330
+ wasm.__wasm_bindgen_func_elem_5263(retptr, arg0, arg1);
4238
4331
  var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
4239
4332
  var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
4240
4333
  if (r1) {
@@ -4245,20 +4338,20 @@ function __wasm_bindgen_func_elem_5196(arg0, arg1) {
4245
4338
  }
4246
4339
  }
4247
4340
 
4248
- function __wasm_bindgen_func_elem_16627(arg0, arg1, arg2) {
4341
+ function __wasm_bindgen_func_elem_16772(arg0, arg1, arg2) {
4249
4342
  try {
4250
- wasm.__wasm_bindgen_func_elem_16627(arg0, arg1, addBorrowedObject(arg2));
4343
+ wasm.__wasm_bindgen_func_elem_16772(arg0, arg1, addBorrowedObject(arg2));
4251
4344
  } finally {
4252
4345
  heap[stack_pointer++] = undefined;
4253
4346
  }
4254
4347
  }
4255
4348
 
4256
- function __wasm_bindgen_func_elem_17207(arg0, arg1, arg2) {
4257
- wasm.__wasm_bindgen_func_elem_17207(arg0, arg1, addHeapObject(arg2));
4349
+ function __wasm_bindgen_func_elem_17353(arg0, arg1, arg2) {
4350
+ wasm.__wasm_bindgen_func_elem_17353(arg0, arg1, addHeapObject(arg2));
4258
4351
  }
4259
4352
 
4260
- function __wasm_bindgen_func_elem_24303(arg0, arg1, arg2, arg3) {
4261
- wasm.__wasm_bindgen_func_elem_24303(arg0, arg1, addHeapObject(arg2), addHeapObject(arg3));
4353
+ function __wasm_bindgen_func_elem_24562(arg0, arg1, arg2, arg3) {
4354
+ wasm.__wasm_bindgen_func_elem_24562(arg0, arg1, addHeapObject(arg2), addHeapObject(arg3));
4262
4355
  }
4263
4356
 
4264
4357
 
@@ -4393,6 +4486,21 @@ function dropObject(idx) {
4393
4486
  heap_next = idx;
4394
4487
  }
4395
4488
 
4489
+ function getArrayF32FromWasm0(ptr, len) {
4490
+ ptr = ptr >>> 0;
4491
+ return getFloat32ArrayMemory0().subarray(ptr / 4, ptr / 4 + len);
4492
+ }
4493
+
4494
+ function getArrayF64FromWasm0(ptr, len) {
4495
+ ptr = ptr >>> 0;
4496
+ return getFloat64ArrayMemory0().subarray(ptr / 8, ptr / 8 + len);
4497
+ }
4498
+
4499
+ function getArrayI32FromWasm0(ptr, len) {
4500
+ ptr = ptr >>> 0;
4501
+ return getInt32ArrayMemory0().subarray(ptr / 4, ptr / 4 + len);
4502
+ }
4503
+
4396
4504
  function getArrayJsValueFromWasm0(ptr, len) {
4397
4505
  ptr = ptr >>> 0;
4398
4506
  const mem = getDataViewMemory0();
@@ -4403,6 +4511,11 @@ function getArrayJsValueFromWasm0(ptr, len) {
4403
4511
  return result;
4404
4512
  }
4405
4513
 
4514
+ function getArrayU32FromWasm0(ptr, len) {
4515
+ ptr = ptr >>> 0;
4516
+ return getUint32ArrayMemory0().subarray(ptr / 4, ptr / 4 + len);
4517
+ }
4518
+
4406
4519
  function getArrayU8FromWasm0(ptr, len) {
4407
4520
  ptr = ptr >>> 0;
4408
4521
  return getUint8ArrayMemory0().subarray(ptr / 1, ptr / 1 + len);
@@ -4424,11 +4537,43 @@ function getDataViewMemory0() {
4424
4537
  return cachedDataViewMemory0;
4425
4538
  }
4426
4539
 
4540
+ let cachedFloat32ArrayMemory0 = null;
4541
+ function getFloat32ArrayMemory0() {
4542
+ if (cachedFloat32ArrayMemory0 === null || cachedFloat32ArrayMemory0.byteLength === 0) {
4543
+ cachedFloat32ArrayMemory0 = new Float32Array(wasm.memory.buffer);
4544
+ }
4545
+ return cachedFloat32ArrayMemory0;
4546
+ }
4547
+
4548
+ let cachedFloat64ArrayMemory0 = null;
4549
+ function getFloat64ArrayMemory0() {
4550
+ if (cachedFloat64ArrayMemory0 === null || cachedFloat64ArrayMemory0.byteLength === 0) {
4551
+ cachedFloat64ArrayMemory0 = new Float64Array(wasm.memory.buffer);
4552
+ }
4553
+ return cachedFloat64ArrayMemory0;
4554
+ }
4555
+
4556
+ let cachedInt32ArrayMemory0 = null;
4557
+ function getInt32ArrayMemory0() {
4558
+ if (cachedInt32ArrayMemory0 === null || cachedInt32ArrayMemory0.byteLength === 0) {
4559
+ cachedInt32ArrayMemory0 = new Int32Array(wasm.memory.buffer);
4560
+ }
4561
+ return cachedInt32ArrayMemory0;
4562
+ }
4563
+
4427
4564
  function getStringFromWasm0(ptr, len) {
4428
4565
  ptr = ptr >>> 0;
4429
4566
  return decodeText(ptr, len);
4430
4567
  }
4431
4568
 
4569
+ let cachedUint32ArrayMemory0 = null;
4570
+ function getUint32ArrayMemory0() {
4571
+ if (cachedUint32ArrayMemory0 === null || cachedUint32ArrayMemory0.byteLength === 0) {
4572
+ cachedUint32ArrayMemory0 = new Uint32Array(wasm.memory.buffer);
4573
+ }
4574
+ return cachedUint32ArrayMemory0;
4575
+ }
4576
+
4432
4577
  let cachedUint8ArrayMemory0 = null;
4433
4578
  function getUint8ArrayMemory0() {
4434
4579
  if (cachedUint8ArrayMemory0 === null || cachedUint8ArrayMemory0.byteLength === 0) {
@@ -4594,6 +4739,10 @@ function __wbg_finalize_init(instance, module) {
4594
4739
  wasm = instance.exports;
4595
4740
  wasmModule = module;
4596
4741
  cachedDataViewMemory0 = null;
4742
+ cachedFloat32ArrayMemory0 = null;
4743
+ cachedFloat64ArrayMemory0 = null;
4744
+ cachedInt32ArrayMemory0 = null;
4745
+ cachedUint32ArrayMemory0 = null;
4597
4746
  cachedUint8ArrayMemory0 = null;
4598
4747
  return wasm;
4599
4748
  }