Test - esbuild
This commit is contained in:
parent
04f18630f3
commit
99923fcd0f
|
@ -9,6 +9,7 @@ const buildOptions = (override = {}) => {
|
||||||
bundle: true,
|
bundle: true,
|
||||||
minify: true,
|
minify: true,
|
||||||
keepNames: true,
|
keepNames: true,
|
||||||
|
banner: { js: '"use strict";' },
|
||||||
globalName: 'mermaid',
|
globalName: 'mermaid',
|
||||||
platform: 'browser',
|
platform: 'browser',
|
||||||
tsconfig: 'tsconfig.json',
|
tsconfig: 'tsconfig.json',
|
||||||
|
@ -45,18 +46,17 @@ exports.umdBuild = (override = { minify: true }) => {
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
|
const { Generator } = require('jison');
|
||||||
|
let fs = require('fs');
|
||||||
const jisonPlugin = {
|
const jisonPlugin = {
|
||||||
name: 'jison',
|
name: 'jison',
|
||||||
setup(build) {
|
setup(build) {
|
||||||
const { Generator } = require('jison');
|
|
||||||
let fs = require('fs');
|
|
||||||
|
|
||||||
build.onLoad({ filter: /\.jison$/ }, async (args) => {
|
build.onLoad({ filter: /\.jison$/ }, async (args) => {
|
||||||
// Load the file from the file system
|
// Load the file from the file system
|
||||||
let source = await fs.promises.readFile(args.path, 'utf8');
|
let source = await fs.promises.readFile(args.path, 'utf8');
|
||||||
|
|
||||||
try {
|
try {
|
||||||
let contents = new Generator(source, {}).generate();
|
let contents = new Generator(source, { 'token-stack': true }).generate();
|
||||||
return { contents, warnings: [] };
|
return { contents, warnings: [] };
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
return { errors: [] };
|
return { errors: [] };
|
||||||
|
|
|
@ -1,11 +1,11 @@
|
||||||
const path = require('path');
|
const path = require('path');
|
||||||
|
|
||||||
/** @type {import('ts-jest/dist/types').InitialOptionsTsJest} */
|
/** @type {import('ts-jest/dist/types').InitialOptionsTsJest} */
|
||||||
module.exports = {
|
module.exports = {
|
||||||
testEnvironment: 'jsdom',
|
testEnvironment: 'jsdom',
|
||||||
preset: 'ts-jest',
|
preset: 'ts-jest',
|
||||||
transform: {
|
transform: {
|
||||||
'^.+\\.jsx?$': ['babel-jest', { rootMode: 'upward' }],
|
'^.+\\.tsx?$': ['jest-esbuild', { banner: '"use strict";' }],
|
||||||
|
'^.+\\.jsx?$': ['jest-esbuild', { banner: '"use strict";' }],
|
||||||
'^.+\\.jison$': [
|
'^.+\\.jison$': [
|
||||||
path.resolve(__dirname, './src/jison/transformer.js'),
|
path.resolve(__dirname, './src/jison/transformer.js'),
|
||||||
{ 'token-stack': true },
|
{ 'token-stack': true },
|
||||||
|
|
|
@ -85,8 +85,6 @@
|
||||||
"@types/dompurify": "^2.3.3",
|
"@types/dompurify": "^2.3.3",
|
||||||
"@types/jest": "^28.1.7",
|
"@types/jest": "^28.1.7",
|
||||||
"@types/stylis": "^4.0.2",
|
"@types/stylis": "^4.0.2",
|
||||||
"babel-jest": "^29.0.1",
|
|
||||||
"babel-loader": "^8.2.2",
|
|
||||||
"concurrently": "^7.0.0",
|
"concurrently": "^7.0.0",
|
||||||
"coveralls": "^3.0.2",
|
"coveralls": "^3.0.2",
|
||||||
"css-to-string-loader": "^0.1.3",
|
"css-to-string-loader": "^0.1.3",
|
||||||
|
@ -108,6 +106,7 @@
|
||||||
"identity-obj-proxy": "^3.0.0",
|
"identity-obj-proxy": "^3.0.0",
|
||||||
"jest": "^28.0.3",
|
"jest": "^28.0.3",
|
||||||
"jest-environment-jsdom": "^29.0.1",
|
"jest-environment-jsdom": "^29.0.1",
|
||||||
|
"jest-esbuild": "^0.2.9",
|
||||||
"jison": "^0.4.18",
|
"jison": "^0.4.18",
|
||||||
"js-base64": "3.7.2",
|
"js-base64": "3.7.2",
|
||||||
"lint-staged": "^13.0.0",
|
"lint-staged": "^13.0.0",
|
||||||
|
|
10
yarn.lock
10
yarn.lock
|
@ -5711,7 +5711,7 @@ esbuild-windows-arm64@0.15.6:
|
||||||
resolved "https://registry.yarnpkg.com/esbuild-windows-arm64/-/esbuild-windows-arm64-0.15.6.tgz#e18a778d354fc2ca2306688f3fedad8a3e57819e"
|
resolved "https://registry.yarnpkg.com/esbuild-windows-arm64/-/esbuild-windows-arm64-0.15.6.tgz#e18a778d354fc2ca2306688f3fedad8a3e57819e"
|
||||||
integrity sha512-DB3G2x9OvFEa00jV+OkDBYpufq5x/K7a6VW6E2iM896DG4ZnAvJKQksOsCPiM1DUaa+DrijXAQ/ZOcKAqf/3Hg==
|
integrity sha512-DB3G2x9OvFEa00jV+OkDBYpufq5x/K7a6VW6E2iM896DG4ZnAvJKQksOsCPiM1DUaa+DrijXAQ/ZOcKAqf/3Hg==
|
||||||
|
|
||||||
esbuild@^0.14.39:
|
esbuild@^0.14.39, esbuild@^0.14.48:
|
||||||
version "0.14.54"
|
version "0.14.54"
|
||||||
resolved "https://registry.yarnpkg.com/esbuild/-/esbuild-0.14.54.tgz#8b44dcf2b0f1a66fc22459943dccf477535e9aa2"
|
resolved "https://registry.yarnpkg.com/esbuild/-/esbuild-0.14.54.tgz#8b44dcf2b0f1a66fc22459943dccf477535e9aa2"
|
||||||
integrity sha512-Cy9llcy8DvET5uznocPyqL3BFRrFXSVqbgpMJ9Wz8oVjZlh/zUSNbPRbov0VX7VxN2JH1Oa0uNxZ7eLRb62pJA==
|
integrity sha512-Cy9llcy8DvET5uznocPyqL3BFRrFXSVqbgpMJ9Wz8oVjZlh/zUSNbPRbov0VX7VxN2JH1Oa0uNxZ7eLRb62pJA==
|
||||||
|
@ -7860,6 +7860,14 @@ jest-environment-node@^28.1.3:
|
||||||
jest-mock "^28.1.3"
|
jest-mock "^28.1.3"
|
||||||
jest-util "^28.1.3"
|
jest-util "^28.1.3"
|
||||||
|
|
||||||
|
jest-esbuild@^0.2.9:
|
||||||
|
version "0.2.9"
|
||||||
|
resolved "https://registry.yarnpkg.com/jest-esbuild/-/jest-esbuild-0.2.9.tgz#c4c103e510400ad8a080753fd990dfe5a2a76025"
|
||||||
|
integrity sha512-GfcQgHf8XPwUydEurYTRdrhrDblVFXtgOsKmE/7KADxbsC0c5xpxQBarak4X7K0wl5XXfTmw7Qtat2V0/ssreg==
|
||||||
|
dependencies:
|
||||||
|
debug "^4.3.4"
|
||||||
|
esbuild "^0.14.48"
|
||||||
|
|
||||||
jest-get-type@^28.0.2:
|
jest-get-type@^28.0.2:
|
||||||
version "28.0.2"
|
version "28.0.2"
|
||||||
resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-28.0.2.tgz#34622e628e4fdcd793d46db8a242227901fcf203"
|
resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-28.0.2.tgz#34622e628e4fdcd793d46db8a242227901fcf203"
|
||||||
|
|
Loading…
Reference in New Issue