Complete room UI and protocol integration, move game definitions and resources behind bundle entries, publish authoritative version XML, and document single-game builds. Include all current resource changes and experiment artifacts.
22 lines
831 B
JavaScript
22 lines
831 B
JavaScript
import { resolve } from 'node:path';
|
|
import { fileURLToPath } from 'node:url';
|
|
import { scanImportBoundaries } from './lib/import-boundaries.mjs';
|
|
|
|
const projectDir = resolve(fileURLToPath(new URL('..', import.meta.url)));
|
|
const violations = scanImportBoundaries({
|
|
frameworkDir: resolve(projectDir, 'YouleNexus/assets/framework'),
|
|
gamesDir: resolve(projectDir, 'YouleNexus/assets/games'),
|
|
publicDirs: [resolve(projectDir, 'YouleNexus/assets/scripts')],
|
|
appDir: resolve(projectDir, 'YouleNexus/assets/app'),
|
|
tsconfigPath: resolve(projectDir, 'tsconfig.framework.json'),
|
|
});
|
|
|
|
if (violations.length > 0) {
|
|
for (const { file, specifier, message } of violations) {
|
|
console.error(`[import-boundaries] ${file}: ${specifier} — ${message}`);
|
|
}
|
|
process.exitCode = 1;
|
|
} else {
|
|
console.log('[import-boundaries] OK');
|
|
}
|