@ukegeeks/song-formatter
Version:
Convert ChordPro markup text to HTML with chord fingering diagrams
3 lines • 48.1 kB
JavaScript
/*! For license information please see song-formatter.bundle.js.LICENSE.txt */
(()=>{"use strict";var e={794:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.InstrumentTunings=t.chordNameAliases=void 0,t.chordNameAliases=Object.freeze({"A#":"Bb",Db:"C#","D#":"Eb",Gb:"F#",Ab:"G#"}),t.InstrumentTunings=Object.freeze({none:0,sopranoUke:0,baritoneUke:5})},687:function(e,t,n){var s=this&&this.__createBinding||(Object.create?function(e,t,n,s){void 0===s&&(s=n);var r=Object.getOwnPropertyDescriptor(t,n);r&&!("get"in r?!t.__esModule:r.writable||r.configurable)||(r={enumerable:!0,get:function(){return t[n]}}),Object.defineProperty(e,s,r)}:function(e,t,n,s){void 0===s&&(s=n),e[s]=t[n]}),r=this&&this.__exportStar||function(e,t){for(var n in e)"default"===n||Object.prototype.hasOwnProperty.call(t,n)||s(t,e,n)},i=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.sopranoUkuleleGcea=t.settings=t.getNumStrings=t.getLastStringName=void 0;const o=i(n(450));t.settings=o.default;const f=i(n(4));t.sopranoUkuleleGcea=f.default,t.getLastStringName=o.default.getLastStringName,t.getNumStrings=o.default.getNumStrings,r(n(794),t)},450:(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0});const s=n(794),r=Object.seal({fonts:{dot:"9pt Arial Black,Arial",text:"bold 14pt Arial",fret:"bold 13pt Arial"},colors:{fretLines:"#003366",dots:"#ff0000",dotText:"#ffffff",text:"#000000",fretText:"#4a4a4a",xStroke:"#444444"},fretBox:{showText:!0,height:150,width:100,fretSpace:20,stringSpace:20,dotRadius:8,lineWidth:1.6,topLeftPos:{x:22,y:25},xWidth:9,xStroke:1.6*1.6,fonts:{}},inlineFretBox:{showText:!1,height:50,width:40,fretSpace:9,stringSpace:7,dotRadius:3,lineWidth:1,topLeftPos:{x:10,y:2},xWidth:.7*7,xStroke:1.4,fonts:{dot:"8pt Arial",text:"8pt Arial",fret:"8pt Arial"}},ids:{songMeta:"ukeSongMeta",songText:"ukeSongText",canvas:"ukeChordsCanvas",container:"ukeSongContainer"},wrapClasses:{songMeta:"ugs-song-meta",wrap:".ugs-song-wrap",diagrams:".ugs-diagrams-wrap",text:".ugs-source-wrap"},opts:{columnsEnabled:!0,retainBrackets:!1,ignoreCommonChords:!1,sortAlphabetical:!1,autoFixOverlaps:!0,debugVerbose:!1},inlineDiagrams:!1,numFrets:5,tuning:["G","C","E","A"],getNumStrings:()=>r.tuning.length,getLastStringName:()=>r.tuning[0],defaultInstrument:s.InstrumentTunings.none,tabs:{lineSpacing:16,noteSpacing:14,lineWidth:1,lineColor:"#999999",labelWidth:12,labelFont:"10pt Arial, Helvetica, Verdana, Geneva, sans-serif",dotColor:"#eaeaea",dotRadius:10,textFont:"bold 12pt Arial, Helvetica, Verdana, Geneva, sans-serif",textColor:"#000000",bottomPadding:10},commonChords:["A","B","C","D","E","F","G","Am"]});t.default=r},250:function(e,t,n){var s=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.runLines=t.runLine=t.toDots=void 0;const r=s(n(248)),i=n(517),o=n(687),f=Object.freeze({ADD_SPLIT:/\b(string|fret|finger)\b/,KEYWORDS_SPLIT:/(\bdefine\s*:\s*|\bfrets\b|\bfingers\b|\badd\s*:\s*\b)/,SPACES_SPLIT:/\s+/,KEYWORDS:/.*(define|frets|fingers|add).*/g,TRIM:/^\s*{\s*|\s*}\s*$/g,HAS_DEFINE_TAG:/^\s*{\s*define\s*:.*}\s*$/});function l(e,t){const{tuning:n}=o.settings;return n.reduce(((n,s,i)=>{const o=e[i],f="string"==typeof o?parseInt(o,10):o;if(f>0){const e=t.length-1>=i?parseInt(t[i],10):0;n.push(new r.default(i,f,e))}return n}),[])}function a(e){if(!f.HAS_DEFINE_TAG.test(`${e}`))return null;const t=(e=`${e||""}`.replace(f.TRIM,"")).split(f.KEYWORDS_SPLIT);let n=null;const s=t.reduce(((e,t)=>{if(t=t.trim(),!n&&f.KEYWORDS.test(t))n=t.replace(f.KEYWORDS,"$1").toLowerCase();else{if(n&&t)switch(n){case"add":{const n=function(e){const t=e.split(f.ADD_SPLIT);let n=null;return t.reduce(((e,t)=>(t=t.trim(),!n&&f.ADD_SPLIT.test(t)?n=t.toLowerCase():(n&&t&&(e[n]=parseInt(t,10)+("string"===n?-1:0)),n=null),e)),{string:null,fret:null,finger:null})}(t);n&&e.add.push(n);break}case"define":e.name=t;break;default:e[n]=function(e){let t=e.toLowerCase().split(f.SPACES_SPLIT);return t[0].length===e.length&&e.length===o.settings.getNumStrings()&&(t=e.split("")),t.map((e=>"x"===e?"x":parseInt(e,10)))}(t)}n=null}return e}),{name:"",frets:[],fingers:[],add:[]});return s.name?{name:s.name,dots:[...l(s.frets,s.fingers),...s.add.map((({string:e,fret:t,finger:n})=>new r.default(e,t,n)))],muted:s.frets.map((e=>"x"===e))}:((0,i.log)(`bad "define" instruction: chord name not found: ${e}`),null)}t.toDots=l,t.runLine=a,t.runLines=function(e){return e.map((e=>a(e))).filter(Boolean)}},709:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.default=class{constructor(e){this.name="",this.dots=[],this.muted=[],this.name=e}}},248:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.default=class{constructor(e,t,n){this.string=null,this.fret=null,this.finger=null,this.string=e,this.fret=t,this.finger=n}}},469:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.default=class{constructor(){this.title="",this.album="",this.artist="",this.st="",this.st2="",this.key="",this.hasChords=!1,this.ugsMeta=[],this.chordDefs=[],this.chordNames=[],this.columnCount=1,this.songBlocks=[]}}},596:function(e,t,n){var s=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.__test__=t.parseCPM=void 0;const r=n(64),i=n(823),o=n(121),f=n(250),l=s(n(793)),a=s(n(469)),u=n(96),d=s(n(618)),c=n(687),g={BLOCKS:/\s*{\s*(start_of_tabs?|sot|start_of_chorus|soc|end_of_tabs?|eot|end_of_chorus|eoc)\s*}\s*/im,TAB_BLOCKS:/\s*{\s*(start_of_tabs?|sot)\s*}\s*/im,CHORUS_BLOCKS:/\s*{\s*(start_of_chorus|soc)\s*}\s*/im,PRE_TAG:/<\/?pre>/gim,HTML_COMMENT:/<!--(.|\n)*?-->/gm,COLUMN_BREAK:/\s*{\s*(column_break|colb|np|new_page)\s*}\s*/im,CHORD:/\[(.+?)]/i,ALL_CHORDS:/\[(.+?)]/gim,INSTRUCTION:/\{[^}]+?:.*?\}/im,COMMAND_ARGS:/\{.+?:(.*)\}/gi,COMMAND_VERB:/\{(.+?)\s*:.*\}/gi};let p=!1,h=1,y="";const m=e=>e.type!==r.BlockTypes.TabBlock,b=e=>!m(e);function C(e){return g.CHORUS_BLOCKS.test(e)?r.BlockTypes.ChorusBlock:g.TAB_BLOCKS.test(e)?r.BlockTypes.TabBlock:r.BlockTypes.TextBlock}function _(e,t){const n=[];return e.filter((e=>e.type===t)).forEach((e=>n.push(e.lines[0]))),e.filter((e=>e.type===r.BlockTypes.TextBlock)).filter(m).forEach((e=>{e.lines.filter((e=>e.type===t)).forEach((e=>n.push(e.lines[0])))})),n}t.parseCPM=function(e){const t=new a.default,n=t.songBlocks=function(e){const t=function(e){let t=!1;const n=[];let s={type:r.BlockTypes.Comment,lines:[]};return e.split("\n").filter((e=>"#"!==e[0])).forEach((e=>{const r=g.BLOCKS.test(e);r||!t?(t&&n.push(s),t=!0,s={type:C(e),lines:[]},r||s.lines.push(e)):(e=e.trim())&&s.lines.push(e)})),s.lines.length&&n.push(s),n}(e=S(e));return function(e){const t={[r.CpmInstructions.title]:r.BlockTypes.Title,[r.CpmInstructions.titleShort]:r.BlockTypes.Title,[r.CpmInstructions.artist]:r.BlockTypes.Artist,[r.CpmInstructions.subtitle]:r.BlockTypes.Subtitle,[r.CpmInstructions.subtitleShort]:r.BlockTypes.Subtitle,[r.CpmInstructions.album]:r.BlockTypes.Album,[r.CpmInstructions.comment]:r.BlockTypes.Comment,[r.CpmInstructions.commentShort]:r.BlockTypes.Comment,[r.CpmInstructions.key]:r.BlockTypes.Key,[r.CpmInstructions.keyShort]:r.BlockTypes.Key,[r.CpmInstructions.define]:r.BlockTypes.ChordDefinition,[r.CpmInstructions.ugsMeta]:r.BlockTypes.UkeGeeksMeta};e.filter(m).forEach((e=>{e.lines=e.lines.map((e=>{if("string"!=typeof e||!g.INSTRUCTION.test(e))return e;const n=e.replace(g.COMMAND_ARGS,"$1"),s=e.replace(g.COMMAND_VERB,"$1").toLowerCase().replace(/\r/,"");return{type:t[s]||`Undefined-${s}`,lines:[n.trim()]}}))}))}(t),function(e){e.filter(m).forEach((e=>{e.lines=e.lines.map((e=>{if("string"!=typeof e||!g.COLUMN_BREAK.test(e))return e;switch(e.replace(g.COLUMN_BREAK,"$1").toLowerCase()){case r.CpmInstructions.columnBreak:case r.CpmInstructions.columnBreakShort:h++,e={type:r.BlockTypes.ColumnBreak,lines:[]};break;case r.CpmInstructions.newPage:case r.CpmInstructions.newPageShort:e={type:r.BlockTypes.NewPage,lines:[]}}return e}))}))}(t),function(e){let t,n;e.filter((e=>e.type===r.BlockTypes.TextBlock||e.type===r.BlockTypes.ChorusBlock)).filter(m).forEach((e=>{e.lines=e.lines.map((e=>{if("string"!=typeof e)return e;if(t=g.CHORD.test(e),p=p||t,n=t&&e.replace(g.ALL_CHORDS,"").trim().length<1,t&&""===y){const t=e.match(g.CHORD);t&&(y=t[1])}return{type:n?r.BlockTypes.ChordOnlyText:t?r.BlockTypes.ChordText:r.BlockTypes.PlainText,lines:[e]}}))}))}(t),function(e){e.filter(b).forEach((e=>{const{lines:t}=e;Object.assign((0,u.clean)(e),(0,o.readTabs)(t))}))}(t),c.settings.opts.debugVerbose&&(0,i.echo)(t),t}(e);let s;return t.hasChords=p,t.columnCount=h,s=_(n,r.BlockTypes.Title),s.length&&(t.title=s[0]),s=_(n,r.BlockTypes.Artist),s.length&&(t.artist=s[0]),s=_(n,r.BlockTypes.Subtitle),s.length&&(t.st=s[0],s.length>1&&(t.st2=s[1])),s=_(n,r.BlockTypes.Album),s.length&&(t.album=s[0]),s=_(n,r.BlockTypes.UkeGeeksMeta),s.length&&(t.ugsMeta=s),s=_(n,r.BlockTypes.Key),s.length?t.key=s[0]:""!==y&&(t.key=y),s=_(n,r.BlockTypes.ChordDefinition),s.forEach((e=>{const n=(0,f.runLine)(`{define: ${e}}`);n&&t.chordDefs.push(n)})),d.default.replace(t.chordDefs),t.chordNames=(0,l.default)(e),c.settings.opts.debugVerbose&&u.logger.json(t),t};const S=e=>e.replace(g.PRE_TAG,"").replace(g.HTML_COMMENT,"");t.__test__={stripHtml:S}},823:(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.echo=void 0;const s=n(64),r=n(96),i=e=>Object.keys(s.BlockTypes).find((t=>s.BlockTypes[t]===e))||"unknown";t.echo=function(e){e.forEach(((e,t)=>{const{type:n}=e,o=i(n);if(e&&n===s.BlockTypes.TabBlock){const{tabs:s}=e;return r.logger.log(`>> ${t}. ${n} node ("${o}"), ${s.length} lines`),void r.logger.json(s)}const{lines:f}=e;r.logger.log(`>> ${t}. ${n} node ("${o}"), ${f.length} lines`),f.forEach((e=>{"string"!=typeof e?e.lines.length?r.logger.log(Object.assign(Object.assign({},e),{typeName:i(e.type)})):r.logger.log({type:e.type,typeName:i(e.type)}):r.logger.log(e)}))}))}},517:(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.echo=t.log=void 0;const s=n(96),r=[];t.log=e=>r.push(e),t.echo=()=>r.forEach(((e,t)=>s.logger.log(`${t}. ${e}`)))},793:(e,t)=>{function n(e){const t=e.match(/\[(.+?)]/gim);return t?t.reduce(((e,t)=>(e.includes(t)||e.push(t),e)),[]).map((e=>e.replace("[","").replace("]",""))):[]}Object.defineProperty(t,"__esModule",{value:!0}),t.getChordNames=void 0,t.getChordNames=n,t.default=n},805:function(e,t,n){var s=this&&this.__createBinding||(Object.create?function(e,t,n,s){void 0===s&&(s=n);var r=Object.getOwnPropertyDescriptor(t,n);r&&!("get"in r?!t.__esModule:r.writable||r.configurable)||(r={enumerable:!0,get:function(){return t[n]}}),Object.defineProperty(e,s,r)}:function(e,t,n,s){void 0===s&&(s=n),e[s]=t[n]}),r=this&&this.__exportStar||function(e,t){for(var n in e)"default"===n||Object.prototype.hasOwnProperty.call(t,n)||s(t,e,n)},i=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.runBlock=t.runLine=t.parseCPM=t.BlockTypes=t.Song=t.Dot=t.Chord=void 0;const o=i(n(469));t.Song=o.default;const f=i(n(248));t.Dot=f.default;const l=i(n(709));t.Chord=l.default,r(n(82),t);var a=n(64);Object.defineProperty(t,"BlockTypes",{enumerable:!0,get:function(){return a.BlockTypes}});var u=n(596);Object.defineProperty(t,"parseCPM",{enumerable:!0,get:function(){return u.parseCPM}});var d=n(250);Object.defineProperty(t,"runLine",{enumerable:!0,get:function(){return d.runLine}});var c=n(626);Object.defineProperty(t,"runBlock",{enumerable:!0,get:function(){return c.runBlock}})},64:(e,t)=>{var n,s;Object.defineProperty(t,"__esModule",{value:!0}),t.CpmInstructions=t.BlockTypes=void 0,(s=t.BlockTypes||(t.BlockTypes={}))[s.TextBlock=1]="TextBlock",s[s.ChorusBlock=2]="ChorusBlock",s[s.TabBlock=3]="TabBlock",s[s.Comment=101]="Comment",s[s.Title=102]="Title",s[s.Subtitle=103]="Subtitle",s[s.Album=104]="Album",s[s.ChordDefinition=105]="ChordDefinition",s[s.UkeGeeksMeta=106]="UkeGeeksMeta",s[s.ColumnBreak=107]="ColumnBreak",s[s.Artist=108]="Artist",s[s.NewPage=109]="NewPage",s[s.Key=110]="Key",s[s.ChordText=201]="ChordText",s[s.PlainText=202]="PlainText",s[s.ChordOnlyText=203]="ChordOnlyText",s[s.Undefined=666]="Undefined",(n=t.CpmInstructions||(t.CpmInstructions={})).title="title",n.titleShort="t",n.subtitle="subtitle",n.subtitleShort="st",n.album="album",n.artist="artist",n.comment="comment",n.commentShort="c",n.key="key",n.keyShort="k",n.define="define",n.columnBreak="column_break",n.columnBreakShort="colb",n.newPage="new_page",n.newPageShort="np",n.ugsMeta="ukegeeks-meta"},82:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0})},626:function(e,t,n){var s=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.__test__=t.runBlock=void 0;const r=n(687),i=n(96),o=s(n(540)),f=n(250),l=Object.freeze({INSTRUMENT:/{\s*instrument\s*:\s*(.*?)\s*}/i,TUNING:/{\s*tuning\s*:\s*([^}]+?)\s*}/i});function a(e){const t=e.match(l.TUNING);return t?t[1].split(/\s+/):null}t.runBlock=function(e){let t=e.split("\n");t.length<2&&(t=e.split("{"));const n=function(e){const t=e.match(l.INSTRUMENT);return t?(0,i.pack)(t[1]):null}(e)||"",s=a(e)||[];r.settings.tuning=s;const u=(0,f.runLines)(t);return new o.default(function(e,t){let n=e.replace(" ","-");return t.forEach((e=>{n+=`-${e}`})),n.toLowerCase()}(n,s),n,s,u)},t.__test__={getTuning:a}},121:(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.__test__=t.readTabs=void 0;const s=n(64),r=n(687),i=Object.freeze({INT:/(\d+)/g,TWO_DIGITS:/(\d{2})/g,ONE_DIGIT:/(\d)/g,DOUBLE_DASH:/--/g,SINGLE_DASH:/ -/g,TRAILING_DASH:/-+$/g});function o(e){e.forEach(((t,n)=>{e[n]=t.substr(1)}))}function f(e){const t=[];for(let n=0;n<(0,r.getNumStrings)();n++)t[n]=e[n].match(i.INT)||[];return t}function l(e){return e.slice(0,(0,r.getNumStrings)()).reduce(((e,t)=>(e.push(t.replace(i.TWO_DIGITS,"-*").replace(i.ONE_DIGIT,"*")),e)),[])}function a(e){return e.slice(0,(0,r.getNumStrings)()).reduce(((e,t)=>((t=t.trim().replace(i.TRAILING_DASH,"")).length>e&&(e=t.length),e)),0)}function u(e,t){let n="";for(let s=0;s<t;s++)"|"===e[0][s]?n+="|":n+=e.some((e=>"*"===e[s]))?"*":"-";n=n.replace(i.DOUBLE_DASH,"- ");let s=n;for(;n=n.replace(i.SINGLE_DASH," "),n!==s;)s=n;return n}function d(e,t,n,s){const i=Array((0,r.getNumStrings)()).fill("*").map((()=>[]));return i.forEach(((r,o)=>{let f=0,l=0;n.split("").slice(0,s).forEach(((n,s)=>{if(" "===n)return;let r="";"*"===t[o][s]?(r=e[o][l],l++):r="|"===n?"|":"-",i[o][f]=r,f++}))})),i}t.readTabs=function(e){const t=e[(0,r.getNumStrings)()-1][0]===(0,r.getLastStringName)();t&&o(e);const n=f(e),i=l(e),c=a(e),g=u(i,c);return{type:s.BlockTypes.TabBlock,tabs:d(n,i,g,c),hasLabels:t}},t.__test__={getFretNumbers:f,getGuideLine:u,getMinLineLength:a,getPackedLines:d,getSymbols:l,stripStringLabels:o}},164:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.SvgChordStyles=t.SongStyles=t.RefDiagramsStyles=t.PageStyles=t.ChordsStyles=void 0,t.ChordsStyles={INLINE_SPACER:"ugsInlineSpacer"},t.PageStyles=Object.freeze({INLINE_DIAGRAMS:"ugsInlineDiagrams",NO_CHORDS:"ugsNoChords"}),t.RefDiagramsStyles=Object.freeze({IGNORED_CHORDS:"ugsIgnoredChords"}),t.SongStyles=Object.freeze({Title:"ugsTitle",Subtitle:"ugsSubtitle",Album:"ugsAlbum",Artist:"ugsArtist",UgsMeta:"ugsUgsMeta",Comment:"ugsComment",Tabs:"ugsTabs",Chorus:"ugsChorus",PreChords:"ugsChords",PrePlain:"ugsPlain",NoLyrics:"ugsNoLyrics",ColumnWrap:"ugsWrap",ColumnCount:"ugsColumnCount",Column:"ugsColumn",NewPage:"ugsNewPage"}),t.SvgChordStyles={CHORD_IMG:"ugs-diagrams--chord-img"}},313:(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.markupChords=void 0;const s=n(687),r=n(164);t.markupChords=function(e,t){return function(e){if(s.settings.inlineDiagrams){const t=/(<\/strong><\/code>)[ \t]*(<code data-chordName="[^"]*"><strong>)/gi;return e.replace(t,`$1<span class="${r.ChordsStyles.INLINE_SPACER}"> </span>$2`)}return e.replace(/<\/strong><\/code>[ \t]*<code data-chordName="[^"]*"><strong>/gi," ")}(t=function(e,t){const{retainBrackets:n}=s.settings.opts,r=n?"[":" ",i=n?"]":" ";for(const n in e)do{}while(t.length!==(t=t.replace(`[${e[n]}]`,`<code data-chordName="${e[n]}"><strong>${r}<em>${e[n]}</em>${i}</strong></code>`)).length);return t}(e,t))}},383:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.default=class{constructor(e,t,n,s){this.wrap=e,this.diagrams=t,this.text=n,s&&(this.meta=s)}}},273:function(e,t,n){var s=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.getHandlesFromId=t.getHandlesFromClass=void 0;const r=s(n(383)),i=n(687);t.getHandlesFromClass=function(e){const t=e.querySelectorAll(i.settings.wrapClasses.diagrams),n=e.querySelectorAll(i.settings.wrapClasses.text),s=e.querySelectorAll(i.settings.wrapClasses.songMeta);return t.length&&n.length?new r.default(e,t[0],n[0],s.length&&s[0]||null):null},t.getHandlesFromId=function(){const{ids:e}=i.settings,t=document.getElementById(e.container),n=document.getElementById(e.canvas),s=document.getElementById(e.songText),o=document.getElementById(e.songMeta);return t&&n&&s?new r.default(t,n,s,o):null}},257:function(e,t,n){var s=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.Fix=t.plot=t.processSong=t.getUnknownChordErrors=t.getHandlesFromId=t.getHandlesFromClass=t.HTMLHandles=void 0;const r=s(n(383));t.HTMLHandles=r.default;var i=n(273);Object.defineProperty(t,"getHandlesFromClass",{enumerable:!0,get:function(){return i.getHandlesFromClass}}),Object.defineProperty(t,"getHandlesFromId",{enumerable:!0,get:function(){return i.getHandlesFromId}});var o=n(993);Object.defineProperty(t,"getUnknownChordErrors",{enumerable:!0,get:function(){return o.getUnknownChordErrors}}),Object.defineProperty(t,"processSong",{enumerable:!0,get:function(){return o.processSong}});var f=n(675);Object.defineProperty(t,"plot",{enumerable:!0,get:function(){return f.plot}});var l=n(876);Object.defineProperty(t,"Fix",{enumerable:!0,get:function(){return l.Fix}})},876:(e,t)=>{function n(e){const t=function(e){const t={top:0,left:0,right:0,width:0};for(;e&&!isNaN(e.offsetLeft)&&!isNaN(e.offsetTop);)t.left+=e.offsetLeft-e.scrollLeft,t.top+=e.offsetTop-e.scrollTop,e=e.offsetParent;return t}(e);t.width=s(e);const n=e.getElementsByTagName("em")[0];if(n){const e=s(n);e>t.width&&(t.width=e+2)}return t.right=t.left+t.width,t}function s(e){return"clip"in e?e.clip.width:"pixelWidth"in e.style?e.style.pixelWidth:e.offsetWidth}Object.defineProperty(t,"__esModule",{value:!0}),t.Fix=void 0,t.Fix=function(e){const t=Array.from(e.querySelectorAll("code"));t.forEach((e=>{e.style.paddingRight="0px"})),t.slice(0,-1).forEach(((e,s)=>function(e,t){const s=e.getElementsByTagName("strong")[0],r=t.getElementsByTagName("strong")[0];if(!s||!r)return;const i=n(s),o=n(r);if(l=o,(f=i).top===l.top&&!(l.left>f.right||l.right<f.left)&&(l.left>f.left&&l.left<f.right||l.right>f.left&&l.right<f.right)){const t=i.right-o.left+1;e.style.paddingRight=`${t<1?1:t}px`}var f,l}(e,t[s+1])))}},993:(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.getUnknownChordErrors=t.processSong=void 0;const s=n(687),r=n(805),i=n(999),o=n(876),f=n(12),l=n(164);let a=[];t.processSong=function(e){const{meta:t,text:n,wrap:u}=e||{};if(!(null==e?void 0:e.diagrams)||!n||!u)return null;const d=[r.BlockTypes.Title,r.BlockTypes.Subtitle,r.BlockTypes.Album,r.BlockTypes.Artist,r.BlockTypes.UkeGeeksMeta],c=(0,r.parseCPM)(n.innerHTML);return n.innerHTML=(0,f.songToHTML)(c,{exclude:d}),t&&(t.innerHTML=(0,f.songToHTML)(c,{include:d,blocksOnly:!0})),(0,i.init)(e),(0,i.show)(c.chordNames),s.settings.inlineDiagrams&&(u.classList.add(l.PageStyles.INLINE_DIAGRAMS),(0,i.showInline)(c.chordNames)),a=a.concat((0,i.getErrors)()),u&&u.classList.toggle(l.PageStyles.NO_CHORDS,!c.hasChords),s.settings.opts.autoFixOverlaps&&(0,o.Fix)(n),c},t.getUnknownChordErrors=()=>a},999:(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.getIgnoredChords=t.getErrors=t.showInline=t.show=t.init=void 0;const s=n(164),r=n(618),i=n(687),o=n(675),f={TACET:/^(n.?\/?c.?|tacet)$/i};let l,a=[],u=[];t.init=function(e){l=e},t.show=function(e){if(l.diagrams.innerHTML="",a=[],u=[],i.settings.opts.sortAlphabetical&&e.sort(),e.forEach((e=>{if(f.TACET.test(e))return;if(i.settings.opts.ignoreCommonChords&&(t=e,i.settings.commonChords.includes(t)))return void("function"==typeof Array.prototype.indexOf&&-1===u.indexOf(e)&&u.push(e));var t;const n=(0,r.get)(e);n?(0,o.plot)(l.diagrams,n,i.settings.fretBox,i.settings.fonts,i.settings.colors):a.push(e)})),u.length>0){const e=Object.assign(document.createElement("p"),{className:s.RefDiagramsStyles.IGNORED_CHORDS,innerHTML:`Also uses: ${u.sort().join(", ")}`});l.diagrams.appendChild(e)}},t.showInline=function(e){const t=l.text.querySelectorAll("code");t.length<1||e.forEach((e=>{const n=(0,r.get)(e);n&&t.forEach((e=>{e.getAttribute("data-chordName")===n.name&&(0,o.plot)(e,n,i.settings.inlineFretBox,i.settings.inlineFretBox.fonts,i.settings.colors)}))}))},t.getErrors=()=>a,t.getIgnoredChords=()=>u},12:(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.songToHTML=void 0;const s=n(313),r=n(164),i=n(805),o=n(607),f=e=>e.type!==i.BlockTypes.TabBlock;function l(e,t){let n;return e.filter((({type:e})=>!t||e===i.BlockTypes.TextBlock||(Array.isArray(t.include)?t.include.includes(e):!Array.isArray(t.exclude)||!t.exclude.includes(e)))).reduce(((s,a,u)=>{if((e=>!f(e))(a))return s+=`<pre class="${r.SongStyles.Tabs}">`,(s+=(0,o.generateTabSvg)(a))+"</pre>\n";if(!f(a))return s;const{type:d,lines:c}=a,g="string"==typeof c[0]&&c[0]||"";switch(d){case i.BlockTypes.Title:s+=`<h1 class="${r.SongStyles.Title}">${g}</h1>\n`;break;case i.BlockTypes.Subtitle:s+=`<h2 class="${r.SongStyles.Subtitle}">${g}</h2>\n`;break;case i.BlockTypes.Album:s+=`<h3 class="${r.SongStyles.Album}">${g}</h3>\n`;break;case i.BlockTypes.Artist:s+=`<h3 class="${r.SongStyles.Artist}">${g}</h3>\n`;break;case i.BlockTypes.UkeGeeksMeta:s+=`<h3 class="${r.SongStyles.UgsMeta}">${g}</h3>\n`;break;case i.BlockTypes.Comment:s+=`<h6 class="${r.SongStyles.Comment}">${g}</h6>\n`;break;case i.BlockTypes.NewPage:s+=`<hr class="${r.SongStyles.NewPage}" />\n`;break;case i.BlockTypes.ChordText:case i.BlockTypes.PlainText:case i.BlockTypes.ChordOnlyText:{if(!g)return s;let t=d===i.BlockTypes.PlainText?r.SongStyles.PrePlain:r.SongStyles.PreChords;d===i.BlockTypes.ChordOnlyText&&(t+=` ${r.SongStyles.NoLyrics}`);const o=d,f=u-1>=0?e[u-1].type:i.BlockTypes.Undefined;n=u+1<e.length?n=e[u+1].type:i.BlockTypes.Undefined,s+=f!==o?`<pre class="${t}">`:"\n",s+=g,s+=n!==o?"</pre>\n":""}break;case i.BlockTypes.ChorusBlock:s+=`<div class="${r.SongStyles.Chorus}">\n`,s+=l(c,t),s+="</div>\n";break;case i.BlockTypes.TextBlock:s+=l(c,t);break;case i.BlockTypes.ColumnBreak:s+=`</div><div class="${r.SongStyles.Column}">`}return s}),"")}t.songToHTML=function(e,t){const{songBlocks:n}=e;let i=l(n,t);return(null==t?void 0:t.blocksOnly)?i:(e.columnCount>1&&(i=`<div class="${r.SongStyles.ColumnWrap} ${r.SongStyles.ColumnCount}${e.columnCount}"><div class="${r.SongStyles.Column}">${i}</div></div>`),(0,s.markupChords)(e.chordNames,i))}},675:(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.plot=void 0;const s=n(607),r=n(164);t.plot=function(e,t,n,i,o){const f=(0,s.generateChordSvg)(t,n,i,o);f&&function(e,t,n){const r=document.createElement("span");n&&r.classList.add(n),r.innerHTML=(0,s.toSVGString)(t.getData()),e.appendChild(r)}(e,f,r.SvgChordStyles.CHORD_IMG)}},11:function(e,t,n){var s=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.__test__=t.generateChordSvg=void 0;const r=s(n(461)),i=n(687);function o({x:e,y:t},{width:n,height:s,lineWidth:i,fretSpace:o,stringSpace:f},l,a,u="#000"){const d=i/2,c=a*o,g=(l-1)*f,p=function(e,t,n,s,r,i){const o=(n+.9)*i,f=(s+1.3)*r;return{width:o<e?e:o,height:f<t?t:f}}(n,s,l,a,o,f),h=(new r.default).newImage(p.width,p.height).newGroup("fretboard").setStyle({fillColor:"none",strokeColor:u,strokeWidth:i.toString()});for(let n=1;n<l-1;n++){const s=e+n*f+d;h.vLine(s,t+d,c)}for(let n=1;n<a;n++){const s=t+n*o+d;h.hLine(e+d,s,g)}return h.rectangle(e+d,t+d,g,c).endGroup()}t.generateChordSvg=function(e,t,n,s){n||(n=i.settings.fonts),s||(s=i.settings.colors);const{numFrets:r=5}=i.settings,{dotRadius:f}=t,l={x:t.topLeftPos.x,y:t.topLeftPos.y},a=o(l,t,i.settings.getNumStrings(),r,s.fretLines),u=l.x,d=l.y+f,c=(t.fretSpace-2*f)/2,g=function(e){let t=-1,n=300;return null==e||e.forEach((e=>{e.fret&&e.fret>t&&(t=e.fret),e.fret&&e.fret<n&&(n=e.fret)})),{first:n<300?n:0,last:t>0?t:0}}(e.dots),p=g.last<=r?1:g.last-(r-1);if(Array.isArray(e.dots)&&e.dots.forEach((e=>{const r=e.string||0,i={x:u+r*t.stringSpace,y:c+d+((e.fret?e.fret:0)-p)*t.fretSpace};a.circle(i.x,i.y,f).setStyle({fillColor:s.dots}),e.finger&&e.finger>0&&t.showText&&f>4&&a.text(i.x,i.y+5,e.finger.toString()).setStyle({fillColor:s.dotText,fontFamily:n.dot})})),1!==p){const e={x:0,y:l.y+t.fretSpace*(.96*(r-(g.last-g.first)))};a.text(e.x,e.y,g.first.toString()).setStyle({fontFamily:n.fret,fillColor:s.fretText,textAlign:"left"}),g.last-g.first>1&&(e.y=l.y+4.8*t.fretSpace,a.text(e.x,e.y,g.last.toString()).setStyle({fontFamily:n.fret,fillColor:s.fretText,textAlign:"left"}))}return t.showText&&a.text(l.x+1.5*t.stringSpace,l.y-5,e.name).setStyle({fontFamily:n.text,fillColor:s.text}),function(e,t,n,s){const{lineWidth:r,topLeftPos:i}=t,o=i.x+r/2,f=i.y+r/4;null==n||n.forEach(((n,r)=>{n&&function(e,t,n,s){const{xWidth:r}=n,i=t.x-r/2,o=t.y-r/2;e.newGroup("X").setStyle({strokeColor:s||"black",strokeWidth:n.xStroke.toString()}).line(i,o,i+r,o+r).line(i,o+r,i+r,o).endGroup()}(e,{x:o+r*t.stringSpace,y:f},t,s)}))}(a,t,e.muted,s.xStroke),a},t.__test__={newFretboard:o}},461:function(e,t,n){var s,r,i,o=this&&this.__classPrivateFieldSet||function(e,t,n,s,r){if("m"===s)throw new TypeError("Private method is not writable");if("a"===s&&!r)throw new TypeError("Private accessor was defined without a setter");if("function"==typeof t?e!==t||!r:!t.has(e))throw new TypeError("Cannot write private member to an object whose class did not declare it");return"a"===s?r.call(e,n):r?r.value=n:t.set(e,n),n},f=this&&this.__classPrivateFieldGet||function(e,t,n,s){if("a"===n&&!s)throw new TypeError("Private accessor was defined without a getter");if("function"==typeof t?e!==t||!s:!t.has(e))throw new TypeError("Cannot read private member from an object whose class did not declare it");return"m"===n?s:"a"===n?s.call(e):s?s.value:t.get(e)};Object.defineProperty(t,"__esModule",{value:!0}),t.ImageBuilder=void 0;const l=n(338);class a{constructor(){s.add(this),r.set(this,void 0),this.dimensions={width:0,height:0},this.layers=[],this.type=l.LayerTypes.IMAGE,o(this,r,{root:null,layer:null,current:null},"f")}newImage(e,t){const n={type:l.LayerTypes.IMAGE,dimensions:{height:t,width:e},layers:[],style:null};return f(this,r,"f").root=n,f(this,r,"f").current=n,this}newGroup(e){const t={type:l.LayerTypes.GROUP,name:e,layers:[]};return f(this,s,"m",i).call(this,t),f(this,r,"f").layer=null,this}endGroup(){return f(this,r,"f").current=f(this,r,"f").root,this}circle(e,t,n){const r={type:l.LayerTypes.CIRCLE,center:{x:e,y:t},radius:n};return f(this,s,"m",i).call(this,r)}rectangle(e,t,n,r){const o={type:l.LayerTypes.RECTANGLE,pos:{x:e,y:t},width:n,height:r};return f(this,s,"m",i).call(this,o)}line(e,t,n,r){const o={type:l.LayerTypes.LINE,endPoints:[{x:e,y:t},{x:n,y:r}]};return f(this,s,"m",i).call(this,o)}hLine(e,t,n){return this.line(e,t,e+(n||1),t)}vLine(e,t,n){return this.line(e,t,e,t+(n||1))}text(e,t,n){const r={type:l.LayerTypes.TEXT,pos:{x:e,y:t},text:n};return f(this,s,"m",i).call(this,r)}setStyle(e){const t=f(this,r,"f").layer?f(this,r,"f").layer:f(this,r,"f").current;return!t||t.style||(t.style=e),this}getData(){return f(this,r,"f").root}}t.ImageBuilder=a,r=new WeakMap,s=new WeakSet,i=function(e){return Boolean(f(this,r,"f").current&&"layers"in f(this,r,"f").current&&Array.isArray(f(this,r,"f").current.layers))?(e.style=null,f(this,r,"f").current.layers.push(e),e.type&&e.type===l.LayerTypes.GROUP?f(this,r,"f").current=e:f(this,r,"f").layer=e,this):this},t.default=a},177:(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.toString=t.toSVGString=void 0;const s=n(338);function r(e,t){if(!t)return null;let n=Object.keys(t).reduce(((e,n)=>{let s,r;switch(r=t[n],n){case"fillColor":s="fill";break;case"fontFamily":s="font";break;case"textAlign":switch(s="text-anchor",r){case"right":r="end";break;case"left":r="start";break;default:r="middle"}break;case"strokeColor":s="stroke";break;case"strokeWidth":s="stroke-width";break;default:s=null}return s&&r?`${e}${s}:${r};`:e}),"");return e!==s.LayerTypes.TEXT||t.textAlign||(n+="text-anchor:middle;"),n}const i=e=>e.type===s.LayerTypes.CIRCLE,o=e=>e.type===s.LayerTypes.GROUP,f=e=>e.type===s.LayerTypes.LINE,l=e=>e.type===s.LayerTypes.RECTANGLE,a=e=>e.type===s.LayerTypes.TEXT;function u(e){return e.reduce(((e,t)=>{if(o(t)){const{name:n}=t;e+=`<g ${n?`id="${n}"`:""} style="${t.style?r(s.LayerTypes.GROUP,t.style):""}">${u(t.layers)}</g>`}else e+=function(e){let t=e.style?r(e.type,e.style):"";return t=t?`style="${t}"`:"",i(e)?`<circle cx="${e.center.x}" cy="${e.center.y}" r="${e.radius}" ${t} />`:f(e)?`<line x1="${e.endPoints[0].x}" y1="${e.endPoints[0].y}" x2="${e.endPoints[1].x}" y2="${e.endPoints[1].y}" ${t} />`:l(e)?`<rect x="${e.pos.x}" y="${e.pos.y}" width="${e.width}" height="${e.height}" ${t} />`:a(e)?`<text x="${e.pos.x}" y="${e.pos.y}" ${t}>${e.text}</text>`:""}(t);return e}),"")}function d(e){const{width:t,height:n}=e.dimensions;return`<svg version="1.1" xmlns="http://www.w3.org/2000/svg" x="0px" y="0px" viewBox="0 0 ${t} ${n}" width="${t}px" height="${n}px">${u(e.layers)}</svg>`}t.toSVGString=d,t.toString=function(e){return d(e.getData())}},607:function(e,t,n){var s=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.generateTabSvg=t.generateChordSvg=t.toSVGString=t.toString=t.ImageBuilder=void 0;const r=s(n(461));t.ImageBuilder=r.default;var i=n(177);Object.defineProperty(t,"toString",{enumerable:!0,get:function(){return i.toString}}),Object.defineProperty(t,"toSVGString",{enumerable:!0,get:function(){return i.toSVGString}});var o=n(11);Object.defineProperty(t,"generateChordSvg",{enumerable:!0,get:function(){return o.generateChordSvg}});var f=n(814);Object.defineProperty(t,"generateTabSvg",{enumerable:!0,get:function(){return f.generateTabSvg}})},338:(e,t)=>{var n;Object.defineProperty(t,"__esModule",{value:!0}),t.LayerTypes=void 0,(n=t.LayerTypes||(t.LayerTypes={})).CIRCLE="circle",n.GROUP="group",n.IMAGE="image",n.LINE="line",n.RECTANGLE="rectangle",n.TEXT="text"},814:function(e,t,n){var s=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.generateTabSvg=void 0;const r=s(n(461)),i=n(177),o=n(687),{tabs:f}=o.settings;function l(e,t,n){if(!n)return f.noteSpacing*e[0].length+t+f.dotRadius;let s=e[0].length,r=f.dotRadius;return"|"===e[0][s-1]&&(s-=1,r=0),f.noteSpacing*s+t+r}t.generateTabSvg=function({hasLabels:e,tabs:t}){const n=e?f.labelWidth:0,s=((0,o.getNumStrings)()-1)*f.lineSpacing+2*f.dotRadius+f.bottomPadding,a=(new r.default).newImage(l(t,n,!1),s),u={x:f.dotRadius+n,y:1+f.dotRadius},d=l(t,n,!0);return function(e,t,n){const s=f.lineWidth/2,r=t.x+s;let i=t.y+s;const l=e.newGroup("staff").setStyle({strokeColor:f.lineColor,strokeWidth:`${f.lineWidth}`});for(let e=0;e<(0,o.getNumStrings)();e++)l.hLine(r,i,n),i+=f.lineSpacing;l.endGroup()}(a,u,d),function(e,t,n,s){const r={x:0,y:t.y},i=o.settings.getNumStrings();n.filter(((e,t)=>t<i)).forEach((n=>{r.x=t.x,n.forEach(((i,l)=>{if("|"===i){const i=l,a=i+1<n.length-1&&"|"===n[i+1]||i===n.length-1&&"|"===n[i-1];!function(e,t,n){const s=f.lineWidth/2;e.vLine(t.x+s,t.y,((0,o.getNumStrings)()-1)*f.lineSpacing).setStyle({strokeColor:f.lineColor,strokeWidth:""+(n?4.5:1)*f.lineWidth})}(e,{x:l===n.length-1?t.x+s:r.x,y:t.y},a)}else isNaN(parseInt(i,10))||(e.circle(r.x,r.y,f.dotRadius).setStyle({fillColor:f.dotColor}),e.text(r.x,r.y+.5*f.dotRadius,i).setStyle({fontFamily:f.textFont,fillColor:f.textColor}));r.x+=f.noteSpacing})),r.y+=f.lineSpacing}))}(a,u,t,d),e&&function(e,t){const n=o.settings.tuning.slice(0).reverse();for(let s=0;s<(0,o.getNumStrings)();s++)e.text(1,t.y+(s+.3)*f.lineSpacing,n[s]).setStyle({fontFamily:f.labelFont,fillColor:f.lineColor,textAlign:"left"})}(a,u),(0,i.toString)(a)}},206:function(e,t,n){var s=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const r=n(805),i=n(618),o=n(257),f=n(687),l=s(n(153));class a extends r.Chord{plot(...e){(0,o.plot)(...e)}}const u=Object.assign(Object.assign({},l.default),{chordBrush:a,ChordBrush:a,chordImport:{runLine:r.runLine},definitions:Object.assign(Object.assign({},i.definitions),{instrument:f.InstrumentTunings}),overlapFixer:{Fix:o.Fix},settings:f.settings,scriptasaurus:l.default,toolsLite:{addClass(e,t){e.classList.add(t)},removeClass(e,t){e.classList.remove(t)},setClass(e,t,n){e.classList.toggle(t,n)}},transpose:{shift:i.shift,shiftChords:i.shiftChords}});window.ukeGeeks=Object.assign(window.ukeGeeks||{},u),t.default=u},153:(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.setTuningOffset=t.runByClasses=t.run=t.init=void 0;const s=n(257),r=n(618),i=n(96),o=n(687);function f(e){const{addInstrument:t,setInstrument:n}=r.definitions;n(t((null==e?void 0:e.definitions)||o.sopranoUkuleleGcea),o.InstrumentTunings.none)}function l(){i.logger.log("run (Classic Mode)");const e=(0,s.processSong)((0,s.getHandlesFromId)());return e?(function(e){if(!e.length)return;const t="string"==typeof e?e:e.join(", ");alert(`Forgive me, but I don't know the following chords: ${t}`)}((0,s.getUnknownChordErrors)()),Object.assign(e,{chords:e.chordNames})):null}function a(){const e=[];return document.querySelectorAll(o.settings.wrapClasses.wrap).forEach((t=>{const n=(0,s.processSong)((0,s.getHandlesFromClass)(t));n&&(Object.assign(n,{chords:n.chordNames}),e.push(n))})),e}t.init=f,t.run=l,t.runByClasses=a,t.setTuningOffset=e=>r.definitions.useInstrument(e),t.default={init:f,run:l,runByClasses:a,setTuningOffset:t.setTuningOffset}},943:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.clean=t.pack=void 0;const n=/\s{2,}/g;t.pack=e=>e.replace(n," ").trim(),t.clean=e=>(Object.keys(e).forEach((t=>{delete e[t]})),e)},96:function(e,t,n){var s=this&&this.__createBinding||(Object.create?function(e,t,n,s){void 0===s&&(s=n);var r=Object.getOwnPropertyDescriptor(t,n);r&&!("get"in r?!t.__esModule:r.writable||r.configurable)||(r={enumerable:!0,get:function(){return t[n]}}),Object.defineProperty(e,s,r)}:function(e,t,n,s){void 0===s&&(s=n),e[s]=t[n]}),r=this&&this.__exportStar||function(e,t){for(var n in e)"default"===n||Object.prototype.hasOwnProperty.call(t,n)||s(t,e,n)},i=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.logger=void 0,r(n(943),t),r(n(767),t);const o=i(n(545));t.logger=o.default},767:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0})},545:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0});const n=console.error,s=console.info,r=console.log,i=console.warn;t.default={error:n,info:s,json:e=>s(JSON.stringify(e,null,3).replace(/\\n/gm,"\n")),log:r,warn:i}},252:(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.setChords=t.getChords=t.replace=t.add=t.get=t.setInstrument=t.useInstrument=t.addInstrument=void 0;const s=n(202),r=n(687),i=n(805),o=[];let f=[],l=[],a=0,u=[];function d(e,n=0){a="string"==typeof n?parseInt(n,10):n,a>0&&(u=(0,s.retune)(a));const r=o[e];if(!r)return;const f=(0,i.runBlock)(r);(0,t.setChords)(f.chords)}function c(e){const t=e.substr(0,2);return r.chordNameAliases[t]?r.chordNameAliases[t]+e.substr(2):e}function g(e){const t=c(e),n=l.find((e=>t===e.name));return n?Object.assign(new i.Chord(e),{dots:n.dots,muted:n.muted}):null}function p(e){if(e.length)for(let t=0;t<e.length;t++)f.push(e[t]);return f.length}t.addInstrument=e=>o.push(Array.isArray(e)?e.join("\n"):e)-1,t.useInstrument=function(e){d(r.InstrumentTunings.none,e)},t.setInstrument=d,t.get=function(e){const t=f.find((t=>t.name===e));if(t)return t;if(a<1)return g(e);const n=c(e);return u.filter((e=>n===e.original)).map((e=>g(e.transposed))).filter(Boolean).reduce(((t,n)=>Object.assign(new i.Chord(e),n&&{dots:n.dots,muted:n.muted})),null)||null},t.add=p,t.replace=function(e){return f=[],p(e)},t.getChords=()=>l,t.setChords=e=>l=e},540:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.default=class{constructor(e,t,n,s){this.key=e,this.name=t,this.tuning=n,this.chords=s}}},618:function(e,t,n){var s=this&&this.__createBinding||(Object.create?function(e,t,n,s){void 0===s&&(s=n);var r=Object.getOwnPropertyDescriptor(t,n);r&&!("get"in r?!t.__esModule:r.writable||r.configurable)||(r={enumerable:!0,get:function(){return t[n]}}),Object.defineProperty(e,s,r)}:function(e,t,n,s){void 0===s&&(s=n),e[s]=t[n]}),r=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),i=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)"default"!==n&&Object.prototype.hasOwnProperty.call(e,n)&&s(t,e,n);return r(t,e),t},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.shiftChords=t.shift=t.get=t.Instrument=t.definitions=void 0;const f=i(n(252));t.definitions=f;const l=o(n(540));t.Instrument=l.default,t.default=f;var a=n(252);Object.defineProperty(t,"get",{enumerable:!0,get:function(){return a.get}});var u=n(202);Object.defineProperty(t,"shift",{enumerable:!0,get:function(){return u.shift}}),Object.defineProperty(t,"shiftChords",{enumerable:!0,get:function(){return u.shiftChords}})},202:(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.shiftChords=t.retune=t.getTone=t.shift=void 0;const s=n(252),r={CHORD_NAME:/^(?<prefix>[A-G][#b]?)(?<suffix>.*)/},i=Object.freeze({A:0,"A#":1,Bb:1,B:2,C:3,"C#":4,Db:4,D:5,"D#":6,Eb:6,E:7,F:8,"F#":9,Gb:9,G:10,"G#":11,Ab:11});function o(e,t=0){const n=f(e);if(null===n)return null;let s=(n.tone+t)%12;return s<0&&(s+=12),Object.keys(i).filter((e=>s===i[e])).reduce(((e,t)=>t+n.suffix))||null}function f(e){if(!e||"string"!=typeof e)return null;const t=e.match(r.CHORD_NAME);if(!(null==t?void 0:t.groups))return null;const{prefix:n,suffix:s}=t.groups;return{tone:i[n],prefix:n,suffix:s}}t.shift=o,t.getTone=f,t.retune=function(e){const t=0===(e=e||0);return(0,s.getChords)().map((n=>({original:n.name,transposed:t?n.name:o(n.name,e)||""})))},t.shiftChords=(e,t)=>e.map((e=>o(e,t))).filter(Boolean)},4:(e,t,n)=>{n.r(t),n.d(t,{default:()=>s});const s="\n{instrument: Soprano Ukulele}\n{tuning: G C E A}\n{define: A frets 2 1 0 0 fingers 2 1 0 0}\n{define: Am frets 2 0 0 0 fingers 1 0 0 0}\n{define: A7 frets 0 1 0 0 fingers 0 1 0 0}\n{define: A7sus4 frets 0 2 0 0 fingers 0 2 0 0}\n{define: Am7 frets 0 0 0 0}\n{define: Adim frets 2 3 2 3 fingers 1 3 2 4}\n{define: Amaj7 frets 1 1 0 0 fingers 1 2 0 0}\n{define: A6 frets 2 4 2 4 fingers 1 3 2 4}\n{define: Asus2 frets 2 4 5 2 fingers 2 3 4 1}\n{define: Asus4 frets 2 2 0 0 fingers 1 2 0 0}\n{define: Aaug frets 2 1 1 4 fingers 2 1 1 4 add: string 1 fret 1 finger 1 add: string 4 fret 1 finger 1}\n{define: Am6 frets 2 4 2 3 fingers 1 3 1 2 add: string 2 fret 2 finger 1}\n{define: A9 frets 0 1 0 2 fingers 0 1 0 2}\n{define: Bb frets 3 2 1 1 fingers 3 2 1 1}\n{define: Bbm frets 3 1 1 1 fingers 3 1 1 1 add: string 1 fret 1 finger 1}\n{define: Bb7 frets 1 2 1 1 fingers 1 2 1 1 add: string 2 fret 1 finger 1}\n{define: Bb7sus4 frets 1 3 1 1 fingers 1 3 1 1 add: string 2 fret 1 finger 1}\n{define: Bbm7 frets 1 1 1 1 fingers 1 1 1 1}\n{define: Bbdim frets 0 1 0 1 fingers 0 1 0 2}\n{define: Bbmaj7 frets 2 2 1 1 fingers 2 2 1 1}\n{define: Bb6 frets 0 2 1 1 fingers 0 2 1 1}\n{define: Bbm6 frets 0 1 1 1 fingers 0 1 1 1}\n{define: Bbsus2 frets 3 0 1 1 fingers 3 0 1 1}\n{define: Bbsus4 frets 3 3 1 1 fingers 3 3 1 1}\n{define: Bbaug frets 3 2 2 5 fingers 2 1 1 4 add: string 1 fret 2 finger 1 add: string 4 fret 2 finger 1}\n{define: Bb9 frets 1 2 1 3 fingers 2 1 4 3}\n{define: Bbm7-5 frets 1 1 0 1 fingers 1 2 0 3}\n{define: B frets 4 3 2 2 fingers 3 2 1 1}\n{define: Bm frets 4 2 2 2 fingers 3 1 1 1 add: string 1 fret 2 finger 1}\n{define: Bm6 frets 1 2 2 2 fingers 1 2 3 4}\n{define: B7 frets 2 3 2 2 fingers 1 2 1 1 add: string 2 fret 2 finger 1}\n{define: B7sus4 frets 2 4 2 2 fingers 1 3 1 1 add: string 2 fret 2 finger 1}\n{define: Bm7 frets 2 2 2 2 fingers 1 1 1 1}\n{define: Bdim frets 1 2 1 2 fingers 1 3 2 4}\n{define: Bmaj7 frets 3 3 2 2 fingers 2 2 1 1}\n{define: B6 frets 1 3 2 2 fingers 1 4 2 3}\n{define: Bsus2 frets 5 1 2 2 fingers 4 1 3 2}\n{define: Bsus4 frets 4 4 2 2 fingers 2 2 1 1}\n{define: Baug frets 0 3 3 2 fingers 0 2 2 1}\n{define: B9 frets 2 3 2 4}\n{define: C frets 0 0 0 3 fingers 0 0 0 3}\n{define: Cm frets 0 3 3 3 fingers 0 1 2 3}\n{define: C7 frets 0 0 0 1 fingers 0 0 0 1}\n{define: C7sus4 frets 0 0 1 1 fingers 0 0 1 1}\n{define: Cm7 frets 3 3 3 3 fingers 1 1 1 1}\n{define: Cdim frets 2 3 2 3 fingers 1 3 2 4}\n{define: Cmaj7 frets 0 0 0 2 fingers 0 0 0 1}\n{define: C6 frets 0 0 0 0}\n{define: Cm6 frets 0 3 5 5 fingers 0 1 3 1}\n{define: Csus2 frets 0 2 3 3 fingers 0 1 2 2}\n{define: Csus4 frets 0 0 1 3 fingers 0 0 1 3}\n{define: Caug frets 1 0 0 3 fingers 1 0 0 4}\n{define: C9 frets 0 2 0 1 fingers 0 2 0 1}\n{define: C# frets 1 1 1 4 fingers 1 1 1 4 add: string 4 fret 1 finger 1}\n{define: C#m frets 1 4 4 4 fingers 1 2 3 3}\n{define: C#7 frets 1 1 1 2 fingers 1 1 1 2 add: string 4 fret 1 finger 1}\n{define: C#7sus4 frets 1 1 2 2 fingers 1 1 2 3}\n{define: C#m7 frets 1 4 4 2 fingers 1 3 3 2}\n{define: C#dim frets 0 1 0 1 fingers 0 1 0 2}\n{define: C#maj7 frets 1 1 1 3 fingers 1 1 1 3 add: string 4 fret 1 finger 1}\n{define: C#6 frets 1 1 1 1 fingers 1 1 1 1}\n{define: C#m6 frets 1 1 0 1 fingers 1 2 0 3}\n{define: C#sus2 frets 1 3 4 4 fingers 1 2 3 3}\n{define: C#sus4 frets 1 1 2 4 fingers 1 1 2 4}\n{define: C#aug frets 2 1 1 4 fingers 2 1 1 4 add: string 1 fret 1 finger 1 add: string 4 fret 1 finger 1}\n{define: C#9 frets 1 3 1 2}\n{define: D frets 2 2 2 0 fingers 1 1 1 0}\n{define: Dm frets 2 2 1 0 fingers 2 2 1 0}\n{define: Dm6 frets 0 2 1 2 fingers 0 2 1 3}\n{define: D7 frets 2 2 2 3 fingers 1 1 1 2 add: string 4 fret 2 finger 1}\n{define: D7sus4 frets 2 2 3 3 fingers 1 1 2 3}\n{define: Dm7 frets 2 2 1 3 fingers 2 2 1 3}\n{define: Ddim frets 1 2 1 2 fingers 1 3 2 4}\n{define: Dmaj7 frets 2 2 2 4 fingers 1 1 1 2 add: string 4 fret 2 finger 1}\n{define: D6 frets 2 2 2 2 fingers 2 2 2 2}\n{define: Dsus2 frets 2 2 0 0 fingers 1 2 0 0}\n{define: Dsus4 frets 0 2 3 0 fingers 0 1 2 0}\n{define: Daug frets 3 2 2 5 fingers 2 1 1 4 add: string 1 fret 2 finger 1 add: string 4 fret 2 finger 1}\n{define: D9 frets 2 4 2 3}\n{define: Eb frets 0 3 3 1 fingers 0 2 2 1}\n{define: Ebm frets 3 3 2 1 fingers 3 3 2 1}\n{define: Eb7 frets 3 3 3 4 fingers 1 1 1 2 add: string 4 fret 3 finger 1}\n{define: Eb7sus4 frets 3 3 4 4 fingers 1 1 2 3}\n{define: Ebm7 frets 3 3 2 4 fingers 2 2 1 4}\n{define: Ebdim frets 2 3 2 3 fingers 1 3 2 4}\n{define: Ebmaj7 frets 3 3 3 5 fingers 1 1 1 2 add: string 4 fret 3 finger 1}\n{define: Eb6 frets 3 3 3 3 fingers 1 1 1 1}\n{define: Ebm6 frets 3 3 2 3 fingers 2 3 1 4}\n{define: Ebsus2 frets 3 3 1 1 fingers 2 2 1 1}\n{define: Ebsus4 frets 1 3 4 1 fingers 2 3 4 1}\n{define: Ebaug frets 0 3 3 2 fingers 0 2 2 1}\n{define: Eb9 frets 0 1 1 1}\n{define: E frets 4 4 4 2 fingers 2 3 4 1}\n{define: Em frets 0 4 3 2 fingers 0 3 2 1}\n{define: E7 frets 1 2 0 2 fingers 1 2 0 3}\n{define: E7sus4 frets 2 2 0 2 fingers 2 3 0 4}\n{define: Em6 frets 4 4 3 4 fingers 2 3 1 4}\n{define: Em7 frets 0 2 0 2 fingers 0 1 0 2}\n{define: Edim frets 0 1 0 1 fingers 0 1 0 2}\n{define: Emaj7 frets 1 3 0 2 fingers 1 3 0 2}\n{define: E6 frets 4 4 4 4 fingers 1 1 1 1}\n{define: Esus2 frets 4 4 2 2 fingers 3 3 1 1}\n{define: Esus4 frets 2 4 0 2 fingers 2 4 0 1}\n{define: Eaug frets 1 0 0 3 fingers 1 0 0 4}\n{define: E9 frets 1 2 2 2}\n{define: F frets 2 0 1 0 fingers 2 0 1 0}\n{define: Fm frets 1 0 1 3 fingers 1 0 2 4}\n{define: F7 frets 2 3 1 0 fingers 2 3 1 0}\n{define: F7sus4 frets 3 3 1 3 fingers 2 3 1 4}\n{define: Fm6 frets 1 2 1 3 fingers 1 2 1 3 add: string 2 fret 1 finger 1 add: string 4 fret 1 finger 1}\n{define: Fm7 frets 1 3 1 3 fingers 1 3 2 4}\n{define: Fdim frets 1 2 1 2 fingers 1 3 2 4}\n{define: Fmaj7 frets 5 5 0 0 fingers 1 2 0 0}\n{define: F6 frets 2 2 1 3 fingers 2 2 1 4}\n{define: Fsus2 frets 0 0 1 3 fingers 0 0 1 3}\n{define: Fsus4 frets 3 0 1 3 fingers 3 0 1 4}\n{define: F6sus2 frets 0 0 1 3 fingers 0 0 1 3}\n{define: F6sus4 frets 3 0 1 1 fingers 3 0 1 1}\n{define: F6aug frets 2 1 1 4 fingers 2 1 1 4 add: string 1 fret 1 finger 1 add: string 4 fret 1 finger 1}\n{define: F9 frets 2 3 3 3}\n{define: Faug frets 2 1 1 0 fingers 3 1 2 0}\n{define: F# frets 3 1 2 1 fingers 3 1 2 1 add: string 1 fret 1 finger 1 add: string 3 fret 1 finger 1}\n{define: F#m frets 2 1 2 0 fingers 2 1 3 0}\n{define: F#7 frets 3 4 2 4 fingers 2 3 1 4}\n{define: F#7sus4 frets 4 4 2 4 fingers 2 3 1 4}\n{define: F#m7 frets 2 4 2 4 fingers 1 3 2 4}\n{define: F#dim frets 2 3 2 3 fingers 1 3 2 4}\n{define: F#maj7 frets 3 5 2 4 fingers 2 4 1 3}\n{define: F#m6 frets 2 1 2 4 fingers 2 1 3 4}\n{define: F#6 frets 3 3 2 4 fingers 2 2 1 4}\n{define: F#sus2 frets 1 1 2 4 fingers 1 1 2 4}\n{define: F#sus4 frets 4 1 2 2 fingers 4 1 2 3}\n{define: F#aug frets 3 2 2 5 fingers 2 1 1 4 add: string 1 fret 2 finger 1 add: string 4 fret 2 finger 1}\n{define: F#9 frets 1 1 0 1}\n{define: G frets 0 2 3 2 fingers 0 1 3 2}\n{define: Gm frets 0 2 3 1 fingers 0 2 3 1}\n{define: Gm6 frets 0 2 0 1 fingers 0 2 0 1}\n{define: G7 frets 0 2 1 2 fingers 0 2 1 3}\n{define: G7sus4 frets 0 2 1 3 fingers 0 2 1 4}\n{define: Gm7 frets 0 2 1 1 fingers 0 2 1 1}\n{define: Gdim frets 0 1 0 1 fingers 0 1 0 2}\n{define: Gmaj7 frets 0 2 2 2 fingers 0 1 2 3}\n{define: G6 frets 0 2 0 2 fingers 0 1 0 2}\n{define: Gsus2 frets 0 2 3 0 fingers 0 1 2 0}\n{define: Gsus4 frets 0 2 3 3 fingers 0 1 2 3}\n{define: Gaug frets 0 3 3 2 fingers 0 2 2 1}\n{define: G9 frets 2 2 1 2}\n{define: G# frets 5 3 4 3 fingers 3 1 2 1 add: string 1 fret 3 finger 1 add: string 3 fret 3 finger 1}\n{define: G#m frets 1 3 4 2 fingers 1 3 4 2}\n{define: G#7 frets 1 3 2 3 fingers 1 3 2 4}\n{define: G#7sus4 frets 1 3 2 4 fingers 1 3 2 4}\n{define: G#m7 frets 1 3 2 2 fingers 1 4 2 3}\n{define: G#dim frets 1 2 1 2 fingers 1 3 2 4}\n{define: G#maj7 frets 1 3 3 3 fingers 1 2 2 3}\n{define: G#6 frets 1 3 1 3 fingers 1 3 2 4}\n{define: G#m6 frets 1 3 1 2 fingers 1 3 1 2 add: string 2 fret 1 finger 1 add: string 4 fret 1 finger 1}\n{define: G#sus2 frets 1 3 4 1 fingers 2 3 4 1}\n{define: G#sus4 frets 1 3 4 4 fingers 1 2 3 3}\n{define: G#aug frets 1 0 0 3 fingers 1 0 0 4}\n{define: G#9 frets 1 0 2 1 fingers 1 0 3 2}\n{define: C-F frets 2 0 1 3}\n{define: D/A frets 2 2 2 0}\n{define: Dm/C frets 2 2 1 3}\n{define: Fm7/C frets 1 3 1 3}\n{define: G/B frets 0 2 3 2}\n{define: G/F# frets 0 2 2 2}\n{define: G/F frets 0 2 1 2}\n{define: G7/B frets 0 2 1 2}\n"}},t={};function n(s){var r=t[s];if(void 0!==r)return r.exports;var i=t[s]={exports:{}};return e[s].call(i.exports,i,i.exports,n),i.exports}n.d=(e,t)=>{for(var s in t)n.o(t,s)&&!n.o(e,s)&&Object.defineProperty(e,s,{enumerable:!0,get:t[s]})},n.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),n.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n(206)})();
//# sourceMappingURL=song-formatter.bundle.js.map