smoosic 1.0.25 → 1.0.26

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 (187) hide show
  1. package/build/smoosic.js +1 -1
  2. package/package.json +1 -1
  3. package/release/smoosic.js +1 -1
  4. package/src/application/exports.ts +1 -0
  5. package/types/src/application/application.d.ts +102 -102
  6. package/types/src/application/common.d.ts +74 -74
  7. package/types/src/application/configuration.d.ts +74 -74
  8. package/types/src/application/dom.d.ts +8 -8
  9. package/types/src/application/dynamicInit.d.ts +1 -1
  10. package/types/src/application/eventHandler.d.ts +78 -78
  11. package/types/src/application/exports.d.ts +494 -493
  12. package/types/src/application/generateVexTests.d.ts +10 -10
  13. package/types/src/application/keyCommands.d.ts +90 -90
  14. package/types/src/common/bootstrap.bundle.d.ts +1138 -1138
  15. package/types/src/common/htmlHelpers.d.ts +105 -105
  16. package/types/src/common/jszip.d.ts +2 -2
  17. package/types/src/common/midi-parser.d.ts +38 -38
  18. package/types/src/common/promiseHelpers.d.ts +30 -30
  19. package/types/src/common/serializationHelpers.d.ts +29 -29
  20. package/types/src/common/textformatter.d.ts +140 -140
  21. package/types/src/common/vex.d.ts +222 -222
  22. package/types/src/render/audio/musicCursor.d.ts +25 -25
  23. package/types/src/render/audio/oscillator.d.ts +98 -98
  24. package/types/src/render/audio/player.d.ts +141 -141
  25. package/types/src/render/audio/samples.d.ts +56 -56
  26. package/types/src/render/sui/configuration.d.ts +12 -12
  27. package/types/src/render/sui/formatter.d.ts +151 -151
  28. package/types/src/render/sui/layoutDebug.d.ts +43 -43
  29. package/types/src/render/sui/mapper.d.ts +116 -116
  30. package/types/src/render/sui/piano.d.ts +46 -46
  31. package/types/src/render/sui/renderState.d.ts +88 -88
  32. package/types/src/render/sui/scoreRender.d.ts +93 -93
  33. package/types/src/render/sui/scoreView.d.ts +267 -267
  34. package/types/src/render/sui/scoreViewOperations.d.ts +594 -594
  35. package/types/src/render/sui/scroller.d.ts +34 -34
  36. package/types/src/render/sui/svgHelpers.d.ts +85 -85
  37. package/types/src/render/sui/svgPageMap.d.ts +318 -318
  38. package/types/src/render/sui/textEdit.d.ts +310 -310
  39. package/types/src/render/sui/textRender.d.ts +189 -189
  40. package/types/src/render/sui/tracker.d.ts +90 -90
  41. package/types/src/render/vex/glyphDimensions.d.ts +23 -23
  42. package/types/src/render/vex/smoAdapter.d.ts +46 -46
  43. package/types/src/render/vex/toVex.d.ts +13 -13
  44. package/types/src/render/vex/vxMeasure.d.ts +95 -95
  45. package/types/src/render/vex/vxNote.d.ts +55 -55
  46. package/types/src/render/vex/vxSystem.d.ts +64 -64
  47. package/types/src/smo/data/common.d.ts +220 -220
  48. package/types/src/smo/data/measure.d.ts +510 -510
  49. package/types/src/smo/data/measureModifiers.d.ts +506 -506
  50. package/types/src/smo/data/music.d.ts +438 -438
  51. package/types/src/smo/data/note.d.ts +485 -485
  52. package/types/src/smo/data/noteModifiers.d.ts +590 -590
  53. package/types/src/smo/data/partInfo.d.ts +162 -162
  54. package/types/src/smo/data/score.d.ts +395 -395
  55. package/types/src/smo/data/scoreModifiers.d.ts +433 -433
  56. package/types/src/smo/data/scoreText.d.ts +277 -277
  57. package/types/src/smo/data/staffModifiers.d.ts +767 -767
  58. package/types/src/smo/data/systemStaff.d.ts +238 -238
  59. package/types/src/smo/data/tuplet.d.ts +146 -146
  60. package/types/src/smo/midi/midiToSmo.d.ts +198 -198
  61. package/types/src/smo/midi/smoToMidi.d.ts +23 -23
  62. package/types/src/smo/mxml/smoToXml.d.ts +165 -165
  63. package/types/src/smo/mxml/xmlHelpers.d.ts +140 -140
  64. package/types/src/smo/mxml/xmlState.d.ts +257 -257
  65. package/types/src/smo/mxml/xmlToSmo.d.ts +92 -92
  66. package/types/src/smo/xform/beamers.d.ts +46 -46
  67. package/types/src/smo/xform/copypaste.d.ts +99 -99
  68. package/types/src/smo/xform/operations.d.ts +127 -127
  69. package/types/src/smo/xform/roadmap.d.ts +70 -70
  70. package/types/src/smo/xform/selections.d.ts +153 -153
  71. package/types/src/smo/xform/tickDuration.d.ts +155 -155
  72. package/types/src/smo/xform/tickMap.d.ts +34 -34
  73. package/types/src/smo/xform/undo.d.ts +142 -142
  74. package/types/src/smo/xform/updateAudio.d.ts +9 -9
  75. package/types/src/styles/font_metrics/Commissioner-Medium-Metrics.d.ts +871 -871
  76. package/types/src/styles/font_metrics/ConcertOne-Regular.d.ts +871 -871
  77. package/types/src/styles/font_metrics/Merriweather-Regular.d.ts +871 -871
  78. package/types/src/styles/font_metrics/arial_metrics.d.ts +870 -870
  79. package/types/src/styles/font_metrics/ssp-sans-metrics.d.ts +871 -871
  80. package/types/src/styles/font_metrics/ssp-serif-metrics.d.ts +871 -871
  81. package/types/src/styles/font_metrics/times_metrics.d.ts +870 -870
  82. package/types/src/ui/buttons/button.d.ts +95 -95
  83. package/types/src/ui/buttons/collapsable.d.ts +42 -42
  84. package/types/src/ui/buttons/display.d.ts +23 -23
  85. package/types/src/ui/buttons/ribbon.d.ts +76 -76
  86. package/types/src/ui/common.d.ts +45 -45
  87. package/types/src/ui/composable/draggable.d.ts +12 -12
  88. package/types/src/ui/configuration.d.ts +31 -31
  89. package/types/src/ui/dialogs/adapter.d.ts +107 -107
  90. package/types/src/ui/dialogs/addMeasure.d.ts +20 -20
  91. package/types/src/ui/dialogs/arpeggio.d.ts +2 -2
  92. package/types/src/ui/dialogs/articulation.d.ts +2 -2
  93. package/types/src/ui/dialogs/audioSettings.d.ts +32 -32
  94. package/types/src/ui/dialogs/chordChange.d.ts +35 -35
  95. package/types/src/ui/dialogs/clefChange.d.ts +2 -2
  96. package/types/src/ui/dialogs/components/baseComponent.d.ts +158 -158
  97. package/types/src/ui/dialogs/components/button.d.ts +54 -54
  98. package/types/src/ui/dialogs/components/buttonArray.d.ts +101 -101
  99. package/types/src/ui/dialogs/components/checkdrop.d.ts +27 -27
  100. package/types/src/ui/dialogs/components/dragText.d.ts +27 -27
  101. package/types/src/ui/dialogs/components/dropdown.d.ts +78 -78
  102. package/types/src/ui/dialogs/components/fileDownload.d.ts +28 -28
  103. package/types/src/ui/dialogs/components/fontComponent.d.ts +32 -32
  104. package/types/src/ui/dialogs/components/noteText.d.ts +98 -98
  105. package/types/src/ui/dialogs/components/pitch.d.ts +95 -95
  106. package/types/src/ui/dialogs/components/rocker.d.ts +66 -66
  107. package/types/src/ui/dialogs/components/staffComponents.d.ts +77 -77
  108. package/types/src/ui/dialogs/components/textCheck.d.ts +38 -38
  109. package/types/src/ui/dialogs/components/textInPlace.d.ts +90 -90
  110. package/types/src/ui/dialogs/components/textInput.d.ts +58 -58
  111. package/types/src/ui/dialogs/components/tie.d.ts +41 -41
  112. package/types/src/ui/dialogs/components/toggle.d.ts +53 -53
  113. package/types/src/ui/dialogs/components/tree.d.ts +46 -46
  114. package/types/src/ui/dialogs/customTuplets.d.ts +25 -25
  115. package/types/src/ui/dialogs/dialog.d.ts +201 -201
  116. package/types/src/ui/dialogs/durations.d.ts +2 -2
  117. package/types/src/ui/dialogs/dynamics.d.ts +37 -37
  118. package/types/src/ui/dialogs/endings.d.ts +61 -61
  119. package/types/src/ui/dialogs/factory.d.ts +15 -15
  120. package/types/src/ui/dialogs/fileDialogs.d.ts +4 -4
  121. package/types/src/ui/dialogs/fonts.d.ts +2 -2
  122. package/types/src/ui/dialogs/globalLayout.d.ts +2 -2
  123. package/types/src/ui/dialogs/gracenote.d.ts +2 -2
  124. package/types/src/ui/dialogs/hairpin.d.ts +35 -35
  125. package/types/src/ui/dialogs/instrument.d.ts +3 -3
  126. package/types/src/ui/dialogs/keySignature.d.ts +33 -33
  127. package/types/src/ui/dialogs/library.d.ts +70 -70
  128. package/types/src/ui/dialogs/lyric.d.ts +39 -39
  129. package/types/src/ui/dialogs/measureFormat.d.ts +52 -52
  130. package/types/src/ui/dialogs/microtones.d.ts +2 -2
  131. package/types/src/ui/dialogs/noteHead.d.ts +2 -2
  132. package/types/src/ui/dialogs/ornament.d.ts +2 -2
  133. package/types/src/ui/dialogs/pageLayout.d.ts +2 -2
  134. package/types/src/ui/dialogs/partInfo.d.ts +2 -2
  135. package/types/src/ui/dialogs/pedalMarking.d.ts +35 -35
  136. package/types/src/ui/dialogs/pitch.d.ts +2 -2
  137. package/types/src/ui/dialogs/preferences.d.ts +2 -2
  138. package/types/src/ui/dialogs/scoreId.d.ts +2 -2
  139. package/types/src/ui/dialogs/scoreView.d.ts +2 -2
  140. package/types/src/ui/dialogs/slur.d.ts +57 -57
  141. package/types/src/ui/dialogs/staffGroup.d.ts +2 -2
  142. package/types/src/ui/dialogs/tabNote.d.ts +32 -32
  143. package/types/src/ui/dialogs/tabStave.d.ts +43 -43
  144. package/types/src/ui/dialogs/tempo.d.ts +50 -50
  145. package/types/src/ui/dialogs/textBlock.d.ts +61 -61
  146. package/types/src/ui/dialogs/textBracket.d.ts +35 -35
  147. package/types/src/ui/dialogs/tie.d.ts +41 -41
  148. package/types/src/ui/dialogs/timeSignature.d.ts +34 -34
  149. package/types/src/ui/dialogs/transposeScore.d.ts +2 -2
  150. package/types/src/ui/dialogs/volta.d.ts +40 -40
  151. package/types/src/ui/eventSource.d.ts +63 -63
  152. package/types/src/ui/exceptions.d.ts +12 -12
  153. package/types/src/ui/fileio/fileInput.d.ts +12 -12
  154. package/types/src/ui/fileio/library.d.ts +40 -40
  155. package/types/src/ui/fileio/xhrLoader.d.ts +18 -18
  156. package/types/src/ui/help.d.ts +22 -22
  157. package/types/src/ui/i18n/language.d.ts +37 -37
  158. package/types/src/ui/i18n/language_ar.d.ts +5 -5
  159. package/types/src/ui/i18n/language_de.d.ts +1 -1
  160. package/types/src/ui/i18n/language_en.d.ts +18 -18
  161. package/types/src/ui/i18n/translationEditor.d.ts +14 -14
  162. package/types/src/ui/keyBindings/default/editorKeys.d.ts +7 -7
  163. package/types/src/ui/keyBindings/default/trackerKeys.d.ts +7 -7
  164. package/types/src/ui/menus/beams.d.ts +13 -13
  165. package/types/src/ui/menus/edit.d.ts +8 -8
  166. package/types/src/ui/menus/file.d.ts +26 -26
  167. package/types/src/ui/menus/help.d.ts +8 -8
  168. package/types/src/ui/menus/keySignature.d.ts +13 -13
  169. package/types/src/ui/menus/language.d.ts +12 -12
  170. package/types/src/ui/menus/manager.d.ts +57 -57
  171. package/types/src/ui/menus/measure.d.ts +8 -8
  172. package/types/src/ui/menus/menu.d.ts +136 -136
  173. package/types/src/ui/menus/note.d.ts +8 -8
  174. package/types/src/ui/menus/partSelection.d.ts +19 -19
  175. package/types/src/ui/menus/parts.d.ts +50 -50
  176. package/types/src/ui/menus/score.d.ts +20 -20
  177. package/types/src/ui/menus/staffModifier.d.ts +21 -21
  178. package/types/src/ui/menus/text.d.ts +8 -8
  179. package/types/src/ui/menus/timeSignature.d.ts +12 -12
  180. package/types/src/ui/menus/tuplets.d.ts +13 -13
  181. package/types/src/ui/menus/voices.d.ts +8 -8
  182. package/types/src/ui/modalDialogs.d.ts +1 -1
  183. package/types/src/ui/navigation.d.ts +15 -15
  184. package/types/src/ui/qwerty.d.ts +41 -41
  185. package/types/src/ui/ribbonLayout/default/defaultRibbon.d.ts +15 -15
  186. package/types/src/ui/ribbonLayout/default/tabletRibbon.d.ts +22 -22
  187. package/types/typedoc.d.ts +158 -158
@@ -1,222 +1,222 @@
1
- import { Note as VexNote, StaveNote as VexStaveNote, StemmableNote as VexStemmableNote, Beam as VexBeam, Tuplet as VexTuplet, Voice as VexVoice, Formatter as VexFormatter, Accidental as VexAccidental, Annotation as VexAnnotation, StaveNoteStruct as VexStaveNoteStruct, StaveText as VexStaveText, StaveModifier as VexStaveModifier, TextNote as VexTextNote, Stave as VexStave, StaveModifierPosition as VexStaveModifierPosition, Font as VexFont, FontInfo as VexFontInfo, FontStyle as VexFontStyle, FontWeight as VexFontWeight, TupletOptions as VexTupletOptions, Curve as VexCurve, StaveTie as VexStaveTie, ClefNote as VexClefNote, Music as VexMusic, ChordSymbol as VexChordSymbol, TabStave as VexTabStave, TabNote as VexTabNote, TabSlide as VexTabSlide, TabNotePosition as VexTabNotePosition, TabNoteStruct as VexTabNoteStruct, PedalMarking as VexPedalMarking, Stem as VexStem, Renderer as VexRenderer, RenderContext as VexRenderContext, SVGContext as VexSVGContext } from "vexflow_smoosic";
2
- import { SvgBox } from "../smo/data/common";
3
- export declare const VexFlow: typeof import("vexflow_smoosic").Flow;
4
- export type Music = VexMusic;
5
- export type Note = VexNote;
6
- export type StaveNote = VexStaveNote;
7
- export type Stem = VexStem;
8
- export type StemmableNote = VexStemmableNote;
9
- export type Beam = VexBeam;
10
- export type Tuplet = VexTuplet;
11
- export type TupletOptions = VexTupletOptions;
12
- export type PedalMarking = VexPedalMarking;
13
- export type Voice = VexVoice;
14
- export type Accidental = VexAccidental;
15
- export type Font = VexFont;
16
- export type FontInfo = VexFontInfo;
17
- export type FontStyle = VexFontStyle;
18
- export type FontWeight = VexFontWeight;
19
- export type Formatter = VexFormatter;
20
- export type Annotation = VexAnnotation;
21
- export type TextNote = VexTextNote;
22
- export type StaveNoteStruct = VexStaveNoteStruct;
23
- export type StaveModifier = VexStaveModifier;
24
- export type StaveText = VexStaveText;
25
- export type Stave = VexStave;
26
- export type Curve = VexCurve;
27
- export type StaveTie = VexStaveTie;
28
- export type ClefNote = VexClefNote;
29
- export type StaveModifierPosition = VexStaveModifierPosition;
30
- export type TabStave = VexTabStave;
31
- export type TabNote = VexTabNote;
32
- export type TabSlide = VexTabSlide;
33
- export type TabNotePosition = VexTabNotePosition;
34
- export type TabNoteStruct = VexTabNoteStruct;
35
- export type Renderer = VexRenderer;
36
- export type RenderContext = VexRenderContext;
37
- export type SVGContext = VexSVGContext;
38
- /**
39
- * @internal
40
- */
41
- export interface GlyphInfo {
42
- width: number;
43
- height: number;
44
- yTop: number;
45
- yBottom: number;
46
- spacingRight: number;
47
- vexGlyph: string | null;
48
- }
49
- /**
50
- * @internal
51
- */
52
- export interface CreateVexNoteParams {
53
- isTuplet: boolean;
54
- measureIndex: number;
55
- clef: string;
56
- stemTicks: string;
57
- keys: string[];
58
- noteType: string;
59
- isCue?: boolean;
60
- }
61
- /**
62
- * @internal
63
- */
64
- export interface SmoVexTupletParams {
65
- vexNotes: Note[];
66
- numNotes: number;
67
- notesOccupied: number;
68
- ratioed: boolean;
69
- bracketed: boolean;
70
- location: number;
71
- }
72
- export declare function chordSubscriptOffset(): number;
73
- export declare function chordSuperscriptOffset(): number;
74
- /**
75
- * @internal
76
- */
77
- export interface SmoVexVoiceParams {
78
- actualBeats: number;
79
- beatDuration: number;
80
- notes: Note[];
81
- }
82
- export declare function createVoice(params: SmoVexVoiceParams): VexVoice;
83
- /**
84
- * @internal
85
- */
86
- export interface SmoVexStaveParams {
87
- x: number;
88
- y: number;
89
- padLeft: number;
90
- id: string;
91
- staffX: number;
92
- staffY: number;
93
- staffWidth: number;
94
- forceClef: boolean;
95
- clef: string;
96
- forceKey: boolean;
97
- key: string;
98
- canceledKey: string | null;
99
- startX: number;
100
- adjX: number;
101
- lines: number;
102
- context: any;
103
- }
104
- export declare function createTabStave(box: SvgBox, spacing: number, numLines: number): TabStave;
105
- /**
106
- * Vex4 and Vex5 handle width differently. Vex5, width comes directly from the
107
- * font glyph, vex4 the glyph is a path so it comes from the stored information about
108
- * the path.
109
- *
110
- * @param smoGlyph
111
- * @returns
112
- */
113
- export declare function getGlyphWidth(smoGlyph: GlyphInfo): number;
114
- /**
115
- * V4 uses the glyph name, V5 uses the unicode value
116
- * @returns
117
- */
118
- export declare function getSlashGlyph(): import("vexflow_smoosic").GlyphNote;
119
- export declare function getRepeatBar(): import("vexflow_smoosic").GlyphNote;
120
- export declare function getMultimeasureRest(multimeasureLength: number): import("vexflow_smoosic").MultiMeasureRest;
121
- export declare function pitchToLedgerLine(vexPitch: string, clef: string): number;
122
- export declare function vexCanonicalNotes(): any;
123
- export declare function createStave(params: SmoVexStaveParams): VexStave;
124
- export declare function getVexTuplets(params: SmoVexTupletParams): VexTuplet;
125
- export declare function getVexNoteParameters(params: CreateVexNoteParams): {
126
- noteParams: StaveNoteStruct;
127
- duration: string;
128
- };
129
- /**
130
- * @internal
131
- */
132
- export interface SmoVexStemParams {
133
- voiceCount: number;
134
- voiceIx: number;
135
- isAuto: boolean;
136
- isUp: boolean;
137
- }
138
- export declare function applyStemDirection(params: SmoVexStemParams, vxParams: StaveNoteStruct): void;
139
- export declare function createStaveText(text: string, position: number, options: any): VexStaveText;
140
- /**
141
- * @internal
142
- */
143
- export interface SmoVexHairpinParams {
144
- vxStart: Note | null;
145
- vxEnd: Note | null;
146
- hairpinType: number;
147
- height: number;
148
- yOffset: number;
149
- leftShiftPx: number;
150
- rightShiftPx: number;
151
- }
152
- export declare function createHairpin(params: SmoVexHairpinParams): import("vexflow_smoosic").StaveHairpin;
153
- /**
154
- * @internal
155
- */
156
- export interface SmoVexSlurParameters {
157
- vxStart: Note | null;
158
- vxEnd: Note | null;
159
- thickness: number;
160
- xShift: number;
161
- yShift: number;
162
- cps: DOMPoint[];
163
- openingDirection: string;
164
- position: number;
165
- positionEnd: number;
166
- }
167
- export declare const defaultMeasurePadding: number;
168
- export declare function createSlur(params: SmoVexSlurParameters): Curve;
169
- /**
170
- * @internal
171
- */
172
- export interface SmoVexTieParams {
173
- fromLines: number[];
174
- toLines: number[];
175
- firstNote: Note | null;
176
- lastNote: Note | null;
177
- vexOptions: any;
178
- }
179
- export declare function createTie(params: SmoVexTieParams): StaveTie;
180
- export declare const vexNoteScale: number;
181
- export declare const defaultNoteScale: number;
182
- export declare const defaultCueScale: number;
183
- export declare function glyphPixels(): number;
184
- export declare function setFontStack(font: string): void;
185
- /**
186
- * Render a dynamics glyph. Return the height of width/height of the glyph
187
- * @param context
188
- * @param text
189
- * @param fontSize
190
- * @param x
191
- * @param y
192
- * @returns
193
- */
194
- export declare function renderDynamics(context: any, text: string, fontSize: number, x: number, y: number): {
195
- width: number;
196
- height: number;
197
- };
198
- export declare function getOrnamentGlyph(glyph: string): string;
199
- export declare function addChordGlyph(cs: VexChordSymbol, symbol: string): void;
200
- /**
201
- * get a glyph code to render
202
- * @param code
203
- * @returns
204
- */
205
- export declare function getVexGlyphFromChordCode(code: string): string;
206
- export declare function createTextNote(code: string): VexTextNote;
207
- /**
208
- * Get the chord symbol glyph from the vex glyph
209
- * @export
210
- * @param {string} code
211
- * @return {*}
212
- */
213
- export declare function getChordSymbolGlyphFromCode(code: string): string;
214
- export declare function getChordSymbolMetricsForGlyph(code: string): import("vexflow_smoosic").ChordSymbolGlyphMetrics;
215
- /**
216
- * Vex 5 compatibility. yShift
217
- */
218
- export declare function blockMetricsYShift(metrics: any): any;
219
- export declare const ChordSymbolGlyphs: Record<string, {
220
- code: string;
221
- }>;
222
- export declare const vexOrnaments: Record<string, string>;
1
+ import { Note as VexNote, StaveNote as VexStaveNote, StemmableNote as VexStemmableNote, Beam as VexBeam, Tuplet as VexTuplet, Voice as VexVoice, Formatter as VexFormatter, Accidental as VexAccidental, Annotation as VexAnnotation, StaveNoteStruct as VexStaveNoteStruct, StaveText as VexStaveText, StaveModifier as VexStaveModifier, TextNote as VexTextNote, Stave as VexStave, StaveModifierPosition as VexStaveModifierPosition, Font as VexFont, FontInfo as VexFontInfo, FontStyle as VexFontStyle, FontWeight as VexFontWeight, TupletOptions as VexTupletOptions, Curve as VexCurve, StaveTie as VexStaveTie, ClefNote as VexClefNote, Music as VexMusic, ChordSymbol as VexChordSymbol, TabStave as VexTabStave, TabNote as VexTabNote, TabSlide as VexTabSlide, TabNotePosition as VexTabNotePosition, TabNoteStruct as VexTabNoteStruct, PedalMarking as VexPedalMarking, Stem as VexStem, Renderer as VexRenderer, RenderContext as VexRenderContext, SVGContext as VexSVGContext } from "vexflow_smoosic";
2
+ import { SvgBox } from "../smo/data/common";
3
+ export declare const VexFlow: typeof import("vexflow_smoosic").Flow;
4
+ export type Music = VexMusic;
5
+ export type Note = VexNote;
6
+ export type StaveNote = VexStaveNote;
7
+ export type Stem = VexStem;
8
+ export type StemmableNote = VexStemmableNote;
9
+ export type Beam = VexBeam;
10
+ export type Tuplet = VexTuplet;
11
+ export type TupletOptions = VexTupletOptions;
12
+ export type PedalMarking = VexPedalMarking;
13
+ export type Voice = VexVoice;
14
+ export type Accidental = VexAccidental;
15
+ export type Font = VexFont;
16
+ export type FontInfo = VexFontInfo;
17
+ export type FontStyle = VexFontStyle;
18
+ export type FontWeight = VexFontWeight;
19
+ export type Formatter = VexFormatter;
20
+ export type Annotation = VexAnnotation;
21
+ export type TextNote = VexTextNote;
22
+ export type StaveNoteStruct = VexStaveNoteStruct;
23
+ export type StaveModifier = VexStaveModifier;
24
+ export type StaveText = VexStaveText;
25
+ export type Stave = VexStave;
26
+ export type Curve = VexCurve;
27
+ export type StaveTie = VexStaveTie;
28
+ export type ClefNote = VexClefNote;
29
+ export type StaveModifierPosition = VexStaveModifierPosition;
30
+ export type TabStave = VexTabStave;
31
+ export type TabNote = VexTabNote;
32
+ export type TabSlide = VexTabSlide;
33
+ export type TabNotePosition = VexTabNotePosition;
34
+ export type TabNoteStruct = VexTabNoteStruct;
35
+ export type Renderer = VexRenderer;
36
+ export type RenderContext = VexRenderContext;
37
+ export type SVGContext = VexSVGContext;
38
+ /**
39
+ * @internal
40
+ */
41
+ export interface GlyphInfo {
42
+ width: number;
43
+ height: number;
44
+ yTop: number;
45
+ yBottom: number;
46
+ spacingRight: number;
47
+ vexGlyph: string | null;
48
+ }
49
+ /**
50
+ * @internal
51
+ */
52
+ export interface CreateVexNoteParams {
53
+ isTuplet: boolean;
54
+ measureIndex: number;
55
+ clef: string;
56
+ stemTicks: string;
57
+ keys: string[];
58
+ noteType: string;
59
+ isCue?: boolean;
60
+ }
61
+ /**
62
+ * @internal
63
+ */
64
+ export interface SmoVexTupletParams {
65
+ vexNotes: Note[];
66
+ numNotes: number;
67
+ notesOccupied: number;
68
+ ratioed: boolean;
69
+ bracketed: boolean;
70
+ location: number;
71
+ }
72
+ export declare function chordSubscriptOffset(): number;
73
+ export declare function chordSuperscriptOffset(): number;
74
+ /**
75
+ * @internal
76
+ */
77
+ export interface SmoVexVoiceParams {
78
+ actualBeats: number;
79
+ beatDuration: number;
80
+ notes: Note[];
81
+ }
82
+ export declare function createVoice(params: SmoVexVoiceParams): VexVoice;
83
+ /**
84
+ * @internal
85
+ */
86
+ export interface SmoVexStaveParams {
87
+ x: number;
88
+ y: number;
89
+ padLeft: number;
90
+ id: string;
91
+ staffX: number;
92
+ staffY: number;
93
+ staffWidth: number;
94
+ forceClef: boolean;
95
+ clef: string;
96
+ forceKey: boolean;
97
+ key: string;
98
+ canceledKey: string | null;
99
+ startX: number;
100
+ adjX: number;
101
+ lines: number;
102
+ context: any;
103
+ }
104
+ export declare function createTabStave(box: SvgBox, spacing: number, numLines: number): TabStave;
105
+ /**
106
+ * Vex4 and Vex5 handle width differently. Vex5, width comes directly from the
107
+ * font glyph, vex4 the glyph is a path so it comes from the stored information about
108
+ * the path.
109
+ *
110
+ * @param smoGlyph
111
+ * @returns
112
+ */
113
+ export declare function getGlyphWidth(smoGlyph: GlyphInfo): number;
114
+ /**
115
+ * V4 uses the glyph name, V5 uses the unicode value
116
+ * @returns
117
+ */
118
+ export declare function getSlashGlyph(): import("vexflow_smoosic").GlyphNote;
119
+ export declare function getRepeatBar(): import("vexflow_smoosic").GlyphNote;
120
+ export declare function getMultimeasureRest(multimeasureLength: number): import("vexflow_smoosic").MultiMeasureRest;
121
+ export declare function pitchToLedgerLine(vexPitch: string, clef: string): number;
122
+ export declare function vexCanonicalNotes(): any;
123
+ export declare function createStave(params: SmoVexStaveParams): VexStave;
124
+ export declare function getVexTuplets(params: SmoVexTupletParams): VexTuplet;
125
+ export declare function getVexNoteParameters(params: CreateVexNoteParams): {
126
+ noteParams: StaveNoteStruct;
127
+ duration: string;
128
+ };
129
+ /**
130
+ * @internal
131
+ */
132
+ export interface SmoVexStemParams {
133
+ voiceCount: number;
134
+ voiceIx: number;
135
+ isAuto: boolean;
136
+ isUp: boolean;
137
+ }
138
+ export declare function applyStemDirection(params: SmoVexStemParams, vxParams: StaveNoteStruct): void;
139
+ export declare function createStaveText(text: string, position: number, options: any): VexStaveText;
140
+ /**
141
+ * @internal
142
+ */
143
+ export interface SmoVexHairpinParams {
144
+ vxStart: Note | null;
145
+ vxEnd: Note | null;
146
+ hairpinType: number;
147
+ height: number;
148
+ yOffset: number;
149
+ leftShiftPx: number;
150
+ rightShiftPx: number;
151
+ }
152
+ export declare function createHairpin(params: SmoVexHairpinParams): import("vexflow_smoosic").StaveHairpin;
153
+ /**
154
+ * @internal
155
+ */
156
+ export interface SmoVexSlurParameters {
157
+ vxStart: Note | null;
158
+ vxEnd: Note | null;
159
+ thickness: number;
160
+ xShift: number;
161
+ yShift: number;
162
+ cps: DOMPoint[];
163
+ openingDirection: string;
164
+ position: number;
165
+ positionEnd: number;
166
+ }
167
+ export declare const defaultMeasurePadding: number;
168
+ export declare function createSlur(params: SmoVexSlurParameters): Curve;
169
+ /**
170
+ * @internal
171
+ */
172
+ export interface SmoVexTieParams {
173
+ fromLines: number[];
174
+ toLines: number[];
175
+ firstNote: Note | null;
176
+ lastNote: Note | null;
177
+ vexOptions: any;
178
+ }
179
+ export declare function createTie(params: SmoVexTieParams): StaveTie;
180
+ export declare const vexNoteScale: number;
181
+ export declare const defaultNoteScale: number;
182
+ export declare const defaultCueScale: number;
183
+ export declare function glyphPixels(): number;
184
+ export declare function setFontStack(font: string): void;
185
+ /**
186
+ * Render a dynamics glyph. Return the height of width/height of the glyph
187
+ * @param context
188
+ * @param text
189
+ * @param fontSize
190
+ * @param x
191
+ * @param y
192
+ * @returns
193
+ */
194
+ export declare function renderDynamics(context: any, text: string, fontSize: number, x: number, y: number): {
195
+ width: number;
196
+ height: number;
197
+ };
198
+ export declare function getOrnamentGlyph(glyph: string): string;
199
+ export declare function addChordGlyph(cs: VexChordSymbol, symbol: string): void;
200
+ /**
201
+ * get a glyph code to render
202
+ * @param code
203
+ * @returns
204
+ */
205
+ export declare function getVexGlyphFromChordCode(code: string): string;
206
+ export declare function createTextNote(code: string): VexTextNote;
207
+ /**
208
+ * Get the chord symbol glyph from the vex glyph
209
+ * @export
210
+ * @param {string} code
211
+ * @return {*}
212
+ */
213
+ export declare function getChordSymbolGlyphFromCode(code: string): string;
214
+ export declare function getChordSymbolMetricsForGlyph(code: string): import("vexflow_smoosic").ChordSymbolGlyphMetrics;
215
+ /**
216
+ * Vex 5 compatibility. yShift
217
+ */
218
+ export declare function blockMetricsYShift(metrics: any): any;
219
+ export declare const ChordSymbolGlyphs: Record<string, {
220
+ code: string;
221
+ }>;
222
+ export declare const vexOrnaments: Record<string, string>;
@@ -1,25 +1,25 @@
1
- import { SmoSelector } from '../../smo/xform/selections';
2
- import { SuiScoreView } from '../sui/scoreView';
3
- /**
4
- * A generic function that can be sent used to animate playback
5
- */
6
- export type AudioAnimationHandler = (view: SuiScoreView, selector: SmoSelector, offsetPct: number, durationPct: number) => void;
7
- /**
8
- * A generic function that can be sent used to clean up playback animation
9
- */
10
- export type ClearAudioAnimationHandler = (delay: number) => void;
11
- /**
12
- * Allow users to specify their own music playback animations.
13
- * @category SuiAudio
14
- */
15
- export interface SuiAudioAnimationParams {
16
- audioAnimationHandler: AudioAnimationHandler;
17
- clearAudioAnimationHandler: ClearAudioAnimationHandler;
18
- }
19
- export declare const defaultClearAudioAnimationHandler: (delay: number) => void;
20
- /**
21
- * default implementation of playback animation.
22
- * @category SuiAudio
23
- * @returns
24
- */
25
- export declare const defaultAudioAnimationHandler: (view: SuiScoreView, selector: SmoSelector, offsetPct: number, durationPct: number) => void;
1
+ import { SmoSelector } from '../../smo/xform/selections';
2
+ import { SuiScoreView } from '../sui/scoreView';
3
+ /**
4
+ * A generic function that can be sent used to animate playback
5
+ */
6
+ export type AudioAnimationHandler = (view: SuiScoreView, selector: SmoSelector, offsetPct: number, durationPct: number) => void;
7
+ /**
8
+ * A generic function that can be sent used to clean up playback animation
9
+ */
10
+ export type ClearAudioAnimationHandler = (delay: number) => void;
11
+ /**
12
+ * Allow users to specify their own music playback animations.
13
+ * @category SuiAudio
14
+ */
15
+ export interface SuiAudioAnimationParams {
16
+ audioAnimationHandler: AudioAnimationHandler;
17
+ clearAudioAnimationHandler: ClearAudioAnimationHandler;
18
+ }
19
+ export declare const defaultClearAudioAnimationHandler: (delay: number) => void;
20
+ /**
21
+ * default implementation of playback animation.
22
+ * @category SuiAudio
23
+ * @returns
24
+ */
25
+ export declare const defaultAudioAnimationHandler: (view: SuiScoreView, selector: SmoSelector, offsetPct: number, durationPct: number) => void;