@beatbax/engine 0.1.1 → 0.3.0

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 (41) hide show
  1. package/dist/.tsbuildinfo +1 -1
  2. package/dist/audio/playback.d.ts +20 -0
  3. package/dist/audio/playback.d.ts.map +1 -1
  4. package/dist/audio/playback.js +196 -23
  5. package/dist/audio/playback.js.map +1 -1
  6. package/dist/export/jsonExport.d.ts.map +1 -1
  7. package/dist/export/jsonExport.js +11 -9
  8. package/dist/export/jsonExport.js.map +1 -1
  9. package/dist/export/midiExport.d.ts.map +1 -1
  10. package/dist/export/midiExport.js +13 -11
  11. package/dist/export/midiExport.js.map +1 -1
  12. package/dist/export/ugeWriter.d.ts.map +1 -1
  13. package/dist/export/ugeWriter.js +40 -38
  14. package/dist/export/ugeWriter.js.map +1 -1
  15. package/dist/export/wavWriter.d.ts.map +1 -1
  16. package/dist/export/wavWriter.js +8 -6
  17. package/dist/export/wavWriter.js.map +1 -1
  18. package/dist/index.d.ts.map +1 -1
  19. package/dist/index.js +32 -30
  20. package/dist/index.js.map +1 -1
  21. package/dist/parser/peggy/generated/parser.d.ts.map +1 -1
  22. package/dist/parser/peggy/generated/parser.js +20 -38
  23. package/dist/parser/peggy/generated/parser.js.map +1 -1
  24. package/dist/parser/peggy/index.d.ts.map +1 -1
  25. package/dist/parser/peggy/index.js +49 -1
  26. package/dist/parser/peggy/index.js.map +1 -1
  27. package/dist/song/resolver.d.ts.map +1 -1
  28. package/dist/song/resolver.js +18 -0
  29. package/dist/song/resolver.js.map +1 -1
  30. package/dist/util/diag.d.ts.map +1 -1
  31. package/dist/util/diag.js +4 -2
  32. package/dist/util/diag.js.map +1 -1
  33. package/dist/util/index.d.ts +6 -0
  34. package/dist/util/index.d.ts.map +1 -0
  35. package/dist/util/index.js +8 -0
  36. package/dist/util/index.js.map +1 -0
  37. package/dist/util/logger.d.ts +115 -0
  38. package/dist/util/logger.d.ts.map +1 -0
  39. package/dist/util/logger.js +392 -0
  40. package/dist/util/logger.js.map +1 -0
  41. package/package.json +1 -1
package/dist/index.js CHANGED
@@ -2,6 +2,8 @@ import { readFileSync, writeFileSync, mkdirSync, existsSync } from 'fs';
2
2
  import { parse } from './parser/index.js';
3
3
  import { exportJSON, exportMIDI, exportWAV } from './export/index.js';
4
4
  import { warn, error } from './util/diag.js';
5
+ import { createLogger } from './util/logger.js';
6
+ const log = createLogger('engine-play');
5
7
  /**
6
8
  * Wait for a directory to be ready (exists and is accessible).
7
9
  * Uses polling with exponential backoff up to a maximum timeout.
@@ -81,7 +83,7 @@ export async function playFile(path, options = {}) {
81
83
  const src = readFileSync(path, 'utf8');
82
84
  const ast = parse(src);
83
85
  if (options.verbose) {
84
- console.log('Parsed song AST:', JSON.stringify(ast, null, 2));
86
+ log.debug('Parsed song AST', { ast: JSON.stringify(ast, null, 2) });
85
87
  }
86
88
  const isNode = typeof window === 'undefined';
87
89
  const noBrowser = options.noBrowser ||
@@ -89,7 +91,7 @@ export async function playFile(path, options = {}) {
89
91
  (isNode && !options.browser && options.backend !== 'browser');
90
92
  // Attempt headless playback
91
93
  if (noBrowser) {
92
- console.log('Rendering song using native PCM renderer...');
94
+ log.info('Rendering song using native PCM renderer...');
93
95
  try {
94
96
  const { resolveSongAsync } = await import('./song/resolver.js');
95
97
  const { renderSongToPCM } = await import('./audio/pcmRenderer.js');
@@ -147,9 +149,9 @@ export async function playFile(path, options = {}) {
147
149
  }
148
150
  const cliUrl = url.pathToFileURL(cliPath).href;
149
151
  const { playAudioBuffer } = await import(cliUrl);
150
- console.log('Playing audio via system speakers...');
152
+ log.info('Playing audio via system speakers...');
151
153
  if (ast.play?.repeat) {
152
- console.log('Repeat requested by play directive — looping until process exit (Ctrl-C to stop)');
154
+ log.info('Repeat requested by play directive — looping until process exit (Ctrl-C to stop)');
153
155
  // Loop playback indefinitely; user may interrupt with Ctrl-C
154
156
  // Play sequentially to avoid overlapping audio
155
157
  while (true) {
@@ -159,13 +161,13 @@ export async function playFile(path, options = {}) {
159
161
  }
160
162
  else {
161
163
  await playAudioBuffer(samples, { channels: 2, sampleRate }); // Use stereo
162
- console.log('[OK] Playback complete');
164
+ log.info('[OK] Playback complete');
163
165
  }
164
166
  }
165
167
  catch (err) {
166
168
  error('engine', 'Failed to play audio: ' + (err && err.message ? err.message : String(err)));
167
- console.log('\nTip: Install speaker module: npm install --workspace=packages/cli speaker');
168
- console.log('Or use "export wav" to export to WAV file instead.');
169
+ log.info('\nTip: Install speaker module: npm install --workspace=packages/cli speaker');
170
+ log.info('Or use "export wav" to export to WAV file instead.');
169
171
  process.exitCode = 1;
170
172
  }
171
173
  return;
@@ -187,13 +189,13 @@ export async function playFile(path, options = {}) {
187
189
  });
188
190
  const p = new Player(ctx);
189
191
  await p.playAST(ast);
190
- console.log('[OK] Playback started (WebAudio)');
192
+ log.info('[OK] Playback started (WebAudio)');
191
193
  }
192
194
  catch (err) {
193
195
  // WebAudio not available in Node.js environment
194
196
  if (options.browser) {
195
197
  // User explicitly requested browser playback
196
- console.log('Launching browser-based playback with Vite dev server...');
198
+ log.info('Launching browser-based playback with Vite dev server...');
197
199
  try {
198
200
  // Resolve imports before copying to browser (imports won't work in browser context)
199
201
  const pathModule = await import('path');
@@ -205,12 +207,12 @@ export async function playFile(path, options = {}) {
205
207
  const remoteImports = ast.imports.filter(imp => !isLocalImport(imp.source));
206
208
  // Warn about local imports - browser will error when trying to resolve them
207
209
  if (localImports.length > 0) {
208
- console.log(`⚠️ Warning: This song contains ${localImports.length} local file import(s) which will be blocked by browser security.`);
209
- console.log(' The browser will display an error when attempting to load this song.');
210
- console.log(' To play this song in the browser, replace local imports with remote imports (https:// or github:).');
210
+ log.warn(`⚠️ Warning: This song contains ${localImports.length} local file import(s) which will be blocked by browser security.`);
211
+ log.warn(' The browser will display an error when attempting to load this song.');
212
+ log.warn(' To play this song in the browser, replace local imports with remote imports (https:// or github:).');
211
213
  }
212
214
  if (remoteImports.length > 0) {
213
- console.log(`Browser will resolve ${remoteImports.length} remote import(s) at runtime`);
215
+ log.info(`Browser will resolve ${remoteImports.length} remote import(s) at runtime`);
214
216
  }
215
217
  // Send source as-is to browser - let browser error on local imports for clear user feedback
216
218
  resolvedSrc = src;
@@ -229,7 +231,7 @@ export async function playFile(path, options = {}) {
229
231
  const outPath = pathModule.join(outDir, basename);
230
232
  // Start Vite dev server in apps/web-ui
231
233
  const viteDir = pathModule.join(process.cwd(), 'apps', 'web-ui');
232
- console.log('Starting Vite dev server...');
234
+ log.info('Starting Vite dev server...');
233
235
  try {
234
236
  const isWindows = process.platform === 'win32';
235
237
  const server = child.spawn('npm', ['run', 'dev'], {
@@ -246,27 +248,27 @@ export async function playFile(path, options = {}) {
246
248
  // Wait for output directory to be ready and Vite server to start
247
249
  try {
248
250
  await waitForDirectory(outDir, 10000);
249
- console.log('Output directory ready');
251
+ log.debug('Output directory ready');
250
252
  }
251
253
  catch (err) {
252
254
  warn('engine', `Directory not ready, proceeding anyway: ${err}`);
253
255
  }
254
256
  // Write the resolved source file
255
257
  writeFileSync(outPath, resolvedSrc, 'utf8');
256
- console.log(`Resolved song written to: ${outPath}`);
258
+ log.debug(`Resolved song written to: ${outPath}`);
257
259
  // Wait for Vite server to be ready before opening browser
258
260
  try {
259
261
  await waitForViteServer('http://localhost:5173', 10000);
260
- console.log('Vite dev server is ready');
262
+ log.debug('Vite dev server is ready');
261
263
  }
262
264
  catch (err) {
263
265
  warn('engine', `Vite server may not be ready: ${err}`);
264
- console.log('Waiting additional 2 seconds before opening browser...');
266
+ log.debug('Waiting additional 2 seconds before opening browser...');
265
267
  await new Promise(resolve => setTimeout(resolve, 2000));
266
268
  }
267
269
  // Open browser
268
270
  const url = `http://localhost:5173/?song=/songs/${encodeURIComponent(basename)}`;
269
- console.log('Opening web UI at', url);
271
+ log.info('Opening web UI at', url);
270
272
  // Open default browser (cross-platform)
271
273
  const platform = process.platform;
272
274
  let cmd = '';
@@ -280,29 +282,29 @@ export async function playFile(path, options = {}) {
280
282
  child.exec(cmd, (err) => {
281
283
  if (err) {
282
284
  error('engine', 'Failed to open browser: ' + (err.message ?? String(err)));
283
- console.log('Please open the URL in your browser:', url);
285
+ log.info('Please open the URL in your browser:', url);
284
286
  }
285
287
  });
286
288
  }
287
289
  catch (e) {
288
- console.log('Please open the URL in your browser:', url);
290
+ log.info('Please open the URL in your browser:', url);
289
291
  }
290
292
  }
291
293
  catch (err) {
292
294
  error('engine', 'Failed to launch browser-based playback: ' + (err && err.message ? err.message : String(err)));
293
- console.log('Please run manually: cd apps/web-ui && npm run dev');
295
+ log.info('Please run manually: cd apps/web-ui && npm run dev');
294
296
  }
295
297
  }
296
298
  else {
297
299
  // Default: show helpful message instead of auto-launching
298
- console.log('\n[!] CLI playback not available in Node.js environment.');
299
- console.log('\nPlayback options:');
300
- console.log(` - Browser playback: node bin/beatbax play ${path} --browser`);
301
- console.log(` - Headless playback: node bin/beatbax play ${path} --headless`);
302
- console.log(` - Direct command: node packages/cli/dist/cli.js play ${path} --headless`);
303
- console.log(' - Web UI: cd apps/web-ui && npm run dev (then load your song)');
304
- console.log('\nNote: Use direct node commands rather than npm scripts for flag arguments');
305
- console.log(' (npm strips flags like --headless due to argument passing limitations)\n');
300
+ log.info('\n[!] CLI playback not available in Node.js environment.');
301
+ log.info('\nPlayback options:');
302
+ log.info(` - Browser playback: node bin/beatbax play ${path} --browser`);
303
+ log.info(` - Headless playback: node bin/beatbax play ${path} --headless`);
304
+ log.info(` - Direct command: node packages/cli/dist/cli.js play ${path} --headless`);
305
+ log.info(' - Web UI: cd apps/web-ui && npm run dev (then load your song)');
306
+ log.info('\nNote: Use direct node commands rather than npm scripts for flag arguments');
307
+ log.info(' (npm strips flags like --headless due to argument passing limitations)\n');
306
308
  process.exitCode = 1;
307
309
  }
308
310
  }
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"parser.d.ts","sourceRoot":"","sources":["../../../../src/parser/peggy/generated/parser.ts"],"names":[],"mappings":"AAcA,iBAAS,eAAe,CAAC,OAAO,KAAA,EAAE,QAAQ,KAAA,EAAE,KAAK,KAAA,EAAE,QAAQ,KAAA,SAW1D;kBAXQ,eAAe;;;AA6JxB,iBAAS,SAAS,CAAC,KAAK,KAAA,EAAE,OAAO,KAAA,OAwvLhC;AAED,QAAA,MAAM,qBAAqB,UAE1B,CAAC;AAEF,OAAO,EACL,qBAAqB,IAAI,UAAU,EACnC,eAAe,IAAI,WAAW,EAC9B,SAAS,IAAI,KAAK,EACnB,CAAC"}
1
+ {"version":3,"file":"parser.d.ts","sourceRoot":"","sources":["../../../../src/parser/peggy/generated/parser.ts"],"names":[],"mappings":"AAcA,iBAAS,eAAe,CAAC,OAAO,KAAA,EAAE,QAAQ,KAAA,EAAE,KAAK,KAAA,EAAE,QAAQ,KAAA,SAW1D;kBAXQ,eAAe;;;AA6JxB,iBAAS,SAAS,CAAC,KAAK,KAAA,EAAE,OAAO,KAAA,OAwuLhC;AAED,QAAA,MAAM,qBAAqB,UAE1B,CAAC;AAEF,OAAO,EACL,qBAAqB,IAAI,UAAU,EACnC,eAAe,IAAI,WAAW,EAC9B,SAAS,IAAI,KAAK,EACnB,CAAC"}
@@ -284,8 +284,9 @@ function peg$parse(input, options) {
284
284
  var peg$f10 = function (path) {
285
285
  return { nodeType: "ImportStmt", source: path, loc: loc(location()) };
286
286
  };
287
- var peg$f11 = function (args) {
288
- return { nodeType: "PlayStmt", args: args ? args[1] : "", loc: loc(location()) };
287
+ var peg$f11 = function (ws, rest) {
288
+ const args = rest ? rest.trim() : "";
289
+ return { nodeType: "PlayStmt", args: args, loc: loc(location()) };
289
290
  };
290
291
  var peg$f12 = function (fmt, path) {
291
292
  return { nodeType: "ExportStmt", format: fmt, path, loc: loc(location()) };
@@ -1376,7 +1377,7 @@ function peg$parse(input, options) {
1376
1377
  return s0;
1377
1378
  }
1378
1379
  function peg$parsePlayStmt() {
1379
- var s0, s1, s2, s3, s4, s5;
1380
+ var s0, s1, s2, s3, s4;
1380
1381
  var key = peg$currPos * 73 + 12;
1381
1382
  var cached = peg$resultsCache[key];
1382
1383
  if (cached) {
@@ -1384,58 +1385,39 @@ function peg$parse(input, options) {
1384
1385
  return cached.result;
1385
1386
  }
1386
1387
  s0 = peg$currPos;
1387
- s1 = peg$currPos;
1388
- s2 = peg$currPos;
1389
1388
  if (input.substr(peg$currPos, 4) === peg$c8) {
1390
- s3 = peg$c8;
1389
+ s1 = peg$c8;
1391
1390
  peg$currPos += 4;
1392
1391
  }
1393
1392
  else {
1394
- s3 = peg$FAILED;
1393
+ s1 = peg$FAILED;
1395
1394
  if (peg$silentFails === 0) {
1396
1395
  peg$fail(peg$e8);
1397
1396
  }
1398
1397
  }
1399
- if (s3 !== peg$FAILED) {
1400
- s4 = peg$currPos;
1398
+ if (s1 !== peg$FAILED) {
1399
+ s2 = peg$currPos;
1401
1400
  peg$silentFails++;
1402
- s5 = peg$parseIdentChar();
1401
+ s3 = peg$parseIdentChar();
1403
1402
  peg$silentFails--;
1404
- if (s5 === peg$FAILED) {
1405
- s4 = undefined;
1403
+ if (s3 === peg$FAILED) {
1404
+ s2 = undefined;
1406
1405
  }
1407
1406
  else {
1408
- peg$currPos = s4;
1409
- s4 = peg$FAILED;
1407
+ peg$currPos = s2;
1408
+ s2 = peg$FAILED;
1410
1409
  }
1411
- if (s4 !== peg$FAILED) {
1412
- s3 = [s3, s4];
1413
- s2 = s3;
1410
+ if (s2 !== peg$FAILED) {
1411
+ s3 = peg$parse_();
1412
+ s4 = peg$parseRestOfLine();
1413
+ peg$savedPos = s0;
1414
+ s0 = peg$f11(s3, s4);
1414
1415
  }
1415
1416
  else {
1416
- peg$currPos = s2;
1417
- s2 = peg$FAILED;
1417
+ peg$currPos = s0;
1418
+ s0 = peg$FAILED;
1418
1419
  }
1419
1420
  }
1420
- else {
1421
- peg$currPos = s2;
1422
- s2 = peg$FAILED;
1423
- }
1424
- if (s2 !== peg$FAILED) {
1425
- s1 = input.substring(s1, peg$currPos);
1426
- }
1427
- else {
1428
- s1 = s2;
1429
- }
1430
- if (s1 !== peg$FAILED) {
1431
- s2 = peg$currPos;
1432
- s3 = peg$parse_();
1433
- s4 = peg$parseRestOfLine();
1434
- s3 = [s3, s4];
1435
- s2 = s3;
1436
- peg$savedPos = s0;
1437
- s0 = peg$f11(s2);
1438
- }
1439
1421
  else {
1440
1422
  peg$currPos = s0;
1441
1423
  s0 = peg$FAILED;