From 437e1558ec8bdeafa987ddea2add8380b1197b3f Mon Sep 17 00:00:00 2001 From: Kristaps Fabians Geikins Date: Thu, 2 Jun 2022 18:13:32 +0300 Subject: [PATCH] fix: fixing all builds that broke with the new viewer (#788) builds fix + viewer logic fixes --- .../webpack.config.render_page.js | 4 + packages/viewer-sandbox/.eslintrc.js | 6 + packages/viewer-sandbox/src/Sandbox.ts | 15 +- packages/viewer-sandbox/vite.config.js | 3 + packages/viewer/.babelrc | 15 ++ packages/viewer/example/index.html | 98 ----------- packages/viewer/package.json | 11 +- packages/viewer/rollup.config.js | 95 ++++------- packages/viewer/src/IViewer.ts | 2 +- packages/viewer/src/example.js | 68 -------- packages/viewer/src/index.js | 5 - packages/viewer/src/index.ts | 7 + packages/viewer/src/modules/Viewer.ts | 2 +- packages/viewer/tsconfig.json | 2 +- yarn.lock | 159 +++++++++++++++--- 15 files changed, 221 insertions(+), 271 deletions(-) create mode 100644 packages/viewer/.babelrc delete mode 100644 packages/viewer/example/index.html delete mode 100644 packages/viewer/src/example.js delete mode 100644 packages/viewer/src/index.js create mode 100644 packages/viewer/src/index.ts 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. -

-
-
- - - - - -
-
- - -
-
- - View: - - - - - - - -
- -
- 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"