diff --git a/packages/preview-service/webpack.config.render_page.js b/packages/preview-service/webpack.config.render_page.js
index 88cac2b79..f85955fe3 100644
--- a/packages/preview-service/webpack.config.render_page.js
+++ b/packages/preview-service/webpack.config.render_page.js
@@ -33,6 +33,10 @@ const config = {
loader: 'babel-loader'
},
exclude: /(node_modules|bower_components)/
+ },
+ {
+ test: /\.(png|svg|jpg|jpeg|gif)$/i,
+ type: 'asset/resource'
}
]
},
diff --git a/packages/viewer-sandbox/.eslintrc.js b/packages/viewer-sandbox/.eslintrc.js
index 76f6af343..5a57524a3 100644
--- a/packages/viewer-sandbox/.eslintrc.js
+++ b/packages/viewer-sandbox/.eslintrc.js
@@ -21,6 +21,12 @@ const config = {
'prettier'
],
parser: '@typescript-eslint/parser'
+ },
+ {
+ files: '*.d.ts',
+ rules: {
+ '@typescript-eslint/no-unused-vars': 'off'
+ }
}
]
}
diff --git a/packages/viewer-sandbox/src/Sandbox.ts b/packages/viewer-sandbox/src/Sandbox.ts
index 8fbce47f8..203aa66a6 100644
--- a/packages/viewer-sandbox/src/Sandbox.ts
+++ b/packages/viewer-sandbox/src/Sandbox.ts
@@ -1,10 +1,11 @@
-import { Viewer, IViewer } from '@speckle/viewer'
-import SpeckleLineMaterial from '@speckle/viewer/dist/modules/materials/SpeckleLineMaterial'
-import { Object3D } from '@speckle/viewer/node_modules/@types/three'
+import { Viewer, SpeckleLineMaterial } from '@speckle/viewer'
+import { Object3D, LinearToneMapping } from 'three'
+import { Line2 } from 'three/examples/jsm/lines/Line2'
import { Pane } from 'tweakpane'
import UrlHelper from './UrlHelper'
+
export default class Sandbox {
- private viewer: IViewer
+ private viewer: Viewer
private pane: Pane
private tabs
@@ -19,7 +20,7 @@ export default class Sandbox {
thickLines: true,
pixelThreshold: 0.5,
exposure: 0.4,
- tonemapping: 'Linear'
+ tonemapping: LinearToneMapping
}
public constructor(viewer: Viewer) {
@@ -142,7 +143,7 @@ export default class Sandbox {
.on('change', () => {
this.viewer.scene.traverse((object: Object3D) => {
if (object.type === 'Line2') {
- ;(object.material as SpeckleLineMaterial).pixelThreshold =
+ ;((object as Line2).material as SpeckleLineMaterial).pixelThreshold =
Sandbox.sceneParams.pixelThreshold
}
})
@@ -179,7 +180,7 @@ export default class Sandbox {
const objUrls = await UrlHelper.getResourceUrls(url)
for (const url of objUrls) {
console.log(`Loading ${url}`)
- await this.viewer.loadObject(url)
+ await this.viewer.loadObject(url, undefined)
}
localStorage.setItem('last-load-url', url)
}
diff --git a/packages/viewer-sandbox/vite.config.js b/packages/viewer-sandbox/vite.config.js
index 8f8ac830a..78aba8cf0 100644
--- a/packages/viewer-sandbox/vite.config.js
+++ b/packages/viewer-sandbox/vite.config.js
@@ -5,6 +5,9 @@ const config = {
server: {
host: '0.0.0.0',
port: '3033'
+ },
+ build: {
+ target: 'esnext'
}
}
diff --git a/packages/viewer/.babelrc b/packages/viewer/.babelrc
new file mode 100644
index 000000000..fa85f7fcb
--- /dev/null
+++ b/packages/viewer/.babelrc
@@ -0,0 +1,15 @@
+{
+ "presets": [
+ [
+ "@babel/preset-env",
+ {
+ "useBuiltIns": "entry",
+ "corejs": "3",
+ "targets": {
+ "node": "12"
+ }
+ }
+ ]
+ ],
+ "ignore": ["node_modules/**/*"]
+}
diff --git a/packages/viewer/example/index.html b/packages/viewer/example/index.html
deleted file mode 100644
index eebecb9a5..000000000
--- a/packages/viewer/example/index.html
+++ /dev/null
@@ -1,98 +0,0 @@
-
-
-
-
- Speckle Viewer
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Viewer
-
Controls summary:
-
- Click an object to select it. Double click it to focus on it. Press `esc` to
- clear the selection. Press `shift-s` to toggle a section plane. Press `s`
- while the section plane is active to toggle its control mode. Double click
- anywhere outside an object to zoom extents to the entire scene.
-
-
-
-
- Postprocessing Toggle
-
- Zoom Extents
- Toggle Section Box
-
- Rotate
-
- Screenshot
-
-
-
-
- Load Object URL
-
-
-
- Dispose Everything
- View:
- Ortho/Perspective
- 3D
- Top
- Front
- Back
- Left
- Right
-
-
-
- Used Memory (MB):
- -
- / LoadProgress:
- -
- / ViewerBusy:
- idle
- / Draw Calls:
- -
-
-
-
-
-
-
diff --git a/packages/viewer/package.json b/packages/viewer/package.json
index b79d26f6c..e4695a9e7 100644
--- a/packages/viewer/package.json
+++ b/packages/viewer/package.json
@@ -27,7 +27,6 @@
"build": "NODE_ENV=production rollup --config",
"build:dev": "rollup --config",
"dev": "rollup --config --watch",
- "example": "EXAMPLE_BUILD=1 rollup --config && http-server ./example -p 3032 -o",
"prepack": "yarn build",
"lint": "eslint . --ext .js,.ts"
},
@@ -49,20 +48,20 @@
"three": "^0.140.0"
},
"devDependencies": {
- "@rollup/plugin-commonjs": "^21.0.3",
- "@rollup/plugin-node-resolve": "^13.1.3",
- "@rollup/plugin-typescript": "^8.3.2",
+ "@babel/core": "^7.18.2",
+ "@rollup/plugin-babel": "^5.3.1",
"@types/three": "^0.136.0",
"@typescript-eslint/eslint-plugin": "^5.21.0",
"@typescript-eslint/parser": "^5.21.0",
+ "core-js": "^3.21.1",
"eslint": "^8.11.0",
"eslint-config-prettier": "^8.5.0",
- "http-server": "^14.1.0",
"prettier": "^2.5.1",
+ "regenerator-runtime": "^0.13.7",
"rollup": "^2.70.1",
+ "rollup-plugin-copy": "^3.4.0",
"rollup-plugin-delete": "^2.0.0",
"rollup-plugin-rebase": "^4.1.1",
- "rollup-plugin-copy": "^3.4.0",
"rollup-plugin-terser": "^7.0.2",
"rollup-plugin-typescript2": "^0.31.2",
"typescript": "^4.5.4"
diff --git a/packages/viewer/rollup.config.js b/packages/viewer/rollup.config.js
index 7c0842b41..72f6329c8 100644
--- a/packages/viewer/rollup.config.js
+++ b/packages/viewer/rollup.config.js
@@ -1,72 +1,49 @@
-import commonjs from '@rollup/plugin-commonjs'
-import nodeResolve from '@rollup/plugin-node-resolve'
import { terser } from 'rollup-plugin-terser'
import clean from 'rollup-plugin-delete'
import pkg from './package.json'
import typescript2 from 'rollup-plugin-typescript2'
import rebasePlugin from 'rollup-plugin-rebase'
import copyPlugin from 'rollup-plugin-copy'
+import { babel } from '@rollup/plugin-babel'
+import { DEFAULT_EXTENSIONS } from '@babel/core'
const isProd = process.env.NODE_ENV === 'production'
-const isExample = !!process.env.EXAMPLE_BUILD
-
const sourcemap = isProd ? false : 'inline'
-/**
- * Build config
- * @param {boolean} isWebBuild If set to true will generate a web-ready config with everything bundled into a single file
- * @returns {import('rollup').RollupOptions}
- */
-function buildConfig(isWebBuild = false) {
- /** @type {import('rollup').RollupOptions} */
- const config = {
- input: isWebBuild ? 'src/example.js' : 'src/index.js',
- output: [
- {
- file: isWebBuild ? 'example/speckleviewer.web.js' : 'dist/speckleviewer.esm.js',
- format: 'esm',
- sourcemap
- },
- ...(isWebBuild
- ? []
- : [
- {
- file: 'dist/speckleviewer.js',
- format: 'cjs',
- sourcemap
- }
- ])
- ],
- plugins: [
- rebasePlugin({ keepName: true }),
- copyPlugin({
- targets: [{ src: './always-bundled-assets/**/*', dest: 'dist/assets' }]
- }),
- typescript2({
- tsconfigOverride: {
- sourceMap: sourcemap
- }
- }),
- ...(isWebBuild
- ? [
- // Bundling in all deps in web build
- commonjs(),
- nodeResolve()
- ]
- : [
- // Cleaning dir only inside dist
- clean({ targets: 'dist/*' })
- ]),
- ...(isProd ? [terser()] : [])
- ],
- external: isWebBuild
- ? undefined
- : // In non web build we don't want to bundle in any deps
- Object.keys(pkg.dependencies || {}).map((d) => new RegExp(`^${d}(\\/.*)?$`))
- }
-
- return config
+/** @type {import('rollup').RollupOptions} */
+const config = {
+ input: 'src/index.ts',
+ output: [
+ {
+ file: 'dist/speckleviewer.esm.js',
+ format: 'esm',
+ sourcemap
+ },
+ {
+ file: 'dist/speckleviewer.js',
+ format: 'cjs',
+ sourcemap
+ }
+ ],
+ plugins: [
+ clean({ targets: 'dist/*' }),
+ rebasePlugin({ keepName: true }),
+ copyPlugin({
+ targets: [{ src: './always-bundled-assets/**/*', dest: 'dist/assets' }]
+ }),
+ typescript2({
+ tsconfigOverride: {
+ sourceMap: sourcemap
+ }
+ }),
+ babel({
+ extensions: [...DEFAULT_EXTENSIONS, '.ts', '.tsx'],
+ babelHelpers: 'bundled'
+ }),
+ ...(isProd ? [terser()] : [])
+ ],
+ // Externalizing all deps, we don't want to bundle them in cause this is a library
+ external: Object.keys(pkg.dependencies || {}).map((d) => new RegExp(`^${d}(\\/.*)?$`))
}
-const config = isExample ? buildConfig(true) : buildConfig()
export default config
diff --git a/packages/viewer/src/IViewer.ts b/packages/viewer/src/IViewer.ts
index 2a63f4c6a..cfd095f08 100644
--- a/packages/viewer/src/IViewer.ts
+++ b/packages/viewer/src/IViewer.ts
@@ -45,7 +45,7 @@ export interface IViewer {
toggleSectionBox(): void
sectionBoxOff(): void
sectionBoxOn(): void
- zoomExtents(fit: number, transition: boolean): void
+ zoomExtents(fit?: number, transition?: boolean): void
toggleCameraProjection(): void
loadObject(url: string, token?: string, enableCaching?: boolean): Promise
diff --git a/packages/viewer/src/example.js b/packages/viewer/src/example.js
deleted file mode 100644
index 64c5cf03a..000000000
--- a/packages/viewer/src/example.js
+++ /dev/null
@@ -1,68 +0,0 @@
-/* eslint-disable */
-
-/**
- * NOT PART OF THE ACTUAL LIBRARY, ONLY USED TO GENERATE THE EXAMPLE WEB BUILD
- */
-
-import Viewer from './modules/Viewer'
-
-setInterval(() => {
- document.getElementById('info-mem').innerText =
- '' + Math.round(performance.memory.usedJSHeapSize / 1024 / 1024)
-}, 100)
-
-let v = new Viewer({ container: document.getElementById('renderer'), showStats: true })
-v.on('load-progress', (args) => {
- document.getElementById('info-progress').innerText = `${
- Math.round(1000 * args.progress) / 1000
- }`
-})
-
-v.on('busy', (isBusy) => {
- document.getElementById('info-busy').innerText = isBusy ? 'BUSY' : 'idle'
- document.body.style.cursor = isBusy ? 'progress' : 'default'
-})
-
-window.v = v
-window.addEventListener('load', () => {
- v.onWindowResize()
- const prevLoadUrl = localStorage.getItem('prevLoadUrl')
- console.log(prevLoadUrl)
- if (prevLoadUrl) document.getElementById('objectUrlInput').value = prevLoadUrl
-})
-
-window.loadData = async function LoadData(url) {
- url = url || document.getElementById('objectUrlInput').value
- localStorage.setItem('prevLoadUrl', url)
- let t0 = Date.now()
- await v.loadObject(url)
- console.log(`Finished loading in: ${(Date.now() - t0) / 1000}`)
-}
-
-v.on('select', (info) => {
- console.info(`Selection event.`)
-})
-
-v.on('object-doubleclicked', (info) => {
- console.info(`Object double click event.`)
-})
-
-v.on('section-box', (status) => {
- console.info(`Section box is now ${status ? 'on' : 'off'}.`)
-})
-
-window.viewerScreenshot = function () {
- let data = v.interactions.screenshot() // transparent png.
-
- let pop = window.open()
- pop.document.title = 'super screenshot'
- pop.document.body.style.backgroundColor = 'grey'
-
- let img = new Image()
- img.src = data
- pop.document.body.appendChild(img)
-}
-
-window.zoomFast = function () {
- v.interactions.zoomExtents(0.95, false)
-}
diff --git a/packages/viewer/src/index.js b/packages/viewer/src/index.js
deleted file mode 100644
index 8bc7dbde7..000000000
--- a/packages/viewer/src/index.js
+++ /dev/null
@@ -1,5 +0,0 @@
-import { Viewer } from './modules/Viewer'
-import Converter from './modules/converter/Converter'
-import { DefaultViewerParams } from './IViewer'
-
-export { Viewer, Converter, DefaultViewerParams }
diff --git a/packages/viewer/src/index.ts b/packages/viewer/src/index.ts
new file mode 100644
index 000000000..aed8b4f5b
--- /dev/null
+++ b/packages/viewer/src/index.ts
@@ -0,0 +1,7 @@
+import { Viewer } from './modules/Viewer'
+import Converter from './modules/converter/Converter'
+import { DefaultViewerParams, IViewer } from './IViewer'
+import SpeckleLineMaterial from './modules/materials/SpeckleLineMaterial'
+
+export { Viewer, Converter, DefaultViewerParams, SpeckleLineMaterial }
+export type { IViewer }
diff --git a/packages/viewer/src/modules/Viewer.ts b/packages/viewer/src/modules/Viewer.ts
index 551168f3b..4fa18bc9a 100644
--- a/packages/viewer/src/modules/Viewer.ts
+++ b/packages/viewer/src/modules/Viewer.ts
@@ -31,7 +31,7 @@ export class Viewer extends EventEmitter implements IViewer {
public sectionBox: SectionBox
public sceneManager: ObjectManager
public interactions: InteractionHandler
- private renderer: WebGLRenderer
+ public renderer: WebGLRenderer
public cameraHandler: CameraHandler
private sceneURL = '' // Temporary
private startupParams: ViewerParams
diff --git a/packages/viewer/tsconfig.json b/packages/viewer/tsconfig.json
index 17a03004e..5a7aae62a 100644
--- a/packages/viewer/tsconfig.json
+++ b/packages/viewer/tsconfig.json
@@ -1,7 +1,7 @@
{
"compilerOptions": {
"target": "es2019",
- "module": "ESNext",
+ "module": "es2020",
"lib": ["DOM"],
"moduleResolution": "Node",
"strict": false,
diff --git a/yarn.lock b/yarn.lock
index 4675cf4dc..a995e7575 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -217,6 +217,29 @@ __metadata:
languageName: node
linkType: hard
+"@babel/core@npm:^7.18.2":
+ version: 7.18.2
+ resolution: "@babel/core@npm:7.18.2"
+ dependencies:
+ "@ampproject/remapping": ^2.1.0
+ "@babel/code-frame": ^7.16.7
+ "@babel/generator": ^7.18.2
+ "@babel/helper-compilation-targets": ^7.18.2
+ "@babel/helper-module-transforms": ^7.18.0
+ "@babel/helpers": ^7.18.2
+ "@babel/parser": ^7.18.0
+ "@babel/template": ^7.16.7
+ "@babel/traverse": ^7.18.2
+ "@babel/types": ^7.18.2
+ convert-source-map: ^1.7.0
+ debug: ^4.1.0
+ gensync: ^1.0.0-beta.2
+ json5: ^2.2.1
+ semver: ^6.3.0
+ checksum: 14a4142c12e004cd2477b7610408d5788ee5dd821ee9e4de204cbb72d9c399d858d9deabc3d49914d5d7c2927548160c19bdc7524b1a9f6acc1ec96a8d9848dd
+ languageName: node
+ linkType: hard
+
"@babel/generator@npm:7.17.10, @babel/generator@npm:^7.17.10":
version: 7.17.10
resolution: "@babel/generator@npm:7.17.10"
@@ -228,6 +251,17 @@ __metadata:
languageName: node
linkType: hard
+"@babel/generator@npm:^7.18.2":
+ version: 7.18.2
+ resolution: "@babel/generator@npm:7.18.2"
+ dependencies:
+ "@babel/types": ^7.18.2
+ "@jridgewell/gen-mapping": ^0.3.0
+ jsesc: ^2.5.1
+ checksum: d0661e95532ddd97566d41fec26355a7b28d1cbc4df95fe80cc084c413342935911b48db20910708db39714844ddd614f61c2ec4cca3fb10181418bdcaa2e7a3
+ languageName: node
+ linkType: hard
+
"@babel/helper-annotate-as-pure@npm:^7.16.7":
version: 7.16.7
resolution: "@babel/helper-annotate-as-pure@npm:7.16.7"
@@ -261,6 +295,20 @@ __metadata:
languageName: node
linkType: hard
+"@babel/helper-compilation-targets@npm:^7.18.2":
+ version: 7.18.2
+ resolution: "@babel/helper-compilation-targets@npm:7.18.2"
+ dependencies:
+ "@babel/compat-data": ^7.17.10
+ "@babel/helper-validator-option": ^7.16.7
+ browserslist: ^4.20.2
+ semver: ^6.3.0
+ peerDependencies:
+ "@babel/core": ^7.0.0
+ checksum: 4f02e79f20c0b3f8db5049ba8c35027c41ccb3fc7884835d04e49886538e0f55702959db1bb75213c94a5708fec2dc81a443047559a4f184abb884c72c0059b4
+ languageName: node
+ linkType: hard
+
"@babel/helper-create-class-features-plugin@npm:^7.16.10, @babel/helper-create-class-features-plugin@npm:^7.16.7, @babel/helper-create-class-features-plugin@npm:^7.17.6, @babel/helper-create-class-features-plugin@npm:^7.17.9":
version: 7.17.9
resolution: "@babel/helper-create-class-features-plugin@npm:7.17.9"
@@ -317,6 +365,13 @@ __metadata:
languageName: node
linkType: hard
+"@babel/helper-environment-visitor@npm:^7.18.2":
+ version: 7.18.2
+ resolution: "@babel/helper-environment-visitor@npm:7.18.2"
+ checksum: 1a9c8726fad454a082d077952a90f17188e92eabb3de236cb4782c49b39e3f69c327e272b965e9a20ff8abf37d30d03ffa6fd7974625a6c23946f70f7527f5e9
+ languageName: node
+ linkType: hard
+
"@babel/helper-explode-assignable-expression@npm:^7.16.7":
version: 7.16.7
resolution: "@babel/helper-explode-assignable-expression@npm:7.16.7"
@@ -379,6 +434,22 @@ __metadata:
languageName: node
linkType: hard
+"@babel/helper-module-transforms@npm:^7.18.0":
+ version: 7.18.0
+ resolution: "@babel/helper-module-transforms@npm:7.18.0"
+ dependencies:
+ "@babel/helper-environment-visitor": ^7.16.7
+ "@babel/helper-module-imports": ^7.16.7
+ "@babel/helper-simple-access": ^7.17.7
+ "@babel/helper-split-export-declaration": ^7.16.7
+ "@babel/helper-validator-identifier": ^7.16.7
+ "@babel/template": ^7.16.7
+ "@babel/traverse": ^7.18.0
+ "@babel/types": ^7.18.0
+ checksum: 824c3967c08d75bb36adc18c31dcafebcd495b75b723e2e17c6185e88daf5c6db62a6a75d9f791b5f38618a349e7cb32503e715a1b9a4e8bad4d0f43e3e6b523
+ languageName: node
+ linkType: hard
+
"@babel/helper-optimise-call-expression@npm:^7.16.7":
version: 7.16.7
resolution: "@babel/helper-optimise-call-expression@npm:7.16.7"
@@ -483,6 +554,17 @@ __metadata:
languageName: node
linkType: hard
+"@babel/helpers@npm:^7.18.2":
+ version: 7.18.2
+ resolution: "@babel/helpers@npm:7.18.2"
+ dependencies:
+ "@babel/template": ^7.16.7
+ "@babel/traverse": ^7.18.2
+ "@babel/types": ^7.18.2
+ checksum: 94620242f23f6d5f9b83a02b1aa1632ffb05b0815e1bb53d3b46d64aa8e771066bba1db8bd267d9091fb00134cfaeda6a8d69d1d4cc2c89658631adfa077ae70
+ languageName: node
+ linkType: hard
+
"@babel/highlight@npm:^7.16.7":
version: 7.17.9
resolution: "@babel/highlight@npm:7.17.9"
@@ -503,6 +585,15 @@ __metadata:
languageName: node
linkType: hard
+"@babel/parser@npm:^7.18.0":
+ version: 7.18.4
+ resolution: "@babel/parser@npm:7.18.4"
+ bin:
+ parser: ./bin/babel-parser.js
+ checksum: e05b2dc720c4b200e088258f3c2a2de5041c140444edc38181d1217b10074e881a7133162c5b62356061f26279f08df5a06ec14c5842996ee8601ad03c57a44f
+ languageName: node
+ linkType: hard
+
"@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@npm:^7.16.7":
version: 7.16.7
resolution: "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@npm:7.16.7"
@@ -1438,6 +1529,24 @@ __metadata:
languageName: node
linkType: hard
+"@babel/traverse@npm:^7.18.0, @babel/traverse@npm:^7.18.2":
+ version: 7.18.2
+ resolution: "@babel/traverse@npm:7.18.2"
+ dependencies:
+ "@babel/code-frame": ^7.16.7
+ "@babel/generator": ^7.18.2
+ "@babel/helper-environment-visitor": ^7.18.2
+ "@babel/helper-function-name": ^7.17.9
+ "@babel/helper-hoist-variables": ^7.16.7
+ "@babel/helper-split-export-declaration": ^7.16.7
+ "@babel/parser": ^7.18.0
+ "@babel/types": ^7.18.2
+ debug: ^4.1.0
+ globals: ^11.1.0
+ checksum: e21c2d550bf610406cf21ef6fbec525cb1d80b9d6d71af67552478a24ee371203cb4025b23b110ae7288a62a874ad5898daad19ad23daa95dfc8ab47a47a092f
+ languageName: node
+ linkType: hard
+
"@babel/types@npm:7.17.10, @babel/types@npm:^7.0.0, @babel/types@npm:^7.0.0-beta.49, @babel/types@npm:^7.16.0, @babel/types@npm:^7.16.7, @babel/types@npm:^7.16.8, @babel/types@npm:^7.17.0, @babel/types@npm:^7.17.10, @babel/types@npm:^7.4.4, @babel/types@npm:^7.7.0, @babel/types@npm:^7.8.3":
version: 7.17.10
resolution: "@babel/types@npm:7.17.10"
@@ -1448,6 +1557,16 @@ __metadata:
languageName: node
linkType: hard
+"@babel/types@npm:^7.18.0, @babel/types@npm:^7.18.2":
+ version: 7.18.4
+ resolution: "@babel/types@npm:7.18.4"
+ dependencies:
+ "@babel/helper-validator-identifier": ^7.16.7
+ to-fast-properties: ^2.0.0
+ checksum: 85df59beb99c1b95e9e41590442f2ffa1e5b1b558d025489db40c9f7c906bd03a17da26c3ec486e5800e80af27c42ca7eee9506d9212ab17766d2d68d30fbf52
+ languageName: node
+ linkType: hard
+
"@colors/colors@npm:1.5.0":
version: 1.5.0
resolution: "@colors/colors@npm:1.5.0"
@@ -1694,6 +1813,17 @@ __metadata:
languageName: node
linkType: hard
+"@jridgewell/gen-mapping@npm:^0.3.0":
+ version: 0.3.1
+ resolution: "@jridgewell/gen-mapping@npm:0.3.1"
+ dependencies:
+ "@jridgewell/set-array": ^1.0.0
+ "@jridgewell/sourcemap-codec": ^1.4.10
+ "@jridgewell/trace-mapping": ^0.3.9
+ checksum: e9e7bb3335dea9e60872089761d4e8e089597360cdb1af90370e9d53b7d67232c1e0a3ab65fbfef4fc785745193fbc56bff9f3a6cab6c6ce3f15e12b4191f86b
+ languageName: node
+ linkType: hard
+
"@jridgewell/resolve-uri@npm:^3.0.3":
version: 3.0.6
resolution: "@jridgewell/resolve-uri@npm:3.0.6"
@@ -2201,20 +2331,6 @@ __metadata:
languageName: node
linkType: hard
-"@rollup/plugin-typescript@npm:^8.3.2":
- version: 8.3.2
- resolution: "@rollup/plugin-typescript@npm:8.3.2"
- dependencies:
- "@rollup/pluginutils": ^3.1.0
- resolve: ^1.17.0
- peerDependencies:
- rollup: ^2.14.0
- tslib: "*"
- typescript: ">=3.7.0"
- checksum: bdbf3c11d26b04244228cbe2bd48dbac66044c16df4ee3658276480b1e050c33f9bc72ef7b6e05a88c4a48db3d5359ab6a3acf7ff288482af29863478d014881
- languageName: node
- linkType: hard
-
"@rollup/pluginutils@npm:^3.1.0":
version: 3.1.0
resolution: "@rollup/pluginutils@npm:3.1.0"
@@ -2607,21 +2723,21 @@ __metadata:
version: 0.0.0-use.local
resolution: "@speckle/viewer@workspace:packages/viewer"
dependencies:
- "@rollup/plugin-commonjs": ^21.0.3
- "@rollup/plugin-node-resolve": ^13.1.3
- "@rollup/plugin-typescript": ^8.3.2
+ "@babel/core": ^7.18.2
+ "@rollup/plugin-babel": ^5.3.1
"@speckle/objectloader": "workspace:^"
"@types/three": ^0.136.0
"@typescript-eslint/eslint-plugin": ^5.21.0
"@typescript-eslint/parser": ^5.21.0
camera-controls: ^1.33.1
+ core-js: ^3.21.1
eslint: ^8.11.0
eslint-config-prettier: ^8.5.0
hold-event: ^0.1.0
- http-server: ^14.1.0
lodash.debounce: ^4.0.8
prettier: ^2.5.1
rainbowvis.js: ^1.0.1
+ regenerator-runtime: ^0.13.7
rollup: ^2.70.1
rollup-plugin-copy: ^3.4.0
rollup-plugin-delete: ^2.0.0
@@ -13719,13 +13835,6 @@ __metadata:
languageName: node
linkType: hard
-"kleur@npm:^3.0.3":
- version: 3.0.3
- resolution: "kleur@npm:3.0.3"
- checksum: df82cd1e172f957bae9c536286265a5cdbd5eeca487cb0a3b2a7b41ef959fc61f8e7c0e9aeea9c114ccf2c166b6a8dd45a46fd619c1c569d210ecd2765ad5169
- languageName: node
- linkType: hard
-
"knex@npm:^2.0.0":
version: 2.0.0
resolution: "knex@npm:2.0.0"