UNPKG

@finos/perspective-viewer

Version:

The `<perspective-viewer>` Custom Element, frontend for Perspective.js

49 lines (43 loc) 1.91 kB
/****************************************************************************** * * Copyright (c) 2018, the Perspective Authors. * * This file is part of the Perspective library, distributed under the terms * of the Apache License 2.0. The full license can be found in the LICENSE * file. * */ /** * Module for the `<perspective-viewer>` custom element. This module has no * (real) exports, but importing it has a side effect: the * `PerspectiveViewerElement`class is registered as a custom element, after * which it can be used as a standard DOM element. * * Though `<perspective-viewer>` is written mostly in Rust, the nature * of WebAssembly's compilation makes it a dynamic module; in order to * guarantee that the Custom Elements extension methods are registered * synchronously with this package's import, we need perform said registration * within this wrapper module. As a result, the API methods of the Custom * Elements are all `async` (as they must await the wasm module instance). * * The documentation in this module defines the instance structure of a * `<perspective-viewer>` DOM object instantiated typically, through HTML or any * relevent DOM method e.g. `document.createElement("perspective-viewer")` or * `document.getElementsByTagName("perspective-viewer")`. * * @module perspective-viewer */ export {IPerspectiveViewerPlugin} from "./plugin"; export {HTMLPerspectiveViewerPluginElement} from "./plugin"; export {HTMLPerspectiveViewerElement, PerspectiveViewerConfig} from "./viewer"; export * from "./extensions"; export * from "./migrate"; import "./number-column-style"; import "./string-column-style"; import "mobile-drag-drop-shadow-dom"; import {HTMLPerspectiveViewerPluginElement} from "./plugin"; import {HTMLPerspectiveViewerElement} from "./viewer"; export default { HTMLPerspectiveViewerElement, HTMLPerspectiveViewerPluginElement, };