From 529c325cc4a20c6d7b89e4124ff8d1d459b1d5e1 Mon Sep 17 00:00:00 2001 From: Ron Pechuk Date: Thu, 20 Feb 2025 19:34:01 -0800 Subject: [PATCH] fix: add better typing to ast-to-dom and InstantiateContext constructor --- packages/spec/src/ast-to-dom.js | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/packages/spec/src/ast-to-dom.js b/packages/spec/src/ast-to-dom.js index b1774eb0..1006dd21 100644 --- a/packages/spec/src/ast-to-dom.js +++ b/packages/spec/src/ast-to-dom.js @@ -7,10 +7,7 @@ import { error } from './util.js'; /** * Generate a running web application (DOM content) for a Mosaic spec AST. * @param {SpecNode} ast Mosaic AST root node. - * @param {object} [options] Instantiation options. - * @param {string} [options.baseURL] The base URL for loading data files. - * @param {any[]} [options.plotDefaults] Array of default plot attributes. - * @param {Map} [options.params] A map of predefined Params/Selections. + * @param {ConstructorParameters[0]} [options] Instantiation options. * @returns {Promise<{ * element: HTMLElement | SVGSVGElement; * params: Map; @@ -54,6 +51,14 @@ export async function astToDOM(ast, options) { } export class InstantiateContext { + /** + * Create a new InstantiateContext instance. + * @param {object} options Optional instantiation options. + * @param {string} [options.baseURL] The base URL for loading data files. + * @param {any[]} [options.plotDefaults] Array of default plot attributes. + * @param {Map} [options.params] A map of predefined Params/Selections. + * @param {ReturnType} [options.api] The context to be used for vgplot API methods. + */ constructor({ api = createAPIContext(), plotDefaults = [],