From 1f695da1a4c7f4ba1c7d74d56757a46bcbb19571 Mon Sep 17 00:00:00 2001 From: Oscar Lorentzon Date: Thu, 2 Dec 2021 19:23:09 -0800 Subject: [PATCH] feat: expose data provider as a viewer property --- src/viewer/Viewer.ts | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/src/viewer/Viewer.ts b/src/viewer/Viewer.ts index c042f137e..82e9388b4 100644 --- a/src/viewer/Viewer.ts +++ b/src/viewer/Viewer.ts @@ -47,6 +47,7 @@ import { CustomCameraControls } from "./CustomCameraControls"; import { ViewerLoadEvent } from "./events/ViewerLoadEvent"; import { cameraControlsToState } from "./Modes"; import { ViewerReferenceEvent } from "./events/ViewerReferenceEvent"; +import { IDataProvider } from "../external/api"; /** * @class Viewer @@ -179,6 +180,20 @@ export class Viewer extends EventEmitter implements IViewer { this._navigator); } + /** + * Returns the data provider used by the viewer to fetch + * all contracts, ents, and buffers. + * + * @description The viewer's data provider can be set + * upon initialization through the {@link ViewerOptions.dataProvider} + * property. + * + * @returns {IDataProvider} The viewer's data provider. + */ + public get dataProvider(): IDataProvider { + return this._navigator.api.data; + } + /** * Return a boolean indicating if the viewer is in a navigable state. *