abcjs 6.0.0-beta.7 → 6.0.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.
- package/.github/workflows/tests.yml +29 -0
- package/CODE_OF_CONDUCT.md +76 -0
- package/CONTRIBUTING.md +1 -0
- package/LICENSE.md +1 -1
- package/README.md +92 -3
- package/RELEASE.md +957 -1
- package/abcjs-audio.css +14 -5
- package/dist/.gitignore +1 -2
- package/dist/abcjs-basic-min.js +3 -0
- package/dist/abcjs-basic-min.js.LICENSE +23 -0
- package/dist/abcjs-basic.js +28231 -0
- package/dist/abcjs-basic.js.map +1 -0
- package/dist/abcjs-plugin-min.js +3 -0
- package/dist/abcjs-plugin-min.js.LICENSE +23 -0
- package/dist/report-basic.html +37 -0
- package/dist/report-before-glyph-compress.html +37 -0
- package/dist/report-brown-ts-target-es5.html +37 -0
- package/dist/report-dev-orig-no-babel.html +37 -0
- package/dist/report-synth.html +37 -0
- package/docker-build.sh +1 -0
- package/glyphs.json +1 -0
- package/index.js +27 -2
- package/{static-wrappers/license.js → license.js} +1 -1
- package/package.json +26 -29
- package/{src/plugin/abc_plugin.js → plugin.js} +31 -19
- package/src/api/abc_animation.js +1 -17
- package/src/api/abc_tablatures.js +144 -0
- package/src/api/abc_timing_callbacks.js +234 -116
- package/src/api/abc_tunebook.js +18 -67
- package/src/api/abc_tunebook_svg.js +38 -46
- package/src/data/abc_tune.js +232 -972
- package/src/data/deline-tune.js +199 -0
- package/src/edit/abc_editarea.js +112 -0
- package/src/edit/abc_editor.js +95 -221
- package/src/midi/abc_midi_create.js +48 -50
- package/src/parse/abc_common.js +0 -14
- package/src/parse/abc_parse.js +167 -1321
- package/src/parse/abc_parse_book.js +62 -0
- package/src/parse/abc_parse_directive.js +164 -41
- package/src/parse/abc_parse_header.js +116 -145
- package/src/parse/abc_parse_key_voice.js +26 -20
- package/src/parse/abc_parse_music.js +1337 -0
- package/src/parse/abc_tokenizer.js +21 -15
- package/src/parse/abc_transpose.js +3 -15
- package/src/parse/tune-builder.js +896 -0
- package/src/parse/wrap_lines.js +205 -453
- package/src/synth/abc_midi_flattener.js +1292 -0
- package/src/{midi → synth}/abc_midi_renderer.js +44 -17
- package/src/synth/abc_midi_sequencer.js +648 -0
- package/src/synth/active-audio-context.js +3 -14
- package/src/synth/cents-to-factor.js +10 -0
- package/src/synth/create-note-map.js +21 -32
- package/src/synth/create-synth-control.js +20 -103
- package/src/synth/create-synth.js +185 -77
- package/src/synth/download-buffer.js +7 -21
- package/src/synth/get-midi-file.js +13 -20
- package/src/synth/images/{loading.svg → loading.svg.js} +4 -0
- package/src/synth/images/loop.svg.js +65 -0
- package/src/synth/images/pause.svg.js +10 -0
- package/src/synth/images/play.svg.js +9 -0
- package/src/synth/images/{reset.svg → reset.svg.js} +5 -1
- package/src/synth/instrument-index-to-name.js +1 -16
- package/src/synth/load-note.js +37 -76
- package/src/synth/pitch-to-note-name.js +0 -15
- package/src/synth/pitches-to-perc.js +64 -0
- package/src/synth/place-note.js +78 -68
- package/src/synth/play-event.js +17 -18
- package/src/synth/register-audio-context.js +11 -23
- package/src/synth/sounds-cache.js +0 -15
- package/src/synth/supports-audio.js +9 -23
- package/src/synth/synth-controller.js +80 -49
- package/src/synth/synth-sequence.js +20 -34
- package/src/tablatures/instruments/guitar/guitar-fonts.js +19 -0
- package/src/tablatures/instruments/guitar/guitar-patterns.js +23 -0
- package/src/tablatures/instruments/guitar/tab-guitar.js +50 -0
- package/src/tablatures/instruments/string-patterns.js +277 -0
- package/src/tablatures/instruments/string-tablature.js +56 -0
- package/src/tablatures/instruments/tab-note.js +282 -0
- package/src/tablatures/instruments/tab-notes.js +41 -0
- package/src/tablatures/instruments/violin/tab-violin.js +47 -0
- package/src/tablatures/instruments/violin/violin-fonts.js +19 -0
- package/src/tablatures/instruments/violin/violin-patterns.js +23 -0
- package/src/tablatures/tab-absolute-elements.js +310 -0
- package/src/tablatures/tab-common.js +29 -0
- package/src/tablatures/tab-renderer.js +243 -0
- package/src/tablatures/transposer.js +110 -0
- package/src/test/abc_midi_lint.js +5 -22
- package/src/test/abc_midi_sequencer_lint.js +11 -14
- package/src/test/abc_parser_lint.js +136 -32
- package/src/test/abc_vertical_lint.js +94 -32
- package/src/test/rendering-lint.js +38 -5
- package/src/write/abc_absolute_element.js +112 -120
- package/src/write/abc_abstract_engraver.js +102 -253
- package/src/write/abc_beam_element.js +30 -290
- package/src/write/abc_brace_element.js +12 -121
- package/src/write/abc_create_clef.js +21 -32
- package/src/write/abc_create_key_signature.js +8 -26
- package/src/write/abc_create_note_head.js +107 -0
- package/src/write/abc_create_time_signature.js +2 -21
- package/src/write/abc_crescendo_element.js +3 -50
- package/src/write/abc_decoration.js +7 -30
- package/src/write/abc_dynamic_decoration.js +3 -37
- package/src/write/abc_ending_element.js +1 -57
- package/src/write/abc_engraver_controller.js +111 -234
- package/src/write/abc_glyphs.js +9 -19
- package/src/write/abc_relative_element.js +57 -97
- package/src/write/abc_renderer.js +10 -832
- package/src/write/abc_spacing.js +0 -15
- package/src/write/abc_staff_group_element.js +14 -349
- package/src/write/abc_tempo_element.js +9 -117
- package/src/write/abc_tie_element.js +5 -68
- package/src/write/abc_triplet_element.js +6 -124
- package/src/write/abc_voice_element.js +7 -222
- package/src/write/add-chord.js +103 -0
- package/src/write/add-text-if.js +33 -0
- package/src/write/bottom-text.js +79 -0
- package/src/write/calcHeight.js +17 -0
- package/src/write/classes.js +100 -0
- package/src/write/draw/absolute.js +68 -0
- package/src/write/draw/beam.js +56 -0
- package/src/write/draw/brace.js +106 -0
- package/src/write/draw/crescendo.js +38 -0
- package/src/write/draw/debug-box.js +8 -0
- package/src/write/draw/draw.js +56 -0
- package/src/write/draw/dynamics.js +20 -0
- package/src/write/draw/ending.js +46 -0
- package/src/write/draw/group-elements.js +66 -0
- package/src/write/draw/horizontal-line.js +25 -0
- package/src/write/draw/non-music.js +50 -0
- package/src/write/draw/print-line.js +24 -0
- package/src/write/draw/print-path.js +7 -0
- package/src/write/draw/print-stem.js +30 -0
- package/src/write/draw/print-symbol.js +59 -0
- package/src/write/draw/print-vertical-line.js +18 -0
- package/src/write/draw/relative.js +77 -0
- package/src/write/draw/round-number.js +5 -0
- package/src/write/draw/selectables.js +59 -0
- package/src/write/draw/separator.js +16 -0
- package/src/write/draw/set-paper-size.js +45 -0
- package/src/write/{sprintf.js → draw/sprintf.js} +0 -0
- package/src/write/draw/staff-group.js +226 -0
- package/src/write/draw/staff-line.js +9 -0
- package/src/write/draw/staff.js +33 -0
- package/src/write/draw/tab-line.js +40 -0
- package/src/write/draw/tempo.js +45 -0
- package/src/write/draw/text.js +71 -0
- package/src/write/draw/tie.js +97 -0
- package/src/write/draw/triplet.js +46 -0
- package/src/write/draw/voice.js +102 -0
- package/src/write/format-jazz-chord.js +15 -0
- package/src/write/free-text.js +41 -0
- package/src/write/get-font-and-attr.js +37 -0
- package/src/write/get-text-size.js +56 -0
- package/src/write/highlight.js +11 -0
- package/src/write/layout/VoiceElements.js +121 -0
- package/src/write/layout/beam.js +213 -0
- package/src/write/layout/get-left-edge-of-staff.js +56 -0
- package/src/write/layout/getBarYAt.js +6 -0
- package/src/write/layout/layout.js +94 -0
- package/src/write/layout/setUpperAndLowerElements.js +232 -0
- package/src/write/layout/staffGroup.js +146 -0
- package/src/write/layout/triplet.js +75 -0
- package/src/write/layout/voice.js +137 -0
- package/src/write/selection.js +188 -70
- package/src/write/separator.js +10 -0
- package/src/write/set-class.js +21 -0
- package/src/write/subtitle.js +12 -0
- package/src/write/svg.js +95 -43
- package/src/write/top-text.js +54 -0
- package/src/write/unhighlight.js +11 -0
- package/temp.txt +17 -0
- package/test.js +27 -64
- package/types/index.d.ts +1095 -0
- package/version.js +1 -1
- package/.babelrc +0 -5
- package/.eslintrc +0 -3
- package/.gitmodules +0 -3
- package/abcjs-midi.css +0 -166
- package/build-utils/loadPresets.js +0 -14
- package/build-utils/presets/webpack.analyze.js +0 -6
- package/build-utils/presets/webpack.optimize.js +0 -30
- package/build-utils/webpack.development.js +0 -14
- package/build-utils/webpack.production.js +0 -35
- package/deploy-docs.sh +0 -25
- package/docs/README.md +0 -33
- package/fix-versions.sh +0 -23
- package/mei.js +0 -43
- package/midi.js +0 -62
- package/src/api/abc_tunebook_midi.js +0 -116
- package/src/midi/abc_midi_controls.js +0 -701
- package/src/midi/abc_midi_flattener.js +0 -1119
- package/src/midi/abc_midi_js_preparer.js +0 -243
- package/src/midi/abc_midi_sequencer.js +0 -401
- package/src/midi/abc_midi_ui_generator.js +0 -86
- package/src/plugin/abc_plugin_midi.js +0 -220
- package/src/synth/images/loop.svg +0 -61
- package/src/synth/images/pause.svg +0 -6
- package/src/synth/images/play.svg +0 -5
- package/src/transform/abc2abc_write.js +0 -395
- package/static-wrappers/basic.js +0 -2
- package/static-wrappers/midi.js +0 -2
- package/static-wrappers/plugin-midi.js +0 -6
- package/static-wrappers/plugin.js +0 -6
- package/webpack.config.js +0 -29
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
const addTextIf = require("./add-text-if");
|
|
2
|
+
|
|
3
|
+
function TopText(metaText, metaTextInfo, formatting, lines, width, isPrint, paddingLeft, spacing, getTextSize) {
|
|
4
|
+
this.rows = [];
|
|
5
|
+
|
|
6
|
+
if (metaText.header && isPrint) {
|
|
7
|
+
// Note: whether there is a header or not doesn't change any other positioning, so this doesn't change the Y-coordinate.
|
|
8
|
+
// This text goes above the margin, so we'll temporarily move up.
|
|
9
|
+
var headerTextHeight = getTextSize.calc("X", "headerfont", 'abcjs-header abcjs-meta-top').height;
|
|
10
|
+
addTextIf(this.rows, { marginLeft: paddingLeft, text: metaText.header.left, font: 'headerfont', klass: 'header meta-top', marginTop: -headerTextHeight, info: metaTextInfo.header, name: "header"}, getTextSize);
|
|
11
|
+
addTextIf(this.rows, { marginLeft: paddingLeft + width / 2, text: metaText.header.center, font: 'headerfont', klass: 'header meta-top', marginTop: -headerTextHeight, anchor: 'middle', info: metaTextInfo.header, name: "header"}, getTextSize);
|
|
12
|
+
addTextIf(this.rows, { marginLeft: paddingLeft + width, text: metaText.header.right, font: 'headerfont', klass: 'header meta-top', marginTop: -headerTextHeight, anchor: 'end', info: metaTextInfo.header, name: "header"}, getTextSize);
|
|
13
|
+
|
|
14
|
+
// TopText.prototype.addTextIf = function (marginLeft, text, font, klass, marginTop, marginBottom, anchor, getTextSize, absElemType, noMove) {
|
|
15
|
+
}
|
|
16
|
+
if (isPrint)
|
|
17
|
+
this.rows.push({move: spacing.top});
|
|
18
|
+
var tAnchor = formatting.titleleft ? 'start' : 'middle';
|
|
19
|
+
var tLeft = formatting.titleleft ? paddingLeft : paddingLeft + width / 2;
|
|
20
|
+
if (metaText.title) {
|
|
21
|
+
addTextIf(this.rows, { marginLeft: tLeft, text: metaText.title, font: 'titlefont', klass: 'title meta-top', marginTop: spacing.title, anchor: tAnchor, absElemType: "title", info: metaTextInfo.title, name: "title"}, getTextSize);
|
|
22
|
+
}
|
|
23
|
+
if (lines.length) {
|
|
24
|
+
var index = 0;
|
|
25
|
+
while (index < lines.length && lines[index].subtitle) {
|
|
26
|
+
addTextIf(this.rows, {marginLeft: tLeft, text: lines[index].subtitle.text, font: 'subtitlefont', klass: 'text meta-top subtitle', marginTop: spacing.subtitle, anchor: tAnchor, absElemType: "subtitle", info: lines[index].subtitle, name: "subtitle"}, getTextSize);
|
|
27
|
+
index++;
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
if (metaText.rhythm || metaText.origin || metaText.composer) {
|
|
32
|
+
this.rows.push({move: spacing.composer});
|
|
33
|
+
if (metaText.rhythm && metaText.rhythm.length > 0) {
|
|
34
|
+
var noMove = !!(metaText.composer || metaText.origin);
|
|
35
|
+
addTextIf(this.rows, { marginLeft: paddingLeft, text: metaText.rhythm, font: 'infofont', klass: 'meta-top rhythm', absElemType: "rhythm", noMove: true, info: metaTextInfo.rhythm, name: "rhythm"}, getTextSize);
|
|
36
|
+
}
|
|
37
|
+
var composerLine = "";
|
|
38
|
+
if (metaText.composer) composerLine += metaText.composer;
|
|
39
|
+
if (metaText.origin) composerLine += ' (' + metaText.origin + ')';
|
|
40
|
+
if (composerLine.length > 0) {
|
|
41
|
+
addTextIf(this.rows, { marginLeft: paddingLeft + width, text: composerLine, font: 'composerfont', klass: 'meta-top composer', anchor: "end", absElemType: "composer", info: metaTextInfo.composer, name: "composer"}, getTextSize);
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
if (metaText.author && metaText.author.length > 0) {
|
|
46
|
+
addTextIf(this.rows, { marginLeft: paddingLeft + width, text: metaText.author, font: 'composerfont', klass: 'meta-top author', anchor: "end", absElemType: "author", info: metaTextInfo.author, name: "author" }, getTextSize);
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
if (metaText.partOrder && metaText.partOrder.length > 0) {
|
|
50
|
+
addTextIf(this.rows, { marginLeft: paddingLeft, text: metaText.partOrder, font: 'partsfont', klass: 'meta-top part-order', absElemType: "partOrder", info: metaTextInfo.partOrder, name: "part-order"}, getTextSize);
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
module.exports = TopText;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
var setClass = require('./set-class');
|
|
2
|
+
|
|
3
|
+
var unhighlight = function (klass, color) {
|
|
4
|
+
if (klass === undefined)
|
|
5
|
+
klass = "abcjs-note_selected";
|
|
6
|
+
if (color === undefined)
|
|
7
|
+
color = "#000000";
|
|
8
|
+
setClass(this.elemset, "", klass, color);
|
|
9
|
+
};
|
|
10
|
+
|
|
11
|
+
module.exports = unhighlight;
|
package/temp.txt
ADDED
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
Fix the bar number display when wrapping.
|
|
2
|
+
Don't add extra padding when creating minimal music (like one note)
|
|
3
|
+
Fix selection data for unaligned words
|
|
4
|
+
Pass back actual selectable element when one of its children is clicked.
|
|
5
|
+
Don't put extra classes and data- attributes on compound symbols (like "12/8")
|
|
6
|
+
Fix spacing for triplet number
|
|
7
|
+
Don't add extra space at the bottom if there is no bottom text.
|
|
8
|
+
Allow aria-label to not be set.
|
|
9
|
+
Fix adding class names to dynamics and some other elements.
|
|
10
|
+
Fix regression where the left line of multi-staff music was misplaced if the bottom line is for percussion.
|
|
11
|
+
|
|
12
|
+
Start beta 40
|
|
13
|
+
|
|
14
|
+
gracenotes now are processed through %%percmap
|
|
15
|
+
Return audioContext in prime because of iOS finickiness.
|
|
16
|
+
Fix iOS not playing because audioContext doesn't stay running
|
|
17
|
+
Fix iOS not playing because audioContext doesn't stay running
|
package/test.js
CHANGED
|
@@ -1,75 +1,38 @@
|
|
|
1
|
+
/**!
|
|
2
|
+
Copyright (c) 2009-2022 Paul Rosen and Gregory Dyke
|
|
3
|
+
|
|
4
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
5
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
6
|
+
in the Software without restriction, including without limitation the rights
|
|
7
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
8
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
9
|
+
furnished to do so, subject to the following conditions:
|
|
10
|
+
|
|
11
|
+
The above copyright notice and this permission notice shall be included in
|
|
12
|
+
all copies or substantial portions of the Software.
|
|
13
|
+
|
|
14
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
15
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
16
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
17
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
18
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
19
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
|
20
|
+
THE SOFTWARE.
|
|
21
|
+
|
|
22
|
+
**This text is from: http://opensource.org/licenses/MIT**
|
|
23
|
+
!**/
|
|
24
|
+
var abcjs = require('./index');
|
|
1
25
|
var version = require('./version');
|
|
2
|
-
var
|
|
3
|
-
var
|
|
4
|
-
|
|
5
|
-
var abcjs = {};
|
|
26
|
+
var Parse = require('./src/parse/abc_parse');
|
|
27
|
+
var EngraverController = require('./src/write/abc_engraver_controller')
|
|
6
28
|
|
|
7
29
|
abcjs.signature = "abcjs-test v" + version;
|
|
8
30
|
|
|
9
|
-
Object.keys(animation).forEach(function (key) {
|
|
10
|
-
abcjs[key] = animation[key];
|
|
11
|
-
});
|
|
12
|
-
|
|
13
|
-
Object.keys(tuneBook).forEach(function (key) {
|
|
14
|
-
abcjs[key] = tuneBook[key];
|
|
15
|
-
});
|
|
16
|
-
|
|
17
|
-
abcjs.renderAbc = require('./src/api/abc_tunebook_svg');
|
|
18
|
-
abcjs.renderMidi = require('./src/api/abc_tunebook_midi');
|
|
19
|
-
abcjs.TimingCallbacks = require('./src/api/abc_timing_callbacks');
|
|
20
|
-
|
|
21
|
-
var glyphs = require('./src/write/abc_glyphs');
|
|
22
|
-
abcjs.setGlyph = glyphs.setSymbol;
|
|
23
|
-
|
|
24
|
-
var CreateSynth = require('./src/synth/create-synth');
|
|
25
|
-
var instrumentIndexToName = require('./src/synth/instrument-index-to-name');
|
|
26
|
-
var pitchToNoteName = require('./src/synth/pitch-to-note-name');
|
|
27
|
-
var SynthSequence = require('./src/synth/synth-sequence');
|
|
28
|
-
var CreateSynthControl = require('./src/synth/create-synth-control');
|
|
29
|
-
var registerAudioContext = require('./src/synth/register-audio-context');
|
|
30
|
-
var activeAudioContext = require('./src/synth/active-audio-context');
|
|
31
|
-
var supportsAudio = require('./src/synth/supports-audio');
|
|
32
|
-
var playEvent = require('./src/synth/play-event');
|
|
33
|
-
var SynthController = require('./src/synth/synth-controller');
|
|
34
|
-
|
|
35
|
-
abcjs.synth = {
|
|
36
|
-
CreateSynth: CreateSynth,
|
|
37
|
-
instrumentIndexToName: instrumentIndexToName,
|
|
38
|
-
pitchToNoteName: pitchToNoteName,
|
|
39
|
-
SynthController: SynthController,
|
|
40
|
-
SynthSequence: SynthSequence,
|
|
41
|
-
CreateSynthControl: CreateSynthControl,
|
|
42
|
-
registerAudioContext: registerAudioContext,
|
|
43
|
-
activeAudioContext: activeAudioContext,
|
|
44
|
-
supportsAudio: supportsAudio,
|
|
45
|
-
playEvent: playEvent
|
|
46
|
-
};
|
|
47
|
-
|
|
48
|
-
var parser = require('./src/parse/abc_parse');
|
|
49
|
-
abcjs['parse'] = { Parse: parser };
|
|
50
|
-
|
|
51
|
-
var engraverController = require('./src/write/abc_engraver_controller');
|
|
52
|
-
abcjs['write'] = { EngraverController: engraverController };
|
|
53
|
-
|
|
54
|
-
var editor = require('./src/edit/abc_editor');
|
|
55
|
-
abcjs['Editor'] = editor;
|
|
56
|
-
|
|
57
|
-
var midi = require('./src/midi/abc_midi_controls');
|
|
58
|
-
var sequence = require('./src/midi/abc_midi_sequencer');
|
|
59
|
-
var flatten = require('./src/midi/abc_midi_flattener');
|
|
60
|
-
var midiCreate = require('./src/midi/abc_midi_create');
|
|
61
|
-
var midiUiGenerator = require('./src/midi/abc_midi_ui_generator');
|
|
62
|
-
abcjs['midi'] = midi;
|
|
63
|
-
abcjs['midi'].sequence = sequence;
|
|
64
|
-
abcjs['midi'].flatten = flatten;
|
|
65
|
-
abcjs['midi'].create = midiCreate;
|
|
66
|
-
abcjs['midi'].midiUiGenerator = midiUiGenerator;
|
|
67
|
-
|
|
68
31
|
var parserLint = require('./src/test/abc_parser_lint');
|
|
69
32
|
var verticalLint = require('./src/test/abc_vertical_lint');
|
|
70
33
|
var midiLint = require('./src/test/abc_midi_lint');
|
|
71
34
|
var midiSequencerLint = require('./src/test/abc_midi_sequencer_lint');
|
|
72
35
|
var renderingLint = require('./src/test/rendering-lint');
|
|
73
|
-
abcjs['test'] = { ParserLint: parserLint, verticalLint: verticalLint, midiLint: midiLint, midiSequencerLint: midiSequencerLint, renderingLint: renderingLint };
|
|
36
|
+
abcjs['test'] = { Parse: Parse, EngraverController: EngraverController, ParserLint: parserLint, verticalLint: verticalLint, midiLint: midiLint, midiSequencerLint: midiSequencerLint, renderingLint: renderingLint };
|
|
74
37
|
|
|
75
38
|
module.exports = abcjs;
|