hytopia 0.10.12-prerelease โ†’ 0.10.12-prerelease-2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3) hide show
  1. package/bin/scripts.js +19 -44
  2. package/package.json +1 -1
  3. package/server.mjs +106 -106
package/bin/scripts.js CHANGED
@@ -79,7 +79,7 @@ async function build() {
79
79
  mainFields: ['module', 'main'],
80
80
  conditions: ['import', 'node'],
81
81
  banner: {
82
- js: 'import { createRequire as __cr } from "module"; import { fileURLToPath } from "url"; import { dirname } from "path"; const require = __cr(import.meta.url); const __filename = fileURLToPath(import.meta.url); const __dirname = dirname(__filename);'
82
+ js: 'import { createRequire as __cr } from "module"; import { fileURLToPath } from "url"; import { dirname as __bundlerDirname } from "path"; const require = __cr(import.meta.url); const __filename = fileURLToPath(import.meta.url); const __dirname = __bundlerDirname(__filename);'
83
83
  }
84
84
  });
85
85
  }
@@ -433,55 +433,30 @@ async function packageProject() {
433
433
  return;
434
434
  }
435
435
 
436
- // Make sure assets exist and the model optimizer has been ran
437
- const assetsDir = path.join(sourceDir, 'assets');
438
- let hasOptimizedDir = false;
436
+ // Build the project
437
+ await build();
438
+
439
+ // Test server startup & make sure optimizer has ran
440
+ console.log('๐Ÿงช Testing server startup and making sure optimizer has ran...');
441
+ logDivider();
439
442
 
440
- if (fs.existsSync(assetsDir)) {
441
- // Function to recursively check for .optimized directories
442
- const checkForOptimizedDir = (dir) => {
443
- const items = fs.readdirSync(dir);
444
-
445
- for (const item of items) {
446
- const itemPath = path.join(dir, item);
447
- const stats = fs.statSync(itemPath);
448
-
449
- if (stats.isDirectory()) {
450
- if (item === '.optimized') {
451
- hasOptimizedDir = true;
452
- return true;
453
- }
454
-
455
- // Check subdirectories
456
- if (checkForOptimizedDir(itemPath)) {
457
- return true;
458
- }
459
- }
443
+ const child = spawn(process.execPath, ['--enable-source-maps', 'index.mjs'], { stdio: 'pipe' });
444
+
445
+ await new Promise(resolve => {
446
+ child.stdout.on('data', data => {
447
+ process.stdout.write(data);
448
+
449
+ if (data.toString().includes('Server running')) {
450
+ child.kill();
451
+ resolve();
460
452
  }
461
-
462
- return false;
463
- };
464
-
465
- checkForOptimizedDir(assetsDir);
466
-
467
- if (!hasOptimizedDir) {
468
- console.warn('โŒ Error: No .optimized directories found in the assets folder.');
469
- console.warn(' Make sure your server has ran the optimizer for your models.');
470
- console.warn(' This can be done by running your server with the command `hytopia dev`');
471
- return;
472
- }
473
- } else {
474
- console.warn('โŒ Error: No assets directory found in the project.');
475
- return;
476
- }
477
-
453
+ });
454
+ });
455
+
478
456
  // Prepare to package
479
457
  const outputFile = path.join(sourceDir, `${projectName}.zip`);
480
458
 
481
459
  console.log(`๐Ÿ“ฆ Packaging project "${projectName}"...`);
482
-
483
- // Build the project
484
- await build();
485
460
 
486
461
  // Create a file to stream archive data to
487
462
  const output = fs.createWriteStream(outputFile);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "hytopia",
3
- "version": "0.10.12-prerelease",
3
+ "version": "0.10.12-prerelease-2",
4
4
  "description": "The HYTOPIA SDK makes it easy for developers to create massively multiplayer games using JavaScript or TypeScript.",
5
5
  "type": "module",
6
6
  "main": "./server.mjs",