diff --git a/.eslintrc.json b/.eslintrc.json index 8275ed8..a83b081 100644 --- a/.eslintrc.json +++ b/.eslintrc.json @@ -24,6 +24,7 @@ "@typescript-eslint/no-unused-vars": ["warn", { "argsIgnorePattern": "^_" }], "@typescript-eslint/no-explicit-any": "off", "@typescript-eslint/explicit-module-boundary-types": "off", - "@typescript-eslint/no-non-null-assertion": "off" + "@typescript-eslint/no-non-null-assertion": "off", + "@typescript-eslint/ban-ts-comment": "off" } } diff --git a/src/graphics/graphics-library/universal-rendering-context.ts b/src/graphics/graphics-library/universal-rendering-context.ts index ad9916c..f8957af 100644 --- a/src/graphics/graphics-library/universal-rendering-context.ts +++ b/src/graphics/graphics-library/universal-rendering-context.ts @@ -46,6 +46,8 @@ export const getUniversalRenderingContext = ( result.insights = { isWebGL2: result.isWebGL2, + // @ts-ignore: injected by webpack + sdf2dVersion: __VERSION__, extensions: {}, renderPasses: { distance: {}, diff --git a/src/graphics/rendering/renderer/renderer-info.ts b/src/graphics/rendering/renderer/renderer-info.ts index e76db9e..64ce9dd 100644 --- a/src/graphics/rendering/renderer/renderer-info.ts +++ b/src/graphics/rendering/renderer/renderer-info.ts @@ -2,6 +2,7 @@ export interface RendererInfo { isWebGL2: boolean; vendor?: string; renderer?: string; + sdf2dVersion?: string; extensions: { [name: string]: boolean }; floatInterpolationEnabled?: boolean; programCount?: number; diff --git a/webpack.config.js b/webpack.config.js index d5e048f..2c57e7f 100644 --- a/webpack.config.js +++ b/webpack.config.js @@ -1,5 +1,6 @@ const path = require('path'); const TerserJSPlugin = require('terser-webpack-plugin'); +const webpack = require('webpack'); const PATHS = { entryPoint: path.resolve(__dirname, 'src/main.ts'), @@ -27,6 +28,11 @@ module.exports = { 'gl-matrix': 'gl-matrix', 'resize-observer-polyfill': 'resize-observer-polyfill', }, + plugins: [ + new webpack.DefinePlugin({ + __VERSION__: JSON.stringify(require('./package.json').version), + }), + ], optimization: { minimize: true, usedExports: true,