diff --git a/lib/template.js b/lib/template.js index b1d2bfc..610982d 100644 --- a/lib/template.js +++ b/lib/template.js @@ -85,7 +85,7 @@ function packageJsonContent({ name, version, description, cliName, cliBinName, i "build-analyze:mp:staging": "${cliBinName} build --target mp --mode staging --analyze", "build:mp": "${cliBinName} build --target mp --mode production", "build-analyze:mp": "${cliBinName} build --target mp --mode production --analyze", - "build:watch": "tsc -p tsconfig.build.json && tsc-alias -p tsconfig.build.json && npm run copy-config-json && npm run server:start:watch", + "build:watch": "node --stack-size=4096 ./scripts/build.js -p tsconfig.build.json && tsc-alias -p tsconfig.build.json && npm run copy-config-json && npm run server:start:watch", "start:web": "${cliBinName} start --target web --mode development --devMode frontend", "start:web:server": "${cliBinName} start --target web --mode development", "start:native": "${cliBinName} start --target rn --mode development --devMode frontend", @@ -97,7 +97,7 @@ function packageJsonContent({ name, version, description, cliName, cliBinName, i "build-sourcemap:web": "${cliBinName} build --target web --mode production --sourcemap", "build-analyze:web": "${cliBinName} build --target web --mode production --analyze", "build-sourcemap-analyze:web": "${cliBinName} build --target web --mode production --sourcemap --analyze", - "build": "tsc -p tsconfig.build.json && tsc-alias -p tsconfig.build.json && npm run copy-config-json", + "build": "node --stack-size=4096 ./scripts/build.js -p tsconfig.build.json && tsc-alias -p tsconfig.build.json && npm run copy-config-json", "prebuild": "npm run make:locale", "run:ios": "oak-cli run -p ios", "run:android": "oak-cli run -p android", @@ -397,7 +397,13 @@ function tsConfigBuildJsonContent() { "test", "src/pages/**/*", "src/components/**/*" - ] + ], + "oakBuildChecks": { + "context": { + "checkAsyncContext": true, + "targetModules": ["context/BackendRuntimeContext"] + } + } }`; } function tsConfigPathsJsonContent(deps) { diff --git a/src/template.ts b/src/template.ts index 61fb3c6..abe7f88 100644 --- a/src/template.ts +++ b/src/template.ts @@ -92,7 +92,7 @@ export function packageJsonContent({ "build-analyze:mp:staging": "${cliBinName} build --target mp --mode staging --analyze", "build:mp": "${cliBinName} build --target mp --mode production", "build-analyze:mp": "${cliBinName} build --target mp --mode production --analyze", - "build:watch": "tsc -p tsconfig.build.json && tsc-alias -p tsconfig.build.json && npm run copy-config-json && npm run server:start:watch", + "build:watch": "node --stack-size=4096 ./scripts/build.js -p tsconfig.build.json && tsc-alias -p tsconfig.build.json && npm run copy-config-json && npm run server:start:watch", "start:web": "${cliBinName} start --target web --mode development --devMode frontend", "start:web:server": "${cliBinName} start --target web --mode development", "start:native": "${cliBinName} start --target rn --mode development --devMode frontend", @@ -104,7 +104,7 @@ export function packageJsonContent({ "build-sourcemap:web": "${cliBinName} build --target web --mode production --sourcemap", "build-analyze:web": "${cliBinName} build --target web --mode production --analyze", "build-sourcemap-analyze:web": "${cliBinName} build --target web --mode production --sourcemap --analyze", - "build": "tsc -p tsconfig.build.json && tsc-alias -p tsconfig.build.json && npm run copy-config-json", + "build": "node --stack-size=4096 ./scripts/build.js -p tsconfig.build.json && tsc-alias -p tsconfig.build.json && npm run copy-config-json", "prebuild": "npm run make:locale", "run:ios": "oak-cli run -p ios", "run:android": "oak-cli run -p android", @@ -406,7 +406,13 @@ export function tsConfigBuildJsonContent() { "test", "src/pages/**/*", "src/components/**/*" - ] + ], + "oakBuildChecks": { + "context": { + "checkAsyncContext": true, + "targetModules": ["context/BackendRuntimeContext"] + } + } }`; } diff --git a/template/scripts/build.js b/template/scripts/build.js new file mode 100644 index 0000000..5907633 --- /dev/null +++ b/template/scripts/build.js @@ -0,0 +1,6 @@ +/* eslint-disable @typescript-eslint/no-require-imports */ +const { build } = require('oak-domain/lib/compiler/tscBuilder.js') + +const pwd = process.cwd(); + +build(pwd, process.argv); \ No newline at end of file