diff --git a/karma.conf.js b/karma.conf.js index 9c7ab29a8..f2d5605b9 100644 --- a/karma.conf.js +++ b/karma.conf.js @@ -146,6 +146,7 @@ module.exports = function (config) { output: { format: 'iife', name: 'alphaTab', + file: 'dist/lib.test/test.bundle.js', sourcemap: false } } diff --git a/package-lock.json b/package-lock.json index 52a84015e..0e980c4bf 100644 --- a/package-lock.json +++ b/package-lock.json @@ -26,10 +26,10 @@ "lodash": "^4.17.21", "multer": "^1.4.4", "rimraf": "^3.0.2", - "rollup": "^2.74.1", + "rollup": "^2.75.1", "rollup-plugin-copy": "^3.4.0", - "rollup-plugin-dts": "^4.2.1", - "rollup-plugin-license": "^2.7.0", + "rollup-plugin-dts": "^4.2.2", + "rollup-plugin-license": "^2.8.0", "rollup-plugin-serve": "^1.1.0", "rollup-plugin-terser": "^7.0.2", "terser": "^5.13.1", @@ -2478,9 +2478,9 @@ } }, "node_modules/rollup-plugin-dts": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/rollup-plugin-dts/-/rollup-plugin-dts-4.2.1.tgz", - "integrity": "sha512-eaxQZNUJ5iQcxNGlpJ1CUgG4OSVqWjDZ3nNSWBIoGrpcote2aNphSe1RJOaSYkb8dwn3o+rYm1vvld/5z3EGSQ==", + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/rollup-plugin-dts/-/rollup-plugin-dts-4.2.2.tgz", + "integrity": "sha512-A3g6Rogyko/PXeKoUlkjxkP++8UDVpgA7C+Tdl77Xj4fgEaIjPSnxRmR53EzvoYy97VMVwLAOcWJudaVAuxneQ==", "dev": true, "dependencies": { "magic-string": "^0.26.1" @@ -2495,8 +2495,8 @@ "@babel/code-frame": "^7.16.7" }, "peerDependencies": { - "rollup": "^2.70", - "typescript": "^4.6" + "rollup": "^2.55", + "typescript": "^4.1" } }, "node_modules/rollup-plugin-dts/node_modules/magic-string": { @@ -5496,9 +5496,9 @@ } }, "rollup-plugin-dts": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/rollup-plugin-dts/-/rollup-plugin-dts-4.2.1.tgz", - "integrity": "sha512-eaxQZNUJ5iQcxNGlpJ1CUgG4OSVqWjDZ3nNSWBIoGrpcote2aNphSe1RJOaSYkb8dwn3o+rYm1vvld/5z3EGSQ==", + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/rollup-plugin-dts/-/rollup-plugin-dts-4.2.2.tgz", + "integrity": "sha512-A3g6Rogyko/PXeKoUlkjxkP++8UDVpgA7C+Tdl77Xj4fgEaIjPSnxRmR53EzvoYy97VMVwLAOcWJudaVAuxneQ==", "dev": true, "requires": { "@babel/code-frame": "^7.16.7", diff --git a/package.json b/package.json index 684ebd54e..450bf7848 100644 --- a/package.json +++ b/package.json @@ -72,10 +72,10 @@ "lodash": "^4.17.21", "multer": "^1.4.4", "rimraf": "^3.0.2", - "rollup": "^2.74.1", + "rollup": "^2.75.1", "rollup-plugin-copy": "^3.4.0", - "rollup-plugin-dts": "^4.2.1", - "rollup-plugin-license": "^2.7.0", + "rollup-plugin-dts": "^4.2.2", + "rollup-plugin-license": "^2.8.0", "rollup-plugin-serve": "^1.1.0", "rollup-plugin-terser": "^7.0.2", "terser": "^5.13.1", diff --git a/src/rendering/ScoreBarRenderer.ts b/src/rendering/ScoreBarRenderer.ts index bc397493a..3a7737a92 100644 --- a/src/rendering/ScoreBarRenderer.ts +++ b/src/rendering/ScoreBarRenderer.ts @@ -836,13 +836,13 @@ export class ScoreBarRenderer extends BarRendererBase { offsetClef = 1; break; case Clef.F4: - offsetClef = 2; + offsetClef = 3; break; case Clef.C3: - offsetClef = -1; + offsetClef = 2; break; case Clef.C4: - offsetClef = 1; + offsetClef = 0; break; } let newLines: Map = new Map(); diff --git a/test-data/visual-tests/music-notation/key-signatures-c3.gp b/test-data/visual-tests/music-notation/key-signatures-c3.gp new file mode 100644 index 000000000..8f7d8bb3d Binary files /dev/null and b/test-data/visual-tests/music-notation/key-signatures-c3.gp differ diff --git a/test-data/visual-tests/music-notation/key-signatures-c3.png b/test-data/visual-tests/music-notation/key-signatures-c3.png new file mode 100644 index 000000000..513666f41 Binary files /dev/null and b/test-data/visual-tests/music-notation/key-signatures-c3.png differ diff --git a/test-data/visual-tests/music-notation/key-signatures-c4.gp b/test-data/visual-tests/music-notation/key-signatures-c4.gp new file mode 100644 index 000000000..bf2da2176 Binary files /dev/null and b/test-data/visual-tests/music-notation/key-signatures-c4.gp differ diff --git a/test-data/visual-tests/music-notation/key-signatures-c4.png b/test-data/visual-tests/music-notation/key-signatures-c4.png new file mode 100644 index 000000000..1986b6cdd Binary files /dev/null and b/test-data/visual-tests/music-notation/key-signatures-c4.png differ diff --git a/test-data/visual-tests/music-notation/key-signatures-f4.gp b/test-data/visual-tests/music-notation/key-signatures-f4.gp new file mode 100644 index 000000000..4821fc4c8 Binary files /dev/null and b/test-data/visual-tests/music-notation/key-signatures-f4.gp differ diff --git a/test-data/visual-tests/music-notation/key-signatures-f4.png b/test-data/visual-tests/music-notation/key-signatures-f4.png new file mode 100644 index 000000000..921086f74 Binary files /dev/null and b/test-data/visual-tests/music-notation/key-signatures-f4.png differ diff --git a/test-data/visual-tests/music-notation/key-signatures-g2.gp b/test-data/visual-tests/music-notation/key-signatures-g2.gp new file mode 100644 index 000000000..9f3ce4884 Binary files /dev/null and b/test-data/visual-tests/music-notation/key-signatures-g2.gp differ diff --git a/test-data/visual-tests/music-notation/key-signatures-g2.png b/test-data/visual-tests/music-notation/key-signatures-g2.png new file mode 100644 index 000000000..ced2887d6 Binary files /dev/null and b/test-data/visual-tests/music-notation/key-signatures-g2.png differ diff --git a/test-data/visual-tests/music-notation/key-signatures-mixed.gp b/test-data/visual-tests/music-notation/key-signatures-mixed.gp new file mode 100644 index 000000000..530a02da7 Binary files /dev/null and b/test-data/visual-tests/music-notation/key-signatures-mixed.gp differ diff --git a/test-data/visual-tests/music-notation/key-signatures-mixed.png b/test-data/visual-tests/music-notation/key-signatures-mixed.png new file mode 100644 index 000000000..5f9126a59 Binary files /dev/null and b/test-data/visual-tests/music-notation/key-signatures-mixed.png differ diff --git a/test/visualTests/features/MusicNotation.test.ts b/test/visualTests/features/MusicNotation.test.ts index 43e89a6ee..62b63cc93 100644 --- a/test/visualTests/features/MusicNotation.test.ts +++ b/test/visualTests/features/MusicNotation.test.ts @@ -20,6 +20,36 @@ describe('MusicNotationTests', () => { await VisualTestHelper.runVisualTest('music-notation/clefs.gp', settings); }); + it('key-signatures-mixed', async () => { + let settings: Settings = new Settings(); + settings.display.staveProfile = StaveProfile.Score; + await VisualTestHelper.runVisualTest('music-notation/key-signatures-mixed.gp', settings, [0, 1, 2, 3]); + }); + + it('key-signatures-c3', async () => { + let settings: Settings = new Settings(); + settings.display.staveProfile = StaveProfile.Score; + await VisualTestHelper.runVisualTest('music-notation/key-signatures-c3.gp', settings); + }); + + it('key-signatures-c4', async () => { + let settings: Settings = new Settings(); + settings.display.staveProfile = StaveProfile.Score; + await VisualTestHelper.runVisualTest('music-notation/key-signatures-c4.gp', settings); + }); + + it('key-signatures-f4', async () => { + let settings: Settings = new Settings(); + settings.display.staveProfile = StaveProfile.Score; + await VisualTestHelper.runVisualTest('music-notation/key-signatures-f4.gp', settings); + }); + + it('key-signatures-g2', async () => { + let settings: Settings = new Settings(); + settings.display.staveProfile = StaveProfile.Score; + await VisualTestHelper.runVisualTest('music-notation/key-signatures-g2.gp', settings); + }); + it('key-signatures', async () => { let settings: Settings = new Settings(); settings.display.staveProfile = StaveProfile.Score; @@ -55,7 +85,7 @@ describe('MusicNotationTests', () => { settings.display.barsPerRow = 4; await VisualTestHelper.runVisualTest('music-notation/beams-advanced.gp', settings); }); - + it('rest-collisions', async () => { await VisualTestHelper.runVisualTest('music-notation/rest-collisions.gp'); });